李成恩,鄧拉美,喻寧興
1.六盤水市六枝特區第一中學,貴州六盤水,553400
2.六盤水市六枝特區教育局,貴州六盤水,553400
3.六盤水市第二人民醫院,貴州六盤水,553400
彝族文章是我國彝族歷史文化的重要載體,是研究分布在我國西南地區的彝族的重要資料,更是中華民族的文化瑰寶。但是隨著時間的推移,彝族文檔保護情況不容樂觀,而且由于年代久遠和紙張質量問題,很多彝族文檔已經無法翻看和查閱,對彝族文檔進行數字化處理,是保存文檔的迫切需要,保存彝族的文章文檔、通過分析研究彝族文章了解彝族的歷史、文化和風俗習慣,也是鑄牢中華民族共同體意識的迫切需要。
民族語言信息化是讓民族語言“活”起來,因此,研究民族語言意義重大。研究如何識別彝族文本文檔,首先,我們要掌握一定的彝文知識。彝文指的是彝族的文字,其特點包括:彝文是一種古老的音節文字,一個字形代表一個意義,其文字總數達萬余字。彝文的獨特體字多,合體字少。彝文的字形結構有點、橫、豎、橫析,大致有象形、會意、指事、假借四類。彝文涉及宗教、歷史、哲學、文學、語言文字、醫藥、天文、地理和農技等各個方面。彝文文獻的書寫方式因地區而異,四川涼山一帶彝文一般由右向左橫行書寫;云南、貴州、廣西一帶則由左向右豎行書寫。彝文的聲調一般分為3~5個,調型簡單。彝文的詞序和虛詞是表達語法意義的主要手段,基本語序是主語—賓語—謂語。名詞、動詞、人稱代詞作定語時,在中心詞前;形容詞、數量詞作修飾語時,在中心詞后。有些副詞修飾雙音節中心詞時,在中心詞的兩個音節之間。彝文中的量詞非常豐富,有些方言的量詞能直接修飾中心詞,起后置冠詞的作用。1980年,國務院正式推行了《彝文規范方案》,很大程度上推動了彝族文化的傳播。2014年,貴州民族大學的吳勰對古彝文進行了規范化,整理出5000多個古彝文字符,其中常用字3000余個,其余為文獻整理所需的異體字[1]。到目前為止,該套字符集已經能夠滿足古彝文信息化的基本需求。目前對彝族文章文檔的圖像識別的研究比較少[2]。結合彝文的特征用合適的算法進行預處理,對彝文文檔的識別和分析具有重要意義。預處理的好壞直接關系到文本圖像的識別和分析的質量。
一般來說,古籍文檔圖像分析和識別需要幾個階段:預處理(二值化)、文本行切分、字符切分和文字識別[3]。本論文是利用OpenCVPython為實驗平臺,將通過高清攝像機拍攝的彝文圖片進行預處理。為后期的圖像處理和識別奠定基礎。本論文選取的彝文圖片為2010年6月中華書局出版的《國家圖書館藏彝文典籍目錄》。
圖片二值化是圖片預處理的關鍵環節。在二值化之前要進行灰度化處理。二值化的好壞直接影響后期圖片的識別和處理。在OpenCVPython中二值化的效果見圖1。

圖1 彝文文本原始圖像與二值化圖像對比
在OpenCV-Python實驗平臺上彝文文本圖像二值化的算法如圖2所示。

圖2 彝文文本圖像二值化算法截圖
文本圖像中的噪聲一般是圖像采集、傳輸等過程中由外界因素干擾所引起的,為了減少文本圖像中的噪聲,提高文本圖像的質量和文本圖像識別的準確率,文本圖像識別的預處理過程中一般還包括了對圖像進行降噪處理。本文在OpenCV中利用算法對文本圖片進行了降噪處理。降噪處理后可以極大提高圖片質量。降噪前后對比如圖3所示。

圖3 彝文文本圖像降噪前后對比
降噪的算法截圖如圖4所示。

