2. 中国科学院大学电子电气与通信工程学院, 北京 100049
2. School of Electronic, Electrical and Communication Engineering, University of Chinese Academy of Sciences, Beijing 100049, China
随着航空航天技术的发展,遥感数据量呈现爆炸式增长。由于超过66%的地球表面被云层覆盖[1],大部分的光学遥感图像不可避免地受到污染,影响了遥感数据的进一步利用,例如对土地覆盖变化的分类和监测[2-3]。因此,在将遥感图像用于进一步分析之前,正确有效地对云进行分类是至关重要的预处理步骤[4]。
传统的遥感图像云检测算法主要基于单像素上的云的分类,因此往往采用图像的光谱特征,并利用阈值的方法检测判别云。针对Landsat图像,Zhu和Woodcock[5]提出FMask算法,该算法通过一系列光谱特征、归一化温度及亮度来识别云。Zhai等[6]根据多个光学遥感传感器的物理反射特性,提出一种具有光谱指数的统一云检测算法(cloud/shadow detection based on spectral indices, CSD-SI)。然而,这些方法对于具有相似光谱特征的像素会产生错误的分类[7],而且并没有充分利用图像的空间特征,在识别碎云和薄云方面存在较大的误差[8]。
近年来,随着深度学习的兴起,图像分类任务取得了重要进展,同样也有诸多研究将其应用于云检测[9]。Jeppesen等[10]在2种云检测数据集上交叉训练U-Net网络以提升云检测精度。Chai等[11]将云检测视为语义分割任务,利用具有13个卷积层和13个反卷积层的SegNet来识别云。Li等[12]设计了一种新的多尺度特征融合模块,通过对不同尺度的卷积特征进行采样和拼接,最后融合输出来检测云。然而这些网络过分强调图像的空间特征,对于图像的光谱特征重视不够,使得光谱细节容易丢失。另一方面,这些网络都是基于卷积神经网络(convolutional neural network, CNN)实现,虽然CNN能够利用卷积核不断地提取抽象的高级特征,但是CNN固定的卷积核限制了感受野的大小,不能充分利用上下文信息进行特征的捕获[13]。与CNN不同,Transformer利用注意力的方式捕获全局的上下文信息,从而对目标建立起远距离的依赖[14],能够提取出更强有力的特征,在自然语言处理领域取得了巨大成功[15]。最近,Transformer也被尝试引入视觉领域,并在图像的分类[16]、检测[17]、分割[18]等方面显示出比CNN更优异的性能。而在云检测的应用方面,具有更大感受野的Transformer尚未得到充分探索。
因此,针对上述问题,我们提出一种融合遥感图像光谱和空间信息的新型云检测深度学习网络(spectral-spatial feature fusion network, SSFF-Net)。不同于传统的图像分割网络,它将深度网络分为光谱特征提取阶段和空间特征提取阶段。在光谱特征提取阶段,通过1×1的卷积核以及多层的线性映射提取图像的光谱特征,并不破坏图像的空间信息。在空间特征提取阶段,首次将具有更大感受野的Transformer引入到遥感图像空间上的编解码以获取更强有力的空间特征,并利用跳跃连接(skip connection, SC)将编码阶段的多层次信息送入解码阶段以弥补下采样的损失。在Landsat8 Biome和AIR-CD 2种数据集上进行了评估,分别达到97%和96%的总体精度。
1 数据和方法 1.1 数据本文主要用到2种数据集,Landsat8 Biome和AIR-CD数据集。Landsat8 biome数据集包含96张Landsat图像,这些图像由Foga等[19]收集和标注,每张图像大小约为7 000×7 000,具有11个波段(表 1),其中TIRS波段已重采样到30 m。该数据集分为8个不同种类的下垫面,分别是裸土、森林、草地/农田、灌木、冰雪、城市、水和湿地,具有全球代表性。并进一步分为4类,即“厚云”“薄云”“云阴影”和“非云”。将标签分为有云和无云2类,并将每张图像划分为224×224大小的子图,总共得到大约5万张图片。考虑到不同波段的空间分辨率不同,采用了除全色波段的其余10个波段。
AIR-CD数据集包括34景高分二号图像,由He等[20]收集并标注,涵盖2017年2月到11月间中国的不同地区。AIR-CD数据集由可见光波段和近红外波段组成,每张图像大小为7 300×6 908,空间分辨率为4 m。比之前的高分数据云检测数据集而言,AIR-CD数据集的场景更为复杂和多样,包括多种土地覆盖类型,有城市、荒地、雪地和森林,在高精度云检测方面更具有挑战性。数据集标签分为有云和无云2类,同样将其划分为224×224大小的子图,总共得到3万张图片,采用了全部的4个波段。
1.2 网络结构传统的基于阈值的云检测方法主要利用遥感图像的光谱特征,通过先验知识,将遥感图像的多波段信息进行各种线性组合来提取图像的光谱特征,但是这种方法费时费力,且阈值的选取也十分依赖经验性,容易将相似光谱特征的目标混淆。除传统方法外,也有很多研究利用深度网络提取空间特征检测云,这些网络大多采用CNN。图像分割是像素级的分类,空间位置要求较高,而CNN具有平移不变性,特征提取的过程中对遥感图像空间信息损失较多,不能充分利用。因此,针对上述问题,引入1×1的卷积核和Transformer,1×1的卷积核能够利用线性映射和激活函数提取最优的光谱特征,而Transformer具有位置编码的性质,能避免一定的位置信息损失。基于此,重新设计图像分割网络,将其分为两部分——光谱特征提取阶段和空间特征提取阶段。在光谱特征提取阶段,利用1×1的卷积核提取图像的光谱特征,并不破坏图像的空间结构,保留光谱细节。在空间特征提取阶段,利用Transformer感受野大和能保留位置信息的特点,提取图像空间信息,并利用跳跃连接将编码器的多层次信息送入解码器,增强解码能力。最终网络结构模型如图 1所示,下面详细说明这两部分网络结构。
Download:
|
|
利用1×1的卷积核提取图像的光谱特征,并不破坏图像的空间特征,相当于在每个像素上分别提取光谱特征,如图 2所示,是单个像素上光谱特征提取示意图。对于每个像素的输入波段,通过线性映射到隐藏层,对隐藏层采用批归一化层(batch normalization, BN)处理,防止因为数据间差异过大影响学习,加快模型的收敛速度。经过隐藏层后,利用Relu激活函数导入到下一个隐藏层,Relu的导数为常数,可以缓解梯度消失问题,使得模型的收敛速度维持在一个稳定状态。经过多层的隐藏层和激活函数,最终提取到3个最优的光谱特征。在这一阶段,其作用过程类似于NDVI、EVI、MNDWI等光谱指数计算,但这些光谱指数是依赖于经验性的简单线性组合,卷积核是通过数据驱动自动地提取最优光谱特征,更复杂但也更有效。
Download:
|
|
$ \text { Relu }= \begin{cases}x, & x>0, \\ 0, & x \leqslant 0, \end{cases} $ | (1) |
$ \mathrm{BN}(x)=\gamma \frac{x-\mu}{\theta}+\beta. $ | (2) |
1) 多头自注意力机制
自注意力机制(self attention, SA)首先基于输入向量X构造权值矩阵WQ、WK、WV,之后将输入向量X乘以3个权值矩阵WQ、WK、WV,得到Q、K、V
$ \boldsymbol{X} \cdot \boldsymbol{W}_Q=\boldsymbol{Q}, $ | (3) |
$ \boldsymbol{X} \cdot \boldsymbol{W}_K=\boldsymbol{K}, $ | (4) |
$ \boldsymbol{X} \cdot \boldsymbol{W}_V=\boldsymbol{V}, $ | (5) |
其中:
$ \operatorname{Attention}(\boldsymbol{Q}, \boldsymbol{K}, \boldsymbol{V})=\operatorname{softmax}\left(\frac{\boldsymbol{Q} \boldsymbol{K}^{\mathrm{T}}}{\sqrt{d_k}}\right) \boldsymbol{V}, $ | (6) |
MultiHead (Q, K, V)=Concat(head1, …, headn),
$ { where\; head }_{\mathrm{i}}={Attention}\left(\boldsymbol{Q} \boldsymbol{W}_i^\boldsymbol{Q}, \boldsymbol{K} \boldsymbol{W}_i^{\boldsymbol{K}}, \boldsymbol{V} \boldsymbol{W}_i^\boldsymbol{v}\right). $ | (7) |
如式(6)和图 3(a)所示,其中dk为尺度因子。自注意力机制将Q与K的转置矩阵相乘,其结果除以尺度因子的平方根,将其归一化,之后通过softmax函数再乘以V。如式(7)和图 3(b)所示,多头自注意力机制(multi-head self attention, MSA)则是生成多个Attention,再将多个Attention的结果级联得到。权值矩阵WQ、WK、WV由数据驱动学习得到,MSA的输出最终用到了整个输入向量的信息,所以注意力机制能够捕获全局的信息。
Download:
|
|
2) Swin Transformer块
在空间特征提取阶段,主要利用视觉Transformer中的Swin Transformer块[18]进行空间特征上的编解码。不同于传统的MSA模块, Swin Transformer块基于移位窗口构建。如图 4所示,每一个Swin Transformer块由归一化层(layer-norm, LN)、窗口MSA(window-MSA, W-MSA)、偏移窗口MSA(shifted window-MSA, SW-MSA)以及多层感知器(multilayer perceptron, MLP)组成。因此,基于图 4的机制,可以将其公式化为
Download:
|
|
$ \hat{\boldsymbol{z}}^l=\mathrm{W}-\mathrm{MSA}\left(\mathrm{LN}\left(\boldsymbol{z}^{l-1}\right)\right)+\boldsymbol{z}^{l-1}, $ | (8) |
$ \boldsymbol{z}^l=\operatorname{MLP}\left(\mathrm{LN}\left(\hat{\boldsymbol{z}}^\boldsymbol{ l}\right)\right)+\hat{\boldsymbol{z}}^\boldsymbol{l}, $ | (9) |
$ \hat{\boldsymbol{z}}^{l+1}=\mathrm{SW}-\mathrm{MSA}\left(\mathrm{LN}\left(\boldsymbol{z}^l\right)\right)+\boldsymbol{z}^l, $ | (10) |
$ \boldsymbol{z}^{l+1}=\operatorname{MLP}\left(\mathrm{LN}\left(\hat{\boldsymbol{z}}^{\boldsymbol{l}+1}\right)\right)+\hat{\boldsymbol{z}}^{\boldsymbol{l}+1}, $ | (11) |
式中:
LN将数据进行归一化,加速网络的收敛,MLP则是数据映射到相应的维度。如图 5(a)所示,W-MSA首先将图像均匀地划分为数个子块,对于每个图像子块
Download:
|
|
Download:
|
|
3) 编码-解码
在编码阶段,主要利用4层编码块对图像进行编码,第1层的编码块由1个Swin Transformer块组成,其他3个编码块由1个Swin Transformer块和1个Patch Merging层组成。Swin Transformer块被用来执行表示学习,这一过程中图像的通道维度和分辨率保持不变,同时利用Patch Merging层将图像分辨率进行2倍下采样,并将通道数变为之前的2倍。对于最底层的特征图而言,最终用到了全局的上下文信息。与编码阶段相对应,在解码阶段,同样采用4层解码块对图像进行解码,最底层的解码块由1个Swin Transformer块组成,其他3个解码块由1个Swin Transformer块和1个Patch Expanding层组成。Swin Transformer块在解码阶段的作用与编码阶段的作用基本一致,不同于Patch Merging层,Patch Expanding层将图像分辨率进行2倍上采样,并将通道数变为之前的2倍。与U-Net类似,利用跳跃连接将浅层特征和深层特征结合在一起,以减少由下采样引起的空间信息的损失。由于是二分类,Linear Projection层将通道数最终变为2以获得像素级的分类。
2 结果与分析为验证本文算法的有效性,在2种数据集上都采用了U-Net及Seg-Net网络作为对比。U-Net和Seg-Net都是经典的图像分割网络,并且在遥感图像云检测上均取得了不错的效果。针对Landsat8 Biome数据集,还采用传统的CFMask方法作为对比,CFMask是官方评估生成云检测质量波段的方法,对比多种传统方法效果最佳。实验将2种数据集均按照7∶3的比例划分为训练集和测试集,学习率为1e-2,采用Adam优化器,批训练大小为32,总共训练了100个轮次,前50个轮次学习率不变,之后每25个轮次学习率衰减为之前的1/10。所有实验均采用Pytorch框架生成,操作系统为Ubuntu16.04,实验所用GPU为2块1080Ti。
为评估实验效果,采用准确率(A)、召回率(R)、精确度(P)、F1值进行定量评估。准确率是所有像素中云分类正确的概率;召回率是真值中属于云的像素被分类正确的概率;精确度是检测为云的像素中真正是云的概率;F1值是召回率与精确度的调和平均数,可以有效评估样本不均衡时云检测算法的效果。4个指标的表达式如下
$ A=\frac{T_{\mathrm{P}}+T_{\mathrm{N}}}{T_{\mathrm{P}}+T_{\mathrm{N}}+F_{\mathrm{P}}+F_{\mathrm{N}}}, $ | (12) |
$ R=\frac{T_{\mathrm{P}}}{T_{\mathrm{P}}+F_{\mathrm{N}}}, $ | (13) |
$ P=\frac{T_{\mathrm{P}}}{T_{\mathrm{P}}+F_{\mathrm{P}}}, $ | (14) |
$ F_1=\frac{2 T_{\mathrm{P}}}{2 T_{\mathrm{P}}+F_{\mathrm{P}}+F_{\mathrm{N}}}, $ | (15) |
式中: TP表示预测为云实际也为云的像元数量,FP表示预测为云但实际为非云的像元数量,TN表示预测为非云实际也为非云的像元数量,FN表示预测为非云但实际为云的像元数量。
2.1 Landsat数据结果分析在Landsat8 Biome数据集上的评估结果如表 2所示,SSFF-Net在所有下垫面上的结果均优于U-Net、Seg-Net和CFMask算法。其中,准确率达到97.39%,高于U-Net的94.65%、SegNet的93.26%以及CFMask的86.16%。在另一项关键指标F1值上,SSFF-Net达到97.27%,比其他3种算法均超出3个百分点以上。这说明,SSFF-Net网络在云检测上具有较好的精度和更好的鲁棒性。图 7展示了SSFF-Net与其他云检测算法的一些对比结果。在第1景图片中,可以看到SSFF-Net对于碎云的细节保留最好,这得益于SSFF-Net的Transformer编解码模块有效地提取了空间上下文信息。第2景图片有亮目标的干扰,CFMask、SegNet以及U-Net均被影响,造成了误分,而SSFF-Net具有光谱特征提取模块,保留了光谱细节,很好地区分了亮目标和云,这说明SSFF-Net对于相似的目标具有更强的鉴别能力。
Download:
|
|
在空间特征提取阶段,采用跳跃连接以弥补下采样的损失。在Landsat8 Biome数据集上进行了相关实验以验证跳跃连接的有效性。如表 3所示, 在4项指标上,带有跳跃连接的SSFF-Net均优于不带有跳跃连接的SSFF-Net,且提升明显。图 8展示了2种网络在Landsat8 Biome数据集上的对比结果,可以看到带有跳跃连接的SSFF-Net的信息丢失较少,很好地检测出了云,对于碎云和薄云的处理也更好。
Download:
|
|
为进一步验证SSFF-Net的有效性,在AIR-CD数据集上也进行了相关实验。由于AIR-CD并没有细分出下垫面,这里给出在所有测试集上的评估结果,如表 4所示。在4项评价指标上SSFF-Net均要优于U-Net以及SegNet,尤其在F1值上提升明显,达到83.77%,这说明SSFF-Net网络在AIR-CD数据集上的鲁棒性更好。图 9展示了在AIR-CD数据集上SSFF-Net的检测结果,从图中可以看到,SSFF-Net对于云的边缘细节处的检测能力相比其他网络更好。
Download:
|
|
将SSFF-Net、U-Net以及SegNet在2个数据集上分别遍历1 000次,取其平均结果,运行时间分别为72、56、64 ms,SSFF-Net运行较为耗时,这是因为SSFF-Net的参数量较大,达到了42 M,而U-Net和SegNet的参数量分别为27 M和29 M。SSFF-Net使用Transformer在空间上进行编解码,Transformer集成了注意力机制,注意力机制引入了多个分支,多个分支的存在造成模型参数量较大,未来将在保证精度的前提下设计更轻量化的云检测网络。
从图 7及图 9中的对比可以看到,SSFF-Net对于Landsat图像上的云检测能力更好,细节保留也最多。从指标上看,在Landsat8 Biome数据集上性能也优于AIR-CD,尤其F1值指标上领先较多。这主要是因为我们的模型对于图像光谱特征进行了提取,Landsat8 Biome数据集用到10个波段,AIR-CD则只有4个波段,Landsat8 Biome所能利用的波段更多,在光谱特征提取阶段能提取到更丰富的信息,这也是我们的模型在Landsat8 Biome数据集上表现更好的原因。
3 结论云检测一直是减少遥感图像无效数据的有效解决方案。针对当前云检测方法未能充分利用遥感图像光谱和空间信息,本文提出一种新型的云检测深度网络SSFF-Net,将传统的图像分割网络分为2个部分,光谱特征提取阶段和空间特征提取阶段。在光谱特征提取阶段,利用1×1的卷积核提取图像光谱特征,在空间特征提取阶段,引入Transformer做空间上的编解码,并采用跳跃连接减少编码阶段的损失,有效地结合了遥感图像的光谱特征以及空间特征。在Landsat8 Biome和AIR-CD两种数据集上进行验证,均取得不错的效果,分别达到97%和96%的总体准确率。相比现有的云检测深度网络和传统的云检测方法,SSFF-Net对于碎云的细节保留最好,这得益于Transformer能够提取更强有力的空间特征。此外,由于SSFF-Net重视光谱特征的提取,保留了光谱细节,SSFF-Net能够很好地区分亮目标和云。
虽然SSFF-Net云检测网络性能很好,但仍有一些局限性。它结合了遥感图像的空间特征以及光谱特征,但是对于时序的遥感图像而言,并未利用到时间序列上的特性,如何结合光谱、空间、时间上的信息综合检测判别云,值得进一步探索。此外,针对不同分辨率和传感器的遥感图像,设计不同的更具有适应性的深度网络也是未来的研究方向之一。
[1] |
Zhang Y C, Rossow W B, Lacis A A, et al. Calculation of radiative fluxes from the surface to top of atmosphere based on ISCCP and other global data sets: refinements of the radiative transfer model and the input data[J]. Journal of Geophysical Research: Atmospheres, 2004, 109(D19): D19105. Doi:10.1029/2003JD004457 |
[2] |
Sun L, Wei J, Wang J, et al. A universal dynamic threshold cloud detection algorithm (UDTCDA) supported by a prior surface reflectance database[J]. Journal of Geophysical Research: Atmospheres, 2016, 121(12): 7172-7196. Doi:10.1002/2015JD024722 |
[3] |
刘庆凤, 刘吉平, 宋开山. 基于MODIS/NDVI时序数据的土地覆盖分类[J]. 中国科学院研究生院学报, 2010, 27(2): 163-169. Doi:10.7523/j.issn.2095-6134.2010.2.003 |
[4] |
段雅鸣, 张锦水, 朱爽. 基于深度卷积神经网络的云检测方法[J]. 测绘通报, 2021(4): 33-39. Doi:10.13474/j.cnki.11-2246.2021.0107 |
[5] |
Zhu Z, Woodcock C E. Object-based cloud and cloud shadow detection in Landsat imagery[J]. Remote Sensing of Environment, 2012, 118: 83-94. Doi:10.1016/j.rse.2011.10.028 |
[6] |
Zhai H, Zhang H Y, Zhang L P, et al. Cloud/shadow detection based on spectral indices for multi/hyperspectral optical remote sensing imagery[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2018, 144: 235-253. Doi:10.1016/j.isprsjprs.2018.07.006 |
[7] |
Frantz D, Haß E, Uhl A, et al. Improvement of the Fmask algorithm for Sentinel-2 images: separating clouds from bright surfaces based on parallax effects[J]. Remote Sensing of Environment, 2018, 215: 471-481. Doi:10.1016/j.rse.2018.04.046 |
[8] |
Oishi Y, Ishida H, Nakamura R. A new Landsat 8 cloud discrimination algorithm using thresholding tests[J]. International Journal of Remote Sensing, 2018, 39(23): 9113-9133. Doi:10.1080/01431161.2018.1506183 |
[9] |
张永宏, 蔡朋艳, 陶润喆, 等. 基于改进U-Net网络的遥感图像云检测[J]. 测绘通报, 2020(3): 20, 34. Doi:10.13474/j.cnki.11-2246.2020.0070 |
[10] |
Jeppesen J H, Jacobsen R H, Inceoglu F, et al. A cloud detection algorithm for satellite imagery based on deep learning[J]. Remote Sensing of Environment, 2019, 229: 247-259. Doi:10.1016/j.rse.2019.03.039 |
[11] |
Chai D F, Newsam S, Zhang H K, et al. Cloud and cloud shadow detection in Landsat imagery based on deep convolutional neural networks[J]. Remote sensing of environment, 2019, 225: 307-316. Doi:10.1016/j.rse.2019.03.007 |
[12] |
Li Z W, Shen H F, Cheng Q, et al. Deep learning based cloud detection for medium and high resolution remote sensing images of different sensors[J]. ISPRS Journal of Photogrammetry and Remote Sensing, 2019, 150: 197-212. Doi:10.1016/j.isprsjprs.2019.02.017 |
[13] |
赵敏钧, 赵亚伟, 赵雅捷, 等. 一种新的基于深度学习的重叠关系联合抽取模型[J]. 中国科学院大学学报. Doi:10.7523/j.ucas.2020.0026 |
[14] |
Sha Y, Zhang Y, Ji X, et al. Transformer-Unet: raw image processing with unet[EB/OL]. arXiv: 2109.08417v1. (2021-09-17)[2021-11-11]. https://arxiv.org/abs/2109.08417v1.
|
[15] |
Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[EB/OL]. arXiv: 1706.03762v5. (2017-12-06)[2021-11-11]. https://arxiv.org/abs/1706.03762v5.
|
[16] |
Dosovitskiy A, Beyer L, Kolesnikov A, et al. An image is worth 16x16 words: transformers for image recognition at scale[EB/OL]. arXiv: 2010.11929v2. (2021-06-03)[2021-11-11]. https://arxiv.org/abs/2010.11929v2.
|
[17] |
Carion N, Massa F, Synnaeve G, et al. End-to-end object detection with transformers[C]//Computer Vision-ECCV 2020, 2020: 213-229. DOI: 10.1007/978-3-030-58452-8_13.
|
[18] |
Liu Z, Lin Y T, Cao Y, et al. Swin transformer: hierarchical vision transformer using shifted windows[EB/OL]. arXiv: 2103.14030v2. (2021-08-17)[2021-11-11]. https://arxiv.org/abs/2103.14030v2.
|
[19] |
Foga S, Scaramuzza P L, Guo S, et al. Cloud detection algorithm comparison and validation for operational Landsat data products[J]. Remote Sensing of Environment, 2017, 194: 379-390. Doi:10.1016/j.rse.2017.03.026 |
[20] |
He Q B, Sun X, Yan Z Y, et al. DABNet: deformable contextual and boundary-weighted network for cloud detection in remote sensing images[J]. IEEE Transactions on Geoscience and Remote Sensing, 5474, PP(99): 1-16. DOI: 10.1109/TGRS.2020.3045474.
|