临沂网站制作案例网站高质量外链

张小明 2026/1/10 18:32:57
临沂网站制作案例,网站高质量外链,电影网站开发视频,广州做响应式网站多少钱摘要 本文提出了一种基于序列混洗注意力(SSA)的YOLO11-MM多模态目标检测框架改进方法。针对红外与可见光多模态场景下传统特征融合方法的不足#xff0c;SSA模块通过通道重排和分组门控注意力机制#xff0c;实现了跨模态特征的高效交互与自适应聚合。实验在FLIR等数据集上验…摘要本文提出了一种基于序列混洗注意力(SSA)的YOLO11-MM多模态目标检测框架改进方法。针对红外与可见光多模态场景下传统特征融合方法的不足SSA模块通过通道重排和分组门控注意力机制实现了跨模态特征的高效交互与自适应聚合。实验在FLIR等数据集上验证了该方法的有效性特别是在小目标检测和复杂背景下的性能优势。文章详细阐述了SSA模块的设计原理、实现细节以及在YOLO11-MM框架中的集成方法包括网络结构调整、训练配置和实验结果分析为多模态目标检测提供了新的技术思路和实践参考。目录摘要一、引言二、序列混洗注意力Sequence Shuffle Attention, SSA模块一、核心思想SSA × YOLO11-MM × 多模态序列建模二、突出贡献SSA 在 YOLO11-MM 多模态检测中的价值三、优势特点FLIR / M3FD / LLVIP 多数据集实战表现四、代码说明三、逐步手把手添加序列混洗注意力Sequence Shuffle Attention, SSA模块3.1 第一步3.2 第二步3.3 第三步3.4 第四步四 完整yaml4.1 YOLO11-MM中期early加入序列混洗注意力Sequence Shuffle Attention, SSA模块五 训练代码和结果5.1 模型训练代码5.2 模型训练结果六 总结一、引言本文围绕YOLO11-MM 多模态目标检测框架的结构改进与性能优化展开研究重点探讨在红外Infrared与可见光Visible多模态场景下如何通过更加精细的特征建模与跨模态交互机制提升模型在复杂环境中的目标检测性能。针对传统多模态特征融合方法在小目标、弱纹理及复杂背景场景下表达能力不足的问题本文引入序列混洗注意力模块Sequence Shuffle Attention, SSA。该模块通过对不同序列间特征进行重排与混洗并在通道维度上计算序列对应的注意力权重实现跨序列信息的自适应聚合从而增强多模态特征之间的交互能力与判别性表达。在具体实现层面本文系统分析了SSA 模块在网络不同阶段的插入策略围绕多模态特征融合流程设计并对比了中期融合Middle Fusion实验方案重点探讨 SSA 介入时机对特征表达能力及最终检测性能的影响为多模态目标检测网络的结构设计提供了具有参考价值的工程实践经验。需要特别说明的是本文实验所采用的数据集为FLIR 数据集的子集而非完整 FLIR 数据集。在进行实验复现或进一步扩展研究时读者需注意数据划分与配置设置上的差异以避免由数据规模或分布不一致带来的结果偏差。希望本文的研究思路与实践经验能够为多模态目标检测领域的研究者与工程实践者提供具有参考价值的技术借鉴与实现范式。二、序列混洗注意力Sequence Shuffle Attention, SSA模块论文链接https://arxiv.org/pdf/2412.20066代码链接GitHub - XLearning-SCU/2025-CVPR-MaIR: Pytorch implementation of CVPR 2025 paper, MaIR: A Locality- and Continuity-Preserving Mamba for Image Restoration. The Code will be released very soon (Within 2 week)一、核心思想SSA × YOLO11-MM × 多模态序列建模序列混洗注意力模块SSASequence Shuffle Attention的核心思想是将通道特征视为一组可重排的“序列”通过序列混洗shuffle与分组门控注意力在保持局部连续性的同时显式建模跨序列依赖关系从而实现对多模态特征的高效聚合与重标定。在 YOLO11-MM 多模态检测框架中SSA 通常作用于红外与可见光完成初步融合后的特征图将输入特征 X∈C×H×WX按通道划分为 GGG 组并通过通道重排实现“跨组交互”随后在每个分组内通过轻量级门控函数生成通道注意力权重并将注意力反向重排后作用于原始特征实现对不同序列贡献度的自适应调节。这种设计避免了显式空间注意力或全局 Transformer 带来的高计算开销非常契合多模态检测中对效率与稳定性的要求。二、突出贡献SSA 在 YOLO11-MM 多模态检测中的价值SSA 在 YOLO11-MM 框架中的突出贡献在于以极低的计算成本引入了一种“序列级跨通道依赖建模机制”为多模态特征融合提供了不同于传统注意力或 Transformer 的新思路。结合论文思想与工程实现其关键贡献体现在三点1序列混洗机制通过通道重排打破固定分组带来的信息隔离使不同模态、不同语义通道之间能够间接交互2分组门控注意力利用 group-wise 1×1 卷积与 Sigmoid 门控仅在通道维度建模重要性计算复杂度为 O(C)3残差式融合设计输出以逐通道加权的形式与原特征相乘保证训练稳定性并避免信息丢失。三、优势特点FLIR / M3FD / LLVIP 多数据集实战表现从多数据集实验与工程落地角度来看SSA 在 YOLO11-MM 多模态框架中展现出一系列鲜明优势尤其适合与实时检测模型结合。在FLIR 红外–可见光数据集中SSA 能够在不引入额外空间建模的情况下突出对目标检测更有判别力的模态通道抑制背景热噪声在M3FD 遥感场景中序列混洗机制有助于整合不同方向、不同尺度下的特征响应提升复杂场景下的整体感知能力在LLVIP 数据集中SSA 对低照度条件下可见光特征不稳定的问题具有良好的缓冲作用使模型更多依赖可靠通道。四、代码说明import torch import torch.nn as nn class SequenceShuffleAttention(nn.Module): def __init__(self, group: int 4) - None: super().__init__() self.group int(group) self.gating: nn.Module | None None self._c: int | None None def _build_if_needed(self, c: int) - None: if self.gating is not None and self._c c: return if c % self.group ! 0: raise ValueError(fSequenceShuffleAttention: 通道数 {c} 不能被分组数 {self.group} 整除) self.gating nn.Sequential( nn.AdaptiveAvgPool2d(1), nn.Conv2d(c, c, kernel_size1, stride1, padding0, groupsself.group, biasTrue), nn.Sigmoid(), ) self._c c def channel_shuffle(self, x: torch.Tensor) - torch.Tensor: b, c, h, w x.shape g self.group if c % g ! 0: raise ValueError(fSequenceShuffleAttention.channel_shuffle: 通道数 {c} 不能被分组数 {g} 整除) gc c // g x x.reshape(b, gc, g, h, w).permute(0, 2, 1, 3, 4).reshape(b, c, h, w) return x def channel_rearrange(self, x: torch.Tensor) - torch.Tensor: b, c, h, w x.shape g self.group if c % g ! 0: raise ValueError(fSequenceShuffleAttention.channel_rearrange: 通道数 {c} 不能被分组数 {g} 整除) gc c // g x x.reshape(b, g, gc, h, w).permute(0, 2, 1, 3, 4).reshape(b, c, h, w) return x def forward(self, x: torch.Tensor) - torch.Tensor: if not isinstance(x, torch.Tensor) or x.dim() ! 4: raise TypeError(SequenceShuffleAttention 期望输入 [B, C, H, W]) _, c, _, _ x.shape self._build_if_needed(c) residual x x self.channel_shuffle(x) g self.gating(x) g self.channel_rearrange(g) return residual * g三、逐步手把手添加序列混洗注意力Sequence Shuffle Attention, SSA模块3.1 第一步在 ultralytics/nn 目录下面新建一个叫 fusion的文件夹然后在里面分别新建一个.py 文件把注意力模块的“核心代码”粘进去。注意 如果你使用我完整的项目代码这个 fusion文件夹已经有了、里面的模块也是有的直接使用进行训练和测试如果没有你只需要在里面新建一个 py 文件或直接修改已有的即可如下图所示。3.2 第二步第二步在该目录下新建一个名为__init__.py的 Python 文件如果使用的是我项目提供的工程该文件一般已经存在无需重复创建然后在该文件中导入我们自定义的注意力EMA具体写法如下图所示。3.3 第三步第三步找到ultralytics/nn/tasks.py文件在其中完成我们模块的导入和注册如果使用的是我提供的项目工程该文件已自带无需新建。具体书写方式如下图所示3.4 第四步第四步找到ultralytics/nn/tasks.py文件在parse_model方法中加入对应配置即可具体书写方式如下图所示。elif m in frozenset({SequenceShuffleAttention}): # Expect exactly two inputs; output channels follow the left branch if isinstance(f, int) or len(f) ! 2: raise ValueError(f{m.__name__} expects 2 inputs, got {f} at layer {i}) c_left, c_right ch[f[0]], ch[f[1]] # Auto infer dim if not provided (None or missing) if len(args) 0: args.insert(0, c_left) elif args[0] is None: args[0] c_left c2 c_left四 完整yaml4.1 YOLO11-MM中期early加入序列混洗注意力Sequence Shuffle Attention, SSA模块训练信息summary: 328 layers, 5,012,854 parameters, 5,012,838 gradients, 11.3 GFLOPs# Ultralytics YOLOMM Mid-Fusion (SSA Test) # 在标准 mid 架构中于 P4/P5 融合后插入 SequenceShuffleAttention单路注意力、通道保持。 # 使用注释 # - 模块: SequenceShuffleAttention通道重排 分组门控单路输入 # - 输入: [B,C,H,W]输出通道与输入一致 # - 约束: C 必须能被 group 整除 # - 参数(args)顺序: [group] # · group: int默认 4分组门控与通道重排的组数 # Parameters nc: 80 # number of classes scales: # model compound scaling constants # [depth, width, max_channels] n: [0.50, 0.25, 1024] s: [0.50, 0.50, 1024] m: [0.50, 1.00, 512] l: [1.00, 1.00, 512] x: [1.00, 1.50, 512] backbone: # RGB路径 (层0-10) - [-1, 1, Conv, [64, 3, 2], RGB] # 0-P1/2 RGB路径起始 - [-1, 1, Conv, [128, 3, 2]] # 1-P2/4 - [-1, 2, C3k2, [256, False, 0.25]] # 2 - [-1, 1, Conv, [256, 3, 2]] # 3-P3/8 (RGB_P3) - [-1, 2, C3k2, [512, False, 0.25]] # 4 - [-1, 1, Conv, [512, 3, 2]] # 5-P4/16 - [-1, 2, C3k2, [512, True]] # 6 (RGB_P4) - [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32 - [-1, 2, C3k2, [1024, True]] # 8 - [-1, 1, SPPF, [1024, 5]] # 9 - [-1, 2, C2PSA, [1024]] # 10 (RGB_P5) # X路径 (层11-21) - [-1, 1, Conv, [64, 3, 2], X] # 11-P1/2 X路径起始 - [-1, 1, Conv, [128, 3, 2]] # 12-P2/4 - [-1, 2, C3k2, [256, False, 0.25]] # 13 - [-1, 1, Conv, [256, 3, 2]] # 14-P3/8 (X_P3) - [-1, 2, C3k2, [512, False, 0.25]] # 15 - [-1, 1, Conv, [512, 3, 2]] # 16-P4/16 - [-1, 2, C3k2, [512, True]] # 17 (X_P4) - [-1, 1, Conv, [1024, 3, 2]] # 18-P5/32 - [-1, 2, C3k2, [1024, True]] # 19 - [-1, 1, SPPF, [1024, 5]] # 20 - [-1, 2, C2PSA, [1024]] # 21 (X_P5) # P4 / P5 融合 SSA - [[6, 17], 1, Concat, [1]] # 22: P4 融合 (RGB_P4 X_P4) - [-1, 2, C3k2, [1024, True]] # 23: Fused_P4 - [-1, 1, SequenceShuffleAttention, [4]] # 24: Fused_P4_SSA通道保持 - [[10, 21], 1, Concat, [1]] # 25: P5 融合 (RGB_P5 X_P5) - [-1, 2, C3k2, [1024, True]] # 26 - [-1, 1, C2PSA, [1024]] # 27: Fused_P5 - [-1, 1, SequenceShuffleAttention, [4]] # 28: Fused_P5_SSA通道保持 head: # 自顶向下路径 (FPN) - [28, 1, nn.Upsample, [None, 2, nearest]] # 29 Fused_P5_SSA 上采样 - [[-1, 24], 1, Concat, [1]] # 30 Fused_P4_SSA - [-1, 2, C3k2, [512, False]] # 31 - [-1, 1, nn.Upsample, [None, 2, nearest]] # 32 - [[-1, 4], 1, Concat, [1]] # 33 RGB_P3(4) - [-1, 2, C3k2, [256, False]] # 34 (P3/8-small) # 自底向上路径 (PAN) - [-1, 1, Conv, [256, 3, 2]] # 35 - [[-1, 31], 1, Concat, [1]] # 36 - [-1, 2, C3k2, [512, False]] # 37 (P4/16-medium) - [-1, 1, Conv, [512, 3, 2]] # 38 - [[-1, 28], 1, Concat, [1]] # 39 - [-1, 2, C3k2, [1024, True]] # 40 (P5/32-large) - [[34, 37, 40], 1, Detect, [nc]] # 41 Detect(P3, P4, P5)五 训练代码和结果5.1 模型训练代码import warnings from ultralytics import YOLOMM # 1. 可选屏蔽 timm 的未来弃用警告不影响训练仅减少控制台噪音 warnings.filterwarnings( ignore, categoryFutureWarning, messageImporting from timm.models.layers is deprecated, please import via timm.layers ) if __name__ __main__: # 2. 加载多模态模型配置RGB IR # 这里使用官方提供的 yolo11n-mm-mid 配置你也可以换成自己的 yaml model YOLOMM(ultralytics/cfg/models/attention/yolo11n-mm-mid-ssa.yaml) # 3. 启动训练 model.train( dataFLIR3C/data.yaml, # 多模态数据集配置上一节已经编写 epochs10, # 训练轮数实际实验中建议 100 起步 batch4, # batch size可根据显存大小调整 imgsz640, # 输入分辨率默认 640可与数据集分辨率统一 device0, # 指定 GPU idCPU 训练可写 cpu workers4, # dataloader 线程数Windows 一般 0~4 比较稳 projectruns/mm_exp, # 训练结果保存根目录 namertdetrmm_flir3c, # 当前实验名对应子目录名 # resumeTrue, # 如需从中断的训练继续可打开此项 # patience30, # 早停策略连降若干轮 mAP 不提升则停止 # modalityX, # 模态消融参数默认由 data.yaml 中的 modality_used 决定 # cacheTrue, # 启用图片缓存加快 IO内存足够时可打开 )5.2 模型训练结果六 总结到这里本文的正式内容就告一段落啦。最后也想郑重向大家推荐我的专栏 「YOLO11-MM 多模态目标检测」。目前专栏整体以实战为主每一篇都是我亲自上手验证后的经验沉淀。后续我也会持续跟进最新顶会的前沿工作进行论文复现并对一些经典方法及改进机制做系统梳理和补充。✨如果这篇文章对你哪怕只有一丝帮助欢迎订阅本专栏、关注我并私信联系我会拉你进入 「YOLO11-MM 多模态目标检测」技术交流群 QQ 群你的支持就是我持续输出的最大动力✨
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

