摘要
高速公路路面裂缝的实时检测和及时处理是保障车辆行车安全的关键环节与重要基础,特别是发生地质灾害导致路面开裂时,裂缝快速识别与对比是监测地质灾害发展变化的一种新手段。针对这类问题,该文提出一种基于语义分割的公路裂隙智能识别方法,通过数据集制作、神经网络搭建、计算参数以及评估指标 4 个部分搭建模型对公路裂缝进行快速识别。研究结果表明:① 该文搭建的神经网络 AttentionU-net 在语义分割公路裂隙时,二分类交叉损失函数值和准确率分别达到 0.0087、0.9984;② 语义分割法在公路裂隙智能识别中表现出更高精度,Dice 相似系数为 0.978,故与传统算法相比,语义分割法在公路裂隙智能识别方面具有更强的可靠性与优越性;③ 语义分割法对亮度和噪声有较好的鲁棒性和泛化能力。
Abstract
Real-time detection and timely treatment of highway cracks are crucially fundamental for vehicle safety. Rapid identification and comparison of cracks is a new method for monitoring the development and changes of geological disasters especially when they induce cracks. Therefore, this study proposed an intelligent recognition method of highway cracks based on semantic segmentation, establishing a model with dataset, neural network, calculation parameters, and evaluation indicators to rapidly identify the cracks. The results show that, firstly, when the neural network Attention U-net built in this study semantically segments highway cracks, the binary cross loss function value and accuracy rate reach 0.0087 and 0.9984, respectively. Secondly, compared with traditional algorithms, the semantic segmentation method shows higher accuracy, reliability, and superiority in intelligent recognition of highway cracks, with a Dice similarity coefficient of 0.978. Thirdly, the semantic segmentation method has better robustness and generalization ability to deal with brightness and noise.
Keywords
0 引言
高速公路车速快,运行等级高,安全要求严。当高速公路受到边坡滑坡等地质灾害影响时,道路裂缝的产生及发展,不仅反映滑坡的发展,亦是影响其安全运营的重大隐患。而人工接触式裂缝调查,不仅影响高速公路正常运行,而且给调查人员人身安全造成重大威胁。因此,为保障高速公路正常运营和过往车辆的安全行驶,高速公路裂缝的非接触式快速、准确检测十分重要。随着智能化技术的发展,越来越多的学者基于计算机视觉技术对获取的含裂缝公路图像进行处理,从图像中准确识别出裂缝,并提取其相关几何特征参数。
现有的图像处理技术主要包括:传统算法[1-4]、机器学习方法[5]、深度学习方法[6-8]等。传统算法在裂缝识别领域的应用方面,Tang 等[9]提出一种用于岩石裂缝自动提取的暗区血管增强算法;Liu 等[10] 提出一种改进的裂纹检测算法和交互接口程序;Chen 等[11]提出一种新型综合识别算法,用于岩石隧道断面裂缝间距的交互表征。另外,常见的机器学习方法主要有长短期记忆方法(LSTM)、随机森林(RF)、马尔可夫链(MC)、K-近邻方法(KNN)、贝叶斯模型以及支持向量机方法(SVM)等。其中,Dong 等[12] 提出 LapSVM 可实现致密储层中裂缝带智能识别。
然而,以上图像识别方法在裂缝识别过程中普遍存在精度不高、效率偏低等问题,难以满足公路裂缝对识别效果与效率的需求,而深度学习方法往往收敛快速、识别准确。深度学习是一种基于神经网络的机器学习方法,能够从数据中自动提取特征,并利用这些特征进行预测和分类。其中,语义分割作为深度学习,在计算机视觉领域的核心任务是将图像分割成多个具有独特语义的区域,即为图像中的每个像素分配一个类别标签。语义分割不仅关注裂隙的边界,还关注裂隙内部的每个像素点,在裂缝智能识别领域具有很好发展潜力。如顾天纵[13]、吴琪[14]、张紫杉等[15] 分别利用 ADeeplab 框架、改进 U-net等语义分割网络框架对裂隙实现高精度识别;刘建华等[16]基于 Crack Mask R-CNN 模型实现路面裂缝像素级分割。然而,路面裂缝图像灰度差异小、裂缝形状复杂、识别难度大,故需要完善在裂缝识别领域现有深度学习方法。由于视网膜领域的血管与裂缝形状有很多相似之处,故公路裂缝识别问题还可借鉴医学视网膜领域的相关研究思路与成果。薛文渲等[17] 提出的多通道注意力引入 U-net 模型,Zhu 等[18]提出的 ILU-Net 网络模型,Han 等[19] 提出的 NoL-UNet 网络模型,以及 Wang 等[20] 提出的 AR-SA U-Net网络模型,均提供了增强视网膜血管分割精度的识别方法。
综上所述,针对路面裂隙识别在图像信息上的难点,本研究在 U-net 的基础上引入注意门(Atten-tion Gate)搭建 AttentionU-net,以此提高神经网络在训练过程中对裂隙关注的权重,并基于该语义分割方法对公路裂隙识别领域的收敛性、准确性、鲁棒性以及泛化能力进行研究。该方法可为高速公路滑坡变形调查等提供有效技术手段,通过对比多次识别结果,可定量分析裂缝孕育演化规律,亦可为高速公路日常养护提供一种无接触式快速裂缝调查方法。
1 公路裂缝识别模型搭建
本研究基于语义分割对公路裂缝智能识别模型的搭建主要包括:数据集制作、神经网络搭建、计算参数以及评估指标 4 个部分。
1.1 原始裂缝图像获取
以大广高速公路 K3232 段公路作为研究对象,因受长时间强降雨影响,路基边坡山体出现滑坡迹象,山体滑坡变形导致该段高速公路产生大量裂缝。为及时、准确地监测公路裂缝,通过有效像素为 1 230 万的 EXPEED 影像处理器,图像分辨率为 L 4 288× 2 848 的尼康 D90 相机对该段高速公路已有裂缝进行拍摄,最终获取了 160 张原始裂缝图像,并将这些图像用于训练神经网络。
1.2 数据集制作
数据集作为神经网络不可或缺的一部分,其数据集的质量、大小和多样性均会影响神经网络的准确性、泛化能力、性能和可解释性。因此,在使用神经网络时,需要仔细选择合适的数据集,并进行有效预处理、准确标注以及合理的数据增强,以确保神经网络能够得到良好的训练效果。
考虑到获取的原始裂缝图像分辨率高、尺寸大,若直接引入深度学习网络,网络中的参数将呈指数级增长,给模型训练带来极大困难。因此,本研究中数据集制作过程包括:① 先对原始裂缝图像进行裁剪,保留图像中仅含裂缝部分;② 使用 Labelme 软件对图像中裂缝通过逐点标记制作出对应的标签图像;③ 将样本图像和标签图像同步裁剪到 500×500 Pixel 大小;④ 通过旋转、翻转等方法进行数据增强,避免欠拟合问题,并且增加训练的鲁棒性;⑤ 通过该数据处理方法获得了 1 500 张样本图像和标签图像,并将数据随机分为训练集和测试集共得到 1 125 张训练集和 375 张测试集样本。
通过训练集将神经网络训练至最优模型,并用测试集评估模型的识别精度。另外,为进一步验证本文模型的良好性能,本研究通过从网上下载公开数据集[21] 以及作者前期现场拍摄获取的边坡裂隙图像和部分岩石裂隙图像,共 300 张图像,将这部分数据直接输入训练好的神经网络模型中,以检验本文模型的泛化能力。
1.3 神经网络搭建
深度学习的核心思想为:通过计算机不断学习,从中提取有用特征,并通过这些特征进行预测和分类。其中,神经网络是由多个层次的神经元组成,每个层次均有不同功能。这种结构可以有效处理复杂数据,从而提高预测和分类的准确性。本研究在 U-net 的基础上引入注意门(AGs)从而搭建神经网络——AttentionU-net(图1)[22]。
AttentionU-net 中 U-Net 主要由编码和解码两大对称的路径构成,同时加入跳跃连接过程充分结合高层语义特征和底层空间特征,网络整体结构像 U 形,故被称为 U-net。另外,为抑制输入图像中的无关区域,同时突出特定局部区域的显著特征,在 U-net 网络的基础上增加注意门。在 U-net 中,编码完的数据在每次池化过程之前都先经过 Attention Gate 模块,这样有助于逐步加强局部 ROI 的权重,有效抑制无关区域中的激活,减少冗余部分的 skip,使改进后的网络有更高的灵敏度、预测精度及更强的泛化能力。其中,AGs 实现具体步骤(图2):首先 g 与 xl 进行并行操作,g 通过 Wg得到 A,xl 通过 Wx得到 B, A 与 B 相加操作得到 C,C 进行 Relu 操作得到 D,D 进行 ψ 操作得到 E,E 进行 Sigmoid 操作得到 F,F 进行 Resampler 得到注意力系数 α,注意力系数 α 乘以 xl 得到最终权值。
图1 AttentionU‐net网络模型[22]
Figure1 AttentionU‐net network model[22]
图2 注意门的操作流程[21]
Figure2 Operation process of attention gate[21]
1.4 计算参数以及评估指标
算力对神经网络在训练速度、模型复杂性及成本等方面影响较大,因此本研究采用的 CPU 和 GPU 分别为 Intel i7-13700HX 和 NVIDIA Geforce RTX 4070(具体设备参数见表1),并且依托 Tensor-flow 和 Keras 框架搭建神经网络 AttentionU-net。由于公路裂缝的图像识别问题中仅有裂缝和背景两种类别,故将其作为二分类问题进行处理。其所涉及的二分类混淆矩阵如表2所示,包括二分类交叉损失函数、准确率以及 Dice 相似系数。其中,损失率和正确率均可在神经网络训练过程中评估训练效果,Dice 主要评估模型识别效果。在表2中, 表示网络输出的预测值;y 表示给定的样本值;TP表示标注、预测皆为节理的总像素点;FP表示标注为背景,预测为节理的总像素点;TN 表示标注、预测皆为背景的总像素点;FN 表示标注为节理,预测为背景的总像素点。
表1 计算机的计算参数
Table1 Calculation parameters of computer
表2 模型优越性评判指标
Table2 Evaluation indicators for model superiority
2 语义分割结果分析
训练集在损失率和正确率的评估下训练神经网络至最优模型,并得到本文模型的收敛性,然后通过测试集在 Dice 相似系数的评估下检验本文模型的准确性与优越性。
2.1 模型训练收敛性检验
通过训练 AttentionU-net 并基于二分类交叉损失函数损失率和正确率两个指标(表2)评估模型在训练过程的收敛性,其中评估指标变化曲线见图3。
图3 评估指标演化曲线
Figure3 Evolution curves of evaluation indicators
由图3可知:
(1)对于二分类交叉损失函数损失率,其值越靠近 0 则说明模型训练效果越好。在训练过程中其值整体随着训练次数增加而减小,但偶尔有波动。在训练到 25 次时,损失率开始收敛,逐渐趋于稳定,最终训练到最优模型时损失率为 0.008 7。
(2)对于准确率,其值越接近 1,说明模型训练效果越好。在训练过程中,其值整体随训练次数增加而增加,其他变化与损失率一样,最终训练到最优模型时正确率为 0.998 4。
2.2 语义分割结果定性检验
为了更好地展示本研究所提出的语义分割法在公路裂缝领域的识别效果,从数据集中的测试集挑选若干较为典型的裂缝图像,分别用语义分割法与传统算法进行识别,并附上对应标签图,各算法具体识别效果如图4所示。
将图4中不同算法的识别结果与标签图进行对比分析可知:
(1)大津法。通过使用特定的阈值来区分图像中不同区域实现图像分割。这种方法能够有效识别及提取更细节、更复杂的特征,从而更好地理解和处理图片。通过大津法识别公路裂缝时,能识别图像中裂缝的大致轮廓,但对识别复杂裂缝的效果较差,不能完整且准确地识别复杂裂缝。另外,识别结果易受到背景影响,将背景识别为裂缝,噪声较大。
(2)边缘检测法。利用边缘增强算子突出图像中的局部边缘,以及设置阈值法,提取边缘点集实现图像分割。通过边缘检测法识别公路裂缝时,识别结果与其他传统算法相比,效果最差且噪声较大,特别在背景复杂的裂缝图像中,完全无法分割裂缝,抗干扰性较差。
(3)区域生长法。通过选择一个种子像素作为算法的生长点,并按一定准则在区域中进行生长实现图像分割。通过区域生长法识别公路裂缝时,识别结果相较于其他传统算法展示出更好的分割效果。然而,区域生长法易受人为因素影响,如选取的生长点不同,可能导致最终识别图像差异很大。因此,该方法仅能识别简单的单一裂缝,无法完整识别断断续续的裂缝。
(4)血管增强法。通过在识别前搭建出血管相似性函数,并运用在裂隙的图像分割中。本文中所使用的血管增强算法是基于 PCA 的血管增强算法,该算法在识别公路裂缝时,对复杂细小弯曲裂缝的识别效果较好,但大多情况仅能识别裂缝大致轮廓,在图像背景较复杂时,无法区分背景和裂缝,噪声较大。
图4 基于不同算法的公路裂缝识别结果对比
Figure4 Results comparison of highway cracks recognition based on different algorithms
(5)语义分割法。通过训练集对 AttentionU-net 训练至最优模型,再对裂缝进行语义分割。该算法在识别公路裂缝时,裂缝的识别效果较好,识别结果和标签图相差不大,没有噪声,抗干扰性强,与传统算法相比,展现出更准确、更完整的识别效果,并且更能适应多数情况下的公路裂缝识别。
2.3 各算法之间的定量对比
在定性分析的基础上,本研究还通过 Dice 相似系数定量检验语义分割法的优越性。具体实现过程为:首先采用各算法对公路裂缝图像进行识别,再将识别结果与标签图像在像素级展开对比,最后依据表2中计算公式确定各算法的 Dice 相似系数(图5)。
由图5可得:本研究所提出的语义分割法在公路裂缝识别领域展现出更好优势,其 Dice 相似系数为 0.978,在传统算法识别的基础上 Dice 相似系数提高了 18.9%~86.0%。其中,区域生长法在裂缝识别中相比其他传统算法识别效果更好;血管增强法和大津法识别效果较差;边缘检测法识别效果最差,不适用于公路裂缝识别。综上,语义分割法在公路裂缝识别领域的精度远高于传统算法,具有更强的可靠性与优越性。
图5 不同算法的 Dice 相似系数
Figure5 Dice similarity coefficients of different algorithms
2.4 语义分割法鲁棒性及泛化能力检验
语义分割法在经过定性、定量检验后,均展示出较好的识别效果。为了进一步检验语义分割法的优越性,本文通过 OpenCV 库对验证集中图像改变亮度、增加噪声等方式检验语义分割法的鲁棒性(鲁棒性是指模型在面对干扰数据时保持其高性能、稳定性的能力),通过 ConvertScaleAbs 函数实现亮度调节,AddSaltPepperNoise 函数实现增加噪声。另外,本研究还采用未经过模型训练的其他领域裂隙图像来检验语义分割法的泛化能力(泛化能力指模型面对新数据时也能高精度识别的能力),包括混凝土裂隙图像[21] 以及作者前期现场拍摄获取的边坡裂隙图像和部分岩石裂隙图像。
表3为语义分割法识别不同图像的 Dice 相似系数,表4为语义分割法识别其他领域裂隙的 Dice 相似系数。
表3 不同图像识别的 Dice 相似系数值
Table3 Dice similarity coefficient values for different image recognition
表4 其他领域裂隙识别的 Dice 相似系数值
Table4 Dice similarity coefficient values for crack identification in other fields
由表3可知:数据在改变亮度后语义分割法识别的精度仅下降了 0.046,增加噪声后识别精度仅降低 0.019,可知,语义分割法对亮度和噪声均具有较好的鲁棒性。由表4可知:语义分割法对其他领域裂隙的识别效果 Dice 相似系数均在 0.876 以上,可大致识别出裂隙轮廓,其中对混凝土裂隙识别效果更好,可见语义分割法具有较好的泛化能力。
3 结论
(1)本研究提出一种基于语义分割的公路裂缝智能识别方法,通过搭建神经网络 AttentionU-net 对公路裂缝进行语义分割,数据集在训练至最优模型时损失率和正确率分别达到 0.008 7、0.998 4,模型具有较好的训练效果。
(2)语义分割法在公路裂缝智能识别中表现出更高的精度,Dice 相似系数为 0.978。与大律法、边缘检测法、区域生长法与血管增强法等传统算法相比,语义分割算法在公路裂缝智能识别方面具有更强的可靠性与优越性。
(3)语义分割法对亮度和噪声均有较好的鲁棒性,且对其他领域裂隙有较好的识别结果,展现出较好的泛化能力,可为其他领域裂隙检测提供一种高精度、高效率裂隙识别方法。