Préparer des masques sémantiques
Une manière courante de réaliser la segmentation panoptique consiste à combiner les sorties de la segmentation sémantique et de la segmentation d’instances. Examinez l’image suivante d’une rue de New York.

Votre objectif est de la segmenter de façon panoptique : chaque taxi jaune doit être identifié comme un objet distinct, tout en distinguant l’asphalte de l’arrière-plan des bâtiments.
Pour cela, vous commencerez par produire un masque sémantique avec un U-Net pré-entraîné, accessible via UNet(). Idéalement, il devrait différencier les deux types d’arrière-plan (mais pas les taxis individuellement) !
Cet exercice fait partie du cours
Deep Learning pour l’image avec PyTorch
Instructions
- Instanciez le modèle U-Net sous le nom
model. - Générez
semantic_masksen passant le tenseur d’image d’entrée au modèle. - Créez un masque sémantique unique en choisissant, pour chaque pixel, la classe à plus forte probabilité.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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()