緬甸聯(lián)邦共和國,原名緬甸,是東南亞的一個國家,從1962年到2010年,緬甸一直被政變后上臺的軍政府統(tǒng)治,直至最近5年它才對外界開放,與其他國家建立了貿(mào)易與文化聯(lián)系。
緬甸語由很多方言組成,但所有方言都共享一個核心字母表,該核心字母表主要用于正式文本和印刷媒體,有33個輔音和12個輔助字符,地區(qū)方言可能還使用其 他字符,完整列表大約有核心字母表的三倍大。幸運(yùn)的是,我們的工作是識別使用流行的至少10點大小的緬甸3字體書寫的標(biāo)準(zhǔn)緬甸文本,文本圖像可以是灰度、 黑白或彩色的,分辨率至少有300dpi,下面是典型的緬甸文本樣板:
用ABBYY OCR識別技術(shù)在電腦上閱讀緬甸語
在項目初步階段,我們必須實現(xiàn)75%的OCR準(zhǔn)確度,最小目標(biāo)準(zhǔn)確度為94%。
緬甸腳本就是所謂的alphasyllabary,在這里每一個輔音字母也都傳達(dá)“默認(rèn)”元音聲,其他元音聲使用特殊字符和輔音上面、下面、前面、后面的變音符號甚至輔音周圍的變音符號轉(zhuǎn)錄。
字母大多由半圓組成,因為在過去,文本都是寫在棕櫚葉上,很容易被直線切口損壞。
緬甸語是一種有聲調(diào)的語言,有三個主要聲調(diào)—高、低和嘎吱聲,和兩個次要聲調(diào)—入耳調(diào)和降調(diào)。
由于聲調(diào)也要在書寫中進(jìn)行轉(zhuǎn)錄,緬甸腳本實際上有兩種可分辨的符號,可能放在主要字母上面、下面或同時放在主要字母的上面和下面,這兩種層疊的可分辨系統(tǒng)給OCR軟件帶來了重大挑戰(zhàn),但不僅僅如此。
若要讓事情變得更復(fù)雜,有些字母組合可以融合在一起形成新字符。
在大多數(shù)常規(guī)術(shù)語中,光學(xué)字符識別如雷貫耳。當(dāng)OCR軟件收到圖像文件時,它會使用OCR技術(shù)執(zhí)行一些初步處理,將圖像轉(zhuǎn)換為黑白文本并糾正看得見的扭 曲,接下來檢測包含不同類型文本(標(biāo)題、正文、腳注)、照片和表格的區(qū)域,文本塊隨后解析成行,行再到單詞,單詞再到字母,單個字母識別完成之后,文本將 自下至上重組,緬甸文本的圖像處理和板塊檢測和大多數(shù)其他語言里的操作一樣,但是檢測文本行是一件棘手的事。
由于變音符號的豐富性,教電腦識別短文本行非常困難,這就是原因所在,我們的運(yùn)算法則使用很多功能體現(xiàn)文本行,其中的一個功能是虛構(gòu)的基線,所有主要字符都位于這個基線上,電腦需知道在哪里畫一條基線,以便生成有關(guān)單個字符的合理假設(shè)。
電腦使用統(tǒng)計數(shù)據(jù)檢測基本文本行,為了收集必要的數(shù)據(jù),要觀察構(gòu)成字母的黑點生成的直方圖上的峰值,在歐洲字母的直方圖上,有三個清晰可見的峰值對應(yīng)于基線和小寫字母的高度:
然而在緬甸語中,文本行正常寬度以外的眾多變音符號在直方圖中導(dǎo)致額外的統(tǒng)計學(xué)上有意義的峰值,為此,我們的最初面向歐洲腳本的運(yùn)算法則,無法正確地識別緬甸文本行的重要參數(shù)。
在下面的圖形中,程序正確地檢測到了前兩行,但沒有檢測到第三行:
針對文本行檢測運(yùn)算法則,我們必須要做一些調(diào)整,讓其同樣適用于緬甸文本。
文本行檢測到之后,我們開始尋找單詞和字母之間的間隙,這一次,我們運(yùn)用了水平直方圖,將大的間隙假設(shè)為單詞之間的空隙,小的間隙理解為字母之間的空隙,檢測緬甸文本中的空隙幾乎沒有出現(xiàn)問題,不像泰語,幾乎沒有空隙。(我們的OCR技術(shù)可以識別泰語文本,多達(dá)200種其他語言)
將文本行劃分為更小的片段之后,我們嘗試將片段劃分為單個字符,再一次在直方圖上觀察高峰和低谷值,低谷對應(yīng)于字母之間的可能間隙,有些間隙可以很確定地檢測到,有些則需要通過各種試探法進(jìn)行驗證。
以下圖形展示了英語單詞的直方圖:
緬甸腳本中的大量半圓字符產(chǎn)生了很多“錯誤”高峰和低估,使得檢測空隙變得更難,但是直方圖法同樣適用于緬甸語。