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
<Kurs>Deep Learning für Bilder mit PyTorch</Kurs>Übungsanweisungen
- 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 praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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()