配置caffe(gpu版本)参考:点击打开链接
其中需要按照以上后两个链接安装配置caffe所需要的所有依赖包,包括opencv的安装。
1. 获取faster-rcnn源码
git clone --recursive https://github.com/rbgirshick/py-faster-rcnn.git
2. 安装Cpython和easydict,已安装过的请忽略。
sudo pip install cython udo pip install easydict
3. 配置cpython
cd py-faster-rcnn/lib make -j8
4. 编译caffe
cd ../caffe-fast-rcnn cp Makefile.config.example Makefile.config
修改Makefile.config文件。参考caffe配置gpu版本。
将文件中的USE_CUDNN :=1、OPENCV_VERSION := 3、WITH_PYTHON_LAYER := 1取消注释。其中还有MATLAB_DIR := /usr/local,如果你需要配置matlab接口则将此注释取消并将你安装的matlab路径写在后面,默认安装路径为/usr/local/MATLAB/R2016b。
安装matlab并配置caffe的matlab接口请参考博文:点击打开链接
修改完成后保存。其中在编译时可能产生的常见的基本问题,博主版块《问题解决》中基本概括,如有问题请参考:点击打开链接
5. 需要将caffe-fast-rcnn中的一些cudnn文件替换掉,因为faster-rcnn使用的caffe版本比较老,不支持cudnnv5。
(1). 指令修改。
cd caffe-fast-rcnn git remote add caffe https://github.com/BVLC/caffe.git git fetch caffe git merge -X theirs caffe/master
(2). 手动修改
a. 将caffe-fast-rcnn/include/caffe/util/cudnn.hpp以最新版本caffe的相同文件代替。没有的话,可以自己下载一个。
b. 将caffe-fast-rcnn/include/caffe/layers中所有以cudnn开头的文件全部替换为最新版本,搜索一下就全部出来了。
c. 将caffe-fast-rcnn/src/caffe/layers所有以cudnn开头的文件全部替换为最新版本。
注意:如果不按以上操作,如果你的cudnn安装的版本较高是无法编译的。一定会出错。
6. 编译
cd caffe-fast-rcnn make all -j16 make runtest -16 make pycaffe
其中执行make runtest这一部的时候有可能会出现“src/caffe/test/test_smooth_L1_loss_layer.cpp:11:35: fatal error: caffe/vision_layers.hpp”,这里如果你不想动,那么不必理会,因为make all已经通过就不会影响我们的训练使用。如果想要修改,则将src/caffe/test/test_smooth_L1_loss_layer.cpp文件的第11行#include <vision_layers.hpp>注释掉即可。
7. 测试demo
cd /home/username/py-faster-rcnn/data/scripts ./ fetch_faster_rcnn_models.sh
使用.sh下载,一般较慢,可以在这 http://pan.baidu.com/s/1jIcfmrO 密码:l8nb下载,解压到py-faster-rcnn/data文件下即可。
运行demo。
cd pt-faster-rcnn/tools ./demo.py