1/ 安装caffe框架,重点在于配置Makefile.config文件
按照 http://ouxinyu.github.io/Blogs/20140723001.html 安装
也可参考caffe原作者网页:http://caffe.berkeleyvision.org/installation.html
注意:
配置 Makefile.config
a. 启用CUDNN,去掉"#"(目前caffe-master仍然只支持R1版本) 不用的话保持注释
USE_CUDNN := 1
b. 选择启用GPU还是CPU,用注释"#" 进行选择
# CPU_ONLY := 1
c. 配置一些引用文件(增加部分主要是解决新版本下,HDF5的路径问题)
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/lib/x86_64-linux-gnu/hdf5/serial/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
d. 启用Intel Parallel Studio XE 2015 Professional Edition for C++ Linux,
BLAS := atlas
e. 配置路径,实现caffe对Python和Matlab接口的支持
PYTHON_LIB := /usr/local/lib
MATLAB_DIR := /usr/local/MATLAB/R2014a
5. 配置Makefile文件(实现对OpenCV 3.x的支持)
查找“Derive include and lib directories”一节,修改“LIBRARIES +=”的最后一行,增加opencv_imgcodecs
opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs(最后一个如果后续编译出错可以去掉)
6. 必须在Makefile.config配置文件中打开Python层支持WITH_PYTHON_LAYER := 1 去掉该行的注释符 #
2/ 安装fast-rcnn
2.1: 从github上clone到FastRCNN的仓库。最好就直接这么clone,不要自己去下载,不然还满麻烦的。
git clone --recursivehttps://github.com/rbgirshick/fast-rcnn.git
2.2:生成Cython模块(下面的$Fast_RCNN_ROOT都是指fast-rcnn的解压位置,根目录)
cd $Fast_RCNN_ROOT/lib
make
2.3 生成Caffe和pycaffe
cd $Fast_RCNN_ROOT/caffe-fast-rcnn
# 此时要将caffe安装时的Makefile.config拷贝到当前目录,然后执行命令:
make -j8 && make pycaffe
2.4 下载Fast RCNN检测器
cd $Fast_RCNN_ROOT
./data/scripts/fetch_fast_rcnn_models.sh #大概900多M
ps:先打开一个.sh文件,看到里面的URL了没,最后的URL链接就是这个链接再加上FILE变量,链接,你直接把它链接起来,复制到迅雷中下载就可以了,速度灰常快,直接下载的话炒鸡慢啊。下在之后记得放到data/目录下去解压哦,
3/ 运行demo
3.1 Python版
cd $Fast_RCNN_ROOT
./tools/demo.py #cudnn模式
cd $Fast_RCNN_ROOT
./tools/demo.py --cpu #cpu模式
demo中是用VGG16网络,在PASCALVOC2007上训练的模型来执行检测的,这个模型比较大,如果把caffe弄崩溃了,可以换一个小一点的网络,其实还更快一点,如
./tools/demo.py --net caffenet
或者、
./tools/demo.py --net vgg_cnn_m_1024
或者就用cpu模式
3.2 Matlab版
在matlab文件夹下打开matlab,下面是我的matlab的安装地址。
cd $Fast_RCNN_ROOT/matlab
/usr/local/MATLAB/R2014a/bin/matlab #wait for matlab to start
把$Fast_RCNN_ROOT/caffe-fast-rcnn/matlab下的caffe文件夹拷贝到$Fast_RCNN_ROOT/matlab中,为防止内存不够,我们还是以CaffeNet为例,把fast-rcnn-demo.m中的所有VGG16改为CaffeNet。在matlab命令行下输入命令:
>> fast_rcnn_demo