FCOS:Fully Convolutional One-Stage Object Detection

摘要

我们提出了一种完全卷积的单级目标检测器(FCOS),以类似于语义分割的逐像素预测方式解决目标检测问题。几乎所有最先进的目标检测器,如 RetinaNet、SSD、YOLOv3 和 Faster R-CNN 都依赖于预定义的锚框。相比之下,我们提出的检测器 FCOS 是无锚盒的,也无提议的。通过消除预定义的一组锚框,FCOS 完全避免了与锚框相关的复杂计算,例如在训练过程中计算重叠。更重要的是,我们还避免了所有与锚框相关的超参数,这些超参数通常对最终检测性能非常敏感。凭借唯一的后处理非极大值抑制 (NMS),采用 ResNeXt-64x4d-101 的 FCOS 在单模型和单尺度测试的 AP 中实现了 44.7%,超越了之前的一级检测器,优势在于更简单。我们第一次展示了一个更简单灵活的检测框架,可以提高检测精度。我们希望提出的 FCOS 框架可以作为许多其他实例级任务的简单而强大的替代方案。

1.简介

对象检测是计算机视觉中一项基本但具有挑战性的任务,它需要算法为图像中每个感兴趣的实例预测一个带有类别标签的边界框。目前所有主流检测器如 Faster R-CNN [24]、SSD [18] 和 YOLOv2、v3 [23] 都依赖于一组预定义的锚盒,长期以来一直认为锚框的使用是探测器的成功的关键。尽管取得了巨大的成功,但重要的是要注意,基于锚的检测器存在一些缺点:1)如 [15, 24] 所示,检测性能对锚框的大小、纵横比和数量敏感。例如,在 RetinaNet [15] 中,改变这些超参数会在 COCO 基准测试 [16] 上影响 AP 中高达 4% 的性能。因此,这些超参数需要在基于锚的检测器中仔细调整。 2)即使经过精心设计,由于锚框的比例和纵横比保持固定,检测器在处理形状变化较大的对象候选时遇到困难,特别是对于小对象。预定义的锚框也妨碍了检测器的泛化能力,因为它们需要针对具有不同对象大小或纵横比的新检测任务进行重新设计。 3)为了实现高召回率,需要基于锚的检测器在输入图像上密集放置锚框(例如,特征金字塔网络(FPN)[14]中超过 180K 的锚框用于具有短边为 800)。大多数这些锚框在训练期间都被标记为负样本。过多的负样本加剧了训练中正负样本之间的不平衡。 4)锚框还涉及复杂的计算,例如计算与真实边界框的交集(IoU)分数。
最近,全卷积网络 (FCN) [20] 在语义分割 [20, 28, 9, 19]、深度估计关键点检测 [3] 和计数 [2] 等密集预测任务中取得了巨大成功。作为高级视觉任务之一,目标检测可能是唯一偏离整洁的全卷积每像素预测框架的任务,这主要是由于使用了锚框。自然会问一个问题:我们能否以简洁的逐像素预测方式解决对象检测问题,类似于 FCN 的语义分割?还有这些基本的视觉任务是否可以(几乎)统一在一个框架中?我们证明答案是肯定的。此外,我们首次证明,更简单的基于 FCN 的检测器比基于锚框的检测器实现了更好的性能。

在文献中,一些工作试图利用基于FCN的框架进行对象检测,如DenseBox[12]。具体地说,这些基于FCN的框架直接预测一个4D矢量加上一个类别,在一个特征地图级别上的每个空间位置。如图1(左)所示,4D矢量描述了从边界框的四个边到位置的相对偏移。这些框架类似于用于语义分割的FCN,只是每个位置都需要回归4D连续向量。另外,为了处理不同大小的边界框,DenseBox[12]会裁剪训练图像并将其调整为固定比例。因此,DenseBox必须对图像金字塔进行检测,这违反了FCN一次计算所有卷积的哲学。此外,更重要的是,这些方法主要用于特殊领域的对象检测,如场景文本检测[33,10]或人脸检测[32,12],因为人们认为这些方法在应用于具有高度重叠边界框的一般对象检测时效果不佳。如图1(右)所示,高度重叠的边界框会导致难以解决的模糊性:对于重叠区域中的像素,不清楚要回归哪个边界框。如图 1(右)所示,高度重叠的边界框会导致难以处理的歧义:w.r.t 不清楚。对于重叠区域中的像素,要回归哪个边界框。图 1 – 如左图所示,FCOS 通过预测 4D 向量 (l, t, r, b) 来工作,该向量对每个前景像素处的边界框位置进行编码(在训练期间由 ground-truth 边界框信息监督)。右图显示,当一个位置位于多个边界框中时,就该位置应该回归哪个边界框而言,它可能是模棱两可的。
图 1 – 如左图所示,FCOS 通过预测 4D 向量 (l, t, r, b) 来工作,该向量对每个前景像素处的边界框位置进行编码(在训练期间由 ground-truth 边界框信息监督)。右图显示,当一个位置位于多个边界框中时,就该位置应该回归哪个边界框而言,它可能是模棱两可的。
之后,我们仔细研究了这个问题,并表明使用 FPN 可以在很大程度上消除这种歧义。因此,我们的方法已经可以获得与那些传统的基于锚框的检测器相当的检测精度。此外,我们观察到我们的方法可能会在远离目标对象中心的位置产生许多低质量的预测边界框。为了抑制这些低质量的检测,我们引入了一种新的“中心”分支(只有一层)来预测像素与其相应边界框中心的偏差,如公式 11 中所定义。 (3)。然后使用这个分数来降低低质量检测到的边界框的权重,并在 NMS 中合并检测结果。简单而有效的 center-ness 分支允许基于 FCN 的检测器在完全相同的训练和测试设置下优于基于锚的检测器。
这种新的检测框架具有以下优点

• 检测器现在与许多其他 FCN 能够解决的任务(如语义分割)相统一,从而更容易重用来自这些任务的想法。

