在Win10安装和编译YOLO v4

一、配置环境

系统:Win10 64位
Python: 3.7
Visual Studio: 2017版
Cuda: 10.0
cuDNN:7.6.5.32
CMake:3.19.2
Opencv: 4.5.0
GPU: GTX 1050

1、安装Visual Studio

下载地址

2、安装Cuda

下载地址
参考资料:保姆级的CUDA的下载安装使用,详细的环境变量配置,不仅仅让你能够安装,还会教你弄懂为什么要这样安装

3、安装cuDNN

下载地址
注意版本要和Cuda版本对应

4、安装CMake

下载地址

5、安装Opencv

下载地址
添加环境变量OpenCV_DIR为D:\opencv\build\x64\vc15\lib
如果装在C盘,则换成对应的地址
在这里插入图片描述

二、安装YOLOV4

1、下载darknet

下载地址
下载后复制到工程文件中

添加环境变量darknet\build\darknet\x64
方框中OpenCV的这四个路径最好也添加上去
在这里插入图片描述

2、设置Makefile

打开darken根目录下的Makefile文件,如下表所示设置里边参数:

内容修改不同情况
GPU=1用CUDA构建,用GPU加速(CUDA应该在/usr/local/CUDA中)
CUDNN=1不同情况
CUDNN_HALF=1用于张量核(在泰坦V/Tesla V100/DGX-2及更高版本上)加速探测3x,训练2x
OPENCV=1使用OPENCV 4.x/3.x/2.4.x构建-允许检测来自网络摄像机或网络摄像机的视频文件和视频流
DEBUG=1使用OPENCV 4.x/3.x/2.4.x构建-允许检测来自网络摄像机或网络摄像机的视频文件和视频流
OPENMP=1使用OPENMP支持构建,使用多核CPU加速Yolo
  1. 如果已经安装opencv的情况下,需要设置OPENCV=1;
  2. 如果有Nvidia显卡并且已经安装相应版本CUDA与CUDNN时,设置GPU=1,CUDNN=1.
  3. 如果显卡为 Titan V / Tesla V100 / DGX-2 或者更新的产品时,设置CUDNN_HALF=1;
  4. 多核CPU应用时,设置OPENMP=1
3、编译

打开CMake,source code和binaries选择darknet文件夹在这里插入图片描述
点击configure,选择VS2017和x64,点击Finish
在这里插入图片描述
如果一切正常,继续点击generate,open project,然后自动打开VS

选择Release x64版本,右键ALL_BUILD,点击生成,没有错误的话继续右键INSTALL,点击生成,没有错误的话就编译成功了。

三、测试

下载训练好的模型权重文件:yolov4.weights和yolov4-tiny.weights
yolov4.weights:https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v3_optimal/yolov4.weights
yolov4-tiny.weights:https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v4_pre/yolov4-tiny.weights
放在darknet目录下的backup文件夹(需要新建backup文件夹)
在这里插入图片描述

在darknet目录下打开cmd(地址栏输入cmd即可)在这里插入图片描述
输入如下命令即可测试
测试图片:

darknet.exe detector test cfg/coco.data cfg/yolov4.cfg backup/yolov4.weights xxx.jpg

测试视频:

darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg backup/yolov4.weights xxx.mp4

四、参考资料

  1. https://blog.csdn.net/weixin_43723614/article/details/105772081
  2. https://blog.csdn.net/qq_35451572/article/details/105921647
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值