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
<cours>Deep Learning pour l’image avec PyTorch</cours>Instructions de l’exercice
- 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 ce code d’exemple.
# 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=____,
)