Faster R-CNN 模型
接下来,您将构建一个 Faster R-CNN 模型,用于在图像中检测不同尺寸的目标。本任务将使用 torchvision.ops 中的实用类 MultiScaleRoIAlign()。
FasterRCNN 类已从 torchvision.models.detection 导入。上一个练习中创建的 anchor_generator 已在您的工作区可用,且已导入 torch、将 torch.nn 作为 nn、以及 torchvision。
本练习是课程的一部分
使用 PyTorch 进行图像深度学习
练习说明
- 从
torchvision.ops导入MultiScaleRoIAlign。 - 使用
MultiScaleRoIAlign实例化 RoI 池化器,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=____,
)