首先下载并安装MATLAB,caffe支持如下版本的MATLAB:2015a, 2014a/b, 2013a/b, 2012b,具体的安装过程都差不多这里不再赘述。
编译好caffe并安装好MATLAB后,首先编辑caffe根目录的Makefile.config文件,取消注释并修改MATLAB的路径:
MATLAB_DIR := /usr/local/MATLAB/R2014a
第二步删除MATLAB下面的库并重新链接到x86_64-linux-gnu:
rm -rf /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6 ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6 rm -rf /usr/local/MATLAB/R2014a/bin/glnxa64/libopencv_core.so.2.4 ln -s /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.9 /usr/local/MATLAB/R2014a/bin/glnxa64/libopencv_core.so.2.4 rm -rf /usr/local/MATLAB/R2014a/bin/glnxa64/libopencv_imgproc.so.2.4 ln -s /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.9 /usr/local/MATLAB/R2014a/bin/glnxa64/libopencv_imgproc.so.2.4 rm -rf /usr/local/MATLAB/R2014a/bin/glnxa64/libopencv_highgui.so.2.4 ln -s /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.9 /usr/local/MATLAB/R2014a/bin/glnxa64/libopencv_highgui.so.2.4 rm -rf /usr/local/MATLAB/R2014a/bin/glnxa64/libfreetype.so.6 ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so.6 /usr/local/MATLAB/R2014a/bin/glnxa64/libfreetype.so.6
第三步修改makefile里面的CXXFLAGS,添加CXXFLAGS += -std=c++11
然后编译matcaffe:sudo make matcaffe
执行mattest进行检验:sudo make mattest
运行CaffeNet的demo:
下载CaffeNet模型,下载好之后放入文件夹/caffe-master/models/bvlc_reference_caffenet 这是因为一会运行的demo要使用这个模型。
使用管理员权限打开matlab,切换目录到caffe/matlab/demo,执行如下命令:
im = imread('../../examples/images/cat.jpg');
[scores,maxlabel] = classification_demo(im, 1);