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

【论文解读】----Question Answering and Grounding for Remote Sensing Change Detection

论文题目:Show Me What and Where has Changed? Question Answering and Grounding for Remote Sensing Change Detection

paper:https://arxiv.org/pdf/2410.23828v1

code:https://github.com/like413/VisTA

论文概述:

遥感变化检测旨在从不同时期的遥感数据中感知地球表面的变化,并将这些变化反馈给人类。

然而,大多数现有方法仅关注检测变化区域,缺乏与用户交互以识别用户期望的变化的能力。

本文引入了一个名为“变化检测问答与定位(CDQAG)”的新任务,Change Detection Question Answering and Grounding (CDQAG),

该任务通过提供可解释的文本答案和直观的视觉证据,扩展了传统变化检测任务的范围。

为此,我们构建了第一个CDQAG基准数据集,称为QAG-360K,包含超过36万个问题、文本答案和对应的高质量视觉掩码三元组。

该数据集涵盖了10个基本的土地覆盖类别和8种全面的问题类型,为遥感应用提供了一个大规模且多样化的数据集。

基于此,我们提出了VisTA,这是一个简单而有效的基线方法,通过同时提供视觉和文本答案,统一了问答和定位任务。

我们的方法在经典CDVQA和提出的CDQAG数据集上均取得了最先进的结果。

数据集

CDQAG任务的输入包含在同一位置但在不同时间捕获的一对遥感图像T1和T2,以及问题Q。输出是文本答案a和相应的视觉分割S。

图像数据:

我们从现有的二进制和语义变化检测数据集中收集了一组高质量的遥感图像,包括Hi-UCD[29]、SECOND[37]和LEVIR-CD[2]。这些数据覆盖了爱沙尼亚、中国和美国城市的24个不同地区,空间分辨率从0.1米到3.0米不等,提供了不同的地理场景。

作为QAG-360K的一部分,我们从这些数据集中过滤了6810对遥感图像,包括10个土地覆盖类别,所有这些类别都配备了语义掩码。此外,我们开发了一个专门的三元组生成引擎(见附录),可以自动生成与更改相关的问题、文本答案和相应的视觉掩码。

问题的提出:

我们将与变化相关的问题扩展为8C问题,覆盖了关键的变化检测类型:

是否发生了变化?变化为什么?从什么变化而来?是否增加?是否减少?最大变化是什么?最小变化是什么?变化比例是多少?

change or not? change to what? change from what? increase or not? decrease or not? largest change? smallest change? change ratio?

利用大型语言模型(LLM)为每种更改类型生成平均20个问题模板,然后手动选择最合理的5个进行查询。最后的问题平均长度为9.5个单词,长度在4到15个单词之间。每对遥感图像平均包含53个三元组。

答案的生成:

对于8C问题中的每种问题类型,答案生成遵循不同的判断规则。

文中说:每种问题类型的答案生成规则和具体程序详见附录。
但是这个论文好像还没录用,我从arxiv上下载的,没找到附录

方法

在这里插入图片描述
如图所示,整个输入分为两部分,上面是输入两张图像(变化前、变化后),送入一个图像编码器。下面是输入文本(问题),送入一个文本编码器,然后主要就是对文本特征和图像特征进行对齐,对齐之后再分别输出两个结果:文本答案和带掩码的图像结果。

文本编码器:

给定一个问题 ( Q ∈ R L Q \in \mathbb{R}^L QRL ),我们使用预训练的 CLIP Transformer 提取文本特征 ( F t ∈ R L × C ) ( F_t \in \mathbb{R}^{L \times C} ) (FtRL×C),其中 ( L ) 表示问题的长度,( C ) 表示特征通道的数量。输入文本序列被两个特殊标记 [SOS] 和 [EOC] 包围,其中 [EOC] 被激活为句子级表示 ( F s ∈ R C ) ( F_s \in \mathbb{R}^C ) (FsRC)

将问题文本输入到 CLIP Transformer 之前,需要先在文本序列的开头添加 [SOS] 标记,在结尾添加 [EOC] 标记。这两个标记的作用是为模型提供明确的序列开始和结束的信号,帮助模型更好地理解和处理文本序列。

添加了 [SOS] 和 [EOC] 标记后的文本序列会被编码为模型可以处理的输入格式,例如将每个词转换为对应的词嵌入向量。

将添加了特殊标记的文本序列输入到预训练的 CLIP Transformer 中,模型会输出每个词对应的特征向量,形成一个形状为

L × C L×C L×C 的特征矩阵 F t F_t Ft,其中 L 是序列长度(包括特殊标记),C 是特征维度。

