平台环境: win10 64位 caffe-master  vs2013 Matlab2016a

第一步:

打开\caffe-master\windows下的CommonSettings.props文件,

更改MatlabSupport,改成true(即支持Matlab接口)。

如图:

第二步:

更改matlab的路径,

如图:

第三步:

在includepath中增加一个路径,若没有的话,在编译时候会出现如下错误:gpu/mxGPUArray.h" Not Found

复制这段code:

<IncludePath>$(MatlabDir)\extern\include;$(MatlabDir)\toolbox\distcomp\gpu\extern\include;$(IncludePath)</IncludePath>

如图:

第四步:

打开caffe-master\windows 下的 Caffe.sln ,找到matcaffe,选择released(不要用debug),然后右键matcaffe,点击生成。

PS:不知道什么原因出错

错误    1   error : NuGet Error:Unable to find version'2.4.10' of package 'OpenCV.overlay-x64_v120_Release'. D:\NugetPackages\OpenCV.2.4.10\build\native\OpenCV.targets  772 5  libcaffe

选择重新生成,可以解决。当然,没出错的同学忽略。

生成完毕后在caffe-master\Build\x64\Release\matcaffe\+caffe\private下会有文件 :caffe_.mexw64

第五步:

打开matlab,添加路径

如图:

第六步:

添加系统环境变量,把..\caffe-master\Build\x64\Release  添加到系统环境变量中,如图:

否者在运行 demo.m时候出会出现如下错误:

Invalid MEX-file'D:\caffe-master\Build\x64\Release\matcaffe\+caffe\private\caffe_.mexw64': 找不到指定的模块。

出错 caffe.set_mode_cpu (line 5)

caffe_('set_mode_cpu');

出错 classification_demo (line 71)

caffe.set_mode_cpu();

第七步:

将caffe-master\Build\x64\Debug中所有dll文件全复制到caffe-master\matlab\+caffe\private

如图:

第八步:

下载model文件(bvlc_reference_caffenet.caffemodel)放到caffe-master\models\bvlc_reference_caffenet文件夹下

下载地址  链接:http://pan.baidu.com/s/1geUv01l密码:yp9p(出处:http://blog.csdn.net/zb1165048017/article/details/51702686)

第九步:

下载标签文件:synset_words.txt ,放在与classification_demo.m同一个文件夹下

链接:http://pan.baidu.com/s/1c24ty6W密码:3z7y(出处:http://blog.csdn.net/zb1165048017/article/details/51702686)

第十步:

打开classification_demo.m,运行。如果出现

未定义函数或变量 'caffe_'。

出错 caffe.set_mode_cpu (line 5)

caffe_('set_mode_cpu');

出错 classification_demo (line 71)

caffe.set_mode_cpu();

请修改 第二条语句

addpath('../../Build/x64/Release/matcaffe');

第十一步:

