对windows下安装caffe进行了总结,谢谢https://blog.csdn.net/nk_wavelet/article/details/78935511、https://www.cnblogs.com/bile/p/9055368.html、https://blog.csdn.net/u013277656/article/details/75040459、https://blog.csdn.net/qq_33742119/article/details/80075352这几位博主文章的帮助
本文安装的环境配置:win8.1、VS2013、CUDA8.0、CUDNN5.1
安装时按以下顺序来进行安装:
一、安装VS2013
这里建议读者安装2013版本,之前试过安装2015的然后会报错,报错的原因查了一下是版本的问题,然后又安装了2013版本。这里引用一个博主的链接https://blog.csdn.net/qq_33742119/article/details/80075352里面有他提供的VS的安装包以及安装过程的介绍。
二、安装CUDA
下载合适的CUDA版本,CUDA版本可以通过NVIDIA控制面板查看。具体步骤:点击控制面板,然后点击【系统信息】------点击【组件】就可以看到自己显卡支持CUDA的版本了。如下图
CUDA下载的网站:https://developer.nvidia.com/cuda-toolkit-archive
下载完成后,运行cuda_8.0.44_windows.exe(具体文件以自己下载的版本为准)出现一个Extraction path。选择你要安装的路径,然后点击OK,进行安装。安装完后进入该路径下,你会看到一个setup.exe的文件。点击运行,【系统检查】OK后、并且接受许可,然后选择自定义安装。点击【下一步】后出现四个控件:CUDA、NVIDIA GeForce Experience、Other components、Driver components。我在安装时是都选了,
然后一直点下一步直到安装完成。(CUDA安装路径要记得,后面有用到)
三、安装CUDNN
CUDNN的版本必须和CUDA版本对应起来,对应表可以百度搜索一下。下载地址:https://developer.nvidia.com/cudnn
下载前需要在官网上注册,下载完成的文件如下图
解压后把里面的bin、include、lib复制到CUDA的安装目录下对应的文件夹,我的是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0,然后就把上面的三个文件复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0文件夹下。最后在系统变量path添加
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin以及C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\X64和C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp
这样CUDA和CUDNN就算安装完了。
四、测试CUDA和CUDNN
第一步:进入CMD,输入nvcc -V,出现版本信息就好。
第二步:进入CMD,cd进入到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\demo_suite然后输入bandwidthTest.exe回车,查看结果,如果PASS,就再输入deviceQuery也出现PASS这说明安装成功。
五、CAFFE的安装
进入https://github.com/Microsoft/caffe下载caffe源码,下载后文件为解压完文件进入caffe-master/windows文件夹下,复制一份CommonSettings.props.example,并重命名为CommonSettings.props。使用文档编辑器打开CommonSettings.props并将里面的CUDA的版本改成你安装的CUDA的版本。并且进入C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations查看是否有CUDA8.0.props文件。如果没有则需要把C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\visual_studio_integration\MSBuildExtensions拷贝过去就好。
接下来就回到caffe-master/windows下,运行Caffe.sln文件。首先先检查项目是否都完整,如果有libcaffe和test_all这两个项目说明加载成功了。
然后右击libcaffe,设置为启动项目,然后点击【调试】,选择点击【libcaffe属性】
进入【libcaffe属性】后需要进行修改点击【常规】把配置改成release,平台是X64.另外点击【C/C++】下的【常规】把警告视为错误设置为否。点击确定。
界面出也要改成release
右击【libcaffe】选择【生成】,就可以慢慢等待了。如果中间出现了超时的错误就继续编译。
编译完后会出现错误 1 error MSB4062: 未能从程序集 E:\caffe-master-windows\caffe- master\NugetPackages\OpenCV.2.4.10\
build\native\\private\ coapp.NuGetNativeMSBuildTasks.dll 加载任务“NuGetPackageOverlay”。未能加载文件或程序集“file:///E:\caffe-master-windows\caffe- master\NugetPackages\OpenCV.2.4.10\build\native\private\coapp.
NuGetNativeMSBuildTasks.dll”或它的某一个依赖项。系统找不到指定的文件。请确认 <UsingTask>声明正确,该程序集及其所有依赖项都可用并且该任务包含实现 Microsoft.Build.Framework.ITask 的公共类。 E:\caffe-master-windows\caffe-
master\NugetPackages\OpenCV.2.4.10\build\native\OpenCV.targets 772 5 libcaffe 。
这时候就点【项目】---【管理NuGet程序包】----【更新】,把OPENCV2.4.10更新成2.4.11.然后选择解决方案的每一个项目,右键点击卸载项目,然后再右键,选择编辑vcxproj文件把文件里面OPENCV2.4.10替换成OPENCV2.4.11.,然后重新加载,每一项都有这样做。再重新编译即可参考博客:http://blog.csdn.net/u013277656/article/details/75040459
libcaffe编译成功后在Build\X64\Relase文件夹下会有许多文件出现,没有则说明没编译成功
编译成功libcaffe后就右键解决方案点击【属性】,然后把libcaffe改成caffe,再进行一次编译就好
结果如下
你在libcaffe编译成功的那个文件下会多出四个文件如下,则说明caffe编译成功了
六、感谢
再次谢谢https://blog.csdn.net/nk_wavelet/article/details/78935511、https://www.cnblogs.com/bile/p/9055368.html、https://blog.csdn.net/u013277656/article/details/75040459、https://blog.csdn.net/qq_33742119/article/details/80075352这几位博主文章的帮助