YOLOv3配置(win10+opencv3.40+cuda9.1+cudnn7.1+vs2015)
最近心血来潮想学一下YOLOv3,于是就去网上看了YOLOv3在win10下的配置教程。在配置过程中塌坑无数,花了很多时间和精力,所以我想就此写一篇博客来介绍在在win10+vs2015的环境下如何配置YOLOv3。
1.安装VS(YOLOv3支持vs2012、2013、2015,其他版本需要下载工具集)
尽量安装vs2015
2.安装CUDA
2.1确定自己电脑对应的CUDA版本号
2.1.1打开控制面板
2.1.2进入NVIDIA控制面板
2.1.3选择系统信息
2.1.4点击组件,即可看到自己电脑适应的CUDA的版本号
2.2进入官网https://developer.nvidia.com/cuda-downloads ,按照自己的系统选择合适的版本。
3.安装CUDNN
CUDNN的版本需要与CUDA版本对应,下载的时候根据选定的CUDA版本进行选择即可。
下载链接: https://developer.nvidia.com/cudnn
下载之后把对应文件夹的文件直接放入CUDA的对应文件夹就可以了
即
将D:\安装包\cudnn-9.1-windows10-x64-v7.1\cuda\bin\cudnn64_7.dll 复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\bin
将 D:\安装包\cudnn-9.1-windows10-x64-v7.1\cudacuda\ include\cudnn.h 复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\include
将D:\安装包\cudnn-9.1-windows10-x64-v7.1\cudacuda\lib\x64\cudnn.lib复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\lib\x64
复制完之后要去检查一下cuda和cudnn的环境变量 ,务必要保证这些环境变量都有要不然最后在测试时会报错
4. 安装 OpenCV (OpenCV 2.x.x 或者 OpenCV <= 3.4.0)
(切记opencv的版本不能超过3.40,我当时就是因为粗心没注意到这点才折腾了很久)
下载地址:https://sourceforge.net/projects/opencvlibrary/files/opencvwin/3.4.0/opencv-3.4.0-vc14_vc15.exe/download
如果访问不了,可以使用我的链接
链接: https://pan.baidu.com/s/1yACjz1AiDWtkUzxZHqCH0w 提取码: scxv
接下来将opencv配置到环境变量
5. 下载darknet
下载地址:https://github.com/AlexeyAB/darknet
(如果会使用git,则直接git clone https://github.com/AlexeyAB/darknet)
5.1修改darknet.vcxproj文件
进入darknet\build\darknet目录,用记事本打开darknet.vcxproj,将所有CUDA 10.0修改为自己对应的CUDA版本,本篇使用CUDA 9.1,故改为9.1。(共有两处需要修改)
5.2打开darknet.sln
5.2.1将项目修改为Release x64
5.2.2配置包含目录 + 库目录 + 链接器
包含目录:在darknet项目上点击鼠标右键->属性,弹出如下界面:然后VC++目录-->包含目录-->编辑
添加的目录:...\opencv\build\include(...代表opencv的安装路径,下文同理)
...\opencv\build\include\opencv
...\opencv\build\include\opencv2
库目录:方法与包含目录类似,添加的目录为:...\opencv\build\x64\vc14\lib
链接器:添加目录...\opencv\build\x64\vc14\lib下库的名字:opencv_world340.lib
5.2.3右键darknet,选择属性,进入CUDA C/C++中的Code Generation,删掉compute_75,sm_75(此步极为关键,要不然必出错)
5.3右键darknet,选择生成
编译成功,会在darknet\build\darknet\x64下得到darknet.exe
当你看到darknet.exe时,那么就恭喜你配置成功过了!
6.测试
6.1下载yolov3.weights
官网:https://pjreddie.com/media/files/yolov3.weights
下载速度有点慢
也可以用我的链接 链接: https://pan.baidu.com/s/1FSkXMGqCeqDFpeDxJzb3sA 提取码: 1ajt
下载完成后把它放到darknet\build\darknet\x64下
6.2测试
在darknet\build\darknet\x6下按住shift键,点击鼠标右键选择“在此处打开Powershell 窗口(s)”
在命令行输入 .\darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
如果看到以下结果,说明你成功的配好了YOLOv3
YOLOv3配置(win10+opencv3.40+cuda9.1+cudnn7.1+vs2015)的更多相关文章
- TensorFlow-GPU安装配置(win10+tensorflow1.6+CUDA9.0+cudnn7.0+python3.6+Visual Studio2013)
安装步骤: TensorFlow官网 tensorflow一般只能装在python3上,CUDA9.0搭配cudnn7.0,CUDA8.0搭配cudnn6.0 查看对应要安装的环境版本(因为会不断更新 ...
- ubuntu16.04服务器上无root权限,配置个人tensorflow环境--cuda9.0+cuDNN7+tensorflow-gpu-1.8
本人在服务器上已经用Anconda创建好python3.5的环境,这个网上有一大堆教程.接下来是重点. 1. cuda的安装 https://developer.nvidia.com/cuda-dow ...
- 机器学习笔记之二-win10+cuda9.1+CUDNN7+Anaconda3+VS2017+tensorflow1.5+opencv3.4
[Tensorflow]环境搭建vs2017+win10+py3.6+cuda9.1+cudnn7+tf1.5 一.安装cuda 9.1+VS2017 一路下一步即可,环境变量cuda会自动配好 ...
- win10+Anaconda3+CUDA9.0+CUDNN7.1+TensorFlow-gpu1.9+Pycharm
想在win10上运行下YOLO的例子,要先配置环境,折腾了两天,终于好了,整理下自己觉得有用且正确的流程. win10+Anaconda3+CUDA9.0+CUDNN7.1+TensorFlow1.9 ...
- OpenCV3.1.0+VS2013配置+Win10(64位)(转载)
OpenCV3.1.0+VS2013配置+Win10(64位) [环境]VS2013和MATLAB相互调用混合编程 Matlab 2016a和VS2013混合Dll编程步骤 更换了硬盘之后,重新配置了 ...
- ubuntu16.04 安装cuda9.0+cudnn7.0.5+tensorflow+nvidia-docker配置GPU服务
[摘要] docker很好用,但是在GPU服务器上使用docker却比较复杂,需要一些技巧,下面将介绍一下在ubuntu16.04环境下的GPU-docker环境搭建过程. 第一步: 删除之前的nvi ...
- ubuntu 16.04 +anaconda3.6 +Nvidia DRIVER 390.77 +CUDA9.0 +cudnn7.0.4+tensorflow1.5.0+neural-style
这是我第一个人工智能实验.虽然原理不是很懂,但是觉得深度学习真的很有趣.教程如下. Table of Contents 配置 时间轴 前期准备工作 anaconda3 安装 bug 1:conda:未 ...
- Ubuntu16.04安装cuda9.0+cudnn7.0
Ubuntu16.04安装cuda9.0+cudnn7.0 这篇记录拖了好久,估计是去年6月份就已经安装过几遍,然后一方面因为俺比较懒,一方面后面没有经常在自己电脑上跑算法,比较少装cuda和cudn ...
- ubuntun16.04+cuda9.0+cudnn7+anaconda3+pytorch+anaconda3下py2安装pytorch
一.电脑配置 说明: 电脑配置: LEGION笔记本CPU Inter Core i7 8代GPU NVIDIA GeForce GTX1060Windows10 所需的环境: Anaconda3(6 ...
随机推荐
- 洛谷P2787 语文1(chin1)- 理理思维(珂朵莉树)
传送门 一看到区间推倒……推平操作就想到珂朵莉树 区间推平直接assign,查询暴力,排序的话开一个桶统计,然后一个字母一个字母加就好了 开桶统计的时候忘了保存原来的左指针然后挂了233 //mina ...
- python系列1_travel
Python__copy copy模块用于对象的拷贝操作.该模块只提供了两个主要的方法:copy.copy与copy.deepcopy,分别表示浅复制与深复制. 浅拷贝(copy):拷贝父对象,不会拷 ...
- CAD中的相对坐标和绝对坐标
绝对坐标就是你作图的整个界限的原点,也就是CAD系统默认的原点坐标. 相对坐标就是相对于当前的点的坐标. 这两种坐标都有,可以根据习惯和需要自己看使用哪种. 一.绝对坐标 ①笛卡尔坐标(X,Y,Z) ...
- hdu 1025 Constructing Roads In JGShining's Kingdom
本题明白题意以后,就可以看出是让求最长上升子序列,但是不知道最长上升子序列的算法,用了很多YY的方法去做,最后还是超时, 因为普通算法时间复杂度为O(n*2),去搜了题解,学习了一下,感觉不错,拿出来 ...
- 为HttpClient和HttpURLConnection添加中国移动代理
转自: http://www.2cto.com/kf/201111/112100.html 在android中,一般需要联网的时候前,都要做一次网络的判断,判断当前的网络状态!然后开始请求网络 当我们 ...
- git免密码
法1: git config --global credential.helper store 这样就自动储存密码 法2: 使用ssh访问(https:// 改成 ssh://)
- 可变类型的安全性——更锋利的C#代码小记(2)
ReadOnlyCollection类型是.NET系统类库提供的一个只读集合类型,它与原来的List<string>不存在任何类型转换关系,因此可以从根本上阻止外部对其的修改操作using ...
- 工作记录 主要了解EF 列注释DataAnnotations
遇到一个问题,是子类型必须完全转换为父类型,普通的显示转化.隐式转化.Cast.ConvertAll等方法无效,用Newtonsoft.Json转化才解决 var json = JsonConvert ...
- C#过时方法标记
1.当遇到过时或废弃的方式 函数怎么办 [Obsolete]特性解决你的困惑 1.1:当方法已经完成相关兼容 可以保留时
- Unity中,保存在OnInspectorGUI中改变的值
using UnityEngine; using System.Collections; using UnityEditor; [CustomEditor( typeof( MessageLog ) ...