一種基于光學字符識別技術的中文字符識別方法
【專利摘要】本發明公開了一種基于光學字符識別技術的中文字符識別方法,對于輸入的灰度文本圖像,采用基于連通區域的層次結構切分方法得到切分結果,再利用的基于像素點分布特征的區域增長算法對圖像二值化和去噪音得到待識別字,然后送入普通的單字識別器進行識別,得到候選字集,再通過相似字分類識別方法得到最終的識別結果。與現有技術相比,本發明能夠有效的提高文字識別準確率和效率,使得文本信息可以高速地輸入計算機,解決了低速的信息輸入與高速信息處理之間的矛盾,并能夠簡化繁重的鍵盤錄入工作。
【專利說明】一種基于光學字符識別技術的中文字符識別方法
【技術領域】
[0001] 本發明涉及一種文字識別方法,尤其是一種基于光學字符識別技術的中文字符識 別方法,屬于文字識別【技術領域】。
【背景技術】
[0002] 利用光學字符識別技術的意義在于將圖像中的字符提取到計算機中,變成計算機 文字,使能達到影像資料的儲存量減少、識別出的文字可再使用及分析,當然也可節省因鍵 盤輸入的人力與時間。
[0003] 光學字符識別技術的概念是由德國科學家最先提出來的,然而最早對印刷體漢字 識別進行研究的是IBM公司,1996年,他們采用模板匹配法識別了 1000個印刷體漢字。20 世紀70年代初,日本的學者開始研究漢字識別,并做了大量的工作。中國在光學字符識別 技術方面的研究工作起步較晚,在70年代才開始對數字、英文字母及符號的識別進行研 究,70年代末開始進行漢字識別的研究,到1986年,我國提出"863"高新科技研究計劃,漢 字識別的研究進入一個實質性的階段,清華大學的丁曉青教授和中科院分別開發研究,相 繼推出了中文光學字符識別產品,現為中國最領先漢字光學字符識別技術。早期的光學字 符識別軟件,由于識別率及產品化等多方面的因素,未能達到實際要求。同時,由于硬件設 備成本高,運行速度慢,也沒有達到實用的程度。只有個別部門,如信息部門、新聞出版單位 等使用光學字符識別軟件。進入20世紀90年代以后,隨著平臺式掃描儀的廣泛應用,以及 我國信息自動化和辦公自動化的普及,大大推動了光學字符識別技術的進一步發展,使光 學字符識別的識別正確率、識別速度滿足了廣大用戶的要求。光學字符識別技術可以分為 印刷體識別及手寫體識別,本文研究的是漢字印刷體識別。
[0004] 光學字符識別過程是:字符文稿的光信號通過掃描儀的電荷耦合器件CCD轉換為 電信號,再經過模擬/數字轉換器轉化為數字信號傳輸給計算機。計算機接受的是文稿的 數字圖像,其圖像上的字符可以是英文,可以是中文,也可以是阿拉伯數字等,如果圖像中 的字符頁面不夠端正、字跡不夠清楚、色彩復雜、筆畫間斷等都會影響字符識別的正確率, 因此如果要進行高效的文字識別必須在圖像源方面進行研究,例如圖像的分辨率以及圖像 的對比度亮度等都會左右文字識別的準確率和效率,提高文字識別的準確率同時保證識別 效率才能真正地滿足市場需要。
[0005] 現有的大多數基于光學字符識別技術的中文識別方法均是直接對圖像進行二值 化、噪聲去除、傾斜校正、版面分析、字符切割等預處理,然而在二值化、字符切割等環節存 在過度過濾有用數據、字符切割不合理、灰度特征的提取不合理以及相似漢字識別率較低 等缺陷,同時受到圖像分辨率等影響,這樣下來,現有的一些識別方法的識別率是非常低 的,面對市場環境下的快速實時要求,顯得力不從心。
[0006] 因此要想提高文字識別準確率和效率來更好地滿足市場需求,提出一種對中文字 符識別的改進方法并實現是十分有必要的。
【發明內容】
[0007] 發明目的:本發明的目的是提高對圖像文件中的中文字符識別的準確率和效率來 更好地滿足市場需求。
[0008] 技術方案:本發明提出了一種基于光學字符識別技術的中文字符識別方法,包括 如下步驟: (1) 接收包含中文字符的灰度文本圖像數據; (2) 根據圖像的灰度值對圖像進行分級,按照灰度級別和連通區域構造樹狀結構,并基 于樹狀結構對圖像進行區域切分,得到單字圖像; (3) 采用基于像素點分布特征的區域增長算法對單字圖像進行二值化,得到待識別 字; (4) 對待識別字進行識別得到識別結果。
[0009] 所述步驟(2)的具體步驟為: (2. 1)將圖像的灰度值分為η級,其中2〈n〈256 ; (2. 2)根據灰度級別把整個圖像分成η層的樹狀結構,樹狀結構中的每一個節點代表 一個連通域,每一層對應的一個灰度級別; (2. 3)根據樹狀結構中連通域的數目隨灰度級別的變化情況,在連通域的數目由減少 變增加的轉折點對應的灰度級別所在的層次上進行切分操作; (2. 4)根據平均字寬,通過投影分析法對多個字符形成的連通域進行切割。
[0010] 其中步驟(2. 2)中根據灰度級別把整個圖像分成η層的樹狀結構的步驟包括: (a) 搜索所有的像素點,具有相同灰度級別Gi的鄰接點構成連通域,并將該連通域的 灰度級別設置為Gi,其中i=0,l,2,…,n-1 ; (b) 所有GO級灰度的連通域作為第0層的節點構成樹結構的最底層; (c) 采用自下向上的方法依次構造樹結構的第i層,其中i=l,2,一,11-2,在樹的第i 層,如果i-1層的節點所代表的連通域不和任何Gi級灰度的連通域相鄰,那么直接將該節 點復制,作為第i層的節點,復制節點是i-Ι層被復制節點的父節點;如果i-Ι層的節點所 代表的連通域和Gi級灰度的連通域相鄰,那么將這些相鄰的灰度級別小于等于Gi的連通 域合并成一個新的連通域,并將新連通域的灰度界別設置為Gi,作為第i層的節點,同時這 個節點也是所有參與這個新連通域合并的i-Ι層節點的父節點;與i-Ι層的節點不相鄰的 Gi灰度的連通域則直接作為第i層的節點,該節點是葉節點; (d) 構造樹結構的根節點,在根節點所有的像素點都屬于同一個連通域,樹結構收縮至 唯一的根節點。
[0011] 所述步驟(3)中采用基于像素點分布特征的區域增長算法對單字圖像進行二值化 的具體步驟包括: (3. 1)將圖像中灰度值小于等于LT的點標記為前景點,灰度值大于等于HT的點標記為 背景點,其中LT=T*r,HT=255- (255-T) *r,T為切分操作所在層次的最大灰度值,r是經驗 值,r=0. 6 ; (3. 2)將具有前景區域局部極值特征的點且灰度小于閾值Tb的點選為種子原點并且 標記為前景點,將具有背景區域局部極值特征的點且灰度大于閾值Tw的點選為種子原點 并且標記為背景點,其中Tb大于T,Tw小于T ; (3. 3)從種子原點開始,在它所屬的區域中選取距離種子原點最小的所有像素點,并把 它們標識為已識別的點,然后重新計算距離已識別點最近的點,這樣迭代下去,直到找到所 有的像素點,得到初步二值化結果; (3. 4)對圖像中的孤立的筆畫或者黑色區域,進行噪音去除處理。
[0012] 所述步驟(4)的具體步驟包括: (4. 1)將待識別字通過單字識別器進行識別,得到候選字集,若只有一個候選字則將其 作為識別結果,結束,否則至步驟4. 2 ; (4. 2)根據相似字類別字典判定第一、第二候選字是否是一對相似字,如果是并且符合 進入相似字再識別的條件,則按其差異的部分空間所屬類別進入相應的類別識別器提取不 同的類別特征進行識別得到識別結果;若第一、第二候選字不是相似字或者不符合進入相 似字再識別的條件,則將第一候選字作為識別結果。
[0013] 有益效果:與現有技術相比,本發明提出的方法實現了對不同質量的圖片進行文 字識別的識別正確率和識別效率的提高,它的研究對模式識別、圖像分析的進一步研究有 很大的意義,使得文本信息可以高速地輸入計算機,解決了低速的信息輸入與高速信息處 理之間的矛盾,并能夠簡化繁重的鍵盤錄入工作,從而提高整個計算機系統的效率,在各行 各業以及大部分人的學習工作中都有重要的意義。
【專利附圖】
【附圖說明】
[0014] 圖1為本發明所述的文字識別方法的整體流程示意圖; 圖2為本發明所述的分級層次樹狀結構示意圖; 圖3為本發明所述的相似字識別流程示意圖。
【具體實施方式】
[0015] 下面結合具體實施例,進一步闡明本發明,應理解這些實施例僅用于說明本發明 而不用于限制本發明的范圍,在閱讀了本發明之后,本領域技術人員對本發明的各種等價 形式的修改均落于本申請所附權利要求所限定的范圍。
[0016] 為了提高文字識別準確率,首先要選擇較好的圖像:光學字符識別技術處理的目 標物必須通過光學儀器,例如掃描儀、傳真機等其他器材,將圖像轉入計算機,在掃描過程 中要選擇合適的分辨率,分辨率的選擇不能過高也不能過低,通過實際測試經驗表明:一般 來說,掃描儀提供的信息足夠多,識別時比較容易得出識別結果,并不是分辨率設置的越高 識別率就越高,根據文字的大小確定合適的分辨率,如果太高會導致識別過程中耗費過多 時間,影響掃描效率。下面是通過反復識別,比較識別率,得到的結果,提供參考: 一、二、三號字體,推薦用200dpi ; 四、小四、五號字體,推薦用300dpi ; 小五、六號字的字體,推薦用400dpi ; 小六、七、八號字體,推薦用600dpi。
[0017] 同時,選擇恰當的對比度和亮度值也能提高文字識別準確率,經過掃描儀或者其 他攝影器材掃描過后的圖像中的漢字的偏旁、部首的每一筆每一劃盡可能地細但又不能斷 開。如果文字的筆畫線條粗度不均,而且很黑或者筆畫之間分割不清,中間有黑色斑點時, 這說明對比度和亮度值太小了,需要調得更大一些;如果文字的筆畫凹凸不平,筆畫線條有 間斷或者筆畫有殘缺,說明對比度和亮度值太大了,需要調小一些。如果不對對比度和亮度 值進行調整,例如文字的筆畫殘缺或者斷裂就可能導致一個字被分成兩個字來識別或者只 識別了一個偏旁部首,再例如線條連在一起或者有黑斑,在將文字進行模板比對時,會進行 錯誤比對,這些情況在識別時是很常見的,這樣會導致識別正確率大大降低。
[0018] 獲取到合適的分辨率、對比度和亮度的文本圖像文件后,在讀取圖像文件,把圖像 中的像素點提取出來以獲得文字的筆畫信息,并和模板進行比對時,應當盡可能地提高讀 取像素信息的速度,以加快識別過程。
[0019] 如圖1所示,本發明提出了一種基于光學字符識別技術的提高文字識別準確率和 效率的方法,主要思路為:對于輸入的灰度文本圖像,采用基于連通區域的層次結構切分 方法得到切分結果,再利用的基于像素點分布特征的區域增長算法對單字圖像二值化,然 后送入普通的單字識別器進行識別,得到候選字集,再經過相似字處理后得到最終的識別 結果,包括如下步驟: 步驟1 :接收包含中文字符的灰度文本圖像數據。為了更好地識別,圖像需要具有合適 的分辨率、對比度和亮度,圖像中的漢字的偏旁、部首的每一筆每一劃盡可能地細但又不能 斷開。
[0020] 步驟2 :根據圖像的灰度值對圖像進行分級,按照灰度級別和連通區域構造樹狀 結構,并基于樹狀結構對圖像進行區域切分,得到單字圖像。
[0021] 根據圖像上的像素點分布情況,將圖像分成多個區域,不同于以往的自頂向下,由 大到小的切割方法,本發明采用自下向上,由小到大的方法來分割圖像成多個區域。具體的 步驟如下: ①跟據灰度進行分級:將源圖像的灰度值進行分級,例如每級灰度值差別在20左右, 由于二值化會不可避免地造成信息丟失,但原始的灰度圖像中包含太多的無用信息,因此 可以在保證算法有效性的情況下適當減少計算,忽略部分冗余信息。256級灰度是太高了, 計算量會非常地大而且沒有必要,因此對灰度進行分級后,根據實際情況可以采用遠小于 256的η級(如n=20)來進行處理。
[0022] ②層次劃分:根據分級后的圖像信息,把整個圖像分成多層次的樹狀結構。樹狀結 構的每一層代表某一個灰度下的細節圖像,不同層次代表不同的像素粒度和灰度級別。整 個樹狀結構的構造過程如下: (a) 搜索所有的像素點,具有相同灰度級別Gi (i=0,1,2,…,n-1)的鄰接點構成連通 域,并將該連通域的灰度級別設置為Gi ; (b) 所有GO級灰度的連通域作為第0層的節點構成樹結構的最底層; (c) 在樹的第i層(i=l,2,…,n-2),如果i-Ι層的節點所代表的連通域不和任何Gi 級灰度的連通域相鄰,那么直接將該節點復制,作為第i層的節點,用圓形節點表示(非復 制節點都是三角形節點),圓形的節點即復制節點是i-Ι層被復制節點的父節點。如果i-1 層的節點所代表的連通域和Gi級灰度的連通域相鄰,那么將這些相鄰的灰度級別小于等 于Gi的連通域合并成一個新的連通域,并將新連通域的灰度界別設置為Gi,作為第i層的 節點,同時這個節點也是所有參與這個新連通域合并的i-Ι層節點的父節點。與i-Ι層的 節點不相鄰的Gi灰度的連通域則直接作為第i層的節點,該節點是葉節點。
[0023] (d)當i=n_l時,所有的像素點都屬于同一個連通域,樹結構收縮至唯一的根節 點。
[0024] 按照以上步驟生成的樹狀結構如圖2所示,整個樹的構造過程是由底向上的,即 由最初的級別最低的連通域開始,不斷囊括進灰度級別更高的連通域。整個樹結構實際上 記錄了隨著灰度值選取范圍的擴大,連通域的增長與合并的過程,樹結構中的每一個節點 都代表一個連通域,每一層所對應的灰度級別稱為該層的層次級別。
[0025] ③對層次進行主次劃分:隨著層次灰度級別的逐漸增加,連通域的數目會先減少 再增加,這是由文本圖像的特點導致的,由減少到增加的轉折點處對應的層次中的連通域 一般為完整的單個字符的表示,于是選擇這個層次為主層次,在主層次上進行切分操作。如 果灰度差選擇太大,相鄰級別間的灰度跨度太大,不容易發現主層次級別,如果太小,波谷 太多,也不容易找到主層次級別,經過反復試驗,一般選擇20為灰度劃分閾值。
[0026] ④切分:漢字由一筆一劃構成的,每一筆每一劃都是由一些連通域內的像素點構 成的,方正的漢字的連通域是有特征的,字符間筆畫有粘連時,多個字符形成一個連通域, 需要根據平均字寬,通過投影分析法進行切割,得到切分的結果。
[0027] 步驟3 :采用基于像素點分布特征的區域增長算法對每個單字圖像進行二值化、 去噪音處理,獲得字符結構信息,即待識別字。
[0028] 分別處理各個單字圖像區域內的像素點,提取出有用信息,根據像素點的分部特 征選擇種子原點,從種子原點出發采用基于像素點分布特征的區域增長算法,逐漸向鄰近 像素點前進并讀取,直至處理完所有的像素點。基于像素點分布特征的區域增長算法遍歷 像素點獲取字符結構信息的步驟如下: ①標識確定點:圖像中存在一部分相對比較黑或者相對比較白的點很容易被認為是前 景或者是背景點,這部分點被稱為確定點,在初始化階段需要先將確定點標識出來,以減少 計算耗時。假定T是主層次級別即切分操作所在的層次所對應的最大灰度值,r是經驗值, r=0. 6,令LT=T*r,HT=255- (255-T)*r,則灰度值小于等于LT的點是相對較黑的點,標記為 前景點,灰度值大于等于HT的點是相對較白的點,標記為背景點。
[0029] ②選擇種子原點:種子原點的選擇是非常關鍵的一步,在很大程度上決定了最終 的結果。通過對圖像特征的分析,具有局部極值特征的點恰好落在前景或者背景區域的典 型位置,可以從總體上勾勒出文字的結構情況。具有前景或背景區域局部極值特征的點稱 為peak點和pit點,如果像素點P是peak點,并且P的灰度小于閾值Tb (Tb -般選擇一 個比T略大的值,如比T大20),那么P就是種子原點,并且被標識為前景點;如果像素點P 是pit點,并且P的灰度大于閾值Tw (Tw -般選擇一個比T略小的值,如比T小20),那么 P就是種子點,并且被標記為背景點。
[0030] ③區域增長:經過前兩個步驟,圖像中仍然有大量的不確定點沒有給出標識,主 要是區域內的背景和前景像素點依然存在,這些都會加大計算量,區域增長是一個迭代的 過程,選擇從某個種子原點開始,在它所屬的區域開始遍歷像素點,提取有用的字符結構信 息,首先取出本區域中距離種子原點最小的所有像素點,并把它們標識為已識別的點,然后 重新計算距離已識別點最近的點,這樣迭代下去,直到找到所有的像素點,這一步就得到了 一個初步的二值化結果。
[0031] ④去除噪音處理:經過上一步的區域增長,得到了一個初步的二值結果,但是仍有 一些比較特殊的情況需要處理。這是因為在選擇種子原點時選擇錯誤導致的,這是難免的, 導致噪音和氣泡的出現,而它們又與孤立筆畫和有效背景區域非常相似,因此需要區分辨 另|J、去除噪音,保留有效的字符結構信息。針對仍然存在的一些孤立的筆畫或者黑色區域, 首先算出平均筆畫寬度,如果這些孤立的筆畫或者黑色區域的面積小于平均筆畫寬度的平 方,則認為它是噪音,如果小于兩倍的平均筆畫寬度的平方,且從它們的中心像素點向八個 方向出發到邊界的長度均大于平均筆畫的寬度,則認為它也是噪音,將噪音去除。
[0032] 步驟4 :將待識別字通過單字識別器進行識別,得到候選字集,再經過相似字分類 識別處理后得到最終的識別結果。采用分類識別方法提高相似字的識別正確率,相似字的 筆畫以及結構是非常接近的,誤識率非常高,必須找到對應的方法來解決這一問題,通過研 究,將相似字按結構特點分成若干種類型,目前歸納出四個基本類型:(1)筆畫數不同,例 如口 /日,白/自等;(2)筆畫連接不同,例如已/己,兒/幾等;(3)相差一個筆畫,例如 本/木,廠/廣等;(4)筆畫樣式不同:例如,干/千,井/并等,也有一些特殊的相似字無法 歸類到這四種類別中,比如人/入,就把它們歸為特殊類別,根據上述幾種情況建立類別識 別器和特殊類別識別器。識別時,發現相似字,就把它對應到某一類中,再提取相應的信息 比對字符結構,最終得出識別結果,該方法提高了相似字的識別率。
[0033] 如圖3所示是相似字識別流程圖。首先將待識別的字輸入,由普通的識別器進行 識別,得到候選字集;根據相似字類別字典判定第一和第二候選字是否是一對相似字,如 果是并且符合進入相似字再識別的條件(即屬于以上四種類別的相似字或者特殊類別相似 字),按其差異的部分空間所屬類別,進入相應的類別識別器,提取不同的類別特征進行識 別得到最終的識別結果。其他情況則以第一候選字為識別結果。
【權利要求】
1. 一種基于光學字符識別技術的中文字符識別方法,其特征在于包括以下步驟: (1) 接收包含中文字符的灰度文本圖像數據; (2) 根據圖像的灰度值對圖像進行分級,按照灰度級別和連通區域構造樹狀結構,并基 于樹狀結構對圖像進行區域切分,得到單字圖像; (3) 采用基于像素點分布特征的區域增長算法對單字圖像進行二值化,得到待識別 字; (4) 對待識別字進行識別得到識別結果。
2. 根據權利要求1所述的基于光學字符識別技術的中文字符識別方法,其特征在于: 所述步驟(2)根據圖像的灰度值對圖像進行分級,按照灰度級別和連通區域構造樹狀 結構,并基于樹狀結構對圖像進行區域切分,得到單字圖像的具體步驟為: (2. 1)將圖像的灰度值分為η級,其中2〈n〈256 ; (2. 2)根據灰度級別把整個圖像分成η層的樹狀結構,樹狀結構中的每一個節點代表 一個連通域,每一層對應的一個灰度級別; (2. 3)根據樹狀結構中連通域的數目隨灰度級別的變化情況,在連通域的數目由減少 變增加的轉折點對應的灰度級別所在的層次上進行切分操作; (2. 4)根據平均字寬,通過投影分析法對多個字符形成的連通域進行切割。
3. 根據權利要求2所述的基于光學字符識別技術的中文字符識別方法,其特征在于: 所述步驟(2. 2)中根據灰度級別把整個圖像分成η層的樹狀結構的步驟包括: (a) 搜索所有的像素點,具有相同灰度級別Gi的鄰接點構成連通域,并將該連通域的 灰度級別設置為Gi,其中i=0,l,2,…,n-1 ; (b) 所有GO級灰度的連通域作為第0層的節點構成樹結構的最底層; (c) 采用自下向上的方法依次構造樹結構的第i層,其中i=l,2,一,11-2,在樹的第i 層,如果i-1層的節點所代表的連通域不和任何Gi級灰度的連通域相鄰,那么直接將該節 點復制,作為第i層的節點,復制節點是i-Ι層被復制節點的父節點;如果i-Ι層的節點所 代表的連通域和Gi級灰度的連通域相鄰,那么將這些相鄰的灰度級別小于等于Gi的連通 域合并成一個新的連通域,并將新連通域的灰度界別設置為Gi,作為第i層的節點,同時這 個節點也是所有參與這個新連通域合并的i-Ι層節點的父節點;與i-Ι層的節點不相鄰的 Gi灰度的連通域則直接作為第i層的節點,該節點是葉節點; (d) 構造樹結構的根節點,在根節點所有的像素點都屬于同一個連通域,樹結構收縮至 唯一的根節點。
4. 根據權利要求2所述的基于光學字符識別技術的中文字符識別方法,其特征在于: 步驟(2. 1)中將圖像的灰度值分為20級。
5. 根據權利要求1所述的基于光學字符識別技術的中文字符識別方法,其特征在于: 所述步驟(3)中采用基于像素點分布特征的區域增長算法對單字圖像進行二值化的具 體步驟包括: (3. 1)將圖像中灰度值小于等于LT的點標記為前景點,灰度值大于等于HT的點標記為 背景點,其中LT=T*r,HT=255- (255-T) *r,T為切分操作所在層次的最大灰度值,r是經驗 值,r=0. 6 ; (3. 2)將具有前景區域局部極值特征的點且灰度小于閾值Tb的點選為種子原點并且 標記為前景點,將具有背景區域局部極值特征的點且灰度大于閾值Tw的點選為種子原點 并且標記為背景點,其中Tb大于T,Tw小于T ; (3. 3)從種子原點開始,在它所屬的區域中選取距離種子原點最小的所有像素點,并把 它們標識為已識別的點,然后重新計算距離已識別點最近的點,這樣迭代下去,直到找到所 有的像素點,得到初步二值化結果; (3. 4)對圖像中的孤立的筆畫或者黑色區域,進行噪音去除處理。
6.根據權利要求1所述的基于光學字符識別技術的中文字符識別方法,其特征在于: 所述步驟(4)中對待識別字進行識別得到識別結果的具體步驟包括: (4. 1)將待識別字通過單字識別器進行識別,得到候選字集,若只有一個候選字則將其 作為識別結果,結束,否則至步驟4. 2 ; (4. 2)根據相似字類別字典判定第一、第二候選字是否是一對相似字,如果是并且符合 進入相似字再識別的條件,則按其差異的部分空間所屬類別進入相應的類別識別器提取不 同的類別特征進行識別得到識別結果;若第一、第二候選字不是相似字或者不符合進入相 似字再識別的條件,則將第一候選字作為識別結果。
【文檔編號】G06K9/00GK104156706SQ201410396208
【公開日】2014年11月19日 申請日期:2014年8月12日 優先權日:2014年8月12日
【發明者】吳克河, 崔文超, 陳飛, 喬俊峰 申請人:華北電力大學句容研究中心