摘要:介紹了OCR技術的基本原理、提出了提高識別準確率的OCR系統(tǒng)優(yōu)化策略,給出了通過Firework、Photoshop、Matlab等輔助軟件解決OCR識別過程中出現(xiàn)的問題的一系列有效方法。
關鍵詞:OCR識別;識別準確率;優(yōu)化設置;輔助軟件
引言
隨著信息技術的高速發(fā)展,一種快速而高效的OCR識別技術應運而生,它可以將書稿、照片等諸多形式的實物資料中的文字轉(zhuǎn)化成數(shù)字化的文本,從而能夠被計算機處理。
OCR是英文Optical Character Recognition的縮寫,即光學字符識別,也可簡單地稱為文字識別。它通過掃描和攝像等光學輸入方式獲取紙張上的文字圖像信息,利用各種模式識別算法分析文字形態(tài)特征,判斷出漢字的標準編碼,并按通用格式存儲在文本文件中。所以,OCR是一種非??旖?、省力的文字輸入方式。
OCR識別系統(tǒng)的工作原理是,將數(shù)字圖像作一個轉(zhuǎn)換,繼續(xù)保存圖像內(nèi)的圖形,表格內(nèi)資料及影像內(nèi)的文字,則一律變成計算機文本。OCR識別過程主要分成五個步驟:①生成待識別圖像;②圖像前期處理;③文字特征抽取與比對識別;④文字校正與再編輯;⑤輸出結(jié)果。
目前,比較流行的OCR軟件很多,英文OCR主要有OmniPage和SuperScan,中文OCR主要有清華紫光OCR、清華文通OCR、漢王OCR、中晶尚書OCR、丹青OCR、蒙恬OCR等。設計OCR的關鍵,是提高識別正確率的問題。
可以通過優(yōu)化OCR系統(tǒng)設置和使用外部輔助軟件的方法,解決上述問題。
1、OCR系統(tǒng)內(nèi)部設置的優(yōu)化策略
1.1充實詞庫
在文字識別過程中,常會遇到一些特殊符號或是稀有字無法識別,如果這些字符在文章中時常出現(xiàn),一味手工修改不是最好的辦法??梢岳肙CR識別系統(tǒng)中的個人詞庫更新解決這一問題。
在OCR安裝軟件的文件夾中會有系統(tǒng)自帶的pwl格式的big5,default,gb詞庫。這種外帶的詞庫包含了部分函數(shù)符以及繁體字等,它解決了OCR內(nèi)部詞庫詞量不足問題,可以向文件夾中添加pwl格式文件,以提高對稀有字的識別率。同時,還可以通過打開已經(jīng)存在的自帶外部pwl文件向其中添加字符。其方法很簡單:選中要操作的字符后直接按個人詞庫欄的“+”,“-”按鈕即可完成字符的添加或刪除操作。比如,原詞庫中沒有嘆號,若要將其加入詞庫,可先在文稿校對界面(如圖1所示)輸入嘆號,然后在個人詞庫欄單擊“+”即可。
1.2調(diào)整識別區(qū)域
一般地,識別區(qū)域越小,識別率越高。在默認狀況下,系統(tǒng)將兩個字節(jié)作為一個字符來識別,所以單個字符識別率不高,但識別區(qū)域選定適合,識別率可達100%。如果識別后發(fā)現(xiàn)不理想,可以重新修改識別區(qū)域,甚至刪除全部區(qū)域重新選定。不同的字符分開識別,也有助于提高識別率。
1.3設置識別分辨率
通過掃描儀生成掃描稿前,一般選擇300dpi的掃描分辨率較合適。分辨率選小了會使OCR識別率降低;分辨率選得太大了非但不能有效提高識別率,還會大幅增加文件長度,浪費處理時間。所以有的掃描軟件設備上有一項“OCR掃描”,直接將掃描分辨率鎖定為300dpi。如果要識別現(xiàn)成的圖片而不是掃描稿,可以先用Photoshop等圖像處理軟件將圖片分辨率改變到300dpi存盤,然后再進行OCR識別。
2、外部軟件的輔助功能
2.1使用Dreamever去除文本段內(nèi)硬回車
OCR識別后的文本段中可能夾雜著許多的硬回車符號,不便于后續(xù)的編輯和排版操作,可以使用Dreamever解決這一問題,操作步驟如下:
(1)將原文章段與段之間空行保存,如圖2所示,全選復制。
(2)啟動Dreamever,在編輯窗口中進行選擇性粘貼,去掉“保留換行符”前面的鉤,按“確定”鍵。
(3)切換到代碼窗口,如圖3所示,將代碼中的P替換成BR。效果如圖4所示。
現(xiàn)在的一些識別軟件,如尚書OCR、漢王OCR和清華紫光OCR都提供了段內(nèi)去硬回車的功能,只要在識別后的文本存盤時,選回車設置為軟回車就行了。
2.2使用Photoshop處理掃描稿
實物資料(書稿、照片等)本身的缺陷如折痕、圈劃線、陰影等,在掃描稿(圖像)中會生成多余的或不清晰的成份,導致OCR識別出錯??梢杂肞hotoshop打開掃描圖片,用橡皮擦或蓋章工具擦除劃線等干擾成份。擦除文字間的劃線時要特別注意,不能擦除文字的原線條,所以最好先把圖片放大后再操作。使用蓋章工具比橡皮擦工具更有難度但它能保護圖片背景的完整性。
圖像亮度和對比度的調(diào)節(jié)對OCR識別率影響也很大。對亮度值和對比度值的調(diào)整一般視待識別圖像中的文字質(zhì)量而定。如果文字線條凹凸不平,甚至有斷線,說明亮度值太大了;當文字線條很黑很粗,甚至擠成了黑疙瘩,分不清筆劃時,則說明亮度值太小了;如果待識別圖像的清晰度不夠好,則適當調(diào)節(jié)對比度。
2.3使用MATLAB二值圖像的生成
有些OCR軟件(如清華紫光)只能打開二值圖像的文件,所以在進行識別前,需要將已有的圖像二值化。利用MATLAB的系統(tǒng)函數(shù)可以將灰度圖轉(zhuǎn)化為二值圖。實現(xiàn)方法如下:
(1)讀入圖像:RI=imread('imagename')
(2)生成灰度圖像:AW=rgb2gray(RI)
要查看是否已轉(zhuǎn)換成灰度圖,可用語句flag=isgray(I),若flag值為l說明已是灰度圖,如圖5、圖6所示。
(3)二值化圖像:BW=im2bw(AW,a)
其中,a表示二值化圖像的閥值,取值在0-1之間。具體多少視實際情況而定。
可以通過imshow函數(shù)顯示轉(zhuǎn)換結(jié)果。若二口圖像不夠理想,可在步驟(3)操作中調(diào)整參數(shù)a的取值。a取不同的值生成的不同二值圖效果如圖7、圖8所示。
類似的,也可以利用Photoshop軟件實現(xiàn)上述二值圖像的轉(zhuǎn)換操作,將要轉(zhuǎn)化的圖片導入到該軟件中,選擇“圖像”—“調(diào)整”—“閾值”選項,通過設置閾值色階將其轉(zhuǎn)化為黑白二值圖。
3、結(jié)束語
OCR技術實現(xiàn)了印刷文字到數(shù)字化文本的轉(zhuǎn)換與再編輯,大大方便了人們快速輸入海量文本的實際需求。目前,OCR技術正由單一的文字識別技術向人機智能交互技術轉(zhuǎn)變,車牌識別、身份證識別、票據(jù)識別等與人們?nèi)粘I蠲芮邢嚓P的諸多領域,也已經(jīng)開始使用OCR識別技術。因此,提高OCR識別準確率具有非常重要的意義。隨著計算機信息處理技術的不斷發(fā)展,OCR技術將向人們展示出越來越廣闊的應用前景。