趙珊珊, 何 寧
(1.北京聯合大學 北京市信息服務工程重點實驗室,北京 100101; 2.北京聯合大學 智慧城市學院,北京 100101)
基于卷積神經網絡的路面裂縫檢測*
趙珊珊1, 何 寧2
(1.北京聯合大學北京市信息服務工程重點實驗室,北京100101;2.北京聯合大學智慧城市學院,北京100101)
對路面圖像塊預標記,根據預標記結果對路面圖像進行強度歸一化預處理,在保留裂縫信息的同時,減少背景光照不均的影響。將預處理后的路面圖像輸入卷積神經網絡(CNN)模型實現路面圖像裂縫的檢測。由于路面裂縫分布復雜,在訓練網絡時,使用不同尺度和不同角度的路面圖像進行模型訓練,使得網絡能夠檢測不同裂縫形狀。實驗結果顯示:裂縫檢測結果較好。
圖像處理; 公路裂縫; 卷積神經網絡; 檢測
傳統的人工巡檢方式顯然已經不能滿足巨大的公路路面巡檢需求,目前,很多計算機視覺技術實現檢測裂縫。文獻[1]提出了基于多偏微分方程融合的增強算法檢測路面裂縫,該方法中梯度門限等重要參數不固定,只能處理同一條件下的路面圖像。文獻[2]將灰度去噪模型、空間濾波去噪模型等模型串聯起來,構成了一個多級去噪模型,當多種噪聲混雜在一起時,裂縫檢測的效果不明顯。文獻[3]提出了改進的基于動態規劃的算法檢測裂縫,算法執行速度快但是準確率較低。文獻[4]使用Gabor濾波器檢測裂縫,其對簡單的路面裂縫檢測效果良好,對于分布復雜的裂縫檢測結果斷裂嚴重。文獻[5]使用4層的卷積神經網絡(convolutional neural network,CNN))實現了裂縫檢測,準確率為87 %,精度有待提高。文獻[6]提出了一種新的區域增長算法檢測裂縫,其對于紋理細小且分散的路面裂縫檢測結果不好。為了提高裂縫檢測的準確率,本文提出了基于CNN[7,8]檢測路面圖像的裂縫。
對預標記后的路面圖像進行強度歸一化和像素飽和化預處理以減少光照不均等的影響。將2 400像素×3 150像素的路面圖像劃分為16行、21列的150像素×150像素圖像塊,計算每個圖像塊的均值和標準差,因此,每幅路面圖像均有16×21的均值矩陣Mm和標準差矩陣STDm。
1.1 預標記
對Mm矩陣分別做縱向和橫向掃描查找包含裂縫像素的圖像塊,預標記的目的是將包含裂縫像素的圖像塊標記為‘1’,不包含裂縫像素的圖像塊標記為‘0’。首先對Mm縱向掃描,預標記方法為

mean(Bvj))]∧[(Av(i,j)[1]-Av(i,j)[2])>0]
(1)
(2)

縱向掃描后,水平掃描以類似的方式進行,Av和Bv分別由Ah和Bh替代,預標記方法如下

mean(Bhi))]∧[(Ah(i,j)[1]-Ah(i,j)[2])>0]
(3)
Bhi=[0;std(Ah(i,2));…;std(Ah(i,20));0]
(4)
1.2 強度歸一化
強度歸一化主要是為了去除路面光照不均。首先計算每幅圖像不包含裂縫像素圖像塊的平均像素強度值的平均值bilimg。根據bilimg值,可以為每一幅圖像計算出一個與Mm均值矩陣同維的歸一化常數矩陣Mnc。
對于標記為‘0’的圖像塊,對應的歸一化常數矩陣Mnc元素用式(5)計算

(5)
對于預標記為‘1’的圖像塊,其對應的Mnc計算如下

(6)
式中k(0)為圖像塊(i,j)的鄰域標記為‘0’的圖像塊的數量和。從3×3鄰域(此時式(6)中a=b=1)開始搜索標記為‘0’的圖像塊直至找到標記為‘0’的圖像塊。該方法對圖像塊的像素強度值改變較小,可防止預標記為‘1’區域的像素強度的劇烈變化,丟失可能包含裂縫像素的區域。由圖1可以看出,強度歸一化方法在有效減少背景光照不均的同時保留了裂縫像素。

圖1 強度歸一化
2.1 網絡結構
本文的CNN結構與VGGNet不同的是:該網絡的卷積層conv1_1,conv2_2,conv3_3,conv4_3連接到了最后的卷積層。該網絡不存在VGGNet的第5個卷積層,第5個池化層和全連接層,因為第5個卷積層和第5個池化層會生成小且模糊的特征圖,影響最終檢測效果。全連接層的耗時較長,因此,去掉全連接能夠大幅減少訓練和測試的內存與時間耗費。最終網絡結構共有4個階段,網絡結構如圖2所示。

圖2 路面裂縫檢測網絡框架
對每個中間層輸出的錯誤反向傳播路徑如右圖虛線所示。中間輸出越來越小,因此,感受尺寸變的越來越大。最終網絡可以通過權重融合實現多尺度和多層次輸出。
2.2 CNN的訓練

向前傳播階段,取樣本集的一個樣本S,將X輸入網絡計算相應的預測輸出Op;向后傳播階段,計算實際輸出Op與相應的理想輸出Yn的差,按極小誤差方法反向傳播進行權矩陣的調整。CNN訓練步驟:
1)由采集到的裂縫圖像和圖像對應的ground truth圖像作為訓練組輸入網絡。
2)設置網絡權重和偏置為接近于0的隨機值,并將精度控制的參數學習率α設置為0.001。
3)從訓練數據中取1個樣本S加至網絡,再計算其目標輸出向量d。
4)根據式(7),計算中間層輸出向量y
(7)
式中Wjk為j層到k層網絡需要學習的權重;h為輸入到k層的特征圖;θ為偏置項。
5)根據式(8),計算輸出向量與目標向量在中間層輸出的誤差
(8)
式中αm為調節系數,用來控制每個獨立的中間層(即side-output1~side-output4)在融合層所占的權重;lside為中間層圖像(例如side-output1)的損失函數;W為所有標準的網絡層參數;每一層的權重表示為w=[w(l),…,w(M)]。
由于邊緣像素點和非邊緣像素點的分布差別大,故邊緣像素點和非邊緣像素點對邊緣檢測貢獻不同。因此,引入像素級的類平衡權重β保證正負樣本的損失平衡,最終預測的邊緣圖與ground truth之間的類平衡交叉熵損失函數如式(9)所示


(9)

6)根據式(10)計算輸出向量中各個中間層預測結果之和
(10)
式中h為對中間層進行融合的權重,h=[h1,…,hM]。
7)根據式(11)計算最后融合層的輸出向量與目標向量的輸出誤差
Lfuse(W,w,h)=Dist(Y,fuse)
(11)
式中Dist(·,·)為融合預測圖fuse與ground truth標簽圖Y之間的距離,通過使用交叉熵損失函數計算損失值大小。
8)根據式(12),利用標準(反向傳播)隨機梯度下降最小化目標函數
L(W,w,h)*=argmin(Lside(S,Y,W,w)+
Lfuse(W,w,h))
(12)
式中Lside(S,Y,W,w)為每個中間層的損失;Lfuse(W,w,h)為最終的預測圖與ground truth標簽圖的損失。
9)根據式(13)和式(14)不斷更新權值和偏置項,實現網絡模型的優化
(13)
(14)
本文基于Caffe框架構建裂縫圖像檢測網絡。實驗環境為3.5 GHz主頻,32 G RAM的CPU,一塊NVIDIA Tesla K40 GPU,其板載12 GB GDDR5 384—bit顯存,顯存帶寬288 GB/s,顯存頻率6 GHz。數據集為3 000張大小為2 400像素×3 150像素的路面圖像。在訓練網絡模型時,對輸入圖像0.8,1.2,1.5比例尺縮放,同時對圖像進行0°,90°,270°三個角度的旋轉,訓練集擴大到為36 000張。對于裂縫檢測結果,使用精密召回(precision recall,PR)曲線對其進行評估。
3.1 CNN參數

表1 網絡參數
3.2 不同裂縫檢測方法結果對比
本文方法與文獻[4]、文獻[9]路面裂縫檢測結果進行比較。對于裂縫明顯的路面圖像,CNN的裂縫檢測結果明顯優于傳統方法。為了進一步驗證本文方法檢測路面裂縫的優勢,將對低對比度且分布復雜的路面圖像做裂縫檢測,實驗結果如圖3所示。

