快速使用Faster RCNN进行训练VOC格式的数据集

jupiter
2021-09-20 / 0 评论 / 815 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年12月07日,已超过809天没有更新,若内容或图片失效,请留言反馈。

训练步骤

STEP1:下载代码并配置环境

git clone https://github.com/bubbliiiing/faster-rcnn-pytorch.git
cd faster-rcnn-pytorch
pip install -r requirements.txt

STEP2:根据文件结构填充VOC格式的数据集

  • 数据放置格式(只需完成#TODO部分即可)
├──VOCdevkit/VOC2007/
    ├── Annotations
        ├──放置xml文件 #TODO
    ├── JPEGImages
        ├──放置img文件 #TODO
    ├──ImageSets/Main
        ├──放置训练索引文件 (无需手动完成,自动生成)
    ├── voc2frcnn.py #数据分割脚本,用于生成训练索引文件
  • 编辑voc2frcnn.py。设置tarin\val\test数据分割比例
#----------------------------------------------------------------------#
#   想要增加测试集修改trainval_percent
#   train_percent不需要修改
#----------------------------------------------------------------------#
trainval_percent=1
train_percent=1
  • 生成训练索引文件
python voc2frcnn.py

STEP3:生成最终训练所需的txt文件

  • 编辑根目录下的voc_annotation.py,将classes改成你自己的classes(注意不要使用中文标签,文件夹中不要有空格!)
classes = ["aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat", "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person", "pottedplant", "sheep", "sofa", "train", "tvmonitor"]
  • 然后运行voc_annotation.py
python voc_annotation.py
  • 此时会生成对应的2007_train.txt,每一行对应其图片位置及其真实框的位置

STEP4:编辑model_data/voc_classes.txt

  • 将其中的类别数改为自己的,文件内容为
cat
dog
...

STEP5:修改train.py的NUM_CLASSSES

  • 将train.py的NUM_CLASSSES修改成所需要分的类的个数(不需要+1)

STEP6:开始训练

python train.py

STEP7:模型效果评估

评估过程可参考视频https://www.bilibili.com/video/BV1zE411u7Vw

参考资料

0

评论 (0)

打卡
取消