基于注意力机制语义分割网络的大坝裂缝检测方法

2024-04-01 06:32王泽焘
水利建设与管理 2024年2期
关键词:大坝注意力标签

王泽焘

(甘肃电投河西水电开发有限责任公司,甘肃 张掖 734000)

大坝运行时,通常伴随着流水风力侵蚀、地质环境变化、混凝土老化等现象,大坝表面不可避免地会产生裂缝[1-2],若不及时维修,裂缝会扩展到坝体内部,形成渗漏,严重影响大坝运行。对大坝裂缝进行实时检测,可以及时解除问题隐患,对保证大坝安全可靠运行具有重要意义。

大坝裂缝检测历来是水工界中外学者研究的重点问题。李生勇等[3]基于数字图像处理的理论构建一套裂缝检测系统,将采集到的图像经数字图像处理得到含裂缝的二值化图,进而获得裂缝的特征参数。唐忠海等[4]利用倾斜摄影测量技术对大坝立体建模,在模型上提取裂缝的空间位置,建立裂缝信息数据库,可以较好地评估裂缝随时间变化的状态。徐波等[5]采用声波机理探测坝体存在的裂缝,当脉冲波在坝体混凝土中传播时,测定几个时相声波在混凝土中的波速、首波振幅和频率等声学参数,判断裂缝的发育状况。Cho等[6]将地面激光扫描仪获得的数据转换为八叉树结构,用改进的剪枝算法结合中值过滤和K-means聚类结果删除表面的非裂缝部分,根据Otsu的二值化方法检测裂缝体。Xu等[7]提出一种基于裂缝特征增强和注意力机制的大坝裂缝检测模型,生成对抗网络扩充大坝裂缝图像数据集,采用注意力机制对裂缝特征进行增强,实验结果表明网络对大坝裂缝具有较好的检测效果。

随着技术的进步,研究人员发展了多种大坝裂缝测量技术,但也存在着一些不足:人工检测、全站仪检测、光纤传感器检测耗时耗力,实时性不高,危险性较大;传统图像及机器视觉的方法检测精度不高、特征提取困难;现有基于深度学习的检测方法无法完整提取裂缝表面,存在间断和边缘提取不准确的问题。对此本文提出一种基于改进的U-net网络结构的语义分割网络模型,引入自注意力机制模块,使网络能够更好地顾及裂缝固有的细而长的特征,得到裂缝完整的分割结果,进而采用形态学方法对分割结果进行处理,提取裂缝的几何信息,并对特征信息进行分析。

1 大坝裂缝数据集构建

深度学习是以数据驱动的算法,数据集质量和数量直接影响最终的任务结果,对此需要高质量的大坝裂缝数据集,经文献查阅没有找到相关高精度裂缝数据集。对此选择甘肃省某河流3座梯级电站作为实验对象,大坝参数见表1。对上述大坝操控轻型无人机,近距离进行密集拍摄,获得1446张RGB原始图像,部分原始图像见图1,图像大小为7952×5304,空间分辨率为0.0007m,采用空三软件对图片进行几何纠正,采用EISeg对图像中的裂缝进行标注,将原始数据按7∶1∶2比例划分成训练集、验证集和测试集。对原始图像和标注图像进行裁剪,丢弃没有裂缝的图像,并对裁剪后的图像进行常规图像增强操作,最终得到9880张训练集,1411张验证集,2822张测试集。

图1 部分原始图像

表1 大坝参数

2 研究方法

深度卷积神经网络的核心是卷积神经网络结构[8],它由多层卷积层、池化层和全连接层堆叠组成。卷积神经网络具有局部感知性、权值共享和多层抽象等特点,可以学习到对象的特征。激活函数将非线性特征引入到网络中,提高网络的特征表达能力。批量归一化操作可以起到正则化[9]的效果,加速网络收敛,提升网络模型训练精度,设计的网络结构在卷积层后采用批量归一化操作。网络通过建立的损失函数,经一定的优化算法对权重参数进行更新,最终得到满足任务需求的网络模型,进行大坝裂缝检测。

2.1 注意力机制语义分割网络

裂缝对象在形态结构上表现为细长,既有小尺度特征,又有大尺度特征,裂缝的纹理结构与周围背景墙面相近,针对大坝裂缝的特性设计基于注意力机制的网络结构,见图2。该网络结构以U形结构[10]作为主体架构,包含解码器、编码器及多尺度的注意力机制模块[11]。编码器借鉴MobileNetV3-Small[12]搭建,在五个尺度上对裂缝特征进行提取,可以更好地捕获裂缝细长的特征,高分辨率的特征空间细节信息丰富,有利于发现裂缝“细”的特征,低分辨率的特征空间语义信息丰富,可以充分发现裂缝“长”的特征,可以更好地将裂缝与其他对象区别开来,最后将基于每个尺度得到的特征图横向送入注意力机制模块A。注意力机制模块见图3,该模块对编码器每个尺度输出的特征图分别在通道、两个空间方向做自注意力机制处理,可以更好地捕获裂缝特性及其全局依赖关系,在空间维度对特征图进行加权处理,可以实现对非裂缝特征的过滤,强化裂缝特征。解码器部分将注意力机制送出的结果与前一级低分辨率的结果进行拼接处理,得到不同尺度上的预测结果,编码器依次向上传播,最终得到检测结果。

图2 注意力机制语义分割网络

图3 多尺度注意力机制模块

2.2 网络模型训练

在制作的数据集上进行实验验证,注意力机制语义分割网络基于PyTorch深度学习框架实现,并在一台带有Nvidia 1080Ti 11G GPU的计算机上训练。在训练中,批量大小设定为10,优化器采用Adam[13],初始学习率为0.001,利用MultiStepLR衰减策略更新学习率。采用从ImageNet数据集上得到的MobileNetV3-Small相应权重对编码器进行初始化,可以提升网络数值稳定性,防止梯度消失和梯度爆炸,加快网络收敛速度。

2.3 评价指标

大坝裂缝语义分割任务可以看作是一种像素级的二分类问题,其中裂缝为正样本(Positive),其他视为背景,作为负样本(Negative)。在本次任务中网络预测正确记为True,预测错误记为False。所有预测结果均可以构成二分类任务的混淆矩阵。裂缝被模型预测为裂缝的数量,记为TP,将背景预测为裂缝的数量,记为FP,将背景预测为背景的数量记为TN,将裂缝预测为背景的数量记为FN。基于以上结果,可以计算测试集结果的精确率(Precision)、召回率(Recall)以及交并比(IoU)。

精确率(Precision)指的是模型预测为裂缝的像素中实际为裂缝的像素数量占总预测为裂缝像素数量的比例,见式(1)。召回率(Recall)指的是预测为裂缝的像素数中实际为裂缝数量占总裂缝数量的比例,见式(2)。交并比(IoU)表示预测的裂缝像素数量与网络预测的像素数量、预测错误像素数量以及没有预测出的裂缝像素和的比值,见式(3)。相比准确率和召回率,IoU是一个更加严格的评价指标,在语义分割任务中,IoU通常作为主要指标来衡量方法的性能。

(1)

(2)

(3)

3 裂缝检测与结果分析

采用训练好的网络模型对测试集数据进行预测,得到的部分预测结果见图4。图4中第一行图像为原始图像,可以清晰地看到图像上裂缝的痕迹;第二行图像为原始图像对应的裂缝标注真值,采用标注工具对裂缝的走向宽度进行了准确标注;第三行图像为网络模型预测的结果,对比原始图像和标注图像,可以看到,当图像中裂缝数量少且走向规则有较大裂度时,网络预测结果精度高,如图4中第一、二、四列结果;当图像中裂缝数量较多,拓扑连接复杂且裂度较小时,网络预测效果较差,可以看到网络对裂缝有漏提现象,如图4中第三列结果。整体而言网络模型对大坝裂缝具有较好的检测效果,裂缝形态走向符合实际情况。

图4 部分实验结果

为了定量描述本文提出方法的有效性,从测试结果中选取几张典型的预测结果,计算检测结果图像的混淆矩阵、精确率、召回率和IoU值,见表2。通过定量计算的方法,评定文中提出的基于注意力机制的语义分割网络在大坝裂缝检测中的准确性。

表2 检测结果定量评价整理

图5中对裂缝的检测精度可以达到90.89%,召回率75.60%,图像中干扰因素较少时,网络模型对裂缝具有较好的检测效果。图6中对裂缝的检测精度为89.38%,召回率为75.12%,该图像中具有明显的水流痕迹,检测结果中没有出现这些干扰对象,与标注结果比较,裂缝检测准确,没有发生误检现象。图7中裂缝检测精确度为88.77%,召回率为76.85%,可以看到图像中存在明显的修补痕迹,检测结果中只有裂缝,修补轮廓没有对裂缝检测造成干扰。图8中对裂缝的检测精确率为73.62%,召回率为71.03%,存在多个干扰对象,如线性钢管、钢管与墙面间的缝隙、修补轮廓以及排水孔盖,对比预测结果,这些干扰对象没有发生误检,同时可以看到标签图像中遇到钢管时断开,但检测结果中没有将这些微小现象反映出来。通过表中数据和图像检测结果及标注图像的对比,可以发现,对裂缝检测具有较好的精度,裂缝轮廓清晰,走势准确,具有较好的连续性,IoU值和召回率相对精确率较低,原因是标注时对裂缝占有的像素值标注更加准确,检测时对某些像素进行分类时发生了错分。

图5 典型检测结果一

图6 典型检测结果二

图7 典型检测结果三

图8 典型检测结果四

