YOLOv10目标检测创新改进与实战案例专栏
改进目录: YOLOv10有效改进系列及项目实战目录:卷积,主干 注意力,检测头等创新机制
专栏链接: YOLOv10 创新改进有效涨点
介绍
摘要
我们提出了DySample,这是一种超轻量且高效的动态上采样器。尽管最近基于内核的动态上采样器(如CARAFE、FADE和SAPA)在性能上取得了显著提升,但它们引入了大量工作负载,主要是由于耗时的动态卷积以及用于生成动态内核的额外子网络。此外,FADE和SAPA需要高分辨率特征的指导,这在某种程度上限制了它们的应用场景。为了解决这些问题,我们绕过了动态卷积,从点采样的角度来构建上采样,这种方法更节省资源,并且可以轻松使用PyTorch中的标准内置函数实现。我们首先展示了一个简单的设计,然后一步步展示如何增强其上采样行为,最终实现我们新的上采样器DySample。与之前基于内核的动态上采样器相比,DySample不需要定制的CUDA包,并且参数、FLOPs、GPU内存和延迟都大大减少。除了轻量级的特点外,DySample在五个密集预测任务(包括语义分割、目标检测、实例分割、全景分割和单目深度估计)中表现优于其他上采样器。代码可在 https://github.com/tiny-smart/dysample 获取。
文章链接
论文地址:论文地址
代码地址:代码地址
基本原理
DySample是一种超轻量级且高效的动态上采样器,旨在通过学习采样来学习上采样。与传统的基于卷积核的动态上采样方法不同,DySample从点采样的角度设计,将一个点分割成多个点以实现更清晰的边缘。其核心技术原理是通过动态采样来实现上采样过程,而不需要额外的CUDA包。DySample通过寻找每个上采样点的正确语义聚类来进行采样过程,从而实现高效的上采样。与Deformable Attention等方法不同,DySample针对上采样进行了定制化设计,为每个上采样位置采样单个点,将一个点分割成s^2个上采样点。通过高度优化的PyTorch内置函数,DySample的反向传播速度较快,训练时间增加可忽略不计。在推理时间、训练内存、训练时间、GFLOPs和参数数量等方面,DySample相比其他动态上采样器具有更低的成本,且在多个密集预测任务中表现出色,包括语义分割、目标检测、实例分割、全景分割和单目深度估计。