吳秋怡
(同濟(jì)大學(xué)交通運(yùn)輸工程學(xué)院 上海 201804)
我國(guó)公路建設(shè)飛速發(fā)展,為人民交通出行提供了很大便利,但隨之而來(lái)繁重的養(yǎng)護(hù)任務(wù)又給道路養(yǎng)護(hù)部門帶來(lái)了不小的挑戰(zhàn)。路面在運(yùn)營(yíng)時(shí)間內(nèi)不可避免會(huì)發(fā)生開(kāi)裂,隨著車輛對(duì)路面的反復(fù)摩擦和碾壓,路面的開(kāi)裂會(huì)不斷加深,若一直不加以修復(fù),會(huì)導(dǎo)致道路結(jié)構(gòu)層的破壞[1-2]。因此,對(duì)道路進(jìn)行規(guī)律性的巡檢,及時(shí)發(fā)現(xiàn)路表的開(kāi)裂情況并采取相應(yīng)措施能夠有效延緩路面裂縫的發(fā)展,延長(zhǎng)道路的使用壽命。目前較為常見(jiàn)的道路檢測(cè)工作,多為人工走查。這種檢測(cè)方式不僅效率低,且對(duì)于車流量較大的道路,檢測(cè)人員只能坐在車上去觀察路表狀況,檢測(cè)的準(zhǔn)確性無(wú)法得到保證。
目前較為先進(jìn)的路面檢測(cè)方法為利用道路檢測(cè)車來(lái)進(jìn)行路面數(shù)據(jù)的采集,先進(jìn)的路面自動(dòng)檢測(cè)裝備及其配套技術(shù)可為路面養(yǎng)護(hù)工程維修決策、設(shè)計(jì)與施工提供大量的基礎(chǔ)數(shù)據(jù)支撐[3]。但道路檢測(cè)車往往設(shè)備成本昂貴,對(duì)技術(shù)要求很高?;谝陨显颍门臄z設(shè)備采集路面圖像,再結(jié)合計(jì)算機(jī)視覺(jué)和機(jī)器學(xué)習(xí)技術(shù)對(duì)圖像中的裂縫病害進(jìn)行提取,能夠在兼顧檢測(cè)成本的同時(shí)有效改善傳統(tǒng)檢測(cè)方式費(fèi)時(shí)費(fèi)力、效率低下的狀況。由于路面開(kāi)裂圖片具有裂縫與背景相似度大、裂縫面積小、裂縫形狀不規(guī)則等特點(diǎn),如何通過(guò)相關(guān)技術(shù)提高圖像裂縫識(shí)別的準(zhǔn)確率,提高識(shí)別速度成為了裂縫識(shí)別中的研究重點(diǎn)。
早期借助計(jì)算機(jī)視覺(jué)的圖像識(shí)別方法一般是利用裂縫區(qū)域與完好路面區(qū)域灰度及像素值的差別,通過(guò)閾值分割、邊緣檢測(cè)、種子識(shí)別、紋理分析等手段對(duì)圖片中的裂縫區(qū)域進(jìn)行檢測(cè)。英國(guó)的S.Mathavan,M.Rahman和K.Kamal[4]等利用CCD相機(jī)采集高質(zhì)量的路面裂縫圖像,并將圖像分割成矩形單元,基于無(wú)監(jiān)督算法Kohoene映射對(duì)裂縫圖像的紋理和顏色等屬性進(jìn)行學(xué)習(xí),從而達(dá)到檢測(cè)裂縫的目的。姜吉榮[5]利用數(shù)學(xué)形態(tài)學(xué)結(jié)合進(jìn)行裂縫特征提取,再利用Otsu算法對(duì)裂縫區(qū)域進(jìn)行分割。
近年來(lái),隨著機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)模型由于其模型結(jié)構(gòu)的特點(diǎn),能夠自動(dòng)提取原始圖像的特征并進(jìn)行抽象表達(dá),不需要人為設(shè)計(jì)特征提取器。這為路面裂縫的自動(dòng)化檢測(cè)提供了新途徑,各類深度學(xué)習(xí)模型開(kāi)始應(yīng)用于裂縫識(shí)別領(lǐng)域。Cha等[6]利用圖像處理技術(shù)對(duì)路面圖片進(jìn)行濾波處理,再結(jié)合深度學(xué)習(xí)中CNN(卷積神經(jīng)網(wǎng)絡(luò))檢測(cè)圖片中是否有裂縫存在以及裂縫的種類,證明了CNN應(yīng)用于裂縫分類的準(zhǔn)確性。沙愛(ài)民[7]等將2個(gè)CNN組合在一起,使其先進(jìn)行路表病害的識(shí)別再進(jìn)行病害特征的提取,從而實(shí)現(xiàn)路表病害的識(shí)別與測(cè)量。
裂縫識(shí)別模型的數(shù)據(jù)集采用CRACK500數(shù)據(jù)集[8-9],此數(shù)據(jù)集的來(lái)源是Lei Zhang,Fan Yang等人在天普大學(xué)使用手機(jī)拍攝了500張大小為200×1 500的路面裂縫圖片,并對(duì)裂縫圖片進(jìn)行逐像素地標(biāo)注。為了適配網(wǎng)絡(luò)模型輸入圖像像素要求,且方便模型的訓(xùn)練,每張?jiān)紙D片被裁剪為16個(gè)不重疊的圖像區(qū)域,每張圖片上裂縫區(qū)域均超過(guò)1 000個(gè)像素。CRACK500數(shù)據(jù)集由訓(xùn)練集、驗(yàn)證集和測(cè)試集組成,部分原始訓(xùn)練圖片及標(biāo)簽見(jiàn)圖1,訓(xùn)練圖片與標(biāo)簽圖片名字相同,但訓(xùn)練圖片為jpg格式,標(biāo)簽圖片為png格式。訓(xùn)練集包含了3 792張圖片,驗(yàn)證集包含696張圖片,測(cè)試集包含2 248張圖片,其中一半是原始圖片,一半是標(biāo)簽圖片。CRACK500中的標(biāo)簽圖片對(duì)應(yīng)著原始圖被劃分為2種顏色,背景為黑色,裂縫區(qū)域?yàn)榘咨?/p>
圖1 部分裂縫圖片及圖片標(biāo)簽
根據(jù)模型輸入的要求,需要對(duì)訓(xùn)練集中的原始圖片與標(biāo)簽圖片分離成2個(gè)文件夾,并根據(jù)圖像分割的需求,建立圖像分割的類別字典,指定不同類別在標(biāo)簽圖片中所呈現(xiàn)的像素值,方便模型進(jìn)行圖像的讀取與訓(xùn)練。
在深度學(xué)習(xí)中,為了提高識(shí)別模型的魯棒性,以及防止訓(xùn)練過(guò)程中出現(xiàn)過(guò)擬合現(xiàn)象,通常需要對(duì)訓(xùn)練的數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)操作,以便提高模型的泛化能力。常用的數(shù)據(jù)增強(qiáng)方法有旋轉(zhuǎn)變換、翻轉(zhuǎn)變換、平移變換、對(duì)比度變換等。由于路面實(shí)際拍攝的裂縫圖片具有裂縫方向多變,圖片亮度不高、噪音較多等特點(diǎn),因此本文選取的數(shù)據(jù)增強(qiáng)方法為旋轉(zhuǎn)變換、反轉(zhuǎn)變換、對(duì)比度變換與噪聲擾動(dòng),以使訓(xùn)練集的圖片更加貼合車輛行駛中拍攝的路面圖片特征。
PSPNet是在ResNet的基礎(chǔ)上改進(jìn)的語(yǔ)義分割網(wǎng)絡(luò),其整體架構(gòu)分為2部分,用于提取不同尺度特征的卷積模塊和用于對(duì)局部和全局的特征圖進(jìn)行池化與卷積得到最終預(yù)測(cè)圖的金字塔池化模塊。其中,卷積模塊是通過(guò)使用預(yù)訓(xùn)練的ResNet模型實(shí)現(xiàn)的,它能夠同時(shí)提取包含更多細(xì)節(jié)的底部特征和包含較多語(yǔ)義信息的高層特征,實(shí)現(xiàn)從底層到高層特征的逐步抽象提取,最終輸出特征圖為原圖的1/8大小。金字塔池化模塊使用4層金字塔結(jié)構(gòu)來(lái)收集圖像的上下文信息,每層的池化內(nèi)核分別覆蓋了圖像的全部、一半、小部分和最小尺度,最后將得到的特征圖采用雙線性插值進(jìn)行上采樣,使特征圖縮放到原始特征圖尺寸,接著將不同尺度的特征圖進(jìn)行反卷積,融合為全局先驗(yàn)信息,最后判定每一個(gè)像素的分割類型,得到最終預(yù)測(cè)的分割圖。
在模型訓(xùn)練過(guò)程中,經(jīng)分類器softmax計(jì)算出的loss會(huì)向前傳播,不斷調(diào)整卷積模塊與金字塔池化模塊中的參數(shù)來(lái)達(dá)到loss降低的效果。由于網(wǎng)絡(luò)層數(shù)過(guò)多,為了方便模型快速收斂,選用了Adadelta優(yōu)化算法。在loss的計(jì)算上,由于神經(jīng)網(wǎng)絡(luò)的層數(shù)過(guò)多會(huì)導(dǎo)致離網(wǎng)絡(luò)末端softmax分類器較遠(yuǎn)的層無(wú)法得到充分訓(xùn)練,本網(wǎng)絡(luò)模型借鑒了GoogLeNet Inception V1中輔助分類器的思想,將loss的計(jì)算分為輔助損失和主要損失,輔助損失在卷積模塊后經(jīng)過(guò)卷積,將特征圖恢復(fù)為原始圖片大小,利用softmax分類器計(jì)算損失。主要損失項(xiàng)則是在金字塔池化模塊后,利用最后的分類器softmax計(jì)算總的損失。通過(guò)輔助分類器的引入,能夠避免離最終分類器較遠(yuǎn)的卷積層參數(shù)無(wú)法得到充分訓(xùn)練的問(wèn)題。
最終進(jìn)行路面裂縫識(shí)別的裂縫分割網(wǎng)絡(luò)模型結(jié)構(gòu)見(jiàn)圖2,在網(wǎng)絡(luò)的訓(xùn)練階段先利用ResNet的預(yù)訓(xùn)練模型對(duì)數(shù)據(jù)集中的訓(xùn)練圖片進(jìn)行特征提取。然后將提取的特征一方面輸入金字塔池化模塊進(jìn)行多尺度的全局特征學(xué)習(xí),另一方面反卷積后恢復(fù)原圖尺寸利用softmax輔助分類器計(jì)算輔助loss。最終將學(xué)習(xí)到的全局圖像上下文特征雙線性插值進(jìn)行尺寸縮放后與經(jīng)過(guò)ResNet模型所學(xué)習(xí)到的特征進(jìn)行聯(lián)合,最后反卷積后輸入softmax分類器與原圖進(jìn)行對(duì)比計(jì)算loss。將主分類器所計(jì)算出的loss反向傳播,并利用Adadelta優(yōu)化算法進(jìn)行模型參數(shù)調(diào)整,其中在對(duì)卷積模塊進(jìn)行參數(shù)調(diào)整時(shí),同時(shí)考慮主loss與輔助loss。
圖2 增加了輔助分類器的PSPNet網(wǎng)絡(luò)模型
模型的最終分割效果的評(píng)定采用2個(gè)指標(biāo):分割區(qū)域的IOU及像素分類的準(zhǔn)確度acc。交并比(intersection over union,IOU)是目標(biāo)檢測(cè)中的常用衡量指標(biāo),能夠衡量某個(gè)類別分割的準(zhǔn)確性。對(duì)于某個(gè)類別的IOU而言,其值為模型識(shí)別出的此類別區(qū)域與訓(xùn)練標(biāo)簽中此類別區(qū)域的重疊率,即標(biāo)記區(qū)域和預(yù)測(cè)區(qū)域交集與并集的比值。一般而言,IOU大于0.5即可視作識(shí)別準(zhǔn)確。在像素級(jí)別的圖片分割中,類別區(qū)域的大小用此類別所包含的像素個(gè)數(shù)表述,第i類的IOU計(jì)算方法為
(1)
像素分類的準(zhǔn)確度則是針對(duì)預(yù)測(cè)出的分割圖,逐像素地與訓(xùn)練標(biāo)簽圖進(jìn)行比較,分類正確的像素?cái)?shù)量與圖片總體像素?cái)?shù)量的比值,計(jì)算方法為
(2)
分割網(wǎng)絡(luò)模型的搭建平臺(tái)是深度學(xué)習(xí)TensorFlow框架,在GTX1070GPU上進(jìn)行模型的訓(xùn)練與驗(yàn)證。所有訓(xùn)練與最終的驗(yàn)證初始學(xué)習(xí)率均設(shè)為0.01,衰減系數(shù)0.99,動(dòng)量為0.9。
2.4.1網(wǎng)絡(luò)模型對(duì)分割效果的影響
為了更為全面地對(duì)本文所提出模型的分割效果進(jìn)行評(píng)估,同時(shí)在其他的主流語(yǔ)義分割模型上對(duì)CRACK500的訓(xùn)練集進(jìn)行訓(xùn)練,最后利用測(cè)試集對(duì)模型的分割效果進(jìn)行測(cè)試,評(píng)定指標(biāo)采用像素判斷的準(zhǔn)確率與裂縫區(qū)域的IOU。用來(lái)進(jìn)行對(duì)比的語(yǔ)義分割模型為全卷積網(wǎng)絡(luò)(fully convolutional networks,FCN)與UNet神經(jīng)網(wǎng)絡(luò)。3種語(yǔ)義分割網(wǎng)絡(luò)模型的識(shí)別像素準(zhǔn)確度與3種語(yǔ)義分割網(wǎng)絡(luò)模型的IOU(交并比)分別見(jiàn)圖3、圖4。
圖3 3種語(yǔ)義分割網(wǎng)絡(luò)模型的識(shí)別像素準(zhǔn)確度
圖4 3種語(yǔ)義分割網(wǎng)絡(luò)模型的IOU
由圖3可見(jiàn),3個(gè)模型的分割準(zhǔn)確率均為85%以上。由于對(duì)路面裂縫圖片而言,裂縫區(qū)域所占區(qū)域較小,如果只考慮分割的準(zhǔn)確率會(huì)受到背景區(qū)域的影響,無(wú)法正確評(píng)定,因此還需要綜合考慮裂縫區(qū)域的IOU。而在裂縫區(qū)域的IOU上,一般而言,IOU大于0.5則可以視作識(shí)別成功。從圖4中可以看出,隨著模型的不斷訓(xùn)練迭代,在訓(xùn)練了60次之后,PSPNet已基本能夠成功識(shí)別出裂縫,而UNet與FCN網(wǎng)絡(luò)的識(shí)別效果則不是十分理想。因此,綜合考慮像素準(zhǔn)確度與裂縫區(qū)域的IOU,PSPNet的識(shí)別效果普遍優(yōu)于UNet與FCN語(yǔ)義分割網(wǎng)絡(luò),說(shuō)明在路面裂縫的分割上,PSPNet確實(shí)能夠更好地將裂縫區(qū)域從整張圖片中識(shí)別出來(lái)。
2.4.2網(wǎng)絡(luò)結(jié)構(gòu)對(duì)分割效果的影響
分割模型由卷積模塊與金字塔池化模塊構(gòu)成,本實(shí)驗(yàn)中我們對(duì)卷積模塊的結(jié)構(gòu)進(jìn)行調(diào)整,分別采用ResNet-18、ResNet-50和ResNet-101預(yù)訓(xùn)練模型來(lái)構(gòu)建卷積模塊。3個(gè)預(yù)訓(xùn)練模型之間的差別除了網(wǎng)絡(luò)深度不同,卷積核的選取也不一樣。
ResNet模型的主要思想是利用殘差塊來(lái)解決網(wǎng)絡(luò)層數(shù)的增加導(dǎo)致的反向傳播時(shí)梯度衰減無(wú)法對(duì)靠前的網(wǎng)絡(luò)層的參數(shù)進(jìn)行有效調(diào)整的問(wèn)題。殘差塊能夠?qū)⑤斎胪ㄟ^(guò)shortcut connections(捷徑連接)直接傳到輸出,使模型每一層的學(xué)習(xí)目標(biāo)變成使此層的輸出與輸入保持一致,即殘差接近于0。經(jīng)過(guò)測(cè)試,3種網(wǎng)絡(luò)結(jié)構(gòu)的PSPNet的識(shí)別像素準(zhǔn)確度與3種網(wǎng)絡(luò)結(jié)構(gòu)的PSPNet的IOU(交并比)分別見(jiàn)圖5、圖6。
圖5 3種網(wǎng)絡(luò)結(jié)構(gòu)PSPNet的識(shí)別像素準(zhǔn)確度
圖6 3種網(wǎng)絡(luò)結(jié)構(gòu)PSPNet的IOU
由圖5可見(jiàn),在PSPNet模型的基礎(chǔ)上,改變卷積模塊所選擇的預(yù)訓(xùn)練模型,識(shí)別的準(zhǔn)確率基本都在93%以上。但ResNet-50預(yù)訓(xùn)練模型與ResNet-101預(yù)訓(xùn)練模型均出現(xiàn)了隨著訓(xùn)練輪數(shù)的增加準(zhǔn)確性逐漸下降的現(xiàn)象,這是因?yàn)橛?xùn)練圖片與測(cè)試圖片不同,訓(xùn)練輪數(shù)過(guò)多,模型出現(xiàn)了過(guò)擬合的現(xiàn)象。而對(duì)于裂縫識(shí)別的IOU而言,3種模型的裂縫IOU基本都大于0.4,最大值基本都在0.55左右。
本文針對(duì)依據(jù)路面圖像的裂縫檢測(cè),提出利用金字塔場(chǎng)景解析網(wǎng)絡(luò)PSPNet實(shí)現(xiàn)路面圖片中的裂縫區(qū)域檢測(cè),實(shí)現(xiàn)像素級(jí)的裂縫區(qū)域識(shí)別。通過(guò)對(duì)不同語(yǔ)義分割網(wǎng)絡(luò)模型之間的對(duì)比,不僅證實(shí)了語(yǔ)義分割網(wǎng)絡(luò)模型可用于道路路面裂縫的像素級(jí)識(shí)別,且通過(guò)對(duì)比可發(fā)現(xiàn)不同語(yǔ)義分割模型中,PSPNet對(duì)裂縫的識(shí)別程度較高、魯棒性較強(qiáng),對(duì)實(shí)現(xiàn)路面裂縫像素級(jí)識(shí)別的模型選取有一定的借鑒作用。在對(duì)不同網(wǎng)絡(luò)結(jié)構(gòu)的PSPNet模型進(jìn)行訓(xùn)練后,發(fā)現(xiàn)模型層數(shù)的增加對(duì)識(shí)別準(zhǔn)確度的提高效果并不是特別明顯,反而會(huì)由于訓(xùn)練輪數(shù)過(guò)多,相對(duì)層數(shù)少的模型更快出現(xiàn)了過(guò)擬合現(xiàn)象。同時(shí)本文的訓(xùn)練結(jié)果可作為路面裂縫識(shí)別的預(yù)訓(xùn)練模型,結(jié)合路面實(shí)拍圖片樣本,可針對(duì)不同檢測(cè)路面進(jìn)行下一步更有針對(duì)性的訓(xùn)練。