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

MSST-NET:用于高光谱和多光谱图像融合的多尺度空间-光谱Transfomer网络

1.网络结构
在这里插入图片描述

主要贡献:

  • 提出了一种多尺度空间光谱Transformer网络
  • 光谱多头注意力旨在提取光谱特征
  • 引入多尺度波段/补丁嵌入来提取多尺度特征
  • 自监督训练

痛点:卷积核的感受野有限,基于卷积神经网络CNN的融合方法无法利用特征图中的全局关系。

方法:该文利用Transformer从整个特征图中提取全局信息进行融合的强大能力,提出一种新型多尺度空间光谱Transformer网络(MSST-Net)。

该网络是一个双分支网络,分别从HSI中提取光谱特征,从MSI中提取空间特征。

在特征提取之前,执行跨模态串联以实现两个分支之间的跨模态信息交互。然后,我们提出一种光谱变压器(SpeT)来提取光谱特征,并引入多尺度带/补丁嵌入,通过SpeT和空间变压器(SpaT)获得多尺度特征。为了进一步提高网络的性能和泛化,我们提出了一种自监督预训练策略,其中专门设计了掩码带自动编码器(MBAE)和掩蔽补丁自动编码器(MPAE),用于SpeTs和SpaT的自监督预训练。

两个浅层特征提取模块

  • 一个卷积层,用于提取浅层特征

两种深层特征提取模块

  • 光谱特征提取
  • 空间特征提取

一个图像重建模块

  • 两个卷积层
  • GELU激活函数·

2. 具体模块

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
B l 0 B_l^0 Bl0代表第 l l l层第0个,维度是 D s p e D_{spe} Dspexc 这个 c = 16 ∗ 2 l − 1 c=16*2^{l-1} c=162l1, D s p e D_{spe} Dspe=32
文章设定层数为3层, l = 1 , 2 , 3 l=1,2,3 l=1,2,3
在这里插入图片描述
在这里插入图片描述

P l 0 P_l^0 Pl0维度为 N ∗ D s p a , p = 8 ∗ 2 l − 1 N*D_{spa},p=8*2^{l-1} NDspa,p=82l1,p是每个patch的大小, N = H ∗ W P 2 N=\frac{H*W}{P^2} N=P2HW , D s p a D_{spa} Dspa=256

3.数据集

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

LRHSI:采用wald’s协议,对CAVE、Havard、WDCM数据集采用高斯滤波+下采样,比例因子4和8
HRMSI:CANE和Harvard数据,3波段,采用NikonD700光谱响应矩阵
WDCM数据集,10波段,采用哨兵-2 A的光谱响应矩阵生成

对于真实数据集YRE,我们将观测到的HSI和MSI降采样为3后生成训练样本。原来的HSI被当做真实值。训练后,我们将原始HSI和MSI融合,使用训练后的模型估计HR-HSI。

4.训练设置

4.1.自监督训练

从零开始训练网络需要大量的时间和数据。因此,我们希望该网络能够得到更好的初始化训练。换句话说,我们需要一个预训练网络,在下次执行类似任务时能快速获得更好的结果。一般来说,训练前学习可以分为有监督学习和无监督学习。自监督学习是有监督学习和无监督学习之间的一种中间形式。它在训练前阶段使用未标记的数据集,并在各种应用中产生了有希望的结果。因此,我们以一种自我监督学习的方式对我们的模型进行了预训练。
本来MAE是非对称的,本文改了一下改成对称的
本文采用对称编码器-解码器结构的MAE
Masked patches autoencoder :MPAE
the masking ratiois 50%

Masked bands autoencoder :MBAE
the masking ratios of the LR-HSIs to 75%

4.2.微调

微调的目的是将预训练好的模型应用于后续的图像融合任务中。我们首先使用预先训练过的编码器来更新我们的网络的参数,然后对整个网络进行端到端微调。使用比训练前更大的补丁进行微调通常是更有益的。为了进一步提高预训练的变压器编码器提取LR-HSI的光谱特征和HR-MSI的空间特征的能力,我们使用比预训练尺寸更大的补丁进行端到端微调。

在这里插入图片描述

我们首先将hr - msi输入到MPAE中,将lr - hsi输入到MBAE中进行自监督预训练,然后将两个预训练好的编码器的参数加载到所提出的网络中进行端到端微调

CAVE预训练之后,在CAVE和Harvard上微调, 在harvard数据集上的实验可以看做对网络泛化能力的一个测试

