mmdetection自定义数据集训练

文章介绍了如何下载MMDetectionv3.0源码,基于deformable_detr模型进行训练。作者详细讲解了配置文件的生成和修改,包括coco.py和class_names.py,以及训练配置和数据集路径的设定。训练结果显示mAP为0.001,最后提到了调整预测图片的框色和置信度显示。
摘要由CSDN通过智能技术生成

目录

1. 源码下载,本文基于v3.0版本 

 2.选模型训练

2.1 先生成后面用于编译的配置文件

 2.2.1 修改coco.py

 2.2.2 修改class_names.py

3. 训练配置

 4. 训练过程展示

5. 预测图片填充框颜色修改、置信度修改




1. 源码下载,本文基于v3.0版本 

GitHub - open-mmlab/mmdetection: OpenMMLab Detection Toolbox and Benchmark

        安装环境依赖参考官方教程 

        GET STARTED — MMDetection 3.0.0 documentation 

 2.选模型训练

        本文使用deformable_detr模型进行训练

D:/deep_learn/OpenMMlab/mmdetection-main/configs/deformable_detr/deformable-detr_r50_16xb2-50e_coco.py
2.1 先生成后面用于编译的配置文件

        什么都不管,先编译一次,获得模型的配置文件,传入上面的模型文件路径

 配置完成后编译,当然会编辑不通过,但是tools会生成工作目录

         下面的就是模型的配置文件,需要修改次文件来训练自定义数据集,将其改名。复制一份到

D:/deep_learn/OpenMMlab/mmdetection-main/configs/deformable_detr/

 改名后复制后的结果显示

 

2.2 更改配置文件 

         训练自己定义的数据集需要修改3个地方,需要修改的如下:

数据集需要coco格式的,关于数据集的制作可看下面链接 

有手就行的自定义制作coco、voc、yolo格式数据集_Evan_qin_yi_quan的博客-CSDN博客

"""
自定义数据集训练,需要修改3个地方
1. D:\deep_learn\OpenMMlab\mmdetection-main\mmdet\datasets\coco.py 中修改类别名字
2. D:\deep_learn\OpenMMlab\mmdetection-main\mmdet\evaluation\functional\class_names.py的coco_classes类中修改类别名字
3. my-deformable-detr_r50_16xb2-50e_coco.py 修改数据集路径,和 num_class
2023.06.29
"""
 2.2.1 修改coco.py

 2.2.2 修改class_names.py

        都是把原来的类别名字注释掉,换成自己的类别名字 

 

2.2.3 修改my-deformable-detr_r50_16xb2-50e_coco.py文件

        本文以deformable-detr网络为例,所以修改此文件,使用其它网络模型的参考my-deformable-detr_r50_16xb2-50e_coco.py文件的制作方法。

        首先是看看自定义数据集文件目录结构,数据集名字coco-data

 修改deformable-detr_r50_16xb2-50e_coco.py文件

         训练集路径

        验证集路径 

        测试集路径 ,为了方便,这里写成和验证集一样了。

 

        修改类别数目num_classes,本文制作的数据集类别数是8. 

 至此修改完毕,接下来就是训练

3. 训练配置

        只需要把模型my-deformable-detr_r50_16xb2-50e_coco.py配置文件作为参数传递到tools/train.py脚本即可 

 4. 训练过程展示

        mAP0.5:0.95是第一行数据,mAP0.5是第二行数据

 Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets=1000 ] = 0.001
 Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets=1000 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= small | maxDets=1000 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=1000 ] = 0.000
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets=1000 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=100 ] = 0.003
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=300 ] = 0.003
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets=1000 ] = 0.003
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= small | maxDets=1000 ] = 0.000
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=1000 ] = 0.002
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets=1000 ] = 0.004

5. 预测图片填充框颜色修改、置信度修改

修改预测图片中填充框颜色,在_draw_instances函数中,标注框颜色直接在coco.y中定义类别的时候直接修改。

D:\deep_learn\OpenMMlab\mmdetection-main\mmdet\visualization\local_visualizer.py

填充框已修改为白色

标注框置信度默认是要百分数显示,已经放到100倍,去除_draw_instances中的

round(float(instances.scores[i])*100 , 1)#这里*100删除

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值