RepPoints的设计思维非常奇妙,应用富含语义信息的点集来示意指标,并且巧用可变形卷积来进行实现,整体网络设计非常齐备,值得学习

起源:晓飞的算法工程笔记 公众号

论文: RepPoints: Point Set Representation for Object Detection

  • 论文地址:https://arxiv.org/abs/1904.11490
  • 论文代码:https://github.com/microsoft/RepPoints

Introduction


  经典的bounding box尽管有利于计算,但没有思考指标的形态和姿势,而且从矩形区域失去的特色可能会受背景内容或其它的指标的重大影响,低质量的特色会进一步影响指标检测的性能。为了解决bounding box存在的问题,论文提出了RepPoints这种新型指标示意办法,可能进行更细粒度的定位能力以及更好的分类成果。

  如图1所示,RepPoints是一个点集,可能自适应地突围指标并且蕴含部分区域的语义特色。RepPoints的训练由指标定位和指标分类独特驱动,可能束缚RepPoints紧紧地突围指标以及疏导检测器正确地分类指标。这种自适应的示意办法是可微的,可能间断地用在检测器的多个阶段中,并且不须要额定设置的anchor来生成大量的初始框。

The RepPoints Representation


  如下面提到的,bounding box只是粗粒度的指标地位示意办法,只思考了指标的矩形空间,没有思考形态、姿势以及语义丰盛的部分区域,而语义丰盛的部分区域可能帮忙网络更好的定位以及特征提取。为了解决上述的毛病,RepPoints应用一组自适应的采样点示意指标:

  $n$为示意指标的采样点总数,论文默认设置为9。

RepPoints refinement

  逐渐调整bounding box定位和特征提取是multi-stage检测器胜利的重要伎俩,对于RepPoints,调整可简略地示意为:

  $\{(\Delta x_k, \Delta y_k)\}^{n}_{k=1}$为预测的新采样点绝对与旧采样点的偏移值,采样点调整的尺寸都是一样的,不会像bouning box那样须要解决中心点坐标和边框长度的尺寸不统一问题。

Converting RepPoints to bounding box

  为了利用bounding box的标注信息进行训练以及验证RepPoint-based检测算法的性能,应用预设的转化办法$\mathcal{T}=\mathcal{R}_P\to \mathcal{B}_P$将RepPoints转化成伪预测框,共有三种转化办法:

  • $\mathcal{T}=\mathcal{T}_1$: Min-max function,对所有的RepPoints进行min-max操作来获取预测框$\mathcal{B}_p$
  • $\mathcal{T}=\mathcal{T}_2$:Partial min-max function,对局部的RepPoints进行min-max操作获取预测框$\mathcal{B}_p$
  • $\mathcal{T}=\mathcal{T}_3$:Moment-based function,通过RepPoints的均值和标准差计算中心点地位以及预测框尺寸失去预测框$\mathcal{B}_p$,尺寸通过全局共享的可学习参数$\lambda_x$和$\lambda_y$相乘失去

  这些函数都是可微的,可退出检测器中进行end-to-end的训练。通过试验验证,这3个转化办法成果都不错。

RPDet: an Anchor Free Detector


  论文基于RepPoints设计了anchor-free指标检测算法RPDet,蕴含两个辨认阶段。因为可变形卷积可采样多个不规则散布的点进行卷积输入,所以可变形卷积非常适宜RepPoints场景,可能依据辨认后果的反馈进行采样点的疏导。

Center point based initial object representation

  RPDet将中心点作为初始的指标示意,而后逐渐调整出最终的RepPoints,中心点也可认为是非凡的RepPoints。当两个指标存在于特色图同一地位时,这种基于中心点的办法通常会呈现辨认指标歧义的问题。此前的办法在同一地位设置多个预设的anchor来解决此问题,而RPDet则利用FPN来解决此问题:

  • 不同大小的指标由不同level的特色负责辨认
  • 小物体对应level的特色图个别较大,缩小了同一物体存在同一地位的可能性

  论文统计发现,当应用上述FPN束缚后,COCO数据集中仅1.1.%存在上述的问题。

Utilization of RepPoints

  如图2所示,RepPoints是RPDet的根底指标示意办法,从中心点开始,第一组RepPoints通过回归中心点的偏移值取得。第二组RepPoints代表最终的指标地位,由第一组RepPoints优化调整失去。RepPoints的学习次要由两个指标驱动:

  • 伪预测框和GT框的左上角点和右上角点的间隔损失
  • 后续的指标分类损失

  第一组RepPoints由间隔损失和分类损失疏导,第二组RepPoints仅应用间隔损失进行疏导,次要为了学习到更精准的指标定位。

Backbone and head architectures

  FPN骨干网络蕴含5层特色金字塔level,从stage3(下采样8倍)到stage7(下采样128倍)。Head的构造如图3,Head在不同的level中是共享的,蕴含两个独立的子网,别离负责定位(RepPoints的生成)和分类:

  • 定位子网首先应用3个256-d $3\times 3$卷积提取特色,每个卷积都接group normalization层,而后间断接两个小网络计算两组RepPoints的偏移值。
  • 分类子网首先应用3个256-d $3\times 3$卷积提取特色,每个卷积都接group normalization层,而后将定位子网输入的第一组RepPoints的偏移值输出到256-d $3\times 3$可变形卷积中进一步提取特色,最初输入分类后果。

  只管RPDet采纳了两阶段定位,但其性能甚至比单阶段的RetinaNet要高,次要是anchor-free的设计使得分类层的计算缩小了,笼罩了额定的定位阶段带来的大量耗费。

Localization/class target assignment

  定位蕴含两个阶段,第一阶段从中心点失去第一组RepPoints,第二阶段则从第一组RepPoints调整失去第二组RepPoints,不同的阶段的正样本定义不同:

  • 对于第一阶段,特色点被认为是正样本需满足:1) 该特色点所在的特色金字塔level等于$s(B)=\lfloor log_2 (\sqrt{W_Bh_B}/4)\rfloor$。2) 指标的中心点在特色图上映射地位对应该特色点。
  • 对于第二阶段,只有特色点对应的第一阶段产生的伪预测框与指标的IoU大于0.5才被认为是正样本。与以后的anchor-based办法有点相似,将第一阶段的输入当作anchor。

  因为指标的分类只思考第一组RepPoints,所以,特色点对应的第一组RepPoints产生的伪预测框于指标的IoU大于0.5即认为是正样本,小于0.4则认为是背景类,其它则疏忽。

Experiments


  比照不同的伪预测框生成办法的性能。

  与其它SOTA检测办法比照性能。

Conclusion


  RepPoints的设计思维非常奇妙,应用富含语义信息的点集来示意指标,并且巧用可变形卷积来进行实现,整体网络设计非常齐备,值得学习。



如果本文对你有帮忙,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】