网上有很多caffe教程,本文重点在配置过程容易出错的地方,只针对像我一样的小菜鸟,大神绕行。
感谢自己在配置caffe时,大神们的分享。
caffe可以在GPU和CPU上跑,如果在GPU上跑,对显卡有一定的要求。需要自己查看一下自己的显卡,根据计算能力安装对应的CUDA。caffe底层是C,但提供了python和matlab接口,如果使用接口,需要相应的配置。
安装依赖库(一)
$ 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 --no-install-recommends libboost-all-dev
在install的时候经常会出现
E: 无法找到软件包
的情况, 主要是因为源出了问题。
更新一下,apt-get update。
换一个源列表source.list后更新一下
或者直接上www.debian.org找您需要的软件包
换一个源列表source.list后更新一下
或者直接上www.debian.org找您需要的软件包
安装BLAS
$ sudo apt-get install libatlas-base-dev
安装python
Ubuntu14.04自带python,可以不用安装
自己写程序时,可调用caffe中pycaffe接口,如果不调用也可以不用安装
自己写程序时,可调用caffe中pycaffe接口,如果不调用也可以不用安装
安装opencv
详见: Ubuntu14.04安装OpenCV3.0注:opencv必须安装,且版本为>=2.4或3.0
安装依赖库(二)
$ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
下载Caffe
$ cd ~ $ git clone git://github.com/BVLC/caffe.git
修改
如果安装的是opencv3.0需要做以下修改:
a、修改caffe目录下的Makefile文件,在
[code]LIBRARIES += glog gflags protobuf leveldb snappy \ lmdb boost_system hdf5_hl hdf5 m \ opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
处加入后面的opencv_imgcodecs,因为opencv3.0.0把imread相关函数放到imgcodecs.lib中了(原来是imgproc.lib) b、修改caffe/examples/cpp_classification/classification.cpp文件,加入:
#include <opencv2/imgproc/types_c.h> #include <opencv2/objdetect/objdetect_c.h> 否则会出现”CV_BGR2GRAY”的错误
编译Caffe
$ cd ~/caffe $ cp Makefile.config.example Makefile.config
修改
修改Makefile.config文件:去掉CPU_ONLY:= 1的注释
即为,caffe在运行时,采用CPU计算。如果不注释掉,即为默认的GPU,GPU计算速度约为CPU的四倍。GPU计算必须安装CUDA,而且对显卡有一定的要求。
$ make all $ make test $ make runtest
配置pycaffe:
a、安装依赖库:$ sudo apt-get install python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags Cython ipython $ sudo apt-get install protobuf-c-compiler protobuf-compiler
b、编译:
$ cd ~/caffe $ make pycaffe
c、添加~/caffe/python到$PYTHONPATH:
$ sudo gedit /etc/profile
# 末尾添加: export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH
#export PYTHONPATH=自己caffe文件夹下的python路径,一定要是自己的路径!!! # 用完整路径,不要用~
$ source /etc/profile
#使之生效
d、测试是否可以引用:
[code]$ python Python 2.7.6 (default, Jun 22 2015, 17:58:13) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import caffe >>>