楊毅,桑慶兵
(江南大學(xué)人工智能與計(jì)算機(jī)學(xué)院,江蘇無(wú)錫 214122)
織物質(zhì)量檢測(cè)一直以來(lái)都是紡織產(chǎn)業(yè)生產(chǎn)加工中的重要環(huán)節(jié),織物瑕疵的出現(xiàn)會(huì)直接影響企業(yè)的利潤(rùn)。隨著企業(yè)生產(chǎn)效率不斷提升,傳統(tǒng)人工檢測(cè)的方法已不能適應(yīng)大批量自動(dòng)化生產(chǎn)檢測(cè)的要求[1]。因此,采用自動(dòng)疵點(diǎn)檢測(cè)技術(shù)已成為提高織物質(zhì)量、降低人工成本的必然趨勢(shì)[2],但是機(jī)器自動(dòng)檢測(cè)織物瑕疵的效率和準(zhǔn)確性仍面臨較大挑戰(zhàn)。
傳統(tǒng)織物瑕疵檢測(cè)方法主要分為結(jié)構(gòu)法、統(tǒng)計(jì)法、頻譜法、模型法、基于學(xué)習(xí)的方法等[3]。MIRMAHDAVI等[4]將無(wú)瑕疵樣本輸入高斯混合模型訓(xùn)練,通過(guò)實(shí)驗(yàn)設(shè)定歐氏距離閾值進(jìn)行瑕疵檢測(cè)。文獻(xiàn)[5]利用織物紋理的周期性,通過(guò)匹配缺陷位置的相對(duì)偏移量和傅里葉位移定理曲線(xiàn),分割出織物瑕疵部分。然而,傳統(tǒng)算法存在缺陷分割性能差、噪聲敏感、漏檢率高等問(wèn)題。隨著計(jì)算機(jī)算力的快速提升,深度學(xué)習(xí)被廣泛應(yīng)用于織物視覺(jué)計(jì)算與處理領(lǐng)域。LIU等[6]提出一種基于CGAN[7]的多判別器模型,研究潛在匹配規(guī)則和服裝屬性之間關(guān)系,ZHAO等[8]開(kāi)發(fā)了一個(gè)基于 雙向長(zhǎng)短期記憶Bi-LTSM[9]模型的端到端服裝搭配學(xué)習(xí)框架,ZHANG等[10]提出使用GAN[11]從人體穿著服裝圖像生成具有真實(shí)紋理的平鋪服裝圖像。在織物瑕疵檢測(cè)任務(wù)中,深度學(xué)習(xí)方法具有較強(qiáng)的特征表征能力。文獻(xiàn)[12]采用深度學(xué)習(xí)方法,通過(guò)改進(jìn)ResNet50[13]網(wǎng)絡(luò)提取特征,使用特征金字塔網(wǎng)絡(luò)過(guò)濾冗余特征,實(shí)現(xiàn)對(duì)織物瑕疵的檢測(cè)。以上檢測(cè)方法解決了部分織物瑕疵檢測(cè)問(wèn)題,但目前織物檢測(cè)存在缺陷種類(lèi)多,尤其是小目標(biāo)缺陷較多,對(duì)實(shí)時(shí)性要求高的問(wèn)題,給深度學(xué)習(xí)方法的應(yīng)用帶來(lái)一定困難。
為滿(mǎn)足織物瑕疵數(shù)據(jù)檢測(cè)任務(wù)實(shí)時(shí)性需求,本文將YOLOv4[14]網(wǎng)絡(luò)的主干網(wǎng)絡(luò)替換為MobileNetv2[15],并使用CoordAttention[16]模塊對(duì)MobileNetv2 的逆殘差結(jié)構(gòu)進(jìn)行改進(jìn),增強(qiáng)其對(duì)小目標(biāo)瑕疵的特征提取能力。采用自適應(yīng)特征融合(Adaptively Spatial Feature Fusion,ASFF)[17]網(wǎng)絡(luò)改進(jìn)路徑聚合網(wǎng)絡(luò)(Path Aggregation Network,PANet)[18]結(jié)構(gòu),提高小目標(biāo)缺陷檢測(cè)精度。針對(duì)不同種類(lèi)瑕疵長(zhǎng)寬比差異大、原始先驗(yàn)框尺寸不適用的問(wèn)題,使用K-means++[19]算法進(jìn)行瑕疵尺寸聚類(lèi),確定錨框尺寸,并采用Focal Loss[20]函數(shù)降低正、負(fù)樣本不平衡對(duì)檢測(cè)效果的影響。
目標(biāo)檢測(cè)算法根據(jù)有無(wú)區(qū)域建議主要分為兩類(lèi):一類(lèi)是無(wú)區(qū)域建議算法,通過(guò)一個(gè)卷積神經(jīng)網(wǎng)絡(luò)直接對(duì)圖像各個(gè)位置上的候選框進(jìn)行預(yù)測(cè)和分類(lèi),例如YOLOv4[14]與SSD[21];另一類(lèi)是基于區(qū)域建議的算法,由區(qū)域提議和檢測(cè)2 個(gè)步驟組成,相較于無(wú)區(qū)域建議算法,其精度較高但速度慢,代表網(wǎng)絡(luò)有Faster R-CNN[22]等。
YOLOV4 是無(wú)區(qū)域建議目標(biāo)檢測(cè)算法的代表之一,其結(jié)構(gòu)如圖1 所示。其主干網(wǎng)絡(luò)CSPDarknet-53在YOLOv3[23]網(wǎng)絡(luò)的Darknet53 基礎(chǔ)上引進(jìn)了CSPNet[24]模塊結(jié)構(gòu),相較于Darknet53 網(wǎng)絡(luò),模型預(yù)測(cè)的準(zhǔn)確率和推理速度均有所提高。頸部網(wǎng)絡(luò)包括空間金字塔池化(Spatial Pyramid Pooling,SPP)[25]和PANet 兩個(gè)部分,SPP 通過(guò)使用不同大小的滑動(dòng)核,有效增加了網(wǎng)絡(luò)感受野,并將局部與全局的特征進(jìn)行融合,增加了特征的豐富性。PANet 相較于FPN[26]網(wǎng)絡(luò)增加了自下而上的增強(qiáng)路徑,通過(guò)保留空間信息以增強(qiáng)實(shí)例分割過(guò)程。頭部網(wǎng)絡(luò)采用YOLOv3 網(wǎng)絡(luò)檢測(cè)頭,分別提取主干特征網(wǎng)絡(luò)最后3 層的圖像特征,生成邊界框和類(lèi)別預(yù)測(cè)。
圖1 YOLOv4 網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Structure of YOLOv4 network
YOLOv4 原始主干網(wǎng)絡(luò)CSPDarknet-53 雖然能有效提取深度特征信息,但結(jié)構(gòu)復(fù)雜且參數(shù)量多,導(dǎo)致難以應(yīng)用于計(jì)算資源較差、實(shí)時(shí)性要求高的織物瑕疵檢測(cè)任務(wù)中。
MobileNetv2 是一種輕量化的特征提取網(wǎng)絡(luò),其核心為深度可分離卷積和具有線(xiàn)性瓶頸的逆殘差結(jié)構(gòu),具體如下:
1)深度可分離卷積。相較于普通卷積,深度可分離卷積能有效減少模型的參數(shù)量和計(jì)算量,其流程如圖2 所示。
圖2 深度可分離卷積流程Fig.2 Procedure of depth separable convolution
對(duì)于輸入為FH×FW×M的特征圖,F(xiàn)H、FW分別為特征圖的高和寬,M為通道數(shù),對(duì)特征圖進(jìn)行卷積操作,卷積核大小為K×K,卷積核數(shù)量為N,輸出特征圖大小為DH×DW×N,在對(duì)特征圖進(jìn)行標(biāo)準(zhǔn)卷積的過(guò)程中,計(jì)算量C1和參數(shù)量P1的表達(dá)式如下所示:
對(duì)特征圖進(jìn)行深度可分離卷積運(yùn)算,計(jì)算量C2和參數(shù)量P2的表達(dá)式分別如下所示:
深度可分卷積與標(biāo)準(zhǔn)卷積計(jì)算量之比如式(5)所示:
若將深度可分離卷積的卷積核大小設(shè)為3×3,步長(zhǎng)設(shè)置為1,按式(5)進(jìn)行計(jì)算,其計(jì)算量下降為普通卷積的1/9,模型檢測(cè)速度得到大幅提高。
2)具有線(xiàn)性瓶頸的逆殘差結(jié)構(gòu)。普通殘差塊先通過(guò)1×1 卷積將特征圖通道數(shù)降維,經(jīng)過(guò)卷積提取特征后再擴(kuò)張通道數(shù)。逆殘差結(jié)構(gòu)與其相反,由于輸入通道數(shù)的增加有利于深度可分離卷積提取特征,所以先對(duì)特征圖通道數(shù)進(jìn)行升維,以提取更多特征,再壓縮通道數(shù)。同時(shí),為了消除Relu 函數(shù)對(duì)被壓縮特征的影響,在1×1 卷積降維后使用Linear 函數(shù)代替Relu 函數(shù)。
表1 所示為MobileNetv2 網(wǎng)絡(luò)的結(jié)構(gòu),可以看到MobileNetv2 網(wǎng)絡(luò)由多個(gè)具有線(xiàn)性瓶頸的逆殘差結(jié)構(gòu)組成。
表1 MobileNetv2 網(wǎng)絡(luò)結(jié)構(gòu)Table 1 Structure of MobileNetv2 network
在輕量級(jí)網(wǎng)絡(luò)上的研究表明,通道注意力會(huì)給模型帶來(lái)較顯著的性能提升。為提高模型對(duì)瑕疵特征提取能力,本文在MobileNetv2 逆殘差塊中加入新型注意力機(jī)制CoordAttention 模塊,如圖3 所示,通過(guò)將位置信息嵌入到通道注意力中,使網(wǎng)絡(luò)能夠更好地獲取空間方向的特征信息,使小目標(biāo)檢測(cè)定位更加精確,同時(shí)也能避免產(chǎn)生大量的計(jì)算開(kāi)銷(xiāo)。
圖3 加入CoordAttention 模塊的逆殘差結(jié)構(gòu)Fig.3 Inverse residual structure with CoordAttention module
CoordAttention 的運(yùn)算過(guò)程由坐標(biāo)信息嵌入和坐標(biāo)注意力生成兩步組成,具體過(guò)程如下所示:
1)坐標(biāo)信息嵌入。相對(duì)于全局池化壓縮全局空間信息,導(dǎo)致位置信息難以保存,CoordAttention 模塊使用一對(duì)一特征編碼操作替換全局池化,并分別沿2 個(gè)空間方向聚合特征,得到一對(duì)具有空間信息的特征圖,從而有利于網(wǎng)絡(luò)更準(zhǔn)確地定位感興趣的目標(biāo)。
2)坐標(biāo)注意力生成。將生成的特征圖進(jìn)行拼接,然后使用1×1 卷積生成具有水平和垂直方向空間信息的特征圖,如式(6)所示:
其中:[·,·]為沿空間維數(shù)的concatenate 操作;F為1×1卷積變換函數(shù);δ為非線(xiàn)性激活函數(shù);zh、zw分別為水平與豎直方向特征圖。得到同時(shí)具有水平、豎直方向空間信息的特征圖之后,按空間維度將f分解為兩個(gè)獨(dú)立的張量,并使用1×1 卷積與sigmoid 激活函數(shù)對(duì)張量分別進(jìn)行處理,將結(jié)果gh、gw分別展開(kāi)作為水平與豎直方向的注意力權(quán)重,其表達(dá)式如下所示:
其中:σ是sigmoid 激活函數(shù);Fh和Fw為1×1 卷積變換。將權(quán)重與輸入的特征圖相乘,使原始特征圖具有注意力權(quán)重,增強(qiáng)聚焦特征能力。使用嵌入CoordAttention 模塊的逆殘差替換原網(wǎng)絡(luò)中的逆殘差結(jié)構(gòu),提升MobileNet 網(wǎng)絡(luò)提取精確位置信息和感興趣領(lǐng)域的能力,且不過(guò)多增加計(jì)算開(kāi)銷(xiāo)。相較于SE 模塊[27]只考慮通道間信息的編碼而忽視位置信息,CBAM 模塊[28]僅能捕獲局部相關(guān)性而無(wú)法捕獲更大區(qū)域的依賴(lài)關(guān)系,而CoordAttention 模塊對(duì)于特征信息的提取更全面。
深層特征圖具有較強(qiáng)的語(yǔ)義信息,但分辨率低,細(xì)節(jié)感知能力差,適合大目標(biāo)檢測(cè)。淺層特征圖感受野小,包含更多位置、信息細(xì)節(jié),且?guī)缀伪碚髂芰?qiáng),適合小目標(biāo)檢測(cè)。PANet 網(wǎng)絡(luò)結(jié)構(gòu)如圖4 所示,YOLOv4 使用該結(jié)構(gòu)進(jìn)行多尺度特征融合,
圖4 PANet 網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Structure of PANet network
PANet 網(wǎng)絡(luò)在原有FPN 自上而下的特征融合路徑(如圖4(a)所示)的基礎(chǔ)上,增加自下而上的增強(qiáng)路徑(如圖4(b)所示),通過(guò)對(duì)淺層與深層特征圖的反復(fù)提取,融合不同尺度特征圖的特征信息。但PANet 網(wǎng)絡(luò)的融合方式只是簡(jiǎn)單地將特征圖轉(zhuǎn)換成相同尺度再相加,不能充分利用不同尺度的特征。使用ASFF 網(wǎng)絡(luò)改進(jìn)PANet 結(jié)構(gòu),通過(guò)給不同尺度的特征融合分配自適應(yīng)的權(quán)重參數(shù),實(shí)現(xiàn)多尺度特征圖的高效融合,改進(jìn)后的PANet 結(jié)構(gòu)如圖5 所示。
圖5 改進(jìn)后的PANet 網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Structure of improved PANet network
以ASFF-2 的計(jì)算過(guò)程為例,ASFF-2 由特征圖Level 1、Level 2 和Level 3 融合得到,Level 1 通過(guò)1×1卷積將通道數(shù)調(diào)整到與Level 2 一致,再用插值方式調(diào)整尺寸與Level 2 一致,得到X1→2;對(duì)Level 3 特征圖進(jìn)行stride=2 的3×3 卷積操作,并調(diào)整通道數(shù)與Level 2 一致,得到X3→2。Level 2 特征層即X2→2,最后利用卷積核為1×1 的卷積操作壓縮通道數(shù),沿通道方向拼接,再使用卷積將通道數(shù)降為3,對(duì)3 個(gè)通道上的特征圖使用softmax 函數(shù)處理,分別得到X1→2、X2→2、X3→2的融合權(quán)重αij、βij、γij。ASFF網(wǎng)絡(luò)的融合過(guò)程表達(dá)式如式(9)所示:
ASFF 網(wǎng)絡(luò)實(shí)現(xiàn)了αij、βij、γij這3 個(gè)比例參數(shù)的自適應(yīng)調(diào)整,將其作為網(wǎng)絡(luò)模型的可更新參數(shù),通過(guò)誤差梯度反向傳播更新融合權(quán)重,使模型的多尺度特征融合更加充分,能更有效地利用特征,提高模型對(duì)小目標(biāo)瑕疵的檢測(cè)能力。
YOLOv4 的先驗(yàn)框是在PASCAL VOC 數(shù)據(jù)集中采用K-means 算法聚類(lèi)而來(lái),織物瑕疵數(shù)據(jù)集中小目標(biāo)瑕疵較多,粗經(jīng)、軋痕等瑕疵長(zhǎng)寬比較大,因此需要針對(duì)織物缺陷數(shù)據(jù)集聚類(lèi)出先驗(yàn)框。傳統(tǒng)K-means 聚類(lèi)算法結(jié)果不穩(wěn)定且易陷入局部最優(yōu),導(dǎo)致聚類(lèi)先驗(yàn)框與實(shí)際目標(biāo)匹配度低,影響檢測(cè)精度。本文使用K-means++聚類(lèi)算法穩(wěn)定初始化聚類(lèi)中心選擇,具體過(guò)程如下:
1)在數(shù)據(jù)點(diǎn)之間隨機(jī)選擇一個(gè)聚類(lèi)中心;
2)計(jì)算每個(gè)樣本與當(dāng)前已有聚類(lèi)中心最短距離D(x),數(shù)據(jù)點(diǎn)被選取作為聚類(lèi)中心的概率與D(x)大小正相關(guān),使用輪盤(pán)法選出下一個(gè)聚類(lèi)中心;
3)重復(fù)步驟2 直到選擇出k個(gè)聚類(lèi)中心點(diǎn)。
K-means++能夠優(yōu)化初始聚類(lèi)中心點(diǎn)的選取,從而改善分類(lèi)結(jié)果誤差,修改后的anchor box 大小分別為(4,15)、(8,10)、(12,48)、(22,52)、(36,55)、(46,52)、(55,396)、(65,118)、(228,38)。
由于織物瑕疵數(shù)據(jù)中瑕疵區(qū)域占整個(gè)織物圖像的比例很小,若將不含瑕疵的區(qū)域當(dāng)做負(fù)樣本,含瑕疵的區(qū)域?yàn)檎龢颖?,則不含瑕疵區(qū)域的負(fù)樣本數(shù)量遠(yuǎn)多于含瑕疵的正樣本數(shù)量。正負(fù)樣本數(shù)量嚴(yán)重失衡可能導(dǎo)致給模型提供的瑕疵特征較少,影響模型收斂,因此采用Focal Loss 函數(shù)優(yōu)化分類(lèi)損失。類(lèi)別損失、置信度損失和位置損失共同構(gòu)成YOLOv4 的損失函數(shù),其中,原始YOLOv4 的類(lèi)別損失為交叉熵?fù)p失函數(shù),其表達(dá)式如式(10)所示:
其中:L表示交叉熵;C表示分類(lèi)種類(lèi)數(shù);y為期望輸出,表示經(jīng)過(guò)激活函數(shù)后的輸出。改進(jìn)后的Focal loss 函數(shù)表達(dá)式如式(11)所示:
其中:α為矯正系數(shù),作用是平衡樣本數(shù)量;β為超參數(shù),一般取2。通過(guò)引入α 和β 兩個(gè)約束參數(shù),可以在網(wǎng)絡(luò)訓(xùn)練過(guò)程中自動(dòng)對(duì)正負(fù)樣本不平衡進(jìn)行調(diào)整。
本次實(shí)驗(yàn)操作系統(tǒng)為Windows10,CPU 為Intel Core i7-8700K,內(nèi)存16 GB,GPU 為NIVIDA GeForce GTX1080,顯存8 GB,選用Pytorch 作為深度學(xué)習(xí)框架,開(kāi)發(fā)工具為Pycharm2019.1。初始學(xué)習(xí)率設(shè)定為0.001,Momentum 動(dòng)量參數(shù)設(shè)為0.2,IOU 閾值設(shè)置為0.5,共訓(xùn)練300 個(gè)epoch。
本次實(shí)驗(yàn)所使用的數(shù)據(jù)集來(lái)自阿里天池布匹疵點(diǎn)數(shù)據(jù)集,為驗(yàn)證本文改進(jìn)算法在織物瑕疵檢測(cè)任務(wù),尤其是對(duì)小目標(biāo)瑕疵檢測(cè)任務(wù)中的性能提升,從其中選取實(shí)際生產(chǎn)較為常見(jiàn)的6 種缺陷,包括結(jié)頭、三絲、破洞、粗經(jīng)、緯縮和軋痕圖片共2 026 張,其中結(jié)頭、三絲、破洞為小目標(biāo)瑕疵。采用圖像翻轉(zhuǎn)、圖像縮放、圖像融合等數(shù)據(jù)增強(qiáng)方式擴(kuò)充至8 104 張,處理訓(xùn)練圖片大小為608×608 像素,各類(lèi)瑕疵圖片數(shù)量如表2 所示,訓(xùn)練集、測(cè)試集和驗(yàn)證集的劃分比例為8∶1∶1。
表2 阿里天池布匹疵點(diǎn)數(shù)據(jù)集的類(lèi)別統(tǒng)計(jì)結(jié)果Table 2 Statistics results of alibaba tianchi fabric defect dataset category
本文實(shí)驗(yàn)的評(píng)價(jià)指標(biāo)為平均精度(Average Precision,AP),平均精度均值(mean Average Precision,mAP),幀率(Frame Per Second,F(xiàn)PS),F(xiàn)PS 指模型每秒能夠檢測(cè)的圖片數(shù)量,可以作為檢測(cè)速度的衡量指標(biāo)。平均精度指標(biāo)的表達(dá)式如下所示:
其中:p為準(zhǔn)確率;r為召回率。準(zhǔn)確率和召回率的表達(dá)式如下所示:
其中:TTP、FFP分別表示正確、錯(cuò)誤判斷的瑕疵樣本個(gè)數(shù),F(xiàn)FN為被錯(cuò)誤檢測(cè)的負(fù)樣本數(shù)量。
平均精度均值的表達(dá)式為:
為驗(yàn)證本文算法在織物瑕疵檢測(cè)任務(wù)中的性能,將主流目標(biāo)檢測(cè)算法Faster-RCNN[20]、YOLOv4、YOLOv4-Tiny、YOLOv4-MobileNet 與本文改進(jìn)YOLOv4 算法在相同的數(shù)據(jù)集上進(jìn)行訓(xùn)練,結(jié)果如表3 所示。由表3 可知,F(xiàn)aster-RCNN 算法的mAP 較高,但檢測(cè)速度較慢,模型體積大,對(duì)算力要求高,難以滿(mǎn)足織物瑕疵檢測(cè)實(shí)時(shí)性的要求。將本文改進(jìn)YOLOv4 算法與YOLOv4 算法相比,mAP 提升2.3 個(gè)百分點(diǎn),檢測(cè)速度提升了12 frame/s,且本文模型體積相較于YOLOv4 算法大幅減少,能夠滿(mǎn)足工業(yè)生產(chǎn)部署需求。YOLOv4-Tiny 算法是輕量級(jí)檢測(cè)算法的代表之一,參數(shù)量?jī)H為YOLOv4 算法的1/10,檢測(cè)速度滿(mǎn)足實(shí)時(shí)性需求,但結(jié)構(gòu)簡(jiǎn)單,無(wú)法滿(mǎn)足檢測(cè)精度要求。
表3 主流算法與本文算法的對(duì)比Table 3 Comparison between mainstream algorithm and improved algorithm in this paper
由表3 還可知,本文算法的mAP 相較于YOLOv4-Tiny 算法高9.06 個(gè)百分點(diǎn)。將YOLOv4 原特征提取網(wǎng)絡(luò)CSPDarkNet53 替換為MobileNet 網(wǎng)絡(luò)后,檢測(cè)速度提升了15 frame/s,mAP 減少5.58 個(gè)百分點(diǎn),原因是特征提取網(wǎng)絡(luò)層數(shù)減少,導(dǎo)致特征提取的效果下降,但模型計(jì)算量減小,檢測(cè)速度有所提高。與僅將YOLOv4 主干網(wǎng)絡(luò)替換為MobileNet 的算法對(duì)比,本文算法mAP 提升了7.88 個(gè)百分點(diǎn),這充分說(shuō)明ASFF 算法對(duì)PANet 網(wǎng)絡(luò)改進(jìn)的積極作用。在MobileNet 逆殘差塊中加入CoordAttention 模塊,在沒(méi)有增加較多模型體積的前提下,提高了模型的mAP,檢測(cè)速度僅降低3 frame/s。
通過(guò)對(duì)比實(shí)驗(yàn)數(shù)據(jù),本文算法在織物瑕疵檢測(cè)任務(wù)中相較于大型網(wǎng)絡(luò)檢測(cè)mAP 相近,檢測(cè)速度更快,模型體積更小。相較于輕量級(jí)網(wǎng)絡(luò),本文算法瑕疵檢測(cè)能力更強(qiáng),mAP 更高,更適用于織物瑕疵檢測(cè)任務(wù)。
為驗(yàn)證ASFF 算法、CoordAttention 注意力模塊和Focal Loss 損失函數(shù)對(duì)模型性能的影響,以將主干網(wǎng)絡(luò)替換為MobileNet 的YOLOv4 算法作為基準(zhǔn),對(duì)加入的模塊進(jìn)行消融實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表4 所示,其中“×”表示不加入,“√”表示加入。
表4 消融實(shí)驗(yàn)結(jié)果Table 4 Results of ablation experiment
由表4 可知,在MobileNet 網(wǎng)絡(luò)的逆殘差結(jié)構(gòu)中插入CoordAttention 注意力模塊后,小目標(biāo)瑕疵的AP 分別提升了3.83、3.75、4.54 個(gè)百分點(diǎn),緯縮、粗經(jīng)、軋痕三種缺陷的AP 也所提升,這說(shuō)明加入CoordAttention 注意力模塊提高了MobileNet 的特征提取能力,可以捕獲更精確的位置信息與缺陷特征,對(duì)于小目標(biāo)瑕疵檢測(cè)效果較好。在此基礎(chǔ)上加入使用ASFF 網(wǎng)絡(luò)改進(jìn)的PANet,相較于原始的PANet,改進(jìn)后的PANet 在結(jié)頭、三絲、破洞等小目標(biāo)缺陷上的AP 分別提高了3.85、4.03、3.48 個(gè)百分點(diǎn),表明相較于原始的PANet 網(wǎng)絡(luò),使用ASFF 網(wǎng)絡(luò)改進(jìn)PANet 結(jié)構(gòu),利用多尺度特征圖將模型訓(xùn)練學(xué)習(xí)到的權(quán)重進(jìn)行融合,能大幅提升對(duì)小目標(biāo)瑕疵的檢測(cè)能力。最后,加入Focal Loss 損失函數(shù),能使算法整體mAP 和精度提高。
為驗(yàn)證本文算法相較于原始YOLOv4 算法在織物瑕疵檢測(cè)任務(wù)中的優(yōu)勢(shì),選取結(jié)頭、三絲、破洞圖片各一張,進(jìn)行檢測(cè)結(jié)果對(duì)比,YOLOv4 與本文算法檢測(cè)結(jié)果對(duì)比如圖6 所示。圖6 中6 組檢測(cè)效果圖中,左側(cè)為YOLOv4 檢測(cè)效果,右側(cè)為本文算法的檢測(cè)效果。從中可以看出,原始YOLOv4 算法在結(jié)頭、三絲等小目標(biāo)瑕疵檢測(cè)中存在漏檢情況,本文算法有效改善了漏檢情況,并且檢測(cè)置信度值得到了明顯提高。這充分說(shuō)明CoordAttention 模塊對(duì)逆殘差結(jié)構(gòu)的改進(jìn),增強(qiáng)了模型對(duì)于小目標(biāo)瑕疵的聚焦能力。ASFF 網(wǎng)絡(luò)對(duì)PANet 的改進(jìn),充分融合與利用多尺度特征圖的信息,有效增強(qiáng)了對(duì)于小目標(biāo)瑕疵的檢測(cè)性能。同時(shí),通過(guò)K-means++聚類(lèi)算法聚類(lèi)先驗(yàn)框使模型檢測(cè)框更加適用于粗經(jīng)、軋痕等長(zhǎng)寬比較大的瑕疵類(lèi)型檢測(cè)。
圖6 YOLOv4 算法與本文算法檢測(cè)效果對(duì)比Fig.6 Comparison of detection effect between YOLOv4 algorithm and algorithm in this paper
本文提出一種基于多尺度特征自適應(yīng)融合的輕量化織物瑕疵檢測(cè)算法,通過(guò)在MobileNetv2 網(wǎng)絡(luò)的逆殘差塊中加入CoordAttention 注意力模塊,并使用該網(wǎng)絡(luò)作為YOLOv4 主干網(wǎng)絡(luò),減少參數(shù)總量與計(jì)算量,增強(qiáng)網(wǎng)絡(luò)聚焦小目標(biāo)瑕疵特征能力。使用自適應(yīng)空間特征融合結(jié)構(gòu)改進(jìn)PANet 網(wǎng)絡(luò),提高小目標(biāo)瑕疵檢測(cè)精度,采用K-means++算法獲得適合的候選框,并使用Focal Loss 函數(shù)優(yōu)化分類(lèi)損失降低正、負(fù)樣本不平衡對(duì)檢測(cè)結(jié)果的影響。實(shí)驗(yàn)結(jié)果表明,本文算法相較于原始YOLOv4 算法的平均精度均值提升了2.3 個(gè)百分點(diǎn),幀率提高了12 frame/s,模型體積大幅減少。下一步將通過(guò)知識(shí)蒸餾和模型剪枝技術(shù),在保證檢測(cè)精度的基礎(chǔ)上降低參數(shù)量和計(jì)算量,提高模型檢測(cè)速度,并針對(duì)瑕疵特征改進(jìn)模型,提高算法的檢測(cè)精度。