一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种弱监督的可见光遥感图像薄云去除方法与流程

2021-11-30 21:43:00 来源:中国专利 TAG:


1.本发明属于遥感图像处理领域,具体涉及一种基于循环一致生成对抗网络和薄云成像模型相结合的、能够对可见光遥感图像非配对数据进行训练的弱监督薄云去除方法。


背景技术:

2.随着遥感技术的快速发展,可见光遥感图像被广泛应用于各种领域,如环境监测、资源勘察、地物分类、目标检测。然而,遥感图像常常会受到大气中云的污染,造成图像质量下降,限制了它们的使用。因此,对于许多遥感图像应用来说,薄云去除是一项关键的预处理过程,具有重要的实用价值。
3.早期的薄云去除方法一般都是基于简化的薄云成像模型或先验知识,严重依赖于研究人员手工制作的特征,这类方法对于复杂场景的遥感图像效果较差,鲁棒性较低。基于深度学习的薄云去除方法,可以充分利用深度卷积神经网络的自动学习能力来挖掘图像的高层语义特征,从而能够处理具有复杂地物条件的图像。然而,这类方法依赖于大量的薄云图像及其对应的无云图像来进行训练,而理想的配对的薄云

无云图像数据通常难以获取。
4.循环一致生成对抗网络(cyclegan)可以使用非配对的数据来对网络进行训练,在图像变换任务中得到了广泛的应用。但是cyclegan网络中生成器g
a
生成的无云图像会包含一些有关薄云信息的噪声,被用于另一个生成器g
b
来恢复原始的薄云图像。本发明将cyclegan网络和薄云成像模型相结合,提出了一种新的弱监督的薄云去除方法。该方法将原始cyclegan网络中的生成器g
a
扩展为3个生成器,来从薄云图像中同时生成无云图像、薄云厚度图和厚度系数。另外,使用一个薄云成像模型代替原始cyclegan网络中的生成器g
b
,来从生成的无云图像中重建原始的薄云图像,以及从真实的无云图像中生成仿真的薄云图像。该方法将无云图像和薄云信息分离开来,避免了生成的无云图像中必须包含一些薄云噪声的缺点,从而能够获得良好的薄云去除效果。


技术实现要素:

5.本发明的目的在于提供一种弱监督的可见光遥感图像薄云去除方法,该方法将循环一致生成对抗网络和薄云成像模型相结合,能够使用非配对的遥感图像来对网络进行训练,从而实现可见光遥感图像的薄云去除,提升图像质量。首先使用3个生成器来从薄云图像中生成无云图像,薄云厚度图和厚度系数,并通过一个判别器来鉴别真实的无云图像和生成的无云图像,然后再采用一个薄云成像模型来重建原始的薄云图像,从而得到循环一致损失来对网络进行训练。另外,我们还使用薄云成像模型来生成仿真的薄云

无云图像对,然后将生成的图像对作为监督数据来训练3个生成器,以进一步提升网络的薄云去除能力。
6.本发明具体技术方案包括以下步骤:
7.步骤1:数据集建立
8.本发明提出的方法需要用到大量的图像数据来训练网络,包括薄云图像数据集和
无云图像数据集。我们在各种具有不同地物的可见光遥感图像中,通过人工筛选出薄云区域和无云区域,然后在选出的区域中裁剪k
×
k大小的图像块,加入到对应的薄云图像数据集和无云图像数据集中。由此可建立非配对的薄云

无云图像数据集来对网络进行训练。
9.步骤2:薄云成像模型建立
10.卫星传感器接收到的信号可以用一个加性物理模型来表示:
11.i=j k*m
ꢀꢀꢀ
(1)
12.其中,i为卫星传感器获取到的薄云图像,j为无云时的地物图像(无云图像)。m为薄云厚度图,表示云的空间分布;k为各波段厚度系数,表示云的光谱分布。通过公式(1),一方面,我们可以使用3个卷积神经网络将一幅薄云图像分解为一幅无云图像、一幅薄云厚度图以及一组厚度系数三个部分;另一方面,我们也可以将一幅无云图像结合一幅薄云厚度图以及一组厚度系数,得到一幅合成的薄云图像。
13.步骤3:网络结构设计
14.本发明通过循环一致生成对抗思想来进行薄云去除,需要使用3个生成器g
j
、g
m
、g
k
和一个判别器d。给定两幅非配对的训练图像(i,j),i为一幅薄云图像,属于源领域j为一幅无云图像,属于目标领域我们设计了两个循环流程来对生成器和判别器进行训练:
15.1)前向循环首先通过3个生成器g
j
、g
m
、g
k
将输入的薄云图像i分解为无云图像薄云厚度图厚度系数其中然后利用公式(1)将这3部分结合到一起,来重建原始的输入薄云图像,即
16.2)后向循环首先利用公式(1)将无云图像j,薄云厚度图m和厚度系数k结合到一起,得到一幅合成的薄云图像其中,m和k使用前向循环中g
m
和g
k
生成的和然后再通过3个生成器g
j
、g
m
、g
k
将分解为原始的3部分:分解为原始的3部分:另外,判别器d用来鉴别真实的无云图像j和生成的无云图像
17.在上述两个循环流程中,我们的网络不需要使用配对的薄云

无云图像进行训练。本发明中的3个生成器可以是符合输入输出大小的任何生成器。同样,判别器也可以是任意的判别器。
18.步骤4:网络训练
19.1.损失函数设计
20.根据步骤3中的训练流程,我们设计了对应的损失函数,以完成对网络的训练。该损失函数由对抗损失、循环一致损失、循环感知一致损失和恒等损失四个部分组成。
21.(1)对抗损失
22.我们使用最小二乘生成对抗网络来计算对抗损失,和常规的生成对抗网络相比,最小二乘生成对抗网络能够通过更稳定的训练过程生成质量更高的图像。对抗损失函数如下:
[0023][0024]
其中,表示随机变量的期望,d(
·
)是判别器的输出。g
j
是生成器,它试图生成
像无云领域中的图像g
j
(i)来欺骗d,而d的目标是区分真实的无云图像j和生成的无云图像g
j
(i)。
[0025]
(2)循环一致损失
[0026]
单独的对抗损失是欠约束的,因为生成器g
j
可能将一幅输入图像映射为目标领域中任意的一幅输出图像。因此,我们采用循环一致损失来约束生成器g
j
将一幅给定的输入映射到一幅我们所期望的输出。循环一致损失可以记为:
[0027][0028]
其中,||
·
||1表示l1范数,i和i
*
分别是前向循环中原始的图像和复原的图像;j、m、k和j
*
、m
*
、k
*
分别是后向循环中原始的无云图像、薄云厚度图、厚度系数和复原的无云图像、薄云厚度图、厚度系数。
[0029]
(3)循环感知一致损失
[0030]
循环一致损失计算了原始图像和复原图像之间的l1范数,只能保证像素级的一致性,无法恢复所有的纹理和感知信息。为了实现感知相似性,我们引入了循环感知一致损失,使用在imagenet上预训练好的vgg16模型提取的特征。它可以表示为:
[0031][0032]
其中,||
·
||2表示l2范数,φ表示一个vgg16特征提取器,φ(
·
)是通过vgg16特征提取器得到的特征。
[0033]
(4)恒等损失
[0034]
根据输入的图像i,g
j
试图生成无云图像g
j
(i),g
m
试图生成薄云厚度图g
m
(i)。然而,我们知道无云图像中是没有任何云的。因此,给定一幅无云图像j,我们应该得到g
j
(j)=j,g
m
(j)=0。我们利用这个想法来优化g
j
和g
m
,提出了一个恒等损失,定义如下:
[0035][0036]
在恒等损失的约束下,g
j
将保持输入图像中的无云区域不改变,g
m
能够更有效地提取输入图像的薄云厚度。
[0037]
(5)网络的总体损失函数
[0038]
我们用来训练网络的总体损失函数是以上四种损失的加权求和,具体定义如下:
[0039][0040]
其中,λ1,λ2和λ3是正的权重值,用来控制各个损失的相对重要性。
[0041]
2.网络训练过程
[0042]
根据网络损失函数(6),可以得到我们最终的优化目标:
[0043][0044]
我们可以使用随机梯度下降法来对公式(7)进行优化求解,并且将生成器和判别器分开进行训练。首先固定判别器d的参数,训练3个生成器g
j
、g
m
、g
k
,使用梯度下降的方式训练n轮;然后固定生成器g
j
、g
m
、g
k
的参数,训练判别器d,使用梯度下降方式训练1轮。
[0045]
步骤5:遥感图像薄云去除
[0046]
在网络训练结束之后,生成器g
j
就可以用来去除遥感图像中的薄云。对于一幅带有薄云的遥感图像,将其输入到生成器g
j
经过一次前向传播,利用训练好的网络参数进行
运算,即可输出相应的薄云去除后的无云图像。
[0047]
本发明的优点及有益效果在于:配对的薄云

无云遥感图像数据难以获取,现有的强监督薄云去除网络难以直接用于对遥感图像进行薄云去除,本发明通过将循环一致生成对抗网络和薄云成像模型结合,使得薄云去除网络可以通过非配对数据来进行训练。另外,训练好的薄云去除网络可以有效地去除图像中的薄云,同时结果还具有很好的颜色保真度。
附图说明:
[0048]
图1(a)是本发明所述薄云去除方法训练流程中的前向循环图1(b)是本发明所述薄云去除方法训练流程中的后向循环
[0049]
图2是本发明所使用的生成器g
j
、g
m
、g
k
以及判别器d的结构图。
[0050]
图3(a)

图3(d)是4幅landsat 8可见光薄云图像。
[0051]
图4(a)

图4(d)是图3(a)

图3(d)薄云去除后的结果。
具体实施方式:
[0052]
为了更好地理解本发明的技术方案,下面结合附图对本发明的具体实施方式进行详细的描述:
[0053]
本发明的网络结构图如图1(a)和图1(b)所示。计算机配置采用:intel core i7

6700k处理器,nvidia geforce gtx 1080图形处理器,主频4.0ghz,内存16gb,操作系统为ubuntu 16.04。薄云去除方法的实现基于pytorch框架。本发明将循环一致生成对抗网络和薄云成像模型相结合,是一种弱监督的可见光遥感图像薄云去除方法,具体包括以下步骤:
[0054]
步骤1:数据集建立
[0055]
本发明提出的方法使用landsat 8可见光遥感图像来训练网络。首先从地理空间数据云网站(http://www.gscloud.cn/)免费下载landsat 8可见光遥感图像,分别选取多景包含薄云的图像和无云的清晰图像,选取的薄云图像和无云图像应尽可能多地覆盖城市、裸地、植被、水体等各种不同的地貌。然后通过人工筛选出每景图像中的薄云区域和无云区域,并在选出的区域中裁剪256
×
256大小的图像块,加入到对应的薄云图像数据集和无云图像数据集中。通过该步骤操作,一共可获得2236幅薄云图像和2318幅无云图像,由此可建立非配对的薄云

无云图像数据集来对网络进行训练。
[0056]
步骤2:薄云成像模型建立
[0057]
卫星传感器接收到的信号可以用一个加性物理模型来表示:
[0058]
i=j k*m
ꢀꢀꢀ
(1)
[0059]
其中,i为卫星传感器获取到的薄云图像,j为无云时的地物图像(无云图像)。m为薄云厚度图,表示云的空间分布;k为各波段厚度系数,表示云的光谱分布。通过公式(1),一方面,我们可以使用3个卷积神经网络将一幅薄云图像分解为一幅无云图像、一幅薄云厚度图以及一组厚度系数三个部分,如图1(a)所示;另一方面,我们也可以将一幅无云图像结合一幅薄云厚度图以及一组厚度系数,得到一幅合成的薄云图像,如图1(b)所示。
[0060]
步骤3:网络结构设计
[0061]
本发明通过循环一致生成对抗思想来进行薄云去除,需要使用3个生成器g
j
、g
m
、g
k
和一个判别器d。给定两幅非配对的训练图像(i,j),i为一幅图像,属于源领域j为一幅无云图像,属于目标领域我们设计了两个循环流程来对生成器和判别器进行训练:
[0062]
1)前向循环如图1(a)所示,首先通过3个生成器g
j
、g
m
、g
k
将输入的薄云图像i分解为无云图像薄云厚度图厚度系数其中然后利用公式(1)将这3部分结合到一起,来重建原始的输入薄云图像,即
[0063]
2)后向循环如图1(b)所示,首先利用公式(1)将无云图像j,薄云厚度图m和厚度系数k结合到一起,得到一幅合成的薄云图像其中,m和k使用前向循环中g
m
和g
k
生成的和然后再通过3个生成器g
j
、g
m
、g
k
将分解为原始的3部分:分解为原始的3部分:另外,判别器d用来鉴别真实的无云图像j和生成的无云图像
[0064]
在上述两个循环流程中,我们的网络不需要使用配对的薄云

无云图像进行训练。本发明中使用的生成器和判别器的网络结构如图2所示。生成器g
j
由一个6层的编码器和一个6层的解码器组成,并通过跳线连接将高层的语义特征和低层的细节结合到一起。生成器g
m
采用和g
j
相同的网络结构,除了输出通道的数量外。其中,g
j
的输出通道的数为3,g
m
的输出通道的数为1。生成器g
k
和g
m
共享相同的编码器,然后在编码器的输出层连接一个全局平均池化层,以及一个全连接层。判别器d采用70x70patchgan,它的感受野尺度为70x70,输出结果大小为30x30,并将30x30的像素分为真实数据或假数据。网络中所有卷积层使用的卷积核大小都为3x3。另外,除了输出层外,g
j
,g
m
和d的所有卷积层后都跟随着一个bn层和一个relu层。
[0065]
步骤4:网络训练
[0066]
1.损失函数设计
[0067]
根据步骤3中的训练流程,我们设计了对应的损失函数,以完成对网络的训练。该损失函数由对抗损失、循环一致损失、循环感知一致损失和恒等损失四个部分组成。
[0068]
(1)对抗损失
[0069]
我们使用最小二乘生成对抗网络来计算对抗损失,和常规的生成对抗网络相比,最小二乘生成对抗网络能够通过更稳定的训练过程生成质量更高的图像。对抗损失函数如下:
[0070][0071]
其中,g
j
试图生成像无云领域中的图像g
j
(i)来欺骗d,而d的目标是区分真实的无云图像j和生成的无云图像g
j
(i)。
[0072]
(2)循环一致损失
[0073]
单独的对抗损失是欠约束的,因为生成器g
j
可能将一幅输入图像映射为目标领域中任意的一幅输出图像。因此,我们采用循环一致损失来约束生成器g
j
将一幅给定的输入映射到一幅我们所期望的输出。循环一致损失可以记为:
[0074][0075]
其中,||
·
||1表示l1范数,i和i
*
分别是图1(a)中前向循环中原始的图像和复原的图像;j、m、k和j
*
、m
*
、k
*
分别是图1(b)中后向循环中原始的无云图像、薄云厚度图、厚度系数和复原的无云图像、薄云厚度图、厚度系数。
[0076]
(3)循环感知一致损失
[0077]
循环一致损失计算了原始图像和复原图像之间的l1范数,只能保证像素级的一致性,无法恢复所有的纹理和感知信息。为了实现感知相似性,我们引入了循环感知一致损失,使用在imagenet上预训练好的vgg16模型提取的特征。它可以表示为:
[0078][0079]
其中,||
·
||2表示l2范数,φ表示一个vgg16特征提取器,从relu1

2、relu2

2、relu3

3、relu4

3层提取特征。
[0080]
(4)恒等损失
[0081]
根据输入的图像i,g
j
试图生成无云图像g
j
(i),g
m
试图生成薄云厚度图g
m
(i)。然而,我们知道无云图像中是没有任何云的。因此,给定一幅无云图像j,我们应该得到g
j
(j)=j,g
m
(j)=0。我们利用这个想法来优化g
j
和g
m
,提出了一个恒等损失,定义如下:
[0082][0083]
在恒等损失的约束下,g
j
将保持输入图像中的无云区域不改变,g
m
能够更有效地提取输入图像的薄云厚度。
[0084]
(5)网络的总体损失函数
[0085]
我们用来训练网络的总体损失函数是以上四种损失的加权求和,具体定义如下:
[0086][0087]
其中,λ1,λ2和λ3是正的权重值,用来控制各个损失的相对重要性。具体实施中选取对应的值分别为10,1和1。
[0088]
2.网络训练过程
[0089]
根据网络损失函数(6),可以得到我们最终的优化目标:
[0090][0091]
我们使用随机梯度下降法来对公式(7)进行优化求解。在开始训练之前,输入图像被归一化到[0,1]之间。采用均值为0、方差为0.01的高斯函数对卷积核的权重进行初始化,采用固定值0.01对偏置进行初始化。采用adam优化算法,初始学习率设为0.0002,前100轮迭代学习率保持不变,然后接下来的100轮学习率线性下降到0,一共迭代200轮。一阶矩估计的指数衰减率设为0.5,二阶矩估计的指数衰减率设为0.999。adam优化算法通过计算梯度的一阶矩和二阶矩,为不同的参数产生自适应的学习率,使得网络能够提升收敛效率。另外,将生成器和判别器分开进行交替迭代训练。首先固定判别器d的参数,训练3个生成器g
j
、g
m
、g
k
,使用梯度下降的方式训练1轮;然后固定生成器g
j
、g
m
、g
k
的参数,训练判别器d,使用梯度下降方式训练1轮。
[0092]
步骤5:遥感图像薄云去除
[0093]
在网络训练结束之后,生成器g
j
就可以用来去除遥感图像中的薄云。将单幅带有
薄云的遥感图像输入到生成器g
j
经过一次前向传播,利用训练好的网络参数进行运算,即可输出相应的薄云去除后的无云图像。
[0094]
图3和图4展示了4幅不同地物条件下的landsat 8可见光图像薄云去除实例。其中,图3(a)

图3(d)是真实的landsat 8可见光薄云图像;图4(a)

图4(d)是将图3(a)

图3(d)输入到生成器g
j
得到的输出图像,可以看到图像中的薄云都被有效地去除了。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献