劉 同
(呂梁學院,山西 呂梁 033001)
在中國經濟高速增長的過程中,社會也在不斷向現代化的方向發展,我國城市化建設不斷推進,城市內的建筑數量不斷增長。即使是在建筑行業的鼎盛時期,建筑物的質量問題也不容忽視,建筑行業對建筑物的質量要求極高,工作人員不斷提高建筑技術水平,建筑物的結構安全也繼續提升。在建筑物的缺陷中,裂縫是最常見的一種,一旦建筑物中出現裂縫,就會直接影響房屋結構的防水性和耐久性,其承載力也會相應下降。人們在檢測房屋建筑的裂縫數據時,通常會使用人工檢測的方法,即目測法。該檢測方法需要檢測調查人員走到房屋現場,使用儀器設備測量房屋建筑表面裂縫的寬度、長度等特征值,并進行統計與分析。但是人工檢測的方法速度慢,需要耗費大量的人力物力,由于現階段檢測精度不斷提高,其檢測效果已經無法滿足當前的檢測需求[1]。隨著高層建筑的興起,人工檢測難度增加,這種檢測方法已經很難滿足施工建筑房屋的裂縫檢測需要。為獲取更準確的裂縫信息,使用機器視覺技術,獲取建筑結構施工中房屋裂縫的智能檢測方法。
想要獲取準確的裂縫信息,就要使用高精度的攝像機,得到高質量的圖像。但是高分辨率的圖像會攜帶大量的無關信息,造成數據冗余,并導致檢測效率變差。為提高機器視覺方法圖像分析結果的效率,使用相關軟件對攝像機所拍攝的圖像進行矯正,并直接灰度化處理。最初,無人機拍攝的初始圖像一般為RGB 的彩色圖像,但是彩色圖像所占用的內存比例遠大于黑白圖像,因此需要首先將彩色圖像轉換灰度圖[2]。選擇像素中的紅綠藍三個分量,作為對像素進行灰度化處理的加權均值,如公式(1)所示。
式中:F(i,j)為整體像素的灰度化加權均值;R(i,j)為圖像內紅色分量的灰度值,G(i,j)和B(i,j)分別為房屋裂縫圖像內綠色和藍色分量的灰度值。結合頂帽變換的方式分離圖像背景中的亮度信息,通過中值濾波算法對拍攝圖像進行平滑處理,避免背景噪點過大導致圖像預處理失敗。在獲取二值圖像的過程中,高閾值的邊緣像素通常都具備最小的灰度等級,一階梯度算子可以通過梯度銳化的方法,結合圖像灰度變化曲線對圖像進行邊界定位[3]。在Roberts 算子的作用下,突出對圖像對象邊緣信息,計算圖像灰度變化效果下的二階導數,劃定灰度突變的待測區域,得到圖像裂縫中的的紋理結構。在提取圖像邊界信息的過程中,設定裂縫區域像素值為1,非裂縫區域像素值為0,得到裂縫區域的邊界點如圖1 所示。

圖1 裂縫像素邊界
如圖1 所示,結合邊界提取算法,可以得到灰色區域的內部信息。在濾波降噪的基礎上,搜索圖像像素的相鄰區域,計算單一像素的灰度值,并通過公式求取其平均灰度值。如果圖像中的某個像素點可以作為鄰域集合的形式,則其平均灰度值計算如公式(2)所示。
式中:p(x,y)為某像素點經過平均值計算后的灰度值;f(x,y)為建筑結構施工條件下,某裂縫邊界中心點的灰度值;Mn為像素數量。這種圖像預處理的方法簡單快捷,不但節省時間,而且可以集中保護圖像中的細節信息。因此可以通過干擾噪聲點的方式,保證圖像灰度值的平和穩定。
對裂縫區域邊界信息進行量化操作,獲取像素值,以保證浮點數的計算。為解決量化偏移問題,需要將提取得到的特征數據輸入掩模分支中,將圖像中的對象進行多層次分割,并提取其特征映射系數。對兩個相鄰的像素點進行線性插值處理,如公式(5)所示。
式中:k(x,y)為上述兩個相鄰像素點的線性插值;(x1,y1)為第一個內插值的點坐標,(x2,y2)為第二個內插值的點坐標;xi為最合適的插值像素;yn和ym則為對應區域像素單元的中心點坐標。對4 個采樣點的灰度值進行賦值處理,其中存在低分辨率的過濾效果。在區域內生成一個小型的神經網絡,尋找目標區域,并生成候選背景。當函數判斷該候選框為目標區域時,就會有效提取重復特征,進而提高識別效率。
結合經過預處理的圖像信息,可以得到一個容量較小,且清晰直接的灰度圖像,此時就可以通過神經網絡對房屋裂縫進行智能檢測與識別。卷積神經網絡一般通過輸入層、隱含層和輸出層3 個部分構成。在輸入層中,算法提取外部信息,并結合分類標簽對其進行接收與傳遞。在最后的輸出層,信息通過隱含層處理后的結果會直接得到一個分類標簽,通過機器視覺提供的圖像信息,得到像素的識別結果與分類。最中間的隱含層則是一個位于輸入層與輸出層之間的處理機制,隱含層最本質的最用就是處理通過輸入層傳遞進來的圖像信息,使其能夠成為可以被機器識別的結構,這一層也是神經網絡中神經元最集中的區域[5]。相鄰的神經元彼此連接,在激活機制的作用下,對圖像信息進行處理。
在隱含層中,主要包括卷積層、池化層、激活函數層以及全連接層4 個主要結構。卷積層最主要的功能是提取輸入信息,并通過特征降維的方式,重新劃分屬性權值參數。卷積層的權值參數可以通過卷積核大小、步長和填充三種方式來決定,結合輸出特征圖的特性,獲取檢測技術下正式卷積核的超參數大小。當輸入圖像的大小為m×n時,輸出圖像,如公式(3)所示。
式中:F(x)為輸出圖像的大小;Kp為待填充的圖像尺寸;fp為卷積核大小;Ds為房屋裂縫檢測的步長。當F(x)為一個整數時,可以得到輸出圖像的結果。池化層則是一個居于卷積層內部,通過特征提取獲得特征圖,并進行信息過濾的結構。在預設的池化函數之間,可以將現有的特征結果替換為完整的統計量。在激活函數層,其函數表達式如公式(4)所示。
式中:p(x)為結合線性模型的激活函數;x為像素點權值。在全連接層內,卷積層與池化層均能夠得到非線性組合下的提取特征,并通過神經元與外部的連接機制,獲取傳遞后的輸出值。此時通過判別機制,就可以得到建筑結構施工中防誤裂縫的識別結果。
為驗證基于機器視覺的建筑結構施工房屋裂縫智能檢測方法的有效性,設計下列試驗。為獲取圖像樣本,需要拍攝具備裂縫的房屋墻面圖像,但是原始的房屋裂縫樣本在實際中很少見到,因此可以在實驗室內使用模擬工具模擬墻體開裂,將遮光布作為墻面裂縫的背景,將白色硬質紙殼作為模擬墻面的背景,使用攝像機作為機器視覺圖片的拍攝工具。為保證卷積神經網絡訓練結果的準確性,圖像數據的尺寸大小需要統一,在該攝像機中選擇照片的分辨率為4032×2268。如果分辨率過大,會導致圖像預處理時的信息量超出額定值,而導致圖像處理失敗,如果分辨率過小,就會出現房屋裂縫的細節信息不足以及智能檢測方法精度不夠的情況。使用裂縫顯微鏡、激光測距儀、鋼卷尺作為對裂縫長度輔助測量的工具。在試驗中,首先將黑色遮光布固定在墻面上,將白色硬質紙殼覆蓋在黑色遮光布上。使用剪刀通過特定的軌跡在白色硬質紙殼上剪開一道縫隙,作為模擬環境下的墻體裂痕。為保證試驗結果準確無誤,設置4 個墻體裂縫模型,如圖2 所示。

