何小華
摘要:針對傳統(tǒng)裂縫識別方法準(zhǔn)確率低的問題,研究基于深度神經(jīng)網(wǎng)絡(luò),設(shè)計一個Crack-CNN裂縫識別模型。根據(jù)CNN神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),利用CNN的特征提取和學(xué)習(xí)能力特性,將CNN應(yīng)用于材料粘接裂縫識別中,然后將裂縫定位和 CNN網(wǎng)絡(luò)相結(jié)合,構(gòu)建 Crack-CNN模型,將裂縫圖像輸入至該模型中,通過 CNN網(wǎng)絡(luò)提取裂縫特征,并進(jìn)行卷積、池化操作,再利用激活函數(shù)和全連接層進(jìn)行特征分類,最終輸出裂縫分類結(jié)果。結(jié)果表明,相較于傳統(tǒng)裂縫識別模型,模型的訓(xùn)練和測試精度均保持在95%以上,模型的訓(xùn)練時間為3825 s,遠(yuǎn)遠(yuǎn)低于VGG-13和ResNet模型。由此證明該模型性能好,可在材料粘接裂縫中取得較好的識別效果。
關(guān)鍵詞:材料粘結(jié);裂縫識別;深度學(xué)習(xí);神經(jīng)網(wǎng)絡(luò);Crack-CNN
中圖分類號:TG492????????????? 文獻(xiàn)標(biāo)志碼:A???????? 文章編號:1001-5922(2023)03-0021-04
Identification of material bond cracks basedon? deep? neural? networks
HE Xiaohua
(Yantai Automobile Engineering Professional College,Yantai 265500,Shandong China)
Abstract: For the low accuracy of the traditional crack recognition method,we design a Crack-CNN crack recogni- tion model based on the deep neural network. According to the CNN neural network structure,by means of the fea- ture extraction and learning ability of CNN,CNN was applied to the identification of adhesive crack.Aftercombin- ing the crack location with CNN network to construct the CRACK-CNN model,the crack image was input into the? model,the crack feature was extracted by CNN network,and convolution and pooling were performed. Then,the ac- tivation function and full-connection layer were used to classify the features,and finally the results of fracture clas- sification were output. The experimental results show that compared with the traditional crack recognition model, the training and test accuracy of this model remains more than 95%,and the training time of the model is 3825s,far? lower than? the? VGG-13 and? ResNet? models,which? thus? proves? that? the? model? has? superior? performance ?and? achieves good recognition effect in material bond cracks.
Keywords: material bonding;crack recognition;deep learning;neural network;Crack-CNN
在建筑施工過程中,工程材料出現(xiàn)收縮、膨脹和裂縫等現(xiàn)象是較為常見的問題,其主要是由于溫度、濕度和地基等外部條件的變化和不穩(wěn)定造成的。材料粘接部分出現(xiàn)極小的裂縫對建筑物和公路等正常運(yùn)行影響較??;但當(dāng)裂縫逐漸增大,并超出標(biāo)準(zhǔn)范圍時,可能出現(xiàn)路面坍塌等現(xiàn)象,由此造成安全事故。因此,及時發(fā)現(xiàn)材料粘接裂縫,對材料進(jìn)行檢查和維護(hù),可以有效保障建筑物和人們的生命和財產(chǎn)安全。同時,對裂縫進(jìn)行準(zhǔn)確的識別和分類也是保證材料安全的重點(diǎn)。然而,當(dāng)前現(xiàn)有的材料粘接裂縫識別方法存在識別準(zhǔn)確率低和誤差大的問題,不能很好的對裂縫進(jìn)行精準(zhǔn)識別。針對此問題,已有學(xué)者和專家進(jìn)行了深入研究,針對橋梁裂縫,提出了基于深度學(xué)習(xí)的裂縫識別方法,采用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)對裂縫進(jìn)行定位和分類,并根據(jù)相應(yīng)的裂縫等級進(jìn)行劃分,可準(zhǔn)確的識別出裂縫類型,該方法具有一定的可行性[1];提出采用CNN算法對橋梁裂縫特征進(jìn)行提取,構(gòu)建裂縫識別模型。結(jié)果表明,該模型很大程度上提升裂縫識別準(zhǔn)確率和效率,并通過目標(biāo)檢測方法實現(xiàn)裂縫精準(zhǔn)定位[2];在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,對該網(wǎng)絡(luò)進(jìn)行改進(jìn),并提出基于改進(jìn)CNN的混凝土橋梁裂縫檢測算法,通過實驗發(fā)現(xiàn),相較于改進(jìn)前的算法,改進(jìn)后算法的識別率高達(dá)85.6%,提升了13.2%[3]。結(jié)合以上學(xué)者研究,提出將CNN神經(jīng)網(wǎng)絡(luò)應(yīng)用于材料裂縫識別中,并構(gòu)建Crack-CNN模型,探究該模型在材料粘接裂縫識別的效果。
1 卷積神經(jīng)網(wǎng)絡(luò)原理
隨著圖像分類和故障識別等技術(shù)的應(yīng)用需求,深度學(xué)習(xí)逐漸取得了較好的應(yīng)用成果。圖像定位和識別主要通過深度學(xué)習(xí)中的神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí)和提取實現(xiàn)。目前,常用的神經(jīng)網(wǎng)絡(luò)為卷積神經(jīng)網(wǎng)絡(luò) CNN、長短期記憶神經(jīng)網(wǎng)絡(luò)LSTM等。其中,CNN由于其獨(dú)特的結(jié)構(gòu)特點(diǎn),可實現(xiàn)深層特征提取,在圖像識別、定位等方面的效果最好。CNN網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,其主要分為卷積層、池化層,其中還包括激活層和全連接層[4]。
從圖1可以看出,該網(wǎng)絡(luò)各層級間由神經(jīng)元進(jìn)行連接,在輸入層中輸入圖像后,卷積層負(fù)責(zé)對圖像進(jìn)行卷積處理;之后將處理后的圖像傳輸至池化層中進(jìn)行池化操作,操作完成后,通過激活層進(jìn)行映射處理并提取出圖像特征,將該特征輸出至全連接層,對上層提取特征進(jìn)行分類識別處理后,利用輸出層將識別結(jié)果進(jìn)行輸出[5]。
卷積運(yùn)算是在網(wǎng)絡(luò)中起著至關(guān)重要的作用,其主要通過各個函數(shù)的算子進(jìn)行翻轉(zhuǎn)、平移等操作。卷積層中存在多個卷積核,其利用卷積運(yùn)算的方式對輸入圖像進(jìn)行特征提取,將提取的特征進(jìn)行整合處理后,即可得到某一部分的特征。卷積層的表達(dá)式為:
式中:f 表示輸入圖像;g 表示卷積核;m 、n 均表示卷積核尺寸。
在CNN神經(jīng)網(wǎng)絡(luò)中,激活層的主要作用是對輸入圖像和最終輸出進(jìn)行映射,其輸入和輸出大小穩(wěn)定不變且相同[6]。常用激活函數(shù) Sigmoid、Tanh-Sig- moid和ReLU函數(shù)。3種函數(shù)的表達(dá)式:
3個激活函數(shù)中,Sigmoid和Tanh-Sigmoid函數(shù)在進(jìn)行求解時可能出現(xiàn)梯度消失和彌散的問題,會降低模型的訓(xùn)練速度;而ReLU函數(shù)由于其內(nèi)部飽和性較強(qiáng),可有效解決以上2個激活函數(shù)出現(xiàn)的問題,并且該函數(shù)能夠在一定程度上加快訓(xùn)練,縮短時間,更適用于神經(jīng)網(wǎng)絡(luò)中[7]。
為避免網(wǎng)絡(luò)出現(xiàn)過度擬合現(xiàn)象。采用池化層對傳輸?shù)男畔⑦M(jìn)行池化處理,之后再將利用全連接層進(jìn)行特征分類,并采用計算出每個神經(jīng)元間的誤差值如下:
式中:yeRmx 1和 x eRnx 1分別為神經(jīng)元輸出和輸入;We Rnxm為此神經(jīng)元權(quán)值;b 和分別代表最后一層的偏置參數(shù)和神經(jīng)元[8]。
對CNN進(jìn)行學(xué)習(xí)和訓(xùn)練時,其通過前向和反向2種傳播方式進(jìn)行。前向傳播負(fù)責(zé)正常輸入和輸出處理;反向傳播則根據(jù)實際標(biāo)準(zhǔn)值,調(diào)節(jié)出現(xiàn)的誤差值,將誤差值控制在最低范圍內(nèi),直至達(dá)到標(biāo)準(zhǔn)。前
式中:‘為信息傳輸?shù)漠?dāng)前層;x‘為此層的輸出值; w‘為此層權(quán)值;b‘為此層偏置;f 表示激活函數(shù)。
反向傳播中,其通過各層神經(jīng)元不斷地更新迭代后,求出每個層級的梯度值,從而計算出輸出值與實際值間的誤差。若損失函數(shù)表示為:
式中:n 表示輸入數(shù)據(jù);c 表示輸出類別個數(shù);t 表示獲取的正確輸出值;y 表示計算得到的值[9]。通過對權(quán)重矩陣進(jìn)行不斷地修正和調(diào)節(jié)后,將誤差控制到最小。若計算出的結(jié)果不滿足實際結(jié)果,則需反向進(jìn)行計算,直至最終計算結(jié)果與實際結(jié)果誤差達(dá)到最小[10]。
2 基于Crack-CNN的深度神經(jīng)網(wǎng)絡(luò)裂縫識別模型
為更好地對材料粘接裂縫進(jìn)行識別,將設(shè)計1個 Crack-CNN的神經(jīng)網(wǎng)絡(luò)裂縫識別模型,將裂縫圖像輸入至CNN神經(jīng)網(wǎng)絡(luò)中,以提升裂縫識別效果。該模型架構(gòu)如圖2所示。
以上模型中,輸入數(shù)據(jù)共有32個,每個數(shù)據(jù)的步長為1,原始輸入圖像分辨率和維度大小分別為150 mm×150 mm×3 mm和3 mm×3 mm×3 mm[11],通過卷積、池化操作后將提取信息尺寸縮減到1 mm×1 mm×512 mm大小,之后再將該特征傳輸至激活層中,通過激活函數(shù)對處理的信息進(jìn)行裂縫檢測和定位,最終完成模型裂縫識別[12]。
為提升最終識別效果,避免模型訓(xùn)練時出現(xiàn)過度擬合的現(xiàn)象,將在模型中加入1個層級,即Dropout 層。該層參數(shù)值為0.5[13]。同時,由于CNN神經(jīng)網(wǎng)絡(luò)的深度不同,模型訓(xùn)練時,輸入?yún)?shù)會由于深度的增加導(dǎo)致出現(xiàn)偏差等現(xiàn)場。因此,為避免出現(xiàn)這種狀況,將通BN批規(guī)范化的方式將輸入?yún)?shù)進(jìn)行控制,將其均值設(shè)置在0,方差設(shè)置在1的規(guī)范值內(nèi),從而擴(kuò)大梯度范圍,有效防止梯度消失[14]。
在模型最終輸出中,通過激活層中的激活函數(shù)對輸入特征進(jìn)行分類處理,結(jié)合CNN神經(jīng)網(wǎng)絡(luò)的特點(diǎn),選用Sigmoid函數(shù)預(yù)測分類結(jié)果,可表示為:
式中:x 表示分類標(biāo)簽;g 表示分類概率[15]。
分類工作表示為:
3 實驗結(jié)果與分析
3.1? 實驗環(huán)境
為取得更好的實驗結(jié)果,本次實驗將分別在硬件和軟件2個環(huán)境下進(jìn)行實驗。其中,硬件設(shè)備選用 Inter XeonE5-2620V48 Core 的 CPU,內(nèi)存大小為20 M;軟件選擇Ubuntul6.04LTS64的操作系統(tǒng)。編程語言選擇較為常用的Python,模型框架為keras。
3.2? 實驗數(shù)據(jù)
實驗數(shù)據(jù)通過人工、實驗室和無人機(jī)3種方式進(jìn)行采集,采集對象為混凝土、橋梁等地面的裂縫圖像共計850張。其中,人工采集數(shù)量為255張,無人機(jī)和實驗室采集數(shù)量分別410、185張,分辨率大小分別為4517×3318(Pixel)、4732×3257(Pixel)、1437×2464(Pixel)。由于采集的數(shù)據(jù)集存在尺寸和清晰度的偏差,導(dǎo)致最終實驗結(jié)果不準(zhǔn)確。因此,實驗將對采集圖像進(jìn)行預(yù)處理,通過尺寸裁剪的方式將圖像大小控制在200×200(Pixel),共計1800張。將所有圖像集按照7∶2∶1的比例劃分,分為訓(xùn)練、驗證和測試。
3.3 參數(shù)設(shè)置
為使實驗結(jié)果更加準(zhǔn)確,實驗將對模型進(jìn)行多次訓(xùn)練,訓(xùn)練方式通過RMSprop算法進(jìn)行參數(shù)優(yōu)化。進(jìn)行多次訓(xùn)練后,得到該模型最大迭代數(shù)為400, Batch size為128,丟失率loss rate大小為0.5,學(xué)習(xí)率設(shè)置為0.0001。
3.4? 實驗結(jié)果
3.4.1 訓(xùn)練結(jié)果對比分析
完成以上參數(shù)設(shè)置后,在400次迭代次數(shù)下,將訓(xùn)練集和驗證集應(yīng)用到模型中,得到三者間的關(guān)系曲線,具體如圖3、圖4所示。
從圖3可以看出,迭代次數(shù)的不斷提升,訓(xùn)練和驗證的精度均能夠取得較高的效果,迭代至100次時,模型區(qū)域平穩(wěn)狀態(tài);當(dāng)?shù)螖?shù)更新至390次時,模型收斂速度減慢,且逐漸停止,其訓(xùn)練精度取值為95%;迭代至377次時,驗證精度達(dá)到94.3%。
從圖4可以看出,隨著迭代次數(shù)的不斷增加,損失函數(shù)在不斷減小,當(dāng)?shù)螖?shù)達(dá)到62次時,模型開始緩慢收斂,且最小損失值分別為0.08和0.17。
根據(jù)以上迭代結(jié)果,實驗將統(tǒng)計本模型與 VGG-13和ResNet模型的訓(xùn)練時間,具體結(jié)果如圖5所示。
從圖5可以看出,本模型提出的模型訓(xùn)練時間在3種模型中最短,訓(xùn)練只用了3825 s;另外2種模型分別花費(fèi)了25387 s和14528 s,比本模型分別高出了21562 s和10703 s。
3.4.2 驗證結(jié)果對比分析
為進(jìn)一步驗證 Crack-CNN 模型對裂縫圖像的識別準(zhǔn)確率,實驗將本模型與傳統(tǒng)的 VGG-13和ResNet識別模型進(jìn)行性能比較,得到對比結(jié)果如圖6所示。
從圖6可以看出,研究提出的模型在驗證集中的精度和損失值均比另外2種模型更好,說明提出的 Crack-CNN模型泛化能力更強(qiáng),魯棒性更佳,在真實的材料粘接裂縫識別中可取得更好的識別效果。
3.4.3 測試結(jié)果對比分析
為測試提出模型的分類效果,實驗將構(gòu)建混淆矩陣對測試集有無裂縫進(jìn)行試驗,測試結(jié)果如圖7所示。
從圖7展示結(jié)果可知,在測試集中,研究提出模型能夠?qū)崿F(xiàn)材料粘接分類的有效識別和分類,真正例、真反例分別可得到最高取值為0.95和0.93;而假正例和假反例分別為0.07和0.05。統(tǒng)計分析后可知,該模型對裂縫的識別平均準(zhǔn)確率為94%,十分接近于上述驗證精度的94.3%。由此說明,通過此模型可實現(xiàn)裂縫精準(zhǔn)識別,預(yù)測結(jié)果與實際結(jié)果大體一致。
4 結(jié)語
研究提出的Crack-CNN模型能夠?qū)崿F(xiàn)對粘接材料裂縫的準(zhǔn)確識別和分類,通過該模型與其他識別方法的對比結(jié)果發(fā)現(xiàn),提出模型的識別準(zhǔn)確率均保持在95%左右,且對比于其他模型來說,提出模型的訓(xùn)練精度和驗證精度最高,在短時間內(nèi)可實現(xiàn)快速訓(xùn)練,對于裂縫識別的準(zhǔn)確率和精度進(jìn)一步提升。綜合分析可知,提出的Crack-CNN模型在材料裂縫中具有較好的應(yīng)用效果,可在裂縫識別中進(jìn)行大力推廣和應(yīng)用。
【參考文獻(xiàn)】
[1] 應(yīng)俊杰,夏峰,盧國慶,等.基于深度學(xué)習(xí)的橋梁裂縫識別方法研究[J].水利規(guī)劃與設(shè)計,2021(1):75-80.
[2] 高慶飛,王宇,劉晨光,等.基于卷積神經(jīng)網(wǎng)絡(luò)算法的混凝土橋梁裂縫識別與定位技術(shù)[J].公路,2020,65(9):268-274.
[3] 張振華,陸金桂.基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)的混凝土橋梁裂縫檢測[J].計算機(jī)仿真,2021,38(11):490-494.
[4] 丁燕,杜啟振,QAMAR Y S,等.基于深度學(xué)習(xí)的裂縫預(yù)測在S區(qū)潛山碳酸鹽巖儲層中的應(yīng)用[J].石油物探,2020,59(2):267-275.
[5] 羅偉,梁世豪,姜鑫,等.基于深度學(xué)習(xí)的野外露頭區(qū)巖石裂縫識別[J].計算機(jī)與現(xiàn)代化,2020(5):56-62.
[6] 李可心,王鈞,戚大偉.基于 G-S-G的混凝土結(jié)構(gòu)裂縫識別及監(jiān)測方法[J].振動與沖擊,2020,39(11):101-108.
[7] 吳秋怡.基于語義分割網(wǎng)絡(luò)模型的路面裂縫識別[J].交通科技,2020(3):80-83.
[8] 孫朝云,馬志丹,李偉,等.基于深度卷積神經(jīng)網(wǎng)絡(luò)融合模型的路面裂縫識別方法[J].長安大學(xué)學(xué)報(自然科學(xué)版),2020,40(4):1-13.
[9] 雷斯達(dá),曹鴻猷,康俊濤.基于深度學(xué)習(xí)的復(fù)雜場景下混凝土表面裂縫識別研究[J].公路交通科技,2020,37(12):80-88.
[10] 王超,賈賀,張社榮,等.基于圖像的混凝土表面裂縫量化高效識別方法[J].水力發(fā)電學(xué)報,2021,40(3):134-144.
[11] 李想,熊進(jìn)剛.基于深度學(xué)習(xí) SSD 目標(biāo)檢測算法的混凝土結(jié)構(gòu)裂縫識別[J].南昌大學(xué)學(xué)報(工科版),2021,43(1):43-51.
[12] 張偉光,鐘靖濤,于建新,等.基于機(jī)器學(xué)習(xí)和圖像處理的路面裂縫檢測技術(shù)研究[J].中南大學(xué)學(xué)報(自然科學(xué)版),2021,52(7):2402-2415.
[13] 陳健昌,張志華.融于圖像多特征的路面裂縫智能化識別[J].科學(xué)技術(shù)與工程,2021,21(24):10491-10497.
[14] 孟慶成,萬達(dá),吳浩杰,等.基于卷積神經(jīng)網(wǎng)絡(luò)的混凝土裂縫圖像識別方法[J].沈陽建筑大學(xué)學(xué)報(自然科學(xué)版),2021,37(5):832-840.
[15] 馬健,閻衛(wèi)東,劉國奇.基于YOLOv5的古建筑木結(jié)構(gòu)裂縫檢測方法[J].沈陽建筑大學(xué)學(xué)報(自然科學(xué)版),2021,37(5):927-934.