论文链接:https://arxiv.org/abs/2203.07669
代码链接:https://github.com/megvii-research/Iter-E2EDET
摘要
在遮挡(crowded)场景中,端到端的物体检测框架容易受到复杂遮挡的影响而出现重复检测,由此产生冗余检测框影响性能。为了解决这一问题,本文从 Sparse RCNN 这一端到端物体检测框架入手,发现早期基于查询的检测器大多受限于两个缺陷:1)对遮挡场景中同一个目标进行多次预测;2)检测性能与解码器的深度成正比。基于一对一的标签分配规则,本文提出了一种渐进式的端到端物体检测器,其原理是在在优化过程中仅选择倾向于真阳性预测(true positive prediction)的低分检测框进行后续的渐进式优化。实验结果表明,该方法在遮挡场景数据集CrowdHuman上性能 SOTA,在CityPersons和MSCOCO等常规检测数据集上也有显著的性能提升。
贡献
目标检测一直是CV领域的热点研究方向,其中拥挤/遮挡目标检测(crowded object detection)又是一个实际且具有挑战性的子领域。近期,相关学者提出了端到端的检测框架DETR,将可学习的查询向量引入到模型中来代表候选目标,由此取得了优异的性能。这一类方法随后被归纳为基于查询向量的检测模型。此后,Sparse RCNN也被提出以解决DETR中的慢收敛问题和巨大计算量问题。
然而,尽管基于查询向量的方法在COCO等非拥挤数据集上取得了良好的性能,本文发现它们在拥挤数据集上仍受限于如下两个问题:(1).基于查询的检测器倾向于对单个对象推断多个预测,从而产生假阳性预测(false positive)。图1a为常见故障情况;(2).随着解码模块深度的增加,基于查询的检测器的性能会趋于饱和甚至更差。如下图所示,大部分目标都可以被高置信度的预测结果涵盖,但仍会出现一部分假阳性预测。在所有预测结果中,部分真阳性和假阳性预测都可以被视为噪声预测,因此,如果某一个目标已经被检测到,则不需要再出现与其相关的噪声预测。这要求噪声预测的查询向量能够感知到目标是否已经被检测到。
基于此,本文提出了一种渐进式的预测方法,该方法配备了预测选择器、关系信息提取器、查询向量更新器和标签分配算法,以提高基于查询的对象检测器在处理拥挤场景时的性能。预测选择器将与高置信度分数相关的查询向量作为可接受查询,而将其他查询作为噪声查询,关系信息提取器建模有噪声查询和可接受查询之间的关系,查询更新器通过对空间相局部自注意机制来更新查询向量。最后,标签分配算法逐步将噪声查询和可接受查询中的预测结果与样本进行匹配。
方法
本文提出的渐进式端到端对象检测框架如上图所示。首先,预测选择器将与高置信度分数相关的查询选择为可接受查询,而将其他查询作为噪声查询。然后,关联信息提取器根据已接受的预测,对有噪声的查询与其邻居之间的关系进行建模。接下来,查询被输入到查询更新器中,通过执行局部注意力机制进一步细化查询。
预测选择器(Prediction selector)
预测选择器用于将较高可信度的查询向量与需要细化的噪声查询向量进行区分,其运行机制可以定义如下:
其中t表示解码阶段,Dt-1表示上一阶段t-1解码器所产生的所有预测,h与l分别指示可接受向量和噪声向量。b与s表示每个预测框及其可信度。通过上式定义的操作,即将预测的目标框根据特定阈值划分其查询向量。
关系信息提取器(Relation information extractor)
正如前文所说,大量的目标对象可以被接受的查询准确地预测,但也会出现重复预测的缺陷。因此,如果一个对象被一个已经包含于预测选择器给出的可接受查询向量,就不需要使用噪声向量再次进行细化预测。因此,关系信息提取器主要用于建模查询向量之间的关联。
这一目的可以通过上图所示的操作实现,对于每个噪声向量对应的预测bi,其相关的邻居预测N(bi)可以构成预测对(bi,N(bi))。接着使用pooling、非线性函数计算预测对之间的关联:
上式中,N()表示根据交并比(IoU)的阈值函数O(*,*)查询预测b的邻居预测。表示位置编码函数,u(*,*)是一个从特征中提取空间关联的函数,即两个全连接层与ReLU层。
查询更新器
查询更新器负责将噪声查询向量进行细化更新。它依赖于一个自注意力机制LMSA与动态卷积层实现:
标签分配算法
可接受的查询向量一般能够较准确地实现目标预测,而噪声查询向量中存在若干错误预测。因此,标签分配算法的目的是为细化的噪声查询向量进行样本分配,其流程如算法1所示:
该算法首先移除可接受向量Dh的检测结果,接着考量噪声向量Dl与剩余目标G之间的匹配,这一匹配依赖于空间先验,即约束噪声向量对应检测框的中心落在目标G的检测框中。
实验
本文采用三个数据集对重度拥挤、中度拥挤和轻度拥挤情况进行综合评价:CrowdHuman , CityPersons、COCO。表1列出了每个数据集的“实例密度”。
由于本文提出的方法主要是为了提高拥挤情况下的检测性能,所以在CrowdHuman上进行了大部分的对比和消融实验,并在Citypersons和COCO上验证该方法对稀疏场景的鲁棒性。
重度拥挤实验结果
如表2所示,本文方法在性能上明显优于已有检测器,与基于框(box)、基于点(point)和基于查询(query)的检测器相比,在检测精度方面实现了显著的性能改进,这说明了本文的方法在处理拥挤场景时的有效性。具体来说,本文的方法实现了1.8%的AP和0.9%的JI增益,优于最先进的的算法法MIP。
中度拥挤实验结果
如表6所示,本文方法可以显著地提高查询检测器的性能,它在CrowdHuman和CityPersons验证数据集上都实现了最优的结果。
轻度拥挤实验结果
表4显示了D-DETR和S-RCNN的性能变化情况。通过应用本文的方法,D-DETR提高了0.9%的AP,S-RCNN提高了1.1%的AP。实验结果表明,该方法可以有效地解决轻度拥挤场景下查询检测器的性能饱和问题。
检测结果视觉效果
内容中包含的图片若涉及版权问题,请及时与我们联系删除
评论
沙发等你来抢