360网站收录提交入口大全安徽房地产网站建设

LobeChat能否取代官方客户端?优劣势对比全面剖析 在大语言模型(LLM)逐渐渗透进日常工作的今天,越来越多的用户不再满足于“开箱即用”的官方聊天界面。尽管 OpenAI 的 ChatGPT 凭借其强大的生成能力树立了行业标杆,但其…

张小明 2025/12/19 22:50:37 网站建设

婚纱网站策划书模板下载廊坊推广seo霸屏

当前,新闻投稿平台已成为企业品牌传播的标配工具。从聚合海量资源的综合型平台到专注垂直领域的特色服务商,市场竞争激烈。尤其头部新闻投稿平台有哪些优势?数据显示,其平均出稿速度已压缩至2小时内,部分门户稿件甚至实…

张小明 2026/1/10 16:58:50 网站建设

如何添加网站企业信息公示网查询

模型训练中的对抗训练高级技术探索关键词:模型训练、对抗训练、高级技术、生成对抗网络、鲁棒性摘要:本文聚焦于模型训练中的对抗训练高级技术。首先介绍了对抗训练的背景,包括其目的、适用读者和文档结构等内容。接着详细阐述了对抗训练的核…

张小明 2025/12/20 23:15:59 网站建设

IP怎么屏蔽网站域名wordpress直接上传视频网站

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个MySQL数据库迁移案例模拟器,展示当源服务器(lower_case_table_names0)迁移到目标服务器(lower_case_table_names1)时可能出现的问题。模拟器应包含:…

张小明 2025/12/20 23:15:57 网站建设

沈阳设计网站公司哪家好网站支付怎么做

LobeChat能否背单词?语言学习新模式 在智能教育工具日益同质化的今天,一个值得思考的问题浮现出来:我们是否真的需要又一款“点一下显示释义”的背单词APP?当记忆卡片的形式十几年未曾改变,而大语言模型已经能写诗、编…

张小明 2025/12/20 23:15:56 网站建设