(二十二)论文阅读 | 目标检测之RepPoints


简介

在这里插入图片描述

图1:论文原文

论文是发表在 I C C V   2019 {\rm ICCV\ 2019} ICCV 2019上的基于 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free目标检测方法。前面我们提到, D C N {\rm DCN} DCN对应的感受野更能反应物体的表观特征,如下图是来自原论文中的配图:在这里插入图片描述

图2:DCN中相应的感受野

本论文作者利用这里一特性,将 D C N {\rm DCN} DCN与关键点检测结合,提出了 R e p P o i n t s ( R e p r e s e n t a t i v e   P o i n t s ) {\rm RepPoints}(Representative\ Points) RepPoints(Representative Points)。我们从上图可以观察到,关键点的集合可以大体反映出物体的表观特征。基于以上特性, R e p P o i n t s {\rm RepPoints} RepPoints通过这些关键点预测目标的类别和边界框,是一种 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free的目标检测方法。实验结果为 M S   C O C O {\rm MS\ COCO} MS COCO数据集上的 A P {\rm AP} AP 46.5 % {\rm 46.5\%} 46.5%论文原文 源码


0. Abstract

摘要部分指出,尽管边界框能帮助网络更有效地回归图像中目标的位置,但网络只能通过矩形框学习目标的粗糙位置(大多数物体并不是矩形的)。而本文提出的 R e p P o i n t s {\rm RepPoints} RepPoints首先在目标上采样一系列的点,然后通过采样点确定目标的类别及位置。由于采样结果往往能够反映出目标的表观特征,这种方法能产生更加精确的结果,且全程不需要先验框的参与。

论文贡献:(一)提出一种新的用于表征目标的形式,即使用采样点集合。该点集合不仅包含了目标的语义信息,也能够反映出目标的形状和姿态等;(二)实验证明了 R e p P o i n t s {\rm RepPoints} RepPoints比边界框的表现形式更加有效;(三)通过分类损失和回归损失共同优化了 D C N {\rm DCN} DCN的检测结果;(四)在目标检测算法上达到了 S O T A {\rm SOTA} SOTA


1. Introduction

在目标检测任务中,边界框是最基本的元素,它用于指导模型进行分类和回归。 有了边界框,模型可以在指定区域内提取特征,进而对该区域进行分类和回归。一方面可以避免反复处理整幅图像、造成计算量的增加;另一方面可以使模型进行有目标的学习。但同时边界框不能反映目标的表观,如目标的形状和姿态等。所以在基于边界框提取特征时,区域内的背景信息会影响最终的结果
在这里插入图片描述

图3:RepPoints

如上图, R e p P o i n t s {\rm RepPoints} RepPoints能够产生对目标更加精细的定位。通过一组自适应学习的点可以限制目标的空间范围,并指示目标的语义信息。 R e p P o i n t s {\rm RepPoints} RepPoints的训练通过真实框及其内部的目标类别共同驱动(由上图我们可以看到,在产生一系列的特征点后,一方面通过标注目标的类别进行有监督地辅助模型进行分类;另一方面通过真实框指导模型进行回归),这往往能产生更加精确的结果。这种方法可以轻易集成到不同目标检测方法中,且不用设置框的先验信息。

前面我们已经介绍过多种自下而上的,即基于关键点的目标检测算法。如 C o r n e r N e t {\rm CornerNet} CornerNet E x t r e m e N e t {\rm ExtremeNet} ExtremeNet C e n t e r N e t {\rm CenterNet} CenterNet等。这些方法识别出边界框的角点或目标的极值点,如 C o r n e r N e t {\rm CornerNet} CornerNet检测可能的边界框的左上角和右下角关键点、 C e n t e r N e t {\rm CenterNet} CenterNet检测目标的中心关键点、 E x t r e m e N e t {\rm ExtremeNet} ExtremeNet检测目标的极值点等。它们的检测思路仍类似于直接检测一个包围目标的边界框,没有体现所检测目标的表观特征。相反, R e p P o i n t s {\rm RepPoints} RepPoints以自上而下的方式从图像或特征图中学习语义信息,能够以端到端的方式进行训练。

