Tumpangtindihkan mask instance
Kerja bagus menghasilkan mask semantik pada latihan sebelumnya! Sekarang, Anda dapat menimpanya dengan mask instance pada lokasi tempat objek telah diidentifikasi oleh model instance segmentation.
Anda akan menggunakan MaskRCNN pralatih yang tersedia di ruang kerja Anda untuk menghasilkan mask segmentasi instance. Lalu, Anda akan melakukan perulangan atas mask tersebut dan untuk masing-masing mask, Anda akan menumpangtindihkan bagian tempat objek terdeteksi dengan keyakinan tinggi di atas mask semantik.
torch sudah diimpor untuk Anda.
Latihan ini adalah bagian dari kursus
Deep Learning untuk Gambar dengan PyTorch
Petunjuk latihan
- Inisialisasi
panoptic_maskdengan mengkloningsemantic_mask. - Definisikan perulangan for untuk melakukan iterasi atas mask instance, gunakan variabel iterator
mask. - Untuk setiap mask instance, pada lokasi yang nilainya lebih besar dari
0.5, timpa panoptic mask denganinstance_idsaat ini.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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()