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 |
- 如果已经安装opencv的情况下,需要设置OPENCV=1;
- 如果有Nvidia显卡并且已经安装相应版本CUDA与CUDNN时,设置GPU=1,CUDNN=1.
- 如果显卡为 Titan V / Tesla V100 / DGX-2 或者更新的产品时,设置CUDNN_HALF=1;
- 多核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
四、参考资料
- https://blog.youkuaiyun.com/weixin_43723614/article/details/105772081
- https://blog.youkuaiyun.com/qq_35451572/article/details/105921647