陳 樂(lè),周永霞,祖佳貞
中國(guó)計(jì)量大學(xué) 信息工程學(xué)院,杭州 310018
制造業(yè)是我國(guó)國(guó)民經(jīng)濟(jì)的主體,由百余名專(zhuān)家制定的《中國(guó)制造2025》旨在推動(dòng)中國(guó)基本實(shí)現(xiàn)工業(yè)化,邁入制造強(qiáng)國(guó)行列。質(zhì)量為先是其中一大基本方針,如何保證產(chǎn)品的質(zhì)量是其中一個(gè)關(guān)鍵問(wèn)題。高質(zhì)量的產(chǎn)品通常更容易受到消費(fèi)者的青睞,能給企業(yè)帶來(lái)更高的價(jià)值。但在工業(yè)實(shí)際生產(chǎn)過(guò)程中,由于機(jī)械設(shè)備、制作工藝和復(fù)雜環(huán)境等多方面的影響會(huì)導(dǎo)致產(chǎn)品表面存在各種缺陷,表面缺陷不僅會(huì)影響產(chǎn)品的外觀,甚至?xí)?duì)產(chǎn)品的使用性和可靠性產(chǎn)生負(fù)面影響。表面缺陷檢測(cè)是工業(yè)生產(chǎn)中控制產(chǎn)品質(zhì)量的重要技術(shù)之一,旨在發(fā)現(xiàn)產(chǎn)品的各種外觀缺陷。
偏光片全稱(chēng)偏振光片,是液晶顯示器的重要組成部分,對(duì)成像效果有著重要的影響。偏光片的缺陷不僅會(huì)降低液晶顯示器的顯示質(zhì)量,甚至可能造成整個(gè)液晶面板的報(bào)廢。偏光片原材料的選取,偏貼的生產(chǎn)工藝,產(chǎn)品的運(yùn)輸存儲(chǔ)等都會(huì)影響質(zhì)量,會(huì)導(dǎo)致偏光片表面存在凸包,凹包,劃傷,臟污等缺陷。在過(guò)去,傳統(tǒng)的表面缺陷檢測(cè)通常采用人工檢測(cè)的方式,這種方式不僅效率低下,而且檢測(cè)結(jié)果顯著受到檢測(cè)人員主觀性的影響??紤]到效率,成本等問(wèn)題,研究高效,穩(wěn)定的偏光片自動(dòng)檢測(cè)技術(shù)具有重要的意義。
傳統(tǒng)的機(jī)器視覺(jué)檢測(cè)缺陷主要通過(guò)處理待檢測(cè)產(chǎn)品的圖像,例如Yen等人[1]提出了一種高效的光學(xué)檢測(cè)系統(tǒng),使用條紋結(jié)構(gòu)光照明和圖像處理檢測(cè)偏光片薄膜的微小凸起缺陷。賴(lài)文威[2]采用線性條紋結(jié)構(gòu)光照明,增強(qiáng)了缺陷成像,達(dá)到了更好的檢測(cè)效果。但是上述方法通常需要手動(dòng)設(shè)計(jì)和提取特征,并且提取的特征缺少泛化能力,難以滿(mǎn)足復(fù)雜的表面缺陷檢測(cè)需求,無(wú)法平展。
深度學(xué)習(xí)和卷積神經(jīng)的網(wǎng)絡(luò)的出現(xiàn)解決了傳統(tǒng)機(jī)器學(xué)習(xí)方法的局限性。Liu等人[3]提出一種由非對(duì)稱(chēng)卷積模塊組成的輕量級(jí)深度卷積網(wǎng)絡(luò),大大減少了網(wǎng)絡(luò)參數(shù)量,降低模型的復(fù)雜度,能夠滿(mǎn)足工業(yè)生產(chǎn)中的實(shí)時(shí)檢測(cè)要求。但缺陷檢測(cè)不僅關(guān)注是否有缺陷和類(lèi)別,也關(guān)注缺陷的位置,以此幫助分析和改進(jìn)產(chǎn)品制作工藝。
隨著深度學(xué)習(xí)的進(jìn)一步發(fā)展,產(chǎn)生了一系列高效的目標(biāo)檢測(cè)算法,按是否存在顯式的感興趣區(qū)域特征提取模塊,可以分為單階段網(wǎng)絡(luò),代表網(wǎng)絡(luò)為SSD和YOLOV3等;雙階段網(wǎng)絡(luò),代表網(wǎng)絡(luò)為Faster-RCNN等。按是否顯式定義先驗(yàn)框,可以分為Anchor based目標(biāo)檢測(cè)網(wǎng)絡(luò),代表為Faster RCNN,Retinanet和YOLOV3等;Anchor free目標(biāo)檢測(cè)網(wǎng)絡(luò),代表網(wǎng)絡(luò)為FCOS,ATSS和YOLOX等。李春霖等人[4]提出了一個(gè)基于YOLOV3-Tiny-D的輕量級(jí)目標(biāo)檢測(cè)網(wǎng)絡(luò),在保證檢測(cè)精度的同時(shí),顯著提高了檢測(cè)精度,有效檢測(cè)出臟污、劃痕及標(biāo)記三類(lèi)缺陷。夏禹等人[5]提出了基于改進(jìn)Faster-RCNN的偏光片表面缺陷檢測(cè)網(wǎng)絡(luò),針對(duì)小目標(biāo)缺陷,引入特征金字塔(FPN)增強(qiáng)了網(wǎng)絡(luò)的檢測(cè)能力。
Anchor based目標(biāo)檢測(cè)網(wǎng)絡(luò)依賴(lài)先驗(yàn)框的聚類(lèi)結(jié)果,如果出現(xiàn)極端比例的先驗(yàn)框,可能對(duì)網(wǎng)絡(luò)產(chǎn)生負(fù)面作用。針對(duì)上述問(wèn)題,考慮設(shè)計(jì)一種不基于先驗(yàn)框的缺陷檢測(cè)網(wǎng)絡(luò)。YOLOX是單階段Anchor free目標(biāo)檢測(cè)網(wǎng)絡(luò),具有精度高,速度快的特點(diǎn),并且不依賴(lài)于先驗(yàn)框。同時(shí)針對(duì)表面缺陷存在的三個(gè)挑戰(zhàn),即缺陷尺度差異大,缺陷形狀變化大和檢測(cè)效率低下。本文在YOLOX-S網(wǎng)絡(luò)的基礎(chǔ)上進(jìn)行改進(jìn)。最后通過(guò)在建立的偏光片數(shù)據(jù)集上進(jìn)行缺陷檢測(cè)實(shí)驗(yàn),驗(yàn)證本文方法的可行性和有效性。本文主要貢獻(xiàn)總結(jié)如下:
(1)設(shè)計(jì)采集方案,獲取偏光片表面圖像,建立四類(lèi)缺陷的數(shù)據(jù)集。
(2)針對(duì)不同缺陷的存在尺度差異大的問(wèn)題,提出了自適應(yīng)平衡特征金字塔模塊(ABFP),能夠有效地將有多尺度特征融合,同時(shí)增加了一個(gè)檢測(cè)分支,提高網(wǎng)絡(luò)多尺度檢測(cè)能力。
(3)針對(duì)缺陷形狀變化大的問(wèn)題和檢測(cè)效率,在合適的位置引入注意力機(jī)制,避免引入過(guò)多注意力模塊帶來(lái)的參數(shù)量?,F(xiàn)有檢測(cè)網(wǎng)絡(luò)通常將注意力機(jī)制添加于多級(jí)特征,即每級(jí)特征都需要引入一個(gè)注意力模塊。在提出的自適應(yīng)平衡特征金字塔模塊中,本文將注意力模塊應(yīng)用于平衡后的單一特征,保證網(wǎng)絡(luò)性能的同時(shí),避免大量引入注意力模塊帶來(lái)的參數(shù)量。
(4)在網(wǎng)絡(luò)訓(xùn)練過(guò)程中,引入Mish激活函數(shù),同時(shí)優(yōu)化損失函數(shù),使用CIOU損失函數(shù)替代IOU損失函數(shù),有效降低邊界框回歸損失。
YOLO系列以?xún)?yōu)秀的實(shí)時(shí)檢測(cè)性能為優(yōu)勢(shì),在不同的領(lǐng)域獲得了廣泛應(yīng)用。在YOLO系列及其變種中,主流的YOLOV3與YOLOV5都是Anchor based目標(biāo)檢測(cè)方法,預(yù)測(cè)結(jié)果受先驗(yàn)框的聚類(lèi)結(jié)果影響,極端比例的先驗(yàn)框會(huì)影響模型的檢測(cè)性能。YOLOX[6]是最近對(duì)YOLO系列的改進(jìn)結(jié)果,融合了YOLO系列的優(yōu)點(diǎn),并引入了新的技術(shù),使得檢測(cè)性能達(dá)到了新的高度。其中,引入標(biāo)簽分配策略,解決了檢測(cè)性能受先驗(yàn)框影響的問(wèn)題。YOLOX按網(wǎng)絡(luò)深度和網(wǎng)絡(luò)寬度可分為S,M,L等版本,綜合考慮檢測(cè)精度和檢測(cè)速度,本文選擇YOLOX-S作為偏光片表面缺陷檢測(cè)任務(wù)的基準(zhǔn)。YOLOX算法的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。整個(gè)網(wǎng)絡(luò)由三部分組成:骨干網(wǎng)絡(luò)(Backbone)、頸部(Neck)和檢測(cè)頭(Head)。其中Backbone網(wǎng)絡(luò)用于提取輸入圖像的特征、Neck網(wǎng)絡(luò)用于將Backbone提取的特征進(jìn)行多尺度特征融合,Head網(wǎng)絡(luò)用于回歸和分類(lèi),即識(shí)別和定位。
圖1 YOLOX網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network structure of YOLOX
YOLOX采用了YOLOV5的骨架,使用修改后的CPSNet(Modified CSP v5)作為特征提取網(wǎng)絡(luò),其中包含了Focus,CBS,CSP和SPP結(jié)構(gòu)。Focus層使用了切片操作,完成下采樣的同時(shí),避免參數(shù)的大量增加。CBS層包括了卷積運(yùn)算(Conv),批歸一化(BN)和激活函數(shù)(SiLU)。SPP層通過(guò)三個(gè)不同尺度的最大池化(卷積核大小分別為5×5,9×9,13×13)和卷積來(lái)擴(kuò)大感受野。Neck部分采用FPN[7]或PAN[8]作為其特征融合的網(wǎng)絡(luò)。
Head部分相比YOLOV5,采用了解耦頭(decoupled head),兩個(gè)分支分別負(fù)責(zé)對(duì)目標(biāo)的分類(lèi)和定位,使得兩個(gè)任務(wù)解耦,提升了網(wǎng)絡(luò)的檢測(cè)精度和收斂速度。同時(shí)以標(biāo)簽分配的方式關(guān)聯(lián)預(yù)測(cè)框和標(biāo)簽替代了用Anchor based方式提取預(yù)測(cè)框和標(biāo)簽比對(duì),使得整個(gè)網(wǎng)絡(luò)成為Anchor free,大大減少了參數(shù)量。在標(biāo)簽分配策略上,分為兩步,首先采用Multi positives方法,將目標(biāo)中心點(diǎn)所在網(wǎng)格3×3鄰域都作為正樣本,完成初步篩選。這種方法緩解了正負(fù)樣本不平衡的問(wèn)題;最后使用SimOTA算法完成精細(xì)化篩選。
1.2.1 自適應(yīng)平衡特征金字塔
主干中的深層高級(jí)特征具有更多的語(yǔ)義信息,而淺層低級(jí)特征具有更多的邊緣,紋理信息。特征融合是一種將多層次特征進(jìn)行集成的方法,特征融合得不充分,會(huì)限制當(dāng)前模型整體性能。
FPN使用自頂向下的結(jié)構(gòu)和橫向連接融合深層特征和淺層特征。它可以使淺層特征的特征圖包含深層特征的語(yǔ)義信息。然而,F(xiàn)PN僅考慮了豐富淺層特征的語(yǔ)義信息,沒(méi)有考慮將淺層信息融入深層特征中。PAN通過(guò)向FPN額外添加自底向上的結(jié)構(gòu),來(lái)進(jìn)一步增強(qiáng)深層特征中的淺層信息。然而,PAN僅考慮了將相鄰層次的特征信息進(jìn)行融合。Pang等人[9]在Libra R-CNN中提出了BFP(balanced feature pyramid),通過(guò)求平均值的方法將不同層次的特征進(jìn)行融合。然而,BFP沒(méi)有考慮不同層次特征的貢獻(xiàn)不同。
為此,本文在BFP的基礎(chǔ)上改進(jìn),提出了自適應(yīng)平衡特征金字塔(ABFP)模塊,充分考慮各個(gè)層次特征的重要性,通過(guò)引入可學(xué)習(xí)的特征圖權(quán)重,自適應(yīng)地平衡各個(gè)層次的特征信息。ABFP結(jié)構(gòu)如圖2。它包括三個(gè)步驟:縮放、集成和恢復(fù)。
圖2 自適應(yīng)平衡特征金字塔模塊結(jié)構(gòu)Fig.2 Structure of ABFP
集成階段,與BFP通過(guò)簡(jiǎn)單平均獲得平衡的特征圖不同,本文引入三個(gè)可學(xué)習(xí)的權(quán)重{ω3,ω4,ω5},通過(guò)softmax將權(quán)重歸一化,使其值處于[ ]0,1之間。然后,將歸一化參數(shù)與相應(yīng)層級(jí)的特征圖相乘,并將它們相加,最后添加一個(gè)3×3的卷積對(duì)融合后的特征圖進(jìn)行細(xì)化。計(jì)算公式如式(3)、(4)所示:
恢復(fù)階段,將細(xì)化后的特征分別調(diào)整為3個(gè)原始層級(jí)特征的大小,方法與縮放階段相同。同時(shí)還將恢復(fù)得到的各層級(jí)特征與相加,以增強(qiáng)原始特征,得到最終的特征圖{P3,P4,P5}。通過(guò)這種方法,可以同時(shí)融合從低級(jí)到高級(jí)的多級(jí)特征。計(jì)算公式如式(5)~(7)所示:
此外,為了增強(qiáng)檢測(cè)網(wǎng)絡(luò)對(duì)大尺度缺陷的檢測(cè)能力,本文額外增加了一個(gè)分支P6,它由P5添加一個(gè)核大小為3,步長(zhǎng)為2的卷積直接得到,避免了過(guò)多參數(shù)的引入。P6計(jì)算公式如式(8)所示:
1.2.2 注意力機(jī)制
由于偏光片表面缺陷的形狀不同,因此引入注意力機(jī)制來(lái)關(guān)注更重要的特征信息。本文使用CBAM(convolutional block attention module)注意力模塊來(lái)增強(qiáng)通道和空間特征信息,使網(wǎng)絡(luò)能生成更精細(xì)的缺陷檢測(cè)特征。
CBAM由通道注意力模塊和空間注意力模塊串聯(lián)而成,CBAM的整體框架如圖3所示。
圖3 CBAM結(jié)構(gòu)圖Fig.3 Structure of CBAM
目前先進(jìn)的目標(biāo)檢測(cè)網(wǎng)絡(luò)通常在Head之前將注意力機(jī)制應(yīng)用于多級(jí)特征,具體結(jié)構(gòu)如圖4(a)。注意力機(jī)制模塊可以增強(qiáng)提取到的特征并提高檢測(cè)網(wǎng)絡(luò)的精度,但該模塊的插入需要一定的計(jì)算成本。針對(duì)多級(jí)特征,每級(jí)特征需要添加一個(gè)注意力模塊,典型的FPN和PAN需要3個(gè)注意力模塊,這在一定程度上限制了目標(biāo)檢測(cè)網(wǎng)絡(luò)的性能。
圖4 注意力框架Fig.4 Framework of attention
為了更有效地利用注意力機(jī)制,本文將注意力模塊應(yīng)用于ABFP中的平衡特征圖,即集成階段的最終輸出,具體結(jié)構(gòu)如圖4(b)。當(dāng)增強(qiáng)后的特征圖被縮放為多尺度特征圖時(shí),特征已經(jīng)被均勻的增強(qiáng)。相比FPN和PAN,該方法只需添加一個(gè)注意力模塊,這大大降低計(jì)了算成本。
1.2.3 Mish激活函數(shù)
文獻(xiàn)[10]中實(shí)驗(yàn)結(jié)果表明,在分類(lèi)任務(wù)中,針對(duì)CIFAR-10,IMAGENET-1K兩個(gè)數(shù)據(jù)集,引入Mish激活函數(shù)的分類(lèi)網(wǎng)絡(luò)性能大多數(shù)情況優(yōu)于SiLU激活函數(shù)。同時(shí)隨著網(wǎng)絡(luò)深度的增加,Mish的優(yōu)勢(shì)更明顯。針對(duì)YOLOX的主干網(wǎng)Modified CSP v5,本文模型將網(wǎng)絡(luò)中的SiLU激活函數(shù)替換為Mish激活函數(shù)。SiLU和Mish激活函數(shù)如式(9)、(10)所示:
SiLU和Mish激活函數(shù)如圖5所示。Mish具有平滑、連續(xù)、自正則和非單調(diào)的特點(diǎn),與SiLU相同,二者都有下界,無(wú)上界的特性,利于網(wǎng)絡(luò)參數(shù)的優(yōu)化。
圖5 SiLU和Mish激活函數(shù)曲線Fig.5 SiLU and Mish activation function curves
1.2.4 損失函數(shù)改進(jìn)
YOLOX算法中,損失函數(shù)主要由三個(gè)部分組成:邊界框回歸損失、邊界框置信度損失和分類(lèi)預(yù)測(cè)損失。為了指導(dǎo)網(wǎng)絡(luò)學(xué)習(xí),使預(yù)測(cè)框更接近目標(biāo)框,YOLOX采用了IoU損失函數(shù)計(jì)算邊界框的回歸損失。IoU損失函數(shù)常作為簡(jiǎn)單的測(cè)量標(biāo)準(zhǔn)應(yīng)用于目標(biāo)檢測(cè)任務(wù),該函數(shù)可以有效的反映出模型生成的預(yù)測(cè)框與真實(shí)框之間的重疊程度[11]。
IoU損失函數(shù)可以直觀地反映出預(yù)測(cè)框與目標(biāo)框的對(duì)比效果,但也存在一些缺點(diǎn):(1)如圖6(a)所示,當(dāng)目標(biāo)框A和預(yù)測(cè)框B不相交時(shí),無(wú)法反映兩個(gè)目標(biāo)框的距離,同時(shí)IoU=0,梯度函數(shù)為0,網(wǎng)絡(luò)無(wú)法優(yōu)化。(2)當(dāng)IoU值一定時(shí),目標(biāo)框A和預(yù)測(cè)框B情況不唯一,無(wú)法準(zhǔn)確反映兩個(gè)矩形框的相交情況,如圖6(b)和(c)所示。IoU計(jì)算公式如式(11)所示:
圖6 預(yù)測(cè)框與目標(biāo)框相交情況圖Fig.6 Graph of intersection of prediction and ground truth
為了解決上述問(wèn)題,本文使用CIoU替換IoU作為邊界框回歸損失函數(shù)。它在考慮重疊情況的同時(shí),考慮了目標(biāo)框與預(yù)測(cè)框中心點(diǎn)的距離以及兩個(gè)矩形框形狀的相似性。CIoU公式如式(12)~(14)所示:
其中,IoU為目標(biāo)框與預(yù)測(cè)框交集與并集的比值,ρ表示兩個(gè)點(diǎn)的歐式距離,b表示預(yù)測(cè)框的中心點(diǎn)坐標(biāo),bgt表示目標(biāo)框的中心點(diǎn)坐標(biāo),c表示目標(biāo)框與預(yù)測(cè)框的最小外接矩形的對(duì)角線距離,α是權(quán)重系數(shù),v用于計(jì)算目標(biāo)框和預(yù)測(cè)框的長(zhǎng)寬比相似性,w、h表示預(yù)測(cè)框的寬度和高度,wgt、hgt表示目標(biāo)框的寬度和高度。
本文實(shí)驗(yàn)所用數(shù)據(jù)集是通過(guò)搭建的圖像采集系統(tǒng)收集,圖像采集系統(tǒng)基本結(jié)構(gòu)如圖7所示。在圖像采集時(shí),使用平行光源進(jìn)行打光,8K線掃相機(jī)采集圖片。
圖7 圖像采集系統(tǒng)Fig.7 Image acquisition system
通過(guò)上述系統(tǒng)采集到偏光片表面的灰度圖若干張,然后從圖片中手動(dòng)裁取448×448且?guī)в腥毕莸膱D片654張,選擇偏光片在偏貼工藝中常出現(xiàn)的四類(lèi)缺陷作為缺陷目標(biāo)建立樣本數(shù)據(jù)集,分別為凸包(Convex)、凹包(Concave)、劃傷(Scratched)和臟污(Stained)。
首先將這些圖片按554∶100隨機(jī)劃分為訓(xùn)練集和測(cè)試集,在訓(xùn)練前通過(guò)左右翻轉(zhuǎn)、隨機(jī)縮放裁剪等數(shù)據(jù)增強(qiáng)擴(kuò)增到10 464張。圖8展示了偏光片表面數(shù)據(jù)集中的4類(lèi)缺陷,紅框內(nèi)是需要檢測(cè)出的缺陷。
圖8 偏光片表面缺陷Fig.8 Polarizer surface defects
模型訓(xùn)練和性能評(píng)價(jià)均在GPU服務(wù)器上完成,服務(wù)器配置為:Intel?Xeon?CPU E5-2630 v4@2.20 GHz處理器,TITAN X顯卡,顯存12 GB,Ubuntu 16.04.6 LTS操作系統(tǒng)。使用pytorch深度學(xué)習(xí)框架和MMdetection目標(biāo)檢測(cè)工具箱進(jìn)行網(wǎng)絡(luò)的搭建和訓(xùn)練。訓(xùn)練參數(shù)設(shè)置統(tǒng)一如下:采用隨機(jī)梯度下降法訓(xùn)練,動(dòng)量和權(quán)重衰減分別設(shè)置為0.9和0.000 5,采用余弦退火學(xué)習(xí)率策略,最小學(xué)習(xí)率0.05。針對(duì)特征圖權(quán)重,單獨(dú)設(shè)置學(xué)習(xí)率為0.1,其他參數(shù)學(xué)習(xí)率設(shè)置為0.01。單次訓(xùn)練樣本數(shù)量(batch)設(shè)置為16,訓(xùn)練迭代次數(shù)(epoch)設(shè)置為100,在最后20個(gè)訓(xùn)練迭代中,關(guān)閉數(shù)據(jù)增強(qiáng)。訓(xùn)練集預(yù)處理僅采用Mosaic、Mixup[12]兩種數(shù)據(jù)增強(qiáng)策略。
為評(píng)估訓(xùn)練所得模型的檢測(cè)效果,選取平均精確均值mAP(mean average precision)作為模型檢測(cè)性能的評(píng)估指標(biāo)。mAP由準(zhǔn)確率P(Percision)和召回率R(Recall)計(jì)算而得,是所有缺陷類(lèi)別平均精度AP(average precision)的均值。P、R、AP和mAP計(jì)算公式如式(15)~(18)所示:
其中,TP(true positive)表示預(yù)測(cè)正確的正樣本;TN(true negative)表示預(yù)測(cè)正確的負(fù)樣本;FP(false positive)表示預(yù)測(cè)錯(cuò)誤的正樣本;FN(false negative)表示預(yù)測(cè)錯(cuò)誤的負(fù)樣本。APi表示第i類(lèi)缺陷平均精度。
除檢測(cè)性能外,本文還關(guān)注模型的部署性和檢測(cè)效率,通過(guò)參數(shù)量(Parameters)、計(jì)算量(Flops)和FPS(frames per second)來(lái)評(píng)估模型。其中,參數(shù)量和計(jì)算量用來(lái)衡量模型的大小和計(jì)算復(fù)雜度,F(xiàn)PS則用于評(píng)估模型的檢測(cè)速度。
2.4.1 對(duì)比其他目標(biāo)檢測(cè)網(wǎng)絡(luò)
為了評(píng)估所提出方法的有效性,本文在PSD數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),將改進(jìn)的YOLOX-S模型與其他通用目標(biāo)檢測(cè)網(wǎng)絡(luò)進(jìn)行對(duì)比。為了確保實(shí)驗(yàn)的公平性和數(shù)據(jù)的有效性,所有的網(wǎng)絡(luò)均在相同的軟硬件環(huán)境下進(jìn)行訓(xùn)練和測(cè)試,評(píng)價(jià)指標(biāo)為IoU=0.5時(shí)四類(lèi)缺陷的AP值和mAP,還有IoU=0.5:0.95的mAP,即IoU的值從0.5取到0.95,步長(zhǎng)為0.05,計(jì)算這些IoU下的mAP的平均值。此外,為了更好地比較網(wǎng)絡(luò)性能,特別地將模型的主干網(wǎng)在表中標(biāo)明,其中Modified CSP v5是YOLOV5中初次使用的特征提取網(wǎng)絡(luò)。實(shí)驗(yàn)結(jié)果見(jiàn)表1。
表1 PSD數(shù)據(jù)集上對(duì)比通用目標(biāo)檢測(cè)網(wǎng)絡(luò)Table 1 Comparison of general object detection networks on PSD dataset 單位:%
本文將所有網(wǎng)絡(luò)模型分為兩類(lèi),分別是Anchor Based和Anchor Free,在選取用于對(duì)比的其他目標(biāo)檢測(cè)網(wǎng)絡(luò)時(shí),盡可能選擇模型復(fù)雜度接近的網(wǎng)絡(luò),便于對(duì)比網(wǎng)絡(luò)的檢測(cè)性能和檢測(cè)速度。可以看到,除CornerNet主干網(wǎng)為HourgalssNet-104外,其他網(wǎng)絡(luò)的主干網(wǎng)深度十分接近,值得注意的是YOLOV5和YOLOX主干網(wǎng)的網(wǎng)絡(luò)深度將受到網(wǎng)絡(luò)深度因子的影響,具體地說(shuō),S的深度因子為0.33,M的深度因子為0.67。
可以看出本文模型在scratched和stained兩類(lèi)缺陷上的AP、mAP50和mAP50:95均優(yōu)于其他模型,特別地,scratched類(lèi)缺陷檢測(cè)精度比TOOD高0.69個(gè)百分點(diǎn),mAP50比TOOD高了0.67個(gè)百分點(diǎn)。同時(shí)concave和convex兩類(lèi)缺陷分別只低于該類(lèi)缺陷檢測(cè)精度最高值0.67和0.33個(gè)百分點(diǎn)。
實(shí)驗(yàn)結(jié)果表明,本文對(duì)YOLOX-S的改進(jìn)是有效的,能夠明顯提升偏光片表面缺陷的檢測(cè)精度。比如concave類(lèi)缺陷,本文模型該類(lèi)缺陷的AP50比YOLOX-S(FPN)提升了5個(gè)百分點(diǎn),scratched類(lèi)的AP50比YOLOX-S(FPN)提升了2.21個(gè)百分點(diǎn),同時(shí)mAP50和mAP50:95分別提升了1.86和1.34個(gè)百分點(diǎn)。此外,本文還和其他目標(biāo)檢測(cè)網(wǎng)絡(luò)部署性和檢測(cè)效率進(jìn)行對(duì)比,即參數(shù)量和計(jì)算量和檢測(cè)速度,比較結(jié)果見(jiàn)表2。
表2 目標(biāo)檢測(cè)網(wǎng)絡(luò)模型復(fù)雜度分析Table 2 Object detection network model complexity analysis
從比較結(jié)果可知,本文模型在提升檢測(cè)精度的同時(shí)增加了網(wǎng)絡(luò)模型的復(fù)雜度和計(jì)算量,犧牲了一定的檢測(cè)效率,檢測(cè)速度分別比YOLOX-S(PAFPN)和YOLOX-S(FPN)分別慢了11 FPS和21 FPS,但檢測(cè)速度仍快于Faster RCNN、SSD、Retinanet、FCOS和ATSS。本文模型檢測(cè)速度仍在實(shí)際工業(yè)生產(chǎn)中的要求內(nèi)。
此外,與目前先進(jìn)的Anchor Free目標(biāo)檢測(cè)算法VFNet、TOOD和CenterNet++相比,本文模型在略微提升精度的同時(shí),大幅度提升檢測(cè)速度,分別高出19 FPS、24 FPS和39 FPS。
參數(shù)量和計(jì)算量對(duì)比YOLOX-S(PAFPN)和YOLOX-S(FPN)有了一定的增加,但仍比大部分目標(biāo)檢測(cè)網(wǎng)絡(luò)具有更少的參數(shù)量和計(jì)算量,具有較好的可部署性。
使用YOLOX-S(FPN)、YOLOX-S(PAFPN)和本文模型分別對(duì)測(cè)試集進(jìn)行檢測(cè),結(jié)果如圖9所示。從圖9前兩列中看出,對(duì)比其他兩個(gè)模型,本文模型能夠檢出所有缺陷,降低缺陷漏檢率。從圖9后兩列中看出,本文模型對(duì)大目標(biāo)缺陷的檢出能力提高,同時(shí)定位的精度也相比YOLOX-S(PAFPN)有所提升,即預(yù)測(cè)框更加接近目標(biāo)框。上述現(xiàn)象表明,改進(jìn)后的模型能夠有效地融合多級(jí)特征,提高缺陷的檢出率和定位精度。
圖9 檢測(cè)效果對(duì)比Fig.9 Comparison of detection effects
2.4.2 消融實(shí)驗(yàn)
在本節(jié)中,本文通過(guò)在PSD數(shù)據(jù)集上進(jìn)行消融實(shí)驗(yàn)證明本文在YOLOX模型上改進(jìn)內(nèi)容的有效性。實(shí)驗(yàn)使用mAP50和mAP50:95評(píng)價(jià)模型的檢測(cè)性能。本文將YOLOX-S(FPN)作為基準(zhǔn)網(wǎng)絡(luò),并在上面做出改進(jìn)。消融實(shí)驗(yàn)結(jié)果如表3所示,其中,各模型含義如下,N1:Base表示基準(zhǔn)網(wǎng)絡(luò);N2:表示在N1基礎(chǔ)上,使用PAFPN替換FPN;N3:表示在N1基礎(chǔ)上,使用ABFP替換FPN;N4:在N3基礎(chǔ)上增加一個(gè)檢測(cè)分支P6;N5:在N4基礎(chǔ)上,引入一個(gè)CBAM;N6:在N5基礎(chǔ)上,使用CIOU損失函數(shù)優(yōu)化邊界框回歸損失;N7:在N6基礎(chǔ)上,使用Mish激活函數(shù)替換SiLU激活函數(shù)。
表3 消融實(shí)驗(yàn)Table 3 Ablation experiment 單位:%
從N1與N2結(jié)果可以看出,PAFPN通過(guò)增加自底向上的結(jié)構(gòu),將淺層信息融入深層特征中,提升了檢測(cè)精度,mAP50:95提升了0.48個(gè)百分點(diǎn)。從N2與N3結(jié)果可以看出,ABFP通過(guò)對(duì)多級(jí)特征直接加權(quán)求和,融合了跨級(jí)特征,檢測(cè)性能得到提高,其中mAP50提高了0.76個(gè)百分點(diǎn)。N4~N7展示了其他改進(jìn)對(duì)模型檢測(cè)性能的提升。
圖10展示了特征圖權(quán)重{ω3,ω4,ω5}的學(xué)習(xí)曲線。本文在訓(xùn)練開(kāi)始時(shí)將三個(gè)權(quán)重的值設(shè)置為0.33,隨著訓(xùn)練迭代次數(shù)的增加,它們的值不斷學(xué)習(xí)、更新至逐漸穩(wěn)定。通過(guò)圖10,可以發(fā)現(xiàn)三個(gè)權(quán)重的最終值大小不同且有明顯差異,表明BFP中直接融合的多級(jí)特征貢獻(xiàn)不同,ABFP中引入的特征圖權(quán)重可以幫助多級(jí)特征更高效地融合,提高模型的多尺度檢測(cè)能力。
圖10 訓(xùn)練過(guò)程中特征圖權(quán)重學(xué)習(xí)曲線Fig.10 Feature map weight learning curve during training
圖11展示了模型訓(xùn)練中IoU損失的變化曲線,從中看出CIoU損失函數(shù)的引入,使得損失中的IoU Loss顯著降低。在訓(xùn)練過(guò)程中,幫助預(yù)測(cè)框更好地向目標(biāo)框擬合。
圖11 訓(xùn)練過(guò)程中IoU損失變化曲線Fig.11 IoU loss curve during traing
結(jié)果表明,隨著本文所提出的改進(jìn)逐步添加在基準(zhǔn)網(wǎng)絡(luò)上,模型的檢測(cè)性能逐漸提高。最后,添加了所有改進(jìn)的網(wǎng)絡(luò)達(dá)到了最佳的檢測(cè)性能。證明本文所提出的每處改進(jìn)對(duì)于模型獲得最佳缺陷檢測(cè)性能結(jié)果都是必要的。
為了解決偏光片表面缺陷檢測(cè)中缺陷尺度差異大大,缺陷形狀變化大的問(wèn)題,本文提出了一種改進(jìn)YOLOX-S模型的偏光片表面缺陷檢測(cè)模型,同時(shí)與YOLOV3,YOLOV5等模型相比,不依賴(lài)于候選框,具有更少的超參數(shù),使模型更容易訓(xùn)練。首先將多級(jí)特征融合方法從FPN替換為ABFP,將跨級(jí)特征直接融合,使特征融合更充分。其次引入CBAM注意力模塊,針對(duì)插入位置,作了設(shè)計(jì),以減小引入注意力的代價(jià)。此外,使用CIoU損失函數(shù)替換IoU損失函數(shù),使預(yù)測(cè)框更好地向著目標(biāo)框優(yōu)化。最后,使用Mish激活函數(shù)替代SiLU激活函數(shù),幫助模型更好地訓(xùn)練,并有效擬制過(guò)擬合。實(shí)驗(yàn)結(jié)果表明,基于YOLOX-S的改進(jìn)模型能夠更好地檢測(cè)出尺度差異大的缺陷,盡管檢測(cè)速度有所下降,但仍能滿(mǎn)足工業(yè)生產(chǎn)上的需求。
本文不足之處是對(duì)臟污的檢測(cè)精度提升微小,后續(xù)改進(jìn)模型,進(jìn)一步增強(qiáng)對(duì)缺陷形狀變化的感知能力。