Modèle Faster R-CNN
Votre prochaine tâche consiste à construire un modèle Faster R-CNN capable de détecter des objets de différentes tailles dans une image. Pour cela, vous allez utiliser la classe pratique MultiScaleRoIAlign() de torchvision.ops.
La classe FasterRCNN a été importée depuis torchvision.models.detection. Votre anchor_generator de l’exercice précédent est disponible dans votre espace de travail et torch, torch.nn sous le nom nn, ainsi que torchvision, ont été importés.
Cet exercice fait partie du cours
Deep Learning pour l’image avec PyTorch
Instructions
- Importez
MultiScaleRoIAligndepuistorchvision.ops. - Instanciez le pooler RoI en utilisant
MultiScaleRoIAlignavecfeatmap_namesdéfini à["0"],output_sizeà7, etsampling_ratioà2. - Créez le modèle Faster R-CNN en lui passant le
backbone,num_classpour une classification binaire,anchor_generatoretroi_pooler.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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=____,
)