Dynamic Anchor Learning for Arbitrary-Oriented Object Detection(DAL)
面向任意目标检测的动态锚点学习
摘要:面向任意的目标广泛地出现在自然场景、航空照片、遥感图像等中,因此面向任意的目标检测得到了广泛的关注。目前许多旋转探测器使用大量不同方向的锚点来实现与地面真实框的空间对齐。然后应用交叉-并集(IoU)对正、负候选样本进行训练。但是,我们观察到,选择的正锚点回归后并不能保证检测准确,而部分负样本可以实现准确的定位。这说明通过IoU对锚点进行质量评价是不恰当的,这进一步导致了分类置信度和定位精度之间的不一致。本文提出了一种动态锚点学习(DAL)方法,利用新定义的匹配度综合评价锚点的定位潜力,进行更高效的标签分配过程。这样,检测器就可以动态地选择高质量的锚点来实现准确的目标检测,从而缓解分类和回归之间的分歧。利用新引入的DAL,我们只需几个水平预置锚点,就可以实现对面向任意目标的卓越检测性能。在HRSC2016、DOTA、UCAS-AOD三个遥感数据集和ICDAR 2015场景文本数据集上的实验结果表明,与基线模型相比,该方法取得了较大的改进。此外,我们的方法也使用水平边界框进行对象检测。代码和模型可以在github上找到。
论文:https://arxiv.org/abs/2012.04150
代码地址:https://github.com/ming71/DAL
1.前言
目标检测是计算机视觉中最基本、最具挑战性的问题之一。近年来,随着深度卷积神经网络(CNN)的发展,在目标检测方面取得了巨大的成功(Ren et al. 2015;Dai等人2016;Redmon等人2016;Liu等人2016)。大多数检测框架利用预设的水平锚点实现与真实值(GT)框的空间对齐。在训练阶段,通过特定的策略选择正样本和负样本,称为标签分配。
图1:预定义锚框(红色)和它的回归框(绿色)。(a)表明输入高IOU的锚不能保证完美的检测。(b)表明,与GT框空间对齐较差的锚点仍然具有准确定位对象的潜力。
由于真实场景中的物体趋向于以不同的方向出现,面向对象的物体检测问题逐渐受到重视。目前有很多方法通过引入额外的方向预测和预设的旋转锚点来实现面向对象检测(Ma et al. 2018;廖、石、白2018)。这些检测器通常遵循与一般目标检测框架相同的标签分配策略。为简单起见,我们将GT框与锚框之间的IoU称为输入IoU,将GT框与回归框之间的IoU称为输出IoU。选择的正样本往往比负样本获得更高的输出IoU,这是因为它们与GT更好的空间对齐,提供了足够的语义知识,有利于准确的分类和回归。
然而,我们观察到,分配的样本的定位性能与上述假设不一致。如图1所示,正负锚的划分似乎并不总是与检测性能相关。此外,我们统计了所有候选锚点定位性能的分布,以探讨这种现象是否具有普遍性。如图2(a)所示,回归后相当比例(26%)的正锚框与GT对齐不良,说明正锚框不能保证准确定位。此外,超过一半的候选框获得高质量的预测是从负锚框回归(见图2(b)),大量高定位能力的负样本没有得到有效的利用。综上所述,我们得出结论,定位性能并不完全依赖于锚点和GT之间的空间对齐。
此外,锚定回归前后不一致的定位性能进一步导致分类和定位之间的一致性,这在之前的工作中已经讨论过(蒋等,2018;孔等2019;He等人,2019年)。如图2(c)所示,基于输入IoU的锚匹配策略导致分类置信度和输入IoU之间的正相关。然而,如上所述,输入IoU并不完全等同于定位性能。因此,我们不能根据分类得分来区分检测结果的定位性能。图2(d)的结果也印证了这个观点:大量输出IoU高的回归框被误判为背景。
图2:使用输入IoU进行标签分配的锚点的分类和回归能力分析。(a)只有74%的正样本锚在回归后能很好地定位GT(输出IoU高于0.5),说明引入了很多假阳性样本。(b)只有42%的高质量检测(输出IoU高于0.5)来自匹配的锚,这意味着相当多的负锚框(本例中为58%)有可能实现精确定位。(c)当前的标签分配导致分类置信度和输入IoU之间的正相关。(d)高性能的检测结果在定位能力和分类置信度之间表现出微弱的相关性,这不利于在推理过程中通过分类得分选择正确的检测结果。
为了解决这些问题,我们提出了一种动态锚学习方法,以更好地分配标签,进一步提高检测性能。首先,设计一个简单而有效的标准匹配度来评估锚的定位潜力,该方法综合考虑了空间对准的先验信息、定位能力和回归不确定性。然后,采用匹配度进行训练样本选择,有助于消除假阳性样本,动态挖掘潜在的高质量候选,并抑制回归不确定性带来的干扰。接下来,我们提出了一个匹配敏感的损失函数,以进一步缓解分类和回归之间的不一致性,使分类器对具有高定位性能的建议更具区分性,并最终实现高质量的检测。
在包括遥感数据集HRSC2016、DOTA、UCAS-AOD和场景文本数据集ICDAR 2015在内的公共数据集上的大量实验表明,我们的方法可以实现对任意方向目标检测的稳定和实质性的改进。与我们的方法相结合,即使是普通的一级检测器也可以在几个数据集上与最先进的方法竞争。此外,在ICDAR 2013和NWPU VHR-10上的实验证明,我们的方法对于使用水平框的目标检测也是通用的。该方法是通用的,可以很容易地集成到现有的目标检测流水线中,而不会增加推理的计算成本。
我们的贡献总结如下:
1)我们观察到锚和GT框之间基于IoU的标签分配导致次优的定位能力评估,并进一步带来不一致的分类和回归性能。引入匹配度来衡量锚的定位潜力。
2)为了实现高质量的检测,提出了一种新的基于该度量的标签分配方法。
3)提出匹配敏感损失是为了缓解分类和回归之间弱相关性的问题,提高高质量建议的区分能力。
2.任意面向对象检测的相关工作
目前主流的探测器分为两类:两级探测器(任等2015;Dai等人(2016年)和一级检测器(Redmon等人(2016年;刘等2016)。现有的旋转检测器大多建立在使用水平包围盒表示的检测器上。为了定位旋转物体,在文献中采用了预置旋转锚和附加角度预测(刘,马,陈2018;Ma等人,2018年;廖、石、白2018;刘等2017)。然而,由于方向的变化,这些探测器不得不预设大量的旋转锚,以使它们在空间上与GT框对齐。还有一些方法只使用水平锚来检测定向对象。例如,RoI Transformer(丁等人,2019)使用水平锚,但通过空间变换学习旋转的RoI,减少了预定义锚的数量。R3Det(Y ang等2019a)采用级联回归和细化的盒重编码模块用水平框实现SOTA性能。虽然上述方法取得了良好的效果,但它们不能对框的质量做出正确的判断,从而导致标签分配不当,给训练过程带来不利影响。
标签分配
大多数基于锚的检测器在特征图的每个位置密集地预设锚。大量的预置锚会导致严重的不平衡问题,特别是对于任意取向的物体,需要额外的角度设置。最常见的解决方案是通过特定的抽样策略来控制候选人的比例(Shrivastava,Gupta,Girshick 2016Pang等人,2019年)。此外,焦点损失(林等2017b)降低了简单例子的权重,以避免其对损失的压倒性贡献。李、刘、王(2019)进一步将极硬样本视为异常值,利用梯度协调机制克服不平衡问题。我们证明了异常值的存在是普遍的,并且我们的方法可以防止这样的噪声样本被错误地分配。
一些工作已经观察到使用输入IoU作为标签分配标准所导致的问题。Dynamic R-CNN(张等2020a)和(张等2020b)自动调整IoU阈值选择高质量正样本,但未考虑IoU本身是否可信。该工作(李等2020)指出,分配给锚的二进制标签是有噪声的,并为每个锚构造清洁度分数以监督训练过程。然而,它只考虑了正样本的噪声,而忽略了大量负样本潜在的强大定位能力。HAMBox(刘等,2020)揭示了不匹配的锚也可以实现准确的预测,并试图利用这些样本。然而,根据输出IoU挖掘的补偿锚是不可靠的;此外,它没有考虑正样本匹配的退化。FreeAnchor(张等,2019)将目标-锚匹配表述为选择最具代表性锚的最大似然估计过程,但其表述相对复杂。
3.基于RetinalNet的旋转检测方法
在许多情况下,实时推理对于面向任意对象的检测是必不可少的。因此,我们使用单级检测器RetinalNet(Lin等人,2017b)作为基线模型。它以ResNet-50为主干,采用与(林等2017a)相似的体系结构构建多尺度特征金字塔。在P3、P4、P5、P6、P7各层的特征上设置预定义的水平锚。请注意,这里不使用旋转锚,因为它效率低且没有必要,我们将在接下来的章节中进一步证明这一点。由于引入了额外的角度参数,定向框以的格式表示。对于边界框回归,我们有:
其中x、y、w、h、θ分别表示中心坐标、宽度、高度和角度。x和分别用于预测框和锚(同样用于y、w、h、θ)。给定地面真值框偏移,多任务损失定义如下:
其中值p和向量t分别表示预测的分类分数和预测的盒子偏移量。变量p*表示锚的类别标签(p*= 1表示正样本,p*= 0表示负样本)。
动态锚点选择
部分研究(张等2019;宋、刘和王(2020)已经报道了定位物体所需的辨别特征在GT上不是均匀分布的,尤其是对于具有各种方向和纵横比的物体。因此,基于空间对齐的标签分配策略,即输入IoU,导致无法捕获目标检测所需的关键特征。
一种直观的方法是使用回归结果的反馈,即输出IoU来表示特征对齐能力,并动态地指导训练过程。若干尝试(蒋等2018;李等人(2020年)在这方面已经取得了进展。特别地,我们基于输出IoU尝试性地选择训练样本,并将其用作分类的软标签。然而,我们发现,由于以下两个问题,该模型很难收敛:
1)具有高输入IoU但低输出IoU的锚并不总是负的,这可能导致没有足够的训练。
2)偶然获得准确定位性能的无与伦比的低质量锚往往被误判为正样本。
上述分析表明,回归不确定性会干扰特征对齐输出IoU的可信度。回归不确定性在前人的许多工作中得到了广泛的讨论(冯,罗森鲍姆,迪特迈尔2018;Choi等人,2019年;肯德尔和Gal 2017Choi等人,2018年),这代表了回归过程中的不稳定性和不相关性。我们在实验中发现它也误导了标签分配。具体来说,高质量的样本不能被有效地利用,并且所选择的假阳性样本将导致不稳定的训练。遗憾的是,用于标签分配的输入IoU和输出IoU都无法避免回归不确定性带来的干扰。
基于以上观察,我们引入匹配度(MD)的概念,利用锚的空间匹配、特征对齐能力和回归不确定性的先验信息来度量定位能力,定义如下:
其中sa表示空间对齐的先验,其值相当于输入IoU。f a代表由GT框和回归框之间的IoU计算的特征对准能力。α和γ是用于加权的超参数受不同项目的影响。u是惩罚项,表示训练过程中的回归不确定性。它是通过回归前后的IoU变化获得的:
回归过程中干扰的抑制对于高质量的锚点采样和稳定的训练至关重要。回归前后IoU的变化代表锚评估不正确的概率。请注意,我们对回归不确定性的惩罚项的构造非常简单,由于检测性能对u的形式不敏感,因此采用了简单、直观但有效的形式。
利用新定义的匹配度,我们进行动态锚选择以获得更优的标签分配。在训练阶段,我们首先计算GT框和锚之间的匹配度,然后选择匹配度高于某个阈值(在我们的实验中设置为0.6)的锚作为正锚框,其余的为负锚框。之后,对于不匹配任何锚点的GT,匹配度最高的锚点将作为正候选进行补偿。为了实现更稳定的训练,我们在训练过程中逐步调整输入IoU的影响。具体调整时间表如下:
其中,Max_Iteration是迭代的总次数,是出现在等式中的最终加权因子。(3).
匹配敏感损失
为了进一步增强分类和回归之间的相关性以实现高质量的面向任意的检测,我们将匹配度集成到训练过程中,并提出匹配敏感损失函数(MSL)。分类损失定义为:
其中和分别代表所有锚和匹配度阈值选择的正样本。N和Np分别表示所有锚和正锚的总数。F L(.)是RetinalNet中定义的焦点损失(林等2017b)。Wj表示匹配补偿因子,用于区分不同定位潜力的正样本。对于每个基本事实g,我们首先计算其与所有锚的匹配度,作为。然后根据某个阈值选择正候选,正样本匹配度表示为
,其中
。假设g的最大匹配度为
,补偿值表示为
,
之后,将所有正值的匹配度加上md,形成匹配补偿因子:
通过精心设计的匹配补偿因子,检测器可以区别对待不同定位能力的正样本。特别是,对于分类器来说,更多的注意力将放在具有高定位潜力的候选对象上。因此,可以通过分类评分进行高质量的预测,这有助于缓解分类和回归之间的不一致性。
由于匹配度衡量锚的定位能力,因此它可以进一步用于促进高质量的定位。我们将匹配敏感回归损失表述如下:
其中smooth表示回归的平滑损失。匹配补偿因子Wj被嵌入回归损失中,以避免高质量正样本的损失贡献被淹没在与GT框空间对齐不佳的样本的主要损失中。从图3(a)可以看出,分类得分与回归框的定位能力相关性不够强,导致分类置信度选择的预测结果有时不可靠。在具有匹配敏感损失的训练之后,如图3(b)所示,更高的分类分数准确地表征了由输出IoU表示的更好的定位性能,这验证了所提出的方法的有效性。
图3:输出IoU和分类分数之间的相关性,有和没有MSL。
4.实验
数据集
我们在遥感数据集HRSC2016、DOTA、UCAS-AOD和场景文本数据集ICDAR 2015上进行了实验。图像中的基本事实框都是定向的边界框。HRSC2016 (LB等人,2017)是一个具有挑战性的遥感船舶检测数据集,包含1061张图片。整个数据集分为训练集、验证集和测试集,包括436,541和444幅图像。DOTA(夏等,2018)是最大的面向边界框标注的遥感影像目标检测公共数据集。它包含2806幅航空图像和188,282个注释实例,总共有15个类别。请注意,DOTA中的图像太大,我们将图像裁剪成800×800的面片,步长设置为200。UCAS-(朱等,2015)是一个航空飞行器和汽车检测数据集,包含1510幅图像。我们将其随机分为训练集、验证集和测试集,比例为5:2:3。ICDAR 2015数据集用于ICDAR鲁棒文本检测挑战(Karatzas等人,2015年)的附带场景文本挑战4。它包含1500个图像,包括1000个训练图像和500个测试图像。
实现细节
对于实验,我们如上所述在RetinalNet上建立基线。对于HRSC2016、DOTA和UCAS-AOD,只有三个水平锚的纵横比设置为{1/2,1,2}。对于ICDAR,仅设置了五个纵横比为{1/5,1/2,1,2,5}的水平锚。所有图像大小调整到800×800。我们使用随机翻转、旋转和HSV颜色空间变换来增加数据。
用于训练的优化器是Adam。初始学习率设置为1e-4,并在每个衰减步骤除以10。HRSC2016、DOTA、UCAS-AOD和ICDAR 2015的总迭代次数分别为20k、30k、15k和40k。我们在RTX 2080Ti上训练模型,批量设置为8。
消融实验
不同组件的评估 我们在HRSC2016上进行了组件式实验,以验证所提出方法的贡献。实验结果如表1所示。对于具有输出IoU的变体,α被设置为0.8以进行稳定的训练,即使如此,检测性能仍然从80.8%下降到78.9%。这表明输出IoU对于标签分配并不总是可信的。在抑制回归不确定性的情况下,先验空间对齐和后验特征对齐可以有效地协同工作来进行标签分配,因此性能比基线显著提高了4.8%。此外,使用匹配灵敏度损失函数的模型实现了88.6%的mAP,并且高精度检测的比例显著增加。例如,AP75is比具有不确定性抑制的变体高9.9%,这表明匹配度引导损失有效地区分了具有差分定位能力的锚,并且更加关注高匹配度锚以提高高质量的检测结果。
超参数 为了找到合适的超参数设置,探索参数之间的关系,我们进行了参数灵敏度实验,结果如表2所示。在存在不确定性抑制项的情况下,随着α的适当减小,特征对齐的影响增加,mAP增加。这表明由输出IoU表示的特征对准有利于选择具有高定位能力的锚。然而,当α极大时,性能急剧下降。可能的原因是,当输出IoU几乎不能提供反馈信息时,大多数潜在的高质量样本被不确定性惩罚项抑制。在这种情况下,削弱不确定性抑制能力,即增加γ有助于缓解这一问题,使锚选择更加稳定。
表1:我们的方法中每个组件对HRSC2016数据集的影响。
表2:HRSC2016数据集上不同超参数的分析。
实验结果
与其他取样方法的比较 实验结果如表3所示。基线模型根据输入IoU进行标签分配。张等(2020b)在利用水平盒进行目标检测方面取得了很大的成功。当应用于旋转物体检测时,仍然有实质性的改进,比基线模型高5.3%。至于HAMBox(刘等2020),由于根据输出IoU挖掘的样本很可能是低质量样本,挖掘样本太多可能导致网络无法发散,对于匹配锚不够的GT,我们只补偿一个锚。比基准高出4.6%。与基线模型相比,所提出的DAL方法显著提高了7.8%。与目前流行的ATSS方法相比,该方法考虑了回归框的定位性能,因此选择的样本具有更强的定位能力,效果比回归框高2.5%,验证了该方法的有效性。
DOTA的结果 我们将提议的方法与其他最先进的方法进行了比较。如表4所示,我们实现了71.44%的mAP,比基线模型高出3%。结合DAL,即使是香草的RetinaNet也可以和很多先进的方法竞争。此外,我们还将我们的方法嵌入到其他模型中,以验证其普遍性。S2A-Net(韩等2020)是一个先进的旋转检测器,实现了对DOTA数据集的最先进的性能。可以看出,我们的方法进一步性能提高了2.83%,达到了mAP的76.95%,在所有比较的模型中取得了最好的结果。DOTA上的一些检测结果如图4所示。
表3:与HRSC2016上其他标签分配策略的比较。
表4:OBB任务在DOTA数据集上的性能评估。R-101表示ResNet-101(同样表示R-50),H-104表示Hourglass-104。
图4:用我们的方法在DOTA上可视化检测结果
HRSC 2016的结果 HRSC2016包含大量大展弦比和任意方位的旋转舰船。我们的方法在HRSC2016上实现了最先进的性能,如表5所示。以ResNet-101为方法汽车飞机AP50 AP75 FR-O(夏等2018) 86.87 89.86 88.36 47.08 RoI变压器(丁等2019) 87.99 89.90 88.95 50.54基线84.64 90.51 87.57 39.15基线+DAL 89.25 90.49 89.87 74.30主干和输入图像被调整到800×800,我们的方法已经达到了89.77%的最高mAP。即使我们使用更轻的主干ResNet50和更小的输入规模416×416,我们仍然可以达到88.6%的mAP,这与当前的许多高级方法相当。
值得一提的是,我们的方法在每个位置只使用了三个水平锚,但是优于锚数量较多的框架。这表明,有效地利用预定义的锚和选择高质量的样本是至关重要的,并且不需要预设大量的旋转锚。此外,我们的模型是一个一级检测器,使用的特征图是P3-P7。与两级检测器的P2-P6相比,需要定位的位置总数更少,因此推理速度更快。输入图像大小调整到416×416,我们的模型在RTX 2080Ti图形处理器上达到34帧/秒。
表5:与HRSC2016上最先进的检测器的比较。NA表示要素地图每个位置的预设锚点数量。
UCAS-AOD的结果表6中的实验结果表明,与基线相比,我们的模型进一步提高了2.3%。具体来说,小型车辆的检测性能显著提高,表明我们的方法对小物体也很有效。请注意,DAL方法对AP75进行了戏剧性的改进,这表明基于匹配度的损失函数有助于更加关注高质量的样本,并有效地区分它们以实现高质量的对象检测。
表6:无人作战飞机AOD数据集的探测结果。
ICDAR 2015的结果 为了验证该方法在不同场景下的泛化能力,我们还在场景文本检测数据集上进行了实验。结果如表7所示。经过仔细的参数选择和长期的训练,我们的基线模型只获得了77.5%的f检验。该方法将检测性能提高了4%,达到了81.5%的F值。经过多尺度训练和测试,达到82.4%,相当于很多设计良好的文本检测器的性能。但ICDAR 2015数据集存在大量长文本,往往被误检测为若干短文本。设计用于一般的旋转检测,DAL没有特别考虑这种情况,因此,该新模型仍然不能优于当前最先进的场景文本检测方法,如DB(廖等人,
表7:2015年国际减灾会议不同方法的比较。p、R、F分别表示查全率、查准率和f测度。*指多规模培训和测试。
HBB目标检测实验 当使用水平边界框(HBB)定位对象时,标签分配仍然受到不均匀区分特征的影响。虽然这种情况没有旋转物体严重,但仍然存在训练不稳定的隐患。因此,我们的方法在使用HBB的一般目标检测中也是有效的。ICDAR 2013 (Karatzas等人,2013年)、NWPU-10(程、周和韩,2016年)和VOC2007 (Everingham等人,2010年)的实验结果如表8所示。可以看出,基于HBB滤波的目标检测算法取得了实质性的改进,证明了该方法的普适性。
表8:HBB任务对2013年国际减灾会议和西北太平洋大学VHR-10的绩效评估。
5.结论
本文提出了一种动态锚学习策略来实现高性能的面向任意对象检测。具体而言,匹配度的构建综合考虑了空间对齐、特征对齐能力和标签分配的回归不确定性。然后,将动态锚选择和匹配敏感损失集成到训练流水线中,以提高高精度检测性能,并缩小分类和回归任务之间的差距。在多个数据集上的大量实验证实了该方法的有效性和通用性。