(图文并茂)linux系统下使用Caffe(一)caffe安装篇

最新的linux系统下使用Caffe(一)caffe安装篇

了解到的环境:Ubuntu16.04 + CPU(Only)+ Inter显卡

1. 查看本机电脑配置与电脑的GPU版本:

系统:Ubuntu 16.04
命令:

lspci | grep -i vga

也可以使用 lshw 命令来获取上述信息:
命令:

lshw -C display

类似如下输出:
这里写图片描述
VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller (rev 06)

2.显卡驱动名称:
命令:

sudo lshw -c video | grep configuration

这里写图片描述

上图中可以看到输出的显卡驱动名称有两条,其中一条为 driver=i915,存在于本地文件中。

3.检查显卡驱动:modinfo i915
发现显卡是因特尔的显卡,而不是英伟达的显卡程序。
这里写图片描述

|

2.下载显卡驱动:


a. 如果你是英伟达显卡,可以使用NVIDIA的GPU来跑cafe。
官网: http://www.nvidia.cn/object/unix-cn.html
去显卡官网根据自己的显卡版本而下载对应的显卡驱动。
安装参考地址: http://www.linuxidc.com/Linux/2016-12/138870.htm
b. 如果你是英特尔显卡,就使用intel的CPU跑caffe的,需要确保你自己的显卡驱动是安装好的。

3.安装依赖库:

下面开始正文,安装caffe开始。
终端切换到root权限:

sudo su root

然后依次安装:

apt-get install libprotobuf-dev   
apt-get install libleveldb-dev   
apt-get install libsnappy-dev   
apt-get install libopencv-dev   
apt-get install libhdf5-serial-dev   
apt-get install protobuf-compiler  
apt-get install --no-install-recommends libboost-all-dev  

由于我只有CPU,所以跳过CUDA相关的安装;

接下来是BLAS:

apt-get install libatlas-base-dev  

使用默认Python来建立pycaffe接口,需要安装:

apt-get install python-dev  

一些兼容性依赖库:

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

4.克隆(下载)Caffe源码:

没有安装git的话需要先装一下git:
命令:

apt-get install git

下载Caffe源码:
命令:

git clone https://github.com/BVLC/caffe.git

如图:
这里写图片描述

配置Caffe的Python接口,
终端切换到caffe下的python目录下,
输入以下命令下载python依赖库(先安装pip):

apt-get install python-pip  
for req in $(cat requirements.txt); do pip install $req; done  

5.修改配置文件Makefile.config:

终端进入到caffe目录下:
拷贝一份Makefile.config.example并重命名成Makefile.config,
命令:

cp Makefile.config.example Makefile.config  

这里写图片描述

修改该配置文件:
命令:

sudo gedit Makefile.config

因为这里没有配置GPU,所以去掉CPU_ONLY := 1前面的注释;
这里写图片描述

注意!!!由于Ubuntu16.04文件结构的变化,#Whatever else you find you need goes here.处要改成下面这样:这里也是很多以前老版本的教程中没改正的地方。

# Whatever else you find you need goes here.
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/hdf5/serial  

还需要注意的就是:如果你在make pycaffe的时候,
报错和numpy相关,则重新打开Makefile.config目录,然后在自己电脑上查找一下numpy的安装目录,需要保证numpy的路径是对应上:

# We need to be able to find Python.h and numpy/arrayobject.h.
PYTHON_INCLUDE := /usr/include/python2.7 \
        /usr/lib/python2.7/dist-packages/numpy/core/include

对应本地:
这里写图片描述

6.编译caffe源代码:

完成修改文件以后就可以开始编译:
依次命令:

make pycaffe  
make all  
make test  
make runtest  

make默认单核运算,如果想加快速度,我这里是4核,可以在每条命令后面加上-j4,如果有报错,建议最好make clean重新开始。
如果所有测试都通过,则说明安装好了。
效果图:
make pycaffe
这里写图片描述

Make all:
这里写图片描述

Make test:
这里写图片描述

make默认单核运算,如果想加快速度,可以在命令后加上-jx

电脑是几核,就可以在每条命令后面加上-jx,
比如:make all -j8

注意,在编译环节,如果一旦有报错,最好make clean,然后再重新开始编译。
如果所有测试都通过,则说明安装好了。
Make runtest:
这里写图片描述

7.测试Python接口:

终端进入到caffe/python文件目录下,
输入以下命令:

export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH  

然后在输入命令:

python
import caffe

如图:
这里写图片描述
如果没有报错,证明安装成功
但是上面路径设置方法,是一旦关闭终端或者打开新终端则失效。

下面直接把环境放到配置文件中,可以永久有效。
命令:

sudo gedit ~/.bashrc 

打开编辑,在最后一行加入语句:

export PYTHONPATH=/你的路径/caffe/python:$PYTHONPATH 

保存退出。

然后继续在终端下输入:

source ~/.bashrc

使环境变量生效,然后关闭终端,去进入到python环境下,测试import caffe,没有报错则永久设置成功。
如图:
这里写图片描述


上面就是安装整个caffe的过程。

补充:

1.安装pip指令:
sudo apt install python-pip
这里写图片描述

2.查看caffe配置的是哪个版本的python接口:
由于linux自带安装的有python2.7和Python3.5两个版本。
配置caffe的Python接口以后,有人不知道是哪个版本生效了?
命令:

import sys
sys.path
这里写图片描述
可以看见python2下安装的各种库。
然后再打开caffe文件夹下的makefile.config 里面可以看到是python2.7生效,所以对应的应该是python2.7版本。

3.import caffe失败:
这里写图片描述

参考第5步.配置环境变量那里,需要确保路径都是添加了,而且是正确的。

4.安装numpy命令:
python3的:sudo apt-get install python3-numpy
python2的:sudo apt-get install python-numpy

8、参考文献

官网教程,附上链接:
https://github.com/BVLC/caffe/wiki/Ubuntu-16.04-or-15.10-Installation-Guide


You got a dream, you gotta protect it.
如果你有梦想的话,就要去捍卫它 。 ——《当幸福来敲门》

猜你喜欢

转载自blog.csdn.net/itbiggod/article/details/79543993