【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
文章目录
- 【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
- 3. Methodology
- 3.1. Model architecture
- 3.1.1. Global Local feature extraction block
- 3.1.2. Detailed spatial spectral Aggregation block
- 3.2. Deep transfer learning method
欢迎宝子们点赞、关注、收藏!欢迎宝子们批评指正!
祝所有的硕博生都能遇到好的导师!好的审稿人!好的同门!顺利毕业!
大多数高校硕博生毕业要求需要参加学术会议,发表EI或者SCI检索的学术论文会议论文:
可访问艾思科蓝官网,浏览即将召开的学术会议列表。会议入口:https://ais.cn/u/mmmiUz
论文链接:https://www.sciencedirect.com/science/article/pii/S1569843223004363
3. Methodology
3.1. Model architecture
SCDUNet++的整体架构如图4所示。模型中的编码器采用了GLFE模块,这是一个混合卷积神经网络(CNN)-Transformer模块;同时,设计了DSSA模块,以便更精细地提取光谱和空间特征。此外,采用了嵌套解码器并配备密集跳跃连接(DSC),用于在每个阶段恢复特征的分辨率。最终,各阶段特征加权融合,以获得最终结果。实现代码可在https://github.com/lewuu/SCDUNetPP获取。
3.1.1. Global Local feature extraction block
在遥感影像中,滑坡特征间的巨大差异及地物间的相似性增加了区分滑坡的难度。GLFE模块通过浅层CNN结构和深层Swin Transformer结构组合,确保了更准确的信息提取(如图4(b)所示)。
给定输入滑坡图像 X i n ∈ R H × W × C X_{in}∈R^{H×W×C} Xin∈RH×W×C,将 X i n X_{in} Xin 划分为不重叠的补丁 X P ∈ R H / P × W / P × C X_{P}∈R^{H/P×W/P×C} XP∈RH/P×W/P×C,其中 P = 4 P=4 P=4(Liu et al., 2021),这些补丁经过线性嵌入,输入两个连续的Swin Transformer模块,以获取特征 F 3 ∈ R H / 4 × W / 4 × 2 N F_{3}∈R^{H/4×W/4×2N} F3∈RH/4×W/4×2N,其中 N = 32 N=32 N=32。前一阶段输出特征在第4至第5阶段经过补丁合并以实现下采样,随后进入六个和两个连续的Swin Transformer模块,分别得到特征 F 4 ∈ R H / 8 × W / 8 × 4 N F_{4}∈R^{H/8×W/8×4N} F4∈RH/8×W/8×4N和 F 5 ∈ R H / 16 × W / 16 × 8 N F_{5}∈R^{H/16×W/16×8N} F5∈RH/16×W/16×8N。
我们发现补丁切分会导致信息损失,从而影响精度。因此,在较浅层设计了两层CNN结构,以补充模型的局部特征提取能力(Yuan et al.,2023)。第一阶段通过两个3 × 3卷积模块获取特征 F 1 ∈ R H × W × N F_{1}∈R^{H×W×N} F1∈RH×W×N,第二阶段通过下采样和三个3 × 3卷积模块获得特征 F 2 ∈ R H / 2 × W / 2 × 2 N F_{2}∈R^{H/2×W/2×2N} F2∈RH/2×W/2×2N。
在三个Swin Transformer模块中,窗口大小为8,每个阶段的注意力头数量分别为{2, 4, 8},每个头的查询维度为32。此外,由于设计了较浅的网络深度({32, 64, 64, 128, 256}),该模型在参数量和训练难度上具有优势。
3.1.2. Detailed spatial spectral Aggregation block
由于多光谱图像包含比RGB图像更复杂的信息,DSSA模块接收来自光谱(图4 III)和浅层CNN(图4 I和图4 II)的特征输入,从而能够提取空间和光谱特征信息,使模型能够关注更全面和细致的特征。DSSA模块由三个膨胀率分别为{1, 2, 3}的膨胀卷积、一个空间池化模块和一个光谱池化模块组成,如图4(e)所示。
DSSA模块接收来自两个分支的输入:一是光谱张量 X S ∈ R H × W × C S X_{S}∈R^{H×W×C_S} XS∈RH×W×CS(图4 III),另一是GLFE模块中的特征 F 1 ∈ R H × W × N F_{1}∈R^{H×W×N} F1∈RH×W×N(图4 II)和 F 2 ∈ R H / 2 × W / 2 × 2 N F_{2}∈R^{H/2×W/2×2N} F2∈RH/2×W/2×2N(图4 I)。DSSA模块融合这两个分支的特征以获得张量 T i n ∈ R H × W × N T_{in}∈R^{H×W×N} Tin∈RH×W×N,其表达式如公式(5)所示:
其中, F u p ( ⋅ ) F_{up}(·) Fup(⋅)表示使用最近邻插值的上采样函数, C 1 × 1 ( ⋅ ) C_{1×1}(·) C1×1(⋅)和 C 3 × 3 ( ⋅ ) C_{3×3}(·) C3×3(⋅)分别代表具有批量归一化和GELU激活的1×1和3×3卷积层, © © c◯表示特征拼接操作。
在空间池化模块中,张量 T i n T_{in} Tin通过在垂直和水平方向上进行全局平均池化和全局最大池化得到向量 P a v g H ∈ R H × 1 × N P_{avgH}∈R^{H×1×N} PavgH∈RH×1×N、 P a v g W ∈ R 1 × W × N P_{avgW}∈R^{1×W×N} PavgW∈R1×W×N、 P m a x H ∈ R H × 1 × N P_{maxH}∈R^{H×1×N} PmaxH∈RH×1×N和 P m a x W ∈ R 1 × W × N P_{maxW}∈R^{1×W×N} PmaxW∈R1×W×N。这些向量的元素可以通过公式(6)至(9)计算得出。
其中, h ∈ [ 0 , H ) h∈[0,H) h∈[0,H), w ∈ [ 0 , W ) w∈[0,W) w∈[0,W), n ∈ [ 0 , N ) n∈[0,N) n∈[0,N)表示在垂直、水平和通道维度上的索引。垂直和水平向量相乘,以分别获得空间中的特征分布权重。随后,将这两个权重结合并通过卷积层进行压缩,以获得空间池化特征 T s p a t ∈ R H × W × N T_{spat}∈R^{H×W×N} Tspat∈RH×W×N,其表达式如公式(10)所示:
其中, ⊗ ⊗ ⊗ 表示矩阵乘法。在光谱池化模块中,张量 T i n T_{in} Tin被压缩以获得向量 P a v g ∈ R N P_{avg}∈R^N Pavg∈RN和 P m a x ∈ R N P_{max}∈R^N Pmax∈RN。这些向量中的元素可以通过公式(11)和(12)计算得出。
这两个向量被拼接并压缩,以获得光谱通道上的注意力权重。随后,这些权重被扩展,以获得大小匹配的光谱池化特征张量 T s p e c ∈ R H × W × N T_{spec}∈R^{H×W×N} Tspec∈RH×W×N,其表达式如公式(13)所示:
其中, F e x p a n d ( ⋅ ) F_{expand}(·) Fexpand(⋅)表示张量扩展函数。接下来,我们可以将从上述两个模块获得的特征与经过三次膨胀卷积处理后的 T i n T_{in} Tin特征叠加。然后进行压缩,以获得DSSA模块的最终特征 T p s s d ∈ R H × W × N T_{pssd}∈R^{H×W×N} Tpssd∈RH×W×N,其表达式如公式(14)所示:
其中, C i ( ⋅ ) C_{i}(·) Ci(⋅)表示膨胀率为 i i i 的膨胀卷积。
3.2. Deep transfer learning method
我们采用了一种简单的基于模型的迁移学习(DTL)方法来评估DTL在提升局部模型(LM)及我们模型转移性能方面的可行性,如图5所示。源领域模型某些层的参数被转移到目标模型,使目标模型能够从源领域学习知识。随后,目标模型可以使用少量目标数据进行微调,从而获得适用于目标领域的模型(Wambugu et al., 2021;Wang et al., 2022)。
在遥感影像(RSIs)中,滑坡与背景的分布极为不平衡。为确保训练的有效性,我们将Lovász-Softmax损失(Berman et al., 2018)与Tversky损失(Salehi et al., 2017)结合,形成了平衡的Lovász-Softmax Tversky损失。其表达式如公式(15)所示:
其中, c c c 为类别 C C C 的子类, m ( c ) m(c) m(c) 是属于类别 C C C 的 c c c 的像素误差向量, Δ J c ΔJ_c ΔJc 是损失因子。 p 0 i p_{0i} p0i 和 p 1 i p_{1i} p1i 分别表示第 i i i 个像素为滑坡和非滑坡的概率, g 0 i g_{0i} g0i 和 g 1 i g_{1i} g1i 分别表示滑坡和非滑坡的真实标签。参数 α α α 和 β β β 分别设置为 0.3 和 0.7。
结果通过精确度、召回率、F1分数、交并比(IoU)、均值交并比(MIoU)和Matthews相关系数(MCC)进行评估。这些指标是基于真正例(TP)、假正例(FP)、假负例(FN)和真负例(TN)计算的,其表达式如公式(16)至(21)所示:
(1) 数据集划分
- 训练集、验证集和泸定地区的两个测试区域按比例划分为6:2:1:1。九寨沟地区的两个数据集被用作测试集。
(2) 数据增强
对训练数据应用了在线增强,包括:
- (i) 以1/4的概率旋转90°、180°、270°或不旋转;
- (ii)以1/3的概率进行上下翻转、左右翻转或不翻转;
- (iii) 以0.8的概率进行随机裁剪; (iv) 以0.4的概率进行随机擦除。
(3) 超参数详情
- 我们的模型是在PyTorch框架下构建的,使用AdamW优化器进行训练,权重衰减设为1e-4。初始学习率设置为1e-4,最小学习率设置为9e-6,采用余弦衰减策略。所有实验均在NVIDIA GeForce RTX 2060 12G GPU上进行。
欢迎宝子们点赞、关注、收藏!欢迎宝子们批评指正!
祝所有的硕博生都能遇到好的导师!好的审稿人!好的同门!顺利毕业!
大多数高校硕博生毕业要求需要参加学术会议,发表EI或者SCI检索的学术论文会议论文:
可访问艾思科蓝官网,浏览即将召开的学术会议列表。会议入口:https://ais.cn/u/mmmiUz
相关文章:

