李文波,楊保春
(1.湖南省交通規(guī)劃勘察設(shè)計院,湖南 長沙 410008;2.義烏市交通工程質(zhì)量安全監(jiān)督管理站,浙江 義烏 322000)
隨著我國交通建設(shè)的高速發(fā)展,交通等級要求不斷提高,對低等級公路加寬和舊橋的加固改造任務(wù)不斷增加。在改造的過程中,有許多路線中有混凝土橋梁?;炷翗蛄捍蠖嗫缭綅{谷、河流,或者跨越公路,為了保障線路的安全運(yùn)營,對橋梁的安全維護(hù)是必須的,其中安全檢測是橋梁維護(hù)工作中重要的組成部分。在現(xiàn)代交通建設(shè)中,橋梁起著非常重要的作用,特別是城際鐵路、高鐵的發(fā)展,橋梁占整個線路長度達(dá)到的40%~50%[1]。已有研究表明,大部分的混凝土橋梁的損壞由裂縫導(dǎo)致的,因此對混凝土橋梁裂縫的檢測非常重要。調(diào)查統(tǒng)計顯示,混凝土橋梁在運(yùn)營過程幾乎都帶有裂縫,要保證完全不出現(xiàn)裂縫是不可能的。在實踐中,我們也并沒有要求混凝土結(jié)構(gòu)避免出現(xiàn)裂縫,而且裂縫也分為許多情況,有的裂縫很微小,對于裂縫寬度小于0.05 mm 的裂縫肉眼察覺不到,這種級別的裂縫在正常使用過程不會對結(jié)構(gòu)產(chǎn)生破壞,規(guī)范上允許這種裂縫的存在[2];但是有些混凝土裂隙在荷載作用、周邊的氣候環(huán)境、外界的物理化學(xué)影響下會使裂縫加深擴(kuò)展和產(chǎn)生新的裂縫,裂縫貫通之后使的寬度在0.3 mm 以上。這種裂縫會破壞結(jié)構(gòu)的完整性、引起保護(hù)層剝落,鋼筋產(chǎn)生銹蝕,影響結(jié)構(gòu)物的安全運(yùn)營,嚴(yán)重時會發(fā)生垮塌事故。對混凝土橋梁進(jìn)行裂縫檢測、精確獲取裂縫信息有非常重要的意義,通過對裂縫的檢測,可以了解橋梁結(jié)構(gòu)的破壞情況。目前國內(nèi)外采用人工定期檢測,通過人工測量獲取裂縫信息,這種方法存在許多局限性,缺乏效率,對測量員也有很大的風(fēng)險。隨著計算機(jī)技術(shù)的發(fā)展,數(shù)字圖像處理技術(shù)得到廣泛應(yīng)用[3-5]。目前,美國、日本、韓國、歐洲等發(fā)達(dá)國家利用數(shù)字圖像處理技術(shù)進(jìn)行橋梁的安全檢測有比較深入的研宄,但是大部分都集中在公路的裂縫檢測上,對于混凝土橋梁的裂縫寬度的檢測技術(shù)還不成熟。本文基于數(shù)字圖像處理技術(shù),利用canny 算法提取裂縫輪廓,通過距離變換獲取裂縫的形態(tài)學(xué)信息,然后對裂縫細(xì)化,得到距離信息。最后,根據(jù)相機(jī)標(biāo)定將像素轉(zhuǎn)換為實際測量需要的長度數(shù)據(jù),得到裂縫的實際寬度,為混凝土橋梁的維修加固提供參考依據(jù)。
基于數(shù)字圖像處理技術(shù),檢測混凝土橋梁結(jié)構(gòu)表面的裂縫寬度,主要包括圖像采集、圖像處理、裂縫識別和裂縫寬度確定等內(nèi)容。
采用高清晰度數(shù)碼相機(jī)采集裂縫圖像,采集的圖像在計算中以數(shù)據(jù)點組成的矩陣存儲的數(shù)字圖像,數(shù)字圖像的本質(zhì)是被量化的二維矩陣。每一個數(shù)據(jù)點代表裂縫圖像的顏色、灰度等屬性,我們把這樣的數(shù)據(jù)點稱之為像素。
圖像處理之后獲取的裂縫信息(裂縫的長度、寬度等)都是以像素為單位的,而實際我們所要得到的檢測結(jié)果是以mm 為單位的,為了求出每個像素單位代表實際的多少mm,必須對圖像進(jìn)行標(biāo)定。通過圖像標(biāo)定可以求得每個像素代表的實際長度,從而確定圖像中裂縫的實際信息。圖像標(biāo)定方法較多,綜合考慮擦亮精度與圖像處理效率的要求,本文采用的方法是在采集的裂縫旁邊貼一塊正方形的黑色紙片,如圖1 所示。采集的圖像經(jīng)過圖像處理之后,可獲取黑色紙片在長度方向上的像素點個數(shù),紙片的實際長度除以像素點個數(shù),即得到一個像素所代表的實際寬度。
圖1 黑色正方形標(biāo)定塊
在采集圖像的過程中,由于受到空間限制和采集圖像時人為誤差,采集的圖像會產(chǎn)生傾斜,這種圖像通常情況下,標(biāo)定塊的上下邊緣是平行的但是相對于圖像上下兩邊會有細(xì)微的傾斜;而標(biāo)定塊的左右邊緣相對于標(biāo)定塊中線對稱,相對于圖像兩側(cè)邊是傾斜的。為了正確的識別裂縫信息,需要對圖像進(jìn)行修正,圖像修正采用文獻(xiàn)[4]的修正方法。
圖像處理以灰度圖像為基礎(chǔ),將RGB 格式的圖像灰度化處理轉(zhuǎn)換為灰度圖像,灰度化公式:
式中:Gray 為灰度圖像的灰度值,;R,G,B 分別為原始彩色圖像中紅、綠、藍(lán)三種基本顏色分量值。對原始圖像灰度化處理之后的灰度圖像如圖2 所示。
圖2 灰度圖像
圖像處理都是在MATLAB 環(huán)境下編程實現(xiàn),采集的裂縫圖像是用高清晰度數(shù)碼相機(jī)拍攝的,圖像的分辨率高,每幅數(shù)字圖像包含大量的數(shù)據(jù)點,在編程運(yùn)行的時候進(jìn)行大量的矩陣運(yùn)算,而式(1)中包含浮點運(yùn)算,會大大的減緩程序的運(yùn)行速度,為了提高圖像處理的運(yùn)行速度,將浮點運(yùn)算轉(zhuǎn)換為整數(shù)運(yùn)算。因為RGB 的取值范圍都是0 ~255 的整數(shù),將上述公式改寫為:
由于采集的裂縫圖像會不可避免的含有噪聲成分,在獲取裂縫信息前,必須將噪聲去除。在濾波去噪的過程中,一方面要有效地去除裂縫圖像中干擾裂縫的噪聲;另一方面要保護(hù)裂縫信息,避免去噪時影響裂縫的邊緣。
為了得到質(zhì)量良好的去噪后的裂縫圖像,在去噪前先進(jìn)行增加處理,增加圖像的信噪比,使得裂縫區(qū)域和背景區(qū)域最大限度的分離。若信噪比不明顯,可適當(dāng)?shù)奶砑痈咚乖肼暬蛘呓符}噪聲。
常用的濾波算法有很多,本文采用中值濾波和平滑濾波相結(jié)合的算法[6]。首先選取一個寬度為7×7 的方形領(lǐng)域,對圖像平滑處理,然后添加椒鹽噪聲,進(jìn)行中值濾波,輸出圖像的灰度值取灰度圖像的中間灰度值。濾波去噪處理后的裂縫圖像如圖3 所示。
圖3 濾波去噪后的裂縫圖像
裂縫檢測的方法很多,本文采用canny 算法獲取裂隙輪廓,雖然canny 算法不能夠去除其他非裂縫信息,只能夠找出裂縫的所有邊緣并且標(biāo)記出來。但是對裂縫圖像進(jìn)行濾波去噪處理之后,canny 算法是一種最好的裂縫邊緣檢測的算法[7]。一般來講,canny 算法檢測邊緣的錯誤率低,能盡量的標(biāo)記出裂縫的實際邊緣。canny 算法的定位性能很好,通過canny 算法檢測出的裂縫邊緣與實際邊緣擬合良好,并且它可以有效的避免對裂縫的重復(fù)標(biāo)記。采用canny 算法生成的裂縫輪廓(圖4 所示),再對canny 算法的結(jié)果進(jìn)行取反,使裂縫區(qū)域標(biāo)記為黑色(圖5 所示)。
圖4 canny 算法提取的裂縫輪廓
圖5 真實的裂縫信息圖
距離變換是一種基于二值化圖像處理的全局操作。它是計算目標(biāo)空間點之間的距離,最終把二值化圖像轉(zhuǎn)變成灰度圖像的過程(其中每個像素點的灰度值等于它到最近目標(biāo)點的距離)[8]。距離變換的類型有3 種,按照距離類型劃分可分為:非歐氏距離變換和歐氏距離變換(EDT)。其中EDT 精度高,與實際距離相符,應(yīng)用比較廣泛。
在二維平面上定義兩點,兩點之間的歐氏距離表示為:
在二值圖像中,1 代表目標(biāo)點(裂縫區(qū)域像素點),0 代表背景(背景區(qū)域像素點);在灰度圖像中,通過距離變換之后,像素點的灰度值等于該像素點到最近目標(biāo)點的距離值。這樣一張M×N 的圖像可以表示為一個二維數(shù)組A[M][N],其中A[i][j]=1 表示裂縫區(qū)域目標(biāo)像素點,A[i][j]=0 表示背景區(qū)域的像素點。若B ={ (x,y)|A[i][j] =1} 為目標(biāo)點集合,則歐氏距離變換就是對A 中所有的像素點求:
其中:
距離變換的結(jié)果通常是一幅和輸入圖像看起來很接近的灰度圖片,所不同的是前景區(qū)域內(nèi)的點的亮度被改變了,用以顯示每個點到其最近的邊界的距離。如圖6 所示。
圖6 距離變換的輸入圖像和輸出圖像
對圖5 的裂縫圖反相,然后對其進(jìn)行距離變換,得到的輸出圖像如圖7 所示。
圖7 距離變換后的輸出圖像
距離變換的方法就是獲取裂縫的形態(tài)學(xué)信息,通過對裂縫區(qū)域進(jìn)行距離變換,就可求得裂縫的中心線到其邊界的距離。由圖6 和圖7 可以看出,裂縫最大寬度處中線是白色的,其灰度值最大Gray=255,在距離變換時,可以將這個信息提取出來。然后通過遍歷,求中線到canny 算法得到的裂縫邊緣的最小值,也就是中線像素點到邊緣像素點的垂直距離,這個距離的2 倍就是我們所求的裂縫的最大寬度。
基于以上圖像處理的方法,利用MATLAB 強(qiáng)大的圖像處理功能[9,10],編制程序,即可得到裂縫寬度。
為了驗證本文裂縫圖像處理的可行性,以現(xiàn)場采集的10 幅混凝土橋梁表面裂縫圖像,對其進(jìn)行了驗證,同時用裂縫寬度觀測儀現(xiàn)場實測裂縫寬度與理論計算值進(jìn)行比較(表1 所示)。
從表1 可以看出,裂縫寬度小于0.2 mm 的相對誤差明顯高于裂縫寬度大于0.2 mm 的,裂縫寬度大于0.2 mm 的平均相對誤差為2.52%,識別精度97.48%。裂縫寬度小于0.2 mm 的平均相對誤差為11.58%,識別精度88.42%。整體的平均相對誤差為7.05%,識別精度92.95%。
表1 裂縫寬度的理論計算值與實測值比較
因為儀器的精度,以及實測時人工原因?qū)τ趯挾刃∮?.2 mm 裂縫檢測,不可避免的產(chǎn)生誤差。通過MATLAB 編程運(yùn)算出的裂縫寬度為裂縫的最大寬度,因此,小于0.2 mm 裂縫的誤差較大。
根據(jù)公路橋涵設(shè)計規(guī)范以及公路養(yǎng)護(hù)規(guī)范的要求,橋梁正常使用狀態(tài)下允許最大的裂縫寬度為0.02 mm。因此,本文提供的裂縫圖像處理方法,識別裂縫寬度的精度能夠滿足工程實踐的需要。
本文基于MATLAB 強(qiáng)大圖像處理技術(shù),對混凝土橋梁表面的裂縫寬度進(jìn)行檢測,得到如下結(jié)論:
1)將裂縫圖像進(jìn)行圖像修正、濾波去噪等預(yù)處理后,采用canny 算法提取裂縫輪廓,然后再通過距離變換,得到裂縫中線信息數(shù)據(jù),從而求得裂縫寬度。實例驗證這種方法能夠有效檢測裂縫寬度,識別率達(dá)到92.95%以上,大于0.2 mm 裂縫寬度識別精度為97.48%。
2)本文對圖像灰度化處理進(jìn)行了優(yōu)化,將浮點運(yùn)算轉(zhuǎn)化為整數(shù)運(yùn)算,大大的加快MATLAB 灰度化處理的運(yùn)行速度,提高了圖像預(yù)處理的效率。
[1]張 強(qiáng),王正林.精通MATLAB 圖像處理[M].北京:電子工業(yè)出版社,2009.
[2]羅軍輝,馮 平.Matlab7.0 在圖像處理中的應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2005.
[3]高浩軍,杜宇人.中值濾波在圖像處理中的應(yīng)用[J].電子工程師,2004,30(8):35-36.
[4]方 志,彭海濤.基于圖像分析技術(shù)的混凝土橋梁結(jié)構(gòu)表面裂縫寬度檢測[J].湖南大學(xué)學(xué)報(自然科學(xué)版),2012,39(1):7-12.
[5]許薛軍,張肖寧.基于數(shù)字圖像的混凝土橋梁裂縫檢測技術(shù)[J].湖南大學(xué)學(xué)報(自然科學(xué)版),2013,40(7):34-40.
[6]常 娜.圖像處理中的邊緣檢測算法研究綜述[J].中國科技信息,2011(4):130-132.
[7]FISHER R,PERKINS S,WALKER A,et al.Morphology-Distance Transform [EB/OL].http://home pages,inf.ed.ac.uk/rbf/HIPR2/distance,htm,2013-04-27.
[8]JJF1334-2012,混凝土裂縫寬度及深度測量儀校準(zhǔn)規(guī)范[S].
[9]張維峰,劉 萌,楊明慧.基于數(shù)字圖像處理的橋梁裂縫檢測技術(shù)[J].現(xiàn)代交通技術(shù),2008,5(5):34-36.
[10]張登峰.基于圖像處理的鐵路混凝土橋梁裂縫探測和信息獲?。跠].北京:北京交通大學(xué)計算機(jī)與信息技術(shù)學(xué)院,2014.