基于全卷积神经网络模型的语义分割算法
发布时间:2021-04-10 03:14
语义分割是计算机视觉和模式识别领域的研究重点,传统基于图像块的深度卷积神经网络模型假设图像块内所有像素共享同一标号导致其对图像光谱及纹理结构特征变换敏感、语义分割结果中目标边缘像素分割精度不高。针对以上问题,提出一种基于残差模块的全卷积神经网络模型及多尺度空洞卷积模型。首先,基于残差模块的全卷积神经网络模型以残差模块为基础构建能够实现“端到端”训练的全卷积网络,并采用跳跃连接提高低层细节特征的传递效率,进而提高图像语义分割精度。其次,多尺度空洞卷积模型在基于残差模块的全卷积神经网络模型的基础上,利用空洞卷积学习原始图像不同尺度特征,并组合这些特征以达到同时学习目标细节特征和全局特征的目的。最后,为了验证提出算法的有效性,将提出的算法应用于ISPRS Vaihingen数据集中对图像块的模型进行对比分析。实验结果表明,采用的全卷积神经网络模型和多尺度空洞卷积模型能够较好地学习图像目标的边缘细节特征,与传统的基于图像块的神经网络和改进的Seg Net网络模型相比,其语义分割精度可达84.56%和86.59%。该论文有图55幅,表5个,参考文献50篇。
【文章来源】:辽宁工程技术大学辽宁省
【文章页数】:67 页
【学位级别】:硕士
【部分图文】:
卷积原理
?暗酵枷裰腥?磕勘?特征进而无法保障网络输出精度,降低输入图像尺寸会导致网络模型无法“看”到占据较大区域目标的完整形态,使其无法学习到目标的全局特征。为了提高网络对不同尺寸目标的学习能力、减少网络对显存的需求,卷积神经网络多采用池化层减小图像尺寸、保障卷积核能够“看”到目标的全局特征进而学习全局特征。池化层实际上是将感受野内部的全部像素用一个或多个像素表达进而达到减小图像尺寸的操作。常用的池化方式有最大池化和平均池化。最大池化就是将感受野内所有像素的最大值作为输出值,其中池化层原理如图2.2所示,该池化层尺寸为2×2像素,将感受野中最大的值作为输出值保留其余值并丢掉不用的,4×4像素图像经2×2像素池化层后输出尺寸为2×2像素。平均池化原理与最大池化原理类似,只不过用平均值代替最大值。目前大量实验表明最大池化效果较好,因此大部分网络中采用最大池化作为池化层。图2.2池化层原理Figure2.2Principleofpoollayer(3)激活函数卷积操作虽然复杂,但本质是一种线性变换,无法处理具有非线性分布特征的数据。然而,实际应用中的大部分数据不满足线性分布特征,为了能够将卷积神经网络应用于实际数据,需采用非线性激活函数将其线性特征转化为非线性特征以提高网络模型的拟合能力。ReLU(RectifiedLinearUnits)函数是当前应用最为广泛的函数之一。该函数直接输出大于0的输入数据,但当输入数据小于0时,函数输出为0。其计算公式如下:y=max(0,x)(2.1)ReLU函数如图2.3所示,其中横坐标为,纵坐标为,ReLU函数的形式与Sigmoid和Tanh函数有明显区别,它相当于一个过滤器,将小于0的输入数据过滤掉而不影响大
收敛速度较Sigmoid和Tanh函数均有明显提升。然而,ReLU函数同样存在非0均值的问题。此外,应用ReLU激活函数时,有些神经元可能永远也不会被激活,该问题成为DeadReLU问题。产生DeadReLU问题可能的原因主要有以下两点:糟糕的初始化和较高的学习率。当参数初始化不理想时可能会导致部分神经元无法参与到反向传播过程因而无法实现参数更新。当学习率较高时会导致训练过程参数更新太过明显而使网络陷入DeadReLU问题。目前解决DeadReLU问题的主要方法是采用Xavier初始化方法,同时避免采用过大的学习率以及学习率自更新等方法。图2.3ReLU函数Figure2.3ReLUfunction(4)批标准化层卷积神经网络通常假设每个批次内的数据均服从独立同分布。但随着网络层数的加深,输入数据经过不同卷积层的输出结果不再满足独立同分布,且网络训练过程中,每层参数不断变换,导致每个隐含层的输出结果不甚稳定。批标准化层就是为了解决不同隐含层输出结果不满足独立同分布而提出的。批标准化实际上就是将该轮迭代数据转换成均值为0方差为1的标准正态分布,然后将满足独立同分布的数据输入到下一个卷积层,对每层输出结果均做批标准化,保证数据分布的稳定性,进而提高网络学习效率。批标准化的本质是规范化数据,以保障数据特征的稳定性。批标准化采用如下公式计算:varxExxx(2.2)其中,x表示该批次内的像素值,E(x)表示该批次内所有像素的均值,var(x)表示该批次内所有像素的方差。虽然将数据变成均值为0方差为1的标准正态分布能够为卷积神经网络提供稳定的数据特征,解决传统网络训练过程中存在的“数据漂移”现象,但服从标准正态分布的数据会导致网络表达能力下降。为了解决该问题,经典的批标准化算法会在每个神经元加上表示尺度缩放和平移的两?
本文编号:3128845
【文章来源】:辽宁工程技术大学辽宁省
【文章页数】:67 页
【学位级别】:硕士
【部分图文】:
卷积原理
?暗酵枷裰腥?磕勘?特征进而无法保障网络输出精度,降低输入图像尺寸会导致网络模型无法“看”到占据较大区域目标的完整形态,使其无法学习到目标的全局特征。为了提高网络对不同尺寸目标的学习能力、减少网络对显存的需求,卷积神经网络多采用池化层减小图像尺寸、保障卷积核能够“看”到目标的全局特征进而学习全局特征。池化层实际上是将感受野内部的全部像素用一个或多个像素表达进而达到减小图像尺寸的操作。常用的池化方式有最大池化和平均池化。最大池化就是将感受野内所有像素的最大值作为输出值,其中池化层原理如图2.2所示,该池化层尺寸为2×2像素,将感受野中最大的值作为输出值保留其余值并丢掉不用的,4×4像素图像经2×2像素池化层后输出尺寸为2×2像素。平均池化原理与最大池化原理类似,只不过用平均值代替最大值。目前大量实验表明最大池化效果较好,因此大部分网络中采用最大池化作为池化层。图2.2池化层原理Figure2.2Principleofpoollayer(3)激活函数卷积操作虽然复杂,但本质是一种线性变换,无法处理具有非线性分布特征的数据。然而,实际应用中的大部分数据不满足线性分布特征,为了能够将卷积神经网络应用于实际数据,需采用非线性激活函数将其线性特征转化为非线性特征以提高网络模型的拟合能力。ReLU(RectifiedLinearUnits)函数是当前应用最为广泛的函数之一。该函数直接输出大于0的输入数据,但当输入数据小于0时,函数输出为0。其计算公式如下:y=max(0,x)(2.1)ReLU函数如图2.3所示,其中横坐标为,纵坐标为,ReLU函数的形式与Sigmoid和Tanh函数有明显区别,它相当于一个过滤器,将小于0的输入数据过滤掉而不影响大
收敛速度较Sigmoid和Tanh函数均有明显提升。然而,ReLU函数同样存在非0均值的问题。此外,应用ReLU激活函数时,有些神经元可能永远也不会被激活,该问题成为DeadReLU问题。产生DeadReLU问题可能的原因主要有以下两点:糟糕的初始化和较高的学习率。当参数初始化不理想时可能会导致部分神经元无法参与到反向传播过程因而无法实现参数更新。当学习率较高时会导致训练过程参数更新太过明显而使网络陷入DeadReLU问题。目前解决DeadReLU问题的主要方法是采用Xavier初始化方法,同时避免采用过大的学习率以及学习率自更新等方法。图2.3ReLU函数Figure2.3ReLUfunction(4)批标准化层卷积神经网络通常假设每个批次内的数据均服从独立同分布。但随着网络层数的加深,输入数据经过不同卷积层的输出结果不再满足独立同分布,且网络训练过程中,每层参数不断变换,导致每个隐含层的输出结果不甚稳定。批标准化层就是为了解决不同隐含层输出结果不满足独立同分布而提出的。批标准化实际上就是将该轮迭代数据转换成均值为0方差为1的标准正态分布,然后将满足独立同分布的数据输入到下一个卷积层,对每层输出结果均做批标准化,保证数据分布的稳定性,进而提高网络学习效率。批标准化的本质是规范化数据,以保障数据特征的稳定性。批标准化采用如下公式计算:varxExxx(2.2)其中,x表示该批次内的像素值,E(x)表示该批次内所有像素的均值,var(x)表示该批次内所有像素的方差。虽然将数据变成均值为0方差为1的标准正态分布能够为卷积神经网络提供稳定的数据特征,解决传统网络训练过程中存在的“数据漂移”现象,但服从标准正态分布的数据会导致网络表达能力下降。为了解决该问题,经典的批标准化算法会在每个神经元加上表示尺度缩放和平移的两?
本文编号:3128845
本文链接:https://www.wllwen.com/kejilunwen/shengwushengchang/3128845.html
最近更新
教材专著