![]()
mmdetection codebase使用说明。一段时间没有接触程序容易忘记相关配置和代码结构,以防再次捡起来看浪费时间,记录相关说明备忘。
这个检测库在逐渐完善,代码也越来越精简高效,导致很多地方改动很大,针对不同版本均写了注释代码和使用说明。
codebase源码:https://github.com/open-mmlab/mmdetection
¶1. 程序安装
参考官方指南:入口
¶1.1 注意事项:作者版本迭代很快,pytorch直接上最高版本就行
注意以develop开发者模式安装,避免去site-packages里面改程序
如果安装了多个版本的mmdetection,为了避免环境和应用的冲突,要导入环境:1export PYTHONPATH=`pwd`:$PYTHONPATH
¶1.2 步骤:配置单独的anaconda环境1
2conda create -n mmdetection python=3.7 -y
source activate open-mmlab安装相关依赖1
2pip install mmcv
conda install cython
pytorch1.0以上版本安装此处不展开,单独安装即可。如果有其他报错,根据提示安装相应的依赖即可。代码安装和编译1
2
3
4git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
./compile.sh
python setup.py develop
个人用的Pytorch 1.0,为了不产生代码和环境的兼容问题,直接使用我自己注释的代码注释版本:mmdetection-annotated。注意使用开发者模式安装,方便改代码。
¶2. 检测
¶2.1 检测demo
建议新建一个weights文件夹存储下载的权重,方便自己寻找。只需在demo.py中配置使用的网络属性选择对应的py文件,以及修改权值路径即可。然后添加待检测的图片或者文件夹等。
官方demo只支持检测单张图片,更多扩展和显示功能参加自己写的demo,以及hook文件(读取网络参数)。
¶2.2 test
mmdet提供了一个test工具,可以直接在验证集上跑效果,得到AR,P等参数。参见官方指南。关于路径配置同下面的训练。
¶3. 训练
¶3.1 COCO数据集
¶3.1.1 数据集准备
不限类别随便什么格式都行,最后统一转成voc的xml格式,然后用工具转成coco的json文件,进行统一调整和训练。转换的代码工具见我的toolbox代码库 .
¶3.1.2 训练注意学习率设置。默认学习率是8GPU的,我单卡就调整为原来设置的1/8.
每次训练输入一长串的东西很麻烦,我改了代码将argparse对应项设置为非必要参数,通过在train.py内配置config文件等,节省输入的功夫(参考我的mmdetection的train.py文件);同时为了将路径的tools也省去输入的麻烦,建议也将对应的config文件中训练和验证的数据集路径修改为相对目录,向上索引一个目录。参见我的设置。
断点训练很好用。
mmdetection 0.6.0 v1(torch 1.1.0+)
¶1.安装
¶1.1 依赖项注意
CUDA 9.0+
¶1.2 命令
这次精简了编译过程,将编译和安装写到一个setup文件中,更加方便,值得学习。由于之前有一个版本的mmdetection和torch,安装过程遇到了坑,注意:单独新建一个conda环境,装torch1.1.0+,用于运行新的mmdetection库,就不用担心兼容问题
开发者模式安装1python setup.py develop
¶2.其他变动
参见README.md的介绍,注释重新更新到master branch上 .
版权声明:本文为CSDN博主「老刘口才」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_36250977/article/details/112872628
![]()

暂无评论