劉太亨,何昭水
(廣東工業(yè)大學(xué)自動(dòng)化學(xué)院,廣州 510006)
表面缺陷檢測是檢驗(yàn)產(chǎn)品表面情況的重要步驟,是保證產(chǎn)品質(zhì)量和制造效率的重要步驟。缺陷物品必須及時(shí)檢測并清除生產(chǎn)線,否則將嚴(yán)重影響后續(xù)裝配線,導(dǎo)致整體質(zhì)量水平下降[1]。傳統(tǒng)上,表面缺陷檢查是手動(dòng)執(zhí)行的,這種檢測存在采樣率低、檢測精度低和效率低、勞動(dòng)強(qiáng)度高等問題。因此,利用機(jī)器學(xué)習(xí)方法來替代人工檢測成為目前的主流檢測方法,因?yàn)椴捎米詣?dòng)化方式替代人工檢測,不僅可降低人工成本,而且可提高缺陷檢測效率[2-4]。
傳統(tǒng)的機(jī)器學(xué)習(xí)方法包括神經(jīng)網(wǎng)絡(luò)[5]、支持向量機(jī)(Support Vector Machine,SVM)[6]等。例 如,Jeon 等[7]使 用Gabor濾波器并進(jìn)行邊緣對(duì)檢測,并且將基于直方圖和梯度紋理特征輸入SVM來檢測板面上的劃痕。Song等[8]提出了一種基于熱軋鋼帶表面缺陷的局部二進(jìn)制模式特征的方法。Ding等[9]提出了一種基于定向梯度特征直方圖和SVM的織物缺陷檢測方法。Chondronasios等[10]提出了一種基于灰度共發(fā)生矩陣的鋁型材表面缺陷分類方法。但是,這些方法有一定的局限性,如傳統(tǒng)的機(jī)器學(xué)習(xí)方法在現(xiàn)實(shí)生活中很難應(yīng)用于復(fù)雜的缺陷情況,如遮擋、物體變形等,它們提取的特征水平低、不夠穩(wěn)固。
近年來,隨著圖像處理和深度學(xué)習(xí)技術(shù)的飛速發(fā)展,深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)取得了重大成功,尤其在圖像分析和識(shí)別方面[11]。深度神經(jīng)網(wǎng)絡(luò)能夠構(gòu)建復(fù)雜的表示,并自動(dòng)學(xué)習(xí)輸入和輸出之間的組成關(guān)系,將輸入圖像映射到輸出標(biāo)簽。在表面缺陷檢測中,基于深度學(xué)習(xí)的方法是近年來的發(fā)展趨勢(shì),大致分為三類:1)基于圖像分類;2)基于對(duì)象檢測;3)基于像素分割分成。為了提供高精度的缺陷檢測,許多研究者提出了基于深度學(xué)習(xí)的分類方法,試圖設(shè)計(jì)一個(gè)復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),以提高檢測功率和缺陷分類的性能[12-13]。然而,為了追求高精度,這些復(fù)雜的網(wǎng)絡(luò)算法具有參數(shù)多、計(jì)算復(fù)雜、訓(xùn)練時(shí)間長等缺點(diǎn),對(duì)實(shí)際應(yīng)用條件提出了嚴(yán)格的要求。這些方法并不適用于那些硬件條件低的中小企業(yè),以至于難以在實(shí)際環(huán)境中大規(guī)模使用。
針對(duì)上述問題,本文提出了一種基于自編碼和知識(shí)蒸餾的表面缺陷檢測方法(Surface defect Detection method based on Auto-Encoding and Knowledge Distillation,SD_AEKD)。該方法包含兩個(gè)部分:缺陷檢測和分類。檢測模塊的目的是對(duì)輸入的原始圖片進(jìn)行缺陷的定位。分類模塊的目的是將已經(jīng)定位缺陷區(qū)域通過知識(shí)蒸餾方法進(jìn)行類別分類。實(shí)驗(yàn)結(jié)果表明,該方法不僅能夠精準(zhǔn)地定位物品缺陷的區(qū)域,而且能夠提高分類的精度。
知識(shí)蒸餾是將知識(shí)從大模型(Teacher Model)轉(zhuǎn)移到小模型(Student Model)的過程。盡管Teacher 模型(例如非常深的神經(jīng)網(wǎng)絡(luò)或許多模型的集合)具有比小型模型更高的知識(shí)能力,但這種能力可能未得到充分利用。即使模型使用很少的知識(shí)能力,評(píng)估模型在計(jì)算上也可能同樣代價(jià)昂貴。知識(shí)蒸餾將知識(shí)從大模型Teacher 轉(zhuǎn)移到小模型Student 而不會(huì)喪失有效性。由于較小的模型評(píng)估成本較低,因此可以很容易將其部署在功能較弱的硬件(例如移動(dòng)設(shè)備)上。
近年來,知識(shí)蒸餾在許多計(jì)算機(jī)視覺任務(wù)中得到了成功的利用。Hinton 等[14]率先探索神經(jīng)網(wǎng)絡(luò)中的知識(shí)蒸餾的研究,通過研究圖像分類問題,將教師網(wǎng)絡(luò)的軟輸出定義為包含有用信息的知識(shí),這些信息表示類內(nèi)的相似性和多樣性。Romero 等[15]利用教師網(wǎng)絡(luò)隱藏層的中級(jí)提示來訓(xùn)練一個(gè)薄而深的學(xué)生網(wǎng)絡(luò)。Li 等[16]提及的對(duì)象檢測研究中,小型檢測網(wǎng)絡(luò)有望在大型網(wǎng)絡(luò)的高級(jí)功能的監(jiān)督下,學(xué)習(xí)更多有關(guān)對(duì)象表示的知識(shí)。Wei等[17]利用模擬和量化策略來訓(xùn)練一個(gè)非常小的檢測網(wǎng)絡(luò),在該方法中,通過轉(zhuǎn)移來自教師網(wǎng)絡(luò)的知識(shí)來提高學(xué)生網(wǎng)絡(luò)的性能;同時(shí),將全精度網(wǎng)絡(luò)轉(zhuǎn)換為量化網(wǎng)絡(luò),而性能不會(huì)大幅下降。通過對(duì)未標(biāo)記數(shù)據(jù)進(jìn)行知識(shí)蒸餾,自適應(yīng)蒸餾知識(shí)損失(Adaptive Distillation knowledge Loss,ADL)[18]的性能優(yōu)于僅使用硬目標(biāo)的數(shù)據(jù)蒸餾方法。通過采用ADL,Student 檢測器的性能優(yōu)于其Teacher 的性能。文獻(xiàn)[19-20]研究了在大型網(wǎng)絡(luò)的額外監(jiān)督下訓(xùn)練小型語義分割網(wǎng)絡(luò)的知識(shí)提煉策略。Liu 等[19]只是簡單地將分割問題視為聚合的單獨(dú)像素分類問題,用知識(shí)蒸餾策略對(duì)緊湊的語義分割網(wǎng)絡(luò)進(jìn)行訓(xùn)練。He 等[20]提出了一個(gè)新的親和力蒸餾模塊,將這些廣泛分離的空間區(qū)域之間的長期依賴性從教師模型轉(zhuǎn)移到學(xué)生模型?;谥R(shí)蒸餾技術(shù)的這些優(yōu)勢(shì),本文利用其來進(jìn)一步提高SD_AEKD 的檢測精度,同時(shí)也使SD_AEKD具有高實(shí)時(shí)性。
本文提出了一種用于物品表面缺陷檢測的基于自編碼和知識(shí)蒸餾的框架。該框架主要包含兩個(gè)主要部分:缺陷檢測和分類,如圖1所示。
圖1 基于自編碼和知識(shí)蒸餾的表面缺陷檢測方法流程Fig.1 Flow chart of surface defect detection method based on auto-encoding and knowledge distillation
2.1.1 級(jí)聯(lián)自動(dòng)編碼器
自編碼器(Auto-Encoder,AE)網(wǎng)絡(luò)廣泛用于信息編碼和重建。通常,AE網(wǎng)絡(luò)包括編碼器網(wǎng)絡(luò)和解碼器網(wǎng)絡(luò)。該網(wǎng)絡(luò)由一個(gè)或多個(gè)解碼器層塊組成。編碼器網(wǎng)絡(luò)是一個(gè)轉(zhuǎn)換單元,通過它將輸入圖像轉(zhuǎn)換為多維特征圖像,用于特征提取和表示,獲取的要素圖中存在豐富的語義信息。相反地,解碼器網(wǎng)絡(luò)通過合并所有中間圖層中所學(xué)要素映射中的上下文信息來微調(diào)像素級(jí)標(biāo)簽。此外,解碼器網(wǎng)絡(luò)可以使用向上采樣操作將最終輸出還原到與輸入圖像相同的大小。
由于物品表面缺陷是均勻紋理中的局部異常,缺陷和背景紋理具有不同的特征表示。利用AE 網(wǎng)絡(luò)了解缺陷數(shù)據(jù)的表示,找出物品表面缺陷的共性。因此,物品表面缺陷檢測問題變成了物體分割問題。使用編碼器解碼器體系結(jié)構(gòu)將輸入缺陷圖像轉(zhuǎn)換為像素預(yù)測掩碼。
在級(jí)聯(lián)自動(dòng)編碼器(Cascaded Auto-Encoder,CAE)中,新的圖像分割架構(gòu)基于兩個(gè)AE 網(wǎng)絡(luò)的級(jí)聯(lián),這兩個(gè)AE 網(wǎng)絡(luò)共享相同的結(jié)構(gòu)。如圖1 所示,第一個(gè)網(wǎng)絡(luò)的預(yù)測掩碼作為第二個(gè)網(wǎng)絡(luò)的輸入,像素標(biāo)簽的進(jìn)一步微調(diào)在第二個(gè)網(wǎng)絡(luò)中執(zhí)行。這樣,后一個(gè)網(wǎng)絡(luò)可以增強(qiáng)前一個(gè)網(wǎng)絡(luò)的預(yù)測結(jié)果。
圖2 顯示了單個(gè)AE 體系結(jié)構(gòu)。由于物品表面膜不同,損壞點(diǎn)等相同缺陷具有不同的顏色。這種模棱兩可的顏色會(huì)影響AE 網(wǎng)絡(luò)的訓(xùn)練。因此,將原始彩色圖像規(guī)范化為512 ×512 灰度圖像,然后輸入到AE 網(wǎng)絡(luò)中,以減少顏色干擾并加快缺陷分割。該體系結(jié)構(gòu)由編碼器和解碼器組成,如圖2所示。
圖2 自動(dòng)編碼器(AE)網(wǎng)絡(luò)的體系結(jié)構(gòu)Fig.2 Architecture of Auto-Encoder(AE)network
解碼器網(wǎng)絡(luò)的結(jié)構(gòu)與編碼器網(wǎng)絡(luò)相似。編碼器部分包括10個(gè)卷積層,每個(gè)卷積層包含3× 3卷積操作以及隨后的整流線性單元(Rectified Linear Unit,ReLU)非線性操作。兩個(gè)卷積層中每個(gè)層后跟2 × 2 最大池操作,步幅為2。本文在每個(gè)最大池層后將要素?cái)?shù)量增加一倍,以減少語義信息的丟失。在兩個(gè)卷積層中每個(gè)層之后,在解碼器應(yīng)用2 × 2向上采樣操作。向上采樣操作的結(jié)果與編碼器部分的相應(yīng)要素貼圖串聯(lián),以獲取最終要素貼圖。在最后一層,1× 1 卷積與軟最大層連接到AE網(wǎng)絡(luò),以將輸出轉(zhuǎn)換為概率圖。最終預(yù)測掩碼是缺陷概率圖,其大小調(diào)整為與輸入圖像的大小相同。
上述AE 網(wǎng)絡(luò)中具有穩(wěn)定的卷積范圍。此網(wǎng)絡(luò)很難“看到”整個(gè)缺陷并集成全局上下文以生成預(yù)測掩碼。在真實(shí)的工業(yè)檢驗(yàn)環(huán)境中,產(chǎn)品缺陷區(qū)域的大小是不一樣的以及其缺陷的形狀也是多種多樣的。上述網(wǎng)絡(luò)不了解物品表面有更大的檢測對(duì)象,如灰塵和纖維。因此,必須設(shè)計(jì)不同尺寸的接受字段以適應(yīng)這種情況。本文對(duì)空洞卷積進(jìn)行單元化,以增加網(wǎng)絡(luò)檢測大缺陷的感受野。在圖3 中,圖(a)表示卷積是常規(guī)的3× 3 卷積,圖(b)表示卷積是因子為2 的3× 3 空洞卷積??斩淳矸e將卷積中求和的像素外化,但總和像素與常規(guī)卷積相同??瞻字芯矸e的權(quán)重為0,不參與卷積操作。因此,它們的有效感受野是7× 7。AE 網(wǎng)絡(luò)編碼器部分的常規(guī)卷積被填充1 和步幅1 所替換。AE 網(wǎng)絡(luò)中卷積的詳細(xì)參數(shù)顯示在表1中。在編碼器部分中,有四個(gè)卷積層被“卷積”所取代。
圖3 空洞卷積示意圖Fig.3 Schematic diagram of atrous convolution
表1 AE網(wǎng)絡(luò)中空洞卷積的參數(shù)Tab.1 Parameters of atrous convolution in AE network
為了訓(xùn)練AE 網(wǎng)絡(luò),改進(jìn)了像素交叉熵與重量的減少wa設(shè)計(jì)。通常,物品表面的捕獲圖像的背景像素比有缺陷的像素多,因此要重新加權(quán)不平衡的類,即設(shè)置wdefect=0.8 和wbackground=0.2。損失函數(shù)定義為:
其中:wa表示權(quán)重;A=2 表示類數(shù)(背景和缺陷);N表示訓(xùn)練樣本的大??;M表示每個(gè)圖像補(bǔ)丁中的像素?cái)?shù)是指標(biāo)函數(shù),當(dāng)=k時(shí),它的值為1,否則為0是第i張圖像中的第j個(gè)像素補(bǔ)丁,表示的真實(shí)標(biāo)簽;Pa(·)表示像素為第a類的概率,這是Softmax層的輸出。
2.1.2 閾值模塊
閾值模塊作為獨(dú)立模塊添加到ACMD 網(wǎng)絡(luò)的末尾,主要用于進(jìn)一步優(yōu)化預(yù)測掩碼的結(jié)果,它還可以對(duì)概率圖應(yīng)用像素閾值操作。本文中,給定的閾值Gs分配給最終預(yù)測掩碼:
其中:ITH表示二值化后的最終圖像;Ipm表示二進(jìn)制化后的預(yù)測掩碼圖像;Gs表示細(xì)化閾值。當(dāng)ACMD 訓(xùn)練時(shí),Gs是檢驗(yàn)體系結(jié)構(gòu)中需要調(diào)整的唯一閾值。在ITH中,灰色值為0 的像素表示缺陷區(qū)域,灰色值為1 的像素表示非缺陷區(qū)域。為了便于顯示被檢測到的缺陷,在原始彩色圖像上用白色標(biāo)記缺陷區(qū)域的像素。
2.1.3 缺陷區(qū)域檢測
當(dāng)獲得所有可能缺陷的語義分割結(jié)果時(shí),將進(jìn)一步使用斑點(diǎn)分析來找到準(zhǔn)確的缺陷輪廓,并從缺陷圖像ITH中提取基于缺陷輪廓的最小封閉矩形區(qū)域(Minimum Enclosed Rectangular area,MER)。這是因?yàn)镸ER 能夠準(zhǔn)確地反映缺陷區(qū)域,最終使分類模塊的輸入更加準(zhǔn)確和容易。
由于MER 具有隨機(jī)方向,因此本文基于仿射變換將斜MER 轉(zhuǎn)換為正方向。正MER 設(shè)置為關(guān)注區(qū)域(Region Of Interest,ROI),最終缺陷區(qū)域是這些ROI。這些缺陷是從原始圖像中裁剪出來,并將其輸入到下一個(gè)模塊進(jìn)行分類。
在分類模塊中,將缺陷區(qū)域劃分為特定類別。當(dāng)被檢測的物品不同時(shí),通過成像,相同的缺陷(損傷點(diǎn))可能具有不同的顏色。因此,顏色信息無助于缺陷的分類。首先,將圖像的缺陷區(qū)域補(bǔ)丁轉(zhuǎn)換為灰度圖像,以減少不同背景顏色和照明的影響。其次,考慮到在工業(yè)應(yīng)用中,系統(tǒng)檢測的精度、速度和效率等都是至關(guān)重要的。雖然較大的網(wǎng)絡(luò)可以實(shí)現(xiàn)高精度,但是較小的網(wǎng)絡(luò)運(yùn)行時(shí)間較少,成本更低。因此,為了更好地權(quán)衡較大和較小網(wǎng)絡(luò)的優(yōu)點(diǎn),本文采用知識(shí)蒸餾的方法對(duì)物品缺陷區(qū)域進(jìn)行分類。
在知識(shí)蒸餾中,為了保持Teacher 模型和Student 模型之間的功能一致性,本文中的Student 模型采用高至低分辨率網(wǎng)絡(luò)(High-to-low Resolution Network,HRNet)——HRNet-18[21],Teacher 模型采用HRNet-32,其中HRNet-32 與HRNet-18 具有相同的架構(gòu)但HRNet-32要大得多。
所提出的知識(shí)蒸餾方法通過Teacher 和Student 的平行訓(xùn)練進(jìn)行。這意味著Teacher 和Student 的批處理大小、迭代計(jì)數(shù)、優(yōu)化器以及學(xué)習(xí)率等訓(xùn)練條件是相同的。此外,Teacher和Student 同時(shí)訓(xùn)練。Teacher 經(jīng)過訓(xùn)練可以最大限度地減小Teacher 預(yù)測結(jié)果與真實(shí)結(jié)果之間的Softmax 交叉熵?fù)p失。但是,對(duì)Student 進(jìn)行訓(xùn)練,目的是使Teacher 最后一個(gè)卷積層的特征圖FT與Student最后一個(gè)卷積層的特征圖FS之間的L2損失最小。Teacher和Student模型的損失函數(shù)分別定義如下:
其中:x為輸入的圖像;W表示分類器的權(quán)重;p(xi)表示從訓(xùn)練數(shù)據(jù)獲得的類的概率分布;q(xi)表示通過HRNet-32模型推導(dǎo)的類的概率分布;C表示輸入圖像的通道;H表示輸入圖像的分辨率。
因此,知識(shí)蒸餾總損失函數(shù)為:
其中,α為平衡參數(shù)。在本文中,為了減少實(shí)驗(yàn)的復(fù)雜性,知識(shí)蒸餾的平衡參數(shù)設(shè)置為α=0.5。
本文采用兩個(gè)真實(shí)的數(shù)據(jù)集來驗(yàn)證方法的性能。
1)DAGM 數(shù)據(jù)集。該數(shù)據(jù)集有10個(gè)類,如圖4所示,每個(gè)類包含1000 個(gè)非缺陷圖像和150 個(gè)有缺陷的圖像。數(shù)據(jù)處理方法如下:本文使用128× 128像素窗口來滑動(dòng)和剪切原始的512 × 512像素圖像,對(duì)于無缺陷圖像步長為128,對(duì)于有缺陷的圖像步長為8,無缺陷圖像的數(shù)量多于有缺陷的圖像數(shù)量。對(duì)于剪切的缺陷圖像,本文保留圖像超過80%的缺陷部件,并混合10 種類型的圖像。最終訓(xùn)練集包含790 個(gè)缺陷圖像和5260 張無缺陷圖像,測試集包含710 個(gè)缺陷圖像和5040張無缺陷圖像。
圖4 DAGM數(shù)據(jù)集的部分樣例Fig.4 Some samples of DAGM dataset
2)Magnetic-tile數(shù)據(jù)集。Magnetic-tile由6個(gè)數(shù)據(jù)集組成,如圖5所示,每個(gè)數(shù)據(jù)集包括等比例的Image和正確標(biāo)注圖片(Ground Truth,GT),其中Blowhole 有230 張,Break 有170 張,Crack 有114 張,F(xiàn)ray 有64 張,Uneven 有206 張,F(xiàn)ree 有1904張。為了更好地驗(yàn)證所提方法的性能,本文隨機(jī)將整個(gè)數(shù)據(jù)集拆分為訓(xùn)練集和測試集,比率為3∶1。數(shù)據(jù)處理方法如下:本文使用128× 128 像素窗口來滑動(dòng)和剪切原始的1408×512 像素圖像,步長為128;對(duì)于無缺陷圖像,步長為8。對(duì)于剪切的缺陷圖像,本文存儲(chǔ)了包含55%以上缺陷部件的圖像,因?yàn)椴糠滞咂毕輩^(qū)域較小,并且在數(shù)據(jù)集中的缺陷圖像數(shù)量很少。最終訓(xùn)練集包含588 張缺陷圖像和142 張無缺陷圖像,測試集包含196張缺陷圖像和476張無缺陷圖像。
圖5 Magnetic-tile數(shù)據(jù)集的部分樣例Fig.5 Some samples of Magnetic-tile dataset
為了評(píng)估模型的性能,本文采用準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)和交并比(Intersection over Union,IoU)來評(píng)價(jià)物品缺陷圖像檢測和分類的性能。四個(gè)評(píng)價(jià)指標(biāo)的定義如下:
其中:TP、FP、TN和FN分別表示真陽性、假陽性、真陰性和假陰性;GT表示真實(shí)檢測框;PM表示預(yù)測檢測框。
3.3.1 SD_AEKD的缺陷檢測性能
為了評(píng)估SD_AEKD 的檢測性能,將所提出的SD_AEKD方法與下面的七種方法進(jìn)行實(shí)驗(yàn)對(duì)比分析:1)用于裂痕檢測的圖像處理工具箱(Image processing Toolbox for Crack detection,CrackIT)[22],這是一套全面的圖像處理算法,用于檢測和表征路面的表面裂紋。2)最小路徑選擇(Minimal Path Selection,MPS)[23],這是一種從二維路面圖像自動(dòng)檢測裂痕的新方法,它依賴于每個(gè)圖像中最小路徑的定位。3)基于隨機(jī)樹的道路裂痕檢測(Crack detection based on random Forest,CrackForest)框架[24],這是一種基于隨機(jī)結(jié)構(gòu)化森林的新型道路裂縫檢測框架,用于道路裂痕不均勻檢測。4)U 型卷積網(wǎng)絡(luò)(U-shaped convolutional Network,U-Net)[25],這是一種全卷積網(wǎng)絡(luò)進(jìn)行語義分割的算法,用于對(duì)缺陷圖像進(jìn)行分割檢測。5)全卷積網(wǎng)絡(luò)(Fully Convolutional Network,F(xiàn)CN)[1],這是一種端到端的圖像分割方法,用于圖像像素級(jí)別的標(biāo)簽預(yù)測。6)快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Fast Region-Convolutional Neural Network,F(xiàn)ast-RCNN)[26]是一種快速對(duì)整個(gè)圖像進(jìn)行區(qū)域獨(dú)立特征提取的網(wǎng)絡(luò),用于圖像的目標(biāo)檢測。7)掩模區(qū)域卷積神經(jīng)網(wǎng) 絡(luò)(Mask Region-Convolutional Neural Network,Mask-RCNN)[27]是一種基于Fast-RCNN的目標(biāo)檢測網(wǎng)絡(luò),它在Faster R-CNN的基礎(chǔ)上添加了一個(gè)預(yù)測分割mask的分支。這些方法涵蓋了目前對(duì)表面缺陷檢測的各個(gè)類別,即檢測、分類和分割。
表2 給出了在兩個(gè)真實(shí)數(shù)據(jù)集上的檢測結(jié)果。從表2 可以看出,本文所提出的SD_AEKD 方法在數(shù)據(jù)集DAGM 上以0.9647 的準(zhǔn)確率(Accuracy)、0.9392 的精度(Precision)、0.9578 的召回率(Recall)和0.8192 的IoU 達(dá)到最佳性能,且在Magnetic-tile 上以0.9647 的準(zhǔn)確率(Accuracy)、0.9392 的精度(Precision)、0.9578 的召回率(Recall)和0.8192 的IoU也達(dá)到最佳性能。圖6 給出了一些樣例在數(shù)據(jù)集DAGM 上的檢測分類結(jié)果。
圖6 部分樣例在DAGM數(shù)據(jù)集上的檢測分類結(jié)果Fig.6 Detection and classification results of some samples on DAGM dataset
表2 不同方法在物品表面缺陷檢測上的性能指標(biāo)對(duì)比Tab.2 Performance index comparison of different methods in item surface defect detection
3.3.2 SD_AEKD的分類性能
為了定量評(píng)估知識(shí)蒸餾的分類性能,本文將所提出的SD_AEKD 方法與其他的三種傳統(tǒng)的機(jī)器學(xué)習(xí)分類方法進(jìn)行比較,這些方法的代碼可以公開獲取。
1)灰度共生矩陣(Gray Level Co-occurrence Matrix,GLCM)[10]:此方法是經(jīng)典的紋理提取,其中包括四個(gè)典型的描述:能量、對(duì)比度、熵和相關(guān)性。
2)定向梯度直方圖(Histogram of Oriented Gradient,HOG)[9]:它通常可以通過以下步驟獲得。首先,通過將圖像劃分為較小的連接區(qū)域來獲得單元;然后,獲取單元中每個(gè)像素的梯度或邊緣方向直方圖;最后,通過組合這些直方圖來構(gòu)成完整的特征描述符。
3)HOG+SOBEL:本文以SOBEL 操作為特征計(jì)算梯度幅度,并結(jié)合以上HOG特征形成一個(gè)新特征。
取決于上述特征,使用多層感知器(MultiLayer Perceptron,MLP)進(jìn)行了三個(gè)缺陷分類實(shí)驗(yàn)。MLP 在隱藏層和具有三個(gè)輸出變量的輸出層中包含15 個(gè)單元。輸入層數(shù)由上述特征的尺寸決定。MLP中優(yōu)化算法的最大迭代次數(shù)為1000。GLCM 功能由六個(gè)灰度級(jí)組成,并在共現(xiàn)矩陣中計(jì)算90°方向。HOG 中灰度值的量化為8。SOBEL 中濾鏡的大小為33。表3 給出了不同分類方法的性能對(duì)比??梢钥闯觯贒AGM 和Magnetic-tile 數(shù)據(jù)集上,三種傳統(tǒng)的基于機(jī)器學(xué)習(xí)的淺層特征方法的平均準(zhǔn)確率分別達(dá)到了70.54%和79.26%,而知識(shí)蒸餾的準(zhǔn)確率相較于這些方法分別提高了19.87 個(gè)百分點(diǎn)和15 個(gè)百分點(diǎn)。圖7 給出了一些樣例在Magnetic-tile 數(shù)據(jù)集上的檢測分類結(jié)果。
表3 不同方法在物品表面缺陷分類上的性能指標(biāo)對(duì)比Tab.3 Performance index comparison of different methods in item surface defect classification
圖7 部分樣例在Magnetic-tile數(shù)據(jù)集上的檢測分類結(jié)果Fig.7 Detection and classification results of some examples on Magnetic-tile dataset
本文提出了一種新穎的基于自編碼和知識(shí)蒸餾的表面缺陷檢測體系結(jié)構(gòu),可以針對(duì)復(fù)雜的工業(yè)場景準(zhǔn)確執(zhí)行物品表面的缺陷檢測和分類任務(wù)。在SD_AEKD框架中,檢測模塊將缺陷圖像轉(zhuǎn)換為僅包含缺陷像素和背景像素的逐像素預(yù)測蒙版,目的是能夠精準(zhǔn)地定位缺陷的區(qū)域。此外,分類模塊利用知識(shí)蒸餾方法將所檢測出來的缺陷進(jìn)行類別分類。最后,在兩個(gè)真實(shí)的表面缺陷數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果表明,本文所提出的SD_AEKD方法的缺陷檢測平均準(zhǔn)確率為97.00%,在IoU評(píng)價(jià)指標(biāo)上的平均得分為86.05%,并進(jìn)一步驗(yàn)證本文所提出的SD_AEKD方法在檢測和分類的性能顯著提升。