張學(xué)蘭 李 軍 孟范孔
(1.華南理工大學(xué)制漿造紙工程國家重點實驗室,廣東廣州,510640;2.華南理工大學(xué)廣東省造紙技術(shù)與裝備公共實驗室,廣東廣州,510640;3.華南理工大學(xué)機(jī)械與汽車工程學(xué)院,廣東廣州,510640)
在紙張生產(chǎn)過程中,由于設(shè)備磨損、生產(chǎn)原料質(zhì)量和環(huán)境污染等原因,會造成一些外觀紙病[1],而利用傳統(tǒng)的人工檢測方式進(jìn)行紙病檢測已經(jīng)難以滿足生產(chǎn)過程的需要?;跈C(jī)器視覺技術(shù)的紙病檢測系統(tǒng)的出現(xiàn),不僅大大提高了檢測效率,還實現(xiàn)了在線分析與控制。該技術(shù)能實時有效地監(jiān)測運行中紙幅上的各種紙病,以便于操作人員及時反應(yīng),迅速找到導(dǎo)致紙病的原因,從而降低損紙率,提高成品率,減少操作人員的工作量[2]。
紙病的智能化在線檢測的目的在于開發(fā)一套機(jī)器視覺系統(tǒng),應(yīng)用快速有效的算法,實現(xiàn)紙病的精確檢測和定位[3]。紙病的智能化在線檢測,即運用紙張圖像的形態(tài)特征、灰度級統(tǒng)計、紋理特征、形態(tài)學(xué)、模糊邏輯及神經(jīng)網(wǎng)絡(luò)等進(jìn)行紙病圖像的分割和識別。針對現(xiàn)有的算法不能對同時含有不同種類紙病的圖像進(jìn)行分類識別,本研究提出了一種基于圖像灰度變換和BP神經(jīng)網(wǎng)絡(luò)的紙病識別算法。
1.1 紙樣圖像的獲取
本研究所用的圖像是在反射光照條件下,通過掃描儀獲取的紙病圖像,像素大小為640×480,如圖1和圖2所示,分別為合格紙樣圖像和帶有孔洞、臟點和褶皺的紙病圖像。
1.2 紙病圖像預(yù)處理
觀察圖2可以發(fā)現(xiàn),孔洞和臟點與背景灰度有較大的區(qū)別,因此屬于高對比度的紙病圖像。大量實驗統(tǒng)計表明,孔洞處的灰度比背景灰度均值高15%以上;臟點處的灰度比背景灰度均值低30%以上;褶皺處的灰度與背景灰度均值相差不大,但有很明顯的灰度階躍。
基于上述對3類紙病灰度特征的分析,本研究采用一種基于灰度經(jīng)驗的動態(tài)雙閾值分割方法[4]來提取孔洞和臟點。首先計算得出紙病圖像的背景灰度均值為220,再用圖像背景灰度均值的1.15倍和0.70倍作為閾值進(jìn)行分割,其中高于220×1.15的設(shè)為255,低于220×0.70的設(shè)為0,其余設(shè)為128。將圖2的紙病圖像進(jìn)行雙閾值分割后的結(jié)果如圖3所示。
對比圖2和圖3可以發(fā)現(xiàn),圖3中保留了圖2的孔洞和臟點的信息,而失去了褶皺的信息,原因是經(jīng)過動態(tài)雙閾值分割后褶皺處的灰度值被設(shè)為128。對于褶皺,由于其灰度階躍比較明顯,因此采用Prewitt算子來對其分割。經(jīng)過Prewitt算子和形態(tài)學(xué)閉合運算后的圖像如圖4所示。在此檢測過程中也可以將孔洞和臟點的邊緣檢測出來,但由于邊緣檢測后的臟點和孔洞的形態(tài)很接近,在后續(xù)識別中無法區(qū)分,因此還需要進(jìn)一步處理。對圖3和圖4進(jìn)行圖像合成中的加運算,得到圖5。從圖5可以發(fā)現(xiàn),臟點處的灰度為0,孔洞和褶皺處的灰度為255,但褶皺近似于直線,孔洞接近于圓形,這樣就將孔洞、臟點和褶皺的代表性特征集合到一副圖像中。但在臟點的外圍同時有一個白色的圓環(huán),其形態(tài)和孔洞很相似,在識別過程中會被當(dāng)作孔洞來識別。因此,最終孔洞的數(shù)量應(yīng)為識別出的孔洞的數(shù)量減去臟點的數(shù)量。
在圖像識別中,常見的特征量按其類型可以分為形態(tài)特征、灰度特征、紋理特征。目標(biāo)的形態(tài)特征[5]包括面積、長寬比、矩形度、周長、圓形度和偏心率等?;叶忍卣靼ɑ叶绕骄?、方差、歪度、峭度、能量和熵等。紋理特征[6]包括二階矩、對比度、相關(guān)度、紋理熵和紋理能量等。因此,圖像預(yù)處理之后,就可以提取各類紙病的典型特征,以便對紙病進(jìn)行分類。
經(jīng)過對紙病圖像的特征數(shù)據(jù)的統(tǒng)計,最終本研究選擇目標(biāo)的平均灰度、圓形度、長寬比和矩形度作為紙病識別的特征值。
(1)平均灰度
目標(biāo)平均灰度Mean的計算公式[5]為:
式中,M表示目標(biāo)像素的總數(shù),P(x,y)表示目標(biāo)范圍內(nèi)個各像素的灰度值。對圖5進(jìn)行特征提取后可知,對于孔洞和褶皺,其平均灰度應(yīng)為255,而臟點處的平均灰度為0。因此,利用平均灰度便可以很好地將形態(tài)上很相近的孔洞和臟點區(qū)分開。
(2)圓形度
圓形度(ρc)是描述目標(biāo)與圓形相似程度的量[5]。根據(jù)圓周長與圓面積的計算公式,圓形度的計算公式如下:
式中,As為目標(biāo)區(qū)域的面積;Ls為目標(biāo)區(qū)域的周長。圓形度越大,表明目標(biāo)與圓形的相似程度越高。分別對20個形態(tài)各異的孔洞、臟點和褶皺的圓形度進(jìn)行統(tǒng)計,結(jié)果如圖6所示。
圖6 紙病的圓形度
(3)長寬比
目標(biāo)區(qū)域長寬比(ρWL)的計算公式[5]為:
式中,WR是包圍目標(biāo)區(qū)域的最小矩形的寬度,LR是包圍目標(biāo)區(qū)域的最小矩形的長度。分別對20個形態(tài)各異的孔洞、臟點和褶皺的長寬比進(jìn)行統(tǒng)計,結(jié)果如圖7所示。
圖7 紙病的長寬比
(4)矩形度
矩形度(ρR)是描述目標(biāo)區(qū)域與矩形相似程度的量[5],其計算公式如下:
式中,AS為目標(biāo)區(qū)域的面積,AR是包含該目標(biāo)區(qū)域的最小矩形的面積。對于矩形目標(biāo),矩形度取最大值1,對細(xì)長而彎曲的目標(biāo),矩形度的值較小。分別對20個形態(tài)各異的孔洞、臟點和褶皺的矩形度進(jìn)行統(tǒng)計,結(jié)果如圖8所示。
圖8 紙病的矩形度
觀察圖6~圖8可知,孔洞和臟點的圓形度和矩形度都遠(yuǎn)高于褶皺的,褶皺的長寬比遠(yuǎn)大于孔洞和臟點的,因此可以將褶皺識別出來。而對于在形態(tài)上十分相似的孔洞和臟點,主要是通過平均灰度來區(qū)分。這樣利用平均灰度、圓形度、長寬比和矩形度便可以將3種紙病區(qū)分開。
圖9 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
本研究采用BP神經(jīng)網(wǎng)絡(luò)來建立紙病特征值和紙病種類之間的神經(jīng)網(wǎng)絡(luò)模型,并通過實驗來驗證該方法的可行性和準(zhǔn)確性。
3.1 BP神經(jīng)網(wǎng)絡(luò)
基本BP算法[7]包括2個方面:信號的前向傳播和誤差的反向傳播,即計算實際輸出時按從輸入到輸出的方向進(jìn)行,而權(quán)值和閾值的修正從輸出到輸入的方向進(jìn)行。BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖9所示,輸入層m個神經(jīng)元節(jié)點,隱含層n個神經(jīng)元節(jié)點,輸出層p個神經(jīng)元節(jié)點。輸入層第i個神經(jīng)元節(jié)點與隱含層第j個神經(jīng)元節(jié)點之間的權(quán)值為wji,隱含層第j個神經(jīng)元節(jié)點閾值為bj;隱含層第j個神經(jīng)元節(jié)點與輸出層第k個神經(jīng)元節(jié)點之間的權(quán)值為wkj,輸出層第k個神經(jīng)元節(jié)點閾值為bk。隱含層作用函數(shù)為sigmoid函數(shù),輸出層的作用函數(shù)采用純線性函數(shù)。
3.2 分類器設(shè)計
3.2.1 輸入層和輸出層神經(jīng)元節(jié)點數(shù)的確定
根據(jù)之前的分析可知,選取平均灰度、圓形度、長寬比和矩形度4個特征值便可以區(qū)分出孔洞、臟點和褶皺,因此BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元節(jié)點數(shù)為4個。根據(jù)3種紙病的特征值的特點,可以采用如下形式來表示輸出:
孔洞:(1,1,0,1);臟點:(0,1,0,1);褶皺:(1,0,1,0)
每4個單元的輸出代表一種紙病,因此輸出層的神經(jīng)元節(jié)點數(shù)也采用4個。
3.2.2 隱含層神經(jīng)元節(jié)點數(shù)的確定
隱含層神經(jīng)元節(jié)點數(shù)太少,容錯性差,不能識別訓(xùn)練樣本集中不包含的樣本,而隱含層神經(jīng)元節(jié)點數(shù)過多,不但使參數(shù)增多導(dǎo)致學(xué)習(xí)時間過長,而且會導(dǎo)致對樣本的學(xué)習(xí)能力降低,使BP神經(jīng)網(wǎng)絡(luò)總體性能變差[8]。因此,實際應(yīng)用中需要選擇一個最佳隱含層神經(jīng)元節(jié)點數(shù)??筛鶕?jù)參考式[9](5)~(7)求取最佳隱含層神經(jīng)元節(jié)點數(shù):
式中,m為隱含層神經(jīng)元節(jié)點數(shù);n為輸入層神經(jīng)元節(jié)點數(shù);l為輸出層神經(jīng)元節(jié)點數(shù);δ為1~10之間的常數(shù)[10]。由此可知,最佳隱含層神經(jīng)元節(jié)點數(shù)在2~14之間。
3.2.3 分類器訓(xùn)練
本研究應(yīng)用Matlab 7.6軟件對紙病識別BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行學(xué)習(xí)訓(xùn)練,以之前的60組數(shù)據(jù)作為訓(xùn)練樣本進(jìn)行訓(xùn)練。輸入層和輸出層均為4個神經(jīng)元節(jié)點,隱含層神經(jīng)元節(jié)點數(shù)在2~14之間,目標(biāo)誤差平方和為0.001,最高訓(xùn)練次數(shù)為1500,設(shè)置不同的隱含層神經(jīng)元節(jié)點數(shù)達(dá)到訓(xùn)練精度時所需要的訓(xùn)練次數(shù)如圖10所示。
圖10 設(shè)置不同隱含層神經(jīng)元節(jié)點數(shù)所需要的訓(xùn)練次數(shù)
因此,隱含層神經(jīng)元節(jié)點數(shù)為12時,所需的訓(xùn)練次數(shù)最少,即BP神經(jīng)網(wǎng)絡(luò)的收斂速度最快。訓(xùn)練參數(shù)和訓(xùn)練結(jié)果圖分別如表1和圖11所示。
表1 BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練參數(shù)
3.3 分類器測試結(jié)果
BP神經(jīng)網(wǎng)絡(luò)分類器測試用的樣本為通過掃描儀獲取的含有若干個孔洞、臟點和褶皺的20幅紙病圖像。根據(jù)網(wǎng)絡(luò)實際輸出和目標(biāo)樣本對照,對測試樣本進(jìn)行檢測,紙病識別結(jié)果如表2所示。由表2可知,所選用的特征量和設(shè)置的訓(xùn)練參數(shù)是合理的。BP神經(jīng)網(wǎng)絡(luò)分類器對臟點的識別率可達(dá)到100%,但對于孔洞和褶皺的識別率卻不能達(dá)到100%。主要原因是由于對于灰度階躍不是很明顯的褶皺,在圖像預(yù)處理階段容易造成欠檢測而丟失掉褶皺的信息,導(dǎo)致后續(xù)無法識別;其次是掃描儀獲取的圖像的清晰度不夠高。而對于孔洞的正確識別的關(guān)鍵是圖像預(yù)處理過程中可以得到連通的臟點的邊緣,這樣識別出的孔洞的數(shù)量減去臟點的數(shù)量才是真正孔洞的數(shù)量。但由于實際臟點的多樣性,會導(dǎo)致無法得到連通的臟點邊緣,從而造成對孔洞的識別存在誤差。
圖11 BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練誤差
表2 分類器識別結(jié)果
4.1 采用的雙閾值分割和圖像合成相結(jié)合的預(yù)處理方法,將孔洞、臟點和褶皺的特征信息集合到一幅圖像中,再利用BP神經(jīng)網(wǎng)絡(luò),可以很好地識別出同時含有孔洞、臟點和褶皺的圖像中紙病的種類和數(shù)量,但識別率尚不能達(dá)到100%,主要是由于圖像預(yù)處理階段存在欠檢測。因此,還需進(jìn)一步改進(jìn)圖像的預(yù)處理算法,同時,嘗試采用清晰度更高的圖像獲取設(shè)備。
4.2 實驗結(jié)果表明,選取平均灰度、圓形度、長寬比和矩形度作為紙病的特征值,即作為BP神經(jīng)網(wǎng)絡(luò)的輸入值,可以很好地對孔洞、臟點和褶皺進(jìn)行分類。
4.3 由于本研究只討論了3種常見的紙病類型,對于其他種類的紙病還存在著局限性。因此,在紙病樣本的特征值選擇和算法方面還需進(jìn)行進(jìn)一步的研究和優(yōu)化,以便對更多的紙病類型進(jìn)行檢測。
[1]關(guān)建華.全幅紙病檢測技術(shù)及在造紙中的應(yīng)用[J].中國造紙,2002,21(6):32.
[2]徐 杰.基于機(jī)器視覺的紙病檢測方法研究與應(yīng)用[D].南京:南京林業(yè)大學(xué),2008.
[3]陳文凱.基于機(jī)器視覺的紙病檢測算法研究與集成[D].南京:南京林業(yè)大學(xué),2009.
[4]吳 冰,秦志遠(yuǎn).自動確定圖像二值化最佳閾值的新方法[J].測繪學(xué)院學(xué)報,2001,18(4):283.
[5]朱 虹.數(shù)字圖像處理基礎(chǔ)[M].北京:科學(xué)出版社,2005.
[6]劉 禾.數(shù)字圖像處理及應(yīng)用[M].北京:中國電力出版社,2006.
[7]韓力群.人工神經(jīng)網(wǎng)絡(luò)教程[M].北京:科學(xué)出版社,2005.
[8]金成曉,俞婷婷.基于BP神經(jīng)網(wǎng)絡(luò)的我國制造業(yè)產(chǎn)業(yè)安全預(yù)警研究[J].北京工業(yè)大學(xué)學(xué)報:社會科學(xué)版,2010(1):8.
[9]范秋芳.基于BP神經(jīng)網(wǎng)絡(luò)的中國石油安全預(yù)警研究[J].運籌與管理,2007(10):91.
[10]Gallant Stephen I.Neural network learning and expert systems[M].London:The MIT Press,1993.