CommencezCommencez gratuitement

Préparer les masques sémantiques

Une façon courante d'effectuer une segmentation panoptique consiste à combiner les résultats de la segmentation sémantique et de la segmentation d'instances. Considérez l'image suivante d'une rue de New York.

street image

Votre tâche est de la segmenter de manière panoptique, de sorte que chaque taxi soit identifié comme un objet distinct, tout en distinguant l'asphalte et l'arrière-plan des bâtiments.

Pour y arriver, vous commencerez par produire un masque sémantique au moyen d'un U-Net préentraîné, accessible via UNet(). Idéalement, il devrait distinguer les deux types d'arrière-plans (mais pas les taxis individuellement)!

Cette activité fait partie du cours

Deep Learning pour les images avec PyTorch

Voir le cours

Instructions de l’exercice

  • Instanciez le modèle U-Net sous le nom model.
  • Générez semantic_masks en 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 à probabilité la plus élevée.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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()
Modifier et exécuter le code