本發(fā)明屬于圖像處理技術領域,具體涉及一種隧道裂縫檢測的圖像處理方法。
背景技術:
近年來,我國軌道交通發(fā)展迅速,特別是隧道工程在軌道交通中越來越被更多的采用,但由于在隧道工程中使用的混凝土收縮徐變、自然風化引起的結構破壞,以及一些地質災害或人為因素導致的破壞使得大量建筑設施的養(yǎng)護問題顯現(xiàn)出來,使軌道交通中的隧道工程進入了養(yǎng)護期,如果能夠提前預測線路的安全隱患或在設施出現(xiàn)故障的初期就對其采取相應措施,將會大大降低養(yǎng)護費用,提高線路的安全指數(shù)。因此,隧道安全的檢測已經(jīng)成為設施養(yǎng)護中的主要任務。
我國對隧道裂縫的檢測主要還是停留在人工判讀的水平,在線路無運營任務的時間段,通過人工觀測并記錄隧道裂縫,首先敲打墻壁,通過肉眼觀察裂縫的形態(tài)和走勢,然后用卷尺測量裂縫長度并記錄,用裂縫寬度測量儀測量裂縫寬度并記錄,最后根據(jù)工作經(jīng)驗判斷裂縫潛在的危害性。這種方法不僅費時費力,效率低下,而且不同的專業(yè)水平會使判斷結果也不盡相同,因此帶有很強的主觀性,不利于對隧道結構客觀地評估。
目前,隨著科學技術的發(fā)展,一種基于形變數(shù)據(jù)的固定式自動化檢測方法被提出,這種方法是在隧道上安裝傳感器以獲取裂縫形變數(shù)據(jù),再利用采集到的數(shù)據(jù)及算法評估隧道裂縫的危害程度。但這種方法必須在整條線路上都安裝傳感器,這樣不僅成本高,工作繁雜,而且無法均勻覆蓋隧道的所有區(qū)間,因此不能被廣泛采用。
技術實現(xiàn)要素:
本發(fā)明的目的是提供一種隧道裂縫檢測的圖像處理方法,可以有效克服現(xiàn)有技術中存在的缺點。
本發(fā)明是這樣實現(xiàn)的,其特征是包括下列步驟:
第一步:對讀入的一幅隧道圖像D進行預處理,去除管狀物、電線等有規(guī)則的近似直線物體所在的無效區(qū)域,包括下列步驟:
一、讀入一幅隧道圖像D將其轉化為double型,并進行高斯濾波得到imb,其分辨率為p×q;
二、對高斯濾波后的圖像imb,進行下列操作:
①去除直線類無效區(qū)域得到valid1:用Canny算子對imb進行邊緣檢測,去除Canny檢測后圖像中的兩類區(qū)域:一是長度近似相等的平行線條所包含的區(qū)域即管狀物所在的區(qū)域imline_pipe,二是水平和垂直直線所包含的區(qū)域即有規(guī)則的近似直線的物體所在區(qū)域imline_vh;
管狀物所在區(qū)域imline_pipe須同時滿足以下幾個特征:
1)經(jīng)膨脹操作后的圖像中,連通區(qū)域的長軸長度與短軸長度的比值axis要大于90,以確保該區(qū)域近似為直線;
2)經(jīng)膨脹操作后的圖像中,兩線條長度的比值ratio要滿足0.8<ratio<1.2,以確保兩線條長度近似相等;
3)在兩條認為長度相等的線條上,由兩個不同的位置求出這兩線條距離,將所得的兩個距離做乘積得dis,且dis要小于待測圖像尺寸最小值的1/5;
有規(guī)則的近似直線的物體所在區(qū)域imline_vh須同時滿足以下幾個特征:
1)經(jīng)膨脹操作后的圖像中,區(qū)域長軸長度與短軸長度的比值axis要大于20,以確保該區(qū)域近似為直線;
2)若該區(qū)域長軸與x軸交角大于85度或小于-85度,則判為垂直直線;
3)若該區(qū)域長軸與x軸交角大于-5度且小于5度,則判為平行直線;
②去除邊界閉合的塊狀物體所在的無效區(qū)域得到valid2:先對imb中每個像素點imb(x,y)用公式(1)求取梯度,并根據(jù)梯度值對圖像進行閾值分割,去除區(qū)域中梯度值小于12的部分,再通過膨脹操作、空洞填補和去除較寬區(qū)域等處理得到有效區(qū)域valid2;
其中x=1,2,3,...,3000;y=1,2,3,...,3000,wx和hy為分別為像素點im(x,y)的橫向邊緣值和縱向邊緣值;
三、對valid1和valid2區(qū)域求和,經(jīng)膨脹處理和小面積區(qū)域去除等操作獲得裂縫檢測的有效區(qū)域valid;
第二步:基于一維信號的波谷檢測
對預處理后的圖像valid進行波谷檢測:先從圖像valid獲取任意行或列得到一維信號并檢測信號的波峰點peak,再從該點取一段信號,在此段信號內,找到其他波峰點并與peak比較,將valid中大于像素值32的波峰按峰值從小到大的順序進行保留,將其他像素值去除,最后去除面積小于32×32的連通區(qū)域,得到im_label;
第三步:去除無效邊界
一、根據(jù)區(qū)域矩形度和離心率等特性去除im_label中的無效邊界得im_label_1:逐一求取im_label中每個連通區(qū)域的矩形度、離心率和區(qū)域像素的坐標,將滿足下列任一特征的區(qū)域視為無效區(qū)域并去除;
1)該區(qū)域的矩形度recd小于0.5,或大于2;
2)coxx大于c的最大值;
3)coyy大于c的最大值;
4)離心率lixinlv小于0.5;
5)axis小于2;
其中c為待測區(qū)域im_label_1的大小;coxx、coyy分別為區(qū)域像素橫坐標與縱坐標的最大值和最小值之差;axis為區(qū)域長軸長度與短軸長度的比值;
二、根據(jù)待測區(qū)域的均值和方差,去除im_label_1中的無效邊界得im_label_2:在im_label_1中去除均值大于128或方差大于15的區(qū)域,得到im_label_2;
三、根據(jù)兩個連通區(qū)域的均值和方差,去除im_label_2中的無效邊界得im_label_3,其中兩個連通區(qū)域為im_label_2中待測區(qū)域做膨脹處理后,將膨脹部分沿待測區(qū)域的長軸方向分開得到的兩個區(qū)域:將im_label_2中滿足下列任一特征的區(qū)域視為無效區(qū)域并去除,得到im_label_3;
1)兩區(qū)域均值差的絕對值小于6.5;
2)區(qū)域1中像素的最大值與最小值之差maxmin1大于70;
3)區(qū)域2中像素的最大值與最小值之差maxmin2大于70;
4)第一個區(qū)域的方差std1大于15;
5)第二個區(qū)域的方差std2大于15;
四、根據(jù)三個連通區(qū)域的均值和方差去除無效邊界得im_label_4,其中三個連通區(qū)域為im_label_3中的待測區(qū)域和對該待測區(qū)域做膨脹處理,將膨脹部分沿此待測區(qū)域的長軸方向分開得到的兩個連通區(qū)域:將im_label_3中滿足下列任一特征的區(qū)域視為無效區(qū)域并去除,得到im_label_4;
1)區(qū)域1和區(qū)域2均值差的絕對值大于6;
2)區(qū)域0和區(qū)域1均值差的絕對值小于4;
3)區(qū)域0和區(qū)域2均值差的絕對值小于4;
4)區(qū)域0中像素的最大值與最小值之差maxmin0大于60;
5)區(qū)域1中像素的最大值與最小值之差maxmin1大于60;
6)區(qū)域2中像素的最大值與最小值之差maxmin2大于60;
7)第0個區(qū)域的方差std0大于7;
8)第1個區(qū)域的方差std1大于8;
9)第2個區(qū)域的方差std2大于8;
第四步:對im_label_4進行最后的處理
對圖像im_label_4中的連通區(qū)域進行骨架提取,若同時滿足條件:①連通區(qū)域長度大于500、②面積與長度的比值小于5.5,則對該連通區(qū)域的面積、長度以及寬度進行標記,否則將其去除,最終得到Doutput;
經(jīng)過上述操作輸出標記裂縫的圖片Doutput。
本發(fā)明的優(yōu)點及積極效果是:
1、本發(fā)明采用的方法與傳統(tǒng)的人工檢測方法相比,更加客觀地對隧道裂縫進行測量和標注,提高檢測結果的準確性。
2、該方法克服了基于形變數(shù)據(jù)的固定式檢測方法中存在的缺點,本發(fā)明所提出的方法采用移動式的檢測車獲取隧道圖像,不必在整條線路上都安裝獲取裂縫形變數(shù)據(jù)的傳感器,這樣采集的數(shù)據(jù)可以覆蓋整個隧道,同時也節(jié)省了檢測成本,降低了工作的復雜度。
3、該方法針對隧道裂縫特征先后對圖像進行預處理、一維波峰檢測、無效邊界去除等操作,準確率高、漏檢率低,可以髙效、準確地檢測出隧道圖像中的裂縫。
附圖說明
圖1是本發(fā)明的系統(tǒng)實施框圖;
圖2待處理的原始隧道圖像D;
圖3是圖2經(jīng)轉換濾波后得到的圖像imb;
圖4是canny檢測后去除管狀物體、有規(guī)則的近似直線物體以及邊界閉合的塊狀物體所在區(qū)域后的圖像valid;
圖5基于一維信號的波谷檢測得到的結果im_label;
圖6是根據(jù)區(qū)域特征、區(qū)域均值和方差去除無效邊界得到結果im_label_4;
圖7是對有效區(qū)域進行骨架提取后進一步去除無效邊界得到輸出圖像Doutput。
具體實施方式
對本發(fā)明提出的隧道裂縫檢測的圖像處理方案,我們做了初步的測試實驗。采用一幅隧道圖像作為輸入圖像。使用華碩筆記本電腦作檢測處理,筆記本參數(shù)為:Intel(R),Core(TM)i5CPU,3210,@2.5GHz,4.00GB內存。軟件平臺為MatlabR2014a,用Matlab語言編程實現(xiàn)了隧道圖像裂縫檢測的方案。
圖1給出了本發(fā)明流程圖,其特征在于具體步驟如下:
第一步:對讀入的一幅隧道圖像D進行預處理,去除管狀物、電線等有規(guī)則的近似直線物體所在的無效區(qū)域,包括下列步驟:
一、讀入一幅隧道圖像D即圖2,將其轉化為double型,并進行高斯濾波得到imb如圖3所示,其分辨率為3000×3000;
二、對高斯濾波后的圖像imb,進行下列操作,得到圖4所示的有效區(qū)域:
①去除直線類無效區(qū)域得到valid1:用Canny算子對imb進行邊緣檢測,去除Canny檢測后圖像中的兩類區(qū)域:一是長度近似相等的平行線條所包含的區(qū)域即管狀物所在的區(qū)域imline_pipe,二是水平和垂直直線所包含的區(qū)域即有規(guī)則的近似直線的物體所在區(qū)域imline_vh;
管狀物所在區(qū)域imline_pipe須同時滿足以下幾個特征:
1)經(jīng)膨脹操作后的圖像中,連通區(qū)域的長軸長度與短軸長度的比值axis要大于90,以確保該區(qū)域近似為直線;
2)經(jīng)膨脹操作后的圖像中,兩線條長度的比值ratio要滿足0.8<ratio<1.2,以確保兩線條長度近似相等;
3)在兩條認為長度相等的線條上,由兩個不同的位置求出這兩線條距離,將所得的兩個距離做乘積得dis,且dis要小于待測圖像尺寸最小值的1/5;
有規(guī)則的近似直線的物體所在區(qū)域imline_vh須同時滿足以下幾個特征:
1)經(jīng)膨脹操作后的圖像中,區(qū)域長軸長度與短軸長度的比值axis要大于20,以確保該區(qū)域近似為直線;
2)若該區(qū)域長軸與x軸交角大于85度或小于-85度,則判為垂直直線;
3)若該區(qū)域長軸與x軸交角大于-5度且小于5度,則判為平行直線;
②去除邊界閉合的塊狀物體所在的無效區(qū)域得到valid2:先對imb中每個像素點imb(x,y)用公式(1)求取梯度,并根據(jù)梯度值對圖像進行閾值分割,去除區(qū)域中梯度值小于12的部分,再通過膨脹操作、空洞填補和去除較寬區(qū)域等處理得到有效區(qū)域valid2;
其中x=1,2,3,...,3000;y=1,2,3,...,3000,wx和hy為分別為像素點im(x,y)的橫向邊緣值和縱向邊緣值;
三、對valid1和valid2區(qū)域求和,經(jīng)膨脹處理和小面積區(qū)域去除等操作獲得裂縫檢測的有效區(qū)域valid如圖4所示;
第二步:基于一維信號的波谷檢測
對預處理后的圖像valid進行波谷檢測:先從圖像valid獲取任意行或列得到一維信號并檢測信號的波峰點peak,再從該點取一段信號,在此段信號內,找到其他波峰點并與peak比較,將valid中大于像素值32的波峰按峰值從小到大的順序進行保留,將其他像素值去除,最后去除面積小于32×32的連通區(qū)域,得到im_label如圖5所示;
第三步:去除無效邊界得到圖6所示結果;
一、根據(jù)區(qū)域矩形度和離心率等特性去除im_label中的無效邊界得im_label_1:逐一求取im_label中每個連通區(qū)域的矩形度、離心率和區(qū)域像素的坐標,將滿足下列任一特征的區(qū)域視為無效區(qū)域并去除;
1)該區(qū)域的矩形度recd小于0.5,或大于2;
2)coxx大于c的最大值;
3)coyy大于c的最大值;
4)離心率lixinlv小于0.5;
5)axis小于2;
其中c為待測區(qū)域im_label_1的大??;coxx、coyy分別為區(qū)域像素橫坐標與縱坐標的最大值和最小值之差;axis為區(qū)域長軸長度與短軸長度的比值;
二、根據(jù)待測區(qū)域的均值和方差,去除im_label_1中的無效邊界得im_label_2:在im_label_1中去除均值大于128或方差大于15的區(qū)域,得到im_label_2;
三、根據(jù)兩個連通區(qū)域的均值和方差,去除im_label_2中的無效邊界得im_label_3,其中兩個連通區(qū)域為im_label_2中待測區(qū)域做膨脹處理后,將膨脹部分沿待測區(qū)域的長軸方向分開得到的兩個區(qū)域:將im_label_2中滿足下列任一特征的區(qū)域視為無效區(qū)域并去除,得到im_label_3;
1)兩區(qū)域均值差的絕對值小于6.5;
2)區(qū)域1中像素的最大值與最小值之差maxmin1大于70;
3)區(qū)域2中像素的最大值與最小值之差maxmin2大于70;
4)第一個區(qū)域的方差std1大于15;
5)第二個區(qū)域的方差std2大于15;
四、根據(jù)三個連通區(qū)域的均值和方差去除無效邊界得im_label_4,其中三個連通區(qū)域為im_label_3中的待測區(qū)域和對該待測區(qū)域做膨脹處理,將膨脹部分沿此待測區(qū)域的長軸方向分開得到的兩個連通區(qū)域:將im_label_3中滿足下列任一特征的區(qū)域視為無效區(qū)域并去除,得到im_label_4;
1)區(qū)域1和區(qū)域2均值差的絕對值大于6;
2)區(qū)域0和區(qū)域1均值差的絕對值小于4;
3)區(qū)域0和區(qū)域2均值差的絕對值小于4;
4)區(qū)域0中像素的最大值與最小值之差maxmin0大于60;
5)區(qū)域1中像素的最大值與最小值之差maxmin1大于60;
6)區(qū)域2中像素的最大值與最小值之差maxmin2大于60;
7)第0個區(qū)域的方差std0大于7;
8)第1個區(qū)域的方差std1大于8;
9)第2個區(qū)域的方差std2大于8;
第四步:對im_label_4進行最后的處理
對圖像im_label_4中的連通區(qū)域進行骨架提取,若同時滿足條件:①連通區(qū)域長度大于500、②面積與長度的比值小于5.5,則對該連通區(qū)域的面積、長度以及寬度進行標記,否則將其去除,最終輸出如圖7所示的標記有隧道裂縫的圖片Doutput;
在實驗中,我們使用的圖像是3000×3000的隧道圖像。首先讀入原始隧道圖像D,并將其轉換為double型;然后,對圖像進行預處理操作,在高斯濾波后,同時進行canny算子檢測和閾值分割操作:經(jīng)canny算子檢測出圖像管狀物所在的區(qū)域和有規(guī)則的近似直線的物體所在區(qū)域并將其去除,經(jīng)閾值分割后再進行膨脹操作、小面積區(qū)域去除、空洞填補和較寬區(qū)域去除等一系列處理,將結果與canny邊緣檢測結果相結合獲取有效區(qū)域如圖4;然后,對預處理后得到的結果做基于一維信號的波谷檢測得到圖5;接著進行無效邊界的去除,根據(jù)待處理區(qū)域的矩形度和離心率等特征,以及待處理區(qū)域均值和方差去除無效邊界得到圖6;最后將得到的圖像進行后處理,先逐一對連通區(qū)域的長度和面積進行測量標注,再根據(jù)線條長度和面積做最終的無效邊界去除得到最終結果圖7。
本發(fā)明采取的隧道裂縫檢測方法與傳統(tǒng)人工檢測方法相比,在檢測效率和客觀性上都有大幅度提高;與基于形變數(shù)據(jù)的固定檢測方法相比,克服了檢測成本高,工作繁雜和采集的數(shù)據(jù)不完整等缺點??梢姡景l(fā)明方案對隧道裂縫檢測具有極高的現(xiàn)實意義。