matlab下对caffe接口的调用

Caffe的配置可以参考我的博文:http://blog.csdn.net/rt5rte54654/article/details/54168961

我的机器环境: Ubuntu 16.04, CUDA 8.0, gcc 5.4.0, Matlab R2016b.

Caffe官网提供了Matlab接口的配置方法,核心也就两个命令

  1. make matcaffe  
  2. make mattest  
make matcaffe
make mattest
在执行这两个命令之前,还有两个准备工作:

(1)修改caffe文件夹下的Makefile.config中Matlab的路径,即添加

  1. MATLAB_DIR := /usr/local/R2016b  
MATLAB_DIR := /usr/local/R2016b
上面显示的是我自己的Matlab安装路径,大家可以改成自己的。

(2)将Matlab的安装路径添加到PATH中

先打开.bashrc文件,

  1. sudo gedit ~/.bashrc   
sudo gedit ~/.bashrc 
在该文件末尾加入如下语句 
  1. export PATH=$PATH:/usr/local/R2016b/bin   
export PATH=$PATH:/usr/local/R2016b/bin 

做完这两个,就可以执行命令make matcaffe了。在这里还要说一下gcc版本的问题。配置Matlab接口之前,我看了很多网上的文档,说要降低gcc的版本。所以我在配置成功caffe之后把gcc版本从5.4.0降到了4.9.3,然后运行make matcaffe,出现如下错误


但是我找了好久一直找不到错误的原因,后来我把gcc版本恢复到5.4.0之后就可以了,也就是说在我的机器环境下不需要改动gcc的版本。在5.4.0版本下运行

  1. make matcaffe  
make matcaffe
结果如下


显示了一个警告,说是gcc的版本不支持。这个没有关系,只是警告,不是错误,最下面显示还是MEX成功了。

然后运行命令

  1. make mattest  
make mattest
报错如下


出现的错误与http://blog.csdn.net/u012746763/article/details/50419153中提到的完全一样,因此我采纳了文中的建议,执行了下面的命令

  1. export LD_LIBRARY_PATH=/usr/local/R2016b/sys/os/glnxa64  
  2. export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6  
export LD_LIBRARY_PATH=/usr/local/R2016b/sys/os/glnxa64
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
接着重新运行命令
  1. make mattest  
make mattest
又出现了下面的错误


这与http://www.cnblogs.com/laiqun/p/6031925.html中列出的错误是一致的,所以我又使用了该文中的建议,执行下列命令

  1. export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:/usr/local/cuda-8.0/lib64  
  2. export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6  
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:/usr/local/cuda-8.0/lib64
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6
最后再次执行命令
  1. make mattest  
make mattest
成功!


转自:http://blog.csdn.net/rt5rte54654/article/details/54742981

Caffe的配置可以参考我的博文:http://blog.csdn.net/rt5rte54654/article/details/54168961

我的机器环境: Ubuntu 16.04, CUDA 8.0, gcc 5.4.0, Matlab R2016b.

Caffe官网提供了Matlab接口的配置方法,核心也就两个命令

  1. make matcaffe  
  2. make mattest  
make matcaffe
make mattest
在执行这两个命令之前,还有两个准备工作:

(1)修改caffe文件夹下的Makefile.config中Matlab的路径,即添加

  1. MATLAB_DIR := /usr/local/R2016b  
MATLAB_DIR := /usr/local/R2016b
上面显示的是我自己的Matlab安装路径,大家可以改成自己的。

(2)将Matlab的安装路径添加到PATH中

先打开.bashrc文件,

  1. sudo gedit ~/.bashrc   
sudo gedit ~/.bashrc 
在该文件末尾加入如下语句 
  1. export PATH=$PATH:/usr/local/R2016b/bin   
export PATH=$PATH:/usr/local/R2016b/bin 

做完这两个,就可以执行命令make matcaffe了。在这里还要说一下gcc版本的问题。配置Matlab接口之前,我看了很多网上的文档,说要降低gcc的版本。所以我在配置成功caffe之后把gcc版本从5.4.0降到了4.9.3,然后运行make matcaffe,出现如下错误


但是我找了好久一直找不到错误的原因,后来我把gcc版本恢复到5.4.0之后就可以了,也就是说在我的机器环境下不需要改动gcc的版本。在5.4.0版本下运行

  1. make matcaffe  
make matcaffe
结果如下


显示了一个警告,说是gcc的版本不支持。这个没有关系,只是警告,不是错误,最下面显示还是MEX成功了。

然后运行命令

  1. make mattest  
make mattest
报错如下


出现的错误与http://blog.csdn.net/u012746763/article/details/50419153中提到的完全一样,因此我采纳了文中的建议,执行了下面的命令

  1. export LD_LIBRARY_PATH=/usr/local/R2016b/sys/os/glnxa64  
  2. export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6  
export LD_LIBRARY_PATH=/usr/local/R2016b/sys/os/glnxa64
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
接着重新运行命令
  1. make mattest  
make mattest
又出现了下面的错误


这与http://www.cnblogs.com/laiqun/p/6031925.html中列出的错误是一致的,所以我又使用了该文中的建议,执行下列命令

  1. export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:/usr/local/cuda-8.0/lib64  
  2. export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6  
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:/usr/local/cuda-8.0/lib64
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6
最后再次执行命令
  1. make mattest  
make mattest
成功!


转自:http://blog.csdn.net/rt5rte54654/article/details/54742981

猜你喜欢

转载自blog.csdn.net/qq_29259155/article/details/78227571