SARAS-Net: Scale and Relation Aware Siamese Network for Change Detection

news2024/11/24 10:35:01

SARAS-Net:用于变化检测的尺度和关系感知的孪生网络

AAAI
Chao-Peng Chen, Jun-Wei Hsieh, Ping-Yang Chen, Yi-Kuan Hsieh, Bor-Shiun Wang
2023

摘要:变化检测(CD)旨在找出不同时间两幅图像之间的差异,并输出变化图来表示该区域是否发生了变化。为了更好地生成变化图,许多最新的方法设计了一个具有强大判别能力的深度学习模型。然而,这些方法仍然获得较低的性能,因为它们忽略了空间信息和对象之间的比例变化,导致模糊或错误的边界。除此之外,他们还忽略了两个不同图像的交互信息。为了缓解这些问题,我们提出了我们的网络Sacale和关系感知暹罗网络(SARAS- Net)来处理这个问题。本文提出了三个模块,包括关系感知、尺度感知和交叉变换,以更有效地解决场景变化检测问题。为了验证我们的模型,我们测试了三个公共数据集,包括LEVIR-CD、WHU-CD和DS- FIN,并获得了SoTA准确性。我们的代码可在https://github.com/f64051041/SARAS-Net.获得

论文面对的问题:为了生成变化图,大多数传统方法集中于检测变化的像素并对它们进行分类。然而,由于一些噪声,包括不同的光强度和表面颜色,这些结果的准确度通常较低。因此,设计一个具有强大鉴别能力的良好网络来解决这些问题是至关重要的。

多尺度特征,两个图像之间的关系,以及注意力:

  1. FCN (Jaturapitpornchai等人,2019年)使用U-net模型来检测建造新建筑物的区域。虽然它可以粗略地指示新建建筑物的位置,但是由于它忽略了空间信息和对象之间不同的尺度变化,所以它的性能很低。
  2. SNUNet (Fang et al. 2022)侧重于处理多尺度特征,以通过ECAM(装配通道注意模块)处理对象的尺度变化。然而,这种ECAM只考虑通道注意力,而忽略像素之间的空间关系来生成变化图,因此也检测到许多具有季节性植被变化的意外区域。
  3. 为了惩罚对未改变的特征对的注意并增加对改变的特征对的注意,一些方法(Liu et al . 2021a张等;Peng et al. 2021)使用注意机制,如通道注意和空间注意,来改善检测结果。然而,这些网络强调每个像素的通道重要性,以使提取器更有效;它仍然忽略了由两幅遥感图像产生的特征之间的交叉关系。
  4. BIT (Chen、Qi和Shi 2022a)使用trans- former (Vaswani et al. 2017)通过一组语义标记对感兴趣的变化的高级概念进行编码,然后将它们与原始深层特征进行融合,以生成预期的二元变化图。尽管它应用了注意机制并且考虑了两个特征之间的关系,但是它没有考虑在特征相减之后执行一些卷积运算来微调变化图

它们都在特征距离之前或之后执行卷积。第一种类型的方法,例如FCN和SNUNet,最初连接两个输入图像,然后在连接的图上使用一些卷积运算来输出变化结果。第二类方法,如DASNet (Chen等人,2021)和BIT,首先对输入图像执行一些卷积运算,然后通过几个卷积层减去它们的特征图,以生成变化图。然而,在我们的实验中,我们发现在特征减法之前和之后执行所有的操作可以获得更多的信息并且导致更好的结果。

针对性方法:本文提出了一种新的网络,采用一些机制来解决上述方法的缺点。首先,我们的网络分别在特征减法之前和之后执行两种操作,在减法之前使用关系感知模块,在子牵引之后使用比例感知和交叉变换器模块。关系感知模块的目标是增强从两个输入图像提取的特征图之间的交互关系,以提高用于变化检测的特征的辨别能力。然后,在特征相减之后,尺度感知注意模块计算相减图上的跨尺度注意,以处理由多种尺寸的物体引起的场景变化问题。最后,交叉变换模块融合了多层次特征,旨在更加关注空间信息,易于分离前景和背景,从而减少虚警。

        提出了一个连体网络,它在两个输入图像上执行特征减法之前和之后的操作,以检测变化区域,并在遥感数据集上获得最先进的性能。

        提出了关系感知模块来提取特征,在减法之前提取的特征具有更多的信息交换,以提高它们对变化检测的辨别能力。

