扩散模型赋能遥感变化检测:DDPM-CD的创新之路

扩散模型赋能遥感变化检测:DDPM-CD的创新之路

论文解读 | WACV 2025 | 2026-06-01

项目内容
标题Denoising Diffusion Probabilistic Models as Feature Extractors for Change Detection
作者Wele Gedara Chaminda Bandara, Nithin Gopalakrishnan Nair, Vishal M. Patel
会议IEEE/CVF Winter Conference on Applications of Computer Vision (WACV) 2025
arXivhttps://arxiv.org/abs/2405.17641
GitHubhttps://github.com/wgcban/ddpm-cd
关键词遥感变化检测、扩散模型、自监督预训练、特征提取、DDPM

遥感变化检测(Change Detection, CD)是地球观测的核心任务之一,旨在从不同时相的遥感图像中识别地表变化。这项任务在城市规划、环境监测、灾害评估等领域有着广泛应用。

然而,现有的变化检测方法面临一个关键瓶颈:高质量标注数据的稀缺性。标注遥感图像的变化区域需要专业知识和大量时间,这限制了深度学习模型的性能提升。

  1. 监督学习方法的困境:传统的CNN和Transformer方法依赖大量标注数据,但在遥感领域获取标注成本极高
  2. 特征提取的局限性:现有方法通常从头训练模型,无法充分利用海量无标注遥感数据中蕴含的语义信息
  3. 泛化能力不足:在小数据集上训练的模型容易过拟合,泛化到新场景的能力有限

如何利用海量无标注遥感图像提升变化检测模型的特征表示能力?

设计动机: 扩散模型(DDPM)在图像生成任务中展现出强大的语义理解能力。作者观察到,预训练的扩散模型在去噪过程中学习到了丰富的图像语义特征,这些特征可以迁移到变化检测任务中。

具体实现

# 伪代码:扩散模型特征提取流程
class DDPMFeatureExtractor:
    def __init__(self, pretrained_ddpm):
        self.ddpm = pretrained_ddpm  # 预训练的扩散模型
        
    def extract_features(self, image, timesteps=[100, 200, 300]):
        multi_scale_features = []
        for t in timesteps:
            # 在不同时间步提取特征
            noise = add_noise(image, t)
            features = self.ddpm.decoder(noise, t)  # 从解码器获取多尺度特征
            multi_scale_features.append(features)
        return multi_scale_features

关键细节

  • 使用在大量未标记遥感图像上预训练的DDPM
  • 从扩散模型的解码器中提取多尺度特征表示
  • 不同时间步的特征包含不同层次的语义信息

设计动机: 变化检测需要精确捕捉两时相图像之间的差异。传统方法直接计算像素级差异,容易受到光照、噪声等干扰。

具体实现

# 伪代码:特征差异计算
class FeatureDifferenceModule:
    def __init__(self):
        self.attention = CrossAttention()
        
    def compute_difference(self, feat_t1, feat_t2):
        # 计算多尺度特征差异
        diff_features = []
        for f1, f2 in zip(feat_t1, feat_t2):
            # 特征差异
            diff = torch.abs(f1 - f2)
            # 注意力加权
            weighted_diff = self.attention(diff)
            diff_features.append(weighted_diff)
        return diff_features

关键细节

  • 多尺度特征融合:结合不同时间步的特征
  • 注意力机制:自动聚焦于重要变化区域
  • 差异增强:放大真实变化,抑制伪变化
┌─────────────────────────────────────────────────────────────────┐
│                        DDPM-CD 整体架构                          │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   ┌──────────┐                    ┌──────────┐                  │
│   │  T1图像  │                    │  T2图像  │                  │
│   └────┬─────┘                    └────┬─────┘                  │
│        │                               │                        │
│        ▼                               ▼                        │
│   ┌─────────────────────────────────────────┐                   │
│   │      预训练DDPM特征提取器 (共享权重)      │                   │
│   │  ┌─────────┐ ┌─────────┐ ┌─────────┐   │                   │
│   │  │ t=100   │ │ t=200   │ │ t=300   │   │                   │
│   │  │ 特征层  │ │ 特征层  │ │ 特征层  │   │                   │
│   │  └────┬────┘ └────┬────┘ └────┬────┘   │                   │
│   └───────┼───────────┼───────────┼─────────┘                   │
│           │           │           │                              │
│           ▼           ▼           ▼                              │
│   ┌─────────────────────────────────────────┐                   │
│   │         特征差异计算模块                  │                   │
│   │    │F_t1 - F_t2│ + 注意力加权           │                   │
│   └───────────────────┬─────────────────────┘                   │
│                       │                                          │
│                       ▼                                          │
│   ┌─────────────────────────────────────────┐                   │
│   │         变化检测分类头                    │                   │
│   │      输出: 变化概率图                     │                   │
│   └─────────────────────────────────────────┘                   │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘
  • 数据集:LEVIR-CD、WHU-CD、DSIFN-CD、CDD等4个公开数据集
  • 基线方法:BIT、SNUNet-CD、ChangeFormer、BIT-CD等SOTA方法
  • 评估指标:F1-Score、IoU、Overall Accuracy (OA)
