ComeçarComece de graça

Sobrepor máscaras de instância

Bom trabalho ao produzir a máscara semântica no exercício anterior! Agora, você pode sobrescrevê-la com as máscaras de instância nos locais onde os objetos foram identificados pelo modelo de segmentação por instância.

Você usará o MaskRCNN pré-treinado disponível no seu workspace para gerar máscaras de segmentação por instância. Em seguida, vai iterar sobre essas máscaras e, para cada uma, sobrepor as partes onde um objeto é detectado com alta confiança por cima da máscara semântica.

torch já está importado para você.

Este exercício faz parte do curso

Deep Learning para Imagens com PyTorch

Ver curso

Instruções do exercício

  • Inicialize panoptic_mask clonando a semantic_mask.
  • Defina o laço for para iterar sobre as máscaras de instância, chamando a variável do iterador de mask.
  • Para cada máscara de instância, nos locais onde ela é maior que 0.5, sobrescreva a máscara panóptica com o instance_id atual.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Instantiate model and produce instance masks
model = MaskRCNN()
with torch.no_grad():
    instance_masks = model(image_tensor)[0]["masks"]

# Initialize panoptic mask as semantic_mask
panoptic_mask = ____

# Iterate over instance masks
instance_id = 3
for ____ in ____:
    # Set panoptic mask to instance_id where mask > 0.5
    panoptic_mask[____] = ____
    instance_id += 1
    
# Display panoptic mask
plt.imshow(panoptic_mask.squeeze(0))
plt.axis("off")
plt.show()
Editar e executar o código