图像融合论文阅读:CrossFuse: 一种基于交叉注意机制的红外与可见光图像融合方法

@article{li2024crossfuse,
title={CrossFuse: A novel cross attention mechanism based infrared and visible image fusion approach},
author={Li, Hui and Wu, Xiao-Jun},
journal={Information Fusion},
volume={103},
pages={102147},
year={2024},
publisher={Elsevier}
}


论文级别:SCI A1
影响因子:18.6

📖[论文下载地址]
💽[代码下载地址]


文章目录

  • 📖论文解读
    • 🔑关键词
    • 💭核心思想
    • 🪅相关背景知识
    • 🪢网络结构
      • 🪢编码器
      • 🪢CAM
        • 🪢SA
        • 🪢CA
      • 🪢解码器
    • 🎢训练设置
      • 🎢一阶段
      • 🎢二阶段
    • 📉损失函数
    • 🔢数据集
    • 🔬实验
      • 📏评价指标
      • 🥅Baseline
      • 🔬实验结果
  • 🚀传送门
    • 📑图像融合相关论文阅读笔记
    • 📚图像融合论文baseline总结
    • 📑其他论文
    • 🎈其他总结
    • ✨精品文章总结
  • 🌻【如侵权请私信我删除】


📖论文解读

以往的交叉注意力只考虑相关性,而图像融合任务需要关注互补信息。
为了解决这个问题,作者提出了CrossFuse,使用【交叉注意力机制CAM】增强互补信息,使用了两阶段训练策略。
第一阶段为两种模态训练结构相同的自编码器
第二阶段固定编码器参数,训练CAM和解码器

🔑关键词

Image fusion 图像融合
Transformer
Cross attention 交叉注意力
Infrared image 红外图像
Visible image 可见光图像

💭核心思想

通过【交叉注意力机制CAM】增强互补信息,降低冗余特征的负面影响。

扩展学习
[什么是图像融合?(一看就通,通俗易懂)]

从下图中我们可以看到,相同场景的不同模态图像,有高相关性区域和高度不相关性区域。
在这里插入图片描述

🪅相关背景知识

🪢网络结构

作者提出的网络结构如下所示。
I i r I_{ir} Iir I v i I_{vi} Ivi分别代表红外图像和可见光图像,两个编码器提取多模态信息。
基于Transformer的CAM结构用来融合多模态特征
解码器用来产生融合图像 F F F
在编码器和解码器之间有两个skip connection,用来保留源图的更多深/浅层特征
在这里插入图片描述
为什么使用两个编码器呢?因为作者认为两个模态间信息差距较大,这两个编码器结构是相同的,但是网络内部参数却有所区别。
下面我们一起来看看编码器的详细结构

🪢编码器

在这里插入图片描述
第一个卷积层用来提取浅层特征(保留了丰富的纹理信息),然后经过最大池化,DenseBlock保留多尺度特征中更多有用信息,随着编码器层数越来越深,深层特征开始集中在显著目标上。
为了增强细节信息和显著特征,在编码器和解码器之间加入了两个跳接。就是上图两个蓝紫色箭头,一个在Conv上,还有一个在最后一个最大池化层上。

🪢CAM

Cross-attention mechanism,交叉注意力机制。其结构如下图所示。
在这里插入图片描述
两个分支的参数是不相同的,每个模态的特征首先经过自注意力机制SA以增强内部特征,然后经过shift操作(在水平和垂直方向移动特征位置),然后再经过SA,然后unshift恢复位置,经过交叉注意力机制CA得到融合特征。

🪢SA

在这里插入图片描述
x c x^c xc是SA的输入,也就下图(图4)左边的长条立方体,编码器的输出。
Q c K c V c Q_cK_cV_c QcKcVc是输入的不同表示,涉及Transformer里的知识,不了解的同学可以参考下面的链接。
U q k v U_{qkv} Uqkv是可以通过全连接层学习参数的变换矩阵
d d d是输入向量的维度
n o r m norm norm表示线性范数运算
M L P ( ⋅ ) MLP(·) MLP()是多层感知机

扩展学习
史上最小白之Transformer详解

🪢CA

在这里插入图片描述
在2式总, c c c c ^ \hat c c^代表不同模态。
这个地方的交叉计算,和SwinFusion有点像,感兴趣的读者可以移步去看我的另外一篇阅读笔记。

扩展学习
SwinFusion阅读笔记

SA和CA最大的区别在于矩阵乘法后的激活函数,即CA用到了反向softmax。
在这里插入图片描述

作者给出这个地方的解释是,对于不同的模态,应该增强互补(不相关)信息而不是冗余(相关)特征。

在经过CAM之后,得到了一个融合特征,接下来我们需要将这个融合特征解码为融合图像。

