Semantische Masken einrichten
Eine gängige Methode für panoptische Segmentierung ist, die Ausgaben der semantischen und der Instanzsegmentierung zu kombinieren. Betrachte das folgende Bild einer Straße in New York.

Deine Aufgabe ist es, das Bild panoptisch zu segmentieren, sodass jedes Taxi als separates Objekt erkannt wird und gleichzeitig zwischen Asphalt und Gebäudeflächen im Hintergrund unterschieden wird.
Dafür beginnst du mit einer semantischen Maske aus einem vortrainierten U-Net, das dir als UNet() zur Verfügung steht. Idealerweise unterscheidet es die beiden Hintergrundtypen (aber nicht die einzelnen Taxis)!
Diese Übung ist Teil des Kurses
Deep Learning für Bilder mit PyTorch
Anleitung zur Übung
- Instanziiere das U-Net-Modell als
model. - Erzeuge
semantic_masks, indem du den Eingabebild-Tensor durch das Modell leitest. - Erstelle eine einzelne semantische Maske, indem du für jedes Pixel die Klasse mit der höchsten Wahrscheinlichkeit auswählst.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Instantiate the model
model = ____
# Produce semantic masks for the input image
with torch.no_grad():
semantic_masks = ____
# Choose highest-probability class for each pixel
semantic_mask = ____(____, ____)
# Display the mask
plt.imshow(semantic_mask.squeeze(0))
plt.axis("off")
plt.show()