点击下方卡片,关注「集智书童」公众号

DETR及其变种已成功应用于拥挤行人检测,取得了令人满意的性能。然而,作者发现在不同程度的拥挤场景中,DETRs的Query数量必须手动调整,否则性能会不同程度地下降。
在本文中,作者首先分析了目前的两种Query生成方法,并总结了四项设计自适应Query生成方法的准则。然后,作者提出了基于Rank的自适应Query生成(RAQG)来缓解这个问题。具体来说,作者设计了一个Rank预测头,可以预测编码器生成的最低置信度正样本的Rank。基于预测的Rank,作者设计了一种自适应选择方法,可以自适应地选择编码器生成的粗略检测结果来生成Query。
此外,为了更好地训练Rank预测头,作者提出了Soft Gradient L1 loss。Soft Gradient L1 loss的梯度是连续的,可以更精细地描述损失值与模型参数更新值之间的关系。作者的方法简单而有效,理论上可以插入任何DETRs中,使其能够自适应生成Query。
在Crowdhuman数据集和Citypersons数据集上的实验结果表明,作者的方法可以自适应生成DETRs的Query,并取得竞争性的结果。特别是,作者的方法在Crowdhuman数据集上取得了39.4%的MR的最新水平。
行人检测是目标检测的一个重要研究方向,旨在找出图像中的行人位置。它广泛应用于许多领域,如视频监控、自动驾驶和机器人技术。其下游任务包括物体跟踪、人员再识别、步态识别、轨迹预测等。
目前,传统场景中的行人检测性能接近饱和状态。例如,基于卷积神经网络的行人检测器Pedhunter在Caltech数据集的Reasonable(R)集上实现了2.31%的MR。然而,Pedhunter在Citypersons数据集的拥挤重度遮挡(HO)集上性能严重受限,MR仅为43.5%。这主要有两个原因。
在拥挤场景中,行人之间存在严重遮挡,因此难以提取行人的特征,导致性能下降。另一方面,基于卷积神经网络的行人检测器需要通过NMS进行后处理,这不可避免地会抑制真正的正样本。
最近,提出了一种无NMS的目标检测器DETR,在通用目标检测中取得了令人满意的性能。DETRs性能出色的原因之一是DETRs在注意力模块中采用Query进行特征提取。目前,DETRs的Query是一组嵌入或一组嵌入和相应的参考点或框,这些Query来自编码器的粗略预测或一组可学习参数,如图1(a)和1(b)所示。

因此,一些先驱将DETRs应用于拥挤行人检测。郑等人[10]发现,与Faster-RCNN+FPN相比,Deformable DETR在拥挤行人检测中产生了更多的假阳性。郑等人认为,这些假阳性是由提取不可区分特征(如噪音)的Query产生的。因此,郑等人提出了Iter-DeformableDETR,通过邻近高置信度预测来优化这些Query,从而减少假阳性。
除上述问题外,作者发现DETRs在拥挤行人检测中存在明显不足之处。Query的数量需要手动调整。对于不同的数据集,如Citypersons数据集和Crowdhuman数据集,Query的数量必须分别设置为500和1000,否则性能会有不同程度的下降。这意味着如果没有手动调整Query的数量,与基于卷积神经网络的行人检测器相比,DETRs无法保证在实际应用中获得卓越性能。因此,作者的目标是实现Query自适应,以消除Query数量的影响。
在本文中,作者将两种当前的Query生成方法应用于Iter-Deformable-DETR。分析结果,作者发现:
Query的数量不应少于行人的数量,因为检测一个行人至少需要一个Query; 靠近行人的Query不应过于密集,因为DETRs采用一对一的标签分配; 至少需要一个靠近行人的Query进行特征提取; 用于检测行人和背景的Query比例应适当。
基于上述分析,作者提出了基于Rank的自适应Query生成方法。具体来说,作者设计了一个Rank预测头,可以预测编码器生成的最低置信度正样本的Rank。用于训练该头的标签是通过DETRs的标签分配算法获得的。基于预测的Rank,作者设计了一种自适应选择方法,用于自适应地选择编码器生成的粗略检测结果(样本)以生成Query,如图1(c)所示。
为了更好地训练Rank预测头,作者设计了Soft Gradient L1 loss。原始L1损失的梯度是离散的,只有-1、0和1。然而,作者的Rank预测的回归范围是[0,+∞]。原始L1损失无法很好地描述大范围的回归任务。因此,作者重新定义了L1损失不同损失值与其对应梯度之间的映射关系,以更好地训练模型。
在Crowdhuman和Citypersons上的实验结果表明,作者的方法可以自适应生成DETRs的Query并取得竞争性的结果。特别是,作者的方法在Crowdhuman数据集上取得了39.4%的MR的最新水平。
在本节中,作者研究了拥挤行人检测中的两种当前Query生成方法。实验结果表明,Query的数量对拥挤行人检测有显著影响。然后,作者分析了实验结果并总结了设计作者方法的准则。

