Modelo Faster R-CNN
Sua próxima tarefa é construir um modelo Faster R-CNN que consiga detectar objetos de diferentes tamanhos em uma imagem. Para isso, você vai usar a prática classe MultiScaleRoIAlign() de torchvision.ops.
A classe FasterRCNN foi importada de torchvision.models.detection. Seu anchor_generator do último exercício está disponível no seu workspace e torch, torch.nn como nn e torchvision já foram importados.
Este exercício faz parte do curso
Deep Learning para Imagens com PyTorch
Instruções do exercício
- Importe
MultiScaleRoIAligndetorchvision.ops. - Instancie o RoI pooler usando
MultiScaleRoIAligncomfeatmap_namesdefinido como["0"],output_sizecomo7esampling_ratiocomo2. - Crie o modelo Faster R-CNN passando o
backbone,num_classpara uma classificação binária,anchor_generatoreroi_pooler.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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=____,
)