软硬件环境
- ubuntu 18.04 64bit
- nvidia gtx 1660
- YOLOv4
视频看这里
此处是youtube
的播放链接,需要科学上网。喜欢我的视频,请记得订阅我的频道,打开旁边的小铃铛,点赞并分享,感谢您的支持。
YOLOv4
YOLO
是目标检测领域非常优秀的算法之一,近日,YOLO
第四个版本发布了,论文地址: https://arxiv.org/pdf/2004.10934.pdf,该论文提出了五大改进,二十多个技巧,效果显著,同样的,YOLOv4
也是基于 darknet
框架。
YOLOv4检测
工程源码托管在 https://github.com/AlexeyAB/darknet,基本使用方法跟 YOLOv3
是一模一样的,如果不清楚的话,可以参考之前的文章 Darknet基本使用
首先我们需要下载 YOLOv4
的模型文件,地址是 https://drive.google.com/open?id=1cewMfusmPjYWbrnuJRuKhPMwRe_b9PaT,如果链接打不开的话,请到下面链接下载
接下来还是下载源码
git clone https://github.com/AlexeyAB/darknet.git
cd darknet
默认情况下,Makefile
没有打开 gpu
、cudnn
和 opencv
等选项,我这边是有这些环境的,关于 cuda
、cudnn
的安装,可以参考之前的链接 https://xugaoxiang.com/2019/12/13/ubuntu-cuda/
所以呢,还是要根据自己的实际情况,编辑 Makefile
,修改
GPU=1
CUDNN=1
OPENCV=1
修改成功后开始编译,直接输入命令 make
make
等到编译过程结束,在当前目录下会生成可执行文件 darknet
最后,我们来测试下
# 图片检测
./darknet detect cfg/yolov4.cfg yolov4.weights data/dog.jpg
# 图片检测
./darknet detect cfg/yolov4.cfg yolov4.weights data/horses.jpg
对比下 YOLOv3
的检出结果,直观的就能发现,YOLOv4
能够检测出 dog.jpg
右上角的 pottedplant
,而 YOLOv3
不行;在 horses.jpg
中,YOLOv4
可以检测出所有的马匹,而 YOLOv3
只能检出4匹