吴冰鑫 丘美燕 曾庆凯 詹勋庆 张 曦 曾海森
(华南农业大学水利与土木工程学院,广东广州 510642)
盾构隧道作为地铁得以畅通穿梭于各站点间的通道,其安全状况需要引起足够重视。然而,在长期运营中管片结构难免会产生裂缝,从而影响到其外观、使用功能,甚至于安全和寿命[1,2]。大量研究将数字图像处理技术应用于裂缝识别与检测中,然而如何优化裂缝宽度计算方法,进一步提高裂缝宽度计算精度还有待解决。本文提出了一种利用霍夫变换理论提高裂缝宽度计算精度的优化方法。
本文以上海地铁某区间盾构隧道的管片结构边角裂缝为例[2],对图像进行预处理,包括图像增强、图像分割、裂缝识别、边缘提取等,并在此基础上进行裂缝宽度计算。
运用Matlab软件中rgb2gray函数将原始裂缝图转换为灰度图,并使用Histeq函数进行灰度转换,如图1所示。
图1 图像增强过程
首先,对图像进行二值化处理,可使裂缝部分与周围非裂缝部分区别开来,如图2a)所示。
然后,对二值化图像进行旋转和裁剪,仅保留有裂缝部分,并采用Belabel函数寻找出二值图像中的最大连通区域而将其他小连通区域清除,最后得到仅保留有所需裂缝的图像,如图2b)所示。
通过对比发现,采用Canny和Sobel等边缘检测算子得出的裂缝边缘更为平滑,如图3所示。
裂缝一般为不规则曲线。在常用的裂缝宽度计算方法中,直接计算裂缝上下边缘的垂直像素宽。然而,与水平线成一定角度的两条线的像素竖向坐标相减得到的差值与两直线之间的垂直距离并不相等,即旋转后的裂缝边缘竖向坐标差值与裂缝真实宽度存在一定误差。因此,本文提出采用霍夫(Hough)变换的方法,对裂缝曲线进行拟合,再计算裂缝宽度。
图2 图像分割和裂缝识别
图3 不同边缘检测算子的裂缝边缘提取效果
霍夫(Hough)变换是一个非常重要的检测间断点边界形状的方法。它通过将图像坐标空间变换到参数空间,来实现直线与曲线的拟合。
在图像x-y坐标空间中,经过点(xi,yi)的直线表示为:
其中,a为斜率;b为截矩。通过点(xi,yi)的直线有无数条,且对应于不同的a和b值。如果将xi和yi视为常数,而将原本的参数a和b看作变量,则式(1)可以表示为:
这样就变换到了参数平面a-b。这个变换就是直角坐标中对于(xi,yi)点的Hough变换。该直线是图像坐标空间中的点(xi,yi)在参数空间的唯一方程。考虑到图像坐标空间中的另一点(xj,yj),它在参数空间中也有相应的一条直线b=-axj+yj,这条直线与点(xi,yi)在参数空间的直线相交于一点(a0,b0),如图4所示。
首先对裂缝进行骨架提取,得到以单个像素排列而成的裂缝骨架线,如图5a)所示。随后利用霍夫(Hough)变换的原理进行直线拟合,图5b)即为与骨架线拟合程度较高的直线线段。叉点代表原部分骨架线没有直线线段拟合,原因在于其竖向坐标变化较大无法拟合,需采用其他方法处理。然后以每两条线段相交的点作为分段点,将原始裂缝图像进行分段并首尾依次连接,即可形成一条完整的骨架线,如图5c)所示。由图可知,各拟合线段较好地在原裂缝曲线角度转折较大的点将裂缝进行分段,并表示出各分段的倾斜程度。
图4 霍夫变换的原理
图5 骨架线的形成
图6 是利用霍夫(Hough)变换,将原始裂缝曲线分成九段,再将各段按与水平线形成的确定角度进行旋转,分别计算各分段的像素竖向坐标差值,统计获得代表原始裂缝最大和最小宽度的像素值,最后计算得到代表原始裂缝平均宽度的像素值。与曲线拟合的直线长度越小,数量越多,曲线的分段就越多,旋转后越接近于水平线,像素差值的计算精度就越高。
图6 裂缝的分段和旋转
本文在对图像进行图像增强、图像分割、裂缝识别、边缘提取等预处理的基础上,提出一种提高裂缝宽度计算精度的改进方法。该方法适用于任何裂缝曲线,尤其是对宽度精度要求较高的裂缝,并且可批量处理裂缝图像。但由于原始数据的缺乏,本文并未对该方法进行实际裂缝宽度的验证,这是下一步需要进行研究的问题。