一、版本关系确定
首先需要根据YOLOv4给出的软件版本的大致范围:
1、驱动
通常情况下Windows下的NVIDIA驱动是默认已经安装好的,如果你尚未安装,通过软件“GeForce Experience”进行安装。
2、CUDA
快捷键"WIN+R"调出运行窗口,输入cmd后回车,在弹出的窗口中输入nvidia-smi,查看驱动的版本:
此处驱动版本为452.56,其后并有附带的CUDA版本11.0。同时也可以在>此处<的对照表进行CUDA版本的确定。
然后在>CUDA库<中找到11.0版本的驱动,然后按下述规则进行下载链接的获取:
3、cuDNN
然后根据CUDA的版本确定cuDNN的版本,如下图所示,每个cuDNN都有其所对应的CUDA版本。>cuDNN库<
11.0的CUDA对应着8.0.5的cuDNN,选择对应链接进入详情描述,然后选择windows版本的即可。
4、OpenCV、CMake和VS
这两个版本依照YOLOv4给出的大致范围,随便选取就可以。
二、下载
将获取到的链接使用迅雷进行下载,可获得满宽带的下载速度!
三、安装
1、CUDA
CUDA在安装之后需要重启一下,环境才会生效。生效后可以使用命令:nvcc -V进行查看,结果如下图:
2、cuDNN
cuDNN实际上就是一个库,需要将其复制到CUDA的安装目录下:
3、OpenCV
Windows版本的OpenCV安装,实际就是内容的提取。>OpenCV库<
安装之后,记得手动添加环境变量。
4、其他
其他无特别需要注意的。
四、编译
按下图设置yolov4源码的位置,和build的位置:
然后点击Configure,之后按照下图进行设置,其中ENABLE_CUDNN_HALF按需设置:
然后在此点击Configure进行配置,待其配置完成之后,点击Generate进行生成。
待其Generate done之后,进入设置build目录,选中*.sln,用VS进行打开,之后按下图选项进行编译。
五、使用
编译完成之后将源码目录下的data文件夹、cfg文件夹和3rdparty\pthreads\bin\pthreadVC2.dll拷贝到Release目录下。同时将下载到的权重文件也放到Release文件夹下:
视频检测命令:
darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights 001.avi -i 0 -thresh 0.25
图片检测命令:
darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights data/dog.jpg -thresh 0.25
调起摄像头:
darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights -c 0
参考
1.https://github.com/AlexeyAB/darknet
2.https://blog.csdn.net/weixin_40841247/article/details/105742022