软硬件环境
- 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匹