初看上图由关键点生成边界框的过程,这和 E x t r e m e N e t {\rm ExtremeNet} ExtremeNet有点相似,下图是原论文的配图。 E x t r e m e N e t {\rm ExtremeNet} ExtremeNet为每个方向产生一幅热力图,分别用于预测不同边界上的关键点。然后列举出可能的边界框组合,并通过预测的中心关键点确定最后的预测结果。
在这里插入图片描述

图4:ExtremeNet


2. Related Work

使用边界框来表征目标的外观,一方面便于理解、几乎没有歧义,同时也能够为后续的定位过程提供足够多的位置信息。另一方面,边界框所界定的区域可以作为模型提取特征依据,即不用反复去处理整幅图像的内容而仅关注边界框内的区域。此外,尽管 R e p P o i n t s {\rm RepPoints} RepPoints以一种非常规的方式提取特征,但借助于 D C N {\rm DCN} DCN仍能够有效地提取目标的特征。 R e p P o i n t s {\rm RepPoints} RepPoints中生成的伪矩形框,可作为目标检测中目标新的表现形式。

当前,大多目标检测算法遵循多级检测流程:(1)自定义宽高和大小的 A n c h o r {\rm Anchor} Anchor作为边界框的定义空间;(2)通过某种机制初始筛选掉大部分的先验框;(3)精修并确定回归目标。 R e p P o i n t s {\rm RepPoints} RepPoints可以分别对应上述过程,首先使用中心关键点代替 A n c h o r {\rm Anchor} Anchor的设置(这与 C e n t e r N e t {\rm CenterNet} CenterNet的做法类似),其次先验框和回归目标也可被替代。注意到该过程没有使用有关框的先验信息, R e p P o i n t s {\rm RepPoints} RepPoints是一种的 A n c h o r {\rm Anchor} Anchor- F r e e {\rm Free} Free的目标检测算法。

目标检测中还存在其他表征目标的形式,以自下而上的方式。如早期的 D P M {\rm DPM} DPM P o s e l e t {\rm Poselet} Poselet等,最近的工作 C o r n e r N e t {\rm CornerNet} CornerNet E x t r e m e N e t {\rm ExtremeNet} ExtremeNet等。总的来说,自下而上的方法得益于一个小型假设空间(如 C o r n e r N e t {\rm CornerNet} CornerNet E x t r e m e N e t {\rm ExtremeNet} ExtremeNet通过检测二维点坐标完成整个检测流程,而非直接预测一个四维的框的信息),通常能够产生更精细的定位。但这种方法严重依赖于后处理过程,如如何有效地给关键点配对、如何判断生成的边界框是否有效等。与上述方法不同的是, R e p P o i n t s {\rm RepPoints} RepPoints是一种自上而下的检测方法,它可以自适应学习极值点和关键语义信息。

D C N {\rm DCN} DCN是近年来少有的比较扎实的检测工作,它通过学习一个偏移自适应地产生一个卷积掩模。产生的掩模可以有效地获取图像中目标的形状、姿态等外观信息,如下图是来自原文的配图:在这里插入图片描述

图5:DCN


3. The RepPoints Representation

3.1 Bounding Box Representation

边界框通常使用一个四维向量表示,如 B = ( x , y , w , h ) B=(x,y,w,h) B=(x,y,w,h)。多阶段检测器通过逐步精修预测结果,最终获得较为准确的预测结果,该过程可以概括为下图:在这里插入图片描述

图6:多阶段检测器的回归过程

首先,大量的 A n c h o r {\rm Anchor} Anchor密铺在特征图上,然后提取每个 A n c h o r {\rm Anchor} Anchor的特征并判断其是否含有目标。这个过程如上图中的 S 1 {\rm S1} S1所示。在第二个阶段,通常使用 R o I {\rm RoI} RoI池化或 R o I {\rm RoI} RoI- A l i g n {\rm Align} Align精细化提取的特征。对于两阶段检测算法,该特征作为最终的预测结果;对于多阶段检测算法,该特征作为下一阶段的输入。这个过程如上图中的 S 2 {\rm S2} S2所示。这上述整个过程中,边界框回归起着重要作用,通过边界框回归逐步产生更加精细化的定位信息和特征。

