Modello Faster R-CNN
Il tuo prossimo compito è costruire un modello Faster R-CNN che possa rilevare oggetti di diverse dimensioni in un'immagine. Per questo userai una comoda classe, MultiScaleRoIAlign(), da torchvision.ops.
La classe FasterRCNN è stata importata da torchvision.models.detection. Il tuo anchor_generator dall'esercizio precedente è disponibile nel tuo workspace e torch, torch.nn come nn e torchvision sono già stati importati.
Questo esercizio fa parte del corso
Deep Learning per Immagini con PyTorch
Istruzioni dell'esercizio
- Importa
MultiScaleRoIAligndatorchvision.ops. - Istanzia il RoI pooler usando
MultiScaleRoIAlignconfeatmap_namesimpostato a["0"],output_sizea7esampling_ratioa2. - Crea il modello Faster R-CNN passandogli il
backbone,num_classper una classificazione binaria,anchor_generatoreroi_pooler.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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=____,
)