转载请注明出处:

http://www.cnblogs.com/darkknightzh/p/7126126.html

参考网址:

https://github.com/happynear/caffe-windows

使用的是参考网址中的caffe。由于电脑没有独显,因而使用cpu。首先下载该源码,而后顺序如下:

1. 将caffe-windows-ms\windows中CommonSettings.props.example改名为CommonSettings.props。

2. 由于只编译cpu版本,因而将

<CpuOnlyBuild>false</CpuOnlyBuild>
<UseCuDNN>true</UseCuDNN>
<UseNCCL>true</UseNCCL>

改为

<CpuOnlyBuild>true</CpuOnlyBuild>
<UseCuDNN>false</UseCuDNN>
<UseNCCL>false</UseNCCL>

3. 将

<MXNetSupport>true</MXNetSupport>

改为

<MXNetSupport>false</MXNetSupport>

4. 由于需要python支持,因而修改python的路径。使用的是anaconda2,因而将

<PythonDir>D:\Anaconda2\</PythonDir>

改为

<PythonDir>C:\ProgramData\Anaconda2\</PythonDir>

5. 打开Anaconda Prompt,输入:

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

6. 由于需要matlab支持,因而修改matlab的路径(网址中已经将MatlabSupport设置为true了)。将

<MatlabDir>C:\Program Files\MATLAB\R2016a</MatlabDir>

改为

<MatlabDir>C:\Program Files\MATLAB\R2014b</MatlabDir>

7. 使用vs2015打开caffe-windows-ms\windows中Caffe.sln。

8. 编译工程(可以只编译需要的。我这边。。。额。。。直接编译了整个工程)。由于只编译cpu版本,我这边编译速度还好吧。据说编译gpu版本,速度比较慢。。。

9. 对python支持的设置(下列方法二选一)。我这边使用的是a,没有测试b:

a 在环境变量中增加PythonPath,路径为<caffe_root>\Build\x64\Release\pycaffe

b 将<caffe_root>\Build\x64\Release\pycaffe\caffe拷贝到<python_root>\lib\site-packages

10. 对matlab的支持(下面两步都需要):

a add the generated matcaffe folder to Matlab search path
b add <caffe_root>\Build\x64\Release to your system path

此处说明一下:

b的好解释,就是将<caffe_root>\Build\x64\Release增加到Path的环境变量中。更改环境变量后,最好重启一下电脑。

对于a,说是将生成的matcaffe文件夹增加到matlab的search path中,实际上,我这边该工程生成的caffe_.mexw64路径为D:\caffe-windows-ms\matlab\+caffe\private,我最开始以为将这个文件夹增加到matlab的search path中,但是matlab总会提示“无法将方法文件夹(以’@’开头的文件夹)或专用文件夹添加到matlab搜索路径中”,如下图所示。实际上,添加的路径应该是D:\caffe-windows-ms\matlab。这样就不会出现下面的错误了。

11. 之后就是测试程序了。

caffe.reset_all();
caffe.set_mode_cpu();
gpu_id = 0; % we will use the first gpu in this demo
% caffe.set_device(gpu_id);
net = caffe.Net('deploy.prototxt', 'model.caffemodel', 'test');

我这边就不会提示有错误了。

如果caffe设置的有问题,matlab中会提示:未定义变量”caffe”或类“caffe.reset_all”,如下图所示。在搜索一下吧。。。