• 检测变得无提案和无锚框,这显着减少了设计参数的数量。设计参数通常需要启发式调整,并且涉及许多技巧以实现良好的性能。因此,我们的新检测框架设计的检测器,尤其是它的训练,变得相当简单。

• 通过消除anchor box,我们的新检测器完全避免了与anchor box相关的复杂计算,例如训练过程中的IOU计算以及anchor box和ground-truth box之间的匹配,从而加快了训练和测试速度,并且相比于anchor-based还减少了内存的占用。

• 没有花里胡哨,我们在单阶段检测器中实现了最先进的结果。我们还表明,所提出的 FCOS 可以用作两阶段检测器中的区域建议网络(RPN),并且可以实现比基于锚框的 RPN 对应物更好的性能。锚框目前被认为是检测器的标准配置,鉴于更简单的无锚框检测器具有更好的性能,我们鼓励社区重新考虑锚框在目标检测中的必要性。

• 所提出的检测器可以立即扩展且通过最少的修改来解决其他视觉任务,包括实例分割和关键点检测。我们相信这种新方法可以成为许多实例预测问题的新基线。

2.相关工作

基于锚框的检测器

基于锚框的检测器继承了传统滑动窗口和基于提议的检测器(如 Fast R-CNN [6])的思想。在基于锚框的检测器中,锚框可以被视为预定义的滑动窗口或提议,它们被分类为正负样本,并带有额外的偏移回归以改进对边界框位置的预测。因此,这些检测器中的锚框可以被视为训练样本。与以前的检测器如 Fast RCNN 不同,它重复计算每个滑动窗口/提议的图像特征,锚框利用 CNN 的特征图并避免重复的特征计算,大大加快了检测过程。锚框的设计被 Faster R-CNN 在其 RPNs [24]、SSD [18] 和 YOLOv2 [22] 中推广,并已成为现代检测器的惯例。
然而,如上所述,锚框会导致过多的超参数,通常需要仔细调整才能获得良好的性能。除了上述描述锚形状的超参数外,基于锚框的检测器还需要其他超参数来将每个锚框标记为正样本、忽略样本或负样本。在以前的工作中,他们经常在锚框和真实框之间使用交并联合(IOU)来确定锚框的标签(例如,如果其 IOU 在 [0.5, 1] 中,则为正锚)。这些超参数对最终精度有很大影响,需要启发式调整。同时,这些超参数特定于检测任务,使得检测任务偏离了其他密集预测任务(如语义分割)中使用的整洁的全卷积网络架构。

无锚框的检测器

最流行的无锚框检测器可能是 YOLOv1 [21]。 YOLOv1 不使用锚框,而是在对象中心附近的点处预测边界框。仅使用中心附近的点,因为它被认为能够产生更高质量的检测。然而,如 YOLOv2 [22] 中所述,由于仅使用中心附近的点来预测边界框,因此 YOLOv1 的召回率很低。所以,YOLOv2 [22] 也使用了锚框。与 YOLOv1 相比,FCOS 利用ground truth边界框中的所有点来预测边界框,并且检测到的低质量边界框被提出的“中心”分支抑制。结果,如我们的实验所示,FCOS 能够取到与基于锚框的检测器相当的召回率。
CornerNet[13]是最近提出的单阶段的无锚框检测器,它检测边界框的一对角,并将它们分组以形成最终检测到的边界框。CornerNet需要更复杂的后处理来将属于同一实例的角对分组。为了分组的目的,学习额外的距离度量。
另一类无锚框检测器,如[32],基于DenseBox[12]。由于难以处理重叠的边界框和召回率相对较低,该系列检测器被认为不适合于一般对象检测。在这项工作中,我们表明这两个问题都可以通过多级FPN预测大大缓解。此外,我们还表明我们提出的中心分支,一个更简单的检测器甚至可以实现比基于锚框的检测器更好的检测性能。

3.我们的方法

在本节中,我们首先以逐像素预测的方式重新定义了对象检测。接下来,我们展示了如何利用多级预测来提高召回率并解决重叠边界框导致的歧义。最后,我们提出了我们提出的“中心度”分支,它有助于抑制检测到的低质量边界框,并大大提高整体性能。

3.1全卷积单阶段目标检测器

F i ∈ R H × W × C F_i∈R^{H×W×C} FiRH×W×C是主干CNN第i层的特征图,s是到达该层的总步长。输入图像的ground-truth 边界框定义为{ B i B_i Bi},其中 B i = ( x 0 ( i ) , y 0 ( i ) , x 1 ( i ) , y 1 ( i ) , c ( i ) ) ∈ R 4 × { 1 , 2... C } B_i=(x_0^{(i)},y_0^{(i)},x_1^{(i)},y_1^{(i)},c^{(i)}) \in R^4\times\{1,2...C\} Bi=(x0(i),y0(i),x1(i),y1(i),c(i))R4×{1,2...C}.这里 ( x 0 ( i ) , y 0 ( i ) ) (x_0^{(i)},y_0^{(i)}) (x0(i),y0(i)) ( x 1 ( i ) , y 1 ( i ) ) (x_1^{(i)},y_1^{(i)}) (x1(i),y1(i))表示边界框的左上角和右下角的坐标。 c ( i ) c^{(i)} c(i)是边界框中的对象所属的类。c是类的数量,对于MS-COCO数据集为80。
对于特征图Fi上的每个位置 ( x , y ) (x,y) (x,y),我们可以将其映射回输入图像 ( ⌊ s 2 ⌋ + x s , ⌊ s 2 ⌋ + y s ) (\lfloor \frac{s}2 \rfloor + xs, \lfloor \frac{s}2 \rfloor + ys) (⌊2s+xs,2s+ys),该图像靠近位置 ( x , y ) (x,y) (x,y)的感受野中心。与基于锚框的检测器不同,它将输入图像上的位置视为(多个)锚框的中心,并以这些锚框作为参考回归目标边界框,我们直接回归该位置处的目标边界框。换句话说,我们的检测器直接将位置视为训练样本,而不是基于锚框的检测器中的锚框,这与用于语义分割的FCN相同[20]。
具体来说,如果位置 ( x , y ) (x,y) (x,y)落入任何 ground-truth框和类标签c中,则将其视为正样本 c ∗ c^* c 的位置是 ground-truth框的类标签。否则为阴性样本, c ∗ = 0 c^*=0 c=0(背景类)。除了分类标签,我们还有一个4D实向量 t ∗ = ( l ∗ , t ∗ , r ∗ , b ∗ ) t^*=(l^*,t^*,r^*,b^*) t=(l,t,r,b) 作为该位置的回归目标。这里 l ∗ , t ∗ , r ∗ l^*,t^*,r^* l,t,r b ∗ b^* b 是从该位置到边界框四边的距离,如图1(左)所示。如果一个位置落入多个边界框中,则将其视为不明确的示例。我们只需选择面积最小的边界框作为其回归目标。在下一节中,我们将展示使用多级预测使模糊样本的数量可以显著减少,因此它们几乎不会影响检测性能。形式上,如果位置(x,y)与边界框Bi相关联,位置的训练回归目标可以公式化为
在这里插入图片描述
值得注意的是,FCOS可以利用尽可能多的前景样本来训练回归器。它与基于锚框的检测器不同,后者只将具有足够高IOU的锚框和ground-truth框视为正样本。我们认为,这可能是FCOS优于锚框检测器的原因之一。