F a s t e r   R {\rm Faster\ R} Faster R- C N N {\rm CNN} CNN中的边界框回归过程为例,边界框的精修通过以下过程完成: B r = ( x p + w p Δ x p , y p + h p Δ y p , w p e Δ w p , h p e Δ h p ) B_r=(x_p+w_p\Delta x_p,y_p+h_p\Delta y_p,w_pe^{\Delta w_p},h_pe^{\Delta h_p}) Br=(xp+wpΔxp,yp+hpΔyp,wpeΔwp,hpeΔhp)

其中 Δ {\rm \Delta} Δ是学习的偏移参数,其定义如下: F ^ ( B p , B t ) = ( x t − x p w p , y t − y p h p , l o g w t w p , l o g h t h p ) \hat{F}(B_p,B_t)=(\frac{x_t-x_p}{w_p},\frac{y_t-y_p}{h_p},{\rm log}\frac{w_t}{w_p},{\rm log}\frac{h_t}{h_p}) F^(Bp,Bt)=(wpxtxp,hpytyp,logwpwt,loghpht)

上述边界框回归过程为当前大多目标检测算法使用。在边界框的精修幅度较小时,它的表现较好;但在边界框的回归距离较大时不能产生较好的结果。此外,各预测的偏移之间存在着天然的差异(边界框的中心坐标值和宽高值之间存在着某种差异),需要通过设定权重来消除这种内在的不平衡。

3.2 RePoints

通过以上说明,边界框只能够粗略地反映目标信息,不能表征目标的如形状、姿态等信息。 R e p P o i n t s {\rm RepPoints} RepPoints通过自适应产生一组关键点来消除上述影响。 R = { ( x k , y k ) } k = 1 n R=\{(x_k,y_k)\}_{k=1}^{n} R={(xk,yk)}k=1n

其中, n n n表示每个目标的采样点的个数,论文中设定为 9 9 9。同时,边界框的精修过程如下: R r = { ( x k + Δ x k , y k + Δ y k ) } n = 1 k R_r=\{(x_k+\Delta x_k,y_k+\Delta y_k)\}_{n=1}^{k} Rr={(xk+Δxk,yk+Δyk)}n=1k

其中, { ( Δ x k , Δ y k ) } k = 1 n \{(\Delta x_k,\Delta y_k)\}_{k=1}^{n} {(Δxk,Δyk)}k=1n是新采样点相当于旧采样点的偏移。(初始的采样点使用可变形卷积对目标中心的偏移产生,如一个 3 × 3 {\rm 3×3} 3×3的卷积相对于目标中心点可以产生 9 {\rm 9} 9个偏移量,得到的偏移位置作为初始采样点)接下来的步骤是如何通过采样点得到最后的检测边界框。 R e p P o i n t s {\rm RepPoints} RepPoints中定义了转换函数 T : R p → B p T:R_p\to B_p T:RpBp。其中转换函数又分为以下三种方式:

  • T = T 1 T=T_1 T=T1 最小最大函数,在 x x x y y y轴上执行最小最大操作,相当于使用采样点生成一个伪边界框。
  • T = T 2 T=T_2 T=T2 局部最小最大函数,在采样点的子集合上执行局部最小最大函数,确定生成伪边界框。
  • T = T 3 T=T_3 T=T3 基于动量的函数,利用采样点的均值和标准差计算确定边界框的中心点以及尺寸大小。

R e p P o i n t s {\rm RepPoints} RepPoints通过分类损失和回归损失进行学习。如上所述,通过 T T T计算回归损失。具体地,以左上角采样点和右下角采样点的 s m o o t h   l 1 {\rm smooth}\ l_1 smooth l1距离进行计算。


4. RPDet: an Anchor Free Detector

在这里插入图片描述

图7:RPDet

上图是基于 R e p P o i n t s {\rm RepPoints} RepPoints构建的目标检测器, R P D e t {\rm RPDet} RPDet。首先,和 Y O L O {\rm YOLO} YOLO D e n s e B o x {\rm DenseBox} DenseBox一样, R P D e t {\rm RPDet} RPDet使用中心点来表示一个物体。相比基于边界框表示物体的方法,它具有更小的假设空间(一个二维向量就可以确定一个物体而边界框至少需要一个四维向量)。但在两个物体的位置很接近时,即它们的中心点很接近时,以中心点表示物体可能会产生较大的歧义。 论文提出的解决办法是使用 F P N {\rm FPN} FPN,主要原因是:不同尺寸的目标将会被分配到金字塔的不同层,这时相近的中心点不会影响相应的处理; F P N {\rm FPN} FPN中较大分辨率的特征图用于检测小目标。剩下的情况便是两个尺度接近的目标的中心点在相近的位置,作者通过实验证明这种类型的目标占整个 C O C O {\rm COCO} COCO数据集的约 1.1 % {\rm 1.1\%} 1.1%

