張五一,楊 揚(yáng),林 聰, 溫盛軍
(中原工學(xué)院, 鄭州 450007)
在簾子布生產(chǎn)過(guò)程中,布面疵點(diǎn)決定產(chǎn)品質(zhì)量,布匹表面疵點(diǎn)檢測(cè)是生產(chǎn)過(guò)程中一個(gè)重要環(huán)節(jié)。長(zhǎng)期以來(lái),織物疵點(diǎn)的檢測(cè)工作幾乎都是由人工視覺(jué)來(lái)實(shí)現(xiàn)的,檢測(cè)結(jié)果受驗(yàn)布人員主觀因素影響,導(dǎo)致誤檢率、錯(cuò)檢率較高[1]?;趫D像分析的織物疵點(diǎn)自動(dòng)檢測(cè)技術(shù)已代替?zhèn)鹘y(tǒng)的人工視覺(jué),成為織物疵點(diǎn)檢測(cè)領(lǐng)域研究的熱點(diǎn)。
本文結(jié)合從企業(yè)得到的簾子布疵點(diǎn)圖像與國(guó)內(nèi)外相關(guān)研究文獻(xiàn),利用Gabor濾波器組、最大熵閾值分割和BP神經(jīng)網(wǎng)絡(luò)原理,提出了一種新的簾子布疵點(diǎn)檢測(cè)方法。該方法采用Gabor濾波器組對(duì)圖像進(jìn)行濾波,對(duì)濾波后的模值圖像使用最大熵閾值分割[2],提取疵點(diǎn)圖像輪廓的長(zhǎng)、寬、長(zhǎng)寬比和面積等特征值。將上述特征值作為BP神經(jīng)網(wǎng)絡(luò)的輸入,經(jīng)過(guò)大量的數(shù)據(jù)訓(xùn)練,最終實(shí)現(xiàn)對(duì)疵點(diǎn)的識(shí)別和分類。實(shí)驗(yàn)證明該方法能夠檢測(cè)、識(shí)別出絕大多數(shù)常見(jiàn)的疵點(diǎn)。
Gabor變換是一類重要的時(shí)頻分析方法,它是Gabor D在1946年研究聲波的傳播與壓縮時(shí)提出來(lái)的。Gabor濾波器的主要特征是:不同紋理一般具有不同的中心頻率和帶寬,根據(jù)這些頻率和帶寬設(shè)計(jì)一組Gabor濾波器,對(duì)紋理圖像進(jìn)行濾波。每個(gè)濾波器只允許與其頻率相對(duì)應(yīng)的紋理通過(guò),其他紋理則受到抑制。從每個(gè)濾波器的輸出結(jié)果中提取疵點(diǎn)紋理特征,用于疵點(diǎn)分類[3-4]。Gabor濾波器實(shí)質(zhì)上是一個(gè)帶通濾波器,其沖擊響應(yīng)函數(shù)為
(1)
(x′,y′)=(xcosθ+ysinθ,-xsinθ+ycosθ)
(2)
(3)
(u′,v′)=(ucosθ+vsinθ,-usinθ+vcosθ)
(4)
圖1 Gabor核函數(shù)的二維圖像
用圖1中的8組濾波器對(duì)正常紋理(圖2a)和疵點(diǎn)分類為漿斑的簾子布圖像(圖2b)進(jìn)行濾波處理,結(jié)果如圖3、圖4所示。
由圖4可知,當(dāng)方向角與布匹紋理方向一致時(shí),織物疵點(diǎn)處的圖像灰度變化顯著,由此可判斷出疵點(diǎn)的位置與紋理特性。
a 正常紋理圖片 b 漿斑紋理圖片
圖3 正常紋理圖像經(jīng)過(guò)Gabor濾波器組濾波后的圖像
熵是信息論中事件出現(xiàn)概率的不確定性的量度,能夠有效反映事件包含的信息,最大熵閾值化是一種自動(dòng)的非參數(shù)、無(wú)監(jiān)督的閾值選擇法。它將分割后物體與背景灰度分布的信息熵之和作為最大優(yōu)化測(cè)度準(zhǔn)則,來(lái)選擇圖像分割的閾值[5-7]。
圖4 漿斑疵點(diǎn)圖像經(jīng)過(guò)Gabor濾波器組濾波后的圖像
假設(shè)閾值T將圖像分為兩類:目標(biāo)C0與背景C1,其中C0灰度空間為[0,T],C1灰度空間為[T+1,255],則C0和C1的信息熵H0(T)和H1(T)定義為
(5)
(6)
對(duì)應(yīng)的最大熵測(cè)度準(zhǔn)則φ(T)為
(7)
最佳的閾值T′應(yīng)該滿足
φ(T′)=max
1≤T≤255{φ(T)}
(8)
OpenCV是一個(gè)開(kāi)源的跨平臺(tái)計(jì)算機(jī)視覺(jué)庫(kù),是由一系列 C 函數(shù)和少量 C++ 類構(gòu)成的,同時(shí)提供Python、Ruby、Matlab等語(yǔ)言的接口,能夠?qū)崿F(xiàn)圖像處理和計(jì)算機(jī)視覺(jué)方面的很多通用算法[8]。
由圖4可知,疵點(diǎn)大都集中在經(jīng)向方向,在其他方向上沒(méi)有明顯的紋理特征。根據(jù)實(shí)驗(yàn)結(jié)果,同時(shí)為了減少計(jì)算量,本文采用相同模版大小的兩個(gè)方向角的Gabor濾波器組成濾波器組對(duì)常見(jiàn)疵點(diǎn)中的漿斑、接頭、經(jīng)線粘連進(jìn)行濾波處理。
基于OpenCV的Gabor濾波器的濾波核函數(shù)如圖5所示。
(a) 方向角為的Gabor核函數(shù)二維圖像 (b)方向角為π的Gabor核函數(shù)二維圖像
對(duì)漿斑、接頭、經(jīng)線粘結(jié)3種常見(jiàn)的疵點(diǎn)進(jìn)行測(cè)試,疵點(diǎn)圖像的大小為256×276個(gè)像素,測(cè)試結(jié)果如圖6—圖8所示,其中圖(a)表示原圖,圖(b)表示Gabor濾波后的模值圖,圖(c)表示最大熵閾值分割后的圖像,圖(d)表示疵點(diǎn)圖像的最小外接矩形。
BP神經(jīng)網(wǎng)絡(luò),又稱反向傳播網(wǎng)絡(luò),是一種研究較為成熟、應(yīng)用較為廣泛的神經(jīng)網(wǎng)絡(luò),主要用于模式識(shí)別、分類、數(shù)據(jù)壓縮、函數(shù)逼近等方面,其主要思想是從后向前(反向)逐層傳播輸出層的誤差,以間接地算出隱含層誤差。其工作原理是:當(dāng)信號(hào)輸入時(shí),傳到隱層節(jié)點(diǎn),經(jīng)過(guò)激勵(lì)函數(shù)后,把隱層節(jié)點(diǎn)的輸出信號(hào)傳播到輸出層節(jié)點(diǎn),經(jīng)過(guò)處理后給出輸出結(jié)果。它的學(xué)習(xí)過(guò)程是一種誤差反向傳播修正過(guò)程,由正向傳播和反向傳播組成。在正向傳播過(guò)程中,輸入信號(hào)從輸入層經(jīng)隱層單元逐層處理,并傳向輸出層,每一層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元的狀態(tài)。如果在輸出層不能得到期望的輸出,則計(jì)算輸出層的誤差變化值,然后轉(zhuǎn)向反向傳播,將輸出信號(hào)的誤差沿原來(lái)的連接通路返回,通過(guò)修改各層神經(jīng)元的權(quán)值,使得信號(hào)的誤差最小達(dá)到期望誤差[9]。
(a) (b) (c) (d)
(a) (b) (c) (d)
(a) (b) (c) (d)
在經(jīng)過(guò)圖像分割后,可以得到疵點(diǎn)所在區(qū)域的最小外接矩形,根據(jù)矩形大小可以求出疵點(diǎn)的長(zhǎng)、寬、長(zhǎng)寬比、面積等特征值。將上述特征值歸一化后分為兩類,一類作為訓(xùn)練樣本,一類作為測(cè)試樣本。神經(jīng)網(wǎng)絡(luò)具有按照期望目標(biāo)自動(dòng)分類和識(shí)別的能力,可進(jìn)行疵點(diǎn)的分類識(shí)別。本文利用三層BP神經(jīng)網(wǎng)絡(luò)(如圖9所示),選用訓(xùn)練樣本對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練學(xué)習(xí),然后再將測(cè)試樣本輸入訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)進(jìn)行分類識(shí)別。
圖9 三層BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)圖
圖10是運(yùn)用120個(gè)訓(xùn)練樣本進(jìn)行BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練學(xué)習(xí)結(jié)果,其中漿斑輸出值為0.5~1.5,接頭輸出值為1.5~2.5,經(jīng)線粘結(jié)輸出值為2.5~3.5。
用訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)對(duì)30個(gè)樣本特征進(jìn)行辨識(shí),結(jié)果如圖11所示。
圖10 訓(xùn)練樣本輸入BP神經(jīng)網(wǎng)絡(luò)輸出圖
圖11 測(cè)試樣本輸入BP神經(jīng)網(wǎng)絡(luò)輸出圖
根據(jù)測(cè)試樣本輸出結(jié)果,可以得出疵點(diǎn)特征。進(jìn)行疵點(diǎn)分類,分類識(shí)別率達(dá)94%。
本文結(jié)合Gabor濾波器、最大熵閾值分割算法和BP神經(jīng)網(wǎng)絡(luò),提出了用OpenCV與Matlab實(shí)現(xiàn)簾子布疵點(diǎn)圖像的檢測(cè)與分類的方法。實(shí)驗(yàn)證明,這種方法可實(shí)現(xiàn)漿斑、接頭、經(jīng)線粘結(jié)等主要疵點(diǎn)的檢測(cè)與分類。
參考文獻(xiàn):
[1] 紀(jì)惠軍,張小棟,楊建民.基于機(jī)器視覺(jué)的織物疵點(diǎn)檢測(cè)技術(shù)探討[J].現(xiàn)代紡織技術(shù),2011(2):11-15.
[2] 趙波,鄭立新. 改進(jìn)的基于最大熵和Gabor濾波器的織物疵點(diǎn)檢測(cè)[J]. 微型機(jī)與應(yīng)用,2011,30(13):29-35.
[3] 鄒超,汪秉文,孫志剛. 基于 Gabor 濾波器組的實(shí)時(shí)疵點(diǎn)圖像分割[J].計(jì)算機(jī)工程與應(yīng)用,2010,46(12):185-187.
[4] 韓潤(rùn)萍,孫蘇榕,姜玲. 基于 Gabor 濾波器組的織物疵點(diǎn)檢測(cè)方法[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(7):211-214.
[5] 張家樹(shù). 灰度圖像的最大最小優(yōu)化熵閾值分割[J].電訊技術(shù),1955,35(6):42-45.
[6] 沈晶,楊學(xué)志. 一種新的基于紋理分水嶺的紡織品缺陷檢測(cè)方法[J].中國(guó)圖象圖形學(xué)報(bào),2009, 14(10):1997-2003.
[7] 卿湘運(yùn),段紅,魏俊民. 基于局部熵的織物疵點(diǎn)檢測(cè)與識(shí)別的研究[J].紡織學(xué)報(bào),2004, 25(5):57-59.
[8] Bradski G,Kaehler A. Learning OpenCV [M]. 于任瑛,劉瑞禎, 譯. 南京:東南大學(xué)出版社,2009.
[9] 飛思科技產(chǎn)品研發(fā)中心. MATLAB 7 輔助控制系統(tǒng)設(shè)計(jì)與仿真[M]. 北京:電子工業(yè)出版社,2005.