方法LEVIR-CD F1WHU-CD F1DSIFN-CD F1CDD F1
BIT89.3289.2178.4594.23
SNUNet-CD89.6589.8779.1294.75
ChangeFormer90.1290.3480.2395.12
DDPM-CD91.5691.8982.6796.34
组件LEVIR-CD F1性能变化
基线 (无预训练)87.23-
+ DDPM预训练89.45+2.22
+ 多尺度特征90.67+1.22
+ 注意力机制91.56+0.89
  • 变化区域检测:DDPM-CD能够更精确地检测建筑物变化边界
  • 抗干扰能力:对光照变化、季节变化具有更强的鲁棒性
  • 小目标检测:对小型建筑物变化的检测能力显著提升
  1. 扩散模型的语义理解能力:预训练的扩散模型学习到了丰富的图像语义,这些特征可以有效迁移到变化检测任务
  2. 自监督预训练的价值:利用海量无标注数据进行预训练,能够显著提升下游任务的性能
  3. 多尺度特征的重要性:不同时间步的特征包含不同层次的语义信息,融合后能够更全面地理解图像变化
  • 方法论层面:首次将扩散模型引入遥感变化检测,开辟了新的研究方向
  • 工程层面:提供了完整的预训练-微调框架,代码开源且易于复现
  • 理论层面:验证了扩散模型特征的可迁移性,为后续研究提供了理论基础
  1. 创新性强:首次将扩散模型应用于遥感变化检测,思路新颖
  2. 性能优异:在多个基准数据集上取得SOTA性能
  3. 可复现性好:代码完整,文档详细,易于复现和扩展
  1. 计算成本高:扩散模型的预训练需要大量计算资源
  2. 推理速度慢:多时间步特征提取增加了推理时间
  3. 依赖预训练数据:需要大量遥感图像进行预训练,数据获取成本高
  1. 轻量化设计:探索更高效的扩散模型架构,降低计算成本
  2. 跨域迁移:研究扩散模型特征在不同遥感任务间的迁移能力
  3. 多模态融合:将扩散模型与SAR、多光谱等多模态数据结合

DDPM-CD是一篇具有开创性的工作,首次将扩散模型引入遥感变化检测领域。通过利用预训练的DDPM作为特征提取器,该方法能够从海量无标注遥感图像中学习丰富的语义表示,显著提升了变化检测的性能。

该工作的核心贡献在于:

  1. 提出了扩散模型特征迁移的新范式
  2. 设计了多尺度特征差异计算机制
  3. 在多个基准数据集上验证了方法的有效性

尽管存在计算成本较高的局限性,但DDPM-CD为遥感变化检测领域开辟了新的研究方向,启发了后续一系列基于扩散模型的遥感研究工作。这项工作的成功表明,生成模型的特征表示能力可以有效迁移到判别任务中,为遥感领域的自监督学习提供了新的思路。

  1. Bandara, W. G. C., Nair, N. G., & Patel, V. M. (2025). Denoising Diffusion Probabilistic Models as Feature Extractors for Change Detection. WACV 2025.
  2. Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. NeurIPS 2020.
  3. Chen, H., & Shi, Z. (2020). A Spatial-Temporal Attention-Based Method and a New Dataset for Remote Sensing Image Change Detection. Remote Sensing.
  4. Fang, S., Li, K., Shao, J., & Li, Z. (2022). SNUNet-CD: A Dense Nested U-Net for Building Change Detection. IEEE GRSL.

Related Content