Ubuntu16.04+caffe+matlab2016b

Ubuntu16.04+caffe+matlab2016b

JLU-IPVR

听笙

安装matlab2016b


下载matlab


下载地址:https://pan.baidu.com/share/init?surl=mhSXTfq  

密码:79sb

下载后的文件提取后有三个文件   R2016b_glnxa64_dvd1.iso、R2016b_glnxa64_dvd2.iso和Matlab 2016b Linux64Crack文件夹。

注意:解压后Crack文件夹中包含readme.txt文件,里面包含密钥,license_standalone.lic文件,用于进行软件激活,/bin/glnx64/文件,用于进行matlab安装目录中bin/glnx64/的替换,里面四个文件。

挂载


直接挂载到/home/cvpr/matlab

sudo mount -o loop R2016b_glnxa64_dvd1.iso /home/cvpr/matlab/

安装


进入到挂载目录下,可以看到有install文件,然后返回当前目录进行安装。

sudo /home/cvpr/matlab/install

默认的安装路径是 /usr/local/下,安装到一半,提示拔出dvd1,然后插入dvd2。

sudo mount -o loop R2016b_glnxa64_dvd2.iso/home/cvpr/matlab/

激活


sudo chmod -R 777 MATLAB/

cd ~/Matlab 2016b Linux64 Crack/R2016b/bin/glnxa64/

sudo cp lib* /user/local/MATLAB/R2016b/bin/glnxa64/

cd /user/local/MATLAB/R2016b/bin/

./matlab

选择不联网激活,加载license_standalone.lic文件。

安装caffe


安装各种依赖包


sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

 

sudo apt-get install --no-install-recommends libboost-all-dev

 

sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev

 

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

 

sudo apt-get install git cmake build-essential

安装opencv


推荐安装opencv2.14

下载caffe


可以使用git clone https://github.com/BVLC/caffe.git  本人感觉比较慢,所以直接在github上去搜索下载了=。=

 

进入 caffe,将Makefile.config.example文件复制一份并更名为 Makefile.config ,也可以在 caffe 目录下直接调用以下命令完成复制操作 :

sudo cp Makefile.config.example Makefile.config

复制一份的原因是编译 caffe 时需要的是 Makefile.config 文件,而Makefile.config.example只是caffe 给出的配置文件例子,不能用来编译 caffe。

然后修改 Makefile.config 文件,在 caffe 目录下打开该文件:

sudo gedit Makefile.config

修改Makefile.config

 

将:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

修改为:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include/usr/include/hdf5/serial

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib/usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

 

将:

MATLAB_DIR := /usr/local

修改为:

MATLAB_DIR := /user/local/MATLAB/R2016b

 

修改Makefile文件

 

在CXXFLAGS += -MMP -MP下面加

CXXFLAGS += -std=c++11

 

将:

NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)

替换为:

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)

 

编译caffe


make all -j32

sudo make test -j32

这步一般不会有什么问题

编译matcaffe


make matcaffe -j32

这时候会警告gcc版本的过高问题,但是不用理它。

在make mattest 的时候会出现以下问题:

 

Invalid MEX-file'/home/matconvnet-1.0-beta20/matlab/mex/vl_nnconv.mexa64':

/usr/local/MATLAB/R2016b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6:version

`GLIBCXX_3.4.21' not found (required by/home/matconvnet-1.0-beta20/matlab/mex/vl_nnconv.mexa64)

MEX-file'/home/zhangjiqing/caffe/matlab/+caffe/private/caffe_.mexa64'无效:
/home/zhangjiqing/caffe/matlab/+caffe/private/caffe_.mexa64: undefined symbol:
_ZN2cv8imencodeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_11_InputArrayERSt6vectorIhSaIhEERKSB_IiSaIiEE


出错 caffe.set_mode_cpu (line 5)
caffe_('set_mode_cpu');

出错 caffe.run_tests (line 6)
caffe.set_mode_cpu();

 

通过以下手段解决:

替换几个库文件

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/

 

sudo rm -rf libopencv_core.so.2.4 libopencv_highgui.so.2.4libopencv_imgproc.so.2.4

 

sudo ln -s/usr/local/opencv-2.4.13/build/lib/libopencv_core.so.2.4.13libopencv_core.so.2.4

 

sudo ln -s /usr/local/opencv-2.4.13/build/lib/libopencv_imgproc.so.2.4.13libopencv_imgproc.so.2.4

 

sudo ln -s/usr/local/opencv-2.4.13/build/lib/libopencv_highgui.so.2.4.13libopencv_highgui.so.2.4

 

sudo ldconfig

若此时在make mattest 还出问题的话 采用暴力解决方案:

将 usr/local/MATLAB/R2016b/bin/glnxa64 中以下三个文件删除。(建议删除前进行备份)

libopencv_core.so.2.4

libopencv_highgui.so.2.4

libopencv_imgproc.so.2.4

 

 

OK了。



  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值