当前位置: 首页 > news >正文

YOLO11改进-模块-引入空间增强前馈网络SEFN 提高多尺度 遮挡

        基于卷积神经网络(CNNs)的方法在图像修复中受限于感受野增长缓慢,难以捕捉长距离依赖;基于 Transformer 的方法存在二次计算复杂度问题,且在像素级捕捉空间长距离依赖方面效果不佳。选择性状态空间模型(SSM)虽在学习长距离依赖上有优势,但传统 SSM 缺乏 2D 空间感知。在处理图像修复任务时,SSM 的固有设计局限使其在跨多行和多列区域的局部空间信息捕捉上存在不足。为解决这些问题,提升图像表示学习中空间感知能力,提出了空间增强前馈网络(SEFN)。

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

改进后的

1. 空间增强前馈网络SEFN介绍 

       SEFN 的关键思想是利用从 SEM 块之前的特征表示中提取的空间信息,通过门控机制作用于 SMB 之后的特征,从而将空间感知和长距离依赖学习整合到整个 SEM 块中。通过平均池化扩大感受野,利用 {Conv-LN-ReLU} 块捕捉更广泛的空间感知,再经上采样得到空间感知指标 γ。利用该指标 γ 对 SMB 之后的特征进行调制,增强特征的空间感知能力,以此来补充 SSM 在局部空间信息捕捉上的不足,优化图像修复过程中的空间表示学习 。

空间增强前馈网络(SEFN)是用于优化图像修复中空间感知能力的关键组件,其结构主要包含特征获取、扩大感受野、生成空间感知指标和门控机制调制这几个关键步骤:

         特征获取:SEFN 首先获取 Mamba 块入口和出口的特征,分别记为hbefore​和hafter​。这两个特征包含了图像在不同处理阶段的信息,是后续处理的基础。

         扩大感受野:对hbefore​进行平均池化操作,平均池化可以扩大感受野,让网络能捕捉到更广泛区域的信息。之后,将平均池化后的特征送入由两个 {卷积层 - 层归一化层 - 修正线性单元激活函数}({Conv-LN-ReLU})组成的模块中。经过这两个模块的处理,网络能够进一步捕捉到更丰富、更广泛的空间感知信息。

         生成空间感知指标:经过前面的处理后,对得到的特征进行上采样操作,从而得到空间感知指标 γ。这个 γ 指标保留了来自hbefore​的空间关系,能够反映出图像中不同区域之间的空间联系。

         门控机制调制:把hafter​分成hafter′​和hafter′′​两部分。hafter′​会结合 γ,先经过线性变换,再通过 GELU 这种非线性激活函数处理,形成一个 “gate”(门)。最后,这个 “gate” 和hafter′′​进行逐点相乘操作,这样就能根据空间感知指标 γ 对hafter′′​进行调制,增强hafter′′​的空间感知能力,让网络在图像表示学习过程中对空间信息的把握更准确。

2. YOLOv11与空间增强前馈网络SEFN的结合           

        在 YOLO11 目标检测框架中,SEFN 替换 YOLO11 的 concat 操作,能增强空间感知能力。SEFN 通过独特的结构捕捉更丰富空间信息,以门控机制优化特征,比 concat 单纯拼接特征更有效,可使模型在检测时对目标空间位置和关系把握更精准,提升检测精度与稳定性。

3. 空间增强前馈网络SEFN代码部分

视频讲解:

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

用一篇论文教您如何使用YOLOv11改进模块写一篇1、2区论文_哔哩哔哩_bilibili

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

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

 4. 空间增强前馈网络SEFN引入到YOLOv11中

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

                       

第二:在task.py中导入

 ​​​                    

第三:在YOLOv11\ultralytics\nn\tasks.py中的模型配置部分下面代码

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

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

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

     第五:运行成功

from sympy import falsefrom ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorldif __name__=="__main__":# 使用自己的YOLOv8.yamy文件搭建模型并加载预训练权重训练模型model = YOLO(r"E:\Part_time_job_orders\YOLO\YOLOv11\ultralytics\cfg\models\11\yolo11_SEFN.yamy")\.load(r'E:\Part_time_job_orders\YOLO\YOLOv11\yolo11n.pt')  # build from YAML and transfer weightsresults = model.train(data=r'E:\Part_time_job_orders\YOLO\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)
http://www.xdnf.cn/news/457291.html

相关文章:

  • 华宇TAS应用中间件与亿信华辰多款软件产品完成兼容互认证
  • 2025 OceanBase 开发者大会全议程指南
  • 【AI论文】用于评估和改进大型语言模型中指令跟踪的多维约束框架
  • 如何卸载并重新安装 Mozilla Firefox 浏览器
  • 2025年,多模态特征融合只会更火
  • 基于Rust语言的Rocket框架和Sqlx库开发WebAPi项目记录(一)
  • WPS文字的“邮件合并”功能-----批量生成word文档
  • 一文讲透 Vue3 + Three.js 材质属性之皮革篇【扫盲篇】
  • 【hadoop】sqoop案例 hive->mysql
  • 2.ch452a 4线驱动按键扫描
  • Spring MVC 拦截器 (HandlerInterceptor) 是什么? 它与 Servlet Filter 有什么区别?
  • Kotlin并发请求的一些知识记录
  • Go 语言中接口类型转换为具体类型
  • 修复Windows 10中由于SearchProtocolHost.exe而导致的CPU使用率过高
  • 软考 系统架构设计师系列知识点之杂项集萃(60)
  • 飞牛NAS本地部署开源TTS文本转语音工具EasyVoice与远程使用流程
  • 在Angular中使用Leaflet构建地图应用
  • 【实战教程】从零实现DeepSeek AI多专家协作系统 - Spring Boot+React打造AI专家团队协作平台
  • 服务器连接多客户端
  • 8.ADC
  • 常用Playwright代码片段-Part4
  • π0: A Vision-Language-Action Flow Model for General Robot Control
  • PowerBI链接EXCEL实现自动化报表
  • 【Linux系统】从 C 语言文件操作到系统调用的核心原理
  • vscode c++编译onnxruntime cuda 出现的问题
  • VScode各文件转化为PDF的方法
  • 赛博放生:用数字技术重构心灵仪式
  • 各个历史版本mysql/tomcat/Redis/Jdk/Apache下载地址
  • 【深度学习之四】知识蒸馏综述提炼
  • Golang基础知识—cond