Faster-RCNN (1):py-faster-rcnn的安装和demo

系统环境:

系统:ubuntu 16.04 LTS

CUDA: 8.0

cudnn:5.1

OpenCV:3.4.1

本文假设你已成功安装上述环境并配置好了caffe,即完成caffe相关依赖的安装。

1. 下载py-faster-rcnn

$ git clone --recursive https://github.com/rbgirshick/py-faster-rcnn.git

我们将/PATH/TO/py-faster-rcnn/ 称为 FRCNN_ROOT/,则FRCNN_ROOT/下的文件及文件夹组织方式如下

FRCNN_ROOT/
├── caffe-fast-rcnn
├── data
├── experiments
├── lib
├── LICENSE
├── models
├── README.md
└── tools

2. 编译caffe-fast-rcnn

$ cd FRCNN_ROOT/caffe-faster-rcnn

注意:由于faster-rcnn没有与时俱进所以较高的cudnn不支持,因此我们将对应编译选项关闭。

$ cmake . -DUSE_CUDNN=OFF

根据 https://blog.csdn.net/hongbin_xu/article/details/76100132提供的cudnn解决方式处理cudnn不兼容问题,否则无法训练vgg16

  • 用最新版本的caffe源码目录中的如下文件替换py-faster-rcnn/caffe-fast-rcnn中的对应文件。
include/caffe/layers/cudnn_relu_layer.hpp, 
src/caffe/layers/cudnn_relu_layer.cpp, 
src/caffe/layers/cudnn_relu_layer.cu
include/caffe/layers/cudnn_sigmoid_layer.hpp, 
src/caffe/layers/cudnn_sigmoid_layer.cpp, 
src/caffe/layers/cudnn_sigmoid_layer.cu
include/caffe/layers/cudnn_tanh_layer.hpp, 
src/caffe/layers/cudnn_tanh_layer.cpp, 
src/caffe/layers/cudnn_tanh_layer.cu

  • 用caffe源码中的这个文件替换掉faster rcnn 对应文件
include/caffe/util/cudnn.hpp

  • 打开 py-faster-rcnn/caffe-fast-rcnn 中的 src/caffe/layers/cudnn_conv_layer.cu文件,并将:
cudnnConvolutionBackwardData_v3 
替换为 
cudnnConvolutionBackwardData
cudnnConvolutionBackwardFilter_v3 
替换为 
cudnnConvolutionBackwardFilter
$ cmake . 

$ make all –j16

$ make install

3. 编译lib

$ cd FRCNN_ROOT/lib

$ make

4. 下载与训练模型

放置FRCNN_ROOT/data下,完成后其文件组成如下

FRCNN_ROOT/data/
├── demo
├── faster_rcnn_models
├── pylintrc
├── README.md
└── scripts

5. 运行demo

$ cd FRCNN_ROOT/tools

$ python demo.py










猜你喜欢

转载自blog.csdn.net/qq_16951525/article/details/80982289
今日推荐