参数设置:
优化器选用AdamW
在这里插入图片描述
学习率:CAVE:1.0e-3和Harvard:1.0e-4
batch size:32
epoch:5000
在预训练中,将训练集的HR-MSIs裁剪成大小为128×128像素的patches,从而将训练集的LR-HSIs裁剪成大小为128/𝑟×128/𝑟像素的patches,其中𝑟为降采样比(4/8)。
在端到端微调中,HR-MSIs被裁剪成大小为192×192像素的patches,LR-HSIs被裁剪成大小为192/𝑟×192/𝑟像素的patches。

4.3与其他方法比较

为了有效地评价该方法的性能,我们引入了7种最先进的融合方法进行比较,包括两种传统方法,即FUSE [8]和CNMF [24],四种基于cnn的方法,即.,DBIN[66],MHF-Net[32],UAL[38]和SSR-NET [14],以及一种新提出的基于变压器的方法,融合器[54]。在不同的比较方法中的参数是根据作者的代码或参考文献中的建议来设置的。这两种传统方法在MATLAB(R2013a)服务器2012上进行测试,使用两个Intel Xeon E5-2650处理器和128GB内存,基于深度学习的方法由Pytorch 1.10.0在Python 3.7上使用NVIDIA A40的GPU。

5.结果

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

来自文章:Multiscale spatial–spectral transformer network for hyperspectral and multispectral image fusion

相关文章:

MSST-NET:用于高光谱和多光谱图像融合的多尺度空间-光谱Transfomer网络

1.网络结构 主要贡献: 提出了一种多尺度空间光谱Transformer网络光谱多头注意力旨在提取光谱特征引入多尺度波段/补丁嵌入来提取多尺度特征自监督训练 痛点:卷积核的感受野有限,基于卷积神经网络CNN的融合方法无法利用特征图中的全局关系…...

代码随想录笔记--二叉树篇

1--递归遍历 1-1--前序遍历 前序遍历&#xff1a;根→左→右&#xff1b; #include <iostream> #include <vector>struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode() : val(0), left(nullptr), right(nullptr) {}TreeNode(int x) : val(x), le…...

JavaScript中包含对象的数组去重