在这个特征矩阵中,与 [EOC] 标记对应的那一行特征向量被选为句子级表示 F s F_s Fs。这个向量可以看作是对整个句子语义的综合表示,因为它包含了序列结束时模型对整个句子的语义理解。

图像编码器:

对于两幅遥感图像 ( T 1 ∈ R H × W × 3 ) ( T_1 \in \mathbb{R}^{H \times W \times 3} ) (T1RH×W×3) ( T 2 ∈ R H × W × 3 ) ( T_2 \in \mathbb{R}^{H \times W \times 3} ) (T2RH×W×3),我们使用两个共享权重的 ResNet 提取多尺度视觉特征 ( F v i 1 ∈ R H i × W i × C i ) ( F_{vi}^{1} \in \mathbb{R}^{H_i \times W_i \times C_i} ) (Fvi1RHi×Wi×Ci) ( F v i 2 ∈ R H i × W i × C i ) ( F_{vi}^{2} \in \mathbb{R}^{H_i \times W_i \times C_i} ) (Fvi2RHi×Wi×Ci)

其中, ( i ∈ { 3 , 4 , 5 } ) ( i \in \{3, 4, 5\} ) (i{3,4,5}) 表示视觉主干的第 ( i ) ( i ) (i) 阶段, ( H i = H / 2 i ) ( H_i = H/2^i ) (Hi=H/2i) 和$( W_i = W/2^i ) $是对应的分辨率,H 和W分别是原始图像的尺寸。

ResNet 也在 CLIP 上进行了预训练,增强了其视觉表示能力。

CLIP 模型由 OpenAI 开发,是一种多模态预训练模型,通过对比学习将图像和文本对齐到同一语义空间。它包含两个主要组件:图像编码器和文本编码器。图像编码器可以是 ResNet 或 Vision Transformer (ViT),而文本编码器基于 Transformer 架构。CLIP 从头开始训练,不使用 ImageNet 权重初始化图像编码器,也不使用预训练权重初始化文本编码器。CLIP 的训练数据是大规模的图像-文本对,ResNet 图像编码器和 Transformer 文本编码器一起训练,通过对比损失函数优化,使得匹配的图像-文本对在嵌入空间中更接近,不匹配的对则更远。

为了获得多尺度变化特征 ( F c i ∈ R H i × W i × C i ) ( F_{ci} \in \mathbb{R}^{H_i \times W_i \times C_i} ) (FciRHi×Wi×Ci),我们将两个 ResNet 的视觉特征进行拼接,并使用一个1x1卷积层调整通道维度:
F c i = Conv ( [ F v i 1 , F v i 2 ] ) , F_c^{i} = \text{Conv}([F_{vi}^{1}, F_{vi}^{2}]), Fci=Conv([Fvi1,Fvi2]),
其中,$([ , ]) $表示拼接操作。

语言引导的特征聚合:

为了高效地融合文本和与变化相关的视觉特征,我们设计了一个模块来启动跨模态特征融合:
F m 5 = Conv ( F c 5 ) ⋅ Linear ( F s ) , F_m^{5} = \text{Conv}(F_{c_5}) \cdot \text{Linear}(F_s), Fm5=Conv(Fc5)Linear(Fs),
其中 ( F m 5 ) ( F_m^{5} ) (Fm5) 表示融合后的多模态特征, ( Linear ( ⋅ ) ) (\text{Linear}(\cdot)) (Linear()) 表示一个多层感知机,用于调整文本特征的维度。然后,我们将 ( F m 5 ) ( F_m^{5} ) (Fm5) ( F m 4 ) ( F_m^{4} ) (Fm4) ( F m 3 ) ( F_m^{3} ) (Fm3)输入到一个通用的特征金字塔网络(Feature Pyramid Network,FPN),记作 ( F F P N ( ⋅ ) ) ( F_{FPN}(\cdot) ) (FFPN()),以提取多尺度的语言引导特征:

F m 5 , F m 4 , F m 3 = F F P N ( F m 5 , F c 4 , F c 3 ) . F_{m_5}, F_{m_4}, F_{m_3} = F_{FPN}(F_{m_5}, F_{c_4}, F_{c_3}). Fm5,Fm4,Fm3=FFPN(Fm5,Fc4,Fc3).
随后,我们通过一个卷积层聚合这三个多模态特征:

F m = Conv ( [ Conv ( F m 5 ) , F m 4 , DeConv ( F m 3 ) ] ) , F_m = \text{Conv}([\text{Conv}(F_{m_5}), F_{m_4}, \text{DeConv}(F_{m_3})]), Fm=Conv([Conv(Fm5),Fm4,DeConv(Fm3)]),
其中, ( DeConv ( ⋅ ) ) (\text{DeConv}(\cdot)) (DeConv()) 表示反卷积层。

