Caffe安装

Caffe安装

{
    Author:Francis_ZHOU
}

写此文章的目的是对这一段时间安装caffe的总结,希望自己能够从中把知识融会贯通,并且也希望能够帮助更多的人。

参考文章

http://caffe.berkeleyvision.org/installation.html
http://blog.csdn.net/shiorioxy/article/details/52652831
http://cvrs.whu.edu.cn/blogs/?p=299

运行环境

操作系统:Ubuntu14.04
GPU:GTX780

caffe安装(CPU_ONLY)

1、安装git,一会需要用他来下载caffe源码

 $ sudo apt-get install git

2、安装必要的依赖包

$ 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

3、安装BLAS

$ sudo apt-get install libatlas-base-dev

也可以使用OpenBLAS或者MKL,但是在安装上会相对麻烦一点,有兴趣的同学可以自行安装。

4、安装Python

$ sudo apt-get install python-dev

5、安装一些其他的依赖包

$ sudo apt-get install libgflags-dev libgoogle-glog-devliblmdb-dev

6、下载Caffe源码

$ git clone https://github.com/bvlc/caffe.git

7、编译Caffe

$ cd caffe/
$ mv Makefile.config.example Makefile.config
$ vi Makefile.config

把文件中的CPU_ONLY前面的注释去掉。

$ make -j8

至此,等待编译成功。

注:此方法编译后为CPU_ONLY模式,适合初学者。并且在安装显卡之前,最好先检查一下这些内容,编译一次CPU_ONLY确保各个依赖项没有问题。

Caffe安装(CUDA+cudnn)

1、安装CUDA

首先在官网上下载*.run文件。本文所下载的是cuda_7.5.18_linux.run。

下载完成后,直接运行:

$ sudo sh cuda_7.5.18_linux.run

然后会让你看一大段的文字,可以按[Q]直接跳过,然后就是根据提示选择。建议先用Ubuntu的设置中安装上NVidia显卡驱动,然后在这个过程中则选择不安装显卡驱动。至此,cuda安装成功。

也可以选择使用*.deb的方式安装,方法直接参照官方安装教程。

$ sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.518_amd64.deb
$ sudo apt-get update
$ sudo apt-get install cuda

如果使用*.run的方法安装出现错误,也可以选择使用*.deb的方法安装,再用*.run方法安装上其他两个空余项。虽然看起来是一个不明智的方法,但是确实是有效的。

2、安装cudnn

cuDNN是GPU加速计算深层神经网络的库,可以大大提高计算速度。
首先去官网上注册个账号,然后填写一份调查问卷就可以下载cuDNN。
通常下载和CUDA对应的最新版本的cuDNN。

$ sudo tar xvf cudnn-8.0-linux-x64-v5.1.tgz
$ cd cuda/include
$ sudo cp cudnn.h /usr/local/cuda/include/
$ sudo cp *.h /usr/local/include/
$ cd ../lib64
$ sudo cp lib* /usr/local/lib/
$ cd /usr/local/lib
$ sudo chmod +r libcudnn.so.5.1.10
$ sudo ln -sf libcudnn.so.5.1.10 libcudnn.so.5
$ sudo ln -sf libcudnn.so.5 libcudnn.so
$ sudo ldconfig

注意,上面的版本号等信息要根据你下载的信息做调整,不可以直接copy。

3、安装OpenCV

在github上下载最新的opencv-3.1.0.zip。

$ unzip opencv-3.1.0.zip
$ cd opencv-3.1.0/
$ mkdir build
$ cd build/
$ cmake ..

这期间会显示现在安装的cuda和cudnn的版本。

$ ccmake ..

不用更改任何选项,直接按[C],然后按[G]。

$ make -j8
$ make install
$ sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
$ sudo ldconfig
$ sudo apt-get update

这是自己进行opencv的安装,网上也有人已经将整个步骤写成脚本,只需要运行相应的脚本就可以进行安装,非常方便。

4、环境变量配置

因为我要安装python版本和matlab版本的caffe,所以在此也要先把所需的依赖和安装的文件弄好。

python:

$ sudo apt-get install python-skimage python-protobuf python-yaml
$ sudo pip install easydict

matlab:

遵照网上的方法在ubuntu上安装Matlab2014a

然后切入正题:配置环境变量

$ export PYTHONPATH=${HOME}/caffe/python:$PYTHONPATH
$ export MATLABPATH=${HOME}/caffe/matlab:$MATLABPATH
$ export LD_LIBRARY_PATH=${HOME}/caffe/build/lib:$LD_LIBRARY_PATH
$ export PATH=/usr/local/cuda-7.5/bin:$PATH
$ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

以上命令,如果只是在终端中输入,则会在该终端关闭后消失,所以我们把以上内容添加到/etc/profile文件的末尾:

$ sudo gedit /etc/profile

添加完毕后输入:

$ source /etc/profile

如此一来,即使重启后,环境变量中也依然有这些内容

5、Caffe编译

到这里,我们经历了这么多内容的配置,终于到了可以编译caffe的时候。

修改Makefile.config里面的内容,把CPU_ONLY选项重新注释上,打开USE_CUDNN选项,打开OPENCV_VERSION := 3,根据Matlab安装路径设置MATLAB_DIR,打开WITH_PYTHON_LAYER

转到刚才git下来的caffe目录下

$ cd caffe
$ make clean  #将刚才编译的内容清除
$ make -j8
$ make test -j8
$ sudo make runtest -j8
$ make pycaffe
$ make matcaffe

剩下的就是每一步的等待了。

测试make pycaffe是否成功,只需要进入python命令行,然后输入improt caffe,若没有报错,则说明没有问题。

注:

1、在sudo make runtest -j8中会出现一个小问题
libcudart.so.7.5 cannot open shared object file: No such file or directory

这个是环境变量设置的问题,可是环境变量我们刚才设置过了,那么如何解决呢?办法如下:

$ sudo cp /usr/local/cuda-7.5/lib64/libcudart.so.7.5 /usr/local/lib/libcudart.so.7.5 && sudo ldconfig
$ sudo cp /usr/local/cuda-7.5/lib64/libcublas.so.7.5 /usr/local/lib/libcublas.so.7.5 && sudo ldconfig
$ sudo cp /usr/local/cuda-7.5/lib64/libcurand.so.7.5 /usr/local/lib/libcurand.so.7.5 && sudo ldconfig

再重新sudo make runtest -j8,便没有问题了。

2、本文中所有的代码中,凡是涉及到版本号的请设置为自己的版本号。
3、我很喜欢@卜居在他的新书《21天实战Caffe》中所用的,把所有的依赖项都放到local_install中的办法,有兴趣的同学也可以多多尝试。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值