陳榮賞,開金宇,馮 杰
(1.廈門理工學(xué)院 計(jì)算機(jī)與信息工程學(xué)院,福建 廈門 361024;2.安陽師范學(xué)院 計(jì)算機(jī)與信息工程學(xué)院,河南 安陽 455002)
把紙質(zhì)材料的甲骨文文獻(xiàn)資料輸入到計(jì)算機(jī)中保存處理是甲骨文信息處理的基礎(chǔ)和前提,計(jì)算機(jī)文字輸入方法有人工輸入和自動(dòng)輸入兩種[1],人工輸入是通過鍵盤來輸入,人工輸入包括音碼輸入法和形碼輸入法,如,拼音輸入法、筆畫輸入法;自動(dòng)輸入法包括掃描輸入和語音識(shí)別輸入法,常見的方法包括手寫輸入法或語音識(shí)別輸入法.目前,針對(duì)甲骨文輸入法有拼音輸入法、筆畫輸入法、手寫輸入法,這些輸入法都存在一定的缺陷.
音碼輸入法:有的甲骨文字,確實(shí)有這個(gè)甲骨字,但因?yàn)檫@個(gè)甲骨字還未被考釋出來,更別提讀音,因此,使用拼音輸入法無法輸入所需的甲骨文字.同樣,甲骨文語音識(shí)別輸入法也會(huì)存在這樣的問題.
形碼輸入法:甲骨文字屬于契刻文字,與我們現(xiàn)在所用方格漢字不同,現(xiàn)代的方格字講求橫平豎直,而甲骨文字就不一樣了,在甲骨文中,橫平豎直的字太少了,即使簡體字是橫平豎直的,對(duì)應(yīng)的甲骨文也不是橫平豎直的;有的簡體字很簡單,但對(duì)應(yīng)的甲骨文卻非常復(fù)雜.表1任意列舉了8個(gè)甲骨文字例子.
表1 甲骨文字示例
由表1可以看出,有時(shí)看著一個(gè)甲骨字卻很難直觀地看出它的筆畫是什么,因此,使用形碼輸入法也有些不現(xiàn)實(shí).
手寫輸入法:手寫輸入法也存在與形碼輸入法一樣的缺陷,甲骨文字屬于契刻文字,即使專業(yè)書寫甲骨文的專家也要研究上若干年才有可能臨摹出一些甲骨文字,對(duì)于沒有一點(diǎn)甲骨文書寫功底的普通人,要寫出來一個(gè)一個(gè)的甲骨字,也不是一件容易的事情.因此,使用手寫輸入法也是不現(xiàn)實(shí)的.
使用甲骨文視頻輸入識(shí)別系統(tǒng)有如下原因.
甲骨文的內(nèi)容與現(xiàn)代漢語內(nèi)容不同,現(xiàn)在漢語由于其作為現(xiàn)代人與人的溝通媒介,內(nèi)容是千變?nèi)f化的,因此,當(dāng)計(jì)算機(jī)處理現(xiàn)代漢語語言內(nèi)容信息時(shí),輸入的內(nèi)容是千變?nèi)f化的.甲骨文由于其時(shí)代的局限性,甲骨文不再作為人與人溝通的媒介,也不再作為記載語言內(nèi)容的載體,對(duì)甲骨文的學(xué)習(xí)、研究僅鎖定在甲骨學(xué)這一特定研究領(lǐng)域范圍之內(nèi),而對(duì)甲骨學(xué)的研究,不是今人使用甲骨文字創(chuàng)作的新的語言內(nèi)容,而是主要集中在對(duì)甲骨拓片對(duì)應(yīng)的甲骨刻辭內(nèi)容的研究上,這些甲骨刻辭在甲骨學(xué)研究領(lǐng)域已經(jīng)有了成熟的紙質(zhì)印刷版;可能存在一些甲骨文書法愛好者即興抒情寫出的甲骨短句,這些甲骨文書法愛好者寫出來的甲骨短句,其內(nèi)容也是先記載到紙質(zhì)材料上,因此,甲骨文內(nèi)容的紙質(zhì)版本材料確定了視頻輸入法要輸入的內(nèi)容.
數(shù)碼產(chǎn)品的發(fā)展,使得視頻工具觸手可及,現(xiàn)在幾乎所有的手機(jī)都有視頻攝像頭,用手機(jī)數(shù)據(jù)線與計(jì)算機(jī)相連就完成視頻輸入的物理連接.操作簡單,快捷,方便.
通過視頻輸入甲骨文字材料,實(shí)際上,是將甲骨文字以圖片的形式傳輸給甲骨文視頻輸入識(shí)別系統(tǒng)中,系統(tǒng)中的圖片處理子模塊,對(duì)甲骨文字圖片進(jìn)行處理,提取甲骨字信息,與甲骨文字體庫中的字模進(jìn)行比對(duì),找到相應(yīng)的甲骨字,以字的形式讀入計(jì)算機(jī)文字處理程序,等待其他處理,這即為甲骨文視頻輸入識(shí)別系統(tǒng)的工作過程.計(jì)算機(jī)圖形圖像學(xué)的發(fā)展以及矩陣計(jì)算工具M(jìn)atlab的強(qiáng)大功能,為圖片處理,提取甲骨文字這項(xiàng)工作提供了技術(shù)支持.
甲骨文視頻輸入識(shí)別系統(tǒng)具有一系列的好處:1)在一定程度上,可以完成甲骨文視頻輸入的工作;2)無需手動(dòng)輸入,省時(shí),省力;3)無需專注于甲骨文的精細(xì)模樣,省精力;4)視頻是直接對(duì)甲骨字的拍照,將其轉(zhuǎn)化為甲骨字由系統(tǒng)來處理,保證原始數(shù)據(jù)的完整性和正確性.
綜上分析,設(shè)計(jì)甲骨文視頻輸入識(shí)別系統(tǒng)在理論上具有可行性.
甲骨文視頻輸入識(shí)別系統(tǒng)是將甲骨文文稿通過視頻工具拍攝后形成圖像信息輸入到計(jì)算機(jī)中,通過相應(yīng)的識(shí)別方法提取甲骨文字信息.
甲骨文視頻輸入識(shí)別系統(tǒng)大致可由4個(gè)部分組成,包括甲骨文文稿圖像獲取、圖像處理、文字識(shí)別和識(shí)別結(jié)果.其中圖像處理涉及到一系列處理方法和技術(shù),主要技術(shù)有歸一化、灰度轉(zhuǎn)換、對(duì)比度增強(qiáng)、去噪、二值化、細(xì)化.歸一化主要采取的方法有Bilinear插值方法,灰度轉(zhuǎn)換主要采用顏色信息轉(zhuǎn)化,對(duì)比度增強(qiáng)采用非線性對(duì)比度增強(qiáng)方法,去噪采用濾波去噪方法,二值化采用分析直方圖取閾值,其中大于閾值像素的為背景,小于閾值的像素就置為文字,而細(xì)化主要就是對(duì)骨架進(jìn)行處理的過程.
甲骨文文稿圖像獲?。河脭?shù)據(jù)線與計(jì)算機(jī)連接即可將視頻獲取的甲骨文文稿以圖片信息的形式傳輸入到計(jì)算機(jī)中等待處理.
圖像處理:首先需要對(duì)圖片進(jìn)行歸一化處理,將圖片的大小縮放到統(tǒng)一的尺寸,以便在字符識(shí)別處理過程中,與字符模板庫中的字符進(jìn)行匹配.對(duì)圖片進(jìn)行歸一化處理,可以通過多種算法來實(shí)現(xiàn),如鄰近插值,雙線性插值,卷積插值,二元三點(diǎn)插值,二元全區(qū)間插值等,效果是越來越好,但是計(jì)算量是越來越大,考慮到文字圖片在顏色、圖像等方面復(fù)雜度相對(duì)弱和運(yùn)算量問題,在本系統(tǒng)中,采用雙線性插值圖像縮放Bilinear插值法對(duì)圖片進(jìn)行縮放.
對(duì)圖片進(jìn)行歸一化處理之后,由于所拍攝的文字圖片,主要表現(xiàn)為黑白圖像,對(duì)圖像的顏色轉(zhuǎn)換處理,將會(huì)有效地剔除文字識(shí)別時(shí)大量顏色信息的運(yùn)算量,而且也能較好地去除噪聲點(diǎn).
圖像處理還包括圖片的對(duì)比度增強(qiáng),通過對(duì)圖像的對(duì)比度增強(qiáng)提高圖片中文字與背景的對(duì)比度,本文采用一種非線性對(duì)比度增強(qiáng)的方法,這種方法能將圖像中有邊緣的部分兩端的對(duì)比度拉開.圖像中的文字是邊緣密集的部分,因此,把這種方法用在文字圖像上正好能起到增強(qiáng)文字與背景的對(duì)比度的作用.
二值化:對(duì)顏色轉(zhuǎn)換處理后的圖片中像素的灰度值進(jìn)行統(tǒng)計(jì),得到窗口內(nèi)像素灰度值的直方圖,然后用Otsu方法分析直方圖取閾值,大于閾值的像素置為背景,小于閾值的像素置為文字.
利用“骨架法”對(duì)分割后的字符進(jìn)行處理,使得字符的筆畫變細(xì),最終成為線寬為一個(gè)像素的筆畫中心線,構(gòu)成字符的骨架,除去冗余的部分.字符的細(xì)化可以減少字符識(shí)別運(yùn)算量.
文字識(shí)別,通過模板匹配方法對(duì)甲骨文字進(jìn)行識(shí)別.然后將識(shí)別出來的文字存儲(chǔ)顯示出來,就完成了整個(gè)系統(tǒng)的功能.
從上可以看出甲骨文視頻輸入識(shí)別系統(tǒng)從大的方面可以分為兩個(gè)部分,其中圖像獲取、圖像處理屬于甲骨文字視頻輸入識(shí)別前處理,文字識(shí)別和顯示結(jié)果屬于甲骨文字視頻輸入識(shí)別后處理.
本文主要從下面5個(gè)方面研究了甲骨文視頻輸入識(shí)別前處理的關(guān)鍵技術(shù)[2-4].
采用雙線性插值圖象縮放算法Bilinear的插值方法來縮放圖片對(duì)圖片進(jìn)行歸一化處理[5-6],如公式(1)所示:A是原圖,B是縮放之后的圖像,R是縮放的比例,B(x,y)是在縮放之后的圖片B中像素點(diǎn)(x,y)的灰度值,B(x,y)由公式(1)計(jì)算.
(1)
其中:
在Matlab中可以通過調(diào)用imresize函數(shù)來實(shí)現(xiàn),其實(shí)現(xiàn)語法格式為:
B=imresize(A,[mrows ncols],’Bilinear’)
由于文字只需要黑白兩種顏色即可,所以可以將前面處理的圖像轉(zhuǎn)換為灰度圖像進(jìn)行處理,應(yīng)用Matlab中的函數(shù)(RGB2GRAY)可以實(shí)現(xiàn).
采用非線性對(duì)比度增強(qiáng)處理對(duì)比度增強(qiáng),其具體算法描述如下:
1)假設(shè)原圖為A,首先用四個(gè)方向的改進(jìn)Sobel算法求得原圖對(duì)應(yīng)的邊緣圖B;
2)對(duì)于原圖A的第一個(gè)像素A(X,Y)用公式(2)求得值G,其中NX,Y是A(X,Y)的鄰域,E(K,L)是在邊緣圖E上像素(K,L)的灰度值;
(2)
3)用公式(3)求得一個(gè)新的灰度值B(X,Y)賦值給像素A(X,Y).
(3)
對(duì)二值化后圖片中像素的灰度值進(jìn)行統(tǒng)計(jì),得到窗口內(nèi)像素灰度值的直方圖,然后用Otsu方法分析直方圖取閾值,大于閾值的像素置為背景,小于閾值的像素置為文字.[7]
利用“骨架法”對(duì)分割后的字符進(jìn)行處理,使得字符的筆畫變細(xì)[8],最終成為線寬為一個(gè)像素的筆畫中心線,構(gòu)成字符的骨架,除去冗余的部分.可以通過Matlab中bwmorph函數(shù)實(shí)現(xiàn).B=Bwmorph(A,’thin’,inf)
本系統(tǒng)分別針對(duì)印刷稿、手寫體稿、拓片在Matlab中做了下面三組仿真實(shí)驗(yàn).所涉及到的主要函數(shù)列舉如下.
A=imread('E:zhen.jpg')
imshow(A)
A3= imresize(A,[72 40],'bilinear') %雙線性歸一
imshow(A3)
A4=RGB2Gray(A3) 灰度變換
imshow(A4)
A5=imadjust(A4, [0.3,0.7],[]) 對(duì)比度增強(qiáng)
imshow(A5)
A7=im2BW(A5) %二值化
imshow(A7)
A8=Bwmorph(A7,'thin',inf) %骨架處理
imshow(A8)
A9=medfilt2(A5) %對(duì)對(duì)比度增強(qiáng)的圖片進(jìn)行椒鹽濾噪
imshow(A9)
表2以甲骨文拓片材料為例列出了利用Matlab對(duì)甲骨文字材料視頻輸入識(shí)別前進(jìn)行圖片預(yù)處理的各階段的效果圖.表中所示圖形為原圖大小的50%.
對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析,并與其他實(shí)現(xiàn)方式[5]相同效果進(jìn)行比較,可知:
1)使用Matlab對(duì)甲骨文字材料視頻輸入識(shí)別前進(jìn)行圖片預(yù)處理比其他處理方式方便、快捷、靈活、高效.
2)對(duì)于印刷體、手寫體和拓片三種介質(zhì)上的甲骨文字,其中印刷體和手寫體的處理相對(duì)簡單,而拓片由于介質(zhì)是動(dòng)物骨頭加上契刻文字多年在地下深藏,出土后,圖片存在的噪聲比較多,因此,拓片在識(shí)別前需要做的處理工作相對(duì)較多.
3)對(duì)于文字圖像信息,對(duì)比度增強(qiáng)與二值化效果相當(dāng),可以不做對(duì)比度增強(qiáng)處理.
4)通過去噪可以很好地消除圖片的模糊信息,提高圖片文字的識(shí)別度.
但是如果拓片部分文字圖片像素信息缺失,可能會(huì)導(dǎo)致文字筆畫不連通,圖片文字處理還存在連通性處理的不好的問題.
表2 利用Matlab對(duì)甲骨文拓片視頻輸入識(shí)別前進(jìn)行圖片預(yù)處理的各階段的效果圖
本文重點(diǎn)對(duì)甲骨文視頻輸入法中的圖文處理提取文字信息進(jìn)行了研究,為甲骨文文稿視頻輸入文字識(shí)別做了準(zhǔn)備工作.實(shí)驗(yàn)表明,在圖形圖像學(xué)技術(shù)的支持下,可以實(shí)現(xiàn)由圖片提取文字信息,但是如前文所說,在提取文字的筆畫連通信息方面還有待進(jìn)一步提高.并可形成規(guī)范[9].
參考文獻(xiàn):
[1] 丁 龍, 陸 俞. 漢字OCR的原理、方法與應(yīng)用[J].高師理科學(xué)刊, 1998, 18(2): 19-22 .
[2] 王嘉梅, 文永華. 基于圖像分割的古彝文字識(shí)別系統(tǒng)研究[J]. 云南民族大學(xué)學(xué)報(bào):自然科學(xué)版, 2008, 17(1): 76-79.
[3] 易 劍, 彭宇新. 一種圖片文字分割的方法[C]//全國網(wǎng)絡(luò)與信息安全技術(shù)研討會(huì), 北京, 2007.
[4] 包艷花, 圖格木勒. 多字體印刷蒙古文識(shí)別后處理研究[C]//中文信息處理前沿進(jìn)展——中國中文信息學(xué)會(huì)二十五周年學(xué)術(shù)會(huì)議, 北京, 2006.
[5] 史立新, 朱思洪. 基于Matlab的平面度誤差最小區(qū)域法評(píng)定[J]. 組合機(jī)床與自動(dòng)化加工技術(shù), 2005(9): 58-59.
[6] 賈 鵬, 李永奎, 趙 萍. 基于 Matlab 圖像處理的谷物顆粒計(jì)數(shù)方法研究[J]. 農(nóng)機(jī)化研究, 2009 , 31(1): 152-156.
[7] OCR文字識(shí)別軟件. MiniOcr[EB/OL]
[8] 黃昌寧, 趙 海. 中文分詞十年回顧[J]. 中文信息學(xué)報(bào), 2007, 21(3): 9-19.
[9] 俞士墳, 段慧明, 朱學(xué)鋒, 等. 北京大學(xué)現(xiàn)代漢語語料庫基本加工規(guī)范[J]. 中文信息學(xué)報(bào), 2002, 16(5): 51-64.