在运行一个测试文件test_mat.m, 文件出处(出处:http://blog.csdn.net/zb1165048017/article/details/51702686)

下载链接:http://pan.baidu.com/s/1nvtwoBJ 密码:t71u

存放在与classification_demo.m同一个文件夹下

test_mat.m源码如下:

  1. %参考http://www.aichengxu.com/view/2422137
  2. clear
  3. clc
  4. im = imread('../../examples/images/cat.jpg');%读取图片
  5. figure;imshow(im);%显示图片
  6. [scores, maxlabel] = classification_demo(im, 0);%获取得分第二个参数0为CPU,1为GPU
  7. maxlabel %查看最大标签是谁
  8. figure;plot(scores);%画出得分情况
  9. axis([0, 999, -0.1, 0.5]);%坐标轴范围
  10. grid on %有网格
  11. fid = fopen('synset_words.txt', 'r');
  12. i=0;
  13. while ~feof(fid)
  14. i=i+1;
  15. lin = fgetl(fid);
  16. lin = strtrim(lin);
  17. if(i==maxlabel)
  18. fprintf('the label of %d is %s\n',i,lin)
  19. break
  20. end

23. end

运行结果如图:

【caffe-windows】 caffe-master 之 matlab接口配置的更多相关文章

  1. Caffe实战五(Caffe可视化方法:编译matlab接口)

    接上一篇文章,这里给出配置caffe后编译matlab接口的方法.(参考:<深度学习 21天实战Caffe 第16天 Caffe可视化方法>) 1.将Matlab目录更新至Caffe的Ma ...

  2. 【caffe-Windows】微软官方caffe之matlab接口配置,以及安装caffe的注意事项

    1.在此之前,记录一下之前的错误,在参考博客[caffe-Windows]caffe+VS2013+Windows+GPU配置+cifar使用进行caffe的安装时,其中的一些步骤可以不做,具体见下图 ...

  3. caffe在windows 下的配置及matlab接口编译(无GPU)

    本人机子windows 10,matlab2015a,vs2013(官网使用的是vs2013) 1.首先去github上下载caffe的windows包,地址:https://github.com/B ...

  4. caffe 在window下编译(windows7, cuda8.0,matlab接口编译)

    1. 环境:Windows7,Cuda8.0,显卡GTX1080,Matlab2016a,VS2013 (ps:老板说服务器要装windows系统,没办法,又要折腾一番,在VS下编译好像在cuda8. ...

  5. win7下编译Microsoft版的caffe包的MATLAB接口(CPU模式)

    本博客是基于http://www.cnblogs.com/njust-ycc/p/5776286.html这篇博客修改的,做出了更正与补充. 本人机器的环境:Win7+MATLAB2014b+VS20 ...

  6. windows下caffe安装配置、matlab接口

    一.CommonSettings.props caffe下载后解压.源代码文件夹caffe-master,到该文件夹下的windows文件夹下,将CommonSettings.props.exampl ...

  7. matlab下的caffe接口配置(Windows)

    本文基于大部分网上方法 http://blog.csdn.net/d5224/article/details/51916178,外加一点自己的个人实际配置经历,环境变量在配置后尽管显示正确并且重启多次 ...

  8. windows配置caffe + python和matlab接口

    参考: http://blog.csdn.net/baidu_26408419/article/details/53711640 http://www.cnblogs.com/love6tao/p/5 ...

  9. Windows+Caffe+VS2013+python接口配置过程

    前段时间在笔记本上配置了Caffe框架,中间过程曲曲折折,但由于懒没有将详细过程总结下来,这两天又在一台配置较高的台式机上配置了Caffe,配置时便非常后悔当初没有写到博客中去,现已配置好Caffe, ...

随机推荐

  1. candence 知识积累4

    一.PCB布局约束: 1.尺寸规划:PCB大小要合适,PCB太大印制线路长,阻抗增加.太小散热不好,易受干扰. 2.PCB尺寸确定后要确定特殊器件的位置. 3.尽可能缩短高频元器件之间的连线,设法减少 ...

  2. CSS强制中英文换行与不换行

    1. word-break:break-all; 只对英文起作用,以字母作为换行依据 2. word-wrap:break-word; 只对英文起作用,以单词作为换行依据 3. white-space ...

  3. github删除带有文件的文件夹

    1. git pull you git url2. git checkout 3. rm -rf dirName4. git add --all5. git commit -m"remove ...

  4. C# WinForm控件之Dock顺序调整

    最近被.net winform中的控件布局搞困惑了,由于控件都是使用Dock方式的,操作起来也是比较方便,如果最大化,窗口大小调整等,都可以随着窗口大小的变化而变化. 但问题是,.net winfor ...

  5. 【LeetCode OJ】Path Sum II

    Problem Link: http://oj.leetcode.com/problems/path-sum-ii/ The basic idea here is same to that of Pa ...

  6. Android TextView图文混合编排

    Android TextView图文混合编排 实现技术细节不难,两个要点:1.html代码的混合编写.2,重写ImageGetter.例如:布局: <?xml version="1.0 ...

  7. readfile() 函数

    定义和用法 readfile() 函数输出一个文件. 该函数读入一个文件并写入到输出缓冲. 若成功,则返回从文件中读入的字节数.若失败,则返回 false.您可以通过 @readfile() 形式调用 ...

  8. http_build_query()就是将一个数组转换成url 问号?后面的参数字符串,并且会自动进行urlencode处理,及它的逆向函数

    http_build_query()就是将一个数组转换成url 问号?后面的参数字符串,并且会自动进行urlencode处理 例如: $data = array( 'foo'=>'bar', ' ...

  9. [原创] 用两个stack实现queue的功能

    #include <iostream> #include <stack> using namespace std; class doubleStackToQueue { pri ...

  10. pooling方法修改方案

    http://blog.csdn.net/malefactor/article/details/51078135#0-tsina-1-38411-397232819ff9a47a7b7e80a4061 ...