Modèle R-CNN plus rapide
Votre prochaine tâche consiste à créer un modèle Faster R-CNN capable de détecter des objets de différentes tailles dans une image. Pour cette tâche, vous utiliserez une classe pratique MultiScaleRoIAlign()
disponible sur torchvision.ops
.
FasterRCNN
La classe a été importée depuis torchvision.models.detection
. Votre fichier anchor_generator
issu de l'exercice précédent est disponible dans votre espace de travail, et les fichiers torch
, torch.nn
, nn
et torchvision
ont été importés.
Cet exercice fait partie du cours
Deep learning pour les images avec PyTorch
Instructions
- Importez
MultiScaleRoIAlign
à partir detorchvision.ops
. - Instancier le pooler RoI à l'aide de l'
MultiScaleRoIAlign
en définissantfeatmap_names
sur["0"]
,output_size
sur7
etsampling_ratio
sur2
. - Créez le modèle Faster R-CNN en lui transmettant l'
backbone
,num_class
pour une classification binaire,anchor_generator
etroi_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=____,
)