运行Fast R-CNN的代码

CAFFE深度学习交流群:532629018

运行Fast R-CNN的代码

标签(空格分隔): vision

FR-CNN是Ross Girshick的新作,从文章来看FR-CNN比R-CNN和SPPNet都快很多。当然R-CNN和SPPNet也都是Girshick的作品,FR-CNN的正确率不仅超越Girshick自己的嫡出,也超过了DPM等其他方法。

FR-CNN正如文章所说的是一个简单,并且Elegant的框架。和那些Pipeline的模型相比,的确是优雅很多的。当然FR-CNN本身也可以看作是一个Pipeline,只不过这个Pipeline只有两个步骤,一是Pretrain的CNN,第二个是Region Pooling和Fully connected Network(FC)。

我认为优雅之处在于:

  • 文章采用了多目标的函数,所以把分类问题和Localization问题一起解决了。
  • 最终的目标函数可以用于Fine tune Pretrained CNN (当然也不是每一层都能Train)。这样看起来就是一个统一的框架了。

Contents

  1. Basic system information
  2. Basic Hardware info

Basic Hardware info

  1. For training smaller networks (CaffeNet, VGG_CNN_M_1024) a good GPU (e.g., Titan, K20, K40, …) with at least 3G of memory suffices
  2. For training with VGG16, you’ll need a K40 (~11G of memory) 
    目前的GPU只有GTX750i,显存只有2G,按照说明如果要使用GPU至少要3G的显存。所以只能在CPU上面Run这个代码。

Basic system information

使用Ubuntu Linux 14.04桌面版:

~$ uname -a
Linux cis-ubuntu-1 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
 
 
  • 1
  • 2
  • 1
  • 2

需要安装的基础软件

可能你的机器上没有cython, easydict

sudo pip install cython
sudo pip install easydict
 
 
  • 1
  • 2
  • 1
  • 2

安装Opencv

按照这个网页的方法: 
http://www.samontab.com/web/2014/06/installing-opencv-2-4-9-in-ubuntu-14-04-lts/

最后测试一下Python

python ~/opencv-2.4.9/samples/python2/turing.py
 
 
  • 1
  • 1

courtesy of www.samontab.com

安装Caffe (berkeley开发的一个Deep Learning的框架)

参考:我的安装Caffe的过程


安装 Fast R-CNN

  1. 下载源代码:
git clone --recursive https://github.com/rbgirshick/fast-rcnn.git
 
 
  • 1
  • 1

下载代码的目录,命名为$FRCN_ROOT。

  1. 编译Cython:
cd $FRCN_ROOT/lib
make
 
 
  • 1
  • 2
  • 1
  • 2
  1. 编译Caffe and pycaffe:
cd $FRCN_ROOT/caffe-fast-rcnn
cp Makefile.config.example Makefile.config   #用例子文件作为模板
vi Makefile.config  # 按照你的机器设置进行修改。
make -j8 && make pycaffe
 
 
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4
  1. 下载pre-computed Fast R-CNN detectors 
    大概985M, 用了一个小时。
cd $FRCN_ROOT
./data/scripts/fetch_fast_rcnn_models.sh
 
 
  • 1
  • 2
  • 1
  • 2

运行演示

cd $FRCN_ROOT
./tools/demo.py --cpu
 
 
  • 1
  • 2
  • 1
  • 2

碰到的问题:

  1. 错误: ImportError: No module named skimage.io
sudo pip install scikit-image
 
 
  • 1
  • 1
  1. 错误: ImportError: No module named google.protobuf.internal
sudo find / -name protobuf   
/usr/include/google/protobuf  # 只有C版本的protobuf
apt-get install python-protobuf
 
 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

然后终于可以运行了。 
在AMD的机器上,500×406的街景图片,用来63秒。(还不包括Selective Search计算Proposal的部分,因为这部分是事先计算好的。)

运行的结果看起来还不错,对路边的车辆都能识别出来。 
运行结果

对代码还有很多不明白之处(150523)。

  1. 为什么安装好了Caffe以后,安装Fast R-CNN的时候,还需要make caffe?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值