YOLO12 改进|融入 大 - 小卷积LS Convolution 捕获全局上下文与小核分支提取局部细节,提升目标检测中的多尺度

传统卷积核尺寸固定(如 3×3、5×5),在目标检测任务中面临两难:小卷积核(如 YOLOv5/YOLOv8 中的 3×3):计算高效但感受野有限,对大目标或密集场景建模能力不足。大卷积核(如 11×11、13×13):能捕获全局上下文,但参数量爆炸(如 13×13 卷积参数量是 3×3 的 20 倍以上),易过拟合且计算低效。LS Convolution(Large-Small Convolution) 应运而生,旨在平衡全局感知与局部细节,并通过结构创新降低大核计算成本

上面是原模型,下面是改进模型

1. 大 - 小卷积LS Convolution 介绍

LS Convolution 的核心结构包含三个组件:

1. 大核稀疏卷积(Large Kernel Sparse Convolution) 采用深度可分离卷积 + 空洞卷积组合:

使用大尺寸深度卷积(如 7×7、9×9)提取空间特征,参数量仅为标准卷积的 1/channel 数。

引入空洞率(dilation)进一步扩大感受野,避免参数激增(如 dilation=2 时,7×7 卷积等效感受野为 13×13)。

  1. 小核动态卷积(Small Kernel Dynamic Convolution) 采用分组卷积 + 注意力机制

使用 3×3 或 5×5 小卷积核提取局部细节,保持计算效率。

通过通道注意力(SE 模块)空间注意力(SAM 模块)动态调整特征权重,增强对关键区域的响应。

引入可变形卷积思想,使小核能够适应目标形状变化。

  1. 特征融合与聚合通过两种方式融合大核与小核特征:

并联结构:大核分支与小核分支并行计算,后通过 concat 或加权求和合并。

级联结构:先用大核提取全局上下文,再用小核对其细化,形成 "粗粒度→细粒度" 层级特征。

2. YOLOv12与 大 - 小卷积LS Convolution 的结合

LS 卷积与 YOLO12 结合时,大核分支可捕捉图像全局语义信息(如目标与场景关系),小核分支聚焦目标局部细节(如纹理、边缘),通过动态权重融合增强多尺度特征表达,提升复杂场景下小目标、重叠目标的检测精度;同时借助深度可分离卷积等轻量化设计,在保持 YOLO12 实时推理速度的前提下,平衡计算量与检测性能

3. 大 - 小卷积LS Convolution代码部分

YOLO12模型改进方法,快速发论文,总有适合你的改进,还不改进上车_哔哩哔哩_bilibili

更多代码: YOLOv8_improve/YOLOV12.md at master · tgf123/YOLOv8_improve · GitHub

4. 大 - 小卷积LS Convolution引入到YOLOv12中

第一: 先新建一个v12_changemodel,将下面的核心代码复制到下面这个路径当中,如下图如所示。E:\Part_time_job_orders\YOLO_NEW\YOLOv12\ultralytics\v12_changemodel。

​​​​​​

第二:在task.py中导入

​​​

第三:在task.py中的模型配置部分下面代码

​​​​​​​ ​​​​​​​​​​​​​​

第四:将模型配置文件复制到YOLOV12.YAMY文件中

​​​​​​​​​​​​​​

​​​​​​​ ​​​​​​​​​​​​​​ ​​​​​​​ ​​​​​​​​​​​​​第五:运行代码

python 复制代码
from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorld

if __name__=="__main__":

    # 使用自己的YOLOv12.yamy文件搭建模型并加载预训练权重训练模型
    model = YOLO(r"E:\Part_time_job_orders\YOLO_NEW\YOLOv12\ultralytics\cfg\models\12\yolo12_LSConv.yaml")\
        .load(r'E:\Part_time_job_orders\YOLO_NEW\YOLOv12\yolo12n.pt')  # build from YAML and transfer weights

    results = model.train(data=r'E:\Part_time_job_orders\YOLO\YOLOv12\ultralytics\cfg\datasets\VOC_my.yaml',
                          epochs=300,
                          imgsz=640,
                          batch=64,
                          # cache = False,
                          # single_cls = False,  # 是否是单类别检测
                          # workers = 0,
                         # resume=r'D:/model/yolov8/runs/detect/train/weights/last.pt',
                          amp = True
                          )
相关推荐
董建光d1 天前
YOLOv4:目标检测的 “速度与精度平衡术
yolo·目标检测·目标跟踪
fsnine1 天前
YOLOv2原理介绍
人工智能·计算机视觉·目标跟踪
m0_650108241 天前
【论文精读】FlowVid:驯服不完美的光流,实现一致的视频到视频合成
人工智能·计算机视觉·扩散模型·视频编辑·视频生成·论文精读·不完美光流
程序猿小D1 天前
【完整源码+数据集+部署教程】【零售和消费品&存货】价格标签检测系统源码&数据集全套:改进yolo11-RFAConv
前端·yolo·计算机视觉·目标跟踪·数据集·yolo11·价格标签检测系统源码
滑水滑成滑头1 天前
**点云处理:发散创新,探索前沿技术**随着科技的飞速发展,点云处理技术在计算机视觉、自动驾驶、虚拟现实等领域的应用愈发广
java·python·科技·计算机视觉·自动驾驶
newxtc1 天前
【猿辅导-注册安全分析报告-无验证方式导致安全隐患】
开发语言·selenium·安全·yolo·安全爆破
CoovallyAIHub1 天前
超越“识别”:下一代机器视觉如何破解具身智能落地难题?
深度学习·算法·计算机视觉
CoovallyAIHub1 天前
全球OCR新标杆!百度0.9B小模型斩获四项SOTA,读懂复杂文档像人一样自然
深度学习·算法·计算机视觉
Francek Chen1 天前
【深度学习计算机视觉】14:实战Kaggle比赛:狗的品种识别(ImageNet Dogs)
人工智能·pytorch·深度学习·计算机视觉·kaggle·imagenet dogs
辞--忧1 天前
一文读懂 YOLOv3
yolo