其他分享
首页 > 其他分享> > mmdetection训练自己的数据集

mmdetection训练自己的数据集

作者:互联网

mmdetection官方讲解

准备数据集

数据集格式一般是两种,coco和voc数据集,这里建议大家改成coco的,因为voc格式的config文件真的比较少,大部分都是coco的,而且改起来很麻烦
voc的xml文件转coco的json我已经放在这里了。

mmdetection
├── mmdet
├── tools
├── configs
├── data
│   ├── coco
│   │   ├── annotations
│   │   ├── train2017
│   │   ├── val2017
│   │   ├── test2017

coco的数据集存放位置如上所述。annotation存放json文件
在这里插入图片描述
test2017、train2017、val2017都是图片
然后建立软连接,coco_root是你的数据集地址哦

cd mmdetection
mkdir data
ln -s $COCO_ROOT data

2.修改类别

1.代码位于mmdetection/mmdet/datasets/coco.py
在这里插入图片描述
将其注释并修改为自己的数据集
2.mmdetection/mmdet/core/evaluation/class_names.py中修改类别
在这里插入图片描述
在return中修改为自己的数据集

3.修改基础信息

打开config/_base_datasets,找到coco_instance.py,里面可以修改dataroot等信息。
在这里插入图片描述

resize是你想要的图片大小,后面的keep_ratio是多尺度训练在这里插入图片描述

4.修改config文件

在跑代码前需要知道自己想跑那个模型,比如想跑faster_rcnn算法中的r50_fpn_1x找到

修改学习率位置在这里插入图片描述
optimizer = dict(type=‘SGD’, lr=0.0025, momentum=0.9, weight_decay=0.0001) #当gpu数量为8时,lr=0.02;当gpu数量为4时,lr=0.01;我只要一个gpu,所以设置lr=0.0025

5.训练

单GPU训练:python ./tools/train.py ./configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py
多GPU训练: ./tools/dist_train.sh configs/cascade_rcnn_r101_fpn_1x.py 4 --validate

参考

标签:训练,修改,py,coco,lr,mmdetection,rcnn,数据
来源: https://blog.csdn.net/dear_queen/article/details/121420084