通过以上定性和定量的实验分析可以看到本文提出的方法在利用高精度的影像数据对大坝裂缝进行检测时具有一定的效果,设计的网络具有一定的泛化性能。

4 形态学裂缝几何特征计算

对大坝裂缝进行检测时,不仅要回答坝体是否存在裂缝、裂缝具体位置在哪里这些基础问题,还要回答出已存在裂缝的几何统计特征,比如超过给定长度的裂缝有多少条,超过给定限差面积的裂缝有多少条,超过给定限差深度的裂缝有多少条。通过统计裂缝的几何特性,可以快速对大坝裂缝造成的险情作出评估,针对性地做出补救措施。对此采用基于数学形态学的方法对检测到的裂缝做几何特征计算。

采用本文提出的注意力机制语义分割网络对大坝裂缝进行准确检测,得到裂缝准确的检测结果。在裂缝几何特征信息计算时,选择横向和纵向两条裂缝检测结果验证本文方法的有效性。计算时将标签图像中裂缝的几何值作为真值,以此验证检测结果图像裂缝几何特征结果的准确性。选择合适的阈值对检测结果图像进行二值化处理,得到结果图像的二值化图像,对标签图像和二值化图像中裂缝占有的像素数进行统计,依据图像分辨率可以得到裂缝的面积。采用数学形态学的方法对标签图像和检测结果图像中裂缝的轮廓和骨架进行提取,统计裂缝骨架占有的像素数,依据图像分辨率可以得到长度特征值。最后依据面积和长度的关系,得到宽度的信息。

图9展示了一条横向分布裂缝的形态信息,其中图(a)是原始图像,图(b)为标注的裂缝对象,图(c)为形态学腐蚀膨胀提取到的标签骨架信息,图(d)为基于注意力机制语义分割网络检测到的裂缝信息,图(e)为基于形态学运算得到的裂缝骨架信息。设计程序统计图9中标签图像和预测结果中裂缝占有的像素数分别为3523,3468,图像对应空间分辨率为0.0007m,由此得到标签图像中裂缝面积为0.001726m2,检测结果图像中裂缝面积为0.001699m2。从裂缝骨架图像中可以得到裂缝骨架占有的像素个数,标签图像为1046个,检测结果图像为1048个,图像对应空间分辨率为0.0007m,计算得到标签图像中裂缝长度为0.7322m,检测图像中对应裂缝为0.7336m,此处裂缝长为裁剪后768×768图像中的裂缝长度。由此可以计算标签图像中裂缝的宽度为0.00235m,检测图像中裂缝的宽度为0.00231m,用测缝计实测的裂缝宽度为0.0021m,可以看到与实测结果基本一致。

图9 检测结果与标签图像

图10展示了一条纵向裂缝的形态信息。依据上面的思路对该裂缝的几何特征信息进行计算。图10中标签图像和二值化图中裂缝占有的像素数分别为3984,3981,得到标签图像中裂缝面积为0.001952m2,检测结果图像中裂缝面积为0.001951m2。从裂缝骨架图像中可以得到裂缝骨架占有的像素个数,标签图像为1125个,检测结果图像为1142个,图像对应空间分辨率为0.0007m,计算可以得到标签图像中裂缝的长度为0.7875m,检测图像中裂缝长度为0.7994m,此处裂缝长为裁剪后768×768图像中的裂缝长度。由此可以得到标签图像中裂缝宽度为0.00247m,检测图像中对应裂缝宽度为0.00244m,用测缝计实测的裂缝宽度为0.0022m,可以看到与实测结果基本一致。

图10 检测结果与标签图像

基于上述实验,可以验证基于本文方法的裂缝检测结果可以得到裂缝基本的几何信息值。对检测到的所有裂缝做上述计算,可以获得坝体整体裂缝几何特征分布,应用于裂缝病害情况评判。

5 结 论

本文借助高精度的无人机航飞数据,结合强大的深度学习非线性特征学习能力,设计了基于注意力机制的语义分割网络模型,将多通道的注意力机制引入到U形网络中,该网络结构可以抑制线性干扰对象,充分捕获裂缝细而长的特征,最终实现对大坝裂缝的检测。研究中制作了高精度的大坝裂缝数据集,对本文提出的方法进行了实验验证,结果表明本文方法可以较好地实现大坝裂缝检测,较好地克服图像中其他对象对裂缝检测的干扰。采用数学形态学算法对检测结果进行处理,可以获得裂缝的几何特性,对综合评判大坝裂缝病害具有一定意义。采用机器学习手段可以实现对大坝裂缝快速、低成本、低风险、高精度的检测,但是该方法受到数据集和模型性能的制约,后期还需深入研究。

猜你喜欢
大坝注意力标签
让注意力“飞”回来
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
大坝:力与美的展现
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
标签化伤害了谁
基于多进制查询树的多标签识别方法
正式挡水的马来西亚沐若大坝