网络输出

对应于训练目标,我们网络的最后一层预测分类标签的80D向量p和4D向量 t = ( l , t , r , b ) t=(l,t,r,b) t=(l,t,r,b)边界框坐标。在[15]之后,我们不再训练多类分类器,而是训练C个二进制分类器。与[15]相似,我们在骨干网络的特征图之后分别添加了四个卷积层,用于分类和回归分支。此外,由于回归目标总是正的,我们使用 e x p ( x ) exp(x) exp(x)将任何实数映射到 ( 0 , ∞ ) (0,∞) (0,)在回归分支的顶部。值得注意的是,FCOS的网络输出变量比流行的,每个位置有9个锚框的检测器[15,24]少9倍。

损失函数

我们将培训损失函数定义如下:
(2)
其中 L c l s L_{cls} Lcls是[15]中的焦点损耗, L r e g L_{reg} Lreg是UnitBox[32]中的IOU损耗。 N p o s N_{pos} Npos表示阳性样本的数量,在本文中λ为1是 L r e g L_{reg} Lreg的平衡权重。在特征地图 F i F_i Fi上的所有位置上计算总和。 1 { c x ∗ > 0 } ^1\{c_x^*>0\} 1{cx>0}是指标函数,如果c为1则 c i ∗ > 0 c_i^*>0 ci>0,否则为0。

结论

FCOS的推论很简单。给定输入图像,我们通过网络将其转发,并获得特征图 F i F_i Fi上每个位置的分类得分 P x , y P_{x,y} Px,y和回归预测 t x , y t_{x,y} tx,y。在[15]之后,我们选择 p x , y > 0.05 p_{x,y}>0.05 px,y>0.05的位置作为正样本,并反转Eq.(1)以获得预测的边界框。

3.2基于FPN的FCOS多级预测

在这里,我们展示了如何使用FPN进行多级预测来解决所提出的FCOS的两个可能问题[14] .1) CNN中最终特征图的大步幅(例如,16×)可能导致相对较低的最佳可能召回率(BPR)。对于基于锚框的检测器,由于大步幅而导致的低召回率可以通过降低正锚框所需的IOU分数在一定程度上得到补偿。对于FCOS,乍一看,人们可能会认为BPR比基于锚的检测器低得多,因为不可能召回最终特征图上没有位置编码的对象,因为步幅很大。这里,我们的经验表明,即使有很大步幅,基于FCN的FCOS仍然能够产生良好的BPR,它甚至可以比官方实现Detectron[7]中基于锚框的检测器RetinaNet[15]的BPR更好(参见表1)。因此,BPR实际上不是FCOS的问题。此外,通过多级FPN预测[14],BPR可以进一步改进,以匹配基于锚框的RetinaNet可以实现的最佳BPR2).2) ground-truth框中的重叠可能导致难以解决的模糊性,即,重叠中的位置应回归到哪个边界框?这种模糊性导致基于FCN的检测器性能下降。在这项工作中,我们表明,多级预测可以极大地解决模糊性,并且基于FCN的检测器与基于锚的检测器相比,可以获得同等甚至更好的性能。
根据FPN[14],我们在不同级别的特征图上检测到不同大小的对象。具体来说,我们使用定义为 { P 3 , P 4 , P 5 , P 6 , P 7 } \{P_3,P_4,P_5,P_6,P_7\} {P3,P4,P5,P6,P7}的五级特征图。 P 3 , P 4 P_3,P_4 P3,P4 P 5 P_5 P5是由主干CNN的特征图 C 3 , C 4 C_3,C_4 C3,C4 C 5 C_5 C5生成的,之后是具有[14]中自上而下连接的1×1卷积层,如图2所示。 P 6 P_6 P6 P 7 P_7 P7是通过在 P 5 P_5 P5 P 6 P_6 P6上分别应用一个步长为2的卷积层生成的。因此,功能级别 P 3 , P 4 , P 5 , P 6 P_3,P_4,P_5,P_6 P3P4P5,P6 P 7 P_7 P7分别具有跨距8、16、32、64和128。
在这里插入图片描述
图2–FCOS的网络架构,其中C3、C4和C5表示骨干网络的特征图,P3至P7表示用于最终预测的特征级别。H×W是特征图的高度和宽度’/s’(s=8,16,…,128)是在输入图像的级别上的特征映射的下采样率。例如,所有数字都是用800×1024输入计算的。
与基于锚框的检测器不同,它将不同大小的锚框分配给不同的特征级别,我们直接限制每个级别的边界框回归范围。更具体地说,我们首先计算回归目标 l ∗ , t ∗ , r ∗ l^*,t^*,r^* l,t,r, 和 b ∗ b^* b 用于所有功能级别上的每个位置。接下来,如果位置满足 m a x ( l ∗ , t ∗ , r ∗ , b ∗ ) > m i max(l^*, t^∗, r^∗, b^∗)> m_i max(l,t,r,b)>mi m a x ( l ∗ , t ∗ , r ∗ , b ∗ ) < m i − 1 max(l^∗, t^∗, r^∗, b^∗) < m_{i-1} maxl,t,r,b)<mi1,它被设置为负样本,因此不再需要回归边界框。这里 m i m_i mi是功能级别 i i i需要回归的最大距离。在本工作中, m 2 、 m 3 、 m 4 、 m 5 、 m 6 m_2、m_3、m_4、m_5、m_6 m2m3m4m5m6 m 7 m_7 m7分别地设置为0、64、128、256、512和∞。因为具有不同尺寸的对象被指定给不同的特征级别,并且大部分重叠发生在具有显著不同尺寸的物体之间。如果一个位置,即使使用了多级预测,仍然分配给多个地面真值框,我们只需选择面积最小的地面真值盒作为目标。如我们的实验所示,多级预测可以大大减轻上述模糊性,并将基于FCN的检测器提高到与基于锚的检测器相同的水平。
最后,在[14,15]之后,我们在不同的特征级别之间共享头部,不仅使检测器参数有效,而且提高了检测性能。然而,我们观察到,需要不同的特征级别来回归不同的尺寸范围(例如,P3的尺寸范围为[0,64],P4的尺寸为[64,128]),因此,对于不同的特征使用相同的磁头是不合理的。因此,我们不使用标准 e x p ( x ) exp(x) exp(x),而是使用带有可训练标量 s i s_i si e x p ( s i x ) exp(s_ix) exp(six)来自动调整特征水平 P i P_i Pi的指数函数的基数,这略微提高了检测性能。

