CN117058557A - 基于物理特征与深度学习模型的云和云阴影联合检测方法 - Google Patents
基于物理特征与深度学习模型的云和云阴影联合检测方法 Download PDFInfo
- Publication number
- CN117058557A CN117058557A CN202310877228.8A CN202310877228A CN117058557A CN 117058557 A CN117058557 A CN 117058557A CN 202310877228 A CN202310877228 A CN 202310877228A CN 117058557 A CN117058557 A CN 117058557A
- Authority
- CN
- China
- Prior art keywords
- cloud
- shadow
- detection
- cloud shadow
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 215
- 238000013136 deep learning model Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 claims abstract description 103
- 238000012549 training Methods 0.000 claims abstract description 61
- 238000001228 spectrum Methods 0.000 claims abstract description 20
- 238000001914 filtration Methods 0.000 claims abstract description 11
- 238000006073 displacement reaction Methods 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 26
- 238000003384 imaging method Methods 0.000 claims description 24
- 238000011160 research Methods 0.000 claims description 14
- 238000012937 correction Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 12
- 238000002347 injection Methods 0.000 claims description 8
- 239000007924 injection Substances 0.000 claims description 8
- 238000013519 translation Methods 0.000 claims description 5
- 230000000873 masking effect Effects 0.000 claims description 2
- 238000010191 image analysis Methods 0.000 abstract description 2
- 239000010410 layer Substances 0.000 description 44
- 230000008569 process Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 12
- 238000012216 screening Methods 0.000 description 10
- 230000003595 spectral effect Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 239000007789 gas Substances 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000002310 reflectometry Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013501 data transformation Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000005855 radiation Effects 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 239000000443 aerosol Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/13—Satellite images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Astronomy & Astrophysics (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请涉及图像分析技术领域,提供一种基于物理特征与深度学习模型的云和云阴影联合检测方法。该方法先通过深度学习模型对待检测的遥感影像进行多层分类检测,对应得到二分类检测结果和三分类检测结果,然后通过分析遥感影像的物理特征,利用光谱阈值法和引导滤波算法获得云和云阴影的掩膜结果;最后,根据深度学习模型得到的二分类检测结果、三分类检测结果以及基于物理特征得到的云和云阴影的掩膜结果逐个像元进行联合检测,得到各个像元的分类结果。由此,结合遥感影像的物理特征和深度学习模型对云和云阴影进行多层分类,避免了深度学习模型因缺乏训练样本导致模型性能较差、泛化能力不足的问题,提高了云和云阴影的检测精度。
Description
技术领域
本申请涉及图像分析技术领域,特别涉及一种基于物理特征与深度学习模型的云和云阴影联合检测方法。
背景技术
遥感被认为是地球表层最为重要的宏观监测手段,其具有范围广、周期短、信息量大等突出优势,常应用于地球大气、陆地及海洋的资源环境监测。由于存在大气环流等自然气候变化,地球表面上常年被大量的云层覆盖,有研究表明云层覆盖率几乎达到了65%,这使得光学遥感卫星尤其是高分辨率卫星的观测能力受到了严重的限制,漏失了许多重要的地球空间信息,因此,对光学卫星影像中云和云阴影进行检测和识别具有重要意义。
目前常见的云和云阴影检测的方法有:基于光谱阈值检测方法、基于空间纹理特征的方法、基于地理信息的方法、多时相遥感数据结合的方法以及基于深度学习模型的方法。其中,基于深度学习模型的方法以高效、准确的海量遥感影像处理能力成为研究的热点,然而,由于深度学习模型的训练过程是一个监督学习的过程,需要大量的像素级标签数据作为训练数据,成本较高,而高质量标签数据的缺乏导致现有模型检测精度不足。
因此,需要提供一种针对上述现有技术不足的改进技术方案。
发明内容
本申请的目的在于提供一种基于物理特征与深度学习模型的云和云阴影联合检测方法,以解决或缓解上述现有技术中存在的问题。
为了实现上述目的,本申请提供如下技术方案:
本申请提供了一种基于物理特征与深度学习模型的云和云阴影联合检测方法,包括:
获取研究区域的待检测遥感影像;所述待检测遥感影像为包含云和云阴影的遥感影像;
使用深度学习模型对所述待检测遥感影像分别执行二分类检测和三分类检测,对应得到二分类检测结果和三分类检测结果;
利用光谱阈值法,基于所述待检测遥感影像的物理特征进行云和云阴影检测,得到云和云阴影的掩膜结果;
对所述待检测遥感影像中的每一像元,判断所述像元在所述二分类检测结果中的类别与所述像元在所述三分类检测结果中的类别是否相同;若不相同,则使用所述云和云阴影的掩膜结果与所述二分类检测结果对所述像元进行联合检测,得到所述像元的分类结果。
进一步地,使用所述云和云阴影的掩膜结果与所述二分类检测结果对所述像元进行联合检测,得到所述像元的分类结果,具体为:
基于预设的权重系数,对所述云和云阴影的掩膜结果、所述二分类检测结果进行加权求和,得到加权求和结果;
响应于所述加权求和结果符合第一预设阈值范围,将所述像元的分类结果确定为晴空,否则,则所述像元的分类结果确定为云/云阴影。
进一步地,加权求和时,所述云和云阴影的掩膜结果的权重系数取值为0.2,所述二分类检测结果的权重系数取值为0.8。
进一步地,所述待检测遥感影像为高分一号卫星影像;
在获取待检测遥感影像之后、使用深度学习模型对所述待检测遥感影像分别执行二分类检测和三分类检测之前,还包括:
利用所述高分一号卫星影像构建多层分类的云和云阴影检测数据集;所述云和云阴影检测数据集包括三分类数据集和二分类数据集,所述三分类数据集的标签数据中标注有云和云阴影分类目标;所述二分类数据集包括云数据集和云阴影数据集,所述云数据集的标签数据中标注有云目标;所述云阴影数据集中标注有云阴影目标;
基于多层分类的云和云阴影检测数据集,对所述深度学习模型进行训练,得到训练完成的深度学习模型。
进一步地,所述深度学习模型为基于Transformer架构的Swin-Unet模型;
基于多层分类的云和云阴影检测数据集,对所述深度学习模型进行训练,得到训练完成的深度学习模型,包括:
利用所述多层分类的云和云阴影检测数据集对Swin-Unet模型进行二分类和三分类的分层训练,对应得到二分类云检测模型、二分类云阴影检测模型以及三分类检测模型。
进一步地,利用所述高分一号卫星影像构建多层分类的云和云阴影检测数据集,包括:
对所述高分一号卫星影像进行灰度值重注和切片处理,得到切片数据;
将包含NoValue值像元的切片从切片数据中删除;
计算所述切片数据中每一切片的云和云阴影含量,将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集。
进一步地,将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集之后,还包括:
对所述切片数据进行数据增强处理,以扩展所述深度学习模型的训练样本。
进一步地,在使用所述云和云阴影的掩膜结果与所述二分类检测结果对所述像元进行联合检测,得到所述像元的分类结果之后,还包括:
将分类后的像元组成的切片进行拼接,得到整个研究区域的云掩膜影像和云阴影掩膜影像;
根据预先获取的太阳天顶角、太阳方位角、观测天顶角、观测方位角,计算所述云掩膜影像和所述云阴影掩膜影像中云区域与云阴影区域的相对方位角;
对所述云阴影掩膜影像中的任一个云阴影区域,根据所述相对方位角,确定所述云阴影区域与在所述相对方位角方向上距离最近的云区域的成像几何关系;
响应于所述成像几何关系满足预设条件,将所述云阴影区域从所述云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像。
进一步地,根据所述相对方位角,确定所述云阴影区域与在所述相对方位角方向上距离最近的云区域的成像几何关系,响应于所述成像几何关系满足预设条件,将所述云阴影区域从所述云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像,具体为:
对所述云阴影区域中的每一个云阴影像元,使用预设窗口值和预设步长的滑动窗口,沿所述相对方位角的方向查找距离当前云阴影像元距离最近的云像元,并记录所述云像元相对于所述云阴影像元的相对位移值;
基于所述相对位移值对所述云阴影区域进行整体平移操作,并将平移后的云阴影区域与所述云掩膜影像进行叠置操作,以计算出平移后的云阴影区域与所述云掩膜影像中所有云像元重合的面积相对于所述云阴影区域的面积的比例;
响应于所述比例小于预设的面积比例阈值,将所述云阴影区域从所述云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像。
进一步地,所述待检测遥感影像的物理特征包括HOT指数、VBR指数和NDVI指数;
利用光谱阈值法,基于所述待检测遥感影像的物理特征进行云和云阴影检测,得到云和云阴影的掩膜结果,包括:
计算所述待检测遥感影像对应的HOT指数、VBR指数和NDVI指数;
利用光谱阈值法,基于HOT指数和VBR指数对所述待检测遥感影像进行云检测,得到云掩膜结果;
基于NDVI指数对所述待检测遥感影像进行云阴影检测,得到云阴影检测结果;
使用导向滤波算法分别对云掩膜结果和云阴影检测结果进行边缘修正,得到云和云阴影的掩膜结果。
有益效果:
本申请的技术方案用于待检测遥感影像进行云和云阴影识别,该方法先通过深度学习模型对待检测的遥感影像进行多层分类检测,对应得到二分类检测结果和三分类检测结果,然后计算待检测遥感影像的物理特征并利用光谱阈值法获得云和云阴影的掩膜结果;最后,根据深度学习模型得到的二分类检测结果、三分类检测结果以及基于物理特征得到的云和云阴影的掩膜结果逐个像元进行联合检测,得到各个像元的分类结果。由此,结合遥感影像的物理特征和深度学习模型对云和云阴影进行多层分类,避免了深度学习模型因缺乏训练样本导致模型性能较差、泛化能力不足的问题,同时也避免了传统方法过于依赖经验而导致检测结果错误的情况,强化了模型的针对性和泛化能力,提高了云和云阴影分类结果的整体精度。此外,由于联合检测考虑了更多的检测细节,提升了复杂场景下云阴影的检测能力。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1为根据本申请的一些实施例提供的基于物理特征与深度学习模型的云和云阴影联合检测方法的流程示意图;
图2为根据本申请的一些实施例提供的联合检测过程示意图;
图3为Swin-Unet网络结构示意图;
图4为Swin transformer block结构示意图;
图5为根据本申请的一些实施例提供的分类后云掩膜与云阴影掩膜的相对位置示意图;
图6为根据本申请的一些实施例提供的确定云阴影区域与云区域的成像几何关系过程示意图。
具体实施方式
为了更好地理解本申请实施例的技术方案,下面对一些背景技术进行说明。
如前所述,现有光学遥感卫星中存在的云和云阴影严重影响了其应用范围和应用效果。具体来说,积累的云层阻碍了可见光的传输,云阴影混淆了光照条件下地表信息的获取,云层及其阴影的存在使得在利用遥感手段获取地物信息时,图像中大量的信息无法有效被利用,导致后续基于遥感图像的识别与分类、目标检测与跟踪以及其他研究分析任务都受到负面影响。
随着各种观测卫星的投入使用,国内外众多学者开始了针对遥感卫星以及遥感影像的研究,其中,云检测作为遥感影像预处理过程中的重要步骤,也迭代出了许多相关的技术与方法。
常用的方法之一是传统的基于光谱阈值法,其通过针对遥感影像特点进行分析,通过对遥感影像中波段信息进行计算和研究,发现对于各类地物,不同波段信息在叠加和抵消的相互作用下,表现出不同的光谱反射特性,基于此,该方法通过对光谱数值进行有效的阈值划分,即可粗略地区分出遥感影像总的云区域和云阴影区域。
在光谱反射特性研究的基础上,技术人员将各种信息相结合,发展出了基于空间纹理特征的方法、基于地理信息的方法以及多时相遥感数据结合的方法,这些方法在特定应用条件下提高了云和云阴影的检测精度。然而,上述方法多适用于具有多波段信息的遥感数据,对于一些高分辨率的遥感卫星传感器,其获取的数据中往往可利用波段信息较少,影响了上述方法的应用效果,导致检测精度不足。此外,在复杂气候条件和复杂地表覆盖场景下,由于所处位置、纹理形状等特点不同,云层又分化出多种不同类型,每种类型的云表现出不同的光谱和图像特征,进一步加大了检测难度。对云阴影的检测而言,从光谱上看,云阴影与暗像元地物具有相似的光谱特征,极易与水体等地物混为一体,难以区分,加上云阴影在地表的光谱反射特征和亮度温度特征具有可变性,导致遥感影像中云阴影检测存在诸多不确定性,进而导致云阴影的准确检测相对而言更加具有难度。
随着计算机视觉技术的飞速发展,深度学习模型被应用到云和云阴影检测过程,目前已经能够高效准确地提取遥感影像中的地物特征,由于其不再过度依赖于遥感影像的物理特征和纹理信息,且在提升检测精度的同时省去了传统机器学习算法中大量的人工干预操作,使得该方法在云和云阴影检测任务中成为了研究热点。
总而言之,现有云和云阴影检测方法可以大致分为三类:(1)基于光谱阈值方法:该方法通过对图像的各个波段特性进行研究,在各波段信息的相互作用下,不同表现出互异的光谱反射特征,对多通道的光谱数值进行阈值划分,分割出不同地物的所处区域,进而实现对云和云阴影的检测。其具有计算简单、监测效率高等优点,然而其过于依赖光谱信息,对不同应用场景尤其是复杂场景下鲁棒性不足,精度交底,且,由于该方法需要针对不同的卫星载荷设定不同的光谱阈值,即使是同一种卫星载荷在不同的观测条件其阈值也不尽相同,且需要大量的人工判读和参数调整,才能实现较为精确的识别与检测,因此适用性十分有限;(2)基于经典机器学习的方法:该方法以图像的纹理、亮度等特征信息作为分析因素,结合筛选、调参等人工干预操作,对经典机器学习模型进行训练,模型会依据人工选择的参数变量对图像进行逐像素的计算分类,实现云和云阴影的检测,然而该方法需要大量的参数干预,且云特征本就复杂多变,在光学遥感图像上更是突出了这一特点,因此云层的特征分布缺乏代表性,使用纹理差异进行云和云阴影检测尚存在一定难度。部分改进的基于纹理特征的云检测算法尝试着减弱或消除特征差异,但由于训练过程十分耗费资源,大大加重了分类器的工作负担,使得遥感影像数据在特征提取方面还存在着许多不足;(3)基于深度学习的方法:该方法由于训练模型的巧妙设计,弥补了特征提取方面的缺陷,拥有了处理海量遥感图像数据的能力。通过构建深层的神经网络模型来自动提取数据特征,避免了人工干预造成的参数错误和资源浪费问题,其模型参数通过网络迭代训练获取,且经过网络训练能够充分挖掘影像中的特征,高效完成遥感影像的云检测,然而深度学习模型均需要使用监督学习来进行训练,需要人工进行大量的像素级标注,十分耗费人力。
为解决上述问题,本申请实施例提供一种基于物理特征与深度学习模型的云和云阴影联合检测方法,该方法使用深度学习模型对云和云阴影特征进行分层训练和预测,通过三分类和二分类的预测结果以及基于物理特征的检测结果进行多层判断,在判断过程中综合考虑更多的特征信息细节,从而增强了检测模型的泛化性和鲁棒性,提升了云和云阴影检测的整体精度,尤其是提升了云阴影的检测精度。
下面将参考附图并结合实施例来详细说明本申请。各个示例通过本申请的解释的方式提供而非限制本申请。实际上,本领域的技术人员将清楚,在不脱离本申请的范围或精神的情况下,可在本申请中进行修改和变型。例如,示为或描述为一个实施例的一部分的特征可用于另一个实施例,以产生又一个实施例。因此,所期望的是,本申请包含归入所附权利要求及其等同物的范围内的此类修改和变型。
本申请实施例提供一种基于物理特征与深度学习模型的云和云阴影联合检测方法,图1为根据本申请的一些实施例提供的基于物理特征与深度学习模型的云和云阴影联合检测方法的流程示意图;图2为根据本申请的一些实施例提供的联合检测过程示意图;图3为Swin-Unet网络结构示意图;图4为Swin transformer block结构示意图;图5为根据本申请的一些实施例提供的分类后云掩膜与云阴影掩膜的相对位置示意图;图6为根据本申请的一些实施例提供的确定云阴影区域与云区域的成像几何关系过程示意图。
参考图1、图2,可以理解地,图1、图2所示的步骤可以由各种电子设备执行,例如可以是带有联合检测功能的专用终端、电子设备或者电子设备集群。下面针对图1示出的步骤进行详细说明。
步骤S101、获取研究区域的待检测遥感影像。
研究区域可以为任意地理空间范围内的区域,可以是行政区划确定的区域,比如一个省、市级区域、县级区域等,也可以是地图上任意绘制的区域,本实施例对研究区域的范围、确定方式不予限定。为保证深度学习模型的泛化性,在选取研究区域时,应选取包含多场景的区域,比如裸地、植被、沙漠、城市以及水体等地表类型的地区,以使深度学习模型能够在训练过程中学习到多种复杂场景的特征。
其中,待检测遥感影像为包含云和云阴影的遥感影像。
在本发明的一些实施例中,为提高分辨率以提高检测精度,待检测遥感影像为高分一号卫星(GF-1)上获取的高分辨率影像数据集。同时,搜集高分一号卫星上含有云和云阴影的影像数据集作为对应的标签数据,可以使用公开的云和云阴影数据集作为深度学习模型训练所需的标签数据。若研究区域范围内无合适的数据集,可以搜集高分一号卫星的原始数据,在利用ENVI、Labelme、Photoshop等软件工具,对原始数据进行掩膜勾选,从而制作出训练所需的包含云和云阴影的标签数据(即标签文件),在制作过程中应保证标签数据的准确度。
在获取待检测遥感影像之后、使用深度学习模型对待检测遥感影像分别执行二分类检测和三分类检测之前,还包括:利用高分一号卫星影像构建多层分类的云和云阴影检测数据集。
其中,云和云阴影检测数据集包括三分类数据集和二分类数据集,三分类数据集的标签数据中标注有云和云阴影分类目标;二分类数据集包括云数据集和云阴影数据集,云数据集的标签数据中标注有云目标;云阴影数据集中标注有云阴影目标。
基于多层分类的云和云阴影检测数据集,对深度学习模型进行训练,得到训练完成的深度学习模型。
在本发明的一些实施例中,利用高分一号卫星影像构建多层分类的云和云阴影检测数据集,可以通过以下方式实现:对高分一号卫星影像进行灰度值重注和切片处理,得到切片数据;将包含NoValue值像元的切片从切片数据中删除;计算切片数据中每一切片的云和云阴影含量,将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集。
在本实施例中,在对高分一号卫星影像进行灰度值重注和切片处理之前,还包括对所获取的数据集进行预处理操作,具体步骤包括:几何/正射校正、辐射定标、大气表观反射率计算。具体操作如下:
(1)几何/正射校正:若从高分一号获取的影像数据为L1A级产品,则需要使用ENVI或Arcgis等软件对影像先进行正射校正,利用影像的RPC参数和DEM高程数据,消除地形等因素的影响。然后进行投影坐标系转换,即从UTM坐标系转换成WGS84坐标系。最后,对影像进行地理坐标定位,通过人工选点或自动校正工具进行几何精校正。若影像数据为高级产品,则无需进行几何/正射校正处理。
(2)辐射定标与大气表观反射率计算,具体包括:将高分一号卫星传感器记录的原始像元亮度值(Digital Number,DN值)转换为表观反射率。中国资源卫星应用中心网站提供了2008年到2022年的国产卫星绝对辐射定标系数,利用定标系数对DN值进行线性计算,得到辐射亮度值L,其计算公式如下:
L=Gain*DN+Bias (1)
式中,L为辐射亮度值,单位:W/cm2.μm.sr(瓦特/平方厘米.微米.球面度);DN为亮度值,Gain是增益值,Bias是偏移量,其中,Gain和Bias参数从定标系数文件中获取。
在根据公式(1)计算得到辐射亮度值L之后,可以进一步计算出大气表观反射率(Top of Atmosphere Reflectance,TOA)。具体计算公式如下:
式中,ρ表示大气表观反射率,L是辐射亮度值,d是日地天文单位距离,一般取值为1;E是太阳辐照度,每个波段对应不同的E;θ是太阳天顶角,每景影像的太阳天顶角可以在对应的XML文件中获取。
由于TOA是飞行在大气层之外的卫星传感器量测的反射率,其包含了云层、气溶胶和气体的贡献,故,将像元值转换为表观反射率,能够为深度学习模型提供更多的有效特征信息,以增强模型的性能。
本实施例中,对高分一号卫星影像进行灰度值重注和切片处理,得到切片数据,可以通过如下具体方式来实现:首先,若标签文件中下垫面、云阴影和云的数值标注不符合深度学习模型训练要求,则进行灰度值重注,将三类像元对象的数值修改为0、1、2,然后分别制作二分类和三分类标签数据,即,在三分类的标签数据中,将下垫面(背景)、云阴影和云像元值分别赋为0、1、2;二分类的标签数据又分为云标签数据和云阴影标签数据两种,在云标签数据中,将下垫面和云像元分别赋值为0、1,在云阴影标签数据中,下垫面和云阴影分别赋为0、1。然后,对获取的待检测遥感影像以及对应的标签数据进行切片处理,将其处理为能够进行深度学习模型训练的512×512大小的切片。在此过程中需要注意切片的命名规范,以便待检测遥感影像的切片与标签数据的切片能够一一对应。
在一些具体的实施例中,为提高训练数据的质量,在进行切片处理之后还包括对切片数据进行多重筛选处理。由于高分一号卫星影像中存在无意义值(NoValue值)像元形成的黑色边界,因此,在灰度值重注的基础上舍弃所有包含NoValue值像元的切片,即将其从切片数据中删除,以避免其对训练或者验证过程产生负面影响,此为第一重筛选。此外,为防止训练数据存在过多的负样本,还需要进行第二重筛选,即计算切片数据中每一切片的云和云阴影含量,并将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集。其中,第二预设阈值范围用于对云和云阴影含量取值范围进行限定,优选地,第二预设阈值范围限定在15%~85%之间。同时,由于标签数据的准确程度直接影响着深度学习模型的性能,本实施例还包括对标签数据进行人工目视筛选,即第三重筛选,从而利用人工目视筛选的方法对一些具有明显错误标注的标签数据切片及其对应的影像切片进行剔除,得到最终的可用于深度学习模型训练的多层分类的云和云阴影检测数据集。
为进一步保证深度学习模型的训练效果,在本发明的一些实施例中,将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集之后,还包括:对切片数据进行数据增强处理,以扩展深度学习模型的训练样本。具体而言,由于从高分一号卫星获取的每一景遥感影像数据中云和云阴影含量不同,若使用云、云阴影含量较低的遥感影像对深度学习模型进行训练,会对训练效果造成负面影响。为保证训练数据中具有足够的训练样本量,且训练样本中正负样本符合合理的比例,在多重筛选之后还包括对切片数据进行数据增强处理的步骤,即通过缩放、旋转、加入噪声以及改变色域等方式进行样本扩充。本实施例中,由于多重筛选之前的切片数据包含大量无效数据,将数据增强处理安排在多重筛选之后进行,避免对大量无效数据进行数据增强处理导致的效率低下问题,提升了预处理的效率。
一些具体的实施方式中,以图像翻转处理和图像旋转处理为例进行详细说明。对切片数据进行图像翻转处理和图像处理,可以通过如下具体方式实现:首先,通过GDAL(Geospatial Data Abstraction Library,GDAL)库读取影像并获取影像的各个波段信息;然后通过生成随机数的方式判断是否需要对当前切片进行数据增强处理,即是否需要进行数据变换操作以及如何进行数据变换。需要注意的是,上述数据变换需要对高分一号的四个波段进行同步处理,以保持数据一致性。
具体地,对于图像翻转处理,生成第一个0到1的随机数,若随机数大于0.5,则对当前切片进行上下翻转操作;生成第二个随机数,若随机数大于0.5,则再次对影像进行左右翻转操作,至此,得到当前切片进行翻转处理后的扩充样本。对于图像旋转处理,生成一个0到1的随机数,若随机数处于[0,0.33),则对影像进行顺时针45度旋转操作,若随机数处于[0.33,0.66),则对影像进行顺时针90度旋转操作,若随机数处于[0.66,1],则对影像进行顺时针135度旋转操作,至此,得到当前切片进行旋转处理后的扩充样本。由于旋转处理后的扩充样本图像存在黑边区域,因此,用当前切片影像中的下垫面像元对黑边区域的像元进行填充,被填充处理的数据包括影像以及影像对应的标签文件。
其中,GDAL是开源的地理空间数据处理库,能够方便、快捷地读取、写入和操作各种地理空间数据格式,从而提高样本扩充效率。
同理,使用相同的方法对当前切片进行噪声点添加操作和色域变换操作,以扩充样本。由此,通过随机对切片数据(训练样本)进行不同的变换,提升模型的训练能力,提高模型的鲁棒性。
需要注意的是,切片数据包括待检测遥感影像对应的切片以及标签数据对应的切片,在进行缩放、旋转、加入噪声以及改变色域等数据增强处理时,需对待检测遥感影像对应的切片以及相应的标签数据切片进行相同的变换操作,以确保每个像素点的分类不会因为影像的变换造成错误。
对数据增强处理后的切片数据(包括待检测遥感影像对应的切片和标签数据对应的切片)进行数据集构建,将切片数据按9:1的比例划分为训练数据集和验证数据集,训练数据集与验证数据集相互独立,不存在交叉关系。同时基于灰度值重注步骤得到的结果,构建两层级的数据集,第一层用于深度学习模型的三分类,标签数据中标注出了背景像元(属于下垫面的像元)以及云和云阴影两类目标;第二层用于二分类,标签数据分为两组,一组只标注出云目标和背景像元,另一组只标注出云阴影目标和背景像元,由此得到适用于深度学习模型的多层分类的云和云阴影检测数据集。
步骤S102、使用深度学习模型对待检测遥感影像分别执行二分类检测和三分类检测,对应得到二分类检测结果和三分类检测结果。
在本发明的一些实施例中,深度学习模型为基于Transformer架构的Swin-Unet模型;基于多层分类的云和云阴影检测数据集,对深度学习模型进行训练,得到训练完成的深度学习模型,可以通过以下方式实现:利用多层分类的云和云阴影检测数据集对Swin-Unet模型进行二分类和三分类的分层训练,对应得到二分类云检测模型、二分类云阴影检测模型以及三分类检测模型。
本实施例的目的在于构建基于多级分类的Swin-Unet模型,利用上一步骤处理好的训练数据集和验证数据集,对模型进行训练及参数更新,建立基于高分一号卫星数据的云和云阴影检测模型。
本实施例中,深度学习模型为基于Transformer架构的Swin-Unet模型构建。传统的深度学习模型大多数使用卷积运算进行特征提取,由于卷积运算固有的局限性,基于卷积神经网络(CNN)的方法很难学习显式的全局和长期语义信息交互,为此,本实施例引入纯Transformer架构模型Swin-Unet构建深度学习模型,其通过使用Swin Transformer模块来代替传统深度学习模型的卷积操作,并保留U-Net模型中的U型网络架构,有效解决了卷积神经网络无法捕捉长距离特征及Transformer难训练的问题。
为了便于理解,下面对基于Transformer架构的Swin-Unet模型进行详细说明。
图3示出了Swin-Unet的网络结构。参考图3,Swin-Unet模型整个网络结构分为编码器(Encoder,左侧部分)、解码器(Decoder,右侧部分)以及跳跃连接(Bottleneck,中间跨线部分)三个部分。Swin Transformer通过滑动窗口解决了传统架构难以处理的密集预测任务,移位窗口通过将自注意力计算限制在不重叠的局部窗口的同时,还允许跨窗口连接来提高效率。
在编码器,待检测遥感影像切片经数据增强处理(Network Enhancement)后,先通过Patch拆分(patch partition)模块,其将输入的H×W×C的影像拆分成为互不重叠的等尺寸的P×P×C的分块,每一个分块都被视为一个patch token。其中,H=Hight,即输入数据的高度,W=Width,即输入数据的宽度,C=Channels,即输入数据的通道数,本实施例中,H、W、C取值为GF-1数据对应的512、512、4,P为4。故,每个切片(也叫分块)展开后的特征维度为P×P×C=4×4×4=64,patch token的个数为
具体地,每景H×W×C的影像被处理成了个patch,每个patch展开为64维的token向量,整体为一个/>维的patch序列。线性嵌入层(Linear Embedding)将此时维度为/>的张量投影到维度C,得到维度为/>的数据块,再将这些数据块依次投入经过多个具有改进自注意力的Swin Transformer blocks,第一个SwinTransformer block模块保持相同的输入输出tokens数,即/>随着网络层的加深,tokens数随着Patch合并层(Patch Merging)的使用而被减少。首个Patch合并层拼接了每组2×2个相邻的patch,因此patch token数变为原来的/>即/>而patch token的维度扩大4倍成4C,对4C维的patch拼接特征再使用一个线性嵌入层,将输出维度降为2C。然后使用Swin Transformer blocks进行特征转换,其分辨率保持/>不断重复此操作,以改变张量维度,用于后续特征信息提取。
解码器部分和编码器部分具有对称结构,逻辑类似。解码器由多个SwinTransformer模块和patch扩张层(Patch Expanding)组成。patch扩张层将输入该层的特征图分辨率扩大两倍,将特征维数降低到输入维数的四分之一,再经过多个SwinTransformer blocks,不断重复。最后一个patch扩张层会将特征图扩充至4倍分辨率,用于将特征图还原成原图尺寸。最后通过线性映射层(Linear Projection)进行像素级别的预测,判断被预测的像素点是否属于云或云阴影。
编码器和解码器中间由Bottleneck部分链接,该部分用两个连续的SwinTransformer block,防止网络太深不能收敛。在Bottleneck中,特征尺寸保持不变。
编码器和解码器中间的连接线表示跳跃连接Skip Connection),用于将来自编码器的多尺度特征与上采样特征融合,以级联的方式将特征图输送到解码器来融合多尺度特征,以弥补降采样造成的空间信息丢失。
图4示出了Swin Transformer block模块结构,如图4所示,Swin Transformerblock模块包括层归一化模块(LN)、基于窗口的多头自注意力模块(Window-based Multi-head Self-Attention,W-MSA)、基于移动窗口的多头自注意力模块(Shifted Window-based Multi-head Self-Attention,SW-MSA)和多层感知器(Multi-Layer Perceptron,MLP),则Swin Transformer block模块可以用下列公式来表示:
式中,和zl分别表示第l个W-MSA模块和MLP模块的输出。
将多层分类的云和云阴影检测数据集输入到具有上述结构的Swin-Unet模型中进行二分类和三分类的分层训练,采用分级训练的方式,对应得到二分类云检测模型、二分类云阴影检测模型以及三分类检测模型。
传统的Swin-Unet模型只适用于RGB三通道图像,为此,本实施例对输入参数进行调整,以适用于四通道的TIFF格式影像文件。具体地,模型训练的过程分为二分类、三分类两种层级,根据输出结果的不同,二分类又分为针对云的二分类和针对云阴影的二分类,最终对应得到二分类云检测模型、二分类云阴影检测模型以及三分类检测模型。
对于三分类层级的训练,网络分析与提取了云和云阴影两种类别的目标特征信息,考虑了多种目标间的特征关系;对于二分类层级的训练,具体分为云检测和云阴影检测,网络分析与提取了某单一类别的目标特征信息,重点考虑了该目标区别于其他类别的特征信息,由于三分类与二分类侧重的信息特征不同,为后续联合检测保留了更多、更细致的分类特征,提高了联合检测的精度。
模型的训练使用AdamW优化器(自适应梯度方法),并在训练过程中同时利用了一阶和二阶矩均值,一阶矩估计的指数衰减率为0.9,二阶矩估计的指数衰减率为0.999。模型基础学习率设置为1e-3,学习率下降方式采用cos方式,衰减率为0.1。Window_Size设置为16,该数值由输入深度学习模型的影像大小决定。二分类的损失函数由Dice Loss和BinaryCross Entropy Loss两部分组成,Binary Cross Entropy Loss是二分类交叉熵损失;Diceloss将语义分割的评价指标作为Loss,Dice系数是一种集合相似度度量函数,通常用于计算两个样本的相似度,取值范围在[0,1]。三分类的损失函数由Dice Loss和Cross EntropyLoss两部分组成。利用AdamW优化器进行参数更新,利用最优训练结果多次训练,得到训练完成的深度学习模型。此外,训练过程中国年还可以包括预训练的步骤,可以将训练过程中最好的模型权重作为新一次训练的预权重。
使用深度学习模型对待检测遥感影像分别执行二分类检测和三分类检测,对应得到二分类检测结果和三分类检测结果。也就是将处理好的数据集分别放入训练好的深度学习模型(包括二分类云检测模型、二分类云阴影检测模型以及三分类检测模型)进行云和云阴影检测,输出逐像元的预测数据,即二分类检测结果和三分类检测结果。
以某一景数据高分一号影像作为待检测遥感影像为例,将待检测遥感影像根据分类标准划分为二分类影像A和三分类影像B,A影像是基于单一类别云进行的特征分析与提取,只重点考虑了云目标像元,B影像是基于云和云阴影两类目标进行的特征分析与提取,A影像和B影像的像元位置一一对应,仅在像元值上有所区别,且像元值可以用某一数值为界限进行划分即可得到云检测结果。一景影像经过深度学习模型的预测得出对应的两景预测结果影像,预测结果影像中的每一个像元取值为预测概率,对于二分类检测结果,数值大于等于1的像元被定义为云或云阴影,小于1的像元被定义为晴空;对于三分类检测结果,数值大于等于2的像元被定义为云,数值大于等于1且小于2的像元被定义为云阴影,数值小1的像元被定义为晴空。
步骤S103、利用光谱阈值法,基于待检测遥感影像的物理特征进行云和云阴影检测,得到云和云阴影的掩膜结果。
在本发明的一些实施例中,待检测遥感影像的物理特征包括HOT指数、VBR指数和NDVI指数;利用光谱阈值法,基于待检测遥感影像的物理特征进行云和云阴影检测,得到云和云阴影的掩膜结果,可以通过以下方式实现:计算待检测遥感影像对应的HOT指数、VBR指数和NDVI指数;利用光谱阈值法,基于HOT指数和VBR指数对待检测遥感影像进行云检测,得到云掩膜结果;基于NDVI指数对待检测遥感影像进行云阴影检测,得到云阴影检测结果;使用导向滤波(Guided Filtering)算法分别对云掩膜结果和云阴影检测结果进行边缘修正,得到云和云阴影的掩膜结果。
本步骤的目的在于基于物理特征对待检测遥感影像对应的切片(512×512)进行云和云阴影的粗检测。首先使用经典光谱阈值法来计算出粗略的云和云阴影掩膜,云的粗检测使用HOT指数和VBR指数,云阴影的粗检测使用NDVI指数。具体公式如下:
HOT=B1-0.5×B3,
式中,B1、B2、B3、B4分别为高分一号WFV影像的蓝波段、绿波段、红波段、近红外波段数据。
然后基于光谱阈值法对HOT指数和VBR指数、NDVI指数设置阈值范围,比如,云的粗检测的阈值为HOT>0.25且VBR>0.75,阴影粗检测的阈值为NDVI<0.15且B4<0.15,上述阈值范围可以基于GF-1WFV数据的经验阈值来确定。根据以上阈值,可以划分出云和云阴影目标像元,得到云和云阴影的掩膜结果。
云和云阴影的掩膜结果中,云阴影的掩膜结果一般只包含置信度较高的深黑色区域,无法准确检测出边缘区域(又称为过渡区域)像元,导致将过渡区域像元容易被错误分为背景像元。为了提高掩膜结果中云和云影边缘区域的检测精度,本发明的一些实施例中,还包括使用导向滤波进行边缘修正的步骤,即,通过导向滤波算法对过渡区域进行修正,云和云阴影掩膜结果中的云/云阴影区域边缘的浅黑色过渡区域进行修正。
进一步地,在对云/云阴影掩膜进行边缘修正时,由于云和云阴影的敏感波段以及深度范围存在差异,因此,导向滤波算法的输入以及参数设置有所不同。在云掩膜处理中,输入的导向图是可见光三个波段构成的平均值波段,滤波半径设为5;在云阴影掩膜处理中,输入的导向图是近红外波段,滤波半径设为3。
以云掩膜处理过程为例,导向滤波算法计算过程如下:
Step1:
meanI=fmean(I(x,y)),
meanK=fmean(K(x,y)),
corrI=fmean(I(x,y)*I(x,y)),
corrIK=fmean(I(x,y)*K(x,y)),
Step2:
varI=corrI-meanI*meanI,
covIK=corrIK-meanI*meank,
Step3:
a=covIK/(varI+ε),
b=meanK-a*meanI,
Step4:
meana=fmean(a),
meanb=fmean(b),
Step5:
Q(x,y)=meana*I(x,y)+meanb,
其中,I(x,y)为输入导向图;K(x,y)为输入滤波图像(云掩膜);ε为归一化参数,此处设为1e-6;r为滤波半径,此处设置为5;fmean为中值滤波器,采用无填充的方式。最后对计算出的Q(x,y)进行归一化处理,将大于等于1的值视为掩膜像元,将小于1的值视为背景像元,即可得到边缘修正后的云掩膜结果。
步骤S104、对待检测遥感影像中的每一像元,判断像元在二分类检测结果中的类别与像元在三分类检测结果中的类别是否相同;若不相同,则使用云和云阴影的掩膜结果与二分类检测结果对像元进行联合检测,得到像元的分类结果。
在本发明的一些实施例中,使用云和云阴影的掩膜结果与二分类检测结果对像元进行联合检测,得到像元的分类结果,可以通过以下方式实现:基于预设的权重系数,对云和云阴影的掩膜结果、二分类检测结果进行加权求和,得到加权求和结果;响应于加权求和结果符合第一预设阈值范围,将像元的分类结果确定为晴空,否则,则像元的分类结果确定为云/云阴影。
图2示出了本发明实施例联合检测的流程示意图,如图2所示,对于待检测遥感影像中的每一像元,首先,判断像元在二分类检测结果中的类别与像元在三分类检测结果中的类别是否相同,若相同,则将该类别作为该像元的分类结果。若不相同,则表明二分类检测结果与三分类检测结果出现不一致,存在分类错误的可能,因此,需要将深度学习模型的分类结果与基于物理特征的云和云阴影的掩膜结果进行联合检测,共同确定该像元所属类别。
具体来说,参考图2,对于待检测遥感影像中的每一像元,首先,判断该像元在三分类检测结果(即三分类结果)中的取值是否小于1,若是,则该像元在三分类结果的类别为晴空。进一步判断其在二分类检测结果(二分类结果)中的取值是否小于1,若是,则该像元在二分类结果的类别也为晴空,由此可以确定该像元的最终类别为晴空;若该像元在三分类结果中的取值大于2,则该像元在三分类结果的类别为云,接着判断其在二分类结果中的取值是否大于等于1,若是,则该像元在二分类结果的类别也为云,由此可以确定该像元的最终类别为云;若该像元在三分类结果中的取值为大于等于1小于2,则该像元在三分类结果的类别为云阴影,若在二分类结果中的类别也为云阴影,则确定该像元的最终类别为云阴影。若该像元在三分类结果的类别为云/云阴影,在二分类结果中的类别为晴空,或者,该像元在三分类结果的类别为晴空,在二分类结果中的类别为云/云阴影,则通过联合检测以及加权求和的方式确定该像元的分类结果。
由于基于深度学习模型的二分类检测结果更聚焦于单一目标的数据特征,且符合该深度学习模型的最初设定情况,因此其训练与检测效果理论上更佳,故在部分判断节点以二分类的检测结果为主要判断依据,在加权求和时,也赋予二分类结果更大的权重。其中,云和云阴影的掩膜数据都仅包含0(晴空)和1(云或云阴影)。
在本发明的一些实施例中,加权求和时,云和云阴影的掩膜结果的权重系数取值为0.2,二分类检测结果的权重系数取值为0.8,由此计算得到加权就和结果。然后对加权求和结果进行判断,若其符合第一预设阈值范围,比如大于等于1,则确定该像元的分类结果为云,小于1则确定该像元的分类结果为晴空。
经过上述联合检测,待检测影像中所有像元都被识别为云、云阴影或者晴空像元,即得到像元的分类结果。其中,分类结果为云的相邻像元组成云掩膜(也称为云区域),分类结果为云阴影的相邻像元组成云阴影掩膜(也成为云阴影区域),其余为背景像元。
需要说明的是,由于云阴影的光谱特征与水体、地形阴影非常相似,导致联合检测后仍有可能存在云阴影检测错误的情况,为了进一步提高云阴影检测精度,在本发明的一些实施例中,在使用云和云阴影的掩膜结果与二分类检测结果对像元进行联合检测,得到像元的分类结果之后,还包括:将分类后的像元组成的切片进行拼接,得到整个研究区域的云掩膜影像和云阴影掩膜影像;根据预先获取的太阳天顶角、太阳方位角、观测天顶角、观测方位角,计算云掩膜影像和云阴影掩膜影像中云区域与云阴影区域的相对方位角;对云阴影掩膜影像中的任一个云阴影区域,根据相对方位角,确定云阴影区域与在相对方位角方向上距离最近的云区域的成像几何关系;响应于成像几何关系满足预设条件,将云阴影区域从云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像。
本步骤的目的在于对联合检测得到的分类结果中的云阴影掩膜进行计算判断,结合云和云阴影的成像几何关系确定云阴影区域是否为错分,从而对整景影像中的云阴影进行过滤,将错误的分类剔除,形成最终云阴影掩膜。
由于联合检测是基于切片数据进行,而切片数据切分开了云和云阴影部分,不能完整的包含云和云阴影的分布关系(包括位置角度关系、成像几何关系),因此,需要对一景的切片数据进行拼接,重新组成整个研究区域的云掩膜影像和云阴影掩膜影像,以更好地计算出云与云阴影之间的成像几何关系。
其中,影像中的云与云阴影位置角度关系和太阳天顶角、太阳方位角、观测天顶角、观测方位角有关,这四个参数可以从GF-1影像数据对应的XML文件中获取,云区域与云阴影区域的相对方位角θ的计算公式如下:
式中,α是太阳方位角,β是太阳天顶角,ω是观测方位角,μ是观测天顶角。遥感影像中云阴影分布在云与云阴影之间的相对方位角方向上,与云的距离可以通过云的高度近似估算,以此确定云阴影可能存在的区域。
实际中,研究区域范围内可能存在多个云阴影区域,将所有云阴影区域看作集合τ,即集合其中,n表示云阴影区域的总数,/>表示第1个云阴影区域,表示第2个云阴影区域,以此类推。在云阴影区域与在相对方位角方向上距离最近的云区域的成像几何关系时,以云阴影区域为主体,沿着相对方位角的方向查找距离最近的云区域,若二者的成像几何关系满足预设条件,比如成像图形完全重合,或者成像图形重合度大于重合度阈值,则认为该云阴影区域判断正确,否则,该云阴影区域可能是水体、山体阴影等其他地表类型,应当将其从云阴影掩膜影像中剔除。
具体地,根据相对方位角,确定云阴影区域与在相对方位角方向上距离最近的云区域的成像几何关系,响应于成像几何关系满足预设条件,将云阴影区域从云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像,可以通过以下方式实现:对云阴影区域中的每一个云阴影像元,使用预设窗口值和预设步长的滑动窗口,沿相对方位角的方向查找距离当前云阴影像元距离最近的云像元,并记录云像元相对于云阴影像元的相对位移值;基于相对位移值对云阴影区域进行整体平移操作,并将平移后的云阴影区域与云掩膜影像进行叠置操作,以计算出平移后的云阴影区域与云掩膜影像中所有云像元重合的面积相对于云阴影区域的面积的比例;响应于比例小于预设的面积比例阈值,将云阴影区域从云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像。
图5示出了云阴影掩膜与云掩膜的成像几何关系示意图,图6为成像几何关系确定过程示意图。如图5、图6所示,设定滑动窗口的窗口值为3*3像元,步长(step)为4个像元,表示第1个云阴影区域,对于/>中的每一个云阴影像元,比如像元X1,沿相对方位角的方向滑动4个像元,到达像元a1的位置,然后以像元a1为中心,3*3像元滑动窗口形成的A1区域为判断对象,若A1区域内不存在云像元,则继续滑动4个像元,到达像元a2的位置,此时,滑动窗口内存在云像元,则确定像元a2为距离当前云阴影像元X1距离最近的云像元,记录像元a2相对于像元X1的相对位移值S1,即S1=8个像元,然后继续查找/>中下一个云阴影像元(比如像元X2)沿相对方位角的方向距离最近的云像元并记录相对位移值,直到/>中每一个云阴影像元均记录有相对位移值,停止迭代。
需要说明的是,在沿相对方位角的方向查找距离当前云阴影像元距离最近的云像元的过程中,为避免相对方位角的计算结果与真实情况可能存在差异导致的误差,本实施例中引入了滑动窗口来查找云像元,也就是说,在沿相对方位角的方向查找云像元的过程中,不以单个像元是否为云像元作为判断依据,而是以整个滑动窗口范围内是否有云像元来确定与云阴影像元距离最近的云像元,从而提高了判断准确度。
在中每一个云阴影像元均记录有距离最近的云像元的相对位移值后,沿着相对方位角的方向对云阴影区域/>进行整体平移操作,并将平移后的云阴影区域与云掩膜影像进行叠置操作,以计算出平移后的云阴影区域与云掩膜影像中所有云像元重合的面积相对于云阴影区域的面积的比例,也就是计算出平移后的云阴影区域内平均存在云像元的概率,若该比例小于预设的面积比例阈值,比如小于50%,则舍弃云阴影区域/>将其重新定义为晴空区域,否则保留云阴影区域/>换而言之,若云阴影区域/>整体平移后与对应的云区域的重叠度大于50%,则保留,否则,说明该云阴影区域没有云区域与之相对应,其分类结果可能为错判,应当将其舍弃,即将其定义为晴空。
进一步地,由于云阴影区域与云区域具有成像几何关系,大多数情况下,云阴影区域内各个像元的相对位移值相同,为了提高计算效率,在获得云阴影区域的像元X1的相对位移值S1后,查找下一个云阴影像元X2的相对位移值时,直接将像元X2沿相对方位角的方向平移S1个像元,将平移后的位置作为滑动窗口A2的中心像素,计算滑动窗口A2内是否存在像元X2对应的云像元,若是,则记录像元X2的相对位移值为S1,采用相同的步骤继续迭代确定下一个云阴影像元X3的相对位移值,直到云阴影区域/>所有云阴影像元均记录有相对位移值为止。
在前述步骤的基础上,倘若将像元X2沿相对方位角的方向平移S1个像元后确定的滑动窗口A2内不存在像元X2对应的云像元,则将像元X2进行标记,继续迭代确定下一个云阴影像元X3的相对位移值,即,将像元X3沿相对方位角的方向平移S1个像元,确定的滑动窗口A3内是否存在像元X3对应的云像元,若不存在云像元,则对像元X3进行标记,继续对下一个云阴影像元X4进行迭代,直到连续标记的像元达到预设标记阈值,比如连续100个像元被标记或者连续被标记的像元数量超过云阴影区域总像元数量的30%,则说明沿相对方位角的方向平移S1个像素所到达的云区域并不是形成云阴影区域的云。此时,返回到云阴影区域/>的第一个像元X1,以现有相对位移值S1为基准重新确定像元X1的相对位移值。具体地,首先将像元X1沿相对方位角的方向平移S1个像元,然后,采用步长=4沿相对方位角的方向滑动,到达新的像元位置,对应的像元记为a11,以像元a11为中心,3*3像元滑动窗口形成的A11区域为判断对象,确定该区域内是否存在云像元,若是,则重新记录像元X1的相对位移值为S11,即S11=S1+4个像元。当查找云阴影区域/>的第二个云阴影像元X2的相对位移值时,直接将像元X2沿相对方位角的方向平移S11个像元,将平移后的位置作为滑动窗口A22的中心像素,计算滑动窗口A22内是否存在像元X2对应的云像元,若是,则记录像元X2的相对位移值为S11,以此类推,直到云阴影区域/>的云阴影像元均记录有距离最近的云像元的相对位移值,由此完成云阴影区域/>的判断。
由于同一景待检测遥感影像中云和云阴影的相对距离(即相对位移值)仅在一定范围内浮动,为进一步提高计算效率,当云阴影区域判断完成后,将云阴影区域/>的云阴影像元的相对位移值记为S11,则对同一景待检测遥感影像中的其他云阴影区域/>进行判断时,若云阴影区域/>中云阴影像元的相对位移值S22小于2倍的S11,则计算S11和S22的平均数,记为S0,对/>后的云阴影区域/>若其云阴影像元的相对位移值SX小于2倍的S0,则取前S11至SX的平均数,记为S0,否则舍弃/>区域,将其定义为晴空区域。
综上所述,本申请实施例提供的方法中,对高分一号卫星WFV传感器数据进行云和云阴影检测,通过多层分类数据集的构建以及基于物理特征和深度学习模型的联合检测,构建了Swin-Unet模型在高分辨率遥感影像中的检测模型。该方法对于现有云和云阴影检测的改进之处在于最终检测过程结合了遥感影像的物理特征与深度学习模型进行多层分类,使得检测流程却更为完善,考虑了更多检测细节,避免了因深度学习模型训练不足或物理特征分析过于依赖经验而导致最终检测错误的情况,强化了检测模型的针对性和泛化性,提升了复杂场景下的云和云阴影检测能力,尤其是云阴影,提高了云和云阴影的整体检测精度。
通过上述实施例,本申请提供的方法实现了分级训练数据集的制作,整套流程完善,通过完整的预处理以及数据增强,能够解决深度学习模型训练缺少样本和样本质量较差的问题。通过对云和云阴影进行联合检测,避免了深度学习模型作为黑盒算法难以附加判断的问题,也避免了过多经验阈值导致的泛化性较差的问题,解决了云和云阴影检测整体精度不足的问题。
本申请实施例提供的方法可用于高分辨率遥感影像的分级训练数据集的制作,也可用于对已有数据集和自制数据集的完整的预处理、数据增强。通过阈值的设定,能够制作出一套质量较高的训练数据集。该方法基于物理特征和深度学习模型进行联合检测,且对于深度学习模型,使用了基于Transformer架构的Swin-Unet模型,进行了分层训练和预测,通过三分类和二分类的预测结果进行多层判断,综合考虑了更多的特征信息细节,增强了检测模型的泛化性和鲁棒性,提升了云和云阴影检测的整体精度,尤其是云阴影的检测精度。
以上所述仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种基于物理特征与深度学习模型的云和云阴影联合检测方法,其特征在于,包括:
获取研究区域的待检测遥感影像;所述待检测遥感影像为包含云和云阴影的遥感影像;
使用深度学习模型对所述待检测遥感影像分别执行二分类检测和三分类检测,对应得到二分类检测结果和三分类检测结果;
利用光谱阈值法,基于所述待检测遥感影像的物理特征进行云和云阴影检测,得到云和云阴影的掩膜结果;
对所述待检测遥感影像中的每一像元,判断所述像元在所述二分类检测结果中的类别与所述像元在所述三分类检测结果中的类别是否相同;若不相同,则使用所述云和云阴影的掩膜结果与所述二分类检测结果对所述像元进行联合检测,得到所述像元的分类结果。
2.根据权利要求1所述的方法,其特征在于,使用所述云和云阴影的掩膜结果与所述二分类检测结果对所述像元进行联合检测,得到所述像元的分类结果,具体为:
基于预设的权重系数,对所述云和云阴影的掩膜结果、所述二分类检测结果进行加权求和,得到加权求和结果;
响应于所述加权求和结果符合第一预设阈值范围,将所述像元的分类结果确定为晴空,否则,则所述像元的分类结果确定为云/云阴影。
3.根据权利要求2所述的方法,其特征在于,加权求和时,所述云和云阴影的掩膜结果的权重系数取值为0.2,所述二分类检测结果的权重系数取值为0.8。
4.根据权利要求1所述的方法,其特征在于,所述待检测遥感影像为高分一号卫星影像;
在获取待检测遥感影像之后、使用深度学习模型对所述待检测遥感影像分别执行二分类检测和三分类检测之前,还包括:
利用所述高分一号卫星影像构建多层分类的云和云阴影检测数据集;所述云和云阴影检测数据集包括三分类数据集和二分类数据集,所述三分类数据集的标签数据中标注有云和云阴影分类目标;所述二分类数据集包括云数据集和云阴影数据集,所述云数据集的标签数据中标注有云目标;所述云阴影数据集中标注有云阴影目标;
基于多层分类的云和云阴影检测数据集,对所述深度学习模型进行训练,得到训练完成的深度学习模型。
5.根据权利要求4所述的方法,其特征在于,所述深度学习模型为基于Transformer架构的Swin-Unet模型;
基于多层分类的云和云阴影检测数据集,对所述深度学习模型进行训练,得到训练完成的深度学习模型,包括:
利用所述多层分类的云和云阴影检测数据集对Swin-Unet模型进行二分类和三分类的分层训练,对应得到二分类云检测模型、二分类云阴影检测模型以及三分类检测模型。
6.根据权利要求5所述的方法,其特征在于,利用所述高分一号卫星影像构建多层分类的云和云阴影检测数据集,包括:
对所述高分一号卫星影像进行灰度值重注和切片处理,得到切片数据;
将包含NoValue值像元的切片从切片数据中删除;
计算所述切片数据中每一切片的云和云阴影含量,将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集。
7.根据权利要求6所述的方法,其特征在于,将云和云阴影含量落入第二预设阈值范围的切片从切片数据中删除,得到多层分类的云和云阴影检测数据集之后,还包括:
对所述切片数据进行数据增强处理,以扩展所述深度学习模型的训练样本。
8.根据权利要求7所述的方法,其特征在于,在使用所述云和云阴影的掩膜结果与所述二分类检测结果对所述像元进行联合检测,得到所述像元的分类结果之后,还包括:
将分类后的像元组成的切片进行拼接,得到整个研究区域的云掩膜影像和云阴影掩膜影像;
根据预先获取的太阳天顶角、太阳方位角、观测天顶角、观测方位角,计算所述云掩膜影像和所述云阴影掩膜影像中云区域与云阴影区域的相对方位角;
对所述云阴影掩膜影像中的任一个云阴影区域,根据所述相对方位角,确定所述云阴影区域与在所述相对方位角方向上距离最近的云区域的成像几何关系;
响应于所述成像几何关系满足预设条件,将所述云阴影区域从所述云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像。
9.根据权利要求8所述的方法,其特征在于,根据所述相对方位角,确定所述云阴影区域与在所述相对方位角方向上距离最近的云区域的成像几何关系,响应于所述成像几何关系满足预设条件,将所述云阴影区域从所述云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像,具体为:
对所述云阴影区域中的每一个云阴影像元,使用预设窗口值和预设步长的滑动窗口,沿所述相对方位角的方向查找距离当前云阴影像元距离最近的云像元,并记录所述云像元相对于所述云阴影像元的相对位移值;
基于所述相对位移值对所述云阴影区域进行整体平移操作,并将平移后的云阴影区域与所述云掩膜影像进行叠置操作,以计算出平移后的云阴影区域与所述云掩膜影像中所有云像元重合的面积相对于所述云阴影区域的面积的比例;
响应于所述比例小于预设的面积比例阈值,将所述云阴影区域从所述云阴影掩膜影像剔除,以得到最终的云阴影掩膜影像。
10.根据权利要求1所述的方法,其特征在于,所述待检测遥感影像的物理特征包括HOT指数、VBR指数和NDVI指数;
利用光谱阈值法,基于所述待检测遥感影像的物理特征进行云和云阴影检测,得到云和云阴影的掩膜结果,包括:
计算所述待检测遥感影像对应的HOT指数、VBR指数和NDVI指数;
利用光谱阈值法,基于HOT指数和VBR指数对所述待检测遥感影像进行云检测,得到云掩膜结果;
基于NDVI指数对所述待检测遥感影像进行云阴影检测,得到云阴影检测结果;
使用导向滤波算法分别对云掩膜结果和云阴影检测结果进行边缘修正,得到云和云阴影的掩膜结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310877228.8A CN117058557A (zh) | 2023-07-17 | 2023-07-17 | 基于物理特征与深度学习模型的云和云阴影联合检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310877228.8A CN117058557A (zh) | 2023-07-17 | 2023-07-17 | 基于物理特征与深度学习模型的云和云阴影联合检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117058557A true CN117058557A (zh) | 2023-11-14 |
Family
ID=88659778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310877228.8A Pending CN117058557A (zh) | 2023-07-17 | 2023-07-17 | 基于物理特征与深度学习模型的云和云阴影联合检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117058557A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117635646A (zh) * | 2023-11-22 | 2024-03-01 | 安徽省测绘档案资料馆(安徽省基础测绘信息中心) | 一种基于自适应阈值的多传感器影像云标签制作方法 |
CN118097433A (zh) * | 2024-04-22 | 2024-05-28 | 南昌工学院 | 基于深度学习的遥感图像处理方法及*** |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161584A1 (en) * | 2015-12-07 | 2017-06-08 | The Climate Corporation | Cloud detection on remote sensing imagery |
CN108319923A (zh) * | 2018-02-05 | 2018-07-24 | 山东科技大学 | 一种云阴影识别方法及*** |
WO2020015326A1 (zh) * | 2018-07-19 | 2020-01-23 | 山东科技大学 | 一种地表类型数据支持的遥感图像云阴影检测方法 |
US20200125844A1 (en) * | 2018-10-19 | 2020-04-23 | The Climate Corporation | Machine learning techniques for identifying clouds and cloud shadows in satellite imagery |
CN111797712A (zh) * | 2020-06-16 | 2020-10-20 | 南京信息工程大学 | 基于多尺度特征融合网络的遥感影像云与云阴影检测方法 |
CN114494821A (zh) * | 2021-12-16 | 2022-05-13 | 广西壮族自治区自然资源遥感院 | 基于特征多尺度感知与自适应聚合的遥感影像云检测方法 |
CN115690605A (zh) * | 2022-11-11 | 2023-02-03 | 西安电子科技大学芜湖研究院 | 基于空谱联合的多光谱遥感图像云检测方法 |
CN116052016A (zh) * | 2023-01-14 | 2023-05-02 | 南京信息工程大学 | 基于深度学习的遥感图像云和云影的精细分割检测方法 |
-
2023
- 2023-07-17 CN CN202310877228.8A patent/CN117058557A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161584A1 (en) * | 2015-12-07 | 2017-06-08 | The Climate Corporation | Cloud detection on remote sensing imagery |
CN108319923A (zh) * | 2018-02-05 | 2018-07-24 | 山东科技大学 | 一种云阴影识别方法及*** |
WO2020015326A1 (zh) * | 2018-07-19 | 2020-01-23 | 山东科技大学 | 一种地表类型数据支持的遥感图像云阴影检测方法 |
US20200125844A1 (en) * | 2018-10-19 | 2020-04-23 | The Climate Corporation | Machine learning techniques for identifying clouds and cloud shadows in satellite imagery |
CN111797712A (zh) * | 2020-06-16 | 2020-10-20 | 南京信息工程大学 | 基于多尺度特征融合网络的遥感影像云与云阴影检测方法 |
CN114494821A (zh) * | 2021-12-16 | 2022-05-13 | 广西壮族自治区自然资源遥感院 | 基于特征多尺度感知与自适应聚合的遥感影像云检测方法 |
CN115690605A (zh) * | 2022-11-11 | 2023-02-03 | 西安电子科技大学芜湖研究院 | 基于空谱联合的多光谱遥感图像云检测方法 |
CN116052016A (zh) * | 2023-01-14 | 2023-05-02 | 南京信息工程大学 | 基于深度学习的遥感图像云和云影的精细分割检测方法 |
Non-Patent Citations (1)
Title |
---|
邴芳飞等: "基于机器学习的遥感影像云检测研究进展", 遥感技术与应用, 28 February 2023 (2023-02-28), pages 129 - 142 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117635646A (zh) * | 2023-11-22 | 2024-03-01 | 安徽省测绘档案资料馆(安徽省基础测绘信息中心) | 一种基于自适应阈值的多传感器影像云标签制作方法 |
CN118097433A (zh) * | 2024-04-22 | 2024-05-28 | 南昌工学院 | 基于深度学习的遥感图像处理方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Eltner et al. | Using deep learning for automatic water stage measurements | |
CN112287807B (zh) | 一种基于多分支金字塔神经网络的遥感影像道路提取方法 | |
Wang et al. | Photovoltaic panel extraction from very high-resolution aerial imagery using region–line primitive association analysis and template matching | |
CN110728658A (zh) | 一种基于深度学习的高分辨率遥感影像弱目标检测方法 | |
KR100678395B1 (ko) | 위성영상과 항공영상을 이용한 지리정보 데이터의 실시간위치보정 시스템 및 그 방법 | |
CN107610164B (zh) | 一种基于多特征混合的高分四号影像配准方法 | |
CN117058557A (zh) | 基于物理特征与深度学习模型的云和云阴影联合检测方法 | |
CN111598098B (zh) | 一种基于全卷积神经网络的水尺水位线检测及有效性识别方法 | |
CN102622738B (zh) | 一种Landsat TM/ETM+图像中山体阴影区的光谱信息恢复方法 | |
CN113239830B (zh) | 一种基于全尺度特征融合的遥感图像云检测方法 | |
CN111008664B (zh) | 一种基于空谱联合特征的高光谱海冰检测方法 | |
Milani et al. | Robust quantification of riverine land cover dynamics by high-resolution remote sensing | |
Xiao et al. | Treetop detection using convolutional neural networks trained through automatically generated pseudo labels | |
CN115546656A (zh) | 一种基于深度学习的遥感影像养殖区域提取方法 | |
Li et al. | A new method for surface water extraction using multi-temporal Landsat 8 images based on maximum entropy model | |
Li et al. | Hybrid cloud detection algorithm based on intelligent scene recognition | |
CN113628180A (zh) | 一种基于语义分割网络的遥感建筑物检测方法及*** | |
Lv et al. | A novel spatial–spectral extraction method for subpixel surface water | |
CN112036246B (zh) | 遥感影像分类模型的构建方法,遥感影像分类方法及*** | |
Liang et al. | Automatic Pavement Crack Detection in Multisource Fusion Images Using Similarity and Difference Features | |
Atik et al. | Comparison of automatic feature extraction methods for building roof planes by using airborne lidar data and high resolution satellite image | |
Kulkarni et al. | Detecting, extracting, and mapping of inland surface water using Landsat 8 Operational Land Imager: A case study of Pune district, India | |
Sun et al. | High-resolution and multitemporal impervious surface mapping in the Lancang-Mekong basin with Google Earth engine | |
Yang et al. | A new framework for GEOBIA: accurate individual plant extraction and detection using high-resolution RGB data from UAVs | |
Yang et al. | Instance Segmentation of LIDAR Data with Vision Transformer Model in Support Inundation Mapping Under Forest Canopy Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |