综合 来源:Angle_Cal 2016-12-19 17:32 624℃ 0评论
BLVC版本的Caffe-windows已经支持Visual Studio 2015,下面的配置过程是综合了其他人的经验而且验证过的,可以确保有效.
- 下载Caffe-Windows(BLVC)
下载地址:GitHub
下载好解压缩即可. - 安装VS2015,CUDA,CUDNN,Anaconda,CMake
VS2015
安装请自行完成,需要注意的是:
①如果你以前安装有早起的VS,那么安装VS2015可能会导致原来的版本出现问题,所以如果可能的话,尽量只用最新版,如果必须新老版本共存,比较稳妥的解决方法是先卸载老版本,然后安装VS2015,然后再安装VS2013等早期版本;
②VS2015再安装的时候,默认是不选中C++语言的,请使用自定义安装模式.
CUDA
请搜索CUDA8.0,到NVIDIA的官网上下载对应操作系统的版本,安装的时候,请关闭杀毒软件或者用管理员账户授权,安装过程中最好一直看着它,会进行很多敏感操作,如果杀毒软件进行了拦截,安装将会失败.
CUDNN
请搜索CUDNN,同样在NVIDIA的官网上下载,这个东西下载之后是一个压缩包,打开之后是一个叫做CUDA的文件夹.关于他的处理,后文将会提到,现在先下载备用.
Anaconda
这是一个python科学计算库,里面集成了很多模块和程序,根据你想使用的版本下载对应python2/python3的Anaconda,你并不需要先安装python,假如你以前安装过python,你完全可以卸载掉它,如果你不想卸载,请保证在系统变量中,Anaconda的变量排在python的前面(这很重要).
CMake
3.7.0以上版本的CMake都可以,需要注意的是,为了免除不必要的麻烦,我们不使用CMake的界面,所以请把CMake.exe所在的目录加入到系统变量path中. - 下载依赖
在(ROOTDIR):\caffe-windows\scripts下,有一个python脚本:download_prebuilt_dependencies.py,运行这个脚本,将会下载一个名字叫:”/libraries_v140_x64_py27_1.0.1.tar.bz2”的压缩包,这个压缩包会出现在你运行脚本的地方,并且脚本会把它解压,(ROOTDIR):\caffe-windows下会出现一个叫做libraries的文件夹,我们在(ROOTDIR):\caffe-windows下新建一个名叫”build”的文件夹,把这个libraries文件夹放进去.
如果下载缓慢,可以使用这个链接注意文件名中实际上包含了很多信息,请核对一下,这和你的实际情况是不是一样的,如果不一样,请用脚本下载. - 确认环境变量
注意:Anaconda和CUDA的环境变量是安装程序自己加进去的,最后面的那个关于build的变量需要你把第3步的目录加进去,CMake的变量也要加进去. - 修改批处理脚本
(ROOTDIR):\caffe-windows\scripts下有一个build_win.cmd脚本,编辑这个脚本:
第一步:
注释掉115行-137行的所有代码,在行首添加”::”就可以注释掉这一行.
第二步:
处理CUDNN;
这里有两种方法,方法一:将CUDNN压缩包下,cuda文件夹中的三个子文件夹中的文件,依次复制到CUDA的对应目录下,CUDA的安装目录为:”C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0”,使用这种方法,当程序需要使用CUDNN的时候,我们不需要做任何处理就能找到CUDNN的库,因为它存在于CUDA的目录下,而CUDA的变量已经在安装的时候自动的配置好了.
方法二:在上述脚本中的143行-155行那一块(如下),添加CUDNN的目录:
:: Configure using cmake and using the caffe-builder dependencies
:: Add -DCUDNN_ROOT=C:/Projects/caffe/cudnn-8.0-windows10-x64-v5.1/cuda ^
:: below to use cuDNN
cmake -G"!CMAKE_GENERATOR!" ^
-DBLAS=Open ^ -DCMAKE_BUILD_TYPE:STRING=%CMAKE_CONFIG% ^ -DBUILD_SHARED_LIBS:BOOL=%CMAKE_BUILD_SHARED_LIBS% ^ -DBUILD_python:BOOL=%BUILD_PYTHON% ^ -DBUILD_python_layer:BOOL=%BUILD_PYTHON_LAYER% ^ -DBUILD_matlab:BOOL=%BUILD_MATLAB% ^ -DCPU_ONLY:BOOL=%CPU_ONLY% ^ -DCUDNN_ROOT=C:\Projects\cuda ^ ::上面一行就是CUDNN目录
-C %cd%\libraries\caffe-builder-config.cmake ^ %~dp0\..
- 1
- 2
- 3
- 4
- 5
- 6
使用这种方法,如果在后面的步骤上出现问题,请删除这句代码,然后使用方法一.
6. 调用CMake生成解决方案
在(ROOTDIR):\caffe-windows\build中打开命令行窗口(按下shift右击文件管理器空白,选择”在此处打开命令行”),运行build_win.cmd,如果上面的操作都没有问题,那么这一步将会调用CMake生成解决方案,请看好最开始输出的那些信息,如果使用的编译器是VC140,将会生成VS2015的解决方案.
7. 使用VS打开解决方案
等待上述脚本运行完毕,在build中会出现一个caffe.sln,使用VS2015可以直接打开这个解决方案.
8. 其他注意事项
①不要参考VS2013的相关经验来在VS2015上配置Caffe,不要使用Microsoft的版本,一定要使用BLVC的版本.
②为什么要使用VS2015呢?使用这种方法配置Caffe,不需要管理Nuget包,而且就算要使用Nuget,Vs2015的包管理器也要比VS2013的好用很多,假如你需要频繁的自己修改Caffe源码或者想读源码,那么我推荐你使用VS2015,而且有一件很重要的事:既然新的能用那么为什么要用旧的?
③python2和python3都能用,假如你在运行python脚本的时候提示你有一些包找不到,那么请安装Anaconda,并在环境变量中保证Anaconda的排名比Python高,或者直接卸载python.
④如果你一定要使用CMake的界面,遇到填写不上的属性,请查看build_win.cmd脚本中的文件.
⑤如果你想修改一些东西,你如是否使用GPU,是否支持MATLAB等等,现在有两种方法:一种是直接定义C++预处理器,另一种是修改调用CMake的那个脚本,直接生成一个你想要的特殊的版本,修改配置文件的方法可能并不会起作用,因为这些项目根本就没有加载那个CommonSettings.props文件.