陳 朝,劉 志,李恭楊,彭鐵根
1.上海大學(xué) 通信與信息工程學(xué)院,上海 200444
2.寶山鋼鐵股份有限公司 中央研究院,上海 201999
在工業(yè)制造領(lǐng)域,如何在生產(chǎn)過(guò)程中準(zhǔn)確檢測(cè)出產(chǎn)品的表面缺陷對(duì)于產(chǎn)品的質(zhì)量控制有著重大意義。近幾年,深度學(xué)習(xí)技術(shù)在智能制造領(lǐng)域嶄露頭角,它利用大量數(shù)據(jù)可以訓(xùn)練出用于缺陷檢測(cè)的模型,大大提高了缺陷檢測(cè)的準(zhǔn)確率。但在實(shí)際的生產(chǎn)過(guò)程中,缺陷產(chǎn)品出現(xiàn)的比率非常低,上百萬(wàn)個(gè)樣本中僅能找出幾千個(gè)缺陷樣本,對(duì)于一些較為罕見(jiàn)的缺陷,甚至只能收集到幾個(gè)到幾十個(gè)缺陷樣本,這會(huì)造成各類樣本數(shù)量不均衡且少的問(wèn)題。如果只有少量缺陷樣本參與訓(xùn)練,模型會(huì)容易過(guò)擬合,這會(huì)造成該類缺陷的檢測(cè)性能急劇下降的情況。少樣本學(xué)習(xí)便是針對(duì)該問(wèn)題而提出的解決方案,它基于先驗(yàn)知識(shí)并利用從少量樣本中學(xué)習(xí)的新知識(shí)來(lái)對(duì)模型微調(diào)[1],從而實(shí)現(xiàn)對(duì)新樣本的缺陷檢測(cè)。綜上所述,提出一種針對(duì)工業(yè)生產(chǎn)場(chǎng)景的基于少樣本學(xué)習(xí)的缺陷檢測(cè)模型是非常有必要的。
少樣本目標(biāo)檢測(cè)是計(jì)算機(jī)視覺(jué)領(lǐng)域的一個(gè)新興分支,在近幾年受到了廣泛關(guān)注。2019年,Kang等人[2]在單階段檢測(cè)模型的基礎(chǔ)上提出了一個(gè)基于少樣本學(xué)習(xí)的目標(biāo)檢測(cè)模型,將少量的樣本通過(guò)一個(gè)重新加權(quán)模塊來(lái)得到多個(gè)類別相關(guān)的特征向量,并與特征圖相乘,之后進(jìn)行分類和回歸計(jì)算。Yan等人[3]基于雙階段檢測(cè)模型,用骨干網(wǎng)絡(luò)生成的特征向量與感興趣區(qū)域特征相乘并輸入到檢測(cè)器中,取得了不錯(cuò)的檢測(cè)性能。此外,Yang等人[4]提出了FSDet,該模型利用兩個(gè)編碼器得到每個(gè)類別的特征向量和感興趣區(qū)域(region of interest,ROI),然后對(duì)兩組特征向量進(jìn)行聚合操作,并將這些向量用作檢測(cè)器的輸入。通過(guò)這種方法,模型可以充分利用訓(xùn)練樣本和測(cè)試樣本的特征和相關(guān)性,進(jìn)而提升檢測(cè)性能。然而,上述少樣本目標(biāo)檢測(cè)模型屬于通用的少樣本目標(biāo)檢測(cè)模型,在缺陷檢測(cè)任務(wù)中的表現(xiàn)不理想,不適合直接應(yīng)用到工業(yè)場(chǎng)景中。
目前,工廠中普遍使用傳統(tǒng)的圖像處理方法來(lái)進(jìn)行產(chǎn)品的表面缺陷檢測(cè)。Borselli等人[5]提出利用缺陷邊緣的亮度變化較大的特點(diǎn)來(lái)檢測(cè)缺陷。李軍華等人[6]對(duì)提取到的兩種區(qū)域特征進(jìn)行加權(quán)融合,在生成綜合特征向量后送入分類器,提升了瓷磚的缺陷檢測(cè)效果。Tolba等人[7]提出將Gabor濾波器[8]應(yīng)用于缺陷檢測(cè),并取得了不錯(cuò)的效果。黃夢(mèng)濤等人[9]提出了基于改進(jìn)Canny算子的模型,該模型能夠減少噪聲的干擾并突出待檢測(cè)的缺陷區(qū)域,進(jìn)而提升了檢測(cè)性能。然而,這些方法都存在較大的局限性,只能在某些缺陷類別上取得良好的檢測(cè)效果。隨著深度學(xué)習(xí)的發(fā)展,多項(xiàng)研究[10-12]證明了基于卷積神經(jīng)網(wǎng)絡(luò)的模型在缺陷檢測(cè)任務(wù)上的優(yōu)越性。Yi等人[10]提出了一種端到端的模型來(lái)提高缺陷檢測(cè)的性能。Ren等人[11]優(yōu)化了一個(gè)兩階段的目標(biāo)檢測(cè)模型,使其更適合用于缺陷檢測(cè)。徐鏹等人[12]改進(jìn)了YOLOv3[13]網(wǎng)絡(luò),不僅適當(dāng)減少了網(wǎng)絡(luò)的參數(shù)量,還提升了模型在鋼板表面缺陷檢測(cè)的準(zhǔn)確率。上述方法通過(guò)對(duì)現(xiàn)有模型的修改,使其更適合用于缺陷檢測(cè)。但是,這些模型在訓(xùn)練階段依然需要大量的缺陷樣本,當(dāng)只提供少量的缺陷樣本時(shí),它們的檢測(cè)性能會(huì)急劇下降。
在實(shí)際工業(yè)場(chǎng)景的缺陷檢測(cè)任務(wù)中,很多時(shí)候難以提供大量的缺陷樣本。針對(duì)這個(gè)問(wèn)題,李鈞正等人[14]提出用數(shù)據(jù)增強(qiáng)方法來(lái)增廣數(shù)據(jù)集,在鋼板表面缺陷檢測(cè)任務(wù)中取得了良好的結(jié)果。Wang等人[15]提出在少樣本訓(xùn)練之前進(jìn)行缺陷圖像的預(yù)處理,利用噪聲正則化等策略,提升了模型訓(xùn)練的魯棒性并獲得了良好的檢測(cè)性能。張藝橋[16]提出了YO-FR算法,在定位階段采用YOLOv3[13]的結(jié)構(gòu),在分類階段采用Faster R-CNN[17]的結(jié)構(gòu)。上述的幾種方法嘗試?yán)脭?shù)據(jù)增強(qiáng)、數(shù)據(jù)預(yù)處理和模型集成的策略來(lái)解決少樣本學(xué)習(xí)的問(wèn)題,但并未針對(duì)工業(yè)場(chǎng)景中少樣本缺陷檢測(cè)任務(wù)來(lái)設(shè)計(jì)一種全新結(jié)構(gòu)的少樣本缺陷檢測(cè)模型。與上述方法不同的是,本文提出了一個(gè)全新的基于元學(xué)習(xí)的少樣本缺陷檢測(cè)模型,即兩階段缺陷增強(qiáng)網(wǎng)絡(luò)(two-phase defect enhancement network,TDENet),且首次利用了無(wú)缺陷樣本來(lái)提高少樣本缺陷檢測(cè)的性能。同時(shí)還構(gòu)建了一個(gè)用于少樣本缺陷檢測(cè)的新數(shù)據(jù)集,即工業(yè)表面缺陷(industrial surface defects,ISD)數(shù)據(jù)集。在缺陷檢測(cè)過(guò)程中,數(shù)量遠(yuǎn)超過(guò)缺陷樣本的無(wú)缺陷樣本通常會(huì)被忽略,導(dǎo)致其無(wú)法被有效利用。因此,ISD數(shù)據(jù)集額外添加了200個(gè)無(wú)缺陷樣本,便于本文探究對(duì)無(wú)缺陷樣本的利用。此外,本文提出的少樣本缺陷檢測(cè)模型將整個(gè)訓(xùn)練過(guò)程分為兩個(gè)階段:第一階段需要大量的基類缺陷樣本來(lái)獲得預(yù)訓(xùn)練模型,第二階段只需要少量的基類和新類的缺陷樣本即可在預(yù)訓(xùn)練模型的基礎(chǔ)上學(xué)習(xí)新特征。
本文的主要貢獻(xiàn)包括以下三個(gè)方面:
(1)提出了適用于工業(yè)場(chǎng)景中缺陷檢測(cè)任務(wù)的基于元學(xué)習(xí)的少樣本缺陷檢測(cè)模型,首次將無(wú)缺陷樣本的應(yīng)用引入到少樣本缺陷檢測(cè)領(lǐng)域,并為少樣本缺陷檢測(cè)任務(wù)構(gòu)建了一個(gè)新的ISD數(shù)據(jù)集。該數(shù)據(jù)集中同時(shí)包含缺陷樣本和無(wú)缺陷樣本,旨在促進(jìn)少樣本缺陷檢測(cè)領(lǐng)域的發(fā)展,并提高對(duì)工廠實(shí)際生產(chǎn)中大量存在卻被忽視的無(wú)缺陷樣本的重視。
(2)針對(duì)少樣本缺陷檢測(cè)提出了一個(gè)兩階段缺陷增強(qiáng)網(wǎng)絡(luò)TDENet,它將整個(gè)訓(xùn)練過(guò)程分為兩個(gè)階段。其中,第一個(gè)階段基于大量樣本訓(xùn)練得到一個(gè)預(yù)訓(xùn)練模型,第二個(gè)階段基于少量樣本對(duì)預(yù)訓(xùn)練模型進(jìn)行模型微調(diào)。此外,在第二個(gè)階段添加了一個(gè)新的網(wǎng)絡(luò)分支,使得兩個(gè)階段的網(wǎng)絡(luò)結(jié)構(gòu)不同。在這個(gè)新的網(wǎng)絡(luò)分支上應(yīng)用了新提出的缺陷突顯模塊(defect prominence module,DPM)。DPM利用特征向量相減操作以借助無(wú)缺陷樣本的特征來(lái)加強(qiáng)缺陷區(qū)域的特征。之后,TDENet利用特征聚合操作來(lái)綜合不同網(wǎng)絡(luò)分支輸出的特征,進(jìn)一步提升了缺陷檢測(cè)性能。
(3)在ISD數(shù)據(jù)集、皮革和木材數(shù)據(jù)上進(jìn)行了全面的實(shí)驗(yàn),與最先進(jìn)的少樣本目標(biāo)檢測(cè)模型相比,TDENet在不同的工業(yè)場(chǎng)景下都取得了最優(yōu)的缺陷檢測(cè)性能。
本文已經(jīng)將相關(guān)實(shí)驗(yàn)設(shè)置、數(shù)據(jù)集以及源代碼公布在https://github.com/chenzhao339/TDENet。
由于目前沒(méi)有適用于少樣本缺陷檢測(cè)課題的數(shù)據(jù)集,所以本文基于東北大學(xué)(North East University,NEU)表面缺陷數(shù)據(jù)集[18]和磁瓦(magnetic tile,MT)數(shù)據(jù)集[19],構(gòu)建了一個(gè)適用于少樣本缺陷檢測(cè)的新數(shù)據(jù)集,即ISD數(shù)據(jù)集。NEU鋼鐵表面缺陷數(shù)據(jù)集包含1 800個(gè)缺陷樣本,其中每個(gè)缺陷類都有300個(gè)樣本。MT數(shù)據(jù)集共有387個(gè)缺陷樣本和952個(gè)無(wú)缺陷樣本,其中包含了5個(gè)缺陷類,各類樣本數(shù)量如表1所示。雖然這兩個(gè)數(shù)據(jù)集屬于兩種不同的材料,但它們的背景和缺陷區(qū)域具有一定的相似性,使得它們可用于少樣本缺陷檢測(cè)的研究。
表1 MT數(shù)據(jù)集中各類樣本數(shù)量Table 1 Number of samples of every class in MT dataset
遵循現(xiàn)有的少樣本學(xué)習(xí)策略[3],ISD數(shù)據(jù)集包含基類Cbase和新類Cnovel兩部分。其中,基類為樣本較多且多樣的缺陷類型,而新類為樣本較少的缺陷類型。本文提出的ISD數(shù)據(jù)集選取NEU數(shù)據(jù)集中的5個(gè)缺陷類作為基類,并選取MT數(shù)據(jù)集中的所有類作為新類,還從MT數(shù)據(jù)集中隨機(jī)選取了200個(gè)無(wú)缺陷樣本,以緩解少樣本學(xué)習(xí)過(guò)程中新類缺陷數(shù)據(jù)缺乏的問(wèn)題。如表2所示,ISD數(shù)據(jù)集共有2 087個(gè)樣本,其中,1 500個(gè)樣本屬于基類,387個(gè)樣本屬于新類,200個(gè)樣本屬于無(wú)缺陷樣本。在少樣本學(xué)習(xí)過(guò)程中,將該數(shù)據(jù)集隨機(jī)地劃分為訓(xùn)練集和測(cè)試集,且這兩個(gè)部分相互獨(dú)立。訓(xùn)練集根據(jù)少樣本學(xué)習(xí)策略[3]分為兩部分,第一部分用于第一階段的訓(xùn)練,包括基類中每個(gè)缺陷類的200個(gè)缺陷樣本(共有5個(gè)類);第二部分用于第二階段的訓(xùn)練,包括基類和新類中每個(gè)類10個(gè)缺陷樣本(共有10個(gè)類)和10個(gè)無(wú)缺陷樣本。測(cè)試集則是包括基類中每類90個(gè)樣本以及105個(gè)氣孔缺陷樣本、75個(gè)斷裂缺陷樣本、47個(gè)裂紋缺陷樣本、22個(gè)磨損缺陷樣本和88個(gè)凹凸不平缺陷樣本。
表2 ISD數(shù)據(jù)集的組成Table 2 Composition of ISD dataset
MT數(shù)據(jù)集原本針對(duì)的任務(wù)為顯著性檢測(cè),因此其中的缺陷二值圖需要轉(zhuǎn)換為缺陷檢測(cè)的標(biāo)注方式,即xml文件,轉(zhuǎn)換步驟如下所述:
(1)獲取每個(gè)缺陷位置。根據(jù)二值圖中缺陷的連通關(guān)系,得到每個(gè)連通域的坐標(biāo)信息,并將每個(gè)連通域視為獨(dú)立的缺陷[20]。
(2)生成缺陷檢測(cè)標(biāo)注文件。基于單個(gè)缺陷的坐標(biāo)信息及其對(duì)應(yīng)的缺陷類,可以生成缺陷檢測(cè)的標(biāo)注文件,即標(biāo)明缺陷類的邊界框。這些標(biāo)注文件與原始缺陷圖像是一一對(duì)應(yīng)的關(guān)系。
圖1展示了ISD數(shù)據(jù)集中缺陷類的部分樣本。從圖中可以看出,基類和新類之間的差異較小,這有利于基類和新類之間的知識(shí)遷移。
圖1 ISD數(shù)據(jù)集中所有缺陷類的樣本Fig.1 Samples of all defect classes in ISD dataset
在少樣本學(xué)習(xí)過(guò)程中,由于新類缺陷的樣本量不足,導(dǎo)致基于傳統(tǒng)的訓(xùn)練策略得到的模型對(duì)于新類缺陷的檢測(cè)性能不如基類缺陷的檢測(cè)性能。這說(shuō)明傳統(tǒng)的訓(xùn)練策略在樣本很少的情況下無(wú)法很好地學(xué)習(xí)新類缺陷的特征。針對(duì)這個(gè)問(wèn)題,本文提出了一個(gè)兩階段缺陷增強(qiáng)網(wǎng)絡(luò)TDENet,該網(wǎng)絡(luò)在兩個(gè)訓(xùn)練階段采用不同的網(wǎng)絡(luò)結(jié)構(gòu)。
本文提出的TDENet使用Faster R-CNN[17]作為基本的檢測(cè)框架,并將整個(gè)訓(xùn)練過(guò)程分為兩個(gè)階段。第一個(gè)訓(xùn)練階段與Meta R-CNN[3]類似,即基于大量的基類樣本訓(xùn)練得到一個(gè)可檢測(cè)基類缺陷的預(yù)訓(xùn)練模型。如圖2所示,第一個(gè)訓(xùn)練階段的網(wǎng)絡(luò)由兩個(gè)分支組成。其中,第一個(gè)網(wǎng)絡(luò)分支基于Faster R-CNN的主干網(wǎng)絡(luò)輸出特征圖,之后利用區(qū)域生成網(wǎng)絡(luò)(region proposal network,RPN)來(lái)獲取各個(gè)類別的感興趣區(qū)域相關(guān)的特征圖(即ROI特征向量)。RPN的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,它以主干網(wǎng)絡(luò)輸出的特征圖為輸入,并經(jīng)過(guò)一個(gè)卷積核為3×3的卷積層。然后分為兩個(gè)分支,第一個(gè)分支用于錨框的二分類,判斷錨框中是否含有缺陷,但不關(guān)注缺陷的類別;第二個(gè)分支用于錨框的回歸計(jì)算(即計(jì)算相對(duì)于真實(shí)邊框的偏移量)。最后綜合兩個(gè)分支獲取的錨框信息來(lái)進(jìn)行候選框的生成并輸出。如圖2所示,TDENet的第二個(gè)網(wǎng)絡(luò)分支基于預(yù)測(cè)頭重構(gòu)網(wǎng)絡(luò)(predictor-head remodeling network,PRN),并利用缺陷樣本來(lái)生成缺陷類注意力特征向量缺陷類注意力特征向量編碼了訓(xùn)練樣本的第n類缺陷信息,可用于生成缺陷類相關(guān)的特征圖。這個(gè)過(guò)程可以用公式(1)表述:
圖2 TDENet第一個(gè)訓(xùn)練階段的網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Network structure of first training phase of TDENet
圖3 RPN網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Network structure of RPN
其中,?代表特征向量與特征圖的逐元素相乘,N代表訓(xùn)練集的缺陷類數(shù)量的維度均為128×2 048(其中128表示感興趣區(qū)域ROI的數(shù)量),且的維度為1×2 048。之后,通過(guò)分類和回歸計(jì)算,TDENet可以根據(jù)獲得缺陷的類別和位置信息。
與第一個(gè)訓(xùn)練階段不同,第二個(gè)階段需要少量的基類和新類樣本。在不考慮背景差異的情況下,本文發(fā)現(xiàn)不同材料的缺陷特征具有一定的相似性,例如鋼鐵的劃痕缺陷和磁瓦的裂紋缺陷。因此,如圖4所示,TDENet在第二個(gè)訓(xùn)練階段引入了第三個(gè)網(wǎng)絡(luò)分支,目的是為了同時(shí)利用輸入的缺陷樣本和無(wú)缺陷樣本來(lái)增強(qiáng)網(wǎng)絡(luò)對(duì)新類的缺陷區(qū)域特征的提取能力。具體來(lái)說(shuō),TDENet在第三個(gè)分支上添加了一個(gè)缺陷突顯模塊(DPM),它可以利用從缺陷樣本和無(wú)缺陷樣本中提取到的特征,將這兩個(gè)特征相減來(lái)生成缺陷區(qū)域特征突顯向量然后利用每個(gè)缺陷類的來(lái)生成缺陷區(qū)域特征突顯的特征圖。這個(gè)過(guò)程可以用公式(2)來(lái)表述:
圖4 TDENet第二個(gè)訓(xùn)練階段的網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Network structure of second training phase of TDENet
其中,F(xiàn)C(·)代表全連接層,⊙代表特征圖在通道維度進(jìn)行串聯(lián)的操作,且的維度為128×4 096,F(xiàn)n的維度為128×2 048。特征圖在通道維度進(jìn)行串聯(lián)的特征聚合操作可以在保持原有效果的同時(shí)提高模型對(duì)于新類缺陷的感知。之后使用全連接層來(lái)壓縮特征的維度。最后通過(guò)邊框的分類和回歸計(jì)算,可以得到基類缺陷和新類缺陷的檢測(cè)結(jié)果。
此外,TDENet中兩個(gè)訓(xùn)練階段的損失函數(shù)與Meta R-CNN[3]的保持一致,可以用公式(4)來(lái)表述:
其中,Lreg表示邊框回歸的平滑L1損失函數(shù),Lcls表示分類的交叉熵?fù)p失函數(shù),Lmeta表示旨在提高特征向量表征能力的交叉熵?fù)p失函數(shù),可以用公式(5)表述:
由于常見(jiàn)的缺陷檢測(cè)模型并不能很好地基于少量樣本來(lái)提取新類缺陷的特征,所以本文提出了缺陷突顯模塊(defect prominence module,DPM)來(lái)更好地利用無(wú)缺陷樣本,并用于提升第二個(gè)訓(xùn)練階段的新類缺陷表征能力。
如圖5所示,DPM包括兩部分。第一部分將少量的新類樣本輸入PRN以生成缺陷類注意力特征向量,這些向量編碼了新類缺陷的特征信息。第一部分中的卷積層使用M×M的卷積核,其中M設(shè)置為7。因?yàn)楸尘靶畔⒁话闶侨中畔?,所以將第二部分的卷積核擴(kuò)展為S×S,其中S=2M-1,即S為13。該做法可以更好地提取無(wú)缺陷樣本的全局特征,并生成無(wú)缺陷的特征向量vdf。之后通過(guò)和vdf的相減操作可得到特征突顯的特征向量,這可以減少背景的干擾并突顯缺陷區(qū)域的特征信息。該過(guò)程可由公式(6)表述:
圖5 DPM的網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Network structure of DPM
其中,λ是vdf的比例系數(shù),其作用是減少無(wú)缺陷樣本中的噪聲對(duì)計(jì)算結(jié)果的干擾。λ的值不能設(shè)置太大,該參數(shù)值的選取將在3.4節(jié)中進(jìn)一步說(shuō)明。
對(duì)于缺陷檢測(cè)任務(wù),激活函數(shù)引入了非線性因素,使模型得到高維的深度特征。本文使用sigmoid激活函數(shù)是因?yàn)閟igmoid激活函數(shù)的輸出范圍(0,1)比tanh激活函數(shù)的輸出范圍(-1,1)更集中。此外,sigmoid激活函數(shù)輸出的特征向量的每個(gè)值都在區(qū)間(0,1)上且總和不受約束,而softmax激活函數(shù)輸出的特征向量的每個(gè)值雖然都在區(qū)間(0,1)上,但其所有值的總和限制為1。相比之下,softmax激活函數(shù)在計(jì)算過(guò)程中更容易出現(xiàn)信息丟失的問(wèn)題,所以選用sigmoid激活函數(shù)可以使輸出的特征在傳遞的過(guò)程中不容易發(fā)散,同時(shí)可以減少特征提取過(guò)程中信息丟失的風(fēng)險(xiǎn)。DPM+輸出的特征向量在之后會(huì)用于檢測(cè)框的分類和回歸,而sigmoid激活函數(shù)可以兼顧TDENet的分類和回歸,保證候選框的分類和回歸效果。因此,DPM+可確保在進(jìn)行特征向量的減法操作時(shí)更好地保留特征向量中的重要特征,進(jìn)而提升新模型在新類缺陷上的檢測(cè)性能。3.5節(jié)中的消融實(shí)驗(yàn)也證明了DPM+確實(shí)可以減少缺陷檢測(cè)的錯(cuò)誤并優(yōu)化性能。
本文利用兩個(gè)不同的缺陷數(shù)據(jù)集來(lái)測(cè)試模型的缺陷檢測(cè)性能。第一個(gè)數(shù)據(jù)集是ISD數(shù)據(jù)集,其中有1 500個(gè)鋼鐵表面缺陷樣本,387個(gè)磁瓦表面缺陷樣本以及200個(gè)無(wú)缺陷樣本。第二個(gè)數(shù)據(jù)集是MVTec公司提出的缺陷數(shù)據(jù)集[21],該數(shù)據(jù)集包含皮革、木材、牙刷、膠囊和螺絲等樣本,其中皮革和木材的樣本與ISD數(shù)據(jù)集中的樣本具有一定的相似性且都屬于平面上的缺陷。因此選用該數(shù)據(jù)集中的皮革和木材樣本作為接下來(lái)的實(shí)驗(yàn)數(shù)據(jù)集。由于該數(shù)據(jù)集對(duì)缺陷區(qū)域做了像素級(jí)別的標(biāo)注,所以需要利用第1章中提出的方法將像素級(jí)別的標(biāo)注轉(zhuǎn)換為缺陷檢測(cè)的標(biāo)注文件。在該數(shù)據(jù)集中,皮革樣本共有245個(gè)無(wú)缺陷樣本、19個(gè)顏料缺陷樣本、19個(gè)切裂缺陷樣本、17個(gè)折疊缺陷樣本、19個(gè)膠水缺陷樣本和18個(gè)戳裂缺陷樣本;而木材樣本共有247個(gè)無(wú)缺陷樣本、8個(gè)顏料缺陷樣本、10個(gè)孔洞缺陷樣本、10個(gè)水跡缺陷樣本和21個(gè)刮傷缺陷樣本。本文隨機(jī)抽取樣本作為訓(xùn)練集和測(cè)試集,以滿足后續(xù)的實(shí)驗(yàn)需求。
首先,采用第1章構(gòu)建的ISD數(shù)據(jù)集中的訓(xùn)練集,分兩個(gè)階段來(lái)訓(xùn)練模型。第一個(gè)階段采用ISD訓(xùn)練集的第一部分,即基類缺陷中每個(gè)類的200個(gè)樣本(共計(jì)5類)進(jìn)行訓(xùn)練,獲取預(yù)訓(xùn)練模型。第二個(gè)階段采用訓(xùn)練集的第二部分,即從ISD數(shù)據(jù)集中隨機(jī)選擇10個(gè)無(wú)缺陷樣本并分別在每個(gè)缺陷類(共計(jì)10類)中隨機(jī)選擇k個(gè)缺陷樣本(即k-shot)進(jìn)行模型的微調(diào),其中k值可以為1,5和10。測(cè)試階段采用第1章中構(gòu)建的測(cè)試集,即5類基類缺陷共450個(gè)樣本以及5類新類缺陷共337個(gè)樣本。
其次,利用3.1節(jié)中提到的皮革和木材數(shù)據(jù)集來(lái)訓(xùn)練模型。第一個(gè)訓(xùn)練階段的設(shè)置與上一段的描述保持一致,均采用ISD數(shù)據(jù)集的第一部分參與訓(xùn)練。對(duì)于皮革數(shù)據(jù)集的訓(xùn)練,第二個(gè)訓(xùn)練階段從皮革數(shù)據(jù)集中隨機(jī)選取10個(gè)皮革無(wú)缺陷樣本,并分別在ISD數(shù)據(jù)集中的基類和皮革數(shù)據(jù)集中每個(gè)類(共10類)隨機(jī)選取k個(gè)缺陷樣本(即k-shot)進(jìn)行模型的微調(diào),其中k值可以為1,5和10。皮革缺陷的測(cè)試集包括9個(gè)顏料缺陷樣本、9個(gè)切裂缺陷樣本、7個(gè)折疊缺陷樣本、9個(gè)膠水缺陷樣本和8個(gè)戳裂缺陷樣本。而對(duì)于木材數(shù)據(jù)集的訓(xùn)練,第二個(gè)訓(xùn)練階段從木材數(shù)據(jù)集中隨機(jī)選取10個(gè)木材無(wú)缺陷樣本,并分別在ISD數(shù)據(jù)集中的基類和木材數(shù)據(jù)集中每個(gè)類(共9類)隨機(jī)選取k個(gè)缺陷樣本(即k-shot)進(jìn)行模型的微調(diào),由于樣本量不足,此時(shí)的k值只能為1和5。木材缺陷的測(cè)試集包括3個(gè)顏料缺陷樣本、5個(gè)孔洞缺陷樣本、5個(gè)水跡缺陷樣本和16個(gè)刮傷缺陷樣本。
本文提出的模型采用ResNet-101[22]作為主干網(wǎng)絡(luò),基于NVIDIA Titan XP GPU進(jìn)行實(shí)驗(yàn),并使用隨機(jī)梯度下降(stochastic gradient descent,SGD)算法進(jìn)行訓(xùn)練。第一個(gè)訓(xùn)練階段將批尺寸設(shè)置為8,學(xué)習(xí)率設(shè)置為0.008,權(quán)重衰減設(shè)置為0.000 5。而在第二個(gè)訓(xùn)練階段批尺寸將減小到4。
本文將TDENet與三個(gè)少樣本目標(biāo)檢測(cè)模型FRCN+ft[3]、Meta R-CNN[3]和FSDet[4]進(jìn)行比較,在ISD數(shù)據(jù)集、皮革和木材數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),并采用mAP作為評(píng)估指標(biāo)。其中,F(xiàn)RCN+ft表示按照少樣本學(xué)習(xí)策略[3]訓(xùn)練得到的Faster R-CNN模型。為了公平比較,三個(gè)比較模型也是按照同樣的少樣本學(xué)習(xí)策略重新訓(xùn)練得到。
3.3.1 定量分析
表3呈現(xiàn)了在ISD數(shù)據(jù)集上本文提出的模型和三個(gè)少樣本目標(biāo)檢測(cè)模型的k-shot(k=1,5,10)性能評(píng)估結(jié)果。表中記錄了IoU閾值為0.5時(shí),對(duì)應(yīng)的mAP大小。與FRCN+ft相比,TDENet對(duì)于新類缺陷的檢測(cè)性能在各種情況下都有較大的提升。具體來(lái)說(shuō),在1-shot、5-shot和10-shot時(shí),mAP的增長(zhǎng)分別為3.64、3.86和4.40個(gè)百分點(diǎn)。與Meta-RCNN相比,TDENet對(duì)于新類缺陷的檢測(cè)性能有很大的提升,在1-shot、5-shot和10-shot時(shí)分別提高了2.75、1.81和2.81個(gè)百分點(diǎn)。值得注意的是,Meta R-CNN在兩個(gè)訓(xùn)練階段使用相同的網(wǎng)絡(luò)結(jié)構(gòu),而TDENet使用了兩種不同的網(wǎng)絡(luò)結(jié)構(gòu)。
表3 在ISD數(shù)據(jù)集上的性能評(píng)估Table 3 Evaluations on ISD dataset單位:%
這表明本文在兩個(gè)訓(xùn)練階段采用不同網(wǎng)絡(luò)結(jié)構(gòu)的方法是有效的。此外,TDENet在新類上的檢測(cè)性能比FSDet高得多。從表中可以觀察到,與FSDet相比,TDENet對(duì)于新類的檢測(cè)性能有了非常大的提升,在1-shot、5-shot和10-shot時(shí)分別提升了19.04、21.04和5.52個(gè)百分點(diǎn)。雖然FSDet對(duì)于基類缺陷的檢測(cè)性能比TDENet高,但對(duì)于新類的檢測(cè)性能比較低。而這種情況也說(shuō)明FSDet不適合少樣本缺陷檢測(cè)任務(wù)。從表3可以看出,TDENet對(duì)于新類缺陷的檢測(cè)性能最高,同時(shí)也保證對(duì)于基類缺陷的檢測(cè)性能的穩(wěn)定。雖然FSDet在1-shot和5-shot時(shí)對(duì)于基類缺陷的檢測(cè)性能略高,但對(duì)于新類缺陷的檢測(cè)性能卻出現(xiàn)了大幅度下滑。表4呈現(xiàn)了基于皮革和木材數(shù)據(jù)集的性能評(píng)估結(jié)果。從中可以觀察到,TDENet在皮革和木材數(shù)據(jù)上的缺陷檢測(cè)性能都達(dá)到了最優(yōu)。綜合以上的比較,可以看出TDENet在不同的工業(yè)場(chǎng)景中均擁有比其他幾個(gè)模型更好的缺陷檢測(cè)性能。
表4 在皮革和木材數(shù)據(jù)集上的性能評(píng)估Table 4 Evaluations on leather and wood datasets 單位:%
3.3.2測(cè)試結(jié)果展示
圖6展示了一些具有代表性的少樣本缺陷檢測(cè)模型的實(shí)驗(yàn)結(jié)果,包括ISD數(shù)據(jù)集,皮革以及木材數(shù)據(jù)集的測(cè)試結(jié)果。圖中的Grounnd Truth表示缺陷樣本的真實(shí)標(biāo)注值。與真實(shí)值相比,TDENet表現(xiàn)出了最好的缺陷檢測(cè)性能。與此同時(shí),其他模型的檢測(cè)結(jié)果并不理想,檢測(cè)框的位置與真實(shí)值有很大的偏移,甚至是遺漏了部分重要缺陷。如圖6(a)和圖6(c)所示,F(xiàn)RCN+ft的檢測(cè)結(jié)果遺漏了一些缺陷。在圖6(b)的第3列中,Meta R-CNN檢測(cè)到與真實(shí)缺陷相似的偽缺陷,而這些偽缺陷會(huì)干擾真實(shí)缺陷的檢測(cè)準(zhǔn)確率。在圖6(c)中,Meta R-CNN在同一個(gè)缺陷位置上生成了2個(gè)不同類別的檢測(cè)框。此外,Meta R-CNN和FSDet甚至無(wú)法檢測(cè)到某些樣本中的任一缺陷,這是很嚴(yán)重的錯(cuò)誤。因此,與其他模型相比,TDENet的缺陷檢測(cè)性能更為穩(wěn)定,更適合用于不同工業(yè)場(chǎng)景下的表面缺陷檢測(cè)任務(wù)。
圖6 少樣本缺陷檢測(cè)模型的測(cè)試結(jié)果Fig.6 Test results of few-shot defect detection models
圖7中藍(lán)色的線表示模型對(duì)于ISD數(shù)據(jù)集的基類(即鋼鐵表面缺陷)在10-shot情況下的檢測(cè)效果,橙色的線表示模型對(duì)于ISD數(shù)據(jù)集的新類(即磁瓦表面缺陷)在10-shot情況下的檢測(cè)效果。如圖7所示,在ISD數(shù)據(jù)集上,新類的正確率比基類的正確率高。從圖1(a)可以看出,圖中第1列、第3列和第4列的鋼鐵表面缺陷是線狀缺陷和面狀缺陷,較為簡(jiǎn)單;但第2列和第5列的鋼鐵表面缺陷是散點(diǎn)狀缺陷,較為復(fù)雜。從圖1(b)可以看出,圖中的五列磁瓦表面缺陷是線狀缺陷和面狀缺陷,且每張圖一般只有一個(gè)缺陷,較為簡(jiǎn)單?;谝陨戏治隹芍?,鋼鐵表面缺陷比磁瓦表面缺陷更加復(fù)雜且背景多變,缺陷檢測(cè)的難度更高。圖6(a)和圖6(b)的缺陷檢測(cè)結(jié)果也驗(yàn)證了上述分析,其中兩類散點(diǎn)狀缺陷較難檢測(cè),拉低了對(duì)于鋼鐵表面缺陷的檢測(cè)效果。因此,圖7中新類的正確率比基類的正確率高。
圖7 參數(shù)值λ的選取實(shí)驗(yàn)Fig.7 Selection experiment of parameter value λ
在vclassn與vdf的特征向量相減操作中,比例系數(shù)λ是最重要的參數(shù)。如圖7所示,本文進(jìn)行了多次實(shí)驗(yàn)以找出最合適的λ值,當(dāng)λ值為0.05時(shí),TDENet對(duì)于ISD數(shù)據(jù)集中基類和新類缺陷的檢測(cè)性能都是最佳。當(dāng)選取的λ值小于0.05時(shí),TDENet的缺陷檢測(cè)性能會(huì)下降。而導(dǎo)致這種情況的原因主要是,當(dāng)λ太小時(shí),從無(wú)缺陷樣本中提取到的特征就會(huì)不起作用。此外,當(dāng)選取的λ值大于0.05時(shí),TDENet的缺陷檢測(cè)性能也會(huì)下降。而這主要是因?yàn)橹械牟糠种翟谔卣飨蛄肯鄿p操作后變?yōu)榱?,從而遺失了部分特征信息。因此,當(dāng)λ的值設(shè)置為0.05時(shí),TDENet可以較好地利用無(wú)缺陷樣本,并獲得良好的缺陷檢測(cè)性能。
本文做的消融實(shí)驗(yàn)結(jié)果如表5所示,其中[·,·]代表在通道維度進(jìn)行特征圖串聯(lián)的操作。在消融實(shí)驗(yàn)中用IoU閾值為0.5時(shí)的mAP作為性能評(píng)價(jià)指標(biāo),且在第二階段的訓(xùn)練中,每次從新類數(shù)據(jù)中選取k個(gè)樣本參與模型的微調(diào),以獲得最終的缺陷檢測(cè)模型。從表中可以看出TDENet中提出的新模塊的有效性。之后,本文將要探討兩個(gè)方面的問(wèn)題:(1)針對(duì)TDENet的三個(gè)網(wǎng)絡(luò)分支輸出的特征,不同的利用方法對(duì)缺陷檢測(cè)性能的影響;(2)本文提出的缺陷突顯模塊的有效性。本文所有的消融實(shí)驗(yàn)基于ISD數(shù)據(jù)集,并將Meta R-CNN的缺陷檢測(cè)性能設(shè)置為消融實(shí)驗(yàn)研究的基準(zhǔn)(即Baseline)。
3.5.1 如何利用TDENet的三個(gè)分支更有效
在網(wǎng)絡(luò)結(jié)構(gòu)上,TDENet在第二個(gè)訓(xùn)練階段有三個(gè)網(wǎng)絡(luò)分支。其中,第一個(gè)分支由缺陷檢測(cè)的骨干網(wǎng)絡(luò)ResNet和RPN組成,輸出的是ROI特征。而PRN和DPM作為兩個(gè)特征提取模塊分別屬于第二個(gè)和第三個(gè)分支,旨在從樣本中提取出更多有價(jià)值的特征。這兩個(gè)分支可分別提取到兩種特征圖,即之后,本文探索了三種使用這兩種特征圖的方法:(1)只利用DPM提取出的特征圖且不進(jìn)行特征聚合;(2)將這兩種特征圖進(jìn)行逐通道求和來(lái)實(shí)現(xiàn)特征聚合;(3)將這兩種特征圖在通道維度進(jìn)行串聯(lián)以實(shí)現(xiàn)特征聚合。
從表5可以看出,對(duì)使用(1)中的方法獲得的模型進(jìn)行測(cè)試(即表中第2行的實(shí)驗(yàn)),發(fā)現(xiàn)其檢測(cè)性能有所提升。與Baseline相比,它在1-shot、5-shot和10-shot時(shí)的檢測(cè)性能分別增加了0.19、0.98和0.81個(gè)百分點(diǎn)。這說(shuō)明第三個(gè)網(wǎng)絡(luò)分支能夠利用無(wú)缺陷樣本來(lái)增強(qiáng)缺陷區(qū)域的特征,進(jìn)而提升缺陷檢測(cè)性能。對(duì)使用(2)中的方法獲得的模型進(jìn)行測(cè)試時(shí)(即表中第3行的實(shí)驗(yàn)),發(fā)現(xiàn)其檢測(cè)性能出現(xiàn)顯著性下降。與Baseline相比,它在1-shot、5-shot和10-shot時(shí)的檢測(cè)性能分別減少了0.37、3.47和2.06個(gè)百分點(diǎn)。查看圖像檢測(cè)結(jié)果可發(fā)現(xiàn),雖然使用(2)中的特征聚合方法可以使較為明顯的缺陷更容易被檢出,但同時(shí)也會(huì)降低不明顯的缺陷的分類得分,進(jìn)而使這些不明顯的缺陷更容易被拋棄。與之不同的是,對(duì)使用(3)中的方法獲得的模型進(jìn)行測(cè)試時(shí)(即表中第4行的實(shí)驗(yàn)),發(fā)現(xiàn)其檢測(cè)性能相對(duì)于使用(1)中的方法獲得的模型有了進(jìn)一步的提升。在1-shot、5-shot和10-shot時(shí),其檢測(cè)性能分別增加了0.33、0.40和1.41個(gè)百分點(diǎn)。此外,從實(shí)際的圖像檢測(cè)結(jié)果來(lái)看,有更多的不明顯缺陷被檢出。這說(shuō)明,利用特征圖在通道維度進(jìn)行串聯(lián)的操作可以整合PRN和DPM這兩個(gè)模塊提取的缺陷特征,在保證較明顯缺陷的檢測(cè)性能穩(wěn)定的同時(shí),更容易檢測(cè)出那些不明顯的缺陷。
3.5.2 缺陷突顯模塊是否能提高TDENet的性能
本文提出缺陷突顯模塊(DPM)以提高模型在只有少量樣本輸入時(shí)對(duì)于新類缺陷的表征能力。從表5容易看出,缺陷突顯模塊可以提升模型對(duì)于新類缺陷的檢測(cè)性能。與Baseline(即表中第1行的結(jié)果)相比,加入DPM后,在1-shot、5-shot和10-shot時(shí)的mAP均有所增長(zhǎng)。而性能提升的主要原因是DPM利用了無(wú)缺陷樣本的特征以突出特征圖中缺陷區(qū)域的特征。此外可以觀察到,與Baseline相比,加入DPM后,在1-shot時(shí)的檢測(cè)性能提升很小。出現(xiàn)這種情況的主要原因是當(dāng)輸入的樣本很少的時(shí)候,訓(xùn)練集數(shù)據(jù)不具有多樣性,導(dǎo)致DPM提取的特征不足。但是當(dāng)更多的樣本作為輸入時(shí),檢測(cè)性能會(huì)得到提高。
本文提供了兩個(gè)配備不同激活函數(shù)的DPM+變體,即配備softmax激活函數(shù)的DPM+w/soft和配備tanh激活函數(shù)的DPM+w/tanh,其中DPM+w/soft和DPM+w/tanh分別表示移除PRN的最后一層(即sigmoid層),然后在特征向量的相減操作之后分別添加一個(gè)softmax和tanh激活函數(shù)。如表5所示,相比于DPM+w/soft和DPM+w/tanh較差的表現(xiàn),DPM+更能提升缺陷檢測(cè)的性能。與使用DPM并在通道維度進(jìn)行特征圖串聯(lián)的模型(即表中第4行的實(shí)驗(yàn))相比,使用DPM+并在通道維度進(jìn)行特征圖串聯(lián)(即表中第7行的實(shí)驗(yàn))可以將模型的檢測(cè)性能,分別在1-shot、5-shot和10-shot上提升2.23、0.43和0.59個(gè)百分點(diǎn)。因此,DPM+可以減少特征向量相減運(yùn)算過(guò)程中的計(jì)算誤差,使特征向量中的重要特征得到更好的保留,進(jìn)而提升了少樣本缺陷檢測(cè)模型的性能。
表5 TDENet中提出的新組件的消融實(shí)驗(yàn)Table 5 Ablation experiments for novel components proposed in TDENet 單位:%
本文構(gòu)建了一個(gè)用于少樣本缺陷檢測(cè)的新數(shù)據(jù)集,旨在促進(jìn)少樣本缺陷檢測(cè)的研究,并且該數(shù)據(jù)集對(duì)提升工業(yè)生產(chǎn)的產(chǎn)品質(zhì)量有著實(shí)際的意義。針對(duì)部分工業(yè)場(chǎng)景中難以提供大量缺陷樣本的問(wèn)題,本文提出了TDENet,它遵循少樣本學(xué)習(xí)策略并將整個(gè)訓(xùn)練過(guò)程分為兩個(gè)階段,僅利用少量樣本就可以在很大程度上提高對(duì)于罕見(jiàn)缺陷的檢測(cè)效果。同時(shí),在TDENet中提出了DPM模塊,以更好地利用無(wú)缺陷樣本來(lái)提升模型對(duì)于新類缺陷的表征能力。此外,在DPM的基礎(chǔ)上,本文提出了DPM+,可以更好地處理特征信息丟失的問(wèn)題?;贗SD數(shù)據(jù)集,皮革和木材數(shù)據(jù)集的對(duì)比實(shí)驗(yàn)以及消融實(shí)驗(yàn)證明了TDENet性能的優(yōu)越性以及其中各個(gè)模塊的有效性。