Začněte nyníZačněte zdarma

Vytvoření sémantických masek

Běžný způsob, jak provést panoptickou segmentaci, je zkombinovat výstupy sémantické a instanční segmentace. Podívej se na následující snímek newyorské ulice.

street image

Tvým úkolem je provést její panoptickou segmentaci tak, aby byl každý taxík identifikován jako samostatný objekt a zároveň se rozlišilo pozadí tvořené asfaltem od pozadí budov.

Začneš tím, že pomocí předtrénovaného U-Netu, dostupného jako UNet(), vytvoříš sémantickou masku. Ta by měla rozlišit oba typy pozadí (ale jednotlivé taxíky od sebe neodliší)!

Toto cvičení je součástí kurzu

Deep Learning pro obrázky s PyTorchem

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř instanci modelu U-Net jako model.
  • Vygeneruj semantic_masks předáním vstupního obrazového tenzoru do modelu.
  • Vytvoř jednu sémantickou masku výběrem třídy s nejvyšší pravděpodobností pro každý pixel.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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()
Upravit a spustit kód