【读论文】AttentionFGAN
【读论文】AttentionFGAN
- 介绍
- 网络架构
- 提取红外图像目标信息的网络
- 辨别器
- 损失函数
- 生成器损失函数
- 辨别器损失函数
- 总结
- 参考
论文: https://ieeexplore.ieee.org/document/9103116/
如有侵权请联系博主
介绍
好久没有读过使用GAN来实现图像融合的论文了,正好看到一篇2021年的论文,很感兴趣。
论文中介绍了一种基于多尺度和SE注意力用于可视图像与红外图像融合的方法,网络架构基于GAN,有点类似DDcGAN的结构,也是有两个辨别器。接下来咱们一起来看看吧。
网络架构
网络的总体架构如上图所示,先来简单看一下,可以认为整个网络由四个组件购成,分别是一个用于提取红外图像中目标信息的网络,一个用于提取可视图像中背景信息的网络和两个用来分辨输入的图像是融合图像还是红外/可视图像。
提取红外图像目标信息的网络
单看这一部分,我相信除了作者谁也不知道这是干啥的,不过还好还有下面这张图
上图就是红外多尺度注意力网络的网络结构,可以看到,整个网络中包含三个尺度的基于注意力的特征提取模块,从上到下,依次为原图像信息,2x2池化之后产生的图像数据和4x4池化之后产生的图像数据。
我们来仔细看一下上面这张图,还是有很多细节的。
依据我们之前所知道的,每一个尺度的图像特征信息的高和宽应该是不同的,那为什么这里直接最后可以把提取到的三个尺度特征信息进行通道维度上的相连呢?
这是因为在SE注意力计算权重之后,并不是权重直接与原尺度特征进行相乘,而是与原尺度特征上采样之后的特征进行相乘,这里的上采样自然是将三个尺度的特征信息信息上采样到同一个高与宽。
作者在文中给出了SE注意力的计算公式。计算公式如下
最终将各尺度提取的特征连接在一起就是提取到的红外特征。
可视特征注意力网络与红外的结构以及原理相同。
生成器的网络结构如下表所示,包含多尺度特征提取的网络结构和一个融合网络结构。
辨别器
因为两个辨别器的结构大致相同,这里就统一来讲。
类似于DDcGAN的结构,这里也是使用两个辨别器,分别是用来判断是融合图像还是红外图像,是融合图像还是可视图像。
看到上面网络结构之后,你会发现怎么又多了两个多尺度注意力网络?
作者在这里的解释是他希望每个辨别器都可以更加关注应该关注的区域而不是整张图像。那么怎么理解呢
以红外/融合图像辨别器为例,**这里作者希望辨别器更加关注红外图像中的目标信息特征而并非背景信息和全部信息。**同样,可视/融合图像辨别器也是如此。而SE注意力块恰好可以根据目标损失函数进行调整权重,即增大我们想要的特征信息的权重,减小哪些不想要的特征信息的权重。
这样就比较清晰了,辨别器的输入就是多尺度注意力块的输出和原图信息进行相连之后的信息。
辨别器的结构如下表所示,由卷积层Conv和全卷积FC构成。
损失函数
生成器损失函数
先来看下生成器整体的损失函数,三个部分,对抗损失,内容损失和注意力损失。
先来看下内容损失,还是我们熟悉的公式,是为了保证融合图像的目标强度信息与可视图像中的相似。
因为毕竟是2021年的论文,没有考虑到可视图像中的显著目标信息,和我们现在经常看到的损失不是很一致。
再来看下注意力损失函数,个人认为是本文的亮点
这里att代表的是经过SE注意力处理之后产生的特征信息,在前面我们已经提到了加入SE块的原因就是像生成我们希望注意到的特征信息而并非全局信息,同理这里的att也就是网络认为我们想要注意到的内容。
例如在红外与融合图像鉴别器中,我们肯定希望通过输入图像的显著目标信息来判断输入图像是可视图像还是融合图像。那么怎么判断呢?
就是通过输入图像产生的att进行判断,当融合图像的att与红外图像的att相似度越高时,就说明融合图像包含的红外目标信息更丰富。 同理,可视图像也是如此。
最后就是对抗损失
Dir是红外辨别器认为图像是红外图像的概率,Dvis是可视辨别器认为图像是可视图像的概率,我们希望生成器生成的融合图像可以骗过两个辨别器,即两个辨别器认为融合图像是可视/红外图像的概率越高越好,即Dir和Dvis越大越好,带上一个负号就是整体越小越好。
辨别器损失函数
辨别器的损失函数相对来说简单些,即识别来自红外/可视图像中的数据为红外/可视的概率越高越好,识别来自融合图像的数据为红外/可视的概率越低越好,但是这里的确实不知道是啥意思。。。。。。。麻烦大佬们解答一下。
总结
整篇文章让我最惊艳的有两个点,第一个就是在多尺度特征提取那里加入了SE块,从而挑选我们想要的特征;另一个就是在损失函数这里,尤其是注意力损失那个地方,通过我们希望注意的区域的特征的对比来判断融合图像中是否包含了可视的纹理信息和红外图像中的目标信息。
其他融合图像论文解读
==》读论文专栏,快来点我呀《==
【读论文】DIVFusion: Darkness-free infrared and visible image fusion
【读论文】RFN-Nest: An end-to-end residual fusion network for infrared and visible images
【读论文】DDcGAN
【读论文】Self-supervised feature adaption for infrared and visible image fusion
【读论文】FusionGAN: A generative adversarial network for infrared and visible image fusion
【读论文】DeepFuse: A Deep Unsupervised Approach for Exposure Fusion with Extreme Exposure Image Pairs
【读论文】DenseFuse: A Fusion Approach to Infrared and Visible Images
参考
[1] AttentionFGAN: Infrared and Visible Image Fusion Using Attention-Based Generative Adversarial Networks
相关文章:

