胡德輝
(佛山市公路橋梁工程監(jiān)測站有限公司,廣東 佛山 528000)
基于深度學習的橋梁裂縫檢測技術需要使深度卷積神經網絡能夠識別出橋梁裂縫圖像中屬于裂縫的目標區(qū)域并將其在圖片上標注出來。但是由于橋梁裂縫的無規(guī)則性和連續(xù)性,當前基于深度學習的目標檢測模型候選框選取策略不適用于橋梁裂縫檢測任務,直接應用時會存在嚴重的誤檢和漏檢現(xiàn)象,故通過對橋梁裂縫的線性特征和基于深度學習的圖像識別與目標檢測的工作原理進行研究,設計適用于橋梁裂縫檢測的深度學習檢測方法。
AlexNet模型是基于深度學習的圖像識別模型,識別準確率遠超使用傳統(tǒng)圖像識別算法的模型,該模型相對傳統(tǒng)模型在結構上進行了改進與調整。該模型將ReLU激活函數(shù)引入到卷積神經網絡中,同時驗證了ReLU激活函數(shù)度模型梯度消失問題的緩解效果;在GPU上進行卷積神經網絡的訓練,大幅度縮短了訓練時長;在訓練過程中隨機拋棄部分神經元,有效提高模型訓練效率,抑制模型過擬合;針對小樣本數(shù)據(jù)集使用數(shù)據(jù)增強方法,如圖像旋轉、圖像加噪等,緩解模型的過擬合問題;增大響應大的值與反饋小的值之間差距,增加模型的泛化性能。AlexNet相對最原始的卷積神經網絡LeNet在性能方面有所提升,但模型參數(shù)量極為龐大,存儲成本較高[1]。
VGGNet模型在圖像識別任務中的識別準確率高達92.7%,主要包括VGG16和VGG19兩種卷積神經網絡模型。其中,VGG16模型包括3層全連接層與13層卷積層,神經網絡層次共計16層,故將其命名為VGG16。VGG16模型刪除了AlexNet中11×11,7×7,5×5尺寸的卷積核,全部使用3×3的小尺寸卷積核進行代替。在相同感受野的情況下,使用小尺寸卷積核層數(shù)更深,對圖像特征提取的更完全,模型參數(shù)量也顯著降低。
隨著網絡的加深,VGGNet模型的精確性會有所提升,但在達到飽和后,模型的精確度會迅速下降,并且這種退化并不是由過擬合造成的。某淺層模型輸入為x,輸出目標值為F(x),在深度持續(xù)增加的過程中,因淺層模型用于傳遞而非運算,因此誤差不會變化。ResNet模型的基本單元殘差塊便是根據(jù)這一原理構建的,一個殘差塊有兩條路徑F(x)和x,F(x)為擬合路徑操作流程與傳統(tǒng)卷積過程一致,x為恒等映射,在輸入激活函數(shù)之前兩者要進行與運算。
圖像識別模型能夠識別整幅圖像的類別,難以對圖像內部進行目標識別定位,目標檢測模型則具備相應功能。目標檢測模型根據(jù)其檢測階段數(shù)的不同可以分為單階段目標檢測模型和兩階段目標檢測模型,重點研究這兩類目標檢測算法中較先進的檢測算法FasterRCNN與YOLOv4的工作原理[2]。
圖像輸入后,該模型借助卷積神經網絡獲取特征圖;然后,利用RPN來生成候選框,在特征圖中投影候選框以此拉生成特征矩陣;基于ROIpooling層將各特征矩陣縮放到特征圖(尺寸7×7),展平特征圖后利用全連接層獲取預測結果。
YOLOv4是在YOLOv3的基礎上提出的,其檢測準確率更高,檢測速度更快。YOLOv4網絡結構主要分為了輸入層、骨干網絡、頸部以及頭部這4部分,其中輸入層,主要負責輸入待檢測的特征圖像,骨干網絡為CSPDarknet結構主要負責特征提取工作,頸部主要包含了SPPNet和PANet,主要負責對主干網絡提取到的特征信息進行池化下采樣以及特征融合操作,頭部則為YOLOv4網絡的輸出層,負責對檢測結果進行輸出的作用。當圖像輸入進YOLOv4網絡結構時,網絡首先會把圖像的大小調整為416×416的大小,再將調整后的圖像進行分割,劃分為13×13、26×26以及52×52的網格。當圖像中需要被檢測的特征信息的中心點在某一個網格上時,那么就由這個網格來完成對該特征信息的檢測[3]。
該方法應用過程中,需要重采樣原始圖像,為確保所劃分網格能夠將整幅圖涵蓋在內,需要將原始圖像轉化為正方形。圖像采樣變換后,利用n×n的正方形網格將圖像均勻分割,每個網格的位置定義為Pij,其中i,j為橫縱坐標,借助位置代號對圖像中公路橋梁裂縫的分布進行規(guī)范化管理。最后,在分類模型中輸入格網化處理的圖像,識別并標注裂縫所在網格的位置,實現(xiàn)對裂縫位置的快速檢測[4]。在公路橋梁圖像格網化處理過程中,n的取值不同,最終模型的應用效果也有所不同,為確保所選n值的合理性,可以通過遍歷正整數(shù)區(qū)間的方式進行綜合評估。一般而言,如果n值較小,在定位圖像中裂縫位置時將存在精度不足的問題;如果n值過大,則大幅度增加模型運算量,工作效率將難以滿足用戶需求。因此,建議將n的遍歷正整數(shù)區(qū)間設定為[5,10]。為確定n的最優(yōu)取值,可以應用Sn準確率公式對最優(yōu)取值進行評定,準確率計算公式如下
式中:n為網格行列數(shù),n為正整數(shù)且取值范圍為[5,10],T為模型能準確區(qū)分背景圖像與裂縫圖像的數(shù)量。
在橋梁裂縫檢測之前,工作人員需要對公路橋梁圖像格網化處理,將圖像均勻分割為n×n個正方形網格,并為每個網格定義位置代碼。在此基礎上,將各網格圖像作為輸入量利用深度分類模型進行處理,模型提出圖像特征并在樣本標記空間映射所提取特征,確定背景或裂縫區(qū)域的概率。最終,根據(jù)預先分配的位置信息在原始圖像中標記裂縫位置,實現(xiàn)橋梁裂縫檢測。
(1)數(shù)據(jù)集采集
初始數(shù)據(jù)集是使用的高清照相機在某廣東公路橋梁區(qū)域采集,采集時調整相機鏡頭與橋梁裂縫表面近似平行,保持拍攝高度在30 cm左右,為保證采集到的橋梁裂縫圖片易于被深度學習模型訓練與學習,挑選光照良好且裂縫特征明顯的位置拍攝采集,拍攝存在裂縫區(qū)域的公路橋梁高分辨率照片500張,通過數(shù)據(jù)增強方法擴充數(shù)據(jù)集,最終得到裂縫圖像40 000張作為實驗數(shù)據(jù)集[5]。
(2)評價指標
為精準評估深度分類格網化公路橋梁裂縫檢測模型的應用效果,在模型評價過程中應用的多種指標,分別為模型結構復雜度、模型參數(shù)量、F1得分、召回率R、精確度P。其中,召回率R與精確度P計算公式為
式中:TP為正確樣本正確識別數(shù),FN為正確樣本錯誤識別數(shù),FP為錯誤樣本錯誤識別數(shù)。
F1得分是一種兼顧召回率R與精確度P的指標,其計算公式為
(3)實驗環(huán)境
使用深度學習模型進行裂縫檢測任務時,因算法結構復雜,為方便程序運行需要調用開源的第三方庫,實驗所用的軟硬件環(huán)境配置如表1所示。
表1 軟硬件配置數(shù)據(jù)
(1)圖像分類識別算法模型對比分析
基于深度學習的格網化橋梁裂縫檢測技術主要依靠圖像識別模型對其中分屬不同格網的圖像進行識別來展開的工作,所以圖像識別模型的選擇對于整個檢測過程的實施十分重要,分別對當前具有代表性的圖像識別模型AlexNet,VGG16,ResNet34進行實驗,根據(jù)檢測結果精確度,模型參數(shù)量,結構復雜度對模型性能進行綜合分析,選擇最適用于橋梁裂縫檢測的模型作為格網化橋梁裂縫檢測模型的深度分類模型。
實驗期間,初始學習率設定為0.0002,每批次樣本訓練數(shù)量為32,應用Adam優(yōu)化器,進行50次迭代處理。使用預先準備分類完成的40 000張橋梁裂縫數(shù)據(jù)集,劃分其中75%作為數(shù)據(jù)集,15%作為測試集,分別訓練和測試AlexNet,VGG16,ResNet34t。實驗結果如表2所示。
表2 深度學習圖像分類算法模型對比
由表2可以看出,在精確度方面AlexNet模型的精確度最低,僅為87.1%,VGG16模型在橋梁裂縫圖像識別任務中精度最高,達到了97.6%,在參數(shù)量方面AlexNet的參數(shù)量最小僅為54.64 mB是其中參數(shù)量最大的模型VGG16的1/5,但是AlexNet由于其結構過于簡單對于圖像特征提取不完全導致圖像識別的精確度較低。VGG16模型數(shù)據(jù)結構堆積位置明顯,在對模型進行優(yōu)化時操作簡便,通過輕量化處理改進后可以在保持精確度不變的情況下,大幅減少模型參數(shù)。綜上所述,考慮模型識別精度,參數(shù)量,結構復雜度,建議選擇VGG16模型為基于深度學習的格網化橋梁裂縫檢測中的深度分類模型。
(2)目標檢測模型對比分析
為研究分析所提出基于深度分類的格網化公路橋梁裂縫檢測算法模型的應用效果,選擇將該模型與YOLOv4單階段目標檢測以及FasterRCNN兩階段目標檢測這兩種模型進行對比,從F1得分、模型參數(shù)量、召回率、精確度幾個方面進行綜合評比。在對比研究過程中,選擇應用6 000張?zhí)崆皹俗⑼戤叺哪繕朔诸惻c檢測數(shù)據(jù)集進行實驗測試,數(shù)據(jù)集中的1/4用作測試集,3/4用作數(shù)據(jù)集,對比三種算法模型的幾種指標。模型訓練期間,設定初始學習率為0.000 2,分別進行50次迭代。格網化處理方法應用過程中,隨著n×n網格中n取值的增加,網格分割的精細化程度將進一步增加,但大量劃分網格或減少各網格圖像中裂縫特征量,進而對精度造成影響,而且大量網格也會導致計算量大幅度增加。n取值如果較小,則會影響圖像中裂縫的定位精細化程度,本次實驗選擇n取值為10進行分析,得到數(shù)據(jù)對比結果如表3所示。
表3 橋梁裂縫檢測模型數(shù)據(jù)對比
由表3可知,精確度P和召回率R都遠高于基于深度學習的目標檢測模型,識別精度相較于FasterRCNN高了3.3%,比YOLOv4更是高了25.9%。在召回率方面,M_model的召回率相較于FasterRCNN高了44.1%,相較于YOLOv4高了63.9%。證明了設計的格網化處理方法相比于目標檢測模型的先驗框選取策略更適合應用在橋梁裂縫檢測任務中,為更客觀的評價設計模型,應用F1得分指標對模型效果進行對比。結果表明,格網化算法模型的F1得分為0.97,遠高于其余兩種模型,進一步驗證了所提出算法的實用性。
綜上所述,對ResNet34、VGG16、AlexNet三種常見的深度學習圖像識別算法模型與YOLOv4、FasterRCNN兩種目標檢測算法模型的原理進行了研究分析,提出了針對公路橋梁裂縫檢測的深度分類格網化算法模型,通過試驗對比的方式驗證了VGG16模型在圖像識別中的應用優(yōu)勢,驗證了基于VGG16模型、格網化處理進行橋梁裂縫檢測的可行性。此外,研究期間,工作人員發(fā)現(xiàn)VGG16模型存在模型參數(shù)量較大的問題,在實際應用過程中需要對其進行輕量化改造,進一步提升算法模型的實用性。