Modelo Faster R-CNN
Tu siguiente tarea es construir un modelo Faster R-CNN que pueda detectar objetos de distintos tamaños en una imagen. Para ello, usarás la práctica clase MultiScaleRoIAlign() de torchvision.ops.
La clase FasterRCNN se ha importado desde torchvision.models.detection. Tu anchor_generator del ejercicio anterior está disponible en tu espacio de trabajo y torch, torch.nn como nn y torchvision ya se han importado.
Este ejercicio forma parte del curso
Deep Learning para imágenes con PyTorch
Instrucciones del ejercicio
- Importa
MultiScaleRoIAligndesdetorchvision.ops. - Instancia el agrupador RoI usando
MultiScaleRoIAlignconfeatmap_namesestablecido en["0"],output_sizeen7ysampling_ratioen2. - Crea el modelo Faster R-CNN pasándole el
backbone,num_classpara una clasificación binaria,anchor_generatoryroi_pooler.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Import MultiScaleRoIAlign
____
# Instantiate RoI pooler
roi_pooler = ____(
____,
____,
____,
)
mobilenet = torchvision.models.mobilenet_v2(weights="DEFAULT")
backbone = nn.Sequential(*list(mobilenet.features.children()))
backbone.out_channels = 1280
# Create Faster R-CNN model
model = ____(
backbone=____
num_classes=____,
anchor_generator=____,
box_roi_pool=____,
)