?

基于圖像處理的裂縫量化分析

2024-04-26 15:48許守春許向陽馮宇恒
化工自動化及儀表 2024年2期
關鍵詞:安全評估

許守春 許向陽 馮宇恒

作者簡介:許守春(1997-),碩士研究生,從事目標檢測、語義分割等圖像處理方面的研究。

通訊作者:許向陽(1970-),高級工程師,從事工業自動化、目標檢測及分割方面的研究,xxy1970@126.com。

引用本文:許守春,許向陽,馮宇恒.基于圖像處理的裂縫量化分析[J].化工自動化及儀表,2024,51(2):173-180;337.

DOI:10.20030/j.cnki.1000-3932.202402005

摘 要 對裂紋量化技術進行了研究,從而獲取對應裂縫的長度、寬度信息。針對長度特征的量化,分析現有細化算法提取裂縫骨架的不足,提出新的刪除模板與保留模板,通過模板匹配的方式消除裂紋骨架中的冗余像素,并設置合理的長度閾值消除骨架中的冗余骨刺結構,優化骨架的提取,進而獲取精確的裂縫長度信息。針對裂縫寬度特征的量化,根據裂紋走向,優化最近距離法,減少計算裂縫寬度的迭代次數,提高量化效率。同時,為了獲取更精確的裂縫寬度信息,結合裂縫特征和提取的骨架,采用骨架法向法獲取像素級精度的裂縫寬度信息。

關鍵詞 裂縫量化 骨架提取 最近距離法 骨架法向法 安全評估

中圖分類號 TP391.41?? 文獻標志碼 A?? 文章編號 1000-3932(2024)02-0173-09

混凝土是各類工程建筑中使用最廣泛的材料之一,但是在各種內外因素的影響下,建筑物表面會不可避免地出現裂縫[1,2]。裂縫是混凝土建筑物中最常見的結構缺陷,量化分析可以為裂縫的風險等級評估提供重要依據,為混凝土建筑的安全狀況提供精確的數字化分析和參考[3],以便工作人員能夠及時發現混凝土建筑物中存在的隱患,從而對裂縫進行及時檢修和維護,保障建筑物的整體安全。

裂縫量化是對裂縫面積、長度、寬度等特征的獲取。傳統的裂縫特征量化主要通過人工使用檢測工具或測量儀器完成,存在操作難度大、風險高、成本高、效率低下、對人員技術要求高等問題。隨著圖像處理技術的發展,目前的裂縫量化大多采用基于圖像處理的方式,可以利用深度學習技術對圖像中的裂縫區域進行檢測,然后通過像素計算的方式獲取裂縫的實際量化結果。

裂縫長度的計算大多基于裂縫的細化骨架,通過統計裂縫骨架的像素個數即可得到對應的裂縫長度信息。最簡單的裂縫骨架獲取方式就是取裂縫兩邊緣的中線作為骨架線,但是這種方式在裂縫交點處時獲取兩邊界中點比較復雜,容易出現骨架線斷裂、骨刺較多的情況。近年來的報道中,骨架的提取一般由細化操作得到,利用Pavlidis細化算法[4]、Hilditch細化算法[5]、基于索引表的細化算法[6]及Zhang-Suen細化算法[7~9]等刪除裂縫圖像的邊緣像素,從而提取對應骨架。但是利用這些算法直接提取裂縫骨架時,總會出現裂縫的拓撲結構改變、骨架斷裂、冗余像素及骨刺結構過多等情況。裂縫寬度方向一般與裂縫兩邊界相切,針對裂縫寬度的測量主要有最大內切圓法、最小外接矩形法[10]及最近距離法[11]等。其中,最大內切圓法通過計算裂縫最大內切圓的直徑來得到裂縫的最大寬度,但由于裂縫形態不規則,這種方式得到的寬度值會比實際偏小。最小外接矩形法通過求取裂縫最小外接矩形的寬度來獲取裂縫寬度,為了提高精確度可以將裂縫分為多個小段,并取各段結果的最大值作為裂縫寬度,但是該方式得到的寬度值通常會比實際偏大。最近距離法[12]一般選取裂縫左邊界上的點,然后遍歷圖像中右邊界上的點,通過計算兩點之間的距離,找到右邊界上與左邊界當前點距離最近的點,將兩點之間的連線作為該點處的寬度方向,兩點間的距離即為寬度值。

綜上所述,在利用細化算法提取裂縫骨架時,還需要結合特定算法并對其進行優化,從而在保持裂縫原有拓撲鏈接結構的前提下,獲取單像素寬度的骨架,進而求取精確的裂縫長度。在計算裂縫寬度信息時,上述方法并不能很好地表達裂縫各點處的寬度方向,得到的裂縫寬度值也不精確,因此需要尋找高效的方法進行優化改進。

1 裂縫檢測

在前期的研究工作中,筆者提出了圖1a所示的用于檢測裂縫位置及形態的雙分支分割網絡DbCrackNet[13]。該網絡中引入了空間金字塔池化ASPP融合不同感受野的信息,并利用注意力機制對通道和空間特征進行優化,最后將兩分支的結果進行融合得到圖1b所示的分割結果。

圖1 DbCrackNet網絡結構及對應的

裂縫分割結果

2 裂縫量化

利用分割網絡檢測出裂縫的位置及形態(圖1b)后,即可進行裂縫量化,獲得裂縫的面積、長度和寬度信息。裂縫量化示意圖如圖2所示。

2.1 裂縫面積

通過統計圖1b裂縫分割結果中的像素個數即可得到對應裂縫的面積S。

2.2 裂縫長度

Zhang-Suen細化算法在進行骨架提取時,能夠保持裂縫拐點、各分支交點處的細節連接結構,并且其計算效率較高,但是該方法提取的裂縫骨架中存在冗余像素和多余的骨刺結構。為此,筆者針對其不足之處進行優化,獲取單像素寬度的骨架,通過統計骨架的像素數即可得到對應裂縫的長度。

2.2.1 Zhang-Suen細化算法

Zhang-Suen細化算法是一個經典的迭代式細化算法,其基本原理示意圖如圖3所示。在進行細化操作時,需要查看二值圖像中當前前景像素點(P0)的8鄰域(P1~P8)狀態,并通過模板匹配的方式標記需要刪除的像素點,當遍歷完圖像中所有前景像素時,統一刪除標記的像素,從而獲取對應的骨架結構。

圖3 P0的8鄰域

假設二值圖像中前景即裂縫灰度值為1,背景為0。Zhang-Suen細化算法在提取骨架時反復迭代下述兩個子過程,直到沒有需要被刪除的像素。

子過程一。對檢測結果中的前景像素進行遍歷,如果像素點P0同時滿足以下4個條件:

2≤N(P0)≤6

S(P0)=1

P2×P4×P6=0

P4×P6×P8=0

則將其標記,并在遍歷結束后將其灰度變為0,即將當前點從骨架結構中刪除。

子過程二。對檢測結果中的前景像素進行遍歷,如果像素點P0同時滿足以下4個條件:

2≤N(P0)≤6

S(P0)=1

P2×P6×P8=0

P2×P4×P8=0

則將其標記,遍歷結束后將其灰度值變為0。

其中,前景像素點P0=1,N(P0)為8鄰域中前景像素的個數,S(P0)為P1-P8-P1這一圈中灰度值從0變為1的次數。

當像素點滿足兩個子過程的條件時,P0只可能為需要被清除的邊緣像素點。

利用Zhang-Suen細化算法提取圖1b中最左側裂縫的骨架,結果如圖4所示??梢钥闯?,骨架中存在較多的骨刺結構,并且在局部放大圖中可以清晰地看到其斜向區域存在很多的冗余像素,沒有嚴格滿足單像素寬度的條件。

圖4 Zhang-Suen細化算法提取的裂縫

骨架及局部放大圖

2.2.2 冗余像素的清除

由Zhang-Suen細化算法兩個子過程的條件可知,其只考慮了S(P0)=1的情況,并沒有考慮

S(P0)>1的情況,這會導致骨架斜向區域中留有冗余像素,為此提出了圖5所示的8鄰域模板,用于刪除斜向的冗余像素。

遍歷裂縫骨架上的像素點,當其8鄰域與圖5中的模板相同時,將其標記,并在遍歷結束后將被標記的所有像素點刪除,經過刪除模板處理后的骨架如圖6所示。

圖6 刪除模板處理后的骨架及局部放大圖

圖6中,經過刪除模板處理后的裂縫骨架中斜向區域的冗余像素已經清除,但是出現了骨架斷裂的情況,說明刪除模板存在誤刪骨架像素的問題。經過分析,提出圖7所示的保留模板,其中P0、P0′都是骨架像素,且其8鄰域都與刪除模板相符,所以在刪除模板遍歷時都被清除,從而造成骨架斷裂。為此設置保留模板,使得遍歷時與刪除模板匹配的P0保留,P0′被清除,從而正確消除骨架中的冗余像素。

