《RepPoints》论文笔记

论文地址:https://arxiv.org/pdf/1904.11490.pdf

E0854J.png


研究背景

在目标检测的pipeline中,Bounding Boxes,包含图片的矩形区域。在目标检测器的阶段中,Bounding Boxes负责描述目标的位置,从anchors到proposals再到最终的预测框。

虽然边界框便于计算,但是它们仅提供了目标的粗略位置,没有覆盖目标的形状和姿态。因此从边界框的标准单元格中提取出来的特征可能会受到背景内容或者包含少量语义信息的前景区域的影响。这将会导致降低特征质量,从而损害目标检测的分类能力。

本文提出一种新的表示方法,称为RepPoints。它提供了更细粒度的定位和更方便的分类。

E08T3R.png

正如图1所示,RepPoints就是一组学习自适应地将自己置于目标智商的点,其方式限定了目标的空间范围,并表示重要的语义局部区域。RepPoints的训练由目标定位和识别一起驱动。因此,RepPoints和Groudtruth的边界框紧密相关,并引导检测器正确地分类目标。

RepPoints不同于存在的用于目标检测的非矩形表示,它们是通过自底向上的方式构建的。这些自底向上的表示会识别出各个点(例如边界框的corners或者目标极值点)。此外,它们的表示要么像边界框那样仍然是轴对齐的,要么需要 ground truth 对象掩码作为额外的监督。

相反,RepPoints通过自顶向下的方式进行学习,从输入图像/对象特征中学习,允许端到端的训练,并在不需要额外监督的情况下产生细粒度的定位。

为了证明RepPoints表示的强大能力,我们提出了一种基于可形变ConvNets框架的实现,在保证特征提取方便的同时,提供了适合指导自适应采样的识别反馈。

在不使用多尺度训练和测试的情况下,我们的检测器在COCO benchmark上实现了42.8的AP和65.0的AP50.虽然没有打败所有的anchor-free的方法但是也与最先进的基线模型相当。

相关背景

在现代目标检测器中,标注框表示几乎存在于所有的阶段:

1) 作为预定义的锚点,作为边界框空间的假设

2)作为连接后续识别阶段的修正的object proposals

3)作为最终定位目标

RepPoints 表示

Bounding Box表示

边界框是一个4维的表示,用来编码一个目标的空间位置。B=(x, y, w, h), x,y表示中心点,w,h表示宽度和高度。

性能最好的目标检测器经常遵循一个多阶段的识别模式,目标定位会逐阶段的进行修正。整个pipeline过程中的目标表示的角色为:

E08hEF.png

对于一个anchor来说,采用中心点的图像特征作为对象特征,可以用来产生一个关于这个anchor是否是目标的置信度分数,并且通过边界框回归处理来得到一个调整过的边界框。调整过的边界框表示为”box proposals(S1)“

在第二阶段,通过RoI pooling或者 RoI-Align从修正过的边界框内提取修正的目标特征。对于两阶段的框架来说,修正的特征将通过边界框回归产生最终的边界框目标。对于多阶段方法来说,修正的特征用来产生中间的修正边界框Bounding box proposals(S2)。这一步可以在产生最终边界框目标前迭代多次。

边界框回归

一个4维的回归向量(△$x_p$, △$y_p$, △$w_p$, △$h_p$)预测来将现在的边界框Bp=($x_p, y_p, w_p, h_p$)映射到一个修正后的边界框Br,

E08WHU.png

给定一个目标的gt边界框Bt=($x_t, y_t, w_t, h_t$),边界框回归的目标就是让$B_r$和$B_t$尽可能的接近。在目标检测器训练过程中,我们使用$F(B_p, B_t)$作为学习目标,使用smooth l1损失:
E08RBT.png

这种边界框回归在需要的调整较小的时候效果比较好,但是当最初的表示和目标距离较大的时候表现一般。另一点是△x, △y, △w, △h的尺度不同,需要设置不同的损失权重。

RepPoints

如前所示,4-d边界框是目标位置的一个粗略表示。边界框表示只考虑目标的矩形空间范围,而不考虑形状、姿势和语义上重要的局部区域的位置,这些位置可用于更好的定位和更好的目标特征提取。
为了克服以上限制,RepPoints对一组自适应的样本点建模:

E084N4.png

n表示用于表示的样本点的总数。在本文中,n默认设置为9.

RepPoints refinement

对于RepPoints来说,修正过程可简单表示为:

E08oC9.png

这个修正过程不会面临尺度不同的问题,因为RepPoints的修正过程所有偏移量尺度是相同的。

