開始使用免費開始

覆蓋實例遮罩

先前的練習你已經成功產生語意遮罩,做得很好!現在,在實例分割模型辨識出物件的位置上,你可以用實例遮罩把它覆寫掉。

你會使用工作環境中已提供的預先訓練 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()
編輯並執行程式碼