2.2.3 骨刺的清除

經過刪除模板和保留模板處理后的裂縫骨架為單像素寬度,單像素寬度的特性一方面有助于得到更精確的裂縫長度,另一方面有助于識別裂縫中的分支結構。在利用模板優化后的骨架中,N(P0)=1的為骨架端點,N(P0)=2的為骨架中間的點,N(P0)≥3的為骨架中的分支交點。

為了消除骨架中存在的多余骨刺結構,設置分支長度閾值為l,計算各分支長度lengthi,若lengthi<l,則將該分支中點的灰度置為0,即將對應骨刺結構從骨架結構中刪除。骨刺刪除具體流程如下:

a. 根據N(P0)=1獲取骨架中的分支端點,根據N(P0)≥3獲取骨架中的分支交點;

b. 取出一個端點P,尋找其8鄰域內灰度為1的點P′,并以從P到P′的方向為骨架的生長方向,此時P′為骨架中間的點;

c. 觀察中間點P′點的8鄰域情況,找到灰度值為1的兩個點,其中一個點為端點P,然后以P′到另一個點的方向作為骨架生長方向;

d. 根據步驟c沿著骨架生長方向不斷遍歷,直到遇到分支交點為止,此時即可得到當前分支的長度length;

e. 若length≥l,則當前分支為裂縫真實分支,將其保留,若length<l,則該分支為骨刺結構,執行刪除操作;

f. 重復執行步驟b~e,直到骨架結構中的分支均判斷完畢。

完成上述過程,就可以清除單像素寬度的裂縫骨架中多余的骨刺結構,得到精準的裂縫骨架(圖8),然后統計當前骨架中的像素點個數,即可得到裂縫的長度Length。

圖8 優化后的單像素寬度骨架及局部放大圖

2.3 裂縫寬度

裂縫寬度特征包括最大寬度Width和平均寬度Width,其中Width可以根據裂縫面積S和骨架長度Length的比值直接得到。裂縫寬度方向應盡量與裂縫的兩邊界相切,從而較好地表達裂縫的寬度信息。

2.3.1 最近距離法

在裂縫的左邊界上取點(x,y),找到右邊界上與之最近的點(x,y),并以兩點間的連線作為當前位置的寬度方向,利用最近距離法求取裂縫寬度:

Width=(1)

在判斷左右邊界點時有兩種方法:

a. 提取裂縫分割結果中的所有輪廓點(x,y),判斷點(x,y+1)的情況,若其值為1,則當前點(x,y)為裂縫的左邊界點,反之則為右邊界點;

b. 取骨架上的點(x,y),向左遍歷裂縫區域,如果某一點左側像素點的值為0,則得到左邊界點,同理,可以得到右邊界點。

2.3.2 最近距離法的優化

最近距離法中,左邊界上的點需要與右邊界上所有點計算距離后才能找到對應的寬度方向,但是右邊界上的點與左邊界當前點在寬度方向上的距離不會太遠,計算距離時遍歷所有在右邊界上的點不僅耗時長而且大部分為無效計算。為此,以裂縫骨架的走向設置距離迭代閾值N,即對左邊界上的每個點只需要計算N次即可找到右邊界上與之最近的點,其示意圖如圖9所示。裂縫在小范圍內只會呈現4種狀態,分別為裂縫向左收縮、向左擴張、向右收縮、向右擴張。

圖9中,黑色實線為裂縫邊界,藍色虛線為裂縫骨架線。通過最小二乘法擬合可以得到當前位置處的骨架斜率k,圖9a、b中的k>0,圖9c、d中的k<0。在圖9中做左邊界上的點O到右邊界的橫向連線(綠色虛線)和垂線(紅色虛線),其中橫向連線交點為Q,垂線交點為P,根據最小距離法的原理,此時垂線即表示當前的寬度方向。

當k<0時,從右邊界沿Q到P(從下到上)迭代計算N次,當k>0時,從右邊界沿Q到P(從上到下)迭代計算N次,如此即可減少計算最近距離時的迭代次數,達到優化最近距離法的目的。

利用優化后的最近距離法求取圖1b左側裂縫寬度的可視化結果如圖10所示。

2.3.3 骨架法向法

由圖10可知,使用最近距離法可以計算裂縫的寬度,但是最小距離的方向不一定與寬度方向

圖10 優化后的最近距離法寬度測量結果

一致,而裂縫寬度方向一般與骨架線相切,所以采用骨架法向法求取對應的裂縫寬度。如圖11所示,取骨架相鄰的5個像素(x,y)(i=1,2,…,5)作為一段短裂縫,并利用最小二乘法求取骨架線方程中的參數a、b。

圖11 骨架法向法示意圖

最小二乘法通過最小化真實值y與擬合值a+bx的平方和來估計參數a、b的最佳值,即:

min[y-(a+bx)](2)

要使式(2)的值最小,則參數a、b的偏導數應為0,經過整理可得:

aN+b∑x=∑y(3)

a∑y+b∑x=∑xy

通過解方程組(3)即可得到直線參數a、b的最佳估計值:

=

=

則經過(x,y)的骨架法向表達式為:

y′=a′+b′x′(5)

b′=-

a′=y+x

通過最小二乘法得到裂縫骨架法線的表達式后,采用迭代式搜尋法獲得裂縫骨架法線與裂縫邊界的交點,如圖12所示,圖中黑色區域為裂縫前景,紅色實線為裂縫骨架,綠色實線為O點處的骨架法線,P、Q為法線與裂縫邊界交點。計算O點處的寬度時,從O點出發,分別沿當前位置處的法向正向和反向迭代,并判斷當前點是否為裂縫區域,從而找到O點處寬度方向上的兩個端點P點(x,y)和Q點(x,y),最后求取兩點間的歐氏距離即可得到O點處的寬度WidthO。

圖12 骨架法向法求取裂縫寬度示意圖

按照上述方法求取骨架上每個點處的裂縫寬度,對應的可視化結果如圖13所示,圖中綠色線即為寬度方向,紅色線為最大寬度所在位置,從圖13中可以看出,骨架法向法可以更好地獲取裂縫的寬度方向。

圖13 骨架法向法求取裂縫寬度的可視化結果

2.4 裂縫量化結果

對分割結果(圖1b)進行量化分析,結果見表1。其中Size為圖片尺寸,Lzs為Zhang-Suen細化算法得到的初始骨架長度,Ltemplate為利用模板消除冗余像素后的骨架長度,Length為繼續消除骨刺后的長度,S為裂縫面積,Widthmax為裂縫最大寬度,Widthmean為裂縫平均寬度。由表1可以看出,在進行裂縫量化時,采用模板匹配和骨刺消除的方法可以對Zhang-Suen細化算法進行合理優化,有效清除不屬于骨架的像素和結構,從而得到精確的裂縫長度信息,精確的骨架也為基于骨架法向法的寬度測量提供了基礎,提高了寬度測量的合理性和精確度。

為了進一步驗證求取裂縫寬度特征結果的合理性,在圖1b左側裂縫的骨架上取9個點,用骨架法向法求取其寬度值,然后取這9個寬度方向與裂縫左邊界的9個交點再用最近距離法與人工測量法在裂縫右邊界上分別尋找與之相匹配的點,從而獲得對應的寬度方向和寬度值,3種方式所得寬度值、寬度角(寬度方向與水平方向的夾角)列于表2、3,利用表2、3的數據,可以得到最近距離法與骨架法向法在9個采樣點處的平均寬度值誤差分別為2.17像素、2.86像素,平均寬度角誤差分別為4.73、11.83°,說明與最近距離法相比,骨架法向法能夠更好地求取裂縫的寬度信息。

采用不同方法獲取9個采樣點的寬度測量結果可視化對比如圖14所示,其中,紅色線為骨架法向法測量結果,白色線為最近距離法結果,藍色線為人工測量結果。由圖14可以看出,利用骨架法向法求取的裂縫寬度方向與人工測量結果一致程度更高,說明利用骨架法向法求取裂縫寬度更加合理性,其能夠有效確定對應裂縫的寬度方向和寬度值。

3 結束語

