RT-DETR改进策略【Neck】| 有效且轻量的动态上采样算子:DySample

简介: RT-DETR改进策略【Neck】| 有效且轻量的动态上采样算子:DySample

一、本文介绍

本文记录的是利用DySample上采样对RT-DETR的颈部网络进行改进的方法研究RT-DETR采用传统的最近邻插值的方法进行上采样可能无法有效地捕捉特征的细节和语义信息,从而影响模型在密集预测任务中的性能。DySample通过动态采样的方式进行上采样,==能够更好地处理特征的细节和语义信息。==


专栏目录:RT-DETR改进目录一览 | 涉及卷积层、轻量化、注意力、损失函数、Backbone、SPPF、Neck、检测头等全方位改进
专栏地址:RT-DETR改进专栏——以发表论文的角度,快速准确的找到有效涨点的创新点!

二、DySample介绍

通过学习采样来学习上采样

DySample是一种超轻量且有效的动态上采样器,其设计出发点、原理和优势如下:

2.1、DySample原理

2.1.1 初步设计

通过PyTorch的内置函数,假设输入特征通过双线性插值被插值为连续的特征图,然后通过生成内容感知的采样点来重新采样该连续图。

具体实现为,给定特征图$X$和上采样尺度因子$s$,使用线性层生成偏移$O$,并通过Pixel Shuffling将其重塑为$2 \times sH \times sW$,然后将偏移$O$与原始采样网格$G$相加得到采样集$S$,最后通过网格采样函数根据采样集生成上采样后的特征图$X'$。

2.1.2 改进步骤

  • 初始采样位置:在初步版本中,初始采样位置固定且分布不均匀,类似于“最近邻初始化”。为解决此问题,改为“双线性初始化”,即改变初始位置,使零偏移时能得到双线性插值的特征图,从而提高性能。
    • 偏移范围:由于归一化层的存在,输出特征值的范围通常在$[ - 1, 1]$,导致局部采样位置的偏移范围可能重叠,影响边界预测并导致输出伪影。通过将偏移乘以0.25的“静态范围因子”,局部约束了采样位置的偏移范围,缓解了该问题。
    • 分组:组向上采样,将特征图沿通道维度划分为$g$组,并为每组生成偏移。当$g = 4$时,性能得到提升。
    • 动态范围因子:为增加偏移的灵活性,通过线性投影输入特征生成点级的“动态范围因子”,动态范围因子的值在$[0, 0.5]$范围内,以0.25为中心,进一步提升了性能。
    • 偏移生成方式:研究了两种偏移生成方式,“线性 + 像素洗牌”(LP)和“像素洗牌 + 线性”(PL)。通过实验,根据不同模型设置了不同的组数量,并且发现PL版本在某些模型上表现更好,但在其他模型上略逊于LP版本。

      2.1.3 最终变体

根据范围因子(静态/动态)和偏移生成方式(LP/PL),研究了四个变体:DySample(LP风格,静态范围因子)、DySample +(LP风格,动态范围因子)、DySample - S(PL风格,静态范围因子)、DySample - S +(PL风格,动态范围因子)。

在这里插入图片描述

2.2、优势

  • 轻量高效:与其他动态上采样器相比,DySample不需要高分辨率的引导特征作为输入,也不需要除PyTorch之外的任何额外CUDA包,具有更少的推理延迟、内存占用、FLOPs和参数数量。
  • 性能优越:在五个密集预测任务(语义分割、目标检测、实例分割、全景分割和单目深度估计)中,与其他上采样器相比,DySample报告了更好的性能。

论文:https://arxiv.org/pdf/2308.15085
源码:https://github.com/tiny-smart/dysample

三、实现代码及RT-DETR修改步骤

模块完整介绍、个人总结、实现代码、模块改进、二次创新以及各模型添加步骤参考如下地址:

https://blog.csdn.net/qq_42591591/article/details/143738979

