張宏偉,譚全露,陸 帥,葛志強,徐 健
(1.西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048;2.浙江大學(xué) 工業(yè)控制技術(shù)國家重點實驗室,浙江 杭州 310027;3.北京理工大學(xué) 醫(yī)工融合研究院,北京 100081)
色織襯衫花型美觀大方,是我國出口創(chuàng)匯能力最強的服裝產(chǎn)品之一。色織襯衫的花型由染色的紗線經(jīng)緯交織而成,主要表現(xiàn)為點狀、星狀、條狀和格子狀的花型。由于色織物的品質(zhì)波動和生產(chǎn)過程中的不確定因素[1-3],導(dǎo)致襯衫裁片外觀不可避免地出現(xiàn)缺陷,如破洞、斷頭、雙紗等[4]。為了提高色織襯衫產(chǎn)品的品質(zhì),降低缺陷裁片對襯衫成衣的影響,經(jīng)過裁剪工序加工的裁片在進入縫制工序前,需要進行嚴格檢測。目前,色織襯衫裁片的缺陷檢測基本依賴于人工目測。色織花型復(fù)雜多樣,隨著市場需求和流行趨勢而變化,需要經(jīng)驗豐富的工人才能完成這項高難度的檢測工作。但受個人能力、主觀因素和疲勞因素限制,人工檢測方法效率低、速度慢且準確率不穩(wěn)定[5],因此,亟需一種高效率的機器視覺方法來解決人工目測存在的問題。
目前,基于機器視覺的織物缺陷檢測技術(shù)已成為紡織行業(yè)的一個研究熱點。針對紋理、花型固定的織物品種,研究人員設(shè)計了多種能夠區(qū)分缺陷區(qū)域和織物背景圖像特征的傳統(tǒng)檢測算法。如景軍鋒等[6]結(jié)合字典學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)檢測色織物缺陷;李鵬飛等[7]用局部二進制算法提取織物特征,結(jié)合AdaBoost分類算法實現(xiàn)織物分類;ZHANG等[8]利用L0梯度最小化原則濾除織物紋理背景,并用模糊聚類檢測織物缺陷;KANG等[9]提出一種 Elo 等級評定算法來實現(xiàn)織物缺陷檢測等。上述檢測算法憑借專家經(jīng)驗,針對特定織物人工設(shè)計精巧的缺陷區(qū)域判別特征實現(xiàn)缺陷檢測。這種傳統(tǒng)特征設(shè)計檢測算法成本高且難以適用于新的織物花型。
為了提高特征工程方法的靈活性,機器學(xué)習(xí)算法,尤其是有監(jiān)督機器學(xué)習(xí)算法被引入織物缺陷的檢測與分類中。對于產(chǎn)量大且花型穩(wěn)定的織物品種,易于構(gòu)建缺陷樣本數(shù)量豐富、缺陷種類相對平衡的數(shù)據(jù)集。如果再對缺陷數(shù)據(jù)集進行準確的人工標注,機器學(xué)習(xí)算法則能夠很好地實現(xiàn)織物缺陷的檢測、分類。如ZHANG等[3]利用 YOLOV2 模型對色織物疵點進行檢測、分類;JING等[4]改進LeNet-5模型以實現(xiàn)織物缺陷檢測;LI等[10]利用監(jiān)督學(xué)習(xí)獲取顯著性直方圖并提取有效的顯著性特征實現(xiàn)織物缺陷檢測;YAPI 等[11]利用監(jiān)督學(xué)習(xí)訓(xùn)練貝葉斯分類器實現(xiàn)織物的缺陷檢測等。這些工作均需建立大規(guī)模缺陷樣本數(shù)據(jù)集,并對缺陷區(qū)域進行準確的人工標注。但在實際的生產(chǎn)場景中,色織襯衫花型品種隨著市場需求而變化,難以構(gòu)建缺陷種類完備的織物數(shù)據(jù)庫,更難以實現(xiàn)完備的人工標注,因此,基于有監(jiān)督機器學(xué)習(xí)的織物缺陷檢測算法難以適應(yīng)色織襯衫裁片花型因批次變化的場景。
無監(jiān)督機器學(xué)習(xí)由于不需要人工手動標記缺陷區(qū)域[12],已經(jīng)引起了部分織物缺陷檢測研究人員的關(guān)注。如張宏偉等[13]提出一種基于去噪卷積自編碼器的無監(jiān)督重構(gòu)模型,利用待測圖像和重構(gòu)圖像的殘差分析方法,初步實現(xiàn)了色織物缺陷的快速檢測和定位;MEI 等[14]提出一種基于多尺度卷積去噪自編碼器(Multi-Scale Convolutional Denoising AutoEncoder,MSCDAE)重構(gòu)模型,通過殘差分析檢測并定位織物缺陷等。無監(jiān)督機器學(xué)習(xí)的織物缺陷檢測模型可以有效利用實際生產(chǎn)中無缺陷樣本容易獲取、無需要標注缺陷樣本的巨大優(yōu)點,通過去噪、重構(gòu)得到待測樣本的修復(fù)版本。通過將待測樣本與其修復(fù)圖像進行殘差計算,即可檢測和定位織物缺陷區(qū)域。該類算法的關(guān)鍵在于無監(jiān)督深度自編碼器模型能否有效提取復(fù)雜花型織物的主要特征,它決定了無監(jiān)督深度模型能否在有效重構(gòu)織物圖像正?;ㄐ偷耐瑫r修復(fù)缺陷區(qū)域。
針對經(jīng)典自編碼器重構(gòu)色織襯衫裁片圖像能力弱的問題,筆者構(gòu)造了一種U型深度去噪卷積自編碼器模型,通過殘差分析實現(xiàn)色織襯衫裁片的缺陷檢測和定位。文中方法部分介紹了傳統(tǒng)U型檢測網(wǎng)絡(luò),闡述了一種新型U型深度去噪卷積自編碼器的網(wǎng)絡(luò)結(jié)構(gòu)及其應(yīng)用于色織襯衫裁片缺陷檢測的步驟;實驗部分描述了實驗軟、硬件平臺,色織襯衫裁片樣本和評價指標,并與其他檢測算法進行定性、定量分析對比。實驗結(jié)果表明,該方法在不需要缺陷樣本和缺陷標記的情況下,能夠有效重構(gòu)色織襯衫裁片的紋理花型,實現(xiàn)快速檢測和定位多種類型的色織襯衫裁片缺陷。
1.1.1 經(jīng)典Unet模型
2015年,RONNEBERGER 等人針對生物醫(yī)學(xué)圖像細胞分割問題,創(chuàng)新提出一種隱含層結(jié)構(gòu)類似于字母“U”的深度卷積網(wǎng)絡(luò)目標檢測模型,簡稱為 Unet 模型[15]。該模型的訓(xùn)練屬于有監(jiān)督學(xué)習(xí),訓(xùn)練過程中需要輸入細胞圖像原圖及其像素的類別標記數(shù)據(jù),檢測階段中該模型可以高效地針對輸入的細胞圖像實現(xiàn)細胞圖像分割。Unet 結(jié)構(gòu)如圖1所示,其輸入層為單通道圖像層,輸出層為雙通道的像素分類層,隱含層為U型跳接結(jié)構(gòu)的多個卷積層、最大池化層和上采樣層,使用的損失函數(shù)為交叉熵損失函數(shù)。另外,該模型在訓(xùn)練過程中還使用了數(shù)據(jù)增強策略來彌補樣本的稀缺。該模型在當(dāng)年的ISBI 細胞追蹤項目上以較大優(yōu)勢贏得了比賽,因此引起了諸多研究人員的關(guān)注,如橋梁的裂縫缺陷檢測[16]、水稻生長過程中的倒伏監(jiān)測[17]和車站的人群流量預(yù)估[18]等。在樣本數(shù)據(jù)相對豐富的條件下,這些改進后的有監(jiān)督Unet 模型都取得了較好的研究成果。
圖1 經(jīng)典Unet 網(wǎng)絡(luò)模型
1.1.2 U型去噪卷積自編碼器模型
在實際驗片工序中,由于完備、平衡的缺陷樣本及其缺陷區(qū)域標記信息難以獲取,因此,色織襯衫裁片缺陷檢測問題無法直接采用有監(jiān)督范式下的 Unet 模型。相反,實際生產(chǎn)中無缺陷樣本非常容易獲取,便于建立無監(jiān)督樣本庫,因此,筆者提出一種無監(jiān)督重構(gòu)修復(fù)模型和殘差計算缺陷檢測算法。首先利用大規(guī)模無缺陷樣本訓(xùn)練重構(gòu)修復(fù)模型,其次計算待測樣本及其重構(gòu)的殘差圖像以實現(xiàn)色織襯衫裁片的缺陷檢測。為了完成重構(gòu)修復(fù)工作,該實驗提出一種U型去噪卷積自編碼器模型(U-shaped Denoising Convolutional Auto-Encoder,UDCAE)。
圖2為U型去噪卷積自編碼器模型網(wǎng)絡(luò)結(jié)構(gòu)示意圖,其輸入為三通道的無缺陷色織襯衫裁片彩色圖像,在疊加了高斯噪聲后進入隱藏層,隱藏層采用對稱性深度U型卷積、反卷積網(wǎng)絡(luò)結(jié)構(gòu);其輸出層為與輸入層尺寸相同的三通道圖像結(jié)構(gòu),損失函數(shù)采用L1損失函數(shù)。該模型在進行深度卷積編碼時采用邊界補零填充方式,可以保證在短路跳接操作時網(wǎng)絡(luò)層的輸入、輸出數(shù)據(jù)維度一致,無須經(jīng)典U型網(wǎng)絡(luò)結(jié)構(gòu)中的維度裁剪操作。
圖2 U 型去噪卷積自編碼器(UDCAE)網(wǎng)絡(luò)結(jié)構(gòu)
U型去噪卷積自編碼器模型訓(xùn)練時,模型輸入為疊加了高斯噪聲的無缺陷色織襯衫裁片圖像,輸出為重構(gòu)的色織襯衫裁片圖像。以逐漸降低輸入圖像和重構(gòu)圖像損失函數(shù)數(shù)值為目標,利用 Adam 優(yōu)化器迭代調(diào)整模型參數(shù),直至重構(gòu)圖像和輸入圖像的像素差異最小化,如圖3所示。
圖3 UDCAE 模型訓(xùn)練示意圖
實驗具體的訓(xùn)練步驟如下:
(1) 對輸入的色織襯衫裁片圖像疊加高斯噪聲:
(1)
(2) 對被高斯噪聲損壞后的圖像進行壓縮編碼:
(2)
其中,z為卷積編碼輸出,W和b分別為編碼網(wǎng)絡(luò)的權(quán)重和偏置,‘°’為卷積編碼過程,R(·) 為修正線性單元(Rectified Linear Unit,ReLU)激活函數(shù):
R(x)=max(0,x)。
(3)
(3) 對U型去噪卷積自編碼器模型編碼后的圖像進行解碼操作:
(4)
該模型訓(xùn)練過程中的損失函數(shù)為L1損失函數(shù):
(5)
U型去噪卷積自編碼器模型訓(xùn)練成功后即可用于色織襯衫裁片的缺陷檢測,其具體流程如圖4所示。缺陷檢測時,輸入為待測色織襯衫裁片圖像;由于訓(xùn)練好的模型可以對輸入圖像進行修復(fù)性重構(gòu),重構(gòu)圖像的輸出是與輸入圖像尺寸相同的三通道彩色圖像。若待測圖像中有缺陷存在,則輸出是對缺陷區(qū)域進行修復(fù)后的重構(gòu)圖像與正常區(qū)域相比,缺陷區(qū)域存在顯著的像素數(shù)值差異,通過殘差分析,能夠檢測、定位出實際缺陷區(qū)域;反之,若待測圖像中沒有缺陷,則輸出的重構(gòu)圖與待測原圖間的差異為隨機噪聲。
圖4 UDCAE 缺陷檢測示意圖
實驗具體的檢測步驟如下:
(1) 將U型去噪卷積自編碼器模型輸入的待測原圖和輸出重構(gòu)圖分別進行灰度化?;叶然僮鳛?/p>
Xgray=0.2125Xr+0.7154Xg+0.0721Xb,
(6)
其中,Xr、Xg、Xb分別為待測樣本對應(yīng)R、G、B這3個不同顏色通道下的像素值;Xgray為灰度化后的圖像,灰度化后的圖像像素值范圍從0到255。
(2) 對色織襯衫裁片灰度化圖像進行高斯濾波,通過采用3×3像素的高斯核對織物圖像進行滑窗卷積操作實現(xiàn)。G(x,y)可表示為
G(x,y)=[1/(2πσxσy)]·exp{-[(x2+y2)/(2σxσy)]} ,
(7)
其中,(x,y)為色織襯衫裁片圖像的像素坐標,σx為該圖像x軸方向的像素標準差;σy為該圖像y軸方向的像素標準差。濾波時使用該高斯核對織物圖像進行滑窗卷積操作:
Xgray+Gaussian=Xgray*G(x,y),
(8)
其中,Xgray+Gaussian為色織襯衫裁片圖像經(jīng)過灰度化和高斯濾波后的圖像,‘*’為卷積操作。
(3) 計算灰度化、高斯濾波后的原圖及其重構(gòu)圖之間的殘差圖像。即
(9)
(4) 利用自適應(yīng)二值化閾值,對灰度殘差圖進行二值化處理。殘差圖像中難免存在大量的非缺陷區(qū)域,分布著離散且數(shù)值較小的隨機噪聲,為了提高檢測結(jié)果中缺陷區(qū)域的準確性,需要將這些隨機噪聲濾除。自適應(yīng)二值化閾值可表示為
T=μ+σ,
(10)
其中,T為自適應(yīng)二值化閾值,μ、σ分別為灰度殘差圖的均值、標準差?;叶葰埐顖D的像素數(shù)值若低于該值,則置邏輯0;若大于或等于該值,則置邏輯1。
(5) 對二值殘差圖進行先腐蝕后膨脹的開運算操作,最終得到缺陷檢測結(jié)果。
實驗使用的色織襯衫裁片樣本均來源于某制衣廠。這些裁片利用掃描儀進行圖像采集,整理成分辨率為512×512×3像素的樣本圖像。該實驗建立了數(shù)據(jù)集Ⅰ、數(shù)據(jù)集Ⅱ、數(shù)據(jù)集Ⅲ和數(shù)據(jù)集Ⅳ,共4個色織襯衫花型的裁片圖像數(shù)據(jù)集,用于模型的訓(xùn)練和測試。每個數(shù)據(jù)集內(nèi)均包含兩個部分:用于建模的無缺陷樣本和用于測試的缺陷樣本。其中,數(shù)據(jù)集Ⅰ包含無缺陷樣本188張,缺陷樣本6張;數(shù)據(jù)集Ⅱ包含無缺陷樣本119張,缺陷樣本12張;數(shù)據(jù)集Ⅲ包含無缺陷樣本124張,缺陷樣本12張;數(shù)據(jù)集Ⅳ包含無缺陷樣本489張,缺陷樣本9張。實驗用于建模的無缺陷樣本實例如圖5(a)所示,用于測試的缺陷樣本實例如圖5(b)所示。
(a) 用于建模的4種色織襯衫裁片無缺陷樣本
(b) 用于測試的4種色織襯衫裁片缺陷樣本
實驗采用北京聯(lián)眾集群公司的深度學(xué)習(xí)工作站(型號:LZ540-GR)進行 UDCAE 模型的建模、訓(xùn)練及缺陷檢測實驗。工作站硬件配置:中央處理器為 Intel(R) Core(TM) i7-6850K CPU(1個物理 CPU,12個邏輯CPU,每個CPU核數(shù)為6核,主頻為3.60 GHz);以 NVIDIA GP102為核心的GeForce GTX 1080 Ti顯卡(雙卡,每塊顯卡內(nèi)存為11 GB);內(nèi)存為32 GB。軟件配置:操作系統(tǒng)為 Ubuntu 16.04.6 LTS;以Keras為前端,TensorFlow 為后端的深度學(xué)習(xí)網(wǎng)絡(luò)模型搭建框架,Keras 和 TensorFlow具體版本分別為2.1.3和1.12.0;軟件編程環(huán)境為基于開源 Anaconda 的 Python編程語言環(huán)境。
該實驗對檢測結(jié)果進行了定性、定量分析。定性分析為缺陷檢測區(qū)域的直觀圖示。定量分析采用平均單幀檢測時間、精確率(Precision,P)、召回率(Recall,R)和準確率(ACCuracy,ACC)4種指標進行評價。其中,精確率、召回率和準確率的定義分別為
P=TP/(TP+FP),
(11)
R=TP/(TP+FN),
(12)
AC C=(TP+TN)/(TP+TN+FP+FN),
(13)
其中,TP表示真實缺陷區(qū)域被成功檢出的像素個數(shù);TN表示真實缺陷區(qū)域未被檢出的像素個數(shù);FP表示正常區(qū)域被錯誤檢測為缺陷區(qū)域的像素個數(shù);FN表示正常區(qū)域被成功檢測為正常區(qū)域的像素個數(shù)。
2.4.1 實驗結(jié)果定性分析
首先,U型去噪卷積自編碼器模型的訓(xùn)練階段采用無缺陷色織襯衫裁片數(shù)據(jù)集進行訓(xùn)練;其次,通過調(diào)整迭代次數(shù)使訓(xùn)練好的模型擁有對色織襯衫裁片圖像的重構(gòu)修復(fù)能力;最后,計算待測裁片圖像與重構(gòu)圖像的殘差圖像,通過殘差分析檢測并定位缺陷區(qū)域。該實驗與多尺度卷積去噪自編碼器模型的重構(gòu)、檢測結(jié)果進行了對比,部分缺陷檢測結(jié)果的直觀對比如圖6所示。
由圖6可知,U 型去噪卷積自編碼器模型能夠在準確還原不同花型色織襯衫裁片圖像的基礎(chǔ)上,更好地修復(fù)色織襯衫裁片圖像中的缺陷區(qū)域。通過直觀對比可知,該實驗?zāi)P秃?MSCDAE 模型都具備較好的重構(gòu)修復(fù)能力,但該實驗?zāi)P偷男迯?fù)能力相對較好。從圖6中展示的數(shù)據(jù)集Ⅱ中3個缺陷樣本的重構(gòu)效果來看,U型去噪卷積自編碼器模型修復(fù)效果優(yōu)于MSCDAE模型。
圖6 MSCDAE 和 UDCAE 模型對色織襯衫裁片缺陷圖像重構(gòu)及檢測效果對比
U型去噪卷積自編碼器模型利用訓(xùn)練好的模型對色織襯衫裁片缺陷圖像按照1.3節(jié)的檢測步驟,進行缺陷檢測實驗測試。由圖6的對比實驗得出,該模型能夠準確地檢測出數(shù)據(jù)集Ⅰ中第1個缺陷樣本的缺陷區(qū)域,但MSCDAE模型出現(xiàn)了過檢。對于數(shù)據(jù)集Ⅱ的3個缺陷樣本,MSCDAE模型均出現(xiàn)了嚴重漏檢,而該模型的檢測結(jié)果較準確。對于數(shù)據(jù)集Ⅲ的第3個缺陷樣本,該實驗?zāi)P蜏蚀_地檢測出了該裁片的兩處缺陷區(qū)域,而 MSCDAE模型誤判了1處較小的缺陷區(qū)域。對于數(shù)據(jù)集Ⅳ的第2個缺陷樣本,該實驗?zāi)P驮俅伪萂SCDAE模型更為準確地檢測出了缺陷區(qū)域。因此,從定性分析角度,MSCDAE模型針對色織襯衫裁片缺陷圖像的檢測存在部分過檢、漏檢現(xiàn)象,相比之下,該實驗?zāi)P湍軌蚋_地檢測、定位缺陷,且檢測結(jié)果與真實缺陷更接近。
2.4.2 實驗結(jié)果定量分析
表1為兩種模型針對4種花型色織襯衫裁片數(shù)據(jù)集的缺陷圖像平均檢測耗時的對比。如表1所示,U 型去噪卷積自編碼器模型的缺陷檢測相對于 MSCDAE 模型耗時更少。
表1 MSCDAE 和 UDCAE 模型平均檢測時間對比
表2為兩種模型分別在4個數(shù)據(jù)集上檢測結(jié)果的精確率、召回率和準確率的對比,同時,這3個評價指標的取值范圍均為從0到1,數(shù)值越大,表明檢測結(jié)果越好。
表2 MSCDAE和UDCAE模型檢測結(jié)果在不同評價指標下的對比 %
由表2可知,針對數(shù)據(jù)集Ⅰ、Ⅱ、Ⅲ,該實驗?zāi)P驮诰_率、召回率和準確率3項評價指標下均取得了比MSCDAE模型更高的分數(shù)。其中,采用MSCDAE模型訓(xùn)練并檢測的數(shù)據(jù)集Ⅱ,獲得了較低的召回率分數(shù),因為其檢測結(jié)果存在大量漏檢,而召回率對漏檢懲罰較大。兩種模型針對數(shù)據(jù)集Ⅳ:① 精確率和召回率兩項評價指標下,該模型雖未占絕對優(yōu)勢,但兩個模型獲得的評價指標分數(shù)數(shù)值相差不大,差距不超過2%;② UDCAE模型比 MSCDAE模型的檢測準確率高4%多。由此可以得出,在精確率、召回率和準確率3項評價指標下,U型去噪卷積自編碼器模型比多尺度卷積去噪自編碼器模型的檢測效果更好。
針對有監(jiān)督機器學(xué)習(xí)模型難以解決色織襯衫裁片的缺陷檢測問題,筆者提出一種基于U型去噪卷積自編碼器的無監(jiān)督建模方法與實驗。通過計算待測織物圖像與模型重構(gòu)圖像的殘差,進行數(shù)學(xué)形態(tài)學(xué)分析,實現(xiàn)色織襯衫裁片的缺陷檢測和定位。該方法使用無缺陷樣本建立無監(jiān)督U型去噪卷積自編碼器模型,可有效避開缺陷樣本數(shù)量稀缺、缺陷種類不平衡、人工設(shè)計缺陷特征構(gòu)造成本高且特征泛化能力差等實際問題。同時,該方法的計算效率和檢測精確度均能滿足色織襯衫裁片的驗片工藝需求,為色織襯衫制衣行業(yè)的驗片工藝提供了一種易于工程化的缺陷自動檢測方案。