鄧世爽 狄 嵐 梁久禎 姜代紅
在紡織生產(chǎn)工藝中,紡織品的質(zhì)量對(duì)紡織業(yè)影響很大,紡織品瑕疵會(huì)嚴(yán)重影響產(chǎn)品質(zhì)量,造成各種資源的極大浪費(fèi)[1].傳統(tǒng)的紡織品瑕疵由人工檢測(cè),受人員經(jīng)驗(yàn)、熟練程度及其它主觀因素的影響,往往導(dǎo)致瑕疵誤檢、漏檢率較高、檢測(cè)速度較慢、效率較低等問(wèn)題.因此,紡織品瑕疵智能檢測(cè)是困擾行業(yè)多年的技術(shù)瓶頸.
當(dāng)前,已采用的紡織品瑕疵檢測(cè)方法可分為結(jié)構(gòu)類方法、統(tǒng)計(jì)類方法、模型類方法和基于神經(jīng)網(wǎng)絡(luò)方法.在結(jié)構(gòu)類方法中,通常以紋理作為基本單元,提取紡織品紋理的結(jié)構(gòu)特征,并結(jié)合位置規(guī)律進(jìn)行分析和檢測(cè).Wang等[2]根據(jù)結(jié)構(gòu)相似性最小原則定位缺陷圖像塊,并使用距離測(cè)量和閾值分割定位缺陷,在一定程度上能有效檢測(cè)瑕疵,但存在較多漏檢.在統(tǒng)計(jì)類方法中,常使用一階統(tǒng)計(jì)和二階統(tǒng)計(jì)提取和處理圖像紋理特征,通過(guò)自相關(guān)函數(shù)和共生矩陣有效檢測(cè)有色織物瑕疵.Li等[3]結(jié)合多向二元算子和灰度共生矩陣(Gray-Level Co-occurrence Matrix, GLCM),提出無(wú)圖案織物缺陷檢測(cè)方法.Liu等[4]通過(guò)織物的主要局部二值模式(Local Binary Pattern, LBP)特征檢測(cè)織物缺陷,但LBP特征只適用帶有周期性的圖像紋理,在處理復(fù)雜背景缺陷時(shí)效果不佳.Zhao等[5]將邊緣方向梯度的金字塔直方圖與支持向量機(jī)(Support Vector Machine, SVM)應(yīng)用于織物缺陷檢測(cè).但在實(shí)際檢測(cè)中,由于不同織物尺寸和紋理變化較大,仍面臨巨大挑戰(zhàn).在模型類方法中,常通過(guò)服從特定分布模型的織物紋理解決紡織品缺陷檢測(cè)問(wèn)題.紀(jì)旋等[6]針對(duì)周期性紡織品存在的拉伸變形問(wèn)題,提出結(jié)合模板校正與低秩分解的紡織品瑕疵檢測(cè)方法.Shi等[7]提出PG-NLR(Low-Rank Decomposition Model with Noise Regula-rization and Gradient Information).龍涵彬等[8]通過(guò)上下文視覺(jué)顯著性算法提取卡通層的顯著性特征,分離具有高顯著性特征的瑕疵與低顯著性特征的背景.上述方法大多僅限于簡(jiǎn)單紋理,無(wú)法解決復(fù)雜的現(xiàn)實(shí)世界織物缺陷檢測(cè)問(wèn)題.
近年來(lái),神經(jīng)網(wǎng)絡(luò)方法被研究者用來(lái)解決各種復(fù)雜圖像瑕疵,成為檢測(cè)紡織品瑕疵的有效方式.Liu等[9]訓(xùn)練基于織物紋理結(jié)構(gòu)的生成對(duì)抗網(wǎng)絡(luò)用于檢測(cè)缺陷,在現(xiàn)有織物缺陷樣本上訓(xùn)練檢測(cè)模型,并在不同應(yīng)用期間自動(dòng)適應(yīng)不同的紋理.但該方法對(duì)大規(guī)模缺陷檢測(cè)效果不佳,在訓(xùn)練初期可能會(huì)錯(cuò)誤地將復(fù)雜背景紋理歸類為缺陷.Mei等[10]利用多尺度卷積去噪自編碼器網(wǎng)絡(luò)重建圖像塊,并結(jié)合多個(gè)金字塔尺度特征檢測(cè)缺陷區(qū)域,但準(zhǔn)確率較低,無(wú)法滿足實(shí)際應(yīng)用要求.
由于紡織品瑕疵檢測(cè)可視為目標(biāo)檢測(cè)領(lǐng)域任務(wù),研究人員將深度學(xué)習(xí)技術(shù)應(yīng)用于織物缺陷檢測(cè)問(wèn)題中,并在提高紡織品質(zhì)量和生產(chǎn)效率方面取得較優(yōu)結(jié)果[11-13].目前,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)器可分為一級(jí)檢測(cè)器和二級(jí)檢測(cè)器[14].一級(jí)檢測(cè)器檢測(cè)速度更快,而二級(jí)檢測(cè)器精度更高.在紡織行業(yè)的實(shí)際應(yīng)用中,一般希望在滿足檢測(cè)精度的前提下,提高檢測(cè)速度.蔡兆信等[15]使用Faster R-CNN自動(dòng)檢測(cè)紡織品缺陷.Faster R-CNN得益于其強(qiáng)大的特征工程能力,可實(shí)現(xiàn)較優(yōu)的檢測(cè)性能.然而,Faster R-CNN由于采用兩階段目標(biāo)檢測(cè)方案,時(shí)空復(fù)雜度較大.為了能更好地適用于工業(yè)實(shí)際生產(chǎn),研究人員分別使用SSD(Single Shot MultiBox Detector)[16]、CenterNet[17]、Cascade R-CNN[18]、YOLO(You Only Look Once)系列[19-21]等一階段目標(biāo)檢測(cè)網(wǎng)絡(luò)進(jìn)行紡織品瑕疵檢測(cè).
在目標(biāo)檢測(cè)領(lǐng)域中,YOLOv5引入CSPNet(Cross Stage Partial Network)[22],將梯度變化集成到特征圖中,減少模型參數(shù)量和計(jì)算量,既保證推理速度和準(zhǔn)確率,又減小模型大小.但紡織品瑕疵通常具有種類多、差異大、分布不均等特點(diǎn),使YOLOv5在特征提取部分并不能充分提取瑕疵特征,并且YOLOv5在特征融合階段產(chǎn)生的混疊效應(yīng)也嚴(yán)重影響瑕疵檢測(cè)精度.
為了解決上述問(wèn)題,本文在YOLOv5基礎(chǔ)上,提出結(jié)合注意力機(jī)制與自適應(yīng)記憶性融合網(wǎng)絡(luò)的紡織品瑕疵檢測(cè)模型(簡(jiǎn)記為SCNet+AMFN).首先,在YOLOv5骨干網(wǎng)絡(luò)中引入改進(jìn)后的SCBAM(Softpool Convolutional Block Attention Module),構(gòu)建骨干網(wǎng)絡(luò)SCNet(Softpool Cbam Network),提升模型對(duì)紡織品瑕疵特征的提取能力.然后,為了增強(qiáng)紡織品瑕疵淺層定位信息的傳遞效應(yīng)和有效緩解特征融合時(shí)產(chǎn)生的混疊效應(yīng),本文提出自適應(yīng)記憶性融合網(wǎng)絡(luò)(Adaptive Memory Fusion Network, AMFN),引入自適應(yīng)空間特征融合網(wǎng)絡(luò)(Adaptive Spatial Feature Fusion, ASFF)[23],提高瑕疵特征尺度不變性,同時(shí)將SCNet中特征信息融入特征融合層,增強(qiáng)目標(biāo)定位信息.最后,引入CDIoU(Control Distance Intersec-tion of Union)[24]損失函數(shù),提高檢測(cè)精度.應(yīng)用本文模型在紡織品瑕疵數(shù)據(jù)集上開(kāi)展訓(xùn)練和測(cè)試,結(jié)果表明,SCNet+AMFN是一種精確有效且快速的紡織品瑕疵檢測(cè)模型.
在目標(biāo)檢測(cè)任務(wù)中,YOLOv5在模型中引入CSPNet[22],通過(guò)分割梯度流,使梯度流通過(guò)不同的網(wǎng)絡(luò)路徑傳播,進(jìn)而使傳播的梯度信息具有較大相關(guān)性差異.在特征融合部分,添加特征金字塔(Feature Pyramid Networks, FPN)和像素聚合網(wǎng)絡(luò)(Pixel Aggregation Network, PAN)[25]組合結(jié)構(gòu),在進(jìn)行多尺度特征信息融合的同時(shí)增強(qiáng)對(duì)淺層信息的傳遞效應(yīng).但對(duì)于種類多、形態(tài)差異大、邊緣不確定的紡織品瑕疵目標(biāo),YOLOv5對(duì)其特征提取能力仍有待提高.同時(shí),YOLOv5在特征融合階段產(chǎn)生的混疊效應(yīng)也降低模型對(duì)紡織品瑕疵的檢測(cè)效果.因此,本文在此基礎(chǔ)上提出SCNet+AMFN,整體結(jié)構(gòu)如圖1所示.
由圖1可知,本文模型主要分為SCNet和AMFN兩部分.其中,SCNet部分用于提取瑕疵的3個(gè)不同尺度的基本特征信息,由Focus層、4個(gè)CBL層、4個(gè)引入SCBAM注意力模塊的Backbone CSP層、空間金字塔池化(Spatial Pyramid Pooling, SPP)層組成.Focus層將圖像切片后連接,使圖像在下采樣后仍可保留全部信息,CBL層由卷積層(Conv)、歸一化層(Batch Normalization, BN)和LeakyReLu激活函數(shù)構(gòu)成,Backbone CSP層在SCBAM基礎(chǔ)上引入殘差結(jié)構(gòu),增加層與層之間反向傳播的梯度值,防止梯度消失.AMFN部分對(duì)SCNet提取的3個(gè)基本特征進(jìn)行充分融合,使模型在增強(qiáng)淺層定位信息傳遞效應(yīng)的同時(shí),有效融合高層語(yǔ)義特征,最終輸出3個(gè)不同尺度的融合特征圖,分別用于檢測(cè)不同大小瑕疵目標(biāo).
圖1 SCNet+AMFN網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 SCNet+AMFN network structure
本文模型整體訓(xùn)練流程如下.首先將瑕疵圖像輸入SCNet,提取3個(gè)不同尺度的瑕疵基本特征,再采用AMFN充分融合3種不同尺度的基本特征,得到融合特征后,通過(guò)3個(gè)檢測(cè)頭模塊,分別對(duì)不同尺度瑕疵目標(biāo)進(jìn)行定位和分類.
為了有效提高模型對(duì)紡織品瑕疵特征的提取能力,本文借助軟池化(SoftPool)[26],在下采樣激活映射中保留更多信息的特點(diǎn),設(shè)計(jì)SCBAM.此外,在YOLOv5骨干網(wǎng)絡(luò)的基礎(chǔ)上,引入SCBAM,構(gòu)成骨干網(wǎng)絡(luò)SCNet.
1.1.1SoftPool下采樣
目前,常用的池化操作(平均值池化和最大值池化)在池化過(guò)程中會(huì)丟失圖像中的大多數(shù)信息,降低整個(gè)網(wǎng)絡(luò)的性能.例如,平均池化操作僅能提取特定區(qū)域中的平均值作為輸出,而最大池化只選擇特定區(qū)域內(nèi)最高的單個(gè)激活值.SoftPool通過(guò)Soft-max加權(quán)方式,保留輸入的基本屬性,同時(shí)放大更大強(qiáng)度的特征激活值,因此可在保持池化層功能的同時(shí),盡可能減少池化過(guò)程中帶來(lái)的信息損失.
SoftPool以自然指數(shù)e為底數(shù),確保越大的激活值對(duì)輸出具有越大影響.同時(shí),得益于其可微的特點(diǎn),在反向傳播期間,局部鄰域R內(nèi)的所有激活至少被分配一個(gè)最小梯度值.在SoftPool池化過(guò)程中,每個(gè)激活ai都被賦予權(quán)重wi,該權(quán)重為該激活的自然指數(shù)相對(duì)于鄰域R內(nèi)所有激活的自然指數(shù)之和的比值:
通過(guò)對(duì)內(nèi)核鄰域內(nèi)所有激活的加權(quán)求和得到SoftPool輸出值:
1.1.2SCBAM模塊
在計(jì)算機(jī)視覺(jué)領(lǐng)域任務(wù)中,研究人員通過(guò)各種注意力機(jī)制,增強(qiáng)模型對(duì)關(guān)鍵特征信息的提取能力,提高模型檢測(cè)效果[27-28].CBAM(Convolutional Block Attention Module)[29]是一種結(jié)合通道和空間兩個(gè)維度的注意力機(jī)制模塊,結(jié)構(gòu)簡(jiǎn)單,可有效提高網(wǎng)絡(luò)的特征提取能力,廣泛應(yīng)用于神經(jīng)網(wǎng)絡(luò)中.
如圖2(a)所示,F∈RC×H×W表示網(wǎng)絡(luò)中生成的特征圖,其中,C表示特征圖通道數(shù),H、W表示輸入特征圖的高度和寬度.CBAM會(huì)按照通道和空間順序計(jì)算一維的通道注意力映射Mc∈RC×1×1和二維的空間注意力映射Ms∈R1×H×W,整個(gè)過(guò)程公式如下:
F′=Mc(F)?F,F″=Ms(F′)?F′,
其中?表示對(duì)應(yīng)位置元素相乘.
其中,W0∈R(C/r)×C,W1∈RC×C/r,表示MLP權(quán)重,r表示神經(jīng)元個(gè)數(shù)減少率.
(a)CBAM注意力模塊[31](a)CBAM attention module
其中,f7×7表示7×7的卷積層,σ表示Sigmoid激活函數(shù).
由此,CBAM模塊在兩個(gè)維度計(jì)算注意力映射時(shí),均通過(guò)最大值池化和均值池化提取輸入注意力信息.然而對(duì)于種類多、邊緣不確定、背景重合度較高的紡織品瑕疵,直接引入CBAM模塊會(huì)大量丟失紡織品瑕疵細(xì)節(jié)信息,影響模型檢測(cè)效果.鑒于此種情況,本文利用SoftPool,在下采樣中既能最大限度保留細(xì)節(jié)信息又增強(qiáng)重要特征的特點(diǎn),將其引入CBAM,建立SCBAM.
圖2(c)為SCBAM注意力模塊結(jié)構(gòu),考慮到Soft-Pool池化過(guò)程中指數(shù)運(yùn)算影響模型效率的局限性,因此,本文僅在CBAM通道維度使用SoftPool代替最大值池化和平均值池化,在保留更多瑕疵細(xì)節(jié)特征的同時(shí),增強(qiáng)瑕疵顯著特征的提取.
1.1.3SCNet網(wǎng)絡(luò)
如圖3所示,在YOLOv5骨干網(wǎng)絡(luò)部分,網(wǎng)絡(luò)由Focus層、4個(gè)CBL層、4個(gè)C3模塊和SPP構(gòu)成.輸入圖像首先通過(guò)Focus層進(jìn)行切片,再經(jīng)過(guò)4個(gè)CBL層下采樣,每個(gè)CBL后面接C3模塊,用于提取該層特征信息,同時(shí)通過(guò)SPP擴(kuò)大感受野,提高目標(biāo)檢測(cè)精度.
圖3 YOLOv5骨干網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 YOLOv5 backbone network structure
為了進(jìn)一步增強(qiáng)模型對(duì)紡織品瑕疵特征的提取能力,基于SCBAM,加入殘差結(jié)構(gòu),構(gòu)建SCBlock(SCBAM Block)模塊,并引入CSPNet,得到特征提取模塊Backbone CSP,替換原YOLOv5骨干網(wǎng)絡(luò)中C3模塊,構(gòu)成SCNet,整個(gè)過(guò)程如圖4所示.由圖可知,在SCBlock模塊中,輸入特征經(jīng)過(guò)一個(gè)1×1的CBL層后,送入SCBAM進(jìn)行特征提取,再通過(guò)殘差結(jié)構(gòu)與初始輸入特征相加,以防止網(wǎng)絡(luò)過(guò)深產(chǎn)生梯度消失問(wèn)題.
圖4 SCBlock結(jié)構(gòu)
CSPNet通過(guò)分割梯度流,使梯度流通過(guò)不同的網(wǎng)絡(luò)路徑傳播,提高卷積神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)能力,保證高精度和輕量級(jí),同時(shí),降低內(nèi)存成本和復(fù)雜度,因此被廣泛用于緩解網(wǎng)絡(luò)優(yōu)化中出現(xiàn)的重復(fù)梯度信息問(wèn)題.本文也沿用CSP思想,將SCBlock結(jié)構(gòu)CSP化,得到Backbone CSP.Backbone CSP將特征分成兩個(gè)支路后進(jìn)行Concat操作,結(jié)果經(jīng)過(guò)BN層、Leaky-ReLu層和CBL層.
優(yōu)化后的SCNet由Focus層、4個(gè)CBL層、4個(gè)引入SCBAM的Backbone CSP層和SPP層組成.Focus層將圖像切片后連接,使圖像在下采樣后仍可保留全部信息.CBL層由卷積層、BN層和LeakyReLu激活函數(shù)構(gòu)成,對(duì)輸入特征進(jìn)行下采樣,得到不同尺度特征圖.Backbone CSP層在SCBAM的基礎(chǔ)上,引入殘差結(jié)構(gòu),增加層與層之間反向傳播的梯度值,防止梯度消失.該層主要用于瑕疵特征的提取.SPP層通過(guò)不同大小池化操作,進(jìn)行多尺度融合,增大模型感受野,提高模型檢測(cè)效果.
在基于深度學(xué)習(xí)的目標(biāo)檢測(cè)網(wǎng)絡(luò)中,底層特征語(yǔ)義信息較少,但定位信息豐富;高層特征語(yǔ)義信息豐富,但定位信息不足.因此,為了充分利用高層特征的語(yǔ)義信息和底層特征的細(xì)粒度特征,YOLOv5采用FPN+PAN(Path Aggregation Network)方式輸出多層特征,如圖5所示.FPN采用自頂向下方式,將骨干網(wǎng)絡(luò)提取的特征信息進(jìn)行融合增強(qiáng),但因骨干網(wǎng)絡(luò)中通常會(huì)存在大量卷積操作,導(dǎo)致淺層特征傳到輸出層時(shí)丟失嚴(yán)重,影響檢測(cè)定位精度,見(jiàn)圖5中虛線.對(duì)此,PAN在FPN后面添加一個(gè)自底向上的金字塔,對(duì)FPN進(jìn)行補(bǔ)充,縮短低層的強(qiáng)定位特征傳遞的路徑,有效增強(qiáng)模型對(duì)目標(biāo)檢測(cè)效果,見(jiàn)圖5中點(diǎn)虛線.
圖5 FPN+PAN結(jié)構(gòu)Fig.5 FPN+PAN structure
采用FPN+PAN組合方式仍然會(huì)產(chǎn)生兩個(gè)問(wèn)題:1)在不同特征信息進(jìn)行融合時(shí),大多采用concatenation或element-wise此類直接銜接或相加的方法,然而此類方式并不能充分利用不同尺度的特征信息,依然會(huì)造成對(duì)特征信息的丟失;2)盡管PAN添加一條自底向上的通路,增強(qiáng)淺層信息的傳遞,但同時(shí)網(wǎng)絡(luò)會(huì)對(duì)淺層特征進(jìn)行多次融合,產(chǎn)生混疊效應(yīng),降低特征準(zhǔn)確性.針對(duì)上述兩個(gè)問(wèn)題,本文設(shè)計(jì)AMFN,結(jié)構(gòu)如圖6所示.
圖6 AMFN結(jié)構(gòu)Fig.6 AMFN structure
在圖6中,AMFN首先采用ASFF[23]方式融合骨干網(wǎng)絡(luò)SCNet提取的3個(gè)不同尺度基本特征,在融合之前,需要將3個(gè)不同尺度特征調(diào)整到統(tǒng)一尺寸,然后再根據(jù)自適應(yīng)學(xué)習(xí)到的權(quán)重進(jìn)行加權(quán)融合,得到融合后的特征:
αij+βij+γij=1,
在得到融合特征Iij后,借鑒PAN思想,增加一條自底向上的通路,同時(shí)將SCNet輸出特征引入特征融合層,增強(qiáng)對(duì)淺層特征的使用.相比FPN+PAN融合方式,AMFN中間融合模塊更少,模型更小.另外,AMFN通過(guò)自適應(yīng)權(quán)重對(duì)輸入特征進(jìn)行加權(quán)融合,有效融合多尺度特征,同時(shí)增強(qiáng)對(duì)淺層信息的利用.因此,AMFN可有效提高檢測(cè)效果.
在目標(biāo)檢測(cè)任務(wù)中,IoU(Intersection over Union)的計(jì)算通常用于評(píng)估RP(Region Proposal)和GT(Ground Truth)之間的相似性,IoU計(jì)算值的高低通常也是正負(fù)樣本挑選的依據(jù).在評(píng)估反饋模塊中,表現(xiàn)較優(yōu)的是CIoU(Complete-IoU),它考慮重疊區(qū)域、中心點(diǎn)距離和長(zhǎng)寬比,定義如下:
其中,b表示預(yù)測(cè)框的中心點(diǎn),bgt表示真實(shí)框的中心點(diǎn),ρ2表示兩點(diǎn)之間的歐氏距離,c表示能同時(shí)包含預(yù)測(cè)框和真實(shí)框之間的最小閉包區(qū)域的對(duì)角線距離,wgt、hgt表示真實(shí)框?qū)捄透?w、h表示預(yù)測(cè)框?qū)捄透?
針對(duì)紡織品瑕疵形態(tài)差異較大、尺度多變的特點(diǎn),本文在CIoU基礎(chǔ)上引入CDIoU損失[24],在基本不增加計(jì)算開(kāi)銷的前提下提高紡織品瑕疵檢測(cè)精度.CDIoU計(jì)算RP和GT四個(gè)坐標(biāo)點(diǎn)之間的距離以計(jì)算損失,如圖7所示.
圖7 CDIoU示意圖Fig.7 Sketch map of CDIoU
CIoU損失的計(jì)算公式如下:
相比CIoU損失,CDIoU多一項(xiàng)diou,在反向傳播之后,傾向于將RP的4個(gè)頂點(diǎn)拉向GT的4個(gè)頂點(diǎn),直到重疊為止,如圖8所示.
圖8 CDIoU損失下預(yù)測(cè)框變化趨勢(shì)Fig.8 Trend of prediction frame with CDIoU loss
實(shí)驗(yàn)采用Ubuntu操作系統(tǒng),處理器為Intel(R) Xeon(R) CPU E5-2678 v3 @ 2.50 GHz, NVIDIA-Tesla V100 PCIe顯卡,顯存32 GB.本次研究均基于PyTorch深度學(xué)習(xí)框架構(gòu)建網(wǎng)絡(luò)模型.實(shí)驗(yàn)開(kāi)發(fā)環(huán)境為PyTorch1.9.1,cuda11.0,python3.7.
ZJU-Leaper紡織品瑕疵數(shù)據(jù)集[30]包括多種場(chǎng)景下的多種瑕疵類型,但并未對(duì)瑕疵進(jìn)行標(biāo)注和分類.因此,本文基于該數(shù)據(jù)集,利用Matlab中Image Labeler標(biāo)注工具對(duì)數(shù)據(jù)集上紡織品瑕疵依次進(jìn)行標(biāo)注,最終共標(biāo)記1 536幅瑕疵圖像,圖像大小統(tǒng)一為256×256,背景分為素色和花紋兩種類型,瑕疵類型分為4類:污漬、破損、褶皺、油污,各類瑕疵標(biāo)簽數(shù)量如表1所示.
表1 ZJU-Leaper紡織品瑕疵數(shù)據(jù)集標(biāo)簽統(tǒng)計(jì)Table 1 Label statistics of ZJU-Leaper textile defect dataset
實(shí)驗(yàn)中將數(shù)據(jù)集分為訓(xùn)練集和測(cè)試集,比例為3∶1,即訓(xùn)練集為1 152幅圖像,測(cè)試集為384幅圖像.圖9為該數(shù)據(jù)集瑕疵位置和長(zhǎng)寬比分布圖,圖中小方塊表示一個(gè)瑕疵標(biāo)簽,尺度均進(jìn)行歸一化處理.由圖可知,瑕疵位置分布較均衡,長(zhǎng)寬比分布較集中.標(biāo)記后的紡織品瑕疵圖像示例如圖10所示.
(a)中心點(diǎn)坐標(biāo)分布(a)Central point coordinate distribution
圖10 ZJU-Leaper紡織品瑕疵數(shù)據(jù)集圖像示例Fig.10 Examples of ZJU-Leaper textile defect dataset
天池紡織品瑕疵數(shù)據(jù)集采集于佛山南海紡織車間,圖像數(shù)量共706幅,大小為2 560×1 920,瑕疵共分為8種類型:擦洞、缺經(jīng)、扎洞、織稀、跳花、毛洞、吊經(jīng)、毛斑.實(shí)驗(yàn)前使用翻轉(zhuǎn)、旋轉(zhuǎn)、尺度變換、隨機(jī)摳取、色彩抖動(dòng)等數(shù)據(jù)增強(qiáng)方法,將圖像數(shù)量擴(kuò)充到5 520幅,各類瑕疵標(biāo)簽數(shù)量如表2所示.
表2 天池紡織品瑕疵數(shù)據(jù)集標(biāo)簽統(tǒng)計(jì)Table 2 Label statistics of Tianchi textile defect dataset
實(shí)驗(yàn)時(shí)將數(shù)據(jù)集分為訓(xùn)練集和測(cè)試集,比例為3∶1,即訓(xùn)練集為4 140幅圖像,測(cè)試集為1 380幅圖像.為了加快模型訓(xùn)練速度,實(shí)驗(yàn)時(shí)統(tǒng)一將圖像尺寸調(diào)整為512×512.該數(shù)據(jù)集標(biāo)簽分布情況如圖11所示,尺度均進(jìn)行歸一化處理.
(a)中心點(diǎn)坐標(biāo)分布(a)Central point coordinate distribution
由圖11可知,該數(shù)據(jù)集瑕疵位置分布較集中,長(zhǎng)寬比分布較分散,這表明該數(shù)據(jù)集瑕疵尺度變化較大.標(biāo)記后的紡織品瑕疵圖像示例如圖12所示.
圖12 天池紡織品瑕疵數(shù)據(jù)集示例Fig.12 Examples of Tianchi textile defect dataset
本文選擇mAP@0.5和mAP@0.5∶0.95作為評(píng)價(jià)指標(biāo),mAP@0.5表示IoU閾值設(shè)為0.5時(shí),所有類別的平均AP,mAP@0.5∶0.95表示在不同IoU閾值下的平均mAP,下面實(shí)驗(yàn)中mAP@0.5∶0.95均由mAP表示.因此需要計(jì)算模型的精確率(Precision)和召回率(Recall).
方達(dá)生是一個(gè)服裝設(shè)計(jì)師,夫婦都是香港人,如今他們已經(jīng)結(jié)婚七年了,妻子卻一直沒(méi)有懷孕。為了擁有一個(gè)自己的孩子,他們可謂費(fèi)盡了心機(jī),他們幾乎跑遍
具體指標(biāo)值公式如下:
其中:TP(True Positive)為檢測(cè)正確的正樣本個(gè)數(shù);FP(False Positive)為檢測(cè)錯(cuò)誤的正樣本個(gè)數(shù);FN(False Negative)為檢測(cè)錯(cuò)誤的負(fù)樣本個(gè)數(shù).
在CDIoU損失函數(shù)中,為了選取最有效的超參數(shù)λ,取λ=1.0,0.1,0.01,0.001,在ZJU-Leaper紡織品瑕疵數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表3所示,表中黑體數(shù)字表示最優(yōu)值.由表可知,當(dāng)λ=0.01時(shí),mAP@0.5和mAP達(dá)到最優(yōu)值,顯著高于取其它參數(shù)值時(shí)的精度.分析其原因:當(dāng)λ取值較大時(shí),模型在訓(xùn)練后期,diou項(xiàng)梯度過(guò)大,導(dǎo)致模型難以收斂到更高精度;當(dāng)λ取值過(guò)小時(shí),diou項(xiàng)權(quán)重過(guò)小,難以提高模型收斂效果.因此,本文模型選擇λ=0.01,此時(shí)模型對(duì)于紡織品瑕疵的檢測(cè)效果最佳.
表3 λ不同時(shí)的實(shí)驗(yàn)結(jié)果Table 3 Experimental results with different λ
為了驗(yàn)證本文模型的有效性,在ZJU-Leaper紡織品瑕疵數(shù)據(jù)集上進(jìn)行消融實(shí)驗(yàn),評(píng)估SCBAM、AMFN和CDIoU對(duì)紡織品瑕疵檢測(cè)的效果.實(shí)驗(yàn)以YOLOv5為基礎(chǔ)模型,檢測(cè)結(jié)果對(duì)比見(jiàn)圖13.實(shí)驗(yàn)圖像輸入大小統(tǒng)一為256×256.
(a)原始圖像(a)Original images
在YOLOv5s中分別引入CBAM、SCBAM、AMFN、CDIoU,具體消融實(shí)驗(yàn)結(jié)果如表4所示,表中黑體數(shù)字表示最優(yōu)值.
由表4可知,引入CBAM和SCBAM之后,檢測(cè)精度均有所提高,但引入SCBAM后,精度提升更明顯,相比YOLOv5s,mAP@0.5提高1%,mAP提高0.5%,這表明SCBAM有效并有助于紡織品瑕疵的檢測(cè).
表4 各模塊消融實(shí)驗(yàn)對(duì)比Table 4 Comparison of ablation experiments of different modules
另外,本文測(cè)試AMFN的有效性.AMFN由于減少特征融合模塊的數(shù)量,降低模型大小,但需要額外計(jì)算自適應(yīng)權(quán)重,這也導(dǎo)致檢測(cè)速度略有下降.最后,將CDIoU損失函數(shù)引入模型損失計(jì)算中,mAP@0.5和mAP都有所提升.上述實(shí)驗(yàn)表明,本文模型均具有一定效果,有助于提高紡織品瑕疵的檢測(cè)精度.
為了進(jìn)一步衡量本文模型對(duì)于紡織品瑕疵檢測(cè)的性能,在ZJU-Leaper紡織品瑕疵數(shù)據(jù)集、天池紡織品瑕疵數(shù)據(jù)集上將選擇如下對(duì)比模型:Faster R-CNN[15]、Cascade R-CNN[18]、YOLOv3[20]、YOLO-v4[21]、YOLOv5[31]、YOLOX[32]、YOLOR(You Only Learn One Representation)[33],其中,YOLOv5選擇YOLOv5s、YOLOv5m和YOLOv5l版本,YOLOX選擇YOLOX-s版本、YOLOR選擇YOLOR-P6和YOLOR-CSP版本.
各模型在ZJU-Leaper數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表5所示,表中黑體數(shù)字表示最優(yōu)值.由表可知,相比基線模型YOLOv5s,本文模型的mAP@0.5提升2.6%,mAP提升1.5%.特別是在褶皺類瑕疵檢測(cè)任務(wù)上,本文模型mAP@0.5提升5.2%,mAP值提升2.5%,這得益于AMFN既能有效融合瑕疵特征又能增強(qiáng)對(duì)淺層定位信息的傳遞,因此AMFN顯著提高對(duì)背景重合度較高、不易區(qū)分的瑕疵檢測(cè)精度.雖然本文模型的mAP值未達(dá)到最高,相比YOLOX-s,相差0.5%,但本文模型檢測(cè)速度達(dá)到500幀/秒,比YOLOX-s加快65%,并且模型大小僅有13.6M,顯著低于其它模型.另外,對(duì)于油污類瑕疵,由于該類瑕疵樣本較少,模型對(duì)于該類瑕疵提取到的特征不足,導(dǎo)致精度較差,這也表明本文模型對(duì)于小樣本的特征提取能力還有待提高.
表5 各模型在ZJU-Leaper數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果對(duì)比Table 5 Experimental result comparison of different models on ZJU-Leaper dataset
此外,為了進(jìn)一步驗(yàn)證本文模型的適用性和廣泛性,在天池紡織品瑕疵數(shù)據(jù)集上,進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)中輸入圖像大小統(tǒng)一為512×512,實(shí)驗(yàn)結(jié)果如表6所示,表中黑體數(shù)字表示最優(yōu)值.由表可知,本文模型在精度和速度上超過(guò)大部分現(xiàn)有網(wǎng)絡(luò),而模型大小僅有13.6 M,低于其它模型.YOLOv5l和YOLOR-CSP由于其強(qiáng)大的參數(shù)擬合能力,與本文模型取得相當(dāng)?shù)臋z測(cè)精度,但參數(shù)量過(guò)多、模型運(yùn)算量較大,導(dǎo)致檢測(cè)速度低于本文模型.另外,在ZJU-Leaper紡織品瑕疵數(shù)據(jù)集上表現(xiàn)優(yōu)異的YOLOX-s,在天池紡織品瑕疵數(shù)據(jù)集上檢測(cè)效果卻不佳.原因是天池瑕疵數(shù)據(jù)集上各類瑕疵尺度變化明顯且長(zhǎng)寬比差異過(guò)大,使該數(shù)據(jù)集對(duì)于基于無(wú)錨點(diǎn)的YOLOX-s并不友好.
表6 各模型在天池紡織品數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果對(duì)比Table 6 Experimental result comparison of different models on Tianchi textile dataset
本文模型在2個(gè)數(shù)據(jù)集上檢測(cè)效果較優(yōu),檢測(cè)速度較快,模型尺度較小,這表明本文模型具有良好的適用性和廣泛性,能滿足實(shí)際應(yīng)用需要.
本文針對(duì)紡織品瑕疵檢測(cè)任務(wù),提出結(jié)合注意力機(jī)制與自適應(yīng)記憶性融合網(wǎng)絡(luò)的紡織品瑕疵檢測(cè)模型(SCNet+AMFN).在YOLOv5骨干網(wǎng)絡(luò)中引入改進(jìn)的注意力模塊SCBAM,構(gòu)建骨干網(wǎng)絡(luò)SCNet,獲取更多瑕疵細(xì)節(jié)特征,提高模型對(duì)紡織品瑕疵特征的表征能力.然后,設(shè)計(jì)自適應(yīng)記憶性融合網(wǎng)絡(luò)(AMFN),學(xué)習(xí)空間濾波沖突信息,抑制特征尺度不一致性,同時(shí)利用淺層特征增強(qiáng)對(duì)目標(biāo)的定位和檢測(cè)效果.此外,引入CDIoU損失函數(shù),在基本不增加計(jì)算開(kāi)銷的前提下提高瑕疵檢測(cè)精度.實(shí)驗(yàn)表明,本文模型在紡織品瑕疵數(shù)據(jù)集上取得較優(yōu)檢測(cè)效果.下一步工作是解決模型對(duì)于小樣本特征提取能力不足的問(wèn)題,進(jìn)一步優(yōu)化本文模型.同時(shí),擴(kuò)建紡織品瑕疵數(shù)據(jù)集,標(biāo)注更多種類紡織品瑕疵,包括斷緯、粗經(jīng)、粗緯、扭結(jié)等瑕疵類型,提高模型的檢測(cè)能力.