基于特征重标定的双通路残差网络的遥感图像分割方法与流程

文档序号:17732504发布日期:2019-05-22 02:57阅读:351来源:国知局
基于特征重标定的双通路残差网络的遥感图像分割方法与流程

本方案涉及遥感图像识别方法,具体涉及一种基于特征重标定的双通路残差网络的遥感图像分割方法。



背景技术:

目前,基于神经网络模型的图像分割方法发展迅速,可以用训练好的神经网络分割新的图像数据,在分割精度和效率上面都要比传统的分割方法更优。随着深度学习的发展,大量神经网络模型不断出现,简单的卷积层已不能保证网络的收敛速度和图像分割的精度。现有的全卷积神经网络采用端到端、像素到像素的结构,避免了由于使用像素块而带来的重复存储和计算卷积的问题,但是该网络对图像的细节不够敏感,没有考虑到像素之间的关系,因而得到的结果还不够精细。

深度残差网络打破了传统的神经网络n-1层的输出只能给n层作为输入的思想,解决了增加深度带来的退化问题,网络可以变得更深,但残差结构并没有考虑到特征通道之间的相关性,特征信息不能得到最大化的利用,在遥感图像分割中,具有足够的网络深度,容易优化,但忽略了特征空间的相关性,网络性能还需要进一步的提高。



技术实现要素:

针对现有技术中的上述不足,本发明提供的基于特征重标定的双通路残差网络的遥感图像分割方法解决了现有遥感图像分割精度低的问题。

为了达到上述发明目的,本发明采用的技术方案为:

提供一种基于特征重标定的双通路残差网络的遥感图像分割方法,其包括:

s1、获取待检测的遥感图像,并对其进行归一化处理得到归一化图像;

s2、对归一化图像进行随机窗口取样,得到若干设定尺寸的样本数据;以及

s3、采用预先建立的双通路残差网络遥感分割模型对若干样本数据进行分割,得到分割后的遥感图像;

双通路残差网络遥感分割模型的训练过程为:

根据已知的遥感图像对双通路残差网络进行训练得到双通路残差网络遥感分割模型。

进一步地,双通路残差网络包括平均池化层和至少一个图像处理模块,最后一个图像处理模块处理后的图像输入平均池化层得到分割后的遥感图像;

图像处理模块包括对输入的样本数据或特征图进行特征重标定的双通路se模块,对双通路se模块处理后的特征图进行卷积操作的卷积层及对输入样本数据或特征图和卷积层处理后的卷积特征图进行特征值叠加的叠加层;

当存在至少两个图像处理模块时,相邻两个图像处理模块中的上一个叠加层与下一个双通路se模块连接。

进一步地,双通路se模块对输入的样本数据或特征图进行特征重标定的方法包括:

a1、对输入的样本数据或特征图依次进行bn归一化操作、relu激活函数操作、3*3卷积操作和随机丢弃神经网络单元操作,得到第一特征图;

a2、根据第一特征图的通道将其划分为c1数据和c2数据,同时将第一特征图依次进行bn归一化操作、relu激活函数操作、3*3卷积操作和随机丢弃神经网络单元操作,得到第二特征图;

a3、根据第二特征图的通道将其划分为d1数据和d2数据,采用双通路模块对c1数据与d1数据的特征值进行相加得到第三特征图及对c2数据与d2数据的特征值进行堆叠得到第四特征图;

a4、将第三特征图和第四特征图进行堆叠得到第五特征图,并将第五特征图依次输入全局平均池化层、全连接层、relu激活函数层、全连接层和sigmoid激活函数层,得到每个通道的权重值;以及

a5、将第五特征图的每个通道乘以对应通道的权重值,得到特征重标定后的特征图。

进一步地,根据已知的遥感图像对双通路残差网络进行训练得到双通路残差网络遥感分割模型的方法包括:

b1、获取已知遥感影像,并将其划分为训练集和测试集,之后进行预处理;

b2、将训练集数据分为若干批,并初始化卷积核权重和偏值对交叉熵损失函数的导数为0:

δw(l)=0,δb(l)=0

其中,δw(l)为第l层卷积层中的卷积核权重对交叉熵损失函数的导数;δb(l)为第l层卷积层中的卷积核偏值对交叉熵损失函数的导数;

b3、将其中一批训练集数据输入双通路残差网络,并将训练集数据与双通路残差网络中所有层的各个节点参数进行计算,实现网络训练的前向传播,输出实际输出数据;

