【darknet框架yolov3编译与训练测试】

环境:win10,vs2015

1. 下载github  https://github.com/AlexeyAB/darknet

2. 查阅cuda版本

【darknet框架yolov3编译与训练测试】_第1张图片

     3. 修改配置项

https://blog.csdn.net/Cwenge/article/details/83714157

https://blog.csdn.net/sinat_41852207/article/details/90906114

我这里是cuda9.0,先修改darknet.vcxproj文件,具体操作是将darknet.vcxproj文件,故打开文件把默认10.0改为9.0,并且删除compute_75,sm_75,加载darknet.sln编译失败。修改完darknet.vcxproj文件之后,用vs打开darknet.sln。

【darknet框架yolov3编译与训练测试】_第2张图片

 

【darknet框架yolov3编译与训练测试】_第3张图片

之后vs工具集设为 release x64,配置opencv(不在阐述)。然后到CUDA选项把路径指向CUDA的安装文件夹。

【darknet框架yolov3编译与训练测试】_第4张图片

保存然后编译如下

【darknet框架yolov3编译与训练测试】_第5张图片

 

数据集训练篇

1. 把数据集obj文件夹放入该目录,然后运行capture.bat,会生成obj文件名列表,之后删除列表中非图片id。

【darknet框架yolov3编译与训练测试】_第6张图片

2. 获取图片列表txt

【darknet框架yolov3编译与训练测试】_第7张图片

3.  创建obj.data与obj.names

//obj.data

classes= 1
train  = data/train.txt
#valid  = data/2007_test.txt
names = data/obj.names
backup = backup/


//obj.names

word

4. 进入cfg文件选定计划使用的检测模型,这里我们选用tiny3l,并将该cfg文件复制到上一层目录修改部分参数使用。

【darknet框架yolov3编译与训练测试】_第8张图片

 

5. 修改cfg,修改[ylo] 上面卷积核数目filter=(5+class)*6   ,这里有一类所以为18;然后修改数据集聚类的得到的anchor。3l的cfg需要9个anchors。如何得到anchors在第6部分说明;

【darknet框架yolov3编译与训练测试】_第9张图片

 

【darknet框架yolov3编译与训练测试】_第10张图片

6. anchors聚类

【darknet框架yolov3编译与训练测试】_第11张图片

聚类代码:

指定anchor个数和cfg中的宽和高,对应数据集路径。

darknet.exe detector calc_anchors data/obj.data -num_of_clusters 9 -width 608 -height 608

【darknet框架yolov3编译与训练测试】_第12张图片

7. 最后训练即可:

【darknet框架yolov3编译与训练测试】_第13张图片

 相关链接:

https://blog.csdn.net/abc13526222160/article/details/95107518?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-2

https://www.jianshu.com/p/b3c408d6cde0

https://blog.csdn.net/weixin_30576859/article/details/94909272?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-2

其他较为不错的博客:

https://www.jianshu.com/p/98aa75b0532f

https://blog.csdn.net/sunqiande88/article/details/102414883

你可能感兴趣的:(目标识别,人脸识别)