R P D e t {\rm RPDet} RPDet中,一组采样点通过两个步骤确定。首先在第一阶段,采样点通过回归中心点的偏移得到,主要基于以下两个方面监督:伪边界框与真实框的左上角和右下角顶点的距离损失(可以通过真实框约束采样点的位置在最终间的的边界框内);后续阶段的分类损失(可以通过类别约束采样点在最终检测的边界框内的前景位置上)。在第二阶段使用第一阶段产生的结果和采样点的距离损失来精修,得到最终的采样结果。

R P D e t {\rm RPDet} RPDet的骨干网络中共使用 5 {\rm 5} 5 F P N {\rm FPN} FPN,下采样倍数从 8 {\rm 8} 8 128 {\rm 128} 128,其检测头如下图:在这里插入图片描述

图8:RPDet的检测头

由上图可以得到, R P D e t {\rm RPDet} RPDet中的检测头是由两个分支组成。上一个分支用于产生定位,下一个分支用于检测类别,这与图 7 {\rm 7} 7的右端相对应。其中,两条分支均基于 D C N {\rm DCN} DCN,通过可变形卷积产生预测结果。

前面提到,最终的采样点通过两个阶段得到,在整个过程中只有正样本参与训练。在第一个阶段,正特征图 b i n {\rm bin} bin的定义是:该特征图 b i n {\rm bin} bin的特征层与真实框的对数尺度一致: s ( B ) = ⌊ l o g 2 ( w B h B / 4 ) ⌋ s(B)=\lfloor log_2(\sqrt{w_Bh_B}/4)\rfloor s(B)=log2(wBhB /4)

并且真实框中目标的中心投影位于该特征图 b i n {\rm bin} bin中。在第二个阶段,当采样点形成伪边界框同真实框的交并比大于 0.5 {\rm 0.5} 0.5时,则视其为正。对于分类而言,当采样点形成的伪边界框的同真实框的交并比大于 0.5 {\rm 0.5} 0.5时视为正,小于 0.4 {\rm 0.4} 0.4时视为背景。


5. Experiments

在这里插入图片描述

图9:RepPoints和边界框的实验结果对比

第一阶段的采样点通过分类损失和回归损失共同决定,下图展示了相关对比实验:

在这里插入图片描述

图10:采样点方式的实验结果对比

前面提到,使用中心点表示一个物体,下组实验在后续过程使用先验框和 R e p P o i n t s {\rm RepPoints} RepPoints的实验结果对比:

在这里插入图片描述

图11:Anchor-Based和Anchor-Free的实验结果对比

前面提到将采样点转换为伪边界框有三种不同的转换函数,下图展示了相关对比实验:

在这里插入图片描述

图12:转换函数的实验结果对比

在这里插入图片描述

图13:目标检测的实验结果对比


6. Conclusion

该论文将以边界框表示目标的传统方法转换成 R e p P o i n t s {\rm RepPoints} RepPoints,即具有代表性的点的集合。这些点的集合不仅包含了目标的语义信息,而且可以表征目标的外观特征。同时,借助 D C N {\rm DCN} DCN产生偏移点,并通过标注目标的位置信息和类别信息分两个阶段精修采样点,最终得到点的集合。

D C N v 1 {\rm DCNv1} DCNv1中,我们知道偏移的产生没有约束。在本文通过分类损失和回归损失来约束采样点的位置。一方面取得了 D C N {\rm DCN} DCN中有效提取感受野的优势,另一方面也避免了采样点过于离散化。论文给我们在目标检测中提供一个新的思路:以采样点的形式表示目标


参考

  1. Yang Z, Liu S, Hu H, et al. Reppoints: Point set representation for object detection[C]// Proceedings of the IEEE International Conference on Computer Vision. 2019: 9657-9666.
  2. https://www.zhihu.com/question/322372759.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值