本发明涉及光学遥感影像处理,具体来说是一种基于多尺度转换器和互惠的云检测与去除方法。
背景技术:
1、光学遥感影像具有丰富的光谱信息,较强的可解释性和良好的视觉效果,一直以来都是对地观测任务中不可或缺的信息来源。然而由于被动成像机制,其观测能力极易受到气候干扰,尤其是大气中的云层对遥感卫星传感器接收电磁波的阻碍带来的光学遥感影像信息缺失,影响数据的后续应用。因此,对获取的光学遥感影像进行云覆盖识别和缺失信息恢复是光学遥感影像处理中的重要环节。
2、在遥感影像处理中,云检测是实现云覆盖识别的一种重要手段。相比于传统基于光谱阈值和空间特征的云检测方法,现有基于深度学习的方法可以实现高精度的云检测,在复杂的地表场景中仍表现优异。此外,云去除能够恢复影像中因云覆盖造成的信息缺失,近些年来,卷积神经网络凭借强大的非线性拟合能力,成为遥感影像去云领域准确恢复地表信息的重要手段之一。云检测是云去除的必要步骤,同样云去除也能为检测带来一定程度的增益。但是,现有技术大多将云检测和云去除任务分开处理。
3、考虑到两个任务均需要对影像中云的特征高度关注,云检测和去除互惠关系的建立十分必要且具有可行性。深度神经网络的结构设计灵活,既可以充分提取影像的深层特征,也可以适应多种任务的不同需求。针对云检测与去云互惠任务而言,对于影像中云的特征与其余类云地物的区分至关重要,利用具有全局依赖特性的transformer结构能够加强关键特征的提取能力。同时,从遥感影像中准确检测出云的位置信息后,根据对云覆盖区域的无效像素和非云覆盖区域的有效像素加以区分,能够校正填充的光谱信息,优化恢复的纹理细节,得到更高质量的去云遥感影像。
技术实现思路
1、本发明的目的是为现有光学遥感影像云检测和去除方法存在互惠关系利用不充分问题,提供一种基于多尺度转换器和互惠的云检测与去除方法。
2、为了实现上述目的,本发明的技术方案如下:
3、一种基于多尺度转换器和互惠的云检测与去除方法包括以下步骤:
4、11)数据集构建:构建的适用于云检测与去除互惠任务的光学遥感影像数据集分为训练集、验证集和测试集,数据量分别为10000组,2000组和2000组,每组包含有云光学遥感影像,云掩膜标签和无云光学遥感影像三张尺寸为256×256的图像;挑选包括海洋、湖泊、山脉、城市、农田和沙漠在内六种地物类型的卫星影像数据,并对有云光学卫星影像和对应的无云光学卫星影像进行配准和辐射校正操作;在数据预处理操作中仅选择红、绿、蓝3个波段进行波段合成,不同光学遥感卫星的红、绿、蓝3个波段的波段名称不同,空间分辨率也有差异,但在数据预处理过程中将分辨率统一采样到10米;对有云光学遥感卫星影像,云掩膜标签和无云光学遥感卫星影像进行不重叠裁剪,裁剪为256×256固定大小的图像;
5、12)构建基于多尺度转换器的云检测与去除互惠模型:该模型分为两阶段,第一阶段模型采用多尺度转换器transformer结构构建特征提取器对云特征进行提取,利用提取到的特征预测云检测任务中的分割云掩膜和云去除任务中的粗略云去除结果;第二阶段模型整体采用卷积神经网络结构,进一步细化重建细节,获取更高质量云去除结果;
6、13)基于多尺度转换器的云检测与去除互惠模型训练:将获取的有云光学遥感影像作为输入,以与之配对的无云光学遥感影像和云掩膜标签作为参考对模型进行监督训练,迭代训练多次,保存最佳模型参数用于云检测与去除结果验证;
7、14)获取待处理有云光学卫星影像数据并进行云检测与去除处理:获取待处理有云光学卫星影像数据,进行辐射校正、波段合成和不重叠裁剪处理后输入已经训练好的模型,最终获取云检测与去除结果。
8、所述的构建基于多尺度转换器的云检测与去除互惠模型包括以下步骤:
9、21)基于多尺度transformer的云检测与去除互惠模型分为两个阶段,第一阶段模型以挖掘云检测任务与云去除任务共享的遥感影像中的云特征为出发点;第二阶段模型在第一阶段的基础上,通过云检测和去除任务之间的约束关系,细化重建结果;
10、22)第一阶段模型由共享transformer编码器、多尺度特征聚合模块和任务特定解码器模块组成;
11、221)构建特征共享transformer编码器用于获取云检测和云去除任务共享的多尺度图像特征;该模块由四个transformer模块和三次下采样操作组成,特征提取由transformer模块实现,下采样用于实现不同尺度特征获取,即下采样后图像长宽变为原来的一半;transformer模块由自注意力机制和前馈神经网络构成,能够获得全局注意力;下采样操作由步长为2的3×3卷积实现,每次下采样,特征图尺寸会减半;
12、222)构建用于聚合多尺度图像特征的多尺度特征聚合模块;其多尺度特征聚合模块接收来自共享transformer编码器的四种尺度的特征图,每种尺度的输入均需卷积和批归一化操作;相邻尺度特征图经过上采样获得相同的特征图长宽后由相邻尺度选择融合模块进行特征聚合,经过三次聚合后恢复与原始特征图大小,即为多尺度聚合特征;
13、其相邻尺度选择融合模块由低尺度分支、高尺度分支和共享分支三个分支组成,共享分支包含拼接、池化、卷积和sigmoid操作,低尺度分支和高尺度分支均通过乘法操作与共享分支特征进行交互,最终由加法操作聚合;聚合后分支包含1×1卷积和relu激活;
14、223)构建任务特定解码器模块,该模块由用于获取云掩膜的云检测解码器和用于获取粗略云去除的云去除解码器组成;云检测解码器由四个残差卷积块和一个softmax层堆叠而成,云去除解码器由四个残差卷积块堆叠而成;残差卷积块包含3×3卷积、relu激活和拼接操作;softmax操作能够将特征图转换成云检测获取的掩膜结果的分割概率图;
15、23)第二阶段模型采用卷积细化结构获取精细云去除结果,其卷积细化结构由四个卷积细化模块和四个残差卷积块堆叠而成;
16、卷积细化模块采用双分支结构,两个分支的输入分别来自第一阶段的粗略云去除结果和云掩膜从原有云影像中获取的非云覆盖区域;在双分支交互过程中采用1×1卷积块和残差卷积块加强两个分支特征图间的互补能力,每个分支均采用乘法操作和加法操作将来自另一分支的特征进行注入。
17、所述基于多尺度转换器的云检测与去除互惠模型训练包括以下步骤:
18、31)将训练集中的有云影像输入网络,先通过第一阶段模型的特征共享transformer编码器,进行多尺度特征提取;
19、经过transformer模块1获取长和宽分别为256×256的特征图;一次下采样后,经过transformer模块2获取长和宽分别为128×128的特征图;经过一次下采样和transformer模块3获取长和宽分别为64×64的特征图,最后一次下采样和transformer模块4获取长和宽分别为32×32的特征图;
20、32)将四种尺度的特征图作为多尺度特征聚合模块的输入,从低尺度到高尺度依次进行相邻尺度选择融合模块进行多尺度特征融合;
21、321)第一次相邻尺度选择融合模块对64×64和32×32的特征图进行融合;
22、3211)进入融合模块前,较高尺度的特征图仅进行卷积核大小为1×1 的卷积操作和批归一化操作,较低尺度的特征图经过卷积核大小为1×1 的卷积操作和批归一化操作,需要通过上采样操作放大;
23、3212)相邻尺度选择融合模块将较低尺度的特征图作为低尺度分支的输入,将较高尺度的特征图作为高尺度分支的输入,二者拼接结果作为共享分支的输入;
24、3213)共享分支的输入经过池化操作、卷积核大小为1×1 的卷积操作和sigmoid操作后获得融合选择权重,低尺度分支的输入和高尺度分支的输入通过与选择权重相乘,对特征图进行特征过滤,并对过滤后的特征图进行加法操作实现不同尺度特征融合;
25、3214)融合后的特征再经过一次卷积核大小为1×1 的卷积操作和relu激活操作后,作为第一次相邻尺度选择融合模块的输出,该输出与较高尺度特征图的大小保持一致;
26、322)第二次相邻尺度选择融合模块对128×128和第一次融合模块获取的大小为64×64的融合结果进行融合;执行步骤3211)到步骤3214)操作,获得第二次相邻尺度选择融合模块的输出;
27、323)第二次相邻尺度选择融合模块对256×256和第二次融合模块获取的大小为128×128的融合结果进行融合;执行步骤3211)到步骤3214)操作,获得第三次相邻尺度选择融合模块的输出,即多尺度特征聚合模块的输出;
28、33)将多尺度特征聚合模块输出的多尺度聚合特征作为任务特定解码器模块输入,分别获取云掩膜和粗略云去除结果;
29、331)云检测解码器的输入经过四个残差卷积块和一次softmax操作后获得输出的云掩膜,每个残差块执行两次卷积核大小为3×3的卷积操作,第一次卷积后经过一次relu非线性激活操作,第二次卷积后与该残差块输入进行跳跃连接后经过一次relu非线性激活,获得输出;
30、332)云去除解码器的输入经过四个残差卷积块获得输出的粗略云去除结果;
31、34)第一阶段获取的云掩膜和粗略云去除结果与输入有云影像一起构成第二阶段模型的输入,通过卷积细化结构实现对云去除结果的细化;
32、341)利用云掩膜可提取输入有云影像非云覆盖区域,提取表达式如下:
33、,
34、其中,表示提取的非云覆盖区域,表示输入的有云影像,表示第一阶段获取的云掩膜,表示逐像素相乘;
35、342)非云覆盖区域和粗略云去除结果分别作为卷积细化模块两个分支的输入;在两个分支的交互中,首先将非云覆盖区域的有效信息注入到粗略云去除分支,对粗略云去除结果进行细化;非云覆盖区域输入经过一次卷积核大小为1×1 的卷积操作后与粗略云去除输入相乘,该相乘结果与非云覆盖区域输入经过一个残差卷积块获得的输出相加,即为优化后的粗略云去除结果;
36、随后将优化后的粗略云去除分支有效信息反馈回非云覆盖区域分支;优化后的粗略云去除结果经过一次卷积核大小为1×1 的卷积操作后与非云覆盖区域输入相乘,该相乘结果与优化后的粗略云去除结果经过一个残差卷积块获得的输出相加,即为优化后的非云覆盖区域结果;
37、343)依次进行四次卷积细化模块的优化后,将最后一输出的优化后的粗略云去除结果与非云覆盖区域结果拼接后作为下一步残差卷积块优化阶段的输入,经过四个残差卷积块的优化后最终获得精细云去除结果;
38、35)使用协同优化损失对第一阶段模型输出的云掩膜和粗略云去除以及第二阶段模型输出的精细云去除结果进行损失计算,监督整体云检测与去除互惠模型训练;
39、351)云掩膜的获取是一个逐像素分类任务,采用二元交叉熵bce损失进行损失计算;粗略云去除和精细云去除的获取均为回归任务,采用l1损失进行损失计算;精细云去除对回归质量具有更高要求,设计结构相似损失ssim损失进一步约束;
40、352)协同优化损失函数表达式如下:
41、
42、其中,表示第一阶段获取的云掩膜,表示云掩膜标签,表示第一阶段获取的粗略云去除结果,表示无云参考图,表示第二阶段获取的精细云去除结果;
43、353)通过协同优化损失计算获得的损失值反向传播确定梯度向量,更新模型参数;
44、36)多次训练,以云去除效果衡量模型优劣,最终保存验证集云去除效果最佳模型参数。
45、有益效果
46、本发明涉及一种基于多尺度转换器和互惠的云检测与去除方法,针对现有遥感影像处理过程中云检测与云去除任务孤立进行造成的双任务共享云的特征难以充分提取与利用的问题,本发明提出一种双阶段云检测和去除互惠模型结构,第一阶段采用transformer结构和双任务互惠策略加强模型关键特征的提取能力,获取云掩膜和粗略云去除结果;第二阶段利用云掩膜对云覆盖区域和非云覆盖区域加以区分,排除云像素的噪声干扰,同时利用卷积操作对去云结果交互细化,实现对光谱和纹理重建的异常值进行修正。这种方法既可以提升云检测准确度,也可以显著提高去云性能。