引言

地震发生后,现场工作队将对地震现场进行灾害调查,房屋破坏等级评价是其中一项重要工作(乔岳强等,2014吴建超等, 2015, 2016蔡永建等,2015)。对于未倒塌、毁坏房屋,房屋裂缝宽窄是评价房屋破坏等级的重要依据。地震现场灾害调查工作量大,若人工测量房屋的每一处裂缝宽度,必然加大现场工作的难度。MATLAB图像处理技术在桥梁裂缝检测、建筑裂缝、混凝土结构外观检测及边坡监测预报等方面均有应用(Abdel-Qader等,2003卢晓霞,2010彭海涛,2011冯洋,2013肖锋,2013李文波等,2015)。因此,本文尝试运用MATLAB图像处理技术,快速、高效、准确地获取地震现场的房屋裂缝宽度数据,以期为地震现场灾害调查工作提供技术支持。

1 房屋裂缝宽度检测原理

地震现场的房屋裂缝多为线型或“X”型(图 1),在进行视觉观察后,选取目标裂缝进行测量。裂缝检测的原理是在裂缝附近选取黑色正方形ABCD为人工标志物,边长x(mm),如图 2所示。


图 1 地震现场房屋裂缝特征 Fig. 1 Cracks of buildings in earthquake field

图 2 裂缝宽度测量原理 Fig. 2 The principle of crack width measurement method

基于MATLAB图像处理技术,可计算出标志物角点在拍摄图像坐标体系中的坐标值,正方形4个角点坐标分别为(X1Y1)、(X2Y2)、(X3Y3)、(X4Y4),则图像中正方形的周长Lt为:

$ L_t=\sqrt{{{\left({{X}_{1}}-{{X}_{4}} \right)}^{2}}+{{\left({{Y}_{1}}-{{Y}_{4}} \right)}^{2}}}+\sum\limits_{i=1}^{3}{\sqrt{{{\left({{X}_{i+1}}-{{X}_{i}} \right)}^{2}}+{{\left({{Y}_{i+1}}-{{Y}_{i}} \right)}^{2}}}} $ (1)

图像中裂缝的宽度Dt由裂缝边缘MXMYM)、NXNYN)2点之间的欧氏距离计算所得:

$ {{D}_{t}}=\sqrt{{{({{X}_{M}}-{{X}_{N}})}^{2}}+{{({{Y}_{M}}-{{Y}_{N}})}^{2}}} $ (2)

图中MN点向量方向与裂缝延伸方向垂直。人工标志正方形的实际周长为Ls=4x,单位mm,则裂缝实际宽度Ds为:

$ {{D}_{s}}=\frac{L_s}{L_t}\times D_t $ (3)

其中,LtDt分别是以图像中像素点数计算得到的长度和宽度,单位为像素个数(pix)。

2 基于图像处理技术的裂缝检测

在进行地震现场灾害调查工作时,需对不同类型房屋损坏情况进行快速评估,以确定调查点地震烈度,并绘制地震烈度图。因此,进行房屋损坏评估是地震烈度图绘制的基础工作之一。地震发生后,未坍塌房屋的承重墙体、构造柱开裂的程度等是评判房屋损坏等级的重要依据(张敏政,2008谭慧明等,2010吴迪等,2010中华人民共和国国家质量监督检验检疫总局等,2012)。

基于图像处理技术检测房屋墙体和构造柱裂缝宽度,主要包括裂缝图像采集、裂缝图像处理、裂缝识别及裂缝宽度确定等,其工作流程如图 3所示。


图 3 裂缝宽度测量实现流程 Fig. 3 The process of the crack width measurement method

现场调查应在保障安全的前提下,进行房屋损坏评估工作;若地震现场存在余震,应在余震结束后或余震不足以再次造成房屋破坏时,进行房屋损坏评估。房屋裂缝宽度是房屋损坏等级评估的重要指标。传统的裂缝宽度测试是运用塞尺法、裂缝显微镜法等对裂缝宽度进行近距离人工识读,这样费时、费力、效率低,还可能存在人为误差(肖锋,2013)。

本文采用的房屋裂缝宽度测量方法,应在地震后保障安全的前提下近距离进行。在房屋裂缝左侧附近,放置1个正方形人工标志物,利用已有地震现场调查终端(手机)进行裂缝图像采集,传至计算机,再利用MATLAB软件进行图像处理分析(Gonzalez等,2009),获得裂缝宽度的最大值。基于数字图像处理技术的房屋裂缝测量能够达到更高精度,且更加自动化、快速、便捷,并可消除人为读数误差。