首先,作者介绍DETRs的流程,以帮助读者理解作者的想法。DETRs的流程通常相同。因此,作者使用图4进行说明。具有黄色或蓝色背景的部分对DETRs是通用的。DETRs包括Backbone网络、编码器和解码器。Backbone网络和编码器用于提取和融合图像特征。解码器利用交叉注意力机制输出检测结果,其中包括两个输入,即Query和图像特征。Query来自一组可学习参数或编码器的输出。
作者在Crowdhuman数据集和Citypersons数据集上进行了两个后续实验。实验使用的模型是专门用于拥挤行人检测的Iter-Deformable-DETR。所有实验参数和预处理均参考了Iter-Deformable-DETR的论文,没有进行任何修改。
为了研究Query数量对性能的影响,作者首先将可学习参数应用于Iter-Deformable-DETR,并将Query的数量分别设置为500、1000、1500和2000。结果如表II所示。当Query数量为500时,MR性能显著下降,明显不如FPN。在1000和1500之间没有明显差异。当数量为2000时,性能略微下降。这个实验表明,Query的数量确实影响了拥挤行人检测的性能。

为了更好地说明Query数量如何影响性能,作者可视化了这些Query,如图2所示。这些Query是框,但为了展示方便,作者将它们简化为框的中心点。从图2中可以看出,这些Query均匀稀疏地分布在图像上。如图2所示,背景中有大量Query,这几乎不贡献于行人检测。最重要的是,一些行人没有被Query覆盖,例如绿色框中的行人。没有Query,行人的特征很难被提取,因此难以被检测到。
另一方面,如图2(d)中的蓝色框所示,大尺度的行人很可能会被多个Query覆盖。这些密集的Query可能会提取相似的特征,但由于一对一的标签分配,这些相似Query的标签不同。其中一个Query匹配为1,其余为0,这使模型感到困惑。这也是过多Query可能导致性能下降的原因之一。
此外,正负训练样本的比例也不能忽视。由于DETRs采用一对一的标签分配,每个图像上的正训练样本数量是固定的,Query数量的增加直接导致正负样本比例的变化。众所周知,正负训练样本比例不当是影响深度学习模型性能的一个不可忽视的因素。
两阶段是Deformable DETR提出的,它利用编码器的粗略检测结果生成Query。作者将两阶段应用于Iter-Deformable-DETR。

结果如表II所示。与可学习参数相比,两阶段可以实现与手动调整Query类似的性能。首先,与可学习参数一样,Query的数量对两阶段也非常敏感。当Query数量为500或1000时,MR性能也不如FPN。MR是行人检测的最重要评估指标,反映了对下游任务性能的影响。这意味着在没有最佳Query数量的情况下,Iter-Deformable-DETR可能在下游任务中不如FPN。

