APP下载

隧道衬砌分岔裂缝特征提取研究

2019-10-11蒲炳荣漆泰岳黄晓东陈桂龙

铁道标准设计 2019年10期
关键词:元胞父辈拐点

蒲炳荣,漆泰岳,黄晓东,陈桂龙

(1.西南交通大学土木工程学院,成都 610031; 2.西南交通大学交通隧道工程教育部重点实验室,成都 610031)

引言

近年来我国高速铁路发展迅速,到2020年全国高铁运营里程将达到3万km。与此同时,截至2017年底,我国共建成高速铁路隧道2 835座,总长4 537 km[1],已成为全世界拥有高速铁路隧道最多的国家。伴随着高铁隧道建设,隧道的养护也变得越发重要。

衬砌裂缝是最常见的隧道病害之一,依照裂缝形状,常见的衬砌裂缝主要有纵向或环向的单线裂缝、分岔裂缝以及单线裂缝与分岔裂缝组合而成的复杂裂缝。对于高速铁路隧道结构,分岔裂缝的出现表明结构已经存在较严重的病害,尤其是分岔裂缝发育所形成的“孤石”衬砌块体,将会直接威胁到高铁列车的行车安全。1999年日本山阳新干线福岗隧道就发生了衬砌混凝土掉块砸中列车顶部,造成列车破损的重大事故,引起了日本运输省的高度重视,并开展了大规模的检查和研究[2]。因此对于分岔裂缝的检测与防治是十分必要的。

目前国内最主要的隧道裂缝检测方法是利用自动化检测系统进行检测,该系统采用CCD面阵相机对隧道衬砌进行图像采集,然后利用数字图像处理技术完成裂缝的识别与特征提取。

在基于数字图像处理的裂缝特征提取上,国内外学者已经做过许多研究。方志[3]在混凝土表面粘贴纯色标定块来标定、修正原始图像从而提取出裂缝宽度,并以正拍和斜拍图像两种方式对提取方法进行了验证;王平让[4]提出一种基于图像局部网格特征的隧道衬砌裂缝自动识别方法,其在将离散的裂缝种子像素连接成为完整的连续裂缝过程中自动计算裂缝的走向、长度和宽度;刘学增[5]采用基于Zernike正交矩的图像亚像素边缘检测算法获得了裂缝边缘,并进行裂缝宽度测量;杨松[6]结合数字图像处理技术和分形理论,提取了图像中裂缝及其他元素的自相似特征;Hoang-Nam Nguyen[7]利用裂缝分支呈线状且具有局部对称性两个几何性质来检测裂缝边缘,并与非预期物体的边缘进行区分;王耀东[8]提出了一种根据裂缝局部均值和标准差计算裂缝宽度的算法,用于检测和自动标识地铁隧道表面的裂缝特征区域;彭博[9]将裂缝轮廓进行矢量化处理,提取了倾角、块度、空洞等裂缝几何特征;Baohua Shan[10]提出了一种基于立体视觉的裂缝宽度检测方法,用于定量评价混凝土结构表面的裂缝宽度;王睿[11]提取了裂缝的周长、平均宽度、集中度等多种特征,根据RBF-SVM算法建立了裂缝识别的自动判别模型;朱力强[12]利用Harris检测算子获取裂缝的角点为特征点集,采用基于Fréchet距离及Hausdorff距离的点集配准算法进行特征点的配准;张玉雪[13-14]依据裂缝区域的形状特征,使用形状分析法进行去噪和目标提取,实现了裂缝的精确定位,此外还通过提取裂缝的统计、纹理和形状特征,利用稀疏表示分类方法实现对裂缝子块的识别;邱延峻[15]以图像截面为研究对象,依次进行倾斜度、高斯分布、边缘梯度3种特征检验,从而获得了三维裂缝截面。

上述研究虽然能有效提取裂缝特征,但都是基于研究对象为单线裂缝的情况。本文对万宇[16]提出的隧道衬砌单线裂缝拐点特征提取方法进行了改进,通过MATLAB软件编程,成功地对衬砌分岔裂缝的拐点特征进行了提取,并加入了分岔点生长编码这一分岔裂缝独有的裂缝特征,共同为分岔裂缝的机器自动化识别提供依据,进而为实现隧道衬砌剥落掉块预警奠定了基础。

