让检测告别遮挡 | 详细解读NMS-Loss是如何解决目标检测中的遮挡问题?

简介: 让检测告别遮挡 | 详细解读NMS-Loss是如何解决目标检测中的遮挡问题?

1简介


非极大值抑制(Non-Maximum Suppression, NMS)在目标检测中至关重要,它通过合并假阳性(FP)和假阴性(FN)影响目标检测结果,尤其是在人群遮挡场景中。在本文中提出了NMS造成的训练目标和评估指标之间的弱连接问题,并提出了一种新的损失函数NMS-loss,使NMS过程可以端到端地被训练而不需要任何附加的网络参数。

NMS-loss惩罚2种情况,即FP没有被抑制,而FN被NMS错误地删除。具体来说,NMS-Loss提出了pull loss将具有相同目标的预测拉得很近,以及push loss将具有不同目标的预测推得很远。

实验结果表明,在NMS-Loss的帮助下NMS-Ped检测器在Caltech数据集上的Miss Rate为5.92%,在CityPersons数据集上的Miss Rate为10.08%,均优于现有的同类检测器。

本文主要贡献

  • 首先提出了行人检测中训练目标与评估指标之间的弱连接问题,并提出了一种新的NMS-loss,使NMS过程在不引入任何参数和运行时间开销的情况下可以端到端进行训练。
  • 作者提出了精心设计的pull loss和push loss,分别考虑预测坐标和置信度,帮助网络提高精度和召回性能。
  • 在行人检测中,作者借助NMS-Loss提出的NMS-Ped在Caltech和CityPersons数据集上优于现有的SOTA方法。

2NMS-LOSS


传统的NMS流程如Alg.1中所示,没有考虑红色字体。

NMS从一组得分为S的检测框开始,

首先,将得分最大的proposal 从集合移动到最终保留检测的集合;

然后,删除中得分为的且与的重叠高于阈值的框。

对剩下的集重复此过程。

但是,现有的方法没有将NMS纳入训练过程中来调整检测框,使得学习目标与评价指标不一致,这意味着NMS未抑制FP和NMS消除FN分别会损害精度和召回率。为了避免不一致,作者提出NMS-loss将NMS程序引入到训练过程中,自适应地选择由NMS引起的错误预测,并使用精心设计的pull和push两种损失来最小化FP和FN。具体来说NMS-Loss定义为:

其中为pull损失用来惩罚FP同时不抑制由NMS,为push损失用来惩罚NMS的FN错误删除。系数和是平衡损失的权重。

NMS-Loss的细节在Alg.1中用红色文本强调。与传统pipeline不同,这里使用一组,包含相应的检测框ground truth index,用于识别FP和FN。在NMS-Loss计算过程中,M是一个辅助字典,以ground truth指数为key,对应最大检测得分为value,用来记录每个ground truth的max score预测。

NMS-loss自然地合并到NMS过程中,而不包含任何额外的训练参数。对于测试来说,NMS-Loss的运行时成本为零。

2.1 定义Pull Loss

以降低FP为目标需要找出错误的预测。为此,在每次迭代中检查当前的max score预测是否为其对应的 ground truth的max score预测。如果不是,则说明是一个未被NMS抑制的FP,pull loss应在和 ground truth的max score prediction 之间执行(见图1)。形式上pull loss计算如下:

其中为预定义的NMS阈值,为对应于的预测score。

作者注意到pull loss的2个特性:

  • 当和之间的IoU较小时,pull loss有增加的趋势,迫使网络学会将拉向。NMS的阈值用于防止异常值的梯度对模型学习的影响过大。另外,对于NMS只需要使FP和TP之间的IoU高于即可。在pull loss中使用来减小异常值的梯度,可以使网络易于学习和收敛。
  • FP预测得分对pull loss也有较大影响。FP得分越高,对评价结果的影响越大,直观上需要更多的关注。此外,它使网络学习修正FP不仅要制约box坐标,而且要考虑降低预测分数。

2.2 定义Push Loss

在NMS中,当前的最大score预测用消除了获得高于的IoU的box。如果剔除的框对应的ground truth index 与不同,则为FN,降低召回率(见图1)。为了避免错误地删除提出push loss来惩罚FN:

其中为对应的预测得分。与pull loss不同当时,push loss增大,模型学会将推离。为了避免模型倾向于通过降低FN的分数来减少push loss,作者只使用来重新加权损失,而不使用反向传播梯度。

对于拥挤的场景,特别是在CityPersons数据集中,边界框的ground truths是相互重叠的。在IoU=0的情况下,将他们的预测相互排斥是不合理的。为了处理这个问题,作者只在预测IoU高于其对应ground truth box的IoU时才计算。

本文所提的Pull Loss和Push Loss是根据预测来执行的。当pull/push loss被激活时,网络会尝试pull/push两个预测,分别pull/push彼此。因为高分预测通常会得到一个更准确的位置,所以在一个不准确的预测基础上移动一个准确的预测是不合理的。为了解决这个问题,作者停止了高分预测的梯度向后传播,导致网络专注于错误的预测。

2.3 与RepLoss的不同之处在哪里?

RepLoss通过设置损失函数的方式,使预测框和所负责的真实目标框的距离缩小,而使得其与周围非负责目标框(包含真实目标框和预测框)的距离加大 。如下式,如果与周围目标的距离越大,损失值会越小。

