Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)

       在安装配置YOLO时候,真是坑一大堆,对我这样的小白来说,真的是不友好。现在记录下安装过程。
由于过去快一个月了,所以只能记录大概步骤。

此文章是参考各大教程集合而成,仅作记录。

参考文章:

https://blog.csdn.net/KID_yuan/article/details/88380269

https://blog.csdn.net/clover_my/article/details/89885187

https://zhuanlan.zhihu.com/p/35828626

https://zhuanlan.zhihu.com/p/37629297

https://blog.csdn.net/dz4543/article/details/85255267

步骤

  • 下载&安装
    • 1.CUDA_10.2.89
    • 2.安装对应cuDNN v7.6.5
    • 3.opencv 3.4
    • 4.darknet
  • 生成darknet.exe
  • 运行yolo

下载&安装

下载CUDA、OpenCV、VS2019、cudnn
除了opnecv3.4之外,其他的都下载的最新版

下载官网上作者训练好的权重
https://pjreddie.com/media/files/yolov3.weights

ps:下面文件操作均可根据自己情况修改路径

1.CUDA_10.2.89

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第1张图片默认安装路径,直接装在了C盘NVIDIA 下
然后配置环境变量,如图
在这里插入图片描述
分别为:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2

可以测试是否配置成功(cmd运行 nvcc -V),具体结果如下
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第2张图片

2.安装对应cuDNN v7.6.5

在官网找到对应的cuDNN下载就行
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第3张图片

解压,就是cuda文件夹,然后将其下文件夹里的文件分别移动到相应文件夹
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第4张图片
将bin\cudnn64_7.dll 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin

将include\cudnn.h 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include

将lib\x64\cudnn.lib 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第5张图片

3.opencv 3.4

从官网下载,然后安装。配置环境变量

在这里插入图片描述

4.darknet

从官网下载压缩包,解压,然后先移动文件。

将下面两个文件opencv_ffmpeg340_64.dll和opencv_world340.dll移动到darknet\darknet-master\build\darknet\x64
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第6张图片
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第7张图片

生成darknet.exe

1.在darknet-master\build\darknet下,打开darknet.vcxproj ,将CUDA 后的版本号和你安装的一致。利用搜索可以查找,然后修改即可,一共两处。
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第8张图片
2.用你的VS (visual studio )打开darknet.sln,修改属性
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第9张图片
打开之后,提示:(图片没法再弄了,搬运自https://blog.csdn.net/dz4543/article/details/85255267

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第10张图片
此处选择无升级!(这里被坑过)

  这里打开啥也没有,先修改上面这两个。Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第11张图片
然后在右侧darknet上右键点击属性。
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第12张图片
常规里将 SDK 版本和平台工具集配置成自己安装的版本
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第13张图片
点VC++目录,右侧修改包含目录和库目录
都在窗口“计算的值” 上面添加路径
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第14张图片
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第15张图片
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第16张图片
然后点击输入,右侧修改附加依赖项,在最后添加opencv_world340.lib
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第17张图片
然后移动文件
将 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\visual_studio_integration\MSBuildExtensions 所有文件 复制到 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations 中
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第18张图片
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第19张图片

不然可能会报错,如下图(搬运自https://blog.csdn.net/dz4543/article/details/85255267)

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第20张图片
这些都配置成功后,右键生成或者重新生成就行了。
成功图如下
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第21张图片
而此时,相应目录darknet-master\build\darknet\x64 下也会出现darknet.exe
Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第22张图片

ps:如果生成不成功,可参考其它文章的配置。这里列举两种可能解决方案。

①opencv 装过超过3.4的版本,需要先卸载。
具体办法,参考文章
https://blog.csdn.net/dz4543/article/details/85255267

②修改darknet.vcxproj
  如果后面报错说请选择对应的VisualStudio2015版本,需要将darknet.vcxproj,并将红框中的内容都替换为v142( vs2017 换成v141)

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第23张图片

在这里插入图片描述

运行yolo

将你之前下载的 yolov3.weights 放到 /darknet-master\build\darknet\x64 中随便一个文件夹中即可,只要你记得住(路径与之后的命令运行有关)。

我直接放到了x64中 ,如图。

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第24张图片

此时,便可以运行yolo了。
1.第一种方法
点击此文件夹中(/darknet-master\build\darknet\x64)的cmd文件,直接运行,便可以得到如图结果

Windows安装+配置Yolov3(vs2019+NVIDIA+CUDA+cuDNN+OPENCV)_第25张图片

懒人版测试:可以将你想要测试的图片直接修改成 dog.jpg 放到此文件夹中 替换原来的 dog.jpg

  1. 第二种方法

打开cmd ,切换 \darknet\build\darknet\x64 文件夹下 ,运行命令。

检测图片:

darknet.exe detector test data\coco.data yolov3.cfg yolov3.weights dog.jpg

解释:
  利用darknet.exe执行检测效果,加载权重(yolov3.weights)之后,对本文件夹下的dog.jpg进行检测
  
其中,命令文件名前可加相对路径(或者绝对路径)
如:

darknet.exe detector test data\coco.data yolov3.cfg ./weights/yolov3.weights ./data/dog.jpg

检测摄像头:

执行命令

darknet.exe detector demo data\coco.data yolov3.cfg yolov3.weights

检测视频:

执行命令

darknet.exe detector demo data\coco.data yolov3.cfg yolov3.weights gsq.avi

以上便是配置yolo 的全部过程了。

你可能感兴趣的:(yolo)