專利名稱:用于照相機獲得的文件的低分辨率光學(xué)字符識別的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及光學(xué)字符識別(OCR),并且更具體地說,涉及改進由低分辨率設(shè)備成像的文件的處理的光學(xué)字符識別軟件。
背景技術(shù):
在電子設(shè)備方面技術(shù)的進步在于迅速地減小照相機的尺寸,重量,成本,以及功率消耗。從而,移動計算設(shè)備例如手機,PDA,以及筆記本計算機可以使用小的,便宜的,低分辨率的,現(xiàn)在被設(shè)計為它的子部件的數(shù)字照相機獲得信息。這種便宜的并且多用途的照相機當前使在沒有使用笨重的外圍設(shè)備例如一個掃描儀的情況下很容易地拍攝各式各樣的文件成為可能。從書和法律文件到票據(jù)和商業(yè)名片范圍的文件現(xiàn)在可以在手機,PDA,和便攜式計算機上被即刻拍照。
然而,這樣拍攝的文件的光學(xué)字符識別(OCR)帶來了不同的挑戰(zhàn)。當使用臺式計算機和相配的外圍掃描器時,從紙轉(zhuǎn)換為數(shù)字表示以及反向轉(zhuǎn)換都是簡單的。相反,適合于支持移動計算的技術(shù)的飛速發(fā)展,現(xiàn)在通過這種更為復(fù)雜的設(shè)備進行這種文件的成像。例如,當取消一個相配的外圍設(shè)備時很清楚難以打印和掃描文件。移動式的打印機是笨重的,功耗大的,以及昂貴的。便攜式的掃描儀同樣也是不便利的。此外,這些低分辨率照相機,無論獨立還是嵌入在一個移動計算設(shè)備中,都對這種拍攝文件的光學(xué)字符識別帶來了一個新的挑戰(zhàn)。傳統(tǒng)打印的字符系統(tǒng)首先通過二值化所述圖像,分割所述字符,然后識別所述字符來進行。因為這些系統(tǒng)分離了所述步驟,得到的是比期望的低得多的識別率由此減少了使用這種設(shè)備性能的動機。當使用這些低分辨率照相機時所述OCR處理更加被復(fù)雜化,因為不依賴于所述識別處理來進行屬性二值化或者字符分割實際上是不可能的。在所述OCR引擎把以像素掃描的圖像的像素組成字符的地方進行分割。
如果這樣的一種移動技術(shù)現(xiàn)在能夠具有捕獲和處理所述文件數(shù)據(jù)的OCR能力,人們將使用其中的照相機拍攝許多不同類型,范圍延伸至餐館賬單,有趣的物品,報告,封面,商業(yè)名片,屏幕鏡頭,投射到一面墻的幻燈片,地圖等等的文件的圖片是可能發(fā)生的。所述捕獲多種文件的動力是高的,因為這樣的數(shù)字文件可以隨后被整體地存儲,檢索,存檔,編輯,并且甚至退回打印,只要以電子表格的形式。另外,對于所述信息工作者,這提供了大量的機遇。
現(xiàn)在便宜的照相機(例如大約$50)沒有提供足夠的分辨率來在一個底片中捕獲具有11點字體的整個文件頁和獨立于字符識別執(zhí)行字符分割。低分辨率的照相機圖像是如此的模糊和質(zhì)量差以至于二值化,分割,以及識別都不能獨立地執(zhí)行,而仍然要保持高的識別率。例如,以低分辨率,和許多其它的在字母之間的這種分割相比,字符中間列的″o″通常是用于分割較好的候選者。人們在沒有有效地提出所述分割問題的情況下不能期待良好性能。對低分辨率OCR的改進也有益于高分辨率照相機,因此允許用戶從遠處且在焦點外的地方照相。
這樣,所需要的是可以分辨低分辨率符號的OCR能力。
發(fā)明概述下面提供簡化的發(fā)明概述以便提供本發(fā)明一些方面的基本認識。這個概述不是本發(fā)明的廣泛的概述。它沒有想要標識本發(fā)明關(guān)鍵性的/決定性的特征或描繪本發(fā)明的范圍。它的唯一目的是以一種簡化的形式介紹本發(fā)明的一些概念作為在之后介紹的更多的詳細說明的前奏。
本發(fā)明在這里公開并且要求,它的一個方面,包括通過結(jié)合機器學(xué)習(xí)技術(shù)(例如,回旋的神經(jīng)網(wǎng)絡(luò)),動態(tài)編程,和結(jié)合的語言模型同時解決這些問題的體系結(jié)構(gòu),為照相機獲得的符號和文件實現(xiàn)低分辨率光學(xué)字符識別能力提供必要的步驟。以回旋的神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)并且根據(jù)大量數(shù)據(jù)訓(xùn)練使用機器學(xué)習(xí)方法促進了最大的穩(wěn)固性。
本發(fā)明由幾個部分組成,這幾個部分合作來識別拍攝頁面上的符號?;诨匦窠?jīng)網(wǎng)絡(luò)的字符識別器用來預(yù)測在所述輸入圖像中的給定位置很可能會出現(xiàn)什么字符。一個整體排版分析部件執(zhí)行在所述頁面上查找文本行的位置的任務(wù),并且返回一列用于文本的這些行的邊界矩形。所述排版分析器進一步地分解所述行成為單個的字,標明每個字的邊界。把所有這些連接在一起的是所述字識別器,其在所述頁面上的一個給定的矩形內(nèi)部查找最可能的字。字識別是使用動態(tài)編程解決的最佳化問題。
在本發(fā)明的另一個方面,提供了一種直接從所述灰度級圖像中檢測文本行的算法。
為了實現(xiàn)前述和相關(guān)的目的,本發(fā)明的某些說明性的方面與下列描述以及附加的附圖相結(jié)合在這里被描述。然而,這些方面是表示了各種方法中的僅僅一些,本發(fā)明的原則可以被使用在這些方法中,本發(fā)明意圖是包括所有這樣的方面以及它們的等價物。當和附圖一起考慮時本發(fā)明其它的優(yōu)點和新穎的特征從下列本發(fā)明的詳細說明中將變得顯而易見。
附圖的簡要說明附
圖1根據(jù)本發(fā)明舉例說明對于照相機獲得的文件的低分辨率光學(xué)字符識別是一個整體最佳化框架的系統(tǒng)。
附圖2舉例說明本發(fā)明的低分辨率光學(xué)字符識別系統(tǒng)的一個主要操作的流程圖。
附圖3舉例說明一個原始文件的樣本和在使用照相機捕獲之后成像的文件的樣本。
附圖4根據(jù)本發(fā)明舉例說明預(yù)處理前后一個文件的樣本文本和一個字。
附圖5根據(jù)本發(fā)明舉例說明用于預(yù)處理訓(xùn)練的一個方法。
附圖6根據(jù)本發(fā)明舉例說明一個用于產(chǎn)生標號數(shù)據(jù)的預(yù)處理的流程圖。
附圖7舉例說明已經(jīng)被掃描和定位到地面實況位圖的樣本文本。
附圖8根據(jù)本發(fā)明舉例說明一種用于排版分析的方法。
附圖9根據(jù)本發(fā)明舉例說明一個用于文本檢測的方法的流程圖。
附圖10根據(jù)本發(fā)明舉例說明一個表示文本檢測濾波器的結(jié)果的圖表。
附圖11根據(jù)本發(fā)明舉例說明一個與被加到所述照相機圖像中的文本檢測器的輸出相比的原始的照相機圖像,與在第二復(fù)制圖上一樣。
附圖12根據(jù)本發(fā)明舉例說明一個用于檢測字母之間的間隔的處理的流程圖。
附圖13根據(jù)本發(fā)明舉例說明用于使用間隔檢測的行提取的處理的樣本文本。
附圖14根據(jù)本發(fā)明舉例說明一個用于檢測字間間隔的方法。
附圖15根據(jù)本發(fā)明舉例說明一個用于訓(xùn)練回旋的神經(jīng)網(wǎng)絡(luò)的執(zhí)行過程的流程圖。
附圖16根據(jù)本發(fā)明舉例說明一個用于使用基于回旋的神經(jīng)網(wǎng)絡(luò)的字符識別器識別字符的處理的流程圖。
附圖17根據(jù)本發(fā)明舉例說明所述用于低分辨率打印的文本光學(xué)字符識別(OCR)的回旋的神經(jīng)網(wǎng)絡(luò)的圖表。
附圖18根據(jù)本發(fā)明舉例說明一個用于所述回旋的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法。
附圖19根據(jù)本發(fā)明舉例說明一個用于識別一個字的動態(tài)編程方法。
附圖20根據(jù)本發(fā)明舉例說明一個樣本字分割。
附圖21根據(jù)本發(fā)明舉例說明一個動態(tài)編程表,其用于當沒有使用語言模型時保存部分的動態(tài)編程問題的解決。
附圖22根據(jù)本發(fā)明舉例說明一個用于字典模型最佳化的樣本動態(tài)編程表格,其被用于確定對一個特定的字中的字母的觀察的一個最佳的分配。
附圖23根據(jù)本發(fā)明舉例說明一個基于特里(trie)結(jié)構(gòu)的字典查找圖表。
附圖24根據(jù)本發(fā)明舉例說明一個標點符號檢測的方法。
附圖25舉例說明一個根據(jù)本發(fā)明的體系結(jié)構(gòu)成像樣本的結(jié)果。
附圖26舉例說明根據(jù)本發(fā)明的體系結(jié)構(gòu)語言模型和被成像文本的一部分的對比。
附圖27舉例說明一個電腦可操作的執(zhí)行所述公開的體系結(jié)構(gòu)的方框圖。
附圖28根據(jù)本發(fā)明舉例說明一個示范性的計算環(huán)境的圖解的方框圖。
發(fā)明的詳細說明參考附圖,現(xiàn)在將描述本發(fā)明,其中相同的參考數(shù)字一直用來參照相同的部件。在下面描述中,為了解釋起見,闡述了許多的細節(jié)以便對本發(fā)明提供徹底的了解。然而,也許很明顯,可以在沒有這些細節(jié)的情況下實踐本發(fā)明。在其它的情況中,以方框圖形狀顯示公知的結(jié)構(gòu)和設(shè)備以便簡化描述本發(fā)明。
正如在這個申請中所使用的,術(shù)語″部件″和″系統(tǒng)″意圖是涉及一個與計算機有關(guān)的實體,或者硬件,硬件和軟件的組合,軟件,或執(zhí)行中的軟件。例如,一個部件可以是,但是不局限于,在處理器運行的進程處理器,對象,可執(zhí)行態(tài),執(zhí)行線程,程序,和/或電腦上。通過舉例說明,在一個服務(wù)器上運行的應(yīng)用程序和所述服務(wù)器兩者都可以是一個部件。一個或多個部件可以存在于一個執(zhí)行的進程和/或線程的內(nèi)部,并且一個部件可以被定位于一臺計算機上和/或被分布在兩臺或更多計算機之間。
正如在這里所使用的,術(shù)語″推斷″或″推論″通常指的是根據(jù)經(jīng)由事件和/或數(shù)據(jù)捕獲時的一組觀測推出或推斷系統(tǒng)狀態(tài),環(huán)境和/或用戶的處理。推論可以被使用以標識特定的上下文或動作,或者可以產(chǎn)生例如,關(guān)于狀態(tài)的一個概率分布。推論可以是隨機的-也就是說,基于對數(shù)據(jù)和事件的一種考慮,計算感興趣的狀態(tài)的一個概率分布。推論也可以指的是為了從一組事件和/或數(shù)據(jù)中組成高級的事件所使用的技術(shù)。根據(jù)一組已觀測的事件和/或存儲的事件數(shù)據(jù)這種推論產(chǎn)生新的事件的結(jié)構(gòu)或者動作,無論是否所述事件是以緊密地暫時的近似方式相關(guān),以及是否所述事件和數(shù)據(jù)來自于一個或者多個事件和數(shù)據(jù)源。
照相機獲得的文件的光學(xué)字符識別當使用低分辨率符號和/或文件圖像時本發(fā)明易于捕獲并精確的光學(xué)字符識別(OCR)符號和文本。這種能力也獲得包括降級符號,文本,和/或文件的方案的應(yīng)用,其中介質(zhì)已經(jīng)以某種方式被損害或者被污染,并且所關(guān)聯(lián)的符號更難以識別。
現(xiàn)在參考圖1,根據(jù)本發(fā)明舉例說明一個系統(tǒng)100,其是用于低分辨率照相機獲得的文件的光學(xué)字符識別的一個整體最佳化框架。所述系統(tǒng)100通過同時結(jié)合至少一個回旋的神經(jīng)網(wǎng)絡(luò)102,一個動態(tài)編程部件104,和一個語言模型106解決了現(xiàn)有技術(shù)中的所述問題。這樣,對于一個由所述系統(tǒng)100捕獲和處理的文件108,識別率是非常高,生成的結(jié)果輸出適于所述用戶的數(shù)字表示110。
所述回旋的神經(jīng)網(wǎng)絡(luò)102可以通過重新使用在相鄰位置的計算中的一個位置的部分結(jié)果在多個位置有效地計算一個分類函數(shù)。這是進一步地簡化,因為一個神經(jīng)網(wǎng)絡(luò)可以處理一個灰度級輸入。利用一個在大量數(shù)據(jù)上進行訓(xùn)練的機器學(xué)習(xí)方法提供一個穩(wěn)固的系統(tǒng)?;匦纳窠?jīng)網(wǎng)絡(luò)102被使用因為它在多個位置上有效地計算一個分類函數(shù),使用大量訓(xùn)練的數(shù)據(jù)較好地定標,輸出可以使它便于與隱藏的馬爾可夫模型(HMM)算法結(jié)合的概率,并且它采用灰度級輸入,其產(chǎn)生不必要的二值化。通過以不同的照明條件,字體,大小,照相機角度,聚焦,等等收集數(shù)據(jù),所述機器學(xué)習(xí)算法執(zhí)行構(gòu)造一個對這些因素?zé)o變化的分類器的任務(wù)。
利用所述動態(tài)編程部件104解決字識別的最佳化。一個字識別器使用所述動態(tài)編程部件104確定哪個字位于一個通過排版分析返回的給定的字邊界矩形處。動態(tài)編程通過積累一系列的初始問題的部分問題的最優(yōu)解尋找對于一個問題的最優(yōu)解。當確定總體的最優(yōu)解時這促進了大部分用于尋找最佳的部分問題的計算的再次使用。
所述語言模型部件106簡化字符以及字識別。
現(xiàn)在參考附圖2,舉例說明本發(fā)明的低分辨率光符識別系統(tǒng)的主要操作200的流程圖。首先,執(zhí)行一個預(yù)處理函數(shù)202以捕獲一個文件圖像為進一步地處理作準備。一個整體排版分析函數(shù)204執(zhí)行在捕獲的文件上尋找文本的行的位置的任務(wù),并且返回一欄用于文本的這些行的邊界矩形。然后所述排版分析器進一步地分解所述行成為單個的字,標明每個字的邊界。使用字符識別器206來預(yù)測什么字符很可能出現(xiàn)在輸入圖像的一個給定的位置上。在一個執(zhí)行過程中,基于回旋的神經(jīng)網(wǎng)絡(luò)的字符識別器用來簡化字符識別和其它函數(shù)。將所有這些連接在一起的是一個字識別器208,其在所述文件上給定的矩形內(nèi)部尋找最可能的字。字識別是一個使用動態(tài)編程解決的最佳化問題。
現(xiàn)在參考附圖3,舉例說明一個原始文件的樣本300和在使用一個照相機捕獲之后成像的文件302。所述成像文件302根據(jù)所述照相機的低分辨率性能顯示出一個黑暗的背景色和模糊的文本。
預(yù)處理現(xiàn)在參考附圖4,根據(jù)本發(fā)明舉例說明在預(yù)處理前后一個文件的樣本文本和一個字。一個被掃描的文件可以顯示出許多的問題,這些問題當一個用戶使用一個照相機(例如一個網(wǎng)絡(luò)照相機)捕獲所述文件時將是通常遇到的。例如,如果照相機太靠近所述文件,那么照相機就會相對于該文件表面具有不正確的旋轉(zhuǎn)的和聚焦軸調(diào)整,以及不正確的或者不均勻的照明。旋轉(zhuǎn)的調(diào)整導(dǎo)致在所述圖像中文本的行不是完全地水平。當所述照相機不直著面對所述文件時視角的偏差引起了由于視角造成的變形。另外,由于相對質(zhì)量差的光學(xué)桶形失真可能出現(xiàn)。一些照明問題通過使用適應(yīng)的白色平衡算法預(yù)處理所述圖像得到緩和,該白色平衡算法力求最大化所述圖像中的區(qū)域或者塊的局部的對比度。每當一個記錄圖像被提供給所述系統(tǒng)用于光學(xué)字符識別處理時這些處理可以被運行。
訓(xùn)練現(xiàn)在參考附圖5,根據(jù)本發(fā)明舉例說明用于預(yù)處理訓(xùn)練的一個方法。同時,為了簡明解釋起見,在這里介紹的一個或多個方法,例如,以流程圖的形式,被顯示和描述為一系列的動作,應(yīng)該理解和領(lǐng)會本發(fā)明并沒有受限制于動作的順序,根據(jù)本發(fā)明,因為根據(jù)這里的顯示和描述一些動作可以以不同的順序和/或與其它的動作同時出現(xiàn)。例如,那些本領(lǐng)域中的技術(shù)人員將會了解和領(lǐng)會一個方法能夠換句話說被表示為一系列的相關(guān)的狀態(tài)或事件,例如在一個狀態(tài)圖中。此外,根據(jù)本發(fā)明不是所有舉例說明的動作都可以被要求實現(xiàn)一種方法。
下列預(yù)處理不同于圖4中的,由于只要初始化所述基于神經(jīng)網(wǎng)絡(luò)的系統(tǒng)它就被執(zhí)行。在500,產(chǎn)生一個標記的數(shù)據(jù)。在502,神經(jīng)網(wǎng)絡(luò)字符識別器被訓(xùn)練。所述處理然后到達一個停止方框。為了訓(xùn)練所述基于神經(jīng)網(wǎng)絡(luò)的字符識別器,需要大量的標記的訓(xùn)練數(shù)據(jù)的語言資料庫。這樣的語言資料庫能夠通過具有一個人類注釋掃描的頁面,以及在所述頁面上為每個字符標識所述位置和ASCII碼來構(gòu)造。然而,這可能是一個非常耗時的并且易于出錯的處理。因此,提供一個半自動化的機構(gòu)以產(chǎn)生所述標記的數(shù)據(jù)。
現(xiàn)在參考附圖6,根據(jù)本發(fā)明舉例說明一個用于產(chǎn)生標記的數(shù)據(jù)的預(yù)處理的流程圖。所述本發(fā)明的數(shù)據(jù)獲取系統(tǒng)由一個特殊的打印機驅(qū)動器和一個工具組成,該打印機驅(qū)動器為頁面上的每一字符記錄邊界方框和字符碼,該工具幫助這些邊界方框和掃描的圖像對準。在600,提供所述打印機驅(qū)動器。在602,用所述打印機驅(qū)動器處理所述文件。在604,地面實況數(shù)據(jù)(GTD)通過創(chuàng)造所述文件的一個高分辨率位圖以及為所述文件上的每個字符記錄幾何信息來產(chǎn)生。所述文件以及所述高分辨率位圖是″地面實況,″其中每個字符被正確地標記并且它的位置是已知的。在606,利用所述照相機系統(tǒng)打印和掃描所述高分辨率的位圖。在608,將掃描的圖像對準所述地面實況位圖以便為掃描的頁面上的每一字符取得所述位置。為了進行這個校正步驟,在610,對于在所述文件上的四點的每一個,掃描圖像和地面實況位圖之間對應(yīng)的位置被標識。在612,為了把所掃描的圖像變換為所述復(fù)制的圖像,所述最適合的視角變換被計算。在614,如果必要的話,掃描的圖像被扭曲,來校準所述復(fù)制的圖像。所述處理然后到達一個停止方框。
不幸地,使用一個視角變換來調(diào)整掃描的圖像并不是總能足夠?qū)⑺鲞吔绶娇驅(qū)仕霰粧呙璧淖址?。為了改進所述匹配,通過在每個方向上達到五個像素使每個字符被轉(zhuǎn)化,并且使用最小二乘方距離測量來記錄所述最佳匹配。然后對于每個訓(xùn)練實例,所對應(yīng)的偏移的邊界方框被用作在所述扭曲的,掃描的圖像中的位置。
現(xiàn)在參考附圖7,舉例說明已經(jīng)被掃描以及被與地面實況位圖對準的樣本文本。所顯示的,是使用所述視角變換(如附圖6中描述的)來將所述字符邊界方框?qū)仕鰭呙璧膱D像的結(jié)果。將所掃描的文本700與所述地面實況數(shù)據(jù)702對準。
排版分析現(xiàn)在參考附圖8,根據(jù)本發(fā)明舉例說明一個用于排版分析的方法。在800,接收一個通過照相機成像的文件。在802,排版分析在所述頁上通過尋找所述字,行,以及列檢測文本的排版。使用行信息,所述沿著行的字符可以被分割,定標,以及被表示為一個字符分類算法,如在806所表示的。所述處理然后到達一個停止方框。在掃描的圖像中,這類排版分析可以使用簡單的,然而可信賴的圖像處理操作諸如連通分量分析進行。這些連通分量然后被用作基本的輸入給所述排版處理。
正如先前所表示的,從一個辦公室環(huán)境中的照相機捕獲的記錄圖像完全不同于在一個外圍計算裝置諸如一個掃描儀上的記錄圖像。所述用于照像的燈光是不受控制的導(dǎo)致了對比度和亮度的大量變化。這些變化對于簡單的文本檢測算法提出了一個挑戰(zhàn)。當輸入時連通分量分析需要一個二進制映象(即黑和白)作為輸入。因此,可能很難構(gòu)造一個適合的閾算法,其可靠地從所述背景紙中區(qū)分所述文本。當其它文本被合并成為非常大的字符塊時,在對比度和亮度兩者中的變化可以致使一些文本消失成為所述背景。
現(xiàn)在參考附圖9,根據(jù)本發(fā)明舉例說明一個用于文本檢測方法的流程圖。在一個執(zhí)行過程中,文本檢測如下進行。在900,兩個線性的濾波器被用于輸入圖像中的每個位置。在902,每個濾波器被分配一個閾值。值在這些閾值之上的位置被稱作″文本″,那些下面的是″非文本″。在904,通過兩個濾波器被確定為是文本的位置被使用和保留為可能的文本區(qū)域。所述處理然后到達一個停止方框。
在一個執(zhí)行過程中,所述閾值用實驗方法確定(100和6000,用于七個像素高的行和一個像素間隔的字符)。在另一個執(zhí)行過程中,附加的特點可以被結(jié)合并且所述閾值可以使用″輔助程序″被自動地計算。輔助程序是一個用于改進任何學(xué)習(xí)算法的性能的一般的方法,其不斷地產(chǎn)生分類器,該分類器需要僅僅比隨機猜測稍微多的執(zhí)行。
現(xiàn)在參考附圖10,根據(jù)本發(fā)明舉例說明一個圖表1000,其表示所述文本檢波濾波器的一個結(jié)果。第一濾波器在文本″Now is″上操作以獲得字符之間的間隔。這里,在所述字母″o″和″w″之間檢測間隔。第二濾波器在同一個文本上操作以獲得所述相關(guān)的行。因此,第二濾波器檢測超過和低于所述字″Now″的空間。
現(xiàn)在參考附圖11根據(jù)本發(fā)明舉例說明一個與被加到所述照相機圖像中的文本檢測器的輸出相比的原始的照相機圖像1100,與在第二復(fù)制圖1102上一樣。第二復(fù)制圖的白色區(qū)域表示檢測的文本。
現(xiàn)在參考附圖12根據(jù)本發(fā)明舉例說明一個用于檢測字母之間間隔的處理的流程圖。結(jié)果是兩個濾波器大略地檢測字符之間的間隔,正如在1200中所表示的。在1202,根據(jù)″間隔像素″計算連通分量(CC)分析。在1204,根據(jù)作為結(jié)果的″間隔連通分量″執(zhí)行排版分析。然后通過測驗它們的相對幾何關(guān)系來對所述間隔連通分量進行分組,如1206所表示的。例如,如果間隔連通分量相對的為同樣大小并且,是水平地靠近并成一直線,就檢測到一行。所述測試使用穩(wěn)固統(tǒng)計量,諸如當前行中的連通分量的正中的高度和寬度,并且所述算法執(zhí)行多遍。在1208,通過越來越大的組的連通分量以及通過許多文件來確定閾值。所述處理然后到達一個停止方框。
由于根據(jù)越來越大的組的連通分量收集所述統(tǒng)計量,因此分組的測試更進取地的進行。通過許多文件的語言資料庫試驗性地確定所述閾值。給定間隔連通分量,行檢測步驟對于比例和字母是無變化的,因為僅僅比較間隔連通分量的邊框的相對位置。
現(xiàn)在參考附圖13,根據(jù)本發(fā)明舉例說明用于使用間隔檢測為進行行提取處理的樣本文本1300。實質(zhì)上,所述系統(tǒng)用一個有界的矩形限定文本的被檢測的行。在這兩欄文件中,行檢測導(dǎo)致每一欄的每一檢測的行都用邊界矩形進行限定。如果它是單獨一欄文件,伸展橫跨所述頁面的文本的每一行將要用邊界矩形進行限定,表明所述行被檢測。
現(xiàn)在參考附圖14,根據(jù)本發(fā)明舉例說明一種用于檢測字間間隔的方法。在1400,文本的行被檢測。在文本的行已經(jīng)被檢測之后,這些行被進一步地分割為頁面的多個區(qū)域,該頁面包含所述文件中的每一個字,如在1402中所標明的。確定每一行中字間間隔的位置,并且使用這些間隔來分割行,如在1404中所標明的。為了查找所述間隔,檢測到貫穿行的邊框的空白的垂直欄。在1406,如果在那欄中的所有像素都比一些閾值明亮,那么這欄分類為空白。通過穿越當前行的中間交叉掃描一水平分層,沿著這個掃描線查找像素的最低和最高亮度值,并且由此計算一個閾值來確定所述閾值。在一個執(zhí)行過程中,一個明亮度大于(最低明亮度+3*最高明亮度)/4的像素,被分類為一個空白像素。在1408,然后所述間隔控測器交叉掃描文本的行來檢測空白像素欄,并且使用這些間隔位置將所述行分為多個字。在1410,然后所述字被發(fā)送給所述字符識別器。所述處理然后到達一個停止方框。
字符識別器現(xiàn)在參考附圖15,根據(jù)本發(fā)明舉例說明用于訓(xùn)練一個基于回旋的神經(jīng)網(wǎng)絡(luò)的字符識別器的處理的流程圖。在所述低分辨率光符識別系統(tǒng)的核心處是所述基于回旋的神經(jīng)網(wǎng)絡(luò)的字符識別器。在1500,提供第一回旋的層以用高分辨率提取簡單特征。在1502,提供第二回旋的層以用不精確的分辨率將所述簡單特征轉(zhuǎn)換成為復(fù)雜特征。在1504,提供兩個附加的完全連接的層以形成一個用于學(xué)習(xí)的多用途的分類器。在1506,四個層被同時訓(xùn)練。在1508,訓(xùn)練所述網(wǎng)絡(luò)以最小化交叉熵。所述處理然后到達一個停止方框。
現(xiàn)在參考附圖16,根據(jù)本發(fā)明舉例說明所述用于低分辨率打印的文本的光學(xué)字符識別的回旋的神經(jīng)網(wǎng)絡(luò)1600的一個圖表。一個回旋網(wǎng)絡(luò)的一般策略是以高分辨率提取簡單特征,然后以不精確的分辨率將所述簡單特征轉(zhuǎn)換成更為復(fù)雜的特征。一種產(chǎn)生不精確分辨率的方法是通過兩個特征中的一個對一個層作二次抽樣。所述網(wǎng)絡(luò)1600包括一個具有用于接收數(shù)據(jù)的29×29像素的感受范圍的輸入圖像1602。第一層1604一般提取非常不精確的特征諸如X和Y導(dǎo)數(shù),低通和X-Y導(dǎo)數(shù)。第一層1604使用五個13×13像素特征檢測器神經(jīng)元(或者映射表)掃描所述輸入圖像1602。因為所述特征是根據(jù)所述數(shù)據(jù)學(xué)習(xí)的,直到訓(xùn)練已經(jīng)完成為止很難預(yù)測它們將實際上產(chǎn)生什么。第二回旋層1606以不精確的分辨率提取更加復(fù)雜的特征。第二層1606使用五十個5×5像素特征檢測器神經(jīng)元掃描第一層1604的輸出。特征的數(shù)目并不是關(guān)鍵性的,只要存在足夠傳送所述信息給分類層(1608和1610)的特征即可。在這一點上,該特征很難解釋因為它們被分配在若干單元上。假設(shè)該特征是循環(huán),交集,曲率等等。第一二層(1604和1606)可以被看作為一個可訓(xùn)練的特征提取器。后面二層(1608和1610)被完全地連接,并且可以被看作為形成了一個多用途的分類器,因為一個2層完全連接地神經(jīng)網(wǎng)絡(luò)可以學(xué)習(xí)任何函數(shù)。四個層(1604,1606,1608,和1610)被同時訓(xùn)練。然后訓(xùn)練所述網(wǎng)絡(luò)1600以最小化交叉熵。
上述的使用這個回旋的體系結(jié)構(gòu)的經(jīng)驗表明在一個執(zhí)行過程中,用于所述第一回旋層1604的五個特征和用于第二回旋層1606的五十個特征的選擇適用于大范圍的基于圖像的字符識別,包括本發(fā)明的低分辨率打印的光學(xué)字符識別。在這個執(zhí)行過程中,為了完全地連接層(1608和1610)使用了七十六個輸出單元和七百六十個隱藏單元。隱藏單元的數(shù)目是可變的,并且通過控制這個數(shù)目,全部分類器的容量和通用化得到控制。然而,本領(lǐng)域中的一個技術(shù)人員應(yīng)該理解為了進一步地最佳化可以使用其它值。
現(xiàn)在參考附圖17,根據(jù)本發(fā)明舉例說明一個用于使用基于回旋的神經(jīng)網(wǎng)絡(luò)的字符識別器識別字符的處理的流程圖。在1700,提供一個訓(xùn)練的神經(jīng)網(wǎng)絡(luò)。在1702,輸入一個字符圖像的位圖。在這種情況下,所述位圖是29×29像素的感受范圍。在1704,所述網(wǎng)絡(luò)輸出一列概率,其表明由所述圖像表示的最可能是什么字符。所述處理然后到達一個停止方框。
現(xiàn)在參考附圖18,根據(jù)本發(fā)明舉例說明一種用于所述回旋的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法。在1800,所述系統(tǒng)通過從一個訓(xùn)練圖像的數(shù)據(jù)庫中獲取實例字符來進行訓(xùn)練。接下來,在1802,所述訓(xùn)練圖像被隨機地散開在所述輸入窗口內(nèi)。在1804,所述訓(xùn)練圖像的明亮度和對比度被隨機地改變。在1806,對于訓(xùn)練的每個時期(或者整套模式的曝光),每個字符的一個隨機地散開和調(diào)整的對比度的實例提供給所述網(wǎng)絡(luò)。然后所述處理到達一個停止方框。在一個執(zhí)行過程中,所述訓(xùn)練用數(shù)據(jù)庫包含取自文件文本的十五頁的57,555個字符。
字識別器現(xiàn)在參考附圖19,根據(jù)本發(fā)明舉例說明用于識別一個字的動態(tài)編程方法。所述字符識別器提供,在每個位置,對于將會顯示的并且集中于所述神經(jīng)網(wǎng)絡(luò)的輸入窗口的每個字符的概率。所述排版分析器在所述頁上標識每個字的邊界矩形。不幸地是,在所述頁上單個字母的位置是未知的,因此,字符識別器的中心經(jīng)由每個字符以讀出它的最好的猜測是不可能的。甚至,字符識別器將恰當?shù)貓蟾鎸τ谌魏谓o定的位圖哪一個字母′是最可能的,不管它實際上是否是一個字母。
在1900,在輸入到所述字識別器時字符識別器的一系列觀測被接收。通過掃描穿過所述字并且在每個可能有效的字符位置調(diào)用所述字符識別器來產(chǎn)生所述觀測。在1902,有效的字符位置被定義。為了定義所述有效的字符位置,所述系統(tǒng)將字分割成為小塊,或者間隔,該間隔被設(shè)置為供一個字符用的最小可能的尺寸,如在1904所顯示的。在一個執(zhí)行過程中,所述間隔有兩個像素寬。因為所述字被分成表示用于一個字符的最小可能的尺寸的間隔,多個間隔(例如,合并直到四個間隔)可能需要被連接在一起以查找一個表示字母的組合的間隔序列,如在1906所顯示的。在1908,用字符識別器的結(jié)果填充一個表用于所有的有效的間隔序列。然后在1910,所述字識別器努力使這個識別器輸出的序列和一個特定的字一致。所述處理然后到達一個停止方框。
所述字識別器使用一個動態(tài)編程算法確定哪個字位于一個由排版分析步驟返回的給定的字-邊界矩形中。動態(tài)編程對于一個問題通過積累一系列用于所述初始問題的子問題的最佳的解答來尋找最佳的解決方案。當確定總體最優(yōu)解時,其允許大部分用于查找最佳子問題的計算的再次使用。
現(xiàn)在參考附圖20,按照本發(fā)明舉例說明一個樣本字分割2000。所述小的散列符號2002表明所述用于分割一個字的間隙尺寸。所述大的散列符號2004表明實際地被用于在字″private″和″certainly″中的每一個字母的間隔。
語言模型在一個執(zhí)行過程中,所述字識別器沒有內(nèi)含的特定的語言模型(語言中性的),但完全努力產(chǎn)生字符識別器觀測的一個序列的最可能的解釋。這個識別器使用一個簡單的1維的動態(tài)編程算法,其中所述將被最大化的目標函數(shù)僅僅是所述字符得分的和。所述字符得分是關(guān)于最可能的字符(正如由所述字符識別器返回的)的概率,乘以一個換算系數(shù),該換算系數(shù)取決于最可能字符的平均寬度和所述正在為這個字符考慮的圖像的一部分的寬度有多少不同。在所述動態(tài)編程表中的每個單元包含用于所述解決方案的終點的字母,返回到之前字母的鏈接和所述迄今為止累積的用于解決方案的得分。通過在后面從上次入口穿過所述表進行跟蹤,來還原所述(反向的)最可能的一行。
現(xiàn)在參考附圖21,根據(jù)本發(fā)明舉例說明一個動態(tài)編程表,該表被用于保存一個當沒有使用語言模型時動態(tài)編程問題的部分解。一般地,動態(tài)編程通過填寫在一個表中來進行,其中在所述表中的每個單元表示所述初始問題的一個子問題。例如,假定有一個(1維的)表2100,被用于保存一個動態(tài)編程問題的部分解。所述表2100包含一個單元2102用于所述輸入序列中的每個間隔。這些單元2102中的每一個表示一個終點,其是用于在所述相應(yīng)于那個單元的間隔處的字尾的一部分的最優(yōu)解。每個解決方案按照一個小的子問題的最優(yōu)解來表示(如通過所述相關(guān)的箭頭所指示的)。在這些例子中,所述字被認為是″FOOD″。在所述表2100中每個單元2102包含那個特定子問題的適當?shù)囊粋€測量和一個回到上一單元的指針,其表示用于先于這個字母的字的一部分的最優(yōu)解。當所述表2100已經(jīng)被完全填滿時,最后的單元2104表示用于所述全部的觀測值序列的最佳的字。
現(xiàn)在參照附圖22,根據(jù)本發(fā)明舉例說明一個用于一個字典模型最佳化的樣本動態(tài)編程表2200,其被用于確定對于一個特定的字中的字母的觀測值2202的一個最佳的分配。在一個執(zhí)行過程中,所述字識別器努力找出從字的字典當中哪個字是最可能和一個給定的輸入圖像相稱的。如果在所述詞典中沒有十分似乎可能的字來描述所述圖像,所述系統(tǒng)求助于之前的一個方法。
在第一執(zhí)行過程中,一個基于字典的識別器的方案被使用,其僅僅線性地掃描穿過整個的詞典,估計每個字的概率,并且輸出最可能的字。第二執(zhí)行過程描述了一個可供選擇的機構(gòu),其允許將所述動態(tài)編程最佳化與所述字典遍歷交錯以更快的計算最可能的字。
在這個問題中,在所述動態(tài)編程表2200中的每個列表示在所述輸入序列中終止于一個特定位置(間隔)的子問題,并且所述表的每一行表示一個來自所討論的字的字母。在表格2200的列c和行r的條目表示在間隔c處一個部分識別的字尾,并且以由行r表示的字母結(jié)束。保存在這個表格位置中的是回到之前字母的指針和字母于此結(jié)束的間隔,以及累積的得分。
一個類似的得分方法用于字識別器的第二執(zhí)行過程-觀測匹配由當前的單元暗含的字母,調(diào)節(jié)取決于所述字符的間隔寬度和平均寬度的換算系數(shù)的概率。此外,所述累積的得分是用于所述當前單元的得分加上用于表示上述部分答案的單元的累積的得分。一旦填寫表格已經(jīng)完成,所述字的最佳的得分被保存在最后的(上右方)單元中。然后通過除以這個字中的字母的數(shù)目來標準化這個得分。在沒有這個標準化的情況下,具有相對貧乏地得分字母的長字能夠積累高分并且擊敗那些具有很好的字母得分的短字。因此,希望對于每一字母都使所述得分達到最大值。
因為在字典中的許多字和其它的字共用前綴,因此通過為每個字計算這個共享信息會存在著重復(fù)工作。例如,考慮使用一個動態(tài)編程表格以查找字″FOOL″的得分。它具有和上述的″FOOD″例子相同的前三行。因此,一種方法是希望當計算具有共同前綴的字的得分時共用這些相同的行。
注意一些單元不需要被填寫,因為對于除了第一個的任意字符占有第一個間隔是不可能的,并且每個字母僅僅能夠?qū)刂了膫€間隔負責(zé)。所述最佳路徑通過沿著具有最高觀測值的單元移動的箭頭來表示。
現(xiàn)在參考附圖23,根據(jù)本發(fā)明舉例說明一個基于特里結(jié)構(gòu)的字典查找圖表2200。一個特里結(jié)構(gòu)(來源于數(shù)據(jù)檢索)是一個用于存儲字符串的數(shù)據(jù)結(jié)構(gòu)或k元的位置樹結(jié)構(gòu),其中為每個共同的前綴存在一個節(jié)點。字符串被保存在額外的葉節(jié)點中。特里結(jié)構(gòu)用來實現(xiàn)一個字典抽象數(shù)據(jù)類型(ADT),其中像置零,檢索,插入,和刪除的基本操作能夠被執(zhí)行。它們能夠用于編碼和壓縮以及,正規(guī)表達式的檢索和近似的字符串匹配。
一種解決方案是每次字典被遍歷時創(chuàng)建和評估表格2200(附圖22)的一行。為了以最大化再次使用的計算的數(shù)量的次序遍歷所述字典,所述字典被設(shè)置成為特里結(jié)構(gòu)2300。在特里2300中的任何節(jié)點2302或者表示部分的字或者表示完整的字(或者,兩者-“fool”是一個字并且也是″foolish″的前綴)。當所述字典特里結(jié)構(gòu)被遍歷時,所述動態(tài)編程表格正在被構(gòu)造。當訪問一個節(jié)點時,一個新的″行″2304被創(chuàng)建用于這個虛擬的表格2300,其相當于由那些特里結(jié)構(gòu)中的節(jié)點表示的字母,并且所述行用所述得分填寫。
因此,作為結(jié)果的特里結(jié)構(gòu)2300具有一個最高級的″F″節(jié)點,該節(jié)點與圖22的字典表格2200的″F″行的值相關(guān)。向下遍歷,第二節(jié)點(第一″O″節(jié)點)具有相關(guān)的表格2200的第一″O″行。繼續(xù)移動,第三節(jié)點(第二個″O″節(jié)點)具有來自于表格2200中的與此相關(guān)的對應(yīng)的行。第三節(jié)點具有相應(yīng)于字″FOOD″的″D″節(jié)點的第一分支和相應(yīng)于字″FOOL″的″L″節(jié)點的第二分支?!錎″節(jié)點與來自表格2200的″D″行有關(guān)。類似的,可是產(chǎn)生了下一行的評價并且與″L″節(jié)點有關(guān)。
注意需要這個操作的上下文僅僅是前一行,其作為一個參數(shù)被傳給了所述遞歸的特里結(jié)構(gòu)遍歷程序。如果所討論的節(jié)點表示一個全字,在所述行中的最后的條目能夠被觀察以求出在那個字中的字母的得分的和。此外,字母得分的和除以字的長度以得出最后的字的得分。當所述特里結(jié)構(gòu)遍歷結(jié)束時,遇到的最高得分的字被返回。
存在一些極大加速所述計算的試探優(yōu)化。首先,僅僅訪問從很可能是所述字的初始字母的字母開始的字。這個最佳化在速度方面提供了好幾倍的增大,尤其用于從生僻的字母開始的字。另一個加速來自于修剪所述檢索以便在不可能形成高的得分的字的特里結(jié)構(gòu)中的鏈接不被追隨。如果在一個給定的節(jié)點(在所述列的最后條目中的值,除以字母的數(shù)目)字前綴的字母的平均分劣于一些閾值,假定所述字的剩余字母的得分不管多好,它們決不會好到足以使平均值擊敗迄今為止看到的最好的字。在沒有顯著地妥協(xié)于所述結(jié)果的情況下第二最佳化在速度方面提供了顯著的增大。
標點符號對于基于字典的字識別器引起了一個問題,因為具有拖尾的標點符號的字可能不出現(xiàn)于所述詞典中。現(xiàn)在參考附圖24,根據(jù)本發(fā)明舉例說明一個標點符號檢測的方法。在識別位置的一個序列被傳給所述字識別器之前,所述系統(tǒng)確定所述字的末字符是標點符號的可能性,如在2400所標明的。如果是這樣的話,所述字符識別器用來標識所述特定的標點符號。為了確定是否所述末字符是標點符號,所述系統(tǒng)檢查對于每個可能的末字符位置的最可能的字符,如在2402所標明的。在2404,對于每個最可能的字符產(chǎn)生一個得分。在2406,每個得分與一個預(yù)定的閾值相比。在2408,系統(tǒng)確定是否所述得分已經(jīng)超過了所述閾值。如果在這些字符識別器輸出之中的最高分超過一個閾值,流程圖進行到2410并且也考慮是否所述字符很可能是標點符號。如果兩者都是,流程圖進行到2412其中假定一個加標點的字。所述字的剩余部分然后被發(fā)送給所述基于字典的識別器,如在2414所標明的。在2416,然后所述標點符號被添加給所述字識別器的結(jié)果。所述處理然后到達一個停止方框。如果所述得分沒有超過所述閾值,或者如果它超過了,但其是不被考慮的標點符號,流程圖從2408和2410進行到所述停止方框。
現(xiàn)在參考附圖25,舉例說明根據(jù)本發(fā)明的體系結(jié)構(gòu)的一個成像的樣本2502的結(jié)果2500。所述處理通過一個用戶界面變得更為方便,該用戶界面產(chǎn)生一個窗口2506,用于觀察成像文本2502和處理結(jié)果2500的并行的對比。在這個例子中,所述系統(tǒng)正確地光學(xué)字符識別118個字符和標點符號的104個。如果用連字符號連接被忽略,在其中相關(guān)的字片段不在所述字典里,所述結(jié)果會更好。在這個特定的界面中,所述用戶能夠在無語言模式,頻率模型,和字典模型之間進行選擇。
現(xiàn)在參考附圖26,舉例說明根據(jù)本發(fā)明的體系結(jié)構(gòu)語言模型和成像文本的一部分的對比。在左邊,使用所述字典模型,并且示出了比在右邊示出的高的多的識別率,在右邊示出的沒有使用模型。
分類器如在上文所指出的,主題發(fā)明能夠基于執(zhí)行主題發(fā)明的各個方面的方案使用各種的人工智能。例如,一種用于確定閾值的處理能夠經(jīng)由一個自動的分類器系統(tǒng)和處理變得更為方便,其中該閾值用于確定是否一個字符是標點符號。
一個分類器是一個將輸入的屬性向量,x=(x1,x2,x3,x4,xn)變換為所述輸入屬于一類的置信度的函數(shù),即,f(x)=置信度(類)。這種分類可以使用概率和/或概率的分析(例如,因數(shù)分解成為分析實用程序和費用)來預(yù)測或者推斷一個用戶希望自動執(zhí)行的操作。
一個輔助向量機(SVM)是能夠被使用的分類器的一個例子。所述SVM通過在可能的輸入的間隔中查找一個超曲面來進行操作,其中該超曲面設(shè)法從所述非觸發(fā)事件中分裂所述觸發(fā)器標準。直觀地這使得分類作測試數(shù)據(jù)的校正,該測試數(shù)據(jù)接近而不是等同于訓(xùn)練數(shù)據(jù)。其它的定向的和不定向的模型分類方法包括,例如,na ve Bayes,貝葉斯定理的網(wǎng)絡(luò),決策樹,并且可以使用提供獨立的不同類型的隨機的分類模型。如這里使用的分類也包括統(tǒng)計的回歸在內(nèi),該統(tǒng)計的回歸被用于發(fā)展優(yōu)先的模型。
與從主體說明書容易理解的一樣,所述主體發(fā)明可以使用明確的受過訓(xùn)練的分類器(例如,通過一般的訓(xùn)練數(shù)據(jù))以及隱含的受過訓(xùn)練的分類器(例如,通過觀察用戶行為,接收外在的信息)。例如,SVM經(jīng)由一個在分類器構(gòu)造器和特征選擇模塊內(nèi)的學(xué)習(xí)或訓(xùn)練階段而配置。因此,所述分類器(多個)可用于自動地執(zhí)行多個函數(shù),包括而不是僅限于以下確定所述文件的大量的上下文以便更好的分辨所識別的符號;并且執(zhí)行雙字母組,三字母組,等等的增加當前的字是正確的的概率的處理。例如,如果所述字被開始識別為″wosd″,上述的或隨后的字(雙字母組)還可以被處理。如果隨后的字是processor,″wosd″更可能的應(yīng)該為″word″。
在另一個執(zhí)行過程中,所述字內(nèi)容能夠被分析以促進所述識別率。例如,如果所述字是money,并且后面的被識別的字是securities,于是推論被產(chǎn)生,所述內(nèi)容可以被處理為finances,securities,等等。因此,所述系統(tǒng)能夠自動地啟用包括術(shù)語和/或與分辨這種術(shù)語相關(guān)的能力的一種或多種語言模型。此外,這種語言模型模塊化易于簡化數(shù)據(jù)必要條件,因為如果所述使用了新穎的體系結(jié)構(gòu)的計算裝置被主要地利用在一個金融環(huán)境中,僅僅這種語言模塊(多個)需要被安裝在所述設(shè)備中或在該設(shè)備中變得可利用。這和提供一種包羅萬象的語言模型形成對比,該語言模型可能過度地負荷安裝了它的設(shè)備的存儲能力和/或處理能力。
在另一個執(zhí)行過程中,所述分類器能夠被使用以估計將被分辯的符號的數(shù)目,并且推斷,如果符號的數(shù)目是兩個,例如,所述字更加可能的是一個代詞或冠詞。因此,這種關(guān)聯(lián)字預(yù)處理能夠在其它的語言模型將要被啟用之前被使用。
所述分類器還可以用來自動地調(diào)整所述被用來確定標點符號,及其它將被識別的符號的閾值。這個調(diào)整能夠根據(jù)在光學(xué)字符識別處理中正確識別的內(nèi)容來進行。也就是說,存在一個根據(jù)歷史自動地影響所述閾值的反饋機制。
所述閾值還可以根據(jù)所述內(nèi)容的重要性自動地調(diào)整。例如,當所述光學(xué)字符識別處理進行時,如果確定識別的字正變得越來越與合法的合同文件相關(guān),所述分類器能夠?qū)е滤鱿到y(tǒng)提高所述閾值以改進所述精確性(例如也用于病歷),并且甚至重新運行所述處理,如果想要的話。但是,如果所述內(nèi)容被確定為與一個雜貨店目錄更相關(guān),當所述光學(xué)字符識別處理繼續(xù)時所述閾值能夠被放松。
對于所述分類器的許多其它的運用包括根據(jù)符號的大小,標點符號的類型,句子的長度,與它的在一串符號中的位置有關(guān)的符號的類型,等等產(chǎn)生推論。
注意所述新穎的體系結(jié)構(gòu)沒有局限于使用一個回旋的神經(jīng)網(wǎng)絡(luò)用于字符識別。任何人能夠使用一種在每個關(guān)于所述文件的位置上計算或完全地分類所述結(jié)果的處理,并且在沒有回旋處理的情況下進行動態(tài)編程。然而,在一個較少穩(wěn)固的執(zhí)行過程中,這能夠影響系統(tǒng)性能。
現(xiàn)在參考附圖27,舉例說明一個計算機可操作的執(zhí)行所公開的體系結(jié)構(gòu)的方框圖。為了提供用于本發(fā)明各個方面的附加的上下文,附圖27及下列討論意圖是提供一個適當?shù)挠嬎悱h(huán)境2700的一個簡短的,一般說明,在該計算環(huán)境中本發(fā)明的各個方面能夠被實現(xiàn)。雖然本發(fā)明已經(jīng)在一般的可以在一個或多個計算機上運行的計算機可執(zhí)行指令的上下文中進行了如上的描述,那些本領(lǐng)域中的技術(shù)人員將要認識到本發(fā)明也能夠與其它的程序模塊結(jié)合和/或作為一個硬件和軟件的組合來實現(xiàn)。
通常,程序模塊包括例行程序,程序,部件,數(shù)據(jù)結(jié)構(gòu),等等,其執(zhí)行特定的任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)類型。此外,那些本領(lǐng)域中的技術(shù)人員將會理解本發(fā)明的方法能夠用其它的計算機系統(tǒng)結(jié)構(gòu)來實踐,其中其它的計算機系統(tǒng)結(jié)構(gòu)包括單一的處理器或多處理器計算機系統(tǒng),小型計算機,主計算機以及個人電腦,手提式的計算裝置,基于微處理器的或可編程的消費電子產(chǎn)品,等等,其中每個都能夠被可操作的耦合到一個或多個相關(guān)的設(shè)備上。
本發(fā)明舉例說明的方面也可以在分布式計算環(huán)境中被實踐,其中由通過一個通信網(wǎng)絡(luò)連接的遠程處理設(shè)備執(zhí)行某些任務(wù)。在一個分布式計算環(huán)境中,程序模塊能夠既位于本地的又位于遠程的存儲器存儲設(shè)備中。
一個計算機一般包括各種計算機可讀的介質(zhì)。計算機可讀的介質(zhì)可以是任何可用的介質(zhì),該介質(zhì)能夠通過計算機訪問,并且包括易失性的和非易失性的介質(zhì),可移動的和不可移動的介質(zhì)。舉例來說,而不是限制,計算機可讀的介質(zhì)可以包含計算機存儲介質(zhì)和傳播介質(zhì)。計算機存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的易失性的和非易失性的,可移動的和不可移動的介質(zhì)用于存儲信息諸如計算機可讀指令,數(shù)據(jù)結(jié)構(gòu),程序模塊或其它數(shù)據(jù)。計算機存儲介質(zhì)包括但是不局限于,隨機存取存儲器(RAM),只讀存儲器(ROM),電可擦可編程只讀存儲器(EEPROM),閃速存儲器或其它存儲器技術(shù),光盤(CD-ROM),數(shù)字化視頻光盤(DVD)或其它光盤存儲,磁帶盒,磁帶,磁盤存儲器或其它磁存儲器,或任何其它可用于存儲所希望的信息以及可以由計算機訪問的介質(zhì)。
傳播介質(zhì)一般包含計算機可讀指令,數(shù)據(jù)結(jié)構(gòu),程序模塊或在一個已調(diào)數(shù)據(jù)信號諸如一個載波中的其它數(shù)據(jù)或其它傳送機構(gòu),并且包括任何信息傳輸介質(zhì)。所述術(shù)語″已調(diào)數(shù)據(jù)信號″指的是一種具有一個或多個它的特征集合或用這樣一種以便編碼所述信號中的信息的方式改變的信號。舉例來說,而不是限制,傳播介質(zhì)包括有線的介質(zhì)諸如有線網(wǎng)絡(luò)或直接有線連接,以及無線介質(zhì)諸如聲波,射頻RF,紅外線及其它無線的介質(zhì)。上述任何的組合應(yīng)該也被包括在計算機可讀介質(zhì)的范圍內(nèi)。
再一次的參考附圖27,舉例說明用于實現(xiàn)本發(fā)明各個方面的一個示范性的環(huán)境2700,包括一個計算機2702,計算機2702包括處理單元2704,系統(tǒng)存儲器2706以及系統(tǒng)總線2708。系統(tǒng)總線2708將系統(tǒng)部件包括但不限于,系統(tǒng)存儲器2706耦合到處理單元2704。處理單元2704可以是任何各種的市場上買得到的處理器。雙重的微處理器及其他多處理器體系結(jié)構(gòu)也可以被用作為所述處理單元2704。
所述系統(tǒng)總線2708可以是任何若干種類的總線結(jié)構(gòu),其可以使用任何各種各樣的市場上買得到的總線體系結(jié)構(gòu)進一步地互連到一個存儲器總線上(具有或者不具有一個存儲器控制器),一個外圍總線上,以及一個本地總線上。系統(tǒng)存儲器2706包括只讀存儲器(ROM)2710和隨機存取存儲器(RAM)2712。一個基本輸入/輸出系統(tǒng)(BIOS)被存儲在一個諸如只讀存儲器,可擦可編程只讀存儲器,電可擦可編程只讀存儲器之類的非易失性存儲器2710中,其BIOS包含基本的,例如在啟動期間,幫助計算機2702內(nèi)的元件之間傳送信息的例行程序。所述隨機存取存儲器2712還可以包括一個高速隨機存取存儲器例如用于高速緩存數(shù)據(jù)的靜態(tài)隨機存取存儲器。
計算機2702進一步地包括一個內(nèi)部的硬盤驅(qū)動器(HDD)2714(例如,EIDE,SATA),在一個適當?shù)臋C箱中(未示出)中內(nèi)部的硬盤驅(qū)動器2714也可以被配置為外用的,一個磁性的軟盤驅(qū)動器(FDD)2716,(例如,由此讀出或?qū)懭氲揭粋€可移動的磁盤2718中)和一個光盤驅(qū)動器2720,(例如,讀取一張CD-ROM光盤2722或,由此讀出或?qū)懭氲狡渌笕萘康墓鈱W(xué)介質(zhì)例如DVD中)。硬盤驅(qū)動器2714,磁盤驅(qū)動器2716和光盤驅(qū)動器2720可以分別通過硬盤驅(qū)動器接口2724,磁盤驅(qū)動器接口2726和光盤驅(qū)動器接口2728被連接到所述系統(tǒng)總線2708上。用于外部驅(qū)動執(zhí)行的接口2724包括至少一個或兩個通用的串行總線(USB)和IEEE1394接口技術(shù)。
驅(qū)動器和它們關(guān)聯(lián)的計算機可讀介質(zhì)提供給非易失存儲器數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu),計算機可執(zhí)行指令,等等。對于計算機2702,所述驅(qū)動器和介質(zhì)提供具有適當數(shù)字格式的任何數(shù)據(jù)的存儲。盡管上述的計算機可讀介質(zhì)的描述涉及了硬盤驅(qū)動器,可移動的軟磁盤,和可移動的光學(xué)介質(zhì)例如CD或DVD,那些本領(lǐng)域中的技術(shù)人員應(yīng)該理解其它類型的通過一個計算機可讀取的介質(zhì),例如壓縮驅(qū)動器,磁帶盒,快擦寫存儲卡,盒式磁帶等等,也可以用于所述示范性的操作環(huán)境中,并且進一步地,任何這種介質(zhì)可以包含用于執(zhí)行本發(fā)明方法的計算機可執(zhí)行指令。
多個程序模塊可以被存儲在驅(qū)動器和隨機存取存儲器2712中,包括操作系統(tǒng)2730,一個或多個應(yīng)用程序2732,其它程序模塊2734以及程序數(shù)據(jù)2736。所述操作系統(tǒng)應(yīng)用程序,模塊,和/或數(shù)據(jù)的所有或部分還可以被高速緩存在隨機存取存儲器2712中。
應(yīng)當理解本發(fā)明可以用各種的市場上買得到的操作系統(tǒng)或操作系統(tǒng)的組合來實現(xiàn)。
一個用戶可以通過一個或多個有線/無線的輸入裝置,例如鍵盤2738和指示設(shè)備,諸如鼠標2740將命令和信息輸入到計算機2702中。其它的輸入裝置(未示出)可以包括擴音器,紅外的遙控,操縱桿,游戲鍵盤,記錄筆,觸摸屏等等。這些及其它輸入裝置經(jīng)常通過一個輸入設(shè)備接口2742被連接到所述處理單元2704,該接口被耦合到系統(tǒng)總線2708上,然而可以通過其它接口諸如并行端口,IEEE1394串行端口,游戲端口,USB端口,紅外的接口等等進行連接。
一個監(jiān)視器2744或其它類型的顯示設(shè)備也經(jīng)由一個接口,諸如一個視頻適配器2746連接到所述系統(tǒng)總線2708上。除所述監(jiān)視器2744之外,計算機一般包括其它的外圍輸出設(shè)備(未示出),諸如揚聲器,打印機等等。
計算機2702可以在一個網(wǎng)絡(luò)環(huán)境中進行操作,該網(wǎng)絡(luò)環(huán)境經(jīng)由有線和/或無線通信使用邏輯連接到一個或多個遠程計算機,諸如遠程計算機(多個)2748上。所述遠程計算機2748可以是一個工作站,一個服務(wù)器計算機,一個路由器,一個個人計算機,便攜式計算機,基于微處理器的娛樂裝置,一個窺視設(shè)備或其它公用網(wǎng)絡(luò)節(jié)點,并且一般地包括相對于所述計算機2702描述的許多或所有的元件,盡管,為了簡潔起見,僅僅舉例說明了一個存儲器存儲裝置2750。所描述的邏輯連接包括到一個局域網(wǎng)(LAN)2752和/或較大的網(wǎng)絡(luò),例如,廣域網(wǎng)(WAN)2754的有線/無線連通性。這種局域網(wǎng)與廣域網(wǎng)連網(wǎng)環(huán)境在辦公室和公司中是普遍現(xiàn)象,并且便于組織廣闊的計算機網(wǎng)絡(luò),諸如內(nèi)部網(wǎng),所有的都可以連接到一個全球通信網(wǎng)絡(luò),例如,因特網(wǎng)中。
當用于一個局域網(wǎng)連網(wǎng)環(huán)境時,計算機2702通過一個有線和/或無線通信網(wǎng)絡(luò)接口或適配器2756被連接到所述局域網(wǎng)絡(luò)2752上。適配器2756可以便于與所述局域網(wǎng)2752進行有線的或無線的通信其也可以包括一個無線的在其上處理的用于和無線的適配器2756通信的存取點。當用于一個廣域網(wǎng)連網(wǎng)環(huán)境時,計算機2702可以包括一個調(diào)制解調(diào)器2758,或被連接到所述局域網(wǎng)上的一個通信服務(wù)器上,或具有其它的用于經(jīng)由廣域網(wǎng)2754,諸如經(jīng)由因特網(wǎng)建立通信的裝置。調(diào)制解調(diào)器2758,其可以是內(nèi)部的或外部的以及有線的或無線的設(shè)備,經(jīng)由串行端口接口2742連接到所述系統(tǒng)總線2708。在一個網(wǎng)絡(luò)環(huán)境中,相對于計算機2702描述的程序模塊,或它的一部分,可以被存儲在所述遠程存儲器/存儲裝置2750中。將要理解示出的網(wǎng)絡(luò)連接是示范性的并且在計算機之間建立一個通信鏈路的其它裝置可以被使用。
計算機2702可操作的和以無線通信方式可操作處理的任何無線設(shè)備或?qū)嶓w通訊,例如,打印機,掃描器,臺式和/或便攜式計算機,便攜式的數(shù)據(jù)助理,通信衛(wèi)星,與無線可檢測的標記(例如,亭子,報攤,休息室)有關(guān)的任何一種設(shè)備或位置,和電話。這至少包括Wi-和Fi和BluetoothTM無線技術(shù)。因此,所述通信可以是一個就象傳統(tǒng)的網(wǎng)絡(luò)一樣的預(yù)先確定的結(jié)構(gòu)或簡單的在至少兩個設(shè)備之間的特別通信。
Wi-Fi,或無線保真度,允許在沒有電線的情況下從在家的床上,在飯店房間中的床上或在工作處的會議室中連接到所述互聯(lián)網(wǎng)。Wi-Fi是一種像蜂窩式便攜無線電話一樣的無線技術(shù),該無線電話使這種諸如計算機之類的設(shè)備能夠發(fā)送和接收室內(nèi)和室外的數(shù)據(jù);在一個基站范圍內(nèi)的無論何處。Wi-Fi網(wǎng)絡(luò)使用稱作IEEE 802.11(a,b,g等等)的無線電技術(shù)來提供安全的,可靠的,牢固的無線連通性。Wi-Fi網(wǎng)絡(luò)可用于將計算機彼此連接,連接到互聯(lián)網(wǎng),以及連接到有線網(wǎng)絡(luò)(其使用IEEE 802.3或以太網(wǎng))。Wi-Fi網(wǎng)絡(luò)以未經(jīng)當局許可的2.4和5千兆赫無線電頻帶方式操作,具有11兆比特每秒(802.11b)或54兆比特每秒(802.11a)數(shù)據(jù)速率或具有包含兩個頻帶(雙重頻帶)的產(chǎn)品,因此所述網(wǎng)絡(luò)可以提供類似于被用于許多辦公室中的基本的10BaseT有線的以太網(wǎng)的現(xiàn)實性能。
現(xiàn)在參考附圖28,根據(jù)本發(fā)明舉例說明一個示范性的計算環(huán)境2800的示意性的方框圖。所述系統(tǒng)2800包括一個或多個客戶2802。所述客戶2802是硬件和/或軟件(例如,線程,進程,計算裝置)。所述所述客戶2802可以例如,通過使用本發(fā)明嵌入cookie應(yīng)用程序和/或關(guān)聯(lián)的上下文信息。所述系統(tǒng)2800也包括一個或多個服務(wù)器2804。服務(wù)器2804也可以是硬件和/或軟件(例如,線程,處理,計算裝置)。服務(wù)器2804可以例如,通過使用本發(fā)明嵌入線程來執(zhí)行變換。在客戶2802和服務(wù)器2804之間一個可能的通信可以采用數(shù)據(jù)包的形式,該數(shù)據(jù)包適合于在兩個或更多個計算機處理之間被傳送。所述數(shù)據(jù)包可以包括一個cookie應(yīng)用程序和/或關(guān)聯(lián)的上下文信息,例如。所述系統(tǒng)2800包括一個通信結(jié)構(gòu)2806(例如,一個全球通信網(wǎng)諸如所述互連網(wǎng)),其可以被使用以易于在客戶2802和服務(wù)器2804之間的通信。
經(jīng)由有線(包括光纖)和/或無線技術(shù)通信可以變得更為方便??蛻?802被可操作的連接到一個或多個客戶數(shù)據(jù)存儲2808上,其可以被使用以存入對于客戶2802本地的信息(例如,cookie應(yīng)用程序和/或關(guān)聯(lián)的上下文信息)。類似地,服務(wù)器2804被可操作的連接到一個或多個服務(wù)器數(shù)據(jù)存儲2810上,其可以被使用以存入對于所述服務(wù)器2804本地的信息。
如上已經(jīng)描述的內(nèi)容包括了本發(fā)明的多個例子。當然,對描述本發(fā)明來說描述每個可以想象的部件或方法的組合是不可能的,但是本領(lǐng)域中的一個普通的技術(shù)人員可以認識到本發(fā)明的許多進一步地組合和置換都是可能的。因此,本發(fā)明意圖是包含所有的落入附加的權(quán)利要求的精神和范圍內(nèi)的諸如此類的變更,修改和變化。此外,在這樣的范圍內(nèi)術(shù)語″包括″用于詳細的描述或者用于權(quán)利要求,這樣的術(shù)語意思是以類似于術(shù)語″包含″的方式包括在內(nèi)的,如同當在一個權(quán)利要求中被用作為一個過渡的詞時″包含″被解釋的一樣。
權(quán)利要求
1.一種易于低分辨率符號的光學(xué)字符識別(OCR)的系統(tǒng),包括分割部件,易于分割圖像中的符號;和識別部件,其實質(zhì)上在所述符號的分割同時識別符號。
2.如權(quán)利要求1所述的系統(tǒng),進一步地包括機器學(xué)習(xí)分類算法,其處理灰度級輸入并且通過在一符號位置計算分類函數(shù)來易于識別所述符號。
3.如權(quán)利要求1所述的系統(tǒng),進一步地包括機器學(xué)習(xí)分類算法,其是回旋的神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)處理所述灰度級輸入并且在多個符號位置計算所述分類函數(shù)。
4.如權(quán)利要求1所述的系統(tǒng),進一步地包括行檢測部件,其易于根據(jù)所述符號的灰度級圖像檢測文本的行。
5.如權(quán)利要求1所述的系統(tǒng),進一步地包括至少一個語言模型和一編程模型,其易于解釋所述符號為一個字或它的一個部分。
6.如權(quán)利要求1所述的系統(tǒng),所述識別部件既識別一個符號又識別一串符號,其中所述符號或符號串被表示為一個字。
7.如權(quán)利要求1所述的系統(tǒng),所述識別部件使用回旋的神經(jīng)網(wǎng)絡(luò),語言模型,和動態(tài)編程算法中的至少一個。
8.如權(quán)利要求1所述的系統(tǒng),所述識別部件構(gòu)建一對于不同的照明條件、字體、符號大小、照相機類型、角度和聚焦中的至少一個無變化的分類器。
9.如權(quán)利要求1所述的系統(tǒng),所述識別部件預(yù)測在所述圖像的一給定位置上哪個字符通過所述符號來表示。
10.如權(quán)利要求1所述的系統(tǒng),進一步地包括濾波器,其檢測鄰近符號之間的間隔和鄰近符號行之間的間隔中的至少一個。
11.如權(quán)利要求10所述的系統(tǒng),所述濾波器包括在檢測期間使用的預(yù)定閾值,用實驗和自動的方法中的至少一個計算閾值。
12.如權(quán)利要求1所述的系統(tǒng),所述識別器以高分辨率提取簡單的特征,并且以較不精確的分辨率將所述簡單的特征轉(zhuǎn)換為更復(fù)雜的特征。
13.一種易于低分辨率照相機獲得的文件的光學(xué)字符識別的系統(tǒng),包括分割部件,易于分割圖像中的符號;語言模型,其易于處理字符串中的字符;和動態(tài)編程部件,其易于識別所述字符串為一個字。
14.如權(quán)利要求13所述的系統(tǒng),所述動態(tài)編程部件確定哪個字位于一給定的字邊界矩形中。
15.如權(quán)利要求13所述的系統(tǒng),所述語言模型是字典模型,其掃描通過整個詞典,對于所述詞典的每個字評估一概率,并且輸出最可能的字。
16.如權(quán)利要求13所述的系統(tǒng),所述語言模型是語言中性的,其產(chǎn)生字符識別器觀測序列的最可能解釋。
17.如權(quán)利要求13所述的系統(tǒng),所述語言模型將動態(tài)編程最佳化與詞典遍歷交錯來計算最可能的字。
18.一種在其上存儲用于執(zhí)行如權(quán)利要求13所述的系統(tǒng)的計算機可執(zhí)行指令的計算機可讀介質(zhì)。
19.一種使用如權(quán)利要求13所述系統(tǒng)的計算機。
20.如權(quán)利要求13所述的系統(tǒng),進一步地包括分類器,其根據(jù)與識別字符和字中的至少一個有關(guān)的一個或多個觀測自動地產(chǎn)生一個推論。
21.一種具有計算機可執(zhí)行指令的計算機可讀介質(zhì),該計算機可執(zhí)行指令用于執(zhí)行照相機獲得的文件的低分辨率光學(xué)字符識別的方法,所述方法包括接收具有多個成像符號的照相文件;執(zhí)行排版分析以檢測在所述文件上成像符號的相關(guān)排列;通過檢測成像符號之間的間隔將所述相關(guān)排列拆析成為一組或多組成像符號;分割這些成像符號組成為分離的成像符號;以較高的水平分辨率在水平位置為每個成像符號計算得分;將在所述水平位置每個成像符號的得分合并成為總的得分,該總的得分用來確定一個字;和輸出所述字,該字表示這些成像符號組中的一組。
22.如權(quán)利要求21所述的方法,進一步地包括動作以較高的分辨率提取所述分離的符號的簡單特征;和以較不精確的分辨率將所述簡單特征轉(zhuǎn)換成為更復(fù)雜的特征;其中通過回旋的神經(jīng)網(wǎng)絡(luò)執(zhí)行提取和轉(zhuǎn)換動作中的至少一個。
23.如權(quán)利要求21所述的方法,進一步地包括使用動態(tài)編程以關(guān)聯(lián)排列的方式定位該組符號,其中所述關(guān)聯(lián)排列是行。
24.如權(quán)利要求21所述的方法,分割,提取,和轉(zhuǎn)換的動作被實質(zhì)上同時執(zhí)行。
25.如權(quán)利要求21所述的方法,進一步地包括訓(xùn)練機器學(xué)習(xí)算法以在給定的水平位置從成像符號中產(chǎn)生所識別的符號。
26.如權(quán)利要求25所述的方法,進一步地包括為所述機器學(xué)習(xí)算法產(chǎn)生訓(xùn)練組,產(chǎn)生的動作進一步地包括下列動作中的至少其中之一在紙介質(zhì)和在電子介質(zhì)兩者上打印文件集合;和將所述紙介質(zhì)的每個字符的位置與對應(yīng)成像符號的位置相匹配以產(chǎn)生標記的字符圖像的數(shù)據(jù)庫。
27.如權(quán)利要求21所述的方法,進一步地包括用間隔濾波器檢測符號之間的間隔;使用行濾波器檢測符號的行;和根據(jù)間隔濾波器和行濾波器兩者的結(jié)果定義文本區(qū)域。
28.如權(quán)利要求21所述的方法,進一步地包括執(zhí)行關(guān)于與符號之間的間隔有關(guān)的像素的連通分量分析。
29.一種對拍照的文件執(zhí)行低分辨率光學(xué)字符識別的方法,包括預(yù)處理所述拍照的文件以調(diào)整被引入到所述拍照文件中的缺陷;分析所述文件的排版以確定文本的行;將文本的行分割成為單個的字;為每一單個的字標明邊界;在每一單個的字中使用機器學(xué)習(xí)分類算法識別字符;和用動態(tài)編程算法識別所述單個的字以確定哪個單個的字位于給定的位置。
30.如權(quán)利要求29所述的方法,進一步地包括識別標點符號。
31.如權(quán)利要求29所述的方法,進一步地包括用白色平衡算法預(yù)處理所述拍照的文件以最大化關(guān)于所述文件區(qū)域的對比度。
32.如權(quán)利要求29所述的方法,所述機器學(xué)習(xí)分類算法是回旋的神經(jīng)網(wǎng)絡(luò)和輔助向量機的其中之一。
33.如權(quán)利要求29所述的方法,進一步地包括下列動作的至少其中之一將字典設(shè)置成為最大化再使用的計算量的結(jié)構(gòu);和當遍歷所述結(jié)構(gòu)時產(chǎn)生動態(tài)編程表格以確定對于單個字的字符的觀測的最佳的分配。
34.如權(quán)利要求33所述的方法,所述結(jié)構(gòu)是特里結(jié)構(gòu)。
35.如權(quán)利要求29所述的方法,進一步地包括分析作為一對的第一字和第二字以識別所述第一字。
36.如權(quán)利要求29所述的方法,進一步地包括使用第一和第二語言模型,以便如果使用第一語言模型未能產(chǎn)生輸出字,就自動地使用第二語言模型。
37.如權(quán)利要求29所述的方法,進一步地包括根據(jù)閾值檢測字中的字符之間的間隔,并且使用輔助程序自動地計算閾值。
38.如權(quán)利要求29所述的方法,進一步地包括通過測試連通分量的相對幾何關(guān)系檢測文本的行。
39.如權(quán)利要求38所述的方法,進一步地包括根據(jù)越來越大的組的連通分量產(chǎn)生統(tǒng)計量。
40.如權(quán)利要求29所述的方法,進一步地包括用訓(xùn)練圖像訓(xùn)練所述機器學(xué)習(xí)分類算法,訓(xùn)練包括下列中的至少一個在輸入窗口中隨機地散開所述訓(xùn)練圖像;和在所述輸入窗口中隨機地改變所述訓(xùn)練圖像的亮度和對比度。
全文摘要
一種用于對低分辨率拍照的文件進行光學(xué)字符識別(OCR)的整體最佳化結(jié)構(gòu),它將二值化類型處理、分割和識別組合成為單一的處理。所述結(jié)構(gòu)包括根據(jù)大量數(shù)據(jù)訓(xùn)練的機器學(xué)習(xí)方法??梢允褂没匦纳窠?jīng)網(wǎng)絡(luò)以在多個位置計算分類函數(shù)并采用消除二值化的灰度級輸入。所述結(jié)構(gòu)使用預(yù)處理、排版分析、字符識別和字識別以輸出高的識別率。所述結(jié)構(gòu)還使用動態(tài)編程和語言模型以達到期望的輸出。
文檔編號G06K9/20GK1737822SQ200510092380
公開日2006年2月22日 申請日期2005年5月20日 優(yōu)先權(quán)日2004年5月20日
發(fā)明者C·E·雅各布斯, J·R·林克, R·Y·西馬爾, P·A·維奧拉 申請人:微軟公司