图像修复需平衡局部纹理还原与全局语义连贯。传统 CNN 受限于感受野,难以建模长程依赖;Transformer 虽能捕获全局交互,但二次计算复杂度使其在高分辨率场景效率低下,且分块处理易丢失细节。Mamba 作为高效序列模型,可线性建模像素级长程依赖,却缺乏空间感知能力。Hybrid Module应运而生,旨在融合 Transformer 的空间理解与 Mamba 的长程建模优势,实现双层次特征交互,提升修复质量与计算效率。
上面是原模型,下面是改进模型
1. 混合模块Hybrid Module介绍
空间缩减自注意力(SRSA):对输入特征降维后计算补丁级全局注意力,融合 3×3 深度卷积增强局部细节,平衡全局结构与局部纹理。
带位置嵌入的 Mamba 模块:将特征展平为序列并注入余弦位置编码,通过门控机制选择性传播像素级依赖,输出保留长程细节的特征图。
2. YOLOv12与混合模块Hybrid Module的结合
通过 Mamba 的像素级长程建模与 Transformer 的补丁级全局推理,同时提升小目标细节感知与大目标结构理解,尤其优化密集场景下的检测精度。
3. 混合模块Hybrid Module代码部分
YOLO12模型改进方法,快速发论文,总有适合你的改进,还不改进上车_哔哩哔哩_bilibili
更多代码:YOLOv8_improve/YOLOV12.md at master · tgf123/YOLOv8_improve · GitHub
4. 将混合模块Hybrid Module引入到YOLOv12中
第一: 先新建一个v12_changemodel,将下面的核心代码复制到下面这个路径当中,如下图如所示。E:\Part_time_job_orders\YOLO_NEW\YOLOv12\ultralytics\v12_changemodel。
第二:在task.py中导入包
第三:在task.py中的模型配置部分下面代码
第四:将模型配置文件复制到YOLOV12.YAMY文件中
第五:运行代码
from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorldif __name__=="__main__":# 使用自己的YOLOv12.yamy文件搭建模型并加载预训练权重训练模型model = YOLO(r"E:\Part_time_job_orders\YOLO_NEW\YOLOv12\ultralytics\cfg\models\12\yolo12_mxt_mamba_layer.yaml")\.load(r'E:\Part_time_job_orders\YOLO_NEW\YOLOv12\yolo12n.pt') # build from YAML and transfer weightsresults = 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)