参考b站博主的讲解视频跑通源码
参考的b站讲解视频链接
源码与预训练权重下载
源码下载
PyTorch版的Faster-RCNN源码的下载链接如下:
Faster-RCNN源码
预训练权重下载
- MobileNetV2 backbone 对应的预训练权重下载链接如下:
MobileNetV2预训练权重 - ResNet50+FPN backbone 对应的预训练权重下载链接如下:
ResNet50+FPN预训练权重
注: 将下载后的pth文件重新命名为如【fasterrcnn_resnet50_fpn_coco.pth】的形式,并存储在backbone文件夹中。
使用公开数据集训练网络
公开数据集下载
Pascal VOC2012 train/val数据集下载地址如下:
数据集
注: 将下载后的VOCdevkit文件直接加到源码文件夹下即可。
训练resnet50_fpn网络
- Step1: 修改几处代码。
(1)【weights_dict:“”】内改为:
【./backbone/fasterrcnn_resnet50_fpn_coco.pth】
(2)【–data-path】的default值改为:【./】
(3)由于GPU性能的限制,需要将【–batch_size】的default值从【8】降到【4】。 - Step2: 开始训练,得到的【损失值与学习率曲线】与【mAP曲线】如下。
运行验证脚本
- Step1: 修改几处代码:将【–data-path】的default值改为:【./】
将【—weights】的default值改为:
【./save_weights_resNetFpn-model-*.pth】 - Step2: 运行脚本,得到网络的COCO指标。
运行测试脚本
- Step1: 修改一处代码:将【train_weights】改为:【./save_weights/resNetFpn-model-*.pth】。
- Step2: 找一张图片存在根目录下,并命名为【test.jpg】。
- Step3: 运行代码,得到的测试结果如下。