鄭蕊蕊,李 敏,吳寶春
(大連民族學(xué)院信息與通信工程學(xué)院,遼寧大連116605)
研究少數(shù)民族文字識別方法是保護和傳承少數(shù)民族文化遺產(chǎn)的重要技術(shù)手段,具有重要的社會價值和歷史意義[1-4]。光學(xué)字符識別技術(shù)(Optical Character Recognition,OCR)必須以大量的字符樣本為基礎(chǔ),因此建設(shè)少數(shù)民族文字?jǐn)?shù)據(jù)庫是研究少數(shù)民族文字識別方法的必要條件。然而,目前能讀寫少數(shù)民族文字的人數(shù)量有限,部分少數(shù)民族的語言文字甚至已瀕臨失傳,要獲得大量的手寫體樣本比較困難。為了獲取大規(guī)模的少數(shù)民族文字手寫樣本,設(shè)計并開發(fā)了一種少數(shù)民族文字手寫體采集系統(tǒng)。本采集系統(tǒng)能使零基礎(chǔ)的用戶快速掌握少數(shù)民族文字的讀寫規(guī)律,擴展了少數(shù)民族文字手寫樣本的采集范圍,很大程度上解決了少數(shù)民族文字手寫樣本匱乏的問題。系統(tǒng)還集成了文字?jǐn)?shù)據(jù)庫構(gòu)建中常用的圖像預(yù)處理算法,實現(xiàn)了數(shù)據(jù)采集與數(shù)據(jù)庫圖片生成的一體化技術(shù),并具備互動式圖片對比功能,使少數(shù)民族文字手寫樣本的采集和數(shù)據(jù)庫構(gòu)建更為方便快捷。
目前,中國已正式使用和經(jīng)國家批準(zhǔn)推行的少數(shù)民族文字有19種。不同民族文字的拼讀方式具有很大差異,應(yīng)根據(jù)具體民族文字的實際情況設(shè)計具有針對性的文字模板??紤]到本系統(tǒng)后續(xù)的讀音數(shù)據(jù)采集功能的開發(fā),需要建設(shè)少數(shù)民族語音數(shù)據(jù)庫?,F(xiàn)以滿文為例,介紹少數(shù)民族文字模板的設(shè)計方案和音頻數(shù)據(jù)的獲取及處理方法。
滿文是一種音素文字,共有40個字母。滿文字母根據(jù)在單詞中位置的不同,同一個字母有獨寫體、首寫體、中寫體和尾寫體4種不同寫法。在滿文字母模板中添加“字符中位置”屬性,分別用“獨”,“首”,“中”和“尾”加以標(biāo)識,如圖1。
圖1 滿文字母模板
滿文字母的4種寫法,加上不規(guī)則的元音書寫方式,共計128個字母,因此滿文字母模板庫共包含128個模板圖片,如圖2。考慮到滿文字母書寫的規(guī)范性,還在模板中添加了“字母筆順”屬性,輔助用戶寫出規(guī)范的滿文字母。滿文字母有對應(yīng)的羅馬字轉(zhuǎn)寫,用來表示字母讀音[5-6],為了方便本采集系統(tǒng)后續(xù)功能(學(xué)習(xí)和讀音數(shù)據(jù)采集功能)的擴展,在模板中加入“羅馬字轉(zhuǎn)寫”屬性,以便鏈接讀音數(shù)據(jù)。如果用戶不會滿語,但參照模板中的筆順和實例,經(jīng)多次練習(xí),即可寫出令人滿意的滿文字母樣本。為了方便查找,模板保存時統(tǒng)一采用“羅馬字母轉(zhuǎn)寫+位置編號”的方式命名。數(shù)字0,1,2,3分別對應(yīng)字母的獨寫體、首寫體、中寫體和尾寫體4種位置。因此圖1的模板命名為“a0.jpg”。
圖2 部分滿文字母模板庫
音頻數(shù)據(jù)數(shù)字化的方法已非常成熟,本文采用由美國Adobe公司開發(fā)的Adobe Audition軟件提供的專業(yè)化音頻編輯環(huán)境,將滿文字母的讀音數(shù)字化并存為.mp3格式,保存在滿文字庫中對應(yīng)的字母庫中,統(tǒng)一采用“羅馬字母轉(zhuǎn)寫.mp3”的方式命名。
系統(tǒng)采用MATLAB提供的圖形用戶界面開發(fā)環(huán)境(Graphical User Interface Development Environment,GUIDE)設(shè)計圖形用戶界面,少數(shù)民族文字手寫體采集系統(tǒng)運行情況如圖3。界面共分為3大模塊,分別是系統(tǒng)菜單、文字展示區(qū)和文字識別區(qū)。系統(tǒng)菜單包括全部功能菜單、圖像預(yù)處理菜單和常用工具欄。文字展示區(qū)用于顯示所調(diào)用的少數(shù)民族文字模板,文字采集區(qū)主要完成書寫功能,可采用鼠標(biāo),推薦使用數(shù)位板做為書寫工具以獲得更好的效果。
圖3 少數(shù)民族文字學(xué)習(xí)與采集系統(tǒng)運行界面
本采集系統(tǒng)為避免用戶重復(fù)操作,已將常用中值濾波器、灰度化、二值化和歸一化等操作集成在圖像預(yù)處理模塊,用戶可根據(jù)需要選擇不同的方法處理樣本圖片。
常規(guī)文檔圖像二值化方法很多,但在處理效果、魯棒性和速度上存在較大差異。童立靖等[7]分析了OTSU算法、迭代法、簡單統(tǒng)計法等常用于文本圖像二值化的方法的優(yōu)缺點。Ostu算法是常用的全局閾值法;Kittler算法結(jié)合了圖像統(tǒng)計信息且處理速度快;迭代法允許用戶交互設(shè)置參數(shù),且在許多情況下都能取得令人滿意的二值化效果。本采集系統(tǒng)根據(jù)這些方法的特點,選擇采用Ostu算法[8]和迭代法[9]作為通用二值化方法提供給用戶,除此之外還提出一種改進的二值化算法。首先將彩色圖片灰度化,然后分別采用Ostu算法、Kittler算法和迭代法3種二值化方法得到3種中間結(jié)果。
Otsu法的實質(zhì)是通過迭代法尋找使圖像前景和背景兩類的類內(nèi)方差最小的閾值。一幅具有L個灰度級的圖像,其中第i個灰度級的像素為Ni個,i=0,1,…,L-1,圖像的總像素個數(shù)為 N,第 i個灰度級出現(xiàn)的概率為Pi=Ni/N。假設(shè)閾值k將圖像分為目標(biāo)像素C0和背景像素C1兩類。其中C0的灰度級為0~k-1,C1的灰度級為k~L-1。則圖像的總平均灰度級為:μ=,其中 C0類像素所占比例為:ω0類像素所占比例為:1-ω0;C0類像素的平均灰度為:μ0(k)=/)ω0;C1類像素的平均灰度為:μ1(k)=/ω。1則類間方差公式為
令k從0~L-1變換,計算不同k值下的類間方差δ2(k),使得δ2(k)取最大值的k即為所求最優(yōu)閾值。
Kittler算法[10]是一種基于圖像梯度值與圖像灰度統(tǒng)計相結(jié)合的閾值選取方法,閾值T計算公式為
其中:f(x,y)是圖像灰度值,g(x,y)=max{|gx|,|gy|}表示像素點x和y方向上的最大值;gx=f(x-1,y)-f(x+1,y)表示水平方向梯度;gy=f(x,y-1)-f(x,y+1)表示垂直方向梯度。Kittler算法的優(yōu)點是適合細(xì)節(jié)豐富的圖像且算法速度快。
采用迭代法選取二值化閾值的過程為
step1 選擇一個T的初始估計值T0;
step2 用閾值T0分割圖像,這樣會生成兩組像素:G1為所有灰度值大于T0的像素組成,G2由所有灰度值小于T0的像素組成;
step3 分別計算區(qū)域G1、G2所有像素的平均灰度值 μ1、μ2;
step4 計算新的閾值:T=1/2(μ1+μ2);
重復(fù)step2到step4,直到相鄰兩次的T值之差小于事先定義的參數(shù)Tr。
選擇采用迭代法選取閾值時,用戶可交互式地給出閾值初始估計值T0和參數(shù)Tr,默認(rèn)情況下T0=1/2(maxf(x,y)+minf(x,y)),Tr=1。
設(shè)上述三種二值化方法分別作用的結(jié)果為B1(x,y),B2(x,y)和 B3(x,y),最終的二值化結(jié)果B(x,y)根據(jù)公式
在用戶學(xué)習(xí)書寫的過程中,若能有評分功能也有利于用戶學(xué)習(xí)。這兩項功能的實現(xiàn),都可以借助基于可接受度的灰面積關(guān)聯(lián)度對比方法來實現(xiàn)。首先手寫樣本與標(biāo)準(zhǔn)模板要經(jīng)過歸一化和傾斜校正等預(yù)處理;然后采用灰面積關(guān)聯(lián)度計算手寫樣本與標(biāo)準(zhǔn)模板之間的相似程度。
灰關(guān)聯(lián)分析方法[11]的基本思想是根據(jù)序列曲線幾何形狀間的相似程度來判斷其聯(lián)系是否緊密。經(jīng)過預(yù)處理的手寫樣本與標(biāo)準(zhǔn)模板的投影特征都可以視為曲線。采用灰面積關(guān)聯(lián)度分析曲線,曲線越接近,相應(yīng)序列之間的關(guān)聯(lián)度就越大;反之就越小,這種特性與書寫樣本比對相符合。同時,灰關(guān)聯(lián)度分析方法對樣本量的多少和樣本有無規(guī)律性都同樣適用,且計算量小。因此本文研究以灰面積關(guān)聯(lián)度分析手寫樣本與標(biāo)準(zhǔn)模板之間的相似程度?;颐娣e關(guān)聯(lián)度分析過程如下:
首先將經(jīng)過預(yù)處理的標(biāo)準(zhǔn)模板和手寫樣本向水平和垂直方向分別投影,得到投影序列;再分別計算水平和垂直方向的灰面積關(guān)聯(lián)度?,F(xiàn)以水平方向為例:假設(shè)標(biāo)準(zhǔn)模板水平方向投影序列x=(x(1),x(2),…,x(n));手寫樣本水平方向投影序列y=(y(1),y(2),…,y(n))。將序列 y平移:y'=y(i)-(y(1)-x(1)),其中 i=1,2,…,n,相當(dāng)于把對比序列平移,曲線作平移不會影響曲線的關(guān)聯(lián)度。計算曲線間面積關(guān)聯(lián)度時,曲線有相交和不相交兩種情況,如圖4。
圖4 灰面積關(guān)聯(lián)度的計算
(1)當(dāng)曲線不相交時,所圍成的區(qū)域可以看作一梯形(三角形看作梯形的特例)。面積計算公式為
(2)當(dāng)曲線相交時,所圍成的區(qū)域可以看作兩個三角形面積的疊加。面積計算公式為
其中,ρ為分辨系數(shù),是一個可調(diào)因子,通常取ρ=0.8/Sv。Sv為比較序列y’與參考序列x的曲線面積Si的均值:Sv=Si。
定義可接受度 Acc=(γx+γy)/2,即水平和垂直方向灰面積關(guān)聯(lián)度的平均值,且0≤Acc≤1。
本系統(tǒng)針對少數(shù)民族文字手寫體樣本采集和數(shù)據(jù)庫建設(shè)問題,設(shè)計了具有針對性的圖像預(yù)處理算法,使采集到的圖像可直接生成為滿足數(shù)據(jù)庫要求的圖像格式,避免了現(xiàn)有技術(shù)方案依靠光學(xué)設(shè)備進行文檔數(shù)字化的繁瑣工作和噪聲污染。提出了一種改進的圖像二值化算法和基于可接受度的灰面積關(guān)聯(lián)度對比方法。
[1]王華,丁曉青,哈力木拉提.多字體多字號印刷體維吾爾文字符識別[J].清華大學(xué)學(xué)報:自然科學(xué)版,2004,44(7):946-949.
[2]PENG Liangrui,LIU Changsong,DING Xiaoqing.Multi-font printed Mongolian document recognition system[J].International Journal on Document Analysis and Recognition,2010,13(2):93-106.
[3]王華,丁曉青.一種多字體印刷藏文字符識別方法[J],計算機工程,2004,30(13):18-20.
[4]許爽,孫炎輝,丁紀(jì)峰,等.基于ARM的少數(shù)民族文字手寫輸入系統(tǒng)設(shè)計[J].大連民族學(xué)院學(xué)報,2012(5):456-459.
[5]季永海.滿語教程[M].北京:中央民族大學(xué)出版社,2011.
[6]何榮偉.滿語365句[M].沈陽:遼寧民族出版社,2009.
[7]童立靖,張艷,舒巍,等.幾種文本圖像二值化方法的對比分析[J].北方工業(yè)大學(xué)學(xué)報,2011,23(1):25-33.
[8]OTSU,N.A Threshold Selection Method from Gray-Level Histograms.IEEE Transactions on Systems [J].Man and Cybernetics,1979(9):62-66.
[9]楊杰,黃朝兵.數(shù)字圖像處理及MATLAB實現(xiàn)[M].北京:電子工業(yè)出版社,2010.
[10]KITTLER J,ILLINGWORTH J.Minimum error thresholding[J].Pattern Recognit,1986(19):41 – 47.
[11]李建坡,趙繼印,鄭蕊蕊.基于綜合關(guān)聯(lián)度分析的電力變壓器故障診斷[J].2008,26(1):62-68.