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

基于轻量化深度学习模型的结构缺陷快速识别与分类方法

2022-04-14 01:22:04 来源:中国专利 TAG:


1.本发明涉及缺陷识别技术领域,特别涉及基于轻量化深度学习模型的结构缺陷快速识别与分类方法。


背景技术:

2.随着经济的快速发展,各种各样的建筑的建造速度也越来越快,如:楼房、桥梁,堤坝以及各种工业建筑,同时,这些建筑在长期的使用过程中,也会出现破损和老化,因此,需要定期对建筑进行检测和修复,以防发生安全事故,目前,最常见的做法是基于视觉的人工监测方法,采用肉眼检查、手工描绘等方式来识别建筑的裂缝等缺陷,并记录其分布及形状,然而,人工检查时效性低,性价比低,需要投入大量人力物力,不易及时发现建筑存在的安全隐患,且检查结果的有很大的主观性,不同工程人员对同个结构的判断也存在差异性,准确率较低。
3.因此,如何提供一种准确率高的图像缺陷识别方法,是本领域技术人员亟待解决的问题。


技术实现要素:

4.本技术实施例提供了基于轻量化深度学习模型的结构缺陷快速识别与分类方法,旨在解决现有图像缺陷识别技术准确率低的问题。
5.第一方面,本技术提供了基于轻量化深度学习模型的结构缺陷快速识别与分类方法,包括:
6.利用vgg16-u-net模型对采集的缺陷图像进行语义分割处理,去除图像背景噪声干扰;
7.构建efficientnetb0模型,对efficientnetb0模型进行训练,得到训练好的efficientnetb0模型;
8.将语义分割处理后的缺陷图像输入训练好的efficientnetb0模型中进行识别,并输出识别结果。
9.第二方面,本技术还提供了基于轻量化深度学习模型的结构缺陷快速识别与分类系统,该系统包括:
10.语义分割单元,用于利用vgg16-u-net模型对采集的缺陷图像进行语义分割处理,去除图像背景噪声干扰;
11.模型训练单元,用于构建efficientnetb0模型,对efficientnetb0模型进行训练,得到训练好的efficientnetb0模型;
12.缺陷识别单元,用于将语义分割处理后的缺陷图像输入训练好的efficientnetb0模型中进行识别,并输出识别结果。
13.第三方面,本技术还提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算
机程序时,实现上述第一方面所述的基于轻量化深度学习模型的结构缺陷快速识别与分类方法。
14.第四方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行上述第一方面所述的基于轻量化深度学习模型的结构缺陷快速识别与分类方法。
15.本技术提出了基于轻量化深度学习模型的结构缺陷快速识别与分类方法,所采用的轻量型模型efficientnetb0,模型小,运行速度快,方便集成到移动端,包括手机或行程记录仪等移动设备端,本技术的算法协同了vgg16-u-net的语义分割技术,可实现图像的自动预处理,提高图像识别算法的鲁棒性;数据评价模型的性能相当准确,模型规模和训练速度之间达到良好的平衡。模型的训练速度和识别速度加快,使用余弦退火的随机梯度下降算法以提高模型学习率,避免陷入局部最小值,快速寻找全局最小值;利用softmax函数可减少精度损失,并提高大约15%的效率,降低训练成本,显著的提升了卷积神经模型的性能。
附图说明
16.为了更清楚的说明本技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见的,下面的描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
17.图1为本技术实施例提供的基于轻量化深度学习模型的结构缺陷快速识别与分类方法流程图;
18.图2为本技术实施例提供的vgg16-u-net模型结构图;
19.图3为本技术实施例提供的efficientnetb0模型结构图;
20.图4为本技术实施例提供的mbconvk结构图;
21.图5为本技术实施例提供的se模块结构图。
具体实施方式
22.下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。
23.参见图1实施例所示基于轻量化深度学习模型的结构缺陷快速识别与分类方法流程图,包括:
24.s101、利用vgg16-u-net模型对采集的缺陷图像进行语义分割处理,去除图像背景噪声干扰。
25.参见图2实施例提供的vgg16-u-net模型结构图;
26.vgg16-u-net模型由编码层、解码层及最终卷积层3个部分组成,通过迁移学习使用已经训练好的vgg16-u-net模型完成参数初始化。图像通过输入层输入编码器,编码器提取图像特征,图像特征通过跳跃连接输入到解码器中,解码器的反卷积层对图像进行上采样,将特征逐步恢复到图像的原始大小,全卷积层对图像中每个像素进行预测分类,不同类别的像素由不同颜色标记。
27.在一实施例中,本技术的vgg16-u-net模型的训练需要循环多次,从而使得模型完全收敛,训练过程每次包含前向传播和反向传播两个过程,图像输入模型经过输入层输入模型,最终输出结果,将连同带有像素类别的图像计算得出dice损失,将得到的dice损失反向传播至模型,并且采用随机梯度下降方式更新模型中各层的参数权重,之后重新开始新的一次训练。在训练时,余弦退火的随机梯度下降不断调整学习率,防止陷入局部最优点。在模型每一次训练完成后测试模型性能,待模型达到设定的训练次数时,将在测试集上性能最好的模型保存下来,并将其作为训练好的vgg16-u-net模型。
28.缺陷图像存在着大量背景噪声,如何高效处理这些噪声是自动识别缺陷的关键。本技术采用vgg16-u-net来对图像语义分割去除图像背景噪声。语义分割是深度学习计算机视觉的一个重要分支。与分类任务不同,语义分割需要判断图像每个像素点的类别,进行精确分割。u-net是为实现生物医学图像分割而开发的全卷积神经模型,采用金字塔形结构,利用反卷积层对最后一个卷积层的输出进行采样,使它恢复到原始输入图像的尺寸,并对图像每个像素进行预测,同时保留原始输入图像的空间位置信息。该模型具有卷积编码与卷积解码完全对称的模型结构。该模型较浅层用来解决像素定位问题,较深层用来解决像素分类问题。将低层次特征映射的组合,构建成高层次复杂特征,从而实现精确定位,解决图像分割问题,是目前扩展性较好的全卷积模型。
29.在一实施例中,本技术的u-net的编码器采用vgg16的前15层,vgg16采用3
×
3卷积核代替传统卷积神经模型中的较大卷积核,使得模型更加简洁、高效。为阻止模型参数过多导致过拟合现象,本技术在卷积层之间加入dropout层。为快速进行特征提取,并通过迁移学习将已经训练好的vgg16模型参数完成编码器部分的参数初始化,不仅能够加快网络的收敛速度,同时能够提高泛化能力。在解码器中,使用反卷积层对图像进行上,将特征逐步恢复到图像的原始大小。在解码器后连接一个带有sigmoid激活函数的1
×
1卷积层,生成图像中每个像素的预测。编码器和解码器之间通过跳跃连接,最终构建vgg16-u-net全卷积神经模型,实现裂缝等缺陷与复杂的图片背景的快速分离。vgg16-u-net通过对每个像素进行预测、推断、分类,将图像中不同像素分类,将属于背景噪声的像素用黑色表示,属于裂缝等缺陷的像素用白色表示,图像中裂缝等缺陷与背景噪声分离,且保留了裂缝等缺陷的形态和走向。以vgg16为编码器的u-net模型充分发挥了vgg和传统u-net的优势,解决了在以往裂缝等缺陷的分割网络存在的欠分割现象,具有较好的鲁棒性,可以更好的识别在人类手工标注中可能被忽略的较小裂缝等缺陷的细节。
30.s102、构建efficientnetb0模型,对efficientnetb0模型进行训练,得到训练好的efficientnetb0模型。
31.参见图3实施例所示的efficientnetb0模型结构图;
32.efficientnetb0由卷积层、池化层、全连接层和若干个mbconvk构成,mbconvk的具体结构如图4所示,输入mbconvk的特征矩阵会经过一个1*1的卷积层后升维,进行batch normalization处理和swish函数激活,然后经过一个k*k的深度可分离卷积层,之后再次进行batch normalization处理和swish函数激活,然后通过一个se模块,se模块的结构如图5所示,se模块后连接一个1*1的卷积层,该卷积层接收se模块的输入后,对其进行卷积并进行batch normalization处理,最后再经过drop out层进行一定比例的失活。
33.在构建efficientnetb0模型之后,还需要对其进行训练;
34.本技术的efficientnetb0模型的训练需要循环多次,从而使得模型完全收敛,训练过程每次包含前向传播和反向传播两个过程,图像输入模型经过输入层输入模型,最终输出结果,将连同图像真实标签计算得出交叉熵,将得到的交叉熵损失反向传播至模型,并且采用随机梯度下降方式更新模型中各层的参数权重,之后重新开始新的一次训练。在训练时,余弦退火的随机梯度下降不断调整学习率,防止陷入局部最优点。在模型每一次训练完成后测试模型性能,待模型达到设定的训练次数时,将在测试集上性能最好的模型保存下来,并将其作为最终的efficientnetb0模型。
35.在一实施例中,本技术使用采集的缺陷图像数据集训练efficientnetb0,将缺陷图像数据集分为训练集、验证集、测试集三个部分,比例分别为6:2:2,训练集的作用是用来训练efficientnetb0自动识别裂缝等缺陷;验证集的作用是为了观察模型在训练过程中识别裂缝等缺陷的准确率;测试集不参与训练过程,为最终测试模型的性能。在训练时,不断调整学习率,并在模型训练完成后测试模型性能,将在测试集上性能最好的模型保存下来。
36.以往,研究人员需要通过人工放大或缩小方式来调整cnn的网络深度、网络宽度、图像分辨率,但由于计算资源有限,只能调整单个模型维度参数,无法找到最好的模型维度组合。本技术通过使用efficientnetb0模型,利用一系列固定的尺度缩放系数来统一缩放模型维度,使得模型有更高的精度和更高的效率,且模型轻量化,在imagenet上取得较好的结果。
37.在训练过程中,模型容易陷入局部最优点,2016年提出的余弦退火的随机梯度下降算法可以在一定的时间内调整学习率使得模型跳出局部最优点到达全局最优点,因此本专利中,优化器采用余弦退火的随机梯度下降算法。训练时,当随机梯度下降算法陷入局部最小值,可以避免陷入局部最小值,并找到通向全局最小值的路径。
38.因此本专利采用的余弦退火的随机梯度下降算法如下所示:
[0039][0040]
其中,i为重启的次数;和分别为学习率的最大值和最小值;t
cur
为当前执行的epochs;ti为第i次的重启中总的epochs。
[0041]
本专利损失函数采用改进的交叉熵损失函数和dice损失损失函数。在深度学习的权重参数优化中,损失函数用来评估模型的预测值与真实值不一致的程度,是神经模型中优化的目标函数损失函数。相比于其他损失函数,在面对噪声数据时,交叉熵损失函数更具有鲁棒性,在面对噪声较少的数据时,交叉熵损失函数更准确,可以收敛到更好的局部极小值点处。为提高计算效率,将神经模型最后一层全链接层的输出结果进行softmax函数激活,把输出结果映射到(0,1)区间内,将得到的结果运用交叉熵损失函数处理。
[0042]
交叉熵损失函数为:
[0043][0044]
其中,n为样本数量;y为实际的标签;a为预测的输出。
[0045]
softmax激活函数为:
[0046][0047]
其中,zizi为第i个节点的输出值;c为输出节点个数。
[0048]
dice损失函数是一种集合相似度度量函数,通常用于计算两个样本的相似度,取值范围在[0,1],常用于语义分割。dice损失函数为:
[0049][0050]
其中,yi为神经网络输出;ti为真实标签值;ε为平滑系数。
[0051]
s103、将语义分割处理后的缺陷图像输入训练好的efficientnetb0模型中进行识别,并输出识别结果。
[0052]
在一实施例中,本技术还提供了基于轻量化深度学习模型的结构缺陷快速识别与分类系统,该系统包括:
[0053]
语义分割单元,用于利用vgg16-u-net模型对采集的缺陷图像进行语义分割处理,去除图像背景噪声干扰;
[0054]
模型训练单元,用于构建efficientnetb0模型,对efficientnetb0模型进行训练,得到训练好的efficientnetb0模型;
[0055]
缺陷识别单元,用于将语义分割处理后的缺陷图像输入训练好的efficientnetb0模型中进行识别,并输出识别结果。
[0056]
在一实施例中,本技术还提供了一种计算机设备,其包括存储器、处理器及存储在存储器上并可在所述处理器上运行的计算机程序,处理器执行所述计算机程序时,实现上述任一实施例所述的基于轻量化深度学习模型的结构缺陷快速识别与分类方法。
[0057]
在一实施例中,本技术还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时使所述处理器执行上述任一实施例所述的基于轻量化深度学习模型的结构缺陷快速识别与分类方法。
[0058]
以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。
再多了解一些

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

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

相关文献