作者以同样的方式可视化了两阶段生成的Query,如图3所示。在图3(a)中,大量Query集中在行人身上,导致模型混淆更严重。然而,较少的Query有助于缓解上述问题,当行人数量超过Query数量时,多余的行人无法被检测,如图3(b)所示。黄色框表示由于Query不足,有些行人无法被检测到。

作者在Citypersons上进行了相同的实验。表III显示了两种Query生成方法在Citypersons上的实验结果。R表示Citypersons的Reasonable集合的MR,该集合不拥挤。HO表示Citypersons的Heavy Occlusion集合的MR,该集合略微拥挤。结果显示,首先,Query的数量仍然影响性能。
其次,与表II相比,可以发现相同的Query生成方法在不同的数据集上也需要设置不同数量的Query以实现最佳性能。此外,Query数量对拥挤程度的影响随着拥挤程度的增加而增加。Crowdhuman是最拥挤的。从上面的分析可以看出,在拥挤行人检测中使DETRs具有Query自适应性是非常必要的。
基于上述分析,作者总结了4个设计自适应Query生成方法的准则:
Query的数量不应少于行人的数量。
覆盖在同一行人身上的Query不应太密集,以避免提取高度相似的特征。
每个行人至少需要一个附近的Query以进行特征提取。
Query用于检测行人和背景的比例应适当。
在本节中,基于上述总结,作者提出了基于Rank的Query自适应生成(RQAG)来使DETRs具有Query自适应性,并使用Soft Gradient L1 Loss进行训练。该方法在理论上非常简单且有效,可以插入到任何DETRs中。
根据前面的介绍,作者知道Two-stage中的Query内容是自适应的。因此,作者认为按照作者的总结来改进Two-stage以实现数量自适应是一个好主意。
为什么Two-stage中的Query内容是自适应的?在Two-stage中,Query的内容来自编码器的粗略检测结果,粗略检测结果来自图像特征。因此,作者也可以设计一个头来预测一个变量R,以替代Two-stage中手动调整和固定的K,以实现数量自适应。
目标检测模型需要使用标签分配算法将标签分配给每个检测结果,作为训练的正样本或负样本。如图4所示,DETRs的标签分配算法是一对一的,因此两个检测结果被分配为正样本,其余都作为负样本。根据作者的总结,作者将R定义为最低置信度(得分)的正样本的Rank。假设R的预测值准确,使用TOP R来选择由编码器生成的粗略预测结果以生成Query,与Two-stage中相同,可以满足作者总结的前三个方面。
由于R是最低置信度的正样本Rank,可以选择用于检测行人的所有Query。这意味着Query的数量不少于行人的数量。其次,每个行人附近至少有一个Query。第三,由于一对一的标签分配和正样本通常具有较高的置信度,Query不像图3(a)中的Two-stage那么密集。
使用TOP R来选择和生成Query满足前三个准则,但无法满足第四个准则。对于训练良好的模型,正训练样本通常具有比负训练样本更高的置信度。如果预测的R准确,这意味着解码器没有负Query。
众所周知,正负训练样本比例不当可能导致性能下降。另一方面,在极度拥挤的场景中,很难保证R的准确性。一旦预测的R少于行人数量,前三个准则仍然无法得到满足。因此,作者提出了一种自适应选择方法,其中包含一个负样本调整器M。M被定义为相对于正样本的负样本的倍数。
M具有两个功能:(1)为解码器提供适当比例的正负训练样本。(2)如果预测的R不准确,尽量确保前三个准则得到满足。后续实验证明,作者的方法中的M与先前方法中的Query数量不同,不需要手动调整。作者方法中的M是一个常数。
最后,作者设计了一种自适应选择方法,用于选择由编码器生成的前个粗略检测结果来生成Query。Query生成的过程与Two-stage相同。简而言之,选择的检测结果的位置被用作Query的参考框,并将这些位置输入到一个小型网络中,以生成相应的嵌入。

