Aan de slagBegin gratis

Instance-masks overlayen

Mooi werk met het maken van de semantische mask in de vorige oefening! Nu kun je die overschrijven met instance-masks op de plekken waar objecten zijn geïdentificeerd door het instance-segmentationmodel.

Je gebruikt de voorgetrainde MaskRCNN in je workspace om instance-segmentatiemasks te maken. Vervolgens loop je over deze masks en voor elk mask leg je de delen waar met hoge zekerheid een object is gedetecteerd over de semantische mask heen.

torch is al voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

Deep Learning voor afbeeldingen met PyTorch

Bekijk cursus

Oefeninstructies

  • Initialiseer panoptic_mask door semantic_mask te klonen.
  • Definieer de for-loop om over de instance-masks te itereren en noem de iteratorvariabele mask.
  • Overschrijf voor elk instance-mask, op de posities waar het groter is dan 0.5, de panoptic-mask met de huidige instance_id.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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()
Code bewerken en uitvoeren