win10 下darknet+yolo(gpu版本)安装配置

             Win 10 配置yolo3 详细教程,亲试可行

废话懒得说,直接上干货

以下安装路径不要出现中文

以下安装路径不要出现中文

以下安装路径不要出现中文

1.安装CUDA和cuDNN

   参考之前的文章,传送门

2.编译器Vs2015

  由于版本的关系,强烈推荐安装使用vs编译。

 安装过程中必须要注意的地方:必须勾选V14,V14,V14

win10 下darknet+yolo(gpu版本)安装配置_第1张图片

PS,小伙伴说了,俺是vs2017,难道要卸掉重装vs2015吗?其实不用的。咱就是走的这条路。找到Vs2017的安装程序,如果没了,去官网下一个(因为2017是在线安装,因此就大概1M大小),然后更新,添加上面的页面勾选的内容,一定要注意V14,成败在此一举

3.安装opencv 3.4.0(低了可以,极其不建议高了)

   opencv3.4.0 下载地址

  下载完解压即可。

  配置环境变量:

  path添加opencv目录下的build\bin目录和build\x64\v14\bin.

 按照自己的安装目录去配置就OK了

4.下载darknet

   AB大神源码地址,版本更新导致出了问题,下载历史版本在早的,可用

  darknet目录,like this:

 win10 下darknet+yolo(gpu版本)安装配置_第2张图片

5.热身完成,开始安装

 (1)  打开darknet文件夹下面的build的darknet,找到darknet.vcxproj,使用记事本打开,需要修改两处地方,即CUDA的版本号。搜索CUDA

 win10 下darknet+yolo(gpu版本)安装配置_第3张图片

这里CUDA的版本号修改为之前我们安装的版本(下载的是10.0版本,我是用的是9.0,因此修改为9.0)

 

记得是两处哦

检查:

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\BuildCustomizations路径下是否有下面打对勾的文件

win10 下darknet+yolo(gpu版本)安装配置_第4张图片

 

 如果有,恭喜你,前面配置的没有问题,距离成功又进一步。

 (2)配置Opencv到darknet

打开build文件夹下面的darknet文件夹,使用上面安装的vs2015(2017)打开darknet.sln

VS项目配置opencv参考文章  传送门

然后在vs中进行如下设置,生成方式为Release,X64版本

win10 下darknet+yolo(gpu版本)安装配置_第5张图片

点击生成,选择生成darknet

win10 下darknet+yolo(gpu版本)安装配置_第6张图片

如果输出一下信息,恭喜这一步又配置成功

win10 下darknet+yolo(gpu版本)安装配置_第7张图片

PS:有的电脑在这里会报错,错误信息如下:

 错误    MSB3721    The command ""C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin\nvcc.exe" -gencode=arch=compute_30,code=\"sm_30,compute_30\" -gencode=arch=compute_75,code=\"sm_75,compute_75\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64" -x cu  -I\include -IC:\opencv_3.0\opencv\build\include -I..\..\include -I..\..\3rdparty\stb\include -I..\..\3rdparty\pthreads\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include" -I\include -I\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\include"     --keep-dir x64\Release -maxrregcount=0  --machine 64 --compile -cudart static     -DOPENCV -DCUDNN_HALF -DCUDNN -D_TIMESPEC_DEFINED -D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_CRT_RAND_S -DGPU -DWIN32 -DNDEBUG -D_CONSOLE -D_LIB -D_MBCS -Xcompiler "/EHsc /W3 /nologo /O2 /Fdx64\Release\vc140.pdb /FS /Zi  /MD " -o x64\Release\activation_kernels.cu.obj "G:\daek\darknet-master\src\activation_kernels.cu"" exited with code 1.    darknet    C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\BuildCustomizations\CUDA9.0.targets    712  
 

如果出错信息,关键词和上面标红一样时,恭喜你,不用再去百度了,因为我也遇到了;

出错原因:看提示信息,讲的是大概意思是你的显卡比较low,算力暂时达不到项目设置的compute_75

解决办法:右键darknet项目,属性,CUDA C/C++,Device,Code Generation,去掉compute_75

win10 下darknet+yolo(gpu版本)安装配置_第8张图片

点击确定,重新运行,解决。

最后打开build下的darknet下的x64会有一个darknet.exe文件:

win10 下darknet+yolo(gpu版本)安装配置_第9张图片

6.Test It

  下载yolov3.weights并放到同darknet.exe的目录下

  weight文件下载

  cmd下,一路cd到包含darknet.exe的文件夹下面,

  命令:darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

  效果:

win10 下darknet+yolo(gpu版本)安装配置_第10张图片

以及经典的预测:

win10 下darknet+yolo(gpu版本)安装配置_第11张图片

7.python调用。

  在dartnet.exe目录下面有一个darknet.py文件,毫无疑问这将是我们的入手点

win10 下darknet+yolo(gpu版本)安装配置_第12张图片

 但是,如果直接使用会出错·。

 我们打开他的源码,原来是需要一个dll文件才能运行

win10 下darknet+yolo(gpu版本)安装配置_第13张图片

ok,既然知道勒,我们就去生成一个这样的dll文件。

在darknet的build\darknet文件中,恰好有一个.dll文件

win10 下darknet+yolo(gpu版本)安装配置_第14张图片

可以看到,我们要的这个dll文件和上面的darknet文件是类似的,因此我们生成darknet.exe怎么配置时,生成这个dll文件就应该怎么配置。参考第5小点。

 

生成之后就可以运行了,拿到源码,稍微修改就可以了,你懂得。

你可能感兴趣的:(cuda,opencv,tensorflow,深度学习,机器学习)