linux-yolov4 darknet环境配置以及效果实测

目录

1、编译运行

2、测试运行


测试环境:ubuntu18.04+driver450+cuda11.0+cudnn8.0.5+opencv4.4.0

工程地址:https://github.com/AlexeyAB/darknet

驱动、显卡、opencv环境搭建:https://blog.csdn.net/weixin_34910922/article/details/118118797

1、编译运行

        配置好cuda  cudnn  以及opencv后。

        进入darknet目录,先修改一下Makefile里面的文件,以支持GPU:

GPU=0
CUDNN=0
CUDNN_HALF=0
OPENCV=0
AVX=0
OPENMP=0
LIBSO=0
ZED_CAMERA=0
ZED_CAMERA_v2_8=0

改为:

GPU=1 # 支持gpu加速
CUDNN=1 # 支持cudnn
CUDNN_HALF=1 # 支持f16
OPENCV=1 # 使用opencv
AVX=0
OPENMP=0
LIBSO=1 # 编译darknet.so
ZED_CAMERA=0
ZED_CAMERA_v2_8=0

        接着就是编译可执行文件了:

make -j8

错误处理:

1、ubuntu上编译opencv4,make时出现:

linux-yolov4 darknet环境配置以及效果实测_第1张图片

        错误原因,找不到opencv.pc文件。原因,opencv4编译后生成的为opencv4.pc文件。locate opencv4.pc查找位置:

修改两处:

        1)makefile中,将opencv改为opencv4

linux-yolov4 darknet环境配置以及效果实测_第2张图片

        2)将opencv4.pc添加进变量;

export PKG_CONFIG_PATH=/usr/local/opencv4/lib/pkgconfig

        继续编译,成功。

        如果没有错的话 会生成一个类似于windows里的可执行文件:darknet,然后我们在测试一下该文件:

./darknet

2、opencv动态库调用错误:

        配置opencv lib路径:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/opencv4/lib

        完整opencv配置:

        如果编译成功,则出现:

usage: ./darknet

2、测试运行

1)测试图片:

./darknet detect cfg/yolov4.cfg yolov4.weights data/dog.jpg -thresh 0.2

        运行开始会打印配置信息网络结构参数等:

linux-yolov4 darknet环境配置以及效果实测_第3张图片

        测试结束后,以窗口形式显示结果:

linux-yolov4 darknet环境配置以及效果实测_第4张图片

2)测试video:

./darknet detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights data/ILSVRC2015_train_00755001.mp4 -thresh 0.2

3)调用本地摄像头实时检测:

./darknet detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights

        源码调用时,需打开动态库LIBSO=1属性。同时提供include文件夹下的darknet.h头文件。

你可能感兴趣的:(目标检测,opencv,linux,c++,深度学习,边缘计算)