Модель Faster R-CNN
Ваше наступне завдання — зібрати модель Faster R-CNN, яка зможе знаходити об'єкти різних розмірів на зображенні. Для цього скористайтеся зручною класою MultiScaleRoIAlign() з torchvision.ops.
Клас FasterRCNN імпортовано з torchvision.models.detection. Ваш anchor_generator з попередньої вправи доступний у робочому середовищі, а також імпортовано torch, torch.nn як nn і torchvision.
Ця вправа є частиною курсу
Глибоке навчання для зображень із PyTorch
Інструкції до вправи
- Імпортуйте
MultiScaleRoIAlignзtorchvision.ops. - Створіть RoI-пулер за допомогою
MultiScaleRoIAlign, встановившиfeatmap_namesу["0"],output_size—7, аsampling_ratio—2. - Створіть модель Faster R-CNN, передавши їй
backbone,num_classдля бінарної класифікації,anchor_generatorіroi_pooler.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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=____,
)