🪢解码器

解码器的结构如下图所示。

在这里插入图片描述
除了在编码器中刚提到两个skip connection以外,作者还加入了【特征强度感知策略】(the feature intensity aware strategy)用来进行【多级特征融合】,其公式如下:
在这里插入图片描述

( ⋅ ) (·) ()表示深层特征中的位置
Φ c m \Phi^m_c Φcm代表了CAM提取的特征, Φ i r m \Phi^m_{ir} Φirm Φ v i m \Phi^m_{vi} Φvim分别代表了红外图像和可见光图像的特征。
∇ m ∇^m m分别表示浅层特征和深层特征的细节和基础信息提取器。其计算公式为:
在这里插入图片描述

🎢训练设置

本文采用了两阶段训练。
一阶段:编码器训练。为每种模态构建自编码器网络用于重建输入。
二阶段:针对不同的编码器, 训练CAM和解码器。

🎢一阶段

在这里插入图片描述
一阶段训练的损失函数用到了像素损失和结构损失:
在这里插入图片描述
系数为1e4

🎢二阶段

在这里插入图片描述
二阶段训练的时候,固化一阶段训练好的编码器。训练CAM和解码器。
该阶段作者提出了一种注意损失函数,CAM损失=强度损失+10*梯度损失
在这里插入图片描述
在这里插入图片描述
M c M_{c} Mc代表单个模态的强度掩码
在这里插入图片描述
l o c c loc_c locc代表单个模态源图像中局部patch的平均值,可以用下式计算:
在这里插入图片描述
a v g c avg_c avgc代表通过11×11核大小的均值滤波器 ∇ a ∇_a a计算得到的单个模态的值。

在这里插入图片描述
∇ g ∇_g g代表了3×3的均值滤波器

训练设置如下所示。

在这里插入图片描述

📉损失函数

上节已介绍。

🔢数据集

  • 训练:KAIST
  • 测试:TNO, VOT-RGBT

图像融合数据集链接
[图像融合常用数据集整理]

🔬实验

📏评价指标

  • EN
  • SD
  • MI
  • FMI_dct
  • FMI_pixel
  • SCD

扩展学习
[图像融合定量指标分析]

🥅Baseline

  • FusionGAN, IFCNN, U2Fusion, YDTR, DATFuse, IRFS, SemLA, DDFM

✨✨✨扩展学习
✨✨✨强烈推荐必看博客[图像融合论文baseline及其网络模型]✨✨✨

🔬实验结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

更多实验结果及分析可以查看原文:
📖[论文下载地址]


🚀传送门

📑图像融合相关论文阅读笔记