1 分岔裂缝骨架提取

要提取出分岔裂缝的拐点特征,需要对裂缝进行骨架提取。骨架提取流程包含图像预处理及骨架提取。

1.1 图像预处理

裂缝图像的预处理主要包括图像去噪、阈值分割以及形态学处理。首先将试验图像由RGB图像转换为灰度图像并对图像进行去噪。马金祥[17]结合改进暗通道先验和导向滤波方法,实现了图像去噪增强;彭博[18]采用基于连通性检测的二值图像去噪算法和裂缝子块去噪算法,获得了完整连续的裂缝图像;洪晓江[19]根据Prewitt算子推导出了新的5×5梯度模板进行图像增强处理;范新南[20]通过水下生物仿生的侧抑制增强机制对图像进行增强;Qu Z[21]提出了利用亮度特征和裂纹长度特征来去除噪声区域的基于渗流模型的去噪方法;Guo C[22]提出了一种新的核各向异性扩散滤波器用于低信噪比裂纹图像的去噪。

沿用已有的单线裂缝图像去噪的研究成果,本文采用自适应Wiener滤波器对分岔图像进行平滑处理。自适应Wiener滤波的原则是使原始图像与恢复图像之间的均方误差最小,其根据邻域窗口的局部方差来调整滤波器效果,是一种自适应滤波器。本文采用的邻域窗口尺寸为10×10,处理结果如图1所示。可以看出,该方法在保存裂缝边缘信息的同时有效地平滑了图像噪声。

图1 自适应Wiener滤波器处理

平滑处理后,需要对图像进行阈值分割,即通过设置阈值参数将图像转化为二值图像,设置阈值过大将会使背景区域与裂缝区域混淆,阈值过小则会丢失部分裂缝信息。本文采用全局阈值分割的方法,经过多种阈值下处理结果的比选,确定采用软件内阈值为0.5的分割方法,处理结果如图2(a)所示。经过阈值分割后的图像完整地保留了裂缝信息,并且没有出现裂缝断裂的情况。

形态学处理包括连通区域标记以及空洞填充。连通区域标记是对图像中的连通区域进行标记,并计算出各标记区域的像素面积,从而提取出面积最大的连通区域,即为裂缝区域。该方法可以完全消除背景区域中的干扰噪声,只保留裂缝信息。本文采用8连通区域标记,处理结果如图2(b)所示,可以看到图像四周的噪声被完全消除。

图2 阈值分割及标记运算

此时放大标记后的图像,可以看到裂缝区域有明显空洞,如图3(a)所示。为了提取完整的裂缝骨架,需要对裂缝区域进行空洞填充,填充结果如图3(b)所示。

图3 空洞填充前后图像对比

1.2 骨架提取

图像预处理完成后便可进行裂缝骨架提取。所谓骨架,就是由单个像素的点组成,可以有效地反映出原物体形状的连通性和拓扑结构[23]。本文首先采用拓扑细化算法对图像进行骨架的初步提取,拓扑细化算法的原理是从裂缝边界开始进行反复的迭代计算,逐层剥离裂缝的边界像素点,直至裂缝削减为单像素宽度骨架。初步提取的结果如图4(a)所示,可以看出裂缝骨架仍存在大量毛刺。接下来采用万宇[16]提出的毛刺追踪剔除算法对骨架进行处理,剔除毛刺后的裂缝骨架如图4(b)所示。可以看出剔除效果良好,骨架已达到拐点识别的要求,至此分岔裂缝的骨架提取工作全部完成。

图4 骨架初步提取及毛刺剔除

2 骨架的分支化

为了简化后续的拐点识别及特征值提取工作,提出对分岔裂缝骨架进行分支化处理,即将骨架拆分为多条分支,并将各分支的骨架像素坐标按顺序进行排列。

2.1 骨架的拆分

