视频编码学习之路822思享实验室深度学习·神经网络·计算机视觉

Windows下使用COCO数据集训练Yolo(darknet)

2018-12-22  本文已影响29人  团不慌

本文主要记录使用COCO 数据集训练darknet网络获取yolo权重的过程,主要包括:数据集处理及训练过程。
参考资料:
1.CSDN - 在COCO数据集中制作Darknet的训练集
2.Github - COCO_forYOLO
3.Github - hwrenx/coco2yolo
4.Github - philferriere/cocoapi (windows)
5.Github - AlexeyAB/darknet
6.博客园 - darknet-训练自己的yolov3模型

1 数据集处理

1.1 下载数据集

下载COCO 数据集,主要部分:

将所有imageannotations解压到各自文件夹内即可

1.2 处理标签文件

需要进行的处理:

自己整理了一个脚本:Github - coco2yolo。下载后将两个脚本放在数据集根目录,运行coco2yolo.py即可。

运行脚本前需要安装的库:

其中Windows下是无法直接通过pip install安装pycocotools的(作者没有考虑Windows环境),可能会出现无效参数/Wno-cpp等错误,需要使用WIndows版本的pycocotools手动安装:

成功运行后会生成coco.data,用其覆盖掉darknet/cfg/coco.data,并在darknet/cfg下创建一个新的文件夹backup

2 使用darknet

  1. Windows下使用AlexeyAB的darknet:项目地址。使用build/darknet下的darknet.sln即可,注意版本要求和opencv依赖配置(具体要求见Github的README)。
  1. 编译完成后到C:\opencv_3.0\opencv\build\x64\vc14\bin里找到以下文件放到darknet/build/darknet/x64下面
  1. 如果提示找不到cudnn64_7.dll,到path/to/your/cudnn/bin路径下拷贝一份

  2. 确认C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1路径是否存在且包含bininclude,如果没有就从自己的CUDA路径下面拷贝一份(默认路径C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vx.x

  3. 根据实际情况更改yolov3.cfg参考链接

  4. 使用darknet.exe进行训练:darknet.exe detector train cfg/coco.data cfg/yolov3.cfg


错误记录:
1.错误 error C2054 在“using”之后应输入“(” (编译源文件...) opencv版本错误(3.4.1+)
2.错误 error MSB3721 ... 已退出,返回代码为 1 更换VS 2015
3.错误 error : expected a ";" 更换VS 2015
4.错误 error C1083: 无法打开包括文件: “cudnn.h”: No such file or directory 未在path中设置cudnn或路径错误


正文完

上一篇 下一篇

猜你喜欢

热点阅读