为了后续的跨模态交互,我们将输出 ( F m ∈ R H / 16 × W / 16 × C ) ( F_m \in \mathbb{R}^{H/16 \times W/16 \times C} ) (FmRH/16×W/16×C)展平,以获得初步的视觉特征 ( F v ∈ R N × C ) ( F_v \in \mathbb{R}^{N \times C} ) (FvRN×C),其中 ( N = H / 16 × W / 16 ) ( N = H/16 \times W/16 ) (N=H/16×W/16)

多阶段语义推理

为了应对 CDQAG 任务的复杂推理需求,我们提出了一个多阶段推理模块,以促进细粒度的跨模态信息交互。

如图 4 所示,给定像素级视觉特征 ( F v ) ( F_v ) (Fv) 和词级文本特征 ( F w ) ( F_w ) (Fw),我们构建了一个视觉-语言解码器,以实现密集的跨模态交互,生成一系列经过细化的多模态特征 ( F v l ∈ R N × C ) ( F_{vl} \in \mathbb{R}^{N \times C} ) (FvlRN×C)。交互过程可以形式化为:
F v ′ = F v + SA ( F v ) F_v' = F_v + \text{SA}(F_v) Fv=Fv+SA(Fv)

F v l ′ = CA ( F v ′ , F w ) ⋅ F v ′ , F_{vl}' = \text{CA}(F_v', F_w) \cdot F_v', Fvl=CA(Fv,Fw)Fv,

v l = FFN ( F v l ′ ⋅ F v ′ ) + F v l ′ {vl} = \text{FFN}(F_{vl}' \cdot F_v') + F_{vl}' vl=FFN(FvlFv)+Fvl

其中, ( SA ( ⋅ ) ) (\text{SA}(\cdot)) (SA()) ( CA ( ⋅ ) ) (\text{CA}(\cdot)) (CA()) 分别表示多头自注意力层和交叉注意力层, ( FFN ( ⋅ ) ) (\text{FFN}(\cdot)) (FFN()) 表示前馈网络。

由于某些问题或答案可能缺乏明确的参考,我们引入了一个问题和答案选择器,允许模型动态选择与问题相关或与答案相关的文本表示。而不是直接将这两个特征相加或拼接,我们通过一个软注意力机制自适应地合并多模态特征 ( F v l ) ( F_{vl} ) (Fvl) 和文本特征 ( F w ) ( F_w ) (Fw),生成选择特征 ( F s ) ( F_s ) (Fs)。这一过程可以表示为:
α = e F v l e F v l + e F w , β = 1 − α , \alpha = \frac{e^{F_{vl}}}{e^{F_{vl}} + e^{F_w}}, \quad \beta = 1 - \alpha, α=eFvl+eFweFvl,β=1α,

F s = α F v l + β F w . F_s = \alpha F_{vl} + \beta F_w. Fs=αFvl+βFw.

然后,我们将 ( F s ) ( F_s ) (Fs) 作为选择权重,以过滤掉不相关的改变区域,其公式为:

M c = σ ( F s ) ⊗ F P D ( F v l ) , M_c = \sigma(F_s) \otimes F_{PD}(F_{vl}), Mc=σ(Fs)FPD(Fvl),
其中, ( σ ( ⋅ ) ) (\sigma(\cdot)) (σ()) 表示 Sigmoid 函数, ( F P D ( ⋅ ) ) (F_{PD}(\cdot)) (FPD()) 是一个像素解码器,将 ( F v l ) ( F_{vl} ) (Fvl) 转换为粗略掩码 ( M c ) ( M_c ) (Mc)

文本-视觉答案解码器

我们利用已经建立的视觉粗掩码 ( M c ) ( M_c ) (Mc) 和问题-答案特征 ( F s ) ( F_s ) (Fs) 进行最终预测。

具体来说,在视觉分支中,粗掩码 ( M c ) ( M_c ) (Mc) 作为一个密集的视觉提示,与原始视觉特征 ( F v ) ( F_v ) (Fv) 一起输入到掩码解码器 ( F M D ( ⋅ ) ) ( F_{MD}(\cdot) ) (FMD()) 中,以生成更精确的答案定位:
M ~ = F M D ( M c , F v ) . \tilde{M} = F_{MD}(M_c, F_v). M~=FMD(Mc,Fv).
掩码解码器由两个连续的双向注意力块组成,旨在建立 ( M c ) ( M_c ) (Mc) ( F v ) ( F_v ) (Fv) 之间的像素级映射关系。

