王敬飛, 鄧然然, 陳志毅, 李偉
(1.廣東華路交通科技有限公司, 廣東 廣州 510080; 2.廣東交科檢測(cè)有限公司; 3.長(zhǎng)安大學(xué))
道路交通在世界上所有國(guó)家的經(jīng)濟(jì)建設(shè)中起著重要作用,例如經(jīng)濟(jì)結(jié)構(gòu)和不斷發(fā)展的城市網(wǎng)絡(luò)都是由道路交通支撐的。裂縫的識(shí)別對(duì)于道路的日常維護(hù)十分關(guān)鍵。至今為止,裂縫檢測(cè)技術(shù)變得越來(lái)越成熟,為路面維護(hù)提供了很多技術(shù)支持。然而,現(xiàn)有的裂縫檢測(cè)技術(shù)仍不能滿足實(shí)際應(yīng)用中的準(zhǔn)確性和效率的需求。
傳統(tǒng)的人工檢測(cè)會(huì)影響交通,效率低,主觀性強(qiáng)且準(zhǔn)確性低,并且長(zhǎng)期無(wú)法滿足不斷增長(zhǎng)的維護(hù)需求。隨著信息科技的進(jìn)步,出現(xiàn)了許多利用數(shù)字圖像原理的路面裂縫識(shí)別方法,例如邊緣檢測(cè)算法極大地提高了識(shí)別效率和準(zhǔn)確性。但是,這種檢測(cè)算法對(duì)噪聲較為敏感。此外,還有一些利用形態(tài)學(xué)的識(shí)別方法,利用閾值分割的識(shí)別方法以及利用聚類(lèi)圖像分割的識(shí)別方法等。這些算法為提高裂縫檢測(cè)精度提供了重要參考。二維的方法受光影、標(biāo)志信息和油漬的影響?,F(xiàn)有的二維裂縫識(shí)別算法難以解決此類(lèi)缺陷。因此,諸多學(xué)者及研究人員加強(qiáng)了對(duì)三維路面裂縫檢測(cè)的研究。近年來(lái),基于結(jié)構(gòu)光學(xué)的三維識(shí)別方法成為了研究的熱點(diǎn)。通過(guò)使用攝像機(jī)捕獲路面輪廓并通過(guò)三維重建進(jìn)行成像,可以更好地解決二維圖像受環(huán)境影響的缺點(diǎn)。然后出現(xiàn)了基于二維分解的三維識(shí)別方法等三維方法。深度學(xué)習(xí)算法也被應(yīng)用于裂縫的識(shí)別。但是,這種算法高度依賴特征選擇和訓(xùn)練樣本的豐富性,因此對(duì)于與訓(xùn)練樣本有很大差異的裂縫圖像的處理效果并不理想,并且計(jì)算成本很高。
綜上所述,盡管三維圖像可以更好地避免環(huán)境干擾,但是由于裂縫對(duì)比度低,背景不均勻,裂縫形態(tài)多樣以及路面紋理復(fù)雜等因素的影響,裂縫的準(zhǔn)確檢測(cè)仍然面臨巨大的挑戰(zhàn)。隨著三維識(shí)別方法的提出與進(jìn)步,三維識(shí)別方法的研究已成為目前的主要方向。Amhaz等設(shè)計(jì)了利用聚類(lèi)方法的三維裂縫檢測(cè)方法。聚類(lèi)屬于機(jī)器學(xué)習(xí)領(lǐng)域中的主要分支無(wú)監(jiān)督方法??焖偎阉骱桶l(fā)現(xiàn)密度峰值聚類(lèi)算法(DPC)是2014年發(fā)表的新算法,可以實(shí)現(xiàn)非球形數(shù)據(jù)的有效處理。通過(guò)此算法選擇聚類(lèi)中心:① 局部密度較高,即中心點(diǎn)的相鄰點(diǎn)的密度值均小于該點(diǎn);② 與密度較高的其他點(diǎn)的“距離”較大。 DPC算法原理簡(jiǎn)單,聚類(lèi)效率高,已廣泛應(yīng)用于高速公路收費(fèi)數(shù)據(jù)分析,異常事件挖掘等領(lǐng)域。但是,DPC算法的缺點(diǎn)也非常明顯,截止距離應(yīng)根據(jù)經(jīng)驗(yàn)值設(shè)置,需要根據(jù)計(jì)算出的局部密度和距離值生成決策圖以選擇聚類(lèi)中心。通過(guò)人工選擇具有較大參數(shù)值的樣本為中心樣本。這種選擇具有較高的主觀性和不穩(wěn)定性,嚴(yán)重影響了非中心點(diǎn)的后續(xù)分布和優(yōu)化以及噪聲點(diǎn)的發(fā)現(xiàn)。為了解決這兩個(gè)缺點(diǎn),該文采用自調(diào)節(jié)步長(zhǎng)的果蠅優(yōu)化算法(SFO)對(duì)快速搜索與發(fā)現(xiàn)峰值聚類(lèi)算法(DPC)的參數(shù)進(jìn)行優(yōu)化,設(shè)計(jì)了自調(diào)節(jié)步長(zhǎng)果蠅優(yōu)化密度峰值聚類(lèi)算法(SFO-DPC)。然后,使用SFO-DPC算法對(duì)三維瀝青路面數(shù)據(jù)進(jìn)行聚類(lèi),準(zhǔn)確識(shí)別裂縫并獲取裂縫參數(shù),為路面病害評(píng)估提供支持。
該文采用三維數(shù)據(jù)采集設(shè)備Gocator3100進(jìn)行數(shù)據(jù)的采集,可以實(shí)現(xiàn)三維智能傳感器的三維數(shù)據(jù)采集和三維數(shù)據(jù)測(cè)量,采用雙目相機(jī)掃描技術(shù)獲得高精度的三維測(cè)量數(shù)據(jù),并且仍能在復(fù)雜的照明條件下提供高可靠性和高重復(fù)性數(shù)據(jù),同時(shí)由于外觀緊湊,體積小,重量輕,非常易于安裝在狹小的空間,因此非常適用于各種固定目標(biāo)非接觸式在線檢測(cè)應(yīng)用。
該文提出的基于SFO-DPC算法的瀝青路面裂縫識(shí)別方法主要由3個(gè)部分組成。包括瀝青路面三維數(shù)據(jù)采集、基于SFO-DPC算法的路面三維數(shù)據(jù)聚類(lèi)以及路面裂縫特征提取。
目前現(xiàn)存的二維裂縫識(shí)別方法的局限性大大增加了對(duì)三維方法的需求。Gocator3100系列雙目三維智能掃描儀是一種結(jié)合了三維點(diǎn)云數(shù)據(jù)采集和測(cè)量工具的工業(yè)檢測(cè)設(shè)備,如圖1所示。
圖1 Gocator3100雙目智能傳感器結(jié)構(gòu)圖
圖2為瀝青路面數(shù)據(jù)采集工作現(xiàn)場(chǎng)及數(shù)據(jù)采集裝置俯視圖。Gocator3100相機(jī)被安裝于特制支架上。采集到的裂縫三維數(shù)據(jù),如圖3所示。同時(shí)拍攝了如圖4所示的三維數(shù)據(jù)對(duì)應(yīng)的二維圖像,便于記錄瀝青路面的光照及濕度等信息。
圖2 數(shù)據(jù)采集圖
圖3 三維數(shù)據(jù)截圖
圖4 二維圖像
試驗(yàn)中使用的樣本數(shù)據(jù)主要為三維重建形成的樣本。除了捕捉裂縫的輪廓,三維數(shù)據(jù)還包括不同高度的瀝青路面、紋理、車(chē)轍、路標(biāo)、坑洼或碎石。
表1為由雙目相機(jī)收集的三維路面數(shù)據(jù)的局部信息。表中的首行及首列信息是路面的水平及垂直坐標(biāo)。表中為路面高度值,盡管采集設(shè)備盡量避免了誤差,但由于路面磨損反光等因素,其中仍存在一些缺失值。
表1 部分瀝青路面三維數(shù)據(jù)示例
該研究中使用Lagrange插值法對(duì)空缺的信息進(jìn)行填充。為了考慮目標(biāo)識(shí)別的速度和精度,使用中值濾波方法對(duì)原始數(shù)據(jù)加以處理。濾波的目的是平滑數(shù)據(jù),消除路面構(gòu)造深度對(duì)裂縫檢測(cè)的影響。三維數(shù)據(jù)截面的預(yù)處理結(jié)果如圖5所示。
圖5 三維裂縫數(shù)據(jù)截面預(yù)處理實(shí)例
研究中,采用聚類(lèi)的方法實(shí)現(xiàn)裂縫的檢測(cè)。對(duì)采集的三維裂縫數(shù)據(jù)中的瀝青路面高度值進(jìn)行參數(shù)計(jì)算、聚類(lèi)中心選擇、非中心點(diǎn)分配、聚類(lèi)結(jié)果優(yōu)化和噪聲點(diǎn)識(shí)別。然后,將數(shù)據(jù)點(diǎn)識(shí)別為普通路面或路面裂縫。三維路面樣本聚類(lèi)結(jié)果以二維形式表示?;诰垲?lèi)的識(shí)別系統(tǒng)流程如圖6所示。
圖6 基于聚類(lèi)算法的裂縫識(shí)別流程圖
3.2.1 密度峰值聚類(lèi)算法(DPC)
DPC算法主要分3個(gè)步驟進(jìn)行:計(jì)算距離矩陣、選取中心樣本、非中心樣本分配及算法結(jié)果優(yōu)化。
密度峰值算法的輸入為待處理數(shù)據(jù)樣本的距離矩陣。在進(jìn)行距離計(jì)算之前,將原始數(shù)據(jù)的不同字段進(jìn)行標(biāo)準(zhǔn)化處理,使各維度的數(shù)據(jù)具有相同的量級(jí);計(jì)算數(shù)據(jù)間的相似性;輸出矩陣,此矩陣即為快速峰值算法的輸入。
聚類(lèi)中心的特征是密度值較大而且到其他密度更大的樣本相距很遠(yuǎn)。某樣本的局部密度ρi是其截止距離范圍內(nèi)樣本的數(shù)目:
ρij=∑jχ(dij-dc)
(1)
式中:i與j為兩個(gè)互異的數(shù)據(jù)點(diǎn),其中當(dāng)α小于0時(shí),χ(α)=1,反之χ(α)=0;dij為i點(diǎn)與j點(diǎn)之間的距離;dc為截止距離,由用戶根據(jù)經(jīng)驗(yàn)值設(shè)定。
某一數(shù)據(jù)的δi值被定義為:
(2)
對(duì)于密度最高的點(diǎn),由于不存在更高點(diǎn),故將其δi值定義為該點(diǎn)與其余所有數(shù)據(jù)之間距離的最大值。
δi=maxj(dij)
(3)
計(jì)算出各點(diǎn)的這兩個(gè)量之后,將所有數(shù)據(jù)點(diǎn)以ρ和δ作為兩個(gè)維度進(jìn)行可視化輸出,所輸出的圖形稱為決策圖。從中將ρ和δ都較大的樣本設(shè)置為中心樣本。找到中心樣本后,同時(shí)得到了類(lèi)別的數(shù)量,然后合理分配非中心樣本。每個(gè)剩余點(diǎn)逐個(gè)被分到與其距離最近的有較高密度的點(diǎn)所在的類(lèi)簇,且此操作以單步執(zhí)行,直到把所有的點(diǎn)全部分配到對(duì)應(yīng)的類(lèi)為止。
3.2.2 自調(diào)節(jié)步長(zhǎng)果蠅優(yōu)化算法(SFO)
果蠅優(yōu)化算法(FOA)仿照果蠅個(gè)體覓食的過(guò)程,首先根據(jù)嗅覺(jué)尋找食物氣味,然后根據(jù)視覺(jué)精確覓食,漸漸接近食物。
初始化種群:果蠅數(shù)量為Sizenum,執(zhí)行次數(shù)為Maxtimes。群體初始坐標(biāo)(Start_X,Start_Y)。果蠅個(gè)體按照任意方向與距離移動(dòng):
Xi=Start_X+RandomValue
(4)
Yi=Start_Y+RandomValue
(5)
計(jì)算每個(gè)個(gè)體與原點(diǎn)的距離Di以及判定參數(shù)Si:
(6)
Si=1/Di
(7)
將判定參數(shù)Si代入函數(shù)Function(Si)求出其Smelli:
Smelli=Function(Si)
(8)
找出味道最優(yōu)的個(gè)體(該文以最小值為最優(yōu)解):
[best_Smellbest_index]=min(Smell)
(9)
重復(fù)上述步驟,判斷:Smell_besti Smell_besti=best_smell (10) Start_X=X(best_Smell) (11) Start_Y=Y(best_Smell) (12) FOA算法每一代果蠅以固定步長(zhǎng)隨機(jī)尋找食物。如果步長(zhǎng)不變,則步長(zhǎng)的選擇就對(duì)尋優(yōu)的效果與效率有較大的影響。難以平衡全局搜索和局部搜索,自調(diào)節(jié)步長(zhǎng)果蠅優(yōu)化算法根據(jù)濃度差值變化率的大小判斷迭代處于前期階段還是后期階段,對(duì)步長(zhǎng)進(jìn)行動(dòng)態(tài)更改(圖7);并且在改變步長(zhǎng)過(guò)程中引入指數(shù)與三角函數(shù)機(jī)制,使步長(zhǎng)變化具有非均勻性和隨機(jī)性。 求出濃度差值變化率: (13) 由圖7可知:尋優(yōu)前期的濃度差值變化率波動(dòng)較大,需要適當(dāng)加大步長(zhǎng)提高尋優(yōu)速度,而尋優(yōu)后期濃度差值變化率波動(dòng)變小,逐漸穩(wěn)定在1附近的0.7~1.3內(nèi),說(shuō)明群體已經(jīng)接近目標(biāo),此時(shí)應(yīng)當(dāng)減小步長(zhǎng),以提升精確度。 圖7 濃度差值變化率 根據(jù)SRate的取值范圍,對(duì)步長(zhǎng)進(jìn)行相應(yīng)的修改: 如果SRate≤0.7或者SRate≥1.3: (14) 如果0.7 (15) 步長(zhǎng)調(diào)節(jié)因子: Dynamic_factor=exp(m×SRate)× sin[rem(timesi,π)] (16) 式中:Li與Li-1分別為當(dāng)前果蠅尋優(yōu)迭代步長(zhǎng)和上一次果蠅尋優(yōu)迭代步長(zhǎng);m為在不同所屬濃度差值變化率時(shí)所采用的步長(zhǎng)動(dòng)態(tài)變化參數(shù);timesi為當(dāng)前執(zhí)行算法所處的運(yùn)行次數(shù);根據(jù)每次求的濃度差值變化率SRate,確定其所屬范圍,對(duì)步長(zhǎng)進(jìn)行相應(yīng)的修改。 圖8為步長(zhǎng)調(diào)節(jié)因子在取值連續(xù)的情況下所顯示的結(jié)果。指數(shù)機(jī)制可以使步長(zhǎng)變化具有非均勻性,在果蠅尋優(yōu)迭代過(guò)程中,如果濃度變化較大,那么要適當(dāng)增加步長(zhǎng),非均勻變化的步長(zhǎng)相對(duì)于原果蠅算法中的固定步長(zhǎng)更容易捕捉到最優(yōu)值,有利于全局搜索。 圖8 步長(zhǎng)調(diào)節(jié)因子變化曲線 果蠅個(gè)體位置計(jì)算: Xi=Start_X+Li×Xi-1×RandomValue (17) Yi=Start_Y+Li×Yi-1×RandomValue (18) 3.2.3SFO-DPC算法 存在數(shù)據(jù)集D={x1,x2,…,xn}包括n條數(shù)據(jù),每條數(shù)據(jù)的密度函數(shù)值為: (19) (20) 聚類(lèi)含小樣本數(shù)據(jù)集時(shí),DPC算法可以使用指數(shù)方式來(lái)估計(jì)密度: (21) 觀察式(19)、(21)可知:當(dāng)使用高斯核函數(shù)方法來(lái)表示局部密度時(shí),截?cái)嗑嚯xdc與密度函數(shù)值中的σ物理意義相同,求解最優(yōu)σ即可得到dc的最優(yōu)值。若將數(shù)據(jù)集當(dāng)作一個(gè)系統(tǒng),合理準(zhǔn)確的聚類(lèi)結(jié)果是系統(tǒng)最穩(wěn)定的,是每個(gè)樣本之間穩(wěn)定關(guān)系的最佳狀態(tài),所以,將信息熵最小作為判定函數(shù),利用SFO算法對(duì)σ進(jìn)行最優(yōu)值求解得出的σ值等同于截止距離dc。 將式(20)所示的信息熵函數(shù)作為自調(diào)節(jié)步長(zhǎng)果蠅優(yōu)化算法的濃度判定函數(shù)Function(Si)進(jìn)行優(yōu)化,求出最優(yōu)σ值,即截?cái)嗑嚯xdc。按式(1)、(2)、(3)計(jì)算得到ρi和δi后,自適應(yīng)地選擇聚類(lèi)中心。該文引入γi=ρi×δi,γi較大的點(diǎn),就很有可能是聚類(lèi)中心,進(jìn)而根據(jù)γ分布的特性從中選擇真正的聚類(lèi)中心完成后續(xù)聚類(lèi)過(guò)程。 對(duì)拍攝到的部分路面數(shù)據(jù)加以重構(gòu),不同的高度值以不同的顏色顯示。在數(shù)據(jù)收集過(guò)程中,每組收集330×170個(gè)數(shù)據(jù)點(diǎn)。在該研究中,使用SFO-DPC算法來(lái)聚類(lèi)瀝青路面三維數(shù)據(jù)的高度值。圖9為裂縫圖像聚類(lèi)結(jié)果。 該文根據(jù)4種情況對(duì)數(shù)據(jù)結(jié)果進(jìn)行評(píng)估:真正例TP、假正例FP、真負(fù)例TN和假負(fù)例FN。將處理結(jié)果與真實(shí)標(biāo)簽進(jìn)行對(duì)比,計(jì)算準(zhǔn)確率P、召回率R和F-measure。 (22) (23) F-measure是平衡了精確度和召回率的調(diào)和平均值: (24) 該文試驗(yàn)所用數(shù)據(jù)中可以分為4種典型的路面裂縫圖像類(lèi)型,其圖像灰度直方圖如圖10所示。 圖9 裂縫圖像聚類(lèi)結(jié)果 圖10(b)中,類(lèi)型1路面和裂縫的灰度差異很小;類(lèi)型2圖像中由于水漬的影響,路面的灰度分布直方圖呈雙峰分布,水漬的存在將影響其二維檢測(cè);類(lèi)型3的圖像中,路面和裂縫的灰度有明顯差異,但其差值小于路面與集料的灰度差值;類(lèi)型4圖像中,裂縫與路面的差異較大。綜上所述,光照、水漬及路面碎石等因素將會(huì)直接影響二維檢測(cè)效果,而該文提出的基于聚類(lèi)的瀝青路面三維裂縫檢測(cè)系統(tǒng)不會(huì)受到這些因素的干擾。 圖10 二維裂縫圖像及其灰度分布直方圖 圖11為瀝青路面三維數(shù)據(jù)的檢測(cè)結(jié)果,其中圖11(a)為K-means算法的檢測(cè)結(jié)果,圖11(b)為SFO-DPC算法的處理結(jié)果,圖11(c)為處理結(jié)果經(jīng)形態(tài)學(xué)處理后的效果。對(duì)于4種典型的圖像,基于聚類(lèi)的三維檢測(cè)效果較好,這是因?yàn)槿S方法不受光照、路面水漬及集料灰度等因素的干擾,僅考慮路面高度變化情況。與此同時(shí),SFO-DPC算法的檢測(cè)結(jié)果大大優(yōu)于K-Means算法,因?yàn)镵-Means算法受到數(shù)據(jù)形狀及樣本量是否均衡等因素的影響,無(wú)法自動(dòng)去除噪聲,并且僅能由用戶設(shè)置類(lèi)的個(gè)數(shù)。在設(shè)置聚類(lèi)類(lèi)別為2類(lèi)或3類(lèi)時(shí),均無(wú)法精準(zhǔn)地區(qū)分瀝青路面與路面裂縫。而SFO-DPC算法能夠自動(dòng)識(shí)別類(lèi)別數(shù)目并能夠自動(dòng)識(shí)別噪聲,同時(shí)其聚類(lèi)處理不被樣本分布特征干擾。 圖11 三維裂縫檢測(cè)結(jié)果對(duì)比 表2為K-Means、SFO-DPC以及經(jīng)過(guò)形態(tài)學(xué)處理的最終檢測(cè)的精確度(P)、召回率(R)和F-measure。表中數(shù)據(jù)表明:K-Means的識(shí)別結(jié)果不理想。而SFO-DPC的精確度、召回率和F-measure值最高。 表2 裂縫檢測(cè)結(jié)果 設(shè)計(jì)了采用SFO-DPC方法的路面裂縫識(shí)別方法。采用雙目攝像機(jī)采集瀝青路面數(shù)據(jù),保證了采集數(shù)據(jù)的準(zhǔn)確性和低噪聲性。提出的FOA-DPC算法有效地解決了基于經(jīng)驗(yàn)值確定截止距離所帶來(lái)的不穩(wěn)定性因素,并利用果蠅優(yōu)化算法獲得最優(yōu)參數(shù)。通過(guò)自適應(yīng)選擇中心樣本,有效地避免了人工選擇中心樣本的不穩(wěn)定性。最后,基于該算法的瀝青路面三維檢測(cè)可以根據(jù)三維數(shù)據(jù)的高程值和空間分布特征有效地識(shí)別路面裂縫。該算法在精確度、召回率和F值均優(yōu)于K-Means算法。利用路面三維數(shù)據(jù)的高精度來(lái)識(shí)別裂縫,避免了二維識(shí)別方法受道路標(biāo)記、光影、污漬等噪聲干擾的問(wèn)題。在后續(xù)的研究中,將對(duì)SFO-DPC算法的二維檢測(cè)效果進(jìn)行試驗(yàn),并將對(duì)比同一聚類(lèi)方法對(duì)2D和3D數(shù)據(jù)的有效性。3.3 基于SFO-DPC的三維瀝青路面裂縫檢測(cè)
4 裂縫檢測(cè)結(jié)果評(píng)價(jià)與分析
5 結(jié)論