旷视的拥挤目标检测新作,和上一篇拥挤目标检测论文来自相同的团队
论文题目:
Progressive End-to-End Object Detection in Crowded Scenes
论文地址:
https://arxiv.org/abs/2203.07669
摘要
本文提出了一种新的基于查询的人群检测框架,以前的基于查询的检测器有两个缺点:首先,通常在拥挤的场景中对单个对象将推断出多个预测;第二,随着解码阶段深度的增加,性能趋于饱和,利用一对一标签分配规则的性质,我们提出了一种渐进预测方法来解决上述问题,具体来说,我们首先选择易于产生真正预测的已接受查询,然后根据先前已接受的预测细化其余的噪声查询,实验表明,该方法可以显著提高拥挤场景下基于查询的检测器的性能,在配备了我们的方法后,Sparse RCNN在具有挑战性的CrowdHuman数据集上实现了92.0%的AP、41.4%的MR−2和83.2%的JI,优于基于框的方法MIP,此外,所提出的方法对拥挤性具有鲁棒性,仍然可以在适度和轻微拥挤的数据集(如CityPersons和COCO)上获得一致的改进。
1. 简介
拥挤目标检测是计算机视觉中一个现实而富有挑战性的研究领域,在过去的几十年里,已经进行了许多研究,并取得了令人印象深刻的进展,然而,它们中的大多数需要手工组件,例如锚点设置和后处理,导致处理场景的性能次优。
最近,Carion等人提出了一个完全的端到端对象检测框架DETR,它引入了可学习查询来表示对象,并在没有任何后处理的情况下实现了具有竞争力的性能,它可以被归类为基于查询的方法来区分从基于框的和基于点的方法,继DETR之后,Sparse RCNN确保对象查询与感兴趣区域(RoI)的本地特征交互,而可变形的DETR提出了只关注一小部分关键采样点的注意模块,它们进一步提高了检测精度,并缓解了DETR中出现的几个问题:速度慢且计算量大。
以上的成功启发了我们对拥挤场景中基于查询的对象检测方法的研究,旨在设计一个更复杂的端到端检测框架,尽管这些基于查询的方法可以在COCO这样稍微拥挤的数据集上获得显著的结果,但我们的初步研究表明,在拥挤的场景中,它们面临几个尚未解决的挑战:(1)基于查询的检测器倾向于对单个对象推断多个预测,从而引入假阳性,图1a显示了常见的情况;(2).随着解码阶段深度的增加,基于查询的检测器性能趋于饱和甚至更差,详见附录。
我们的动机 对基于查询的方法SparseRCNN的进一步研究在人群场景中产生了以下有趣的发现,如图2a所示,具有高置信度分数(例如高于0.7的阈值)的预测可以准确预测大部分目标对象,同时很少出现假阳性,这些预测更有可能是真正积极的,可以被接受的预测。
而其余的,存在相当数量的真阳性和假阳性,可以视为噪声预测,自然地,如果一个对象是通过一个公认的预测检测到的,就不需要用噪声预测再次检测到它,因此,在公认预测的背景下,为什么不加强对那些嘈杂预测的辨别呢?为此,有噪声的查询可以“感知”它们的目标是否被检测到,如果是这样,他们的信心分数将会降低,然后被过滤掉。
我们的贡献 为此,我们提出了一种具有预测选择器、关系信息提取器、查询更新器和标签分配的渐进预测方法,以提高基于查询的对象检测器在处理拥挤场景时的性能。
首先,我们开发了一个预测选择器,以选择与高置信度分数相关的查询作为可接受的查询,而将其余的查询作为噪声查询,然后,为了让噪声查询“感知”它们的目标是否被检测到,我们设计了一个关系提取器,用于噪声查询和它们接受的邻居之间的关系建模,此外,查询更新器是通过执行一个新的本地自我注意只关注空间相关的邻居来开发的,最后,引入一种新的一对一标签分配规则,在接受的和细化的噪声查询中逐步分配样本,通过所提出的方法,可以很好地解决上述问题:(1)每个物体只能检测一次,大大减少了假阳性的数量,同时增加了真阳性的数量,如图1b所示;(2).如图2b所示,与具有相同深度的对应的SparseRCNN相比,性能不断提高。
我们的方法是通用的,可以合并到多个体系结构中,并显著提高了基于查询的检测器的性能,在配备了我们的方法后,具有ResNet-50骨干的Sparse RCNN在具有挑战性的数据集CrowdHuman上获得了92.0%的AP, 41.4%的MR−2和83.2%的JI,优于基于框的方法MIP,此外,采用我们的方法,变形DETR也达到了92.1%的AP和84.0%的JI,此外,我们的方法在不太拥挤的场景中工作得相当好,例如,使用我们的方法的SparseRCNN仍然可以分别在适度和轻微拥挤的数据集Citypersons和COCO上获得1.0% MR−2和1.1% AP收益。
2. 相关的工作
端到端目标检测 RelationNet是尝试直接预测结果的先驱工作之一,与几个著名基准测试的对应程序相比,取得了很有前景的性能,DETR引入了可学习查询来表示对象,并直接对每个实例执行单个预测,随后,deformable-detr将每个查询的注意域限制在参考点周围的局部区域,以加速收敛并提高检测性能,同时,Sparse R-CNN利用一组固定的可学习查询来表达对象,而不是使用大量的代理表示,例如锚,类似于可变形的DETR, RoIAlign用于限制局部区域的注意场。自适应聚类transformer提出通过LSH近似聚类来改善DETR编码器中的注意力分布,以达到加速收敛的目的,UP-DETR设计了一种新的自监督方法来提高DETR的收敛速度,而TSP分析了导致DETR收敛速度慢的主要因素,SMCA探索了更好的信息交互机制,进一步加快了收敛速度,提高了DETR的性能。
拥挤场景中的物体检测 研究人员对行人遮挡检测问题的研究倾注了极大的兴趣,针对这一问题,已经提出了具体的方法,包括通过部分检测和改进训练目标设计中的手工规则,近年来,基于cnn的方法在拥挤目标检测中占据主导地位,并取得了可观的进展,一些研究提出了新的损失函数来解决拥挤检测问题。
此外,NMS的有效性是建立在一个图像中很少在同一位置出现多个实例的假设之上的,这在拥挤的场景中是不成立的,但为拥挤的场景设计重复删除并非易事。
Soft-NMS和Softer-NMS用分数衰减代替了附近建议的硬删除,其他人则探索了NMS感知训练,包括具有自适应阈值的NMS、特征嵌入和具有集合抑制的多重预测,以解决拥挤场景中的目标检测问题。
最近,PEDR提出了几种改进基于查询的检测器应对拥挤检测性能的技术,这与我们的方法是正交的,他们的技术也适用于我们的工作。
目标检测的关系建模 早期的研究使用对象关系作为后处理步骤。通过考虑对象关系,对检测到的对象重新打分,例如,DPM使用共现(表示同一图像中存在两个对象类的可能性)来细化对象得分,随后的方法尝试更复杂的关系模型,通过考虑额外的位置和大小,这些方法在前深度学习时代取得了一定的成功,但没有证明在cnn中的有效性,最近的一些研究使用空间推理来建模对象关系。
其中,有代表性的是GossipNet 和 RelationNet ,两者都具有相同的建模框之间关系,然而,GossipNet的网络比较复杂(深度为>80),计算成本较高,虽然它原则上允许端到端学习,但没有实验证据支持,RelationNet利用自注意进行特征交互,在一般目标检测中取得了很好的改进,然而,它在处理人群场景方面表现不佳。
最近与我们相关的研究有PS-RCNN和IterDet,他们提出根据先前的预测来检测目标,他们需要屏蔽特征或生成一个历史映射来记住以前的检测,引入噪声,同时限制性能改进或产生大量计算,即便如此,它们都需要一种后处理方法来在每次迭代中删除重复项。
最近的基于查询的对象检测器利用可学习的查询来表示对象,并利用自我/交叉注意来建模查询之间的关系,以端到端方式检测对象,我们的工作继承了这种方法,并提高了它们在重度、中度和轻度拥挤场景中的表现。
3.方法
在本节中,我们首先简要回顾一下基于查询的对象检测器,例如Sparse RCNN,接下来,我们显式地演示我们主要部署在SparseRCNN上的方法,最后,将讨论检测器设计的主要区别。
3.1. 基于查询的检测器
我们的方法可以部署在大多数基于查询的对象检测器上,为了演示提议的方法,我们选择Sparse RCNN作为默认实例化,图4a描述了它的检测管道,也可以表述为:
其中q∈RN×d表示可学习对象查询,N和d分别表示查询q的个数和维数,在阶段t, RoIAlign Pbox在前一阶段预测的边界框bt−1的指导下,从FPN特征xFPN中提取RoI特征,同时,对输入查询qt−1应用多头自注意力模块MSAt−1,得到转化后的查询qt−1,然后,动态卷积模块DynConvt−1以xt−1和qt−1为输入,进行动态卷积生成下一阶段的qt,同时将qt输入预测分支Bt−1,用于当前框预测Bt,作为下一阶段t的输入。
3.2. 我们的方法
如图3所示,所提出的渐进式预测方法由预测选择器、关系信息提取器、查询更新器和标签分配几个部分组成,下面将详细介绍。
预测选择器 对于第1节中描述的结果,我们开发了一个预测选择器,以选择那些容易产生高置信度分数的预测的查询作为可接受的查询,而将其余的查询作为需要进一步细化的噪声查询,这个过程可以用式(2)表示。
关系信息提取器 正如第1节所提到的,被接受的查询可以准确预测大部分目标对象,因此,如果一个对象被一个公认的预测检测到,就没有必要噪声预测再次探测到它,为了使这些噪声查询具有感知其目标是否被检测到的能力,我们开发了一个关系信息提取器来建模噪声预测与其接受的邻居之间的关系。
关系信息提取器的详细设计如图5所示,过程如式(3)所示,对于每个噪声预测bi,我们首先在Dht−1中找到它们的接受邻居N (bi),构建空间相关对(bi, N (bi)),然后,将编码后的对连同它们之间的交过并(IoU)输入到一个紧凑网络中,得到几何关系特征H(bi),由于每个噪声预测对应的可接受邻居数是不确定的,在保持排列不变性的前提下,利用聚合函数将H(bi)约简到相同的特征维数,在我们的方法中,我们默认使用最大池化,此外,将合并的几何特征与转换后的查询特征融合在一起,通过非线性函数进一步激活。
查询更新器 为了进一步细化噪声查询的特征,开发了一个查询更新器,如式(4)所示,由于Dlt−1和Dht−1的数据分布与Dt−1的数据分布不同,首先引入一组新的可学习查询,通过元素累加来补充关系特征,然后将补充的噪声查询集作为输入查询qt−1,执行新的局部自注意LMSAt−1和随后的如式(1)所示的动态卷积。
由于目标检测主要集中在图像的局部区域,设计了一种新的本地自注意模块LMSAt来更新有噪声的查询qt−1,它确保每个查询只与本地邻居交互,而不是对整个图像的整个查询,本地自我注意首先根据iou大于0查找每个查询的邻居,然后,它以与MSA相同的方式执行“qkv”机制,为此,我们进行局部的自我关注,而不是全局的。
标签分配 因为被接受的查询倾向于产生真阳性的预测,而噪声查询则涉及相当数量的真阳性和假阳性。
针对端到端对象检测,引入了一种新的一对一标签分配规则,逐级分配样本,具体地说,我们首先将公认的预测Dht−1与对象的基础真值集匹配,然后剔除已匹配的目标,主要考虑噪声预测Dlt−1与目标剩余的真值集之间的匹配,该匹配过程在算法1中描述,其中匹配代价的计算与原始版本略有不同,采用空间先验计算匹配代价C,即包围框的中心bt需要落在对应的目标框内,除此之外,匹配代价函数的表述与原文相同。
3.3. 检测器设计的差异
通常,我们的方法可以部署在大多数基于查询的对象检测器上,为了说明提议的方法,我们选择Sparse RCNN作为默认实例化,它由t(默认t = 6)个解码阶段组成,每个解码阶段根据等式1执行预测,如图3所示,我们保持第一个t−1解码阶段不变,只在最后一个阶段采用所提出的方法,因此,主要的区别在于最后的解码阶段,下面将对此进行描述。
结构的最后一个阶段 如图4b所示,最后解码阶段t首先使用预测选择器S,根据相关预测的置信度分数将查询分为可接受查询和噪声查询,然后将它们输入关系信息提取器R,提取噪声预测与其接受邻居之间的关系特征,最后,将查询输入查询更新器QU,进一步细化以进行识别和定位。
框的预测 在前t−1阶段使用回归分支进行框预测,不同的是,对于最后阶段的框预测,我们在训练和测试阶段都直接使用前一个t−1阶段的恒等映射结果,这是因为,在后一层,预测的边界框不太可能发生波动,同时,识别分支与前几个阶段相同。
训练损失 我们采用Sparse RCNN的集合预测损失进行训练,对于训练t阶段的样本,我们从公认的预测Dht−1中去除这些样本,为了缓解类不平衡的问题,我们遵循否定样本过滤机制,早期拒绝那些分类良好且置信度评分低于0.05的否定查询。
4. 实验
在本节中,我们将在重度拥挤、中度拥挤和轻度拥挤的数据集上评估我们的方法,以演示所提方法在不同场景中的通用性。
数据集 我们采用三个数据集—CrowdHuman、CityPersons和COCO—分别对重度拥挤、中度拥挤和轻度拥挤的情况进行综合评价,表1列出了每个数据集的“实例密度”,由于我们提出的方法主要旨在改善拥挤检测,我们在CrowdHuman上执行了大部分比较和消融实验,对Citypersons和COCO的评价实验表明,该方法对拥挤性具有鲁棒性。
评价指标 我们主要采用AP、MR−2和JI三个标准作为评价指标,一般来说,AP越大,JI越大,MR−2越小,性能越好。
实现细节 除非另有说明,否则我们采用Sparse RCNN作为默认实例化,标准ResNet-50在ImageNet上预先训练作为骨干,我们用Adam优化器训练我们的模型,动量为0.9,权值衰减为0.0001。模型经过50,000次迭代训练,初始学习率为0.00005,在迭代37,500时降低0.1。
最后一个阶段是经过5000次迭代训练后的优化,λcls = 2, λL1 = 5, λgiou = 2,建议框、建议特性和阶段的默认数量分别设置为500、500和6,此外,关系提取器R中的中间特征维数为256,梯度从第二阶段的提案箱中分离出来,以稳定训练,此外,当任何忽略区域之间的交叉面积(IoA)大于阈值0.7时,阴性样本不参与训练,此外,在不同的基于查询的检测器中,超参数s和θ默认为0.7和0.4。
4.1. CrowdHuman实验
CrowdHuman分别包含15,000、4,370和5,000张用于训练、验证和测试的图像,为了进行公平的比较,我们重新实现了大部分涉及的模型,使用数据集中的全身标注在验证集上对结果进行评估。
主要结果 我们比较了主流的对象检测器,包括基于框的:单阶段,两阶段,基于点的和基于查询的。
如表2所示,我们的方法优于这些完善的检测器,与基于框的、基于点的和基于查询的检测器相比,实现了显著的性能改进,说明了我们的方法在处理拥挤场景时的有效性,具体来说,我们的方法比最先进的基于框的方法MIP获得1.8%的AP和0.9%的JI增益,MIP专门处理拥挤的场景。
基于查询的方法Sparse RCNN,配备了提出的方法和500个查询,可以在具有挑战性的CrowdHuman数据集上实现92.0%的AP, 41.4%的MR−2和83.2%的JI,比其对应的原始SparseRCNN好1.3%,3.3%和1.8%。
当查询数量增加到750个时,我们的方法仍然可以获得92.5%的AP性能和83.3%JI,这是因为更多的查询可以覆盖图像中对象的更多模式,例如比例、大小、位置和其他特征,此外,采用我们的方法,可变形DETR2比原始的可变形DETR<54>也能获得2.2%的MR−2改进,此外,与基于盒子的方法MIP相比,它还获得了1.4%的AP和1.6%的JI增益,证明了我们方法的有效性。
不同模块的消融研究 为了探索第3.2节中提出的模块的有效性,我们对关系信息提取器R、局部自我注意模块LMSA和新初始化的嵌入E进行了广泛的消融研究,所有实验都在具有500个查询的Sparse RCNN、ResNet-50主干上进行,并在CrowdHuman数据集上进行评估,表3a显示,关系信息提取器R可获得0.8%的AP, 1.7%的MR−2和1.6%的JI的改善,它表明了它在减少假阳性和召回假阴性方面的有效性,此外,当装备使用新的局部自注意LMSA,由于局部自注意可以有效地减少重复,因此进一步提高了三个评价指标的性能,此外,新初始化的嵌入,旨在近似噪声预测的新数据分布,可以轻微改善MR−2。
超参数s消融研究 为了分析可信度评分阈值s的作用,我们首先将图像中检测框和目标框之间的关系表示为二部图G = (V, E),它由集合V = D∪G和节点E组成。D表示一组得分高于预先定义的得分阈值的预测框,G表示目标框,当D中的一个框与G中的另一个框之间的IoU值默认高于0.5时,E中的一条边被定义为重叠,因此,应用匈牙利算法可以获得匹配结果,如图2所示,随着置信度分数的增加,真阳性数呈明显上升趋势,而假阳性数迅速下降,此外,图7a描述了我们的方法在不同s值下所能达到的性能,其中性能随着s的增加而略有增加,因此,如果不是特定的,我们将s默认设置为0.7。
超参数θ的消融研究 在这里,我们分析了超参数交叉过并阈值θ的影响,正如第1节所讨论的,确保候选框能够“感知”它的邻居,有助于有噪声的查询决定是否降低其可信度得分,这也是我们的方法有效工作的先决条件,交叉过并(IoU)阈值θ的不同设置会影响整个检测器的性能,我们在CrowdHuman数据集上进行了实验,s被冻结为0.7,同时线性改变θ的值,从图7b中,我们发现我们的方法对IoU阈值的变化具有鲁棒性,这种成功可能归因于新设计的部件具有良好的近似特性。
与以往的关系建模工作进行比较 为了区分前人的工作和我们的工作,我们评估了几个有代表性的关系建模方法:RelationNet,GossipNet,RelationNet利用自我注意模块来建模不同预测之间的关系,与此同时,GossipNet使用几个手工设计的关系块来探索预测框之间的关系,而IterDet迭代推断基于前一个迭代生成的历史地图的预测,我们为RelationNet重新实现了它的重评分版本,对于GossipNet和IterDet,我们使用它们的开源实现进行评估所有模型均使用FPN和ResNet-50作为骨干。
如表3b所示,与以往的关系建模工作相比,我们的方法表现出更好的性能,令人惊讶的是,RelationNet和GossipNet的AP和MR−2显著下降,这可能归因于次优标签分配规则,因为他们都选择一个目标周围置信度分数最高的预测作为正确框,其余的作为否定框,预测的坐标不涉及计算损失,这可能会导致在拥挤的场景下性能下降。
假阳性分析 为了理解有助于性能改进的因素,我们对我们的方法进行了错误分析,我们采用最近提出的TIDE来比较我们的方法与对应的Sparse RCNN,我们分析了所有方法在召回率=0.9时的综合误差,如图6所示,我们的方法在去除重复、提供更准确的定位和减少错误识别方面做得更好,因为部分查询可以通过关系信息提取器感知它们的目标是否被检测到,此外,局部自注意模块确保查询只与它们的邻居交互,而不是整个查询,为此目的,可以有效地消除重复,此外,在最后一个回归分支中插入标识映射用于框预测,增加了前一个解码阶段的训练样本数量,使得优化更加容易,此外,得益于新的数据分布逼近的可学习嵌入,进一步增强了对象查询的表示能力。
4.2. Citypersons实验
CityPersons是行人检测中广泛使用的基准之一,它包含5000张图像(分别为2975张用于训练,500张用于验证,1525张用于测试),每张图片的大小为1024 × 2048,为了提高整体性能,我们建议在CrowdHuman数据集上预训练所有模型,并在CityPersons(合理的)训练子集上对它们进行微调,然后在(合理的)验证子集上进行测试,对于那些基于框的方法,我们训练和评估的图像分辨率比原来的提高了1.3倍,以获得更好的精度,基于查询的方法在500个查询的原始图像大小上进行训练和评估,其他设置与Sparse RCNN和可变形的DETR相同。
4.3. COCO实验
从表1可以看出COCO的拥挤度很低,这超出了我们的设计目的,尽管如此,我们仍然对该数据集进行了实验,以验证:1)我们的方法是否可以很好地推广到多类检测;2)我们的方法是否仍然可以处理稍微拥挤的场景,特别是孤立的实例。
遵循具有300个查询的Sparse RCNN的常见实践,我们在原始验证集中(名为minival)使用5000个图像的子集进行验证,同时使用训练和验证集中的其余图像进行训练,除上一阶段提出的模块和标签分配规则外,其他设置与原始方法相同,表4显示了变形DETR和SparseRCNN的性能比较,获得了适度的改善,例如,AP比变形DETR高0.9%,AP比SparseRCNN<39>高1.1%,实验结果反映了我们的渐进预测方法在微拥挤场景下的有效性,证明了所提出的方法也可以解决基于查询的检测器的性能饱和问题。
5. 结论
在本文中,我们提出了一种渐进预测方法来提高基于查询的对象检测器在处理拥挤场景时的性能,有了我们的方法,两种具有代表性的基于查询的方法,Sparse RCNN和可变形的DETR在重度拥挤、中度拥挤和轻度拥挤的数据集上实现了一致的改进,这表明我们的方法对拥挤是稳健的。
由于SparseRCNN和可变形DETR需要大量的计算资源,使得我们的方法很难部署在计算能力有限的设备上,如何研制一种具有计算效能的端到端检测器仍在探索中,此外,我们发现噪声查询的决策边界不明确,我们相信,如果采用更好的特征工程方法或损失函数,可以进一步提高性能,然而,这超出了这项工作的目的。