НачатьНачать бесплатно

Модель 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_size7, а sampling_ratio2.
  • Создайте модель 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=____,
)
Редактировать и запускать код