李永緒 謝政專(zhuān) 唐文娟
摘要:針對(duì)傳統(tǒng)裂縫識(shí)別方法準(zhǔn)確性低、環(huán)境適應(yīng)性差的問(wèn)題,文章提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的瀝青路面裂縫識(shí)別方法,融合了CLAHE與深度學(xué)習(xí)算法。試驗(yàn)結(jié)果表明,該方法能夠更準(zhǔn)確地識(shí)別裂縫,識(shí)別精確率達(dá)到94.9%,且泛化能力良好。
關(guān)鍵詞:瀝青路面;CLAHE算法;卷積神經(jīng)網(wǎng)絡(luò);裂縫識(shí)別
0 引言
瀝青路面是現(xiàn)行鋪筑面積最多的一種高級(jí)路面,裂縫是其常見(jiàn)的路面病害之一。裂縫若不及時(shí)精準(zhǔn)識(shí)別并修復(fù),將會(huì)衍生出其他更為嚴(yán)重的次生病害,進(jìn)而引發(fā)安全事故。如雨水滲入裂縫可能腐蝕路基,在車(chē)輛荷載的反復(fù)作用下,會(huì)導(dǎo)致裂縫加寬加深甚至路面塌陷,降低道路的使用壽命,危害行車(chē)安全。因此,研究如何進(jìn)行快速、準(zhǔn)確地檢測(cè)裂縫是路面養(yǎng)護(hù)工作中最為重要的任務(wù)之一。
目前路面裂縫識(shí)別仍以人工巡查為主,效率低、存在安全隱患且結(jié)果易受主觀影響?,F(xiàn)行主流的路面裂縫識(shí)別算法有閾值分割[1]和邊緣檢測(cè)方法[2],這兩類(lèi)算法均基于圖像處理技術(shù),需要手工提取特征,同時(shí)對(duì)噪聲敏感,存在檢測(cè)速度慢、準(zhǔn)確度不高并且性能不穩(wěn)定的缺陷。
鑒于以上原因,本文結(jié)合瀝青路面自身復(fù)雜、噪點(diǎn)多、裂縫分布無(wú)規(guī)律等特點(diǎn),提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的瀝青路面裂縫識(shí)別方法,融合了CLAHE與深度學(xué)習(xí)算法。該方法在試驗(yàn)過(guò)程中取得了優(yōu)良的效果,是一種可行性較高的方法,可以提高管養(yǎng)效率。
1 關(guān)鍵技術(shù)
1.1 卷積神經(jīng)網(wǎng)絡(luò)
卷積神經(jīng)網(wǎng)絡(luò)(CNN)表達(dá)能力強(qiáng),由卷積層、池化層及全連接層疊加組成,層與層之間采用權(quán)值共享及局部連接方式。卷積層和池化層在上一層輸出的結(jié)果上進(jìn)行下一輪計(jì)算,通過(guò)多層卷積和池化,逐漸抽象出高階特征,在擬合復(fù)雜特征方面有突出優(yōu)勢(shì),是近幾年深度學(xué)習(xí)在機(jī)器視覺(jué)領(lǐng)域取得突破性進(jìn)展的基石。
激活函數(shù)有Relu、Sigmoid等函數(shù),經(jīng)過(guò)卷積操作會(huì)輸出一定數(shù)量的新特征圖。
輸出的新特征圖進(jìn)入到池化層進(jìn)行池化操作,促使縮小特征圖,減小特征參數(shù),簡(jiǎn)化計(jì)算復(fù)雜度,同時(shí)由于池化操作對(duì)局部位置不敏感,因此進(jìn)一步為網(wǎng)絡(luò)引入了不變性。
1.2 CLAHE圖像增強(qiáng)算法
瀝青路面裂縫具有灰度值低、細(xì)長(zhǎng)、分布無(wú)規(guī)律的特點(diǎn)。此外,受限于天氣因素和采集圖像時(shí)間,圖片通常表現(xiàn)為亮度不均且噪點(diǎn)多。因此,本文采用CLAHE[3]圖像增強(qiáng)算法突出裂縫部分。實(shí)現(xiàn)步驟如下:
(7)移動(dòng)至相鄰像素,重復(fù)上述過(guò)程,直至處理完整張圖片。
本文在不同參數(shù)下對(duì)原圖增強(qiáng)并進(jìn)行分析,以確定最佳參數(shù)。經(jīng)過(guò)比較發(fā)現(xiàn),當(dāng)m=8、剪切閾值clipL=2時(shí)增強(qiáng)效果最好。因此,本文取m=8,剪切閾值clipL=2。圖像增強(qiáng)前后對(duì)比如圖1所示。由圖1可知,圖片經(jīng)CLAHE算法處理后,避免了相鄰灰度對(duì)比度相差過(guò)大,整個(gè)畫(huà)面更為清晰,對(duì)比度和亮度得以提升,裂縫細(xì)節(jié)也更加突出。
2 方法
2.1 基于CNN的瀝青路面識(shí)別流程框架
基于CNN對(duì)瀝青路面裂縫識(shí)別包含圖片采集、預(yù)處理、CNN網(wǎng)絡(luò)模型搭建及訓(xùn)練等,其流程見(jiàn)圖2。實(shí)驗(yàn)所用的圖片均在真實(shí)城市瀝青道路用手機(jī)拍攝得到,包含了陰天、陰影、雨天、霧天等多種場(chǎng)景,分辨率為1200×1600,共700張??紤]到采集的圖片數(shù)量較少,并且裂縫在圖像中占比小,很難提取到裂縫的有效特征[4],另因圖片裁剪過(guò)小,給標(biāo)注帶來(lái)困難,故本文使用預(yù)處理圖像裁剪成像素為100×100的圖片,共15000張,并打上標(biāo)簽。使用keras框架搭建CNN網(wǎng)絡(luò)模型,訓(xùn)練過(guò)程采用隨機(jī)梯度下降。
2.2 基于卷積神經(jīng)網(wǎng)絡(luò)瀝青路面裂縫識(shí)別模型
針對(duì)交通環(huán)境下瀝青路面裂縫的特殊性,從多方面對(duì)模型結(jié)構(gòu)和超參數(shù)進(jìn)行優(yōu)化調(diào)整,最終完成了瀝青路面裂縫分類(lèi)器的構(gòu)建。如圖3所示,包含了4個(gè)卷積神經(jīng)網(wǎng)絡(luò)(C1~C4),4個(gè)池化層(P1~P4),4個(gè)歸一化層(B1~B4),1個(gè)全連接層(F1),1個(gè)Dropout層。另外,在卷積層后均使用了Relu激活函數(shù)。
(1)輸入層。本文將瀝青路面圖片作為輸入,大小為100×100,通道為1。
(2)卷積層。特征圖在卷積操作后,形成包含更高級(jí)更多抽象信息的新特征圖。C1~C4的卷積核數(shù)量分別為(32,64,64,128),對(duì)應(yīng)的卷積核尺寸依次為5×5,5×5,3×3,3×3。C1~C2層使用較大的卷積核,一方面有利于提取圖像中裂縫的結(jié)構(gòu)信息,另一方面有利于忽略與裂縫結(jié)構(gòu)無(wú)關(guān)的其他噪聲信息。
(3)池化層。新特征圖經(jīng)過(guò)池化層能減小特征參數(shù),減輕網(wǎng)絡(luò)模型過(guò)擬合現(xiàn)象。本文使用最大池化方式,池化大小為2×2,步長(zhǎng)為1。
(4)歸一化層。對(duì)特征圖局部進(jìn)行歸一化,能進(jìn)一步矯正亮度不均,提取高階統(tǒng)計(jì)信息。因此,本文卷積層之后均添加了歸一化層。
(5)Dropout層。Dropout層的加入,使網(wǎng)絡(luò)在訓(xùn)練過(guò)程中隨機(jī)丟棄隱藏層的節(jié)點(diǎn),輸出結(jié)果不過(guò)度依賴(lài)任一節(jié)點(diǎn),起到正則化的作用,這種方式能有效防止網(wǎng)絡(luò)過(guò)擬合。因此,在全連層F1之后添加了Dropout層。Dropout取值為0.55。
(6)輸出層。通過(guò)Sigmoid回歸算法將輸出特征值映射到0~1之間,對(duì)應(yīng)相應(yīng)類(lèi)別的條件概率。在Sigmoid回歸函數(shù)中y=i的概率為:
3 試驗(yàn)結(jié)果分析
本文的算法基于深度學(xué)習(xí)開(kāi)源框架keras,使用python語(yǔ)言開(kāi)發(fā),依賴(lài)模塊主要有CV2、Skimage、Matlpotlib等,訓(xùn)練和測(cè)試階段使用的主要硬件設(shè)備為NIVIDIA公司的TitanXPascalGPU服務(wù)器,顯存為8G。
3.1 評(píng)價(jià)指標(biāo)
本文使用三個(gè)指標(biāo)評(píng)估所提出的方法:準(zhǔn)確率(P)、召回率(P)和F1值。其中準(zhǔn)確率(P)描述準(zhǔn)確檢測(cè)出的裂縫圖片占被檢測(cè)出來(lái)的像素的比例;召回率(R)描述正確被檢測(cè)出的裂縫圖片占總裂縫圖片的比例;而F1則能綜合判斷識(shí)別效果。三者的計(jì)算公式分別為:
3.2 試驗(yàn)結(jié)果對(duì)比與分析
為驗(yàn)證本文所提方法的有效性和可行性,設(shè)計(jì)了2組對(duì)比試驗(yàn)。具體試驗(yàn)分析如下:
試驗(yàn)1:用于測(cè)試CLAHE算法對(duì)于本文所提模型準(zhǔn)確率的影響。首先,將裁剪成100×100像素大小并標(biāo)注好的5000張圖片組成數(shù)據(jù)集A,用于測(cè)試,其余10000圖片組成集合B,并按8∶2的比例構(gòu)建訓(xùn)練集、驗(yàn)證集訓(xùn)練本文模型。然后使用CLAHE算法處理集合B中的訓(xùn)練集、驗(yàn)證集,共同構(gòu)成數(shù)據(jù)集C,用來(lái)訓(xùn)練本文模型。最后隨機(jī)從集合A中選取1000張圖片測(cè)試訓(xùn)練好的模型。測(cè)試的結(jié)果如表1所示。由此可以看出,利用CLAHE算法處理后的數(shù)據(jù)訓(xùn)練模型顯著提升了裂縫識(shí)別效果,能保持較高的準(zhǔn)確率和召回率,而原始圖片訓(xùn)練的網(wǎng)絡(luò)識(shí)別準(zhǔn)確率低。這主要是由于CLAHE算法提升了圖像的質(zhì)量,突出了裂縫部分,有利于提取裂縫的參數(shù)信息,并減弱了影響識(shí)別的干擾因素。
試驗(yàn)2:用于對(duì)比經(jīng)典Alex[5]網(wǎng)絡(luò)模型和本文模型對(duì)瀝青路面裂縫最終檢測(cè)結(jié)果的影響。首先,使用實(shí)驗(yàn)1中集合C的數(shù)據(jù)集訓(xùn)練Alex網(wǎng)絡(luò)模型,接著使用滑窗方式將新采集的圖片分成像素為100×100小圖片,最后依次輸入到訓(xùn)練好的Alex網(wǎng)絡(luò)和本文模型,識(shí)別為裂縫則用黑框框出來(lái)。檢測(cè)結(jié)果如圖4所示。由實(shí)驗(yàn)結(jié)果可知,基于本文模型的瀝青路面裂縫檢測(cè)結(jié)果非常逼近裂縫真實(shí)的區(qū)域,魯棒性好,對(duì)干擾噪聲的排除能力更強(qiáng);而直接使用Alex模型將干擾信息誤認(rèn)為裂縫,準(zhǔn)確率較低。一方面是因?yàn)榻?jīng)典Alex網(wǎng)絡(luò)模型專(zhuān)門(mén)針對(duì)像素為227×227圖像的識(shí)別模型,其識(shí)別性能的優(yōu)越性建立在大量訓(xùn)練樣本的基礎(chǔ)上,卷積層的卷積核個(gè)數(shù)非常多(依次為96,256,384,384,256),全連接層數(shù)量均為4096,而本文訓(xùn)練圖片數(shù)量相對(duì)較少,Alex網(wǎng)絡(luò)過(guò)度擬合了裂縫特征,把干擾誤認(rèn)為裂縫;另一方面本文建立的模型,針對(duì)輸入圖像尺寸,只使用4個(gè)卷積層,并優(yōu)化了各卷積核的數(shù)量及大小,以減小整個(gè)網(wǎng)絡(luò)的寬度,卷積層后均使用池化層減小參數(shù)量,除此之外,還使用了更多歸一化層減輕網(wǎng)絡(luò)過(guò)擬合現(xiàn)象。因此,相比而言,本文模型具有更好的泛化能力,更適合瀝青路面裂縫識(shí)別。
4 結(jié)語(yǔ)
本文提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的瀝青路面裂縫識(shí)別方法,融合了CLAHE與深度學(xué)習(xí)算法,其中CLAHE算法增強(qiáng)了裂縫細(xì)節(jié)信息,為后續(xù)提取特征提供了基礎(chǔ)?;贑NN構(gòu)建的模型,結(jié)合瀝青路面裂縫自身特點(diǎn),提取到了全面且具有辨別性的特征,具有良好的泛化能力。本文方法在多種場(chǎng)景能有效識(shí)別裂縫,對(duì)實(shí)現(xiàn)智慧化路面養(yǎng)護(hù)具有重要意義。
參考文獻(xiàn):
[1]褚文濤,李鄭明,陸 鍵.路面病害檢測(cè)中的裂縫信息快速識(shí)別方法研究[J].中外公路,2013,33(6):80-84.
[HJ]
[2]ZhangA,LiQ,WangKCP,etal.Matchedfilteringalgorithmforpavementcrackingdetection[J].Transportationresearchrecord,2013,2367(1):30-42.
[3]ZuiderveldK.Contrastlimitedadaptivehistogramequalization[C].GraphicsgemsIV.AcademicPressProfessional,Inc.,1994.
[4]英 紅,丁海明,侯新月,等.基于BP神經(jīng)網(wǎng)絡(luò)的瀝青路面裂縫識(shí)別方法研究[J].河南理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2018,37(4):105-111.
[5]KrizhevskyA,SutskeverI,HintonGE.Imagenetclassificationwithdeepconvolutionalneuralnetworks[C].Advancesinneuralinformationprocessingsystems,2012.