通过将RepPoints转为边界框

通过预定义的转换函数T: $R_p -> B_p$, Rp表示目标P的RepPoints, $T(R_p)$表示伪框(pseudo box)。
有三种转换函数:

  • T = $T_1$: Min-max函数。沿RepPoints的对称轴检测Bp
  • T = $T_2$:Partial min-max 函数。在采样点的子集上进行min-max操作
  • T = $T_3$:Moment-hased 函数。通过RepPoints的平均值和二阶矩来计算中心点和矩形框的大小$B_p$,尺度大小是由全局共享的$λ_x$和$λ_y$相乘得到。

Learning RepPoints

RepPoints的学习是由目标定位损失和目标识别损失共同驱动的。为了计算目标定位损失,我们首先将RepPoints转换为伪框,通过上面讨论的转换函数T。然后,计算转换后的伪框与gt框的差异。在本文中,使用top-left和bottom-right间的smooth l1距离表示定位损失。

图三显示,当训练由目标定位损失和目标识别损失组合驱动时,目标的极值点和语义关键点可以自动学习。
E08LDK.png

RPDet: Anchor-Free的检测器

使用RepPoints来代替边界框作为目标检测的基本表示。目标表示的变化如下:

E035lt.png

RPDet由基于可形变卷积的两个识别阶段组成,如图2所示。

E08Hjx.png

可变形卷积与RepPoints很好地配对,因为它的卷积是在非规则分布的样本点集上计算的,相反,它的识别反馈可以指导训练这些点的定位。

基于目标表示的中心点

本文采用YOLO和DenseBox使用的方法,采用中心点当做目标的初始表示。

与基于锚点的对应物相比,中心点表示的一个重要好处在于其更紧密的假设空间。基于anchor的方法经常需要依赖于大量的长宽比和尺度来保证一个巨大的4-d的密集边界框假设空间,基于中心点的方法能更容易地覆盖它的2-d空间。

基于中心点的方法同样也面临着现代目标检测器的一些问题。一个是一个特征图上两个不同的目标可能在相同的位置,导致识别目标的歧义。在RPDet这几篇每个。通过使用FPN解决该问题,原因是:首先,不同大小的目标会分配到不同的特征层,可以解决不同尺度大小的目标拥有相同中心点位置的问题。第二,FPN对于小目标有高分辨率的特征图,减少了两个目标中心点位置相同的该利率。事实上,COCO数据集上只有1.1%的可能性中心点位置相同当FPN使用的时候。

另一个问题是基于中心点的问题很难预测准确的目标位置,因为物体空间范围的巨大变化。在本文中,通过RepPoints表示和有效的RepPoints refinement可以有效解决这个问题。

值得注意的是,中心点表示可以被视为特殊的RepPoints配置,其中仅使用单个固定的采样点,从而在整个提出的检测框架中保持一致的表示。

RepPoints的使用

正如图2所示,本文的检测系统中RepPoints作为基本的目标表示。这些Reppoints通过两个目标驱动学习:

  • 生成的伪框和标注框的top-left和bottom-right点之间的距离。
  • 后续阶段的物体识别损失。

    正如图3所示,Extreme和key points都是自动学习的。

其他细节

FPN结构产生5个特征金字塔,从stage3(下采样率为8)到stage7(下采样率为128),对于一个宽$w_b$,高$h_b$的框B,它对应于金字塔level $lvl(B)$, 对每个gt框$B_t$, 我们将它的中心点投影到每个层次level l上(l=3,4,5,6,7)。投射后表示为$q_l$。 $q_{lvl(Bt)}$表示为正样本,$q_{lvl(Bt)-1}$和$q_{lvl(Bt)+1}$ 表示为ignore bin。其他的置为负样本。

E087g1.png

实验结果

E08OHO.png

从表 1 可以看出,将目标表示从边界框变为 RepPoints,可以带来一定程度的性能提升,如使用 ResNet-50 作为主干网络时提升了 2.1 mAP,使用 ResNet-101 时提升了 2.0 mAP。这表明相对于边界框,RepPoints 表示在对象检测方面具有优势。

E08qu6.png

图三表示使用基于中心点的方法超过基于anchor的方法1.4个mAP。

E08jED.png

如表 7 所示,在没有 multi-scale 训练和测试的情况下,所提出的框架使用 ResNet-101-DCN 主干网络实现了 42.8 AP,与基于 anchor 的 Cascade R-CNN 方法相当,性能优于现有的所有不采用 anchor 的检测器。此外,RPDet 获得了 65.0 的 AP₅₀,大大超过了所有基线。