2.1 设置标志及选定观测区域

在拍摄图像时,对人工标志有以下要求:①特征鲜明,能被计算机程序辨识,具有较强辨识精度和可靠性;②制作方便,能够轻松完成制作;③标志物尺寸合适(肖锋,2013)。本文选取的人工标志为正方形标志物,其形状规则,角点明显,便于有效角点的提取;并且正方形标志的色彩与其所处背景色差异明显,能够使数字图像处理过程变得简洁,便于增加图像特征点的提取精度;正方形标志制作简单、布设容易。本文选取的标志物为10mm×10mm的正方形,颜色为黑色(图 2),背景色为白色。

在裂缝附近设置观测标志物时,应先对目标裂缝全面观察,在其上找到相对明显、较为完整的开裂处作为裂缝目标测量区,然后在目标测量区裂缝一侧附近粘贴已制好的观测标志物,观测标志物应尽量靠近裂缝边缘。

2.2 图像采集

为有效提高裂缝宽度辨识的精度和可靠性,应采用高像素的拍摄设备。在计算机中,采集的图像以数据点组成的矩阵进行存储,是量化的二维矩阵,每个数据点具有自身的属性,如图像的灰度、颜色等,这样的数据点被称为像素(李文波等,2015)。为了使裂缝宽度测量准确度更高,拍摄图像时,屏幕中的裂缝应呈竖向,裂缝位于图像中间,拍摄设备应位于裂缝与观测标志物的正前方(冯洋,2013)。

若观测区域存在多条裂缝,为计算简洁,可以设置多个目标观测区域,每个目标区域内只允许出现1条裂缝(彭海涛,2011),对每个目标区域内裂缝宽度进行计算,从而得到各条裂缝宽度值。

2.3 图像灰度处理

图像灰度处理过程是把RGB格式的图像转化为灰度图,为后续图像处理提供方便。由于相机采集到的裂缝图存储为RGB格式,包含了多样色彩信息,三维的数据矩阵存储由RGB格式图像数据定义的红、绿、蓝3个像素颜色分量的数值(夏日诚,2007)。若对这种格式的图像直接进行处理,将显著增大计算量,降低计算效率。同时,进行简化处理时应确保裂缝宽度测量的精度。通过分析,将RGB图转化为灰度图是达到以上目的最简单的方法。

数字图像可以定义为1个三维(或二维)函数fxyn)(或fxy)),函数中xy是空间坐标,n为坐标(xy)处的通道数。在任何空间坐标(xy)上的幅值f称为该点图像的灰度或强度(张强等,2012)。当坐标点(xy)和幅值f为离散的、有限的数值时,称该图像为数字图像。一幅M×N×n阶图像的矩阵可表示为:

$ f(x, y, n)=\left[ \begin{matrix} f(0, 0, n) & f(0, 1, n) & \ldots \ldots & f(0, N-\text{1}, n) \\ f(\text{1}, 0, n) & f(\text{1}, \text{1}, n) & \ldots \ldots & f(1, N-\text{1}, n) \\ \ldots \ldots & \ldots \ldots & \ldots \ldots & \ldots \ldots \\ f(M-1, 0, n) & f(M-1, 1, n) & \ldots \ldots & f(M-1, N-1, n) \\ \end{matrix} \right], n=1, 2, 3 $ (4)

fxy)∈[0,255],n=3,图像有3个通道(即红色fxy,1)、绿色fxy,2)、蓝色fxy,3)),为RGB色彩模式图像。若fxy)∈[0,255],n=1,则为灰度图像。当fxy)=0,显示为黑色;当fxy)=255,显示为白色;其它值均为由白色向黑色过渡的灰色。

将彩色图像转化为灰度图像的方法很多,较为常用的3种转化方法是基于RGB到YUV加权转换的方法(式(5))、权值平均法和基于RGB到HSI加权转换的方法。采用式(5)的方法,能够高效地将彩色图像转化为灰度图像,并且图像的灰度层次分明,不会对原图造成较大的失真,因此,本文采用该方法获得裂缝的灰度图像。

$ Gray=0.299R+0.587G+0.114B $ (5)

其中,Gray为灰度图中每个像素的灰度值,RGB分别为RGB图像上像素红色分量、绿色分量和蓝色分量的数值,基于各彩色分量信号对转换结果影响的大小决定各系数。采用式(5)计算,RGB格式的图像进行了大程度的简化,原图像中有用的信息也得到了保留。

