记录darknet-yolov3训练过程

1.构建数据集

dataset
	——JPEGImages  # 图片路径
	——Annotations # xml标签路径
	——ImageSets
		——Main # 生成分组的txt路径
	——labels(自动生成) # xml转化成符合标准的txt标签路径

运行covert_to_txt.py,在Main路径下生成四个txt,完成数据集分组,修改voc_label.py中对应的sets, classes以及路径,将Anno路径下的所有标签转换至labels下,并将分组后的txt文件写在dataset路径下。

2. 改配置文件

修改Makefile,使用GPU的话nvcc路径(所有cuda-8.0都要)也要修改

修改darknet/data/voc.names标签名;

修改darknet/cfg/voc.data对应路径;

修改darknet/cfg/yolov3.cfg:
a. Testing&Training模式要切换(要注释掉);
b. max_batches为总迭代次数;
c. [yolo]中classes改成自己的类别,filters=3*(5+len(classes));
其他参数的含义,这篇博客里解释的很清楚(关键还是要理解算法QAQ):
https://blog.csdn.net/qq_43211132/article/details/91978149

如果要修改一些输出,例如保存训练log、保存模型的条件(这一项如果改变了步长,应该要和cfg中学习率变动的步长对应上,否则变动的策率就不生效了),则在darknet/example/detector.c中修改源码:
https://blog.csdn.net/lingyunxianhe/article/details/102518957
这篇博客通过保存日志的方式画出了loss曲线图;

此外,可以通过darknet/src/image.c修改输出的预测结果,比如把置信度添在目标上…

最后记得:每次改完源码都要重新编译每次改完源码都要重新编译每次改完源码都要重新编译。

3. 下载预训练权重、训练

wget https://pjreddie.com/media/files/darknet53.conv.74

./darknet detector train cfg/voc.data cfg/yolov3.cfg darknet53.conv.74 -gups 0,1,2,3

./darknet detector test cfg/voc.data cfg/yolov3.cfg backup/yolov3_final.weights data/*.jpg
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值