如图5所示,作者的Rank预测头的网络非常简单,包括1个多头自注意力模块、3个全连接层和1个Relu激活函数。多头自注意力模块的功能是将图像特征池化为一个特征。其中,Q是来自编码器的平坦图像特征的平均值,K和V是来自编码器的平坦图像特征。3个全连接层模仿了DETRs的回归头的网络结构。Relu的功能是约束R的预测范围在0到正无穷之间。
Rank预测头与DETRs的回归头类似,因为它们都用于回归任务。然而,它们的回归范围差异很大。作者Rank预测头的回归范围是从0到正无穷。DETRs边界框的回归范围是从0到1。
因此,使用与目标检测中的相同回归损失函数(如L1)进行训练不合适。根据反向传播的过程,梯度用于更新模型的参数。反向传播的过程可以表示为:

其中w是模型的参数,t是训练步骤,η是学习率,是由损失函数产生的梯度,是其余梯度。L1 Loss只包含三个梯度,如下所示,这使得难以稳定训练Rank预测头,因为离散的梯度使得难以精细描述损失值和模型参数更新值之间的关系,特别是对于大范围的回归任务:

其中是预测值,是标签。受方程(1)的启发,作者提出了Soft Gradient L1 Loss。作者的核心思想是,只是从损失值到更新值的映射的结果。前者映射是梯度。作者重新设计了L1损失的映射,以训练作者的Rank预测头。映射可以表示为:

Soft Gradient L1 Loss与L1 Loss一样对称。不同之处在于Soft Gradient L1 Loss的可以随着损失值而改变。损失值越小,越接近0,损失越大,就越偏离0。使用作者的方法,DETRs的损失函数可以表示为:

前3项是DETRs的通用部分,用于分类和回归建议。最后一项是作者的Soft Gradient L1 Loss,用于训练Rank预测头。
作者遵循大多数DETRs的设置,、和分别为2、2和5。作者将设置为0.05。


为了验证作者方法中的M与先前方法中的Query数量不同,它不是需要手动调整的超参数,作者设计了以下实验。该实验在Crowdhuman和Citypersons上进行。作者将M设置为从0到8。
一致的结果显示在表IV中。当M为5时,在这两个数据集上性能最佳。因此,M在所有后续实验中被设置为5。这个实验表明作者的方法可以使DETRs在不同场景中实现Query自适应并提高性能。

如表V所示,Soft Gradient L1 Loss明显优于其他回归损失。由于在训练开始时存在巨大的损失值,L2 Loss会导致梯度爆炸。L1 Smooth是在Fast-RCNN [40]中为边界框提出的。
因此,对于作者的回归任务,Rank预测,L1 Smooth Loss类似于L1 Loss。


如您从表VII中可以看出,对于每幅图像中包含22.6名行人的Crowdhuman,使用作者的方法自适应生成Query相比于另外两种方法增加了很少的额外开销。Learnable Parameters不使用编码器来生成Query,因此花费的时间最短。
与Two-stage相比,作者的方法只添加了一个小网络来预测R,并为解码器生成了更多的Query。在实际应用中,作者的方法甚至可能加速模型。

如表VII和VIII所示,对于拥挤的Crowdhuman数据集,生成了更多的Query。然而,在略微拥挤的Citypersons数据集中,生成的Query较少。
[1]. Query-adaptive DETR for Crowded Pedestrian Detection.

AutoDesk团队提出Segment-Like-Me | SLiME能比SAM分割更丝滑吗?

YOLO没向3D低头 | 毫不意外!YOLO-BEV正式来袭,依旧沿袭YOLO家族超快推理特性


扫码加入👉「集智书童」交流群
(备注:方向+学校/公司+昵称)




前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」
欢迎扫描上方二维码,加入「集智书童-知识星球」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!
内容中包含的图片若涉及版权问题,请及时与我们联系删除
评论
沙发等你来抢