恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

YOLOv11改进-Neck | HAFFormer双向模态引导交叉注意力融合模块,互补挖掘VIS/IR信息、自适应门控融合,助力可见光-红外目标检测轻量涨点 | Pattern Recognitio

  • 首页
  • 资讯中心
  • /
  • YOLOv11改进-Neck | HAFFormer双向模态引导交叉注意力融合模块,互补挖掘VIS/IR信息、自适应门控融合,助力可见光-红外目标检测轻量涨点 | Pattern Recognitio

相关资讯

JPEXS 反编译工具从入门到精通的完整实战指南 2026/8/16 12:44:31
Legacy-iOS-Kit 降级工具实战指南:3 步让旧 iPhone/iPad 重获流畅 2026/8/16 12:44:31
__START_KERNEL_map 2026/8/16 12:44:31

最新资讯

Pi :上下文工程——Context Assembly、Compaction 与 Memor
GORM进阶:关联关系、钩子与事务
星穹铁道全自动托管终极指南:三月七小助手从安装到避坑的完整教程
设置了 box-sizing: border-box; 不管用,下边框还是被挤压没了
Wells涡轮尾缘锯齿CFD气动性能分析
互联网大厂 Java 面试实录:Spring Boot + Kafka + Redis + RAG 的业务追问,燕双非翻车现场

今日推荐

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码
【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码
隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

本周热门

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码
【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码
隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

YOLOv11改进-Neck | HAFFormer双向模态引导交叉注意力融合模块,互补挖掘VIS/IR信息、自适应门控融合,助力可见光-红外目标检测轻量涨点 | Pattern Recognitio

