冉 蓉,徐興華,邱少華,崔小鵬,歐陽(yáng)斌
海軍工程大學(xué) 艦船綜合電力技術(shù)國(guó)防科技重點(diǎn)實(shí)驗(yàn)室,武漢430033
隨著社會(huì)經(jīng)濟(jì)的發(fā)展,建筑物、橋梁、道路和鐵路等民用基礎(chǔ)設(shè)施的規(guī)模越來(lái)越龐大,保持良好的運(yùn)行狀態(tài)對(duì)于公共安全至關(guān)重要。而裂紋是威脅民用基礎(chǔ)設(shè)施安全運(yùn)行的重要因素之一,見(jiàn)圖1[1]和圖2。及時(shí)準(zhǔn)確地檢測(cè)出裂紋的萌生及擴(kuò)展情況,可以有效避免重大災(zāi)難性事故的發(fā)生[2]。因此,裂紋檢測(cè)在經(jīng)濟(jì)、交通、建筑、船舶等領(lǐng)域均有重要的應(yīng)用價(jià)值。
圖1 混凝土表面裂紋
裂紋根據(jù)其出現(xiàn)材料位置的不同,可分為表面裂紋和內(nèi)部裂紋,本文主要聚焦表面裂紋的檢測(cè)方法。早期表面裂紋檢測(cè)的主要手段是靠人眼識(shí)別,該方法受視覺(jué)分辨力的限制,受外界環(huán)境影響較大,容易因視覺(jué)疲勞導(dǎo)致效率低、精度低的問(wèn)題;此外,由于檢測(cè)人員個(gè)人主觀經(jīng)驗(yàn)存在差異性,很難形成一個(gè)客觀統(tǒng)一的檢測(cè)標(biāo)準(zhǔn)。隨后,類似于聲學(xué)、光學(xué)、射線等傳統(tǒng)無(wú)損檢測(cè)方法的應(yīng)用和各種檢測(cè)器件的更新升級(jí)推動(dòng)了檢測(cè)精度和檢測(cè)速度的相對(duì)提高[3]。這些檢測(cè)方法雖然涉及了民用基礎(chǔ)設(shè)施的各個(gè)領(lǐng)域,并在各自的待檢測(cè)對(duì)象上具備獨(dú)特的優(yōu)勢(shì),但大多數(shù)檢測(cè)方法的應(yīng)用還是符合特定檢測(cè)條件的前提下所進(jìn)行的人為操作。這些方法均只能判斷裂紋的有無(wú),無(wú)法對(duì)裂紋進(jìn)行定性地分類以及測(cè)量[4]。計(jì)算機(jī)視覺(jué)技術(shù)通過(guò)相機(jī)等傳感器設(shè)備非接觸式地采集物體表面的圖像并進(jìn)行自動(dòng)化地分析處理,具有精確性高、非接觸性、靈活性、成本低等優(yōu)點(diǎn),在裂紋檢測(cè)領(lǐng)域得到越來(lái)越廣泛的應(yīng)用[5]。王凡等人[6]采用基于數(shù)學(xué)形態(tài)學(xué)與圖像融合的方法解決了板帶鋼裂紋檢測(cè)的問(wèn)題;Chambon 等人[7]利用計(jì)算機(jī)視覺(jué)的方法解決了道路裂紋的自動(dòng)檢測(cè)與評(píng)估問(wèn)題;2017年,同濟(jì)大學(xué)研制出一套隧道檢測(cè)系統(tǒng)MTI-100[8],此系統(tǒng)使用圖像處理技術(shù)實(shí)現(xiàn)了在移動(dòng)中對(duì)裂紋的定位與檢測(cè),但其還需要一定的人工輔助。上述方法雖然在裂紋檢測(cè)方面取得了顯著的效果,但是設(shè)計(jì)特征提取器依賴于豐富的先驗(yàn)知識(shí),針對(duì)特定的裂紋檢測(cè)問(wèn)題需要進(jìn)行特定的處理與設(shè)計(jì),具有特征構(gòu)造復(fù)雜和通用性差等問(wèn)題。一旦檢測(cè)的圖像與環(huán)境發(fā)生變化,其檢測(cè)效果亦會(huì)隨之下降[9]。
自2006年Hinton等人[10]在Science上發(fā)表深度學(xué)習(xí)相關(guān)論文以來(lái),深度學(xué)習(xí)技術(shù)得到了深入的研究,為解決上述問(wèn)題提供了新的思路。相較于傳統(tǒng)機(jī)器學(xué)習(xí)算法而言,深度學(xué)習(xí)具有更強(qiáng)大的特征學(xué)習(xí)和特征表達(dá)能力,在計(jì)算機(jī)視覺(jué)領(lǐng)域的大規(guī)模復(fù)雜識(shí)別任務(wù)中表現(xiàn)更為出色[11]。在過(guò)去幾年中,許多國(guó)內(nèi)外學(xué)者已經(jīng)將深度學(xué)習(xí),特別是深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks,DCNN)的方法應(yīng)用于裂紋檢測(cè)領(lǐng)域中。Soukup 等人[12]將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于金屬表面裂紋檢測(cè);郭亞萍等人[13]利用SegNet網(wǎng)絡(luò)實(shí)現(xiàn)了對(duì)工件表面裂紋的檢測(cè);Deng 等人[14]提出了CNN 與基于變分模式相結(jié)合的裂紋檢測(cè)方法,解決了電纜早期裂紋檢測(cè)問(wèn)題。本文對(duì)裂紋檢測(cè)方法進(jìn)行了綜述,著重探討了基于深度學(xué)習(xí),特別是DCNN 的裂紋檢測(cè)方法,分析了現(xiàn)存問(wèn)題及未來(lái)可能的研究方向。
圖2 鋼材表面裂紋
由于裂紋通常是因外界應(yīng)力或環(huán)境作用導(dǎo)致材料內(nèi)部疲勞,進(jìn)而在表面產(chǎn)生的細(xì)縫、裂隙、斷裂等。根據(jù)其產(chǎn)生本質(zhì)的不同,可分為熱裂紋、冷裂紋、層狀撕裂及應(yīng)力腐蝕裂紋等。在實(shí)際應(yīng)用場(chǎng)景中,根據(jù)裂紋產(chǎn)生部位和宏觀特征的不同,采用的物理檢測(cè)手段也多種多樣,例如:超聲波、渦流檢測(cè)、散斑干涉和射線檢測(cè)等[15-24],如表1所示。
蘇忠高[25]等人利用超聲波時(shí)距檢測(cè)法實(shí)現(xiàn)了對(duì)混凝土結(jié)構(gòu)內(nèi)部深度單一的裂紋的檢測(cè),并發(fā)現(xiàn)傳感器與被檢測(cè)物表面耦合情況、檢測(cè)人員對(duì)傳感器按壓力度等因素會(huì)影響檢測(cè)結(jié)果;與此同時(shí),一種用于檢測(cè)鋼板結(jié)合處的不可見(jiàn)裂紋的超聲波鋼板裂紋檢測(cè)方法被Li等人[26]提出,此法解決了檢測(cè)范圍受到限制的問(wèn)題。2015年,Liu 等人[27]利用了雙光束空間載波數(shù)字散斑干涉技術(shù)實(shí)現(xiàn)了零件表面和內(nèi)部形變的同時(shí)測(cè)量,但由于粗糙表面的條紋圖案會(huì)產(chǎn)生與裂紋相似的散斑噪聲的原因,導(dǎo)致粗糙表面裂紋的檢測(cè)精度較低;為此2018 年Vincitorio 等人[28]提出了一種無(wú)透鏡傅里葉數(shù)字全息干涉技術(shù)的光學(xué)裂紋檢測(cè)方法,利用非均勻熱載荷代替均勻熱載荷作為激勵(lì)源,克服了在展開相位圖中無(wú)法觀察到干涉條紋位移的問(wèn)題,有效改善了粗糙表面裂紋檢測(cè)的檢測(cè)精度。而在電磁學(xué)中,Priewald 等人[29]利用基于有限元件非線性正向模型和高斯-牛頓優(yōu)化算法的閉環(huán)偽逆法,實(shí)現(xiàn)了對(duì)任意形狀裂紋的二維重構(gòu),但此法的實(shí)現(xiàn)效果依賴于高精度的漏磁檢測(cè)器;隨后Cheng 等人[30]提供了脈沖渦流熱成像的表面裂紋檢測(cè)方法,能使用簡(jiǎn)單設(shè)備在短時(shí)間內(nèi)檢測(cè)相對(duì)較寬區(qū)域的裂紋。2020年,眭霄翔等人[23]提出了基于鏡面反射的紅外無(wú)損檢測(cè)技術(shù),通過(guò)鏡面反射擴(kuò)大檢測(cè)范圍,解決了實(shí)際工程中因紅外無(wú)損檢測(cè)設(shè)備而導(dǎo)致的檢測(cè)不可達(dá)問(wèn)題,但相比于紅外直接檢測(cè),利用鏡面反射的間接檢測(cè)因熱激勵(lì)能量傳播路徑較遠(yuǎn)和兩次反射的特點(diǎn),導(dǎo)致熱激勵(lì)能量和紅外輻射損失,使得其檢測(cè)精度低于常規(guī)的紅外無(wú)損檢測(cè)技術(shù)。
上述方法均是利用物質(zhì)的物理性質(zhì)進(jìn)行表面裂紋檢測(cè),其中大部分方法已經(jīng)發(fā)展成熟,能實(shí)現(xiàn)較好的檢測(cè)效果,但同時(shí)也存在各自的缺點(diǎn)。由表1 可以看出,人工目視的方法適用范圍廣,但其檢測(cè)完全依賴于檢測(cè)人員的主觀判斷,沒(méi)有客觀統(tǒng)一的檢測(cè)標(biāo)準(zhǔn);電磁渦流法、微波檢測(cè)、滲透檢測(cè)、磁感應(yīng)法屬于靜態(tài)檢測(cè)法,需要被檢測(cè)物處于相對(duì)靜止?fàn)顟B(tài),并且對(duì)檢測(cè)環(huán)境要求比較苛刻,實(shí)時(shí)性較差,這些缺點(diǎn)導(dǎo)致靜態(tài)檢測(cè)在工業(yè)生產(chǎn)中不易得到推廣;射線檢測(cè)利用射線的穿透能力檢測(cè)物體的缺陷,其對(duì)面積型的缺陷(具有二維尺寸或第三維尺寸極小的缺陷,例如裂紋)檢測(cè)效果不佳,且射線本身對(duì)人體有害,不宜頻繁使用;紅外檢測(cè)、超聲檢測(cè)的檢測(cè)設(shè)備體積較大,操作過(guò)程繁雜,在實(shí)際應(yīng)用過(guò)程中易出現(xiàn)無(wú)法接近被檢測(cè)物的情況,導(dǎo)致檢測(cè)無(wú)法進(jìn)行。
表1 裂紋檢測(cè)物理手段
近年來(lái),隨著計(jì)算機(jī)視覺(jué)技術(shù)的深入研究,其設(shè)備成本低、檢測(cè)速度快、檢測(cè)精度高、適用范圍廣等優(yōu)勢(shì)日益突出,應(yīng)用于裂紋檢測(cè)領(lǐng)域可大幅度減少設(shè)備成本、提高檢測(cè)精度、加快檢測(cè)速度。國(guó)內(nèi)外許多企業(yè)、科研機(jī)構(gòu)和高校也已將計(jì)算機(jī)視覺(jué)技術(shù)應(yīng)用到表面裂紋檢測(cè)領(lǐng)域中,例如路面的裂紋檢測(cè)[31]、鐵軌的日常檢測(cè)[32]、航空行業(yè)中飛機(jī)板件的裂紋檢測(cè)[19]等。目前在計(jì)算機(jī)視覺(jué)技術(shù)領(lǐng)域,主要的方法有基于圖像處理的方法、基于機(jī)器學(xué)習(xí)的方法以及基于深度卷積神經(jīng)網(wǎng)絡(luò)的方法三大類?;趫D像處理的裂紋檢測(cè)方法主要是對(duì)圖像進(jìn)行閾值分割、特征提取等操作實(shí)現(xiàn)裂紋的識(shí)別、分割與檢測(cè)[31]。基于機(jī)器學(xué)習(xí)的裂紋檢測(cè)方法則是使用算法使計(jì)算機(jī)能夠自動(dòng)學(xué)習(xí)或發(fā)現(xiàn)圖像數(shù)據(jù)中裂紋特征實(shí)現(xiàn)裂紋的檢測(cè)[33]?;谏疃染矸e神經(jīng)網(wǎng)絡(luò)的裂紋檢測(cè)方法是利用卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建適合于裂紋檢測(cè)的深度模型[34],此類方法是本綜述的重點(diǎn)方法,故在第4 章對(duì)其單獨(dú)進(jìn)行詳細(xì)介紹。下面對(duì)計(jì)算機(jī)視覺(jué)技術(shù)中基于圖像處理和基于機(jī)器學(xué)習(xí)的方法進(jìn)行介紹與分析。
基于圖像處理的方法可分為閾值分割、邊緣檢測(cè)和區(qū)域生長(zhǎng)等?;趫D像處理的裂紋檢測(cè)方法通??梢苑譃槿絒35]。第一步是圖像的獲取與預(yù)處理部分。所謂預(yù)處理,就是為了消除圖像其本身存在的缺陷對(duì)檢測(cè)結(jié)果的影響而采取的圖像增強(qiáng)、去噪、濾波、復(fù)原、直方圖分析等操作;第二步是邊緣檢測(cè)和閾值分割,提取圖像的特征信息,這也是整個(gè)檢測(cè)算法的關(guān)鍵,其處理效果直接影響算法最后的檢測(cè)精度;第三步就是圖像后處理部分,確定裂紋位置和形態(tài),如圖3所示。
圖3 基于圖像處理的裂紋檢測(cè)方法步驟
2018 年,李慧嫻[36]提出的雙重閾值法,使用了雙邊濾波平滑圖像背景噪聲和保留部分邊界信息,同時(shí)利用局部灰度差突出細(xì)節(jié)部分的邊界信息,實(shí)現(xiàn)了對(duì)微小類陶瓷元件端面裂紋的檢測(cè),在一定程度上解決了傳統(tǒng)閾值方法無(wú)法將細(xì)小且灰度不均勻裂紋與背景有效分離的問(wèn)題。針對(duì)道路裂紋檢測(cè)中因道路標(biāo)記在灰度圖像中的值較大而影響閾值選擇的問(wèn)題,Peng等人[37]提出小于等于閾值T 的灰度值不改變的改進(jìn)Otsu閾值分割算法去除道路圖像中的標(biāo)記,再利用自適應(yīng)迭代法對(duì)去除標(biāo)記后的圖像進(jìn)行分割,得到裂紋圖像。Xu 等人[38]對(duì)經(jīng)典Canny迭代法中的濾波參數(shù)選擇進(jìn)行改進(jìn),利用最小方差作為測(cè)量濾波參數(shù)的常數(shù)因子,并結(jié)合各窗口均值的倒數(shù),提高信噪比,消除噪聲,有效提高了混凝土橋梁裂紋的檢測(cè)精度。Oliveri等人[39]提出了將3D矩量法與貝葉斯壓縮感測(cè)求解器結(jié)合使用的檢測(cè)方法,用于檢測(cè)各向異性材料的裂紋,但此法因涉及相關(guān)逆的離散化問(wèn)題,給檢測(cè)帶來(lái)了巨大的計(jì)算量。而Yang等人[40]提出了一種新的混凝土裂紋檢測(cè)圖像分析方法,此法能檢測(cè)出比暗線更細(xì)的裂紋,減少了手工標(biāo)記裂紋的需要,但此法是對(duì)基于邊緣的裂紋檢測(cè)方法的補(bǔ)充,不宜單獨(dú)使用。
將圖像處理技術(shù)融合到裂紋檢測(cè)中具有諸多優(yōu)勢(shì):
(1)完全非接觸,也就是圖像傳感器無(wú)需與被檢測(cè)工件發(fā)生接觸就可獲取到檢測(cè)所需的圖像,完全解決了因工件位置的原因而無(wú)法檢測(cè)的問(wèn)題。
(2)檢測(cè)速度快,容易實(shí)現(xiàn)實(shí)時(shí)檢測(cè),在確定最優(yōu)檢測(cè)算法之后,剩下大部分操作均可由計(jì)算機(jī)實(shí)現(xiàn)自動(dòng)化控制,減少了檢測(cè)過(guò)程中所需花費(fèi)的人力。
(3)成本低廉,隨著科技的高速發(fā)展,相機(jī)和計(jì)算機(jī)已經(jīng)實(shí)現(xiàn)大范圍的普及,對(duì)于一般的裂紋檢測(cè),家用照相機(jī)和計(jì)算機(jī)即可實(shí)現(xiàn),無(wú)需另外準(zhǔn)備其他儀器。
但基于圖像處理技術(shù)的裂紋檢測(cè)方法也存在缺點(diǎn):
(1)可移植性不強(qiáng)?;趫D像處理技術(shù)的表面裂紋檢測(cè)方法需要對(duì)圖像進(jìn)行預(yù)處理、分析理解等操作,提取特征并最終實(shí)現(xiàn)對(duì)表面裂紋的識(shí)別與分類。被檢測(cè)物體不同,其圖像特征亦不同,因而在實(shí)現(xiàn)表面裂紋檢測(cè)過(guò)程中,往往需要針對(duì)特定的圖像特點(diǎn)設(shè)計(jì)專門的裂紋檢測(cè)算法。在實(shí)際應(yīng)用中,基于圖像處理的表面裂紋檢測(cè)方法可移植性不高。
(2)提取的特征信息有限。傳統(tǒng)圖像處理技術(shù)只能夠提取較為底層的視覺(jué)特征,如梯度等信息,對(duì)裂紋本身結(jié)構(gòu)的高層語(yǔ)義特征提取能力較差,因?yàn)橐搽y以有效應(yīng)對(duì)不同類型、不同紋理背景下的裂紋對(duì)象。
傳統(tǒng)機(jī)器學(xué)習(xí)的主要任務(wù)[41]是從已有的大量數(shù)據(jù)中通過(guò)學(xué)習(xí)找出其內(nèi)含的規(guī)律和模式,然后對(duì)新數(shù)據(jù)做出預(yù)測(cè)。一般根據(jù)處理的數(shù)據(jù)是否存在標(biāo)注,將機(jī)器學(xué)習(xí)分為監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)兩大類。
2.2.1 監(jiān)督學(xué)習(xí)方法
監(jiān)督學(xué)習(xí)是從已標(biāo)注好的數(shù)據(jù)集中學(xué)習(xí)得到一個(gè)參數(shù)模型,當(dāng)輸入一個(gè)新的數(shù)據(jù)時(shí),可以根據(jù)得到的參數(shù)模型預(yù)測(cè)其結(jié)果。因?yàn)榱鸭y特征和形式的多樣性,大部分國(guó)內(nèi)外學(xué)者將裂紋檢測(cè)的重點(diǎn)放在監(jiān)督學(xué)習(xí)上,而理論研究和算法研究都集中于監(jiān)督學(xué)習(xí)的特征提取、特征選擇和分類器設(shè)計(jì)三個(gè)方面[3]。目前在裂紋檢測(cè)領(lǐng)域中應(yīng)用最為廣泛的監(jiān)督學(xué)習(xí)方法主要是支持向量機(jī)[42](Support Vector Machine,SVM)、人工神經(jīng)網(wǎng)絡(luò)[43](Artificial Neural Network,ANN)和決策樹[44]等。
Hittawe 等人[45]提出的木材裂紋檢測(cè)方法使用了紋理特征與梯度特征相結(jié)合的方法創(chuàng)建了基于詞袋模型的字典,利用字典對(duì)特征進(jìn)行量化,統(tǒng)計(jì)圖像中視覺(jué)單詞出現(xiàn)的頻率,得到圖像視覺(jué)單詞直方圖,將該直方圖作為輸入特征向量,用于后續(xù)SVM的分類操作。Martins等人[46]提出了一種基于人工神經(jīng)網(wǎng)絡(luò)的軋鋼裂紋檢測(cè)系統(tǒng),其檢測(cè)精度達(dá)到了98%左右,但是此法的普適性較低,其人工神經(jīng)網(wǎng)絡(luò)中的參數(shù)是根據(jù)軋鋼裂紋的特點(diǎn)而進(jìn)行設(shè)置,在應(yīng)用于其他類型裂紋時(shí),需對(duì)參數(shù)進(jìn)行調(diào)試;Fernandez等人[47]采用了決策樹啟發(fā)式算法對(duì)裂紋圖像進(jìn)行分類,實(shí)現(xiàn)了在模擬高速情況下對(duì)裂紋進(jìn)行檢測(cè),但此項(xiàng)工作均是在模擬環(huán)境中進(jìn)行,尚未集成到真實(shí)系統(tǒng)中;而Shi等[48]人提出的CrackForest模型,采用隨機(jī)森林對(duì)包含來(lái)自多層次的顏色、梯度信息的整合通道特征重新定義的標(biāo)記進(jìn)行處理,同時(shí)將利用標(biāo)記的統(tǒng)計(jì)特征提出的裂紋描述子與分類算法相結(jié)合,從而減少噪聲對(duì)裂紋檢測(cè)精度的影響。
監(jiān)督學(xué)習(xí)方法根據(jù)設(shè)定的監(jiān)督模型,利用數(shù)據(jù)集對(duì)模型參數(shù)不斷進(jìn)行調(diào)整以達(dá)到更優(yōu)的裂紋檢測(cè)精度。總體來(lái)說(shuō),優(yōu)點(diǎn)可以總結(jié)如下:(1)有效解決了非線性情況下檢測(cè)精度不高的問(wèn)題;(2)對(duì)樣本數(shù)量的需求不高。其存在的缺點(diǎn)可以概括為以下兩個(gè)方面。
(1)最終模型效果很大部分依賴于樣本質(zhì)量。此法最終分類器顯示的分類效果取決于訓(xùn)練所選取的樣本。
(2)模型容易出現(xiàn)過(guò)擬合的現(xiàn)象,尤其是在樣本特征比較多的情況下。
2.2.2 無(wú)監(jiān)督學(xué)習(xí)方法
無(wú)監(jiān)督學(xué)習(xí)是直接利用沒(méi)有標(biāo)注的樣本數(shù)據(jù),從中學(xué)習(xí)樣本之間的相似性并對(duì)其進(jìn)行分類。在缺乏足夠先驗(yàn)知識(shí)或人工標(biāo)注數(shù)據(jù)所需成本過(guò)高時(shí),無(wú)監(jiān)督學(xué)習(xí)的方法能夠產(chǎn)生很好的效果[3]。其中比較常用的Kmeans 算法主要是通過(guò)設(shè)定不同類別的核心或初始類核,依據(jù)樣本與核心間的相似性度量將樣本組劃分為不同類別;而類似于人工種群算法則是根據(jù)設(shè)定的閾值將圖像中框有目標(biāo)信息局部窗口的中心像素不斷地與連通鄰域內(nèi)的像素進(jìn)行比較,直至滿足設(shè)定的亮度、尺寸等條件。
Zou 等人[49]提出了一種基于無(wú)監(jiān)督分類的Crack-Tree自動(dòng)路面裂紋檢測(cè)方法,利用張量投票技術(shù)和構(gòu)造最小生成樹的方法解決了裂紋強(qiáng)度不勻的問(wèn)題,但仍存在部分與陰影強(qiáng)度相似的裂紋會(huì)被作為陰影處理的情況;為了消除陰影對(duì)檢測(cè)的影響,Ju等人[50]提出了基于光照補(bǔ)償模型和K-means聚類算法的路面裂紋檢測(cè)方法,實(shí)現(xiàn)了陰影部分的準(zhǔn)確去除,使得其檢測(cè)精度達(dá)到了93.5%,但此法中K 值(所期望的聚類簇個(gè)數(shù))的選取直接影響檢測(cè)結(jié)果的好壞,導(dǎo)致其更換被檢測(cè)工件后可能會(huì)出現(xiàn)檢測(cè)精度大幅度下降的情況。Li 等人[51]于2017年提出了一種基于改進(jìn)的C-V 模型與Canny 迭代算子相結(jié)合的混凝土表面裂紋檢測(cè)方法,能準(zhǔn)確測(cè)量出裂紋大小及位置,具有良好的檢測(cè)效果,但由于每次迭代后符號(hào)距離函數(shù)需重新初始化,導(dǎo)致其運(yùn)算復(fù)雜耗時(shí)。
對(duì)于基于無(wú)監(jiān)督學(xué)習(xí)的裂紋檢測(cè)方法,其顯著優(yōu)勢(shì)在于無(wú)需大量人力制作樣本標(biāo)簽,可直接從無(wú)標(biāo)簽的樣本中進(jìn)行學(xué)習(xí),但其精確度和有效性劣于監(jiān)督學(xué)習(xí),而且此類方法也存在一些不足:
(1)漏檢和誤檢現(xiàn)象比較嚴(yán)重。無(wú)監(jiān)督學(xué)習(xí)中最典型的方法是聚類,其通常采取的聚類方法屬于非概率模型的硬分類方法,例如K-means 聚類和層次聚類,此類方法相當(dāng)于決策函數(shù),輸入數(shù)據(jù)后得到唯一判決結(jié)果。將其應(yīng)用于裂紋檢測(cè)問(wèn)題,結(jié)果只有是和不是裂紋兩類結(jié)果。但事實(shí)上,在裂紋檢測(cè)中,這種硬分類方法,對(duì)于一些在邊角處的裂紋和一些不清楚的裂紋,易出現(xiàn)漏檢情況;對(duì)于一些類似于裂紋的污漬等噪聲易誤檢為裂紋,將會(huì)導(dǎo)致大量漏檢和誤檢情況的出現(xiàn)[52]。針對(duì)這種情況,可以通過(guò)采用基于概率模型的高斯混合模型聚類方法對(duì)裂紋存在與否進(jìn)行判斷[53]。應(yīng)用于裂紋檢測(cè)問(wèn)題中,輸出的概率值對(duì)應(yīng)的是有裂紋和無(wú)裂紋的概率大小,若兩者概率相差較大,可直接確定大概率的作為判決對(duì)象,反之則將其視為候選裂紋塊,可對(duì)其采取進(jìn)一步分析判斷。
(2)參數(shù)的選擇直接影響其性能。在采用了Kmeans 聚類算法的裂紋檢測(cè)方法[50,54]中,最為核心的兩個(gè)參數(shù)K 值(所期望的聚類簇個(gè)數(shù))和means(每個(gè)聚類簇的質(zhì)心),其中means的值是隨機(jī)初始化,然后通過(guò)最小范數(shù)原則調(diào)整直至質(zhì)心收斂;而K 值為事先設(shè)定,其值的選定與數(shù)據(jù)集本身和所選取的特征有關(guān),會(huì)直接影響算法的聚類效果,目前針對(duì)于K 值的選取使用較多的方法就是肘部法則和間隔統(tǒng)計(jì)量法。
深度學(xué)習(xí)(Deep Learning)是機(jī)器學(xué)習(xí)的分支,由于深度學(xué)習(xí)領(lǐng)域近十年來(lái)發(fā)展迅速,也相繼提出一些特有的具有代表性的算法,例如卷積神經(jīng)網(wǎng)絡(luò)等,因此本文將深度學(xué)習(xí)看成一種與傳統(tǒng)機(jī)器學(xué)習(xí)不同的學(xué)習(xí)方法。因?yàn)樯疃葘W(xué)習(xí)具有很強(qiáng)的特征學(xué)習(xí)能力和特征表達(dá)能力,使其已經(jīng)逐漸取代機(jī)器學(xué)習(xí)算法成為裂紋檢測(cè)領(lǐng)域的主流方法[55]。由于在裂紋檢測(cè)領(lǐng)域中使用深度學(xué)習(xí)的方法大部分都是基于深度卷積神經(jīng)網(wǎng)絡(luò),故本文只討論深度卷積神經(jīng)網(wǎng)絡(luò),其他方法不加贅述。
深度卷積神經(jīng)網(wǎng)絡(luò)是一種專門用來(lái)處理類似網(wǎng)絡(luò)結(jié)構(gòu)的數(shù)據(jù)神經(jīng)網(wǎng)絡(luò)[56],例如在時(shí)間軸上有規(guī)律地采樣的一維時(shí)間序列網(wǎng)絡(luò)和可以看作二維像素網(wǎng)格的圖像數(shù)據(jù)。CNN 由多層神經(jīng)網(wǎng)絡(luò)組成,每層又由擁有多個(gè)獨(dú)立神經(jīng)元的眾多二維平面所組成,其本質(zhì)就是一種從輸入到輸出的映射,它依靠網(wǎng)絡(luò)自身學(xué)習(xí)大量輸入與輸出之間的映射關(guān)系,不需要任何精確的數(shù)學(xué)表達(dá)式。CNN 可以自動(dòng)地提取圖像中不同層次的特征,再根據(jù)這些特征進(jìn)行分類或者識(shí)別等任務(wù),具有高度的抽象性和概括性,可以更好地反映數(shù)據(jù)的本質(zhì)。
DCNN 采用了稀疏連接和參數(shù)共享的思想。與傳統(tǒng)每一個(gè)輸出特征圖與每一個(gè)輸入特征圖都產(chǎn)生連接的神經(jīng)網(wǎng)絡(luò)不同,稀疏連接使得每一個(gè)輸出特征圖只與上一層特征圖的鄰近區(qū)域相關(guān)。而參數(shù)共享是指在一個(gè)模型的多個(gè)函數(shù)中使用相同的參數(shù),即每次遍歷整幅輸入圖像僅需一個(gè)卷積核,這樣不僅大大減少了存儲(chǔ)的參數(shù)數(shù)目,提高了運(yùn)算效率,也使得卷積神經(jīng)網(wǎng)絡(luò)具有了平移不變性的特點(diǎn)。
DCNN一般由輸入層、卷積層、池化層、全連接層和輸出層構(gòu)成。經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)LeNet 結(jié)構(gòu)如圖4 所示。其中,卷積層進(jìn)行卷積運(yùn)算,相當(dāng)于圖像處理中的“濾波器運(yùn)算”,主要負(fù)責(zé)特征提取操作;而池化層是縮小長(zhǎng)、高方向上的空間的運(yùn)算,根據(jù)圖像局部相關(guān)性的原理,選取輸入特征圖的一個(gè)小區(qū)域,對(duì)圖像進(jìn)行特征池化(以最大值或平均值的方式),減少模型的計(jì)算量,使網(wǎng)絡(luò)具有一定的抗噪能力。最后全連接層的作用是對(duì)提取的特征進(jìn)行分類,根據(jù)任務(wù)的不同輸出最終結(jié)果(概率)。
2012 年,Krizhevsky 等人[57]提出了包含5 個(gè)卷積層(卷積+非線性激活+最大池化層)與3 個(gè)全連接層的AlexNet 網(wǎng)絡(luò)模型,此網(wǎng)絡(luò)首次使用線性整流函數(shù)(Rectified Linear Unit,ReLU)解決了梯度發(fā)散問(wèn)題,并提出在全連接層中使用Dropout 方法避免模型過(guò)擬合。2014 年,VGGNet[58]出現(xiàn),其包含了深度從11 層到19 層不等的網(wǎng)絡(luò)模型,比較常用的是VGG16 和VGG19,所有模型結(jié)構(gòu)均采用5 組卷積層和3 個(gè)全連接層以及softmax輸出層,所不同的是5組卷積層中包含的級(jí)聯(lián)卷積層越來(lái)越多,此模型的提出驗(yàn)證了深度的增加有利于分類準(zhǔn)確度的提升。同年,GoogLeNet[59]基于“網(wǎng)絡(luò)中網(wǎng)絡(luò)”[60]的思想提出了Inception 結(jié)構(gòu),此結(jié)構(gòu)實(shí)現(xiàn)了使用稠密組件近似替代最優(yōu)局部系數(shù)結(jié)構(gòu)。在Inception 結(jié)構(gòu)中使用大量1×1 的卷積核,大大減少了參數(shù)數(shù)目,提高了模型的訓(xùn)練速度和推廣能力。此外,模型中加入2個(gè)輔助分類器用于向前傳導(dǎo)梯度,有效減輕了梯度消失現(xiàn)象。2015年,ResNet[61]引入了直接將輸入信息繞道傳到輸出的思想,將直接學(xué)習(xí)目標(biāo)值轉(zhuǎn)變?yōu)閷W(xué)習(xí)輸入值與輸出值的殘差。此模型采用這種skip connection 結(jié)構(gòu)在某種程度上解決了信息丟失和耗損的問(wèn)題,也簡(jiǎn)化了學(xué)習(xí)目標(biāo)與難度。
近年來(lái),隨著計(jì)算機(jī)硬件和深度學(xué)習(xí)算法的不斷發(fā)展,深度卷積神經(jīng)網(wǎng)絡(luò)在圖像分類、目標(biāo)檢測(cè)、圖像分割等計(jì)算機(jī)視覺(jué)任務(wù)中取得了巨大的成功。以深度卷積神經(jīng)網(wǎng)絡(luò)為代表的許多方法均已應(yīng)用于表面裂紋檢測(cè)領(lǐng)域,根據(jù)這些方法處理表面裂紋檢測(cè)問(wèn)題方式的不同,可分為三類:基于圖像分類的方法(image classificationbased methods)、基于目標(biāo)檢測(cè)的方法(object detectionbased methods)、基于像素級(jí)分割的方法(pixel-level segmentation-based methods)。
圖4 經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)LeNet結(jié)構(gòu)示意圖
圖像分類的任務(wù)就是對(duì)輸入圖像進(jìn)行分析后返回一個(gè)將輸入圖像分類好的標(biāo)簽,其大致流程如圖5所示。
圖5 圖像分類流程
將此類方法應(yīng)用于裂紋檢測(cè)中,實(shí)質(zhì)是將裂紋檢測(cè)問(wèn)題當(dāng)作二分類問(wèn)題,輸出圖像是否包含裂紋的標(biāo)簽,具體過(guò)程是將輸入圖像劃分為很多塊,對(duì)塊圖像進(jìn)行分類,如果塊圖像中包含一定數(shù)量的裂紋像素,則會(huì)返回是裂紋圖像的標(biāo)簽,如圖6所示[55]。
圖6 基于分類的裂紋檢測(cè)方法
2016 年,Zhang 等人[62]提出了一種使用4 個(gè)CONV層和2 個(gè)全連接層的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的道路裂紋兩分類方法,此法對(duì)大尺寸的裂紋分類效果明顯,但小尺寸裂紋容易被消除。在文獻(xiàn)[63]中,一種基于GoogLeNet的深度卷積神經(jīng)網(wǎng)絡(luò)被用于混凝土表面裂紋的檢測(cè),此網(wǎng)絡(luò)能夠自動(dòng)從輸入圖像中提取特征而不受噪聲的影響,具有較高的準(zhǔn)確性和魯棒性,解決了對(duì)小尺寸裂紋不敏感的問(wèn)題。為了排除路面上樹葉、標(biāo)記線、污漬等物體的影響,Qu 等人[64]提出一種基于改進(jìn)后的VGG16網(wǎng)絡(luò)模型的路面檢測(cè)方法,此模型主要采用了VGG16的前兩層模型,并結(jié)合Inception 模塊重置部分卷積和參數(shù)值,克服了VGG16 提取裂紋位置不準(zhǔn)確的缺點(diǎn),使其準(zhǔn)確度比原先的模型提高了近30%。2019 年,王麗蘋等人[65]發(fā)表了一種基于AlexNet 網(wǎng)絡(luò)架構(gòu)的裂紋檢測(cè)方法,此模型與原始AlexNet模型相比,在第一、二層進(jìn)行池化操作后分別增添一次局部歸一化操作,并對(duì)超參數(shù)進(jìn)行了重新設(shè)置,使得優(yōu)化模型對(duì)彩色圖像的識(shí)別準(zhǔn)確率高達(dá)98.5%,大幅度提高了裂紋檢測(cè)的工作效率。
基于圖像分類的方法應(yīng)用于裂紋檢測(cè)領(lǐng)域,很好地解決了識(shí)別精度不高,圖像質(zhì)量不好影響效果的問(wèn)題。但此類方法只能做到有無(wú)裂紋的分類,無(wú)法對(duì)裂紋的形狀、大小及其位置等進(jìn)行判斷,這在需要確定詳細(xì)裂紋的情況下無(wú)法使用。
目標(biāo)檢測(cè)的任務(wù)是給定一幅圖像,判斷出圖像中是否包含目標(biāo),若包含則給出輸入圖像中目標(biāo)的位置,通常使用矩形框表示?,F(xiàn)主流的目標(biāo)檢測(cè)算法可分為兩類:第一類是基于兩階段思想的檢測(cè)算法,即算法由兩階段完成,首先是提取候選區(qū)域,再對(duì)候選區(qū)域進(jìn)行分類和更進(jìn)一步的精確定位,例如fast R-CNN[66]、faster R-CNN[67]等;而基于單階段思想的檢測(cè)算法不需要提取候選區(qū)域階段,直接產(chǎn)生物體的類別概率和位置坐標(biāo)值,只需要一次檢測(cè)就可得到最終的檢測(cè)結(jié)果,其檢測(cè)速度快,例如SSD[68](Single Shot MultiBox Detector)、YOLO[69](You Only Look Once)等?;谀繕?biāo)檢測(cè)的表面裂紋檢測(cè)方法是將裂紋作為目標(biāo)對(duì)象,使用邊界框在圖像中對(duì)裂紋進(jìn)行定位,示意圖如圖7[70]。
圖7 基于目標(biāo)檢測(cè)的裂紋檢測(cè)方法
當(dāng)前基于目標(biāo)檢測(cè)的表面裂紋檢測(cè)方法中,效果最為突出的是基于Faster-RCNN 的方法和基于YOLO 的方法。Faster R-CNN算法應(yīng)用于目標(biāo)檢測(cè)主要分3步:(1)使用類似于VGGNet 的深度CNN 網(wǎng)絡(luò)模型提取特征;(2)提出目標(biāo)的候選區(qū)域(RPN 層);(3)對(duì)目標(biāo)類型進(jìn)行分類并確定邊界框的坐標(biāo)位置。而SSD 算法是直接利用具有不同分辨率卷積層的多個(gè)特征圖,對(duì)輸入圖像進(jìn)行檢測(cè),并將分類結(jié)果和坐標(biāo)位置封裝在一個(gè)網(wǎng)絡(luò)中。YOLO 系列算法則是利用一個(gè)大小合適的M×N的網(wǎng)格覆蓋在輸入圖像中,再分別對(duì)每個(gè)小網(wǎng)格中的內(nèi)容進(jìn)行標(biāo)注。此算法是單次卷積實(shí)現(xiàn),小網(wǎng)格之間共享了大部分計(jì)算步驟,使得此算法的檢測(cè)效率高且運(yùn)行速度快。
Suh和Cha[71]于2018年提出了一種基于faster R-CNN的多類型裂紋檢測(cè)方法,使用ZF-net[72]替代了faster R-CNN 原始結(jié)構(gòu)中的VGGNet,加快了特征提取的速度,并對(duì)此進(jìn)行測(cè)試,結(jié)果表明,魯棒性更佳的faster R-CNN 基本可實(shí)現(xiàn)多種類型裂紋的實(shí)時(shí)檢測(cè)與定位。2019 年,文獻(xiàn)[73]從實(shí)際應(yīng)用出發(fā),介紹了一種更加有效且相對(duì)便宜的檢測(cè)方法,使用改進(jìn)后的faster R-CNN模型對(duì)6 種裂紋實(shí)現(xiàn)了平均精度高到96.3%的實(shí)時(shí)檢測(cè)。而Mandal等人[74]在2018年提出了一種基于YOLO V2 網(wǎng)絡(luò)架構(gòu)的自動(dòng)路面檢測(cè)分析系統(tǒng),但此法的檢測(cè)精度有待提高。針對(duì)裂紋檢測(cè)實(shí)時(shí)性差以及精度不高的問(wèn)題,文獻(xiàn)[70]中提出了一種基于YOLO V3 網(wǎng)絡(luò)架構(gòu)的裂紋檢測(cè)方法,此法在多尺度預(yù)測(cè)、基本分類網(wǎng)絡(luò)和分類器上做出了改進(jìn),使得其準(zhǔn)確度達(dá)到了88%,基本達(dá)到了民用基礎(chǔ)設(shè)施監(jiān)控的要求。除此之外,YOLO網(wǎng)絡(luò)架構(gòu)模型還可以應(yīng)用于鐵路軌道此類小目標(biāo)裂紋的檢測(cè)中,Li等人[75]利用改進(jìn)后的YOLO有效提高了軌道裂紋的檢測(cè)精度和實(shí)時(shí)檢測(cè)速度,解決了軌道裂紋難以定位的難題。
相較于基于圖像分類的方法,基于目標(biāo)檢測(cè)的表面裂紋檢測(cè)方法的識(shí)別精度和粒度大幅度提高。但裂紋的大小及紋理等重要信息仍然無(wú)法從生成的邊界框中得到。
像素級(jí)分割是對(duì)輸入圖像中的每個(gè)像素點(diǎn)都劃分相對(duì)應(yīng)的類別,此法既可對(duì)目標(biāo)進(jìn)行分類,又可得到目標(biāo)的精確位置和結(jié)構(gòu)。將此法應(yīng)用于裂紋檢測(cè)領(lǐng)域中,是對(duì)輸入圖像中的每個(gè)像素點(diǎn)分配標(biāo)簽,既可判斷有無(wú)裂紋,又可獲得重要的裂紋特征,如圖像中裂紋的位置、大小、形狀等信息。類似于FCN[76]、U-Net[77]、Seg-Net[78]模型均可用于像素級(jí)的分割,相比于傳統(tǒng)圖像分割方法無(wú)需任何的預(yù)處理操作,其檢測(cè)效果示例圖如圖8所示[79]。
圖8 基于像素級(jí)的裂紋檢測(cè)方法
FCN能接受任意尺寸的輸入圖像,并且通過(guò)反卷積層輸出與原始圖像尺寸一致的圖像,在保留了輸入圖像空間信息的同時(shí),也對(duì)每一個(gè)像素點(diǎn)都進(jìn)行了預(yù)測(cè)和分類。U-Net是一種改進(jìn)的全卷積神經(jīng)網(wǎng)絡(luò)模型,一開始應(yīng)用于醫(yī)學(xué)圖像處理領(lǐng)域,近些年,在橋梁裂紋[80]、道路裂紋[81]上也被廣泛使用。Seg-Net模型采用的是編碼器和解碼器組成的對(duì)稱結(jié)構(gòu),此結(jié)構(gòu)對(duì)細(xì)節(jié)特征更加敏感,降低了誤分類的概率,提高了裂紋的檢測(cè)精度。此類方法的特點(diǎn)是網(wǎng)絡(luò)架構(gòu)由卷積層組成,實(shí)現(xiàn)了像素級(jí)的分割且對(duì)輸入圖像尺寸無(wú)要求。
2018 年,Cheng 等人[81]提出了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)U-Net的自動(dòng)道路裂紋檢測(cè)方法,在兩個(gè)道路裂紋數(shù)據(jù)集中測(cè)試該方法,像素級(jí)分割精度達(dá)到92%。文獻(xiàn)[82]對(duì)比了用于自動(dòng)路面裂紋檢測(cè)系統(tǒng)的三種不同深度的U-Net算法,其目的是驗(yàn)證深度越大的模型架構(gòu)是否一定能獲得更好的檢測(cè)精度。實(shí)驗(yàn)證明,選擇深度合適的網(wǎng)絡(luò)架構(gòu)既可保證檢測(cè)精度又能提高檢測(cè)速度。在Islam等人[83]的文章中提出了一種使用深度卷積神經(jīng)網(wǎng)絡(luò)的混凝土裂紋檢測(cè)方法,它由具有編碼器和解碼器框架的全卷積神經(jīng)網(wǎng)絡(luò)組成,其在混凝土公開數(shù)據(jù)集中的測(cè)試結(jié)果表明,此方法對(duì)混凝土裂紋檢測(cè)非常有效。文獻(xiàn)[84]中也設(shè)計(jì)了一種帶有基于VGG16 的編碼器的整個(gè)編碼器-解碼器FCN 網(wǎng)絡(luò),此法能夠更加準(zhǔn)確地檢測(cè)出裂紋并評(píng)估出裂紋密度。
基于像素級(jí)分割的裂紋檢測(cè)方法能夠預(yù)測(cè)原始圖像中每個(gè)像素的類別。由于其通常不采用全連接層,因此對(duì)輸入圖像尺寸沒(méi)有任何要求。此類方法會(huì)預(yù)先設(shè)定一個(gè)固定尺寸的感受野,當(dāng)小于感受野尺寸的目標(biāo)裂紋出現(xiàn)時(shí),會(huì)產(chǎn)生誤分類和錯(cuò)誤標(biāo)記的現(xiàn)象,從而使得小目標(biāo)裂紋的局部信息丟失。在復(fù)雜背景下,與裂紋相似的偽目標(biāo)會(huì)被誤分類為裂紋也是一個(gè)不可避免的問(wèn)題。此外,該類方法需要大量像素級(jí)標(biāo)注的樣本,因此需要耗費(fèi)大量人力物力完成收集樣本和標(biāo)注工作。
在背景紋理較復(fù)雜,噪聲干擾大且分布無(wú)規(guī)律的表面裂紋檢測(cè)情況下,基于圖像分類的檢測(cè)方法和基于目標(biāo)檢測(cè)的方法由于存在全連接層,容易出現(xiàn)卷積層與全連接層之間存在的維度跨越過(guò)大導(dǎo)致局部細(xì)節(jié)特征丟失[3];針對(duì)背景紋理較復(fù)雜,噪聲干擾大且分布無(wú)規(guī)律的裂紋圖像,李良福等人[85]提出的與滑動(dòng)窗口算法相結(jié)合的基于卷積神經(jīng)網(wǎng)絡(luò)的DBCC(Deep Bridge Crack Classify)模型,用于橋梁背景面元和橋梁裂紋面元的識(shí)別,通過(guò)添加局部響應(yīng)值歸一層和概率區(qū)分閾值,在一定程度上減小了圖像亮度不均勻和噪聲所帶來(lái)的誤檢與漏檢問(wèn)題。此外,充分利用深度殘差網(wǎng)絡(luò)加深網(wǎng)絡(luò)結(jié)構(gòu)有利于輔助基于目標(biāo)檢測(cè)的卷積神經(jīng)網(wǎng)絡(luò)模型檢測(cè)具有強(qiáng)噪聲干擾的裂紋圖像。孫朝云等人[86]提出通過(guò)使用深度殘差網(wǎng)絡(luò)對(duì)SSD 卷積神經(jīng)網(wǎng)絡(luò)模型的特征提取網(wǎng)絡(luò)結(jié)構(gòu)VGG16 進(jìn)行改進(jìn)并加深網(wǎng)絡(luò)層次的方式,引入擬合殘差映射代替原始映射,相比于原始模型,通過(guò)使用深度殘差網(wǎng)絡(luò)后的模型對(duì)噪聲干擾大的路面裂紋圖像的檢測(cè)效果有所提升,裂紋檢測(cè)準(zhǔn)確率上升了10%。
在基于深度卷積神經(jīng)網(wǎng)絡(luò)的表面裂紋檢測(cè)算法設(shè)計(jì)及驗(yàn)證過(guò)程中,數(shù)據(jù)集的數(shù)量及質(zhì)量起著至關(guān)重要的作用。目前,在表面裂紋檢測(cè)領(lǐng)域中,被廣泛使用的公開數(shù)據(jù)集較少,大部分是由一些大型算法比賽中組委會(huì)、部分研究人員提供,表2 總結(jié)了部分研究中使用較多的公開數(shù)據(jù)集。
隨著深度卷積神經(jīng)網(wǎng)絡(luò)在表面裂紋檢測(cè)領(lǐng)域的廣泛應(yīng)用,其在實(shí)際應(yīng)用中存在的一些問(wèn)題也逐漸突顯出來(lái)。
表2 表面裂紋檢測(cè)常用公開數(shù)據(jù)集簡(jiǎn)介
(1)缺少有標(biāo)記的、數(shù)量龐大的數(shù)據(jù)集。深度卷積神經(jīng)網(wǎng)絡(luò)利用大體量數(shù)據(jù)集以監(jiān)督的方式通過(guò)卷積運(yùn)算提取和學(xué)習(xí)圖像特征,再利用反向傳播最小化訓(xùn)練集上的分類誤差,共同優(yōu)化網(wǎng)絡(luò)參數(shù),最終實(shí)現(xiàn)裂紋的提取[98]。故深度卷積神經(jīng)網(wǎng)絡(luò)的性能與數(shù)據(jù)集的大小有直接關(guān)系。在裂紋檢測(cè)算法的實(shí)際工業(yè)應(yīng)用中,由于部分場(chǎng)景本身存在的裂紋數(shù)目少、裂紋數(shù)據(jù)標(biāo)注工作量極大的原因,導(dǎo)致已有數(shù)據(jù)集數(shù)量偏少,很難有效支撐深度卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。
(2)對(duì)細(xì)微裂紋的檢測(cè)能力還有待提高。早期細(xì)微裂紋尺寸很小,視覺(jué)特征較弱,與背景之間對(duì)比度低,導(dǎo)致收集到的裂紋圖像信息少。然而早期表面裂紋檢測(cè)的實(shí)際應(yīng)用意義更加重大,常規(guī)的深度卷積神經(jīng)網(wǎng)絡(luò)算法很難有效地將所有細(xì)微裂紋及時(shí)檢出,容易出現(xiàn)誤檢和漏檢的情況。
(3)實(shí)際應(yīng)用中的實(shí)時(shí)檢測(cè)問(wèn)題。在應(yīng)用中裂紋檢測(cè)的實(shí)時(shí)性更關(guān)注于模型推理這一環(huán)節(jié)。相比于傳統(tǒng)圖像處理或機(jī)器學(xué)習(xí)算法,現(xiàn)有深度卷積神經(jīng)網(wǎng)絡(luò)的方法大多采用全卷積操作,計(jì)算量較大,需要足夠的硬件資源作為支撐,難以適應(yīng)內(nèi)存小、計(jì)算能力弱、通信寬帶低的實(shí)際應(yīng)用場(chǎng)景對(duì)實(shí)時(shí)性的要求。
針對(duì)基于深度卷積神經(jīng)網(wǎng)絡(luò)的表面裂紋檢測(cè)方法所存在的問(wèn)題,可以從以下幾個(gè)角度進(jìn)行突破:
(1)樣本量不足的問(wèn)題??蓮囊韵氯矫娼鉀Q。第一,利用傳統(tǒng)圖像處理方法對(duì)已存在的裂紋圖像進(jìn)行數(shù)據(jù)擴(kuò)增。對(duì)原始裂紋圖像采用鏡像、旋轉(zhuǎn)、平移、扭曲、濾波、對(duì)比度調(diào)整等圖像處理的方法來(lái)獲取更多的樣本,還可通過(guò)將單獨(dú)裂紋融合疊加到正常無(wú)裂紋圖像樣本中生成全新的裂紋圖像樣本。第二,利用遷移學(xué)習(xí)(Transfer Learning)[99]彌補(bǔ)樣本不足所帶來(lái)的局部最優(yōu)解和過(guò)擬合等缺點(diǎn)。在裂紋檢測(cè)領(lǐng)域中,由于大多數(shù)圖像特征具有相關(guān)性,遷移學(xué)習(xí)可將深度卷積神經(jīng)網(wǎng)絡(luò)在海量數(shù)據(jù)集上訓(xùn)練得到的模型進(jìn)行遷移,使用在具有一定相關(guān)性的具體裂紋檢測(cè)任務(wù)中,從而減少對(duì)樣本量的依賴,加快模型的學(xué)習(xí)效率。第三,使用自監(jiān)督學(xué)習(xí)(self-supervised learning)的方法訓(xùn)練樣本數(shù)據(jù)。其核心思想是輸入沒(méi)有人工標(biāo)注的樣本數(shù)據(jù),通過(guò)數(shù)據(jù)本身的結(jié)構(gòu)或特性,由機(jī)器構(gòu)造監(jiān)督信息對(duì)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。因此此法可以自動(dòng)從無(wú)標(biāo)記的裂紋樣本數(shù)據(jù)中產(chǎn)生標(biāo)簽進(jìn)行學(xué)習(xí),完全無(wú)需人工參與,有效解決了樣本標(biāo)記耗時(shí)和樣本量缺乏的問(wèn)題。例如利用生成式對(duì)抗網(wǎng)絡(luò)模型[100-102](Generative Adversarial Networks,GAN)生成與訓(xùn)練樣本數(shù)據(jù)分布類似的新數(shù)據(jù),達(dá)到擴(kuò)充數(shù)據(jù)集的目的。
(2)細(xì)微裂紋檢測(cè)能力不足的問(wèn)題。細(xì)微裂紋檢測(cè)能力不足的問(wèn)題。細(xì)微裂紋本身固有的低分辨率、所占像素比少的特性使其在檢測(cè)中能夠提取到的有效信息數(shù)量有限,這是造成細(xì)微裂紋檢測(cè)精度低的根本原因。對(duì)于目前常用的裂紋檢測(cè)模型而言,通常采用下采樣操作增大感受野并對(duì)特征進(jìn)行降維以便縮小特征圖[72],但由于細(xì)微裂紋邊緣信息模糊且語(yǔ)義信息少,易導(dǎo)致細(xì)微裂紋信息丟失而不利于細(xì)微裂紋的定位。針對(duì)此問(wèn)題,可采取多尺度特征融合的方法,將淺層網(wǎng)絡(luò)的細(xì)節(jié)信息與深層網(wǎng)絡(luò)的語(yǔ)義信息相結(jié)合,對(duì)細(xì)微裂紋進(jìn)行準(zhǔn)確地定位,以此提高細(xì)微裂紋的檢測(cè)精度。針對(duì)細(xì)微裂紋拓?fù)溥B接的特點(diǎn),可通過(guò)有針對(duì)性地設(shè)計(jì)裂紋檢測(cè)模型結(jié)構(gòu)和損失函數(shù)設(shè)計(jì),增強(qiáng)對(duì)低對(duì)比度細(xì)微裂紋的檢測(cè)能力。
(3)實(shí)時(shí)檢測(cè)的問(wèn)題。對(duì)民用基礎(chǔ)設(shè)施進(jìn)行實(shí)時(shí)檢測(cè)能及早發(fā)現(xiàn)裂紋,達(dá)到預(yù)警效果,避免造成經(jīng)濟(jì)損失和人員傷亡,故實(shí)時(shí)檢測(cè)是裂紋檢測(cè)領(lǐng)域發(fā)展的必然趨勢(shì)。以后的研究可從網(wǎng)絡(luò)結(jié)構(gòu)輕量化設(shè)計(jì)、模型壓縮、量化編碼等方面出發(fā),設(shè)計(jì)體積小、計(jì)算資源要求低、檢測(cè)精度高的網(wǎng)絡(luò)模型,滿足手機(jī)或者嵌入式邊緣終端設(shè)備的實(shí)時(shí)裂紋檢測(cè)。一般地,可以采取模型壓縮的方法,使網(wǎng)絡(luò)在減少參數(shù)的同時(shí)降低網(wǎng)絡(luò)的計(jì)算復(fù)雜度,模型壓縮可通過(guò)模型剪枝、低秩分解等方法實(shí)現(xiàn);也可采取將浮點(diǎn)型運(yùn)算轉(zhuǎn)化為低比特的運(yùn)算,減少計(jì)算復(fù)雜度。此外,還可以通過(guò)設(shè)計(jì)效率更高的輕量化卷積神經(jīng)網(wǎng)絡(luò)計(jì)算方式實(shí)現(xiàn)在保持較高的檢測(cè)精度的同時(shí),大幅度減少參數(shù)量、提升檢測(cè)速度。目前常用的輕量化模型主要有SqueezeNet[103]、MobileNet[104]和ShuffleNet[105],它們通過(guò)特殊的模型設(shè)計(jì)方法(如fire module、深度可分離卷積模塊等)達(dá)到減少特征圖的通道數(shù)和權(quán)值參數(shù)的目的。
深度卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)成為表面裂紋檢測(cè)領(lǐng)域的主流技術(shù)。本文總結(jié)了裂紋檢測(cè)領(lǐng)域中常見(jiàn)的物理檢測(cè)方法,討論了這幾類檢測(cè)方法各自的應(yīng)用領(lǐng)域、基本原理及其優(yōu)缺點(diǎn),并由此引出了基于計(jì)算機(jī)視覺(jué)的檢測(cè)方法,其中包含基于圖像處理技術(shù)、基于傳統(tǒng)機(jī)器學(xué)習(xí)和基于深度卷積神經(jīng)網(wǎng)絡(luò)三類方法,闡述了它們各自的應(yīng)用及優(yōu)缺點(diǎn),詳細(xì)介紹了基于深度卷積神經(jīng)網(wǎng)絡(luò)的裂紋檢測(cè)方法,其中包括了基于圖像分類的方法、基于目標(biāo)檢測(cè)的方法和基于像素級(jí)分割的方法。最后闡明了此法所存在的問(wèn)題及其未來(lái)的發(fā)展方向。