YOLO11改进-模块-引入Restormer模块

         随着深度学习发展,在图像恢复领域,传统方法逐渐被基于深度学习的模型取代。Transformer 在处理长距离依赖关系上展现优势,Restormer 应运而生,旨在利用 Transformer 架构更有效地处理高分辨率图像恢复任务,为图像融合等应用提供更好的特征提取基础,后续被引入到本文的医学图像融合方法中,用于处理未对齐的多模态医学图像。我们将其与C3K2模块相结合,提取图像特征。

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

改进后的

1. Restormer 介绍          

       Restormer 主要由多尺度密集 Transformer 注意力模块(MDTA)和门控双线性特征网络(GDFN)构成,以下是详细介绍:

1. 多尺度密集 Transformer 注意力模块(MDTA)

         核心机制:MDTA 利用多头自注意力机制(Multi - Head Self - Attention),从不同子空间捕捉特征间的关系,以增强特征表达能力。自注意力机制能够计算输入特征序列中每个位置与其他位置的关联程度,从而有效建模长距离依赖关系。

         具体操作:在 MDTA 中,输入特征被线性投影到多个头(head),每个头独立地计算注意力,然后将结果拼接并再次投影,得到最终输出。这种多头设计允许模型从不同角度捕捉特征间的关系,提高特征表示的丰富性。

2. 门控双线性特征网络(GDFN

         核心机制:GDFN 用于对 MDTA 输出的特征进行进一步处理,它通过门控机制(gating mechanism)控制特征的流动和融合,以增强模型对重要特征的捕捉能力。

         具体操作:GDFN 通过双线性变换(bilinear transformation)对输入特征进行变换,并使用门控单元(如 sigmoid 函数)对变换后的特征进行加权,从而实现对不同特征的选择性增强或抑制。在整体结构中,Restormer 通过堆叠多个 MDTA 和 GDFN 模块,构建出一个层次化的特征提取网络,能够从输入图像中提取不同层次和尺度的特征,为后续的图像恢复、融合等任务提供丰富的特征表示。 从图中可以看到,在医学图像融合应用里,Restormer 作为 Encoder 的一部分,对输入图像进行特征提取,其输出的特征后续参与到模态差异消除、特征对齐和融合等操作中。

   

2. YOLOv11与Restormer 的结合     

 可以在YOLOv11原有的局部特征基础上,增加对全局特征的关注,使特征表达更加丰富和准确。        

3. Restormer 代码部分

YOLOv8_improve/YOLOv11.md at master · tgf123/YOLOv8_improve · GitHub

视频讲解:YOLOv11模型改进讲解,教您如何修改YOLOv11_哔哩哔哩_bilibili

YOLOv11模型改进讲解,教您如何根据自己的数据集选择最优的模块提升精度_哔哩哔哩_bilibili

YOLOv11全部代码,现有几十种改进机制。

 4. 将Restormer 引入到YOLOv11中

第一: 将下面的核心代码复制到D:\model\yolov11\ultralytics\change_model路径下,如下图所示。

   

第二:在task.py中导入

   

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

  

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

    

     第五:运行成功

from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorld

if __name__=="__main__":

    # 使用自己的YOLOv8.yamy文件搭建模型并加载预训练权重训练模型
    model = YOLO(r"D:\model\yolov11\ultralytics\cfg\models\11\yolo11_Restormer.yaml")\
        .load(r'D:\model\yolov11\yolo11n.pt')  # build from YAML and transfer weights

    results = model.train(data=r'D:\model\yolov11\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
                          )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值