在网上找了许多安装Caffe的教程 感觉全都是杂乱无章的 而且也没有详细的 只能自己当小白鼠来实验一次了

本次配置:CUDA 8.0+ CUDNN  +VS 2015 +Python 3.5 + Caffe

1、安装CUDA

安装还是非常简单的 直接点安装就可以了,注意在这里要选择自定义,而后勾选所有组件下载:

全部勾选:

而后一直next就可以了,安装过程中可能会出现黑屏是正常的

官方教程上面是CUDA 7.5或8.0  此处使用的是VS2015,就只能使用8.0了(注:电脑的显卡必须是英伟达才可以使用,如果不是只能使用CPU加速了,CPU就简单多了,网上有教程,显卡较弱也建议使用CPU)

附:CUDA 8.0 官方下载地址:https://developer.nvidia.com/cuda-80-ga2-download-archive

官方地址可能会经常失败,故而附上我自己下载的软件:链接:https://pan.baidu.com/s/1hmxiMi8C60M2F4AVOmSIUA 密码:f1a6(里面有CUDA  8.0及9.0)

那么如何知道自己的电脑支持哪个CUDA的版本呢 首先打开自己的NVIDIA控制面板,而后打开帮助——>选择系统信息,如下图:(若不知道哪里可以在小娜那里搜索就可以了)

而后点击组件就可以看见了,CUDA后面的数字就是支持最新的版本信息(可向下兼容)

2、安装cuDNN

