当前位置:   article > 正文

MMDetection训练自己的数据集coco格式

MMDetection训练自己的数据集coco格式

参考 

​​MMDetection 目标检测 —— 环境搭建和基础使用-CSDN博客

利用labelme制作自己的coco数据集(labelme转coco数据集)-CSDN博客


1.下载mmdetection

克隆mmdetection到本地

git clone https://github.com/open-mmlab/mmdetection.git

如果git clone下载的速度太慢,可以使用github的镜像进行下载,如下:

git clone https://github.com.cnpmjs.org/open-mmlab/mmdetection.git

或者直接下载zip,然后再解压。

 

 2.把自制的coco数据集放在mmdetection目录

3. 以rtmdet模型进行训练

3.1选择rtmdet tiny_8xb32-300e_coco.py

复制rtmdet tiny_8xb32-300e_coco.py所在的绝对路径(相对路径容易出错)后,打开tools/train.py,把rtmdet tiny_8xb32-300e_coco.py的绝对路径添加到脚本形参中。

训练代码:

python ./tools/train.py ./configs/rtmdet/rtmdet_tiny_8xb32-300e_coco.py

3.2运行train.py

此时会在tools文件夹下生成work_dirs文件夹,work_dirs中有rtmdet_tiny_8xb32-300e_coco.py把work_dirs下的rtmdet_tiny_8xb32-300e_coco.py复制到configs/rtmdet文件夹下并重命名为my_rtmdet_tiny_8xb32-300e_coco.py,并下载rtmdet_tiny_8xb32-300e_coco.py对应的权重文件rtmdet_tiny 8xb32-300e coco 20220902 112414-78e30dcc.pth(README中有对应的下载文件链接)

等价于直接运行以下命令(下载配置文件和模型权重文件):

mim download mmdet --config rtmdet_tiny_8xb32-300e_coco --dest .

3.3 修改my_rtmdet tiny_8xb32-300e_coco.py配置文件 

由于我的coco数据集只有cat和dog两个类别标签,所以修改num_classes=2

 修改所有的data_root的路径,修改为绝对路径

 

修改所有的ann_file的路径,修改为绝对路径

3.4 修改mmdet/functinal/class_names.py

把原有的类别名称改为coco数据集中的类别名称 

3.5修改mmdet/datasets/coco.py

把原有的类别名称改为coco数据集中的类别名称 

3.6运行train.py

把my_rtmdet tiny_8xb32-300e_coco.py的绝对路径添加到train.py的脚本形参中并运行。

 

 运行结束后会在tools/work_dirs文件目录下生成 rtmdet tiny_8xb32-300e_coco文件目录

3.7运行demo/image_demo.py

把以下内容添加到image_demo.py的脚本参数,再运行image_demo.py

  1. /Users/WYX/Desktop/code/mmdetection-main/data/coco/test2017
  2. /Users/WYX/Desktop/code/mmdetection-main/configs/rtmdet/my_rtmdet_tiny_8xb32-300e_coco.py
  3. --weights
  4. /Users/WYX/Desktop/code/mmdetection-main/tools/work_dirs/rtmdet_tiny_8xb32-300e_coco/epoch_300.pth
  5. --show
  6. --device
  7. cpu

等价于直接运行以下命令进行验证:

python demo/image_demo.py demo/demo.jpg rtmdet_tiny_8xb32-300e_coco.py --weights rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth --device cpu

运行结束后,会出现测试的结果图片。

4.可视化控制台打印输出的信息 

4.1wandb

参考 Weights & Biases: The AI Developer Platform

4.2tensorboard

参考 https://www.tensorflow.org/tensorboard?hl=zh-cn

4.3直接命令行

  1. #可视化
  2. #python tools/analysis_tools/analyze_logs.py plot_curve tools/work_dirs/rtmdet_tiny_8xb32-300e_coco/20240625_145648/vis_data/20240625_145648.json --keys loss_cls loss_bbox

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/762134
推荐阅读
相关标签
  

闽ICP备14008679号