3.3Fcos的Center-ness

在FCOS中使用多级预测之后,FCOS和基于锚框的检测器之间仍然存在性能差距。我们观察到,这是由于远离物体中心的位置产生了许多低质量的预测边界框。
我们提出了一种简单而有效的策略来抑制这些低质量检测到的边界框,而不引入任何超参数。具体来说,我们添加一个单层分支,与分类分支并行(如图2所示),以预测位置的“center-ness”。center-ness描述了从该位置到负责目标对象中心位置的归一化距离,如图7所示。对于一个位置给定回归目标:l∗, t∗, r∗ 和b∗ , center-ness 被定义为
在这里插入图片描述
我们在这里使用算数平方来减缓中心度的衰减。中心度范围从0到1,因此使用二进制交叉熵(BCE)损失进行训练。该损失被添加到损失函数方程(2)。测试时,最终得分(用于对检测到的边界框进行排序)通过将预测的中心度乘以相应的分类得分来计算。因此,中心度可以降低远离对象中心的边界框的分数。结论就是,在很高的概率下,这些低质量边界框可能会被最终的非极大抑制(NMS)过程过滤掉,从而显著提高检测性能。

4.试验

我们的实验是在大规模检测基准COCO[16]上进行的。按照常见做法[15,14,24],我们使用COCO trainval35k分割(115K图像)进行训练,使用minival分割(5K图像)作为消融研究的验证。我们通过将检测结果上传到评估服务器来报告测试开发拆分(20K图像)的主要结果。
fig3
图3–中心度。红色、蓝色和其他颜色分别表示1、0和它们之间的值。中心度由等式(3)计算,并且随着位置偏离对象中心而从1衰减到0。测试时,网络预测的中心度与分类得分相乘,从而可以对远离对象中心的位置预测的低质量边界框进行加权。

详细训练细节

如无特别规定,ResNet-50[8]用作我们的骨干网络,并且使用与RetinaNet[15]相同的超参数。具体地说,我们的网络使用随机梯度下降(SGD)训练90K次迭代,初始学习率为0.01,小批量16幅图像。在迭代60K和80K处学习率分别降低10倍。重量衰减和动量分别设置为0.0001和0.9。我们使用ImageNet上预训练的权重初始化主干网络[4]。对于新添加的层,我们将其初始化为[15]。如无指定,输入图像的大小都将调整为短边为800,长边小于或等于1333。

详细推理细节

我们首先通过网络转发输入图像并获得具有预测类别的预测边界框。如无特别指明,以下后处理都将与 RetinaNet [15] 完全相同,我们直接使用 RetinaNet 的相同后处理超参数。我们使用与训练中相同大小的输入图像。我们假设如果我们仔细调整超参数,我们的检测器的性能可能会进一步提高。

4.1 消融实验

4.1.1 使用 FPN 进行多级预测

如前所述,基于 FCN 的检测器的主要关注点是低召回率和由于真实边界框重叠导致的模棱两可的样本。在本节中,我们展示了这两个问题都可以通过多级预测在很大程度上得到解决。
t1
表 1 - 基于锚点的 RetinaNet 在各种匹配规则下的 BPR 和基于 FCN 的 FCOS 的 BPR。基于 FCN 的 FCOS 与最好的基于锚的 FCOS 具有非常相似的召回率,并且比 Detectron [7] 中的官方实现具有更高的召回率,后者仅考虑 IOU ≥ 0.4 的低质量匹配。
t2
表 2 – Amb。 samples 表示模棱两可的样本与所有正样本的比率。安布。 samples (diff.) 是相似的,但排除了重叠区域中的那些模棱两可但属于同一类别的模棱两可的样品,因为这种模棱两可在推断时并不重要。我们可以看到,使用 FPN,这个不明确样本的百分比很小(3.75%)。

最好的召回