b4、采用交叉熵损失函数计算实际输出数据与训练集标签之间的误差,找到最佳的卷积核权重和偏值使得交叉熵损失函数的值最小;

b5、判断是否已将所有训练集数据输入双通路残差网络进行训练,若是则完成一次迭代,进入步骤b6,否则返回步骤b2;

b6、采用梯度下降法,将卷积核权重和偏值往负梯度方向更新,之后判断当前迭代次数是否达到预设迭代阈值,若是,则进入步骤b7,否则进入步骤b3;

b7、输出双通路残差网络遥感分割模型。

进一步地,实现网络训练的前向传播的表达式为:

z(l+1)=w(l+1)a(t)+b(t+1),a(l+1)=f(z(l+1))

其中,l=1,2,…l-1,l为双通路残差网络的层数;z(l+1)为第l+1层的输出;f为relu激活函数;a(l+1)、a(l)分别为第l+1、l层的实际输出数据;b(l+1)为第l+1层的卷积层的偏值。

进一步地,交叉熵损失函数的表达式为:

其中,l为实际输出数据与训练集数据中标签之间的误差;m为训练集数据的样本个数;x为双通路残差网络中的网络单元数量,y为标签数据;a为双通路残差网络的实际输出数据。

进一步地,采用梯度下降法,将卷积核权重和偏值往负梯度方向更新的表达式为:

其中,α为学习率;w(l)′为第l层更新后的卷积核的权重值;为第l层卷积核权重对损失函数的偏导数;b(l)′为第l层更新后的卷积核偏值;b(l)为第l层的卷积核偏值;为第l层的卷积核偏值对损失函数的偏导数。

进一步地,获取已知遥感影像,并将其划分为训练集和测试集,之后进行预处理进一步包括:

b11、获取已知遥感图像,并将其划分为训练集和测试集;

b12、对训练集和测试集中已知遥感图像进行归一化处理,以将其映射到[0,1]区间;

b13、对训练集中归一化的数据进行随机窗口取样,得到若干尺寸为256*256的小样本数据;以及

b14、对小样本数据进行数据增强操作。

进一步地,对小样本数据进行数据增强操作包括旋转变换、翻转变换、伽马变换和/或尺度变换;

其中旋转变换的旋转角度为90°、180°或270°;翻转变换为沿着x轴或y轴方向翻转;伽马变换为:当gamma>1时,较亮的区域灰度被拉伸,较暗的区域灰度被压缩,以使图像整体变暗;当gamma<1时,较亮的区域灰度被压缩,较暗的区域灰度被拉伸,以使图像整体变亮;

尺度变换为:对图像按照设定的尺度因子进行放大或缩小,或者参照sift特征提取思想,利用指定的尺度因子对图像滤波构造尺度空间,改变图像内容的大小或模糊程度。

本发明的有益效果为:本方案在进行遥感图像识别时所采用的双通路残差网络在训练过程中通过显式地嵌入学习机制来帮助捕获空间相关性,模拟通道间的相互依赖关系来重新调整通道的特征响应,自动获取到每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征;同时结合双通路机制,更有效地利用上一级的特征信息,使其在遥感图像分割上有更高的精度和更快的收敛速度。

训练形成的双通路残差网络遥感分割模型首先经过双通路在重用原始特征的同时产生新的特征,然后利用通道之间的依赖关系,对通道进行权值评估,重新描述了整个特征图的信息,最后利用残差网络架构进行同等映射,在不增加计算复杂度的前提下,不仅提高了网络训练的收敛速度,还提高了网络的训练精度。

附图说明

图1为基于特征重标定的双通路残差网络的遥感图像分割方法的流程图。

图2为双通路残差网络的网络架构。

图3为双通路残差网络中的双通路se模块的架构图。

图4为双通路残差网络训练过程中迭代次数与训练精度及训练损失的曲线图,其中(a)为迭代次数与训练精度的曲线关系,(b)为迭代次数与训练损失的曲线关系。

图5为三幅遥感图像输入到训练好的双通路残差网络遥感分割模型的分割结果;其中第一列为原始数据,第二列是u-net模型的分割结果,第三列是本方案的分割结果。

具体实施方式

下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

参考图1,图1示出了基于特征重标定的双通路残差网络的遥感图像分割方法的流程图;如图1所示,该遥感图像分割方法s包括s1至s3。

