UniTS:任务统一架构的遥感时间序列生成模型

Abstract

卫星遥感的主要目标之一是捕捉地球环境的复杂动态 ,这包括重建连续无云时间序列图像、检测土地覆盖变化以及预测未来地表演变等任务 。然而,现有方法通常需要针对不同任务定制的专门模型,缺乏跨多个时间序列任务的时空特征统一建模。在本文中,我们提出了统一时间序列生成模型(UniTS),这是一个适用于各种时间序列任务的通用框架,包括时间序列重建、时间序列云去除、时间序列语义变化检测和时间序列预测 。基于流匹配生成范式,UniTS在任务特定条件的指导下构建了一条从噪声到目标的确定性演化路径,实现了多个任务时空表示的统一建模。UniTS架构由一个带有时空块的扩散变换器组成,其中我们设计了一个自适应条件注入器(ACor)来增强模型对多模态输入的条件感知,从而实现高质量的可控生成 。此外,我们还设计了一个时空感知调制器(STM)来提高时空块捕捉复杂时空依赖性的能力。此外,我们还构建了两个高质量的多模态时间序列数据集TS-S12和TS-S12CR,填补了时间序列云去除和预测任务基准数据集的空白。大量实验表明,UniTS在低级和高级时间序列任务中均表现出卓越的生成和认知能力。特别是在面对严重云污染、模态缺失和预测复杂物候变化等挑战时,其性能显著优于现有方法。更多详细信息请访问项目页面:https://yuxiangzhang-bit.github.io/UniTS-website/。

Introduction

卫星影像时间序列为监测地球系统动态提供了连续的时空观测,广泛应用于生态评估、气候减缓与灾害应急等领域。随着多源遥感数据(如光学、SAR)日益丰富,时间序列分析正从单模态向多模态融合演进。

按目标与处理层级,时间序列任务可分为两类

  • 低层任务(如时间序列重建与云去除 )致力于恢复高质量、无污染的影像,解决因云、阴影或传感器故障导致的数据缺失
  • 高层任务(如语义变化检测与时间序列预测)则从清晰数据中提取语义信息,实现在哪里、何时、发生何种变化"的全面理解,并预测未来地表状态

然而,当前研究存在三大瓶颈:

  • 云去除任务研究不足,且现有数据集(如 SEN12MS-CR-TS、EarthNet2021)存在时间错位、排除高云覆盖样本等问题,难以反映真实场景;
  • 时间序列预测多依赖判别式模型(如 ConvLSTM、3D CNN),难以建模复杂时空分布,且鲜有工作聚焦原始多光谱影像的生成预测;
  • 缺乏统一框架,各类任务仍依赖定制化模型,阻碍了时空表征的通用学习。

为此,本文提出 UniTS,首次实现四类任务的统一建模 ,并构建 TS-S12 与 TS-S12CR 两个高质量、时间对齐的多模态基准数据集 ,其中 TS-S12CR 专为极端云去除场景设计。UniTS 借助流匹配生成范式,在扩散 Transformer(DiT) 中集成 ACor 与 STM 模块 ,显著提升多任务生成与理解能力。

DATASETS

为弥补当前高质量配对多模态时间序列数据(尤其是云去除任务)的缺失,本文基于 AllClear [18] 构建了 TS-S12 与 TS-S12CR 两个新数据集。

数据准备:

全球范围内选取数万个感兴趣区域(ROI),采用 2022 年获取的 Sentinel-2A/B 多光谱光学影像(Level-1C TOA 反射率,保留 10 个 10 米波段)与 Sentinel-1A/B 合成孔径雷达(SAR)影像(GRD 产品,含 VV/VH 双极化)。每个 ROI 对应一个 256×256 像素(2.56 km²,10 m 分辨率)的时空块 ,并配以 Dynamic World 土地覆被图。云掩膜来自 s2cloudless 的云概率图,阴影掩膜沿用 AllClear 提供的结果

TS-S12 数据集:

包含 14,973 个全球分布的 ROI,覆盖多样地物类型。对每个 ROI,构建 Sentinel-1 与无云 Sentinel-2 的时间对齐样本对,筛选条件如下

无云样本:云覆盖 <15%,阴影覆盖 <30%;

时间窗口:Sentinel-1 影像在 Sentinel-2 获取时间前后 ±3 天内。
最终获得序列长度 8∼97 的多模态时间序列,适用于时间序列重建与预测任务。所有 ROI 保留全年云掩膜,用于模拟缺失或云污染场景。

