1.首先搭建安装cuda,opencv,vs2019
2,下载安装YOLOv4
https://github.com/AlexeyAB/darknet
2.1 2.1 复制OpenCV文件
将opencv两个dll文件: opencv_ffmpeg340_64.dll和opencv_world340.dll复制到
H:\vs2019\Project2\darknet\build\darknet\x64
2.2 VS2019项目配置
用VS2019打开D:\darknet\build\darknet下darknet.sln文件
有可能VS2019要走一下如下流程:
注意:1,选择release和X64,Windows SDK版本和平台工具表;2,修改opencv的包含目录和库目录;3,将cuda对应的lib路径添加到库目录,不然会报错
无法打开文件“cudnn.lib”
我这里的是:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11\lib
注意:由于我的版本显卡算力不支持CUDNN_HALF,所以要去掉CUDNN_HALF,不然会导致即使编译成功也无法识别出检测目标。
方法一:右键属性 -> C/C++ -> 预处理器定义 -> 删除cudnn_half;
方法二:使用记事本打开darknet.vcxproj -> 编辑 -> 查找 ->删除cudnn_half;
2.3 修改darknet.vcxproj
将cuda的版本修改成对应的版本号,有两处地方需要修改。
2.4 编译
2.5 下载yolov4的预训练权重
2.6 运行
在生成的可执行文件下面运行:
darknet.exe detector test cfg\coco.data cfg\yolov4.cfg yolov4.weights data\dog.jpg
SHELL执行
.\darknet.exe detector test cfg\coco.data cfg\yolov4.cfg yolov4.weights data\dog.jpg