CM-UNet: Hybrid CNN-Mamba UNet for Remote Sensing Image Semantic Segmentation
论文:CM-UNet: Hybrid :CNN-Mamba UNet for Remote Sensing Image Semantic Segmentation
代码:https://github.com/XiaoBuL/CM-UNet
Abstrcat:
由于大规模图像尺寸和对象变化,当前基于 CNN 和 Transformer 的遥感图像语义分割方法对于捕获远程依赖性不是最佳的,或者受限于复杂的计算复杂性。在本文中,我们提出了 CM-UNet,包括用于提取局部图像特征的基于 CNN 的编码器和用于聚合和集成全局信息的基于 Mamba 的解码器,促进遥感图像的高效语义分割。具体来说,引入 CSMamba 块来构建核心分割解码器,该解码器采用通道和空间注意力作为 vanilla Mamba 的门激活条件,以增强特征交互和全局局部信息融合。此外,为了进一步细化 CNN 编码器的输出特征,采用多尺度注意力聚合(MSAA)模块来合并不同尺度的特征。 通过集成CSMamba模块和MSAA模块,CM-UNet有效捕获大规模遥感图像的长距离依赖关系和多尺度全局上下文信息。 在三个基准上获得的实验结果表明,所提出的 CM-UNet 在各种性能指标上都优于现有方法。
Introduction
在本文中,我们提出了 CM-UNet,一种用于 RS(遥感) 图像语义分割的新颖框架。 CM-UNet 利用 Mamba 架构聚合来自 CNN 编码器的多尺度信息。 它由一个 U 形网络和一个解码器组成,其中的 CNN 编码器提取多尺度文本信息,解码器采用设计的 CSMamba 块,可实现高效的语义信息聚合。 CSMamba 模块利用 Mamba 模块以线性时间复杂度捕获长程依赖性,并采用通道和空间注意力进行特征选择。CSMamba 块作为之前的自注意力转换器块的替代方案,提高了 RS 语义分割的效率。 此外,引入了多尺度注意力聚合(MSAA)模块来集成来自 CNN 编码器不同级别的特征,通过跳过连接帮助 CSMamba 解码器。 最后,CM-UNet 在各个解码器级别结合了多输出监督,以逐步生成 RS 图像的语义分割。 贡献总结如下:
1)我们提出了一个名为 CM-UNet 的基于 mamba 的框架,以有效地集成局部全局信息以进行 RS 图像语义分割。
2)我们设计了一个 CSMamba 块,将通道和空间注意力信息包含到 mamba 块中以提取全局上下文信息。 此外,我们采用多尺度注意力聚合模块来辅助跳跃连接和多输出损失来逐步监督语义分割。
3)在三个著名的公开RS数据集(ISPRS Potsdam、ISPRS Vaihingen和LoveDA)上进行的广泛实验表明了所提出的CM-UNet的优越性。
Methodology
我们的 CM-UNet 框架如图 2 (a) 所示,包含三个核心组件:基于 CNN 的编码器、MSAA 模块和基于 CSMamba 的解码器。 编码器采用 ResNet 提取多级特征,而 MSAA 模块融合这些特征,取代 UNet 的普通跳过连接并增强解码器的能力。 在 CSMamba 解码器中,CSMamba 块的组装聚合了本地文本特征以建立全面的语义理解。
A、CSMamba Block
受 Mamba 在线性复杂度远程建模方面取得成功的激励,我们将视觉状态空间模块引入 RS 语义分割领域。 按照[10],输入特征 X ∈ R H × W × C X\in\mathbb{R}^{H\times W\times C} X∈RH×W×C 将经过两个并行分支。在第一个分支中,特征通道通过线性层扩展至 λC,其中 λ 是预定义的通道扩展因子,随后是深度卷积、SiLU 激活函数以及 2D-SSM 层和 Layernorm。在第二个分支中,特征通过通道和空间注意力(CS)以及随后的 SiLU 激活函数进行集成。之后,将两个分支的特征与 Hadamard product(哈达玛积)进行聚合。 最后,将通道号投影回 C 以生成与输入形状相同的输出 Xout:
其中DWConv表示深度卷积,CS表示通道和空间注意模块,2D-SSM表示2D选择性扫描模块,⊙表示Hadamard积。原始的 Mamba 模型通过顺序选择性扫描处理一维数据,这适合 NLP 任务,但对图像等非因果数据形式提出了挑战。继[10]之后,我们结合了 2D 选择性扫描模块(2D-SSM)来进行图像语义分割。 如图2©所示,2D-SSM将图像特征展平为一维序列,并在四个方向上扫描:左上到右下、右下到左上、右上到左下。 ,以及从左下角到右上角。 这种方法通过选择性状态空间模型捕获每个方向的远程依赖性。 然后合并方向序列以恢复二维结构。
Multi-Scale Attention Aggregation多尺度注意力聚合
图 3 描述了用于细化 RS 图像特征的多尺度注意力聚合 (MSAA) 模块。 ResNet 编码器阶段 F1、F2 和 F3 的输出被连接为 F ^ i = C o n c a t ( F i , F i − 1 , F i + 1 ) \hat{F}_{i}=\mathrm{Concat}(F_{i},F_{i-1},F_{i+1}) F^i=Concat(Fi,Fi−1,Fi+1)。组合特征 F ^ ∈ R C 1 × H × W \hat{F} \in \mathcal{R}^{C_{1}\times H\times W} F^∈RC1×H×W被馈送到 MSAA 中进行细化。 在 MSAA 中,双路径(空间路径和通道路径)用于特征聚合。 空间细化从通道投影开始,通过 1×1 卷积将通道 C1 减少到 C2,其中 C 2 = C 1 α C_{2}=\frac{C_{1}}{\alpha} C2=αC1。多尺度融合涉及对不同内核大小(例如 3 × 3、5 × 5、7 × 7)的卷积进行求和。随后,使用均值和最大池化来聚合空间特征,然后进行 7 × 7 卷积和与 sigmoid 激活的特征图。
同时,通道聚合使用全局平均池化将维度降低至 C1 × 1 × 1,然后通过 1 × 1 卷积和 ReLU 激活来生成通道注意力图。 该图经过扩展以匹配输入的尺寸,并与空间细化的图相结合。 因此,MSAA 增强了后续网络层的空间和通道特征。 通过合并 MSAA 模块,生成的特征图丰富了精细的空间和通道信息。
Multi-Output Supervision (多输出监督)
为了有效地监督解码器逐步生成 RS 图像的语义分割图,我们的 CM-UNet 架构在每个 CSMamba 块上结合了中间监督。 这确保了网络的每个阶段都对最终的分割结果做出贡献,从而促进更精细和准确的输出。 对于第 i 个 CSMamba 块的中间输出是
其中 Fcs 是第 i 个 CSMamba 块的特征。 Conv 模块用于将特征映射到输出 C 通道类别预测图。 总体而言,网络是使用标准交叉熵损失和 Dice 损失的组合进行训练的。
Conclusion
在本文中,我们介绍了 CM-UNet,这是一个利用最新 Mamba 架构进行 RS 语义分割的高效框架。 我们的设计通过采用新颖的 UNet 形结构来解决大规模 RS 图像中的显着目标变化。 编码器利用 ResNet 提取文本信息,而解码器利用 CSMamba 块有效捕获全局远程依赖关系。 此外,我们还集成了多尺度注意力聚合(MSAA)模块和多输出增强功能,以进一步支持多尺度特征学习。 CM-UNet 已在三个 RS 语义分割数据集上进行了验证,实验结果证明了我们方法的优越性。
相关文章:

