Segmentar una imagen con una máscara
Con la máscara binaria lista, puedes usarla para segmentar el objeto (el gato) de la imagen.
Para hacerlo, necesitarás cargar la imagen original y transformarla en un tensor. Después, crearás el tensor del objeto enmascarando la imagen original. Por último, mostrarás el resultado.
transforms de torchvision ya se ha importado y el binary_mask que creaste en el ejercicio anterior está disponible.
Este ejercicio forma parte del curso
Deep Learning para imágenes con PyTorch
Instrucciones del ejercicio
- Crea
image_tensoraplicando la transformaciónToTensor(), definida comotransform, a la imagen original. - Segmenta la imagen enmascarando
image_tensorconbinary_mask, asignando el resultado aobject_tensor. - Aplica la transformación
to_pil_imageya definida aobject_tensorpara poder mostrarlo.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Load image and transform to tensor
image = Image.open("images/Egyptian_Mau_123.jpg")
transform = transforms.Compose([transforms.ToTensor()])
image_tensor = ____
# Segment object out of the image
object_tensor = ____
# Convert segmented object to image and display
to_pil_image = ____
object_image = to_pil_image(object_tensor)
plt.imshow(object_image)
plt.show()