一種基于奇異值分解的織物瑕疵檢測方法
【專利摘要】本發(fā)明涉及一種基于奇異值分解的織物瑕疵檢測方法。在訓練階段中,首先將無瑕疵織物圖像有重疊地劃分成正方形子窗口;然后將所得子窗口分別沿縱橫方向投影,得到聯(lián)合投影序列;最后對聯(lián)合投影序列所組成的矩陣實施奇異值分解,提取基向量;在檢測階段中,首先將待檢測織物圖像無重疊地分割劃分成正方形子窗口;同時將子窗口沿縱橫方向的投影,得到聯(lián)合投影序列;最后應(yīng)用基向量對所得的聯(lián)合投影序列進行重構(gòu),并通過重構(gòu)誤差來判定子窗口是否包含瑕疵。本發(fā)明充分利用的織物紋理及瑕疵的經(jīng)緯取向特征,通過對縱橫方向投影所得序列進行分析,不僅大大降低了方法的復雜性,而且對不同織物紋理和瑕疵類型有較強的適應(yīng)性,尤其是對線性瑕疵。
【專利說明】一種基于奇異值分解的織物瑕疵檢測方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬圖像分析處理領(lǐng)域,本發(fā)明涉及一種基于奇異值分解的織物瑕疵檢測方法,應(yīng)用于紡織品表面質(zhì)量自動檢測與控制領(lǐng)域。 【背景技術(shù)】
[0002]設(shè)矩陣A是mX η的矩陣,奇異值分解(SVD)可以把矩陣A分解成U,Σ和V三個矩陣。其中矩陣U是mXn的正交矩陣,矩陣V是ηΧη的正交矩陣,矩陣Σ是mXn的矩陣,其對角線以外的元素全部為零,即矩陣2=diag(o η σ2,…,or)為對角矩陣,r為矩陣A的秩,0l,O2,..., \為A矩陣的奇異值。矩陣U和V分別稱為左奇異矩陣和右奇異矩陣,矩陣Σ的對角線上的元素依次呈遞減順序,即:σ i≥σ 2 ? Or^O0
[0003]將矩陣Σ的對角元素設(shè)定為01;+1=01;+2=*" = (^=0,得到矩陣六在秩1^〈1.)下的重構(gòu)3,其重構(gòu)誤差使用Frobenius范數(shù)可表述為:
^ 2 r
[0004]A-A = YjO21
i=k+l
[0005]由上式可以看出,通過奇異值分解得到的i是A矩陣的最優(yōu)低秩下的重構(gòu)。在圖像分析領(lǐng)域,奇異值分解主要用于圖像的壓縮、重構(gòu)和恢復等。
[0006]在織物瑕疵檢測領(lǐng)域,Tomczak和Mosorov (2006)米用經(jīng)SVD分解后所得的最大的奇異值進行織物瑕疵檢測。Chen和Feng (2010)提取了奇異值均值作為特征進行瑕疵判另O。Mak和(2010)對織物樣本實施SVD,提取左奇異矩陣每列作為特征子圖像,并通過將待檢測圖像樣本投影到特征子圖像,計算所得的投影值的平方和作為瑕疵判別指標。
[0007]值得注意的是,以上研究者均是直接在原織物圖像上進行SVD,然后提取相應(yīng)特征進行瑕疵檢測,并沒有對原圖像進行投影操作且并未充分利用SVD的低秩重構(gòu)性質(zhì)。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的就是克服現(xiàn)有算法的不足,提高算法的對不同紋理和瑕疵適應(yīng)性和實時性,提出了一種基于奇異值分解的織物瑕疵檢測方法。
[0009]本發(fā)明的一種基于奇異值分解的織物瑕疵檢測方法包括以下步驟:
[0010](I)訓練階段;
[0011]將無瑕疵織物圖像有重疊地劃分成正方形子窗口,并將子窗口分別沿縱橫方向投影,得到聯(lián)合投影序列;將所得的聯(lián)合投影序列組成一個矩陣,對該矩陣實施奇異值分解,提取基向量;
[0012](2)檢測階段;
[0013]將待檢測織物圖像連續(xù)無重疊地分割劃分成正方形子窗口,并將子窗口沿縱橫方向的投影,得到聯(lián)合投影序列I;應(yīng)用(I)中所得的基向量的對y進行重構(gòu),得到y(tǒng)的重構(gòu)
3);計算重構(gòu)誤差五二 IHI2 ,并通過重構(gòu)誤差來判定子窗口是否包含瑕疵;[0014]具體實現(xiàn)如下:
[0015]在訓練階段,將所述的無瑕疵織物圖像有重疊地劃分成大小為wXw的正方形子窗口,其中8像素< w < 64像素;所述有重疊地劃分是指在同一行中,后一個子窗口是前一個子窗口橫向平移步長sw得到,I < sw〈w;相鄰子窗口之間有重疊部分,所述重疊部分的橫向長度為W-Sw,在相鄰行中,下一行的子窗口是上一行的子窗口縱向平移步長Sh得到,相鄰子窗口之間有重疊部分,所述重疊部分的縱向長度為W-Sh,其中I ( sh〈w ;
[0016]將子窗口分別沿縱橫方向投影,即計算子窗口中每列和每行的所有像素點灰度值的平均值,得到兩個投影序列;然后,將所得的兩個投影序列相接后得到聯(lián)合投影序列;
[0017]將所有子窗口對應(yīng)的聯(lián)合投影序列作為矩陣的列排列為一個矩陣,并對所得的矩陣實施奇異值分解;提取左奇異矩陣的前k列作為基向量D,即D=W1, d2,…,dk],其中(I1, d2,…,dk為左奇異矩陣的前I到k列的列向量,且有4 < k < 16 ;
[0018]在檢測階段,將待檢測圖像連續(xù)無重疊地劃分成大小為wXw的正方形子窗口,其中8像素< w ( 64像素;然后,按照訓練階段的方法,將子窗口分別沿縱橫向投影,得到聯(lián)合投影序列;應(yīng)用所述基向量對檢測階段所得的聯(lián)合投影序列進行重構(gòu),并通過計算其所得的重構(gòu)誤差E來判定子窗口是否包含瑕疵。
[0019]作為優(yōu)選的技術(shù)方案:
[0020]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的織物為位深度為8位的灰度圖像。
[0021]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的重構(gòu)是指在最小平方誤差下所得的重構(gòu)。
[0022]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的通過重構(gòu)誤差來判定子窗口是否包含瑕疵是指當重構(gòu)誤差超過預先設(shè)定的閾值則認為子窗口包含瑕疵;閾值的確定:首先對無瑕疵織物進行測試,得到其重構(gòu)誤差E的累計分布函數(shù),然后選取對應(yīng)于其累計分布函數(shù)95%的重構(gòu)誤差值作為閾值。
[0023]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的聯(lián)合投影序列,是指將沿縱橫方向投影所得的兩個投影序列,一個在前,另一個在后或一個在后,另一個在前以首尾相接的方式所得的序列。
[0024]有益效果:
[0025]1、本發(fā)明通過實施縱橫方向投影得到聯(lián)合序列的預處理方法,大大降低了方法的計算復雜性,提高了方法的實時性;
[0026]2、本發(fā)明的方法對光照不勻不敏感,魯棒性較好;
[0027]3、方法對不同織物紋理和瑕疵類型有較強的適應(yīng)性,尤其是對線性瑕疵。
【專利附圖】
【附圖說明】
[0028]圖1w X w的窗口的劃分
[0029]圖2橫向重疊窗口的劃分
[0030]圖3縱向重疊窗口的劃分
[0031]圖4本發(fā)明所用瑕疵試驗圖像
[0032]圖5對試驗圖像圖4的最終檢測結(jié)果[0033]圖6本發(fā)明所用瑕疵試驗圖像
[0034]圖7對試驗圖像圖6的最終檢測結(jié)果
【具體實施方式】
[0035]下面結(jié)合【具體實施方式】,進一步闡述本發(fā)明。應(yīng)理解,這些實施例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍。此外應(yīng)理解,在閱讀了本發(fā)明講授的內(nèi)容之后,本領(lǐng)域技術(shù)人員可以對本發(fā)明作各種改動或修改,這些等價形式同樣落于本申請所附權(quán)利要求書所限定的范圍。
[0036]本發(fā)明的一種基于奇異值分解的織物瑕疵檢測方法包括以下步驟:
[0037](I)訓練階段;
[0038]將無瑕疵織物圖像有重疊地劃分成正方形子窗口,并將子窗口分別沿縱橫方向投影,得到聯(lián)合投影序列;將所得的聯(lián)合投影序列組成一個矩陣,對該矩陣實施奇異值分解,提取基向量;
[0039](2)檢測階段;
[0040]將待檢測織物圖像連續(xù)無重疊地分割劃分成正方形子窗口,并將子窗口沿縱橫方向的投影,得到聯(lián)合投影序列I;應(yīng)用(I)中所得的基向量的對y進行重構(gòu),得到I的重構(gòu)
j);計算重構(gòu)誤差£ = IHI2 ,并通過重構(gòu)誤差來判定子窗口是否包含瑕疵;
[0041]具體實現(xiàn)如下:
[0042]在訓練階段,將所述的無瑕疵織物圖像有重疊地劃分成大小為wXw的正方形子窗口,其中8像素< w < 64像素;所述有重疊地劃分是指在同一行中,后一個子窗口是前一個子窗口橫向平移步長sw得到,I < sw〈w;相鄰子窗口之間有重疊部分,所述重疊部分的橫向長度為W-Sw,在相鄰行中,下一行的子窗口是上一行的子窗口縱向平移步長Sh得到,相鄰子窗口之間有重疊部分,所述重疊部分的縱向長度為W-Sh,其中I ( sh〈w ;
[0043]將子窗口分別沿縱橫方向投影,即計算子窗口中每列和每行的所有像素點灰度值的平均值,得到兩個投影序列;然后,將所得的兩個投影序列相接后得到聯(lián)合投影序列;
[0044]將所有子窗口對應(yīng)的聯(lián)合投影序列作為矩陣的列排列為一個矩陣,并對所得的矩陣實施奇異值分解;提取左奇異矩陣的前k列作為基向量D,即D=W1, d2,…,dk],其中(I1, d2,…,dk為左奇異矩陣的前I到k列的列向量,且有4 < k < 16 ;
[0045]在檢測階段,將待檢測圖像連續(xù)無重疊地劃分成大小為wXw的正方形子窗口,其中8像素< w ( 64像素;然后,按照訓練階段的方法,將子窗口分別沿縱橫向投影,得到聯(lián)合投影序列;應(yīng)用所述基向量對檢測階段所得的聯(lián)合投影序列進行重構(gòu),并通過計算其所得的重構(gòu)誤差E來判定子窗口是否包含瑕疵。
[0046]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的織物為位深度為8位的灰度圖像。
[0047]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的重構(gòu)是指在最小平方誤差下所得的重構(gòu)。
[0048]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的通過重構(gòu)誤差來判定子窗口是否包含瑕疵是 指當重構(gòu)誤差超過預先設(shè)定的閾值則認為子窗口包含瑕疵;閾值的確定:首先對無瑕疵織物進行測試,得到其重構(gòu)誤差E的累計分布函數(shù),然后選取對應(yīng)于其累計分布函數(shù)95%的重構(gòu)誤差值作為閾值。
[0049]如上所述的一種基于奇異值分解的織物瑕疵檢測方法,所述的聯(lián)合投影序列,是指將沿縱橫方向投影所得的兩個投影序列,一個在前另一個在后或一個在后另一個在前以首尾相接的方式所得的序列。
[0050]實施例1
[0051]訓練階段:
[0052](I)將無瑕疵織物圖像有重疊地劃分成大小為32X32 (像素)的正方形子窗口,橫向步長為8像素,縱向平移步長為16像素,其子窗口劃分示意圖,如圖1、圖2和圖3所示;
[0053](2)將子窗口分別沿縱橫方向投影,即計算子窗口中每列和每行的所有像素點灰度值的平均值,得到兩個投影序列;然后,將所得的兩個投影序列相接后得到聯(lián)合投影序列;
[0054](3)將所有子窗口對應(yīng)的聯(lián)合投影序列作為矩陣的列排列為一個矩陣,并對所得的矩陣實施奇異值分解;提取左奇異矩陣的前8列作為基向量D。
[0055]閾值的確定:首先對無瑕疵織物進行測試,得到其重構(gòu)誤差E的累計分布函數(shù),然后選取對應(yīng)于其累計分布函數(shù)為95%時的重構(gòu)誤差值作為閾值,所用閾值為37。
[0056]檢測階段
[0057](I)將待檢測圖像,如圖4所示,連續(xù)無重疊地劃分成大小為32X32 (像素)的正方形子窗口;
[0058](2)按照訓練階段的方法,將子窗口分別沿縱橫向投影,得到聯(lián)合投影序列;
[0059](3)應(yīng)用所述基向量對檢測階段所得的聯(lián)合投影序列進行重構(gòu),并通過計算其所得的重構(gòu)誤差E來判定子窗口是否包含瑕疵,實際檢測結(jié)果如圖5所示,其中黑色方框表示被判定為包含瑕疵的子窗口。
[0060]實施例2
[0061]訓練階段:
[0062](I)將無瑕疵織物圖像有重疊地劃分成大小為32X32 (像素)的正方形子窗口,橫向步長為16像素,縱向平移步長為8像素,其子窗口劃分示意圖,如圖1、圖2和圖3所示;
[0063](2)將子窗口分別沿縱橫方向投影,即計算子窗口中每列和每行的所有像素點灰度值的平均值,得到兩個投影序列;然后,將所得的兩個投影序列相接后得到聯(lián)合投影序列;
[0064](3)將所有子窗口對應(yīng)的聯(lián)合投影序列作為矩陣的列排列為一個矩陣,并對所得的矩陣實施奇異值分解;提取左奇異矩陣的前8列作為基向量D。
[0065]閾值的確定:首先對無瑕疵織物進行測試,得到其重構(gòu)誤差E的累計分布函數(shù),然后選取對應(yīng)于其累計分布函數(shù)為95%時的重構(gòu)誤差值作為閾值,所用閾值為27。
[0066]檢測階段
[0067](I)將待檢測圖像,如圖6所示,連續(xù)無重疊地劃分成大小為32X32 (像素)的正方形子窗口;
[0068](2)按照訓練階段的方法,將子窗口分別沿縱橫向投影,得到聯(lián)合投影序列;
[0069](3)應(yīng)用所述基向量對檢測階段所得的聯(lián)合投影序列進行重構(gòu),并通過計算其所得的重構(gòu)誤差E來判定子窗口是否包含瑕疵,實際檢測結(jié)果如圖7所示,其中黑色方框表示被判定為包含瑕疵的子窗口。
【權(quán)利要求】
1.一種基于奇異值分解的織物瑕疵檢測方法,其特征是包括以下步驟: (1)訓練階段; 將無瑕疵織物圖像有重疊地劃分成正方形子窗口,并將子窗口分別沿縱橫方向投影,得到聯(lián)合投影序列;將所得的聯(lián)合投影序列組成一個矩陣,對該矩陣實施奇異值分解,提取基向量; (2)檢測階段; 將待檢測織物圖像連續(xù)無重疊地分割劃分成正方形子窗口,并將子窗口沿縱橫方向的投影,得到聯(lián)合投影序列y ;應(yīng)用(I)中所得的基向量的對I進行重構(gòu),得到I的重杓 > 汁算重構(gòu)誤差五= ||j-jf,并通過重構(gòu)誤差來判定子窗口是否包含瑕疵; 具體實現(xiàn)如下: 在訓練階段,將所述的無瑕疵織物圖像有重疊地劃分成大小為wXw的正方形子窗口,其中8像素< w < 64像素;所述有重疊地劃分是指在同一行中,后一個子窗口是前一個子窗口橫向平移步長Sw得到,I < sw〈W;相鄰子窗口之間有重疊部分,所述重疊部分的橫向長度為W-Sw,在相鄰行中,下一行的子窗口是上一行的子窗口縱向平移步長Sh得到,相鄰子窗口之間有重疊部分,所述重疊部分的縱向長度為w_sh,其中I ( sh<w ; 將子窗口分別沿縱橫方向投影,即計算子窗口中每列和每行的所有像素點灰度值的平均值,得到兩個投影序列;然后,將所得的兩個投影序列相接后得到聯(lián)合投影序列; 將所有子窗口對應(yīng)的聯(lián)合投影序列作為矩陣的列排列為一個矩陣,并對所得的矩陣實施奇異值分解;提取左奇異矩陣的前k列作為基向量D,即D= [(I1, d2,...,dk],其中Cl1, d2,...,dk為左奇異矩陣的前I到k列的列向量,且有4≥k≥16 ; 在檢測階段,將待檢測圖像連續(xù)無重疊地劃分成大小為wXw的正方形子窗口,其中8像素< w < 64像素;然后,按照訓練階段的方法,將子窗口分別沿縱橫向投影,得到聯(lián)合投影序列;應(yīng)用所述基向量對檢測階段所得的聯(lián)合投影序列進行重構(gòu),并通過計算其所得的重構(gòu)誤差E來判定子窗口是否包含瑕疵。
2.根據(jù)權(quán)利要求1所述的一種基于奇異值分解的織物瑕疵檢測方法,其特征在于,所述的織物為位深度為8位的灰度圖像。
3.根據(jù)權(quán)利要求1所述的一種基于奇異值分解的織物瑕疵檢測方法,其特征在于,所述的重構(gòu)是指在最小平方誤差下所得的重構(gòu)。
4.根據(jù)權(quán)利要求1所述的一種基于奇異值分解的織物瑕疵檢測方法,其特征在于,所述的通過重構(gòu)誤差來判定子窗口是否包含瑕疵是指當重構(gòu)誤差超過預先設(shè)定的閾值則認為子窗口包含瑕疵。
5.根據(jù)權(quán)利要求1所述的一種基于奇異值分解的織物瑕疵檢測方法,其特征在于,所述的聯(lián)合投影序列,是指將沿縱橫方向投影所得的兩個投影序列,一個在前,另一個在后或一個在后,另一個在前以首尾相接的方式所得的序列。
【文檔編號】G06T7/00GK103473769SQ201310401031
【公開日】2013年12月25日 申請日期:2013年9月5日 優(yōu)先權(quán)日:2013年9月5日
【發(fā)明者】汪軍, 周建, 王鋼, 萬賢福, 李冠志, 陳霞, 李立輕 申請人:東華大學