劉新根,陳瑩瑩,李明東
(1.上海同巖土木工程科技股份有限公司,上海 200092;2.上海地下基礎(chǔ)設(shè)施安全檢測與養(yǎng)護(hù)裝備工程技術(shù)研究中心,上海 200092)
隨著隧道施工技術(shù)的發(fā)展和技術(shù)標(biāo)準(zhǔn)的提高,錯臺引起的防水隱患、管片開裂等問題逐漸凸顯,一種病害的發(fā)生會加劇其他病害發(fā)展,嚴(yán)重的將會影響隧道使用功能[1]。為保障隧道結(jié)構(gòu)安全,須定期或者不定期對隧道錯臺量進(jìn)行檢測,以便及時進(jìn)行性能模型的建立[2],提供預(yù)防性防護(hù)時機(jī)和建議。
近年來,國內(nèi)外學(xué)者在不斷探索錯臺檢測方法,常用方法有人工檢測法和自動檢測法[3]。人工檢測法速度慢,影響隧道正常運(yùn)營,且采樣點(diǎn)數(shù)量有限,難以客觀評價錯臺情況。自動檢測法也有大量研究,K.WANG等[4]提出了一種基于特定峰值的試探算法,采用掩膜濾波器和模板匹配算法,從刻槽、錯臺和裂縫的數(shù)據(jù)中識別出錯臺;孫朝云等[5]設(shè)計了激光錯臺三維檢測系統(tǒng),分析錯臺三維高程數(shù)據(jù)直方圖的雙峰特性,實(shí)現(xiàn)閾值的自動確定和平均錯臺量的計算;李偉等[6]、王子彬等[7]均利用激光三角測量原理,對得到的路面高程數(shù)據(jù)進(jìn)行分析處理。
結(jié)構(gòu)光測量系統(tǒng)因精度高、非接觸、抗干擾等特點(diǎn)被廣泛應(yīng)用[8],對結(jié)構(gòu)光測量系統(tǒng)標(biāo)定,已有大量研究。I.SOBEL[9]利用精確制造的三維標(biāo)靶進(jìn)行標(biāo)定;R.Y.TSAI[10]提出經(jīng)典的兩步法,將標(biāo)定目標(biāo)簡化為二維;Z.ZHANG[11]通過二維棋盤格標(biāo)定板校準(zhǔn)相機(jī),所用的棋盤格能夠放置成任意姿態(tài);解則曉等[12]提出線結(jié)構(gòu)光傳感器內(nèi)外參數(shù)同時標(biāo)定的方法,通過標(biāo)定點(diǎn)計算內(nèi)外參數(shù)。
使用結(jié)構(gòu)光進(jìn)行錯臺計算的核心在于結(jié)構(gòu)光條紋中心的提取,提取精度將直接影響最終檢測結(jié)果精度[13]。常見的中心提取方法有邊緣法、重心法、極值法、方向模板法、高斯擬合法以及Hessian矩陣法等[14]。蔡懷宇等[15]提出一種基于主成分分析法提取光條紋中心,對條紋灰度分布函數(shù)在法線方向進(jìn)行二階泰勒展開求得條紋中心的精確位置;余樂文等[16]提出一種基于線結(jié)構(gòu)光的三維測量系統(tǒng),利用幾何數(shù)學(xué)模型計算物體三維坐標(biāo);李瑛等[17]提出基于改進(jìn)方向模板法的結(jié)構(gòu)光中心線提取算法,采用雙邊濾波進(jìn)行降噪、二值化和邊緣檢測;楊鎮(zhèn)豪等[18]提出一種將極值法與Steger方法相結(jié)合的改進(jìn)算法,由極值法快速得到光條中心點(diǎn)粗略位置以及感興趣區(qū)域(ROI),再分段使用Steger法精確提取光條亞像素位置,但計算復(fù)雜度高。
針對上述文獻(xiàn)算法檢測速度慢、檢測精度低、測量系統(tǒng)標(biāo)定不易等不足,筆者提出基于斜射式線結(jié)構(gòu)光的錯臺快速檢測方法。明確錯臺量倒數(shù)與像素位移量倒數(shù)間的線性函數(shù)關(guān)系,推導(dǎo)出理論公式;結(jié)合目標(biāo)檢測算法Yolo-v3、圖像梯度特征和最大類間方差法(OTSU)提取光條區(qū)域輪廓,使用灰度平方加權(quán)重心法和距離公式獲得像素位移量;通過室內(nèi)試驗(yàn)以及工程案例進(jìn)行對比驗(yàn)證,以期為隧道錯臺自動檢測提供有效理論參考。
在光路結(jié)構(gòu)中,投射在物體表面的入射光和反射光的光路形成了三角形,其輸入和輸出間關(guān)系可通過三角形相似原理確定,待求的距離可由光斑在相面成像中心位置的幾何關(guān)系計算[19]。
按照激光入射角的不同,激光三角法可分為直射式激光三角法和斜射式激光三角法??紤]到實(shí)際工程應(yīng)用情況,筆者采用斜射式激光三角法,如圖1中,入射光線與基準(zhǔn)平面法線成一定角度θ1,反射光線與基準(zhǔn)平面法線的夾角為θ2,相面與透鏡夾角設(shè)為θ,h表示錯臺量,B1點(diǎn)到接收透鏡的距離為L1,B′1點(diǎn)到接收透鏡的距離為L2,x′表示像元位移。
圖1 斜射式激光三角法
對應(yīng)函數(shù)關(guān)系式為:
(1)
整理可得:
(2)
依據(jù)成像原理,x′=mμ,其中,m為像素位移量,μ為相機(jī)像元大小,L2為焦距f??傻茫?/p>
(3)
式(3)中,實(shí)際錯臺量h的求解與m、L1、f、μ以及角度θ1、θ2、θ等多個參數(shù)變量有關(guān),涉及參數(shù)變量過多。在實(shí)際數(shù)據(jù)采集過程中,L1可由激光測距儀獲得,但角度難以測量,若粗略測量會嚴(yán)重影響錯臺檢測的精度。
為解決這一難題,對式(3)中涉及的角度變量進(jìn)行分離,使得錯臺量h的求解無需對角度進(jìn)行考慮,既達(dá)到簡化參數(shù)標(biāo)定過程,又能提高錯臺檢測精度的效果,整理如式(4):
(4)
假設(shè)sin(θ1+θ2)/(cosθcosθ1)=K,cos(θ1+θ2-θ)/(cosθcosθ1)=J,則式(4)可轉(zhuǎn)換為:
(5)
由式(5)可知,實(shí)際錯臺量h的倒數(shù)與像素位移量m的倒數(shù)成線性函數(shù)關(guān)系。
為精確得到參數(shù)變量K、J,使用RANSAC算法[21]對式(5)進(jìn)行線性函數(shù)關(guān)系的擬合逼近。RANSAC算法以Ax+By+C=0的形式進(jìn)行直線的擬合。假設(shè)f/(mμL1)=x,1/h=y。則式(5)與Ax+By+C=0 聯(lián)立,可得到參數(shù)變量K=-A/B,J=C。
得到參數(shù)變量K、J,后續(xù)圖像處理得到像素位移量m后,最終得到實(shí)際錯臺量h理論公式(6):
(6)
筆者在前期研究中,利用傳統(tǒng)算法直接基于整張圖片定位錯臺區(qū)域,但實(shí)際工程應(yīng)用中環(huán)境復(fù)雜,包含較多干擾物,比如線纜、污漬、金屬等,且光條與背景對比度不明顯,傳統(tǒng)算法對于干擾物設(shè)定的剔除條件有限、自適性差。因此,引入Yolo-v3算法進(jìn)行錯臺區(qū)域定位去除干擾,將光條圖像處理區(qū)域縮小,使后續(xù)光條中心點(diǎn)提取和像素位移量計算更為精準(zhǔn)。
1.3.1 Yolo-v3網(wǎng)絡(luò)定位
為滿足實(shí)際工程中較高的檢測速度和精度要求,采用具有代表性的Yolo-v3算法[22]進(jìn)行錯臺區(qū)域定位。
Yolo-v3的主干網(wǎng)絡(luò)采用Darknet53進(jìn)行特征提取,并采用類似FPN[23]的上采樣和融合做法,將底層特征與上層特征融合,使特征圖具有更多的特征信息,在3個尺度的特征圖上進(jìn)行類別預(yù)測以及位置回歸預(yù)測。Yolo-v3同時對圖像中的目標(biāo)框進(jìn)行k-means聚類,獲得9個大小不同的先驗(yàn)框,然后將先驗(yàn)框均勻的分給3個尺度的特征圖,小尺度特征圖采用大先驗(yàn)框,大尺度特征圖采用小先驗(yàn)框,目標(biāo)檢測準(zhǔn)確率可得到提高[24]。
網(wǎng)絡(luò)將輸入的圖像分成多個部分,通過深度網(wǎng)絡(luò)判斷每個部分是否包含目標(biāo)錯臺,并給出預(yù)測的邊界框,檢測效果如圖2,定位到的錯臺區(qū)域是后續(xù)光條圖像處理的前提條件。
圖2 錯臺區(qū)域定位
1.3.2 光條中心點(diǎn)提取
采用灰度平方加權(quán)重心法提取光條中心點(diǎn),能夠提高光條區(qū)域部分像素灰度值對光條中心點(diǎn)計算結(jié)果的權(quán)值,使被測物體表面不連續(xù)、反射不均勻及背景光照不均等因素造成的影響減小,且光條中心點(diǎn)提取精度達(dá)到亞像素級,計算如式(7):
(7)
式中:G為原始圖像;x1為圖像列坐標(biāo);j為圖像行坐標(biāo);G(x1,j)為原始圖像上點(diǎn)(x1,j)的灰度值;S為光條區(qū)域;uj為原始圖像第j行光條中心點(diǎn)列坐標(biāo)。
要計算光條中心點(diǎn)的列坐標(biāo)uj,重點(diǎn)是需要定位出光條所在區(qū)域S。文獻(xiàn)[14]直接采用最大類間方差法(OTSU),其認(rèn)為結(jié)構(gòu)光圖像對比度高,該方法能很好的區(qū)分光條和背景,且無需人工干預(yù),自適應(yīng)性強(qiáng)。
盡管通過Yolo-v3定位出錯臺區(qū)域,去除絕大部分干擾,但實(shí)際工程中環(huán)縫表面不平滑,存在斑塊等干擾,如圖3(a);若直接對使用OTSU分割,如圖3(b)則無法提取光條區(qū)域;因此,基于光條水平方向梯度特征,對圖像水平方向上進(jìn)行卷積操作,卷積核如式(8),獲得較為清晰的光條梯度檢測,如圖3(c);再使用OTSU對梯度圖像二值化分割,同時進(jìn)行形態(tài)學(xué)處理得到目標(biāo)光條,如圖3(d)。
圖3 光條分割
(8)
當(dāng)分割出目標(biāo)光條之后,將圖像每行像素點(diǎn)灰度值發(fā)生突變的位置作為光條區(qū)域的候選位置,考慮到圖像中可能存在干擾點(diǎn),結(jié)合光條先驗(yàn)知識進(jìn)行篩除,最終確定出光條區(qū)域。算法步驟如下:
步驟1:原始圖像G通過Yolo-v3算法檢測到錯臺區(qū)域,進(jìn)行圖像水平方向梯度檢測、OTSU二值分割和形態(tài)學(xué)處理操作,得到二值圖T。
步驟2:遍歷圖像T第j(j=1,…,n)行所有列,當(dāng)某像素點(diǎn)與相鄰像素的灰度值產(chǎn)生突變,將該點(diǎn)作為候選坐標(biāo)點(diǎn),即像素間灰度差值滿足條件|T(i,j)-T(i-1,j)|=255。
步驟3:對每兩個候選點(diǎn)的列坐標(biāo)進(jìn)行差值計算,當(dāng)最大差值Dmax滿足條件Tmin 步驟4:重復(fù)步驟2、3,直至遍歷完圖像所有行,得到光條完整區(qū)域。 將定位后的區(qū)域進(jìn)行光條區(qū)域提取和中心點(diǎn)計算,效果如圖4。 在圖4(b)中圖像分割后存在白圈中所示獨(dú)立的噪點(diǎn),但不會對光條區(qū)域范圍的定位造成影響。確定光條區(qū)域后,再根據(jù)式(7)計算得到亞像素級中心點(diǎn)坐標(biāo),如圖4(c),由圖4(c)可以看出,不論是亮度分布不均、較離散的光條,或者質(zhì)量較好的光條,筆者算法都能排除干擾,對光條中心點(diǎn)精確提取,便于進(jìn)一步計算像素位移量。 圖4 光條中心點(diǎn)提取 1.3.3 像素位移量計算 為獲取像素位移量,對光條拐點(diǎn)進(jìn)行定位,基于最小二乘法擬合光條直線參數(shù),并依據(jù)距離公式求取像素位移量。算法實(shí)現(xiàn)步驟如下: 步驟1:針對已獲取的光條中心點(diǎn)坐標(biāo),每隔n行進(jìn)行中心點(diǎn)列坐標(biāo)差值計算,中心點(diǎn)坐標(biāo)如圖5中光條中間線。 圖5 差值計算 光條拐點(diǎn)處中心點(diǎn)列坐標(biāo)與前面n行的中心點(diǎn)列坐標(biāo)存在較大偏差。經(jīng)過筆者多次試驗(yàn),設(shè)置n=10,即對光條區(qū)域從上往下按行掃描,計算當(dāng)前j行與前面第j-10行光條中心點(diǎn)列坐標(biāo)的差值dj,其中,dj=|xj-xj-10|,j=10,11,…,n-1。 步驟2:求取最大列坐標(biāo)差值dj對應(yīng)的行號j,將光條分割成兩部分,記為光條拐點(diǎn)。 步驟3:基于最小二乘法擬合直線參數(shù)。 步驟4:基于距離公式計算兩直線間的距離,即像素位移量。 (9) 式中:(x0,y0)為一擬合直線上的任意一點(diǎn);A、B、C為另外一擬合直線系數(shù);m為兩直線間的距離,即像素位移量。 基于Visual Studio 2015開發(fā)環(huán)境、OPENCV圖像庫、Darknet網(wǎng)絡(luò)框架,在配置有GTX1660 GPU的電腦上對隧道環(huán)境以及實(shí)驗(yàn)環(huán)境下采集的圖像進(jìn)行數(shù)據(jù)處理、模型訓(xùn)練以及結(jié)果分析。 使用LabelImg對實(shí)際采集的數(shù)據(jù)進(jìn)行標(biāo)注,錯臺區(qū)域作為檢測目標(biāo),其余均是背景,只需2個類別標(biāo)簽,即:target、background。數(shù)據(jù)集共有15 255張圖像,以8∶2的比例隨機(jī)選取數(shù)據(jù)集中的圖像作為訓(xùn)練數(shù)據(jù)和驗(yàn)證數(shù)據(jù),共進(jìn)行30 000次迭代訓(xùn)練,初始學(xué)習(xí)率為0.001,批量大小為16?;贑++實(shí)現(xiàn)Yolo-v3算法的調(diào)用,將置信度設(shè)為0.5用于類別判斷,對輸入的圖像進(jìn)行錯臺區(qū)域檢測。 對6 780張圖像進(jìn)行錯臺定位批量檢測,驗(yàn)證模型定位效果。實(shí)驗(yàn)圖像包含1 512張錯臺,正確檢測到1 472張,定位準(zhǔn)確率可達(dá)97.35%,僅40張圖像檢測錯誤,誤檢率為2.65%,模型定位效果可靠。 為驗(yàn)證所提光條中心提取算法的有效性,用極值法、Steger法、灰度重心法和筆者算法,對不同情況圖像提取光條中心進(jìn)行對比分析,如圖6。 圖6(a)中,極值法提取的光條中心遠(yuǎn)偏離實(shí)際光條中心且中心線不平滑,該方法通過遍歷圖像,將最大值點(diǎn)做為光條中心,提取效果差,不適用于光條較離散、質(zhì)量較差的圖像;Steger法和灰度重心法對亮度均勻、質(zhì)量較好的光條,提取的中心線較準(zhǔn)確,如圖6(b)、圖6(c)中的位置1、位置3處理效果較好,但個別光條中心點(diǎn)會產(chǎn)生偏移,也如圖6(b)和圖6(c)中的位置2,光照分布不均勻,存在干擾點(diǎn),出現(xiàn)大量中心點(diǎn)提取錯誤的現(xiàn)象。 圖6 對比試驗(yàn) 筆者算法如圖6(d),對光條亮度均值、質(zhì)量好或者光條離散、質(zhì)量較差的圖像,均能準(zhǔn)確進(jìn)行光條中心點(diǎn)的提取,得到平滑的中心線,并且對圖像中存在的干擾點(diǎn)能夠避除,使中心點(diǎn)的提取不會產(chǎn)生偏差,驗(yàn)證了算法的魯棒性。錯臺檢測中,光條中心點(diǎn)提取是算法耗時的核心,在筆者實(shí)驗(yàn)硬件平臺上,每秒能處理26張圖像,數(shù)據(jù)處理速度快。 實(shí)驗(yàn)過程中,通過手動測量錯臺驗(yàn)證算法檢測精度。已知錯臺厚度分別為7.74、14.46 mm。對于同一錯臺,進(jìn)行多角度、多距離的拍攝實(shí)驗(yàn),拍攝角度范圍為0~50°,拍攝距離范圍為2 000~4 000 mm,相機(jī)參數(shù)設(shè)置f=75 mm,μ=0.005 mm。 對采集的N組光條圖像進(jìn)行位移計算,獲得對應(yīng)像素位移量,記為M,其中M∈[m1,m2,…,mN];然后從中隨機(jī)選取a組作為標(biāo)定數(shù)據(jù),利用RANSAC算法線性擬合參數(shù)變量。 對同一批數(shù)據(jù)分別使用極值法、Steger法、灰度重心法和筆者算法進(jìn)行錯臺量檢測。經(jīng)上述光條中心點(diǎn)提取試驗(yàn)可知,極值法和Steger無法準(zhǔn)確提取光條中心點(diǎn),光條中心點(diǎn)產(chǎn)生極大偏移,無法用于后續(xù)計算,因此將計算相對準(zhǔn)確的灰度重心法與筆者算法檢測結(jié)果進(jìn)行比對,結(jié)果如表 1。 表1 參數(shù)變量計算結(jié)果 得到參數(shù)變量K、J后,對剩余的N-a組數(shù)據(jù)利用式(6)進(jìn)行實(shí)際錯臺量的計算。兩種錯臺在不同拍攝距離下,經(jīng)灰度重心法和筆者算法得到的部分錯臺檢測結(jié)果如表 2。 表2 錯臺量計算值與實(shí)際值對比分析 由表 2可知:同一錯臺在相同拍攝距離下,灰度重心法產(chǎn)生的檢測誤差基本都大于筆者算法;灰度重心法的最小絕對誤差為0.232 4 mm,最大絕對誤差為3.119 3 mm,近50%數(shù)據(jù)的檢測誤差在0.5~0.9 mm之間,62%的絕對誤差在1 mm內(nèi);筆者算法最小絕對誤差為0.101 8 mm,最大絕對誤差為1.256 8 mm,近50%數(shù)據(jù)的檢測絕對誤差在0.3~0.6 mm之間,87%的絕對誤差在0.6 mm內(nèi),誤差范圍顯著縮小,檢測精度在1.5 mm內(nèi)。 筆者研究成果已集成于上海同巖土木工程科技股份有限公司研制的地鐵隧道結(jié)構(gòu)檢測車TDV-S上,利用檢測車對西南某地區(qū)地鐵10號線某一區(qū)間,使用高清工業(yè)相機(jī)和結(jié)構(gòu)光,對同一環(huán)布設(shè)3個檢測點(diǎn)進(jìn)行連續(xù)測量,對采集到的數(shù)據(jù)進(jìn)行算法驗(yàn)證。多個檢測點(diǎn)的實(shí)際效果圖7。 圖7 工程案例檢測結(jié)果 由圖7(a)可以看出,實(shí)際工程環(huán)境采集到的圖像中,結(jié)構(gòu)光條與背景對比度不明顯,成像效果沒有試驗(yàn)圖像理想。圖7(b)中,通過Yolo-v3算法實(shí)現(xiàn)了錯臺區(qū)域精準(zhǔn)定位。雖然錯臺區(qū)域表面不平滑,存在水跡、斑塊等多種干擾,但經(jīng)筆者算法處理,能夠從檢測到錯臺的區(qū)域中準(zhǔn)確提取到光條中心點(diǎn),并剔除干擾點(diǎn),如圖7(c)。最終,能夠準(zhǔn)確定位到錯臺的實(shí)際發(fā)生位置,如圖7(d)。 選取多個檢測點(diǎn)環(huán)境下共561環(huán)管片進(jìn)行批量測試,錯臺量計算值與實(shí)際測量值間差值分布曲線如圖8。從圖8中可知,差值落在[-1.5 mm,+1.5 mm],即最大絕對誤差為1.5 mm,絕大部分差值落在[-0.5 mm,+0.5 mm]及其附近。 圖8 管片錯臺差值分布曲線 差值區(qū)間個數(shù)統(tǒng)計柱狀圖如圖9,差值落在[-0.3 mm,+0.3 mm]、[-0.6 mm,+0.6 mm]、[-1.5 mm,+1.5 mm]的占比,分別為:37.88%、86.90%、100%,即87%的絕對差值在[0,0.6 mm],工程應(yīng)用結(jié)果表明算法精準(zhǔn)性。 圖9 差值區(qū)間個數(shù)統(tǒng)計 基于斜射式線結(jié)構(gòu)光技術(shù)進(jìn)行了隧道錯臺檢測研究,重點(diǎn)分析實(shí)現(xiàn)了錯臺量計算理論公式推導(dǎo)和圖像亞像素位移量的計算方法。研究結(jié)果及工程案例表明: 1)基于斜射式激光三角法原理和成像原理,推導(dǎo)出錯臺量理論公式,通過RANSAC擬合線性函數(shù),無需角度測量,現(xiàn)場標(biāo)定更便捷。 2)通過Yolo-v3錯臺區(qū)域定位檢測,圖像水平方向梯度檢測和OTSU分割等處理得到目標(biāo)光條,利用灰度平方加權(quán)重心法提取亞像素級光條中心點(diǎn),算法定位準(zhǔn)確率可達(dá)97.35%,計算效率每秒26張圖像,計算精度高、易實(shí)現(xiàn)、處理速度快,適用于隧道錯臺自動檢測。 3)錯臺檢測結(jié)果與實(shí)際測量結(jié)果87%的絕對誤差在0.6 mm內(nèi),最大絕對誤差不大于1.5 mm,滿足盾構(gòu)隧道錯臺檢測需求。2 實(shí)驗(yàn)結(jié)果分析
2.1 Yolo-v3網(wǎng)絡(luò)定位
2.2 光條中心提取
2.3 錯臺量計算
3 工程案例
4 結(jié) 論