关于基于 FCN 的检测器的第一个问题是它可能无法提供良好的最佳召回率 (BPR)。在本节中,我们表明关注是不必要的。这里 BPR 被定义为检测器最多可以召回的真实框的数量除以所有真实框的比率。如果在训练期间将该框分配给至少一个样本(即 FCOS 中的位置或基于锚框的检测器中的锚框),则认为该框被召回。如表1所示,只有特征级别P4,步幅为16(即没有FPN),FCOS已经可以获得95.55%的BPR。BPR远高于官方实现Detectron中基于anchor的检测器RetinaNet的90.92%的BPR,其中仅使用IOU≥0.4的低质量匹配。在 FPN 的帮助下,FCOS 可以达到 98.40% 的 BPR,这非常接近基于 anchor 的检测器使用所有低质量匹配所能达到的最佳 BPR。由于当前检测器的最佳召回率远低于 90%,因此 FCOS 和基于锚框的检测器之间的 BPR 差距小(小于 1%)实际上不会影响检测器的性能。表 3 也证实了这一点,在相同的训练和测试设置下,FCOS 比基于锚框的对应物实现了更好的 AR。因此,对低 BPR 的担忧可能没有必要。

模棱两可的样本

关于基于 FCN 的检测器的另一个问题是,由于真实边界框的重叠,它可能具有大量不明确的样本,如图 1(右)所示。在表 2 中,我们显示了在 minival split 上模糊样本与所有正样本的比率。如表所示,如果不使用FPN,只使用特征级别P4,确实存在大量的模棱两可的样本(23.16%)。然而,使用 FPN,该比率可以显着降低到只有 7.14%,因为大多数重叠的对象被分配到不同的特征级别。此外,我们认为同一类别的对象之间重叠导致的模棱两可的样本无关紧要。例如,如果具有相同类别的对象 A 和 B 有重叠,则无论重叠中的位置预测哪个对象,预测都是正确的,因为它始终与同一类别匹配。错过的对象可以通过仅属于它的位置来预测。因此,我们只计算具有不同类别的边界框之间重叠的模棱两可的样本。如表2所示,多级预测将模糊样本的比例从17.84%降低到3.75%。为了进一步表明ground truth box的重叠不是我们基于FCN的FCOS的问题,我们在推断有多少检测到的边界框来自不明确的位置时计算了这一点。我们发现只有 2.3% 的边界框检测到的是由不明确的位置产生的。通过进一步仅考虑不同类别之间的重叠,该比率降低到 1.5%。请注意,这并不意味着有 1.5% 的位置 FCOS 无法工作。如前所述,这些位置与面积最小的真实框相关联。因此,这些位置只会冒丢失一些较大物体的风险。如以下实验所示,它们不会使我们的 FCOS 不如基于锚框的检测器。
它
表 3 – FCOS 与 RetinaNet 在以 ResNet-50-FPN 作为主干的 minival 分割上。直接使用 RetinaNet 的训练和测试设置,我们的无锚 FCOS 在 AP 和 AR 中都比基于锚的 RetinaNet 实现了更好的性能。在 head 中的 Group Normalization (GN) 和 NMS 阈值为 0.6 的情况下,FCOS 在 AP 中可以达到 37.1。在我们提交之后,对 FCOS 进行了一些几乎没有成本的改进,性能也有了很大的提升,如“改进”下面的行所示。 “中央。 on reg.”:将 center-ness 分支移动到回归分支。 “中央。采样”:仅将真实框的中心部分采样为正样本。 “GIoU”:在 IoU Loss 中惩罚外接矩形区域上的联合区域。 “归一化”:归一化方程中的回归目标。 (1) 随着 FPN 水平的进步。有关详细信息,请参阅我们的代码。

4.1.2有或没有 Center-ness

如前所述,我们提出“center-ness ”来抑制由远离对象中心的位置产生的低质量检测边界框。如表 4 所示,center-ness 分支可以将 AP 从 33.5% 提升到 37.1%,使得无锚点 FCOS 优于基于锚点的 RetinaNet(35.9%)。请注意,基于锚框的 RetinaNet 使用两个 IoU 阈值将锚框标记为正/负样本,这也有助于抑制低质量的预测。提出的center-ness 可以消除两个超参数。然而,在我们最初提交之后,它表明同时使用center-ness 和阈值可以产生更好的性能,如“+ ctr.”行所示。采样”在表 3 中。人们可能会注意到,center-ness 也可以用预测的回归向量计算,而无需引入额外的center-ness 分支。然而,如表 4 所示,从回归向量计算的center-ness 不能提高性能,因此需要单独的center-ness 。
4
表 4 – 对 minival split 提出的 center-ness 分支的消融研究。 “无”表示不使用中心性。 “center-ness†”表示使用从预测回归向量计算的中心度。 “中心度”是使用从提议的中心度分支预测的中心度。 center-ness 分支提高了所有指标下的检测性能。

4.1.3 FCOS 与基于锚框的检测器

上述 FCOS 与标准 RetinaNet 有两个细微差别。 1) 我们在除了最后一个预测层之外的新添加的卷积层中使用了组归一化(GN)[29],这使得我们的训练更加稳定。 2) 我们使用 P5 来生成 P6 和 P7,而不是标准 RetinaNet 中的 C5。我们观察到使用 P5 可以稍微提高性能。
t5
表 5 – FCOS 与其他最先进的两级或一级检测器(单模型和单尺度结果)。在具有相同主干的 AP 中,FCOS 的性能比基于锚的 RetinaNet 高 2.4%。 FCOS 的设计复杂性也优于最近的无锚单级检测器 CornerNet。有关“改进”的详细信息,请参阅表 3。
t6表 6 – FCOS 作为区域建议网络与带有 FPN 的 RPN。 ResNet-50 用作主干。 FCOS 将 AR100 和 AR1k 分别提高了 8.1% 和 3.4%。 GN:组归一化。
为了证明我们的 FCOS 可以作为基于锚框检测器的简单而强大的替代品,并且为了公平比较,我们删除了 GN(梯度被剪裁以防止它们爆炸)并在我们的检测器中使用 C5。如表 3 所示,在完全相同的设置下,我们的 FCOS 仍然优于基于锚框的检测器(36.3% 对 35.9%)。此外,值得注意的是,我们直接使用来自 RetinaNet 的所有超参数(例如学习率、NMS 阈值等),这些超参数已经针对基于锚的检测器进行了优化。我们认为,如果针对 FCOS 调整超参数,则可以进一步提高 FCOS 的性能。
值得注意的是,通过一些几乎无成本的改进,如表 3 所示,我们的无锚检测器的性能可以大大提高。鉴于无锚框检测器的卓越性能和优点(例如,比基于锚框的检测器更简单且超参数更少),我们鼓励社区重新考虑锚框在目标检测中的必要性。

