一 训练过程
1 准备数据集
数据集格式:VOC
└── VOCdevkit
└── VOC2012
├── Annotations(最后要的格式)
│ ├── 00a1c979-aed0-4765-9c23-bdf8f3f6eb9c.xml
│ ├── 0a02b6c7-88c8-4c47-8ac9-153840af2746.xml
│ ├── 0a0ad157-a13b-4bd5-97f5-5ee21fa9c4db.xml
│ ├── 0a0e9c6b-79e9-41ab-b333-b1d73914b48b.xml
│ └── 0a1ab3f5-6d77-46bc-936e-a5ec55070c3e.xml
├── ImageSets(代码生成,按比例随机分配)
│ └── Main
│ ├── train.txt
│ └── val.txt
├── JPEGImages(原图)
│ ├── 00a1c979-aed0-4765-9c23-bdf8f3f6eb9c.jpg
│ ├── 0a02b6c7-88c8-4c47-8ac9-153840af2746.jpg
│ ├── 0a0ad157-a13b-4bd5-97f5-5ee21fa9c4db.jpg
│ ├── 0a0e9c6b-79e9-41ab-b333-b1d73914b48b.jpg
│ ├── 0a1ab3f5-6d77-46bc-936e-a5ec55070c3e.jpg
│ └── 0a2ebaae-832e-423c-9798-cbb2fbefd85f.jpg
└── labels(只是我的初始数据的格式)
├── 00a1c979-aed0-4765-9c23-bdf8f3f6eb9c.txt
├── 0a02b6c7-88c8-4c47-8ac9-153840af2746.txt
├── 0a0ad157-a13b-4bd5-97f5-5ee21fa9c4db.txt
├── 0a0e9c6b-79e9-41ab-b333-b1d73914b48b.txt
├── 0a1ab3f5-6d77-46bc-936e-a5ec55070c3e.txt
└── 0a2ebaae-832e-423c-9798-cbb2fbefd85f.txt
2 修改训练参数 train_res50_fpn.py
有两个地方需要下载。url分别是:
https://download.pytorch.org/models/resnet50-0676ba61.pth
https://download.pytorch.org/models/fasterrcnn_resnet50_fpn_coco-258fb6c6.pth
修改参数:
运行即可。
训练过程,训练完一个epoch之后会进行验证(显示"Test:"),有ap和ar值。
3 验证 validation.py
用于调用训练好的模型权重去计算验证集/测试集的COCO指标 以及每个类别的mAP(IoU=0.5)
添加json文件并修改
4 预测 predict.py
绿色的都要改,最后生成json文件,并画出预测图