YOLOv11改进策略【卷积层】| ICCV-2023 引入Dynamic Snake Convolution动态蛇形卷积,改进C3k2

简介: YOLOv11改进策略【卷积层】| ICCV-2023 引入Dynamic Snake Convolution动态蛇形卷积,改进C3k2

一、本文介绍

本文记录的是利用DSConv优化YOLOv11的目标检测方法研究。在一些特殊目标任务中,细长的管状结构在图像中所占比例小,且易受复杂背景干扰,模型难以精确区分细微的目标变化。普通的变形卷积虽然能适应目标的几何变形,但在处理细管状结构时,由于模型完全自由地学习几何变化,感知区域容易偏离目标,导致难以高效聚焦于细管状结构。==本文所引进的动态蛇形卷积,通过自适应地聚焦于管状结构的细弯局部特征,增强了对几何结构的感知,使改进后的模型能够更好地感知关键特征。==


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

二、DSConv原理介绍

基于拓扑几何约束的动态蛇卷积用于管状结构分割

DSConv(Dynamic Snake Convolution,动态蛇形卷积)模块的设计主要是为了更好地处理管状结构的分割任务,解决传统卷积在处理细管状结构时的不足。

2.1 原理:

  • 给定标准2D卷积坐标$K$,中心坐标为$K_i = (x_i, y_i)$,$3\times3$内核$K$( dilation为1)表示为$K = {(x - 1, y - 1), (x - 1, y), \cdots, (x + 1, y + 1)}$。
  • 为了使卷积核更能聚焦于目标的复杂几何特征,引入变形偏移$\Delta$。但为避免感知场在细管状结构上偏离目标,使用迭代策略,依次选择每个目标待处理时的观察位置,确保注意力的连续性,防止因变形偏移过大而使感知场扩散太远。
  • 在DSConv中,将标准卷积核在x轴和y轴方向上拉直。以大小为9的卷积核为例,在x轴方向,每个网格的具体位置表示为$K{i \pm c} = (x{i \pm c}, y{i \pm c})$,其中$c = {0, 1, 2, 3, 4}$表示到中心网格的水平距离。卷积核$K$中每个网格位置$K{i \pm c}$的选择是一个累积过程,从中心位置$Ki$开始,远离中心网格的位置取决于前一个网格的位置:$K{i + 1}$相比于$Ki$增加一个偏移$\Delta = {\delta | \delta \in [-1, 1]}$,偏移需要进行累加,以确保卷积核符合线性形态结构。在x轴方向上,公式表示为:
    $K
    {i \pm c} =
    \begin{cases}
    (x{i + c}, y{i + c}) = (x{i} + c, y{i} + \sum{i}^{i + c} \Delta y) \
    (x
    {i - c}, y{i - c}) = (x{i} - c, y{i} + \sum{i - c}^{i} \Delta y)
    \end{cases}$
    在y轴方向上的公式类似。
  • 由于偏移$\Delta$通常是分数形式,采用双线性插值:$K = \sum_{K'} B(K', K) \cdot K'$,其中$K$表示分数位置,$K'$枚举所有整数空间位置,$B$是双线性插值核,可分离为两个一维核:$B(K, K') = b(K_x, K_x') \cdot b(K_y, K_y')$。

在这里插入图片描述

2.2 优势:

  • 更好地适应管状结构DSConv基于动态结构,能更好地适应细长的管状结构,从而更好地感知关键特征。
  • 增强对几何结构的感知:通过自适应地聚焦于管状结构的细弯局部特征,增强了对几何结构的感知,有助于模型更准确地捕获管状结构的特征。
  • 避免感知区域偏离:与变形卷积不同,DSConv通过引入约束,避免了感知区域在细管状结构上的偏离,使注意力更集中在目标上。

论文:https://arxiv.org/abs/2307.08388
源码:https://github.com/YaoleiQi/DSCNet

三、实现代码及YOLOv11修改步骤

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

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

目录
相关文章
|
9月前
|
机器学习/深度学习 计算机视觉 Python
【DRConv】动态区域感知卷积结构可提升卷积的表示能力 | 复现《Dynamic Region-Aware Convolution》
【DRConv】动态区域感知卷积结构可提升卷积的表示能力 | 复现《Dynamic Region-Aware Convolution》
258 1
【DRConv】动态区域感知卷积结构可提升卷积的表示能力 | 复现《Dynamic Region-Aware Convolution》
|
9月前
|
机器学习/深度学习 并行计算 算法
YOLOv8改进 | 卷积篇 |手把手教你添加动态蛇形卷积(Dynamic Snake Convolution)
YOLOv8改进 | 卷积篇 |手把手教你添加动态蛇形卷积(Dynamic Snake Convolution)
875 0
|
3天前
|
机器学习/深度学习 编解码 移动开发
YOLOv11改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
YOLOv11改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
15 7
YOLOv11改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
|
3天前
|
机器学习/深度学习 测试技术 计算机视觉
YOLOv11改进策略【Conv和Transformer】| ICCV-2023 iRMB 倒置残差移动块 轻量化的注意力模块
YOLOv11改进策略【Conv和Transformer】| ICCV-2023 iRMB 倒置残差移动块 轻量化的注意力模块
16 7
YOLOv11改进策略【Conv和Transformer】| ICCV-2023 iRMB 倒置残差移动块 轻量化的注意力模块
|
15小时前
|
机器学习/深度学习 计算机视觉
YOLOv11改进策略【注意力机制篇】| Large Separable Kernel Attention (LSKA) 大核可分离卷积注意力 二次创新C2PSA、C3k2
YOLOv11改进策略【注意力机制篇】| Large Separable Kernel Attention (LSKA) 大核可分离卷积注意力 二次创新C2PSA、C3k2
12 2
YOLOv11改进策略【注意力机制篇】| Large Separable Kernel Attention (LSKA) 大核可分离卷积注意力 二次创新C2PSA、C3k2
|
3天前
|
机器学习/深度学习 资源调度 计算机视觉
YOLOv11改进策略【卷积层】| CVPR-2020 Strip Pooling 空间池化模块 处理不规则形状的对象 含二次创新
YOLOv11改进策略【卷积层】| CVPR-2020 Strip Pooling 空间池化模块 处理不规则形状的对象 含二次创新
12 0
YOLOv11改进策略【卷积层】| CVPR-2020 Strip Pooling 空间池化模块 处理不规则形状的对象 含二次创新
|
7月前
|
机器学习/深度学习 Serverless 计算机视觉
【YOLOv8改进 - 注意力机制】Sea_Attention: Squeeze-enhanced Axial Attention,结合全局语义提取和局部细节增强
【YOLOv8改进 - 注意力机制】Sea_Attention: Squeeze-enhanced Axial Attention,结合全局语义提取和局部细节增强
|
3月前
|
机器学习/深度学习 测试技术 计算机视觉
【YOLOv11改进 - 注意力机制】LSKA(Large Separable Kernel Attention):大核分离卷积注意力模块
【YOLOv11改进 - 注意力机制】LSKA(Large Separable Kernel Attention):大核分离卷积注意力模块
【YOLOv11改进 - 注意力机制】LSKA(Large Separable Kernel Attention):大核分离卷积注意力模块
|
9月前
|
机器学习/深度学习 编解码 边缘计算
YOLOv5改进 | 卷积模块 | 用ShuffleNetV2卷积替换Conv【轻量化网络】
本文介绍了如何在YOLOv5中用ShuffleNetV2替换卷积以减少计算量。ShuffleNetV2是一个轻量级网络,采用深度可分离卷积、通道重组和多尺度特征融合技术。文中提供了一个逐步教程,包括ShuffleNetV2模块的代码实现和在YOLOv5配置文件中的添加方法。此外,还分享了完整的代码链接和GFLOPs的比较,显示了GFLOPs的显著减少。该教程适合初学者实践,以提升深度学习目标检测技能。
YOLOv5改进 | 卷积模块 | 用ShuffleNetV2卷积替换Conv【轻量化网络】
|
机器学习/深度学习 PyTorch 算法框架/工具
空间金字塔池化(Spatial Pyramid Pooling, SPP)原理和代码实现(Pytorch)
想直接看公式的可跳至第三节 3.公式修正 一、为什么需要SPP 首先需要知道为什么会需要SPP。 我们都知道卷积神经网络(CNN)由卷积层和全连接层组成,其中卷积层对于输入数据的大小并没有要求,唯一对数据大小有要求的则是第一个全连接层,因此基本上所有的CNN都要求输入数据固定大小,例如著名的VGG模型则要求输入数据大小是 (224*224) 。
2285 0