2.4 图像二值化

图像二值化就是对裂缝灰度图像选用1个合适的阈值,而后根据阈值判断图像中哪些像素点属于背景区域、哪些属于目标裂缝区域,进而产出相应的裂缝特征更加显著的二值黑白图像。其中,黑色部分代表背景区域,白色部分代表目标裂缝区域(罗希平等,1999章毓晋,2001)。

图像二值化的基本原理是假定图像平滑后,对灰度图的二维灰度函数fxy)进行最佳阈值法(郭艳平等,2008)处理,找出1个合适的灰度值作为阈值T,然后根据阈值T将图像分割为2部分,从而实现图像二值分割。函数gxy)为运算后的二值图像,其运算公式为:

$ g\left(x, y \right)=\left\{ \begin{align} & \text{1}, \ \ \ \ f\left(x, y \right)>T\text{ } \\ & \text{0}, \ \ \ \ f\left(x, y \right)\le T\text{ } \\ \end{align} \right. $ (6)

其中,0表示背景区域像素的灰度值,1表示裂缝区域人工标志像素灰度值。

该图像仅用黑白显示,当gxy)=1时,显示为白色;当gxy)=0时,显示为黑色。

2.5 图像去噪

受周围环境、人为因素及图像采集设备等的影响,任何原始图像都存在一定程度的噪声干扰,可能会使拍摄的裂缝图像显示模糊,降低图像质量,还会造成裂缝特征模糊,使分析裂缝变得困难。对原图进行灰度化、二值化处理后,再进行平滑滤波处理,能够消除裂缝图像中的噪声影响,使背景和裂缝区分变得显著,裂缝显示更加清晰,有利于后续工作的开展(王耀南等,2001)。去噪效果较好的方法是选用5×5模板的中值滤波器对裂缝图像进行滤波处理(卢晓霞,2010),这样裂缝和背景之间的界限比较分明。故本文采用5×5模板的中值滤波器对灰度裂缝图像进行平滑处理。

若墙体表面存在其它缺陷(孔洞)或污点,进行上述处理后图像上仍然存在“孤立”点或块噪声,则必须对其进行消除才能进行裂缝测量。具体方法为:利用MATLAB将二值化后的图像中的所有目标区域进行标记,统计各标记区域像素个数,然后获得不同标记区域的面积,通常裂缝区域与人工标志区域面积远大于其它“孤立”块或点,故可将远小于裂缝和人工标志区域面积的“孤立”块或点消除(彭海涛,2011)。

2.6 区域分割与像素标定

在二值图像矩阵中,人工标志区域与裂缝区域的数值均为1,但二者区域不连通(图 4(a))。为便于裂缝宽度计算,利用MATLAB中的bwlabel函数将人工标志区域与裂缝区域分割标记(刘超,2016),人工正方形标志区域数值标记为1,裂缝区域数值标记为2(图 4(b))。


图 4 二值图像区域分割标记矩阵 Fig. 4 Mark matrix of binary image region division

图像经过二值化及区域分割标记,利用MATLAB中的find函数可获得Lxy)=1区域中元素坐标的行值p与列值q,令矩阵E=[pq],然后可用max及min函数计算得到人工标志4个角点坐标,进而计算图像中正方形的周长Lt图 5为人工标志特征及其对应矩阵数据,下面仅以A点坐标计算为例,进行探讨。


图 5 图像中人工标志示意图 Fig. 5 The sketch map of the artificial markers

A点坐标位于标志区域最左侧,其横坐标最小,则A点横坐标XA=min(q),该横坐标值仅对应1个纵坐标值,基于MATLAB图像处理技术,通过索引方法(张强等,2012),可获得纵坐标YA,MATLAB运行命令如下:

index=find(E(:,2)==min(q));

data=E(index,1);

YA=data。

通过该方法,可依次获得黑色正方形其余3个角点坐标,再利用式(1)计算图像中正方形周长Lt,则数字图像中单个像素所代表实际长度$ \delta =\frac{L_\text{s}}{L_t}=\frac{40}{L_t} $,单位为mm/pix。

2.7 裂缝提取及宽度计算

图 6所示,经图像分割后裂缝区域标记值为2,通过MATLAB逐行寻找每行裂缝区域内数值为2的元素个数,则第i行裂缝宽度内数值为2的元素个数为Ni),该行裂缝实际宽度为Widthi)=Ni)× $ \delta $。通过此法可获得每行裂缝宽度值,像素个数最大行则为裂缝宽度最大处,进而获得拍摄图像内裂缝宽度的最大值max(Widthi))。


