韓士星,李鵬飛,張銀河
(1.西安工程大學(xué) 電子信息學(xué)院, 陜西 西安710048;2.西安工程大學(xué) 陜西省2011產(chǎn)業(yè)用紡織品協(xié)同創(chuàng)新中心, 陜西 西安710048)
在紡織工業(yè)生產(chǎn)中,大多數(shù)成品的疵點(diǎn)仍然依靠人工進(jìn)行檢測。人工檢測強(qiáng)度大、效率低,檢測準(zhǔn)確率也會(huì)隨之降低[1]。因此,實(shí)現(xiàn)疵點(diǎn)檢測的生產(chǎn)線自動(dòng)化勢在必行。
目前,國內(nèi)在織物疵點(diǎn)檢測方面,景軍鋒研究團(tuán)隊(duì)作了大量的研究工作[2-4]。隨后,景軍鋒等[5]又提出基于Gaussian回代交替方向(ADMG)圖像分解的色織物疵點(diǎn)檢測算法。文獻(xiàn)[6]提出一種基于能量局部二值模式的色織物疵點(diǎn)智能檢測算法,能夠快速有效地識(shí)別色織物疵點(diǎn)。文獻(xiàn)[7]提出一種應(yīng)用雙頻FTP檢測色織物缺陷的方法。文獻(xiàn)[8]提出一種在不依賴于標(biāo)注樣本的條件下,利用無監(jiān)督去噪卷積自編碼器對色織物進(jìn)行疵點(diǎn)檢測和定位。
視覺顯著性檢測是通過模擬人的視覺特點(diǎn)[9], 提取圖像中的顯著區(qū)域。 隨后, 有專家學(xué)者提出不基于任何生物視覺原理的純數(shù)學(xué)計(jì)算方法, 如基于上下文感知的顯著性檢測 (context-aware saliency detection,CA)[10]以及譜殘差顯著性檢測 (saliency detection:a spectral residual approach,SR)[11]。 近年來, 視覺顯著性檢測已經(jīng)廣泛應(yīng)用于高光譜異常點(diǎn)檢測[12]、 聲吶圖像[13]以及木板實(shí)時(shí)分類[14]等領(lǐng)域。
視覺顯著性檢測在紡織品的疵點(diǎn)檢測中也得到應(yīng)用。文獻(xiàn)[15]對圖像進(jìn)行分塊后提取局部紋理及統(tǒng)計(jì)特征,然后使用基于上下文的顯著性算法進(jìn)行計(jì)算,雖然檢測效果較好,但是由于算法迭代冗余,計(jì)算時(shí)間較長,不適應(yīng)工業(yè)生產(chǎn)。本文選取了200幅色織物樣品,其色織物背景只存在一種紋理,主要以彩色格子、彩色條紋、碎花圖案等以一定規(guī)律出現(xiàn)的圖案為主。通過融合局部顯著性模型的方法,生成綜合顯著圖,最后進(jìn)行圖像分割及形態(tài)學(xué)處理,進(jìn)一步完善分割效果。
通過對帶有疵點(diǎn)的織物圖像灰度圖進(jìn)行高斯金字塔變換得到多分辨率的子圖像,計(jì)算其全局顯著性,然后用最近鄰方法進(jìn)行圖像融合。由于小波具有邊緣檢測的效應(yīng),會(huì)使織物紋理背景在邊緣的部分變得顯著,所以使用低通濾波器對其進(jìn)行濾波降低邊緣檢測效應(yīng),得到全局綜合顯著圖。與GBVS[16]方法計(jì)算得到的局部顯著圖進(jìn)行加權(quán)融合得到綜合顯著圖,使用圖像分割及形態(tài)學(xué)操作方法得到最終分割結(jié)果,具體步驟如圖1所示。
尺寸較大的圖像,人們的注意力往往集中于局部;尺寸較小的圖像,人們的注意力往往集中于全局。因此,本文對于多分辨率變換后的小尺寸子圖像計(jì)算全局顯著性,對于原圖的灰度圖則計(jì)算局部顯著性。
有學(xué)者通過使用Beltrami[17-18]方法對圖像進(jìn)行不同程度的平滑,生成多尺度圖像,發(fā)現(xiàn)在不同尺度下的1幅圖像具有不同的顯著性?;诖怂枷?本文試圖通過高斯金字塔變換[19]對原圖生成多分辨率子圖像,分別計(jì)算全局顯著性。如圖2所示。
將原織物疵點(diǎn)圖像(a)(分辨率為256×256)用高斯金字塔方法變換得到分辨率為128×128以及64×64的子圖像,用譜殘差方法計(jì)算全局顯著性,得到圖像(b)、(c)??梢园l(fā)現(xiàn)在不同分辨率下顯著區(qū)域有所不同。
譜殘差模型(SR)[11]能夠在簡單背景下有效檢測出圖像的顯著區(qū)域。其計(jì)算譜殘差模型為
P(f)=L(f)-L(f)Qn(f)
(1)
式中:P(f)為譜殘差;L(f)為原圖像灰度圖的幅值的log譜;Qn(f)為均值濾波器。從模型(1)可知,計(jì)算譜殘差會(huì)減少顯著區(qū)域的信息,導(dǎo)致疵點(diǎn)區(qū)域不夠顯著。因此,本文提出以下方法計(jì)算疵點(diǎn)織物圖像全局顯著性:
1) 將疵點(diǎn)織物圖像灰度化,得到I(x),計(jì)算其幅值A(chǔ)(f)和相位譜X(f):
A(f)=|F[I(x)]|
(2)
X(f)=δ{F[I(x)]}
(3)
式中:F為傅里葉變換;|·|及δ分別為傅里葉變換對應(yīng)的幅值及相位。
2) 通過對A(f)進(jìn)行對數(shù)運(yùn)算可得到圖像f的log譜L(f)。
3) 對L(f)進(jìn)行二維離散小波分解,得到低頻以及高頻分量[20]。在疵點(diǎn)織物圖像中,低頻信息為背景和簡單變化的紋理,高頻信息為疵點(diǎn)信息[21]。對分解得到的高頻分量進(jìn)行大幅衰減,保留原有低頻分量。然后利用二維小波重構(gòu),得到背景紋理的log譜L0(f),即
L0(f)=R[L(f)]
(4)
式中:R為二維離散小波分解及重構(gòu)。小波分解及重構(gòu)具體方法為
(5)
(6)
P(f)=L(f)-L0(f)
(7)
4) 對X(f)及P(f)得到的結(jié)果進(jìn)行傅里葉反變換,得到全局顯著圖S(x),即
S(x)=|F-1[exp{P(f)+iX(f)}]|2
(8)
5) 使用高斯濾波對步驟(4)的結(jié)果進(jìn)行處理,以降低小波變換所帶來較強(qiáng)的邊緣檢測效應(yīng)[22]。
圖3為SR譜殘差法與本文算法的對比。
從圖3可以看出,本文算法應(yīng)用于織物疵點(diǎn)檢測擁有更好的顯著效果,是由于使用SR方法計(jì)算譜殘差時(shí), 對圖案整體進(jìn)行均值濾波, 對應(yīng)地減少了一部分疵點(diǎn)信息。本文提出的方法, 更有針對性地對織物圖像低頻高頻信息進(jìn)行分析。小波的分解重構(gòu)可以在保留低頻信息的同時(shí)大幅減去疵點(diǎn)信息,計(jì)算殘差譜時(shí)就可以得到相對更完整的疵點(diǎn)顯著區(qū)域。
通過上述步驟可以得到不同分辨率的子圖像的全局顯著圖,再使用雙線性插值放大到原圖像大小,然后使用傅里葉變換圖像融合的方法得到不同分辨率的顯著圖,以及全局綜合顯著圖T,即
T=F-1[F(T1)+F(T2)]
(9)
式中:F為傅里葉變換;T1和T2分別為不同分辨率的子圖像。
使用GBVS進(jìn)行局部顯著性檢測,在特征提取時(shí)使用Itti等[8]提出的方法,在計(jì)算特征差異時(shí)使用馬爾科夫鏈得到顯著性值。
輸入大小為256×256 的色織物灰度圖,利用高斯金字塔對其降維下采樣3次,并提取這3幅圖的亮度及方向特征,可得到15幅底層特征圖。分別計(jì)算每一幅圖的激活圖,連接權(quán)值矩陣并歸一化直至馬爾科夫鏈平穩(wěn)分布,最后將方向以及亮度特征的激活圖進(jìn)行疊加得到局部顯著圖。
本文提出的多分辨率全局綜合顯著圖能夠有效保留全局信息,但是會(huì)引入背景紋理信息;GBVS算法能夠有效過濾背景紋理信息及圖案信息,但是會(huì)過度的關(guān)注視覺顯著區(qū)域。對兩者進(jìn)行加權(quán)融合得到的綜合顯著圖,能夠達(dá)到良好分割的效果,如圖4所示。
為了得到有效的瑕疵區(qū)域,對綜合顯著圖使用最大熵法進(jìn)行圖像分割,然后使用形態(tài)學(xué)操作去除孤立小點(diǎn)區(qū)域以及噪聲帶來的影響[23],見圖5。
由圖5可以看出,本文的綜合顯著圖能夠有效識(shí)別缺陷區(qū)域,符合人眼關(guān)注區(qū)域。但有些會(huì)被人眼忽略的細(xì)小噪聲也能被圖像分割算法檢測出來,因此需要形態(tài)學(xué)開閉操作去除噪聲以及誤檢查孤立小區(qū)域的影響。
通過實(shí)驗(yàn)驗(yàn)證算法的有效性。實(shí)驗(yàn)硬件為2.60 GHz的Intel Core(R) i7處理器,軟件編譯環(huán)境為Matlab 2016a。選擇香港溢達(dá)裁片疵點(diǎn)庫的5種帶有不同疵點(diǎn)的共200張彩色格子、彩色條紋、碎花圖案的色織物圖片進(jìn)行實(shí)驗(yàn),其中跳花40幅,污漬38幅,破洞30幅,斷頭疵45幅,打結(jié)47幅。
實(shí)驗(yàn)過程使用4種不同算法對顯著圖進(jìn)行計(jì)算,結(jié)果如圖6所示。圖6第1列為疵點(diǎn)原圖;第2列為方法1,即基于圖論的GBVS算法;第3列為方法2,即純數(shù)學(xué)計(jì)算模型譜殘余法SR;第4列為方法3,即基于上下文感知的CA算法;第5列為方法4,即本文提出的方法;最后一列為本文法進(jìn)行圖像分割及形態(tài)學(xué)處理后的結(jié)果。
分析圖6可知,GBVS算法能有效識(shí)別出疵點(diǎn),但是在紋理復(fù)雜環(huán)境下會(huì)引入大量噪聲;SR算法整體表現(xiàn)不錯(cuò),但是對于背景對比度較大時(shí),會(huì)引入細(xì)小的背景噪聲,難以分割;CA算法會(huì)引入疵點(diǎn)附近的背景紋理,且算法時(shí)間運(yùn)行時(shí)間較長,不適用工業(yè)生產(chǎn)環(huán)境;本文方法通過多分辨率全局及局部顯著性算法,能夠準(zhǔn)確識(shí)別出疵點(diǎn)位置,加權(quán)融合能夠有效過濾掉GBVS方法過度的顯著區(qū)域檢測。
選擇5種類型疵點(diǎn)共200張圖像進(jìn)行對比。定義檢測準(zhǔn)確率
T*=(P/A)×100%
(10)
式中:P為疵點(diǎn)圖片的個(gè)數(shù);A為所選色織物圖片總數(shù)個(gè)數(shù)。
表1為5種不同方法對不同類型疵點(diǎn)的檢測準(zhǔn)確率及檢測時(shí)間。從表1可以看出,本文方法檢測準(zhǔn)確率遠(yuǎn)高于方法1及方法2,略高于方法3,說明在顯著性分析應(yīng)用于色織物疵點(diǎn)檢測中,全局顯著性分析的重要性。當(dāng)顯著區(qū)域附近有復(fù)雜紋理或圖案的時(shí)候,過多的關(guān)注局部顯著性會(huì)引入大量噪聲。方法1雖然能識(shí)別出疵點(diǎn)所在區(qū)域,但是會(huì)引入大量噪聲,只能判斷疵點(diǎn)位置,不能做到對疵點(diǎn)區(qū)域有效的圖像分割;方法2的檢測速率較其他方法快很多,值得繼續(xù)研究改進(jìn),但是遇見背景復(fù)雜的紋理情況時(shí),會(huì)引入大量細(xì)小的噪聲,顯著區(qū)域不明顯;方法3通過對全局及局部顯著性計(jì)算,取得了較好的效果,但是算法時(shí)間較長,無法適應(yīng)工業(yè)生產(chǎn)的需求。本文方法檢測速率尚可,具有良好的魯棒性以及色織物疵點(diǎn)的識(shí)別正確率,能夠滿足部分工業(yè)生產(chǎn)的需求。
表 1 不同方法對不同類型疵點(diǎn)的檢測準(zhǔn)確率及時(shí)間Tab.1 The detection accuracy and time of different types of defects by different methods
通過融合局部顯著性算法,構(gòu)建綜合顯著性模型,能夠識(shí)別色織物疵點(diǎn)。首先通過高斯金字塔變換,將原始圖像灰度圖生成2幅分辨率較小的圖片,對其進(jìn)行全局顯著性檢測;再對原始圖像的灰度圖計(jì)算局部顯著性,通過圖像融合方式得到綜合顯著圖;最后使用最大熵閾值進(jìn)行圖像分割,并通過形態(tài)學(xué)操作去除噪聲及孤立小點(diǎn)的影響。
本文算法對于疵點(diǎn)檢測的正確率相比其他幾種使用較為廣泛的顯著性模型更高,為色織物疵點(diǎn)檢測提供了一定的參考,但是算法運(yùn)行速度尚未達(dá)到在線檢測的要求。后續(xù)研究將致力于提高算法運(yùn)行速度,實(shí)現(xiàn)色織物的疵點(diǎn)在線檢測。