【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法
【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法 【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和深度迁移学习的遥感影像滑坡制图方法 文章目录 【深度学习滑坡制图|论文解读3】基于融合CNN-Transformer网络和…...

《计算机原理与系统结构》学习系列——处理器(下)
系列文章目录 目录 流水线冒险数据冒险数据相关与数据冒险寄存器先读后写旁路取数使用型冒险阻塞 控制冒险分支引发的控制冒险假设分支不发生动态分支预测双预测位动态分支预测缩短分支延迟带冒险控制的单周期流水线图 异常MIPS中的异常MIPS中的异常处理另一种异常处理机制非精…...

JDK新特性(8-21)数据类型-直接内存
目录 Jdk 新特性 JDK 8 特性 默认方法实现作用:可以使接口更加灵活,不破坏现有实现的情况下添加新的方法。 函数式接口 StreamAPI JDK 9 特性 JDK 10 特性 JDK 11 特性 JDK 14 特性 JDK 17 特性 JDK 21 特性 数据类型 基本数据类型和引用数据类型的区别…...

003-Kotlin界面开发之声明式编程范式
概念本源 在界面程序开发中,有两个非常典型的编程范式:命令式编程和声明式编程。命令式编程是指通过编写一系列命令来描述程序的运行逻辑,而声明式编程则是通过编写一系列声明来描述程序的状态。在命令式编程中,程序员需要关心程…...
QT pro项目工程的条件编译
QT pro项目工程的条件编译 前言 项目场景:项目中用到同一型号两个相机,同时导入两个版本有冲突,编译不通过, 故从编译就区分相机导入调用,使用宏区分 一、定义宏 在pro文件中定义宏: DEFINES USE_Cam…...