在步骤s1中,获取待检测的遥感图像,并对其进行归一化处理得到归一化图像,此处归一化处理的主要目的是将其图像数据映射至[0,1]区间。

在步骤s2中,对归一化图像进行随机窗口取样,得到若干设定尺寸的样本数据,样本数据的尺寸为256*256的小样本数据。以及

在步骤s3中,采用预先建立的双通路残差网络遥感分割模型对若干样本数据进行分割,得到分割后的遥感图像;

下面结合图5对本方案的遥感图像分割方法的效果进行说明:

输入三副不同地理位置的遥感图像(参考图5中第一列)至已训练好的u-net模型和本方案的双通路残差网络遥感分割模型进行图像分割,u-net模型的分割结果参考图5中第二列,双通路残差网络遥感分割模型的分割结果参考图5中第三列,比较第二列和第三列的分割结果可以得出,本方法的分割结果明显优于现有技术的u-net模型。

其中,双通路残差网络遥感分割模型的训练过程为:

根据已知的遥感图像对双通路残差网络进行训练得到双通路残差网络遥感分割模型。

如图2所示,实施时,本方案优选双通路残差网络包括平均池化层和至少一个图像处理模块,最后一个图像处理模块处理后的图像输入平均池化层得到分割后的遥感图像;

图像处理模块包括对输入的样本数据或特征图进行特征重标定的双通路se模块,对双通路se模块处理后的特征图进行卷积操作的卷积层及对输入样本数据或特征图和卷积层处理后的卷积特征图进行特征值叠加的叠加层;

当存在至少两个图像处理模块时,相邻两个图像处理模块中的上一个叠加层与下一个双通路se模块连接。

网络的层数越深,能够提取到的特征信息就越丰富,但是,简单的增加网络深度,会导致梯度弥散或梯度爆炸,同时网络的性能也会退化。本方案采用双通路残差网络结构进行上下层之间的同等映射,在增加网络深度的同时,解决了退化问题,网络的性能也得到了提升。

若图像处理模块位于第一个,则输入该图像处理模块的双通路se模块的为样本数据,位于第一个图像处理模块以下的双通路se模块接收的都是上一个叠加层输出的特征图。

如图3所示,在本发明的一个实施例中,双通路se模块对输入的样本数据或特征图进行特征重标定的方法a包括步骤a1至步骤a5:

在步骤a1中,对输入的样本数据或特征图依次进行bn归一化操作、relu激活函数操作、3*3卷积操作和随机丢弃神经网络单元操作,得到第一特征图。

其中,随机丢弃神经网络单元(dropout)表示按照一定概率随机将双通路残差网络中的神经网络单元从网络中暂时丢弃,防止过拟合。

在步骤a2中,根据第一特征图的通道将其划分为c1数据和c2数据,同时将第一特征图依次进行bn归一化操作、relu激活函数操作、3*3卷积操作和随机丢弃神经网络单元操作,得到第二特征图。

在步骤a3中,根据第二特征图的通道将其划分为d1数据和d2数据,采用双通路模块对c1数据与d1数据的特征值进行相加得到第三特征图及对c2数据与d2数据的特征值进行堆叠得到第四特征图。

双通路模块包括summation通路和concatenate通路,summation通路用于实现c1数据和d1数据的特征值相加,concatenate通路用于实现c2数据和d2数据的堆叠(尺寸相加)。

在步骤a4中,将第三特征图和第四特征图进行堆叠得到第五特征图,并将第五特征图依次输入全局平均池化层、全连接层、relu激活函数层、全连接层和sigmoid激活函数层,得到每个通道的权重值。

全局平局池化层表明了c个特征图的数值分布情况,两个全连接层的作用是融合了各通道的特征图信息,并减少了通道个数从而降低计算量。

在步骤a5中,将第五特征图的每个通道乘以对应通道的权重值,得到特征重标定后的特征图。

双通路se模块模拟了特征通道间的相互依赖关系来重新调整通道的特征响应,自动获取到每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征;同时结合双通路机制,在重用原始特征的同时产生新的特征,更有效地利用上一级的特征信息,使其在遥感图像分割上有更高的精度和更快的收敛速度。

在本发明的一个实施例中,根据已知的遥感图像对双通路残差网络进行训练得到双通路残差网络遥感分割模型的方法b包括步骤b1至b7:

在步骤b1中,获取已知遥感影像,并将其划分为训练集和测试集,之后进行预处理;

下面接着对b1步骤的具体实现方法进行详细说明:

b11、获取已知遥感图像,并将其划分为训练集和测试集,其中训练集和测试集中的遥感图像的比例为8:1。

b12、对训练集和测试集中已知遥感图像进行归一化处理,以将其映射到[0,1]区间;本方案在实现过程中也可以对遥感图像进行归一化处理之后,在进行训练集和测试集的划分,也可以先划分训练集和测试集后,再进行归一化处理,不管先进行哪一步操作,均不影响最终的图像处理效果。

b13、对训练集中归一化的数据进行随机窗口取样,得到若干尺寸为256*256的小样本数据,随机窗口取样的主要目的是将训练集的图片分割为适应于双通路残差网络遥感分割模型的图片格式及尺寸要求。

b14、对小样本数据进行数据增强操作,对小样本数据进行数据增强操作包括旋转变换、翻转变换、伽马变换和/或尺度变换;

其中旋转变换的旋转角度为90°、180°或270°;翻转变换为沿着x轴或y轴方向翻转;伽马变换为:当gamma>1时,较亮的区域灰度被拉伸,较暗的区域灰度被压缩,以使图像整体变暗;当gamma<1时,较亮的区域灰度被压缩,较暗的区域灰度被拉伸,以使图像整体变亮;

尺度变换为:对图像按照设定的尺度因子进行放大或缩小,或者参照sift特征提取思想,利用指定的尺度因子对图像滤波构造尺度空间,改变图像内容的大小或模糊程度。

在步骤b2中,将训练集数据分为若干批,并初始化卷积核权重和卷积核偏值对交叉熵损失函数的导数为0:

δw(l)=0,δb(l)=0

其中,δw(l)为第l层卷积层中的卷积核权重对交叉熵损失函数的导数;δb(l)为第l层卷积层中的卷积核偏值对交叉熵损失函数的导数;

其中,交叉熵损失函数的表达式为:

其中,l为实际输出数据与训练集数据中标签之间的误差;m为训练集数据的样本个数;x为双通路残差网络中的网络单元数量,y为标签数据;a为双通路残差网络的实际输出数据。

在步骤b3中,将其中一批训练集数据输入双通路残差网络,并将训练集数据与双通路残差网络中所有层(所有层指代整个网络结构中的各个层)的各个节点参数进行计算,实现网络训练的前向传播,输出实际输出数据。

在双通路残差网络的计算中,需要计算按照双通路残差网络的正向传播输出的特征图计算的分数p1,和按照真实标签计算的分数p2之间的差距,计算交叉熵损失函数loss,才能应用反向传播。

其中,实现网络训练的前向传播的表达式为:

z(l+1)=w(l+1)a(l)+b(l+1),a(l+1)=f(z(l+1))

其中,l=1,2,…l-1,l为双通路残差网络的层数;z(l+1)为第l+1层的输出;f为relu激活函数;a(l+1)、a(l)分别为第l+1、l层的实际输出数据;b(l+1)为第l+1层的卷积层的偏值。

在步骤b4中,采用交叉熵损失函数计算实际输出数据与训练集标签之间的误差,找到最佳的卷积核权重和偏值使得交叉熵损失函数的值最小;

在步骤b5中,判断是否已将所有训练集数据输入双通路残差网络进行训练,若是则完成一次迭代,进入步骤b6,否则返回步骤b2;

在步骤b6中,采用梯度下降法,将卷积核权重和偏值往负梯度方向更新,之后判断当前迭代次数是否达到预设迭代阈值,若是,则进入步骤b7,否则进入步骤b3;

其中,采用梯度下降法,将卷积核权重和偏值往负梯度方向更新的表达式为:

其中,α为学习率;w(l)′为第l层更新后的卷积核的权重值;为第l层卷积核权重对损失函数的偏导数;b(l)′为第l层更新后的卷积核偏值;b(l)为第l层的卷积核偏值;为第l层的卷积核偏值对损失函数的偏导数。

在步骤b7中,输出双通路残差网络遥感分割模型。

在得到双通路残差网络遥感分割模型过程中,迭代次数(横坐标)会影响训练精度和训练损失,具体可以参考图4,从图4中的(a)可以看出,迭代次数越多,训练精度就越高,反之训练损失就越小,参见图4中的(b)。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1