覆蓋實例遮罩
先前的練習你已經成功產生語意遮罩,做得很好!現在,在實例分割模型辨識出物件的位置上,你可以用實例遮罩把它覆寫掉。
你會使用工作環境中已提供的預先訓練 MaskRCNN 來產生實例分割遮罩。接著,你會逐一走訪這些遮罩,並將每一個遮罩中高置信度偵測到物件的區域,覆蓋到語意遮罩上方。
已為你匯入 torch。
本練習屬於課程
使用 PyTorch 進行影像深度學習
練習說明
- 透過複製
semantic_mask來初始化panoptic_mask。 - 定義 for 迴圈以迭代實例遮罩,迭代變數命名為
mask。 - 對於每個實例遮罩,在大於
0.5的位置,以目前的instance_id覆寫 panoptic 遮罩。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Instantiate model and produce instance masks
model = MaskRCNN()
with torch.no_grad():
instance_masks = model(image_tensor)[0]["masks"]
# Initialize panoptic mask as semantic_mask
panoptic_mask = ____
# Iterate over instance masks
instance_id = 3
for ____ in ____:
# Set panoptic mask to instance_id where mask > 0.5
panoptic_mask[____] = ____
instance_id += 1
# Display panoptic mask
plt.imshow(panoptic_mask.squeeze(0))
plt.axis("off")
plt.show()