当前位置:网站首页>云检测2020:用于高分辨率遥感图像中云检测的自注意力生成对抗网络Self-Attentive Generative Adversarial Network for Cloud Detection
云检测2020:用于高分辨率遥感图像中云检测的自注意力生成对抗网络Self-Attentive Generative Adversarial Network for Cloud Detection
2022-07-07 10:46:00 【HheeFish】
用于高分辨率遥感图像中云检测的自注意力生成对抗网络Self-Attentive Generative Adversarial Network for Cloud Detection in High Resolution Remote Sensing Images
0.摘要
云检测是遥感图像处理中的一个重要步骤。大多数基于卷积神经网络(CNN)的云检测方法都需要像素级的标签,这些标签耗时且注释成本高。为了克服这一挑战,本文提出了一种新的半监督云检测算法,通过训练自注意力生成对抗网络(SAGAN)来提取云图像和无云图像之间的特征差异。我们的主要想法是将视觉注意力引入到生成“真实”无云图像的过程中。SAGAN的训练基于三个指导原则:扩展云区域的注意力地图,用翻译后的无云图像替换;减少注意力地图,使其与云边界重合;优化自注意力网络,以处理极端情况。SAGAN训练的输入是图像和图像级标签,与现有的基于CNN的方法相比,它们更容易、更便宜、更节省时间。为了测试SAGAN的性能,对Sentinel-2A 1C级图像数据进行了实验。结果表明,该方法只需要训练样本的图像级标签,就可以获得很好的结果。
1.概述
随着卫星技术的快速发展,人们近实时、大批量地获取遥感图像。然而,全球年平均云量约为66%[1]。这会模糊地表特征,从而降低应用光学图像的可用性[2]。云的亮度范围从可见光到近红外波段,这导致许多明亮的地表,例如裸露的土地、裸露的岩石和混凝土表面,很容易与云混淆。薄云部分包含陆地表面的光谱特征,难以与清晰物体分离[3]
近年来,深度学习已被应用于分类、目标检测和图像分割。许多基于DL的遥感图像云检测方法已经被提出。Mateo等人[4]设计了一种基于卷积神经网络(CNN)的简单架构,用于检测Proba-V多光谱图像中的云。Le Goff等人[5] 提出了一种用于SPOT6中云检测的端到端卷积网络。詹等[6]设计了一个CNN网络来区分遥感图像中的云和雪。张等人[7]采用U-Net在小卫星上进行星载云检测。谢等人[8]提出了一种基于DL的多级云检测方法。李等人[9]针对不同传感器的中高分辨率遥感图像,提出了一种基于DL的云检测方法。
虽然以前基于DL的方法已成功用于遥感图像中的云检测,但CNN的训练通常需要人类注释的像素级标签,这既耗时又昂贵。因此,无监督特征提取更具吸引力。最近,一种生成对抗网络(GAN)被提出作为一种无监督DL模型。该模型通过生成模型(G)和判别模型(D)[10]之间的两人极小极大博弈生成假样本。GAN已用于图像生成[11]和翻译[12]、[13]。由于其有效性,GAN是复杂分布无监督学习最有前途的方法之一。
近年来,越来越多的研究者将注意力机制添加到动态学习中。视觉注意机制是人类视觉大脑信号处理的独特机制。通过快速扫描全局图像,人类视觉注意力将集中在目标区域,通常称为注意力焦点。为了获得更多的信息,人类视觉会更加关注目标的细节,而忽略其他无用的信息。
本文提出了一种新的基于GAN的自注意力云检测方法,其中GAN架构用于检测云区域。受朱等人13] 和钱等人[14]启发,我们提出了一种云检测方法,该方法使用具有相应图像级别标签的未配对遥感图像(0表示云图像,1表示无云图像)。主要贡献如下。
1) 我们提出了一种新的云检测方法-自注意力GAN(SAGAN),具有图像和图像级标签,其注释时间小于像素级标签的1%。据我们所知,这是该框架首次用于云检测。
2) 我们在方法中引入了注意力机制。我们方法中的注意力网络用于提取云的特征并生成云掩码。我们提出的方法中训练良好的注意力网络能够自动检测云区域。
2.方法
2.1.拟议方法的框架
GAN算法最初用于生成虚假数据。它由两个网络组成:生成网络(G)和判别网络(d),它们在极小极大博弈中相互竞争[10]。G尝试生成“真实”样本,D尝试区分真实和生成的样本。其公式如下:
其中D和G玩极小极大博弈。经过几轮博弈后,G(z)的分布将类似于dx,D将无法区分G(z)和x。
拟议SAGAN的流程图如图1所示。SAGAN的训练阶段包括三个,包括翻译、恢复和注意力。为了提高A的识别能力,设计了一个优化。测试阶段仅将注意力应用于输入图像以检测云。
图1。基于拟议SAGAN方法的云检测流程图。
图2。详细介绍了翻译、恢复和注意力。平移和恢复道具有相同的融合操作,但平移和恢复分别将输入图像中的检测区域(Amap中的白色区域)替换为背景和云。
翻译、恢复和注意力的细节如图2所示。在注意力中,我们设计了一个注意力网络(A)来获得云的注意力图(矩阵P=μ(0,1),P是云的注意力图),它将引导转换和恢复过程更加关注云区域。翻译旨在将注意力区域翻译为背景。恢复旨在将翻译后的区域恢复到原始图像。
图3。生成网络、注意网络和判别网络的详细组成。T和R都采用相同的网络架构将输入图像转换为目标图像
SAGAN中使用的网络细节如图3所示。受Jégou等人[15]图像分割的启发,我们方法中的自注意力网络(A)采用完全卷积(FC)-DenseNet架构,该架构由收缩路径和扩展路径组成。收缩路径由几个基本单元组成,每个基本单元包括紧跟着过渡层的致密块体。扩张路径和收缩路径是对称的;只有向下过渡层替换为向上过渡层。向下和向上路径中相同大小的特征映射在特征通道处串联。这两种生成网络的架构都基于ResNet[12],它可以避免梯度消失或爆炸,并确保输入信息的完整性。判别网络(D)基于贴片GAN[16],其在原始图像中具有较大的感受野。
2.2.扩展和翻译
在此阶段,翻译(T)将输入的云图像转换为无云图像,由注意力生成的注意力图确定应翻译哪些区域。两个结构的联合运行如下:
其中c表示输入图像,Gt表示翻译后的图像,T表示引入注意力操作后的翻译后的无云图像。
判别网络(D)用于评估T的质量。我们给出了D的损失函数的表达式如下
其中dc是云图的分布,dn是无云图像的分布
由Gt和A组成的T的损失函数可以写成
我们采用最小二乘函数作为D的损失函数。为了最小化LT,翻译隧道尝试将尽可能大的c区域翻译为n以混淆D,这意味着a将扩展注意力区域,Gt将生成高质量的图像。
2.3.减少和恢复
为了限制A只关注云区域,我们设计了一个恢复结构(R)。恢复结构将翻译后的无云图像恢复为原始云图,由注意力结构(A)生成的注意力图确定应恢复哪些区域。该过程可以组合如下:
其中,Gr(T)表示恢复的图像,R表示引入注意力操作后的恢复图像。
然后,我们将恢复的图像R与原始图像c进行比较。恢复过程可以评估如下:
我们采用绝对损耗作为R的损耗函数,R由A和Gr组成。绝对损失可以评估R和c之间的绝对差异。
在LT约束下,注意区域永远不会为零,这意味着LR永远不会达到最小值。要解决这个问题,最好的解决方案是保持c不变。c的变化区域由循环中的注意力图决定,这意味着A将减少注意力区域。同时,Gr将尝试将更改的区域恢复到原始图像c,以最小化LR。
在LT和LR的约束下,注意力扮演一个“极大极小”游戏,可以引导注意力地图很好地匹配云边界。A、Gt和Gr的损失函数可以组合如下:
2.4.优化
由于上述过程中未考虑无云图像和充满云的图像,因此A不适用于这两种极端情况,无法生成准确的注意力图。为了避免这个问题,该方法引入了另一种优化A的算法,以充分利用光谱信息。优化过程如图1所示。无云图像的注意力图应为0的矩阵,全云图像的注意力图应为1的矩阵。优化函数如下所示
其中df是充满云的图像的分布。
对于最小LA,A将获得关于云和背景的空间和光谱信息,以生成准确的注意力图。
在提出的SAGAN方法中,Gr、Gt和A相互合作。它们的参数一起更新。最终损失函数如下所示:
参考文献
[1] Y . Zhang, W. B. Rossow, A. A. Lacis, V . Oinas, and M. I. Mishchenko, “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. Geophys. Res., vol. 109, Oct. 2004, Art. no. D19105.
[2] A. Fisher, “Cloud and cloud-shadow detection in SPOT5 HRG imagery with automated morphological feature extraction,” Remote Sens., v o l . 6 , no. 1, pp. 776–800, 2014.
[3] R. Cahalan, L. Oreopoulos, G. Wen, A. Marshak, S.-C Tsay, and T. DeFelice, “Cloud characterization and clear-sky correction from Landsat-7,” Remote Sens. Environ., vol. 78, nos. 1–2, pp. 83–98, 2001.
[4] G. Mateo-García, L. Gómez-Chova, and G. Camps-Valls, “Convolutional neural networks for multispectral image cloud masking,” in Proc. IEEE Int. Geosci. Remote Sens. Symp. (IGARSS), Jul. 2017, pp. 2255–2258.
[5] M. L. Goff, J.-Y . Tourneret, H. Wendt, M. Ortner, and M. Spigai, “Deep learning for cloud detection,” in Proc. 8th Int. Conf. Pattern Recognit.
Syst. (ICPRS), 2017, pp. 1–6.
[6] Y . Zhan, J. Wang, J. Shi, G. Cheng, L. Y ao, and W. Sun, “Distinguishing cloud and snow in satellite images via deep convolutional network,” IEEE Geosci. Remote Sens. Lett., vol. 14, no. 10, pp. 1785–1789, Oct. 2017.
[7] Z. A. Zhang Iwasaki, X. Guodong, and S. Jianing, “Small satellite cloud detection based on deep learning and image compression,” to be published, doi: 10.20944/preprints201802.0103.v1.
[8] F. Xie, M. Shi, Z. Shi, J. Yin, and D. Zhao, “Multilevel cloud detection in remote sensing images based on deep learning,” IEEE J. Sel. Topics Appl. Earth Observ. Remote Sens., vol. 10, no. 8, pp. 3631–3640, Aug. 2017.
[9] Z. Li, H. Shen, Q. Cheng, Y . Liu, S. You, and Z. He, “Deep learning based cloud detection for medium and high resolution remote sensing images of different sensors,” ISPRS J. Photogramm. Remote Sens., vol. 150, pp. 197–212, Apr. 2019.
[10] I. J. Goodfellow et al., “Generative adversarial nets,” in Advances in Neural Information Processing Systems, vol. 27, Z. Ghahramani, M. Welling, C. Cortes, N. D. Lawrence, and K. Q. Weinberger, Eds.
Red Hook, NY , USA: Curran Associates, 2014, pp. 2672–2680.
[11] G. J. Qi, “Loss-sensitive generative adversarial networks on Lipschitz densities,” 2017, arXiv:1701.06264. [Online]. Available: https://arxiv.
org/abs/1701.06264 [12] P . Isola, J.-Y . Zhu, T. Zhou, and A. A. Efros, “Image-to-image translation with conditional adversarial networks,” in Proc. IEEE Conf.
Comput. Vis. Pattern Recognit. (CVPR), Honolulu, HI, USA, Jul. 2017, pp. 5967–5976.
[13] J.-Y . Zhu, T. Park, P . Isola, and A. A. Efros, “Unpaired image-to-image translation using cycle-consistent adversarial networks,” in Proc. IEEE Int. Conf. Comput. Vis. (ICCV), Oct. 2017, pp. 2223–2232.
[14] R. Qian, R. T. Tan, W. Y ang, J. Su, and J. Liu, “Attentive generative adversarial network for raindrop removal from a single image,” in Proc.
IEEE CVPR, Salt Lake City, UT, USA, Jun. 2018, pp. 2482–2491.
[15] S. Jegou, M. Drozdzal, D. V azquez, A. Romero, and Y . Bengio, “The one hundred layers Tiramisu: Fully convolutional DenseNets for semantic segmentation,” in Proc. IEEE CVPR, Honolulu, HI, USA, Jul. 2017, pp. 11–19.
[16] K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in Proc. IEEE CVPR, Las V egas, NV , USA, Jun. 2016, pp. 770–778.
[17] M. Main-Knorn, B. Pflug, J. Louis, V. Debaecker, U. Müller-Wilm, and F. Gascon, “Sen2Cor for Sentinel-2,” Proc. SPIE, vol. 10427, Oct. 2017, Art. no. 1042704.
[18] O. Ronneberger, P. Fischer, and T. Brox, “U-Net: Convolutional networks for biomedical image segmentation,” in Proc. Medical Image Comput. Comput. Assisted Intervention—MICCAI, vol. 9351. Munich, Germany: Springer, Oct. 2015, pp. 234–241.
[19] L.-C. Chen, G. Papandreou, F. Schroff, and H. Adam, “Rethinking Atrous convolution for semantic image segmentation,” 2017, arXiv:1706.05587. [Online]. Available: https://arxiv.org/abs/1706.05587
边栏推荐
- On valuation model (II): PE index II - PE band
- layer弹出层的关闭问题
- leetcode刷题:二叉树25(二叉搜索树的最近公共祖先)
- [pytorch practice] use pytorch to realize image style migration based on neural network
- [learn micro services from 0] [02] move from single application to service
- leetcode刷题:二叉树27(删除二叉搜索树中的节点)
- 免费手机号码归属地API查询接口
- 图形对象的创建与赋值
- Leetcode skimming: binary tree 22 (minimum absolute difference of binary search tree)
- [statistical learning methods] learning notes - Chapter 4: naive Bayesian method
猜你喜欢
Leetcode skimming: binary tree 25 (the nearest common ancestor of binary search tree)
[deep learning] image multi label classification task, Baidu paddleclas
[statistical learning methods] learning notes - Chapter 5: Decision Tree
Leetcode skimming: binary tree 22 (minimum absolute difference of binary search tree)
【PyTorch实战】用PyTorch实现基于神经网络的图像风格迁移
leetcode刷题:二叉树21(验证二叉搜索树)
BGP third experiment report
Cookie
NPM instal reports agent or network problems
Master formula. (used to calculate the time complexity of recursion.)
随机推荐
How to use PS link layer and shortcut keys, and how to do PS layer link
博文推荐|Apache Pulsar 跨地域复制方案选型实践
【PyTorch实战】用RNN写诗
Cookie
Simple implementation of call, bind and apply
Day-19 IO stream
Vxlan static centralized gateway
Multi row and multi column flex layout
Master公式。(用于计算递归的时间复杂度。)
Leetcode brush questions: binary tree 19 (merge binary tree)
达晨与小米投的凌云光上市:市值153亿 为机器植入眼睛和大脑
leetcode刷题:二叉树20(二叉搜索树中的搜索)
[statistical learning method] learning notes - support vector machine (I)
Day-14 common APIs
CMU15445 (Fall 2019) 之 Project#2 - Hash Table 详解
@Resource和@Autowired的区别?
MySQL importing SQL files and common commands
详解ThinkPHP支持的URL模式有四种普通模式、PATHINFO、REWRITE和兼容模式
Visual stdio 2017 about the environment configuration of opencv4.1
Design and implementation of communication protocol