?

采用深度卷積神經網絡的路面破損智能識別

2022-07-13 07:29陳嘉季雪戴伊蔣子平闕云
關鍵詞:改進型網絡結構準確率

陳嘉,季雪,戴伊,蔣子平,闕云

(1. 福州大學計算機與大數據學院, 福建 福州 350108; 2. 福州大學土木工程學院, 福建 福州 350108)

0 引言

路面病害的人工識別時,存在一定肉眼識別容易受個人主觀性影響,不能客觀評價路面的真實情況. 為解決人工檢測方法局限性,基于圖像處理檢測方案,如路面病害區域邊緣檢測與分割[1-2]和利用小波變換進行裂縫識別[3]等相繼被提出,并通過特征提取來借助計算機實現路面病害的自動識別[4]. 這種方法雖可以大量減少人工檢測中耗時、耗力、工作量大等問題,但在圖像分割中不可避免會產生各種噪音,且由于環境變換差異,在提取特征過程中會受到各種因素干擾[5-7], 導致病害識別率較低,產生路面檢測效果不佳的問題.

針對上述兩種方法的不足, 以及隨著深度學習技術及硬件設施的快速發展,基于卷積神經網絡(convolutional neural network, CNN)的檢測方法被廣泛應用于圖像識別領域[8-9]. CNN是一種神經網絡結構,最早由Lecun等[10-11]引用到手寫數字識別. 其優勢在于無需進行繁瑣的預處理和人為提取特征過程. 專家學者將卷積神經網絡與路面病害識別相結合,取得了較好的效果[12-15]. 然而,深度學習算法在泛化能力、訓練時間等方面仍存在不足[16-18].

現有檢測技術或多或少受到光照、陰影、障礙物及訓練速度等影響,如何做到更有效、快速、準確地識別路面病害,為道路養護部門提供高效的檢測工具仍是一個難題. 通過研究卷積神經網絡深度對圖像識別效果的影響作用,Simonyan等[19]得到VGG(visual geometry group)系列結構. VGG網絡建立于最基礎的卷積和池化單元之上,它所采用的卷積核及池化核均為小核,使得在訓練過程中既能減少網絡參數量、又能對輸入信息做更有效的處理. 隨著該網絡的提出及其在圖像識別準確率方面的優勢,它被應用于植物葉片病害檢測、車輛識別、圖像識別等領域. 但目前少有直接以路面裂縫圖片作為輸入樣本檢測其破損類型的研究.

基于此,為測試VGG網絡對多類別且結構復雜的裂縫識別準確率,采用智能相機,在福州市建平路等幾個區段內進行路面病害拍攝,獲取600張病害樣本. 直接將病害圖片作為VGG網絡結構的輸入樣本,并與基于支持向量機的傳統機器學習算法進行對比試驗,比較兩種算法對病害識別的差異性. 進一步對VGG網絡結構進行改進,得到改進型VGG模型,并與改進前模型進行比較,從而選擇最優網絡結構. 通過試驗,研究3種網絡結構對瀝青路面病害識別的精度,以便為道路維護提供數據支撐及有力幫助.

1 試驗樣本獲取

1.1 樣本采集及處理

為確保樣本背景多樣性,采用智能相機,分別在福州市建平路等地進行路面病害圖像收集; 為防止光照不均、場地周邊環境如陰影等因素的影響,該數據在不同時刻、不同路段進行拍攝.

通過一段時間的圖片拍攝,將因拍攝問題或人為因素造成的不完整圖片篩選后,共收集到600張病害圖片,由于所獲取的圖片大小不一,將圖片大小裁剪成150 px×150 px,對其進行均一化處理,通過人工分為5類. 每種類別圖片均有120張.

1.2 樣本類別

本試驗研究對象為常見的5種瀝青路面病害,分別為橫向裂縫、縱向裂縫、松散、龜裂、坑槽.

1.3 數據集建立與模型工作流程

將總樣本數據中的90%作為訓練集,用于模型訓練,余下10%作為測試集,獲得模型對路面病害判斷的準確率. 本實驗將600張總樣本數據分為訓練集與測試集,其中訓練集有540張病害圖片,測試集有60張病害圖片. 將訓練樣本中的原始病害圖片直接作為訓練網絡的輸入,在網絡中對其進行特征提取、反復訓練、學習、使網絡獲得各類圖片信息. 再把60張待檢測的圖片輸入到已設置相應參數且訓練好的模型中,最終獲取對五類病害的識別結果.

2 基于三種模型的路面病害識別試驗

2.1 基于傳統機器學習的路面病害識別

1) 支持向量機. 支持向量機(support vector machine,SVM)是一種具有分類思想的算法,能較好地解決小樣本、非線性、高緯度和局部績效點等時機問題. 其核心思想是使用盡可能少的樣本獲得最好的結果.

2) 核函數選擇. 本試驗選用間接法中一對多分類方法[20], 測試方法采用十折交叉驗證法, 通過對徑向基(RBF)核函數、多項式核函數、Sigmoid核函數3種核函數進行試驗對比,選擇最佳核函數. 表1為不同核函數對5種類型病害識別結果.

通過3種不同核函數對比試驗,徑向基核函數把復雜的多維問題轉化為簡單的一維問題,它靈活性高、擬合及預測精度良好,更適用于本試驗研究. 最終本文試驗采用徑向基核函數和一對多的分類方法.

表1 不同核函數的識別結果

2.2 基于VGG網絡的路面病害識別

2.2.1VGG卷積神經網絡

VGG全部采用3×3的小卷積核,小卷積核的堆疊可代替大卷積核,既可以有效減少計算量又能提高正則作用和分類精度. VGG網絡所用池化核尺寸均為2×2,步長為2的最大池化操作,小池化中的“小”是相對于AlexNet中3×3池化核而言的. 小核帶來更細節的信息捕捉.

2.2.2VGG模型構建

VGG網絡結構有3個卷積層,3個池化層,一個全連接層. 其中,卷積核大小均采用3×3,池化操作時采用最大池化,其大小為2×2,同時進行了避免過擬合的Dropout技術.

試驗過程中,輸入的裂縫圖像大小為150 px×150 px×3 px. 第一層卷積層采用3×3,深度為32,步長為1的卷積核去過濾,這個卷積層的參數個數為3×3×3×32+32=896個. 選用非全0填充,得到32×148×148的輸出. 再以此輸出作為下層池化層的輸入. 該層選用步長為2的最大池化操作,全0填充. 得到32×74×74的輸出. 第三層為卷積層,本層輸入大小為32×74×74,非全0填充,步長為1,卷積層參數個數為3×3×32×32+32=9 248個,得到32×72×72的輸出. 第四層為池化層,輸入大小為32×72×72,步長為2,全0填充. 輸出大小為32個36×36. 第五層為卷積層. 采用64個3×3,步長為1的卷積核過濾,參數個數為3×3×32×64+64=18 496個,不選用全0填充. 得到64個34×34的輸出. 第六層為池化層,步長為2,全0填充,得到64×17×17的輸出. 最后一層為全連接層,在該層中采Dropout技術,減少過擬合,加快模型訓練速度. 輸出層選用Softmax分類器預測輸出類別.

2.2.3激活函數的選取

激活函數的作用是:引入非線性,提高模型的表達力,使模型具有更好的區分度. 常用激活函數有:ReLU激活、Sigmoid激活函數、Tanh激活函數. 本文模型選用ReLU函數,它屬于非飽和的非線性函數,可以使一部分的神經元輸出為0,實現網絡的稀疏性. 并能減輕參數之間的相互依賴關系,緩解過擬合問題[21].

ReLU函數表達式[22]為:

(1)

在前項傳播中用ReLU函數作激活函數計算單位矩陣中第t個節點的計算公式[23]為:

(2)

2.2.4分類器

在結構最后的輸出層采用分類器基于特征映射對輸入數據進行分類,在CNN中常用的分類器為Softmax,其主要功能即為預測其輸入的類別. Softmax常用函數[24]為:

(3)

式中:θ為待求的參數向量;K為類別總數;P(i)表示類別為k類的概率;x為輸入數據.通過Softmax函數可以使P(i)的范圍在[0, 1]之間.在對輸入數據進行分類時,Softmax所遵循的過程[24]為:

(4)

分類結果[25]為:

(5)

式中:1·{}為示性函數. 輸入值為i={1, 2, …,m},輸出標簽為j={1, 2, …,k},上式表示將輸入值分為第k類的概率,進而對代價函數進行求導,通過最小代價化函數,實現裂縫的分類.

2.3 基于改進型VGG網絡的路面病害識別

2.3.1改進型VGG網絡的確定

隨著病害類型增多,復雜度不同,VGG網絡結構存在識別效果下降,泛化能力需進一步加強的問題. 對卷積核深度及批處理量兩種對裂縫圖片局部信息獲取,以及對訓練收斂程度產生影響的因素進行對比試驗,最終確定了改進型VGG網絡結構.

在神經網絡中,影響網絡模型識別率和性能的主要因素有卷積核大小、權值衰減、丟棄率、批處理量等. 通過對最后一層卷積層卷積核深度和訓練批處理量的改進,利用卷積核在不同位置進行掃描獲取局部信息的特點及批處理量對訓練收斂程度的影響來改進VGG網絡結構,使算法能夠得到全局最優精度. 表2為迭代1 000次后,不同卷積核深度與批處理量的訓練結果.

表2 卷積核深度分別為32、64和128的不同批處理量的訓練結果

從表2分析可知:對于相同批處理量,隨著卷積深度由32到64到128不斷加深,識別準確率也在增加,如批處理量為32時,隨著卷積深度的增加,最高準確率由95.60%升至98.99%,增加了3.39%. 損失函數由0.130 2收斂至0.038 8,平均準確率增加了5.45%. 訓練所耗時間由250 s略增至281 s. 故將網絡結構中最后一層卷積深度確定為128. 當批處理量分別為32、64、128時,網絡的最高識別精度達到了98.99%、99.29%、99.64%,但訓練所耗時長由原先的281 s變為它的2.1倍、3.6倍.

綜合考慮,選用最后一層卷積深度為128,批大小為32的網絡結構,最終確定了改進型VGG網絡結構. 它與傳統VGG結構不同在于,在第三次特征提取中,批處理量不變,而將卷積層中卷積核的深度大小為前者的兩倍. 表3為兩種VGG結構的差異.

表3 兩種VGG結構的差異

2.3.2改進型VGG模型構建

在改進型VGG網絡結構中,整個結構的卷積層及池化層層數不變,在第五層卷積層中調整卷積核個數,在該層將卷積核深度由64增至128,提取更深層次的圖像特征.

第五層輸入裂縫圖像大小為32 px×36 px×36 px,此時卷積核深度由64轉變為128,輸入特征圖需經過128個3×3的卷積核過濾,步長為1,采用非全0填充,得到128個34×34的輸出. 本層的參數個數為3×3×32×128+128=36 992. 第六層為池化層,采用步長為2,全0填充的最大池化操作,輸出大小為128 px×17 px×17 px. 最后一層為全連接層,在該層采用參數設置為0.5的Dropout技術. 輸出層選用Softmax分類器,得到5種分類結果.

3 試驗結果對比分析

3.1 病害識別效果分析

表4為基于支持向量機與VGG網絡結構、改進型VGG網絡結構的試驗結果對比. 由表4可見,相比于SVM,VGG對橫向裂縫、縱向裂縫的識別精度提升了22.81%、22.50%,對龜裂、松散、坑槽的識別精度也提高了22.93%、21.61%、47.08%. 通過對比試驗在網絡結構作出改進的方法是可行有效的. 改進型VGG網絡結構對5種病害的識別精度均優于改進前,它具有更強的泛化能力,也表明利用卷積核深度的特點,能掃描獲取更為全面的局部信息,達到更好識別路面病害特征的目的.

表4 SVM、VGG和改進型VGG的路面病害識別精度對比

圖1為VGG與改進型VGG迭代100、1 000次的準確率與損失率變化曲線圖.

圖1 模型迭代100次和1 000次的準確率與損失率Fig.1 Accuracy and loss function of the model for 100 and 1 000 iterations

對于VGG, 在前100次迭代過程波動明顯,之后對病害識別的準確率緩慢提升; 而在迭代100次之后,準確率達到73.96%; 隨著迭代次數的增加,其識別效果顯著增強,損失率急劇收斂; 識別準確率在迭代次數達到600后逐漸趨于平穩,最終達到97.63%. 對于改進型VGG,迭代10次之后,損失函數便快速收斂而對圖片識別的準確率也在平穩上升; 在前100次迭代過程中,即使系統采用每30個樣本作一次迭代,樣本個體的差異性較大,改進型網絡也能較好的識別病害類型; 在迭代100次之后,隨著迭代次數的增加,對樣本信息的獲取越來越全面,改進后的網絡泛化性能突顯,其識別效果顯著增強; 在迭代1 000次完成后,識別精度達到98.99%. 同時,損失率急劇收斂,最終收斂至0.03左右. 對比兩結構可知:在迭代30次之前,由于樣本差異較大,兩種結構的識別效果區分不大,而在迭代100次之后,兩者的效果逐漸分明. 如圖1(b),在經過200次迭代之后,隨著網絡對個體信息的獲取越全面,改進后的網絡識別精度明顯優于未改進的,損失函數更為收斂,經過1 000次迭代后,改進后的結構對5種路面病害的識別準確率, 較未改進的97.63%提升了1.36%的精度,損失率也由原先的6.91%收斂至3.88%,模型每步用時為278 ms,相比于未改進的每步用時258 ms略有增加.

3.2 模型評估分析分析

絕大多數機器學習模型的典型指標為精確度(precision,記作P)和召回率(recall,記作R). 精確度又稱查準率,召回率又稱查全率,F1值(P和R的加權調和平均值)可均衡兩個指標,具體計算形式為:

(6)

圖2 3種模型評估試驗結果Fig.2 Evaluate experimental results of the three models

圖2為SVM、VGG和改進型VGG3種模型評估試驗結果. 由圖2可見,VGG模型在路面破損識別工作中的識別效果比SVM模型更優. 在同等試驗環境、同等數據、同比例的前提下,VGG模型的精確度、召回率、F1值都遠優于SVM模型,表明VGG深度學習算法明顯優于傳統機器學習算法,其泛化能力更強,具有較好的魯棒性. 同時在VGG模型中增加相應的卷積深度后,可獲得更為全面的局部特征信息,提高模型在識別分類下的精確度、召回率、F1值,說明改進型VGG模型在路面識別中存在一定優勢. 對道路路面破損進行檢測時可獲得更為精確的結果,能夠為路面維護工作提供更準確的數據支撐.

4 結語

卷積神經網絡可以直接將拍攝獲取的瀝青路面病害樣本數據集作為輸入而不需要進行復雜的預處理. 由于其小卷積、小池化的特點,對路面病害檢測效果明顯優于基于支持向量機等傳統機器學習算法. VGG對5種病害識別準確率為97.63%,對復雜病害龜裂和坑槽識別準確率分別達到95.33%,97.08%. 利用卷積核深度特點進行改進的VGG網絡結構,對路面病害判別的準確率相比改進前提高了1.36%,其識別效果更佳,泛化能力更強,但模型用時略有增加. 可見,VGG網絡具有較好的病害識別效果,同時也提升了路面檢測可行性.

如何快速、實時地檢測出裂縫的特征信息及位置,是今后研究的方向. 本文對幾種病害做了識別研究,然而瀝青路面破損類型多樣,其破損的嚴重程度不一,如龜裂就分為輕度、中度、高度. 在今后的研究中可以往同一種裂縫類型,根據其破損的裂縫寬度、深度及尺寸大小來識別其嚴重等級,以期為路面養護工作提供更為全面、精確、有效的數據支撐.

猜你喜歡
改進型網絡結構準確率
Cr5改進型支承輥探傷無底波原因分析
改進型自抗擾四旋翼無人機控制系統設計與實現
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
頸椎病患者使用X線平片和CT影像診斷的臨床準確率比照觀察
快遞網絡結構研究進展
基于AutoML的保護區物種識別①
一種基于單片機的改進型通信開關電源電路設計
俄羅斯賽加MK—107半自動步槍改進型
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合