TS-S12CR 数据集:
包含 12,126 个 ROI,构建 Sentinel-1 + 含云 Sentinel-2 + 无云 Sentinel-2 的三元组对齐样本,对齐策略同上。该数据集专为时间序列云去除设计,平均云/阴影覆盖率高达 84.02% / 87.54% ,构成极端遮蔽挑战,要求模型不仅具备强空间恢复能力,还需有效融合多源信息并建模长期时空演化规律。序列长度为 8∼44。

两数据集的云覆盖分布、地物类别及样本示例见图 2 与表 I。

UniTS Model

A. 框架概述

UniTS 是一个基于流匹配 (flow matching)范式的条件时间序列生成模型。如图 1 所示,其核心思想是通过统一的生成架构适配多种遥感时间序列任务。模型将任务特定条件(如 Sentinel-1 与含云 Sentinel-2、历史序列等)编码为条件信号,并与从标准高斯分布采样的随机噪声拼接,作为输入。训练阶段,UniTS 学习一个速度场 (velocity field) v(x(t),t)v(x(t), t)v(x(t),t),定义从噪声分布到真实时间序列数据分布的确定性常微分方程(ODE)路径:

dx(t)dt=v(x(t),t),t∈[0,1] \frac{dx(t)}{dt} = v(x(t), t), \quad t \in [0,1] dtdx(t)=v(x(t),t),t∈[0,1]

流匹配目标为最小化以下损失函数:

LFM(θ)=Ex0,x1,t[∥fθ(x(t),t)−(x1−x0)∥2] \mathcal{L}{\text{FM}}(\theta) = \mathbb{E}{x_0, x_1, t} \left[ \left\| f_\theta(x(t), t) - (x_1 - x_0) \right\|^2 \right] LFM(θ)=Ex0,x1,t[∥fθ(x(t),t)−(x1−x0)∥2]

其中 x(t)=(1−t)x0+tx1x(t) = (1 - t)x_0 + t x_1x(t)=(1−t)x0+tx1,x0∼N(0,I)x_0 \sim \mathcal{N}(0, I)x0∼N(0,I),x1x_1x1 为真实样本,fθf_\thetafθ 为神经网络。推理时,给定任务条件,模型通过求解学到的 ODE,将噪声逐步转化为目标时间序列。

B. 流匹配基础

相比基于随机微分方程(SDE)的扩散模型(如 DDPM),流匹配采用确定性路径,避免多步随机采样的效率瓶颈,同时保证生成过程的可控性与稳定性。

C. UniTS 架构

设 X={xt:t∈[0,1]}⊂RT×C×H×WX = \{x_t : t \in [0,1]\} \subset \mathbb{R}^{T \times C \times H \times W}X={xt:t∈[0,1]}⊂RT×C×H×W 为流时间 ttt 对应的样本集合,xcon∈RT×Ccon×H×Wx_{\text{con}} \in \mathbb{R}^{T \times C_{\text{con}} \times H \times W}xcon∈RT×Ccon×H×W 为任务条件。

UniTS 基于 DiT (Diffusion Transformer)实现,引入时空块 (spatiotemporal block),交替执行空间与时间注意力,并集成两个核心模块:自适应条件注入器 (ACor)与时空感知调制器(STM)。

  • 输入编码 :采用 ViT 式块嵌入(patch size h×wh \times wh×w),将 xtx_txt 与 xconx_{\text{con}}xcon 映射为 token 序列 z={zt,zcon}⊂RT×d×nh×nwz = \{z_t, z_{\text{con}}\} \subset \mathbb{R}^{T \times d \times n_h \times n_w}z={zt,zcon}⊂RT×d×nh×nw,其中 nh=H/h,nw=W/wn_h = H/h, n_w = W/wnh=H/h,nw=W/w。

  • 元数据嵌入

    • 日期(DOY)mDOY∈RTm_{\text{DOY}} \in \mathbb{R}^TmDOY∈RT → 正弦编码 zDOY∈RT×dz_{\text{DOY}} \in \mathbb{R}^{T \times d}zDOY∈RT×d;
    • 地理坐标 mlonlat∈R2m_{\text{lonlat}} \in \mathbb{R}^2mlonlat∈R2 → 随机傅里叶 + 正弦编码 zlonlat∈Rdz_{\text{lonlat}} \in \mathbb{R}^dzlonlat∈Rd。
  • 位置与流时间嵌入 :引入可学习的空间 pspa∈Rnhnw×dp_{\text{spa}} \in \mathbb{R}^{n_h n_w \times d}pspa∈Rnhnw×d 与时间 ptmp∈RT×dp_{\text{tmp}} \in \mathbb{R}^{T \times d}ptmp∈RT×d 位置编码;流时间 t∼U[0,1]t \sim \mathcal{U}[0,1]t∼U[0,1] 经正弦编码得 zFM∈Rdz_{\text{FM}} \in \mathbb{R}^dzFM∈Rd,并扩展为 zFMs∈Rnhnw×dz_{\text{FM}}^s \in \mathbb{R}^{n_h n_w \times d}zFMs∈Rnhnw×d 与 zFMt∈RT×dz_{\text{FM}}^t \in \mathbb{R}^{T \times d}zFMt∈RT×d。

  • 时空块:依次执行空间块与时间块,每块包含 ACor、自适应层归一化(AdaLN)与带 STM 的注意力模块。

    • 空间块输入 :{zts,zcons}⊂RT×nhnw×d\{z_t^s, z_{\text{con}}^s\} \subset \mathbb{R}^{T \times n_h n_w \times d}{zts,zcons}⊂RT×nhnw×d

