楊濟(jì)瑞,張曉燕,杜小甫
(廈門大學(xué)嘉庚學(xué)院信息科學(xué)與技術(shù)學(xué)院,福建漳州,363105)
在橋梁建造和使用過程中,復(fù)雜的內(nèi)在或外在環(huán)境原因會(huì)引起橋梁產(chǎn)生各式各樣的裂縫,這些不起眼的裂縫(寬度大于0.2毫米)隨著時(shí)間的推移不斷擴(kuò)寬、加深,引起橋面上的混凝土剝落、鋼筋露出等現(xiàn)象,嚴(yán)重影響到橋梁的安全,甚至導(dǎo)致橋梁坍塌。對(duì)橋梁裂縫進(jìn)行分類,便于裂縫檢測(cè)完后進(jìn)行針對(duì)性修補(bǔ),因此,橋梁裂縫的檢測(cè)分類算法得到了廣泛關(guān)注和應(yīng)用。2016年,劉洪公、王學(xué)軍等人將機(jī)器視覺和卷積神經(jīng)網(wǎng)絡(luò)技術(shù)相結(jié)合,提出了一種智能裂縫檢測(cè)方案[1];2019年,賀志勇和王鵬[2]提出采用無人機(jī)橋梁檢測(cè)方案,通過八方向的Sobel算子和構(gòu)造BP神經(jīng)網(wǎng)絡(luò)對(duì)所得到的橋梁裂縫圖像進(jìn)行邊緣檢測(cè)并且統(tǒng)計(jì)裂縫的特征,實(shí)現(xiàn)橋梁裂縫檢測(cè)分類智能化。陳瑤[3]等提出了一種基于爬壁機(jī)器人的橋梁裂縫圖像檢測(cè)與分類方法。盡管提出的方法很多,但是小樣本條件下裂縫分類問題仍然有待研究,本文提出基于深度學(xué)習(xí)和支持向量機(jī)的分類方法,以提高在小樣本情況下橋梁裂縫分類的準(zhǔn)確性。
根據(jù)橋梁裂縫的產(chǎn)生原因和不同的走向?qū)⑵浞譃樗念悾簷M向裂縫、塊狀裂縫、斜向裂縫與縱向裂縫。目前提出的裂縫分類算法主要有BP神經(jīng)網(wǎng)絡(luò)、投影法、CNN卷積神經(jīng)網(wǎng)絡(luò)和SVM分類器[4]。本文提出基于深度學(xué)習(xí)和SVM分類器結(jié)合的裂縫分類算法,設(shè)計(jì)流程圖如圖1所示。
圖1 設(shè)計(jì)流程圖
將采集的橋梁裂縫圖像分為訓(xùn)練集和測(cè)試集,采集圖像會(huì)受天氣、光照等因素影響,還會(huì)受到各種噪聲干擾,使得圖像除了裂縫目標(biāo)外,還可能存在蜂窩、麻面、劃痕、空洞等缺陷,會(huì)嚴(yán)重影響圖像特征提取。使用中值濾波去除噪聲;圖像增強(qiáng)突出裂縫,減小裂縫區(qū)域外的紋理和細(xì)節(jié)影響;再用圖像形態(tài)學(xué)分析方法去除圖像中噪聲塊,初步分割出裂縫信息;最后運(yùn)用裂縫連接方法將斷開的裂縫連接起來,再將連線之間的小塊連通域填充,進(jìn)而分割出完整裂縫。
采用卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)圖像從空間域到高維特征域的映射[5]。因VGG16具有簡(jiǎn)潔性和實(shí)用性以及在圖像分類和目標(biāo)檢測(cè)表現(xiàn)突出的特點(diǎn),本文采用VGG16卷積神經(jīng)網(wǎng)絡(luò)作為基本模型來進(jìn)行提取圖像特征。VGG16的結(jié)構(gòu)如圖2所示。
圖2 VGG16的結(jié)構(gòu)
輸入224*224*3尺寸的圖像,卷積核(濾波器)大小3*3,步長(zhǎng)為1,卷積的padding為2,左右各padding1個(gè)像素來確保卷積后特征圖大小不變。池化層大小2*2,步長(zhǎng)為2,有兩個(gè)全連接層,每層4096個(gè)神經(jīng)元。
本文的全連接層設(shè)計(jì)為兩層,而不是1層或3層。因?yàn)閺脑砩峡紤],2層的神經(jīng)網(wǎng)絡(luò)可以擬合任何函數(shù),1層只能擬合線性函數(shù),多加一層3層參數(shù)量會(huì)大大提升,會(huì)增強(qiáng)4096*2+4096個(gè)參數(shù),綜合考慮模型性能和參數(shù)量,所以本文設(shè)置為2層全連接。最后輸出層包含1000個(gè)神經(jīng)元的softmax層(代表ImageNet數(shù)據(jù)集的1000個(gè)類別),激活函數(shù)全部使用RELU。
由于SVM基本模型是定義樣本在特征空間上的間隔最大的線性分類器[6]。這使它不僅可以對(duì)不同的樣本進(jìn)行精確分類,而且可確保樣本間的間隔。本文采用泛化能力較好的SVM分類器進(jìn)行分類,即正確預(yù)測(cè)未知數(shù)據(jù)的能力高。SVM主要是利用一個(gè)超平面(hyper plane)將兩類數(shù)據(jù)分開,同時(shí)邊際(margin)最大,如圖3所示。如果把超平面定義為w*x+b=0,那么超平面距離任意一個(gè)支持向量的距離就是1/||w||(||w||是w的范數(shù))。
圖3 SVM超平面
SVM最大分類間隔數(shù)Φ(w)為:
其中,非負(fù)松弛因子ξ和懲罰松弛因子c的取值對(duì)分類非常重要。
把采集的裂縫圖像分為訓(xùn)練集和測(cè)試集,將橋梁裂縫分為1bock(塊狀裂縫)、2horizontal(橫向裂縫)、3slope(斜向裂縫)、4vertical(豎向裂縫)四類,分類結(jié)果如圖4所示
圖4 測(cè)試橫向裂縫圖像
表1對(duì)比了投影法、支持向量機(jī)法、卷積神經(jīng)網(wǎng)絡(luò)法和本文方法的分類結(jié)果??芍和队胺ê蚐VM 分類法以及卷積神經(jīng)網(wǎng)絡(luò)法最大分類精均低于89.2%,且投影法僅能識(shí)別3種裂縫類型,局限性很大。本文方法分類精度率均在92%左右,性能有了較大提升。
表1 不同裂縫分類方案檢測(cè)結(jié)果對(duì)比表
本文算法在實(shí)時(shí)性上也比基于卷積神經(jīng)網(wǎng)絡(luò)的方法提高很多,總體性能較好。
本文提出了基于深度學(xué)習(xí)和SVM的圖像裂縫分類方法,通過深度學(xué)習(xí)提取圖像特征,基于SVM實(shí)現(xiàn)特征分類,實(shí)驗(yàn)表明具有較高得準(zhǔn)確性。并且本文的樣本數(shù)據(jù)是小樣本,而只用CNN卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行提取特征并分類則需要大量的樣本數(shù)據(jù)。從準(zhǔn)確性和實(shí)時(shí)性兩個(gè)方面對(duì)比分析,證實(shí)了本文算法具有較好的性能。