ComeçarComece de graça

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

Ver curso

Instruções do exercício

  • Importe MultiScaleRoIAlign de torchvision.ops.
  • Instancie o RoI pooler usando MultiScaleRoIAlign com featmap_names definido como ["0"], output_size como 7 e sampling_ratio como 2.
  • Crie o modelo Faster R-CNN passando o backbone, num_class para uma classificação binária, anchor_generator e roi_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=____,
)
Editar e executar o código