光學字符識別

帶有便攜式掃描儀的掃描和實時光學特徵識別過程(OCR)的視頻

光學角色識別光學字符讀取器OCR )是將鍵入,手寫或印刷文本的圖像電子機械轉換為機器編碼的文本,無論是從掃描的文檔,文檔的照片,場景照片(例如景觀照片中的標誌和廣告牌上的文字)或來自圖像上疊加的字幕文字(例如:來自電視廣播)。

廣泛用作印刷紙數據記錄中的數據輸入形式 - 是否是護照文件,發票,銀行語句,計算機收據,名片,郵件,印刷數據或任何合適的文檔 - 這是一種數字化印刷文本的常見方法,以便它們可以通過電子編輯,搜索,更緊湊,在線顯示,並在機器過程中使用,例如認知計算機器翻譯,(提取)文本到語音,關鍵數據和文本挖掘。 OCR是模式識別人工智能計算機視覺的研究領域。

早期版本需要使用每個角色的圖像進行培訓,並一次使用一種字體。現在,能夠為大多數字體生成高度準確性的高級系統現在很常見,並且支持各種圖像文件格式輸入。一些系統能夠複製格式的輸出,該輸出近似於原始頁面,包括圖像,列和其他非文本組件。

歷史

早期的光學特徵識別可能可追溯到涉及電報和為盲人創建閱讀設備的技術。 1914年,伊曼紐爾·戈德堡(Emanuel Goldberg)開發了一台機器,該機器讀取字符並將其轉換為標準電報代碼。同時,Edmund Fournier d'Albe開發了光載,這是一種手持式掃描儀,當在印刷頁面上移動時,產生了與特定字母或字符相對應的音調。

在1920年代後期到1930年代,伊曼紐爾·戈德堡(Emanuel Goldberg)開發了他所謂的“統計機器”,用於使用光學代碼識別系統搜索縮微膠卷檔案。 1931年,他被授予美國專利1,838,389發明。該專利是由IBM獲得的。

視力障礙用戶

1974年, Ray Kurzweil創辦了Kurzweil Computer Producte,Inc。公司,並持續開發Omni- Font OCR,該公司幾乎可以識別幾乎任何字體印刷的文本。 (Kurzweil經常以發明Omni-Font OCR的形式稱讚,但是在1960年代和1970年代後期,包括Compuscan在內的公司正在使用它。)Kurzweil使用該技術為盲人創建了一台技術,以使盲人閱讀文本,以使文本閱讀文本他們大聲。該設備包括CCD平板掃描儀和文本對語音合成器。 1976年1月13日,成品在由庫茲韋爾(Kurzweil)和盲人聯合會領導人領導的廣泛報導的新聞發布會上揭幕。 1978年,Kurzweil計算機產品開始出售光學特徵識別計算機程序的商業版本。 Lexisnexis是最早的客戶之一,併購買了該計劃,將法律文件和新聞文件上傳到其新生的在線數據庫中。兩年後,庫茲維爾將他的公司賣給了施樂公司,最終將其賣給了Scansoft ,後者與Nuance Communications合併。

在2000年代,在雲計算環境中以及在智能手機上外語標誌的實時翻譯等移動應用程序中,OCR作為服務(Webocr)在線提供。隨著智能手機和智能鏡的出現,OCR可以用於Internet連接的移動設備應用程序中,這些應用程序提取了使用設備相機捕獲的文本。這些沒有內置OCR功能的設備通常會使用OCR API從設備捕獲的圖像文件中提取文本。 OCR API返回提取的文本,以及有關檢測到的原始圖像中檢測到的文本位置的信息,以返回設備應用程序,以進行進一步處理(例如文本到語音)或顯示。

各種商業和開源OCR系統可用於大多數常見的寫作系統,包括拉丁語,西里爾,阿拉伯語,希伯來語,Indic,孟加拉語(孟加拉國),Devanagari,泰米爾語,中文,日語和韓國角色。

申請