4.2与最先进的探测器比较

我们将 FCOS 与其他最先进的对象检测器进行测试 - MS-COCO 基准测试的开发拆分。对于这些实验,我们在训练期间在 640 到 800 范围内随机缩放图像的较短边,并将迭代次数加倍至 180K(学习率变化点按比例缩放)。其他设置与表 3 中 AP 37.1% 的模型完全相同。如表 5 所示,使用 ResNet-101-FPN,我们的 FCOS 在 AP 中比具有相同骨干 ResNet-101-FPN 的 RetinaNet 高 2.4%。据我们所知,这是第一次没有任何花里胡哨的无锚检测器在很大程度上优于基于锚的检测器。 FCOS 也大大优于其他经典的基于两阶段锚框的检测器,例如 Faster R-CNN。以 ResNeXt-64x4d-101-FPN [30] 为骨干,FCOS 在 AP 中达到 43.2%。它大大优于最近最先进的无锚检测器 CornerNet [13],同时更简单。请注意,CornerNet 需要使用嵌入向量对角点进行分组,这需要对检测器进行特殊设计。因此,我们认为 FCOS 更有可能作为当前主流的基于锚的检测器的强大而简单的替代品。此外,具有表 3 改进的 FCOS 在 AP 的单模型和单规模测试中达到了 44.7%,大大超过了以前的检测器。

5.区域提案网络的扩展

到目前为止,我们已经证明,在单级检测器中,我们的 FCOS 可以实现比基于锚的检测器更好的性能。直观地说,FCOS 还应该能够用两阶段检测器 Faster RCNN 中的 FPN [14] 替换区域建议网络 (RPN) 中的锚框。在这里,我们通过实验证实了这一点。
与使用 FPN [14] 的 RPN 相比,我们用 FCOS 中的方法替换锚框。此外,我们将 GN 添加到 FPN 头中的层中,这可以使我们的训练更加稳定。所有其他设置与官方代码[7]中带有FPN的RPN完全相同。如表 6 所示,即使没有提出的 center-ness 分支,我们的 FCOS 已经显着提高了 AR100 和 AR1k。通过提出的 center-ness 分支,FCOS 进一步将 AR100 和 AR1k 分别提高到 52.8% 和 60.3%,相对于带有 FPN 的 RPN,AR100 相对提高了 18%,AR1k 绝对提高了 3.4%。

6.结论

我们提出了一种无锚和无提议的单级检测器 FCOS。如实验所示,FCOS 与流行的基于锚的 onestage 检测器相比具有优势,包括 RetinaNet、YOLO 和 SSD,但设计复杂度要低得多。 FCOS 完全避免了与锚框相关的所有计算和超参数,并以逐像素预测的方式解决了对象检测问题,类似于语义分割等其他密集预测任务。 FCOS 还在一级检测器中实现了最佳性能。我们还表明,FCOS 可以用作两级检测器 Faster R-CNN 中的 RPN,并且在很大程度上优于其 RPN。鉴于其有效性和效率,我们希望 FCOS 可以作为当前主流的基于锚的检测器的强大而简单的替代品。我们也相信 FCOS 可以扩展来解决许多其他实例级识别任务。

附录

7.与类别无关的精确召回曲线

t7
表 7 – RetinaNet 和 FCOS 的类别无关检测性能。 FCOS 的性能优于 RetinaNet。此外,对 RetinaNet 的改进随着更严格的 IOU 阈值而变得更大。使用我们主要论文的表 4 中的相同模型获得的结果
在图 5 和图 6 中,我们展示了在 IOU 阈值分别为 0.50、0.75 和 0.90 的 split minival 上与类别无关的精度召回曲线。表 7 显示了对应于三个曲线的 AP。
fig4
图 4 – IOU = 0.50 时与类别无关的精确召回曲线。
如表 7 所示,我们的 FCOS 比基于锚框的 RetinaNet 实现了更好的性能。此外,值得注意的是,在 IOU 阈值更严格的情况下,FCOS 比 RetinaNet 有更大的改进,这表明 FCOS 具有更好的边界框回归性能,可以更准确地检测物体。原因之一应该是 FCOS 能够利用更多的前景样本来训练回归器,如我们的主要论文中所述。
最后,如所有precision-recall曲线所示,这些检测器在precision-recall曲线中的最佳召回率远低于90%。它进一步表明 FCOS 和 RetinaNet 之间的最佳可能召回 (BPR) 的小差距(98.40% 对 99.23%)几乎不会损害最终的检测性能。

8.Center-ness可视化

正如我们的论文中主要提到的,通过抑制低质量检测边界框,所提出的中心分支大大提高了检测性能。在本节中,我们确认了这一点。
我们期望Center-ness可以降低低质量边界框的分数,以便可以在后续处理(例如非最大抑制(NMS))中过滤掉这些边界框。如果检测到的边界框与其对应的真实边界框的 IOU 分数较低,则认为它是低质量的。 IOU 低但置信度分数高的边界框很可能成为误报并损害精度。
fig5
图 5 – IOU = 0.75 时与类别无关的精确召回曲线。
fig6
图 6 – IOU = 0.90 时与类别无关的精确召回曲线。
在图 7 中,我们将检测到的边界框视为 2D 点 (x, y),其中 x 是其分数,y 是 IOU 及其对应的 ground-truth 框。如图 7(左)所示,在应用 center-ness 之前,有大量低质量的边界框但具有较高的置信度得分(即线 y = x 下的点)。由于它们的高分,这些低质量的边界框在后处理中无法消除,并导致检测器的精度降低。在将分类分数与中心分数相乘后,这些点被推到图的左侧(即它们的分数降低了),如图 7(右)所示。结果,这些低质量的边界框更有可能在后处理中被过滤掉,并且可以提高最终的检测性能。
fig7
图 7 – 没有(左)或有(右)建议的中心度。图中的一个点表示检测到的边界框。虚线是线 y = x。如图(右)所示,在将分类分数乘以 center-ness 分数后,低质量框(在 y = x 线下)被推到图的左侧。这表明这些框的分数大大降低。