发布时间:2026/8/16 12:49:31
YOLOv11改进-Neck | HAFFormer双向模态引导交叉注意力融合模块,互补挖掘VIS/IR信息、自适应门控融合,助力可见光-红外目标检测轻量涨点 | Pattern Recognitio 前言本文介绍了面向可见光-红外目标检测的轻量级跨模态融合模块 HAFFormer源于 LCAFNet 中的双向模态引导交叉注意力与门控融合思想。该模块分别利用可见光和红外特征生成交叉注意力增强表示在保留原始模态信息的同时充分挖掘纹理细节、热目标响应与边缘结构等互补信息并通过门控权重自适应分配两种模态贡献。我们将 HAFFormer 成功集成进 YOLO11 的 Neck 特征融合阶段替代原有拼接融合模块实现更鲁棒、更轻量的多模态特征交互与检测表达。文章目录 YOLO11改进大全卷积层、轻量化、注意力机制、损失函数、Backbone、SPPF、Neck、检测头全方位优化汇总专栏链接: YOLO11改进专栏介绍可见光-红外目标检测旨在利用不同模态之间的互补性提升复杂环境下目标分类与定位的准确性。然而现有多数方法更关注检测性能却忽视了网络复杂度限制了其在真实场景中的应用。为此本文提出一种轻量级模态引导交叉注意力融合网络 LCAFNet用于可见光-红外目标检测。该网络由 visible-guided cross-attention blockVG-CAB、infrared-guided cross-attention blockIG-CAB和 gated fusion blockGFB组成。VG-CAB 和 IG-CAB 利用一个模态的注意力权重去引导另一个模态的信息聚合从两个不同视角实现跨模态交互与特征融合生成同时包含可见光和红外信息的互补特征从而获得更全面、更鲁棒的多模态表征。在 VG-CAB 与 IG-CAB 生成增强互补特征的基础上GFB 通过门控策略实现自适应融合。此外本文还引入双分支骨干网络提取的浅层 VIS 和 IR 特征用于挖掘更多空间与边缘信息进一步提升检测模型的定位和分类能力。大量实验表明LCAFNet 在五个常用公开数据集上相比优秀模型获得更好的检测性能和更低的网络复杂度例如在 DroneVehicle 数据集上它比当前先进模型提升 1.6% mAP50同时参数量仅为其八分之一。文章链接论文地址论文地址代码地址代码地址基本原理1. 解决的关键问题HAFFormer 用双向模态引导交叉注意力提取可见光与红外之间的互补信息再通过门控机制完成自适应融合。它解决的关键问题是可见光-红外目标检测中的“模态差异”和“轻量化融合”矛盾。可见光图像通常包含更丰富的纹理、边缘和颜色线索在光照正常时有利于精细定位红外图像对热辐射敏感在低照度、夜间、烟雾或遮挡场景下更可靠。但两者也有明显差异VIS 容易受光照、阴影、天气影响IR 纹理较弱、分辨率和细节不足还可能存在热干扰。如果简单相加或拼接两种模态中的噪声和偏差可能一起进入检测头导致漏检、误检或定位不准。传统 Transformer 式跨模态交互可以建模长程关系但参数量和计算量往往偏高不适合轻量部署。论文因此设计 LCAFNet用轻量投影器、双向 cross-attention 和门控融合在较低复杂度下完成 VIS/IR 信息互补。代码中的 HAFFormer 正好把这一过程浓缩成一个模块先分别做 RGB 引导和 IR 引导的交叉注意力再用卷积门控决定两个增强分支的融合比例。2. 整体架构论文整体检测框架由双分支 backbone、四个 LCAFNet 融合网络和 YOLO 检测头组成。双分支 backbone 分别输入 VIS/RGB 图像和 IR 图像提取多尺度特征F_vis^i与F_ir^i。不同于一些只使用中深层特征的多模态检测方法论文还强调使用第二阶段浅层特征因为浅层 VIS/IR 特征包含更多空间、纹理与边缘信息有助于小目标定位和类别判别。在论文表述中LCAFNet 由VG-CAB、IG-CAB和GFB组成。 HAFFormer的两个CrossAttention_S分支可以理解为双向模态引导交叉注意力mhca_rgb([rgb_fea, ir_fea])用一侧模态引导另一侧特征聚合随后与rgb_fea残差相加mhca_ir([ir_fea, rgb_fea])则进行反向引导并与ir_fea残差相加。这样得到两个增强后的模态特征out_fea_rgb和out_fea_ir。随后HAFFormer 将两个增强特征在通道维拼接通过1×1 Conv GELU做通道压缩与非线性变换再用3×3 depthwise conv sigmoid生成门控权重w。最终输出为w * out_fea_rgb (1 - w) * out_fea_ir。这与论文 GFB 的思想一致不是固定比例融合而是根据输入内容动态分配 VIS 和 IR 的贡献。3. 技术原理HAFFormer 的第一层逻辑是双向交叉注意力。标准跨注意力通常让一个模态产生 Query另一个模态产生 Key/Value用二者相似性建立跨模态关系。但论文指出不同模态存在语义冲突、噪声模式和空间特征差异直接让不同模态的 Q/K 混合计算可能产生不稳定注意力图。LCAFNet 的解决方式是“模态引导”VG-CAB 使用 VIS 模态内部关系生成注意力权重去引导 IR 信息聚合IG-CAB 则使用 IR 模态内部关系生成注意力权重去引导 VIS 信息聚合。这样既保留各自模态的结构一致性又能从另一模态中提取互补内容。代码里的mhca_rgb和mhca_ir正好体现了这个双向结构。out_fea_rgb mhca_rgb([rgb_fea, ir_fea]) rgb_fea表示 RGB 分支获得跨模态增强后仍保留原始 RGB 表征out_fea_ir mhca_ir([ir_fea, rgb_fea]) ir_fea表示 IR 分支同样获得另一方向的互补增强。残差连接很重要因为它避免跨模态交互覆盖原始模态的可靠信息使模块更稳定。第二层逻辑是轻量化。论文中的投影器使用1×1 Conv 3×3 DWConv以较低参数量完成通道映射与局部空间建模你贴出的 HAFFormer 中也使用1×1 Conv降维和 depthwise convolution 生成融合权重。1×1 Conv负责混合通道并把2*dim压回dimDWConv则以低成本感知局部空间上下文避免使用昂贵的大型融合网络。第三层逻辑是门控融合。拼接后的特征fea_cat经过卷积得到fea_conv再通过 depthwise convolution 和 sigmoid 得到w其值域在 0 到 1 之间。最终new_fea w * out_fea_rgb (1 - w) * out_fea_ir表示模型可以在每个位置和通道上动态选择更依赖 RGB 还是 IR。当场景光照较好、纹理边界明显时门控可能更偏向 RGB当低照度、遮挡或夜间场景下红外响应更稳定时门控可以增强 IR 的贡献。论文实验表明LCAFNet 在 DroneVehicle、FLIR、M3FD、MFAD、LLVIP 等数据集上取得更好的精度-复杂度平衡消融实验也显示VG-CAB、IG-CAB 和 GFB 逐步加入后检测性能提升说明双向模态引导交互与门控融合是有效的。核心代码classHAFFormer(nn.Module):def__init__(self,dim):super(HAFFormer,self).__init__()biasFalsenum_heads8self.dimdim self.mhca_rgbCrossAttention_S(dim,num_heads,bias)self.mhca_irCrossAttention_S(dim,num_heads,bias)# Concatself.concatConcat(dimension1)self.convnn.Sequential(nn.Conv2d(2*dim,dim,kernel_size1,stride1,padding0,biasbias),nn.GELU())self.dwconvnn.Conv2d(dim,dim,kernel_size3,stride1,padding1,groupsdim,biasbias)defforward(self,x):rgb_feax[0]ir_feax[1]# Cross Attentionout_feaself.mhca_rgb([rgb_fea,ir_fea])out_fea_rgbout_feargb_fea out_feaself.mhca_ir([ir_fea,rgb_fea])out_fea_irout_feair_fea# Gated Fusionfea_catself.concat([out_fea_rgb,out_fea_ir])fea_convself.conv(fea_cat)wself.dwconv(fea_conv).sigmoid()new_feaw*out_fea_rgb(1-w)*out_fea_irreturnnew_feaYOLO11引入代码在根目录下的ultralytics/nn/目录新建一个neck目录然后新建一个以HAFFormer为文件名的py文件 把代码拷贝进去。importtorchimporttorch.nnasnnfromeinopsimportrearrangefromultralytics.nn.modules.convimportConvclassConcat(nn.Module):# Concatenate a list of tensors along dimensiondef__init__(self,dimension1):super(Concat,self).__init__()self.ddimensiondefforward(self,x):# print(x.shape)returntorch.cat(x,self.d)classCrossAttention_S(nn.Module):def__init__(self,dim,num_heads,bias):super(CrossAttention_S,self).__init__()self.num_headsnum_heads self.temperaturenn.Parameter(torch.ones(num_heads,1,1))self.vnn.Conv2d(dim,dim,kernel_size1,biasbias)self.v_dwconvnn.Conv2d(dim,dim,kernel_size3,stride1,padding1,groupsdim,biasbias)self.qknn.Conv2d(dim,dim*2,kernel_size1,biasbias)self.qk_dwconvnn.Conv2d(dim*2,dim*2,kernel_size3,stride1,padding1,groupsdim*2,biasbias)self.project_outnn.Conv2d(dim,dim,kernel_size1,biasbias)defforward(self,x):fea_0x[0]# 2024/11/1 added by wwcfea_1x[1]# 2024/11/1 added by wwcb,c,h,wfea_0.shape qkself.qk_dwconv(self.qk(fea_0))q,kqk.chunk(2,dim1)vself.v_dwconv(self.v(fea_1))qrearrange(q,b (head c) h w - b head c (h w),headself.num_heads)krearrange(k,b (head c) h w - b head c (h w),headself.num_heads)vrearrange(v,b (head c) h w - b head c (h w),headself.num_heads)qtorch.nn.functional.normalize(q,dim-1)ktorch.nn.functional.normalize(k,dim-1)attn(q k.transpose(-2,-1))*self.temperature attnattn.softmax(dim-1)out(attn v)outrearrange(out,b head c (h w) - b (head c) h w,headself.num_heads,hh,ww)outself.project_out(out)returnoutclassHAFFormer(nn.Module):def__init__(self,in_dim,out_dim):super(HAFFormer,self).__init__()biasFalsenum_heads8self.dimout_dim self.mhca_rgbCrossAttention_S(out_dim,num_heads,bias)self.mhca_irCrossAttention_S(out_dim,num_heads,bias)# Concatself.concatConcat(dimension1)self.convnn.Sequential(nn.Conv2d(2*out_dim,out_dim,kernel_size1,stride1,padding0,biasbias),nn.GELU())self.dwconvnn.Conv2d(out_dim,out_dim,kernel_size3,stride1,padding1,groupsout_dim,biasbias)self.conv1x1_1Conv(in_dim[0],out_dim,1)ifin_dim[0]!out_dimelsenn.Identity()self.conv1x1_2Conv(in_dim[1],out_dim,1)ifin_dim[1]!out_dimelsenn.Identity()defforward(self,x):rgb_feaself.conv1x1_1(x[0])ir_feaself.conv1x1_2(x[1])# Cross Attentionout_feaself.mhca_rgb([rgb_fea,ir_fea])out_fea_rgbout_feargb_fea out_feaself.mhca_ir([ir_fea,rgb_fea])out_fea_irout_feair_fea# Gated Fusionfea_catself.concat([out_fea_rgb,out_fea_ir])fea_convself.conv(fea_cat)wself.dwconv(fea_conv).sigmoid()new_feaw*out_fea_rgb(1-w)*out_fea_irreturnnew_fea注册在ultralytics/nn/tasks.py中进行如下操作步骤1:fromultralytics.nn.neck.HAFFormerimportHAFFormer步骤2修改def parse_model(d, ch, verboseTrue):elifmisHAFFormer:c1[ch[x]forxinf]c2make_divisible(min(args[0],max_channels)*width,8)args[c1,c2,*args[1:]]配置yolo11-HAFFormer.yaml# Ultralytics YOLO , AGPL-3.0 license# YOLO11 object detection model with P3-P5 outputs. For Usage examples see https://docs.ultralytics.com/tasks/detect# Parametersnc:80# number of classesscales:# model compound scaling constants, i.e. modelyolo11n.yaml will call yolo11.yaml with scale n# [depth, width, max_channels]n:[0.50,0.25,1024]# summary: 319 layers, 2624080 parameters, 2624064 gradients, 6.6 GFLOPss:[0.50,0.50,1024]# summary: 319 layers, 9458752 parameters, 9458736 gradients, 21.7 GFLOPsm:[0.50,1.00,512]# summary: 409 layers, 20114688 parameters, 20114672 gradients, 68.5 GFLOPsl:[1.00,1.00,512]# summary: 631 layers, 25372160 parameters, 25372144 gradients, 87.6 GFLOPsx:[1.00,1.50,512]# summary: 631 layers, 56966176 parameters, 56966160 gradients, 196.0 GFLOPs# YOLO11n backbonebackbone:# [from, repeats, module, args]-[-1,1,Conv,[64,3,2]]# 0-P1/2-[-1,1,Conv,[128,3,2]]# 1-P2/4-[-1,2,C3k2,[256,False,0.25]]-[-1,1,Conv,[256,3,2]]# 3-P3/8-[-1,2,C3k2,[512,False,0.25]]-[-1,1,Conv,[512,3,2]]# 5-P4/16-[-1,2,C3k2,[512,True]]-[-1,1,Conv,[1024,3,2]]# 7-P5/32-[-1,2,C3k2,[1024,True]]-[-1,1,SPPF,[1024,5]]# 9-[-1,2,C2PSA,[1024]]# 10# YOLO11n headhead:-[-1,1,nn.Upsample,[None,2,nearest]]-[[-1,6],1,HAFFormer,[512]]# cat backbone P4-[-1,2,C3k2,[512,False]]# 13-[-1,1,nn.Upsample,[None,2,nearest]]-[[-1,4],1,HAFFormer,[256]]# cat backbone P3-[-1,2,C3k2,[256,False]]# 16 (P3/8-small)-[-1,1,Conv,[256,3,2]]-[[-1,13],1,HAFFormer,[512]]# cat head P4-[-1,2,C3k2,[512,False]]# 19 (P4/16-medium)-[-1,1,Conv,[512,3,2]]-[[-1,10],1,HAFFormer,[512]]# cat head P5-[-1,2,C3k2,[1024,True]]# 22 (P5/32-large)-[[16,19,22],1,Detect,[nc]]# Detect(P3, P4, P5)实验脚本importwarnings warnings.filterwarnings(ignore)fromultralyticsimportYOLOif__name____main__:# 修改为自己的配置文件地址modelYOLO(./ultralytics/cfg/models/11/yolo11-HAFFormer.yaml)# 修改为自己的数据集地址model.train(data./ultralytics/cfg/datasets/coco8.yaml,cacheFalse,imgsz640,epochs10,single_clsFalse,# 是否是单类别检测batch8,close_mosaic10,workers0,optimizerSGD,ampTrue,projectruns/train,nameHAFFormer,)结果

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号