鄭杰圣
(福建省宏實(shí)建設(shè)工程質(zhì)量檢測(cè)有限公司,福建 惠安 362122)
隨著各地區(qū)城市建設(shè)水平持續(xù)提高,建筑物的比重、開發(fā)規(guī)模呈現(xiàn)不斷增加的趨勢(shì)。然而,在施工過程中,混凝土結(jié)構(gòu)受多種因素的影響,十分容易出現(xiàn)裂縫,這一現(xiàn)象不僅會(huì)影響到建筑物后續(xù)使用的安全性,還會(huì)縮短建筑的壽命。因此,有必要確定建筑結(jié)構(gòu)中出現(xiàn)裂縫的成因,并運(yùn)用一定的方法和技術(shù),對(duì)其進(jìn)行科學(xué)分析。在此基礎(chǔ)上,給出相應(yīng)的對(duì)策,得出了一種行之有效的解決方案。在此過程中,準(zhǔn)確掌握建筑物裂縫的長度、寬度和形狀,有助于建筑物的安全評(píng)估、維修和加固。目前,建筑物的質(zhì)檢是工程方關(guān)注與研究的重點(diǎn)。對(duì)建筑物中所發(fā)生的損壞、產(chǎn)生的裂縫進(jìn)行評(píng)估與檢測(cè),這樣既能幫助建筑公司分析材料結(jié)構(gòu)的合理性,又能從中汲取經(jīng)驗(yàn)教訓(xùn)。從而優(yōu)化工程建設(shè),為以后類似工程項(xiàng)目的建設(shè)積累豐富的施工經(jīng)驗(yàn)。該文將結(jié)合機(jī)器視覺技術(shù)的應(yīng)用進(jìn)行研究。
為滿足系統(tǒng)投產(chǎn)使用后的需求,設(shè)計(jì)檢測(cè)系統(tǒng)的功能如圖1所示。
圖1 系統(tǒng)設(shè)計(jì)功能
從圖1中可以看出,該系統(tǒng)可實(shí)現(xiàn)的功能有3類,第一類為登錄與注冊(cè)功能,該功能是 Web類系統(tǒng)中最基本的一個(gè)功能,未注冊(cè)的用戶可以對(duì)系統(tǒng)檢測(cè)功能進(jìn)行某些操作和測(cè)試,但是測(cè)試的次數(shù)是有限的,要進(jìn)行較大范圍地測(cè)試,需要登陸注冊(cè)功能。該部署方式既能保護(hù)系統(tǒng)免受惡意攻擊,又能對(duì)注冊(cè)用戶操作與檢索數(shù)據(jù)進(jìn)行記錄。使用者在忘記登錄密碼時(shí),可以通過電話或郵箱重新取得密碼。
第二類為裂縫檢測(cè),包括裂縫分割與長寬面積測(cè)量,在此過程中,用戶需要將前端由相機(jī)采集的圖像按照規(guī)范上傳到計(jì)算機(jī),根據(jù)系統(tǒng)運(yùn)行需求,上傳圖片的格式應(yīng)為JPG、PNG等,用戶可以選擇單張上傳或壓縮后統(tǒng)一上傳,系統(tǒng)將根據(jù)圖片中的內(nèi)容提取特征信息,以此進(jìn)行圖片中裂縫的識(shí)別與關(guān)鍵內(nèi)容的分析。
第三類為結(jié)果下載功能,如用戶對(duì)裂縫系統(tǒng)的檢測(cè)結(jié)果比較滿意,則可以操作計(jì)算機(jī)進(jìn)行檢測(cè)結(jié)果與檢測(cè)圖片的下載與存儲(chǔ),以便于后續(xù)對(duì)裂縫參數(shù)信息的查看,根據(jù)相關(guān)工作的要求,圖片的下載格式為pdf。
為避免因架構(gòu)調(diào)整而引起的一系列變化,以React為該系統(tǒng)的主要架構(gòu)。作為JavaScript框架中的一種,React最大的優(yōu)勢(shì)在于其Vitual特性。VitualDOM是一個(gè)將Web頁面狀態(tài)提取到 JS對(duì)象中的一個(gè)操作程序,具有簡單易學(xué),靈活性強(qiáng),效率高,開發(fā)者無須任何基礎(chǔ)就能輕松上手。
選擇Express作為后端的開發(fā)框架。Express的操作很簡單,開發(fā)容易,支持模板解析、動(dòng)態(tài)視圖、用戶會(huì)話等,可以快速建立一個(gè)擁有完善功能的網(wǎng)站。在此基礎(chǔ)上,建立數(shù)據(jù)庫,使用數(shù)據(jù)庫管理、存取檢測(cè)結(jié)果信息。
同時(shí),使用TensorFlow作為檢測(cè)中的深度學(xué)習(xí)模型。TensorFlow可以用數(shù)據(jù)流的形式描述計(jì)算過程,用戶除了能用TensoiFlow編寫上層的程序庫外,還能精練底層的操作。支持CPU和GPU同時(shí)工作,可移植性強(qiáng)。以此為依據(jù),設(shè)計(jì)系統(tǒng)架構(gòu),如圖2所示。
圖2 系統(tǒng)架構(gòu)
在檢測(cè)中,系統(tǒng)的主要功能模塊為圖片傳輸與檢測(cè)模塊,在整個(gè)系統(tǒng)中,圖片的傳送是十分重要的一環(huán),傳統(tǒng)的系統(tǒng)會(huì)因?yàn)閭鬏敂?shù)據(jù)的數(shù)量和網(wǎng)絡(luò)負(fù)載等原因而受到影響,經(jīng)常出現(xiàn)傳送速度緩慢、傳送失敗的情況。但在該文開發(fā)的系統(tǒng)中,用戶沒有將圖片提前存儲(chǔ)在數(shù)據(jù)庫中,而是直接將照片進(jìn)行了上傳。圖像的傳送有兩種方式,一是URL,二是字節(jié)流。URL適合小型的數(shù)據(jù)流,具有傳送能力受到限制,但更方便的特點(diǎn)。而字節(jié)流則是與URL截然相反的一種傳送方式,此種傳送方式更適合大規(guī)模的數(shù)據(jù)傳輸,而上傳則是將圖片轉(zhuǎn)換成編碼后的數(shù)據(jù)進(jìn)行壓縮,從而縮短上傳的時(shí)間。因此,可在傳送過程中,根據(jù)實(shí)際情況,選擇對(duì)應(yīng)的圖片傳送與響應(yīng)方式,最大限度地解決圖片傳輸問題。該過程如圖3所示。
圖3 建筑物裂縫圖像的傳輸與響應(yīng)
為更精確地了解房屋的裂縫情況,為后續(xù)系統(tǒng)檢測(cè)提供更加有利的信息條件支撐,采用高精確度照相機(jī)獲得高品質(zhì)影像[1]。然而,高清圖象中含有許多不相干的信息,使圖像產(chǎn)生冗余,影響圖像的探測(cè)效率。對(duì)此,引入機(jī)器視覺技術(shù),提出一種全新的圖像解析方法,用于實(shí)現(xiàn)對(duì)建筑物圖像信息的預(yù)處理[2]。無人機(jī)獲取的初始圖像通常是彩色的,由于彩色圖像所占存儲(chǔ)空間較多,因此必須先將其轉(zhuǎn)化為灰度圖像。在像素中,選取紅色、綠色、藍(lán)色3種成分,在對(duì)像素進(jìn)行灰度處理之后的加權(quán)平均值,如公式(1)所示。
式中:F(i,j)為典型圖象灰度加權(quán)平均。R(i,j)為紅色分量灰度值。G(i,j)為綠色分量灰度值。B(i,j)為藍(lán)色部分的灰度值。
在此基礎(chǔ)上,該文提出了一種從建筑物影像中提取出背景光強(qiáng)信息的新方法。利用中值濾波技術(shù)讓圖像平滑。這種方法可以很好地克服背景噪聲對(duì)圖像進(jìn)行預(yù)處理的困難[3]。在此基礎(chǔ)上,通過一次梯度運(yùn)算,將其與圖像的灰度變化曲線進(jìn)行融合,從而達(dá)到對(duì)圖像進(jìn)行邊緣定位的目的。通過使用 Roberts算法,能夠清楚地顯示出圖像中的邊緣信息,并計(jì)算出圖像灰度變化過程中的二階導(dǎo)數(shù),以此為劃分依據(jù),確定灰度突變待檢測(cè)區(qū)域,從而得到建筑物圖像的裂縫紋理結(jié)構(gòu)[4]。當(dāng)對(duì)圖像邊界信息進(jìn)行提取時(shí),可以將裂縫區(qū)域的像素設(shè)置為1,將其與非裂縫區(qū)域的像素設(shè)置為0,從而對(duì)建筑物裂縫區(qū)域的邊界點(diǎn)進(jìn)行更明確的定位,如圖4所示。
圖4 建筑物裂縫像素邊界點(diǎn)
通過對(duì)裂隙像元的邊界點(diǎn)進(jìn)行分割,采用邊緣提取方法,對(duì)灰度區(qū)內(nèi)部的信息進(jìn)行提取。這種方法是先對(duì)圖像進(jìn)行去噪,再在圖像中搜索每個(gè)像素的鄰居,從而獲得每個(gè)像素的灰度值。再由相應(yīng)的公式得到各象素的灰度平均值[5]。在圖像中,若某一象素點(diǎn)是一組鄰域集,該象素點(diǎn)的平均灰度值如公式(2)所示。
式中:P(x,y)為建筑物圖像當(dāng)中某一像素點(diǎn)的平均灰度值。f(x,y)為建筑物構(gòu)造狀態(tài)下,某一裂縫邊緣中心點(diǎn)的灰度值。Mn為建筑物圖像中的像素?cái)?shù)量。
通過上述方式對(duì)建筑物圖像的預(yù)處理不僅可以解決后續(xù)大量檢測(cè)時(shí)間,同時(shí)還能夠?qū)崿F(xiàn)對(duì)圖像當(dāng)中細(xì)節(jié)信息的集中保護(hù)。
針對(duì)完成預(yù)處理后的建筑物圖像,采用水平標(biāo)尺法對(duì)裂縫特征參數(shù)進(jìn)行測(cè)定。在實(shí)際場景中,用尺子可以很方便地測(cè)量出物體的寬度[6]。但在電腦上顯示的圖片,不能確定它的實(shí)際寬度。這樣,就可以利用這張照片的像素來計(jì)算出這張照片的最大寬以及平均寬。利用MATLAB軟件對(duì)裂紋圖像進(jìn)行處理,得到裂紋圖像的像素坐標(biāo)。經(jīng)過分割后的裂縫是一個(gè)二值圖,其中裂縫的部分像素是1,而背景像素是0,所以要找到裂縫的邊緣,只需要找到1和0的交界點(diǎn)即可[7]。得出一條裂縫的左右坐標(biāo)值,然后,將這兩條直線上的坐標(biāo)之差,進(jìn)行運(yùn)算,就可以得到一條裂隙的寬度。我們將所有的垂直裂紋都與水平方向相垂直,并將裂紋的全部邊緣象素列出來,其寬度值的計(jì)算如公式(3)所示。
式中:wi為通過計(jì)算得出的建筑物圖像裂縫第i行的寬度。xi為裂縫在第i行上左邊緣的水平坐標(biāo)值。xi+1為裂縫在對(duì)應(yīng)i行的右邊緣坐標(biāo)值。
再結(jié)合下述公式計(jì)算得出裂縫寬度、平均值和最大值,如公式(4)、公式(5)所示。
式中:為建筑物裂縫寬度平均值。wi為建筑物第i行裂縫寬度值。n為計(jì)算區(qū)域內(nèi)劃分的行數(shù)。wmax為建筑物裂縫寬度最大值。
在確定建筑物裂縫特征參數(shù)的計(jì)算方法后,針對(duì)上述預(yù)處理建筑物圖像中的裂縫進(jìn)行識(shí)別。引入卷積神經(jīng)網(wǎng)絡(luò),在網(wǎng)絡(luò)輸入層,該算法將輸入的數(shù)據(jù)抽取出來,并將其與類別標(biāo)簽相結(jié)合,完成數(shù)據(jù)的接收和傳輸[8]。在輸出層中,輸入的信息經(jīng)過隱藏層的加工后,將被直接生成一個(gè)類別標(biāo)記,再由機(jī)器視覺輸出的圖像信息,通過對(duì)圖像中的像素點(diǎn)進(jìn)行識(shí)別、分類。而居中的隱含層,作為一種信息處理機(jī)制,它介于輸出層和輸出層之間。其中,隱藏層的基本功能是對(duì)輸入層中的圖像信息進(jìn)行加工。該層也是神經(jīng)網(wǎng)絡(luò)中神經(jīng)元密度最高的部分。相鄰的神經(jīng)元之間相互聯(lián)系,并通過一種新的激活機(jī)制,完成對(duì)圖像信息的加工。假設(shè)輸入圖像的大小為,則輸出圖像如公式(6)所示。
式中:F(x)為圖像尺寸的卷積神經(jīng)網(wǎng)絡(luò)輸出。Fp為需要進(jìn)行填充的圖像尺寸。fp為卷積核的大小。Ds為建筑物裂縫檢測(cè)補(bǔ)償。當(dāng)公式中的F(x)取值為整數(shù)時(shí),可以得到所需的輸出結(jié)果。
結(jié)合上述建筑物裂縫特征參數(shù)計(jì)算公式,提取特征并獲得特征圖,對(duì)特征信息過濾。在預(yù)設(shè)的池化函數(shù)當(dāng)中,將現(xiàn)有特征結(jié)果替換為完整統(tǒng)計(jì)量,輸出最終的檢測(cè)結(jié)果。
通過深入研究可知,導(dǎo)致混凝土表面開裂的因素較多,一是由于在自然環(huán)境中,建筑物長期受風(fēng)雨侵蝕、日曬,造成材料腐蝕,結(jié)構(gòu)松弛;二是因建筑物老化,長期荷載過多,造成了受力不均,從而產(chǎn)生開裂等問題。此外,建筑物的質(zhì)量與混凝土材料本身配比、原材料質(zhì)量或者施工技術(shù)水平有較為直接的關(guān)系。只有在一個(gè)相對(duì)較短的時(shí)間內(nèi)發(fā)現(xiàn)裂縫、精準(zhǔn)檢測(cè)到裂縫,并采取專項(xiàng)措施對(duì)其進(jìn)行修復(fù)和加固,才能有效降低裂縫對(duì)建筑物結(jié)構(gòu)的破壞,從而避免不必要的人員傷亡與財(cái)產(chǎn)損失。為落實(shí)這項(xiàng)工作,該文進(jìn)行研究,通過開發(fā)系統(tǒng)架構(gòu)、設(shè)計(jì)系統(tǒng)功能模塊等,完成了這次設(shè)計(jì),以期為建筑物的使用、安全與質(zhì)量檢測(cè)提供全面的技術(shù)指導(dǎo)與幫助,從而為相關(guān)工程的規(guī)范化建設(shè)提供了進(jìn)一步的指示。