📑[(DIF-Net)Unsupervised Deep Image Fusion With Structure Tensor Representations]
📑[(MURF: Mutually Reinforcing Multi-Modal Image Registration and Fusion]
📑[(A Deep Learning Framework for Infrared and Visible Image Fusion Without Strict Registration]
📑[(APWNet)Real-time infrared and visible image fusion network using adaptive pixel weighting strategy]
📑[Dif-fusion: Towards high color fidelity in infrared and visible image fusion with diffusion models]
📑[Coconet: Coupled contrastive learning network with multi-level feature ensemble for multi-modality image fusion]
📑[LRRNet: A Novel Representation Learning Guided Fusion Network for Infrared and Visible Images]
📑[(DeFusion)Fusion from decomposition: A self-supervised decomposition approach for image fusion]
📑[ReCoNet: Recurrent Correction Network for Fast and Efficient Multi-modality Image Fusion]
📑[RFN-Nest: An end-to-end resid- ual fusion network for infrared and visible images]
📑[SwinFuse: A Residual Swin Transformer Fusion Network for Infrared and Visible Images]
📑[SwinFusion: Cross-domain Long-range Learning for General Image Fusion via Swin Transformer]
📑[(MFEIF)Learning a Deep Multi-Scale Feature Ensemble and an Edge-Attention Guidance for Image Fusion]
📑[DenseFuse: A fusion approach to infrared and visible images]
📑[DeepFuse: A Deep Unsupervised Approach for Exposure Fusion with Extreme Exposure Image Pair]
📑[GANMcC: A Generative Adversarial Network With Multiclassification Constraints for IVIF]
📑[DIDFuse: Deep Image Decomposition for Infrared and Visible Image Fusion]
📑[IFCNN: A general image fusion framework based on convolutional neural network]
📑[(PMGI) Rethinking the image fusion: A fast unified image fusion network based on proportional maintenance of gradient and intensity]
📑[SDNet: A Versatile Squeeze-and-Decomposition Network for Real-Time Image Fusion]
📑[DDcGAN: A Dual-Discriminator Conditional Generative Adversarial Network for Multi-Resolution Image Fusion]
📑[FusionGAN: A generative adversarial network for infrared and visible image fusion]
📑[PIAFusion: A progressive infrared and visible image fusion network based on illumination aw]
📑[CDDFuse: Correlation-Driven Dual-Branch Feature Decomposition for Multi-Modality Image Fusion]
📑[U2Fusion: A Unified Unsupervised Image Fusion Network]
📑综述[Visible and Infrared Image Fusion Using Deep Learning]

📚图像融合论文baseline总结

📚[图像融合论文baseline及其网络模型]

📑其他论文

📑[3D目标检测综述:Multi-Modal 3D Object Detection in Autonomous Driving:A Survey]

🎈其他总结

🎈[CVPR2023、ICCV2023论文题目汇总及词频统计]

✨精品文章总结

✨[图像融合论文及代码整理最全大合集]
✨[图像融合常用数据集整理]

🌻【如侵权请私信我删除】

如有疑问可联系:420269520@qq.com;
码字不易,【关注,收藏,点赞】一键三连是我持续更新的动力,祝各位早发paper,顺利毕业~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/236548.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis stream restTemplate消息监听队列框架搭建

整体思路 1. pom增加redis依赖&#xff1b; 2. 消息监听器&#xff0c;实现StreamListener接口&#xff0c;处理消息到达逻辑&#xff1b; 3. 将消息订阅bean及监听器注册到配置中&#xff1b; 1. pom <?xml version"1.0" encoding"UTF-8"?> <…

Go并发快速入门:Goroutine

Go并发&#xff1a;Goroutine 1.并发基础概念&#xff1a;进程、线程、协程 (1) 进程 可以比作食材加工的一系列动作 进程就是程序在操作系统中的一次执行过程&#xff0c;是由系统进行资源分配和调度的基本单位&#xff0c;进程是一个动态概念&#xff0c;是程序在执行过程…

力扣hot100 路径总和Ⅲ dfs 前缀和 一题双解 超全注释

Problem: 437. 路径总和 III 思路 树的遍历 DFS 一个朴素的做法是搜索以每个节点为根的&#xff08;往下的&#xff09;所有路径&#xff0c;并对路径总和为 targetSumtargetSumtargetSum 的路径进行累加统计。 使用 dfs1 来搜索所有节点&#xff0c;复杂度为 O(n)O(n)O(n)&am…

【hyperledger-fabric】使用couchDB

简介 本文章主要参考来自于官方文档使用CouchDB以及 https://www.bilibili.com/video/BV1Li4y1f7ex/?spm_id_frompageDriver&vd_source2c5f2831e1c63d3a20045b167ae044e6 B站视频&#xff0c;还是非常感谢up主提供了学习的思路。 为什么要使用couchDB&#xff1f; 原文…

Redis:原理速成+项目实战——Redis实战7(优惠券秒杀+细节解决超卖、一人一单问题)

&#x1f468;‍&#x1f393;作者简介&#xff1a;一位大四、研0学生&#xff0c;正在努力准备大四暑假的实习 &#x1f30c;上期文章&#xff1a;Redis&#xff1a;原理速成项目实战——Redis实战6&#xff08;封装缓存工具&#xff08;高级写法&#xff09;&&缓存总…

JS中垃圾数据是如何自动回收的

JS中垃圾数据是如何自动回收的 背景垃圾回收机制调用栈中的数据回收堆空间中数据回收垃圾回收器的工作流程副垃圾回收器主垃圾回收器 全停顿 背景 在JS栈和堆&#xff1a;数据是如何存储的一文中提到了 JavaScript 中的数据是如何存储的&#xff0c;并通过示例代码分析了原始数…

React Native 桥接组件封装原生组件属性

自定义属性可以让组件具备更多的灵活性&#xff0c;所以有必要在JS 层通过自定义属性动态传值。 一、添加原生组件属性 因为 ViewManager 管理了整个组件的行为&#xff0c;所以要新增组件属性也需要在这里面&#xff08;如 InfoViewManager&#xff09;进行定义。 1、在Inf…

中通快递批量查询方法

你是否经常需要处理大量的中通快递单号&#xff0c;却苦于一个个等待查询&#xff1f;现在&#xff0c;有了固乔快递查询助手&#xff0c;这个问题迎刃而解&#xff01;通过批量查询功能&#xff0c;你可以轻松管理、追踪你的中通快递单号&#xff0c;大大提高工作效率。 一、下…

H264码流进行RTP包封装

一.H264基本概念 H.264从框架结构上分为视频编码层&#xff08;VCL&#xff09;和网络抽象层&#xff08;NAL&#xff09;&#xff0c;VCL功能是进行视频编解码&#xff0c;包括运动补偿预测&#xff0c;变换编码和熵编码等功能&#xff1b;NAL用于采用适当的格式对VCL视频数据…

Google ads谷歌广告投放详细步骤与技巧

对于跨境电商、独立站运营的卖家来说&#xff0c;谷歌广告投放是必备的流量拓展来源&#xff0c;但是在投入运营之前&#xff0c;你需要完整了解谷歌广告投放详细步骤&#xff0c;以为你丝滑地进行有效投放做好基础&#xff0c;下面为大家整理具体的谷歌投放技巧与步骤&#xf…

HCIP OSPF实验

任务&#xff1a; 1.使用三种解决ospf不规则区域的方法 2.路由器5、6、7、8、15使用mgre 3.使用各种优化 4.全网可达 5.保证更新安全 6.使用地址为172.16.0.0/16合理划分 7.每个路由器都有环回 拓扑图&IP划分如下&#xff1a; 第一步&#xff0c;配置IP&环回地址…

chat-plus部署指南

目录 1.下载代码 2.启动 3.测试 1.下载代码 cd /optwget https://github.com/yangjian102621/chatgpt-plus/archive/refs/tags/v3.2.4.1.tar.gz 2.启动 cd /opt/chatgpt-plus-3.2.4.1/deploydocker-compose up -d 3.测试 管理员地址xxx:8080/admin 账号密码admin/admin1…

vivado 使用项目摘要、配置项目设置、仿真设置

使用项目摘要 Vivado IDE包括一个交互式项目摘要&#xff0c;可根据设计动态更新命令被运行&#xff0c;并且随着设计在设计流程中的进展。项目摘要包括概览选项卡和用户可配置的仪表板&#xff0c;如下图所示。有关信息&#xff0c;请参阅《Vivado Design Suite用户指南&…

goland报错:The selected directory is not a valid home for Go SDK

原因&#xff1a; IDEA / goland无法识别到GO语言SDK版本 解决办法&#xff1a; 打开GO的安装目录下的src\runtime\internal\sys\zversion.go文件&#xff0c;添加一行&#xff08;我的go版本是1.18.10&#xff09; const TheVersion go1.18.10 重启goland再选择试试 最后…

【设计模式-04】Factory工厂模式

简要描述 简单工厂静态工厂工厂方法 FactoryMethod 产品维度扩展 抽象工厂 产品一族进行扩展Spring IOC 一、工厂的定义 任何可以产生对象的方法或类&#xff0c;都可以称之为工厂单例也是一种工厂不可咬文嚼字&#xff0c;死扣概念为什么有了new之后&#xff0c;还要有工厂&am…

科技创新领航 ,安川运动控制器为工业自动化赋能助力

迈入工业4.0时代&#xff0c;工业自动化的不断发展&#xff0c;让高精度运动控制成为制造业高质量发展的重要技术手段。北京北成新控伺服技术有限公司作为一家集工业自动化产品销售、系统设计、开发、服务于一体的高新技术企业&#xff0c;其引进推出的运动控制产品一直以卓越的…

详解Oracle数据库的启动

Oracle数据库的启动&#xff0c;其概念可参考Overview of Instance and Database Startup。 其过程可参见下图&#xff1a; 当数据库从关闭状态进入打开数据库状态时&#xff0c;它会经历以下阶段。 阶段Mount状态描述1实例在没有挂载数据库的情况下启动实例已启动&#xff…

共融共生:智慧城市与智慧乡村的协调发展之路

随着科技的飞速发展和全球化的不断深入&#xff0c;智慧城市和智慧乡村作为现代社会发展的重要组成部分&#xff0c;正逐渐成为人们关注的焦点。然而&#xff0c;在追求经济发展的过程中&#xff0c;城乡发展不平衡的问题也日益凸显。因此&#xff0c;如何实现智慧城市与智慧乡…

完整的模型验证套路

读取图片 from PIL import Imageimg_path "../Yennefer_of_Vengerberg.jpg" image Image.open(img_path) print(image)转换成灰度图&#xff08;可选&#xff09; image image.convert(L) image.show()转换成RGB格式 image image.convert(RGB)因为png格式是四…

STM32F103RCT6开发板M3单片机教程07-TIMER1CH1输出 PWM做LED呼吸灯

概述 本教程使用是&#xff08;光明谷SUN_STM32mini开发板&#xff09; 免费开发板 在谷动谷力社区注册用户&#xff0c;打卡&#xff0c;发帖求助都可以获取积分&#xff0c;当然最主要是发原创应用文档奖励更多积分&#xff0e; (可用积分换取&#xff0c;真的不用钱&…