改进组件树在隧道裂缝识别中的应用*
2022-08-06乔建刚
乔建刚,陶 瑞,刘 翔
(河北工业大学 土木与交通学院,天津 300401)
0 引言
我国隧道、桥梁等基础设施逐步由施工条件向养护条件转变。为确保运作期间的结构安全和功能,必须及时进行结构健康监测[1],以维持基础设施系统的稳定运作。现有隧道检测方法主要依赖于人的视觉检查,以寻找可见的损伤和模式,但视觉检查存在一定缺陷,尤其对于大型项目需要耗费高昂成本和时间。由于人工评估存在主观性[2],其可靠性和效率取决于检查员的知识和经验,所以一般采用超声波层析成像、激光雷达、视觉成像和射线成像等无损检测技术识别裂缝[3-4]。
传统方法大都将图像处理和特征提取[4]作为裂缝检测的关键步骤。边缘和边界检测[5]、滤波[6]、模板匹配、背景相减、纹理识别等[7]基本图像处理技术依赖于明显的裂纹特征,不适用于裂纹背景复杂且受严重干扰的隧道内情况。
学者提出各种基于深度学习的方法进行隧道缺陷检测:Ren等[8]提出改进的深度全卷积神经网络CrackSegNet进行密集的像素级隧道裂缝分割;Lei等[9]提出差分噪声滤波和自适应分割、边缘检测和阈值法相结合的改进分割方法,以提高隧道裂缝的识别精度;Huang等[10]提出基于移动激光扫描隧道衬砌点云数据的综合深度学习漏水检测方法,解决由于缺乏空间信息无法提供泄漏位置的问题,实现隧道衬砌漏水在三维空间的自动化检测与评价;Hoang等[11]建立隧道裂缝自动检测与分类模型,由射影积分的性质和裂纹对象性质组成的特征集可得到最理想的结果,可以帮助运输机构和检查人员完成路面状况评估任务;鲜晴羽等[12]针对隧道掌子面图像多样性和复杂性提出基于CNN以余弦相似度为指标的方法,判定图像质量,筛选满足工程需求的隧道图像。
现有方法的识别精度和效率较低,仍需大量人工辅助[13]。鉴于此,本文利用传统数字图像处理方法识别缺陷,可有效解决隧道衬砌图像中存在的光不均匀、噪声和斑点等问题,研究结果可为裂缝识别提供技术支持。
1 裂纹识别算法系统及图像处理
1.1 裂纹识别算法系统
裂纹识别算法系统流程如图1所示,主要包括数据采集、图像处理增强、特征提取3个步骤。隧道衬砌表面数据通过衬砌扫描车进行采集[14],安装在车辆上的高清CCD相机和减震装置可获取高质量的数字图像,根据需求和隧道条件,对捕获的图像区域进行分割,得到候选裂纹图像,最终使用图像拼接技术组装所有图像。图像预处理和增强包括灰度图像转化、增强以及匀光处理,可提前突出裂缝细节,获取更多信息。特征提取主要通过组件树的建立和分割将裂缝像素从背景中准确分离出来(灰度值:crack_255;back-ground_0)。为提高裂纹识别效率,系统根据裂纹与背景灰度值差异,自动去除灰度变化有限的图像,基于对比试验和工程应用测试,可验证本文算法的优越性。
1.2 隧道图像增强
隧道内应急灯分布比较分散,一般没有强光源照明,容易造成光照不均匀[15]。隧道表面采用自适应Retinex方法对图像进行预处理。灰度增强必然会增强光照的不均匀性,为进行动态范围的有效压缩,采用自适应Retinex算法进行避光处理,消除光照成分,提高图像黑暗区域的亮度[16]。采用自适应Retinex相关算法能够获得更好的信息和视觉效果,如式(1)所示:
F(x,y)=R(x,y)·L(x,y)
(1)
式中:F(x,y)为人眼或其它设备观测到的图像;L(x,y)表示入射光图像;R(x,y)表示反射光图像。
在Retinex模型中,L(x,y)是图像的亮度信息,对应图像的低频部分,可以利用低频滤波器分别计算各颜色通道的亮度值,所得值与物体本身性质无关。R(x,y)对应图像高频部分,包含图像细节信息,与光照无关。由式(1)可知,通过Retinex算法达到增强图像质量的目的,其核心要素是去除入射光图像L(x,y)对原图像F(x,y)的影响,提取反射光图像R(x,y)并精准提取照度部分。
Retinex算法采用对数域处理,原因是人眼视觉感知系统通过指数形式感受光照强度,对数形式更加接近光照信息,通过将乘法运算改为加法运算,可减少算法的复杂性,提高算法计算速度。因此,Retinex算法表达式可修改为式(2):
f(x,y)=r(x,y)+l(x,y)
(2)
式中:f(x,y)=log(F(x,y));r(x,y)=log(R(x,y);l(x,y)=log(L(x,y))。
Retinex算法基本步骤如图2所示,先求取对数变换后的光照图像l(x,y),再运用对数相减得到反射图像对数形式r(x,y),通过指数运算得到最终的反射图像R(x,y)。
图2 Retinex算法处理过程
不同方法裂缝图像增强匀光比较如图3所示。直方图均衡化和灰度变换改变原图像在全图范围内的灰度分布,没有达到均衡光照的作用,背景灰度变化较大,为后续处理工作增加难度。基于自适应Retinex算法改变局部像素灰度值,可有效平衡光照保护图像细节,匀光处理后,在一定范围内增强图像背景与裂缝的对比度,图像整体亮度的提高有利于后续图像分割。
图3 不同方法裂缝图像增强匀光比较
2 图像分割
图像分割在计算机视觉技术中是更高层次图像分析的基础。在目标识别任务中,轮廓通常被认为是目标识别最重要的特征信息。一般来说,图像邻域点的像素值在同一物体内部比较接近,如果某一点像素点与它邻域像素点的值差别较大,即该点像素值发生突变,则该像素点为噪声点或者是在物体边界上。对隧道衬壁图像而言,像素值突变点也可以是裂缝边沿点。
2.1 组件树
图像中灰度值大于给定阈值点的集合被称为灰度图像的水平集,不同阈值下的水平集可能含有多个连通组件(Connected Component)[16]。采用树结构组织存在
包含关系不同阈值下的连通组件,这种树结构称为“连通组件树”(Connected Component tree),简称组件树(Component Tree)[17]。本文使用地形参考,将灰度图像视为山地地形,呈现出的地图是1个浮雕表面与1个点的高度对应[18]。
2.2 组件树构建
图像水平截面如图4所示。图像I对应的组件树结构如图5所示。通过寻找图像I的各个Level组件C[k,c]其中的包含关系建立组件树。图像I在Level 4中有[D,1]、[D,2]、[D,3]、[D,4]4个组件;在Level 3中有3个组件[C,1]、[C,2]、[C,3],其中[C,1]包含[D,1],[C,3]包含[D,3],[C,2]包含[D,2]、[D,4];在Level 2的组件[B,1]、[B,2]中,[B,1]包含[C,1]、[C,3],[B,2]包含[C,2];在Level 1中组件[A,1]由组件[B,1]、[B,2]连接而成。组件树是每层的组件用树的方式相连接而成。在组件树构造过程中,多个不同的连通组件在图像I不同的Level中被划分。直接构建的组件树含有多个叶子节点,叶子节点区域面积较小,大部分是没有价值的噪声信号。为达到图像滤波目的,可以通过删除组件树中相应叶子节点来抑制噪声和防止干扰。另一方面,隧道图像由于受噪声污染,不同组件受灰度值相似的像素点分割影响,出现过分割现象。因此,通过组件树中上层截面中灰度值较低的组件连接,构成任一截面里的组件代表空间位置不相交的区域。图5将[B,2]、[C,2]、[D,2]3个有可能相近但灰度值不同的节点组件进行合并,可快速筛分相近的像素点,达到目标区域像素合并的目的。
图4 图像水平截面
图5 图像I对应组件树结构
对于定义域为Ω的图像f,给定值λ和μ,定义上水平集Xλ、下水平集Xμ分别为Xλ={x∈Ω|f(x)≥λ},Xμ={x∈Ω|f(x)≤μ},上/下水平集的连通组件被组织成1个包含树,称为最大/最小树[19]。该算法采用自上向下的方法计算正水平线树τ,其中每个水平线为上水平集的1条连通边界,然后由τ计算最大树T。每个组件C∈T,由1个外部边界(在τ中为1条正水平线)和0或多个内部边界(在τ中为负水平线)组成。算法通过在各个层次上匹配正水平线与负水平线并得到相应组件。实验表明该算法在low-bit图像上比传统算法具有明显优势。
2.3 算法描述
当得到组件树之后,删除区域面积小于感兴趣区域δ的组件,计算组件树各节点的稳定值φ(Ct),得到最稳定边界值并作为输出结果。对组件树中不同层次区域边界进行基于梯度的比较,检测出最稳定的边界。首先计算Ct边界像素梯度,如式(3)所示:
(3)
计算区域Ct的稳定值φ(Ct) 如式(4)所示:
(4)
式中:∂Ct是区域Ct的边界;N为边界像素个数。
计算组件树各节点稳定值φ(Ct),再查找最稳定的边界,输出边界区域作为检测结果。
基于组件树的裂缝检测和图像分割算法流程包括以下4个步骤:
1)Input:组件树T,阈值δ。
Output:合并后的组件树T′,分割完成的图像f′。
2)根据输入的图像组件树T,计算所有组件的面积及稳定值。
3)依据裁剪准则,进行组件裁剪。
4)根据新的组件树T′,输出分割后的图像f′。
3 试验结果与分析
采用MATLAB 2020a作为开发工具,在Intel(R)Core(TM)i7-10510U CPU中,采用CCD相机拍摄200张裂缝图像中选取3帧图片进行分析。
3.1 图像分割试验
将本文算法与传统OTSU、迭代阈值分割、距离变换与二值图像结合方法进行试验对比,结果如图6所示。由图6可知,OTSU算法易受图像中噪声影响,目标分割过于单一,当目标和背景大小比例悬殊时效果较差;迭代阈值可以保持裂纹整体结构特征,但分割容易提取伪边缘,导致背景中缺失裂纹和相应噪声,加大后续处理难度,影响准确率;距离变换与二值图像结合法对噪声的滤波效果一般,多依赖二值信息,识别效果较差,导致图像分割精度不高,不符合裂缝识别的准确性需求。结果表明本文方法提取的裂缝效果最好。
图6 不同方法裂缝图像分割比较
为进一步验证本文分割算法的可靠性,选取200幅不同的隧道裂缝图像进行分析,分别利用上述3种方法和本文算法对图像进行比较,各种裂缝边缘提取算法的时间和性能比较见表1。由于计算机有较高的硬件配置,每幅图像的识别速度快,响应时间差别较小,本文算法平均计算时相对最小;本文选择的图像均为裂缝图像,所以4种算法都有比较好的识别效果,本文分割算法的正确率相对最高,达0.955。综上,本文分割算法识别效果相对最优。
表1 各种裂缝边缘提取算法的时间和性能比较
3.2 裂缝宽度对照试验
裂缝宽度是衡量裂缝严重程度的主要因素,因此需定量计算裂缝宽度。以某开裂隧道衬砌为对象抽取随机样本,对该表面的11条裂缝进行检测及验证。基于图像所得裂缝宽度识别值与实测值的比较如图7所示,1~11号裂缝最大宽度相对误差变化范围为4.69%~11.86%,平均相对误差7.24%,缝宽度识别精度为92.76%。因此,本文设计方法对于0.2 mm以上裂缝宽度具有较好的检测结果。
图7 裂缝宽度识别值和实测值比较
3.3 工程应用
为验证本文算法的适用性,以北京-秦皇岛高速公路遵化至秦皇岛段温泉堡隧道为试验背景,通过CCD拍摄采集10个里程处的隧道衬砌裂缝图像,根据隧道内应用场景特殊性,即每个衬砌表面均存在光照不匀、光照不足、光照过强等因素影响,进行对照试验,结果见图8。由图8可知,Mask算法亮度有提升,但对比度信息仍有欠缺,导致隧道衬砌表面颜色整体偏暗,灰度级的合并会导致某些细节无法呈现出来。本文在Retinex算法匀光后再采用组件树进行分割,图像中裂缝特征明显,背景干扰少,可快速实现裂缝区域的识别,能够使图像的整体视觉真实地体现出来。
图8 隧道裂缝图像匀光算法对比试验
4 结论
1)本文采用匀光优化算法处理非均匀光照图像,运用自适应Retinex方法进行图像增强,可有效校正并平衡图像光照,保护图像中裂缝边缘信息,提高裂缝轮廓与图像背景的对比度,为后续图像分割奠定基础。
2)本文分割方法能够抑制图像噪声,具有较快的运行速度,时间复杂度低,又可抑制过分割现象,达到预期分割效果。
3)采用CCD相机拍摄的200帧图像进行分析并与现有算法相比较,本文算法对隧道衬砌裂缝的识别精度大于95%,裂缝宽度识别精度可达92.76%,验证本文算法的适性。根据多组试验结果对比发现,本文算法在定性和定量方面表现突出,可有效解决隧道裂缝图像光照不匀等问题,图像轮廓显示、良好的细节显示和全局性对比度。
4)下一步研究可在本文基础上引入聚集度,对图像属性进行更详细的分析,从而提高裂缝分类的准确性,提出1种新的组件树合并准则,以适应更多类型的裂缝图像识别。