Dynamic Anchor Learning for Arbitrary-Oriented Object Detection_mingqi1996的博客-CSDN博客 可以自己简单读一下原文,再来看一下作者自己的解读,看完解读会好理解很多。
arxiv论文地址:https://arxiv.org/abs/2012.04150
代码:https://github.com/ming71/DAL
以下翻译多有不准确,自行理解吧。以下是自己的一些笔记理解。
这篇文章读了一半,读不懂,放弃了。
基于anchor的算法在训练时首先根据将预设的anchor和目标根据IoU大小进行空间匹配,以一定的阈值(如0.5)选出合适数目的anchor作为正样本用于回归分配的物体。但是这会导致两个问题:
进一步加剧的正负样本不平衡。对于旋转目标检测而言,预设旋转anchor要额外引入角度先验,使得预设的anchor数目成倍增加。此外,旋转anchor角度稍微偏离gt会导致IoU急剧下降,所以预设的角度参数很多。(例如旋转文本检测RRD设置13个角度,RRPN每个位置54个anchor)。
分类回归的不一致。当前很多工作讨论这个问题,即预测结果的分类得分和定位精度不一致,导致通过NMS阶段以及根据分类conf选检测结果的时候有可能选出定位不准的,而遗漏抑制了定位好的anchor。目前工作的解决方法大致可以分为两类:网络结构入手和label assignment优化,这里不再赘述。
————————————————
原文链接:https://blog.csdn.net/mingqi1996/article/details/111250036
论文中重点图的阅读解释
问题的发现:用旋转RetinaNet在HRSC2016数据集上实验可视化检测结果发现,(可视化锚框以及最后的定位效果)很如下图b,多低质量的负样本居然能够准确回归出目标位置,但是由于被分为负样本,分类置信必然不高,不会被检测输出;如图a,一些高质量正样本anchor反而可能输出低质量的定位结果。
核心问题之一: 定位性能并不完全依赖于锚和GT之间的空间对齐。
图1:预定义锚(红色)及其回归框(绿色)。
(a)表明高输入IoU的锚点不能保证完美检测。(b)表明,在空间上与GT盒对齐较差的锚点仍然具有准确定位目标的潜力(我的理解:a红色锚框与GT匹配度高,但是最终得到的绿色定位回归不准确,b图中红色锚框与GT匹配度低,反而可以得到较准确的的绿色定位回归)
图2说明图1显示问题1的普遍性:
图2:使用输入IoU进行标签分配的锚的分类和回归能力分析。
(a)只有74%的阳性样本锚点在回归后能够很好地定位GT(输出IoU高于0.5),说明引入了很多假阳性样本。
(b)只有42%的高质量检测(输出IoU高于0.5)来自匹配锚点,这意味着相当多的负锚点(在本例中为58%)具有实现精确定位的潜力。
(c)目前的标签分配导致分类置信度和输入IOU之间正相关。
(d)高性能的检测结果显示定位能力和分类可信度之间的相关性较弱,这不利于在推理过程中通过分类评分来选择准确的检测结果。论文中的解读:
- 如图2(a)所示,回归后有相当比例(26%)的阳性锚点与GT对齐不良,说明阳性锚点不能保证准确定位。
- 超过一半的候选达到高质量的预测是从负面回归(见图2(b))的,这意味着大量具有高本地化潜力的负片没有被有效地使用。定位性能并不完全依赖于锚点与GT之间的空间对齐,而且之前定位性能不一致。
此外,锚回归前后不一致的定位性能进一步导致分类和定位之间的不一致,这在之前的工作中已经讨论过(Jiang et al. 2018;Kong et al. 2019;他等人2019年)。
- 如图2(c)所示,基于输入IoU的锚匹配策略导致分类置信度与输入IoU呈正相关关系。然而,如上所述,输入IoU并不完全等同于本地化性能。因此,我们不能通过分类评分来区分检测结果的定位性能。
- 图2(d)的结果也证实了这一观点:大量输出IoU高的回归框被误判为背景。
解决:
设计了一个简单而有效的匹配度标准来评估锚的定位潜力,综合考虑了空间对准的先验信息、定位能力和回归不确定性。然后,我们采用匹配度对训练样本进行选择,这有助于消除假阳性样本,动态挖掘潜在的高质量候选样本,同时抑制了回归不确定性带来的干扰。接下来,我们提出匹配敏感损失函数,进一步缓解分类和回归之间的不一致性,使分类器对具有较高定位性能的建议更具鉴别能力,最终实现高质量的检测。
贡献总结如下:
- 我们观察到锚与GT box之间基于IoU的标签分配导致定位能力评估不佳,进而导致分类和回归性能不一致。
- 引入匹配度来测量锚点的定位势。为了实现高质量的检测,提出了一种基于该度量的标签分配方法。
- 针对分类与回归相关性较弱的问题,提出匹配敏感损失算法,提高高质量方案的识别能力。
相关工作:
面向任意对象检测
目前主流探测器可分为两类:两级探测器(Ren et al. 2015;Dai et al. 2016)和一级检测器(Redmon et al. 2016;Liu et al. 2016)。现有的旋转检测器大多建立在使用水平边框表示的检测器上。为了定位旋转目标,文献(Liu, Ma, and Chen 2018;Ma等人2018;Liao, Shi, Bai 2018;Liu et al. 2017)。然而,由于方位的变化,这些探测器必须预先设置大量的旋转锚点,使它们在空间上与GT盒对齐。还有一些方法只使用水平锚点来检测面向对象。例如,RoI Transformer (Ding et al. 2019)使用水平锚点,但通过空间变换学习旋转的RoI,减少了预定义锚点的数量。R3Det(Y ang et al. 2019a)采用级联回归和精细化的盒重编码模块,在水平方向锚框上实现了最先进的性能。虽然上述方法取得了良好的效果,但它们不能对anchors的质量做出正确的判断,导致标签分配不当,给训练过程带来不利影响。
标签分配
大多数基于锚的探测器在特征图的每个位置都密集地预设锚。大量的锚定会导致严重的不平衡问题,特别是对于带有额外角度设置的任意方向物体。最常见的解决方案是通过特定的抽样策略来控制候选人的比例(Shrivastava, Gupta, and Girshick 2016;Pang et al. 2019)。此外,Focal Loss (Lin et al. 2017b)降低了简单示例的权重,以避免其对损失的压倒性贡献。该工作(Li, Liu, and Wang 2019)进一步将极端困难的样本作为异常值,并使用梯度协调机制来克服不平衡问题。我们证明了异常值的存在是普遍的,并且我们的方法可以防止这种噪声样本被错误地分配。
一些研究已经观察到使用输入IoU作为标签分配标准所引起的问题。动态R-CNN (Zhang et al. 2020a)和ATSS (Zhang et al. 2020b)自动调整IOU阈值,选择高质量的正样本,但他们没有考虑IOU本身是否可信。这项工作(Li et al. 2020)指出,分配给锚的二元标签是有噪声的,并为每个锚构建清洁度评分,以监督训练过程。然而,它只考虑了正样本的噪声,忽略了大量负片潜在的强大定位能力。HAMBox (Liu et al. 2020)揭示了不匹配的锚点也可以实现准确的预测,并试图利用这些样本。但其根据输出IoU开采的补偿锚不可靠;此外,它不考虑匹配正数的退化。FreeAnchor (Zhang et al. 2019)将对象-锚匹配作为一种最大似然估计过程来选择最具代表性的锚,但其公式相对复杂。
Proposed Method
动态锚选择
一些研究(Zhang et al. 2019;Song, Liu, and Wang 2020)报道了在GT上定位物体所需的判别特征并不是均匀分布的,特别是对于不同方向和宽高比的物体。因此,基于空间对齐的标签分配策略,即输入IoU,导致无法捕获目标检测所需的关键特征。
一种直观的方法是利用回归结果的反馈,即输出IoU来表示特征对齐能力,并动态指导训练过程。几次尝试(Jiang et al. 2018;Li et al. 2020)在这方面进行了研究。特别地,我们初步选择基于输出IoU的训练样本,并将其作为软标签进行分类。但是我们发现模型很难收敛,主要有以下两个问题:
- 高输入IoU但低输出IoU的锚点并不总是负样本,这可能是因为没有足够的训练。
- 不匹配的低质量锚点偶然获得准确的定位性能,往往会被误判为阳性样本。
以上分析表明,回归的不确定性会影响特征对齐输出IoU的可信度。回归不确定性在之前的许多工作中得到了广泛的讨论(Feng, Rosenbaum, and Dietmayer 2018;崔等人2019;Kendall and Gal 2017;Choi et al. 2018),表示回归过程中的不稳定性和不相关性。我们在实验中发现,它也误导了标签分配。高质量的样本无法得到有效利用,选择的假阳性样本会导致训练不稳定。遗憾的是,无论是用于标签赋值的输入借据还是输出借据,都不能避免回归不确定性带来的干扰。
基于以上观察结果,我们引入匹配度(MD)的概念,利用锚点空间匹配的先验信息、特征对齐能力和回归不确定性来衡量定位能力,定义如下:
这篇文章读了一半,读不懂,放弃了。
作者的知乎评论也很精彩,然而我还是不怎么能看懂chaser - 知乎
核心工作
Dynamic Anchor Learning for Arbitrary-Oriented Object Detection_mingqi1996的博客-CSDN博客
以下截图
![]()
采用匹配度敏感的loss能够有效增强检测器的精确定位样本的区分能力,如下图所示,左边是正常训练检测器,可以看到定位精度上高性能部分的额区分度很低,但是加了MSL后样本的定位性能大大提高,同时分类分数也对应提高,越往右上角颜色越深,分类分数和定位性能有较好的关联性。很多分析由于原论文篇幅有限没有展开。
这为匹配度公式的参数调试提供一种思路:α \alphaα和γ \gammaγ应该同时增大或减小。此外观察不难发现,α \alphaα在0.3-0.5的效果是最好的,γ \gammaγ也大致可以确定。这个结论在其他数据集和其他anchor设置上也验证过,依然成立,论文篇幅有限这里没有予以展示。但是说实话,取值而言会有偏移,虽然不会太多但是还是要调一调,这个有点不快乐。
原文的实验也非常充分。
————————————————
原文链接:https://blog.csdn.net/mingqi1996/article/details/111250036