Mô hình Faster R-CNN
Nhiệm vụ tiếp theo của bạn là xây dựng một mô hình Faster R-CNN có thể phát hiện các đối tượng với nhiều kích thước khác nhau trong một ảnh. Cho nhiệm vụ này, bạn sẽ dùng lớp tiện dụng MultiScaleRoIAlign() từ torchvision.ops.
Lớp FasterRCNN đã được nhập từ torchvision.models.detection. anchor_generator từ bài trước có sẵn trong không gian làm việc của bạn và torch, torch.nn dưới tên nn, cùng torchvision đã được nhập.
Bài tập này là một phần của khóa học
Deep Learning cho Ảnh với PyTorch
Hướng dẫn bài tập
- Nhập
MultiScaleRoIAligntừtorchvision.ops. - Khởi tạo RoI pooler bằng
MultiScaleRoIAlignvớifeatmap_namesđặt là["0"],output_sizelà7, vàsampling_ratiolà2. - Tạo mô hình Faster R-CNN, truyền vào
backbone,num_classcho bài toán phân loại nhị phân,anchor_generator, vàroi_pooler.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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=____,
)