关系感知模块

CTB (CrossTransformer Block)

        提出了尺度感知模块,通过计算减影图上的交叉尺度注意力,使特征集中在更重要的通道上,从而更有效地检测由不同尺度的对象引起的变化。

        提出了交叉变换模块,通过自注意机制很容易地将改变的像素与未改变的像素分开。

达到效果

        

        提出了一种尺度和关系感知的变化检测连体网络,以在LEVIR-CD、WHU-CD和DSIFN-CD数据集上实现SoTA精度。更准确地说,我们的模型在这些数据集中获得了F1分数的显著改善。我们的方法可以解决大多数现有方法遇到的变化检测的关键问题。例如,关系感知和尺度感知模块可以重新解决由不同尺度的对象产生的边界噪声,并增强交互信息的特征。此外,我们使用交叉变换模块来融合不同尺度的特征,以获得更好的变化检测表示。除此之外,我们的主要贡献是提出了一个新的模型,它在特征减法之前和之后执行操作。通过实验证据,我们的模型结构已被证明是有用的。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++17中std::variant的使用

可变参数模板类std::variant表示类型安全联合体(type-safe union)。std::variant的实例在任何给定时间要么保存其替代类型之一的值,要么在错误的情况下无值。 与union一样,如果std::variant保存某个对象类型T的值,则T的对象表示形式将直…

heatmap | cell cycle genes in Seurat

目的:使用bulk 数据,查看HeLa 双胸苷阻断法 细胞同步化 释放 [0, 3, 4.5, 6, 9, 10.5, 12, 15, 18, 19.5, 21, 22.5, 25.5, 30] 小时后 cell cycle 基因的表达情况。 1.结果 S phase G2M phase S G2M phase 不方便看,横过来看:…

Windows上搭建一个网站(基本生产环境)

前言 本博客记录的是Windows上一次网站搭建的过程,主要是在前端采用的是React,后端采用的是Flask,记录一下生产版本搭建流程和坑点,供有缘人一起进步,当然本博客还存在很多不足。 前端项目构建生产版本 以React为例…

【C++】容器string的常用成员函数接口

目录 string - C Reference 1 容量相关 1.1 size/length 1.2 capacity 1.3 resize 1.4 reserve 1.5 empty 2 运算符重载 2.1 operator 2.2 operator[] 2.3 operator&#xff08;非成员函数&#xff09; 2.4 operator 2.5 operator>> && operator<…

​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​

软考-高级-系统架构设计师教程&#xff08;清华第2版&#xff09;【第20章 系统架构设计师论文写作要点&#xff08;P717~728&#xff09;-思维导图】 课本里章节里所有蓝色字体的思维导图

人工智能-循环神经网络通过时间反向传播

到目前为止&#xff0c;我们已经反复提到像梯度爆炸或梯度消失&#xff0c; 以及需要对循环神经网络分离梯度。 例如&#xff0c;我们在序列上调用了detach函数。 为了能够快速构建模型并了解其工作原理&#xff0c; 上面所说的这些概念都没有得到充分的解释。 本节将更深入地探…

SpringSecurity6 | 自动配置(下)

✅作者简介&#xff1a;大家好&#xff0c;我是Leo&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Leo的博客 &#x1f49e;当前专栏&#xff1a; Java从入门到精通 ✨特色专栏&#xf…

CCF CSP认证 历年题目自练Day47

题目 试题编号&#xff1a; 201712-3 试题名称&#xff1a; Crontab 时间限制&#xff1a; 10.0s 内存限制&#xff1a; 256.0MB 样例输入 3 201711170032 201711222352 0 7 * * 1,3-5 get_up 30 23 * * Sat,Sun go_to_bed 15 12,18 * * * have_dinner 样例输出 201711170…

51.Sentinel微服务保护

目录 &#xff08;1&#xff09;初识Sentinel。 &#xff08;1.1&#xff09;雪崩问题及解决方案。 &#xff08;1.1.1&#xff09;雪崩问题。 &#xff08;1.1.2&#xff09;解决雪崩问题的四种方式。 &#xff08;1.1.3&#xff09;总结。 &#xff08;1.2&#xff09;…

