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

基于深度学习算法的地下结构裂纹病害判别方法

2022-06-05 05:00:54 来源:中国专利 TAG:


1.本发明涉及裂纹判别,具体涉及一种基于深度学习算法的地下结构裂纹病害判别方法。


背景技术:

2.随着地下工程建设的不断推进,越来越多的地下结构将步入检测维修阶段,未来地下结构维护和管理任务将极其艰巨。在定期检查中,裂纹(即裂缝)检查处于首要位置。裂纹检查项目包括位置、长度、宽度和发展情况。传统的裂缝检测主要依靠人力完成,测量员必须贴近裂缝表面,当受到空间限制时必须依靠脚手架等工具的帮助才能完成,效率低下、人力物力成本较高、测量准确性较低,无法满足未来大规模地下结构安全检测的任务需求。


技术实现要素:

3.发明目的:本发明的目的是提供一种基于深度学习算法的地下结构裂纹病害判别方法,解决现有裂纹检测依靠人工,效率低下,准确性低的问题。
4.技术方案:本发明所述的基于深度学习算法的地下结构裂纹病害判别方法,包括以下步骤:
5.(1)收集地下结构裂纹图像作为数据集,对图像进行预处理,采用交叉验证法将数据集划分为训练集和验证集;
6.(2)采用训练集的数据训练mask r-cnn模型,通过学习训练集上裂缝特征不断调整连接权参数,直到达到设置的训练次数,则停止训练,得到mask r-cnn模型及其连接权参数,通过该模型在验证集上的损失函数值来确定算法的超参数;
7.(3)采用最终mask r-cnn模型检测待测的裂缝图像,从待测的裂缝图像随机采样出子图像,分别使用mask r-cnn模型进行检测,并采用非极大抑制的方法进行筛选是否有裂缝,并输出裂缝掩膜图像;
8.(4)对裂缝掩膜图像进行二值化处理,利用骨架提取算法得到裂缝的骨架图像,统计骨架图像中像素值非0的像素点个数,得到裂缝的像素长度,获取裂缝骨架图像中像素非0点的坐标,将每个非0像素点看作离散点进行二次函数拟合,得到裂缝骨架的二次函数表达式,根据得到的二次函数表达式求曲线上点的法线方程,统计法线与裂缝掩膜相交部分非0像素点个数即为裂缝像素宽度,计算裂缝平均像素宽度参数值,根据裂缝平均像素宽度参数值和像素长度得到裂缝的面积;
9.(5)根据计算得到的裂纹几何特征确定地下结构裂纹病害等级。
10.优选的是,所述步骤(1)中图像预处理包括放大、旋转、裁剪去除噪声保留裂缝部分,将数据按8:2划分测试集,再利用k折交叉验证法划分为训练集和验证集。
11.所述步骤(2)中损失函数包括rpn网络的两个损失函数,mrcnn的两个损失函数,以及mask分支的损失函数,具体如下:
12.l=l
rc
l
rb
l
cls
l
box
l
mask