圖2 墻體裂縫設置
使用激光測距儀確定攝像機的拍攝距離,并在上述四道裂縫中分別布置測點。在裂縫A、裂縫B、裂縫C、裂縫D 中分別設置四個測點,記做A1、A2、A3、A4,B1、B2、B3、B4,C1、C2、C3、C4,D1、D2、D3、D4。在試驗中,計算機需要保證處理器和顯卡的性能,內存需要使用32G,存儲空間則需要至少1TB 的機械硬盤。在訓練測試集時,計算機使用Windows 操作系統。
使用高精度的攝像機拍攝的圖像容量過大,因此需要使用機器視覺技術對圖2 中的墻體裂縫進行提取,得到如圖3所示的圖像結果。
在該智能檢測技術中,雖然圖像由2MB 壓縮至50 KB 左右,但是仍然最大程度地保留了裂縫信息。整理試驗數據,可以得到四道裂縫下的測點部位的測量值,見表1。
如表1 所示,在不同的墻體裂縫下,攝像機拍攝圖片的距離不同,其中裂縫A 的攝像機距離墻體裂縫的距離為336mm,是4 個試驗中最近的一個。裂縫B、裂縫C、裂縫D下,攝像機距離墻體的距離分別為568mm、748mm、669mm。通過裂縫顯微鏡和鋼卷尺對裂縫標記部位進行寬度測量,得到實測值,并通過圖3 中的提取圖像獲取裂縫寬度信息,作為提取值。

表1 裂縫提取測量值

圖3 裂縫提取圖像
計算提取值與實測值之間的絕對誤差,使用實測值減去提取值,得到試驗結果。裂縫A 的4 個標記點的絕對誤差分別為0.0004 mm、0.0003 mm、0.0011 mm、0.0010 mm,裂縫B 四個標記點的絕對誤差分別為-0.0007 mm、0.0005 mm、0.0003 mm、0.0001 mm。裂縫C 四個標記點的絕對誤差分別為-0.0003 mm、-0.0001 mm、0.0003 mm、0.0011 mm。在裂縫D 處,4 個標記點的絕對誤差分別為0 mm、0.0003 mm、0mm、-0.0012mm。由此可見,該文設計的房屋裂縫智能檢測方法可以完成對裂縫的智能檢測,且檢測精度較高。
該文設計了一種基于機器視覺的建筑結構施工中房屋裂縫智能檢測方法,該方法可以對攝像機得到的圖像進行預處理,并通過干擾噪聲點的方式,保證圖像灰度值的穩定。結合建筑結構施工技術設計房屋裂縫識別方法,通過神經網絡算法,得到房屋裂縫識別結果。該試驗對裂縫信息的提取效果進行測試,試驗結果顯示,裂縫提取的測量值與實測值之間的絕對誤差極小,可見檢測精度較高。但是該文的智能檢測方法并沒有對墻面上的干擾線條進行優化,在下一步的研究中,可以針對該問題對房屋裂縫智能檢測方法進行優化,同時在試驗中添加與裂縫信息相近的事物,作為干擾項,測試該檢測方法的性能。