9.定性结果

一些定性结果如图 8 所示。如图所示,我们提出的 FCOS 可以检测范围广泛的对象,包括拥挤、被遮挡、高度重叠、极小和非常大的对象
fig8
图 8 – minival split 的一些检测结果。 ResNet-50 用作主干。如图所示,FCOS 适用于广泛的对象,包括拥挤、被遮挡、高度重叠、极小和非常大的对象。

10.扩展讨论

Center-ness与IoUNet

Jiang 等人的“Acquisition of Localization Confidence for Accurate Object Detection”的 Center-ness 和 IoUNet 采用不同的方法具有相似的目的(即抑制低质量预测)。 IoUNet 训练一个单独的网络来预测预测的边界框和真实框之间的 IoU 分数。 Center-ness 作为我们检测器的一部分,只有一个层,并且与检测器联合训练,因此要简单得多。此外,“center-ness”不将预测的边界框作为输入。相反,它直接访问该位置预测高质量边界框的能力。

第 4.1 节中的 BPR 和歧义分析:

我们不打算将“特定 IoU 召回”与“框内像素召回”进行比较。表 1 的主要目的是表明 FCOS 的召回上限非常接近基于锚框的 RetinaNet 的召回上限(98.4% vs. 99.23%)。其他 IoU 阈值的 BPR 与 RetinaNet 官方代码中使用的一样。此外,没有证据表明 FCOS 的回归目标因为更加分散而难以学习。 FCOS 实际上产生了更准确的边界框。
在训练期间,我们通过选择具有最小面积的真实框来处理相同 FPN 级别的歧义。测试时,如果同类别的两个对象 A 和 B 有重叠,那么无论重叠中的位置预测哪一个对象,预测都是正确的,漏掉的对象可以通过仅属于它的位置来预测。在 A 和 B 不属于同一类的情况下,重叠中的位置可能会预测 A 的类,但会回归 B 的边界框,这是错误的。这就是为什么我们只计算不同类别的歧义。此外,这种模糊性似乎不会使 FCOS 在 AP 中比 RetinaNet 更差,如表 8 所示。

附加的消融实验:

如表 8 所示,vanilla FCOS 的性能与 RetinaNet 相当,设计更简单,网络输出少 9 倍。此外,FCOS 比具有单个锚点的 RetinaNet 工作得更好。至于 testdev 上 2% 的增益,除了表 8 中的组件带来的性能增益外,我们推测不同的训练细节(例如,学习率计划)可能会导致性能略有差异。
t8
表 8 – MS-COCO minival 的消融研究。 “#A”是 RetinaNet 中每个位置的锚框数量。 “IOU”是IOU损失。 “标量”表示是否在 exp 中使用标量。所有实验均使用相同的设置进行。

具有Center-ness的 RetinaNet:

在每个位置有多个锚框的 RetinaNet 中不能直接使用中心度,因为特征图上的一个位置只有一个中心度分数,但同一位置上的不同锚框需要不同的“中心度”(注意,中心度也被使用作为正/负样本的“软”阈值)。
对于基于anchor的RetinaNet,anchor box和ground-truth box之间的IoU分数可以作为“center-ness”的替代品。

正样本与 RetinaNet 重叠:

我们想强调中心性仅在测试时才起作用。训练时,ground-truth 框内的所有位置都被标记为正样本。因此,FCOS 可以使用更多的前景位置来训练回归器,从而产生更准确的边界框。

致谢

我们要感谢 [1] 的作者提供的中心采样和 GIoU 技巧。我们也感谢 Chaorui Deng 基于 HRNet 的 FCOS 以及他提出的使用框回归定位 center-ness 分支的建议。

参考文献