作者对NMS-Loss和RepLoss进行了详细的比较,因为这2种方法都是基于它们的目标进行pull/push预测的。

主要有3个区别:

  • RepLoss在所有实例上执行,而NMS-Loss只在被NMS错误处理的实例上执行,从而实现了端到端训练。
  • RepLoss只考虑回归,而score在NMS-Loss中也用于实例重加权。
  • 在密集人群场景下RepLoss将实例推开,即使它们的目标本来很接近,使RepLoss与回归损失相矛盾。相反,NMS-Loss会推送与其他IoU高于其对应ground truth box IoU的实例,这样可以消除RepLoss的矛盾。

如表所示,NMS-Loss不仅比RepLoss表现更好,而且在CityPersons上有更高的相对改善。这表明,NMS-Loss可以在广泛使用的数据集上实现稳定的相对改进(高于10%)。


3实验



4参考阅读


[1].NMS-Loss: Learning with Non-Maximum Suppression for Crowded Pedestrian Detection

[2].Repulsion Loss: Detecting Pedestrians in a Crowd

相关文章
|
数据安全/隐私保护 安全 网络协议
|
2月前
|
弹性计算 安全 Linux
阿里云免费云服务器及学生云服务器申请教程指南
阿里云继续推出免费学生云服务器与免费试用云服务器,其中学生云服务器最长可免费7个月(1个月首次领用+6个月免费续领),免费试用云服务器分为个人免费云服务器和企业免费云服务器,最长免费试用时长是3个月。下面小编来介绍一下阿里云免费云服务器及学生云服务器的申请教程。
|
机器学习/深度学习 算法 PyTorch
深度学习笔记(十三):IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU、WIOU损失函数分析及Pytorch实现
这篇文章详细介绍了多种用于目标检测任务中的边界框回归损失函数,包括IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU和WIOU,并提供了它们的Pytorch实现代码。
3835 1
深度学习笔记(十三):IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU、WIOU损失函数分析及Pytorch实现
|
6月前
|
架构师 前端开发 程序员
低代码 VS 全栈开发,2025年了,程序员到底该如何选择?
在技术管理领域深耕十年,作者指出工具之争毫无意义,关键在于如何使用。本文深入解析低代码与全栈开发的本质、区别与融合,探讨在快速变化的技术环境中,程序员该如何选择发展方向,实现效率与深度的平衡。
|
机器学习/深度学习 计算机视觉
YOLOv11改进策略【损失函数篇】| WIoU v3:针对低质量样本的边界框回归损失函数
YOLOv11改进策略【损失函数篇】| WIoU v3:针对低质量样本的边界框回归损失函数
2059 6
|
12月前
|
机器学习/深度学习 数据采集 人工智能
量子计算与人工智能的结合:引领科技革命的前沿
量子计算与人工智能的结合:引领科技革命的前沿
766 13
|
传感器 机器学习/深度学习 人工智能
史上最全综述 | 3D目标检测算法汇总!(单目/双目/LiDAR/多模态/时序/半弱自监督)(下)
近年来,自动驾驶因其减轻驾驶员负担、提高行车安全的潜力而受到越来越多的关注。在现代自动驾驶系统中,感知系统是不可或缺的组成部分,旨在准确估计周围环境的状态,并为预测和规划提供可靠的观察结果。3D目标检测可以智能地预测自动驾驶车辆附近关键3D目标的位置、大小和类别,是感知系统的重要组成部分。本文回顾了应用于自动驾驶领域的3D目标检测的进展。
史上最全综述 | 3D目标检测算法汇总!(单目/双目/LiDAR/多模态/时序/半弱自监督)(下)
|
11月前
|
机器学习/深度学习 人工智能 运维
这个多模态智能体,让电力装备运维越来越“聪明”
DeepSeek的出圈为AI发展开辟新路径,大模型在各行业应用也愈发深入。例如“许继智算”团队在昇腾AI创新大赛中获奖,他们通过大模型解决了电力装备运维中的缺陷检测与风险识别难题。传统电力运维依赖人工,存在效率低、误报率高等问题,而该团队基于多模态大模型,融合文本、声纹、图像等信息,构建“智电灵眸”智能运维平台,大幅提升故障诊断精度与效率。其创新方案已在多个项目试点,识别准确率提升30%以上,故障预警速度提高50%,标志着电力运维进入“智能体”时代。这不仅体现了大模型的实际价值,也为其他行业应用提供了参考范例。
783 14
|
传感器 机器学习/深度学习 人工智能
技术分享:智能电网巡检与传感器数据自动分析——AI助力设备状态实时监控与故障预警
这篇文章介绍了AI在智能电网巡检与传感器数据分析中的应用,通过信息抽取、OCR识别和机器学习等技术,实现设备状态监控和故障预警的自动化。AI系统能够高效处理巡检报告和传感器数据,精准识别设备故障并实时预警,显著提升了电网运营的安全性和可靠性。随着AI技术的发展,其在智能电网管理中的作用将日益重要。
818 1
|
机器学习/深度学习 算法 文件存储
YOLOv8改进 | 主干篇 | 利用MobileNetV3替换Backbone(轻量化网络结构)
YOLOv8改进 | 主干篇 | 利用MobileNetV3替换Backbone(轻量化网络结构)
1436 0
YOLOv8改进 | 主干篇 | 利用MobileNetV3替换Backbone(轻量化网络结构)