邵小青 賈鈺峰 章蓬偉 邵敬普
(1.新疆科技學院 庫爾勒 841300)(2.中國石油運輸有限公司沙漠運輸分公司 庫爾勒 841300)
在文字圖像生成時由于設備或人為等一些因素會給后續(xù)的識別帶來問題,而圖像的預處理就是為了排除這些干擾,提高圖像質(zhì)量,為下一步針對維吾爾文聯(lián)體段提取特征做好必要的基礎(chǔ)準備。
維吾爾文的詞是由一個或多個字母組成,筆劃簡單但字形相差小,而且詞匯中存在字母間各種連接變形使得書寫形式就不同。印刷維吾爾文的切分是識別技術(shù)的一個難點,切分常常碰到粘連,斷裂,躁點,偽字母切分等[1]。根據(jù)維吾爾文的特點,提出了基于聯(lián)體段(WordPart)[2]的段切分。此種切分方法能保留住文字的特征信息,極大地簡便了圖像處理。如圖1是維吾爾文結(jié)構(gòu)特點圖。
圖1 維吾爾文結(jié)構(gòu)特點
噪點惡化了圖像質(zhì)量,復雜了特征,消除圖像噪點的工作稱之為圖像平滑或濾波,對圖像孤立點簇作為雜質(zhì)區(qū)域進行清除,得到只有筆畫的潔凈樣本。在各種去噪方法中比較常用的有梯度銳化、數(shù)學形態(tài)學中的二值閉運算、均值濾波[3]、中值濾波[4]。但這些方法比較適合256色的灰度圖像,而不太適合二值化后的2色的灰度圖像,為此我們針對二值化后的2色圖像改進了均值濾波:假設濾波模板為3*3,如圖2。
圖2 3*3的濾波模板
如果待測圖像中某像素點值P為黑點,而周邊8鄰接點像素點為白點,則該像素點為噪聲點。假設將黑點值取為1,白點取值為0。如果待測像素點值P為白點,則同理。新的邏輯表達式可以表示為或0。對消除圖像上孤立的點效果很好,結(jié)果如圖3。
圖3 本文的去噪效果對比圖
因人為或者其他因素,掃描圖像會出現(xiàn)某種程度的拉伸(或傾斜),它會給下一步每一行文本的判斷,以及聯(lián)體段的切分造成困難。所以傾斜校是特征提取的基礎(chǔ),它的重點和難點是檢測出傾斜角,只要算出傾斜角,就可以快速地矯正并評估基線。我們編寫了三種方法對圖像進行傾斜矯正并以此對比矯正結(jié)果的優(yōu)劣。其中直線擬合法是根據(jù)維吾爾文主筆畫在基線上的這一特點,進行的一種新的嘗試。
3.2.1 投影圖法
基于投影圖[5]的思想是沿文本書寫方向的黑像素點的長度最大的傾斜角進行分析。我們的方法是在一定閾值范圍內(nèi)以1°間隔對文本行進行旋轉(zhuǎn),并對旋轉(zhuǎn)后的圖像進行投影,對投影的長度進行記錄,并找出其中最大長度。當前長度與最大長度之間的夾角大于0時代表有傾斜,并計算出傾斜角度,然后根據(jù)角度逆向轉(zhuǎn)動矯正整體圖像。當然還可以基于投影圖波谷的間隙最長進行角度校正。但該算法對一行只有一個詞的情況,無法得到滿意的結(jié)果。
從圖4中看出文本圖像被傾斜校正后就可以看出波峰間距是文本行的高度,波谷的間距是行間距(利用空白間隙是我們進行文本行切分的依據(jù)),波峰是基線的位置?;€,維吾爾文字書寫時虛擬的一條直線,在傾斜校正或者是在特征提取中都起到很重要的作用。
圖4 左圖為右圖的水平投影
3.2.2 Hough變換法
霍夫變換(Hough)[6]是一個非常重要的檢測間斷點邊界形狀的方法。它通過將圖像坐標空間變換到參數(shù)空間,來實現(xiàn)直線與曲線的擬合。這里它把二值圖像變換到Hough參數(shù)空間,在參數(shù)空間用極值點檢測完成目標的檢測。Hough變換是利用圖像全局特性而將邊緣像素連接起來組成邊界區(qū)域封閉的一種辦法[7]。Hough變換對于純文本的抗干擾能力強,可以減少計算量,對曲線間斷的影響也較小。只需要在參數(shù)空間里進行簡單的累加統(tǒng)計即可。Hough變換有大量的資料信息可以查閱,這里不再贅述。
3.2.3 直線擬合法
我們知道,如果有一些離散點(X(i),Y(i)),就可以擬合出一條直線y=ax+b,使所有點到這條直線的距離平方和最小,那么這條直線就成為離散點的目標擬合直線[8~10],如圖5所示。
圖5 直線擬合
由于圖像文件能夠看成一個整體的版塊,所以我們每隔一定距離從下往上判斷,直到碰觸到黑色像素點為止(即:從下往上數(shù)第一個前景點),然后把此點作為采樣點,得到一系列坐標值(X(i),Y(i))。然后使用直線擬合算法算出該直線的系數(shù)a,b,得到擬合直線:y=ax+b,此直線就是圖像文本的方向直線,在由此直線可以得出傾斜角:α=arctanb,然后再進行傾斜校正。如果我們每一行都用此方法進行直線擬合,則擬合的直線就是當前行的基線下界。這是一種新的方法,是本文的創(chuàng)新。
3.2.4 小結(jié)
通過投影圖法,Hough變換法,直線擬合法,我們發(fā)現(xiàn)效果都合格,但其中的投影法還可以運用到基線的評估上,而我們特征提取需要判定基線。所以本文后續(xù)所使用的傾斜校正和基線評估方法就是基于投影圖法的。
最基本的建立模型[11~13]的單位有比劃、字母、單詞。維吾爾文是拼寫詞,詞匯量達幾百萬之巨,隨著社會的發(fā)展新詞也在逐步增加,建立詞匯模型不切實際。建立筆畫模型更是不切實際。我們選擇了基于聯(lián)體段的切分和文字識別模型,識別的模型就是基于此的。我們繼續(xù)利用垂直投影的方法在文本行的基礎(chǔ)上進行聯(lián)體段的切分(同理水平投影切分的原理和垂直切分的一樣,水平切分是為了劃分文本行)。
圖6中矩形框框出來的長方體就是根據(jù)水平和垂直投影切分出來的聯(lián)體段,也是進行建模的基礎(chǔ)單位。記錄下矩形框的左上角的坐標位置以及長度和寬度,就可以對矩形框(聯(lián)體段)進行圖像處理了。
圖6 聯(lián)體段切分結(jié)果
為了使特征形式顯現(xiàn),需要對文本圖像進行細化。使筆劃寬度變?yōu)橹挥幸粋€比特(bit)的細曲線。為了不破壞文字特征我們的細化要保證如下要求:1)筆畫不能造成斷裂,必須是連續(xù)的。2)要將筆畫的整體細化為一個比特(bit)的單線。3)骨架拓撲結(jié)構(gòu)和整體字形沒有被改變。
常用的細化算法有Pavlidis,Hilditch,Rosen?feld,基于索引表的細化算法,數(shù)學形態(tài)學細化算法等。本文經(jīng)過測試最終選用了Rosenfeld算法,此算法的處理結(jié)果滿足細化骨架的三個基本要素,經(jīng)過驗證效果良好[14~15](圖7)。
圖7 Rosenfeld細化算法下的像素點模型
至此我們做好了特征提取,識別訓練的準備。但是訓練部分必須要知道對應的維文Unicode碼字符串,它起到了標識和認識的目的。這就需要我們進行一一匹配(比對方法建立)。為此開發(fā)了一個由程序自動劃分并加人工校正的匹配程序。匹配程序難免受躁點和切分的影響,人為校正使每一個維吾爾文圖像文本的聯(lián)體段與其Unicode碼進行了完美的匹配,如圖8。最后把Unicode碼加入了特征庫,作為訓練比對的參照。
圖8 圖像文本聯(lián)體段與其Unicode碼的對齊
這里有個難點,對于圖像文件的聯(lián)體段如何進行劃分第3.3節(jié)已經(jīng)解決。那么,對于文本文件的聯(lián)體段如何自動進行劃分呢?其實,維吾爾文的聯(lián)體段結(jié)束標識均是由字母的尾寫形式組成的。經(jīng)過多方求證,在維吾爾文文章中聯(lián)體段結(jié)束標識除了是維語尾寫字母外還包括英文、數(shù)字、特殊字符等[16]。結(jié)合圖像文本的切分這些就都是我們判斷結(jié)束的標志了。經(jīng)過搜集整理,得出維文聯(lián)體段結(jié)束字母共有十三個,其中十一個用十六進制的Uni?code碼定義為
另外還有兩個用十六進制的Unicode碼定義為
static WCHAR WordPartEndS[2]={0x0649,0x06d0},這兩個字母也是維文聯(lián)體段的結(jié)束字母,當這兩個字母后面跟著上面十一個字母中任一個字母時,上面的字母為此聯(lián)體段的結(jié)束字母。
本文根據(jù)維吾爾文文字的特點,以聯(lián)體段為基本建模單位,通過VC++完全實現(xiàn)了印刷維吾爾文圖像識別技術(shù)中的預處理部分。預處理完成的工作有去噪、傾斜校正、基線判定、聯(lián)體段切分、細化等。為了能夠更好地去噪使用了改進的濾波方法。在傾斜校正,基線評估中提出了直線擬合的校正方法,用投影法完成基線判定。為方便后續(xù)特征的提取選取了合適的細化算法,同時建立了比對方法程序。在此基礎(chǔ)上對聯(lián)體段提取相應的特征用于后續(xù)的識別。