解祥新,江小靜,劉琴琴,魏 燕
(南通理工學(xué)院,江蘇 南通 226002)
基于閾值分割的布匹疵點(diǎn)檢測算法可以大致分為以下幾個(gè)步驟,首先對采集到的布匹圖像進(jìn)行降噪,消除無關(guān)信息,增強(qiáng)細(xì)節(jié)對比度等[1],再利用閾值分割算法進(jìn)行圖像分割,最后將得到的分割后的圖像進(jìn)行疵點(diǎn)分類等后續(xù)處理。在實(shí)際生產(chǎn)中,疵點(diǎn)類型主要以破洞、斷經(jīng)為主[2],因此本文中所檢測的疵點(diǎn)類型基本為破洞、斷經(jīng)。
OTSU全稱最大類間方差法,該方法將待檢測樣本的前景和背景分離開來。本文將素色布匹的正常底紋看作背景,把待檢測素色布匹的瑕疵區(qū)域看作前景。通過OTSU閾值分割算法把素色布匹瑕疵區(qū)域和標(biāo)準(zhǔn)紋理背景信息進(jìn)行解耦[3],得出的最佳閾值將布匹瑕疵與紋理背景分割開來,實(shí)現(xiàn)瑕疵檢測。
最大類間方差算法具有檢測周期短和運(yùn)算速度快等優(yōu)點(diǎn)[4],可以滿足工業(yè)現(xiàn)場的實(shí)時(shí)檢測要求。
傳統(tǒng)最大類間方差算法原理:假定待檢測的素色布匹圖像共有L個(gè)灰度級,nq是灰度級為q的像素點(diǎn)個(gè)數(shù),則圖像灰度級的概率Pq如下式:
(1)
K級灰度以下像素的灰度概率均值和累積值分別是ωk和μk,如式(2)和式(4)所示:
(2)
ω(L-1)=1
(3)
(4)
假設(shè)按照灰度閾值T把待檢測素色布匹樣本圖像分為布匹正常底紋和表面瑕疵區(qū)域兩類:C0類(灰度級為從0到T),C1類(灰度級為從T+1到L-1)。則C0類和C1類兩類的概率公式為式(5)和式(6)所示:
(5)
(6)
兩類的均值可以用式(7)和式(8)表示:
(7)
(8)
對于整個(gè)圖像來說,其灰度均值為式(9):
μ=μ0ω0+μ1ω1
(9)
(10)
傳統(tǒng)的最大類間方差法的缺點(diǎn):
(1)對于一些灰度級不連續(xù)的圖像來說,通過傳統(tǒng)的最大類間方法所計(jì)算出來的閾值很難收斂到全局最優(yōu)。
(2)若背景圖像與前景圖像分布差異非常大,那么最大類間方差算法將有可能會失效。
(3)當(dāng)圖像中僅有兩種類別時(shí),最大類間方差能夠很好地適用;但是當(dāng)超過兩種類別時(shí),就需要改進(jìn)增加額外閾值,來進(jìn)行分割。
因此針對以上傳統(tǒng)最大類間方差法的缺點(diǎn)進(jìn)行如下改進(jìn):
(1)計(jì)算圖像灰度級L。計(jì)算圖像的灰度平均值μT,將μT取整|μT|作為圖像的灰度級,即L=|μT|;
(2)給分割次數(shù)賦以初始值J=1;
(3)利用最大類間方差法計(jì)算圖像的像素N、閾值K、閾值選擇函數(shù)η、類內(nèi)方差σw;
迭代,N(J)=N;K(J)=K;L=K;η(J)=η;σ(J)=σw;J=J+1;
(4)如果J≤1,那么返回步驟3;若大于1,則計(jì)算出ε的值。
(11)
(5)如果ε≥0,那么返回步驟3;若小于0,則查找最大η(J)所對應(yīng)的閾值,作為最佳閾值K。
本節(jié)算法的流程如圖1所示。
圖1 基于改進(jìn)最大類間方差法的檢測算法流程
具體步驟如下:
步驟1:采集現(xiàn)場布匹圖像,進(jìn)行雙邊濾波處理,經(jīng)過雙邊濾波處理之后能夠較好的濾除低頻信息,減少低頻信息的干擾,并且能夠很好地保存圖像邊緣處的細(xì)節(jié)信息。雙邊濾波的數(shù)學(xué)表達(dá)式如下:
(12)
其中,(k,l)為模板窗口的中心坐標(biāo);(i,j)為模板窗口的其他系數(shù)的坐標(biāo);σd為高斯函數(shù)的標(biāo)準(zhǔn)差。
步驟2:將雙邊濾波處理后的圖像再通過中值濾波濾除斑點(diǎn)噪聲及椒鹽噪聲,中值濾波在降噪的同時(shí)也能夠有效保存邊緣處的細(xì)節(jié)。用中值濾波處理雙邊濾波處理后的圖像g(i,j):
G(x,y)=mid{g(x-a,y-b),a,b∈W}
(13)
其中,G(x,y)為進(jìn)行中值濾波后的二階矩陣,W為選擇的二維模板,選取3×3的區(qū)域;
步驟3:將預(yù)處理后的圖像,利用改進(jìn)的最大類間方差法進(jìn)行閾值分割。計(jì)算圖像灰度級L,計(jì)算圖像的灰度平均值μT,令L=|μT|;給分割次數(shù)賦以初始值J=1;利用最大類間方差法計(jì)算圖像的像素N、閾值K、閾值選擇函數(shù)η、類內(nèi)方差σw;再進(jìn)行迭代,直到計(jì)算出最佳閾值K。
步驟4:分割完成后判斷是否存在疵點(diǎn),如果不存在疵點(diǎn),則繼續(xù)采集圖像進(jìn)行疵點(diǎn)檢測;若存在疵點(diǎn),則進(jìn)行邊緣檢測,標(biāo)識出疵點(diǎn),進(jìn)行數(shù)據(jù)保存后,再繼續(xù)采集圖像。
傳統(tǒng)最大類間方差法在閾值分割時(shí),并不能很好地將疵點(diǎn)分割出來,而通過改進(jìn)的最大類間方差法,能夠很好地分割出疵點(diǎn)。傳統(tǒng)最大類間方差法檢測準(zhǔn)確率只有78%,而改進(jìn)后的最大類間方差法檢測準(zhǔn)確率可達(dá)到94%。
本文主要研究基于改進(jìn)最大類間方差法的檢測算法。并通過實(shí)驗(yàn)仿真分析這種算法在針對無樣本的疵點(diǎn)檢測上精度高,具有一定的效果。