根据单像素宽度骨架的特点,将8邻域内骨架像素数量为1的像素点定义为骨架端点,将8邻域内骨架像素数量≥3的像素点定义为分岔点。

首先提取分岔裂缝所有骨架像素点坐标到集合A中,通过遍历A中各像素点的8邻域信息,对每个像素点邻域内的骨架像素数量进行记录。随后将邻域内骨架像素数量为1的像素点坐标放入集合B中,作为端点坐标集合;将邻域内骨架像素数量≥3的像素点坐标放入集合C中,作为分岔点集合。对两个集合中的像素点在图像中进行标注,得到如图5(a)所示的骨架端点和分岔点示意。

在骨架端点及分岔点的基础上,将裂缝骨架划分为枝干段与主干段两类分支。枝干段定义为任意端点与其连通区域上与之距离最近的分岔点之间的骨架段,而各分支段之外的骨架部分则定义为主干段,据此本试验中裂缝骨架拆分情况如图5(b)所示。

图5 骨架拆分示意

2.2 元胞数组的引入

元胞数组是MATLAB软件的一种特殊数据类型,可以将其看作一种通用矩阵,或者广义矩阵。组成元胞数组的元素称为元胞,元胞可以是任何一种数据类型的常数或者常量,也可以是集合。本文引入元胞数组的概念,将整条分岔裂缝信息看成是一个元胞数组,而元胞数组中的每一个元胞则代表了各分支信息,包括骨架像素坐标及拐点特征值等。以本文试验中的裂缝为例,整条裂缝信息可以用规格为5×1的元胞数组D来表示,D中的5个元胞分别包含了4条枝干段及1条主干段信息。

2.3 分支坐标的提取

在引入元胞数组D的基础上,对骨架各分支进行坐标提取并按顺序排列,流程如下。

(1)以端点坐标集合B中第一个端点(B(1,1),B(1,2))为起点,将其坐标放入元胞D{1,1}中,随后遍历该点的8邻域,找到下一个骨架像素点作为中心点,并提取其坐标放入D{1,1}中。

(2)遍历该中心点的8邻域,找到邻域内的骨架像素点,判断各点是否已存在于D{1,1}中,若已存在则将其忽略,将余下的骨架像素点作为下一个中心点,并提取其坐标放入D{1,1}中。

(3)按步骤(2)继续循环,直至某中心点坐标与分岔点集合C中的任意坐标重合时结束循环,最终得到以端点为起点、分岔点为终点的按顺序排列的分支坐标集合D{1,1}。

(4)改变起点,重复步骤(1)~步骤(3),同理可得D{2,1}、D{3,1}、D{4,1}。

(5)提取出D{2,1}、D{3,1}、D{4,1}中的所有坐标并合并为集合E。因为分岔裂缝的形状特点,将会出现多条分支“终点”为同一分岔点的情况,故将重复的分岔点坐标进行剔除。剔除后的集合E与骨架像素点坐标集合A的差集即为主干段的骨架坐标集合,令其为元胞数组D中的最后一个元胞D{5,1}。

分支坐标提取流程如图6所示。

图6 分支坐标提取流程

3 拐点识别及特征值提取

3.1 拐点的初步识别

拐点顾名思义是指裂缝走向发生剧烈变化的点,根据Freeman链码的识别算法,裂缝走向计算式为

(1)

(2)

本文针对每一段裂缝骨架分支,将其看作一条单线裂缝骨架并参照单线裂缝拐点的识别方法进行拐点识别,识别过程中采用8方向Freeman链码,如图7(a)所示。为了获取更多拐点以利于后续裂缝匹配试验的进行,取像素长度l为10个像素长度,阈值T为0.5,即当第i点前后l长度的裂缝走向之差>22.5°时判定该点为拐点。经过初步识别后的裂缝拐点如图7(b)所示。

图7 8方向Freeman链码与拐点初步识别结果

3.2 拐点特征值的提取