13.式中l
rc
表示rpn网络的分类损失函数;l
rb
表示rpn网络边界框回归损失函数;l
cls
表示目标分类损失函数;l
box
表示预测框回归损失函数;l
mask
表示生成掩模图像损失函数。
14.其中rpn部分和mrcnn部分的分类损失使用交叉熵损失函数,而回归损失均采用smoothl1函数;mask分支的损失函数采用掩膜二进制交叉熵损失函数;
15.目标分类损失函数和rpn网络分类损失函数使用对数损失函数即:
[0016][0017]
式中y表示验证是否属于分类的二进制参数;p表示目标属于分类的概率;
[0018]
预测框回归损失函数和rpn预测框回归损失函数选择l1范数损失函数,其中范围为(-1, 1),具体如下:
[0019][0020]
式中表示预测抓取框位置,pi表示标注抓取框位置;
[0021]
掩模图损失函数采用的是mask分支对应的二值掩模图,其中每个roi输出的维度为k*m2,k个类别的掩模图的分辨率为m*m,l
mask
表示平均二值交叉熵损失,其计算过程如下:
[0022][0023]
式中y
ij
表示大小为m*m区域内像素(i,j)的标签;表示在相同位置上第k分类掩模像素预测值。
[0024]
所述步骤(3)具体为:采用大小为k
×
k的滑动窗口按照每次移动m个步长对待测图像进行从上到下、从左到右的滑动;对每个窗口内的图像进行检测,可得到mask r-cnn对窗口内图像的分类概率,当分类概率较高则认为该窗口内存在裂缝部分;对每个窗口都进行检测后,会得到不同窗口检测到裂缝的概率,最后采用非极大值抑制的方法筛选出概率分类最大的框,得到最终裂缝检测结果。
[0025]
所述步骤(4)中具体为:对mask r-cnn输出的图像去除边框,提取裂缝掩膜图像;对提取的裂缝掩膜图像进行二值化处理,利用图像细化方法对裂缝骨架进行提取,得到裂缝的骨架图像;统计裂缝的骨架图像中像素值非0的像素点个数,得到裂缝的像素长度;将每个非0像素点看作离散点进行二次函数y=a0 a1x a2x2拟合,其中a0,a1,a2为二次函数系数;根据得到的二次函数表达式求曲线上点的法线方程,统计法线与裂缝掩膜相交部分非0像素点个数即为裂缝像素宽度,计算得到裂缝平均像素宽度参数值,根据裂缝平均像素宽度参数值和像素长度得到裂缝的面积。
[0026]
所述步骤(5)中根据裂纹类型、单位面积裂纹数量、最大裂纹宽度、最大裂纹长度来评定裂纹病害等级,具体如下:
[0027]
若满足有2条以上危险裂纹、每平米面积裂纹数大于等于10、最大裂纹宽度大于等于3.2mm、最长裂纹长度10m以上中的任意一个条件,判定裂纹病害等级为1级;
[0028]
若满足仅有一条危险裂纹、每平米面积裂纹数6~9、最大裂纹宽度0.8~3.2mm、最长裂纹长度5~10m中任意两个条件及以上,判定裂纹病害等级为2级;
[0029]
若满足裂纹类型全为普通裂纹、每平米面积裂纹数3~5、最大裂纹宽度0.5~0.8mm、最长裂纹长度1~5m中任意3个条件及以上,判定裂纹病害等级为3级;
[0030]
若满足裂纹类型全为普通裂纹、每平米面积裂纹数小于等于2、最大裂纹宽度小于等于0.5mm、最长裂纹长度0~1m中任意3个条件及以上,判定裂纹病害等级为4级。
[0031]
有益效果:采用基于深度学习智能算法的图像识别技术可以有效的实现地下结构的裂纹病害检测智能化,具有远距离、无接触、快速便捷、准确度高的优点,结合裂纹病害与结构安全的相关性分析,可以实现对地下结构健康状态的判别,本发明可应用于各类混凝土结构的裂纹智能检测与地下结构裂纹病害智能诊断,为地下结构外观检测智能化提供了理论基础,也可有效避免大规模地下结构人工巡检可能带来的误差。
附图说明
[0032]
图1为本发明流程示意图;
[0033]
图2为图像预处理示意图;
[0034]
图3为mask r-cnn结构图;
具体实施方式
[0035]
下面结合附图对本发明进行进一步说明。
[0036]
本发明公开的基于深度学习算法的地下结构裂纹病害判别方法,包括以下步骤:
[0037]
(1)基于mask r-cnn深度学习算法的裂纹图像自动识别
[0038]
首先准备裂缝检测所需的数据集,收集20000张以上包含裂缝的图像,227
×
227像素并带有rgb通道。对数据集中图像进行数据预处理,对图像进行放大、旋转、裁剪、灰度化等操作,去除无用信息,使裂缝图像特征更突出,如图1所示;
[0039]
利用labelme图像标注工具对数据集中图像进行标注,其中裂纹样本中某2条裂纹的标注数据如图2所示;
[0040]
划分数据集:首先采取8:2比例将收集到的图像划分出测试集;再利用k折交叉验证法,划分训练集、验证集。模型在训练过程使用的数据集称为模型的训练集,模型训练结束后,需要在一些新样本上测试模型的预测效果,此时使用的新样本为模型的测试集,模型验证集可用于调整超参数,具体为:交叉验证法首先将d随机划分为k个互不相交的子集:d=d1∪d2∪...∪dk,其中每个子集di中都包含相同数目的样本,为了更好地保留数据集中样本分布的特点,此处划分数据集子集时采用分层抽样的方法,对于数据集子集,每次训练都采取其中k-1个数据子集作为训练集,剩余的一个子集作为测试集。然后进行k次训练和测试,最终将k次测试结果的平均值作为最终结果输出,初始训练参数如下:
[0041]
表1初始训练参数
[0042]
参数设置相关说明gpu_count=1gpu个数为1images_per_gpu=4每个gpu同时处理的图像
num_calsses=2识别类别,包括背景和目标物体
[0043]
损失函数的选择是图像识别算法中的重要环节,mask r-cnn中总共有五个损失函数,分别是rpn网络的两个损失,mrcnn的两个损失,以及mask分支的损失函数。综合以上五个损失函数可以得到mask r-cnn的损失函数:
[0044]
l=l
rc
l
rb
l
cls
l
box
l
mask
[0045]
式中l
rc
表示rpn网络的分类损失函数;l
rb
表示rpn网络边界框回归损失函数;l
cls
表示目标分类损失函数;l
box
表示预测框回归损失函数;l
mask
表示生成掩模图像损失函数;
[0046]
其中rpn部分和mrcnn部分的分类损失使用交叉熵损失函数,而回归损失均采用smoothl1函数;mask分支的损失函数采用掩膜二进制交叉熵损失函数;
[0047]
目标分类损失函数和rpn网络分类损失函数使用对数损失函数即:
[0048][0049]
式中y表示验证是否属于分类的二进制参数;p表示目标属于分类的概率。
[0050]
预测框回归损失函数和rpn预测框回归损失函数选择l1范数损失函数,其中范围为(-1, 1)。
[0051][0052]
掩模图损失函数采用的是mask分支对应的二值掩模图,其中每个roi输出的维度为k*m2,k个类别的掩模图的分辨率为m*m。lmask表示平均二值交叉熵损失,其计算过程如下:
[0053][0054]
式中y
ij
表示大小为m*m区域内像素(i,j)的标签;表示在相同位置上第k分类掩模像素预测值。
[0055]
通过分析确定mask r-cnn算法的参数设置如下:
[0056]
表2最终确定的mask rcnn算法的参数
[0057][0058]
采用上述确定的mask r-cnn模型检测待测裂纹图像,采用大小为8
×
8的滑动窗口按照每次移动4个步长对待测图像进行从上到下、从左到右的滑动;对每个窗口内的图像进行检测,可得到mask r-cnn对窗口内图像的分类概率,当分类概率较高则认为该窗口内存在裂缝部分;对每个窗口都进行检测后,会得到不同窗口检测到裂缝的概率,这些窗口大小会存在重复较高的部分,最后采用非极大值抑制的方法进行筛选出概率最大的框,得到最终检测结果,在此过程中非极大值抑制算法发挥了及其重要的作用,利用非极大值抑制算法找到最佳的目标边界框的方法来解决同一目标的位置上会产生的大量的候选框的重叠问题,以消除冗余的边界框。其具体做法如下:
[0059]
得到预测框的大小信息以及位置;
[0060]
筛选出重叠区域面积大于设定值的区域。
[0061]
其中重叠的区域面积为可以表示为网络产生的候选框(candidate bound)与原标记框(ground truth bound)的交叠率或者说重叠度,即候选框与原标记框交集与并集的比值,用iou来表示。且当相关度越高时,iou的值越大。当iou的值达到1时,便说明达到了完全重叠,取当候选框与原标记框的iou大于0.5时,被认为是有效的rol,且这些有效的rol会被计入,iou的计算如下:
[0062][0063]
(2)针对识别的裂纹,采取骨架提取算法和函数拟合方法获得裂纹长宽等几何特征参数
[0064]
为了进一步获取裂纹的几何尺寸信息,需要对图像进行细化,提取出图像的骨架信息,对mask r-cnn输出的图像去除边框,提取裂缝掩膜图像;对提取的裂缝掩膜图像进行二值化处理,利用图像细化方法对裂缝骨架进行提取,得到裂缝的骨架图像;统计裂缝的骨架图像中像素值非0的像素点个数,得到裂缝的像素长度;将每个非0像素点看作离散点进行二次函数y=a0 a1x a2x2拟合,其中a0,a1,a2为二次函数系数;根据得到的二次函数表达式求曲线上点的法线方程,统计法线与裂缝掩膜相交部分非0像素点个数即为裂缝像素宽度,计算得到裂缝平均像素宽度参数值,根据裂缝平均像素宽度参数值和像素长度得到裂缝的面积。
[0065]
其中,细化算法满足条件:算法具有收敛性;对于细化后的图像可保持其区域连通的性质;保留原始图像形状;图像最终提取的是原连通区域的中轴线;算法运行速度较快且
细化结果较为准确;
[0066]
对原始图像建立一个图像副本,并在图像副本上进行后续操作:
[0067]
细化算法处理的图像为二值图像,各像素点的像素值为1或0。首先对图像副本进行扫描,对于图片中像素值非0的像素点,考察其周围像素点的相关性质。若该像素点满足如下的四个条件,则说明该像素点非中心线上的像素点,因此需要在原始图像中将该像素点的像素设置为0。像素点周围的各点像素值相加所得结果在2-6之间。其中各点像素值相加至少为2可确保该点非端点或孤立点。最大值为6可保证该点为边界点而非内部点,经过多次迭代得到骨架图像。
[0068]
采用最小二乘法思想拟合二次曲线函数。首先,将裂缝掩膜图像进行散点化,只存储非0像素值点的坐标。将这些点的横纵坐标都存储在列表中,利用第三方库numpy中的polyfit函数,进行曲线拟合。
[0069]
二次曲线方程为:
[0070]
y=a0 a1x a2x2[0071]
离散的各点到这条曲线的平方和则为:
[0072][0073]
最小二乘法的第一步处理就是对f(a0,a1,a2)分别求对ai的偏导数,得到等式:
[0074][0075][0076][0077]
最小二乘法的第二步处理就是将其整理为针对的正规方程组。最终整理的方程组如下:
[0078][0079][0080][0081]
最小二乘法的第三步处理就是求解这个多元一次方程组,得到多项式的系数a0,a1,a2,就可以得到曲线的拟合多项式函数。
[0082]
利用第三方库numpy中的polyfit函数可实现函数二次函数拟合,并得到拟合函数的系数和表达式。计算裂缝宽度时,需要用到拟合函数每点的法线方程,根据法线和切线斜
率互为倒数的性质,可以求得拟合曲线上每点的法线方程。
[0083]
二次曲线方程为:
[0084]
y=a0 a1x a2x2[0085]
则曲线上每点的切线斜率为:
[0086]
k1=a1 2a2x
[0087]
而法线的斜率为:
[0088][0089]
由于已知拟合曲线上点的坐标,因此可以求出每一点对应的法线方程的常数项b:
[0090][0091]
因此可以求出拟合曲线上每一点对应的法线方程。
[0092]
(3)根据计算的裂纹几何特征确定地下结构裂纹病害等级,考虑了自动识别裂纹的类型、单位面积上裂纹数量、最大裂纹宽度、最长裂纹长度。综合评价等级共四级,1~4级建议对应的处治方式分别为:需要立刻修复维护、需要立刻专项检测、需要重点观测、正常,如下表所示:
[0093]
表3基于裂纹智能识别的地下结构损伤病害等级综合判定表
[0094]
再多了解一些

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

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

相关文献