平台环境: 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源码如下:
23. end
运行结果如图: