首先我的系统环境是Ubuntu 16.04+cuda 8.0+cudnn 6.0,显卡是NVIDIA GTX 1080Ti,安装这些的具体安装网上一堆,我这里就不赘述了。
项目是RGB和任少卿大神的实作,感谢大神为我们提供的优秀开源代码!
1.1下载faster rcnn
打开终端,输入:
git clone --recursive https://github.com/rbgirshick/py-faster-rcnn.git
解释:下载项目代码,recursive是递归下载,保证完整clone下来代码。
1.2下载caffe
上个操作之后,在终端输入:
git clone --recursive https://github.com/BVLC/caffe.git
(认真读)解释:其实在faster rcnn里自带caffe框架,那我们为什么还要下载原版最新的caffe呢?原因是我们需要替换faster rcnn中caff框架的部分旧cudnn文件,因为RGB大神的caffe用的是cudnn 4.0(总之就是和我们的cudnn不匹配,我的是cudnn 6.0),具体操作之后会说。
在终端打开你项目地址:
cd /你的项目所在位置/py-fater-rcnn #事实上,你在任何位置都可以安装apt-get install 命令的包,它是直接安装到系统里的
输入:
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler libhdf5-dev
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
注意:如果提示某个包无法定位完成安装,请使用搜索引擎检索安装,是否试试pip命令,换一下镜像源,下载好安装包安装,等等。
3.1编译faster rcnn
cd py-faster-rcnn/lib
make -j8
解释:编译faster rcnn 项目代码,-j8参数可加可不加,显卡好就加上,并行计算的参数,加上速度快!
3.2编译caffe
输入:
cd py-faster-rcnn/caffe-fast-rcnn
cp Makefile.config.example Makefile.config
3.2.1更改Makefile.config文件:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
后面加上 \ /usr/include/hdf5/serial/
即下图:
改成这样:
另一个:
USE_CUDNN := 1 前面去掉# 取消注释
WITH_PYTHON_LAYER := 1 前面去掉# 取消注释
3.2.2打开Makefile文件:
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
解释:修改这两个文件是为了避免这些错误,hdf5相关错误,提示找不到
3.2.3替换cudnn文件
1>将/py-faster-rcnn/caffe-fast-rcnn/include/caffe/util/cudnn.hpp 换成最新版的caffe里的cudnn的实现,即相应的cudnn.hpp
2>将/py-faster-rcnn/caffe-fast-rcnn/src/caffe/layers里的,所有以cudnn开头的文件(我这里是16个)都替换成最新版的caffe里的相应的同名文件
3>将./include/caffe/layers的,所有以cudnn开头的文件(我这里是8个),都替换成最新版的caffe里的相应的同名文件
如下图:
图 1
图 2
图 3
发生的错误:
make: *** [.build_release/src/caffe/common.o] Error 1
make: *** [.build_release/src/caffe/util/db.o] Error 1 以及下图错误,等等
3.2.4编译caffe
make -j8 && make pycaffe
在/py-faster-rcnn/data下面新建文件夹faster_rcnn_models和VOCdevkit2007
把下载好的VGG16_faster_rcnn_final.caffemodel、ZF_faster_rcnn_final.caffemodel模型放到faster_rcnn_models下
把下载好的voc2007文件夹放到VOCdevkit2007下
下载地址:
模型地址 https://pan.baidu.com/s/1hsxx8OW #********如果失效的话请自行下载********
voc2007地址 https://pan.baidu.com/s/1mhMKKw4 #********如果失效的话请自行下载********
输入:
./tools/demo.py
检测结果如下:
https://blog.csdn.net/u010548772/article/details/77871605###;
https://blog.csdn.net/u012841667/article/details/53436615
https://blog.csdn.net/bbzz2/article/details/55261492
https://blog.csdn.net/dcxhun3/article/details/52923310
一直想写这个教程,很开心和大家一起分享我的工作,一起努力哦,吼吼~