mmdetection的使用总结

一 资料链接:

1---mmdetection官方地址:

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

2---mmdetection安装与入门教程:

https://blog.csdn.net/hajlyx/article/details/83542167

https://blog.csdn.net/long_xuan123/article/details/101266643

3---voc2007数据集格式介绍:

https://blog.csdn.net/qq_38273984/article/details/90749314

4---数据集格式的转换(voc转coco):格式转换箱

https://github.com/spytensor/prepare_detection_dataset

5---mmdetection的configs中的各项参数具体解释:

https://blog.csdn.net/weicao1990/article/details/91879513

https://blog.csdn.net/syysyf99/article/details/96574325

二 mmdetection使用记录

在linux系统安装完mmdetection后,记录一下初次学习使用mmdetection的过程:

1) 数据生成与处理;

2)调节mmdetection输入参数;

3)训练;

4)转换权值文件和预测。 

1) 数据生成与处理

检测:

1-1)数据的重命名; 最好按照xxx_000001.jpg,有顺序的重命名;需用到zfill函数。

1-2)数据的标注; labelImg标注(PascalVOC mode下,生成的是XML文件)。

1-3)数据的扩增,利用img_aug(github)可以同时扩增数据和XML。

1-4)装成coco格式的数据。 每张图片有对应的XML文件,在写程序生成CSV文件;

        格式转换箱(csv2coco.py)由CSV文件生成coco文件;

1-5)将数据集的文件夹通过【ln -s 数据集文件夹地址 目的地文件夹地址】命令进行软链接。

分割:

1-1)数据的重命名; 最好按照xxx_000001.jpg,有顺序的重命名;需用到zfill函数。

1-2)数据的标注; labelme标注(生成的是json文件,jpg文件和json文件放在同一个文件夹中便于后续读取)。

1-3)数据的扩增,利用img_aug(github,里面有点扩增)可以同时扩增数据和json。 将json文件里的mask对应的边缘坐标读取出来,经img_aug扩增后,再写入新生成的json.

1-4)装成coco格式的数据。 每张图片有对应的json文件,格式转换箱(labelme2coco.py);

2)调节mmdetection输入参数;

在configs/目录下的各个py文件调节参数: configs/faster_rcnn_r50_fpn_1x.py

若用FP16,configs/fp16/faster_rcnn_r50_fpn_fp16_1x.py

其中,变成FP16精度的语句主要为在开头的两句:

# fp16 settings

fp16 = dict(loss_scale=512.)

3)训练; $ python tools/train.py configs/faster_rcnn_r50_fpn_1x.py

其中,若出现:某某py文件中含有不可识别的参数,在第几几行,例如,第111行,含有不可识别的参数meta,=meta。解决办法:删掉该变量。

4)转换权值变量和预测

4-1)转换权值变量; python tools/publish_model.py  ${INPUT_FILENAME}  ${OUTPUT_FILENAME} 去除掉一些保存的训练的状态。

4-2)预测; demo.py

其中,

-1) demo.py文件中,目前没有发现可批量预测的值,需要循环输入,单张预测。 模型输出result变量为一个list[numpyarray[50,5],numpyarray[50,5],...],list的长度为目标类别的数量,其中【50,5】,为50个长度为5的矩阵,【xmin,ymin,xmax,ymax,score】.

-2) 若用FP16的预测,需加入: from mmdet.core import wrap_fp16_model wrap_fp16_model(model) 其中,可以从tools/test.py 中 找到。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mmdetection中,benchmark文件主要用于评估检测模型的性能和效果。benchmark文件包含了一系列的测试数据集和其对应的标注文件。通过运行benchmark文件,可以对训练的模型进行测试,并计算其在各个数据集上的性能指标,如精确度、召回率等。 具体使用benchmark文件的步骤如下: 1. 准备好测试数据集和对应的标注文件。这些数据集可以是自己收集的或者是公开的数据集。 2. 将测试数据集和标注文件按照一定的格式整理成benchmark文件所需要的输入格式。通常,benchmark文件要求测试数据集和标注文件之间有对应的文件名关系,以便进行匹配和评估。 3. 在mmdetection中,运行benchmark文件,通过指定测试数据集的路径和标注文件的路径,可以对模型进行评估。 4. 运行完成后,可以得到模型在各个数据集上的性能指标,包括精确度、召回率等。这些指标可以用于评估模型的性能和效果,并进行比较。 总结起来,mmdetection中的benchmark文件用于评估检测模型的性能和效果,通过计算模型在测试数据集上的性能指标来进行评估。通过整理测试数据集和标注文件,并运行benchmark文件,可以得到模型在各个数据集上的性能指标,以便进行模型选择和优化。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [经典目标跟踪算法](https://blog.csdn.net/smallwhite620451/article/details/103822662)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值