首先安装好ubuntu16.04,然后开始准备安装caffe。
一.安装依赖包
首先执行以下命令
sudo apt-get update
安装caffe之前需要安装一些依赖库:
sudo apt-get install libprotobuf-dev
sudo apt-get install libleveldb-dev
sudo apt-get install libsnappy-dev
sudo apt-get install libopencv-dev
sudo apt-get install libhdf5-serial-dev
sudo apt-get install protobuf-compiler
sudo apt-get install libgflags-dev
sudo apt-get install libgoogle-glog-dev
sudo apt-get install liblmdb-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install --no-install-recommends libboost-all-
二.下载caffe源码,整个过程比较慢长。
使用git指令下载caffe。
git clone git://github.com/BVLC/caffe.git
三.编译caffe(均在caffe目录下运行)
1.生成Makefile.config文件:
cp Makefile.config.example Makefile.config
2.修改配置Makefile.config 文件
1)编辑Makefile.config文件:
sudo gedit Makefile.config
或者直接进入文件内打开文件进行修改。
2)去掉CPU_ONLY:=1前面的#号:
3)配置引用文件路径:(增加部分主要是解决新版本下,HDF5的路径问题)
将 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
换成 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/include/hdf5/serial/
(这个其实可以根据具体路径进行转换,一般此路径是对的,要是还出现问题,使用命令行查找该文件的正确路径即可)
3.在Makefile文件的第173行,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码。
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
变成
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
4.执行编译
make all
make test
make runtest
编译完成之后出现如下界面(网上找的,并非本人截图):
四:编译Python接口
1.安装pip以及numpy:
sudo apt-get install python-pip
sudo apt-get install python-numpy
2.安装python接口依赖库:
在安装依赖库前,需要先安装gfortran编辑器:
sudo apt-get install gfortran
然后安装依赖库,首先进入caffe目录下的python文件中:
cd caffe/python
安装依赖库:
for req in $(cat requirements.txt); do pip install $req; done
指定iPython版本
sudo pip install ipython==5.3.0
安装完后,执行下面一条语句,该语句的作用是检查依赖库是否都已经安装成功,如果成功会显示requirement already saitisfied,如果未成功会继续安装:
sudo pip install -r requirements.txt
3.添加环境变量:
打开配置文件bashrc:
sudo gedit ~/.bashrc
或者直接打开该文件也可以,
在文件的最后面添加:
export PYTHONPATH=~/caffe/python:$PYTHONPATH
结果如下:
保存文件后关闭,然后输入下面语句,使环境变量生效:
source ~/.bashrc
4.编译python接口:(在caffe目录下)
make pycaffe
编译完后,若无错误提示,则说明编译成功。
5.验证python接口:
进入python环境:
python
引入caffe包:
import caffe
如果引入caffe包无其他显示,如下图所示:
说明python接口编译成功。如果显示no model named caffe则说明python接口编译失败,重新检查上述步骤或百度解决。至此整个caffe安装编译的过程就全部结束了。
PS:本文主要参考了https://blog.csdn.net/pangyunsheng/article/details/79418896 按照大神的方法安装中间出现了一点问题,因此就稍作修改。不同的电脑应该会有不同的问题,但是都是一些小毛病,仔细看看百度一下基本都可以解决的。