matlab下的caffe接口配置(Windows)

本文基于大部分网上方法 http://blog.csdn.net/d5224/article/details/51916178,外加一点自己的个人实际配置经历,环境变量在配置后尽管显示正确并且重启多次仍然无法生效,需要手动激活,具体如下。

(1)修改配置文件,使之支持matlab接口,修改两个地方,第一个是matlabsupport,第二个是matlabdir也就是你的matlab安装目录(对matlab桌面图标右键属性查看):

 

 

  

 (2)编译caffe文件夹里面的Windows里面的caffe.sln工程里面的matcaffe一项      

 

(3)使用release编译以后,在\Build\x64\Release下会生成一个matcaffe文件夹,重点要有下面画框的文件。

(4)首先将上一步生成的matcaffe加入matlab的路径中,直接在setpath里面设置。

 

然后将release加入系统变量,

 

“”重启计算机“”使环境变量生效。

若遇到找不到caffe_的问题,则可以采取作者的暴力解决方法。

把这\Build\x64\Release\matcaffe\+caffe\private这个文件夹里面的东西全都拷贝到\matlab\+caffe\private覆盖,然后可能遇到下面问题caffe_.mexw64找不到引用模块问题,本文在配置时也遇到了这个问题,但是重启后就解决了应该是配置环境变量后没有重启的缘故。如还有问题则按下满的方法暴力解决。

(5)把\Build\x64\Debug下的所有的链接文件也就是dll文件也拷贝到这个文件夹去,原文件在这里

拷贝到\matlab\+caffe\private以后是这样

 

到这里为止,都是和网上其他方法一样的,但本人遇到了更奇葩的问题,即使如此配置,matlab始终显示找不到caffe接口,出现“找不到指定模块“的错误,最后怀疑是环境变量没生效导致,尽管已重启多次,并且在环境变量中显示正确,但仍然没生效,于是在cmd中输入命令caffe,出现如下界面,算是激活环境变量吧。。此后再次运行demo则运行正确。

 

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

               下载地址  链接:http://pan.baidu.com/s/1geUv01l 密码:yp9p

  

 

标签文件如下

synset_words.txt地址:

链接:http://pan.baidu.com/s/1c24ty6W 密码:3z7y

测试一下效果,建立一个test.m测试文件,路径如下【忽视readlabel,我自己写的读文件,最后放到test.m里面了】

【最好在matlab里面加一下路径】

测试代码:

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

运行结果如下:
 

posted on 2017-08-13 20:39  Pkj  阅读(535)  评论(0编辑  收藏  举报

导航