彭建盛,李濤濤,侯雅茹,許恒銘
(1.廣西科技大學(xué)電氣與信息工程學(xué)院,廣西柳州 545000; 2.河池學(xué)院人工智能與制造學(xué)院,廣西宜州 546300)
裂紋是指材料在應(yīng)力和/或環(huán)境作用下產(chǎn)生的裂隙,它存在于道路、機(jī)械、建筑等各種結(jié)構(gòu)中。裂紋是引起大型復(fù)雜結(jié)構(gòu)被破壞的主要原因之一。早期初始的裂紋通常微小,隱匿而不易被發(fā)現(xiàn),容易被人們忽略,但裂紋的深入擴(kuò)展往往會導(dǎo)致重大災(zāi)難性事故的發(fā)生,如航空災(zāi)難、橋梁坍塌和油氣管線爆裂等,給國家和社會造成巨大的損失。因此,對早期初始微小裂紋的準(zhǔn)確檢測至關(guān)重要。傳統(tǒng)裂紋識別主要依賴人工,存在成本高、耗時(shí)長和可靠性偏低等問題,而實(shí)現(xiàn)裂紋自動化、智能化檢測是目前裂紋識別領(lǐng)域的研究熱點(diǎn)。
裂紋的自動檢測主要分為兩個(gè)步驟,一是裂紋圖像的采集,二是裂紋圖像的識別。前者依賴于無人機(jī)、激光掃描和衛(wèi)星等多種手段獲取,目前已有較多文獻(xiàn)對裂紋圖像采集進(jìn)行介紹;針對后者,自動檢測算法通過對數(shù)據(jù)的處理,實(shí)現(xiàn)對裂紋圖像的自動識別。近年來機(jī)器學(xué)習(xí)技術(shù)飛速發(fā)展,并已被廣泛應(yīng)用于自動檢測領(lǐng)域。傳統(tǒng)機(jī)器學(xué)習(xí)方法需要提前對特征進(jìn)行定義,但不同的特征定義將影響著模型的準(zhǔn)確性;與之相反,深度學(xué)習(xí)方法通過自動學(xué)習(xí)來獲取特征,不需要對特征提前定義,是當(dāng)今裂紋識別的主流技術(shù)。目前,已有許多研究人員對裂紋識別領(lǐng)域的方法進(jìn)行綜述。例如,Czimmermann等[1]從特征提取方法和分類網(wǎng)絡(luò)方面對近年來的裂紋識別技術(shù)進(jìn)行綜述,但對深度學(xué)習(xí)技術(shù)介紹較少。Hsieh等[2]主要介紹機(jī)器學(xué)習(xí)中的深度學(xué)習(xí)方法,詳細(xì)對比了各種網(wǎng)絡(luò)的檢測性能,但對機(jī)器學(xué)習(xí)的其他算法介紹很少。Byunghyun等[3]對各種深度學(xué)習(xí)方法進(jìn)行分析,選取具有代表性的網(wǎng)絡(luò)進(jìn)行測試,但是僅對混凝土裂紋進(jìn)行了研究。冉蓉等[4]對裂紋識別領(lǐng)域的機(jī)器學(xué)習(xí)方法和深度學(xué)習(xí)方法進(jìn)行梳理,詳細(xì)介紹了基于深度卷積神經(jīng)網(wǎng)絡(luò)的裂紋識別方法,同時(shí)也對傳統(tǒng)機(jī)器學(xué)習(xí)方法進(jìn)行了描述,但是未對具體算法進(jìn)行梳理分析。鑒于此,有必要梳理近年來機(jī)器學(xué)習(xí)方法在裂紋識別領(lǐng)域的研究進(jìn)展。
本文主要從以下幾個(gè)方面進(jìn)行闡述:首先,介紹機(jī)器學(xué)習(xí)和裂紋識別的背景知識;然后,從特征提取技術(shù)和分類器方面介紹傳統(tǒng)機(jī)器學(xué)習(xí)方法在裂紋識別方面的應(yīng)用,分析近年來機(jī)器學(xué)習(xí)在裂紋識別領(lǐng)域的發(fā)展趨勢;其次,從數(shù)據(jù)集、應(yīng)用對象和網(wǎng)絡(luò)結(jié)構(gòu)方面介紹深度學(xué)習(xí)方法在裂紋識別中的應(yīng)用及其性能,并結(jié)合文獻(xiàn)分析深度學(xué)習(xí)方法在裂紋識別領(lǐng)域的發(fā)展趨勢;最后,分析不同機(jī)器學(xué)習(xí)方法的優(yōu)缺點(diǎn),并對全文進(jìn)行總結(jié),以及對未來的研究方向進(jìn)行展望。本文旨在綜述基于機(jī)器學(xué)習(xí)的裂紋識別算法的最新研究動態(tài),確定機(jī)器學(xué)習(xí)在裂紋識別應(yīng)用上的發(fā)展趨勢,并對不同模型性能進(jìn)行評估,從而為科研人員提供潛在的研究焦點(diǎn)、發(fā)展方向及其研究思路。
機(jī)器學(xué)習(xí)尚未發(fā)展之前,研究人員利用圖像的像素特征和空間特征識別裂紋。李先沖[5]針對鋁合金機(jī)械鉸鏈中存在的裂紋,分析了圖像灰度直方圖,對圖像進(jìn)行線性拉伸和去除噪聲,構(gòu)建一階微分算子模板在圖像上移動,通過檢測異常值來確定是否存在裂紋。Tolba等[6]提出一種基于多尺度結(jié)構(gòu)相似性指數(shù)(MS-SSIM)的識別方法,該方法識別裂紋的成功率為99.1%。Yuan等[7]針對Otsu算法在表面裂紋識別中閾值選擇效果不好的問題,提出一種加權(quán)目標(biāo)方差的改進(jìn)方法,該方法的檢測率為94%,誤報(bào)率為8.4%,準(zhǔn)確率高于Otsu算法。這些識別方法不依賴任何先驗(yàn)知識,不需要任何數(shù)據(jù)的支撐,通過去噪、濾波、邊緣檢測、形態(tài)學(xué)等一系列圖像處理中的基本操作,實(shí)現(xiàn)對裂紋圖像的識別。
隨著機(jī)器學(xué)習(xí)的發(fā)展,機(jī)器學(xué)習(xí)方法被廣泛應(yīng)用于圖像識別。裂紋識別任務(wù)主要分為3類:裂紋分類、裂紋檢測和裂紋分割。裂紋分類的任務(wù)是將圖像分為裂紋圖像和非裂紋圖像;裂紋檢測則是在裂紋周圍產(chǎn)生包圍框;裂紋分割是將圖像中的像素分為裂紋和非裂紋。傳統(tǒng)機(jī)器學(xué)習(xí)方法的任務(wù)一般是對裂紋進(jìn)行分類識別。
傳統(tǒng)的機(jī)器學(xué)習(xí)分類技術(shù)通過對圖像的預(yù)處理得到圖像的特征,之后通過分類器來完成圖像的分類。特征的提取與分類器的選擇將直接影響分類的準(zhǔn)確性,可以選擇顏色、紋理、形狀等作為特征。應(yīng)用比較廣泛的分類器有支持向量機(jī)(Support Vector Machine,SVM)、K最近鄰(K-Nearest Neighbor,KNN)、決策樹、隨機(jī)森林、神經(jīng)網(wǎng)絡(luò)等。
為評價(jià)算法性能優(yōu)劣需要確定一套評價(jià)指標(biāo),對比預(yù)測圖像和真實(shí)圖像可以得到以下4個(gè)參數(shù):
TP:準(zhǔn)確預(yù)測裂紋圖像;
FP:非裂紋圖像預(yù)測為裂紋圖像;
FN:裂紋圖像預(yù)測為非裂紋圖像;
TN:準(zhǔn)確預(yù)測非裂紋圖像。
根據(jù)以上4個(gè)參數(shù)可以得到下面幾個(gè)評價(jià)指標(biāo)[1]。
Accuracy:對整個(gè)樣本空間中的樣本分類準(zhǔn)確的比例,
(1)
Precision:被認(rèn)為準(zhǔn)確的樣本中,實(shí)際上有多少是正的,
(2)
Recall:原本為正的樣本中,有多少被準(zhǔn)確識別,
(3)
F1:衡量二分類模型精確度的一種指標(biāo),兼顧分類模型的精確率和召回率,
(4)
支持向量機(jī)是一種監(jiān)督學(xué)習(xí)的分類器,已被廣泛應(yīng)用于裂紋分類過程[8-11]。SVM在計(jì)算上更容易訓(xùn)練,而且沒有局部極小問題,具有良好的圖像分類效果。但是,在處理大規(guī)模樣本時(shí),SVM難以訓(xùn)練,計(jì)算機(jī)會消耗大量的內(nèi)存和運(yùn)行時(shí)間。在特征選擇上,Zhang等[12]以RGB波段值作為特征值,使用SVM作為分類器對地表裂紋進(jìn)行分類,但RGB波段值只能描述裂紋的像素信息,容易受到噪聲的干擾。Sindagi等[13]提出一種改進(jìn)的局部二值方法,它通過提取裂紋的紋理特征來訓(xùn)練SVM分類器,在148 905個(gè)樣本上進(jìn)行裂紋檢測,取得93%的準(zhǔn)確率。針對SVM在樣本有限的情況下識別效果不佳的問題,Dong等[14]提出一種半監(jiān)督學(xué)習(xí)方法LapSVM,該方法將有監(jiān)督的核方法和無監(jiān)督的聚類方法相結(jié)合,既擁有SVM非線性處理能力,又能利用聚類解決數(shù)據(jù)量有限的問題,但是無監(jiān)督的聚類方法的加入會增加算法的時(shí)間成本。
K最近鄰算法是一種監(jiān)督學(xué)習(xí)算法,常被應(yīng)用于裂紋識別領(lǐng)域[15]。KNN算法通過不同特征之間的距離進(jìn)行分類,即如果一個(gè)樣本在特征空間中的K個(gè)最相似(特征空間中最鄰近)樣本大多數(shù)屬于某一個(gè)類別,則該樣本也屬于這個(gè)類別。其中K值是分類的鄰居數(shù)量,K值的大小會影響分類的效果,但K值在選擇時(shí)只能依靠經(jīng)驗(yàn)。K值較小時(shí),不同類之間的邊界比較清楚,但會出現(xiàn)分類噪聲,K值較大時(shí)正好相反。特征的選擇同樣重要,不同的特征會對分類的準(zhǔn)確率造成影響。Mandriota等[16]使用Gabor濾波器提取特征并利用KNN算法檢查鐵軌表面的裂紋,討論K值大小對準(zhǔn)確率的影響。López等[17,18]提取瓷磚碎塊的RGB信息和質(zhì)地作為特征,通過KNN算法實(shí)現(xiàn)分類,準(zhǔn)確率達(dá)到90%以上。單一算法提取到的特征有時(shí)無法滿足識別任務(wù)的要求,多種算法的混合可以很好地對特征進(jìn)行提取。為從圖像特征的角度捕獲鋼材表面的紋理屬性,Wiltschi等[19]應(yīng)用數(shù)學(xué)形態(tài)學(xué)、多通道Gabor濾波,通過線性比例空間中的自動比例選擇進(jìn)行紋理測量的計(jì)算。Latif-Amet等[20]使用小波變換和灰度共生矩陣的混合算法進(jìn)行特征提取,通過參數(shù)距離分類圖像取得不錯(cuò)的效果。這些算法通過不同的特征提取方法完成對裂紋的識別,但都只能通過實(shí)驗(yàn)法對K值進(jìn)行選擇,這也是KNN算法的局限。
決策樹算法是一種逼近離散函數(shù)值的方法,其本質(zhì)上是通過一系列規(guī)則對數(shù)據(jù)進(jìn)行分類。作為一種典型的分類方法,決策樹算法首先對數(shù)據(jù)進(jìn)行處理,利用歸納算法生成可讀的規(guī)則和決策樹,然后使用決策樹對數(shù)據(jù)進(jìn)行分析。針對在裂紋特征提取中存在特征單一的問題,Kim等[21]使用一種基于空間自相關(guān)方法,提出廣義不確定決策樹模型,對不確定特征的芯片缺陷進(jìn)行分類,該算法性能優(yōu)于其他算法,但是僅能用于芯片缺陷,無法推廣。Chang等[22]提取圖像的幾何特征和強(qiáng)度特征構(gòu)造決策樹,從而對木材表面裂紋進(jìn)行分類,準(zhǔn)確率達(dá)到94.1%,但是由于木材本身紋理的干擾,幾何特征無法很好地描述裂紋特征。此外,Sumesh等[23]和鐘映春[24]對焊縫裂紋使用決策樹算法進(jìn)行分類識別,獲得了較高的正確率。
由于決策樹容易陷入過擬合,有學(xué)者提出了一種基于決策樹的隨機(jī)森林算法,即用多棵決策樹投票來改善決策樹過擬合問題。隨機(jī)森林算法具有訓(xùn)練速度快、泛化能力強(qiáng)和分類準(zhǔn)確率高等優(yōu)點(diǎn),因而被廣泛應(yīng)用在裂紋識別領(lǐng)域[25,26]。Patel等[27]研究表明隨機(jī)森林算法能對鋼材表面裂紋進(jìn)行有效檢測,但是單一算法在提取裂紋特征和分類時(shí)效果較差,精度無法滿足工業(yè)要求。Kwon等[28]使用圖像方差的方差(Variance of Variance,VOV)結(jié)合隨機(jī)森林算法實(shí)現(xiàn)了對表面裂紋的有效識別。Wang等[29]提出一種改進(jìn)的最佳多特征融合(OMFF-RF)的混合算法并應(yīng)用于鋼材表面裂紋檢測,結(jié)果顯示相較于支持向量機(jī)和隨機(jī)森林算法,混合算法的性能顯著提高(表1),同時(shí)混合特征相較于單一特征表現(xiàn)出更高的準(zhǔn)確率,但是會增加時(shí)間成本。針對樣本量較少的裂紋,何嘉林[30]使用隨機(jī)森林算法和貝葉斯結(jié)合的混合算法,實(shí)現(xiàn)了較高的識別率。因此,與單一算法相比,多種算法混合使用可以有效提升裂紋識別的檢測效果。
表1 不同方法的性能比較[29]
人工神經(jīng)網(wǎng)絡(luò)也是常見的分類器之一[31,32],它是一種模仿人類神經(jīng)元網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型。Guo等[33]將提取到的特征輸入到神經(jīng)網(wǎng)絡(luò)中,實(shí)現(xiàn)鋁合金裂紋的智能識別,但對噪聲敏感度和識別精度均偏低。為提高裂紋圖像的識別精度,姚楠等[34]對提取到的特征進(jìn)行無量綱化處理,并使用人工神經(jīng)網(wǎng)絡(luò)建立圖像識別模型,識別精度和速度均能滿足工作要求。張穎等[35]利用BP神經(jīng)網(wǎng)絡(luò)對焊接冷裂紋進(jìn)行識別,楊紹普等[36]使用概率神經(jīng)網(wǎng)絡(luò)判斷橋梁的裂紋損傷位置,由于他們均只使用神經(jīng)網(wǎng)絡(luò)對裂紋進(jìn)行識別,因而識別精度較差。邱忠超等[37]針對鐵磁材料的微裂紋識別,采用主成分分析和神經(jīng)網(wǎng)絡(luò)結(jié)合的混合方法進(jìn)行檢測,取得較高的精度。譚衛(wèi)雄等[38]使用人工蜂群(ABC)優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值,提出一種道路裂紋檢測的混合神經(jīng)網(wǎng)絡(luò),結(jié)果如表2所示,改進(jìn)的混合算法在準(zhǔn)確率、精確率、召回率和F1分?jǐn)?shù)上均優(yōu)于普通BP神經(jīng)網(wǎng)絡(luò)和基本的ABC-BP算法。
表2 不同算法的結(jié)果對比[38]
針對在裂紋識別領(lǐng)域幾種常用的機(jī)器學(xué)習(xí)方法,前文已從特征提取和分類器方面進(jìn)行介紹,現(xiàn)對文獻(xiàn)進(jìn)行綜合分析。以近20年為時(shí)間范圍(2000-2020年),本文共搜索到31篇內(nèi)容相關(guān)性較高的文獻(xiàn)?;诓煌诸惼鬟M(jìn)行統(tǒng)計(jì)(圖1),關(guān)于KNN、SVM、決策樹、隨機(jī)森林和神經(jīng)網(wǎng)絡(luò)等各種分類器研究的文獻(xiàn)數(shù)量相差不多。但從時(shí)間進(jìn)程上看(圖2),對于KNN算法的研究主要集中在十年以前,近些年來對此研究越來越少;另外,涉及KNN算法的文獻(xiàn)中,多數(shù)是使用KNN算法進(jìn)行對比分析,而不是對KNN算法進(jìn)行研究。其他分類器SVM、決策樹、隨機(jī)森林和神經(jīng)網(wǎng)絡(luò),最近幾年依舊是研究的熱門。
圖1 文獻(xiàn)中所使用方法的占比
圖2 不同方法每五年發(fā)表的論文數(shù)量
如圖3所示,關(guān)于在裂紋識別領(lǐng)域的機(jī)器學(xué)習(xí)方法,十年之前的研究熱點(diǎn)為單一算法。但近年來,單一算法已經(jīng)無法滿足對裂紋高精度識別的要求,混合算法的研究已逐漸占據(jù)主流地位。例如,針對特征選擇和分類器優(yōu)化,研究人員使用遺傳算法、人工蜂群算法和最佳特征選擇算法等多種算法進(jìn)行研究,可以有效提升識別效果。
圖3 單一算法和混合算法在文獻(xiàn)中的比較
從特征提取方法來看,常用的特征提取方法有顏色直方圖、共生矩陣、局部二值模式、自相關(guān)和空間濾波等,他們的優(yōu)缺點(diǎn)見表3。當(dāng)單一特征無法準(zhǔn)確描述裂紋特征,就需要用多個(gè)特征進(jìn)行描述以增加識別率,同時(shí)特征選擇還應(yīng)考慮不同的應(yīng)用對象。
表3 常見的特征提取方法及其優(yōu)缺點(diǎn)
圖4展示了裂紋識別中不同的應(yīng)用對象。目前針對金屬裂紋研究最多,占比為65%,而金屬裂紋中,鋼鐵材料的裂紋識別占比最多。
圖4 裂紋識別中不同的應(yīng)用對象
對于傳統(tǒng)機(jī)器學(xué)習(xí)中的裂紋識別任務(wù),在特征提取的方法上存在通用性,無論是圖像的空間特征還是像素特征,都可以作為分類器的輸入進(jìn)行識別,最終識別效果依賴于分類器學(xué)習(xí)的結(jié)果。與其他算法相比,KNN算法通過特征空間內(nèi)不同樣本的距離進(jìn)行分類,對簡單特征可以進(jìn)行有效的分類,但對較為復(fù)雜的特征效果較差。同樣是通過特征之間的距離進(jìn)行分類,SVM算法通過將樣本特征映射到高維空間進(jìn)行計(jì)算,在處理裂紋識別任務(wù)時(shí)的效果要優(yōu)于KNN算法。不同于KNN算法和SVM算法,決策樹算法通過對特征的歸納生成規(guī)則和決策樹,再利用決策樹對特征進(jìn)行分類。隨機(jī)森林算法通過構(gòu)造多棵決策樹進(jìn)行分類,本質(zhì)上同決策樹算法一樣,只是利用多棵決策樹處理數(shù)據(jù)。神經(jīng)網(wǎng)絡(luò)有別于前面幾種分類器,通過模仿人類神經(jīng)元的工作方式進(jìn)行分類,神經(jīng)元之間的加權(quán)連接由激活函數(shù)相關(guān)聯(lián)的輸入值進(jìn)行調(diào)整。人工神經(jīng)網(wǎng)絡(luò)中最常用的模型是BP神經(jīng)網(wǎng)絡(luò),其通過反向傳播和誤差校正學(xué)習(xí)算法進(jìn)行學(xué)習(xí)。
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)的一個(gè)研究方向,可以解決傳統(tǒng)機(jī)器學(xué)習(xí)方法無法解決的問題。前文主要綜述了幾種傳統(tǒng)機(jī)器學(xué)習(xí)方法在裂紋識別方面的應(yīng)用,其重點(diǎn)在于對特征的提取,但傳統(tǒng)機(jī)器學(xué)習(xí)面對復(fù)雜對象時(shí)特征提取顯得較為困難。與傳統(tǒng)機(jī)器學(xué)習(xí)相比,深度學(xué)習(xí)可以通過學(xué)習(xí)獲取特征,這種能力解決了裂紋識別中復(fù)雜特征提取困難的問題。深度學(xué)習(xí)需要大量數(shù)據(jù)的支持,人類通過不斷地優(yōu)化網(wǎng)絡(luò)模型提升網(wǎng)絡(luò)的學(xué)習(xí)能力,選擇不同的卷積核和優(yōu)化參數(shù)來配置執(zhí)行特征學(xué)習(xí)、模型構(gòu)建和模型訓(xùn)練,提升網(wǎng)絡(luò)性能。
卷積神經(jīng)網(wǎng)絡(luò)(CNN)是一種前饋神經(jīng)網(wǎng)絡(luò),是深度學(xué)習(xí)中最常用的網(wǎng)絡(luò),其根據(jù)仿生學(xué)原理模仿動物視覺組織,將圖片作為網(wǎng)絡(luò)輸入并使用神經(jīng)網(wǎng)絡(luò)的分類結(jié)果作為輸出,因此CNN具有自動學(xué)習(xí)特征的優(yōu)點(diǎn)。CNN網(wǎng)絡(luò)在訓(xùn)練時(shí)通過特征提取器提取特征代替人為提取,其特征提取器由神經(jīng)網(wǎng)絡(luò)組成,通過訓(xùn)練不斷更新找到最優(yōu)權(quán)重。圖5展示了CNN的網(wǎng)絡(luò)結(jié)構(gòu)圖,它由一個(gè)特征提取網(wǎng)絡(luò)和一個(gè)圖像分類網(wǎng)絡(luò)組成,特征提取網(wǎng)絡(luò)由卷積層和池化層組成。卷積層通過卷積對圖像上的像素點(diǎn)進(jìn)行運(yùn)算,經(jīng)過卷積層產(chǎn)生的新圖像包含了原本圖像的特征,被稱為特征圖。池化層可以縮小圖像尺寸,減少數(shù)據(jù)量。
圖5 CNN網(wǎng)絡(luò)結(jié)構(gòu)示意圖
在訓(xùn)練和評估學(xué)習(xí)網(wǎng)絡(luò)時(shí),需要大量數(shù)據(jù)的支撐,而原始數(shù)據(jù)的獲取是一個(gè)問題。對于大裂紋,可以通過拍攝直接獲??;對于微裂紋,可以通過激光掃描的方法來獲取原始圖像[39-41]。隨著傳感器技術(shù)的進(jìn)步,三維激光技術(shù)已經(jīng)成為獲取高分辨率、全覆蓋三維數(shù)據(jù)的方法[42]。表4展示了幾種常用的裂紋數(shù)據(jù)庫。
表4 裂紋數(shù)據(jù)集
金屬裂紋的識別一直備受人們關(guān)注[57]。針對輕量級裂紋識別,楊晶晶等[58]基于深度學(xué)習(xí)方法和Single Shot MultiBox Detector (SSD)模型提出一種裂紋自動檢測算法。該算法通過擴(kuò)充訓(xùn)練模型空間分辨率,極大地提高了檢測效率,但是召回率較低。為尋找更適合裂紋識別的網(wǎng)絡(luò),劉建紅[59]比較了各種深度學(xué)習(xí)方法,發(fā)現(xiàn)Faster_R-CNN-ResNet50-FPN相較于其他算法有較好的識別結(jié)果。范晨亮等[60]選取ResNeXt-101并添加金字塔網(wǎng)絡(luò)對Region-based CNN (RCNN)網(wǎng)絡(luò)進(jìn)行改進(jìn),獲得更高的精度,但是識別速率有待提升。Manjurul等[61]提出一種基于遺傳算法與深度學(xué)習(xí)的方法,在遺傳算法中引入類內(nèi)距離與類間距離之比的適應(yīng)度函數(shù)和多通道異質(zhì)特征模型,作為選擇判別特征集,然后結(jié)合Deep Neural Network (DNN)對裂紋進(jìn)行分類并取得了很好的效果。
在自然環(huán)境中,由于風(fēng)吹日曬,混凝土建筑極易開裂,對這些裂紋進(jìn)行及時(shí)檢測可以減少事故的發(fā)生[62-64]。Cha等[65]提出一種Deep Convolutional Neural Networks (DCNN)結(jié)構(gòu)用于識別混凝土裂紋,使用滑動窗口對圖像patch進(jìn)行裁剪并作為分類器的輸入,實(shí)驗(yàn)表明該方法優(yōu)于傳統(tǒng)的邊緣檢測方法。Zhang等[66]提出一種基于DCNN的裂紋自動檢測方法,經(jīng)過訓(xùn)練的網(wǎng)絡(luò)能夠判斷輸入的圖像patch是否含有裂紋,而且該方法比傳統(tǒng)機(jī)器學(xué)習(xí)方法具有更高的分類精度。Islam等[67]提出了一種由全卷積神經(jīng)網(wǎng)絡(luò)(FCN)和用于語義分割的編碼器和解碼器框架組成的網(wǎng)絡(luò)執(zhí)行像素級分類,實(shí)驗(yàn)驗(yàn)證該方法對混凝土裂紋識別非常有效。Dung等[68]針對混凝土裂紋圖像的語義分割,提出一種基于全卷積網(wǎng)絡(luò)(FCN)的裂紋識別方法;在40 000幅227 × 227像素的混凝土裂紋圖像上,對FCN編碼器作為主干的3種預(yù)訓(xùn)練網(wǎng)絡(luò)架構(gòu)的性能進(jìn)行評估,平均精度達(dá)到90%。Feng等[69]提出一種利用深度卷積網(wǎng)絡(luò)檢測大壩表面裂紋的方法(CDDS),使用裂紋數(shù)據(jù)集對CDDS網(wǎng)絡(luò)進(jìn)行訓(xùn)練、驗(yàn)證和測試;將預(yù)測結(jié)果與基于ResNet152、FCN、UNet和SegNet模型的結(jié)果進(jìn)行比較,結(jié)果顯示CDDS網(wǎng)絡(luò)對壩面裂紋識別具有較好的性能,具體如表5所示。
表5 不同網(wǎng)絡(luò)對混凝土結(jié)構(gòu)識別的性能對比[69]
掌握道路裂紋情況可為道路養(yǎng)護(hù)工作提供數(shù)據(jù)支持[70-74]。為將裂紋和背景進(jìn)行區(qū)分,Li等[75]提出一種基于U-Net和交替更新團(tuán)的卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)方法,對隧道圖像中裂紋與背景進(jìn)行分離,雖然該方法在測試集中表現(xiàn)不錯(cuò),但是在實(shí)踐中效果并不好。Zhang等[76]提出一種基于遷移學(xué)習(xí)的路面裂紋識別方法,可區(qū)分裂紋與背景,即對預(yù)先訓(xùn)練好的AlexNet中的kernel的權(quán)重和偏置進(jìn)行轉(zhuǎn)移,將圖像patch分類為裂紋、封閉裂紋和背景區(qū)域。Liu等[77]為精確提取路面裂紋,提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的兩步檢測方法,在提取到路面裂紋后使用改進(jìn)U-Net網(wǎng)絡(luò)對裂紋進(jìn)一步分割,裂紋識別和分割準(zhǔn)確率均達(dá)到90%以上。表6列舉了幾種有關(guān)道路裂紋的檢測模型,使用不同數(shù)據(jù)對這些檢測模型進(jìn)行評估,評估中使用3種不同的評價(jià)指標(biāo):數(shù)據(jù)集上固定閾值的最佳f測度(ODS)、數(shù)據(jù)集上每個(gè)圖像最佳閾值的聚集f測度(OIS)和平均精度(AP),其值越大代表性能越好。評估結(jié)果如表7所示,基于深度網(wǎng)絡(luò)裂紋識別網(wǎng)絡(luò)DeepCrack的效果優(yōu)于其他網(wǎng)絡(luò),表明更深的網(wǎng)絡(luò)可以更好地提取裂紋的深度特征。
表6 道路裂紋檢測模型
表7 不同方法在不同數(shù)據(jù)集上的性能對比
除此之外,許多學(xué)者使用深度學(xué)習(xí)方法對裂紋識別的其他問題進(jìn)行研究[86-90]。Alipour等[91]利用深度全卷積模型(CrackPix)進(jìn)行裂紋檢測,將網(wǎng)絡(luò)的全連接層轉(zhuǎn)換成卷積濾波器,從而實(shí)現(xiàn)像素級識別。Ren等[92]提出一種改進(jìn)的深度全卷積神經(jīng)網(wǎng)絡(luò),稱為CrackSegNet,用于像素級裂紋分割:網(wǎng)絡(luò)由主干網(wǎng)絡(luò)、擴(kuò)展卷積、空間金字塔池和跳過連接模塊組成,這些模塊可用于高效的多尺度特征提取、聚集和分辨率重建,并極大地增強(qiáng)網(wǎng)絡(luò)的整體裂紋分割能力。Wang等[93]針對訓(xùn)練CNN網(wǎng)絡(luò)樣本過少的問題,使用一種兩階段的數(shù)據(jù)增強(qiáng)方法構(gòu)造了一個(gè)裂紋檢測器,取得了96%召回率。Xu等[94]提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的裂紋識別模型,該模型利用傳統(tǒng)卷積、Atrous空間金字塔池(ASPP)模型和深度可分卷積的優(yōu)點(diǎn),在沒有預(yù)訓(xùn)練的情況下實(shí)現(xiàn)了96.37%的檢測精度。王森等[95]針對裂紋識別實(shí)驗(yàn)中FCN模型存在丟失局部信息和喪失部分精細(xì)化區(qū)分能力的問題,構(gòu)建了Crack FCN網(wǎng)絡(luò)模型,該模型在提高檢測精度的同時(shí)可以有效地降低錯(cuò)誤標(biāo)記。
前述從網(wǎng)絡(luò)結(jié)構(gòu)、數(shù)據(jù)集、應(yīng)用對象等方面分析了深度學(xué)習(xí)在裂紋識別領(lǐng)域的應(yīng)用,本節(jié)對相關(guān)文獻(xiàn)進(jìn)行綜合分析。如圖6所示,近20年來在裂紋識別領(lǐng)域的相關(guān)文獻(xiàn)共81篇,其中機(jī)器學(xué)習(xí)31篇,深度學(xué)習(xí)50篇。隨著深度學(xué)習(xí)的發(fā)展,其在裂紋識別方面逐漸占據(jù)主流地位,尤其是最近五年,越來越多的人傾向使用深度學(xué)習(xí)方法進(jìn)行裂紋識別的研究。
圖6 不同時(shí)段有關(guān)深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的文獻(xiàn)數(shù)量對比
如圖7所示,基于深度學(xué)習(xí)的裂紋識別大都集中在道路、混凝土建筑和金屬上,他們的文獻(xiàn)數(shù)量占比分別為55%、26%和15%。深度學(xué)習(xí)需要大量數(shù)據(jù)的支撐,目前公開的建筑裂紋數(shù)據(jù)集多為道路裂紋和混凝土結(jié)構(gòu)裂紋,而路面裂紋數(shù)據(jù)集較少,因其屬于常見的裂紋,數(shù)據(jù)采集比較容易。
圖7 深度學(xué)習(xí)應(yīng)用對象
基于網(wǎng)絡(luò)選擇角度,裂紋識別使用了深度學(xué)習(xí)中常見的網(wǎng)絡(luò),包括RCNN、DCNN、VGG、AlexNet和U-Net等。在本文綜述的50篇深度學(xué)習(xí)文獻(xiàn)中,使用單一網(wǎng)絡(luò)、混合網(wǎng)絡(luò)分別有21篇和29篇,可見目前深度學(xué)習(xí)網(wǎng)絡(luò)的研究以混合網(wǎng)絡(luò)為主。相比于單一網(wǎng)絡(luò),混合網(wǎng)絡(luò)在裂紋識別上的效果更加出眾。在深度學(xué)習(xí)中引入遺傳算法、金字塔網(wǎng)絡(luò)等,或者將兩種或多種深度學(xué)習(xí)網(wǎng)絡(luò)進(jìn)行融合,能有效提高網(wǎng)絡(luò)的識別精度。
在傳統(tǒng)機(jī)器學(xué)習(xí)方法中,需要人為地對裂紋圖像進(jìn)行特征提取,特征的選擇需要人為把握。但是,深度學(xué)習(xí)方法在神經(jīng)網(wǎng)絡(luò)中引入卷積操作,通過大小不同的卷積核學(xué)習(xí)圖像特征,使自動學(xué)習(xí)裂紋圖像特征成為現(xiàn)實(shí),省去人為選擇特征步驟,而且往往比人為選擇的特征更加準(zhǔn)確。深度學(xué)習(xí)方法中有眾多網(wǎng)絡(luò),廣泛應(yīng)用于裂紋識別領(lǐng)域的有RCNN、DCNN、VGG、AlexNet和U-Net等。這些網(wǎng)絡(luò)在本質(zhì)上都是通過不斷地卷積學(xué)習(xí)裂紋特征,以便用于最后的分類,但他們的網(wǎng)絡(luò)深度和結(jié)構(gòu)有差異。DCNN網(wǎng)絡(luò)學(xué)習(xí)深度最高,能更加準(zhǔn)確地識別裂紋特征,因此其應(yīng)用范圍也最廣。
本文分別介紹了支持向量機(jī)、KNN、隨機(jī)森林、決策樹和人工神經(jīng)網(wǎng)絡(luò)等多種機(jī)器學(xué)習(xí)方法,以及深度學(xué)習(xí)在裂紋識別的研究。由于機(jī)器學(xué)習(xí)方法的發(fā)展,近年來對KNN算法的研究越來越少,但KNN算法簡單易操作,精度依賴于對K值的選擇,因此研究自適應(yīng)K值選擇方法依舊有意義。支持向量機(jī)作為一種常見的分類器被廣泛應(yīng)用,可以很好地應(yīng)對學(xué)習(xí)過程中過擬合問題和線性不可分的問題。決策樹算法簡單易懂,且不受數(shù)據(jù)縮放的影響,但是存在過擬合和泛化性能差的問題。隨機(jī)森林是由大量隨機(jī)初始化決策樹組成的分類器,可以判斷特征的重要程度及不同特征之間的相互影響,還具有不易過擬合、訓(xùn)練速度快等優(yōu)點(diǎn),缺點(diǎn)是在某些噪音較大的分類或回歸問題上存在過擬合。與其他分類器相比,神經(jīng)網(wǎng)絡(luò)的分類準(zhǔn)確度有很大的優(yōu)勢,但其對數(shù)據(jù)和算力的依賴性極大,而且訓(xùn)練過程如同“黑匣子”,這意味著難以知曉如何產(chǎn)出結(jié)果及其原因。
基于本文的回顧,我們認(rèn)為未來的研究方向有以下5點(diǎn):
①傳統(tǒng)的機(jī)器學(xué)習(xí)方法依賴于特征的選取,其研究主要集中在如何獲得更準(zhǔn)確的特征進(jìn)行分類。未來可以針對某類的裂紋識別,比如金屬裂紋、道路裂紋等,建立統(tǒng)一特征提取模型和評估模型,為人工選擇裂紋特征提供參考。
②深度學(xué)習(xí)不需要人為選取特征,它會通過輸入的數(shù)據(jù)學(xué)習(xí)圖像特征。因此,構(gòu)建優(yōu)秀的學(xué)習(xí)模型,提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練效率和收斂能力一直是研究的重要內(nèi)容。深度學(xué)習(xí)會消耗大量的計(jì)算資源,如何在減少資源消耗的同時(shí),獲得良好的性能是一個(gè)需要解決的問題。
③無論是機(jī)器學(xué)習(xí)還是深度學(xué)習(xí),兩者都依賴大量數(shù)據(jù)的支持,裂紋圖像的獲取相較于其他圖像更加困難。減少網(wǎng)絡(luò)對數(shù)據(jù)的依賴性或者對數(shù)據(jù)進(jìn)行增廣也是一個(gè)研究方向,目前基于對抗神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)增廣技術(shù)正在被研究[96],未來可以應(yīng)用于裂紋圖像。
④無論是機(jī)器學(xué)習(xí)還是深度學(xué)習(xí),單一算法/網(wǎng)絡(luò)難以滿足裂紋識別任務(wù)的要求,越來越多的人使用混合算法/網(wǎng)絡(luò),混合方法將是以后發(fā)展的方向。
⑤由于深度學(xué)習(xí)的發(fā)展,人們越來越熱衷于使用深度學(xué)習(xí)方法進(jìn)行研究,傳統(tǒng)機(jī)器學(xué)習(xí)方法面臨巨大的挑戰(zhàn)。深度學(xué)習(xí)方法有諸多優(yōu)勢,而傳統(tǒng)算法也有著不可忽視的作用,傳統(tǒng)算法與深度學(xué)習(xí)方法相互結(jié)合才是未來的發(fā)展趨勢。