我在台式机和笔记本上分别配置了caffe环境,期间看了网上到目前为止的大部分教程,遇到了很多问题,特别是在windows上配置这个环境,问题更多,现在对整个安装过程和遇到的问题进行总结。
 
 查看本机配置:查看显卡类型是否支持NVIDIA GPU,选中计算机-->右键属性 -->设备管理器 -->显示适配器:NVIDIA GeForce GT950
 
驱动安装:从 http://www.nvidia.cn/Download/index.aspx?lang=cn 下载合适驱动

首先安装过程可以参考:https://github.com/Microsoft/caffe 很具体,只要读懂了它,出现一些错误再去找百度问问就没大问题了。下面是我的安装过程:

  1. 安装vs2013。① 安装地址:http://pan.baidu.com/s/1hrO6Kvi ②根据caffe-master的要求要安装2013版本的vs,比2012编译快;③vs要在cuda之前安装,以便于cuda对其进行配置。
  2. 安装cuda和下载cuDnnv4。①安装cuda7.5地址为:https://developer.nvidia.com/cuda-75-downloads-archive,并且搭配v4或v5版本的cuDnn,我用的是v4,地址为:https://developer.nvidia.com/rdp/cudnn-download (这个你就注册一下吧,不费事)②建议选择自定义,全部安装;③对于安装路径,默认安装在C盘下,将三个安装内容都安装在一个目录下也是可以的,eg:D:\cuda75。
  3. cuDnn:将下载的cuDnn解压到cuda文件夹,将文件夹内部的三个文件拷贝到cuda目录下。若是按默认路径安装的cuda则拷贝到:\NVIDIA GPU ComputingToolkit\CUDA\v7.5路径下。直接拷贝是最直观的方法,还可以采用另一种方式下面会提到,这样方便更改cuDnn版本。
  4. 下面编译一下,cuda目录下的所有sample;①为了看看是否正确安装了cuda,②经常会出现找不到d3dx9.h、d3dx10.h、d3dx11.h,即使我的win10系统DirectX版本已经是11.3了,也会出现这个问题,那么执行下一步操作5。
  5. 下载安装文件DXSDK_Jun10,地址:http://pan.baidu.com/s/1qYHfhgC①我安装DXSDK_Jun10 过程中遇到不能下载.Net framework3.5的问题,是因为我关闭了系统更新,打开更新就可以了。配图如下。②及时解决了①问题,最后同样是安装错误界面,这个错误没关系,同样会在你的安装目录下出现Microsoft
    DirectX SDK (June 2010)文件夹,即可。重新执行步骤4,编译所有sample。如果严格按照以上步骤,且版本都对,不会有其他问题。

win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置


         6. 到目前为止,cuda环境配置已经成功。
       7. 下载miniconda2-64bit,地址:https://conda.io/miniconda.html ;注意要for all user 并且选择添加到环境变量。安装成功后,下载包:①conda install --yes numpy scipy matplotlib
scikit-image pip      ②pip install protobuf
       8.下载caffe-master,地址:https://github.com/Microsoft/caffe,拷贝\caffe-master\windows目录下的CommonSettings.props.example,重命名为CommonSettings.props。
用vs打开修改如下内容:
       ①下面内容表示是否支持该功能,支持就写"true",看上面英文即可明白,我设置的是使用cuDnn,cuda7.5,支持python和matlab。(注意:电脑没有GPU可以设置CpuOnlyBuild为true,CpuOnlyBuild 和UseCuDNN不能同时为true);
                      win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
      ②此处设置cuDnn路径:如果你的cuDnn是按照步骤3拷贝的,则不用改了。如果你不想拷贝,则需要按照上图方式改,见<wei : such as>. 
                   win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
      ③:在下图设置python和matlab路径:
win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
这个很简单吧。路径在PythonDir和MatlabDir里修改。默认的是minicuda2和2014b

        9. 好了,步骤8完成,既可以编译caffe.sln工程了。要在release下编译,首先依次单独编译下面三个工程,编译一下libcaffe看有没有啥错误,然后编译pycaffe和matcaffe.  
         这个一定会遇到问题的,只要你是在windows下(找度娘,轻松解决,因为多数都会遇到类似问题)。编译成功。在目录\caffe- master\Build\x64\Release下出现matcaffe和pycaffe文件夹。下面开始激动人心的,配置python和matlab了。胜利在此一举,别着急。
        10.python环境:①将pycaffe里的caffe直接拷贝到\Miniconda2\Lib\site-packages目录下;or ②设置环境变量 PythonPath : <caffe_root>\Build\x64\Release\pycaffe
        11.matlab环境:①将\caffe-master\Build\x64\Release放到系统path下;& ②打开matlab添加路径:\caffe-master\Build\x64\Release\matcaffe即可;matlab可能添加路径完事,需要重启软件才好用。
        12.检查环境是否成功配置:①python: import caffe,不说找不到模块就好; ② matlab:输入 caffe.reset_all();出现下图内容就ok了。
 win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置                    win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置

      最后总结一下,步骤9,编译caffe.sln工程遇到常见问题:
          ①编译时会下载NugetPackages,这是最考验网速的时候了。这是好vs会无响应,放心等待就好。                 
win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
            ②出现error C2220: 警告被视为错误 - 没有生成“object”文件 (..\..\src\caffe\util\math_functions.cpp):这是编码方式的问题。 因为我们的系统大部分使用的是中文,而math_function.cpp文件是英文的。找到math_function.cpp文件vs打开,再保存即可

          ③无法打开输入文件“libcaffe.lib”:关键问题是在alt_sstream_impl.hpp 文件的编码上,用的是Linux的编码,改为windows编码即可,只要找到文件alt_sstream_impl.hpp文件用vs打开,再保持即可。这个文件在NugetPackages目录。

          ④出现error:找不到mxGPUArray,主要是由于matlab新版本中gpu文件夹已从\extern\include独立出来了,该文件在目录$(MatlabDir)\toolbox\distcomp\gpu\extern\include下,这个只要修改CommonSettings.props文件添加该目录即可,细心的你可能会发现 ,上面第8步的图片中,我已经添加了这个目录,请看下图。
win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
           ⑤严格按照步骤安装后,还出现问题。重启软件,重启系统。

          ⑥在\caffe-master\matlab\demo目录下,有个classification_demo.m,可以运行试试。
                 1)未定义与 'char' 类型的输入参数相对应的函数 'caffe_'。修改路径:
                  win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置
                      2)Please download CaffeNet from Model Zoo before you run this demo:下载model的Git网址:       https://github.com/BVLC/caffe/tree/master/models/bvlc_reference_caffenet 
                  3)下载和修改后,运行D:\test.m,测试D:\caffe-master\matlab\demo\classification_demo.m 

是不是讲的太细,导致你安装太顺利,感觉没有挑战性啊! hiahia 
希望对你有帮助。

PS:最后,建议大家还是尽量用Linux环境。win10+vs2013+cuda7.5+cuDnnv4+caffe-windows+matlab+python2环境配置