caffe安装部署(CPU)
2019-01-05 本文已影响48人
于飞_d529
软件版本
OS:ubuntu16.04
VMware:13
python:2.7.12
查看系统显卡信息
如果没有显卡,只能使用CPU版。虚拟机中貌似不能与宿主机共享显卡,执行下面命令后,没有相关信息打印,如果想部署GPU版,不建议使用虚拟机
lspci | grep -i nvidia
安装相关依赖
这里需要消耗很长时间 如果使用ubuntu18.04安装依赖的时候会报各种奇怪的错误,但是ubuntu16.04一遍安装成功,这里不知道为什么。
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
下载caffe
- 安装Git
sudo apt-get install git
- 使用Git下载caffe
git clone git://github.com/BVLC/caffe.git
编译caffe
-
进入caffe目录
caffe1.png -
备份Makefile.config.example文件
cp Makefile.config.example Makefile.config
- 编辑文件Makefile.config
去掉 CPU_ONLY := 1 前的#号
修改:
#INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
#LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
为:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/hdf5/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/local/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
INCLUDE_DIRS LIBRARY_DIRS按照个人的目录地址设定,设置前先查看自己操作系统的目录,不能直接复制网上的教程
- 执行编译
sudo make all
sudo make test
sudo make runtest
-
执行完后,显示如下图说明编译成功
success_test.PNG
编译python接口
安装pip
sudo apt-get install python-pip
安装Python接口依赖库
这里需要消耗很长时间 在caffe根目录下,有个python文件夹,文件夹里面有个requirements.txt,里面有需要的依赖库和版本信息,按照其安装即可,在安装前,需要先安装fortran编辑器(gfrotran),因为安装scipy库时需要它,命令如下:
安装过程中会由于connection timeout异常,导致依赖包安装不成功,需要重复执行几次,保证所有依赖都安装完毕,或者手动下载依赖文件,手动安装
sudo apt-get install gfortran
cd /home/ubuntu/caffe/python
for req in $(cat requirements.txt); do pip install $req; done
验证
执行下面的命令,可以看到,安装成功的,都会显示Requirement already satisfied,没安装成功的,会继续进行安装
sudo pip install -r requirements.txt
- 配置环境变量
执行命令:sudo vim ~/.bashrc
在文件的末尾加入:export PYTHONPATH=/homt/ubuntu/caffe/python:$PYTHONPATH
执行命令试修改生效:source ~/.bashrc
如下图:
caffe3.png
这里的地址根据自己安装的caffe目录配置
编译python接口
cd /home/ubuntu/caffe/
make pycaffe
验证
caffe4.png进行python环境,引入caffe包,如果没有报错则安装成功!
安装过程问题汇总
问题一
-
缺少hdf5.h文件,如图
error1.PNG - 需要手动下载安装包
hdf5下载地址
依次执行以下命令:
tar -zxvf hdf5-X.Y.Z.tar.gz #解压缩
cd hdf5-X.Y.Z
./configure --prefix=/usr/local/hdf5 #安装路径
make
make check # run test suite.
make install
make check-install # verify installation.
问题二
- 在import caffe时会报错,这里忘记截图了,与numpy有关
- 直接删除/usr/local/lib/python2.7/dist-packages下numpy相关的包,然后就好了,最后也没懂,为什么删除这个包import就成功了