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.

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
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_masksbằ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()