Ubuntu18.04配置darknet环境实现YOLOv4目标检测(一)——配置YOLOv4环境darknet
阅读原文时间:2021年04月23日阅读:1

目录

1. 概述

2.darknet配置

2.1 下载darknet

2.2 编译darknet

3.测试

3.1 测试图片


1. 概述

YOLO官方网址:https://pjreddie.com/darknet/yolo/

YOLOv1~v3作者开源项目地址:https://github.com/pjreddie/darknet

YOLOv4作者开源项目地址:https://github.com/AlexeyAB/darknet

YOLOv1论文地址:https://arxiv.org/pdf/1506.02640.pdf

YOLOv2论文地址:https://arxiv.org/pdf/1612.08242.pdf

YOLOv3论文地址:https://arxiv.org/pdf/1804.02767.pdf

YOLOv4论文地址:https://arxiv.org/pdf/2004.10934.pdf

测试demo:https://www.bilibili.com/video/BV18A41147LY

                         https://www.bilibili.com/video/av21133426

2.darknet配置

2.1 下载darknet

在Ubuntu终端输入以下命令:

git clone https://github.com/AlexeyAB/darknet.git

2.2 编译darknet

在编译darknet前首先需要修改Makefile,在终端输入以下命令:

cd darknet
gedit Makefile

打开后根据需要修改GPU,CUDNN等的值,GPU为1的话需要安装cuda,CUDNN为1的话需要安装CUDNN,CUDNN_HALF仅支持带有Tensor Cores的GPU如Titan V / Tesla V100 / DGX-2或者之后的显卡。

OPENCV为1的话,需要安装OpenCV,安装OpenCV可以在终端中输入以下命令:

sudo apt-get install libopencv-dev

通过编译安装opencv的话可以参考这篇博客的安装步骤:

https://blog.csdn.net/linghu8812/article/details/106677173

修改完Makefile之后,在终端中输入:

make

或者

make -j8

进行编译,j后面的数字表示cpu核数,cpu有多少个核就可以写几。

3.测试

3.1 测试图片

编译成功之后,进行测试,首先需要下载权重,权重下载地址:

https://drive.google.com/open?id=1cewMfusmPjYWbrnuJRuKhPMwRe_b9PaT

完成权重下载后,可以写一个shell的脚本文件,在终端中输入

touch test_coco.sh
gedit test_coco.sh

在test_coco.sh文件中写入以下内容:

./darknet detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -thresh 0.25 ./data/dog.jpg

在终端中输入以下命令后可以看到:

./test_coco.sh

完成检测后,可以得到如下结果,说明配置成功。

终端输出的结果如下,输出了每种类别的置信度。

data/dog.jpg: Predicted in 21.041000 milli-seconds.
bicycle: 92%
dog: 98%
truck: 92%
pottedplant: 33%

下图是YOLOv3的结果,YOLOv4比YOLOv3多检测了一个pottedplant。

终端输出的结果如下

data/dog.jpg: Predicted in 17.278000 milli-seconds.
bicycle: 100%
dog: 100%
truck: 94%