摘 要:針對監(jiān)控屏幕中的數(shù)字字符提出了一種高效的識別算法。該算法利用字符圖像的歐拉數(shù)、凹陷區(qū)、水平和垂直穿線等組合特征完成級聯(lián)分類,無須對待識別字符進(jìn)行規(guī)整、細(xì)化和輪廓提取處理,降低了算法復(fù)雜度,減少了因細(xì)化變形、輪廓斷裂引起的誤識和拒識。在以此算法為基礎(chǔ)實(shí)現(xiàn)的監(jiān)控信息自動采集與記錄系統(tǒng)中,對5 000多個(gè)屏幕顯示數(shù)字字符進(jìn)行識別測試,平均每秒處理125個(gè)數(shù)字,正確識別率達(dá)到98.70%,誤識率僅為1.30%。實(shí)驗(yàn)表明該算法在處理速度、識別精度、抗干擾性方面表現(xiàn)良好。
關(guān)鍵詞: 數(shù)字識別;歐拉數(shù);凹陷區(qū);穿線
中圖法分類號:TN911.73; TP391.41 文獻(xiàn)標(biāo)識碼:A 文章編號:1001-3695(2006)10-0172-02
Effective Recognition Algorithm for Digits Based on Combination Features
KONG Yueping1,2,ZENG Ping1,LI Zhijie2 ,ZHENG Haihong1, XU Peipei1
(1.Research Institute of Computer Peripherals, Xidian University, Xi’an Shanxi 710071, China;2.College of Information Control, Xi’an University of Architecture Technology, Xi’an Shanxi 710055, China)
Abstract:An effective recognition algorithm is proposed for digits on monitor screen. By using the features of euler number, concave field, horizontal and vertical crossing Line, digits can be classified and recognized. The algorithm doesn’t needs any regularization, thinning and outlining operations on the digits image. So it achieves low memory and computation. With the proposed method a monitor information catching and record system is realized. More than 5000 digits are involved in the experiments and a conclusion is drawn that the average recognition rate is 98.70%, the error rate is 1.30%, and the recognition speed is 125 digits per second. Experiments show that the algorithm is fast with high recognition rate and strong antiinterference ability.
Key words:Digits Recognition;Euler Number;Concave Field;Crossing Line
數(shù)字識別是光學(xué)字符識別(OCR)的一個(gè)重要分支,在脫機(jī)自動記錄、車牌號碼、身份證號碼、支票號碼、郵政編碼以及其他編號識別方面具有重要的實(shí)用價(jià)值。傳統(tǒng)OCR過程大都包含二值化、去噪、規(guī)整、細(xì)化、輪廓提取、特征提取、字體字符分類等處理步驟[1,2],系統(tǒng)運(yùn)行效率較低。許多數(shù)字字符識別系統(tǒng)為了提高識別率,還需對字符筆畫進(jìn)行大量的形狀分析或筆畫擬合,尋找各筆畫所包含的線段、弧、鈍角、銳角、圈等,有的還引入了投影運(yùn)算[3] 、神經(jīng)網(wǎng)絡(luò)[3,4],甚至級聯(lián)分組神經(jīng)網(wǎng)絡(luò)[5],使識別系統(tǒng)變得非常龐大和復(fù)雜,無法滿足監(jiān)控信息自動采集與記錄、車牌識別等實(shí)時(shí)處理的要求。基于整體凹陷特征的手寫數(shù)字識別算法[6],避免了規(guī)整、細(xì)化、輪廓提取等圖像處理步驟,但其凹陷區(qū)生成算法仍有冗余,且未考慮字符圖像采樣不理想時(shí)產(chǎn)生的虛假凹陷特征。本文從快速、準(zhǔn)確的屏幕監(jiān)控?cái)?shù)字識別目標(biāo)出發(fā),設(shè)計(jì)了基于字符圖像歐拉數(shù)、凹陷區(qū)、水平和垂
直穿線等組合特征的數(shù)字字符級聯(lián)分類器,僅需對待識別對象進(jìn)行多級分類就可達(dá)到識別的目的。
1 數(shù)字識別算法
字符分類特征的選擇決定著識別的效果,因此所選特征應(yīng)充分反映字符的本質(zhì)并遵循下述原則[7,8]:①特征的分類能力強(qiáng),足以區(qū)分各個(gè)字符;②特征穩(wěn)定,受字形變化影響越小越好;③特征便于提取,抽取速度快;④特征數(shù)量盡可能少。
由于阿拉伯?dāng)?shù)字均由一些曲線構(gòu)成,因此環(huán)(或稱孔洞)是最基本的拓?fù)涮卣鳎淮送猓罡咝У淖R別器——人眼在識別數(shù)字時(shí),根本不關(guān)心字符的直線數(shù)、凹弧凸弧數(shù)、鈍角銳角數(shù),往往只觀察字符的整體凹凸形狀和上下、左右結(jié)構(gòu)關(guān)系就可以高效地判斷其所屬[6,9]。本文基于以上特征分析和選擇原則,以數(shù)字字符的歐拉數(shù)、凹陷區(qū)、全數(shù)字列、水平穿線作為拓?fù)洳蛔儗傩裕岢隽嘶谏鲜鼋M合特征的快速數(shù)字識別算法,系統(tǒng)整體框架如圖1所示。由于該算法依據(jù)字符的組合特征完成識別,與字符的大小、位置無關(guān),因此,預(yù)處理階段僅需二值化、去噪、字符分割即可,核心由后續(xù)的多級特征分類器組成,即利用數(shù)字字符的歐拉數(shù)特征進(jìn)行一級分類;其次,利用字符圖像的凹陷區(qū)特征、全數(shù)字列、水平穿線特征達(dá)到最終分類識別的目的。
1.1 數(shù)字字符的歐拉數(shù)特征
歐拉數(shù)的定義可表示為式(1),其中C表示圖像中數(shù)字字符前景區(qū)域的連通分支數(shù),H表示字符前景區(qū)域內(nèi)的孔洞數(shù)。
E=C-H[2](1)
對數(shù)字字符而言,其中的0,4,6,8,9均存在一個(gè)或兩個(gè)孔洞,而1,2,3,5,7則沒有孔洞。因此,利用歐拉數(shù)特征值E可將數(shù)字字符集合劃分成三個(gè)子集,以縮小判別空間,利于下一步識別處理。
1.2 數(shù)字字符的凹陷區(qū)特征
在待識別字符圖像中的任意兩點(diǎn)間畫直線,直線中不屬于字符前景部分所在的區(qū)域即為圖像的凹陷區(qū)。左凹陷區(qū)指字符圖像的任意背景點(diǎn)右邊均存在字符筆畫的凹陷區(qū);右凹陷區(qū)指字符圖像的任意背景點(diǎn)左邊均存在字符筆畫的凹陷區(qū)[1,6]。
本文對文獻(xiàn)[6]中提取圖像凹陷區(qū)的算法進(jìn)行了改進(jìn),即沿水平、垂直、45°和135°對角線四個(gè)方向發(fā)出射線,掃描、判斷射線是否與字符前景相交,若有x條射線與字符相交,則該背景點(diǎn)標(biāo)記為x,從而得到字符圖像的凹陷區(qū)賦值背景場。算法描述如下:
{ 初始化所有背景點(diǎn)標(biāo)記為0;沿水平、垂直、45°、135°射線方向依次作如下處理;
{取出一個(gè)圖像行(射線)形成行向量Li;
if Li中包含數(shù)字字符部分且僅有一個(gè)連通區(qū)域
then所有背景點(diǎn)標(biāo)記增1;
if Li中包含數(shù)字字符部分且有一個(gè)以上連通區(qū)域
then Li中連通區(qū)域之間的所有背景點(diǎn)標(biāo)記增2,其余背景點(diǎn)標(biāo)記增1;}
}
在凹陷區(qū)賦值背景場標(biāo)記圖像基礎(chǔ)上,掃描字符圖像每個(gè)凹陷區(qū)的標(biāo)記背景場,若每個(gè)背景點(diǎn)右邊均存在數(shù)字字符部分,則該數(shù)字字符具有左凹陷區(qū)。右凹陷區(qū)的判斷方法與此類似,不再贅述。圖2即是數(shù)字字符9,6,1的賦值背景場標(biāo)記圖像。圖2(a)中標(biāo)記為垂直線段的部分即為字符9的右凹陷區(qū);圖2(b)中標(biāo)記為垂直線段的部分即為字符6的左凹陷區(qū)。數(shù)字字符的凹陷區(qū)數(shù)目CN及左、右位置CL,CR反映了字符的凹凸特征,依此特征可實(shí)現(xiàn)在歐拉數(shù)分類基礎(chǔ)上更精細(xì)的二級分類。
1.3 數(shù)字字符的水平垂直穿線特征
由于圖像的采樣條件不一定理想,會出現(xiàn)虛假凹陷區(qū)(如圖2(c)中垂線部分所示的凹陷區(qū)),因此需要設(shè)置凹陷區(qū)尺度閾值,判斷并消除虛假凹陷區(qū),閾值可根據(jù)圖像大小來確定;但設(shè)定不合理時(shí),仍會消去某些真正的凹陷區(qū),如數(shù)字字符4的右凹陷區(qū),為彌補(bǔ)此缺陷將在全數(shù)字列、水平穿線特征分類上加以完善。
設(shè)originM×N為待識別數(shù)字字符的二值圖像,定義字符前景點(diǎn)位置集合為式(2),全數(shù)字列標(biāo)志為式(3),水平穿線與字符前景的交點(diǎn)集合為式(4),該交點(diǎn)集與參考點(diǎn)的位置標(biāo)志為式(5)。
F={(i, j)|(i, j)為字符前景像素點(diǎn)的位置}(2)
Tc={t|t=True,if j=a(常數(shù))∧(i, j)∈F}(3)
Hr={(i, j)|r=(b,c)∧i=b∧(i, j)∈F}(4)
LHr={v|v=True,if (x,y)∈Hr,|(x,y)-(b,c)|≤0}(5)
其中,r=(b,c)為水平穿線參考點(diǎn),i=1,2,…,M;j=1,2,…,N。顯然對于數(shù)字字符1,4滿足全數(shù)字列穿線特征,而0,2,3,5,6,7,9則不滿足此條件。此外,對于數(shù)字字符2,3,5分別以其頂部、底部凹陷區(qū)的第一行最右像素點(diǎn)r1=(c1,d1),r2=(c2,d2)為基準(zhǔn)作兩條水平穿線,直線和字符前景的交點(diǎn)集Hr1,Hr2與參考點(diǎn)的位置關(guān)系LHr1,LHr2表現(xiàn)各異,據(jù)此即可完成歐拉數(shù)、凹陷區(qū)分類基礎(chǔ)之上的最終識別。
1.4 數(shù)字識別算法描述
綜合上述歐拉數(shù)、凹陷區(qū)、全數(shù)字列、水平穿線特征的定義和分析,可得出基于字符圖像組合特征的數(shù)字判別邏輯關(guān)系如式(6)。
X=0E=0,CN=0
1E=1,CN≤1,Tc=True
2E=1,CN>1,LHr1=False,LHr2=True
3E=1,CN>1,LHr1=False,LHr2=False
4E=0,CN>0,Tc=True
5E=1,CN>1,LHr1=True
6E=0,CN>0,Tc=False,CL=False
7E=1,CN≤1,Tc=False
8E=-1
9E=0,CN>0,Tc=False,CL=True(6)
其中,CN表示凹陷區(qū)數(shù)目,CL,CR表示左、右凹陷區(qū)存在標(biāo)志。因此,基于組合特征數(shù)字識別算法的形式描述為
{ 原始采集圖像二值化、去噪、字符分割,得到待識別數(shù)字字符圖像originM×N;
由originM×N計(jì)算字符前景像素點(diǎn)集合F;
由originM×N計(jì)算字符賦值背景場圖像back_signM×N;
由back_signM×N計(jì)算字符圖像的凹陷區(qū)數(shù)目CN,左、右凹陷區(qū)存在標(biāo)志CL,CR;
由originM×N,F(xiàn)計(jì)算字符圖像的E,Tc,LHr1,LHr2;
根據(jù)式(6)判別數(shù)字值X;
}
2 實(shí)驗(yàn)結(jié)果及討論
以此算法為基礎(chǔ),在Intel Pentium(R)1.6GHz處理器、256MB內(nèi)存的計(jì)算機(jī)上以Visual C++6.0為平臺設(shè)計(jì),實(shí)現(xiàn)了監(jiān)控信息自動采集與記錄系統(tǒng),對采集到的5 222個(gè)屏幕顯示數(shù)字字符進(jìn)行測試,識別結(jié)果及系統(tǒng)執(zhí)行時(shí)間統(tǒng)計(jì)如表1、表2所示。實(shí)驗(yàn)數(shù)據(jù)表明,該算法充分利用了數(shù)字字符結(jié)構(gòu)簡單、判別集有限的特點(diǎn),避免了細(xì)化、輪廓提取等圖像處理步驟,節(jié)省了存儲空間和運(yùn)行時(shí)間,減少了誤差,達(dá)到了快速準(zhǔn)確識別數(shù)字字符的效果,其性能可靠、抗干擾性較強(qiáng),是解決數(shù)字識別問題的有效方法之一。
表1 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)
參考文獻(xiàn):
[1] Milan Sonka, Vaclav Hlavac, Roger Boyle. 圖像處理、分析與機(jī)器視覺[M]. 北京: 人民郵電出版社, 2001. 204-211.
[2]章毓晉. 圖像工程——圖像處理和分析[M]. 北京: 清華大學(xué)出版社, 2003.232-233,244.
[3]Minchul Jung. Font Classification and Character Segmentation for Postal Address Reading[D]. USA: Bell Howell Information and Learning Company,2001.30-36, 65-67.
[4]IChang Jou, ShihShien Yu, Tsay S C. A New Feature Extraction Method by Neural Networks[C]. Circuits and Systems IEEE International Symposium,1990.3249-3252.
[5]王偉, 盛立東. 基于級聯(lián)分組BP神經(jīng)網(wǎng)絡(luò)的高精度手寫體數(shù)字識別系統(tǒng)[J]. 中文信息學(xué)報(bào),2000,14(2): 60-62.
[6]龔才春, 劉榮興. 基于整體特征的快速手寫體數(shù)字字符識別[J]. 計(jì)算機(jī)工程與應(yīng)用,2004,(19): 82-83.
[7]Torfinn Taxt. Recognition of Handwritten Symbols[J]. Pattern Recognition,1990,23(11):11561166.
[8]杜建強(qiáng), 陳月林, 劉少媚, 等. 工程圖紙上的字符提取和識別系統(tǒng)[J]. 計(jì)算機(jī)技術(shù)與自動化,1995, 14(4): 40-42.
[9]許捍衛(wèi), 王成. 一種簡單的數(shù)字識別方法研究[J]. 地礦測繪,2003, (4): 31-32.
作者簡介:
孔月萍(1965-),女,四川人,副教授,博士研究生,主要研究方向?yàn)閳D形圖像處理、數(shù)據(jù)庫技術(shù);曾平(1956-),男,四川人,博導(dǎo),碩士,主要研究方向?yàn)閳D形圖像處理、計(jì)算機(jī)外部設(shè)備;李智杰(1981-),男,河南人,碩士研究生,主要研究方向?yàn)閳D像處理;鄭海紅(1979-),女,河北人,博士研究生,主要研究方向?yàn)閳D形圖像處理;徐培培(1955-),女,上海人,高工,主要研究方向?yàn)橛?jì)算機(jī)外部設(shè)備。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文