CM-UNet: Hybrid CNN-Mamba UNet for Remote Sensing Image Semantic Segmentation
论文:CM-UNet: Hybrid :CNN-Mamba UNet for Remote Sensing Image Semantic Segmentation 代码:https://github.com/XiaoBuL/CM-UNet Abstrcat: 由于大规模图像尺寸和对象变化,当前基于 CNN 和 Transformer 的遥感图像语义分割方…...

DP:子序列问题
文章目录 什么是子序列子序列的特点举例说明常见问题 关于子序列问题的几个例题1.最长递增子序列2.摆动序列3.最长递增子序列的个数4.最长数对链5.最长定差子序列 总结 什么是子序列 在计算机科学和数学中,子序列(Subsequence)是指从一个序列…...
Spring Data与多数据源配置
Spring Data与多数据源配置 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来探讨如何在Spring Data中配置和使用多个数据源。 在现代应用程序中&…...

【前端vue3】TypeScrip-类型推论和类型别名
类型推论 TypeScript里,在有些没有明确指出类型的地方,类型推论会帮助提供类型。 例如: 变量xiaoc被推断类型为string 如重新给xiaoc赋值数字会报错 let xiaoc "xiaoc"xiaoc 1111111111111如没有给变量指定类型和赋值…...

javaEE——Servlet
1.web开发概述 所谓web开发,指的是从网页中向后端程序发送请求,与后端程序进行交互 2.java后端开发环境搭建 web后端(javaEE)程序需要运行在服务器中的,这样前端才可以访问得到 3.服务器是什么? ①服务器就是一款软件,可以向其发送请求&#…...

