(原+转)win7上编译caffe支持python及matlab
转载请注明出处:
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的更多相关文章
- [原]在win上编译 subversion 源码实践Tonyfield的专栏
(百度和网页的作者无关,不对其内容负责。百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面。) [原]在win上编译 subversion 源码实践 2013-6-9阅读400 评论0 (参考 ...
- (原)Ubuntu16中编译caffe
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5797526.html 参考网址: http://caffe.berkeleyvision.org/in ...
- (原)ubuntu上编译PANet/Detectron.pytorch时-std=c99的错误
转载请注明出处: https://www.cnblogs.com/darkknightzh/p/10494787.html 在ubuntu上编译PANet/Detectron.pytorch时,总提示 ...
- 编译caffe的Python借口,提示:ImportError: dynamic module does not define module export function (PyInit__caffe)
>>> import caffeTraceback (most recent call last): File "<stdin>", line 1, ...
- 基于chyh1990/caffe-compact在windows vs2013上编译caffe步骤
1. 从https://github.com/chyh1990/caffe-compact下载caffe-compact代码: 2. 通过CMake(cmake-gui)生成vs2 ...
- 机器学习caffe环境搭建——redhat7.1和caffe的python接口编译
相信看这篇文章的都知道caffe是干嘛的了,无非就是深度学习.神经网络.计算机视觉.人工智能这些,这个我就不多介绍了,下面说说我的安装过程即遇到的问题,当然还有解决方法. 说下我的环境:1>虚拟 ...
- Ubuntu系统---安装Caffe (+OpenCV+Python+CPU-only)
安装配置Ubuntu14.04+Caffe (+OpenCV+Python+CPU-only) 记录 [作者:Wu Ping.时间:20180428.] 本人已经安装很多次的Caffe了:从开始的初探 ...
- 【记录】在MAC上安装caffe
---恢复内容开始--- 最近尝试在MAC(OS X 10.11 El Capitan)上安装Caffe 以及Python接口遇到了一些问题但是官方安装教程上并没有提出这些问题的解决办法搜索了很久(主 ...
- Ubuntu16.04安装编译caffe以及一些问题记录
前期准备: 最好是python虚拟环境 [anaconda的创建虚拟环境] 创建 conda create -n caffeEnv(虚拟环境名字) python=3.6 激活环境 source act ...
随机推荐
- Mac-OSX下Ruby更新
Mac下是自带Ruby环境的,在有些情况我们是需要更新Ruby的,安装和更新Ruby环境可以通过rvm命令进行操作,rvm在安装过程中通过HomeBrew安装依赖包,如果之前没有装过HomeBrew, ...
- Gson Json 序列号 最常用的功能 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Everything 使用技巧 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- Datetimepicker配置参数
jquery的datetimepicker时间控件除了样式有点不太美观,功能性还是相当强大的. 在正常情况下input的type应该设置为"text",可点击又可输入(mask,e ...
- laravel 开启sql调试
打开app\Providers\AppServiceProvider.PHP,在boot方法中添加如下内容 public function boot() { //sql调试 $sql_debug = ...
- TOJ 1220 填数字游戏 / 深搜
填数字游戏 时间限制(普通/Java):1000MS/10000MS 运行内存限制:65536KByte 描述 有个小游戏,让你填写以下方框,要求: a1+a2+a3+M=b1+b2+b3+M ...
- 如何实现json字符串和 BsonDocument的互相转换
String to BsonDocument string json = "{ 'foo' : 'bar' }"; MongoDB.Bson.BsonDocument docume ...
- 了解JavaScript(1)- Hello World
JavaScript 简介 JavaScript 是一种可以给网页增加交互性的编程语言. 熟悉 JavaScript 的好方法是"站在其他程序员肩膀上",即Web 上有大量 Jav ...
- Docker 容器入门
1.1 容器简介 1.1.1 什么是 Linux 容器 Linux容器是与系统其他部分隔离开的一系列进程,从另一个镜像运行,并由该镜像提供支持进程所需的全部文件.容器提供的镜像包含了应用的所有依赖项, ...
- Mybatis之使用注解开发CRUD
上一篇演示了怎样使用XML来操作Mybatis实现CRUD,可是大量的XML配置文件的编写是很烦人的.因此 Mybatis也提供了基于注解的配置方式,以下我们来演示一下使用接口加注解来实现CRUD的的 ...