参考:https://blog.csdn.net/Reedlh/article/details/80659363
常用的深度学习框架有 TensorFlow
、Caffe
、Theano
、Torch
、CNTK
,这里记录作为入门级的菜鸟如何配置Caffe - -计算机视觉库。
参照Caffe官网安装教程,简单翻译如下:
-
Caffe安装依赖关系
1.使用GPU需要安装CUDA
;
2.BLAS
:三种库可以选择ATLAS
、MKL
、OpenBLAS
;
3.Boost
>=1.55;
4.protobuf
,glog
,gflags
,hdf5
-
可选的依赖关系
1.OpenCV
>=2.4;
2.IO库:lmdb
,leveldb
;
3.GPU加速,需安装cuDNN
. -
Pycaffe
接口
对于Python Caffe:Python 2.7
或者Python 3.3+
,numpy
>=1.7,boost
提供boost.python
. -
Matcaffe
接口
对于MATLAB Caffe:使用MATLAB mex
编译器.安装步骤记录如下
电脑安装有Ubuntu 16.04 LST
系统自带Python2.7
+Python3.5
,自行安装了Anaconda(Python3.6)
.1.必要的软件
按官方安装提示,对于Ubuntu 16.04 LST
操作如下:
-
$ 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
2.安装BLAS
三种可选的安装包,ATLAS
、MKL
、OpenBLAS
,任选一种安装:
-
$ sudo apt-get install libatlas-base-dev
-
$ sudo apt-get install libopenblas-dev
3.依赖包
注意,不安装如下软件包会在后面的编译过程中出错!官方指出,对于Ubuntu 16.04 LST
是需要安装CUDA 8
的,而对于Ubuntu 14.04 LST
,是需要如下软件包的。CUDA
是由cuda-toolkit
+nvidia驱动
+sample
三部分组成,有的教程说无GPU
直接跳过cuda
的安装,有的说只安装cuda-toolkit
,实质上应该都是指安装如下软件包:
$ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
4.编译Caffe
①从GitHub上克隆到本地:
-
$ cd ~
-
$ git clone https://github.com/BVLC/caffe
②修改编译配置文档
-
$ cd ~/caffe
-
$ cp Makefile.config.example Makefile.config
具体修改如下:
1.CPU_ONLY := 1
这一行去掉注释,表示只用CPU;
2.WITH_PYTHON_LAYER := 1
这一行去掉注释,表示使用python来编写layer;
3.将BLAS := Atlas
改为BLAS := open
4.将# Whatever else you find you need goes here.下面的
-
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
-
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
修改为
-
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 /usr/lib/x86_64-linux-gnu/hdf5/serial
5.关于USE_CUDNN := 1
、OPENCV_VERSION := 3
以及anaconda
暂不做修改.
③修改编译文件
-
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
④编译测试
-
make all -j4
-
make test -j4
-
make runtest -j4