图 6 裂缝区域矩阵示意图 Fig. 6 The sketch map of crack region matrix
3 计算实例
3.1 单幅裂缝图像裂缝宽度计算

选择现实存在的房屋墙体裂缝进行研究,在裂缝图像拍摄前,首先选取视觉观测裂缝宽度最大位置处。对于多条、交叉裂缝场景,则需要多次拍摄不同部位的裂缝照片,但每张图像中仅允许1条裂缝。房屋裂缝宽度测量的过程图如图 7所示,具体工作流程为:首先选择所要观测的裂缝,在裂缝左侧附近放置10mm×10mm的黑色正方形人工标志;调整手机镜头角度进行拍摄,使镜头内的裂缝和人工标志均完整呈现(手机型号为华为BLN-AL20,拍摄像素1200万,镜头自动对焦,照明方式为自动);完成图像采集后,利用手机端的地震现场调查软件把所拍摄图像传至计算机(吴建超等,2015);最后,在电脑端利用MATLAB软件进行图像灰度变换、二值化、图像去噪、图像区域分割和像素标定,最终获得图像内裂缝宽度最大值。


(a)裂缝图像原始图;(b)灰度化图;(c)二值化图;(d)去噪后的二值化图;(e)自动检测裂缝最窄与最宽位置图;(f)裂缝不同位置宽度测试图
图 7 房屋裂缝宽度测量过程 Fig. 7 Process of buildings width measurement of cracks

图 7(f)中的编号1—10为实测裂缝位置,工具采用经过标定的游标卡尺,其精度为0.02mm。编号11的位置为通过MATLAB图像处理技术自动获得的裂缝宽度最窄处,其原理为:裂缝为竖向裂缝,则裂缝宽度内的像素个数(裂缝处二值图像数字标记为2)与单个像素所代表实际长度的乘积为裂缝宽度值,通过逐行查找每行内裂缝宽度内像素个数,进行比较,可获得图像内像素个数最少值,即裂缝宽度最窄处。同样,逐行查找处图像内像素个数最大值,得到编号12的位置为即裂缝宽度最宽处。编号1—12的裂缝宽度值与实测值的比较结果,如图 8表 1所示。由表 1可见,裂缝宽度的实际误差在0.0101—0.0395mm之间,相对误差为0.67%—4.11%,平均相对误差为1.89%,理论计算精度为98.11%,符合《房屋裂缝检测与处理技术规程(CECS293:2011)》(湖南大学等,2011)中的裂缝宽度测量要求,即结构构件裂缝宽度检测精度不应小于0.1mm。


图 8 裂缝宽度理论计算值与实测值比较 Fig. 8 Comparison of calculated and measured values of crack width
表 1 裂缝宽度理论计算值与实测值的比较 Table 1 Comparison of calculated and measured values of crack width
3.2 不同分辨率图像的裂缝宽度计算

考虑到不同分辨率的图像对裂缝宽度获取有所影响,利用Photoshop CS6软件对1200万像素的原图像进行分辨率降低处理,进而获得分辨率分别为1100、1000、900、800、700、600、500、400、300、200、100、30万像素的图像,其中部分图像如图 9所示。


图 9 不同分辨率的裂缝图像 Fig. 9 Crack images with different resolutions

首先,用游标卡尺测量目标测试处的裂缝宽度,然后利用本文的方法计算13幅不同分辨率图像中目标测试处的裂缝宽度,计算结果与实测结果如表 2图 10所示。对比可知,图像分辨率越高,裂缝宽度的测量误差越小。

表 2 不同分辨率下裂缝目标位置宽度的识别值与实测值的比较 Table 2 Comparison of identification and actual measured values of crack width at different resolutions

图 10 不同分辨率的裂缝图像目标位置测试误差 Fig. 10 Target resolution test errors for crack images with different resolutions
4 结论

本文基于图像处理技术,运用MATLAB软件对房屋的裂缝宽度进行了检测,获得以下认识:

(1)利用本文提出的检测方法识别裂缝宽度,精度较高,达到98.11%,误差最大值为0.0395mm,满足裂缝宽度检测f的精度要求。

(2)将裂缝图像进行灰度化、二值化、图像去噪、图像分割与标定等处理后,能够较为便捷有效地得到裂缝信息数据,进而获得裂缝的实际宽度。获取图像设备的分辨率越高,识别得到的裂缝宽度误差越小。在地震现场工作时,本方法能够快速地为房屋破坏等级评价提供依据。