一.数组遍历 function Uniarray(array) {// 接收去重后的数组let resArr [];// 遍历数组for (let i 0; i < array.length; i) {let isFind false;// 检查当前元素是否已存在于结果数组中for (let j 0; j < resArr.length; j) {// 使用严格相等运算符&#xff08;&am…...

gRPC-GateWay Swagger 实战

上一次我们分享了关于 gRPC-Gateway 快速实战 &#xff0c;可以查看地址来进行回顾 : 也可以查看关于 gRPC 的历史文章&#xff1a; gRPC介绍 gRPC 客户端调用服务端需要连接池吗&#xff1f; gRPC的拦截器 gRPC的认证 分享一下 gRPC- HTTP网关 I 今天主要是分享关于 gRPC-G…...

【webpack】HMR热更新原理

本文&#xff1a;参考文章 一、HMR是什么&#xff0c;为什么出现 1、出现的原因 之前&#xff0c;应用的加载、更新都是一个页面级别的操作&#xff0c;即使单个代码文件更新&#xff0c;整个页面都要刷新&#xff0c;才能拿到最新的代码同步到浏览器&#xff0c;导致会丢失…...

Ceph构件及组件分析

Ceph存储架构 Ceph 存储集群由几个不同的daemon组成&#xff0c;每个daemon负责Ceph 的一个独特功能并。每个守护进程是彼此独立的。 下面将简要介绍每个Ceph组件的功能&#xff1a; RADOS&#xff08;Reliable Autonomic Distributed Object Store, RADOS&#xff09; RADOS…...

第六章:中华民族的抗日战争

1.日本发动灭亡中国的侵略斗争 关键字&#xff1a; 中国抗日战争的起点与全民族抗战阶段 2.中国人民奋起抗击日本侵略者 关键字&#xff1a; 1 国共第二次统一战线初步建立的标志&#xff1a;国民党五届三中全会 2 扭转时局的枢纽&#xff0c;国内和平初步实现&#xff1a;…...

签到系统怎么设计

背景 相信签到系统大家都有接触过&#xff0c;更多的是使用。但是有思考过这种系统是怎么设计的吗&#xff1f;比方说我统计一下每个月中每天的签到情况&#xff0c;怎么设计呢&#xff1f;今天一篇文章告诉你。 首先&#xff0c;我们熟悉的思维是&#xff1a;我设计一个数据…...

危险的套娃:攻击者在 PDF 文件中隐藏恶意Word 文档

据BleepingComputer消息&#xff0c;日本计算机紧急响应小组 (JPCERT) 日前分享了在2023 年 7 月检测到的利用PDF文档的新型攻击——PDF MalDoc攻击&#xff0c;能将恶意 Word 文件嵌入 PDF 来绕过安全检测。 JPCERT采样了一种多格式文件&#xff0c;能被大多数扫描引擎和工具识…...

怎样将几个pdf合并?

在日常工作中&#xff0c;我们经常需要处理大量的PDF文件。有时候&#xff0c;我们需要将多个PDF文件合并成一个文件&#xff0c;以便于快速传输或方便查阅。虽然PDF文件本身不能进行编辑&#xff0c;但是借助专业的PDF编辑软件&#xff0c;我们可以轻松地实现将多个PDF文件合并…...

vr健康管理服务情景化教学弥补现代医学教学中的诸多不足之处

高职高专临床医学院校以培养岗位胜任力为目的&#xff0c;该专业是一门专业性、实践性较强的医学学科&#xff0c;要求培养出来的学生具有较强的临床实践能力&#xff0c;医学生所学的全部知识&#xff0c;都应与实践相结合&#xff0c;解决临床的实际问题&#xff0c;为患者解…...

【业务功能篇92】微服务-springcloud-多线程-异步处理-异步编排-CompletableFutrue

三、CompletableFutrue 一个商品详情页 展示SKU的基本信息 0.5s展示SKU的图片信息 0.6s展示SKU的销售信息 1sspu的销售属性 1s展示规格参数 1.5sspu详情信息 1s 1.ComplatableFuture介绍 Future是Java 5添加的类&#xff0c;用来描述一个异步计算的结果。你可以使用 isDone方…...

CAN FD的一致性测试 助力汽车电子智能化

后起之秀——CAN FD&#xff1a;随着各个行业的快速发展&#xff0c;消费者对汽车电子智能化的诉求越来越强烈&#xff0c;这使得整车厂将越来越多的电子控制系统加入到了汽车控制中&#xff0c;且在传统汽车、新能源汽车、ADAS和自动驾驶等汽车领域中也无不催生着更高的需求&a…...

微信短链跳转到小程序指定页面调试

首先说下背景&#xff1a;后端给了短链地址&#xff0c;但是无法跳转到指定页面。总是在小程序首页。指定的页面我们是h5页面。排查步骤如下&#xff1a; 1、通过快速URL Scheme 编译。上部普通编译 下拉找到此选项。 、 2、按照小程序的要求的URL Scheme输入。另外后端给的…...

机器学习——聚类算法一

机器学习——聚类算法一 文章目录 前言一、基于numpy实现聚类二、K-Means聚类2.1. 原理2.2. 代码实现2.3. 局限性 三、层次聚类3.1. 原理3.2. 代码实现 四、DBSCAN算法4.1. 原理4.2. 代码实现 五、区别与相同点1. 区别&#xff1a;2. 相同点&#xff1a; 总结 前言 在机器学习…...

【2023研电赛】安谋科技企业命题三等奖作品: 短临天气预报AI云图分析系统

本文为2023年第十八届中国研究生电子设计竞赛安谋科技企业命题三等奖分享&#xff0c;参加极术社区的【有奖活动】分享2023研电赛作品扩大影响力&#xff0c;更有丰富电子礼品等你来领&#xff01;&#xff0c;分享2023研电赛作品扩大影响力&#xff0c;更有丰富电子礼品等你来…...

The Sandbox 与韩国仁川市合作,打造身临其境的城市体验内容

简要概括 ● The Sandbox 与仁川市联手展示城市魅力&#xff0c;打造创新形象。 ● 本次合作包含多种多样的活动&#xff0c;如 NFT 捐赠活动和针对元宇宙创作者的培训计划。 我们非常高兴地宣布与仁川市合作&#xff0c;共同打造身临其境的城市体验。 双方合作的目的是在国…...

JVM之堆和方法区

目录 1.堆 1.1 堆的结构 1.1.1 新生代&#xff08;Young Generation&#xff09; 1.1.2 年老代&#xff08;Old Generation&#xff09; 1.1.3 永久代/元空间&#xff08;Permanent Generation/Metaspace&#xff09; 1.2 堆的内存溢出 1.3 堆内存诊断 1.3.1 jmap 1.3.2…...

Java 中的 IO 和 NIO

Java 中的 IO 和 NIO Java IO 介绍Java NIO&#xff08;New IO&#xff09;介绍windows 安装 ffmpeg完整示例参考文献 Java IO 介绍 Java IO&#xff08;Input/Output&#xff09;流是用于处理输入和输出数据的机制。它提供了一种标准化的方式来读取和写入数据&#xff0c;可以…...

Linux-crontab使用问题解决

添加定时进程 终端输入&#xff1a; crontab -e选择文本编辑方式&#xff0c;写入要运行的脚本&#xff0c;以及时间要求。 注意&#xff0c;如果有多个运行指令分两种情况&#xff1a; 1.多个运行指令之间没有耦合关系&#xff0c;分别独立&#xff0c;则可以直接分为两个…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...