(原+转)win7上编译caffe支持python及matlab的更多相关文章

  1. [原]在win上编译 subversion 源码实践Tonyfield的专栏

    (百度和网页的作者无关,不对其内容负责。百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面。) [原]在win上编译 subversion 源码实践 2013-6-9阅读400 评论0 (参考 ...

  2. (原)Ubuntu16中编译caffe

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5797526.html 参考网址: http://caffe.berkeleyvision.org/in ...

  3. (原)ubuntu上编译PANet/Detectron.pytorch时-std=c99的错误

    转载请注明出处: https://www.cnblogs.com/darkknightzh/p/10494787.html 在ubuntu上编译PANet/Detectron.pytorch时,总提示 ...

  4. 编译caffe的Python借口,提示:ImportError: dynamic module does not define module export function (PyInit__caffe)

    >>> import caffeTraceback (most recent call last): File "<stdin>", line 1, ...

  5. 基于chyh1990/caffe-compact在windows vs2013上编译caffe步骤

    1.      从https://github.com/chyh1990/caffe-compact下载caffe-compact代码: 2.      通过CMake(cmake-gui)生成vs2 ...

  6. 机器学习caffe环境搭建——redhat7.1和caffe的python接口编译

    相信看这篇文章的都知道caffe是干嘛的了,无非就是深度学习.神经网络.计算机视觉.人工智能这些,这个我就不多介绍了,下面说说我的安装过程即遇到的问题,当然还有解决方法. 说下我的环境:1>虚拟 ...

  7. Ubuntu系统---安装Caffe (+OpenCV+Python+CPU-only)

    安装配置Ubuntu14.04+Caffe (+OpenCV+Python+CPU-only) 记录 [作者:Wu Ping.时间:20180428.] 本人已经安装很多次的Caffe了:从开始的初探 ...

  8. 【记录】在MAC上安装caffe

    ---恢复内容开始--- 最近尝试在MAC(OS X 10.11 El Capitan)上安装Caffe 以及Python接口遇到了一些问题但是官方安装教程上并没有提出这些问题的解决办法搜索了很久(主 ...

  9. Ubuntu16.04安装编译caffe以及一些问题记录

    前期准备: 最好是python虚拟环境 [anaconda的创建虚拟环境] 创建 conda create -n caffeEnv(虚拟环境名字) python=3.6 激活环境 source act ...

随机推荐

  1. JS Replace() 高级用法(转)

    在很多项目中,我们经常需要使用JS,在页面前面对前台的某些元素做做修改,js 的replace()方法就必不可少. 经常使用"ABCABCabc".replace("A& ...

  2. Longest Palindromic Substring leetcode java

    题目: Given a string S, find the longest palindromic substring in S. You may assume that the maximum l ...

  3. C#与Visual Basic的异与同

    C#是一种高级程序设计语言,是一种安全.稳定.简单.优雅的编程语言,它与Visual Basic有很多相同的地方,同时也有很多不同的地方.我们今天这篇博客本着学习C#的原则,着重介绍一下C#与Visu ...

  4. Java——DOM方式生成XML (转)

    http://blog.csdn.net/u012325167/article/details/50943202 使用DOM方式生成XML文件有如下几步: 首先是创建DOM树(即规定XML文件中的内容 ...

  5. MFC中的KillTimer

    在Dialog中添加一个Timer. 用如下的代码停用一个Timer总是不好用: void CDialog2::OnTimer (UINT TimerVal) { ////////////////// ...

  6. OpenGL ES 3.0 and libGLESv2

    note that libGLESv2 is the recommended Khronos naming convention for the OpenGL ES 3.0 library. This ...

  7. Log4j日志体系结构

    转自:https://my.oschina.net/andylucc/blog/794867 摘要 我们在写日志的时候首先要获取logger,在每一个使用log4j的项目都有很多个地方要获取logge ...

  8. iOS社交app技术合伙人笔试题

    理想状况当然是找到有管理能力且还在写代码的架构师了,然而假设有这种人,他自己能发起项目了.你要拉上他还真难.满足一定条件就可以了,别追求完美. 还有比这更完美的吗?请生产这种机器人: 性格开朗(开朗≠ ...

  9. Perl、PHP、Python、Java 和 Ruby 比较【转载+整理】

    从本文的内容上,写的时间比较早,而且有些术语我认为也不太准,有点口语化,但是意思到了. 问题: Perl.Python.Ruby 和 PHP 各自有何特点? 为什么动态语言多作为轻量级的解决方案? L ...

  10. 手机站CSS

    手机web——自适应网页设计(html/css控制) 内核: -ms- /* IE 9 */ -moz- /* Firefox */ -webkit- /* Safari and Chrome */ ...