【LeetCode刷题-滑动窗口】--345.反转字符串中的元音字母

345.反转字符串中的元音字母 class Solution {public String reverseVowels(String s) {int len s.length();if(len < 2){return s;}char[] charArray s.toCharArray();int left 0,right len - 1;while(true){while(left < len && checkVowels(charArray[lef…

C语言实现冒泡排序(超详细)

排序算法 - 冒泡排序 什么是冒泡排序&#xff1f;冒泡排序有啥用呢&#xff1f;冒泡排序的实现代码讲解冒泡排序的总结 什么是冒泡排序&#xff1f; 冒泡排序是一种简单的排序算法&#xff0c;它重复地遍历要排序的列表&#xff0c;一次比较两个元素&#xff0c;如果它们的顺序…

【Linux】第十七站:进程创建与进程终止

文章目录 一、进程创建1.fork函数2.写时拷贝3.批量化创建多个进程 二、进程终止1.进程退出场景2.进程退出的方法&#xff08;1&#xff09;exit和return&#xff08;2&#xff09;_exit和exit 一、进程创建 1.fork函数 在linux中fork函数时非常重要的函数&#xff0c;它从已存…

【总结】坐标变换和过渡矩阵(易忘记)

xCy&#xff0c;此为x到y的坐标变换。 [β1,β2,…,βn] [α1,α2,…αn]C&#xff0c;此为基α到基β的过渡矩阵。 这个概念经常忘记。。。alpha到beta看来就是alpha后面加一个过渡矩阵了&#xff0c;很直观。坐标变换就是根据过渡矩阵和基本形式推一推得到吧&#xff0c;记…

若依前后端分离版,快速上手

哈喽~大家好&#xff0c;这篇来看看若依前后端分离版&#xff0c;快速上手&#xff08;肝了挺久的&#xff09;。 &#x1f947;个人主页&#xff1a;个人主页​​​​​ &#x1f948; 系列专栏&#xff1a;【Springboot和Vue全栈开发】…

LeetCode算法题解(动态规划)|LeetCoed62. 不同路径、LeetCode63. 不同路径 II

一、LeetCoed62. 不同路径 题目链接&#xff1a;62. 不同路径 题目描述&#xff1a; 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下…

harmonyOS鸿蒙开发工具下载安装以及使用流程

注册账号 进入鸿蒙官方网站&#xff1a;https://www.harmonyos.com/ 推荐使用手机号注册 进行实名认证 下载开发环境 华为集成开发环境IDE DevEco Device Tool下载 | HarmonyOS设备开发 下载开发工具 HUAWEI DevEco Studio和SDK下载和升级 | HarmonyOS开发者 安装 无脑下一…

java源码-工程讲解

1、 工程目录 源码工程目录讲解部分&#xff0c;讲解过程会让大家对后端源码工程有一个大致的了解&#xff0c;能让大家在此改造&#xff0c;就可以衍生出一些新的功能&#xff0c;需要对java技术深入了解&#xff0c;需要看后续java技术讲解部分 整个架构是一个spring-boot…

python学习:break用法详解

嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 在执行while循环或者for循环时&#xff0c;只要循环条件满足&#xff0c;程序会一直执行循环体。 但在某些场景&#xff0c;我们希望在循环结束前就强制结束循环。 Python中有两种强制结束循环的方法&#xff1a; continue语…

fopen/fwrite/fread 对UNICODE字符写入的总结

windows对fopen函数进行了升级&#xff0c;可以支持指定文件的编码格式&#xff08;ccs参数指定&#xff09;。 例如&#xff1a; FILE *fp fopen("newfile.txt", "rt, ccsUTF-8"); 当以 ccs 模式打开文件时&#xff0c;进行读写操作的数据应为 UTF-16…

订阅号和服务号有什么区别

服务号和订阅号有什么区别&#xff1f;服务号转为订阅号有哪些作用&#xff1f;我们都知道&#xff0c;服务号一个月只能发4次文章&#xff0c;但是订阅号每天都能发文章。不过在接收消息这一方面&#xff0c;服务号群发的消息有消息提醒&#xff0c;并显示在对话框&#xff1b…