OCR發動機已發展為專門研究各種主題的軟件應用程序,例如收據,發票,支票和法律帳單文件。

該軟件可用於:

  • 輸入業務文件的數據,例如檢查,護照,發票,銀行對帳單和收據
  • 自動數板識別
  • 機場的護照認可和信息提取
  • 自動從保險文件中提取關鍵信息
  • 交通信號識別
  • 將名片信息提取到聯繫人列表中
  • 創建印刷文檔的文本版本,例如針對項目Gutenberg的書籍掃描
  • 製作可搜索的印刷文檔的電子圖像,例如Google書籍
  • 實時轉換筆跡以控制計算機(筆計算
  • 擊敗或測試CAPTCHA反機器系統的魯棒性,儘管專門為防止OCR而設計。
  • 盲人和視力障礙用戶的輔助技術
  • 通過確定適合車輛設計的數據庫中的CAD圖像來編寫車輛的說明,因為它實時變化
  • 通過將其轉換為PDF來使掃描的文檔可搜索

類型

OCR通常是一個離線過程,可以分析靜態文檔。有基於雲的服務提供在線OCR API服務。手寫運動分析可以用作手寫識別的輸入。該技術不僅可以使用字形和單詞的形狀,還可以捕獲運動,例如繪製段的,方向以及將筆下筆向下並提起它的模式。這些附加信息可以使過程更加準確。該技術也被稱為“在線角色識別”,“動態角色識別”,“實時角色識別”和“智能角色識別”。

技術

預處理

OCR軟件通常會預先處理圖像,以提高成功識別的機會。技術包括:

  • 偏斜- 如果掃描時未正確對齊文檔,則可能需要將其傾斜幾度順時針或逆時針,以使文本線完美地水平或垂直。
  • 粉碎- 去除正斑和負斑,平滑邊緣
  • 二進制 - 將圖像從顏色或灰度轉換為黑白(稱為二進製圖像,因為有兩種顏色)。該任務是將文本(或任何其他所需圖像組件)與背景區分開的簡單方法。二進制的任務是必要的,因為大多數商業識別算法僅在二進製圖像上起作用,因為這樣做很簡單。此外,在很大程度上,二進制化的有效性在很大程度上影響了角色識別的質量,並在選擇給定輸入圖像類型的二進制化方面做出了仔細的決定;由於用於獲得二進制結果的方法的質量取決於圖像的類型(掃描文檔,場景文本圖像,降級的歷史文檔等)。
  • 拆卸線 - 清理非字形盒子和線條
  • 佈局分析或分區 - 標識列,段落,字幕等作為不同的塊。在多列佈局中尤其重要。
  • 線和單詞檢測 - 建立單詞和字符形狀的基線,根據需要將單詞分開。
  • 腳本識別 - 在多語言文檔中,腳本可能會在單詞級別上更改,因此,在調用正確的OCR之前,必須對腳本進行識別,以處理特定的腳本。
  • 字符隔離或分割 - 對於每個字符的OCR,必須分開由於圖像偽影而連接的多個字符;必須連接由於工件而被分成多個作品的單個字符。
  • 縱橫比規模的歸一化

通過將圖像對齊到均勻的網格基於垂直網格線路最少會相交的黑色區域,將圖像對齊到均勻的網格相對簡單地完成。對於比例字體,需要更複雜的技術,因為字母之間的空格有時可能大於單詞之間的空格,而垂直線可以相交多個字符。

文本識別

Core OCR算法有兩種基本類型,它們可能會產生排名的候選字符列表。

  • 矩陣匹配涉及將圖像與像素基於像素的基礎上的圖像與存儲的字形進行比較。它也稱為模式匹配模式識別圖像相關性。這依賴於從圖像其餘部分正確隔離的輸入字形,並且存儲的字形處於相似的字體和相同的比例。該技術最適合打字文本,當遇到新字體時效果不佳。這是最直接實現的技術早期物理光電器的OCR。
  • 特徵提取將字形分解為“特徵”,例如線,閉環,線方向和線路相交。提取功能降低了表示的維度,並使識別過程在計算上有效。將這些特徵與字符的抽象矢量樣表示進行了比較,該特徵可能會降低到一個或多個字形原型。計算機視覺中特徵檢測的一般技術適用於這種類型的OCR,它通常在“智能”手寫識別和大多數現代OCR軟件中看到。最近的鄰居分類器(例如K-Nearest鄰居算法)用於將圖像功能與存儲的Glyph特徵進行比較,並選擇最近的匹配項。

楔形文字Tesseract之類的軟件採用兩次通用方法來識別角色識別。第二次通過稱為自適應識別,並使用在第一個通過時高度自信地認可的字母形狀,以更好地識別第二次通過的剩餘字母。這對於在字體被扭曲的情況下(例如模糊或褪色)的異常字體或低質量掃描是有利的。

截至2016年12月,現代OCR軟件包括Google Docs OCR, Abbyy Finereader和Transym。其他類似Ocropus和Tesseract之類的其他人則使用神經網絡,這些神經網絡經過訓練以識別整個文本,而不是專注於單個字符。

一種稱為迭代OCR的技術會根據頁面佈局自動將文檔植入部分。使用可變字符置信度閾值在各節上進行OCR,以最大化頁面級OCR精度。已為此方法頒發了美國專利局的專利。

OCR結果可以存儲在標準化的Alto格式中,這是美國國會圖書館維護的專用XML模式。其他常見格式包括HOCR和Page XML。

有關光學字符識別軟件列表,請參見光學角色識別軟件的比較

後期處理

如果輸出受到詞典的約束,則可以提高OCR準確性 - 文檔中允許出現的單詞列表。例如,這可能是英語中的所有單詞,也可能是針對特定領域的更具技術性的詞典。如果文檔在詞典中包含單詞(如專有名詞) ,則此技術可能會出現問題。 Tesseract使用其詞典來影響字符分割步驟,以提高準確性。

輸出流可以是字符的純文本流或文件,但是更複雜的OCR系統可以保留頁面的原始佈局並產生一個帶註釋的PDF ,其中包括頁面的原始圖像和可搜索的文本表示形式。

近鄰居分析可以利用共發生的頻率來糾正錯誤,並註意到某些單詞經常會在一起看到。例如,“華盛頓特區”通常在英語中比“華盛頓文檔”更為普遍。

例如,掃描語言的語法知識還可以幫助確定一個單詞是否可能是動詞或名詞,例如,允許更高的準確性。

Levenshtein距離算法也已用於OCR後處理,以進一步優化OCR API的結果。

特定於應用程序的優化

近年來,主要的OCR技術提供商開始調整OCR系統,以更有效地處理特定類型的輸入。除了特定於應用程序的詞典之外,可以通過考慮業務規則,標準表達或顏色圖像中包含的豐富信息來獲得更好的性能。該策略稱為“面向應用程序的OCR”或“自定義OCR”,已應用於車牌發票屏幕截圖身份證駕駛執照汽車製造的OCR。

《紐約時報》已將OCR技術改編成具有文檔助手的專有工具,這使他們的互動新聞團隊能夠加速需要審查的文檔的處理。他們指出,這使他們能夠處理每小時多達5,400頁的內容,以準備記者審查內容。

解決方法

除了改進的OCR算法以外,還有幾種技術可以解決角色識別問題。

強迫更好的輸入

特殊字體(例如OCR-AOCR-BMICR字體)具有精確指定的尺寸,間距和獨特的字符形狀,可以在銀行檢查處理中轉錄期間具有更高的準確率。幾種突出的OCR發動機旨在捕獲流行字體(例如Arial或Times New Roman)的文本,並且無法在這些專門的字體中捕獲文本,這些字體與常用的字體非常不同。由於可以訓練Google Tesseract識別新字體,因此可以識別OCR-A,OCR-B和MICR字體。

梳子字段是預先打印的盒子,鼓勵人類更加清晰地寫入 - 每個盒子一個字形。這些通常以輟學顏色打印,可以通過OCR系統輕鬆去除。

Palm Os使用了一套特殊的字形,稱為塗鴉,類似於印刷英文字符,但簡化或修改,以便在平台的計算有限的硬件上更輕鬆地識別。用戶將需要學習如何編寫這些特殊的字形。

基於區域的OCR將圖像限制為文檔的特定部分。這通常稱為模板OCR

眾包

眾包人類執行角色識別可以快速處理像計算機驅動的OCR這樣的圖像,但是識別圖像的精度比通過計算機獲得的圖像更高。實用系統包括亞馬遜機械土耳其人recaptcha芬蘭國家圖書館已經開發了一個在線界面,供用戶校正標準化中心格式的OCRED文本。人群採購也已被用來直接執行角色識別,而是邀請軟件開發人員開發圖像處理算法,例如,通過使用等級訂單錦標賽

準確性

LAFT的出現在Google的N-Grams數據庫中,在1700年至1900年的英文文檔中,基於OCR掃描“英語2009”語料庫
基於OCR掃描“英語2012”語料庫
在2012年或更高版本中搜索長s的單詞被標準化為S。

信息科學研究研究所(ISRI)由美國能源部(DOE)委託,其使命旨在促進改進自動化技術以了解機器印刷文檔,並且對1992年OCR準確性的年度測試進行了最有權利的權利。到1996年。

即使有清晰的成像,識別打字的拉丁腳本文本仍然不是100%準確的。一項基於對19世紀和20世紀初報紙頁面的認可的研究得出的結論是,商業OCR軟件的逐個字符OCR精度從81%到99%不等。可以通過人類審查或數據字典身份驗證來實現總準確性。其他領域 - 包括對手工打印的認可,草書手寫和其他腳本中的印刷文本(尤其是那些具有多個單個字符的中亞語言字符) - 仍然是積極研究的主題。 MNIST數據庫通常用於測試系統識別手寫數字的能力。

可以通過多種方式測量準確率,以及如何測量它們可以極大地影響報告的準確率。例如,如果單詞上下文(單詞的詞典)不用於糾正查找不存在單詞的軟件,則字符錯誤率為1%(精度為99%),如果測量值的錯誤率可能會導致5%或更差基於每個單詞是否均被識別而沒有錯誤的字母。在基於神經網絡的手寫識別解決方案中,使用足夠大的數據集很重要。另一方面,生產天然數據集非常複雜且耗時。

數字化舊文本固有的困難的一個例子是OCR無法區分“長S ”和“ F”字符。

近年來,基於Web的OCR系統用於識別手工印刷文本已成為商業產品(請參閱Tablet PC歷史記錄)。精確率在整潔,乾淨的手寫字符上可以通過筆計算軟件實現80%至90%的精度,但是該準確率仍然轉化為每頁幾十個錯誤,這使得該技術僅在非常有限的應用程序中有用。

草書文本的識別是一個積極的研究領域,其識別率甚至低於手寫文本。如果不使用上下文或語法信息,則可能無法使用更高的一般草書腳本識別率。例如,與試圖從腳本中解析單個字符相比,識別字典中的整個單詞更容易。讀取支票金額線(這總是一個報名編號)是一個示例,其中使用較小的詞典可以大大提高識別率。單個草書角色本身的形狀根本不包含足夠的信息來準確(大於98%),可以識別所有手寫的草書腳本。

大多數程序允許用戶設置“置信率”。這意味著,如果軟件無法達到所需的準確性水平,則可以通知用戶以進行手動審查。

OCR掃描引入的錯誤有時被稱為掃描儀(類似於術語錯字)。

Unicode

支持OCR的字符於1993年6月添加到Unicode標準中,並發布1.1版。

這些字符中的一些是根據特定於MICROCR-AOCR-B的字體映射的。

光學字符識別
官方Unicode財團代碼圖(PDF)
0123456789ABCDEF
U+244X
U+245x
筆記
1.^從Unicode版本15.1開始
2. ^灰色區域表示未分配的代碼點

也可以看看