目录
相关文章
|
3天前
|
并行计算 PyTorch Shell
YOLOv11改进策略【Neck】| 有效且轻量的动态上采样算子:DySample
YOLOv11改进策略【Neck】| 有效且轻量的动态上采样算子:DySample
27 11
YOLOv11改进策略【Neck】| 有效且轻量的动态上采样算子:DySample
|
3天前
|
资源调度 自然语言处理 网络架构
YOLOv11改进策略【Neck】| 使用CARAFE轻量级通用上采样算子
YOLOv11改进策略【Neck】| 使用CARAFE轻量级通用上采样算子
31 11
YOLOv11改进策略【Neck】| 使用CARAFE轻量级通用上采样算子
|
1天前
|
资源调度 自然语言处理 网络架构
RT-DETR改进策略【Neck】| 使用CARAFE轻量级通用上采样算子
RT-DETR改进策略【Neck】| 使用CARAFE轻量级通用上采样算子
19 11
RT-DETR改进策略【Neck】| 使用CARAFE轻量级通用上采样算子
|
2天前
|
计算机视觉
RT-DETR改进策略【卷积层】| RCS-OSA 通道混洗的重参数化卷积 二次创新ResNetLayer
RT-DETR改进策略【卷积层】| RCS-OSA 通道混洗的重参数化卷积 二次创新ResNetLayer
26 12
RT-DETR改进策略【卷积层】| RCS-OSA 通道混洗的重参数化卷积 二次创新ResNetLayer
|
2天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
RT-DETR改进策略【卷积层】| 利用MobileNetv4中的UIB、ExtraDW优化ResNetLayer
RT-DETR改进策略【卷积层】| 利用MobileNetv4中的UIB、ExtraDW优化ResNetLayer
26 12
RT-DETR改进策略【卷积层】| 利用MobileNetv4中的UIB、ExtraDW优化ResNetLayer
|
2天前
|
机器学习/深度学习 编解码 知识图谱
RT-DETR改进策略【卷积层】| HWD,引入`Haar小波变换`到下采样模块中,减少信息丢失
RT-DETR改进策略【卷积层】| HWD,引入`Haar小波变换`到下采样模块中,减少信息丢失
23 11
RT-DETR改进策略【卷积层】| HWD,引入`Haar小波变换`到下采样模块中,减少信息丢失
|
2天前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【卷积层】| CVPR-2023 SCConv 空间和通道重建卷积:即插即用,减少冗余计算并提升特征学习
RT-DETR改进策略【卷积层】| CVPR-2023 SCConv 空间和通道重建卷积:即插即用,减少冗余计算并提升特征学习
27 11
RT-DETR改进策略【卷积层】| CVPR-2023 SCConv 空间和通道重建卷积:即插即用,减少冗余计算并提升特征学习
|
1天前
|
机器学习/深度学习 算法 计算机视觉
RT-DETR改进策略【SPPF】| SimSPPF,简化空间金字塔池化设计,提高计算效率
RT-DETR改进策略【SPPF】| SimSPPF,简化空间金字塔池化设计,提高计算效率
31 19
RT-DETR改进策略【SPPF】| SimSPPF,简化空间金字塔池化设计,提高计算效率
|
3天前
|
计算机视觉
YOLOv11改进策略【Neck】| 替换RT-DETR中的CCFF跨尺度特征融合颈部结构,优化计算瓶颈与冗余问题
YOLOv11改进策略【Neck】| 替换RT-DETR中的CCFF跨尺度特征融合颈部结构,优化计算瓶颈与冗余问题
21 8
YOLOv11改进策略【Neck】| 替换RT-DETR中的CCFF跨尺度特征融合颈部结构,优化计算瓶颈与冗余问题
|
1天前
|
机器学习/深度学习 资源调度 数据可视化
RT-DETR改进策略【注意力机制篇】| 引入Shuffle Attention注意力模块,增强特征图的语义表示
RT-DETR改进策略【注意力机制篇】| 引入Shuffle Attention注意力模块,增强特征图的语义表示
25 4
RT-DETR改进策略【注意力机制篇】| 引入Shuffle Attention注意力模块,增强特征图的语义表示

热门文章

最新文章