李沛霖,呂 巍,姚 琳,尚丹梅
(錦州醫(yī)科大學(xué),遼寧 錦州 121001)
隨著會(huì)計(jì)管理信息化的不斷發(fā)展,會(huì)計(jì)票據(jù)的信息化需求也越來越迫切。會(huì)計(jì)管理工作每天都要面對(duì)大量的紙質(zhì)票據(jù),各種紙質(zhì)票據(jù)按照傳統(tǒng)的工作流程,需要人工手動(dòng)錄入信息,按流程逐級(jí)人工審核,并管理大量的紙質(zhì)票據(jù)檔案,這使得整體錄入和審核工作量繁重,效率較低。在目前的會(huì)計(jì)信息化中可以將會(huì)計(jì)票據(jù)以圖像的形式存檔,但其本身是一種非結(jié)構(gòu)化的數(shù)據(jù)格式,不利于信息的進(jìn)一步利用。
光學(xué)字符識(shí)別(Optical Character Recognition,OCR)是一種通過光學(xué)技術(shù)掃描文本和字符以獲得圖像信息的方法,通過形態(tài)特征的分析確定標(biāo)準(zhǔn)文本和字符編碼,轉(zhuǎn)化為計(jì)算機(jī)內(nèi)碼,并存儲(chǔ)在文本文件中,是快速文本輸入的一種方式。如果將OCR 技術(shù)應(yīng)用于會(huì)計(jì)票據(jù)識(shí)別,對(duì)于數(shù)字化的票據(jù)圖像,OCR技術(shù)能將其內(nèi)容逐項(xiàng)識(shí)別出來,方便進(jìn)一步轉(zhuǎn)化為會(huì)計(jì)文檔。
目前,市場(chǎng)上已有很多成熟的OCR 產(chǎn)品,如漢王、文通、ABBYY FineReader OCR、Tesseract OCR、IRIS ReadIRIS、百度OCR 等。在眾多OCR 識(shí)別產(chǎn)品中,Tesseract 作為谷歌的免費(fèi)開源OCR 軟件,使用集束搜索算法和K-近鄰算法(KNN)進(jìn)行預(yù)識(shí)別,并支持樣本訓(xùn)練,可以形成特定的語言庫。相對(duì)于其他價(jià)格昂貴的商業(yè)化識(shí)別軟件,Tesseract 可以用較低成本針對(duì)會(huì)計(jì)場(chǎng)景建立專用字庫,從而提高識(shí)別準(zhǔn)確度。
基于Tesseract 的會(huì)計(jì)票據(jù)圖像識(shí)別平臺(tái)系統(tǒng)構(gòu)成如圖1所示,主要包括圖像預(yù)處理模塊、OCR 字符識(shí)別模塊及識(shí)別文本處理模塊。圖像預(yù)處理接收用戶導(dǎo)入的票據(jù)圖像,進(jìn)行圖像去噪聲、圖像二值化、圖像傾斜矯正等操作,為圖像后續(xù)的檢測(cè)和識(shí)別做好準(zhǔn)備。預(yù)處理后的票據(jù)圖像經(jīng)文字檢測(cè)和識(shí)別模塊處理,形成文本文件。識(shí)別文本處理模塊將文本信息轉(zhuǎn)化為相應(yīng)會(huì)計(jì)格式文檔。
票據(jù)圖像在進(jìn)行數(shù)字化轉(zhuǎn)換時(shí),會(huì)受到各種環(huán)境因素影響,為了提高圖像識(shí)別的質(zhì)量,通常需要對(duì)圖像進(jìn)行去噪聲、二值化、傾斜矯正等預(yù)處理。
使用電子設(shè)備采集的圖像,受到外界光照、噪聲等環(huán)境的干擾,造成圖像清晰度下降,給圖像的檢測(cè)和識(shí)別帶來不利影響,在進(jìn)行圖像分析和處理之前,需要消除圖像噪聲,并針對(duì)不同的噪聲特點(diǎn)采用適合的濾波器,以便最大程度地還原圖像的質(zhì)量。自適應(yīng)中值濾波可以根據(jù)圖像局部變化,動(dòng)態(tài)的改變?yōu)V波器窗口尺寸大小,其算法流程如圖2 所示。該算法盡可能地保護(hù)圖像中的細(xì)節(jié)信息,避免圖像邊緣的細(xì)化或者粗化,能較好地保留圖像的邊界和高頻成分,適于處理會(huì)計(jì)票據(jù)圖像。
圖像二值化是將彩色或多灰度圖像轉(zhuǎn)換為只有黑白二值的灰度圖像的過程,將圖像轉(zhuǎn)換為二值圖像,減少圖像數(shù)據(jù)量的同時(shí),去除圖像的冗余信息,凸顯圖像的輪廓。
(1)圖像脫色處理
彩色圖像轉(zhuǎn)換為灰度圖像可以采用平均法、最大最小平均法及加權(quán)平均法等,其中加權(quán)平均法最常用,它根據(jù)人的亮度感知系統(tǒng)計(jì)算出RGB 三種顏色的參數(shù),使用標(biāo)準(zhǔn)化參數(shù)計(jì)算對(duì)應(yīng)像素的灰度值(0-255),該算法實(shí)現(xiàn)簡單,使用廣泛。
(2)圖像黑白分割
對(duì)于票據(jù)圖像經(jīng)常出現(xiàn)的亮度分布不均勻、有陰影等情況。如果采用全局閾值法,將導(dǎo)致票據(jù)圖像出現(xiàn)大量的黑色區(qū)域;采用自適應(yīng)閾值法對(duì)票據(jù)圖像處理,容易出現(xiàn)文字?jǐn)嗔训那闆r。經(jīng)過大量測(cè)試,發(fā)現(xiàn)OTSU 法對(duì)票據(jù)圖像二值化效果較理想。
OTSU 算法按圖像的灰度特性,將圖像分成背景和目標(biāo)兩部分,背景和目標(biāo)之間的類間方差越大,說明構(gòu)成圖像的兩部分差別越大。當(dāng)部分目標(biāo)錯(cuò)分為背景或者部分背景錯(cuò)分為目標(biāo)都會(huì)導(dǎo)致兩部分差別變小,因此要計(jì)算能將兩類分開的最佳閾值,使得它們的類間方差最小。
假設(shè)圖像的尺寸大小為M×N,初始閾值為T0。對(duì)圖像中的像素依次進(jìn)行計(jì)算,將圖像像素值大于初始閾值的像素點(diǎn)作為目標(biāo),累積求得像素點(diǎn)個(gè)數(shù)N0,背景像素點(diǎn)個(gè)數(shù)為:
目標(biāo)像素點(diǎn)占整個(gè)圖像的像素個(gè)數(shù)比例ω0為:
設(shè)灰度圖像背景和目標(biāo)的區(qū)分閾值為T,目標(biāo)像素點(diǎn)所占圖像總像素點(diǎn)的比例為ω0,灰度均值為μ0,背景占圖像比例為ω1,灰度均值為μ1,則整幅圖像的平均灰度為:
令灰度圖像的每一個(gè)灰度值t=0,1,…,N-1(N 為圖像的灰度級(jí)),使目標(biāo)和背景兩部分之間的類間方差達(dá)到最大:
OTSU 閾值法是求圖像全局閾值的最佳方法,計(jì)算簡單、快速,不受圖像亮度和對(duì)比度的影響。
在票據(jù)圖像的獲取過程中,經(jīng)常會(huì)出現(xiàn)圖像傾斜現(xiàn)象,這樣會(huì)影響圖像后續(xù)的字符分割效果,必須矯正圖像的水平度。Hough 變換是一種特征提取技術(shù),它通過一種投票算法監(jiān)測(cè)具有特定形狀的物體,直線檢測(cè)精度高,受直線中的間隙和噪聲影響較小。將圖像空間中用直角坐標(biāo)表示的直線變換為極坐標(biāo)空間中的點(diǎn),把直線上點(diǎn)的坐標(biāo)變換到過點(diǎn)的直線的系數(shù)域,通過利用共線和直線相交的關(guān)系使直線的提取問題轉(zhuǎn)化為在參數(shù)空間中計(jì)算局部最大值的計(jì)數(shù)問題,得到一個(gè)符合特定形狀的集合作為Hough 變換結(jié)果。在Hough 變換中用ρ 表示原點(diǎn)距直線的法線距離,θ 為該法線與x 軸的夾角,可用如下參數(shù)方程表示該直線:
使用Hough 變換通過尋找極坐標(biāo)系中點(diǎn)集的峰值,發(fā)現(xiàn)長的直線特征,接下來基于Hough 變換找到最長邊緣線,確定傾斜角度,完成票據(jù)的傾斜矯正。
經(jīng)過預(yù)處理的會(huì)計(jì)票據(jù)圖像樣本使用jTessBoxEditor 整合進(jìn)一個(gè)Tiff 圖片集中,然后調(diào)用Tesseract 引擎進(jìn)行預(yù)識(shí)別,生成文本檢測(cè)Box 文件,Box 為文本文件,順序地、每行一個(gè)字符地列出訓(xùn)練圖像中的字符,以及字符在圖像中的邊界框坐標(biāo)、邊界框長寬大小。對(duì)于Box 文件需要進(jìn)一步校正,以修改其中的錯(cuò)誤,積累字庫,針對(duì)票據(jù)圖像中出現(xiàn)的不同字體,可以生成字體特征文件,識(shí)別流程如圖3 所示。
訓(xùn)練完成后生成會(huì)計(jì)票據(jù)字庫,將字庫文件拷貝到Tesseract 安裝目錄下的Tessdata 文件內(nèi),即可調(diào)用字庫進(jìn)行會(huì)計(jì)票據(jù)圖像的識(shí)別。根據(jù)經(jīng)驗(yàn)數(shù)據(jù)分析,基于Tesseract 的字符識(shí)別,需要確保每個(gè)字符最小的數(shù)量樣本,對(duì)于不經(jīng)常出現(xiàn)的字符至少需要10 次的數(shù)量樣本,出現(xiàn)特別頻繁的字符至少需要20 次的數(shù)量樣本。如果訓(xùn)練樣本數(shù)量較少,會(huì)影響識(shí)別的準(zhǔn)確率,解決辦法為增加訓(xùn)練樣本數(shù)量,這是提高識(shí)別率的最根本、最有效方法。
對(duì)文字識(shí)別后生成的文本文件,依次讀出行列對(duì)應(yīng)的文字信息并寫入表格。對(duì)于表格中的數(shù)據(jù),按照會(huì)計(jì)科目等類別,進(jìn)行統(tǒng)計(jì)歸類、分類匯總,形成會(huì)計(jì)信息表,方便進(jìn)一步根據(jù)實(shí)際需求編制財(cái)務(wù)表格。在文本數(shù)據(jù)導(dǎo)入并匯總成表格時(shí),針對(duì)OCR 識(shí)別過程中可能出現(xiàn)的錯(cuò)誤,還需引入糾錯(cuò)程序,使用相似度算法對(duì)可能出現(xiàn)的錯(cuò)誤進(jìn)行自動(dòng)糾錯(cuò),并提供手動(dòng)糾錯(cuò)提示。
基于Tesseract 的會(huì)計(jì)票據(jù)圖像識(shí)別系統(tǒng),借助圖像處理技術(shù)和開源OCR 識(shí)別引擎提供一種低成本的會(huì)計(jì)票據(jù)圖像識(shí)別方案,該方案對(duì)120 張樣本票據(jù)進(jìn)行試驗(yàn),總體識(shí)別率為93.57%,準(zhǔn)確率相對(duì)較高,可以基本滿足會(huì)計(jì)工作需求,但仍然存在個(gè)別識(shí)別錯(cuò)誤,需要手動(dòng)校對(duì)。在后續(xù)的實(shí)踐應(yīng)用中還要不斷完善其功能,改進(jìn)圖像預(yù)處理能力并積累字庫,進(jìn)一步提高識(shí)別準(zhǔn)確率和效率,提高會(huì)計(jì)信息處理效率和智能化水平。