对于文本答案,我们应用一个两层的 MLP,后接 S o f t m a x Softmax Softmax 激活函数,以执行分类预测。

值得注意的是,为了增强视觉和文本答案之间的语义一致性,我们将文本特征分割并重塑为一个权重 ( W ∈ R D × K × K ) ( W \in \mathbb{R}^{D \times K \times K} ) (WRD×K×K) 和一个偏置 ( b ∈ R D ) ( b \in \mathbb{R}^D ) (bRD),其中 ( K ) ( K ) (K) 是卷积层的核大小。这使得它可以作为二维卷积层的权重和偏置,将视觉特征转换为最终的精确二值掩码 ( M )。其实现过程可以表示为:
W , b = S&R ( Linear ( F s ) ) , W, b = \text{S\&R}(\text{Linear}(F_s)), W,b=S&R(Linear(Fs)),

M = W ∗ M ~ + b , M = W * \tilde{M} + b, M=WM~+b,

其中, ( S&R ( ⋅ ) ) (\text{S\&R}(\cdot)) (S&R()) 表示分割和重塑操作,(*) 表示卷积运算。

训练目标

遵循以往的研究工作,我们使用标准的交叉熵(CE)损失函数用于文本答案分类,以及像素级二值交叉熵(BCE)损失函数用于视觉答案预测,分别记作 ( L txt ) ( L_{\text{txt}} ) (Ltxt) ( L mask ) ( L_{\text{mask}} ) (Lmask)

值得注意的是,我们将一个文本到像素的对比损失整合到我们的训练目标中,以强制对齐多模态答案。

具体来说,文本到像素的对比损失通过点积测量文本答案 ( F ta ) ( F_{\text{ta}} ) (Fta) 和像素级视觉答案 ( F va ) ( F_{\text{va}} ) (Fva) 之间的相似性。

对比损失 ( L con ) ( L_{\text{con}} ) (Lcon) 定义为:
在这里插入图片描述

其中,( P ) 和 ( N ) 分别代表真实标签中的正类和负类, ( ∣ P ∪ N ∣ ) (|P \cup N|) (PN) 是基数, ( σ ( ⋅ ) ) (\sigma(\cdot)) (σ()) 是 Sigmoid 函数。我们的最终目标函数为:

L = λ 1 L txt + λ 2 L mask + λ 3 L con , L = \lambda_1 L_{\text{txt}} + \lambda_2 L_{\text{mask}} + \lambda_3 L_{\text{con}}, L=λ1Ltxt+λ2Lmask+λ3Lcon,
其中, ( λ 1 ) 、 ( λ 2 ) 和 ( λ 3 ) (\lambda_1)、(\lambda_2) 和 (\lambda_3) (λ1)(λ2)(λ3)是超参数,用于在训练过程中平衡这三种损失。

http://www.xdnf.cn/news/1545.html

相关文章:

  • 【前沿技术解析】钠离子电池突破性进展:低成本+高安全重塑新能源产业格局
  • 深入理解XGBoost(何龙 著)学习笔记(一)
  • pojovoDto等概念
  • DocsGPT remote接口RCE(CVE-2025-0868)
  • 【金仓数据库征文】从 HTAP 到 AI 加速,KingbaseES 的未来之路
  • 【AI提示词】公司法律顾问
  • 67 款 App 因违规收集个人信息被通报 隐私合规检测成重新上架门槛
  • 深入解析HashMap的特性以及源码
  • PH热榜 | 2025-04-23
  • 声纹振动传感器在电力监测领域的应用
  • JVM虚拟机-JVM调优、内存泄漏排查、CPU飙高排查
  • URI、URL与URN详解概念介绍
  • JDK 7 Update 0 (64位) 详细Windows 安装指南
  • 项目初期如何快速组建高效团队
  • 变压器的三明治绕法
  • 体积小巧的 Word 转 PDF 批量工具
  • 免费且开源的企业级监控解决方案:Zabbix
  • MySQL存储过程
  • 初识Redis · 持久化
  • 基于LangChain的RAG召回率增强技术实现:智能分块策略实现、多路召回与重排序实现、异构数据溯源与关联实现
  • Windows上使用Python 3.10结合Appium-实现APP自动化
  • 机器视觉的智能手机屏贴合应用
  • Java单例模式详解:实现线程安全的全局访问点
  • 小白自学python第一天
  • 天梯-这是字符串题
  • Android TV 输入框架(TIF)深度解析与实践指南
  • 2.第二章:政策法规与标准体系
  • 国内外文献免费下载网站
  • Python内置函数---bool()
  • 私有知识库 Coco AI 实战(二):摄入 MongoDB 数据