對裂縫的量化分析方案進行了研究,并基于神經網絡的裂縫分割結果獲取裂縫的量化信息。針對現有細化算法提取裂縫骨架的不足,筆者提出了新的8鄰域保留模板和刪除模板,通過模板匹配的方式刪除骨架中的冗余像素,并通過長度閾值篩選清除骨架中的多余骨刺,從而優化Zhang-Suen細化算法,獲得嚴格單像素寬度的裂縫骨架及精確的裂縫長度信息。對于裂縫寬度特征的量化,筆者設計了最近距離法和骨架法向法求取的方案。結合裂縫的走向,對最近距離法進行了優化,減少了寬度的計算次數,提高了寬度計算的效率。同時,為了更好地表達裂縫方向,利用最小二乘法求取裂縫骨架及其法向的表達式,然后使用迭代式搜尋法確定法線與裂縫邊界的交點,從而獲得對應的寬度信息。

筆者提出的量化方案可以有效獲取對應裂縫的長度、寬度等特征,可以為裂縫的嚴重程度及發展狀況提供數字化參考,輔助建筑物損害程度的評估。

參 考 文 獻

[1] 寧志軍.建筑工程施工中混凝土裂縫的成因與治理方法[J].陶瓷,2023(12):198-200.

[2] 張艷霞.建筑工程施工中混凝土裂縫的成因與應對措施[J].城市建設理論研究(電子版),2023(33):112-114.

[3] 呂志金,陳雪芳.基于深度學習的橋梁裂縫檢測與量化分析[J].信息技術與信息化,2021(10):75-77.

[4] PAVLIDIS T.Algorithms for Graphics and Image Processing[J].ZAMM-Journal of Applied Mathematics and Mechanics,2010,63(8):395.

[5] NASERI M,HEIDARI S,GHEIBI R,et al.A novel quantum binary images thinning algorithm:A quantum version of the Hilditch′s algorithm[J].Optik,2017,

131:678-686.

[6] 白瑩.手寫漢字的細化算法研究[D].西安:西安電子科技大學,2014.

[7] DONG J W,CHEN Y M,YANG Z J,et al.A parallel thinning algorithm based on stroke continuity detection[J].Signal,Image and Video Processing,2017,11(5):873-879.

[8] 張翠芳,楊國為,岳明明.Zhang并行細化算法的改進[J].信息技術與信息化,2016(6):69-71.

[9] 陳樹,楊天.一種基于改進ZS細化算法的指針儀表檢測[J].計算機工程,2017,43(12):216-221.

[10] 董大衛.基于最小外接矩形的汽車表面縫隙尺寸檢測方法研究[D].上海:上海工程技術大學,2021.

[11] 房銘坤,付國.基于數字圖像處理的混凝土裂縫寬度檢測方法研究[J].建筑結構,2019,49(S2):630-634.

[12] 沈藝.基于機器視覺的建筑物裂縫檢測研究及應用[D].蘇州:蘇州科技大學,2020.

[13] XU S C,XU X Y,WEI H R,et al.DbCrackNet:Dual-branch network for crack segmentation[C]//2022 China Automation Congress (CAC).2022:690-695.

(收稿日期:2023-04-15,修回日期:2024-01-30)

Quantitative Analysis of Cracks Based on Image Processing

XU Shouchun, XU Xiangyang, FENG Yuheng

(School of Automation, Beijing Institute of Technology)

Abstract? ?In this paper, the quantification technique of cracks was studied to obtain the information on both length and width of corresponding cracks. Aiming at the quantification of length features, the shortcomings of the existing refinement algorithm to extract the crack skeleton were analyzed and a new deletion template and a retention template were proposed, including making use of template matching to eliminate the redundant pixels in the crack skeleton, and setting a reasonable length threshold to eliminate the redundant bone spur structure in the skeleton so as to optimize the extraction of the skeleton and obtain accurate crack length information. Aiming at the quantification of crack width characteristics, having the crack trend and optimal nearest distance method based to reduce the number of iterations for calculating the crack width and improve the quantification efficiency. In addition, for purpose of obtaining more accurate information on the crack width, having crack characteristics and extracted skeleton considered and the skeleton normal method used to obtain pixellevel accuracy information on the crack width were implemented.

Key words? ?crack quantification, skeleton extraction, nearest distance method, skeleton normal method, safety assessment

猜你喜歡
安全評估
沙湖流域生態服務功能問卷調查分析
基于層次分析法的大運河?;反a頭安全風險評估
橋梁施工臨時結構安全評估策略探討
基于層次分析法的機場安全評估介紹
OA系統安全評估體系及策略制定
通信鐵塔安全快速評估軟件的設計與實現
PDCA在市級檔案部門安全評估中的應用*
民用飛機系統功能危險性評估
關于建筑工程安全管理效益的思考
云計算服務安全評估技術模型研究及應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合