Detection:faster rcnn

从ssd看过来。

fast rcnn主要解决了proposal之间的特征共享,原先selective search在图像上产生的2000个proposal要分别输入分类网络里过一遍,不可避免的产生了巨大计算资源浪费。在fast rcnn中利用reception field,先将整个图片过网络,得到fm后不同proposal对应到fm上就得到各自的特征。这样计算瓶颈就到了selective search上,faster rcnn主要解决了这个问题,利用rpn网络代替selective search。

RPN网络

region proposal network,作用是代替selective search产生proposal。在base net(比如vgg16)的最后一层的fm上选取n*n大小patch(文章里n=3),做3*3卷积变成一个12维列向量(512个fm),再分别过两个个1*1卷积层,一个产生2k个score(有物体或者背景),一个产生4k个坐标偏移来对应anchor,k是每个点上anchor的数量(为9)。


anchor

(1)vgg最后fm上每个点都对应9个anchor,这里并不是严格按照reception field对应。也就是总共有w*h*k个anchor。

(2)选取9个anchor,是为了多尺度。传统做多尺度是把原图或者filter做多尺度,对于cnn来说带来的计算负担是不可接受的。所以这里取巧了对anchor做了多尺度,现在也已经有多尺度的相关工作(Feature Pyramid Networks for Object Detection)。


损失函数

图片

其中normalization不是必要的且可以调整,最终结果对于 lan的变化不敏感。


训练方法

文章中用了四步。首先用pre-trained vgg训练rpn网络,其次用rpn的proposal训练fast rcnn,第三用fast rcnn fine-tune的网络训练rpn,这样两者可以共享权值,最后固定卷积层finetune fast rcnn特有层。

代码里给出的是approximate joint training,就是rpn和fast rcnn一起更新,但是rpn的梯度传不到前面卷积层,这样相当于做了一次近似。non-approximate joint training用roi-warping层将rpn的梯度传到前面,但是没给出代码。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值