MulaiMulai sekarang secara gratis

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

Lihat Kursus

Petunjuk latihan

  • Inisialisasi panoptic_mask dengan mengkloning semantic_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 dengan instance_id saat 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()
Edit dan Jalankan Kode