致谢: 感谢审稿专家对本文提出宝贵修改建议。
参考文献
蔡永建, 郑水明, 吴建超, 2015. 2015-04-25尼泊尔M 8.1地震震害特征[J]. 大地测量与地球动力学, 35(4): 557-560.
冯洋, 2013. 基于MATLAB GUI的裂缝宽度测量系统设计[J]. 河南科学, 31(10): 1652-1654. DOI:10.3969/j.issn.1004-3918.2013.10.020
郭艳平, 侯凤贞, 2008. 纸币面值识别系统图像分割技术的算法[J]. 重庆工学院学报(自然科学), 22(11): 124-126, 153.
韩军, 李英民, 刘立平, 等, 2008. 5·12汶川地震绵阳市区房屋震害统计与分析[J]. 土木建筑与环境工程, 30(5): 21-27.
湖南大学, 福建省建筑科学研究院, 2011. CECS 293-2011房屋裂缝检测与处理技术规程[M]. 北京: 中国计划出版社.
李文波, 杨保春, 2015. 基于图像处理技术的混凝土桥梁裂缝宽度检测[J]. 湖南交通科技, 41(1): 119-122. DOI:10.3969/j.issn.1008-844X.2015.01.035
刘超, 2016. MATLAB基础与实践教程[M]. 2版. 北京: 机械工业出版社.
卢晓霞, 2010.基于图像处理的混凝土裂缝宽度检测技术的研究.成都: 电子科技大学. http://cdmd.cnki.com.cn/Article/CDMD-10614-2010234549.htm
罗希平, 田捷, 诸葛婴, 等, 1999. 图像分割方法综述[J]. 模式识别与人工智能, 12(3): 300-312.
彭海涛, 2011.基于图像分析技术的混凝土结构外观质量检测与评定.长沙: 湖南大学. http://cdmd.cnki.com.cn/Article/CDMD-10532-1012327430.htm
乔岳强, 吴建超, 冯谦, 等, 2014. 巴东MS 5.1地震震害分布特征[J]. 大地测量与地球动力学, 34(3): 15-19.
谭慧明, 王恒知, 范小平, 等, 2010. 玉树7.1级地震房屋震害调查及现场快速评估[J]. 土木建筑与环境工程, 32(S2): 16-18.
王耀南, 李树涛, 毛建旭, 2001. 计算机图像处理与识别技术[M]. 北京: 高等教育出版社.
吴迪, 熊焱, 崔杰, 等, 2010. 汶川8.0级地震中汶川县城房屋震害及其加固情况分析[J]. 地震研究, 33(2): 216-221. DOI:10.3969/j.issn.1000-0666.2010.02.015
吴建超, 蔡永建, 雷东宁, 等, 2015. 地震应急通系统在尼泊尔8.1级地震应急中的应用[J]. 大地测量与地球动力学, 35(5): 747-750.
吴建超, 郑水明, 李恒, 等, 2016. 2014年3月30日湖北省秭归M 4.7地震房屋震害特征分析[J]. 地震工程学报, 38(4): 669-672. DOI:10.3969/j.issn.1000-0844.2016.04.0669
夏日诚, 2007.基于彩色和灰度图像的色图设计.成都: 电子科技大学. http://cdmd.cnki.com.cn/Article/CDMD-10614-2008123960.htm
肖锋, 2013.基于数字图像处理技术的建筑裂缝监测研究.重庆: 重庆大学. http://cdmd.cnki.com.cn/article/cdmd-10611-1013044392.htm
张敏政, 2008. 汶川地震中都江堰市的房屋震害[J]. 地震工程与工程振动, 28(3): 1-6.
张强, 王正林, 2012. 精通MATLAB图像处理[M]. 2版. 北京: 电子工业出版社.
章毓晋, 2001. 图像分割[M]. 北京: 科学出版社.
中华人民共和国国家质量监督检验检疫总局, 中国国家标准化管理委员会, 2012. GB/T 18208.3-2011地震现场工作第3部分:调查规范[M]. 北京: 中国标准出版社.
Abdel-Qader I., Abudayyeh O., Kelly M. E, 2003. Analysis of edge-detection techniques for crack identification in bridges[J]. Journal of Computing in Civil Engineering, 17(4): 255-263. DOI:10.1061/(ASCE)0887-3801(2003)17:4(255)
Gonzalez R. C., Woods R. E., Eddins S. L, 2009. Digital image processing using MATLAB[M]. Beijing: Publishing House of Electronics Industry.