摘 要:針對(duì)工業(yè)應(yīng)用場(chǎng)景下缺少缺陷樣本的問(wèn)題,提出了一種僅需要極少缺陷樣本的金屬工件表面缺陷分割方法。該方法結(jié)合了圖像生成技術(shù)和半監(jiān)督學(xué)習(xí)策略,通過(guò)利用極少缺陷圖像提取的小尺寸缺陷圖像來(lái)訓(xùn)練缺陷生成模型,然后將生成的缺陷圖像嵌入到正常圖像中以實(shí)現(xiàn)數(shù)據(jù)增廣。其次,采用半監(jiān)督學(xué)習(xí)策略訓(xùn)練分割網(wǎng)絡(luò),以減小生成數(shù)據(jù)與真實(shí)數(shù)據(jù)分布之間的差異對(duì)模型的不良影響。在真實(shí)的金屬工件機(jī)器視覺(jué)檢測(cè)系統(tǒng)上的驗(yàn)證結(jié)果表明,半監(jiān)督的訓(xùn)練策略提高了分割模型對(duì)真實(shí)缺陷的泛化能力,所提方法能夠在僅使用5張缺陷樣本圖像的條件下取得較高的分割精度。
關(guān)鍵詞:半監(jiān)督學(xué)習(xí);表面缺陷檢測(cè);圖像分割;小樣本;數(shù)據(jù)增廣
中圖分類(lèi)號(hào):TP391.41 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1001-3695(2024)08-042-2540-06
doi: 10.19734/j.issn.1001-3695.2023.10.0560
Deep semi-supervised learning approach for few-shot segmentation of surface defects on metal workpieces
Xu Xingyu, Zhong Yuzhong, Tu Haiyan, Dian Songyi
(College of Electrical Engineering, Sichuan University, Chengdu 610065, China)
Abstract:
In response to the scarcity of defect samples in industrial applications, this paper proposed a method for segmenting surface defects in metal workpieces with only a minimal number of required defect samples. The method combined image gene-ration techniques with a semi-supervised learning strategy. It utilized small-sized defect patches, and extracted from a minimal number of defect images to train a defect generation model. Subsequently, the method integrated these generated defect images into normal images to facilitate data augmentation. Additionally, the method applied a semi-supervised learning strategy to train the segmentation network, aiming to mitigate the adverse effects of differences between generated and real data distributions. The experimental phase involved conducting tests on a real-world computer vision detection system for metal workpieces. The results demonstrate that the semi-supervised training strategy significantly enhances the segmentation model’s generalization ability to real defects. The method achieves high segmentation accuracy using only five defect sample images.
Key words:semi-supervised learning; surface defect detection; image segmentation; few-shot; data augmentation
0 引言
金屬工件的生產(chǎn)是一個(gè)多因素耦合的復(fù)雜過(guò)程,由于生產(chǎn)設(shè)備的設(shè)計(jì)不完善或運(yùn)行過(guò)程中受磨損、受潮等因素影響,生產(chǎn)出的工件金屬表面可能存在各種類(lèi)型的缺陷。金屬工件表面缺陷影響了工件的強(qiáng)度、疲勞性能,嚴(yán)重的表面缺陷甚至影響工件關(guān)聯(lián)設(shè)備的安全運(yùn)行或降低設(shè)備使用壽命。因此,在生產(chǎn)過(guò)程中及時(shí)檢測(cè)和分析金屬工件的表面缺陷,是提高生產(chǎn)質(zhì)量和工件可靠性的重要步驟。
在過(guò)去的研究中,許多基于傳統(tǒng)圖像處理的方法被用于金屬的表面缺陷檢測(cè),包括基于閾值[1]、聚類(lèi)[2]和頻譜[3]等方法。傳統(tǒng)的機(jī)器學(xué)習(xí)方法[4]也被應(yīng)用于金屬表面缺陷檢測(cè),主要包括特征提取及分類(lèi)兩部分。但是,傳統(tǒng)圖像處理的方法通?;谌斯ぬ崛∪毕萏卣鳎肆ν度胼^大;另一方面,又容易受到環(huán)境變化的影響,泛化能力差[5]。
近年來(lái),基于深度學(xué)習(xí)的計(jì)算機(jī)視覺(jué)方法被廣泛使用于檢測(cè)工業(yè)產(chǎn)品或材料中的缺陷[6]。部分學(xué)者基于目標(biāo)檢測(cè)模型實(shí)現(xiàn)缺陷檢測(cè)與定位。蘇迎濤[7]提出了一種基于顯著區(qū)域提取和改進(jìn)型YOLO-V3的缺陷檢測(cè)方法,實(shí)現(xiàn)了金屬齒輪加工端表面缺陷的快速檢測(cè)和定位。張乃雪等人[8]采用基于DETR的編碼-解碼結(jié)構(gòu)對(duì)缺陷類(lèi)別和位置進(jìn)行預(yù)測(cè),降低了參數(shù)量和計(jì)算復(fù)雜度。此外,部分學(xué)者通過(guò)語(yǔ)義分割模型實(shí)現(xiàn)表面缺陷的像素級(jí)檢測(cè)與分割。王一等人[9]基于U-Net語(yǔ)義分割模型,結(jié)合多尺度自適應(yīng)形態(tài)特征提取及瓶頸注意力機(jī)制實(shí)現(xiàn)了金屬工件表面缺陷分割。Wang等人[10]提出一種改進(jìn)的DeepLabV3+語(yǔ)義分割模型,在網(wǎng)絡(luò)中引入注意力機(jī)制,并將ASPP模塊替換為D-ASPP模塊,實(shí)現(xiàn)了磁柱缺陷的高精度分割。
然而,在多數(shù)的實(shí)際應(yīng)用場(chǎng)景中,由于生產(chǎn)的良品率高、產(chǎn)品造價(jià)昂貴、不適于在其上人工模擬缺陷等原因,只能收集到極少數(shù)的缺陷樣本。因此,許多學(xué)者開(kāi)始關(guān)注缺少缺陷樣本情況下的缺陷檢測(cè)算法研究。
小樣本學(xué)習(xí)指利用包含少量監(jiān)督信息的數(shù)據(jù)實(shí)現(xiàn)學(xué)習(xí)任務(wù)[11],主要分為基于度量的元學(xué)習(xí)方法[12]、基于微調(diào)的方法[13]和基于數(shù)據(jù)增廣[14]的方法。目前小樣本的圖像分割算法研究側(cè)重于從少量支持圖像中獲得高質(zhì)量的原型來(lái)準(zhǔn)確地預(yù)測(cè)結(jié)果,包括PANet[15]、MSANet[12]等方法。許國(guó)良等人[16]提出了一種小樣本手機(jī)屏幕缺陷分割網(wǎng)絡(luò),引入了協(xié)同注意力來(lái)加強(qiáng)支持圖像與查詢(xún)圖像之間的特征信息交互。這類(lèi)方法從有限的支持集中提取實(shí)例知識(shí),難以用于分割具有較大類(lèi)內(nèi)差異的工業(yè)產(chǎn)品缺陷。部分學(xué)者通過(guò)生成對(duì)抗網(wǎng)絡(luò)(GAN)[17,18]、變分自編碼器(VAE)[19]等生成模型生成更多的缺陷數(shù)據(jù)來(lái)擴(kuò)充訓(xùn)練集,從而提高模型性能[20]。Liu等人[21]使用GAN來(lái)評(píng)估缺陷圖像上的缺陷特征分布并生成缺陷,然后使用生成缺陷構(gòu)建的數(shù)據(jù)集來(lái)訓(xùn)練Faster R-CNN,實(shí)現(xiàn)缺陷檢測(cè)。然而,該類(lèi)方法存在生成模型在缺少缺陷樣本的情況下難以?xún)?yōu)化的問(wèn)題,生成的圖像質(zhì)量低、多樣性低,導(dǎo)致生成數(shù)據(jù)與真實(shí)數(shù)據(jù)間存在分布差異,最終導(dǎo)致分割模型偏向生成數(shù)據(jù)過(guò)擬合。
另一方面,部分學(xué)者通過(guò)利用半監(jiān)督學(xué)習(xí)的方式來(lái)進(jìn)行缺少缺陷樣本情況下的缺陷檢測(cè)任務(wù)。Rudolph等人[22]使用了一種歸一化流的半監(jiān)督方法,在使用少量缺陷樣本的情況下實(shí)現(xiàn)了較好的缺陷像素級(jí)定位。半監(jiān)督結(jié)合了監(jiān)督與無(wú)監(jiān)督的方法,利用少量標(biāo)注數(shù)據(jù)訓(xùn)練模型。自訓(xùn)練[23]被認(rèn)為是半監(jiān)督學(xué)習(xí)中熵最小化的一種形式,利用模型自身的預(yù)測(cè)結(jié)果來(lái)監(jiān)督后續(xù)訓(xùn)練。Zhu等人[24]首先在標(biāo)記數(shù)據(jù)上訓(xùn)練教師模型,然后在大量未標(biāo)記數(shù)據(jù)上生成偽標(biāo)簽,展示了自訓(xùn)練在跨域泛化任務(wù)上的有效性?xún)?yōu)于傳統(tǒng)的微調(diào)方法[25]。部分研究者將自訓(xùn)練與GAN[26]、對(duì)比學(xué)習(xí)[27]等方法結(jié)合,實(shí)現(xiàn)了高精度的半監(jiān)督圖像分割。
綜上所述,本文提出了一種基于深度半監(jiān)督學(xué)習(xí)的小樣本金屬工件表面缺陷分割算法。其主要有以下貢獻(xiàn):
a)針對(duì)缺少缺陷樣本的工業(yè)檢測(cè)場(chǎng)景,提出了一種僅需極少缺陷樣本的缺陷分割框架。所提出的方法結(jié)合圖像生成和半監(jiān)督學(xué)習(xí)的技術(shù),在僅利用5張缺陷樣本圖像和50張正常樣本圖像的條件下實(shí)現(xiàn)了高精度的缺陷分割。
b)針對(duì)生成模型在缺少訓(xùn)練數(shù)據(jù)的情況下不易優(yōu)化的問(wèn)題,提出了一種利用少量缺陷樣本和大量正常樣本的數(shù)據(jù)增廣方法。該方法采用從原始圖像中提取的小尺寸缺陷圖像訓(xùn)練DCGAN模型,再將生成的小尺寸缺陷圖像隨機(jī)嵌入正常圖像的工件區(qū)域。
c)針對(duì)生成數(shù)據(jù)與真實(shí)數(shù)據(jù)之間的分布差異,提出了對(duì)增廣后的數(shù)據(jù)采用半監(jiān)督學(xué)習(xí)的策略訓(xùn)練分割模型,以削弱模型對(duì)生成數(shù)據(jù)的過(guò)擬合。對(duì)利用生成模型數(shù)據(jù)增廣后的數(shù)據(jù)集部分標(biāo)注后采用自訓(xùn)練的策略進(jìn)行訓(xùn)練。
1 方法框架
本文方法的整個(gè)流程主要由數(shù)據(jù)增廣和半監(jiān)督學(xué)習(xí)策略?xún)刹糠纸M成,如圖1所示。
首先,本文方法利用少量缺陷樣本圖像和相對(duì)多的正常樣本圖像進(jìn)行數(shù)據(jù)增廣。為了解決GAN等生成模型在缺少訓(xùn)練數(shù)據(jù)的情況下難以?xún)?yōu)化的問(wèn)題,使用從缺陷樣本圖像中提取的小尺寸缺陷圖像訓(xùn)練DCGAN生成模型,旨在增加訓(xùn)練數(shù)據(jù)量的同時(shí)提高生成缺陷圖像的質(zhì)量。隨后,將訓(xùn)練完成的生成模型生成的小尺寸缺陷圖像隨機(jī)嵌入正常樣本圖像,在保證背景信息真實(shí)性的同時(shí)充分利用了正常樣本數(shù)據(jù)。
其次,為了應(yīng)對(duì)生成數(shù)據(jù)與真實(shí)數(shù)據(jù)之間分布差異對(duì)分割模型的負(fù)面影響,主要是由生成數(shù)據(jù)訓(xùn)練的分割網(wǎng)絡(luò)偏向生成數(shù)據(jù)過(guò)擬合的問(wèn)題,本文提出對(duì)生成數(shù)據(jù)利用半監(jiān)督學(xué)習(xí)的策略訓(xùn)練分割網(wǎng)絡(luò)。具體地,本文方法對(duì)上述數(shù)據(jù)增廣方法增廣后的增廣部分標(biāo)注后,采用自訓(xùn)練的框架訓(xùn)練分割網(wǎng)絡(luò),并在不同階段施加了不同強(qiáng)度的圖像增廣。其中,在教師網(wǎng)絡(luò)訓(xùn)練階段施加弱圖像增廣,在學(xué)生網(wǎng)絡(luò)訓(xùn)練階段對(duì)無(wú)標(biāo)注數(shù)據(jù)施加CutMix在內(nèi)的強(qiáng)圖像增廣策略(strong data augmentation,SDA)。
2 數(shù)據(jù)增廣
2.1 生成模型
鑒于可供訓(xùn)練的數(shù)據(jù)量較少,StyleGAN[28]等復(fù)雜度高的模型在訓(xùn)練的過(guò)程中不易收斂,通過(guò)增廣訓(xùn)練集使其收斂容易過(guò)擬合,生成的圖像多樣性差;復(fù)雜度過(guò)低的模型,如原始的GAN模型,生成的圖像質(zhì)量較差,圖像含有噪點(diǎn)且缺陷與背景邊界不清晰,與真實(shí)的缺陷圖像差別較大。各類(lèi)不同復(fù)雜度的生成模型實(shí)驗(yàn)結(jié)果如圖2所示。綜上所述,本文方法選擇模型復(fù)雜度相對(duì)較低的DCGAN[29]作為生成模型。
DCGAN是一種無(wú)監(jiān)督的生成式對(duì)抗網(wǎng)絡(luò),使用了卷積神經(jīng)網(wǎng)絡(luò)作為生成器和判別器的架構(gòu),能夠處理圖像中的細(xì)節(jié),生成更高質(zhì)量的圖像。本文方法使用的DCGAN模型結(jié)構(gòu)如圖3所示。
生成器以隨機(jī)噪聲向量為輸入,輸出一張圖像以模仿真實(shí)圖像的分布。由5個(gè)反卷積層組成,反卷積層之間交替使用批量歸一化層和ReLU激活函數(shù),最后一層使用Tanh激活函數(shù)來(lái)約束生成像素值在-1~1。
判別器以圖像為輸入,輸出判斷圖像是否為真。由5個(gè)卷積層組成,卷積層之間交替使用批量歸一化層和LeakyReLU激活函數(shù),最后一層使用sigmoid激活函數(shù)輸出0~1的概率值。
在對(duì)抗訓(xùn)練過(guò)程中,生成器和判別器的損失函數(shù)均采用交叉熵?fù)p失。生成器和判別器的訓(xùn)練交替進(jìn)行,直到達(dá)到預(yù)定的迭代次數(shù)。
2.2 數(shù)據(jù)增廣流程
在工程實(shí)際中,經(jīng)常只能獲得極少量的缺陷樣本圖像,而沒(méi)有缺陷的正常樣本圖像相對(duì)容易獲取。因此,本文設(shè)計(jì)了利用少量缺陷樣本圖像和相對(duì)多的正常樣本圖像的數(shù)據(jù)增廣策略。數(shù)據(jù)增廣的方法如圖4所示。
由于缺陷樣本圖像數(shù)量極少,直接用完整工件的缺陷樣本圖像來(lái)訓(xùn)練生成模型會(huì)導(dǎo)致網(wǎng)絡(luò)訓(xùn)練不充分,甚至不收斂。另外,生成的缺陷圖像可能會(huì)受到背景的影響,使生成的圖像具有不同的缺陷特征。考慮到以上問(wèn)題,本文方法從原始的缺陷樣本圖像中提取小尺寸缺陷圖像作為DCGAN的訓(xùn)練數(shù)據(jù)。具體地,從分辨率大小為640×640像素的原始缺陷數(shù)據(jù)圖像中人工提取分辨率為64×64的小尺寸缺陷圖像,所提取的圖像可能不完整覆蓋整個(gè)缺陷,且圖像之間互有重疊區(qū)域,旨在增加訓(xùn)練樣本和豐富樣本多樣性。
DCGAN訓(xùn)練完成后,將生成器生成的小尺寸缺陷圖像隨機(jī)插入到正常樣本圖像中。這樣做有利于生成的缺陷圖像具有更高的特征一致性,同時(shí)保持了圖像背景的真實(shí)性。具體地,對(duì)小尺寸缺陷圖像進(jìn)行隨機(jī)旋轉(zhuǎn)、隨機(jī)水平翻轉(zhuǎn)、隨機(jī)高寬比和隨機(jī)縮放等基礎(chǔ)圖像增廣操作,以模擬缺陷的不同大小、形狀和方向。其次,使用閾值分割篩選出工件區(qū)域,以保證缺陷圖像能夠被插入到工件表面而不是背景區(qū)域,使得生成的數(shù)據(jù)更加真實(shí)合理。最后,將基礎(chǔ)圖像增廣后的隨機(jī)小尺寸缺陷圖像嵌入到隨機(jī)正常樣本圖像的工件表面隨機(jī)區(qū)域,同時(shí)對(duì)生成的缺陷圖像和待插入?yún)^(qū)域的邊緣進(jìn)行模糊化處理,使插入的缺陷圖片與背景融合得更加自然。
通過(guò)批量進(jìn)行上述操作,構(gòu)建出了一個(gè)由生成的小尺寸缺陷圖像和正常數(shù)據(jù)圖像合成的增廣數(shù)據(jù)集,為后續(xù)的分割模型提供了更多多樣化的訓(xùn)練樣本。
3 半監(jiān)督學(xué)習(xí)策略
生成模型會(huì)引入一些噪聲和變化,導(dǎo)致生成數(shù)據(jù)的分布與真實(shí)數(shù)據(jù)的分布不完全一致。這種分布差異可能會(huì)對(duì)全監(jiān)督學(xué)習(xí)方法產(chǎn)生負(fù)面影響,使訓(xùn)練出的模型向生成數(shù)據(jù)過(guò)擬合,無(wú)法有效泛化到真實(shí)的缺陷上。在半監(jiān)督學(xué)習(xí)中,由于沒(méi)有對(duì)整個(gè)增廣數(shù)據(jù)集進(jìn)行標(biāo)注,可以降低模型對(duì)數(shù)據(jù)分布差異的敏感性,進(jìn)而提高模型在真實(shí)缺陷上的泛化能力。本文方法通過(guò)利用半監(jiān)督訓(xùn)練的方法來(lái)緩解分布差異對(duì)模型的負(fù)面影響,采用了自訓(xùn)練的半監(jiān)督學(xué)習(xí)框架,并在后續(xù)實(shí)驗(yàn)中證明了該方法的有效性。
本文方法將增廣數(shù)據(jù)集隨機(jī)拆分成兩部分:其中一部分進(jìn)行人工像素級(jí)標(biāo)注,作為標(biāo)注數(shù)據(jù)Dl={(Ili,Yli)}Nli=1;另一部分作為無(wú)標(biāo)注數(shù)據(jù)Du={Iui}Nui=1。標(biāo)注數(shù)據(jù)所占比例將在消融實(shí)驗(yàn)部分進(jìn)行探討。本文方法參考文獻(xiàn)[30]設(shè)計(jì)用于缺陷分割的自訓(xùn)練算法流程,如圖5所示。
特別地,在不同階段分別施加了強(qiáng)、弱兩種圖像增廣策略。本文方法使用的各類(lèi)圖像增廣策略如表1所示。
其中,弱圖像增廣策略包括隨機(jī)旋轉(zhuǎn)、隨機(jī)水平翻轉(zhuǎn)、裁剪等。像素級(jí)標(biāo)注的數(shù)據(jù)通常是寶貴的資源,對(duì)標(biāo)注數(shù)據(jù)施加的圖像增廣強(qiáng)度需要慎重考慮,過(guò)強(qiáng)的圖像增廣可能引入更多的噪聲和變化,從而使原始標(biāo)簽信息變得模糊和不可靠。較弱的增廣策略對(duì)圖像紋理、特征改變幅度較小,使教師網(wǎng)絡(luò)能夠更好地學(xué)習(xí)標(biāo)注數(shù)據(jù)的細(xì)節(jié)和邊界信息,提高教師網(wǎng)絡(luò)對(duì)無(wú)標(biāo)簽數(shù)據(jù)的預(yù)測(cè)精度,最終提高半監(jiān)督方法的性能。
SDA包括弱圖像增廣的全部策略以及隨機(jī)模糊、顏色擾動(dòng)和CutMix[31]。強(qiáng)數(shù)據(jù)增廣策略對(duì)圖像紋理、特征改變較大,更多差異更大的樣本可以提高訓(xùn)練數(shù)據(jù)的多樣性和覆蓋范圍,從而使模型更好地學(xué)習(xí)數(shù)據(jù)的不變性和抗擾動(dòng)性,從而提高模型的魯棒性和泛化能力。此外,CutMix方法在保留了CutOut[32]等方法區(qū)域性丟棄優(yōu)勢(shì)的同時(shí),增廣后的圖像不會(huì)出現(xiàn)非信息像素,削弱了圖像混合后的不自然問(wèn)題,能夠進(jìn)一步提升分割模型的性能。
3.1 教師網(wǎng)絡(luò)預(yù)訓(xùn)練
本文方法對(duì)標(biāo)注數(shù)據(jù)施加弱圖像增廣策略,利用標(biāo)注數(shù)據(jù)訓(xùn)練教師網(wǎng)絡(luò)。教師網(wǎng)絡(luò)訓(xùn)練的損失可以表述為
LT=CrossEntropy(T(Il),Yl)(1)
其中:T表示將圖像I映射到教師網(wǎng)絡(luò)的輸VoRHwGJ/uexTAFGyoeey2A==出空間;CrossEntropy表示交叉熵。
3.2 偽標(biāo)簽生成
本文方法利用訓(xùn)練完成的教師網(wǎng)絡(luò)預(yù)測(cè)無(wú)標(biāo)簽數(shù)據(jù)Du,預(yù)測(cè)得到的獨(dú)熱硬標(biāo)簽作為無(wú)標(biāo)簽數(shù)據(jù)的偽標(biāo)簽D^u={(Iui,Y^ui)}Nui=1。首先將無(wú)標(biāo)簽數(shù)據(jù)輸入已經(jīng)訓(xùn)練完成的教師網(wǎng)絡(luò)中,獲得對(duì)應(yīng)的像素級(jí)預(yù)測(cè)結(jié)果。隨后,應(yīng)用硬閾值篩選策略,基于像素的預(yù)測(cè)概率值閾值,過(guò)濾掉不可靠的預(yù)測(cè)結(jié)果。最后,每個(gè)像素的偽標(biāo)簽轉(zhuǎn)換為獨(dú)熱編碼形式。
硬閾值的選擇對(duì)于自訓(xùn)練生成至關(guān)重要,其影響了模型對(duì)無(wú)標(biāo)簽數(shù)據(jù)的利用,一般需要由實(shí)驗(yàn)測(cè)試確定。閾值過(guò)低會(huì)導(dǎo)致過(guò)多錯(cuò)誤預(yù)測(cè)帶來(lái)的噪聲疊加,降低模型分割精度。閾值過(guò)高會(huì)導(dǎo)致模型在無(wú)標(biāo)簽數(shù)據(jù)上過(guò)于保守,只學(xué)到與教師網(wǎng)絡(luò)同質(zhì)化的信息而難以泛化到真實(shí)數(shù)據(jù)。
3.3 學(xué)生網(wǎng)絡(luò)再訓(xùn)練
在施加弱圖像增廣的標(biāo)注數(shù)據(jù)和施加強(qiáng)圖像增廣策略的無(wú)標(biāo)注數(shù)據(jù)上訓(xùn)練學(xué)生網(wǎng)絡(luò)S,訓(xùn)練完成的學(xué)生網(wǎng)絡(luò)將作為最終的分割模型進(jìn)行精度測(cè)試。學(xué)生網(wǎng)絡(luò)訓(xùn)練的損失可以表述為
LS=LlS+λLuS(2)
LlS=CrossEntropy(S(Il),Yl)(3)
LuS=CrossEntropy(S(Iu),Y^u)(4)
其中:LlS為監(jiān)督損失;LuS為無(wú)監(jiān)督損失;λ為權(quán)衡系數(shù),用于調(diào)節(jié)標(biāo)注數(shù)據(jù)和無(wú)標(biāo)注數(shù)據(jù)在訓(xùn)練時(shí)的權(quán)重;S表示將圖像I映射到學(xué)生網(wǎng)絡(luò)的輸出空間。
4 實(shí)驗(yàn)與分析
4.1 實(shí)驗(yàn)平臺(tái)
為了獲得清晰的工件圖像并進(jìn)行工件的工業(yè)檢測(cè),本文采用了一種具有多種檢測(cè)功能的機(jī)器視覺(jué)檢測(cè)系統(tǒng),如圖6所示。其中缺陷檢測(cè)模塊的成像系統(tǒng)由1 200萬(wàn)像素高清工業(yè)相機(jī)、2倍遠(yuǎn)心鏡頭、環(huán)形白色光源和石英玻璃載物臺(tái)組成。
成像系統(tǒng)所采集的圖片在工控機(jī)上完成處理與結(jié)果輸出。所采用的工控機(jī)操作系統(tǒng)為Windows 10,計(jì)算機(jī)相關(guān)參數(shù)CPU為Intel CoreTM i7-12700;GPU為NVIDIA GeForce RTX3090 24 GB;64 GB RAM。所使用的模型基于PyTorch深度學(xué)習(xí)框架搭建神經(jīng)網(wǎng)絡(luò),安裝了CUDA V11.3用于GPU加速。
4.2 實(shí)驗(yàn)設(shè)置
1)實(shí)驗(yàn)數(shù)據(jù) 本文通過(guò)上述機(jī)械視覺(jué)系統(tǒng)采集了5張缺陷樣本圖像和50張正常樣本圖像。按照缺陷檢測(cè)的精度需求,將原始圖像放縮為分辨率為640×640的圖像用作后續(xù)實(shí)驗(yàn)。按第2章的數(shù)據(jù)增廣方法,將采集的圖像增廣為總數(shù)量為600張的增廣數(shù)據(jù)集,其中隨機(jī)選取500張作為訓(xùn)練集,100張作為生成數(shù)據(jù)測(cè)試集。由于在生成圖像上的測(cè)試結(jié)果不能準(zhǔn)確衡量模型對(duì)真實(shí)缺陷的分割效果,本文另外采集了15張缺陷樣本圖像作為真實(shí)數(shù)據(jù)測(cè)試集,用于衡量本方法的真實(shí)分割性能。若無(wú)特殊說(shuō)明,本文所有實(shí)驗(yàn)精度皆為真實(shí)數(shù)據(jù)集的測(cè)試精度。
2)模型選擇 半監(jiān)督算法中的學(xué)生網(wǎng)絡(luò)和教師網(wǎng)絡(luò)采用相同的分割網(wǎng)絡(luò)。分割網(wǎng)絡(luò)模型并非本文方法的主要?jiǎng)?chuàng)新點(diǎn)。在多個(gè)分割網(wǎng)絡(luò)上進(jìn)行測(cè)試之后,最終選擇了ResNet50作為Backbone的DeepLAbV3+[33]網(wǎng)絡(luò)作為分割網(wǎng)絡(luò),并集成在了機(jī)械視覺(jué)系統(tǒng)中。本文所有模型訓(xùn)練均選取50個(gè)epoch,采用Adam優(yōu)化器,batch size設(shè)置為4,初始學(xué)習(xí)率設(shè)置為0.001,每10個(gè)epoch學(xué)習(xí)率降低10倍。
3)評(píng)價(jià)指標(biāo) 選擇交并比(intersection over union, IoU)、精準(zhǔn)率(precision)、召回率(recall)和F1得分(F1-score)四個(gè)評(píng)價(jià)指標(biāo)分析模型的分割性能。
交并比用于度量模型預(yù)測(cè)的分割結(jié)果與實(shí)際標(biāo)簽之間的重疊程度,計(jì)算公式為
IoU=TPTP+FP+FN(5)
其中:FP表示假陽(yáng)性結(jié)果;TP表示真陽(yáng)性結(jié)果;FN表示假陰性結(jié)果;TN表示真陰性結(jié)果。
精確率用于度量模型對(duì)缺陷類(lèi)別像素的分類(lèi)準(zhǔn)確性,計(jì)算為
precision=TPTP+FP(6)
召回率用于度量模型在捕獲所有真實(shí)缺陷像素方面的效率,計(jì)算公式為
recall=TPTP+FN(7)
F1得分表示精準(zhǔn)率和召回率的調(diào)和平均數(shù),計(jì)算公式為
F1=2×precision×recallprecision+recall(8)
4.3 實(shí)驗(yàn)結(jié)果
4.3.1 訓(xùn)練策略對(duì)分割性能的影響
為了驗(yàn)證本文方法的有效性,進(jìn)行了不同監(jiān)督方式和不同增廣策略組合的對(duì)比實(shí)驗(yàn),如表2所示。其中常規(guī)的全監(jiān)督方法和半監(jiān)督方法在所有訓(xùn)練階段都僅使用弱圖像增廣策略。
如表2所示,全監(jiān)督方法下的評(píng)價(jià)指標(biāo)除了精確率外,都維持在較低水平。與全監(jiān)督學(xué)習(xí)相比,半監(jiān)督學(xué)習(xí)可以對(duì)生成數(shù)據(jù)實(shí)現(xiàn)更高的分割精度。常規(guī)半監(jiān)督方法比全監(jiān)督方法的IoU提高了7.29百分點(diǎn),召回率提高了15.56百分點(diǎn)。得益于半監(jiān)督訓(xùn)練過(guò)程中對(duì)無(wú)標(biāo)簽數(shù)據(jù)的訓(xùn)練誤差削弱了學(xué)生網(wǎng)絡(luò)訓(xùn)練過(guò)程中對(duì)生成數(shù)據(jù)的過(guò)擬合,通過(guò)半監(jiān)督學(xué)習(xí)訓(xùn)練后的分割網(wǎng)絡(luò)能夠更有效地預(yù)測(cè)缺陷類(lèi)別。在半監(jiān)督學(xué)習(xí)的訓(xùn)練過(guò)程中對(duì)無(wú)標(biāo)注數(shù)據(jù)施加更強(qiáng)的圖像增廣策略,可以有效提高模型性能,在其中添加CutMix增廣方法可以進(jìn)一步提升模型性能。此外,與改變監(jiān)督方式相比,為全監(jiān)督學(xué)習(xí)方法施加強(qiáng)圖像增廣策略提升甚微,這表明本文方法帶來(lái)的精度提升不是主要來(lái)源于SDA的效果,而是得益于半監(jiān)督的訓(xùn)練策略。不同訓(xùn)練策略的分割效果及教師網(wǎng)絡(luò)與學(xué)生網(wǎng)絡(luò)在不同測(cè)試集上的分割效果如圖7、8所示。
表3展示了1/10比例的半監(jiān)督方法下,教師網(wǎng)絡(luò)和學(xué)f2cdf80f58b8a1e23f5549167e197f59910acc48a59f42e97ff46e4c6f83130c生網(wǎng)絡(luò)分別在生成數(shù)據(jù)測(cè)試集和真實(shí)數(shù)據(jù)測(cè)試集上的分割精度。僅使用標(biāo)注數(shù)據(jù)訓(xùn)練的教師網(wǎng)絡(luò)對(duì)生成數(shù)據(jù)的檢測(cè)精度顯著高于真實(shí)數(shù)據(jù),其對(duì)生成數(shù)據(jù)的召回率高達(dá)98.89%,而對(duì)真實(shí)數(shù)據(jù)的分割精度處于較低水平,表明對(duì)生成數(shù)據(jù)進(jìn)行全監(jiān)督學(xué)習(xí)會(huì)導(dǎo)致一定程度偏向生成數(shù)據(jù)的過(guò)擬合。通過(guò)部分標(biāo)簽和部分偽標(biāo)簽訓(xùn)練出的學(xué)生網(wǎng)絡(luò)相較于教師網(wǎng)絡(luò)在真實(shí)數(shù)據(jù)上的分割精度顯著提高,IoU提升了11.60百分點(diǎn),召回率提升了14.37百分點(diǎn)。由上面的數(shù)據(jù)表明,半監(jiān)督學(xué)習(xí)的訓(xùn)練策略有效削弱了模型對(duì)于生成數(shù)據(jù)的過(guò)擬合,提高了模型對(duì)真實(shí)缺陷的泛化能力。
4.3.2 與現(xiàn)有算法對(duì)比實(shí)驗(yàn)與分析
為了證明所提方法的先進(jìn)性,與現(xiàn)有的小樣本分割算法進(jìn)行了對(duì)比實(shí)驗(yàn),所有方法僅采用了前述5張標(biāo)注的缺陷樣本圖像作為原始的監(jiān)督信號(hào)。實(shí)驗(yàn)結(jié)果如表4所示,MSANet、PANet等基于原型對(duì)比的度量方法應(yīng)用于缺陷分割任務(wù)時(shí),IoU和召回率較低。支持集所能提供的原型難以泛化到與其差異更大的缺陷樣本上,在預(yù)測(cè)新的缺陷圖像時(shí)容易漏檢。另一方面,基于GAN的數(shù)據(jù)增廣方法在缺乏缺陷數(shù)據(jù)的情況下效果更佳,但由于生成圖像無(wú)法充分包含未知的缺陷特征,容易導(dǎo)致網(wǎng)絡(luò)過(guò)擬合。所提方法利用生成模型對(duì)缺陷圖像進(jìn)行增廣,模擬了缺陷的紋理和形狀,并利用半監(jiān)督的訓(xùn)練策略削弱了過(guò)擬合,在維持高精確率的情況下,達(dá)到了最高的IoU和召回率。
4.3.3 不同標(biāo)注數(shù)據(jù)占比對(duì)分割性能的影響
本文進(jìn)行了四種不同標(biāo)注數(shù)據(jù)占比下的半監(jiān)督實(shí)驗(yàn),與全監(jiān)督方法的結(jié)果對(duì)比如表5所示。
由表5可得,從1/20的標(biāo)注數(shù)據(jù)占比到全監(jiān)督的方法,教師網(wǎng)絡(luò)對(duì)真實(shí)數(shù)據(jù)的檢測(cè)精度都維持在較低水平,顯示出一定程度的過(guò)擬合。另外,也反映出僅利用圖像生成的數(shù)據(jù)增廣方法對(duì)模型的分割精度提升有限,當(dāng)參與監(jiān)督訓(xùn)練的增廣圖像達(dá)到125張時(shí),教師網(wǎng)絡(luò)的精度就已經(jīng)飽和。而對(duì)于任意不同比例的半監(jiān)督算法,訓(xùn)練完成的學(xué)生網(wǎng)絡(luò)對(duì)真實(shí)缺陷依然擁有較高的泛化能力,IoU保持在80%以上,F(xiàn)1得分保持在0.9以上,模型在標(biāo)注數(shù)據(jù)占比為1/10時(shí)取得最高精度。
4.3.4 不同分割模型對(duì)分割性能的影響
為了證明本文方法在不同分割模型上的通用性,選用了三種主流的語(yǔ)義分割模型進(jìn)行對(duì)比實(shí)驗(yàn)。本文選擇PSP-Net[33]、DeepLabV3+和DeepLabV2[34]在相同1/10數(shù)據(jù)標(biāo)注的數(shù)據(jù)集條件下進(jìn)行對(duì)比實(shí)驗(yàn),利用各自實(shí)驗(yàn)最高分割精度進(jìn)行對(duì)比,如表6所示。
表6的數(shù)據(jù)表明,使用標(biāo)注數(shù)據(jù)訓(xùn)練的三種網(wǎng)絡(luò)都出現(xiàn)了不同程度的過(guò)擬合,經(jīng)過(guò)半監(jiān)督的訓(xùn)練流程后,分割網(wǎng)絡(luò)在真實(shí)缺陷上的泛化能力得到了不同程度的增強(qiáng)。其中, DeepLabV2模型在僅使用標(biāo)注數(shù)據(jù)訓(xùn)練的條件下對(duì)生成數(shù)據(jù)的過(guò)擬合尤為嚴(yán)重,對(duì)真實(shí)缺陷的泛化能力極低,但是在經(jīng)過(guò)半監(jiān)督的訓(xùn)練過(guò)后,IoU提升了21.83百分點(diǎn),分割精度顯著提高。PSP-Net和DeepLabV3+模型參數(shù)量相近,都是復(fù)雜度相對(duì)較高的模型,在全監(jiān)督或者半監(jiān)督的教師網(wǎng)絡(luò)階段對(duì)真實(shí)缺陷仍有一定的泛化能力,在通過(guò)半監(jiān)督的訓(xùn)練流程后,泛化能力亦得到了進(jìn)一步提升。
5 結(jié)束語(yǔ)
針對(duì)工業(yè)場(chǎng)景下缺少缺陷樣本的問(wèn)題,本文提出了一種利用圖像生成技術(shù)和半監(jiān)督學(xué)習(xí)的小樣本缺陷分割算法。該算法首先利用極少量缺陷樣本圖像和相對(duì)多的正常樣本圖像進(jìn)行數(shù)據(jù)增廣,結(jié)合DCGAN生成模型擴(kuò)充了可訓(xùn)練的數(shù)據(jù)量;此外,該算法對(duì)增廣數(shù)據(jù)集部分標(biāo)注之后采用自訓(xùn)練的訓(xùn)練策略,并在不同階段施加不同的圖像增廣策略,削弱了分割模型對(duì)生成數(shù)據(jù)的過(guò)擬合。本文方法在真實(shí)的視覺(jué)系統(tǒng)上利用金屬工件進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)表明,該方法能夠在僅使用5張缺陷樣本圖像的條件下滿足系統(tǒng)對(duì)缺陷的高精度分割需求。通過(guò)各種基準(zhǔn)測(cè)試的對(duì)比實(shí)驗(yàn),證明了本文設(shè)計(jì)的半監(jiān)督學(xué)習(xí)訓(xùn)練策略可以改善分割模型對(duì)生成數(shù)據(jù)的過(guò)擬合,有效緩解了生成數(shù)據(jù)與真實(shí)數(shù)據(jù)之間的分布差異對(duì)分割精度的影響。
參考文獻(xiàn):
[1]Sharifzadeh M,Alirezaee S,Amirfattahi R,et al. Detection of steel defect using the image processing algorithms [C]// Proc of the 6th International Conference on Electrical Engineering. Piscataway,NJ: IEEE Press,2008: 125-127.
[2]Bulnes F G,Usamentiaga R,García D F,et al. Vision-based sensor for early detection of periodical defects in Web materials [J]. Sensors,2012,12(8): 10788-10809.
[3]Gayubo F,Gonzalez J L,de la Fuente E,et al. On-line machine vision system for detect split defects in sheet-metal forming processes [C]// Proc of the 18th International Conference on Pattern Recognition. Piscataway,NJ: IEEE Press,2006: 723-726.
[4]Ghorai S,Mukherjee A,Gangadaran M,et al. Automatic defect detection on hot-rolled flat steel products [J]. IEEE Trans on Instrumentation and Measurement,2012,62(3): 612-621.
[5]Zhang Yanxi,You Deyong D,Gao Xiangdong,et al. Welding defects detection based on deep learning with multiple optical sensors during disk laser welding of thick plates [J]. Journal of Manufacturing Systems,2019,51: 87-94.
[6]Valente A,Wada C,Neves D,et al. Print defect mapping with semantic segmentation [C]// Proc of IEEE/CVF Winter Conference on App-lications of Computer Vision. Piscataway,NJ: IEEE Press,2020: 3540-3548.
[7]蘇迎濤. 基于顯著區(qū)域提取和改進(jìn)型 YOLO-V3 的金屬齒輪加工端表面缺陷檢測(cè)方法 [D]. 重慶:重慶大學(xué),2020. (Su Yingtao. Surface defect detection method for metal gear machining based on salient region extraction and improved YOLO-V3[D]. Chongqing:Chongqing University,2020.)
[8]張乃雪,鐘羽中,趙濤,等. 基于Smooth-DETR的產(chǎn)品表面小尺寸缺陷檢測(cè)算法 [J]. 計(jì)算機(jī)應(yīng)用研究,2022,39(8): 2520-2525. (Zhang Naixue,Zhong Yuzhong,Zhao Tao,et al. Detection method for small-size surface defects based on Smooth-DETR [J]. Application Research of Computers,2022,39(8): 2520-2525.)
[9]王一,龔肖杰,程佳. 基于改進(jìn)U-Net的金屬工件表面缺陷分割方法 [J]. 激光與光電子學(xué)進(jìn)展,2023,60(15): 1524001. (Wang Yi,Gong Xiaojie,Cheng Jia. Surface defect segmentation method of metal workpiece based on improved U-Net [J]. Advances in Lasers and Optoelectronics,2023,60(15): 1524001.)
[10]Wang Jun,Hou Mengjie,Zhang Ruiran,et al. Magnetic column defect recognition based on DeepLab V3+ [C]// Proc of China Automation Congress. Piscataway,NJ: IEEE Press,2022: 2618-2623.
[11]張睿,楊義鑫,李陽(yáng),等. 自監(jiān)督學(xué)習(xí)下小樣本遙感圖像場(chǎng)景分類(lèi) [J]. 中國(guó)圖像圖形學(xué)報(bào),2022,27(11): 3371-3381. (Zhang Rui,Yang Yixin,Li Yang,et al. Self-supervised learning based few-shot remote sensing scene image classification [J]. Journal of Image and Graphics,2022,27(11): 3371-3381.)
[12]Iqbal E,Safarov S,Bang S. MSANet: multi-similarity and attention guidance for boosting few-shot segmentation [EB/OL]. (2022-06-20). https://arxiv.org/abs/2206.09667.
[13]Nakamura A,Harada T. Revisiting fine-tuning for few-shot learning [EB/OL]. (2019-10-03). https://arxiv.org/abs/1910.00216.
[14]Mehrotra A,Dukkipati A. Generative adversarial residual pairwise networks for one shot learning [EB/OL]. (2017-03-23). https://arxiv.org/abs/1703.08033.
[15]Wang Kaixin,Liew J H,Zou Yingtian,et al. PANet: few-shot image semantic segmentation with prototype alignment [C]// Proc of IEEE/CVF International Conference on Computer Vision. Piscataway,NJ: IEEE Press,2019: 9196-9205.
[16]許國(guó)良,毛驕. 基于協(xié)同注意力的小樣本的手機(jī)屏幕缺陷分割 [J]. 電子與信息學(xué)報(bào),2022,44(4): 1476-1483. (Xu Guoliang,Mao Jiao. Few-shot segmentation on mobile phone screen defect based on co-attention [J]. Journal of Electronics & Information Technology,2022,44(4): 1476-1483.)
[17]Goodfellow I,Pouget-Abadie J,Mirza M,et al. Generative adversarial networks [J]. Communications of the ACM,2020,63(11): 139-144.
[18]He Xiangjie,Chang Zhengwei,Zhang Linghao,et al. A survey of defect detection applications based on generative adversarial networks [J]. IEEE Access,2022,10: 113493-113512.
[19]Doersch C. Tutorial on variational autoencoders [EB/OL]. (2021-01-03). https://arxiv.org/abs/1606.05908.
[20]Chen Jingwen,Chen Jiawei,Chao Hongyang,et al. Image blind denoising with generative adversarial network based noise modeling [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2018: 3155-3164.
[21]Liu Jie,Zhang B G,Li Li. Defect detection of fabrics with generative adversarial network based flaws modeling [C]// Proc of Chinese Automation Congress. Piscataway,NJ: IEEE Press,2020: 3334-3338.
[22]Rudolph M,Wandt B,Rosenhahn B. Same but different: semi-supervised defect detection with normalizing flows [C]// Proc of IEEE/CVF Winter Conference on Applications of Computer Vision. Pisca-taway,NJ:IEEE Press, 2021: 1907-1916.
[23]吳仕科,梁宇琦. 基于偽標(biāo)簽自細(xì)化的弱監(jiān)督實(shí)例分割 [J]. 計(jì)算機(jī)應(yīng)用研究,2023,40(6): 1882-1887. (Wu Shike,Liang Yuqi. PLSR: weakly supervised instance segmentation via pseudo-label self-refinement [J]. Application Research of Computers,2023,40(6): 1882-1887.)
[24]Zhu Yi,Zhang Zhongyue,Wu Chongruo,et al. Improving semantic segmentation via efficient self-training [J]. IEEE Trans on Pattern Analysis and Machine Intelligence,2024,46(3): 1589-1602.
[25]Souly N,Spampinato C,Shah M. Semi supervised semantic segmentation using generative adversarial network [C]// Proc of IEEE International Conference on Computer Vision. Piscataway,NJ: IEEE Press,2017: 5689-5697.
[26]Wang Yuchao,Wang Haochen,Shen Yujun,et al. Semi-supervised semantic segmentation using unreliable pseudo-labels supplementary material [EB/OL]. (2022-03-08). http://arxiv.org/pdf/2203.03884.pdf.
[27]Karras T,Samuli L,Aittala M,et al. Analyzing and improving the ima-ge quality of StyleGAN [C]// Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2020: 8107-8116.
[28]Radford A,Metz L,Chintala S. Unsupervised representation learning with deep convolutional generative adversarial networks [EB/OL]. (2016-01-07). https://arxiv.org/abs/1511.06434.
[29]Yang Lihe,Zhuo Wei,Qi Lei,et al. ST++: make self-training work better for semi-supervised semantic segmentation [C]// Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2022: 4258-4267.
[30]Yun S,Han D,Chun S,et al. CutMix: regularization strategy to train strong classifiers with localizable features [C]// Proc of IEEE/CVF International Conference on Computer Vision. Piscataway,NJ: IEEE Press,2019: 6022-6031.
[31] DeVries T,Taylor G W. Improved regularization of convolutional neural networks with CutOut [EB/OL]. (2017-11-29). https://arxiv.org/abs/1708.04552.
[32]Chen L C,Zhu Yukun,Papandreou G,et al. Encoder-decoder with Atrous separable convolution for semantic image segmentation [C]// Proc of European Conference on Computer Vision. Cham:Springer,2018: 833-851.
[33]Zhao Hengshuang,Shi Jianping,Qi Xiaojuan,et al. Pyramid scene parsing network [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2017: 6230-6239.
[34]Chen L C,Papandreou G,Kokkinos I,et al. DeepLab: semantic image segmentation with deep convolutional nets,Atrous convolution,and fully connected CRFs [J]. IEEE Trans on Pattern Analysis and Machine Intelligence,2017,40(4): 834-848.