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