初步识别后便可以对拐点进行特征值的提取,选取到前相邻拐点的距离h1、到后相邻拐点的距离h2、与前后相邻拐点形成的夹角α、到前间隔拐点的距离s1、到后间隔拐点的距离s2、与前后间隔拐点形成的夹角β六类参数作为拐点特征值,如图8所示,其中α与β均为≤180°的夹角。这6类特征值可以准确地反映各拐点间的位置关系,从而描绘出分支的走向情况。由于各拐点的坐标已知,以上6类特征值可以通过程序计算获得。

图8 拐点特征示意

3.3 拐点的筛选

从拐点初步识别的结果中可以看出存在大量连续拐点,为了降低运算量,剔除特征不够明显的拐点,需要对初步识别后的拐点进行筛选。筛选工作共分3步进行:第一步,在一段连续拐点中保留Δμi最大的拐点,即前后裂缝走向变化最大的拐点,余下的拐点剔除;第二步,提取到后间隔拐点的距离s2<10个像素长度的拐点,剔除该点和其后间隔拐点中与前后相邻拐点形成的夹角α较大的一点;第三步,剔除与前后相邻拐点形成的夹角α>170°的拐点。筛选工作的每一步完成后都需要重新计算余下拐点的特征值,筛选工作结束后的拐点识别结果如图9所示。

图9 筛选后的拐点识别结果

4 分岔点生长编码的提取

不同于单线裂缝的单一生长方向,分岔裂缝具有多方向生长的特点,因此仅对分岔裂缝各分支的特征进行分析不足以准确判断两条裂缝是否具有“遗传性”。本文引入分岔点生长编码这一分岔裂缝独有的骨架特征,借其量化分岔裂缝的初始生长方向。

首先,提取分岔点附近各分支沿其生长方向一定像素长度h内的链码均值,以表示各分支的初始生长方向。随后参照8方向Freeman链码的排序方式对各分支的链码均值进行排序,将最终得到的排列结果定义为该分岔点的生长编码。本文取h为10个像素长度,从而提取出本试验中裂缝分岔点1和分岔点2的生长编码,分别为1.3-4.3-6.9和0.1-2.4-4.8。由于生长编码是基于8方向Freeman链码得到的,因此两条编码所代表的分岔点附近分支初始生长方向分别如图10(a)和图10(b)所示,图10中黑色实心方形为分岔点,加粗黑色箭头为附近分支的初始生长方向。

图10 分岔点邻近分支初始生长方向

5 裂缝匹配试验

为了检验拐点及分岔点生长编码两种特征能否为分岔裂缝的机器自动化识别提供可靠依据,设计了裂缝匹配试验进行模拟。首先通过对初始裂缝进行“截肢”以模拟裂缝早期的形状,同时改变裂缝在图像中的位置以模拟CCD相机在不同位置拍摄时产生的偏差,得到初始裂缝的父辈裂缝图像,如图11所示。

图11 父子裂缝图像对比

随后利用Matlab程序对父子两幅图像分别进行处理和识别,并提取出两条裂缝的拐点特征值及分岔点生长编码,其中两条裂缝的分岔点生长编码分别列入表1和表2。

表1 父辈裂缝分岔点生长编码

表2 子辈裂缝分岔点生长编码

匹配试验的第一步是对两条裂缝的分岔点生长编码进行比对,即判断两条分岔裂缝的初始生长方向是否一致。为了方便比较,引入生长编码偏差率Gp,即满足

(3)

式中,b1,b2,…,bn为分岔点B的生长编码;c1,c2,…,cn为分岔点C的生长编码;Gp为分岔点B的生长编码相对于分岔点C的生长编码的偏差率。

按式(3)进行计算,由表1及表2中的结果可以得出子辈裂缝的1号分岔点相对于父辈裂缝的1号分岔点的生长编码偏差率Gp1=0.022,子辈裂缝的2号分岔点相对于父辈裂缝的2号分岔点的生长编码偏差率Gp2=0。本文取所有分岔点生长编码偏差率的算术平均值来表示两条裂缝的生长编码偏差度,进而得到两条裂缝的生长编码相似度。在本试验中,两条裂缝的生长编码偏差度为1.1%,生长编码相似度达到了98.9%,结果表明两条裂缝的初始生长方向高度一致。