Kotlin扩展函数(also apply run let)和with函数
also apply run let with的使用例子 private fun testOperator() {/*** also*/val person Person("ZhangSan", 18)person.also {// 通常仅仅打印使用, 也可以通过it修改it.name "ZhangSan1"println("also inner name: " it.name)}println(&qu…...
C语言笔记27 •单链表介绍•
1.链表的概念及结构 链表是⼀种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表 中的指针链接次序实现的。 2. 顺序表带来的问题 (1)中间/头部的插⼊删除,时间复杂度为O(N) (2)增容需要申请新空间,拷⻉数据ÿ…...

C++编程(五)单例模式 友元
文章目录 一、单例模式(一)概念(二)实现方式1. 饿汉式2. 懒汉式 二、友元(一)概念(二)友元函数1.概念2.语法格式3. 使用示例访问静态成员变量访问非静态成员变量 (三&…...

012-GeoGebra基础篇-构造圆的切线
前边文章对于基础内容已经悉数覆盖了,这一篇我就不放具体的细节,若有需要可以复刻一下 目录 一、成品展示二、算式内容三、正确性检查五、文章最后 一、成品展示 二、算式内容 A(0,0) B(3,0) c: Circle(A,B) C(5,4) sSegment(A,C) DMidpoint(s) d: Circ…...

数据结构速成--查找
由于是速成专题,因此内容不会十分全面,只会涵盖考试重点,各学校课程要求不同 ,大家可以按照考纲复习,不全面的内容,可以看一下小编主页数据结构初阶的内容,找到对应专题详细学习一下。 目录 …...

SpringMVC的基本使用
SpringMVC简介 SpringMVC是Spring提供的一套建立在Servlet基础上,基于MVC模式的web解决方案 SpringMVC核心组件 DispatcherServlet:前置控制器,来自客户端的所有请求都经由DispatcherServlet进行处理和分发Handler:处理器&…...

【PYG】Cora数据集分类任务计算损失,cross_entropy为什么不能直接替换成mse_loss
cross_entropy计算误差方式,输入向量z为[1,2,3],预测y为[1],选择数为2,计算出一大坨e的式子为3.405,再用-23.405计算得到1.405MSE计算误差方式,输入z为[1,2,3],预测向量应该是[1,0,0]࿰…...

MyBatis-plus这么好用,不允许还有人不会
你好呀,我是 javapub. 做 Java 的同学都会用到的三件套,Spring、SpringMV、MyBatis。但是由于使用起来配置较多,依赖冲突频发。所有,各路大佬又在这上边做了包装,像我们常用的 SpringBoot、MyBatisPlus。 基于当前要…...

Linux驱动开发实战宝典:设备模型、模块编程、I2C/SPI/USB外设精讲
摘要: 本文将带你走进 Linux 驱动开发的世界,从设备驱动模型、内核模块开发基础开始,逐步深入 I2C、SPI、USB 等常用外设的驱动编写,结合实际案例,助你掌握 Linux 驱动开发技能。 关键词: Linux 驱动,设备驱动模型,内核模块,I2C,SPI,USB 一、Linux 设备驱动模型 Li…...

安全技术和防火墙
1、安全技术 1.1入侵检测系统 特点是不阻断网络访问,主要提供报警和事后监督。不主动介入,默默的看着你(类似于监控) 1.2入侵防御系统 透明模式工作, 数据包,网络监控,服务攻击,…...

Webpack: 开发 PWA、Node、Electron 应用
概述 毋庸置疑,对前端开发者而言,当下正是一个日升月恒的美好时代!在久远的过去,Web 页面的开发技术链条非常原始而粗糙,那时候的 JavaScript 更多用来点缀 Web 页面交互而不是用来构建一个完整的应用。直到 2009年5月…...
python处理txt文件, 如果第一列和第二列的值在连续的行中重复,则只保留一行
处理txt文件, 如果第一列和第二列的值在连续的行中重复,则只保留一个实例,使用Python的内置函数来读取文件,并逐行检查和处理数据。 一个txt文件,里面的数据是893.554382324,-119.955825806,0.0299997832626,-0.133618548512,28.1155740884,112.876833236,46.7922,19.62582…...
C++17中引入了什么新的重要特性
C17是C标准的一个重要版本,它在语言核心和标准库中引入了许多新特性和改进,使得C编程更加现代化和高效。以下是C17中引入的一些重要新特性: 语言核心新特性 结构化绑定(Structured Bindings): 结构化绑定…...

Andrej Karpathy提出未来计算机2.0构想: 完全由神经网络驱动!网友炸锅了
昨天凌晨,知名人工智能专家、OpenAI的联合创始人Andrej Karpathy提出了一个革命性的未来计算机的构想:完全由神经网络驱动的计算机,不再依赖传统的软件代码。 嗯,这是什么意思?全部原生LLM硬件设备的意思吗?…...
用国内镜像安装docker 和 docker-compose (ubuntu)
替代方案,改用国内的镜像站(网易镜像) 1.清除旧版本(可选操作) for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do apt-get remove $pkg; done 2.安装docker apt-get update 首先安装依赖 apt-g…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...

【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

P3 QT项目----记事本(3.8)
3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...

高考志愿填报管理系统---开发介绍
高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发,采用现代化的Web技术,为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## 📋 系统概述 ### 🎯 系统定…...

动态规划-1035.不相交的线-力扣(LeetCode)
一、题目解析 光看题目要求和例图,感觉这题好麻烦,直线不能相交啊,每个数字只属于一条连线啊等等,但我们结合题目所给的信息和例图的内容,这不就是最长公共子序列吗?,我们把最长公共子序列连线起…...