Segmentación con Mask R-CNN preentrenado
En este ejercicio, utilizarás el modelo Mask R-CNN preentrenado para realizar la segmentación de instancias en la siguiente imagen de dos gatos.
El modelo que vas a utilizar ha sido preentrenado con el conjunto de datos COCO, que contiene imágenes de objetos comunes, incluidos animales. Gracias a esto, el modelo debería ser capaz de reconocer gatos desde el primer momento, sin necesidad de ajustarlo.
Tu tarea consiste en cargar el modelo y las dos imágenes de gatos, preparar la imagen y pasarla al modelo para obtener las predicciones. Se han importado para ti Image
desde PIL
, torch
, transforms
desde torchvision
y maskrcnn_resnet50_fpn
.
Este ejercicio forma parte del curso
Aprendizaje profundo para imágenes con PyTorch
Instrucciones del ejercicio
- Carga la máscara R-CNN «
pretrained
» enmodel
utilizandomaskrcnn_resnet50_fpn()
. - Transforma la imagen de los dos gatos en un tensor y descomprímelo.
- Realiza la inferencia pasando la imagen al modelo y asigna el resultado a un
prediction
.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# Load a pre-trained Mask R-CNN model
model = ____(____)
model.eval()
# Load an image and convert to a tensor
image = Image.open("two_cats.jpg")
transform = transforms.Compose([transforms.ToTensor()])
image_tensor = transform(image).____
# Perform inference
with torch.no_grad():
prediction = ____
print(prediction)