YOLOv4使用GPU测试及训练配置要求:
CUDA 10.0 cudnn 7.0以上 opencv2.4以上
YOLOV4的权重文件以及训练预权重文件链接如下:
https://pan.baidu.com/s/18Gq97bhUzLz2i8wnvSBy8g 提取码:4131
满足配置的情况下详细过程如下:
git clone https://github.com/AlexeyAB/darknet.git
(1如果只用CPU测试,没有安装CUDA和Cudnn,直接cd到指定目录下make编译即可.
cd darknet
make
之前可能会报错
error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
Makefile:162: recipe for target 'obj/network.o' failed
是因为darknet/src/network.c代码中for循环哪里有点问题,需要将将for循环中int batch=0改成batch=0,并在for循环前加上int batch.但是现在github上的已经更新维护,都已经修改过了.
(2)装了对应版本的CUDA和cudnn,需要用到GPU测试和训练等.
首先,打开darknet下的Makefile文件,将一些参数修改GPU=1,CUDNN=1,opencv=1,以及第64行的NVCC修改到自己电脑下CUDA的目录下如下所示:
修改之后,和上面一样cd到darknet目录下,然后编译
cd darknet
make
最后安装成功后会,尝试执行命令:
./darknet
会输出:
即可.
注意:如果报CUDA或者没有cudnn.h相关一类的错误,检查CUDA的路径是否正确,如果没有安装或者版本不满足要求,可以参考CUDA及cudnn安装.
测试命令和YOLOV3的差不多:
./darknet detect cfg/yolov4.cfg yolov4.weights data/dog.jpg
那张熟悉的狗狗图片,另附上YOLOV3的检测情况:
另外V4的数据集和V3是有一点区别的,后续制作了数据集会更新
参考文献:
https://blog.csdn.net/ly_twt/article/details/105748280#comments_12014895