匹配试验的第二步是对两条裂缝的拐点特征值进行比对,即判断两条裂缝的拐点是否具有“遗传性”,因此需要在子辈裂缝拐点中找到与父辈裂缝拐点相匹配的子拐点。以筛选父辈裂缝中13号拐点的子拐点为例,其拐点特征值如表3所示。为了方便讨论,定义同种特征值之间的偏差率为特征偏差率。以特征值h1为例,子辈拐点相对于父辈拐点的特征偏差率h1p按式(4)计算

(4)

式中,h1f为父辈任一拐点的h1特征值;h1z为子辈任一拐点的h1特征值。

首先筛选出父辈裂缝13号拐点的疑似子拐点,步骤如下。

(1)参照式(4),计算得到每一个子辈拐点相对于父辈13号拐点的各类特征偏差率。

(2)在各类特征偏差率中取最大值Pc,作为该拐点相对于父辈13号拐点的初始偏差率,即Pc=max(h1p,h2p,αp,s1p,s2p,βp)。

(3)在所有子辈拐点对应的初始偏差率中取最小值作为父辈13号拐点的疑似偏差率Py,即Py=min(Pc1,Pc2,…,Pcm),其中m为子辈拐点总数;而Py所对应的子辈拐点,称为父辈13号拐点的疑似子拐点。

以上筛选过程如表4所示,最终得到父辈13号拐点的疑似偏差率Py=0.024,疑似子拐点为子辈24号拐点(表中框选部分)。

表3 父辈13号拐点特征值

表4 父辈13号拐点疑似子拐点筛选

注:由于各分支的首/尾拐点只含有“到后/前相邻拐点的距离h2/h1”一个特征值,易造成错误匹配,因此筛选过程不考虑两条裂缝中各分支的首/尾拐点,称其为无效拐点,与之对应的含有两个及以上特征值的拐点称为有效拐点。

同理,将余下的父辈裂缝拐点的特征值依次代入程序进行计算,得到各拐点的疑似偏差率及疑似子拐点序号,如表5所示。

表5 父辈裂缝拐点的疑似子拐点

由以上筛选过程可知,疑似子拐点是各类特征值与父辈拐点最接近的子辈拐点,而疑似偏差率则代表了该疑似子拐点与父辈拐点之间的最低相似程度。以Py≤0.1作为判定疑似子拐点真实性的标准,即认为当疑似拐点与父辈拐点的相似程度达到90%以上时,判定该疑似拐点即是父辈拐点真正的子拐点。从表4结果可以得出,在该标准下父子拐点匹配成功的概率达到了9/10,可以认为两条裂缝的拐点基本重合。

综合两条裂缝分岔点生长编码和拐点特征值的比对结果,可以判定两幅图像来源于同一裂缝,判定结果符合预期,从而验证了两种特征能够为分岔裂缝的机器自动化识别提供可靠依据。

6 结论

(1)在隧道衬砌单线裂缝特征提取研究的基础上,成功对分岔裂缝的拐点进行了识别和特征值提取,并提出分岔点生长编码这一新的裂缝特征,该特征能够对分岔裂缝的初始生长方向进行量化。

(2)通过设计裂缝匹配试验,对拐点和分岔点生长编码两种特征的可靠性进行验证,试验得出父子裂缝的生长编码相似度达到98.9%,拐点匹配成功概率达到90%。试验结果印证了两条裂缝的遗传性,符合试验预期,两种特征能够作为分岔裂缝机器自动化识别的可靠依据。

(3)本文提出的特征提取算法适用于未形成闭合区域的隧道衬砌分岔裂缝,以该算法为基础,进一步建立的自动化检测系统能够对分岔裂缝的发育进行监测和预判,为实现隧道衬砌剥落掉块预警打下基础。

猜你喜欢

元胞父辈拐点
《我和我的父辈》观后感
My Country, My Parents 《我和我的父辈》观后感
秦国的“拐点”
新拐点,新机遇
恢复高考:时代的拐点
基于元胞自动机下的交通事故路段仿真
《廉洁拐点》
接过父辈的旗帜
基于元胞数据的多维数据传递机制
尤劲东油画选