【读论文】AttentionFGAN
【读论文】AttentionFGAN介绍网络架构提取红外图像目标信息的网络辨别器损失函数生成器损失函数辨别器损失函数总结参考论文: https://ieeexplore.ieee.org/document/9103116/如有侵权请联系博主介绍 好久没有读过使用GAN来实现图像融合的论文了,正好看…...
ClickHouse 配置文件使用说明
本文主要介绍 ClickHouse 的配置文件。在 ClickHouse 中配置主要分为两类,一类是负责 server 端配置的,另一类是负责用户端配置的。负责 server 端配置的一般会放在 config.xml 文件中,负责用户端配置的一般会放在 users.xml 文件中。当然如果…...

如果不是互联网人,谁会找到这些神器?
一、上线啦 你肯定该问了,这个是什么鬼东西。它本来是一个创建自己网站的网站。 现在使用它可以创建自己的小程序,又不是有点小厉害了。 而且功能强大,还支持微信支付,分销,优惠券,营销等多种功能。 还有多…...
Neo4j优化
使用参数 查询参数 :params设置参数 :param actorName: Tom Hanks参数的冒号后要用空格使用参数用 $ MATCH (p:Person)-[:ACTED_IN]->(m:Movie) WHERE p.name $actorName RETURN m.released AS releaseDate,m.title AS title ORDER BY m.released DESC多个参数 MATCH (p:Pe…...
CF1692G 2^Sort 题解
CF1692G 2^Sort 题解题目链接字面描述题面翻译题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1提示思路代码实现题目 链接 https://www.luogu.com.cn/problem/CF1692G 字面描述 题面翻译 给你一个长度为 n(∑n<2⋅105)n \ (\sum n < 2\cdot 10^5)n (∑n<…...
关于物理像素,逻辑像素,像素比
关于物理像素、逻辑像素(css像素)、分辨率、像素比的超详细讲解 在日常生活中,有这样一个问题。同样的图片为什么在不同的设备上显示的大小是不一样的。🤒带着这个问题来说明一下。 一、物理像素 设备刚生产出来就已经固定了&a…...

JavaSE基础部分总结
JavaSe基础部分 文章目录JavaSe基础部分1.命名规范2.基本的数据类型3.方法3.1方法的基本格式3.2 方法的分类3.3 方法的注释4.数组4.1 数组的命名格式4.2 数组中存在的址交换的操作4.3数组Arrays常用的方法1. Arrays.asList(数组作为参数或者数据作为参数):2.Arrays.…...

C++基础知识
目录类和对象C static_cast、dynamic_cast、const_cast和reinterpret_cast1、为什么要引入这四种类型转化?2、应用场景。C/C类型转换的本质struct和class的区别为什么会诞生面向对象的编程思想析构函数的执行时机初始化 const 成员变量C const对象(常对象…...

2023/2/24 图数据库Neo4j的理解与应用
1 什么是图数据库(graph database) 十大应用案例:https://go.neo4j.com/rs/710-RRC-335/images/Neo4j-Top-Use-Cases-ZH.pdf “大数据”每年都在增长,但如今的企业领导者不仅需要管理更大规模的数据,还迫切需要从现有…...

适合视力障碍者的Linux
导读有哪些最适合视障用户的 Linux 发行版?让我们一起来看看。 如果有人视力障碍或失明,他们可能会依赖声音提示或其他交互方式(如盲文)来阅读和交流。 他们怎样才能使用 Linux 发行版? 嗯,一般来说&…...
Tina Linux 存储开发指南
Tina Linux 存储开发指南 1 概述 1.1 编写目的 介绍TinaLinux Flash,分区,文件系统等存储相关信息,指导方案的开发定制。 1.2 适用范围 Tina V3.0 及其后续版本。 1.3 相关人员 适用于TinaLinux 平台的客户及相关技术人员。 2 分区管…...
【洛谷 P2670】[NOIP2015 普及组] 扫雷游戏 题解(模拟)
[NOIP2015 普及组] 扫雷游戏 题目背景 NOIP2015 普及组 T2 题目描述 扫雷游戏是一款十分经典的单机小游戏。在 nnn 行 mmm 列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻…...

【nohup引发磁盘读写高】nohup命令导致服务器磁盘读写占满该如何修复?
【写在前面】自己在跑一个项目的时候,猛然发现服务器挂了,直接访问不了,呈现出一种卡死现象,我当时都懵了,难道阿里在后端升级,也不会选择在工作日的时间升级吧,于是乎就咨询了一下客服。才有下…...

MySQL(二)索引和SQL优化
MySQL进阶MySQL体系结构存储引擎存储引擎特点InnoDB逻辑存储结构MyISAMMemory存储引擎选择索引索引结构二叉树B-TreeBTreeHash索引分类索引语法SQL性能分析工具SQL执行频率慢查询日志profile详情explain索引使用联合索引索引失效情况SQL提示覆盖索引前缀索引单列索引与联合索引…...

Java常用日期类(包含三代)_Date类及Calendar类等
一.java.util.Date类概述从JDK 1.0出现。表示一个日期和时间,精确到毫秒,内部getTime()从1970年1月1号开始算。1. java.util.Date类构造部份构造已经过时,重点看以下两个构造。public Date()从运行程序的此时此刻到时间原点经历的毫秒值&…...

计算机网络你都懂了吗
文章目录一、计算机网络的定义简单定义通用定义二、计算机网络通信过程三、什么是网络协议(Protocol)四、网络协议组成及功能一、计算机网络的定义 简单定义 计算机网络是一些相互连接的、自治的计算机系统的集合。 通用定义 将处于不同位置并具有独…...

3.4 Spring Boot 日志配置
第3章 Spring Boot 的系统配置 3.1 Spring Boot 系统配置文件 3.2 Spring Boot 自定义配置项 3.3 Spring Boot 其他配置 3.4 Spring Boot 日志配置 3.5 实战:Spring Boot 实现系统多环境配置 3.4 Spring Boot 日志配置 日志对于系统监控、故障定位非常重要…...

3款百里挑一的国产软件,逆天好用,装了就舍不得卸载
推荐3款让你偷懒,让你上头的提效电脑软件,个个功能强大,让你远离加班! 很多几个小时才能做好的事情,用上它们,只需要5分钟就行!! 1、JNPF快速开发平台 JNPF 是一款精巧耐用的软件…...

Java实现在线沟通功能
文章目录1、介绍 和 特点2、整合SpringBoot2.1、导入依赖2.2、websocket 配置类2.3、消息处理类2.4、启动服务2.5、前端代码:张三2.6、前端代码:李四3、效果4、小结1、介绍 和 特点 t-io是基于JVM的网络编程框架,和netty属同类,所…...

识别密文加密类型
离线密码破解:离线不会触发密码锁定机制不会产生大量登录失败日志引起管理员注意HASH识别工具(识别哈希类型):hash-identifierHashid yara规则匹配文件得到特定加密算法一、hash-identifierKali Linux提供工具hash-identifier来识…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...

【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

计算机基础知识解析:从应用到架构的全面拆解
目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...