IniziaInizia gratis

Eseguire la segmentazione semantica

Ottimo lavoro nel progettare la U-Net! Hai a disposizione un modello già pre-addestrato molto simile a quello che hai appena costruito. Questo modello è stato addestrato su un ampio insieme di immagini e include alcune piccole aggiunte all'architettura, come i livelli di batch norm.

Puoi istanziare il modello con UNet(), che fornirà i pesi pre-addestrati. Il tuo compito è usarlo per produrre maschere di segmentazione per la seguente immagine di un'auto.

car image

Image da PIL è già stato importato per te.

Questo esercizio fa parte del corso

Deep Learning per Immagini con PyTorch

Visualizza il corso

Istruzioni dell'esercizio

  • Istanzia UNet() in una variabile chiamata model.
  • Carica l'immagine car.jpg in una variabile chiamata image.
  • Produci le maschere di segmentazione passando l'immagine al modello e applicando squeeze(0) all'output.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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()
Modifica ed esegui il codice