点击下方卡片,关注「集智书童」公众号
前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」
欢迎扫描上方二维码,加入「集智书童-知识星球」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!
作者提出了 D-FINE,这是一个强大的实时目标检测器,通过重新定义DETR模型中的边界框回归任务,实现了出色的局部化精度。
D-FINE包括两个关键组件:细粒度分布精炼(FDR)和全局最优定位自蒸馏(GO-LSD)。
FDR将回归过程从预测固定坐标转换为迭代优化概率分布,提供了一个细粒度的中间表示,显著提高了定位精度。GO-LSD是一种双向优化策略,通过自蒸馏将定位知识从精炼分布转移到更浅的层,同时简化了对更深层剩余预测任务的优化。
此外,D-FINE在计算密集型模块和操作中引入了轻量级优化,实现了速度和准确度的更好平衡。
具体而言,D-FINE-L/在NVIDIA T4 GPU上,124/78 FPS的性能下,在COCO数据集上实现了54.0% / 55.8% AP。
在Objects365上预训练后,D-FINE-L/达到了57.1% / 59.3% AP,超越了所有现有的实时检测器。此外,作者的方法通过增加5.3% AP,同时不增加额外的参数和训练成本,显著提高了各种DETR模型的性能。
作者的代码和预训练模型:https://github.com/Peterande/D-FINE。
1 Introduction
实时目标检测的需求在各种应用中不断增长。其中最具影响力的实时检测器包括YOLO系列,因其高效性和强大的社区生态系统而广受认可。作为强大的竞争对手,基于 Transformer 的检测器(DETR)由于其 Transformer 架构,能够实现全局上下文建模和直接设置预测,无需依赖非极大值抑制(NMS)和 Anchor 框。然而,它们通常受到高延迟和计算需求的限制。RT-DETR(Zhao等人,2024年)通过开发实时变体,提供端到端的替代品,解决了YOLO检测器的局限性。此外,LW-DETR表明,DETR可以在大型数据集上实现比YOLO更高的性能天花板。
尽管实时目标检测领域取得了显著进展,但仍有几个未解决的局限性继续限制检测器的性能。一个关键挑战是边界框回归问题。大多数检测器通过回归固定坐标预测边界框,将边缘视为由狄拉克δ分布精确建模的值(刘等人,2016年;任等人,2015年;田等人,2019年;刘等人,2022年)。这种方法简单直观,但无法建模局部不确定性。因此,模型受到L1损失和IoU损失的约束,这些损失对于独立调整每个边缘的指导不足(吉斯希克,2015年)。这使得优化过程对微小坐标变化敏感,导致收敛速度缓慢和性能不佳。尽管像GFocal(李等人,2020年;2021年)等方法通过概率分布来解决不确定性,但它们仍受 Anchor 点依赖、粗定位和缺乏迭代精炼的限制。
另一个挑战在于提高实时检测器的效率,它们受到计算和参数预算的限制,需要保持速度。知识蒸馏(KD)是一种有前景的解决方案,通过从较大教师向较小学生传递知识,在不增加成本的情况下提高性能(英特等人,2015年)。然而,传统的KD方法(如逻辑模拟和特征模仿)对于检测任务效率低下,甚至可能导致最先进的模型性能下降(郑等人,2022年)。
相比之下,定位蒸馏(LD)在检测任务上取得了更好的结果。然而,将LD集成仍然具有挑战性,因为其训练开销大且与 Anchor-Free 点检测器不兼容。
为解决这些问题,作者提出了一种新颖的实时目标检测器 D-FINE,该检测器重新定义了边界框回归,并引入了一种有效的自蒸馏策略。作者的方法解决了固定坐标回归中的困难优化问题,无法建模局部定位不确定性,以及需要更有效且训练成本较低的蒸馏问题。作者引入了 Fine-grained Distribution Refinement (FDR) ,将边界框回归从预测固定坐标转换为建模概率分布,提供了一个更细粒度的中间表示。FDR以递归方式逐步 refined 这些分布,允许进行逐步更精细的调整并提高定位精度。
认识到更深层产生更准确的预测,因为它在其概率分布中捕获了更丰富的局部定位信息,作者引入了 Global Optimal Localization Self-Distillation (GO-LSD)。GO-LSD 将局部定位知识从更深层传递到较浅层,而无需额外增加训练成本。通过使较浅层的预测与后续层的精炼输出对齐,模型学会了产生更好的早期调整,加速收敛并提高整体性能。此外,作者还简化了现有实时DETR架构中计算密集型模块和操作,使D-FINE更快且更轻便。虽然这样的修改通常会导致性能损失,但FDR和GO-LSD有效地减轻了这种降级,实现了速度和准确度的更好平衡。
实验结果表明,D-FINE在实时目标检测任务上达到了最先进水平,在准确率和效率方面超越了现有模型。D-FINE-L和D-FINE-X在COCO val2017上的AP分别达到54.0%和55.8%,在124 FPS的速度下在NVIDIA T4 GPU上运行,78 FPS的速度下在GO-LSD上运行。在大数据集如Objects365(Shao等人,2019)上进行预训练后,D-FINE系列在AP上达到59.3%,超越了所有现有的实时检测器,展示了可伸缩性和鲁棒性。
此外,作者的方法通过FDR和GO-LSD,在不增加额外参数和训练成本的情况下,将多种DETR模型的AP提高了5.3%,证明了其灵活性和通用性。总之,D-FINE推动了实时检测器的性能极限。通过解决边界框回归和蒸馏效率的关键挑战,作者通过FDR和GO-LSD提供了在目标检测领域迈出的有意义一步,为该领域进一步探索提供了启示。
实时/端到端目标检测器。YOLO系列在实时目标检测领域处于领先地位,通过在架构、数据增强和训练技术方面的创新演变。虽然YOLOs通常依赖于非极大值抑制(NMS),这会在速度和准确性之间引入延迟和不稳定性。DETR(Carion等,2020)通过移除人工构建的组件(如NMS和 Anchor 点)来颠覆目标检测,使其在实时应用中适用性更强。传统的DETR在性能方面取得了卓越的成果,但计算需求高,不适合实时应用。最近,RT-DETR 和LW-DETR 已成功地将DETR应用于实时使用。同时,YOLOv10(Wang等,2024a)也消除了NMS的需求,标志着YOLO系列在端到端检测方面发生了显著的转变。
基于分布的目标检测。传统的边界框回归方法依赖于狄拉克δ分布,将边界框边缘视为精确且固定,这使得建模局部定位不确定性具有挑战性。为了应对这一问题,最近的一些模型采用了高斯或离散分布来表示边界框,从而增强了不确定性的建模。然而,这些方法都依赖于基于 Anchor 的框架,这限制了它们与现代 Anchor-Free 检测器(如YOLOX(Ge等,2021)和DETR(Carion等,2020))的兼容性。此外,它们的分布表示通常采用粗粒化方式,缺乏有效的细化,这阻碍了它们实现更精确的预测。
知识蒸馏(KD)(Hinton等人,2015年)是一种强大的模型压缩技术。传统的知识蒸馏通常侧重于通过Logit Mimicking来传递知识。FitNets(Romero等人,2015年)最初提出了特征模仿,这一想法激发了后续一系列相关研究。大多数DETR方法都包含了对逻辑和多种中间表示的混合蒸馏。
最近,局部化蒸馏(LD)表明,在检测任务中,传递局部化知识更为有效。自蒸馏是KD的一种特殊情况,它使得较早的层可以从模型的精炼输出中学习,从而减少了额外的训练成本,因为不需要单独训练一个教师模型。
3 Preliminaries
目标检测中的边界框回归传统上依赖于Dirac delta分布的建模,可以是基于质心坐标系的{x,y,w,h}形式,也可以是基于边缘距离的{c,d}形式,其中距离d是由 Anchor 点c={x_c,y_c}测量的。然而,Dirac delta假设将边界框边缘视为精确和固定的,这使得建模局部定位不确定性变得困难,特别是在歧义情况下。这种刚性的表示不仅限制了优化,还可能导致即使预测有微小变化也会产生显著的定位误差。
为了应对这些问题,GFocal(Li等人,2020,2021)使用离散化的概率分布来回归边界框与 Anchor 点之间的距离,从而提供更灵活的边界框建模。在实际应用中,边界框距离 建模为:
其中 是一个标量,它限制了 Anchor 点中心到最大距离, 表示每个候选四边形距离的概率。
尽管 GFocal 通过概率分布处理了歧义和不确定性,但其在回归方法中仍存在特定挑战:
(1) Anchor 点依赖性:回归与 Anchor 点中心相关,限制了预测的多样性和与 Anchor-Free 框架的兼容性。
(2) 没有迭代细化:预测在一轮中进行,没有迭代细化,降低了回归的鲁棒性。
(3) Coarse Localization: 固定距离范围和均匀的bin间隔可能导致粗略的定位,尤其是对于小物体,因为每个bin代表了一个很宽的可能值范围。
局部知识蒸馏(LD) 是一种有前景的方法,证明了将局部知识迁移到检测任务上(郑等,2022)的有效性。该方法基于 GFocal,通过从教师模型中蒸馏有价值的局部知识来增强学生模型,而不是简单地模拟分类 logits 或特征图。
尽管该方法具有优势,但它仍然依赖于基于 Anchor 点的架构,并需要额外的训练成本。
4 Method
作者提出了一种名为 D-FINE 的强大实时目标检测器,它擅长于速度、尺寸、计算成本和准确性。
D-FINE 通过利用两个关键组件来解决现有边界框回归方法的问题:细粒度分布平滑(FDR) 和 全局最优局部平滑自编码(GO-LSD),这两个组件共同作用,可以在几乎不增加额外参数和训练时间成本的情况下显著提高性能。
(1)FDR 迭代优化作为边界框预测修正的概率分布,提供更精细的中间表示。这种方法独立地捕捉并优化每个边缘的不确定性。利用非均匀加权函数,FDR 可以在每个解码层进行更精确和分步调整,提高定位精度并减少预测误差。FDR 运行在一个 Anchor-Free 框架中,实现更灵活和强大的优化过程。
(2) GO-LSD 提取局部化知识,将其从精炼的分布中转换到更深层。随着训练的进行,最后一层生成的软标签越来越精确。通过GO-LSD,较浅层将预测与这些标签对齐,从而导致更准确的预测。随着早期预测的改善,后续层可以专注于优化较小的残差。这种相互强化产生了协同作用,导致定位越来越准确。
为了进一步提高D-FINE的效率,作者对现有实时DETR架构(赵等,2024)中的计算密集型模块和操作进行了优化,使得D-FINE更快且更轻便。尽管这些修改通常会导致一些性能损失,但FDR和GO-LSD可以有效缓解这种降级。
Fine-grained Distribution Refinement
细粒度分布精炼(FDR)迭代地优化由解码层生成的细粒度分布,如图2所示。起初,第一个解码层通过传统的边界框回归头和D-FINE头(两者都是MLP,只有输出维度不同)预测初步的边界框和初步的概率分布。每个边界框都与四个分布相关,每个边缘对应一个分布。初始边界框作为参考框,后续层通过调整分布以残差方式对它们进行优化。然后将这些优化的分布应用于调整相应初始边界框的四条边,每次迭代都逐步提高其准确性。
数学上,令 表示初始边界框预测,其中 表示边界框预测的中心, 表示边界框的宽度和高度。然后可以将 转换为中心坐标 和边缘距离 ,分别表示从中心到上、下、左、右边缘的距离。对于第 层,精化的边缘距离 可以通过以下方式计算:
代表四种独立的分布,分别为每条边的一个。每个分布预测对应边的候选偏移值的可能性。这些候选值由权重函数 确定,其中 表示在 个离散桶中的桶索引,每个桶对应一个可能的边偏移。分布的加权和产生边偏移。这些边偏移随后通过初始边界框的高度 和宽度 进行缩放,以确保调整与框大小成比例。
经过优化的分布被使用残差调整进行更新,定义如下:
上一层logits 反映了每个bin的偏移值对于四条边置信度的信心。当前层预测残差logits ,将其与上一层logits相加得到更新后的logits 。这些更新后的logits随后使用softmax函数进行归一化,从而得到精炼的概率分布。
为了实现精确且灵活的调整,定义加权函数 为:
当和是控制函数上下界和曲率的超参数时,的形状确保了当边界框预测接近准确时,的小曲率允许进行更精细的调整。相反,如果边界框预测远离准确,在边缘附近的大曲率和在边界上的急剧变化确保了进行大量更正的充分灵活性。如图2所示,的形状保证了当边界框预测接近准确时,的小曲率允许进行更精细的调整。相反,如果边界框预测远离准确,在边缘附近的大曲率和在边界上的急剧变化确保了进行大量更正的充分灵活性。
为了进一步提高作者的分布预测的准确性,并将它们与 GT 值对齐,受分布Focal Loss(DFL)(李等,2020年)的启发,作者提出了一种新的损失函数,即细粒度局部化(FGL)损失,其计算方式如下:
表示第 种预测对应的概率分布。 是相对偏移量,计算方法为 。
表示 GT 边缘距离, 是与 相邻的桶索引。
和 对应的交叉熵(CE)损失确保桶之间的插值与 GT 偏移量精确对齐。
通过引入 IoU 权重,FGL 损失鼓励具有较低不确定性的分布变得更加集中,从而实现更精确和可靠的边界框回归。
Global Optimal Localization Self-Distillation
全局最优局部定位自蒸馏 (GO-LSD) 利用最后一层的精确分布预测将定位知识蒸馏到更深层次,如图3所示。这个过程首先对每个层的预测应用匈牙利匹配(Carion等人,2020),在每个模型阶段识别出局部边界框匹配。为了实现全局优化,GO-LSD 将所有层的匹配索引聚合到一个统一的并集。这个并集将跨层的最准确候选预测结合在一起,确保它们都从蒸馏过程中受益。除了优化全局匹配外,GO-LSD 还在训练过程中优化未匹配的预测,以提高整体稳定性,从而实现更好的整体性能。尽管通过这个并集优化了局部定位,但分类任务仍然遵循一对一匹配原则,以确保没有冗余框。这种严格的匹配意味着并集中的一些预测位置很好,但置信度较低。这些低置信预测通常表示具有精确位置的候选项,仍需要有效地进行蒸馏。
针对这个问题,作者提出了解耦蒸馏焦点(DDF)损失,它应用解耦的加权策略,以确保高IoU但低置信度的预测得到适当的权重。DDF损失还根据预测的数量对匹配和不匹配的预测进行加权,以平衡它们的整体贡献和个体损失。这种方法导致了更稳定和有效的蒸馏。解耦蒸馏Focal Loss 然后被表示为:
KL KL 代表 Kullback-Leibler 散度 (Hinton 等,2015),而 是用于平滑 logits 的温度参数。
第 个匹配预测的蒸馏损失由 加权,其中 和 分别表示匹配和未匹配预测的数量。对于第 个未匹配预测,权重为 ,其中 Conf 表示分类置信度。
5 Experiments
Experiment Setup
为了验证作者提出的方法的有效性,作者在COCO(Lin等人,2014年)和Objects365(Shao等人,2019年)数据集上进行了实验。作者使用COCO标准指标评估作者的D-FINE,包括在IoU阈值从0.50到0.95的平均精确度(AP),以及特定阈值(AP和AP)的AP和不同物体尺度的AP:小(AP),中(AP)和大(AP)。此外,作者还通过报告参数数量(#Params.)、计算成本(GFLOPs)和端到端延迟来提供模型效率指标。延迟使用TensorRT FP16在NVIDIA T4 GPU上进行测量。
Comparison with Real-Time Detectors
表格1对比了D-FINE与各种实时目标检测器在COCO val2017上的性能。D-FINE在多个指标上实现了效率与准确性的良好平衡。具体而言,D-FINE-L在31M参数和91 GFLOPs下取得了54.0%的AP,保持低延迟8.07 ms。此外,D-FINE-X在62M参数和202 GFLOPs下取得了55.8%的AP,延迟为12.89 ms。
如图1所示,该图显示了延迟与平均精度(AP)的关系散点图,参数数量与AP的关系散点图,以及浮点运算次数(FLOPs)与AP的关系散点图。D-FINE在所有关键维度上始终优于其他最先进的模型。
D-FINE-L在AP(54.0%)方面高于YOLOv10-L(53.2%)、RT-DETR-R50(53.1%)和LW-DETR-X(53.0%),同时需要的计算资源(91 GFLOPs)较少,而YOLOv10-X和RT-DETR-R101需要120、136和174 GFLOPs。同样,D-FINE-X通过实现优秀的性能(55.8% AP vs. 54.4%和54.3%)和更低的参数数量、GFLOPs和延迟,超越了YOLOv10-X和RT-DETR-R101。
作者进一步在物体365数据集(Shao等人,2019年)上预训练D-FINE和YOLOv10,然后在COCO上进行微调。
预训练后,D-FINE-L和D-FINE-X分别取得了57.1%和59.3%的AP,相较于YOLOv10-L和YOLOv10-X提高了3.1%和4.4%。这些提升使得它们在本次比较中成为表现最优秀的模型。
此外,根据YOLOv8(Glenn,2023年)的预训练协议,YOLOv10在Objects365上进行了300个epoch的预训练。相比之下,D-FINE仅需21个epoch即可实现显著性能提升。这些发现证实了LW-DETR(Chen等人,2024年)的结论,表明基于DETR的模型相比其他检测器(如YOLO)在预训练方面获得了巨大的好处。
Effectiveness on various DETR models
表格2展示了作者在COCO val2017上的多个基于DETR的目标检测器上,作者提出的FDR和GO-LSD方法的 effectiveness。
作者的方法旨在灵活性,可以无缝集成到任何DETR架构中,在不增加参数数量和计算负担的情况下显著提高性能。将FDR和GO-LSD集成到Deformable DETR,DAD-DETR,DN-DETR和DINO中,始终可以提高检测精度,与范围从2.0%到5.3%。这些结果突显了FDR和GO-LSD在提高定位精度并最大化效率方面的有效性,证明了它们在各种端到端检测框架中的适应性和巨大影响。
Ablation Study
5.4.1 The Roadmap to D-FINE
表格3展示了从基准模型(RT-DETR-HGNetv2-L(赵等,2024))逐步发展到作者提出的D-FINE框架的过程。起始基准指标为53.0% AP,32M参数,110 GFLOPs和9.25 ms延迟。首先,作者移除了所有解码投影层。这一修改将GFLOPs降低到97,将延迟缩短到8.02 ms,尽管AP降到了52.4%。为了解决这一下降,作者引入了目标关注层,该层仅通过增加计算成本,将AP恢复到52.8%。
目标注意力层(Target Gating Layer)在解码器交叉注意力模块之后被战略性地放置,替代了残差连接。
它允许 Query 在不同层上动态地将关注点切换到不同的目标,从而有效地防止信息纠缠。该机制的工作原理如下:
其中 表示先前的 Query , 是交叉注意力结果。 是将拼接的输出应用的 sigmoid 激活函数,[ 表示拼接操作。
接下来,作者将编码器的CSP层替换为GELAN层(Wang & Liao,2024)。这种替换提高了AP到53.5%,但同时也增加了参数数量、GFLOPs和延迟。为了减轻增加的复杂性,作者降低了GELAN的隐藏维数,这平衡了模型的复杂性和保持了AP在52.8%,同时提高了效率。
作者进一步通过在不同尺度上实现不均匀取样(S: 3, M: 6, L: 3)来优化取样点,这略微提高了AP到52.9%。然而,其他取样组合(如S: 6, M: 3, L: 3)和(S: 3, M: 3, L: 6)会导致0.1% AP的轻微性能下降。采用RT-DETRv2训练策略(Lv等人,2024)(参见附录A.1.1详细信息)可以提高AP到53.0%,同时不影响参数数量或延迟。最后,将FDR和GO-LSD模块集成起来,将AP提高到了54.0%,实现了与 Baseline 模型相比13%的延迟减少和17%的GFLOPs减少。这些逐步的修改证明了D-FINE框架的鲁棒性和有效性。
5.4.2 Hyperparameter Sensitivity Analysis
第五章第四节呈现了一部分超参数调优研究,评估了作者的模型在FDR和GO-LSD模块中的关键参数的敏感性。作者检查了用于对KL散度中的logits进行平滑的重量函数参数和,分布bin的数量以及用于平滑logits的温度。
将 设置为 , 设置为 能得到最高的 AP 为 53.3%。值得注意的是,将 和 视为可学习的参数(,)会稍微降低 AP 为 53.1%,这表明固定值简化了优化过程。当 极大时,加权函数近似为具有相等间隔的线性函数,导致 AP 为 53.0%,这是次优的。此外, 的值过大或过小可能会降低精度或限制灵活性,从而对局部定位精度产生负面影响。
增加分布桶的数量可以提高性能,最大AP达到53.7%时,。在之后,没有观察到显著的收益。**(3)** 温度控制着蒸馏过程中对对数概率的平滑。在时,达到54.0%的AP,表明在软化分布和保持有效知识传递之间达到了平衡。
5.4.3 Comparison of Distillation Methods
第五章4.1节比较了不同蒸馏方法,基于性能、训练时间和GPU内存使用情况。基准模型在四个NVIDIA RTX 4090 GPU上的AP为53.0%,每轮训练时间为29分钟,内存使用为8552MB。由于DETR中的一对一匹配不稳定,传统的蒸馏技术(如Logit Mimicking和Feature Imitation)并未提高性能;
Logit Mimicking将AP降低到52.6%,而Feature Imitation达到52.9%。将作者的FDR模块集成后,AP增加到53.8%,额外训练成本极低。应用简单的Localization Distillation(Zheng等人,2022年)进一步将AP提高至53.7%。作者的GO-LSD方法实现了最高的AP 54.5%,与基准相比仅训练时间增加了6%,内存使用提高了2%。值得注意的是,在此比较中并未应用轻量级优化,专注于蒸馏性能。
Visualization Analysis
图4说明了在各种检测场景下FDR的过程。作者展示了带有两个边界框的过滤检测结果。红色框表示第一个解码层(decoder layer)的初始预测,而绿色框表示最后一个解码层(final decoder layer)的优化预测。最终的预测结果更接近目标物体。在图像下方的一行显示了四个边缘(左、上、右、下)的无权重概率分布。第二行显示了加权分布,其中应用了加权函数。红色曲线表示初始分布,而绿色曲线显示了最终的优化分布。加权分布强调了在精确预测附近进行更精细的调整,允许进行更大的调整,从而进一步阐明了FDR如何优化初始边界框的偏移,从而实现越来越精确的局部定位。
6 Conclusion
在本文中,作者提出了D-FINE,这是一种强大的实时目标检测器,通过细粒度分布精炼(FDR)和全局最优局部定位自蒸馏(GO-LSD)重新定义了DETR模型中的边界框回归任务。
在COCO数据集上的实验结果表明,D-FINE实现了最先进的准确率和效率,超越了所有现有实时检测器。
局限性和未来工作:
然而,轻量级D-FINE模型与其他紧凑模型之间的性能差距仍然较小。可能的原因是浅层解码层可能产生较不准确的最终层预测,限制了将定位知识蒸馏到较早层的效果。
解决这个问题需要在不增加推理延迟的情况下增强轻量级模型的定位能力。
未来的研究可以调查先进的架构设计或新颖的训练范式,在训练期间包括额外的复杂解码层,同时在测试时仅丢弃它们,以保持轻量级的推理。作者希望D-FINE能进一步推动该领域的发展。
参考文献
[0]. D-FINE: Redefine Regression Task in DETRs as Fine-grained Distribution Refinement.
扫码加入👉「集智书童」交流群
(备注:方向+学校/公司+昵称)