想在Windows平台使用Caffe,吭哧吭哧下载了半天第三方库,后来忽然发现Microsoft官方移植了Caffe,配置起来简直太省心了…

1. 从Microsoft官方Github上下载Caffe,源代码压缩包不到9MB大小,并将其解压缩到本地目录

https://github.com/Microsoft/caffe

2.安装NVIDIA CUDA,目前最新版本是7.5,离线安装包约962MB(8.0版也即将要发布了)。

Nvidia CUDA Toolkit

3.安装NVIDIA cuDNN(CUDA Deep Neural Library),目前最新版本是5(windows Caffe支持cuDNN 4和5)

Nvidia cuDNN

下载的压缩包中是Nvidia编译好的lib和dll以及.h头文件,约39MB,解压缩到本地目录即可。

4.打开Caffe解压缩目录,将其中windows目录中的CommonSettings.props.example复制一份并重命名为CommonSettings.props,然后使用Visual Studio 2013打开Caffe.sln解决方案。首先我们要将第3步中的cuDNN目录添加到libcaffe工程目录中,打开CommonSettings.props编辑<CuDnnPath>标签;或者是打开工程的“属性”->“配置属性”->“VC++目录”,在右侧的“包含目录”中将cuDNN的include文件路径添加进去即可。然后我们就可以对Caffe进行编译了。

此时有同学可能会问,Caffe所依赖的boost、OpenCV、gflags、glog等第三方库统统都没有配置,难道不需要提前安装了吗?现在这个问题不用担忧了,因为Microsoft有非常强大的NuGet工具。只要当我们第一次编译工程时,NuGet便开始自动下载并配置这些第三方库了,同时会在Caffe同层目录生成一个名为NugetPackages的文件夹。

5.如果在编译过程中提示“error C2220: 警告被视为错误 - 没有生成“object”文件”,这是由于微软NuGet回来的boost库中的format\alt_sstream_impl.hpp文件编码格式导致的,只需要双击错误打开该文件并保存,再编译就顺利通过了。

6.如果我们安装的CUDA版本不是7.5版本,或者我们甚至没有GPU,一样也可以正常使用Caffe

打开CommonSettings.props对以下对应的标签进行编辑即可,

<CpuOnlyBuild>false</CpuOnlyBuild>

<UseCuDNN>true</UseCuDNN>

<CudaVersion>7.5</CudaVersion>

<PythonSupport>false</PythonSupport>

<MatlabSupport>false</MatlabSupport>

【神经网络与深度学习】【CUDA开发】【VS开发】Microsoft官方移植了Caffe配置过程说明的更多相关文章

  1. 【神经网络与深度学习】【Matlab开发】caffe-windows使能Matlab2015b接口

    [神经网络与深度学习][Matlab开发]caffe-windows使能Matlab2015b接口 标签:[神经网络与深度学习] [Matlab开发] 主要是想全部来一次,所以使能了Matlab的接口 ...

  2. 【神经网络与深度学习】【python开发】caffe-windows使能python接口使用draw_net.py绘制网络结构图过程

    [神经网络与深度学习][python开发]caffe-windows使能python接口使用draw_net.py绘制网络结构图过程 标签:[神经网络与深度学习] [python开发] 主要是想用py ...

  3. 【神经网络与深度学习】【Qt开发】【VS开发】从caffe-windows-visual studio2013到Qt5.7使用caffemodel进行分类的移植过程

    [神经网络与深度学习][CUDA开发][VS开发]Caffe+VS2013+CUDA7.5+cuDNN配置成功后的第一次训练过程记录<二> 标签:[神经网络与深度学习] [CUDA开发] ...

  4. 【神经网络与深度学习】【VS开发】【CUDA开发】VS2013 配置CUDNN V4 DEMO

    VS2013 配置CUDNN V4 DEMO 众所周知,当前主流深度学习的实现中调用的底层API都是cudnn,自己做项目需要开发深度学习模块时,也需要调用cudnn库,因此熟悉cudnn库是很有必要 ...

  5. 【神经网络与深度学习】在Windows8.1上用VS2013编译Caffe并训练和分类自己的图片

    最近想熟悉一下深度学习,体验了一下Caffe,简单写写训练和分类的过程: 1.下载Caffe VS2013工程:https://github.com/Microsoft/caffe 2. 解压并用VS ...

  6. 【神经网络与深度学习】【Python开发】Caffe配置 windows下怎么安装protobuf for python

    首先从google上下载protobuf-2.5.0.zip和protoc-2.5.0-win32.zip,然后把protoc-2.5.0-win32.zip里的protoc.exe放到protobu ...

  7. 【神经网络与深度学习】【CUDA开发】【VS开发】Caffe+VS2013+CUDA7.5+cuDNN配置过程说明

    [神经网络与深度学习][CUDA开发][VS开发]Caffe+VS2013+CUDA7.5+cuDNN配置过程说明 标签:[Qt开发] 说明:这个工具在Windows上的配置真的是让我纠结万分,大部分 ...

  8. 【神经网络与深度学习】【CUDA开发】caffe-windows win32下的编译尝试

    [神经网络与深度学习][CUDA开发]caffe-windows win32下的编译尝试 标签:[神经网络与深度学习] [CUDA开发] 主要是在开发Qt的应用程序时,需要的是有一个使用的库文件也只是 ...

  9. 13本热门书籍免费送!(Python、SpingBoot、Entity Framework、Ionic、MySQL、深度学习、小程序开发等)

    七月第一周,网易云社区联合清华大学出版社为大家送出13本数据分析以及移动开发的书籍(Python.SpingBoot.Entity Framework.Ionic.MySQL.深度学习.小程序开发等) ...

随机推荐

  1. CSS选择器的权重与优先规

    我们把特殊性分为4个等级,每个等级代表一类选择器,每个等级的值为其所代表的选择器的个数乘以这一等级的权值,最后把所有等级的值相加得出选择器的特殊值. 4个等级的定义如下: 第一等:代表内联样式,如: ...

  2. python--moviepy--视频编辑

    MoviePy是一个用于视频编辑的python模块,你可以用它实现一些基本的操作(比如视频剪辑,视频拼接,插入标题),还可以实现视频合成,还有视频处理,抑或用它加入一些自定义的高级的特效.总之,它的功 ...

  3. win10 去掉资源管理器左侧的Creative Cloud Files

    open regedit 依次打开HKEY_CLASSES_ROOT\CLSID\{0E270DAA-1BE6-48F2-AC49-95A54E35F3C4} 双击{0E270DAA-1BE6-48F ...

  4. Idea 设置maven配置文件settings.xml的位置

    1.[File] >  [Other Settings] > [Default Settings] 2.设置 settings.xml 配置 本博文来源于:https://blog.csd ...

  5. DOM导航与DOM事件

    HTML DOM 导航 通过 HTML DOM,能够使用节点关系在节点树中导航. ㈠HTML DOM 节点列表 getElementsByTagName() 方法返回节点列表.节点列表是一个节点数组. ...

  6. Linux 环境安装运行Sqlmap

    1.官网下载 .tar.gz 文件   官网地址:http://sqlmap.org/ 2.登录访问linux环境,将压缩包放入/usr/local 路径. 3.在该路径下通过 tar -xzvf f ...

  7. HDU 2829 [Lawrence] DP斜率优化

    解题思路 首先肯定是考虑如何快速求出一段铁路的价值. \[ \sum_{i=1}^k \sum_{j=1, j\neq i}^kA[i]A[j]=(\sum_{i=1}^kA[i])^2-\sum_{ ...

  8. oracle 获取时间

    1.获取当前时间的前24小时的各小时时间段 select to_char(to_date(to_char(sysdate ) ,'yyyy-mm-dd hh24') || ':00:00','yyyy ...

  9. Vue之vue中的data为什么是一个函数+vue中路径别名alias设置

    问题描述 为什么在vue组件中,我们的data属性必须是一个函数,new Vue()中的data除外,因为new Vue中只有一个data属性. 原因 因为我们能抽离出来的组件,肯定是具有复用性的,它 ...

  10. Redis数据结构常用命令

    Redis数据结构--字符串