圖3 不同方法裂縫檢測結果
圖3(a)~圖3(d)為4幅路面原圖像,圖3(a)裂縫細小復雜,圖3(b)~圖3(d)為雨后低對比度且裂縫分布復雜的路面圖像。圖3(e)~圖3(h)為原圖裂縫的ground truth,圖3(i)~圖3(l)為文獻[4]中Gabor濾波波長為20,方差為4時裂縫檢測的結果。圖3(m)~圖3(p)為文獻[9]中Otsu閾值方法實現裂縫檢測。圖3(q)~圖3(t)為本文方法的檢測結果。由圖3可以看出:Gabor濾波檢測出的裂縫斷裂嚴重,整體檢測效果較差。Otsu閾值方法檢測出的裂縫邊緣有斷裂但整體較清晰。本文方法的檢測結果裂縫連接較好且清晰,能檢測出細小裂縫。
針對圖3中不同裂縫檢測方法,用PR曲線圖對實驗結果進行驗證,結果如圖4所示,CNN對裂縫檢測的整體質量指標值均高于其他4種方法,檢測效果最佳。其中,Fm為準確率和召回率的加權調和平均,即


圖4 PR曲線
對采集的原始公路裂縫圖像,利用CNN能夠較好地提取裂縫并且裂縫邊緣保持了很好的連接性,為后續對裂縫進行分析,如裂縫類型劃分和裂縫嚴重程度的計算提供了很好的檢測方法。由于路面圖像情況復雜,如易受到車道線,陰井蓋等雜物的影響,在未來的研究中,將在去除雜物對裂縫檢測的影響進行研究,以提高路面裂縫檢測的精度以及實用性。
[1] 唐 磊,趙春霞,王鴻南,等.路面圖像增強的多偏微分方程融合法[J].中國圖象圖形學報,2008,13(9):1661-1666.
[2] 王興建,秦國鋒,趙慧麗.基于多級去噪模型的路面裂縫檢測方法[J].計算機應用,2010,30(6):1606-1609.
[3] Huang Yuchun,Tsai Yichang.Enhanced pavement distress segmentation algorithm using dynamic programming and connected component analysis[J].Transportation Research Record Journal of the Transportation Research Board,2011,2225:89-98.
[4] Salman Muhammad,Mathavan Senthan,Kamal K,et al.Pavement crack detection using the gabor filter[C]∥International IEEE Conference on Intelligent Transportation Systems,2013:2039-2044.
[5] Zhang Lei,Yang Fan,Zhang Yimin D.Road crack detection using deep convolutional neural network[C]∥IEEE International Conference on Image Processing,2016.
[6] Zhang Dejin,Li Qingquan,Chen Ying,et al.An efficient and reliable coarse-to-fine approach for asphalt pavement crack detec-tion[J].Image and Vision Computing,2016,5(8):130-146.
[7] Xie Saining,Tu Zhuowen.Holistically-nested edge detection[C]∥Proceedings of the IEEE International Conference on Computer Vision,2015:1395-1403.
[8] Simonyan Karen,Zisserman Andrew.Very deep convolutional networks for large-scale image recognition[C]∥Computer Science,2015:19-29.
[9] 郭全民,張海先.基于圖像處理技術的混凝土路面裂縫檢測方法[J].傳感器與微系統,2013,32(4):61-64.
RoadsurfacecrackdetectionbasedonCNN*
ZHAO Shan-shan1, HE Ning2
(1.BeijingKeyLaboratoryofInformationServicesEngineering,BeijingUnionUniversity,Beijing100101,China;2CollegeofIntellectualizedCity,BeijingUnionUniversity,Beijing100101,China)
Road surface crack detection method based on convolutional neural network(CNN)is proposed.Intensity normalization preprocessing on road surface image according to pre-labeled result,which can reduce the influence caused by the un-illumination background and the white pixel.The CNN is used to realize the crack detection.Use different scales and angles of road image for model training to improve the ability to detect small and scattered road crack.The experimental result shows that this method is effective.
image processing; highway crack; convolutional neural network(CNN); detection
10.13873/J.1000—9787(2017)11—0135—04
TP 391
A
1000—9787(2017)11—0135—04
2017—09—08
國家自然科學基金資助項目(61370138, 61572077, U1301251)
趙珊珊(1990-),女,碩士研究生,主要研究方向為數字圖像處理。
何 寧(1970-),女,通訊作者,博士,教授,主要從事數字圖像處理、計算機圖像學相關研究工作,E—mail:xxthening@buu.edu.cn。