Bắt đầu ngayBắt đầu miễn phí

Thiết lập semantic masks

Một cách phổ biến để thực hiện panoptic segmentation là kết hợp đầu ra của semantic và instance segmentation. Hãy xem xét hình ảnh sau về một con phố ở New York.

street image

Nhiệm vụ của bạn là phân đoạn ảnh theo kiểu panoptic, sao cho mỗi chiếc taxi (cab) được nhận diện là một đối tượng riêng, đồng thời phân biệt nền đường nhựa và các tòa nhà.

Để làm được điều này, bạn sẽ bắt đầu bằng cách tạo một semantic mask với U-Net đã được huấn luyện sẵn, có sẵn dưới dạng UNet(). Hy vọng mô hình sẽ phân biệt được hai loại nền (nhưng không phân biệt các taxi cụ thể)!

Bài tập này là một phần của khóa học

Deep Learning cho Ảnh với PyTorch

Xem khóa học

Hướng dẫn bài tập

  • Khởi tạo mô hình U-Net dưới tên model.
  • Tạo semantic_masks bằng cách truyền tensor ảnh đầu vào qua mô hình.
  • Tạo một semantic mask đơn bằng cách chọn lớp có xác suất cao nhất cho mỗi pixel.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Instantiate the model
model = ____

# Produce semantic masks for the input image
with torch.no_grad():
    semantic_masks = ____

# Choose highest-probability class for each pixel
semantic_mask = ____(____, ____)

# Display the mask
plt.imshow(semantic_mask.squeeze(0))
plt.axis("off")
plt.show()
Chỉnh sửa và Chạy Mã