我们激励并展示功能选择性免锚(FSAF)模块,这是单发物体检测器的简单有效的构建块。可以将其插入具有特征金字塔结构的单发检测器。 FSAF模块解决了传统基于锚的检测带来的两个限制:1)启发式引导特征选择; 2)基于重叠的锚采样。 FSAF模块的一般概念是在线特征选择,用于选择多级无锚分支。具体来说,将无锚的分支附加到要素金字塔的每个级别,从而允许在任意级别以无锚的方式进行盒编码和解码。在训练期间,我们会动态地将每个实例分配给最合适的功能级别。在进行推断时,FSAF模块可以通过并行输出预测与基于锚的分支一起工作。我们通过无锚分支的简单实现和在线特征选择策略来实例化此概念。实验性
在COCO检测轨道上的结果表明,我们的FSAF模块比基于锚的模块性能更好,同时速度更快。当与基于锚的分支一起工作时,FSAF模块在各种设置下都大大提高了基线RetinaNet的可靠性,同时引入了几乎免费的推理开销。最终得到的最佳模型可以达到44.6%的最新mAP,优于COCO上所有现有的单发检测器。
1.简介对象检测是计算机视觉界的一项重要任务。它是各种下游视觉应用程序的前提,例如实例分割[12],面部分析[1,39],自动驾驶汽车[6,20]和视频分析[25,33]。由于深度卷积神经网络[16、29、13、34]和标注良好的数据集[7、23]的发展,大大提高了对象检测器的性能。对象检测的一个难题是尺度变化。为了实现尺度不变性,最新的探测器构造了特征金字塔或多层特征塔[24、8、21、22、19、38]。要素地图的多个比例级别可以并行生成预测。此外,锚框可以进一步处理比例变化[24、28]。锚框设计用于将所有可能的实例框的连续空间离散为有限数量的具有预定位置,比例和长宽比的框。 Andinstanceboxes匹配基于联合交叉点(IoU)重叠的锚定框。当与要素金字塔集成时,通常将大锚框与上部特征图相关联,将小锚框与下部特征图相关联,请参见图2。这是基于启发式的,即上部特征图具有更多的语义信息,适用于检测大型特征图。具有较低特征映射的实例具有更细粒度的细节,适合检测小型实例[11]。与锚框集成的特征金字塔的设计在对象检测基准上获得了良好的性能[7,23,9]。但是,这种设计有两个局限性:1)启发式引导特征选择; 2)基于重叠的锚采样。在训练期间,每个实例始终根据IoU重叠与最接近的锚框匹配。锚定框通过人为定义的规则(例如,框大小)与某些级别的特征图相关联。因此,为每个实例选择的特征级别纯粹是基于狂热主义。例如,可以将大小为50×50像素的树桩和大小为60×60像素的另一个相似实例分配给两个不同的特征级别,而可以将另一个40×40的汽车实例分配为与50×50实例相同的级别,如图2所示。匹配机制本质上是启发式引导的。这导致人们主要认为,训练每个实例的所选功能级别可能不是最佳的。我们提出一种简单有效的方法,称为fea选择性选择性免锚(FSAF)模块可同时解决这两个限制。我们的动机是让每个实例自由选择最佳特征级别以优化网络,因此在我们的模块中不应有锚框来限制特征选择。相反,我们以无锚的方式对实例进行编码,以学习用于分类和回归的参数。总体概念如图3所示。每层要素金字塔都建立了一个无锚分支,独立于基于锚的分支。与基于锚的分支类似,它由一个分类子网和一个回归子网组成(图中未显示)。可以将实例分配给免锚分支的任意级别。在训练过程中,我们根据实例内容(而不只是实例框的大小)为每个实例动态选择最合适的功能级别。然后,所选功能级别将学会检测分配的实例。根据推断,FSAF模块可以与基于锚的分支独立或联合运行。我们的FSAF模块与骨干网无关,可以应用于具有特征金字塔结构的单发检测器。此外,无锚点分支的实例化和在线特征选择可以不同。在此工作中,请确保简单地执行FSAF模块,以使其计算成本相对于整个网络而言是微不足道的。在COCO [23]对象检测基准上的大量实验证实了我们方法的有效性。 FSAF模块本身优于基于锚的模块,并且运行速度更快。与基于锚的分支机构一起工作时,FSAF模块可以在各种骨干网中以较大的幅度持续改善强基准,同时引入了最低的计算成本。尤其是,我们将使用ResNeXt-101 [34]的RetinaNet提高了1.8%,而推理延迟只有6ms。此外,当采用多尺度测试时,我们的最终检测器可达到44.6%的最新mAP,优于COCO上所有现有的单发检测器。
最近的物体检测器经常使用特征金字塔或多层特征塔作为通用结构。 SSD [24]首先提出从多个特征量表预测类分数和边界框。 FPN [21]和DSSD [8]提出了使用高级语义特征图在所有尺度上增强低级特征的方法。 RetinaNet [22]解决了具有焦点损失的多级密集探测器的类不平衡问题。 DetNet [19]设计了一种新颖的骨干网络,以在金字塔的上层保持高空间分辨率。但是,它们都使用预定义的锚框来编码和解码对象实例。其他工作则不同地处理尺度变化。 Zhuetal [41]增强了小物件的锚设计。 He等人[14]将边界框建模为高斯分布,以改善定位。免锚检测的想法并不新鲜。 DenseBox [15]首先提出了一个统一的端到端全卷积框架,该框架可以直接预测边界框。 UnitBox [36]提出了一个交集交集(IoU)损失函数,以实现更好的信箱回归。 Zhong等人[40]提出了无锚区域建议网络,以发现各种规模,纵横比和方向的文本。最近,CornerNet [17]提出将物体边界框检测为一对角,从而获得最佳的单次检测器。 SFace [32]提出将基于锚的方法和无锚方法集成在一起。然而,他们仍然缺乏对现实主义的特征选择策略。
3.FeatureSelectiveAnchor-FreeModule在本节中,我们将展示如何将其应用于具有特征金字塔的单发检测器(例如SSD [24],DSSD [8]和RetinaNet [22]),以证明我们的特征选择性无锚(FSAF)模块。在不失一般性的前提下,我们将FSAF模块应用于最新的RetinaNet [22],并从以下方面演示了我们的设计:1)如何在网络中创建无锚分支(3.1); 2)如何生成无锚分支的监控信号(3.2); 3)如何为每个实例动态选择特征级别(3.3); 4)如何联合训练和测试无锚和基于锚的分支(3.4)。 3.1.NetworkArchitecture从网络的角度来看,我们的FSAF模块非常简单。图4展示了带有FSAF模块的RetinaNet [22]的体系结构。简而言之,RetinaNet由骨干网(图中未显示)和两个特定于任务的子网组成。特征金字塔是从具有从P3到P7的级别的骨干网络构建的,其中l是金字塔级别,P1具有输入图像的1 / 2l分辨率。为了简单起见,仅显示三个级别。金字塔的每个级别都用于检测不同比例的对象。为此,要进行分类子网和回归子网连接到P1。它们都是小型的全卷积网络。分类子网针对A个锚点和K个对象类别的每个空间位置预测对象的概率。回归子网预测从每个A锚点到附近实例(如果存在)的4维类不可知偏移。在RetinaNet的顶部,我们的FSAF模块在每个金字塔级别仅引入了两个附加的转换层,如图4中的虚线特征图所示。这两层分别负责无锚分支中的分类和回归预测。更具体地说,将具有K过滤器的3×3转换层附加到分类子网中的特征图,然后是S型函数,与基于锚的分支中的函数并行。它针对K个对象类预测每个空间位置上对象的概率。类似地,具有四个过滤器的3×3conv层将附加到回归子网中的特征图,然后是ReLU [26]函数。它负责预测以自由锚编码的框偏移量。为此,基于锚点的无分支分支以多任务样式共同工作,在每个金字塔级别共享功能
.Ground-truthandLoss给定一个对象实例,我们知道它的类标签k和边界框坐标b = [x,y,w,h],其中(x,y)是框的中心,而w,h是框 宽度和高度分别。 可以在训练期间将实例分配给任意特征级别P1。 我们将投影框bl p = [xl p,yl p,wl p,hl p]定义为b在特征金字塔Pl上的投影,即bl p = b / 2l。 我们还将有效框bl e = [xl,yl e,wl e,hl e]和忽略框bl i = [xl i,yl i,wl i,hl i]定义为受控制的bl p比例区域。 恒定比例因子e和i,即xl e = xl p,yl e = yl p,wl e = ewl p,hl e = ehl p,xl i = xl p,yl i = yl p,wl i = iwl p,hl i = ihl p。 我们设置e = 0.2和i = 0.5。 用于汽车实例的地面真相生成的示例是
分类输出:分类输出的真实性是K个映射,每个映射对应于一个类。该实例以三种方式影响第k个地面真实地图。首先,有效框框区域是由“汽车”类图中的白框填充的正区域,表示实例的存在。第二,忽略有效框(bl i -bl e)的忽略框是显示为灰色区域的忽略区域,这意味着该区域中的梯度不会传播回网络。第三,相邻特征级别(bl-1 i,bl + 1 i)中的忽略框也将忽略区域(如果存在)。请注意,如果两个实例的有效框在一级重叠,则较小的实例具有较高的优先级。真实地图的其余区域是负数(黑色),填充有零,表示没有对象。焦点损失[22]用于超参数α= 0.25和γ= 2.0的监督。图像的无锚分支的总分类损失是所有非忽略区域的焦点损失之和,并通过所有有效框区域内的像素总数进行归一化。 Box回归输出:回归输出的基础是与类无关的4个偏移量映射。该实例仅影响偏移图上的bl e区域。对于bl e内的每个像素位置(i,j),我们将投影框bl p表示为4维矢量dli,j = [dl ti,j,dl li,j,dl bi,j,dl ri,j ],其中dl t,dl l,dl b,dl r是当前像素位置(i,j)与bl p的顶部,左侧,底部和右侧边界之间的距离。然后,将4个偏移图上(i,j)位置的4维向量设置为dli,j / S,每个图对应一个维。 S是归一化常数,因此我们在经验上选择S = 4.0。有效框外的位置是忽略渐变的灰色区域。采用IoUloss [36]进行优化。图像的无锚分支的总回归损失是所有有效框区域上IoU损失的平均值。
在推断过程中,病毒会直接从分类和回归输出中解码出预测的框。 假设在每个像素位置(i,j),预测的偏移量为[i,i,j,o,i,j,obi,j,i,ori]。 然后,预测距离为[S oti,j,S oli,j,S obi,j,S ori,j]。 预测投影框的左上角和右下角是(i-Sˆ oti,j,j-Sˆ oli,j)和(i + Sˆ obi,j,j + Sˆ ori,j]) 分别。 我们将投影盒进一步放大2l,以使最终盒进入像平面。 盒子的置信度分数和类别可以由最大分数和分类输出图上K维向量位置(i,j)的相应类别来确定。
P1上的盒回归损失分别为LIFL(l)和LIIoU(l)。通过对有效框区域bl e上的焦距损耗和IoU损耗进行平均来计算它们,即LIFL(l)= 1 N(bl e)X i,j∈ble FL(l,i,j)LIIoU(l )= 1 N(bl e)X i,j∈ble IoU(l,i,j)(1)其中N(bl e)是bl e区域内的像素数,FL(l,i,j ),IoU(l,i,j)分别是Pl位置(i,j)的焦点损失[22]和IoU损失[36]。图6显示了在线功能选择过程。首先,实例I被转发通过所有功能金字塔。然后,使用等式在所有无锚分支中计算LIFL(l)和LIIoU(l)之和。 (1)。最后,选择产生最小损失总和的最佳金字塔等级Pl *来学习实例,即l ∗ = argmin l LIFL(l)+ LIIoU(l)(2)对于训练批次,特征会相应更新分配的实例。直觉是所选功能是目前最好的实例模型。它的损失形式在功能空间中较低。通过训练,我们进一步拉低了这个下限。在推论时,我们不需要选择特征,因为最合适的特征金字塔等级自然会输出较高的置信度分数。为了夸大在线特征选择的重要性,我们还进行了启发式特征选择过程以在消融研究中进行比较(4.1)。启发式功能的选择完全取决于盒子的大小。我们从FPN检测器[21]借用了这个想法。通过以下公式将实例I分配给特征金字塔的级别Pl0:l0 = bl0 + log2(√wh/ 224)c(3)这里,224是canonicalicalImageNet预训练大小,而l0是目标级别,其中w×h = 2242的实例应该映射到。在这项工作中,我们选择l0 = 5,因为ResNet [13]使用第五卷积组的特征图进行最终分类。
FSAF翻译
最新推荐文章于 2025-05-25 10:28:52 发布