论文阅读:基于SwinTransformer的遥感时空融合
摘要:
高时空分辨率遥感图像具有广阔的市场需求和多种应用场景。本文旨在生成高质量的遥感影像时间序列,用于中药生长质量的特征挖掘。时空融合是一种将高时间分辨率或高空间分辨率的两类卫星图像结合在一起,生成高质量遥感图像的灵活方法。近年来,人们提出了许多时空融合算法,而基于深度学习的方法在这一领域表现出了非凡的才能。然而,目前基于深度学习的方法存在三个问题:1)大多数算法不支持具有大规模可学习参数的模型;2)基于卷积神经网络的模型结构会将噪声带入图像融合过程;3)当前基于深度学习的方法忽略了传统时空融合算法中一些优秀的模块。针对上述问题和挑战,本文创造性地提出了一种基于Swin变压器和线性频谱混合理论的新算法。
该算法充分利用Swin变压器在特征提取方面的优势,并基于自关注机制将解混理论融入到模型中,大大提高了生成图像的质量。在实验部分,提出的算法在三个知名的公共数据集上取得了最先进的结果,在消融研究中被证明是有效和合理的。
索引术语-深度学习,遥感,时空融合,Swin变压器,解混。
介绍:
遥感影像可用于作物生长监测[1]-[3]、土地覆盖变化检测[4]、[5]、土地覆盖类型分类[6]-[8]、生态系统监测[9]等场景[10]、[11],这些场景需要卫星重访周期短、空间分辨率高。
本文的目的是丰富环境特征,更好地探索气候和土壤条件对中药生长质量的影响。这就需要基于高时空分辨率的遥感影像序列提取环境数据,如湿度。虽然最近一些新的卫星系统,如哨兵2号,使时间序列的高分辨率遥感图像更容易获得,但这些图像可能仍然存在诸如频繁的云污染等问题。同时,对于一些涉及历史卫星图像的应用,还需要提高过去遥感图像的空间分辨率或时间分辨率。为了解决这些问题,近年来提出了时空数据融合算法,并受到了广泛关注。
该算法将空间分辨率低但频率高的卫星图像(如MODIS,以下简称粗像)和空间分辨率高但频率低的卫星图像(如Landsat,以下简称精像)进行合并,得到具有高时空分辨率的卫星图像时间序列。
目前主流的时空数据融合方法基本可以分为五大类[12]:基于权函数的、基于解混合的、基于贝叶斯的、基于混合的和基于学习的。这些方法大多需要将一组或多组粗图像和预测日期的粗图像作为输入,输出预测日期的精细图像。基于权函数的方法[13]、[14]通常是通过对输入图像的信息进行线性组合来获得精细像素。他们认为,当一个粗像元是“纯”的(一个粗像元只包含一种地表覆盖类型)时,粗像元与精细像元之间的时间差是相同的。基于解混的方法[15]、[16]考虑到一个粗像元包含多个土地覆盖类型的细像元,采用线性光谱混合理论对粗像元进行解混。在基于贝叶斯的方法中,时空融合被建模为最大后验概率(MAP)问题。目前基于贝叶斯的方法[17]、[18]大多是通过建立时间模型和比例模型来完成对输入图像与预测图像之间关系的预测。而混合方法[19]、[20]则综合了以上三种方法的优点,获得了更好的性能。在传统的时空融合算法中,混合方法以其灵活性和优异的性能得到了广泛的关注。
上述方法(以下简称传统方法)基本上都是遥感时空融合的线性建模,实现相对简单,得到了广泛的应用。然而,这些方法都有一些缺点。
1)在真实的时空融合场景中,不同传感器图像之间的关系以及不同日期图像之间的关系不能简单地用线性来描述[21]。这些线性模型可能会丢失一些重要的图像信息,不能很好地适应地表覆盖变化的图像。
2)在传统方法中,使用了许多经验权函数。这些功能虽然提高了算法的性能,但也带来了大量的手动参数设置,限制了算法的泛化
基于学习的方法,特别是基于深度学习的方法,可以很好地解决线性模型的问题。
卷积神经网络(convolutional neural networks, cnn)由于其强大的性能,在计算机视觉的许多领域都大放异域[22]-[24]。目前,越来越多的时空融合方法利用CNN学习遥感图像的非线性映射来提高算法的性能。由于图像超分辨率[25]-[27]在计算机视觉和遥感时空融合中的相似性,一些方法[28]、[29]构建了超分辨率网络,直接将粗糙图像的空间分辨率提高到与精细图像相同的水平。这种直接提高图像分辨率的方法,由于遥感时空融合场景的分辨率差(以Landsat和MODIS为例,为16倍)远远高于图像超分辨率(一般为2 ~ 4倍,不超过8倍),可能会遗漏很多图像细节。因此,这些算法通常会加入高通调制或线性融合来校正生成的精细图像。其他基于深度学习的方法将其他日期的粗糙和精细图像添加到网络中,并通过融合更多信息来完成端到端的训练。
它们要么将图像拼接在一起,让网络自动完成精细图像学习[30]-[33],要么学习输入图像的非线性映射,然后根据权函数完成图像融合过程[34]-[36]。此外,受图像超分辨率的启发,也有一些方法[30]、[31]、[36]、[37]将生成式对抗网络(generative adversarial network, GAN)引入到时空融合模型的训练中,以增强生成的精细图像的真实感。
尽管近年来出现了许多基于深度学习的时空融合方法,极大地提高了融合性能,但仍存在一些问题和挑战。首先,目前大多数基于端到端深度学习的方法无法构建具有大规模可学习参数的模型。采取GANSTFM[31]为例,输入图像保持原始分辨率的向前传播网络。这当然可以避免大部分信息的丢失,但也会导致内存占用的急剧增加,从而限制了网络参数的规模。在另一种基于图像超分辨率的时空融合方法中,由于从粗图像生成精细图像是一个增加分辨率的过程,因此可以在较低的空间分辨率下增加通道维数,从而增加网络参数的数量,提高网络能力。然而,由于这些算法缺乏空间细节,通常使用传统方法中的一些后处理方法来增强结果,从而抵消了深度学习方法带来的图像推理速度的提高。因此,有必要提出一种结合端到端学习和大规模网络参数的模型,同时保证图像推理速度和网络学习能力。
其次,基于cnn的特征提取和图像重建会带来冗余信息。大多数基于深度学习的时空融合方法使用多个堆叠卷积层来完成精细图像推理。
这种权重共享卷积滤波方法可以提取图像的局部特征并学习图像的纹理信息。
然而,CNN本质上是一种静态计算,对于不同的特征映射,它始终保持相同的权值矩阵。对于像素级的时空融合任务,局部区域像素之间的关系差异较大,直接使用相同的卷积核对其进行变换和合并会带来不好的效果。例如,在一个地区,有两种土地覆盖类型:林地和农田。
如果将林地和农田的像元特征通过同一变换合并为农田像元,不可避免地会给农田特征信息带来噪声。相反,transformer[38] -[40]将对输入特征映射执行动态关系建模,以增强特征学习。MSNet[41]使用变压器编码器学习粗糙图像之间的时间差,它只是模仿ViT[39]来建模图像块之间的关系。虽然这种模型结构可以从全局图像中学习到一些信息,但它不能学习像素级的注意力,也不能从相邻像素的精细特征中获益。因此,需要一个模型创造性地将像素级注意机制整合到时空融合方法中。
第三,目前基于深度学习的方法基本上忽略了混合像素的影响。传统算法一般侧重于消除传感器偏差、适应土地覆盖变化和处理混合像元三个方面。
过去,基于深度学习的方法也在前两个问题上付出了很多努力,但都没有提出混合像素的解决方案。BiaSTF[34]被认为是最接近传统方法的基于深度学习的方法,但它只停留在预测图像时间差和传感器偏差的层面。其他一些非端到端方法[28]、[29]也参考了后处理模块中基于权函数的方法,不能很好地解决混合像素。综上所述,应该提出一种将深度学习中的非线性特征学习与传统方法中的时空融合思想相结合的模型,以受益于大规模的可学习参数和良好的理论基础。
为了解决上述问题,一个端到端的深度学习方法叫做Swin时空融合模型(SwinSTFM)在本文提出。
该方法首先从图像中提取非线性纹理特征,基于SwinTransform的移位窗口和自注意机制输入图像[40],然后基于混合方法中的注意机制和解混理论对提取的特征进行多级融合,最终完成预测日期的精细图像生成。SwinSTFM创造性地将传统方法中的优秀理论整合到深度学习网络中,并在三个公共数据集上取得了很大的性能提升
本文采用MODIS和Landsat分别作为粗图像和精细图像。比较了几种涵盖传统方法和基于深度学习方法的优秀算法,包括STARFM[13]、ESTARFM[14]、FSDAF[19]、Fit-FC[20]、GANSTFM[31]和MSNet[41]。本文的其余部分组织如下。第二节介绍了SwinSTFM的理论支持和网络架构。第三部分给出了在多个数据集上的实验结果和比较。最后,第四节总结了结论。
方法:
SwinSTFM需要参考日期(t1)的一对粗图像(C1)和精细图像(F1)以及预测日期(t2)的一对粗图像(C2)来预测目标精细图像(F2)。SwinSTFM的整体结构如图1所示。
SwinSTFM是一个由特征提取模块(FEM)和多级融合模块(MFM)组成的端到端网络。它以三幅遥感图像作为输入,输出预测的精细图像。该FEM由多个Swin提取块组成,分别从输入图像中提取特征。Swin提取模块类似于SwinTransform模块。利用移位窗口和多头注意机制实现特征增强,并通过多块完成图像下采样。在FEM中提取的图像特征将被发送到MFM中完成特征融合和精细图像预测。MFM包含6个步骤来实现,其中前5个步骤基于前一个块的结果和Swin提取块生成的同级图像特征完成精细特征的生成。
最后,在第六步中对精细图像进行预测,并用真实图像监督SwinSTFM的学习。
作为一种基于注意力的架构,transformer[38]在序列建模和机器翻译等自然语言处理任务中显示出惊人的潜力。变压器编码器中的自关注机制可以对输入特征序列之间的关系进行建模,促进特征不同部分的信息融合。在计算机视觉中,图像不同区域之间的特征融合已经被证明可以大大提高算法的性能。因此,在计算机视觉中也有很多将变压器编码器结构适应于多任务的研究,ViT[39]是其中的代表作品之一。
ViT的主要结构仍然类似于变压器编码器。它首先将输入图像分割成多个小块,然后使用线性嵌入层将每个小块映射成一维向量。同时,为了在映射前保存图像结构信息,ViT还为每个图像patch向量添加了一个位置向量。之后的网络结构与变压器编码器相同。
这些图像块被发送到多个堆叠的变压器块中(如图2所示),例如输入序列的令牌。然后,基于多头自关注(MSA)模块的输出细化特征将用于以下任务。
MSA(以单头注意力为例)的计算公式为:Q = XWQ, K = XWK, V = XWV (1) attention (Q, K, V) = SoftMax QKT√d V(2)其中X∈Rp×d为输入patch的向量矩阵,p为patch的个数,d为特征维数。首先将X乘以三个参数矩阵WQ, WK, WV∈Rd×d得到查询Q,键K,值V,然后用Q和K计算补丁间的注意图,根据注意图和V进行矩阵乘法,实现特征增强。
尽管ViT在多个视觉任务上取得了出色的性能,但ViT的一个非常致命的问题是模型参数过于庞大,需要大量的数据进行预训练,这限制了ViT在小规模任务上的应用。以遥感时空融合为例,对自然图像进行预训练ImageNet等数据集不容易转换为遥感图像数据。同时,由于难以获得粗-精图像对,时空融合数据集往往是小规模的,这进一步限制了大尺度参数模型的应用。此外,ViT中的图像patch比较大(一般包含数百个像素),这对像素级任务(如时空融合)非常不友好,并且可能会给特征引入冗余信息。
为了利用强大的自关注模块有利于时空融合,本文采用Swin变压器[40]作为主干来完成特征提取。FEM的整体结构[如图3(a)所示]与Swin变压器基本相同,在一些细节上略有不同。首先,FEM与ViT一样,将输入的遥感图像分割成不重叠的小块。为了尽可能地减轻不同类型相邻像素的影响,本文的图像patch的大小为2 × 2。每个patch都可以看作是一个“令牌”,通过线性映射层变换成一维向量。
由于传统的时空融合方法需要枚举局部区域内的所有像素点并完成复杂的计算,因此在各种算法中广泛使用移动窗口来提高计算效率。Swin变压器也使用了类似的思想,将图像划分为多个不重叠的窗口,每个窗口包含M × M个图像补丁。在本文中,M被设置为8。这样,就可以将自关注模块应用到每个窗口的补丁上,减少了计算中涉及的补丁数量。由于这种窗口分割方案只在图像的局部区域进行特征融合,并且整个过程中图像的像素排列基本保持不变,因此不需要像ViT那样为每个patch添加全局位置向量。但是由于自关注模块忽略了参与计算的patch的位置信息,所以仍然需要在窗口内引入patch的相对位置信息。为此,Swin变压器在自注意模块中增加了一个相对位置偏差,如下式所示:Attention(Q, K, V) = SoftMax QKT√d + B V(3),其中B∈RM2×M2为相对位置偏差,表示单个窗口内patch之间的相对位置信息