一、本文介绍
本文记录的是基于RTDETRDecoder模块的YOLOv11目标检测改进方法研究。RT-DETR
的Decoder&Head
模块通过不确定性最小化查询选择,能为解码器提供高质量的初始object queries
,从而提高对目标物体的分类和定位准确性。相比v11
原始的检测头,RT-DETR
能更准确地检测出不同大小和密集排列的物体,替换后能够更好的提高模型性能。
专栏目录:YOLOv11改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进
专栏地址:YOLOv11改进专栏——以发表论文的角度,快速准确的找到有效涨点的创新点!
二、Decoder&Head设计原理
DETRsBeat YOLOsonReal-time Object Detection
2.1 出发点
在DETR
模型中,object queries
的优化是一个难点。此前的一些工作提出了查询选择方案,如使用置信度分数从编码器中选择前K
个特征来初始化 object queries
,但这种方式忽略了检测器需要同时对物体的类别和位置进行建模,导致选择的特征存在较大的不确定性,进而影响了检测器的性能。为解决这一问题,RT-DETR
设计了Decoder&Head
模块,通过不确定性最小化查询选择来提高初始 object queries
的质量。
2.2 原理
- 不确定性最小化查询选择
- 特征不确定性$u$定义为定位预测分布$P$和分类预测分布$C$之间的差异,即$$\mathcal{U}(\hat{\mathcal{X}})=\parallel \mathcal{P}(\hat{\mathcal{X}})-\mathcal{C}(\hat{\mathcal{X}})\parallel$$$$\hat{\mathcal{X}} \in \mathbb{R}^{D}$$
- 为最小化查询的不确定性,将不确定性集成到损失函数中进行基于梯度的优化$$\mathcal{L}(\hat{\mathcal{X}}, \hat{\mathcal{Y}}, \mathcal{Y})=\mathcal{L}_{b o x}(\hat{b}, b)+\mathcal{L}_{c l s}(\mathcal{U}(\hat{\mathcal{X}}), \hat{c}, c)$$其中$\hat{y}$和$y$分别表示预测和真实标签,$\hat{Y}={\hat{c}, \hat{b}}$,$\hat{c}$和$\hat{b}$分别代表类别和边界框,$\hat{x}$代表编码器特征。通过这种方式,模型可以选择不确定性最小的特征作为初始
object queries
,从而提高解码器的性能。2.3 结构
2.3.1 输入与初始化
Decoder&Head
模块接收来自高效混合编码器处理后的图像特征序列,以及通过不确定性最小化查询选择得到的固定数量的初始object queries
。这些初始object queries
是从编码器特征中精心挑选出来的,能够为解码器提供高质量的起始信息。2.3.2 迭代优化
- 解码器利用辅助预测头对
object queries
进行迭代优化。在这个过程中,解码器通过自注意力机制和交叉注意力机制,结合来自编码器的图像特征,不断调整object queries
的表示,使其能够更准确地描述目标物体的类别和位置信息。2.3.3 预测输出
- 经过多次迭代优化后,最终生成目标物体的类别预测和边界框预测。这些预测结果可以直接用于后续的目标检测任务,例如判断物体的类别、确定物体在图像中的位置等。
2.4 优势
- 提高准确性
- 通过不确定性最小化查询选择,能够为解码器提供更准确的初始
object queries
,从而提高了模型对目标物体的分类和定位准确性。实验表明,与传统的查询选择方案相比,该方法能够显著提高模型的AP值。例如,在COCO val2017数据集上,RT-DETR-R50模型使用不确定性最小化查询选择后,AP值从47.9%提高到了48.7%。
- 通过不确定性最小化查询选择,能够为解码器提供更准确的初始
- 增强适应性
RT-DETR
支持灵活的速度调整,通过调整解码器层数,可以在不同的实时场景中适应不同的速度要求,而无需重新训练模型。这种灵活性使得RT-DETR
能够在各种实际应用中更好地平衡速度和准确性,满足不同场景下的实时检测需求。
论文地址:https://arxiv.org/abs/2304.08069
代码地址:https://github.com/lyuwenyu/RT-DETR
三、实现代码及YOLOv11修改步骤
模块完整介绍、个人总结、实现代码、模块改进、二次创新以及各模型添加步骤参考如下地址: