馬成賢 游雅辰
(1. 中國鐵道學(xué)會(huì),北京 100844;2. 北京交通大學(xué),北京 100044)
橋梁裂縫對(duì)結(jié)構(gòu)整體服役情況具有很大的影響,裂縫檢測已成為日常橋梁安全檢查的主要任務(wù)之一。在過去的幾十年中,橋梁裂縫依賴于表觀檢查,主觀因素大,耗時(shí)長且效率低下。 隨著光學(xué)技術(shù)及自動(dòng)化裂縫識(shí)別算法研究的進(jìn)步,數(shù)字化圖像自動(dòng)識(shí)別技術(shù)在橋梁安全檢測中被逐步應(yīng)用。 傳統(tǒng)圖像處理技術(shù)需對(duì)圖像進(jìn)行預(yù)處理,例如采用灰度化及二值化等方法增強(qiáng)目標(biāo)與背景的對(duì)比度,再結(jié)合邊緣檢測算子或形態(tài)學(xué)的腐蝕及膨脹技術(shù)對(duì)裂縫邊緣及骨架進(jìn)行提取,其算法冗雜,易受光線與陰影等噪聲的影響,且圖像采集對(duì)設(shè)備要求較高[1]。 一些研究人員提出了閾值算法,即通過在圖像局部區(qū)域設(shè)置閾值來發(fā)現(xiàn)裂縫的位置[23],但其在光照強(qiáng)度分布不均勻的圖像上識(shí)別精度不高,僅適用于較小區(qū)域。 也有學(xué)者重點(diǎn)分析了分塊區(qū)域的局部特征,例如采用小區(qū)域直方圖與周圍的區(qū)域塊進(jìn)行分析或比較,以識(shí)別裂縫位置[47],但由于識(shí)別不是在像素層面上完成,在準(zhǔn)確度上具有局限性。也有一些研究人員通過邊緣探測器信號(hào)強(qiáng)度的劇烈變化來識(shí)別橋面裂縫的邊緣[811],但其無法識(shí)別完整的裂縫輪廓。 為此,有人還引入了濾波器算法來轉(zhuǎn)換原始數(shù)據(jù),以尋找具有預(yù)期響應(yīng)的裂縫[1213],但無法檢測到對(duì)預(yù)先設(shè)計(jì)的濾波器具有弱響應(yīng)的裂縫。 在此基礎(chǔ)之上,有學(xué)者開發(fā)了利用小波變換將原始數(shù)據(jù)分解成不同頻率子帶的方法(基于裂縫主要保留在高頻子帶中的假設(shè)),使得裂縫識(shí)別更為簡單[1415],但這種將原始數(shù)據(jù)分解到頻域中的方法會(huì)使識(shí)別出的裂縫存在中斷的現(xiàn)象。 2011 年,Li 等提出了一種F*Seedgrowing 新方法,即獲取裂縫目標(biāo)點(diǎn)作為種子點(diǎn),將種子點(diǎn)連接以得到裂縫,該方法假設(shè)裂縫為顏色較深的部分,對(duì)于背景復(fù)雜、陰影較多的圖像容易出現(xiàn)裂縫的漏檢和誤檢。
隨著第四次工業(yè)革命的到來,以人工神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)為代表的機(jī)器學(xué)習(xí)智能算法被用于混凝土的裂縫識(shí)別,這類算法可以在較光滑的混凝土表面上達(dá)到較高的識(shí)別精度,但在復(fù)雜粗糙的表面上,易將紋理誤識(shí)別為裂縫,導(dǎo)致精確度不高,在匹配濾波算法和3D 陰影建模[26]中也發(fā)現(xiàn)了同樣的問題。 這就說明盡管機(jī)器學(xué)習(xí)算法在速度及效率等方面優(yōu)于傳統(tǒng)人工表觀檢查,但無法充分考慮橋梁混凝土表面具有不同復(fù)雜紋理的特點(diǎn),只適用于干擾因素較少橋梁的裂縫識(shí)別。 近年來,深度學(xué)習(xí)及目標(biāo)檢測模型已被廣泛用于圖像識(shí)別領(lǐng)域,并在圖像的特征識(shí)別中展現(xiàn)出了很高的精度。 橋梁裂縫識(shí)別的本質(zhì)就是從含有裂縫的圖像中識(shí)別出裂縫位置,可考慮采用目標(biāo)檢測模型來實(shí)現(xiàn)橋梁裂縫位置的快速識(shí)別。 將目標(biāo)檢測模型應(yīng)用于橋梁裂縫識(shí)別領(lǐng)域的優(yōu)點(diǎn)主要有:①以采集圖像直接作為輸入數(shù)據(jù)輸入至模型中,可避免圖像的預(yù)處理;②目標(biāo)檢測模型中的卷積神經(jīng)網(wǎng)絡(luò)具備對(duì)背景噪聲進(jìn)行濾波以及對(duì)圖像幾何形狀進(jìn)行縮放、旋轉(zhuǎn)等功能。Detectron 是Facebook 推出的開源目標(biāo)檢測平臺(tái),可將設(shè)計(jì)好的目標(biāo)檢測模型在此平臺(tái)上用于訓(xùn)練、驗(yàn)證及測試,為實(shí)現(xiàn)橋梁裂縫智能化識(shí)別提供了新的發(fā)展平臺(tái)。
針對(duì)數(shù)字化圖像識(shí)別存在的問題,提出了基于Detectron 平臺(tái)的橋梁裂縫位置識(shí)別目標(biāo)檢測模型,通過圖像分割及特征標(biāo)定的方法建立帶有裂縫位置標(biāo)簽的數(shù)據(jù)集,設(shè)計(jì)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),研究學(xué)習(xí)率與模型誤差值的關(guān)系,確定學(xué)習(xí)率,將訓(xùn)練集與驗(yàn)證集供模型學(xué)習(xí)與參數(shù)調(diào)整,將未被模型學(xué)習(xí)的測試集用于評(píng)估模型的準(zhǔn)確性,最后將模型與傳統(tǒng)圖像處理識(shí)別技術(shù)做不同層面的對(duì)比分析,說明模型在特征識(shí)別上的優(yōu)劣性。
為了充分考慮橋梁裂縫圖像的復(fù)雜性和多樣性,需要大量的橋梁裂縫圖片用于構(gòu)建模型訓(xùn)練、驗(yàn)證與測試的數(shù)據(jù)集。 對(duì)采用人工拍照及無人機(jī)拍攝等方法獲取的150 張?jiān)剂芽p圖片進(jìn)行圖像分割,分割成10 494張32 像素×32 像素的圖片,如圖1 所示。 將這10 494張圖片作為模型的數(shù)據(jù)集,按照8 ∶1 ∶1 的比例建立模型訓(xùn)練集、驗(yàn)證集與測試集。 其中,包含8 395張圖的訓(xùn)練集用于對(duì)裂縫位置特征的學(xué)習(xí),包含1 050張圖的驗(yàn)證集用于模型參數(shù)的調(diào)整,包含1 049張圖的測試集用于模型的性能評(píng)估。
圖1 圖像分割示例
為了給模型提供盡可能細(xì)致的特征描述,可以采用多標(biāo)注框密集標(biāo)注一條裂縫,如圖2 所示。
基于Detectron 平臺(tái)的目標(biāo)檢測模型可以從大量帶有裂縫位置標(biāo)簽的圖像中學(xué)習(xí)并提取目標(biāo)特征,從而具備準(zhǔn)確識(shí)別裂縫位置的能力,模型的兩個(gè)基本組成是數(shù)據(jù)集及網(wǎng)絡(luò)層次結(jié)構(gòu)。 網(wǎng)絡(luò)層次結(jié)構(gòu)的主體由卷積層(Conv)和池化層(Max-pooling)組成,其中卷積層用于局部特征提取,池化層用于特征降維、減小過擬合、壓縮數(shù)據(jù)、減少參數(shù)數(shù)量,以及提高模型的容錯(cuò)性。經(jīng)研究發(fā)現(xiàn),以卷積層和池化層的組合作為結(jié)構(gòu)的最基本單元,可有效地降低模型學(xué)習(xí)參數(shù)的數(shù)量,提高運(yùn)算速度。
圖2 裂縫標(biāo)記
為了同時(shí)考慮特征提取的完整性和檢測效率,卷積核選用3×3 維度,每一個(gè)卷積層(Conv)后均設(shè)3×3 維度的池化層(Max-pooling),以減少參數(shù)并保證清晰度。 如圖3 所示,所提出的卷積神經(jīng)網(wǎng)絡(luò)由4 個(gè)卷積層(Conv)、4 個(gè)池化層(Max-pooling)和1 個(gè)完全連接層(FC)組成,且4 個(gè)卷積層分別有64 個(gè)、128 個(gè)、256 個(gè)、512 個(gè)卷積核。 在最后一個(gè)卷積層之后加設(shè)ReLu 函數(shù),以解決非線性問題,再與全連接層(FC)連接,用Sigmoid 激活函數(shù)來激活整個(gè)學(xué)習(xí)網(wǎng)絡(luò)。 如表3 所示,所提出的卷積神經(jīng)網(wǎng)絡(luò)(CNN)包含922,368 個(gè)參數(shù)。
由表1 可知,目標(biāo)檢測模型中的卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)參數(shù)眾多,卷積層可細(xì)化特征提取,在保證清晰度的條件下,池化層可有效降低訓(xùn)練參數(shù)的數(shù)量。 全連接層不改變參數(shù)數(shù)量,只確定輸出形式。
圖3 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
表1 網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)
目標(biāo)檢測模型通過梯度下降算法來更新參數(shù),學(xué)習(xí)率就是對(duì)原迭代步長做調(diào)整,學(xué)習(xí)率過大,會(huì)導(dǎo)致丟失很多有用信息,模型難以找到較優(yōu)解;學(xué)習(xí)率過小,則會(huì)降低模型的訓(xùn)練效率,圖4 顯示了學(xué)習(xí)率與模型的誤差值的關(guān)系。 該模型的學(xué)習(xí)率設(shè)為0.001,即調(diào)整的步長為0.001 梯度。
圖4 學(xué)習(xí)率與模型誤差
確定學(xué)習(xí)率后,模型將對(duì)圖像進(jìn)行特征細(xì)化,進(jìn)而學(xué)習(xí)目標(biāo)特征。 基于Detectron 平臺(tái)的目標(biāo)檢測模型泛化性較好,具有良好的魯棒性和較好的特征識(shí)別能力及背景噪聲濾波能力。 如圖5,以訓(xùn)練集中的某張裂縫圖片為例,展示模型濾波細(xì)化裂縫的效果。
圖5 濾波細(xì)化效果
由圖5 可以直觀地看出,卷積層(Conv1-Conv4)使裂縫逐漸清晰,與背景形成良好的對(duì)比度,且圖像非裂縫目標(biāo)的干擾點(diǎn)被逐漸弱化,池化層(Max-pooling)只起到對(duì)圖像降維的作用(不對(duì)裂縫目標(biāo)進(jìn)行特征強(qiáng)化),體現(xiàn)了網(wǎng)絡(luò)識(shí)別特征目標(biāo)的學(xué)習(xí)能力與排除背景噪聲的濾波能力。
采用基于Detectron 平臺(tái)的目標(biāo)檢測模型,通過模型中的卷積神經(jīng)網(wǎng)絡(luò)提取特征,實(shí)現(xiàn)對(duì)橋梁裂縫位置的識(shí)別。 模型對(duì)輸入的訓(xùn)練集圖像進(jìn)行目標(biāo)學(xué)習(xí),對(duì)輸入的驗(yàn)證集進(jìn)行模型參數(shù)調(diào)整,識(shí)別后輸出與輸入標(biāo)簽文件相同的數(shù)據(jù)類型,通過對(duì)比模型結(jié)果與標(biāo)簽文件,評(píng)價(jià)模型在多次學(xué)習(xí)迭代過程中的準(zhǔn)確率,在未被模型學(xué)習(xí)及參數(shù)調(diào)整的測試集中的準(zhǔn)確率評(píng)價(jià)也采用上述方法。 經(jīng)過對(duì)訓(xùn)練集與驗(yàn)證集的反復(fù)卷積與池化操作,模型已對(duì)裂縫位置特征有了一定的學(xué)習(xí)與提取能力,在測試集中的準(zhǔn)確率結(jié)果表明,模型在識(shí)別裂縫位置上具有良好的準(zhǔn)確性,如圖6 所示。
圖6 模型準(zhǔn)確率
在多次訓(xùn)練的迭代過程中,由于小批量數(shù)據(jù)迭代中誤差值的逐步降低使得識(shí)別準(zhǔn)確率逐步提高,表明模型已具備良好的學(xué)習(xí)能力。 由圖6 可知,模型在訓(xùn)練集上識(shí)別精度最優(yōu)值為92.64%,驗(yàn)證集與測試集上的識(shí)別精度曲線擬合大體相同,在驗(yàn)證集與測試集上的精度最優(yōu)值分別是88.98%和90.43%。 由于驗(yàn)證集涉及調(diào)整模型過擬合的過程,所以準(zhǔn)確率曲線會(huì)有所變化。 圖7 是一個(gè)目標(biāo)檢測模型對(duì)測試集中的裂縫位置進(jìn)行識(shí)別的例子。
圖7 識(shí)別過程可視化
基于傳統(tǒng)數(shù)字化圖像的裂縫識(shí)別技術(shù)包含多種圖像預(yù)處理算法及邊緣檢測算法,可實(shí)現(xiàn)對(duì)裂縫圖像的處理和識(shí)別,其缺點(diǎn)是信息易丟失、計(jì)算量大、耗時(shí)長、抗噪聲能力差、目標(biāo)邊緣定位不佳、算法運(yùn)行速度慢等,而基于Detectron 平臺(tái)的目標(biāo)檢測模型可以規(guī)避這些弊端,但其對(duì)圖像的質(zhì)量與數(shù)量要求、運(yùn)行速度及裂縫特征處理等方面與傳統(tǒng)圖像識(shí)別技術(shù)有很大的不同,如表2。
表2 傳統(tǒng)圖像處理識(shí)別技術(shù)與模型對(duì)比
由表2 可知,傳統(tǒng)圖像處理識(shí)別技術(shù)依賴于較多的圖像處理算法,需對(duì)裂縫圖像進(jìn)行預(yù)處理,以顯示清晰的裂縫條紋,例如采用灰度化、二值化等圖像分割技術(shù)形成目標(biāo)與背景的強(qiáng)對(duì)比度,進(jìn)而采用邊緣檢測算子及形態(tài)學(xué)中的腐蝕及膨脹技術(shù)對(duì)裂縫邊緣骨架進(jìn)行提取及描述,從而識(shí)別出裂縫位置。 基于Detectron 平臺(tái)的目標(biāo)檢測模型則通過學(xué)習(xí)帶有裂縫位置標(biāo)簽的數(shù)據(jù)集,由學(xué)習(xí)點(diǎn)的低級(jí)特征到學(xué)習(xí)線的高級(jí)特征,進(jìn)而識(shí)別裂縫位置。 該模型無需對(duì)輸入的圖片進(jìn)行預(yù)處理,處理速度快,識(shí)別準(zhǔn)確率較高,在大數(shù)據(jù)情況下,目標(biāo)檢測模型的整體性能優(yōu)于傳統(tǒng)圖像處理識(shí)別技術(shù)。
(1)基于Detectron 平臺(tái)的目標(biāo)檢測模型中的卷積神經(jīng)網(wǎng)絡(luò)可有效地提取目標(biāo)特征,實(shí)現(xiàn)橋梁裂縫位置的識(shí)別。 所提出的卷積神經(jīng)網(wǎng)絡(luò)(CNN)由4 個(gè)卷積層(Conv),4 個(gè)池化層(Max-pooling)和1 個(gè)全連接層(FC)組成,卷積層(Conv)用于特征提取,池化層(Max-pooling)和ReLu 函數(shù)用于降低參數(shù)數(shù)量和非線性變換。
(2)該模型具備較強(qiáng)的背景噪聲濾波能力,無需輔助操作即可提取裂縫位置的特征信息,具有良好的魯棒性和特征識(shí)別效果,可直接將橋梁裂縫圖像作為輸入數(shù)據(jù),不需進(jìn)行圖像預(yù)處理,提高了識(shí)別效率。
(3)訓(xùn)練集與驗(yàn)證集分別用于模型的學(xué)習(xí)和參數(shù)調(diào)整,未被模型學(xué)習(xí)與調(diào)整參數(shù)的測試集則用于模型準(zhǔn)確率性能評(píng)估。 據(jù)分析,模型在訓(xùn)練集與驗(yàn)證集上識(shí)別精度最優(yōu)值分別為92.64%和88.98%,測試集上精度最優(yōu)值為90.43%,由于驗(yàn)證集有調(diào)整模型過擬合問題的作用,所以準(zhǔn)確率較訓(xùn)練集會(huì)有所變化。
(4)該模型無需圖像的預(yù)處理環(huán)節(jié),大大提高了裂縫圖像的處理速度及識(shí)別效率,對(duì)帶有大量裂縫標(biāo)簽的數(shù)據(jù)集進(jìn)行多次訓(xùn)練,可使模型具有準(zhǔn)確識(shí)別裂縫位置的能力,在大數(shù)據(jù)條件下,模型的整體性能優(yōu)于傳統(tǒng)圖像處理識(shí)別技術(shù)。
(5)本文僅對(duì)橋梁裂縫這一病害進(jìn)行了位置識(shí)別的研究,且用于訓(xùn)練的裂縫圖像有限,數(shù)據(jù)集越多,模型的學(xué)習(xí)能力才會(huì)越強(qiáng),今后應(yīng)開展更多橋梁病害方面目標(biāo)檢測模型的研究。 未來有望引入三維目標(biāo)檢測模型,以期為鐵路橋梁健康檢測及維護(hù)保養(yǎng)提供更有力的方法及全面的數(shù)據(jù)支持。