魯 超,滕國(guó)偉,鄒雪妹,安 平
(上海大學(xué) 通信與信息工程學(xué)院,上海 200444)
人民幣作為我國(guó)的法定貨幣,冠字號(hào)碼具有一票一號(hào)的特征,研究基于冠字號(hào)碼的自動(dòng)識(shí)別技術(shù),對(duì)于加強(qiáng)人民幣的監(jiān)督管理有著很重要的意義。目前,冠字號(hào)字符識(shí)別方法主要有:模板匹配法、基于字符結(jié)構(gòu)特征的方法和基于神經(jīng)網(wǎng)絡(luò)的方法[1]。模板匹配法[2]是模式識(shí)別中最常用的基本識(shí)別算法,很多學(xué)者對(duì)模板匹配法進(jìn)行了改進(jìn),如文獻(xiàn)[3]利用圖像中各點(diǎn)周圍8鄰域點(diǎn)的像素值,對(duì)該點(diǎn)像素值特征加權(quán)改造,從而使圖像中有字符筆畫的點(diǎn)具備不同的權(quán)重,然后再進(jìn)行匹配識(shí)別,在一定程度上提高了檢測(cè)準(zhǔn)確率;文獻(xiàn)[4]針對(duì)模板匹配過程需要對(duì)圖像所有點(diǎn)計(jì)算方差計(jì)算量大且耗時(shí)的缺點(diǎn),提出一種區(qū)域模板匹配算法,即把單字符圖像劃分為若干區(qū)域,每一個(gè)區(qū)域?yàn)橐粋€(gè)網(wǎng)格,以區(qū)域內(nèi)黑色像素的個(gè)數(shù)為特征,對(duì)每個(gè)區(qū)域的數(shù)字特征進(jìn)行提取得到字符特征向量,然后計(jì)算與模板特征向量距離對(duì)字符進(jìn)行識(shí)別?;诮Y(jié)構(gòu)特征也是常用的方法之一,例如文獻(xiàn)[5]提出一種基于結(jié)構(gòu)特征的字符識(shí)別算法,通過選用三種相互融合、補(bǔ)償?shù)慕Y(jié)構(gòu)特征——穿越線交點(diǎn)、航程、區(qū)域密度來描述字符,此外,比較常用的結(jié)構(gòu)特征[6]還有重心、輪廓、直方圖等。用于字符識(shí)別的神經(jīng)網(wǎng)絡(luò)[7-8]方法是根據(jù)人的經(jīng)驗(yàn)來提取字符的特征,用特征來訓(xùn)練神經(jīng)網(wǎng)絡(luò)分類器,再利用神經(jīng)網(wǎng)絡(luò)分類器來識(shí)別字符。
上述算法對(duì)整潔干凈的人民幣冠字號(hào)字符具有較高的識(shí)別率,但對(duì)嚴(yán)重污染磨損的人民幣冠字號(hào)字符識(shí)別率卻很低?,F(xiàn)實(shí)中人民幣在流通過程會(huì)有不同程度的磨損污染,這些算法很難滿足實(shí)際應(yīng)用要求。
模板匹配與多結(jié)構(gòu)特征識(shí)別字符算法流程分為定位分割、分類識(shí)別和驗(yàn)證糾錯(cuò)3個(gè)階段,其中在分割部分提出了比通用的垂直投影法魯棒性更強(qiáng)的基于字符輪廓的字符分割方法;在最關(guān)鍵的識(shí)別部分首先對(duì)經(jīng)過多尺度縮放后的待檢字符區(qū)利用模板匹配掃描確定3個(gè)候選字符,然后利用魯棒性更強(qiáng)的區(qū)域密度特征矢量對(duì)候選字符進(jìn)行最終篩選判定。
1)字符區(qū)域初選
如圖1a是目前市面上銷售的點(diǎn)鈔機(jī)所拍攝到的50萬(wàn)像素的整幅人民幣正面圖像及本文使用x、y坐標(biāo)軸正方向,號(hào)碼位于紙幣正面的左下方,位置固定,通過人民幣圖像區(qū)域和背景圖像區(qū)域的灰度差確定紙幣的邊界。然后,根據(jù)號(hào)碼在紙幣中的位置關(guān)系分割包含人民幣號(hào)碼的圖像子域,如圖1b所示。
圖1 字符區(qū)域初選
2)基于輪廓分割字符
準(zhǔn)確定位出字符區(qū)域并對(duì)其進(jìn)行單字符分割是識(shí)別號(hào)碼前關(guān)鍵的一步。最常用的方法是垂直投影法,這種方法易受二值化后噪聲的影響,尤其是對(duì)污染磨損的紙幣字符的分割,容易定位偏上或偏下,為克服這一方法的缺點(diǎn),本文提出了一種魯棒性更強(qiáng)的基于字符輪廓的字符分割算法,具體步驟如下:
(1)對(duì)字符區(qū)自適應(yīng)二值化。其中閾值本身是一個(gè)變量,自適應(yīng)閾值T(x,y)在每個(gè)像素點(diǎn)都不同,計(jì)算像素點(diǎn)周圍的b×b區(qū)域的像素值加權(quán)平均,然后減去一個(gè)常數(shù)c來得到自適應(yīng)閾值,位于(xi,yi)處閾值計(jì)算如下
對(duì)圖像進(jìn)行二值化,即
效果如圖2b所示對(duì)不同的嚴(yán)重污染磨損的字符都實(shí)現(xiàn)了較好的二值化提取。
(2)從二值化圖像中提取明亮區(qū)域的外輪廓并初步排除較小噪聲。根據(jù)像素值跳變對(duì)二值化圖像明亮區(qū)域提取外輪廓,同時(shí)設(shè)定閾值,閾值為單個(gè)數(shù)字字符1輪廓像素點(diǎn)數(shù)目的1/2,當(dāng)輪廓像素點(diǎn)數(shù)目小于閾值則排除該輪廓,最終篩選出的輪廓圖像如圖2c所示,然后,遍歷各輪廓像素點(diǎn)的坐標(biāo)確定各輪廓的外接矩形如圖2d所示,各矩形用左上頂點(diǎn)坐標(biāo)(x,y),高h(yuǎn)、寬w表示。
(3)根據(jù)冠字號(hào)字符之間的位置關(guān)系進(jìn)一步排除較大噪聲進(jìn)而分割出最終的單字符區(qū)。如圖2c所示的劃痕和混入的背景圖案不能通過步驟(2)設(shè)定閾值簡(jiǎn)單的排除掉,利用冠字號(hào)字符的相鄰字符在水平方向上字符間隔相同和在垂直方向上位于同一水平的特點(diǎn):(a)在y軸方向上統(tǒng)計(jì)各外接矩形水平中分線y坐標(biāo){y0,y1,…,yj,…,yn}及各矩形高度{h0,h1,…,hj,…,hn},計(jì)算出水平中分線坐標(biāo)的中位數(shù)ymid及高度均值have,遍歷比較各矩形高度hj及水平中分線坐標(biāo)yj,若不滿足{|yj-ymid|<have/2}時(shí)則排除該外接矩形;(b)在水平方向上統(tǒng)計(jì)各外接矩形垂直中分線x坐標(biāo){x0,x1,…,xj,…,xn},按x坐標(biāo)遞增順序排序,然后依次計(jì)算出相鄰x坐標(biāo)間隔{d1,d2,…,dj,…,dn};(c)去夾雜,從間隔中找到中位數(shù)dmid,若滿足{xj+1-xj-1<3/2×dmid,xj-xj-1<dmid,xj+1-xj<dmid}時(shí)則排除該外接矩形;(d)填補(bǔ),紙幣字符與劃痕連在一起或者字符磨損嚴(yán)重經(jīng)過以上處理都可能被排除掉,因此,在這需要進(jìn)行填補(bǔ),若滿足{xj-xj-1>9/5×dmid}則填補(bǔ)一個(gè)矩形,填補(bǔ)矩形寬為相鄰兩外接矩形寬的均值wave=(wj+wj+1)/2,高為相鄰兩外接矩形高的均值have=(hj+hj+1)/2,左上頂點(diǎn)坐標(biāo) x=(xj+xj+1-wave)/2,坐標(biāo)y為相鄰兩外接矩形左上角頂點(diǎn)y坐標(biāo)的均值y=(yj+yj+1)/2,經(jīng)過以上處理獲得篩選后的字符區(qū)如圖2e所示。
(4)按規(guī)則尺寸歸一化并獲取最終待檢區(qū)。這里采用一種與通常所指的歸一化不同的方法,處理如下:(a)在y軸方向上找到各個(gè)外接矩形水平中分線y坐標(biāo){y0,y1,…,yj,…,y10},求得均值yave,所有外接矩形尺寸調(diào)整則都以直線y=yave為水平中位線向上下方向延伸;(b)在x軸方向上找到各外接矩形的垂直中分線xj坐標(biāo),每個(gè)外接矩形分別以自己的垂直中分線x=xj向左右方向延伸;(c)各外接矩形以(xj,yave)為中心尺寸調(diào)整為預(yù)先人為統(tǒng)計(jì)的最大字符的尺寸,最終獲得待檢字符區(qū),如圖2f所示。
圖2 字符分割過程
根據(jù)各字符輪廓數(shù)目將字符分類并對(duì)待檢字符區(qū)進(jìn)行改進(jìn)的模板匹配掃描,確定最匹配字符及對(duì)應(yīng)最佳匹配區(qū)和2個(gè)候選字符及2個(gè)對(duì)應(yīng)最佳匹配區(qū)。
1)基于輪廓數(shù)目的分類
根據(jù)待檢字符的內(nèi)外輪廓數(shù)目總和將字符進(jìn)行分類識(shí)別,字符輪廓數(shù)目可分為:3輪廓、2輪廓和1輪廓。3輪廓:B,8;2輪廓:A,D,P,Q,R,0,4,6,9;1輪廓:C,E,F(xiàn),G,H,I,J,K,L,M,N,S,T,U,V,W,X,Y,Z,1,2,3,5,7。每一類中的字符只需要與自己所屬字符類中的字符模板進(jìn)行匹配識(shí)別與驗(yàn)證。步驟如下:
(1)對(duì)單個(gè)待檢字符區(qū)進(jìn)行自適應(yīng)二值化處理獲得二值化圖像;
(2)篩除噪聲輪廓,僅提取字符區(qū)二值化圖像中所有明亮區(qū)域的外輪廓,計(jì)算所有輪廓上像素點(diǎn)個(gè)數(shù),找到輪廓序列像素點(diǎn)數(shù)目最多的那個(gè)輪廓為字符輪廓;
(3)對(duì)(2)中篩選出的字符提取內(nèi)部輪廓,按內(nèi)、外輪廓數(shù)目之和將待檢字符歸類。
2)將分割的單個(gè)字符進(jìn)行多級(jí)縮放獲得n張不同尺寸的待掃描圖像。
模板匹配法對(duì)字符尺寸要求較高,模板圖像的尺寸固定,待掃描圖像中字符的尺寸與模板尺寸越接近則匹配度越高就越能被正確識(shí)別,對(duì)分割出的單字符區(qū)按新定義的規(guī)則進(jìn)行多次縮放,使得在放大與縮小過程產(chǎn)生的多個(gè)待檢字符區(qū)中會(huì)有一個(gè)待檢字符區(qū)中的字符尺寸能夠極限接近模板尺寸,同時(shí),縮放能對(duì)變形的字符進(jìn)行校正,從而更好地解決紙幣褶皺變形造成的錯(cuò)誤識(shí)別問題。
規(guī)則:字符寬高比為1∶2,為了同時(shí)達(dá)到等比例調(diào)整字符尺寸和糾正變形字符2個(gè)目的,縮放既有按寬高步長(zhǎng)1∶2等比例縮放,又要有非等比例縮放。針對(duì)50萬(wàn)像素的點(diǎn)鈔機(jī)算法為例,使用的字符模板尺寸為12×22,通過1.1節(jié)定位分割出的單字符區(qū)尺寸為14×26,一方面,對(duì)字符寬和高分別以1個(gè)像素和2個(gè)像素為步長(zhǎng)進(jìn)行等比例縮放,得到13×24、14×26、15×28三張待掃描圖像,另一方面進(jìn)行非等比例縮放得到圖像尺寸13×25、14×25、14×27、15×27,最終,將14×26的單字符區(qū)圖像按上述規(guī)則進(jìn)行尺寸調(diào)整獲得7張圖像{Pi,i=0,1,2,…,6},尺寸依次為:13×24、13×25、14×25、14×26、14×27、15×27、15×28。
3)進(jìn)行模板匹配掃描獲得3個(gè)候選字符
單個(gè)待檢字符區(qū)圖像通過尺寸調(diào)整獲得n張待掃描圖像{Pi,i=0,1,2,…,n-1},依次用待檢字符所屬分類中的模板對(duì)n張待掃描圖像{Pi,i=0,1,2,…,n-1}進(jìn)行遍歷掃描,計(jì)算出對(duì)應(yīng)每個(gè)模板的最佳匹配值及相應(yīng)匹配區(qū)域,篩選出匹配度最接近的3個(gè)字符作為候選字符,具體步驟如下:
(1)利用單個(gè)模板對(duì)單張待掃描圖像進(jìn)行模板掃描計(jì)算并比較出最小方差。設(shè)圖像PT為待檢字符所屬分類中的一個(gè)模板,尺寸為M×N,待掃描圖像Pk(0≤k≤n-1),尺寸為L(zhǎng)k×Wk(Lk>M,Wk>N),匹配過程是將模板PT在待掃描圖像Pk上滑動(dòng),計(jì)算PT與其覆蓋下的待掃描圖像Pk的子圖像Pkx,y的方差Dk(x,y)
其中,(x,y)為模板左上角頂點(diǎn)在待掃描圖像中的坐標(biāo),其中0≤x≤Lk-M、0≤y≤Wk-N,方差越小說明模板與相應(yīng)圖像越接近,對(duì)圖像Pk完成模板掃描,總共獲得(Lk-M+1)×(Wk-N+1)個(gè)方差值,比較計(jì)算出最小方差Dk并保存獲得該最小方差的模板位置坐標(biāo)(x,y)。
(2)依次用(1)中的模板圖像PT按照步驟(1)所講過程完成對(duì)n張待掃描圖像{Pi,i=0,1,2,…,n-1}的掃描計(jì)算,對(duì)應(yīng)n個(gè)待掃描圖像得到n個(gè)方差{Di,i=0,1,2,…,n-1}及與n個(gè)方差值對(duì)應(yīng)的坐標(biāo),從n個(gè)方差比較獲得最小方差值DT和與該最小方差值對(duì)應(yīng)的坐標(biāo),以該坐標(biāo)為左上頂點(diǎn)在相應(yīng)的待掃描圖像上切割出尺寸為M×N的圖像即為與模板PT對(duì)應(yīng)的匹配區(qū)域。
(3)經(jīng)過過程(1)、(2)可以得到單個(gè)模板PT對(duì)應(yīng)的最小方差DT和匹配區(qū)域,依次用待掃描圖像所屬分類中所有模板按照(1)、(2)步驟完成模板掃描計(jì)算,例如,若待檢字符區(qū)被歸為2輪廓分類中,對(duì)應(yīng)著2輪廓分類中的字符:A,D,P,Q,R,0,4,6,9共有9個(gè)模板,計(jì)算過后,對(duì)應(yīng)著9個(gè)模板就有9個(gè)最小方差和與方差對(duì)應(yīng)的9個(gè)匹配區(qū)域。
(4)將(3)得到的所有模板的最小方差按遞增順序排列,提取獲得其中3個(gè)最小的方差和與之對(duì)應(yīng)的3個(gè)匹配區(qū)域,最小方差對(duì)應(yīng)的那個(gè)模板字符就是候選字符,3個(gè)最小方差對(duì)應(yīng)著3個(gè)候選字符。
1)提取區(qū)域密度特征矢量過程
(1)排除噪聲的影響,對(duì)匹配區(qū)域去噪:模板掃描過程使用的是灰度圖像,提取的匹配區(qū)域也是灰度圖像,如圖3a所示,尺寸為M×N,對(duì)匹配區(qū)域自適應(yīng)二值化處理,二值圖像中亮點(diǎn)像素值為255,暗點(diǎn)像素值為0,如圖3b所示;統(tǒng)計(jì)各個(gè)孤立亮點(diǎn)區(qū)域的像素點(diǎn)總數(shù),以樣本中數(shù)字字符1的像素點(diǎn)總數(shù)的一半為閾值,將所有亮點(diǎn)總數(shù)小于閾值的孤立亮點(diǎn)區(qū)域像素值重新賦值為0,去噪效果如圖3c所示。
圖3 去噪過程效果圖
(2)統(tǒng)計(jì)密度特征矢量:根據(jù)字符結(jié)構(gòu)特征,將去噪處理后的字符圖像劃分為等間隔對(duì)稱的n塊區(qū)域。以本文實(shí)驗(yàn)過程為例,分割提取的匹配區(qū)域圖像的尺寸為12×22,將匹配區(qū)域?qū)ΨQ的劃分為以下9塊:1區(qū)為0≤x≤3∩0≤y≤6;2區(qū)為4≤x≤7∩0≤y≤6;3 區(qū)為8≤x≤11∩0≤y≤6;4 區(qū) 為0≤x≤3∩7≤y≤13;5 區(qū) 為 4≤x≤7∩7≤y≤13;6 區(qū) 為 8≤x≤11∩7≤y≤13;7 區(qū)為0≤x≤3∩14≤y≤21;8 區(qū)為4≤x≤7∩14≤y≤21;9區(qū)為8≤x≤11∩14≤y≤21;依次統(tǒng)計(jì)1~9區(qū)各區(qū)亮點(diǎn)總數(shù),1區(qū)中亮點(diǎn)總數(shù)對(duì)應(yīng)特征向量中元素d0,2區(qū)亮點(diǎn)總數(shù)對(duì)應(yīng)特征向量中元素d1,直到9區(qū),組成9維特征向量 d={d0,d1,d2,d3,d4,d5,d6,d7,d8}。
2)驗(yàn)證規(guī)則
(1)設(shè)對(duì)最匹配字符的匹配區(qū)域提取的區(qū)域密度特征矢量為d={d0,d1,d2,...,dn-1},對(duì)應(yīng)該最匹配字符的標(biāo)準(zhǔn)區(qū)域密度特征矢量為di={di0,di1,di2,...,di(n-1)},統(tǒng)計(jì)特征向量所有位置滿足條件|dij-dj|≥delta的元素總數(shù)nd,其中0≤j≤n-1,delta為允許的矢量中單個(gè)元素與標(biāo)準(zhǔn)矢量元素之間的最大誤差,設(shè)N為特征向量中允許超出誤差范圍的元素的最大個(gè)數(shù),當(dāng)nd≤N,則認(rèn)為最匹配字符就是待掃描圖像中字符,為最終識(shí)別結(jié)果,若nd>N,則提取下一個(gè)候選字符匹配區(qū)域的區(qū)域密度矢量,按同樣的方法與該候選字符的標(biāo)準(zhǔn)區(qū)域密度特征矢量進(jìn)行比較驗(yàn)證,直到滿足nd≤N,則認(rèn)為候選字符為最終識(shí)別結(jié)果,每個(gè)候選字符的驗(yàn)證所參考的標(biāo)準(zhǔn)區(qū)域密度矢量都與候選字符對(duì)應(yīng)。
(2)若經(jīng)過(1)驗(yàn)證,3個(gè)候選字符都不滿足匹配條件,則令N=N+1,繼續(xù)進(jìn)行(1)的驗(yàn)證,若依然沒有滿足要求的候選字符,則認(rèn)為紙幣過度磨損無法識(shí)別,在該字符位置輸出空格,實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)中認(rèn)為識(shí)別錯(cuò)誤。
本文使用兩種實(shí)驗(yàn)樣本:1)從點(diǎn)鈔機(jī)公司制造的高速紙幣清分機(jī)掃描得到的大量50萬(wàn)像素紙幣圖像中隨機(jī)抽取200張未經(jīng)區(qū)分的一般紙幣圖像;2)從大量樣本中挑選出的嚴(yán)重污染磨損、褶皺變形的53張50萬(wàn)像素紙幣圖像。
利用標(biāo)準(zhǔn)的模板匹配法和本文算法分別對(duì)樣本1)和2)進(jìn)行識(shí)別,標(biāo)準(zhǔn)模板匹配法流程為首先進(jìn)行垂直投影分割,然后對(duì)分割的字符尺寸歸一化,最后進(jìn)行模板匹配識(shí)別,兩種字符識(shí)別算法對(duì)兩個(gè)樣本識(shí)別效果如表1和表2所示。
表1 兩種字符識(shí)別算法對(duì)樣本1識(shí)別效果
表2 兩種字符識(shí)別算法對(duì)樣本2識(shí)別效果
可以看出,本文算法對(duì)樣本1和樣本2識(shí)別率都高于標(biāo)準(zhǔn)模板匹配法,尤其是針對(duì)樣本2嚴(yán)重污染磨損的字符識(shí)別率更是遠(yuǎn)遠(yuǎn)高于標(biāo)準(zhǔn)模板匹配法的識(shí)別率,具有非常強(qiáng)的魯棒性,而時(shí)間只是略高于后者。
本文提出了一種將模板匹配與多種字符結(jié)構(gòu)特征相結(jié)合的人民幣冠字號(hào)字符識(shí)別算法,其特點(diǎn)在于:1)在分割部分提出了比通用的垂直投影法分割率更高、魯棒性更強(qiáng)的基于字符輪廓特征和字符間位置關(guān)系的分割方法;2)對(duì)待檢字符區(qū)進(jìn)行多級(jí)不等比例尺寸調(diào)整獲得多個(gè)待檢字符區(qū),有效的解決了字符褶皺變形造成的誤檢問題;3)具備糾錯(cuò)功能,在最關(guān)鍵的識(shí)別部分不是直接判定最匹配的模板為最終識(shí)別結(jié)果,而是利用改進(jìn)模板匹配法獲得多個(gè)候選字符,然后利用魯棒性更強(qiáng)的區(qū)域密度特征矢量依次對(duì)候選字符進(jìn)行最終篩選判定。實(shí)驗(yàn)結(jié)果表明,本文算法能較好地解決現(xiàn)有人民幣冠字號(hào)字符識(shí)別算法對(duì)嚴(yán)重污染磨損的人民幣冠字號(hào)字符識(shí)別率低的難題。
[1] GUO J,ZHAO Y,CAI A.A reliable method for paper currency recognition based on LBP[C]//Proc.IEEE International Confer?ence on Network Infrastructure and Digital Content.[S.l.]:IEEE Press,2010:359-363.
[2] DI Z M L.Recognition algorithm of car license plate characters based on modified template match[J].Foreign Electronic Mea?surement Technology,2010(1):18.
[3]陳國(guó)彬,張廣泉.一種基于特征加權(quán)模板匹配方法在紙幣字符識(shí)別中的應(yīng)用[J].微電子學(xué)與計(jì)算機(jī),2013,30(3):115-117.
[4] 朱顥東,李紅嬋.基于特征加權(quán)模糊模板匹配的字符識(shí)別[J].蘭州理工大學(xué)學(xué)報(bào),2013(1):68-71.
[5] 王焱,劉洋,宋百春.人民幣紙幣號(hào)碼識(shí)別算法研究[J].計(jì)算機(jī)工程與科學(xué),2013,35(8):103-108.
[6] ZHU X,REN M.A recognition method of RMB numbers based on character features[C]//Proc.2nd International Conference on Information, Electronics and Computer.[S.l.]:Atlantis Press,2014:51-54.
[7]ZHAO T,ZHAO J,ZHENG R,et al.Study on RMB number rec?ognition based on genetic algorithm artificial neural network[C]//Proc.3rd International Congress on Image and Signal Processing(CISP).[S.l.]:IEEE Press,2010,4:1951-1955.
[8] LIU L,YE Y,XIE Y,et al.A novel approach for character fea?ture extraction and recognition based on RBF neural network[J].Opto-Electronic Engineering,2010(11):149-154.