黃 露, 夏軍勇, 吳慶華, 鐘 飛
(湖北工業(yè)大學(xué) 機(jī)械工程學(xué)院, 湖北 武漢 430068)
編織袋的生產(chǎn)已逐步實(shí)現(xiàn)自動(dòng)化,但編織袋缺陷檢測(cè)仍以人工肉眼檢測(cè)為主,是制約編織袋生產(chǎn)效率和質(zhì)量提高的主要瓶頸之一。人工缺陷檢測(cè)方式受主觀因素影響大,效率低、漏檢率高[1],研發(fā)編織袋缺陷自動(dòng)檢測(cè)技術(shù)和裝備具有重要意義。編織袋是一種由單一顏色塑料絲制成的織品,紋理特征與其他織物類似,因此編織袋缺陷檢測(cè)的方法可參照其他織物。近年來(lái),針對(duì)織品的在線缺陷檢測(cè),學(xué)者們進(jìn)行了大量研究并提出了不少新穎和實(shí)用的方法。張緩緩等[2]提出一種基于改進(jìn)的加權(quán)中值濾波與K-means聚類相結(jié)合的紋理織物疵點(diǎn)檢測(cè)方法。李小寧等[3]提出一種結(jié)合自適應(yīng)中值濾波和灰度-梯度共生矩陣的織物質(zhì)量檢測(cè)方法。董蓉等[4]提出一種基于最優(yōu)參數(shù)非線性灰度共生矩陣的織物瑕疵自動(dòng)檢測(cè)算法。趙樹(shù)志等[5]提出一種基于改進(jìn)判別性完整局部二值模式與格分割的織物瑕疵檢測(cè)方法。鑒于上述情況,并根據(jù)編織袋缺陷圖噪聲大、灰度不明顯的特點(diǎn),課題組提出一種基于改進(jìn)遺傳算法與二維最大熵[6]的編織袋缺陷快速檢測(cè)方法,以提高對(duì)噪聲的魯棒性和缺陷分割精度,能夠高效地檢測(cè)編織袋缺陷。
二維最大熵法同時(shí)統(tǒng)計(jì)像素自身和鄰域灰度信息,相比一般閾值法,其抗噪性更強(qiáng),分割編織袋缺陷圖的效果更好。二維最大熵法的本質(zhì)是搜索圖像灰度直方圖最大熵對(duì)應(yīng)的閾值,而遺傳算法能極大地縮短閾值搜索時(shí)間,將兩者結(jié)合起來(lái),就能對(duì)編織袋缺陷圖進(jìn)行快速、精準(zhǔn)地分割。接著對(duì)分割出的缺陷進(jìn)行連通域標(biāo)記[7],提取缺陷質(zhì)心、面積等幾何參數(shù),逐一將缺陷檢測(cè)出來(lái)。
設(shè)編織袋缺陷圖的大小為A×B,灰度變化范圍為E∈{0,1,…,k-1},任意像素點(diǎn)(i,j)的灰度值為m,原圖平滑處理后,平滑圖像素點(diǎn)(i,j)的灰度值為n。Q表示灰度值為m且平滑灰度值為n的像素點(diǎn)個(gè)數(shù),Pm,n表示缺陷圖中灰度二元組(m,n)出現(xiàn)的概率,則Pm,n可由下式導(dǎo)出:
(1)
如圖1所示,選取閾值(s,t),將Hist(m,n)分成4部分,區(qū)域R1,R2,R3和R4分別表示目標(biāo)、背景、邊界和噪聲。則灰度二元組(m,n)出現(xiàn)在目標(biāo)R1與背景R2區(qū)域的概率P1和P2分別為:
圖1 灰度直方圖投影Figure 1 Grayscale histogram projection map
(2)
(3)
R1與R2區(qū)域?qū)?yīng)的熵H1和H2分別為:
(4)
(5)
邊界R3和噪聲R4占缺陷圖像素的比例極小,因此邊界與噪聲的熵接近于零。則缺陷圖的二維熵函數(shù)H(s,t)可定義為:
H(s,t)=H1+H2。
(6)
當(dāng)熵函數(shù)值最大時(shí),對(duì)應(yīng)的最優(yōu)閾值(s*,t*)為:
(s*,t*)=arc {max (H(s,t))}。
(7)
式中arc{}為反求函數(shù)。
遺傳算法是一種基于自然選擇和群體遺傳機(jī)理的搜索算法。一般遺傳算法在二維灰度空間搜索最佳閾值時(shí),存在早熟、收斂性弱等缺點(diǎn),通過(guò)對(duì)選擇、交叉和變異等遺傳算子進(jìn)行參數(shù)優(yōu)化,可減少算法的搜索時(shí)間,增強(qiáng)算法的收斂性。遺傳算法改進(jìn)如下:
1) 種群初始化。種群隨機(jī)產(chǎn)生,種群數(shù)為20,最大搜索代數(shù)為100。
2) 編碼。采用16位二進(jìn)制編碼,前8位為缺陷圖的閾值,后8位為平滑圖的閾值。
3) 適應(yīng)度函數(shù)。選取式(6)作為適應(yīng)度函數(shù)。
4) 優(yōu)化選擇。計(jì)算種群個(gè)體的適應(yīng)度,將群體中15%適應(yīng)度最高的個(gè)體作為子代直接保留,剩下的個(gè)體逐一通過(guò)輪盤賭法選出。
5) 優(yōu)化交叉。交叉概率Pt取值大時(shí),算法后期對(duì)最優(yōu)個(gè)體的破壞性增強(qiáng);反之,算法前期個(gè)體的更新速度慢,易陷入局部最優(yōu)解。為確保算法前期有較強(qiáng)的全局搜索能力,而后期最優(yōu)模式能得到保留,則閾值搜索前期取Pt=0.9,后期取Pt=0.6。
6) 優(yōu)化變異。變異概率Pd采用分段函數(shù)的取值模式,隨變異過(guò)程進(jìn)行自適應(yīng)變化。Pd分段取值為:
(8)
式中G為搜索代數(shù),G∈[1,100]。
如圖2所示,變異進(jìn)程分為3個(gè)階段,算法前期Pd取0.02,確保最優(yōu)個(gè)體不被破壞;中期Pd最大取0.1,提高個(gè)體的更新速度,擴(kuò)大算法的搜索空間;后期Pd取0.02,加快算法收斂進(jìn)程。為確保搜索過(guò)程平穩(wěn)進(jìn)行,算法中期變異概率取值以拋物線形式變化,并與初期和后期的概率值銜接起來(lái)。
圖2 變異概率取值曲線Figure 2 Curve of mutation probability value
7) 終止條件。當(dāng)算法達(dá)到最大搜索代數(shù)或子代群體的平均適應(yīng)度值與父代群體的平均適應(yīng)度值的絕對(duì)值差小于0.03時(shí),算法終止。
二維最大熵法分割編織袋缺陷圖時(shí),統(tǒng)計(jì)的像素灰度信息量很大,缺陷分割的時(shí)間長(zhǎng)。如圖3所示,將二維最大熵法與改進(jìn)遺傳算法相結(jié)合,利用改進(jìn)遺傳算法計(jì)算速度快、收斂性好的優(yōu)點(diǎn),克服二維最大熵法計(jì)算復(fù)雜度高的弊端,實(shí)現(xiàn)對(duì)編織袋缺陷圖精確、高效地分割。
圖3 結(jié)合改進(jìn)遺傳算法的二維最大熵運(yùn)行框圖Figure 3 Operational block diagram of two-dimensional maximum entropy combined with improved genetic algorithm
位置相鄰且像素值相同的前景像素點(diǎn)組成的圖像區(qū)域稱為連通域。對(duì)編織袋缺陷分割圖進(jìn)行連通域標(biāo)記,圖中每個(gè)缺陷像素點(diǎn)賦予唯一的標(biāo)識(shí),且屬于同一連通域的像素點(diǎn)標(biāo)記相同,從而圖中的缺陷區(qū)域轉(zhuǎn)換成各自獨(dú)立的標(biāo)記塊。獲取每個(gè)標(biāo)記塊的數(shù)量、輪廓與質(zhì)心等,實(shí)現(xiàn)缺陷的定位與統(tǒng)計(jì)。
在某廠復(fù)合編織袋生產(chǎn)線上搭建了編織袋缺陷檢測(cè)軟硬件系統(tǒng),對(duì)褶皺、拉絲、小拉絲、孔洞以及漏針等常見(jiàn)的編織袋缺陷進(jìn)行在線檢測(cè)。編織袋缺陷檢測(cè)流程如圖4所示,算法先對(duì)采集的編織袋圖進(jìn)行預(yù)處理,消除圖中存在的噪聲以及細(xì)小的結(jié)構(gòu)干擾,接著利用改進(jìn)遺傳算法獲得區(qū)分前景與背景的最佳閾值,利用閾值精確分割出缺陷區(qū)域,最后利用連通域標(biāo)記對(duì)圖中缺陷進(jìn)行統(tǒng)計(jì)和定位。
圖4 編織袋缺陷檢測(cè)流程Figure 4 Flow chart of woven bag defect detection
編織袋缺陷檢測(cè)系統(tǒng)[8-9]由硬件和軟件2部分組成。硬件系統(tǒng)主要由鏡頭、相機(jī)和光源構(gòu)成。為確保采集的編織袋圖能達(dá)到檢測(cè)精度要求,相機(jī)采用分辨率為2 448×2 048 像素、幀速率為23 幀/s黑白工業(yè)相機(jī)。鏡頭選用靶面尺寸為16.93 mm(2/3 in)、焦距為8 mm工業(yè)鏡頭。根據(jù)編織袋絲線厚度改變會(huì)影響其透光性的特點(diǎn),打光方式選擇背光照射,光源采用功率為22 W,規(guī)格為600 mm×300 mm的LED面陣光源。軟件部分由缺陷檢測(cè)算法與界面程序組成。為驗(yàn)證算法的可行性和實(shí)時(shí)性,通過(guò)輔助軟件MATLAB R2016b編寫相關(guān)算法程序,在處理器為i5-4210U,主頻為1.7 GHz,內(nèi)存為8 GB的PC機(jī)上進(jìn)行多次編織袋缺陷檢測(cè)。編織袋缺陷檢測(cè)系統(tǒng)如圖5所示。
圖5 編織袋缺陷檢測(cè)系統(tǒng)Figure 5 Defect detection system for woven bags
圖6分別為含有褶皺、拉絲、小拉絲、孔洞以及漏針等缺陷的編織袋。
圖6 含不同缺陷的編織袋圖Figure 6 Diagram of woven bags with different defects
預(yù)處理能夠消除編織袋缺陷圖中存在的噪聲以及細(xì)微瑕疵,降低后續(xù)缺陷信息的檢測(cè)難度。先對(duì)缺陷圖進(jìn)行形態(tài)學(xué)開(kāi)運(yùn)算,減少孤立的像素點(diǎn)和毛刺等,接著采用35×35的矩形掩碼對(duì)開(kāi)運(yùn)算圖進(jìn)行均值濾波,再將開(kāi)運(yùn)算圖與均值圖作差,獲得差分圖像。經(jīng)過(guò)差分運(yùn)算,圖像中具有干擾性的背景噪聲得到抑制,缺陷部分進(jìn)一步增強(qiáng)。最后通過(guò)灰度線性變換,突出差分圖中的缺陷區(qū)域,利于編織袋缺陷的后續(xù)處理。
缺陷分割的目的就是將圖中的感興趣區(qū)域提取出來(lái),分離目標(biāo)與背景。為比較每種算法的分割精度,利用迭代閾值法[10]、一維最大熵法[11]以及結(jié)合一般遺傳算法的二維最大熵法對(duì)相同缺陷圖依次進(jìn)行分割。圖7~8分別為迭代閾值法和提出算法的缺陷分割效果。
圖7 迭代閾值法的缺陷分割效果Figure 7 Defect segmentation effect of iterative threshold method
圖8 提出算法的缺陷分割效果Figure 8 Defect segmentation effect of proposed algorithm
為體現(xiàn)提出算法的分割性能,引入IoU系數(shù)作為圖像分割精度的度量指標(biāo)。IoU系數(shù)表示算法分割缺陷與手工標(biāo)記缺陷的交并比,IoU值越大,表明算法分割缺陷與手工標(biāo)記缺陷的重合程度越高。式(9)中,X為手工標(biāo)記的缺陷,Y為算法分割出的缺陷。表1為每種算法分割相同缺陷圖20次的平均IoU系數(shù)。
(9)
從表1數(shù)據(jù)可以看出,迭代閾值法與一維最大熵法的分割精度相近,兩者皆對(duì)編織袋缺陷圖欠分割,分割的缺陷存在細(xì)節(jié)失真的情況;與一般遺傳算法結(jié)合的二維最大熵的分割精度要略低于改進(jìn)遺傳算法,但分割效果要優(yōu)于迭代閾值法與一維最大熵法,缺陷的主體信息均檢測(cè)出來(lái)。提出算法對(duì)含有復(fù)雜結(jié)構(gòu)干擾的褶皺缺陷的分割質(zhì)量明顯優(yōu)于其他3種方法,IoU系數(shù)高于0.909,表明其對(duì)噪聲的魯棒性好,分割編織袋缺陷圖的精度高。在編織袋缺陷檢測(cè)中,缺陷分割的實(shí)時(shí)性與精度同樣重要。比較上述幾種算法的分割速度,統(tǒng)計(jì)每種方法分割相同缺陷圖20次的平均時(shí)間,實(shí)驗(yàn)數(shù)據(jù)如表2所示。數(shù)據(jù)表明,結(jié)合一般遺傳算法的二維最大熵的分割速度要優(yōu)于迭代閾值法與一維最大熵法,尤其是相對(duì)于一維最大熵法,缺陷的平均分割時(shí)間由0.978 s縮短至0.652 s,極大地提高了分割效率。結(jié)合改進(jìn)遺傳算法的二維最大熵分割缺陷的時(shí)間比一般遺傳算法要少0.048 s,分割時(shí)間降低了7.4%。綜上所述,相較于其他3種分割方法,提出的算法具有更高的分割精度與速度,能夠準(zhǔn)確和快速地獲取缺陷信息。
表1 不同算法分割精度對(duì)比Table 1 Comparison of segmentation accuracy of different algorithms
表2 不同算法缺陷分割耗時(shí)對(duì)比Table 2 Comparison of time-consuming defect segmentation of different algorithms
對(duì)分割出的編織袋缺陷區(qū)域進(jìn)行連通域標(biāo)記,提取標(biāo)記區(qū)域的數(shù)量、輪廓以及質(zhì)心等參數(shù),進(jìn)而獲取缺陷的像素面積以及位置坐標(biāo)。如圖9所示,缺陷連通域的數(shù)量、像素面積以及質(zhì)心像素坐標(biāo)等均準(zhǔn)確統(tǒng)計(jì)出來(lái),表明算法能精確、快速地處理編織袋缺陷信息,編織袋缺陷檢測(cè)效果好。
圖9 編織袋缺陷的統(tǒng)計(jì)與定位Figure 9 Statistics and location of woven bag defects
課題組提出一種基于改進(jìn)遺傳算法與二維最大熵的編織袋缺陷檢測(cè)方法,通過(guò)搭建編織袋缺陷檢測(cè)軟硬件系統(tǒng),對(duì)某廠復(fù)合編織袋生產(chǎn)過(guò)程中產(chǎn)生的缺陷進(jìn)行在線檢測(cè),達(dá)到了良好的效果。試驗(yàn)結(jié)果表明:
1) 預(yù)處理抑制了背景紋理,增大了缺陷與背景的區(qū)分度,利于后續(xù)的缺陷分割;
2) 結(jié)合改進(jìn)遺傳算法的二維最大熵分割預(yù)處理圖所獲得的質(zhì)量缺陷細(xì)節(jié)清晰,結(jié)構(gòu)干擾元素與細(xì)微瑕疵點(diǎn)被抑制,其缺陷分割精度要遠(yuǎn)高于一維最大熵法與迭代閾值法,IoU系數(shù)高于0.899,同時(shí),相較于結(jié)合一般遺傳算法的二維最大熵法,其分割速度更快,平均分割時(shí)間縮短了7.4%;
3) 對(duì)分割出的缺陷進(jìn)行連通域標(biāo)記,快速獲取缺陷的數(shù)量、質(zhì)心等參數(shù),實(shí)現(xiàn)缺陷的精準(zhǔn)統(tǒng)計(jì)與定位。