mmdetection训练自己的模型

参考文档:
mmdetection入门文档

预训练权重下载model_zoo.md

>>训练自己的模型

1.修改配置文件

位置:mmdetection/configs/__ base__/models/faster_xxxx.py
操作:

  • num_class=N
  • dataset_type = ‘VOCDataset’ ;data_root = ‘data/VOCdevkit/’
  • ann_file = data_root + ‘VOC2007/ImageSets/Main/xx.txt’
  • img_prefix = data_root + 'VOC2007/'等

说明:N表示分类类别,不包含背景,2.x版本中都不需要+1

(可选)修改输入图片大小
位置:mmdetection/configs/__base __/datasets/voc0712.py
操作:img_scale=(1000, 600)
说明:如果电脑跑不动,可以改小一点

2.1修改标签1
位置:mmdetection/mmdet/core/evaluation/class_names.py
操作:根据格式修改标签即可,以VOC为例
说明:在这里插入图片描述
2.2修改标签2
位置:mmdetection/mmdet/datasets/voc.py
操作:改成自己的标签,只有一个类别时,要以逗号结尾,否则会报错
说明:在这里插入图片描述

3.训练
位置:mmdetection/tools/train.py

python tools/train.py configs/foveabox/fovea_r50_fpn_4gpu_1x.py --gpus 1 --work-dir mmdetection/train_logs/ 

说明:
1)python tools/train.py [使用的模型] --gpus [gpu个数] --work-dir [训练结果保存地址]
2)faster_rcnn_r50_fpn_1x_coco.py是训练了12个epochs,2x是训练了24个epochs
3)faster_rcnn_r50_fpn_1x_coco.py里面checkpoint_config = dict(interval=1)表示训练一次保存一个模型
4)faster_rcnn_r50_fpn_1x_coco.py里面log_config = dict(interval=50,…)表示训练50次保存一个日志
5)断点训练

 python tools/train.py configs/foveabox/fovea_r50_fpn_4gpu_1x.py --resume-from work_dirs/fovea_r50_fpn_4gpu_1x/epoch_9.pth

–resume-from: 加载模型权重和优化器状态,训练会从上个epoch继续训练,通常用于训练意外中断的情况。
–load-from:只加载模型权重,训练会从epoch_0开始,通常用于微调

可视化训练过程
位置:mmdetection/tools/analyze_logs.py
说明:python tools/analysis_tools/analyze_logs.py [绘制曲线] [日志目录] --keys [绘制的变量] --out [输出格式]

 python tools/analysis_tools/analyze_logs.py plot_curve work_dirs/fovea_r50_fpn_4gpu_1x/20210602_224220.log.json --keys acc --out out.jpg

检测结果
位置:mmdetection/
说明:展示检测图片

 python tools/test.py work_dirs/fovea_r50_fpn_4gpu_1x/fovea_r50_fpn_4gpu_1x.py work_dirs/fovea_r50_fpn_4gpu_1x/epoch_24.pth  --show

获取评估值
位置:mmdetection/
说明:获得mAP

python tools/test.py work_dirs/fovea_r50_fpn_4gpu_1x/fovea_r50_fpn_4gpu_1x.py work_dirs/fovea+iff_r50_fpn_4gpu_1x_simple/epoch_24.pth --eval mAP
  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值