孔 燕 袁 輝 柯敏勇 范宇鑫 趙啟林 潘大榮
(1.江蘇泰州大橋有限公司,江蘇 泰州 225300;2.南京工業(yè)大學(xué),江蘇 南京 210000;3.南京水利科學(xué)研究院,江蘇 南京 210000;4.南京工程學(xué)院,江蘇 南京 210000)
我國大部分基礎(chǔ)設(shè)施由混凝土澆筑而成,由于混凝土材料自身的特性和服役環(huán)境中各種因素的影響,絕大多數(shù)的混凝土構(gòu)件中都存在裂縫,影響結(jié)構(gòu)安全。以橋梁為例,據(jù)統(tǒng)計(jì)90%以上的混凝土橋梁損壞由裂縫引起[1]。傳統(tǒng)的檢測(cè)方法主要基于人工視覺檢測(cè),需要搭建腳手架、掛籃或者使用專門的橋梁檢測(cè)車,成本高,檢測(cè)效率較低,同時(shí)會(huì)妨礙結(jié)構(gòu)運(yùn)營使用,而且檢測(cè)效果往往依賴于檢測(cè)人員的經(jīng)驗(yàn)豐富程度[2,3]。為解決上述問題,現(xiàn)在越來越多的采用爬壁機(jī)器人、無人機(jī)、非接觸檢測(cè)儀等圖像采集設(shè)備來獲取結(jié)構(gòu)表觀圖像,但完全依靠人工識(shí)別圖像中的病害工作量太大,研究混凝土裂縫自動(dòng)識(shí)別算法意義顯著。
基于數(shù)字圖像處理的裂縫自動(dòng)識(shí)別算法受到廣泛關(guān)注,常用的分類器有支持向量機(jī)和BP神經(jīng)網(wǎng)絡(luò)[4,5],文獻(xiàn)[6]同時(shí)使用了這兩種分類器并做對(duì)比,認(rèn)為支持向量機(jī)構(gòu)建的裂縫識(shí)別算法具有更高識(shí)別準(zhǔn)確率,推薦使用支持向量機(jī)。但是不同分類器有各自的適用條件,考慮到實(shí)際工程使用初期裂縫出現(xiàn)少、收集的樣本集規(guī)模有從少到多逐步積累的特點(diǎn),本文對(duì)少樣本與多樣本的條件下利用支持向量機(jī)與BP神經(jīng)網(wǎng)絡(luò)進(jìn)行裂縫識(shí)別的效果進(jìn)行了對(duì)比分析。
基于支持向量機(jī)與BP神經(jīng)網(wǎng)絡(luò)的混凝土裂縫自動(dòng)識(shí)別算法都包括圖像處理,圖像分割,特征提取,目標(biāo)識(shí)別4個(gè)步驟(見圖1)。本文中的圖像預(yù)處理和圖像分割這兩步均參考了文獻(xiàn)[2]中的灰度化公式、中值濾波與閾值分割算法。

在特征提取這一步中,選擇了像素?cái)?shù)比、寬高比和邊緣相似性三個(gè)可用于區(qū)分線狀對(duì)象和塊狀對(duì)象的特征值,以及線狀物骨架二階差分絕對(duì)值之和的平均值、骨架三階差分絕對(duì)值之和的平均值、骨架的擬合曲線與自身所圍成的平均面積、三個(gè)可區(qū)分裂縫和同樣具有狹長形態(tài)偽裂縫的特征值(見圖2),共六個(gè)特征值組成了裂縫識(shí)別的特征向量,具體的計(jì)算方法參考文獻(xiàn)[7][8]。

本文試驗(yàn)采用自建樣本庫,樣本圖取自于泰州大橋、紅楓湖大橋、魚梁州大橋等混凝土橋梁,樣本尺寸為128像素×128像素,類型包含裂縫樣本和非裂縫樣本,非裂縫樣本包括偽裂縫樣本和只包含塊狀物的一般背景樣本,部分樣本圖片如圖3~圖5所示。每張裂縫樣本圖像和偽裂縫樣本圖像僅含一條線狀物,樣本分為訓(xùn)練集和測(cè)試集。多樣本分類試驗(yàn)訓(xùn)練集包含900個(gè)樣本圖像,而測(cè)試集包含450個(gè)樣本圖像。少樣本分類試驗(yàn)訓(xùn)練集包含90個(gè)樣本圖像,而測(cè)試集包含45個(gè)樣本圖像。裂縫圖像、偽裂縫圖像和一般背景圖像的比例為1∶1∶1。
提取樣本圖像的像素?cái)?shù)比、寬高比、邊緣相似性、骨架二階差分絕對(duì)值之和的平均值、骨架三階差分絕對(duì)值之和的平均值、骨架的擬合曲線與自身所圍成的平均面積作為輸入矩陣。輸入矩陣的行代表一個(gè)特征向量,輸入矩陣的列代表所有樣本的某一特征值集合。然后對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理,經(jīng)過標(biāo)準(zhǔn)化的處理能增加精度,它決定訓(xùn)練過程中運(yùn)行速度的快慢、能否順利收斂和泛化功能的強(qiáng)弱。數(shù)據(jù)標(biāo)準(zhǔn)化的公式如下:
(1)
其中,Xij為標(biāo)準(zhǔn)化的數(shù)據(jù);xij為原始數(shù)據(jù);μj為輸入矩陣第j列特征值的算數(shù)平均值;σj為輸入矩陣第j列特征值的標(biāo)準(zhǔn)差。
支持向量機(jī)采用徑向基核函數(shù),需要確定的訓(xùn)練超參數(shù)有懲罰系數(shù)c和核函數(shù)超參數(shù)g。本文采用K折交叉驗(yàn)證法(K-CV)優(yōu)化懲罰系數(shù)c和核函數(shù)超參數(shù)g,使模型的預(yù)測(cè)精度達(dá)到最高,并使用這組超參數(shù)來訓(xùn)練模型。K折交叉驗(yàn)證的基本原理是將原始數(shù)據(jù)平均分成K組,將每組數(shù)據(jù)分別做一次驗(yàn)證集,同時(shí)其余K-1組數(shù)據(jù)作為訓(xùn)練集,這樣會(huì)得到K個(gè)模型,使用這K個(gè)模型驗(yàn)證集的分類準(zhǔn)確率的平均值作為此K折交叉驗(yàn)證下分類器的性能指標(biāo)[9]。使用優(yōu)化后的超參數(shù)訓(xùn)練的模型分類的測(cè)試結(jié)果分別如表1,表2所示。




表1 基于多樣本訓(xùn)練的支持向量機(jī)分類結(jié)果

表2 基于少樣本訓(xùn)練的支持向量機(jī)分類結(jié)果
BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)包含6個(gè)節(jié)點(diǎn)的輸入層,一個(gè)包含13個(gè)節(jié)點(diǎn)的隱含層和包含2個(gè)節(jié)點(diǎn)的輸出層。在訓(xùn)練參數(shù)選取方面,初始權(quán)值將在[-1,1]區(qū)間內(nèi)隨機(jī)產(chǎn)生,學(xué)習(xí)速率為0.01,期望誤差為0.001,最大訓(xùn)練次數(shù)選擇20 000,傳遞函數(shù)選擇Sigmoid函數(shù),訓(xùn)練函數(shù)選擇Levenberg Marquardt算法。
多樣本訓(xùn)練的網(wǎng)絡(luò)模型和少樣本訓(xùn)練的網(wǎng)絡(luò)模型的Performance曲線如圖6,圖7所示。Performance曲線反映的是訓(xùn)練誤差的變化,訓(xùn)練誤差越小表明模型擬合精度越高,兩個(gè)模型的訓(xùn)練誤差均下降到0.001以下,網(wǎng)絡(luò)模型訓(xùn)練效果良好。使用測(cè)試樣本檢測(cè)訓(xùn)練好的網(wǎng)絡(luò)模型,結(jié)果如表3,表4所示。


表3 基于多樣本訓(xùn)練的BP神經(jīng)網(wǎng)絡(luò)分類結(jié)果

表4 基于少樣本訓(xùn)練的BP神經(jīng)網(wǎng)絡(luò)分類結(jié)果
支持向量機(jī)在兩種訓(xùn)練條件下都能取得90%以上的識(shí)別率,高于相同訓(xùn)練條件下的BP神經(jīng)網(wǎng)絡(luò)的識(shí)別率;BP神經(jīng)網(wǎng)絡(luò)在多樣本訓(xùn)練條件下能取得較高的識(shí)別率,但在少樣本訓(xùn)練條件下取得的識(shí)別率低于70%。因?yàn)锽P神經(jīng)網(wǎng)絡(luò)是基于傳統(tǒng)統(tǒng)計(jì)學(xué)的基礎(chǔ)上的。傳統(tǒng)統(tǒng)計(jì)學(xué)研究的內(nèi)容是當(dāng)樣本數(shù)據(jù)趨于無窮多時(shí)的統(tǒng)計(jì)性質(zhì),所以理論上訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)需要大量的樣本。在工程使用初期、裂縫樣本較少的情況下,采用支持向量機(jī)具有更高的分類能力;而到了工程使用中后期、裂縫樣本較多的情況下,BP神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)對(duì)裂縫識(shí)別能力基本相當(dāng),均可以作為工程使用的識(shí)別算法,但是在考慮到訓(xùn)練成本與多分類需求的情況下,可能使用BP神經(jīng)網(wǎng)絡(luò)更為合適。
本文利用三個(gè)能區(qū)分線狀物與塊狀物的特征量以及三個(gè)能在線狀物中將裂縫與水跡、劃痕等偽裂縫區(qū)分的特征量同時(shí)作為支持向量機(jī)或BP神經(jīng)網(wǎng)絡(luò)輸入來構(gòu)造了兩個(gè)算法,并在少樣本與多樣本情況下進(jìn)行了訓(xùn)練和測(cè)試。以支持向量機(jī)作為分類器的算法在多樣本和少樣本的訓(xùn)練條件下的總體識(shí)別率分別為94.2%和91.1%;以BP神經(jīng)網(wǎng)絡(luò)作為分類器的算法在多樣本和少樣本的訓(xùn)練條件下的總體識(shí)別率分別為92.4%和64.4%,以六個(gè)特征向量作為網(wǎng)絡(luò)輸入可一次性實(shí)現(xiàn)裂縫與非裂縫的區(qū)分。在少樣本情況下基于支持向量機(jī)的算法識(shí)別效果明顯優(yōu)越于基于BP神經(jīng)網(wǎng)絡(luò)的算法;在多樣本情況下兩種算法的識(shí)別效果基本一致。考慮到在工程使用初期、裂縫樣本較少的情況下,采用支持向量機(jī)具有更高的分類能力;而到了工程使用中后期、裂縫樣本較多的情況下,BP神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)對(duì)裂縫識(shí)別能力基本相當(dāng),在考慮到訓(xùn)練成本與多分類需求的情況下,可能使用BP神經(jīng)網(wǎng)絡(luò)更為合適。