Caffe+MATLAB2014a+ubuntu14.04

跑一个RCNN的代码需要配Caffe+MATLAB2014a,走了不少弯路,花了不少时间。在此做个笔记,以供分享。

配置:

Ubuntu 14.04 + MATLAB 2014a + CUDA 6.5 

一、安装gcc 4.7

Ubuntu14.04自带的gcc版本是4.8,MATLAB2014a支持的最高版本为4.7x。因此,需要安装gcc4.7,并给gcc降级

在终端执行gcc 4.7的安装命令:

 sudo apt-get install gcc-4.7 g++-4.7 g++-4.7-multilib gcc-4.7-multilib

在终端执行以下系统gcc降级命令(其中数字越大,表示优先级越高):

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.7 100 

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50 

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 100 

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50

sudo update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.7 100

sudo update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.8 50

验证gcc-4.7是否安装并成为系统的默认版本:

gcc -v 

也可以将以上命令写入一个shell文件中,执行shell脚本。

二、安装MATLAB2014a

三、安装CUDA6.5并设置相关的环境变量

四、安装Caffe

4.1 下载

4.2 安装库依赖: 

sudo apt-get install  libatlas-base-dev libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler

4.3 将Caffe目录下的Makefile.config.example修改为Makefile.config并且修改其中关于MATLAB和CUDA的设置:

CUDA_DIR := /usr/local/cuda-6.5

CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
-gencode arch=compute_20,code=sm_21 \
-gencode arch=compute_30,code=sm_30 \
-gencode arch=compute_35,code=sm_35 \
-gencode arch=compute_50,code=sm_50 \
-gencode arch=compute_50,code=compute_50

MATLAB_DIR := /usr/local/MATLAB/R2014a

注:其中CUDA >= 6.0时,CUDA_ARCH 需要做如上设置。

4.4 build Caffe

 make -j 4
 make -j 4 matcaffe

以上4表示采用4核。

题外

若想在shell上测试Caffe的例子,可在Caffe目录下做如下编译:

make test
make runtest

并在终端执行:

cd caffe-master

./data/mnist/get_mnist.sh 

./examples/mnist/create_mnist.sh

./examples/mnist/train_lenet.sh

如果想要跑rcnn的代码,那么需要配置liblinear-1.94,主要步骤如下:

1、修改lliblinear-1.94/matlab目录下的Makefile文件,设置MATLAB的路径

2、在终端make:先在liblinear-1.94目录下make,再在liblinear-1.94/matlab目录下make


报错及处理:

1 报错:close未声明

   处理:添加 #include "unistd.h" 到Network.cpp里


PS:

跑cnn代码时要注意batch size不要过大。

本想用CUDNN跑代码的,无奈下载不了,只能暂时放弃。

参考:

Caffe installation

How to setup Caffe to run Deep Neural Network


你可能感兴趣的:(ubuntu,CUDA,matlab,caffe)