[1] https://github.com/yqyao/FCOS_PLUS, 2019.
[2] Lokesh Boominathan, Srinivas SS Kruthiventi, and
R V enkatesh Babu. Crowdnet: A deep convolutional
network for dense crowd counting. In Proc. ACM Int. Conf.
Multimedia, pages 640–644. ACM, 2016.
[3] Y u Chen, Chunhua Shen, Xiu-Shen Wei, Lingqiao Liu, and
Jian Yang. Adversarial PoseNet: A structure-aware convo-
lutional network for human pose estimation. In Proc. IEEE
Int. Conf. Comp. Vis., 2017.
[4] Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li,
and Li Fei-Fei. ImageNet: A large-scale hierarchical im-
age database. In Proc. IEEE Conf. Comp. Vis. Patt. Recogn.,
pages 248–255. IEEE, 2009.
[5] Cheng-Yang Fu, Wei Liu, Ananth Ranga, Ambrish Tyagi,
and Alexander Berg. DSSD: Deconvolutional single shot de-
tector. arXiv preprint arXiv:1701.06659, 2017.
[6] Ross Girshick. Fast R-CNN. In Proc. IEEE Conf. Comp. Vis.
Patt. Recogn., pages 1440–1448, 2015.
[7] Ross Girshick, Ilija Radosavovic, Georgia Gkioxari, Piotr
Dollár, and Kaiming He. Detectron. https://github.
com/facebookresearch/detectron, 2018.
[8] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun.
Deep residual learning for image recognition. In Proc. IEEE
Conf. Comp. Vis. Patt. Recogn., pages 770–778, 2016.
[9] Tong He, Chunhua Shen, Zhi Tian, Dong Gong, Changming
Sun, and Y ouliang Yan. Knowledge adaptation for efficient
semantic segmentation. In Proc. IEEE Conf. Comp. Vis. Patt.
Recogn., June 2019.
[10] Tong He, Zhi Tian, Weilin Huang, Chunhua Shen, Y u Qiao,
and Changming Sun. An end-to-end textspotter with explicit
alignment and attention. In Proc. IEEE Conf. Comp. Vis.
Patt. Recogn., pages 5020–5029, 2018.
[11] Jonathan Huang, Vivek Rathod, Chen Sun, Menglong Zhu,
Anoop Korattikara, Alireza Fathi, Ian Fischer, Zbigniew Wo-
jna, Yang Song, Sergio Guadarrama, et al. Speed/accuracy
trade-offs for modern convolutional object detectors. In
Proc. IEEE Conf. Comp. Vis. Patt. Recogn., pages 7310–
7311, 2017.
[12] Lichao Huang, Yi Yang, Yafeng Deng, and Yinan Y u. Dense-
box: Unifying landmark localization with end to end object
detection. arXiv preprint arXiv:1509.04874, 2015.
[13] Hei Law and Jia Deng. Cornernet: Detecting objects as
paired keypoints. In Proc. Eur . Conf. Comp. Vis., pages 734–
750, 2018.
[14] Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He,
Bharath Hariharan, and Serge Belongie. Feature pyramid
networks for object detection. In Proc. IEEE Conf. Comp.
Vis. Patt. Recogn., pages 2117–2125, 2017.
[15] Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and
Piotr Dollár. Focal loss for dense object detection. In Proc.
IEEE Conf. Comp. Vis. Patt. Recogn., pages 2980–2988,
2017.
[16] Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays,
Pietro Perona, Deva Ramanan, Piotr Dollár, and Lawrence
Zitnick. Microsoft COCO: Common objects in context. In
Proc. Eur . Conf. Comp. Vis., pages 740–755. Springer, 2014.
[17] Fayao Liu, Chunhua Shen, Guosheng Lin, and Ian Reid.
Learning depth from single monocular images using deep
convolutional neural fields. IEEE Trans. Pattern Anal. Mach.
Intell., 2016.
[18] Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian
Szegedy, Scott Reed, Cheng-Yang Fu, and Alexander C
12
Berg. SSD: Single shot multibox detector. In Proc. Eur .
Conf. Comp. Vis., pages 21–37. Springer, 2016.
[19] Yifan Liu, Ke Chen, Chris Liu, Zengchang Qin, Zhenbo Luo,
and Jingdong Wang. Structured knowledge distillation for
semantic segmentation. In Proc. IEEE Conf. Comp. Vis. Patt.
Recogn., June 2019.
[20] Jonathan Long, Evan Shelhamer, and Trevor Darrell. Fully
convolutional networks for semantic segmentation. In Proc.
IEEE Conf. Comp. Vis. Patt. Recogn., pages 3431–3440,
2015.
[21] Joseph Redmon, Santosh Divvala, Ross Girshick, and Ali
Farhadi. Y ou only look once: Unified, real-time object de-
tection. In Proc. IEEE Conf. Comp. Vis. Patt. Recogn., pages
779–788, 2016.
[22] Joseph Redmon and Ali Farhadi. YOLO9000: better, faster,
stronger. In Proc. IEEE Conf. Comp. Vis. Patt. Recogn.,
pages 7263–7271, 2017.
[23] Joseph Redmon and Ali Farhadi. Y olov3: An incremental
improvement. arXiv preprint arXiv:1804.02767, 2018.
[24] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun.
Faster R-CNN: Towards real-time object detection with re-
gion proposal networks. In Proc. Adv. Neural Inf. Process.
Syst., pages 91–99, 2015.
[25] Abhinav Shrivastava, Rahul Sukthankar, Jitendra Malik, and
Abhinav Gupta. Beyond skip connections: Top-down mod-
ulation for object detection. In Proc. IEEE Conf. Comp. Vis.
Patt. Recogn., 2017.
[26] Ke Sun, Bin Xiao, Dong Liu, and Jingdong Wang. Deep
high-resolution representation learning for human pose esti-
mation. In Proc. IEEE Conf. Comp. Vis. Patt. Recogn., 2019.
[27] Christian Szegedy, Sergey Ioffe, Vincent V anhoucke, and
Alexander A Alemi. Inception-v4, inception-resnet and the
impact of residual connections on learning. In Proc. National
Conf. Artificial Intell., 2017.
[28] Zhi Tian, Tong He, Chunhua Shen, and Y ouliang Yan. De-
coders matter for semantic segmentation: Data-dependent
decoding enables flexible feature aggregation. In Proc. IEEE
Conf. Comp. Vis. Patt. Recogn., pages 3126–3135, 2019.
[29] Y uxin Wu and Kaiming He. Group normalization. In Proc.
Eur . Conf. Comp. Vis., pages 3–19, 2018.
[30] Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, and
Kaiming He. Aggregated residual transformations for deep
neural networks. In Proc. IEEE Conf. Comp. Vis. Patt.
Recogn., pages 1492–1500, 2017.
[31] Wei Yin, Yifan Liu, Chunhua Shen, and Y ouliang Yan. En-
forcing geometric constraints of virtual normal for depth pre-
diction. In Proc. IEEE Int. Conf. Comp. Vis., 2019.
[32] Jiahui Y u, Y uning Jiang, Zhangyang Wang, Zhimin Cao, and
Thomas Huang. Unitbox: An advanced object detection net-
work. In Proc. ACM Int. Conf. Multimedia, pages 516–520.
ACM, 2016.
[33] Xinyu Zhou, Cong Yao, He Wen, Y uzhi Wang, Shuchang
Zhou, Weiran He, and Jiajun Liang. EAST: an efficient and
accurate scene text detector. In Proc. IEEE Conf. Comp. Vis.
Patt. Recogn., pages 5551–5560, 2017.
[34] Chenchen Zhu, Yihui He, and Marios Savvides. Feature se-
lective anchor-free module for single-shot object detection.
In Proc. IEEE Conf. Comp. Vis. Patt. Recogn., June 2019.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值