เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การซ้อนทับ Instance Masks

ยอดเยี่ยมมากที่สร้าง semantic mask ในแบบฝึกหัดก่อนหน้าได้สำเร็จ! ตอนนี้จะมาเขียนทับด้วย instance masks ในตำแหน่งที่โมเดล instance segmentation ตรวจพบวัตถุ

ในแบบฝึกหัดนี้ จะใช้ MaskRCNN ที่ผ่านการเทรนมาแล้วซึ่งมีอยู่ใน workspace เพื่อสร้าง instance segmentation masks จากนั้นวนลูปผ่าน masks เหล่านั้น และสำหรับแต่ละ mask จะซ้อนทับส่วนที่ตรวจพบวัตถุด้วยความมั่นใจสูงลงบน semantic mask

torch ถูก import ไว้ให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Deep Learning สำหรับภาพด้วย PyTorch

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดค่าเริ่มต้นให้ panoptic_mask โดยโคลนจาก semantic_mask
  • กำหนด for-loop เพื่อวนซ้ำผ่าน instance masks โดยตั้งชื่อตัวแปรในการวนซ้ำว่า mask
  • สำหรับแต่ละ instance mask ในตำแหน่งที่มีค่ามากกว่า 0.5 ให้เขียนทับ panoptic mask ด้วยค่า instance_id ปัจจุบัน

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# 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()
แก้ไขและรันโค้ด