圖4 彝文文本圖像降噪算法截圖
經過對文本圖像的二值化和降噪處理后,接下來開始對文本圖像進行連通域分析。通過對文本圖像的連通域分析,可以將圖像中的不同物體分割開來,實現高準確率的圖像識別。本文嘗試對《國家圖書館藏彝文典籍目錄》中的第466頁的彝文進行連通域分析。通過分析,得到連通域169個。連通域分析結果如圖5所示。

圖5 彝文文本圖像的連通域分析結果
對圖像進行預處理是為文本圖像的識別做準備工作,對預處理的結果進行分析,是我們發現問題、尋找研究方向和方法的必由之路。通過對連通域結果的圖片分析,我們發現以下三個問題,這也是以后研究的方向。
①我們可以看到在貴州、云南等地彝文有豎向書寫的寫作習慣,并且在列與列之間會出現一個個獨立的筆畫(點)。列和列之間的筆畫如圖6所示。

圖6 列和列之間的筆畫
②連通域數量過多的問題,如圖6所示,一張彝文圖像有169個連通域,連通域數量多會對后期字符識別造成干擾。
③有些彝文文章存在彝文和漢文的混排的情況。需要研究如何把彝文和漢文切分出來,實現彝文文本圖像版面的分割和描述。
(1)經查閱資料,對于列和列之間的點有兩種觀點,一種觀點是姓氏之間的分割點,另一種觀點認為列和列之間的點是分割不同的音節點,以避免混淆和誤解。兩種觀點的對錯,有待去考證。需要再深入地研究,找到真正的原因。列和列之間的點的歸屬問題,是列切分必須解決的問題。通過觀察彝文圖像可以看出,彝文列和列之間的距離不均等,甚至來說列間距差別還有點大,再加上彝文有些字體書寫習慣和字體本身結構的原因,給列切分帶來了一定的難度,不能簡單地按照寬度均分的方法,筆者打算采用基于輪廓的分割方法來嘗試對彝文文本圖片的文字進行列切分,一般情況下,采用該方法對圖片的質量、清晰度要求比較高,如果圖片質量不高或者存在噪聲,會極大地影響輪廓識別的準確性,極大可能造成切分出錯,彝文尤其是古彝文由于年代久遠、保存環境等原因,圖片質量普遍不高,使用基于輪廓切分的方法比較困難。彝文是豎向書寫的文體,如何精準地把彝文列切分出來,是彝文圖像識別中非常重要的步驟,更是以字符切分、字符識別的基礎,列切分效果的好壞,直接影響到后面的圖像識別的最終結果。彝文列切分中可能產生部分字體切分出錯的情況,比如列和列之間的筆畫的歸屬問題,切分出錯的字體部分回歸本體的問題。如何在OpenCVPython中用合適的算法來處理上述的問題,是今后研究的方向之一。
(2)如何有效地減少、合并連通域也是今后研究的課題。連通域數量多可能由很多原因造成。比如圖片質量、噪聲干擾、算法的閾值等。針對預處理后連通域數量過多的情況,筆者打算在以后的研究過程中通過優化算法程序的方法進行實驗。摸索出一種更適合彝文文本圖像連通域分析的算法,也是今后的努力方向和目標。
(3)今后研究的方向還包括對彝文和漢文混排的文本圖像版面分割和描述的問題的研究,在彝文文本預處理的過程中,選取的彝文圖片比較單純,都只是字符,沒有插圖、頁碼,以及其他不同于字符的內容出現,但是在現實中彝文文本圖像中包括很多有異于字符的內容,如何把版面不同的內容進行準確分割和描述,如何在OpenCV-Python的實驗平臺上找到合適的算法對彝文、彝文和漢文混排的文本圖像的版面進行分割和描述,也是以后研究的重點問題。
在OpenCV-Python中利用算法對彝文文檔圖像進行有效處理,包括但不限于列切分、字符切分、后處理等,并且通過一定數量的實驗測試,保證算法處理結果有較高的準確率。總結并提煉出基于OpenCV-Python的有效處理彝文文本圖像的算法。在基于OpenCV-Python平臺上擴大試驗樣本的數量,優化算法,以期能達到更好的彝文文本圖像識別效果。