深度学习之经典网络-AlexNet详解
AlexNet 是一种经典的卷积神经网络(CNN)架构,在 2012 年的 ImageNet 大规模视觉识别挑战赛(ILSVRC)中表现优异,将 CNN 引入深度学习的新时代。AlexNet 的设计在多方面改进了卷积神经网络的架构,…...

部署Prometheus、Grafana、Zipkin、Kiali监控度量Istio
1. 模块简介 Prometheus 是一个开源的监控系统和时间序列数据库。Istio 使用 Prometheus 来记录指标,跟踪 Istio 和网格中的应用程序的健康状况。Grafana 是一个用于分析和监控的开放平台。Grafana 可以连接到各种数据源,并使用图形、表格、热图等将数据…...
结合 Spring Boot Native 和 Spring Boot 构建高性能服务器架构
随着云计算和微服务架构的普及,开发者们不断寻求提高应用性能和用户体验的解决方案。Spring Boot Native 的出现,利用 GraalVM 的原生映像特性,使得 Java 应用的启动速度和资源占用得到了显著改善。本文将深入探讨如何将前端应用使用 Spring …...

ArcGIS影像调色(三原色)三原色调整
本期主要介绍ArcGIS影像调色(三原色) ArcGIS影像调色(三原色),对比度、亮度、gamma。红绿蓝三原色调整。 视频学习 ArcGIS影像调色(三原色)...
SQLite从入门到精通面试题及参考答案
目录 SQLite 是什么? SQLite 的优点有哪些? 轻量级与易于部署 零配置和低维护成本 良好的兼容性和跨平台性 高性能和可靠性 SQLite 的局限性有哪些? 并发处理能力有限 缺乏用户管理和权限控制功能 有限的扩展性 有限的网络支持 SQLite 和其他数据库系统(如 MyS…...

【C/C++】字符/字符串函数(0)(补充)——由ctype.h提供
零.导言 除了字符分类函数,字符转换函数也是一类字符/字符串函数。 C语言提供了两种字符转换函数,分别是 toupper , tolower。 一.什么是字符转换函数? 顾名思义,即转换字符的函数,如大写字母转小写字母&am…...
Git 的特殊配置文件
文章目录 1.前言2.Git 标准配置文件.gitignore作用格式示例 .gitattributes作用格式示例 .gitmodules作用格式示例 .gitconfig作用格式示例 3.非 Git 标准约定文件.gitkeep简介示例 .gitacls作用格式示例 参考文献 1.前言 Git 是一个强大的版本控制系统,它使用多个…...

数据的表现形式(1)
数据的表现形式 西文字符编码 ASCII码(美国信息交换标准码) 计算机内部用一个字节(8位二进制),来存放一个7位ASCII码,最高位为“0”,共 可以表示128个不同字符 ASCII码中,0是48&…...

《高频电子线路》—— 调幅
文章内容来源于【中国大学MOOC 华中科技大学通信(高频)电子线路精品公开课】,此篇文章仅作为笔记分享。 调幅 普通调幅 AM 普通调幅,也属于线性调制,需要了解其时域和频域。 时域(表达式) vΩ…...
ubuntu22.04安装ROS2Humble
参考链接 Ubuntu22.04——ROS2安装以及小海龟画圆 Ubuntu 22.04 安装 ros noetic Slam_in_autonomous_driving(一) 环境配置...

软中端,硬中断(学习笔记)
/proc/softirqs 提供了软中断的运行情况; /proc/interrupts 提供了硬中断的运行情况。 以下图片展示的是软中断内容: 在查看 /proc/softirqs 文件内容时,你要特别注意以下这两点。 第一,要注意软中断的类型,也就是这…...

scIDST:弱监督学习推断单细胞转录组数据中的疾病进展阶段
背景:患者来源组织中的单个细胞,每个都处于不同的病理阶段,因此这种细胞变异性阻碍了随后的差异基因表达分析。 结果:为了克服这种异质性问题,作者提出了一种新的深度学习方法,scIDST,该方法可以…...

Linux 下执行定时任务之 Systemd Timers
不知道 ECS 因为什么缘故,上面安装的 MySQL 服务老是不定期挂掉,本来想通过 Linux 得 Cron 配置个半小时的定时检测任务,结果一直没有执行,因此又尝试使用了 Systemd Timers 进行了重新配置,简要做个记录。 Systemd Ti…...

flutter 专题二 Flutter状态管理之Riverpod 0.8.4
一 、flutter 有哪些状态管理方式 Flutter的状态管理方式有很多,Redux、 Bloc、 MobX、Provider等等。单单一个Provider,我也见到了各种组合,例如ChangeNotifier Provider / StateNotifier Provider( freezed)。各…...

【Linux】从零开始使用多路转接IO --- poll
碌碌无为,则余生太长; 欲有所为,则人生苦短。 --- 中岛敦 《山月记》--- 从零开始使用多路转接IO 1 前言1 poll接口介绍3 代码编写4 总结 1 前言 上一篇文章我们学习了多路转接中的Select,其操作很简单,但有一些缺…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

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

vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...

基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...

无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
城市路内停车管理常因行道树遮挡、高位设备盲区等问题,导致车牌识别率低、逃费率高,传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法,正成为破局关键。该设备安装于车位侧方0.5-0.7米高度,直接规避树枝遮…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...

从物理机到云原生:全面解析计算虚拟化技术的演进与应用
前言:我的虚拟化技术探索之旅 我最早接触"虚拟机"的概念是从Java开始的——JVM(Java Virtual Machine)让"一次编写,到处运行"成为可能。这个软件层面的虚拟化让我着迷,但直到后来接触VMware和Doc…...