李燕
(鄂爾多斯應(yīng)用技術(shù)學院, 內(nèi)蒙古 鄂爾多斯 017000)
目前,獲取路面裂縫基本信息的方式主要有兩種:① 采取人工測量,但這種方法存在封閉交通以及成本高等缺陷,難以滿足當前高速公路的海量檢測任務(wù);② 通過數(shù)字圖像實現(xiàn)裂縫的快速檢測。由于該方法具有精度高、速度快、能在不干擾交通的情況下完成裂縫檢測等優(yōu)點,適用于公路路面病害檢測,受到了公路養(yǎng)護部門的高度重視。
數(shù)字圖像有二維與三維兩種基本數(shù)據(jù),在過去幾十年里,各國研究人員圍繞二維圖像數(shù)據(jù)提出了許多算法。如Zhang等成功將視網(wǎng)膜圖像中檢測血管的匹配濾波器運用于二維裂縫識別,該算法假設(shè)裂縫截面可用高斯曲線擬合,通過調(diào)整濾波器模板方向來匹配裂縫輪廓,達到檢測裂縫與消除路面標線的目的,但該濾波器對低對比度裂縫的響應(yīng)較小;Miguel等提出了基于種子識別的二維裂縫檢測方法,然而這類算法采用固定閾值,易造成粗糙紋理的誤檢;Zhou等提出了基于小波變換的二維裂縫識別算法,通過將裂縫圖像分解為不同頻段,以背景對應(yīng)低頻段而裂縫對應(yīng)高頻段為依據(jù)來識別裂縫,但該類算法對高曲率裂縫的識別效果較差,且計算成本較高;王曉明等基于兩個相機對同一路面不同角度拍攝得到的兩幅二維圖像,提出了多圖像、多分辨率的二維裂縫檢測算法;韋春桃等為提取細小裂縫與微灰度差異裂縫提出了自適應(yīng)閾值分割法。
近年來,為了應(yīng)對二維圖像數(shù)據(jù)易受外界環(huán)境干擾的問題,相關(guān)研究人員開始研究基于結(jié)構(gòu)光的三維檢測技術(shù)。如2014年,Ouyang等詳細闡述了激光三角測量原理,通過在不同車速和天氣條件下,測試對比4種裂縫檢測結(jié)果的差異性,證實了激光三維技術(shù)在裂縫檢測方面的優(yōu)勢。此后,諸多三維檢測算法涌現(xiàn),如彭博等基于三維數(shù)據(jù)并利用深度驗證指標對各向異性測度法(CTA)在大測量尺度下難以適應(yīng)不同裂縫寬度的問題進行了改進;任青青提出了一種不需要設(shè)置參數(shù)的基于二維經(jīng)驗?zāi)J椒纸獾娜S瀝青路面全自動裂縫識別方法,但該方法檢測出的裂縫連續(xù)性不高;Jiang等提出了基于改進的動態(tài)優(yōu)化識別算法,通過使用概率模型初步識別裂縫,最后根據(jù)搜索區(qū)域與方向?qū)α芽p進行動態(tài)優(yōu)化。然而由于裂縫形態(tài)多變以及紋理復(fù)雜度高等因素,眾多已發(fā)表的三維算法文獻未能較好地實現(xiàn)裂縫誤檢與漏檢之間的平衡,對路面的適應(yīng)性較差,因而有必要對其進行深入研究。
雖然三維圖像相關(guān)噪音較二維圖像少,但由于路面紋理復(fù)雜多變,如果不進行恰當?shù)奶幚恚渲幸徊糠执植诩y理可能會造成算法誤檢,最終影響路面評價。濾波是圖像預(yù)處理最常用的方法,如高斯、中值、均值等傳統(tǒng)濾波法;然而這些算法的無差別濾波處理將造成裂縫輪廓的模糊,進而降低算法檢測精度。為了防止這一問題的發(fā)生,該文選取了一種既能平滑紋理,亦能保持裂縫輪廓的濾波算法。
雙邊濾波器是一種同時考慮空域與頻域的局部非迭代濾波算法。該濾波器涉及兩個重要要素:緊密度(closeness)和相似度(similarity)。其中,緊密度計算空域信息,與傳統(tǒng)濾波器相同,通過計算周圍像素的權(quán)重來實現(xiàn);而相似度則計算頻域信息,即周圍像素的權(quán)值將隨灰度或顏色不相似度的增大而減小,其處理方式如下:
(1)
(2)
式中:k-1(x)為歸一化因子;c(ξ,x)為closeness函數(shù),測量待處理像素x與其周圍像素ξ的緊密度;s[f(ξ),f(x)]為similarity函數(shù),測量像素x與像素ξ的相似度;f與h分別為處理前后的圖像。
具有平移不變性的高斯函數(shù)是雙邊濾波器的重要基礎(chǔ),因此函數(shù)c(ξ,x)與s[f(ξ),f(x)]可表示為:
(3)
(4)
式中:‖ξ-x‖為像素ξ與像素x的歐式距離;‖f(ξ)-f(x)‖為兩像素灰度或CIE-Lab顏色空間中的歐式距離;σd為空間尺度;σr為值域尺度;經(jīng)大量試驗,取σd=8。
由于不同圖像裂縫高度值差異較大,因此以處理圖像的標準差σr為最終取值;由圖1可知:雙邊濾波器能較大程度平滑紋理并能較好地保持裂縫輪廓,有助于提高裂縫檢測精度。
圖1 雙邊濾波器對三維圖像截面的處理結(jié)果
裂縫輪廓的高-低-高程度可通過兩側(cè)區(qū)域與中間部分的高度差來定量描述,為了實現(xiàn)這一目標,首先定義待檢測像素與其兩側(cè)像素的高度差分別為:
Δl(xi)=f(xj)-f(xi)j∈[i-r,i]
(5)
Δr(xi)=f(xj)-f(xi)j∈[i,i+r]
(6)
式中:Δl(xi)為檢測中心像素f(xi)與其一側(cè)某像素f(xj)的高度差;Δr(xi)為中心像素與其另一側(cè)某像素的高度差;r為輪廓半徑,表示計算尺度。
為了最大程度體現(xiàn)裂縫與非裂縫的差異,取兩側(cè)范圍內(nèi)的最大高度差的乘積作為乘積算子,因此像素xi處的高度差乘積算子Δ(xi)可表示為:
(7)
由基本不等式可知:當兩個實數(shù)a與b的和為一固定常數(shù)時,這兩個數(shù)的取值越接近,其乘積ab就越大,這是因為存在ab≤(a2+b2)/2,當且僅當a=b時等號成立。從裂縫剖面來看,其兩側(cè)輪廓較為對稱,因此基于以上分析可知,裂縫處的乘積算子值要大于非對稱的階梯型輪廓(如標志標線的邊緣)。值得注意的是,算子Δ(xi)的大小除了受裂縫輪廓本身性質(zhì)影響外,還取決于參數(shù)r的取值大小。r值過大、過小都會影響裂縫處Δ(xi)的大小。圖2為裂縫輪廓示意圖。
圖2 裂縫輪廓示意圖
對于情況①:
(1)A點為待處理中心像素:當r在A~B范圍內(nèi)時,算子為較小的正值或趨于0;當r在B~F范圍內(nèi)時,算子值略大于A~B范圍內(nèi)的值;當r在F~G范圍內(nèi)時,算子值大于B~F范圍內(nèi)的值。當r的取值不超過G點時,由于A點右側(cè)的高度差始終較小,所以算子較??;然而,如果r的取值超過G點,此時算子值較大,會增加裂縫誤檢的可能性。
(2)B點為待處理中心像素:當r在B~F范圍內(nèi)時,算子為負值或趨于0;當r在F~G范圍內(nèi)時,算子值為較小的正值或趨于0;當r的取值超過G點時,其影響與A點相同。
(3)C點為待處理中心像素:當r在C~E范圍內(nèi)時,算子為負值或趨于0;當r在E~G范圍內(nèi)時,算子為正值且較大;當r的取值超過G點時,算子值要大于相同狀況下A、B點的算子值。
(4)D點為待處理中心像素:當r在C~D或D~E范圍內(nèi)時,算子為較大的正值;當r在B~C或E~F范圍內(nèi)時,算子大于C~D或D~E范圍內(nèi)的值;當r在A~B或F~G范圍內(nèi)時,算子值為A~G范圍內(nèi)的最大值;如果r的取值超過G點,算子值要大于相同狀況下A、B、C點的算子值。
(5)E、F、G點分別與C、B、A點情況相同。
滿足尺度條件后,便可通過映射把濾波后的三維圖像轉(zhuǎn)換為高度差乘積矩陣。由圖2可知:C~D~E范圍內(nèi)裂縫點兩側(cè)的高度差Δl(xi)或Δr(xi)的最大值不可能為負值和零值,因此可將高度差為負值和零值的像素點劃分為背景,詳細過程如下:
f′(xi)=
(8)
式中:f′為映射后的高度差乘積圖像;由于裂縫延伸方向復(fù)雜多變,從不同方向剖切同一裂縫,可以獲得不同的截面輪廓,使得對應(yīng)的算子有所差異。為了提高識別精度,對圖像輪廓進行0、π/4、π/2、3π/4共4個方向的映射,然后對得到的4幅映射圖像進行如下融合:
f″(xi)=max[f′0(xi),f′45(xi),f′90(xi),f′135(xi)]
(9)
式中:f″為融合后的映射圖像;f′0、f′45、f′90、f′135分別為0、π/4、π/2、3π/4方向的映射結(jié)果。
圖3為路面圖像隨r值變化時的映射融合結(jié)果。
圖3 裂縫圖像隨r值變化時的映射結(jié)果
由圖3可知:當r值較小時,寬度較小的裂縫位置處具有較強的映射響應(yīng),這是由于此時的r處于A~B或F~G范圍內(nèi)(圖2),相應(yīng)算子值已然達到最大值;然而對于寬度較大的裂縫,r處于C~D或D~E范圍內(nèi),在裂縫深度與細裂縫相同的情況下,其映射響應(yīng)相對較弱,如圖3中白色橢圓標注區(qū)域所示;隨著r值的增大,寬裂縫的響應(yīng)逐漸增大,細裂縫的映射也得到加強,當r值大于6時,絕大部分裂縫的響應(yīng)與r=6時相同,為兼顧精度與計算成本,取r=6。將映射圖像按下式進行閾值分割,可以獲得含有少量噪音的裂縫二值圖:
b(xi)=
(10)
式中:b(xi)為含少量噪音的裂縫二值圖;mean(f″)為映射圖像f″的平均值;max(f″)為映射圖像f″中的最大值;c為最小分割閾值,為避免算法對無裂縫圖像的誤檢而設(shè)置,該文取c=2;n為正常系數(shù),試驗表明,取n=100較為合適。
該文所測試的三維數(shù)據(jù)均來源于DHDV多功能檢測車,其采集的圖像分辨率為2 048×2 048,為了減少計算時間并保證圖像清晰度,將原始圖像進行4像素×4像素子塊降維獲得分辨率為512×512的圖像;然后通過雙邊濾波器的預(yù)處理、乘積算子的映射融合以及裂縫的分割與去噪,獲得最終的裂縫二值圖。為體現(xiàn)算法優(yōu)劣,隨機選取240幅三維裂縫圖像進行試驗,并采用另一種三維算法S進行對比,評價指標除采用準確率、召回率和F值外;還增加了σ和u/σ指標。雖然一些算法的F值均值很高,但波動較大、不穩(wěn)定,優(yōu)秀的算法不僅需要很高的F值,還應(yīng)具備極高的穩(wěn)定性,以適應(yīng)復(fù)雜多變的裂縫圖像。一般而言,算法的F值越大,標準差越小,其性能越穩(wěn)定,因此采用均值u與標準差σ的比值這一指標來判斷算法的優(yōu)劣,相應(yīng)測試結(jié)果如表1所示。
表1 算法檢測結(jié)果對比
由表1可知:算法S的準確率變化區(qū)間為[72.29%,88.27%],召回率為[92.55%,97.08%],綜合性能F值在區(qū)間[78.91%,89.42%]內(nèi)變化,可以看出,雖然算法S的召回率很高(94.32%)且穩(wěn)定(σ=7.62),但準確率較低(80.62%)且波動大(σ=20.34),使得綜合性能較低(84.76%)。而該文算法的準確率變化區(qū)間為[93.51%,99.83%],召回率為[76.46%,88.57%],綜合性能F值在區(qū)間[84.15%,91.90%]內(nèi)變化,均值為87.97%;算法的平均準確率很高(96.51%)且波動較小(σ=10.65),雖然召回率(83.35%)低于算法S,但綜合性能及穩(wěn)定性高于對比算法(u/σ=7.01>u/σ=5.63)。為了直觀展示各算法性能,選取4幅典型三維裂縫圖像作為示例,算法檢測結(jié)果如圖4所示。
由圖4可知:當圖像紋理粗糙度較小時,算法S的檢測精度較高,如圖4中圖像-1和圖像-2所示。然而,該算法以裂縫種子為原理并采用固定閾值對裂縫進行識別,所以會出現(xiàn)一些較深的具有裂縫特征的紋理結(jié)構(gòu)被誤檢為裂縫的現(xiàn)象(如圖像-3和圖像-4所示),使得召回率增大,準確率降低,這與表1所示的結(jié)果一致。而該文算法首先通過雙邊濾波器對路面紋理進行平滑處理,然后設(shè)計乘積算子對裂縫特征進行放大,所以能有效避免粗糙紋理構(gòu)造對裂縫檢測的影響,提高了裂縫的檢測精度。
圖4 典型瀝青路面圖像檢測結(jié)果
利用三維圖像中裂縫輪廓的高-低-高程度大于紋理區(qū)域且具有較強的對稱性兩個重要特點,提出了基于高度差乘積原理的三維瀝青路面裂縫自動檢測算法,該方法進行了裂縫與紋理的有區(qū)別性濾波,以及裂縫特征的針對性放大,經(jīng)測試后可得出以下結(jié)論:
(1) 雙邊濾波器能有效平滑路面紋理構(gòu)造并同時保持裂縫輪廓原有的特征,減小了粗糙紋理結(jié)構(gòu)對裂縫提取的干擾,提高了裂縫的識別精度。
(2) 高度差乘積算子能有效放大裂縫輪廓與非裂縫輪廓的差異特征,其原理類似于對大于1的正實數(shù)x進行平方(冪的二次方),顯然x越大,x2就越大;放大后通過閾值分割便能較為精確地將裂縫從圖像中提取出來;然而三維路面圖像復(fù)雜多變,算法漏檢的問題仍需進一步解決。