◆李鋒 李文青
(東華大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院上海 201620)
紡織業(yè)作為我國(guó)支柱性產(chǎn)業(yè),具有極其重要的經(jīng)濟(jì)位置,并且具有很強(qiáng)的國(guó)際優(yōu)勢(shì)[1]??椢镌诩徔椀倪^(guò)程中,高效的瑕疵檢測(cè)對(duì)織物的質(zhì)量和生產(chǎn)效率具有極大的影響。目前大部分國(guó)家和企業(yè)仍使用人工驗(yàn)布的方法,具有漏檢率和誤檢率高、勞動(dòng)成本高和生產(chǎn)效率低等問(wèn)題,計(jì)算機(jī)智能瑕疵檢測(cè)逐漸成為國(guó)內(nèi)外學(xué)者研究新熱點(diǎn)。機(jī)織物由相互垂直排列的紗線按一定的規(guī)律交織而成的織物,所以形成的織物在紋理上具有一定的特征,而瑕疵的出現(xiàn)破壞了這種規(guī)律,可以通過(guò)分析瑕疵區(qū)域與正常區(qū)域的特征,尋找到瑕疵圖像與無(wú)瑕疵圖像的特征差異,進(jìn)而能夠在織物圖像中識(shí)別出瑕疵區(qū)域[2-3]??偨Y(jié)現(xiàn)有的特征提取的方法可以分為3 類[4]:基于統(tǒng)計(jì)的[5-6]、基于模型的[7-8]和基于頻譜分析的[9-11]方法?;诮y(tǒng)計(jì)的方法通過(guò)對(duì)圖像的像素灰度值進(jìn)行計(jì)算,獲取能夠表征圖像的統(tǒng)計(jì)量,然后根據(jù)閾值的大小對(duì)圖像進(jìn)行檢測(cè)。例如灰度差分法、灰度共生矩陣等方法?;谀P偷姆椒ㄊ峭ㄟ^(guò)對(duì)圖像的紋理結(jié)構(gòu)進(jìn)行建模,根據(jù)圖像中模型參數(shù)的差異進(jìn)行瑕疵檢測(cè),如馬爾科夫隨機(jī)場(chǎng)通過(guò)圖像之間的馬爾科夫模型的距離來(lái)判斷圖像有無(wú)瑕疵[12]。王剛[13]等人提出的基于奇異值分解的瑕疵檢測(cè)算法通過(guò)奇異矩陣對(duì)圖像進(jìn)行重構(gòu),根據(jù)重構(gòu)誤差進(jìn)行瑕疵判斷?;谀P偷姆椒▽?duì)圖像的整體紋理結(jié)構(gòu)要求比較高,故應(yīng)用性比較低。基于頻譜分析的方法主要是傅里葉變換、Gabor 變換和小波變換等方法。該類方法適應(yīng)性較差,例如傅里葉變換對(duì)局部區(qū)域瑕疵的識(shí)別能力比較差,而且對(duì)噪聲較為敏感。Gabor 變換中各濾波器非正交關(guān)系,存在大量的冗余數(shù)據(jù),不能較好地描述圖像的局部結(jié)構(gòu)信息。
瑕疵檢測(cè)算法的重點(diǎn)是通過(guò)計(jì)算織物標(biāo)準(zhǔn)模板圖像與待檢測(cè)圖像的特征差異,來(lái)判斷待檢測(cè)圖像是否存在瑕疵。這里的特征可以是圖像的灰度特征,也可以是圖像的紋理特征。針對(duì)待檢區(qū)域的特征值與模板的特征值差值比較大,且面積比較大的瑕疵,很多瑕疵算法檢測(cè)效果表現(xiàn)良好。但有些瑕疵例如小洞、油污、接頭、異物植入等瑕疵,這些瑕疵點(diǎn)與模板的特征值差異大,但是瑕疵的面積比較??;還有些瑕疵其特征值差異小,但是瑕疵具有一定的連續(xù)性和密集型,例如缺經(jīng)、缺緯、雙經(jīng)緯、斷緯等瑕疵,瑕疵區(qū)域的特征差與正常區(qū)域的特征差相差較小,但是瑕疵區(qū)域面積比較大。針對(duì)以上這些情況,如果不考慮瑕疵的形態(tài)和分布,僅僅是基于圖像特征差異進(jìn)行處理,是很容易將瑕疵區(qū)域誤識(shí)別為圖像采集過(guò)程中的噪聲干擾。為此本文提出了一種基于體積特征的織物瑕疵檢測(cè)方法,將待檢測(cè)區(qū)域的特征差值之和作為其體積特征,相對(duì)于面積比較小,特征差異較大,或者瑕疵特征差較小但是面積比較大的待檢測(cè)區(qū)域,通過(guò)體積特征進(jìn)行檢測(cè),能夠較好地識(shí)別出瑕疵區(qū)域。
機(jī)織物是由經(jīng)緯紗通過(guò)特定的編織規(guī)律織造形成,所形成的織物是具有獨(dú)特的紋理特征和灰度特征,而瑕疵的出現(xiàn)破壞了織物的特征,造成了與標(biāo)準(zhǔn)模板圖像的特征差異,然而不同的瑕疵造成的特征差異是不同的。如圖1~4 所示的模板圖像、瑕疵圖像以及兩者之間的特征差異三維圖像,從圖1 和圖2 的破洞,油污瑕疵特征差異圖,我們可以看出,瑕疵面積比較小,但是瑕疵比較明顯,瑕疵區(qū)域特征差遠(yuǎn)遠(yuǎn)高于正常紋理區(qū)域的特征差;從圖3 和圖4 的缺緯,缺經(jīng)瑕疵特征差異圖,可以看出瑕疵區(qū)域特征差與正常紋理區(qū)域的特征差相差不大,但是瑕疵區(qū)域的面積比較大。因此,本文結(jié)合了瑕疵區(qū)域的面積以及特征差異兩個(gè)方面來(lái)提取待檢測(cè)區(qū)域的特征以實(shí)現(xiàn)瑕疵檢測(cè)。
本文提出的基于體積特征的瑕疵檢測(cè)算法的流程圖如圖5 所示。在對(duì)織物圖像與模板圖像進(jìn)行特征提取,獲得特征差圖像,再經(jīng)過(guò)二值化和形態(tài)學(xué)處理后,輸出的二值圖像中的區(qū)域可能是瑕疵區(qū)域也可能是干擾區(qū)域。根據(jù)前面分析我們可知,與瑕疵區(qū)域相比較,干擾區(qū)域的噪聲明顯程度沒(méi)有油污和破洞這些瑕疵強(qiáng),如果僅僅依靠干擾區(qū)域與瑕疵區(qū)域像素灰度的差異來(lái)區(qū)分瑕疵區(qū)域是不行的,因?yàn)橛袝r(shí)候像缺經(jīng)和缺緯這樣的瑕疵,其瑕疵區(qū)域的像素灰度會(huì)和干擾區(qū)域的像素灰度相差不大,但是缺經(jīng)和缺緯這類的瑕疵區(qū)域面積比較大,而噪點(diǎn)產(chǎn)生的干擾區(qū)域面積比較小,故本文提出的基于體積特征的瑕疵檢測(cè)算法,結(jié)合了特征差異以及區(qū)域面積大小兩個(gè)因素,通過(guò)待檢測(cè)區(qū)域的特征差之和的大小來(lái)識(shí)別瑕疵和噪聲干擾,進(jìn)而達(dá)到瑕疵檢測(cè)的目的。
公式(1)為特征差計(jì)算公式,式(1)中F(x,y)和G(x,y)分別為標(biāo)準(zhǔn)圖像與待檢測(cè)圖像的灰度值,g(x,y)為差值圖像。再根據(jù)如公式(2)對(duì)特征差圖像g(x,y)進(jìn)行二值化操作,式中T為閾值。為了去除圖像中的噪點(diǎn),對(duì)圖像進(jìn)行了形態(tài)學(xué)處理,得到圖像經(jīng)過(guò)二值化,形態(tài)學(xué)處理得到的二值圖像中,包含的待檢測(cè)區(qū)域可能是瑕疵區(qū)域,也可能是噪點(diǎn)干擾區(qū)域,為了進(jìn)一步提取區(qū)域的體積特征,需要獲得區(qū)域的灰度像素集合。每一個(gè)區(qū)域內(nèi)的像素具有連通性,通過(guò)連通區(qū)域提取算法可以獲得待檢測(cè)區(qū)域的特征差像素集合,常見(jiàn)的連通區(qū)域提取算法有種子填充和掃描線填充算法等[14],本文使用種子填充算法[15],像素鄰域采用的是8-鄰域,這樣能夠盡可能標(biāo)識(shí)出瑕疵區(qū)域的像素集合。
圖1 破洞瑕疵特征差異圖
圖2 油污瑕疵特征差三維圖
圖3 缺緯瑕疵特征差三維圖
圖4 缺經(jīng)瑕疵特征差三維圖
圖5 算法框圖
待檢測(cè)圖像經(jīng)過(guò)算法處理轉(zhuǎn)換為二值圖像,通過(guò)連通區(qū)域提取算法標(biāo)記待檢測(cè)區(qū)域,獲得區(qū)域的像素集合。圖像g′(x,y)與特征差圖像g(x,y)在像素位置上是一一對(duì)應(yīng)的,根據(jù)待檢測(cè)區(qū)域的像素集合在特征差圖像中可以得到特征差像素集合。假設(shè)圖像g′(x,y)經(jīng)過(guò)連通區(qū)域提取算法共標(biāo)記出n個(gè)連通的待檢測(cè)區(qū)域,其中第i個(gè)待檢測(cè)區(qū)域用ci表示。通過(guò)公式(3)將待檢測(cè)區(qū)域內(nèi)mi像素的特征差值累加求和,結(jié)果即為該待檢測(cè)區(qū)域的體積特征值。
通過(guò)公式(4),逐一將待檢測(cè)區(qū)域ci的體積特征值vi與閾值V進(jìn)行比較。如果待檢測(cè)區(qū)域的體積特征vi大于閾值V,說(shuō)明該待檢測(cè)區(qū)域與正常紋理區(qū)域相比特征異常,判斷ci為瑕疵區(qū)域,將待檢測(cè)區(qū)域內(nèi)的像素值標(biāo)記為前景像素值;如果待檢測(cè)區(qū)域的體積特征小于或者等于閾值V,說(shuō)明該待檢測(cè)區(qū)域特征比較正常,則ci為噪聲,將區(qū)域內(nèi)的像素值標(biāo)記為背景像素值,算法最后通過(guò)輸出的二值圖像是否有疵點(diǎn)來(lái)判定待檢測(cè)圖像是否為瑕疵圖像。
式中255 為二值圖像的前景像素值,0 為二值圖像的背景像素值。
在上述算法中,閾值V的大小對(duì)瑕疵檢測(cè)的效果具有較大的影響,如果V過(guò)大,將會(huì)漏檢真正的瑕疵區(qū)域,如果閾值過(guò)小,又不能很好地將干擾去除,所以準(zhǔn)確計(jì)算閾值V是至關(guān)重要的。
正常情況下,對(duì)無(wú)瑕疵圖像,灰度特征應(yīng)當(dāng)是具有區(qū)域規(guī)律性,而實(shí)際上圖像在采集的過(guò)程中會(huì)引入噪聲,造成圖像的局部灰度特征發(fā)生變化。為了使得閾值V具有一定的適應(yīng)性,進(jìn)而提高算法的科學(xué)性,本文將根據(jù)無(wú)瑕疵圖像噪點(diǎn)干擾區(qū)域的灰度特征計(jì)算閾值V,具體步驟如下。
(1)首先動(dòng)態(tài)隨機(jī)采集多幅無(wú)瑕疵圖像作為訓(xùn)練圖像,將標(biāo)準(zhǔn)模板圖像與每幅訓(xùn)練圖像分別進(jìn)行灰度特征匹配,獲得特征差圖像,然后根據(jù)本文算法流程最終獲得訓(xùn)練圖像的體積特征。
(2)此時(shí)訓(xùn)練圖像的體積特征表示為噪聲干擾區(qū)域的特征,為了能夠更好地區(qū)分瑕疵和噪聲,本文提取每幅圖像體積特征的最大值,然后計(jì)算其平均值作為本文瑕疵算法中的體積閾值。
為了驗(yàn)證本文算法的有效性,選取了含有破洞、油污、缺經(jīng)、缺緯、接頭5 種瑕疵類型,每種瑕疵類型50 幅圖像,圖像分辨率為256*256。在對(duì)算法檢測(cè)效果進(jìn)行評(píng)估中,瑕疵區(qū)域標(biāo)記為1,無(wú)瑕疵區(qū)域標(biāo)記為0,對(duì)專家標(biāo)記瑕疵圖像和算法輸出圖像進(jìn)行對(duì)比。專家標(biāo)記瑕疵圖像與算法輸出圖像均為1 的部分為真陽(yáng)性(TP),均為0 的部分為真陰性(TN),算法輸出圖像標(biāo)記為1,瑕疵圖像專家標(biāo)記為0 的部分為假陽(yáng)性(FP),反之為假陰性(FN)。本文實(shí)驗(yàn)中使用的評(píng)價(jià)指標(biāo)有準(zhǔn)確率(ACC)、真陽(yáng)性率(TP)、偽陽(yáng)性率(FPR)、陽(yáng)性預(yù)測(cè)值(PPV)、陰性預(yù)測(cè)值(NPV),各項(xiàng)指標(biāo)定義如下:
如圖6 表示出織物圖像集中5 種瑕疵類型的待測(cè)瑕疵圖像、灰度特征差圖像、特征差圖的二值化圖、形態(tài)學(xué)處理結(jié)果圖以及本文算法檢測(cè)結(jié)果圖。從圖6(b)的特征差圖像可以看出,瑕疵點(diǎn)區(qū)域與正常紋理區(qū)域的灰度對(duì)比度得到明顯增強(qiáng),說(shuō)明灰度特征能夠很好地區(qū)分瑕疵區(qū)域與正常紋理區(qū)域。由圖6(c)~(d)示,經(jīng)過(guò)二值化以及形態(tài)學(xué)操作,對(duì)待檢測(cè)區(qū)域進(jìn)行膨脹填充,增強(qiáng)了圖像中待檢測(cè)區(qū)域的紋理結(jié)構(gòu),同時(shí)去掉了幾何面積比較小的待檢測(cè)區(qū)域。計(jì)算待檢測(cè)區(qū)域的體積特征,根據(jù)體積特征進(jìn)行瑕疵識(shí)別的結(jié)果圖如圖6(e)所示,從算法輸出的圖像中可以看出,通過(guò)體積特征對(duì)待檢測(cè)區(qū)域進(jìn)行閾值分割,較好的區(qū)分出瑕疵區(qū)域和噪聲,同時(shí)能夠很好地保留瑕疵區(qū)域的位置和形狀。
圖6 本文算法瑕疵檢測(cè)流程結(jié)果圖
織物圖像集的實(shí)驗(yàn)測(cè)試結(jié)果量化結(jié)果如表1 所示,在評(píng)價(jià)指標(biāo)中,對(duì)于TPR,PPV 和NPV 數(shù)值越大越好,F(xiàn)PR 數(shù)值越小越好。從表1中的統(tǒng)計(jì)結(jié)果可以看出,本文算法的ACC 均在94.5% 之上,TPR平均值在97% 左右,F(xiàn)PR 平均值為3.8%,PPV 平均值72.3%,NPV均在98.9% 以上。由圖6 的本文算法檢測(cè)流程結(jié)果圖和表1 的統(tǒng)計(jì)數(shù)據(jù)可知,本文算法對(duì)織物圖像測(cè)試集中的瑕疵檢測(cè)效果較好。
為了進(jìn)一步檢驗(yàn)本文提出的瑕疵算法的檢測(cè)效果,這里將本文提出的算法與基于直方圖特征的瑕疵檢測(cè)算法進(jìn)行了對(duì)比。兩種算法對(duì)不同瑕疵的檢測(cè)效果,如圖7 所示。圖7(a)為瑕疵樣本圖像,圖7(b)是本文提出的算法對(duì)瑕疵圖像的檢測(cè)結(jié)果,圖7(c)是直方圖特征算法對(duì)瑕疵圖像的檢測(cè)結(jié)果。由圖7 可知,兩種算法都檢測(cè)到了瑕疵,同時(shí)將瑕疵從圖像背景中分割了出來(lái),但是從整體的瑕疵檢測(cè)效果來(lái)看,基于直方圖特征的瑕疵檢測(cè)算法對(duì)瑕疵造成了削弱,不能完整的檢測(cè)出瑕疵的形狀和位置,而本文提出的算法能夠較好地消除背景紋理和噪聲的影響,特別是針對(duì)具有密集型和連續(xù)性且特征不是很明顯的瑕疵,能更加準(zhǔn)確的檢測(cè)出瑕疵的位置和形狀。
在對(duì)比實(shí)驗(yàn)中,對(duì)100 幅樣本圖像集進(jìn)行瑕疵檢測(cè),包含40 幅無(wú)瑕疵樣本圖像,60 幅不同瑕疵樣本圖像,其中瑕疵樣本圖像中包含20 幅瑕疵特征比較明顯,但是面積比較?。ㄒ韵掠谩疤卣鱝”表示)的樣本圖像,20 幅瑕疵特征不明顯,但具有一定的密集型和連續(xù)性(以下用“特征b”表示)的樣本圖像,另外20 幅圖像瑕疵特征明顯,且面積比較大。然后使用本文提出的算法和直方圖特征算法分別對(duì)樣本圖像集進(jìn)行瑕疵檢測(cè),檢測(cè)統(tǒng)計(jì)結(jié)果如表3 所示。表2 中將圖像瑕疵類型分為點(diǎn)狀瑕疵、條狀瑕疵和網(wǎng)狀瑕疵,同時(shí)統(tǒng)計(jì)了兩種算法對(duì)“特征a”和“特征b”瑕疵樣本圖像的檢測(cè)效果,結(jié)果如表3 所示。從表2 中可以看出,本文算法的TPR 以及FPR 高于直方圖特征算法,主要是因?yàn)楸疚乃惴ú捎玫拈撝礦 較大,經(jīng)過(guò)腐蝕、膨脹操作,待檢測(cè)區(qū)域的面積增大,造成其周圍的無(wú)瑕疵區(qū)域被檢測(cè)成瑕疵區(qū)域。從表3 可以看出,本文提出的算法對(duì)“特征a”和“特征b”瑕疵具有很好的檢測(cè)效果,直方圖特征算法對(duì)“特征a”和“特征b”瑕疵具有一定的檢測(cè)率,但是其算法只能檢測(cè)出瑕疵的部分紋理,大大削弱了瑕疵的形狀和瑕疵的定位。整體對(duì)比實(shí)驗(yàn)表明,本文提出的算法可以很好地消除噪聲的干擾,對(duì)整體瑕疵的檢測(cè)效果更為準(zhǔn)確。
圖7 本文算法與直方圖算法瑕疵檢測(cè)效果圖
表1 本文算法對(duì)5 種瑕疵圖像檢測(cè)結(jié)果統(tǒng)計(jì)
表2 本文算法與直方圖算法瑕疵檢測(cè)效果統(tǒng)計(jì)
網(wǎng)狀99.35 99.23 1.38 76.81 99.26 本文算法96.67 78.52 0.52 78.67 94.96 直方圖算法
表3 本文算法與直方圖算法對(duì)“特征a”與“特征b”瑕疵檢測(cè)效果統(tǒng)計(jì)
本文提出的基于體積特征的織物瑕疵檢測(cè)方法,通過(guò)計(jì)算待檢測(cè)區(qū)域的灰度特征差之和,作為區(qū)域的體積特征用于瑕疵判定,既考慮了灰度特征差異,又考慮了瑕疵分布特征,能夠充分識(shí)別瑕疵。實(shí)驗(yàn)結(jié)果表明,本文算法能夠更好地去除環(huán)境干擾,同時(shí)提取不同尺寸形狀的瑕疵,準(zhǔn)確率高達(dá)96.5% 以上;特別是針對(duì)“特征a”以及“特征b”類型瑕疵,本文算法能夠完整地檢測(cè)到瑕疵大小以及位置。在之后的瑕疵算法研究過(guò)程中,還需對(duì)織物圖像的紋理類型、瑕疵種類等方面進(jìn)行深入探討,以測(cè)試本文算法在各種不同類型織物下的適應(yīng)性。
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2020年7期