Configurar máscaras semânticas
Uma forma comum de realizar segmentação panóptica é combinar as saídas de segmentação semântica e por instância. Considere a imagem a seguir de uma rua em Nova York.

Sua tarefa é segmentá-la de forma panóptica, de modo que cada táxi seja identificado como um objeto separado, enquanto você diferencia entre os fundos de asfalto e de prédios.
Para isso, você vai começar produzindo uma máscara semântica com um U-Net pré-treinado, disponível para você como UNet(). A ideia é que ele diferencie entre os dois tipos de fundo (mas não entre táxis específicos)!
Este exercício faz parte do curso
Deep Learning para Imagens com PyTorch
Instruções do exercício
- Instancie o modelo U-Net como
model. - Gere
semantic_maskspassando o tensor da imagem de entrada para o modelo. - Crie uma única máscara semântica escolhendo a classe de maior probabilidade para cada pixel.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()