RON: Reverse Connection with Objectness Prior Networks for Object Detection 论文笔记

前言

  • region-based目标检测方法:比如Fast R-CNN和Faster R-CNN,检测精度较高,并且RPN能够去除一些背景样本,但资源和时间消耗太大;
  • region-free目标检测方法,比如SSD和YOLO,它们的检测效率很高,但检测精度却略有不足,由于没有RPN对负样本进行过滤,正负样本的比例严重失衡。而且YOLO只利用最后一层进行检测,而SSD虽然利用了较浅的层的结果,但仍无法准确地检测小目标。

为了结合region-based和region-free方法的优点,本文提出RON(Reverse connection with Objectness prior Networks),它主要关注两个方面的问题:

  1. 多尺度目标定位。通过逆向连接(reverse connection)将更多的语义信息传递给较浅的层,使得目标能够在对应的网络尺度上进行检测;
  2. 负样本挖掘。在卷积特征图上创建objectness prior,以减少目标的搜索空间,从而解决正负样本间的不平衡问题。

网络结构

RON的整体结构如下图所示:
在这里插入图片描述
使用VGG-16作为backbone,VGG-16共有13个卷积层和3个全连接层,将FC6(第14层)和FC7(第15层)转换为卷积层,使用步长为2,大小为 2 × 2 2 \times 2 2×2的卷积对FC7进行2倍的下采样。那么这样就能得到原图大小的1/8(conv 4_3),1/16(conv 5_3),1/32(conv 6)和1/64(conv 7)的特征图,使用这些特征图进行目标检测。

1. reverse connection(逆向连接)

在这里插入图片描述
逆向连接块如上图所示,逆向连接的过程如下:

  • 首先将reverse fusion map(rf-map) n + 1 n+1 n+1经过一个解卷积层;
  • 将conv n经过一个卷积层,以使二者拥有相同的维度;
  • 通过element-wise相加将这两个map结合起来。

注意,最后一个rf-map 7其实就是backbone中conv 7输出的特征图,然后就逐层向前融合,浅层的语义信息也会因此得到加强。

2. 如何在网络的不同尺度上生成候选框

在经过逆向连接生成不同尺度的特征图后,作者为每个特征图设计了不同大小的候选框,以预测特定尺度的目标。设最小的尺度为 s m i n s_{min} smin s m i n s_{min} smin是输入图像大小的 1 10 \frac{1}{10} 101),那么特征图 k k k上的候选框大小 S k S_k Sk为:

在这里插入图片描述
候选框共有5种长宽比: { 1 3 , 1 2 , 1 , 2 , 3 } \lbrace \frac{1}{3},\frac{1}{2},1,2,3 \rbrace {31,21,1,2,3},因此,每个特征图上共有2种尺度和5种长宽比的候选框,也就是说特征图的每个位置上共有10个候选框。这样就可以覆盖不同大小和形状的目标了。

3. objectness prior

虽然每个特征图上有不同尺度和不同长宽比的候选框,但只有一小部分候选框能够覆盖目标,也就是说,正负样本间存在严重的不平衡。为了解决这个问题,本文提出objectness prior,用于指导对目标的搜索。具体来说就是,添加了一个 3 × 3 × 2 3 \times 3 \times 2 3×3×2的卷积层,后跟softmax函数,以判断每个候选框中是否有目标。
在这里插入图片描述
上图说明了从一张输入图像中生成多尺度objectness prior map,可以看到,沙发在(a)和(b)被响应,黄狗在(c)被响应,斑点狗在(d)被响应,也就是说,不同大小的目标在它们对应的特征图上被响应。可以看到,objectness prior map能够明确反映出目标的存在,因此目标的搜索空间也就减小了。

4. 分类与回归

本文在分类分支中添加inception模块,inception模块的结构如下图所示。在通过逆向连接得到多尺度特征图后,在每个特征图后添加两个inception模块,然后将输出通过softmax层,得到分类分数。
在这里插入图片描述
整个检测模块的结构如下图:
在这里插入图片描述

5. 如何利用objectness prior进行检测

在训练时,首先为每个候选框分配一个二值标签,表示该候选框中是否有目标存在。如果某个候选框覆盖了一个目标,就为该候选框分配一个类别标签。

在选择正样本的时候,主要有以下两个步骤:

  1. 对于每个gt box,首先将IoU最大的候选框与该gt进行匹配;
  2. 然后对于剩下的候选框,它与哪个gt box的IoU大于0.5,就将它们进行匹配。

在选择负样本的时候,如果某候选框与任何gt box的IoU都小于0.3,就将其作为负样本。

这样的话,每个候选框都有其二值标签和类别标签。通过将检测与objectness prior相结合,候选框的类别标签是会被网络进行动态更新的,

  • 在前向传播时, objectness prior和检测是同时进行的;
  • 在后向传播时, 先生成objectness prior,选择那些objectness score高于阈值 o p o_p op的样本,然后进行检测,这样的话,就可以仅用一小部分样本来更新检测模块。

在这里插入图片描述
上图说明了如何将objectness prior与检测相结合,首先根据 o p o_p op对objectness prior进行二值化,也就是分为“高于 o p o_p op”/”低于 o p o_p op“两部分,上图中亮斑部分就是objectness score高于 o p o_p op的部分,然后将这个亮斑,也就是mask投影到检测域中,位于mask之内的样本用于检测目标。


结论

RON利用逆向连接构建多尺度特征图,将高层的语义信息传递到浅层特征图中,感觉很像FPN中的横向连接。objectness prior的作用是实现正负样本间的平衡。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值