z^ts=αs⋅SMSA[γs⋅LN(ACor(zts,zcons)+zlonlat)+βs]+zts \hat{z}t^s = \alpha_s \cdot \text{SMSA}\left[ \gamma_s \cdot \text{LN}\left( \text{ACor}(z_t^s, z{\text{con}}^s) + z_{\text{lonlat}} \right) + \beta_s \right] + z_t^s z^ts=αs⋅SMSA[γs⋅LN(ACor(zts,zcons)+zlonlat)+βs]+zts

  • 时间块输入 :{ztt,zcont}⊂Rnhnw×T×d\{z_t^t, z_{\text{con}}^t\} \subset \mathbb{R}^{n_h n_w \times T \times d}{ztt,zcont}⊂Rnhnw×T×d(由 z^ts\hat{z}_t^sz^ts 重排)

z^tt=αt⋅TMSA[γt⋅LN(ACor(ztt,zcont)+zDOY)+βt]+ztt \hat{z}t^t = \alpha_t \cdot \text{TMSA}\left[ \gamma_t \cdot \text{LN}\left( \text{ACor}(z_t^t, z{\text{con}}^t) + z_{\text{DOY}} \right) + \beta_t \right] + z_t^t z^tt=αt⋅TMSA[γt⋅LN(ACor(ztt,zcont)+zDOY)+βt]+ztt

其中 γ,β,α\gamma, \beta, \alphaγ,β,α 由 zFMs/tz_{\text{FM}}^{s/t}zFMs/t 经线性层生成,用于 AdaLN 与门控。

最终,经多层时空块后,通过线性解码器与"unpatchify"操作重建 x^t\hat{x}_tx^t。

D. 自适应条件注入器(ACor)

为克服交叉注意力在长序列中细节丢失的问题,ACor 基于条件特征生成仿射参数 ,实现细粒度条件注入。给定特征 hACorh_{\text{ACor}}hACor 与条件 qACorq_{\text{ACor}}qACor,

h^ACor=γACor⋅GN(hACor)+βACor+hACor \hat{h}{\text{ACor}} = \gamma{\text{ACor}} \cdot \text{GN}(h_{\text{ACor}}) + \beta_{\text{ACor}} + h_{\text{ACor}} h^ACor=γACor⋅GN(hACor)+βACor+hACor

  • 空间 ACor :对 T×d×nh×nwT \times d \times n_h \times n_wT×d×nh×nw 张量沿空间维施加 2D 卷积,生成 γsACor,βsACor\gamma_s^{\text{ACor}}, \beta_s^{\text{ACor}}γsACor,βsACor;
  • 时间 ACor :对 nhnw×d×Tn_h n_w \times d \times Tnhnw×d×T 张量沿时间维施加 1D 卷积,生成 γtACor,βtACor\gamma_t^{\text{ACor}}, \beta_t^{\text{ACor}}γtACor,βtACor。

E. 时空感知调制器(STM)

STM 利用辅助数据(如云无关的 Sentinel-1)生成动态注意力偏置,调制注意力权重:

SMSA/TMSA=Softmax(QK⊤dk+Mspa/tmp)V \text{SMSA/TMSA} = \text{Softmax}\left( \frac{QK^\top}{\sqrt{d_k}} + M_{\text{spa/tmp}} \right) V SMSA/TMSA=Softmax(dk QK⊤+Mspa/tmp)V

其中偏置矩阵 MMM 融合绝对位置先验与辅助数据特征先验:

  • 空间 STM

Mspa=ws1⋅Mposs+ws2⋅Mauxs M_{\text{spa}} = w_s^1 \cdot M_{\text{pos}}^s + w_s^2 \cdot M_{\text{aux}}^s Mspa=ws1⋅Mposs+ws2⋅Mauxs

MpossM_{\text{pos}}^sMposs 基于块间曼哈顿距离,MauxsM_{\text{aux}}^sMauxs 基于 Sentinel-1 特征差异。

  • 时间 STM

Mtmp=wt1⋅Mpost+wt2⋅Mauxt M_{\text{tmp}} = w_t^1 \cdot M_{\text{pos}}^t + w_t^2 \cdot M_{\text{aux}}^t Mtmp=wt1⋅Mpost+wt2⋅Mauxt

MpostM_{\text{pos}}^tMpost 为时间步曼哈顿距离,MauxtM_{\text{aux}}^tMauxt 为辅助数据时序特征差异。

辅助数据选择:重建/云去除任务用 Sentinel-1(CSTM=2C_{\text{STM}} = 2CSTM=2);变化检测/预测任务用 NIR/RGB(CSTM=1C_{\text{STM}} = 1CSTM=1 或 3)。

F. 训练与推理

训练(见表 III):

  • 重建 vs 云去除:目标相同(无云 Sentinel-2),条件不同(前者用合成云,后者用真实云);
  • 语义变化检测:目标为每帧土地覆被图(one-hot 编码);
  • 时间序列预测 :以历史序列(长度 ThisT_{\text{his}}This)为条件,预测未来序列(长度 TfutT_{\text{fut}}Tfut,本文设 This=TfutT_{\text{his}} = T_{\text{fut}}This=Tfut)。
    为避免历史模式干扰未来预测,时间块中移除 ACor 与 STM ,仅使用未来日期嵌入 zDOYfut∈RTfut×dz_{\text{DOY}}^{\text{fut}} \in \mathbb{R}^{T_{\text{fut}} \times d}zDOYfut∈RTfut×d,并引入历史条件流时间嵌入 zFMcon∈RThis×dz_{\text{FM}}^{\text{con}} \in \mathbb{R}^{T_{\text{his}} \times d}zFMcon∈RThis×d。解码前,拼接条件 token zconz_{\text{con}}zcon 与 z^tt\hat{z}t^tz^tt,以及 zFMconz{\text{FM}}^{\text{con}}zFMcon 与 zFMsz_{\text{FM}}^szFMs。

推理(图 4):

  • 重建、云去除、变化检测采用多帧并行预测
  • 预测任务采用自回归方式:将历史序列与噪声输入 UniTS,预测首帧未来影像,并将其作为下一时刻条件,递归生成完整未来序列。
相关推荐
测试人社区—小叶子3 小时前
边缘计算与AI:下一代智能应用的核心架构
运维·网络·人工智能·python·架构·边缘计算
TG:@yunlaoda360 云老大3 小时前
如何选择适合自己业务的腾讯云国际站代理商VPC架构?
架构·云计算·腾讯云
weixin_307779133 小时前
Jenkins Jakarta Mail API 插件:邮件功能的核心库
运维·开发语言·架构·jenkins
乾元3 小时前
动态路由策略回归测试:把 CI/CD 思想带入网络路由(工程化 · Near-term)
运维·服务器·网络·人工智能·ci/cd·架构·智能路由器
李拾叁的摸鱼日常3 小时前
为什么mysql varchar 类型一般都设置为64/128/256/512 ?
后端·架构
踏浪无痕3 小时前
每天上亿条日志,Elasticsearch 是怎么扛住的?
后端·架构·设计
CinzWS3 小时前
基于Cortex-M3 SoC的eFuse模块--实现与验证考量
fpga开发·架构·efuse
im_AMBER3 小时前
Canvas架构手记 08 CSS Transform | CSS 显示模型 | React.memo
前端·css·笔记·学习·架构
lkbhua莱克瓦244 小时前
项目知识——Monorepo(单体仓库)架构详解
架构·github·项目·monorepo