windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)

windows下caffe(GPU)(c++版) + VS2013 配置介绍,超级详细

前言

学习深度学习匹配,我是在windows 10下搭建了caffe的,中间的过成以及遇到的坑在这里记录下,并给大家一个参考,希望尝试过的人可以把我没遇到的坑,拿出来交流学习下

准备阶段

操作系统:windows 10

window 7下也可以,我在windows 10(7)下都配置过了,其中要注意一点,你得注意看下你的显卡是什么版本的,并且caffe是可以开启CPU版本的。

编译软件:VS2013

关于为什么用vs2013,网上说(包括参考一些大佬的博客),vs2013最好。
PS:据说选择安装内容的时候要选择最基础的三个,其他的选上可能会影响后面的安装(主要是针对windows10下的)
windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第1张图片

显卡:NVIDIA

由于我用的英伟达的显卡,所以GPU也是用N卡

#CUDA:
首先第一步要确认你电脑是什么显卡的,查看方案(之一):

//右键我的电脑 - 设备管理器 - 显示适配器

就能查看显卡是什么了。当然n卡在右下角或者控制面板上也能查,这里就不详细说了,确认显卡后就可以去官网下载对应的显卡版本。
第一步先到英伟达官网跟更新下驱动(版本太低的话,以后会有影响)
可以自己搜索cuda,然后可以下载对应的版本:
官网地址:
https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal
windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第2张图片
PS:关于选择network和local区别:前一个是网上下载,后一个是完整报,至于版本我选的是10(网上有些说要cuda5的我说的10也没问题)
在这里插入图片描述
下载完了安装就行了。
#CUDNN:
然后安装好了之后就是下载cudnn了,首先要看是什么版本的cuda(这里有可能你跳过了cuda的安装就要查看cuda的版本了)

//NIVDIA控制面板 - 帮助 - 系统信息 - 组件
//或者cmd 命令 nvcc -V

cudnn官网网址:
https://developer.nvidia.com/cudnn
注意的是需要注册英伟达账号,注册完就可以下载
在这里插入图片描述
下载好了之后解压有3个文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
将相应的bin、include、lib分别放于你电脑对应的cuda下面的相应目录中。(GPU,cuda下都要放)

CAFFE + WINDOWS

微软有自己版本的caffe直接下载就可以了
https://github.com/Microsoft/caffe
注意要下:Microsoft版本的。

在这里插入图片描述

开始安装

1、解压caffe文件夹,然后用vs2013打开

caffe-master\windows\caffe.sln

程序,首页把改成release X64情况下编译,然后打开程序资源管理器,右键编辑libcaffe然后选择重新生成

windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第3张图片
这个时候就会生成下载一大堆的NugetPackages包(包会在caffe-master所在文件夹下),这个过程极其的长,并且中间可能会中断(这个是最方便的方案但是太难成功了,不建议建议是上网自行搜索下载离线包,或者用我给的)。
除了这个办法还可以自己去下载对应的nuget离线包,网上有对应的下载安装的教程可以自行查找。
或者到对应地址下下载资源:(由于太大,所以分两个链接)
https://download.csdn.net/download/mqyw29995/11828256
https://download.csdn.net/download/mqyw29995/11828257
(最对能用,记得两个都得下然后放一起)
PS:在这个步骤下,最好是用完整的离线包(vs下载的,或者我提供的),不然会有很多问题。(我提供的下载好后)下载好了之后把其设置为离线安装nuget包,网上有很多教程。不详细叙述
更新好了之后同样在widows文件夹下有文件CommonSettings.props.example改名为CommonSettings.props
在这里插入图片描述
然后在vs2013程序资源管理器打开

windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第4张图片
然后这里修改你需要修改为你的cuda版本(注意我们没有python)

windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第5张图片
修改好之后保存,然后右键libcaffe点击属性
windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第6张图片
注意是releaseX64下的c/c++下的警告等级要关掉,不然会有一大堆错误。
然后就可以编译,这个编译的时间也挺长的大概10多分钟吧,如果编译过了,就没问题,如果编译没过就去看对应的问题,然后网上查找对应的编号,有解决方案。
1、C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\xxxxxx.props: error MSB3073:
遇到这类问题可以吧cuda安装程序解压(注意是直接解压exe文件)然后在对应文件下找到对应文件
例子:cuda_10.1.243_426.00_win10\CUDAVisualStudioIntegration\extras\visual_studio_integration\MSBuildExtensions
2、error MSB3721: 命令
在这里插入图片描述
这个错误是由于cuda版本太高问题引起的,双击第一条错误到对应的cudnn.hpp里修改添加相应参数就可以了

windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试)_第7张图片

template <typename Dtype>
inline void createConvolutionDesc(cudnnConvolutionDescriptor_t* conv) {
 CUDNN_CHECK(cudnnCreateConvolutionDescriptor(conv));
}

template <typename Dtype>
inline void setConvolutionDesc(cudnnConvolutionDescriptor_t* conv,
 cudnnTensorDescriptor_t bottom, cudnnFilterDescriptor_t filter,
 int pad_h, int pad_w, int stride_h, int stride_w) {
 CUDNN_CHECK(cudnnSetConvolution2dDescriptor(*conv,
  pad_h, pad_w, stride_h, stride_w, 1, 1, CUDNN_CROSS_CORRELATION,
  dataType<Dtype>::type));
}

3、error MSB4062:这个问题有很多情况,总结下i:下载的是opencv2.14.11,这个右键caffelib - 卸载项目 - 右键caffelib编辑vcxproj - 把里面的opencv2.14.10全换成opencv2.14.11,然后右键重新加载,编译即可。ii:修改NugetPackages\OpenCV.2.4.11\build\native文件夹里面opencv的配置文件OpenCV.props,用编辑器打开以后搜索private把前面的/去掉,然后关闭vs程序再打开编译即可。III:杀毒软件安全卫士全部退出,然后在编译(我遇到的就是这个问题!)。iiii:还有说是cudnn版本不符合问题,重新下载对应版本,然后放入相应位置,再重新编译。

然后在次编译,等待应该就编译过了,编译成功后对应的caffe-master下会生成一个build文件夹,然后你可以看到caffe的一些生成文件,然后按照编译libcaffe的步骤编译caffe库(注意这里编译的话就不用安装nuget离线包和修改cudnn.hpp,因为这两个实际上你已经完成了,但是C/C++警告等级要调整),正常直接编译就能过。
编译完了之后就可以测试自己的caffe是否是好的。
2、测试:
测试的话可以使用caffe官方教程lenet来测试,网上例子很多,并且比较简单就不在说明了。有需求的可以参考
https://blog.csdn.net/mqyw29995/article/details/102470756

总结

如果上述你都完成了,并且lenet教程也成功运行了,恭喜你caffe你已经配置好了,可以开始深度学习的旅程了。如果你看过这篇,遇到了没有出现的问题,请留言供大家学习参考,谢谢!

你可能感兴趣的:(windows下caffe(GPU)(c++版)+ VS2013 配置介绍,超级详细,亲身试验过(带测试))