yolo训练自己的数据及测试(C++版本)

一、下载yolo项目:

https://github.com/AlexeyAB/darknet(C++版本)

二、多GPU配置C++版本的yolo

    修改makefile文件如下:

    GPU=1

   CUDNN=1

  CUDNN_HALF=1

  OPENCV=1

 AVX=0

OPENMP=0

LIBSO=1

DEBUG=1

  

三、编译C++版本

遇到的bug1:
/bin/sh: 1: nvcc: not found
Makefile:88: recipe for target 'obj/convolutional_kernels.o' failed
make: *** [obj/convolutional_kernels.o] Error 127
错误原因:nvcc没有安装或者是设置的环境变量不生效

解决方案:在/et/profile中添加cuda的环境变量,添加完成之后切记source /etc/profile


参考文章:

https://blog.csdn.net/chengyq116/article/details/80552163

遇到的bug2:

 Error: Assertion failed ((flags & FIXED_TYPE) != 0)

错误原因:opencv版本不匹配

解决方案:编译c++版的yolo必须要装低于3.4.0版本的opencv ;如果电脑上已经装好其他版本的opencv,只需要重新编译所需要的opencv版本即可,然后在执行训练或其他命令之前执行export LD_LIBRARY PATH=$LD_LIBRARY_PATH:/data/opencv-3.4.0/build/lib,但是不能用sudo执行命令

bug3:

error while loading shared libraries: libopencv_highgui.so.3.4 linux

错误原因:安装完opencv时没有将opencv路径写入环境变量

解决方案:添加opencv环境变量

参考文章:

https://blog.csdn.net/u013066730/article/details/79411767(从第9步开始执行就行)

错误原因:显存不足

解决方案:将.cfg文件中的subdivision设置为64

 

四、标记自己的数据及训练

训练数据:./darknet detector train data/obj.data data/yolov3-tiny_test.cfg yolov3-tiny.conv.15 -gpus 0,1,2

计算锚点:./darknet detector calc_anchors data/obj.data -num_of_clusters 6 -width 416 -height 416

断点续传:./darknet detector train data/obj.data data/yolov3-tiny_test.cfg /backup/yolov3-tiny_train_1000.weights -gpus 0,1,2

不显示训练的loss变化的图像时用以下红框的语句

  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值