当前位置: 首页> 教育> 锐评 > 为什么DETR不需要NMS后处理?

为什么DETR不需要NMS后处理?

时间:2025/7/12 14:49:33来源:https://blog.csdn.net/u012374012/article/details/140925448 浏览次数:0次

简单来说:        

        DETR通过将目标检测重新定义为set prediction问题,引入了稀疏的object queries进行预测。该方法利用二分图匹配进行标签分配,确保每个目标仅由一个query负责预测,有效减少了传统目标检测中常见的重复检测(duplicates)问题。

        DETR无需依赖非极大值抑制(NMS)等后处理手段。从原始论文的实验中可以观察到,随着解码器层数的增加,NMS对模型性能的正面影响逐渐减弱,进一步证明了DETR在简化目标检测流程方面的有效性。

        具体的我们来看看DETR的结构。

1.模型结构

        上图为DETR结构图,主要分为encoder-decoder,具体来说:

  • Encoder:在计算机视觉任务中,如目标检测,我们通常从一张尺寸为(C, H, W)的原始图片开始。首先,使用一个强大的特征提取器,比如resnet50,来处理这张图片并输出特征图。为了增强模型对位置信息的敏感性,会在这些特征图上添加二维位置编码,这种编码可以是固定的(例如基于三角函数的编码)或可学习的。接着,通过一些额外的卷积神经网络(CNN)处理,得到最终的特征图,其尺寸变为(hidden_dim, H_, W_)。最后,将这个特征图展平,形成H_ * W_个尺寸为(1, hidden_dim)的向量,这些向量作为encoder的输入,被统一称为token。这整个过程是构建高效目标检测模型的关键步骤,特别是在DETR框架中,它避免了传统方法中需要的非极大值抑制(NMS)等后处理操作,大大简化了目标检测流程。

  • Decoder:在传统的卷积神经网络(CNN)目标检测模型中,由于缺乏精细化的预测控制,一个目标对象往往会被多个重叠的检测框标记,这就不得不采用像非极大值抑制(NMS)这样的后处理步骤来移除多余的检测框。然而,DETR模型的设计理念是实现一个端到端的目标检测流程,其理想状态是每个对象只被一个检测框标识,从而免除任何形式的后处理。

  • object query:为实现Decoder目标,DETR引入了“object query”的概念。基于实际场景中一张图片所包含的目标数量是有限的假设,例如最多有n个,DETR便设置相同数量的object queries(在DETR的实际应用中,这个数值通常设为100)。在模型操作中,每一个object query会学习与其唯一对应的真实目标检测框及其类别。那些未与特定目标对应的额外object queries则被视作背景。这种设计大大简化了目标检测的流程,并减少了对后处理技术的依赖,使得DETR成为一个高效且简化的端到端目标检测框架。

2. 总结

        DETR(Detection Transformer)是一种革命性的目标检测模型,它通过将目标检测任务重新定义为一个直接的set prediction问题,显著地简化了传统目标检测流程。在DETR中,引入了稀疏的object queries和位置编码来改善特征表示,并采用变压器(Transformer)结构来直接预测固定数量的目标及其属性,避免了传统目标检测中普遍存在的重复检测问题。这种方法的核心优势在于每个目标仅由一个检测框表示,理论上不需要任何后处理操作如非极大值抑制(NMS)。

关键字:为什么DETR不需要NMS后处理?

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: