1.一种结合CNN和Transformer的渐进式学习梯度的弱监督云检测方法,其特征在于,包括以下步骤:
11)结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型的准备工作:对遥感卫星影像根据含云量分类,按一定比例挑选各个百分比的影像数据;对遥感卫星影像进行波段合并、裁剪预处理;对遥感卫星影像标签进行归一化预处理;
12)构建与训练结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型,包括以下步骤:
121)构建结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型的具体步骤如下:
1211)构建用于筛选标签数据的具有主动学习策略的弱监督结构,其弱监督结构为通过计算每个像素或区域里的平均概率不确定值,选择高信息熵的像素或区域进行标签标注,云像素点标为1,背景标为0,得到二值单通道标签影像;然后将其加入训练数据集中;
1212)构建用于提取和学习图像梯度信息的第一阶段云检测网络结构,其第一阶段云检测网络结构为一个梯度提取结构、一个梯度编码器结构和梯度解码器结构;
12121)构建用于提取图像梯度信息的梯度提取结构,其梯度提取模块为一个sobel算子,对原始影像进行运算后得到提取到的梯度特征;
12122)构建用于学习图像梯度信息的梯度编码器结构,其梯度学习模块包括两个卷积核为3的卷积层,一个RELU线性激活单元和一个图像池化操作,得到学习到的梯度特征;
12123)构建用于从不同尺度的特征中恢复梯度信息的梯度解码器结构,其梯度解码器模块包括两个卷积核为3的卷积层,一个RELU线性激活单元和一个图像上采样操作,得到逐步恢复的梯度特征;
1213)构建用于将不同尺度的浅层空间信息和深层语义信息结合起来的跳跃连接结构,其跳跃连接结构为拼接两个输入为一个输出;
1214)构建用于提取和学习遥感影像的第二阶段云检测网络结构,其第二阶段云检测网络结构为一个Patch Partition操作,四个Swin Transformer Block和三个Patch Merging操作,得到云的分割图;
12141)构建用于关注和兼顾全局视野的Swin Transformer Block,其Swin Transformer Block为LayerNorm,Window Attention,Shifted Window Attention和MLP组成,将输入进行矩阵Q(查询),K(键值),V(值)的计算得到具有关注能力的特征矩阵;
1215)首先将原始遥感卫星影像经过第一阶段云检测网络结构,即分别经过梯度提取结构,再将其经过梯度编码器结构,将梯度编码器结构的输出经过梯度解码器结构,之后通过跳跃连接结构将编码器第四次下采样连接解码器第一次上采样,通过跳跃连接结构将第三次下采样连接第二次上采样,通过跳跃连接结构将第二次下采样连接第三次上采样,通过跳跃连接结构将第一次下采样连接第四次上采样,将跳跃连接拼接后的最后一层输出与原始遥感卫星影像进行通道维度上的拼接;然后经过第二阶段云检测网络结构,即执行Patch Partition操作,四个Swin Transformer Block和三个Patch Merging操作;最后经过线性全连接层得到预测图,根据预测图的概率计算每个像素或区域里的平均概率不确定值,选择高信息熵的像素或区域进行标签标注,云像素点标为1,背景标为0,得到二值单通道标签影像;然后将其加入训练数据集中参与训练,从而完成整个模型的搭建;
122)训练结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型的具体步骤如下:
1221)将预处理后的遥感卫星影像输入云检测模型中;
1222)执行一次梯度提取结构得到提取的图像梯度信息;
1223)执行一次梯度编码器结构得到四个下采样输出;
执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像池化操作得到第一个下采样输出;
对第一个下采样输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像池化操作得到第二个下采样输出;
对第二个下采样输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像池化操作得到第三个下采样输出;
对第三个下采样输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像池化操作得到第四个下采样输出;
1224)执行一次梯度解码器结构得到四个上采样输出;
执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像上采样操作得到第一个上采样输出;
将第一次上采样的输出通过跳跃连接结构与第四次下采样的输出进行拼接;
对第一次拼接得到的输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像上采样操作得到第二个上采样输出;
将第二次上采样的输出通过跳跃连接结构与第三次下采样的输出进行拼接;
对第二次拼接得到的输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像上采样操作得到第三个上采样输出;
将第三次上采样的输出通过跳跃连接结构与第二次下采样的输出进行拼接;
对第三次拼接得到的输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像上采样操作得到第四个上采样输出;
将第四次上采样的输出通过跳跃连接结构与第二次下采样的输出进行拼接;
对第四次拼接得到的输出执行两个卷积核为3x3的普通卷积层,一个RELU线性激活单元和一个图像上采样操作得到第四个上采样输出;
1225)对第四个下采样输出执行与原始遥感卫星影像进行通道维度上的拼接操作;
1226)对拼接得到的四通道图像执行第二阶段云检测网络结构;
执行一次Patch Partition操作得到被切成的多个patch;
对得到的多个patch执行一次Linear Embedding层;
执行一次Swin Transformer Block得到第一个输出;
执行一次Patch Merging操作得到第一次下采样后的特征;
对得到的第一次下采样后的特征执行一次Linear Embedding层;
执行一次Swin Transformer Block得到第二个输出;
执行一次Patch Merging操作得到第二次下采样后的特征;
对得到的第二次下采样后的特征执行一次Linear Embedding层;
执行一次Swin Transformer Block得到第三个输出;
执行一次Patch Merging操作得到第三次下采样后的特征;
对得到的第三次下采样后的特征执行一次Linear Embedding层;
执行一次Swin Transformer Block得到第四个输出;
1227)对得到的第四个输出执行一次线性全连接层;
1228)正向传播,得到最终的分割概率;
1229)对最终的分割概率图执行一次弱监督结构;
根据最终的分割概率计算每个像素或区域里的平均概率不确定值;
(u,v)
其中,U 代表以(u,v)为中心的区域R的预测不确定度;R(u,v)代表以(u,v)为中心的(i,j,cloud) (i,j,bg)区域R中像素总数,Pt 代表区域R中像素点为云的软标签即概率值,Pt 代表区域R中像素点(i,j)为非云背景的概率值;
选择高信息熵的像素或区域进行标签标注,云像素点标为1,背景标为0,得到二值单通道标签影像;然后将其加入训练数据集中参与训练;
使用二元交叉熵BCE损失作为网络模型的损失函数对最终选出的像素点或区域的分割概率进行计算得到分割损失;
12210)反向传播确定梯度向量,更新模型参数;
12211)判断是否达到设定的轮数,是则得到训练好的分割模型,否则返回(1221)重新加载数据继续训练;
13)对结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型测试和求解:将未被大量标记的遥感卫星影像输入到训练好的结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型中进行模型测试并得到云检测预测分割结果。
2.根据权利要求1所述的结合CNN和Transformer的渐进式学习梯度的弱监督云检测方法,其特征在于,所述结合CNN和Transformer的渐进式学习梯度的弱监督云检测准备工作包括以下步骤:
21)将遥感卫星影像的B4、B3、B2波段合并预处理为RGB三通道影像;
22)将遥感卫星影像进行不重叠裁剪,裁剪为321×321的固定大小;
23)将处理后的影像导出成.tif格式;
24)将处理后的影像按照含云量百分比平均挑选训练集影像,以保证正负样本平衡。
3.根据权利要求1所述的一种结合CNN和Transformer的渐进式学习梯度的弱监督云检测方法,其特征在于,所述对结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型测试和求解包括以下步骤:
31)读取遥感卫星影像,将其导出成.tif格式影像;
32)将遥感卫星影像的B4、B3、B2波段合并预处理为RGB三通道影像;
33)将遥感卫星影像进行不重叠裁剪,裁剪为321×321的固定大小;
34)将预处理后的影像输入到训练好的结合CNN和Transformer的渐进式学习梯度的弱监督云检测模型中进行云像素检测;
35)得到分割好的云掩膜图。