Exécuter une segmentation sémantique
Beau travail pour la conception du U-Net ! Un modèle déjà pré-entraîné, très similaire à celui que vous venez de construire, est mis à votre disposition. Ce modèle a été entraîné sur un vaste ensemble d’images et comporte quelques petites améliorations architecturales, comme des couches de batch norm.
Vous pouvez instancier le modèle avec UNet(), ce qui chargera les poids pré-entraînés. Votre tâche est de l’utiliser pour produire des masques de segmentation pour l’image de voiture suivante.

Image de PIL a déjà été importé pour vous.
Cet exercice fait partie du cours
Deep Learning pour l’image avec PyTorch
Instructions
- Instanciez
UNet()dans une variable appeléemodel. - Chargez l’image
car.jpgdans une variable appeléeimage. - Produisez des masques de segmentation en passant l’image au modèle et en appliquant
squeeze(0)à la sortie.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Load model
model = ____
model.eval()
# Load and transform image
image = ____
transform = transforms.Compose([transforms.ToTensor()])
image_tensor = transform(image).unsqueeze(0)
# Predict segmentation mask
with torch.no_grad():
prediction = ____
# Display mask
plt.imshow(prediction[1, :, :])
plt.show()