从nVidia网站下载相应的版本,此处我下载的是CUDA 8.0相应的版本。需要注册一个账号,注意需要翻墙才能够注册,否则会很慢很慢(若不想科学上网我附上一个CUDA 9.1 及8.0 相应的版本链接:https://pan.baidu.com/s/1ZrP72xkaU2DvULWogGZUsQ  密码:p2jx)

将下载的zip解包到%CUDA_PATH%(由CUDA安装程序设置的环境变量,在安装CUDA时会自动设置环境变量),一般是默认路径是:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1

3、安装Python(最好使用python3.5,其他版本可能会出错)

(1)使用Miniconda安装:

如果本机没安装python,可以下载Miniconda 2.7 x64-bit 或者3.5 x64 bit,从官方网址:http://conda.pydata.org/miniconda.html选择下载,默认配置路径安装即可,并且要为python添加环境变量。

同时需要以管理员权限安装numpy、scipy、matplotlib、scikit-image、protobuf包,安装命令如下:

conda install --yes numpy scipy matplotlib scikit-image pip
pip install protobuf

(2)使用Anacon安装(推荐,但是windows会可能出现一个安装时不能创建菜单的问题,这个问题至今都没有解决,如果谁解决了可以给我留言,谢谢)

安装python或者使用Anacon也可以,下载链接为:https://www.anaconda.com/download/ ,同时添加到环境变量

因Anaconda中附有numpy、scipy、matplotlib、scikit-image、protobuf,可以不用再安装这些

若出现问题,可参考:https://docs.anaconda.com/anaconda/user-guide/troubleshooting

(3)使用官方python安装(最少出现解决不了的错误)

官方下载链接:https://www.python.org/downloads/windows/(下载64位,此处下载的是python 3.5 x64)安装时记得将添加环境变量的勾上

安装python后需要下载:numpy、scipy、matplotlib、scikit-image、protobuf

进入cmd中直接输入:

pip install numpy  (下载numpy时提示pip版本必须是10才可以,故而输入:python -m pip install --upgrade pip 就可以更新pip)

pip install scipy

pip install scikit-image

pip install matplotlib

pip install protobuf

4、安装visual studio

版本为2013或2015,官方链接为:https://my.visualstudio.com/Downloads?q=visual%20studio%202015&wt.mc_id=o~msft~vscom~older-downloads

若嫌麻烦可以使用我下载的VS2015,同样是官方版本:链接:https://pan.baidu.com/s/177dIZw7e8sBTrjw-EX-lIA 密码:ju8y

5、Cmake安装

安装比较简单,附下载链接:https://cmake.org/download/

6、Matlab安装(python和matlab二选一即可 我使用的是python)

安装教程及破解版地址下载链接:https://blog.csdn.net/gisboygogogo/article/details/76793803

7、安装及配置Caffe

首先先上官方教程的链接http://caffe.berkeleyvision.org/installation.html#hardware

然后是windows的下载包及教程https://github.com/BVLC/caffe/tree/windows

最方便的则是使用cmd进行安装配置,首先安装官方教程输入以下命令:

C:\ Projects > git clone https://github.com/BVLC/caffe.git
C:\ Projects > cd caffe
C:\ Projects \ caffe > git checkout windows
::编辑build_win.cmd中的任何选项以满足您的需要
C:\ Projects \ caffe > scripts \ build_win.cmd

可以在自己打算安装Caffe的文件夹中输入以下命令行,不一定非得在C盘中输入,要根据直接的安装路径

经过漫长的等待(视电脑性能而定,我的用时15分钟),电脑终于执行完毕,成功后打开caffe\scripts\build应该能看见可由VS编译的Caffe.sln工程文件。

然而在执行C:\ Projects \ caffe > scripts \ build_win.cmd 时我收集了可能会出现以下错误:

(1)'"E:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\..\..\VC\vcvarsall.bat"' 不是内部或外部命令,也不是 可运行的程序 或批处理文件。 -- The C compiler identification is unknown -- The CXX compiler identification is unknown CMake Error at CMakeLists.txt:18 (project): No CMAKE_C_COMPILER could be found. CMake Error at CMakeLists.txt:18 (project): No CMAKE_CXX_COMPILER could be found.

  处理方法时重新打开VS2015的安装程序,而后选择修改,勾选编程语言下的VC++(同时若出现Windows SDK不存在时也可以在此处修改,或者单独下载也可以)

(2)提示:

使用notepad++打开caffe\scripts下的build_win.cmd进行修改:

  (1)MSVC_VERSION 根据你VS项目版本来,14对应VS2015的项目,12对应VS2013的项目 
  (2)只使用CPU的将 CPU_ONLY 改为1 
  (3)PYTHON_VERSION 根据你本机版本来,我是2.7所以是2,3.5就是3 
  (4)CUDA_ARCH_NAME 是CUDA的架构名称,可选值有:Kepler,Fermi,Maxwell,Pascal,Manual,All,Auto,Auto是自动检测最优值 
  (5)WITH_NINJA 要设为0,你不会用到ninja编译器来进行编译 
  (6)改完后去scripts\build中把 CMakeCache.txt 文件删掉。因为这里面记录的是用Ninja来编译的,不删除的话不能用VS来编译 
  (7)在多个 GPU 上运行 Caffe 需要使用 NVIDIA NCCL

以下是我的修改:

注:根据官方教程,若安装了CUDNN,则

要使用cuDNN,最简单的方法是将cuda文件夹的内容复制到CUDA工具包安装目录中。

例如,如果您安装了CUDA 8.0并下载了cudnn-8.0-windows10-x64-v5.1.zip,则应该将该cuda目录的内容复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

或者,您可以定义CUDNN_ROOT缓存变量以指向解压缩cuDNN文件的位置,例如C:/Projects/caffe/cudnn-8.0-windows10-x64-v5.1/cuda

或者在scripts/build_win.cmd中添加,如下(根据自己的安装路径改变):

 而后删除caffe\scripts\build文件夹,重新开始

(3)提示出现:The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution".

  解决方法:在网上单独下载一个windows SDK 8.1,或者打开VS2015安装包修改选项下载工具windows SDK8.1       

(4)错误CMake Error at cmake/WindowsDownloadPrebuiltDependencies.cmake:40(message):

  Could not find url for MSVC version = 1910 and Python version = 2.7.

  解决方法:这是由于使用的python版本问题,不能使用最新版本,必须使用python3.5,重新安装即可

(5)错误:无法将“script”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。

    方法:可以直接进入script文件夹,而后输入:.\build_win.cmd  即可

(6)错误:一个名为“libraries_v140_x64_py27_1.1.0.tar.bz2”的依赖包无法下载成功

    方法:打开https://github.com/willyd/caffe-builder/releases/download将该包下载下来,由于之前虽然下载的代码执行失败了可还是为我们建立好了存放依赖库的文件夹,我们把对应文件下载好后解压放进去(默认是在C盘当前用户目录下的dependencies文件夹,download存放下载文件下来的文件,libraries_v140_x64_py27_1.1.0文件夹下则是存放该文件解压后的library包) ,手动修改cmake文件夹下WindowsDownloadPrebuiltDependencies.cmake文件和scripts文件夹下download_prebuilt_dependencies.py文件代码,让程序绕过文件中下载和解压的部分直接编译

8、python接口

(1)安装Anaconda或Miniconda版本

打开Anaconda下的Anaconda Prompt,cmd输入:

conda config --add channels conda-forge
conda config --add channels willyd

并安装以下软件包:

conda install --yes cmake ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz

并将caffe/python下的caffe文件复制到 python安装路径下的lib/site-packages下

在cmd中输入python,而后执行 import caffe ,若没有错误,则配置成功

(2)安装python版本

打开cmd输入:

  pip install --yes cmake ninja numpy scipy protobuf==3.1.0 six scikit-image pyyaml pydotplus graphviz

安装软件,并将caffe/python下的caffe文件复制到 python安装路径下的lib/site-packages下

在cmd中输入python,而后执行 import caffe ,若没有错误,则配置成功

9、VS编译caffe

  在build目录下将Caffe.sIn 文件打开

注:若使用VS2015打开Caffe.sIn 文件时弹出:

  未能正确加载python tools package包

解决方法:打开路径 C:\Users\用户名\AppData\Roaming\Microsoft\VisualStudio\14.0(若没有则自己创建),而后新建文件:ActivityLog.xml ,并将以下代码复制进去:

<entry>
<record>257</record>
<time>2010/05/02 20:36:35.490</time>
<type>Error</type>
<source>VisualStudio</source>
<description>CreateInstance failed for package [Microsoft.Data.Entity.Design.BootstrapPackage.BootstrapPackage, Microsoft.Data.Entity.Design.BootstrapPackage, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]</description>
<guid>{7A4E8D96-5D5B-4415-9FAB-D6DCC56F47FB}</guid>
<hr>80070002</hr>
<errorinfo>Could not load file or assembly 'Microsoft.Data.Entity.Design.BootstrapPackage, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.</errorinfo>
</entry>
<entry>
<record>258</record>
<time>2010/05/02 20:36:35.513</time>
<type>Error</type>
<source>VisualStudio</source>
<description>End package load [Microsoft.Data.Entity.Design.BootstrapPackage.BootstrapPackage, Microsoft.Data.Entity.Design.BootstrapPackage, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]</description>
<guid>{7A4E8D96-5D5B-4415-9FAB-D6DCC56F47FB}</guid>
<hr>80004005 - E_FAIL</hr>
<errorinfo>Could not load file or assembly 'Microsoft.Data.Entity.Design.BootstrapPackage, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.</errorinfo>
</entry>

  然后再打开VS2015就没有报错了。

而后在VS中右键CMakeTargets底下的All_build生成,注意,此时必须在release,x64下生成(在VS左上角设置)

若生成成功没有报错就表示大功告成啦!

完成后可以使用mnist检测caffe是否有效,具体教程可见我的下一篇



Caffe+VS2015+python3的安装(基于windows)的更多相关文章

  1. Python2和Python3同时安装到Windows

    上月已经把Python2安装好了,安装目录和及其下的Scripts也在安装时添加到了环境变量PATH中,可以使用python命令执行程序. 安装包:python-2.7.14.amd64.msi(没有 ...

  2. 1、python3.x安装(windows)

    现在大部分自动化测试已经使用python3.x版本,与Python2的区别这里就不多说了,如有兴趣可以自行百度. 一.下载 官网:https://www.python.org/downloads/,下 ...

  3. [No00004B]Windows 下面为Python3.5安装NoteBook

    python3.5安装NoteBook,网上搜了一下教程,几乎很多转帖,或者是2.x版本的,很少有直接可以用的.自己琢磨了一下午,终于搞定了,现在贴出来.希望大家以后转帖什么的都先测试一下,互联网时代 ...

  4. Windows上Python3.5安装Scrapy(lxml) 以及与twisted有关错误的解决

    转载于:http://www.cnblogs.com/silverbullet11/p/4966608.html 常用网址: Python 3.5: https://www.python.org/do ...

  5. Windows上Python3.5安装Scrapy(lxml)

    常用网址: Python 3.5: https://www.python.org/downloads/ Wheel文件:http://www.lfd.uci.edu/~gohlke/pythonlib ...

  6. MySQL 8.0.12 基于Windows 安装教程(超级详细)

    MySQL 8.0.12 基于Windows 安装教程(超级详细) (一步一步来,装不了你找我!) 本教程仅适用Windows系统,如果你原本装了没装上,一定要先删除原本的数据库,执行:mysqld ...

  7. windows下python3.6安装pycryto or crypto or pycryptodome与使用

    pycrypto,pycrytodome和crypto是一个东西,在很久以前,crypto在python上面的名字是pycrypto它是一个第三方库,但是已经停止更新三年了,所以不建议安装这个库: w ...

  8. 基于 Windows 7 的计算机的可用内存可能低于安装内存

    https://support.microsoft.com/zh-cn/kb/978610 症状 在运行 Windows 7 的计算机上,可用内存 (RAM) 可能会低于安装内存. 例如,32 位版本 ...

  9. windows python3.7安装numpy问题的解决方法

    我的是win7的系统,去python官网下载python3.7安装 CMD  #打开命令窗口 pip install numpy #在cmd中输入 提示 需要c++14.0, 解决办法: 1, 进入h ...

随机推荐

  1. git解决修改代码后无法push的问题failed to push some refs to 'ssh://git@xxx.xxx.xx/xx.git'

    今天在使用git提交代码的时候,犯了个很低级的错误,按照一切流程当我add并commit提交代码,最后使用push到远程仓库, 接下来奇怪的事情发生了,push之后,查看远程仓库代码并没有发现提交记录 ...

  2. springmvc与freemarker的整合

    官方简介:FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具. 它不是面向最终用户的,而是一个Java ...

  3. JavaWeb学习笔记二 Http协议和Tomcat服务器

    Http协议 HTTP,超文本传输协议(HyperText Transfer Protocol),是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为 ...

  4. Java虚拟机之类加载机制

    ⑴背景   Java虚拟机把Class文件加载到内存中,并对数据进行校验,转换解析,和初始化,最终形成被虚拟机直接使用的Java类型,这就是类加载机制. ⑵Jvm加载Class文件机制原理 类的生命周 ...

  5. RDD概念、特性、缓存策略与容错

    一.RDD概念与特性 1. RDD的概念 RDD(Resilient Distributed Dataset),是指弹性分布式数据集.数据集:Spark中的编程是基于RDD的,将原始数据加载到内存变成 ...

  6. java Classpath 的解读

    在了解java的classpath之前先来看看java的运行机制  1.首先是编译,将.java文件编译成虚拟机认识的二进制文件.这个过程需要的命令是javac  可以在jdk的bin目录中找到,ja ...

  7. oracle创建表空间、创建用户并赋予权限

    分开执行如下sql语句 --创建临时表空间 CREATE SMALLFILE TEMPORARY TABLESPACE "TEMP11" TEMPFILE 'E:\app\MD\o ...

  8. C语言结构体作业

    一.PTA实验作业 题目1:6-3 结构体数组中查找指定编号人员 1. 本题PTA提交列表 2. 设计思路 定义一个结构体指针*p for i=0 to i=7 如果std+i的编号与输入的编号一样 ...

  9. JAVA_SE基础——58.如何用jar命令对java工程进行打包

    有时候为了更方便快捷的部署和执行Java程序,要把java应用程序打包成一个jar包.而这个基础的操作有时候也很麻烦,为了方便java程序员们能够方便的打包java应用程序,下面对jar命令进行介绍, ...

  10. 使用HTML5视频事件示例

    <!DOCTYPE html > <html > <head> <title>Video events example</title> &l ...