專(zhuān)利名稱(chēng):對(duì)經(jīng)歷光學(xué)字符識(shí)別(ocr)過(guò)程的文本文檔中出現(xiàn)的錯(cuò)誤的用戶(hù)糾正的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及光學(xué)字符識(shí)別過(guò)程,尤其涉及光學(xué)字符識(shí)別過(guò)程中的錯(cuò)誤糾正。
背景技術(shù):
光學(xué)字符識(shí)別(OCR)是一般以標(biāo)準(zhǔn)的編碼方案對(duì)文本的圖像到作為機(jī)器可編輯文本的數(shù)字形式的基于計(jì)算機(jī)的轉(zhuǎn)換。這一過(guò)程消除了將文檔手動(dòng)鍵入計(jì)算機(jī)系統(tǒng)的需求。由于掃描過(guò)程所導(dǎo)致的較差圖像質(zhì)量、非理想性等可引發(fā)多個(gè)不同問(wèn)題。例如,常規(guī)OCR 引擎可被耦合到掃描文本的頁(yè)面的平板式掃描儀。由于頁(yè)面被放置于與掃描儀的掃描面齊平,因此掃描儀所生成的圖像通常展示出平坦的對(duì)比度和照明度、減少的歪斜和失真、以及高的分辨率。由此,OCR引擎可方便地將圖像中的文本轉(zhuǎn)換成機(jī)器可編輯的文本。然而,當(dāng)圖像對(duì)于對(duì)比度、照明度、歪斜等而質(zhì)量較低時(shí),由于圖像的較復(fù)雜的處理,OCR引擎的性能可能會(huì)降級(jí)并且處理時(shí)間可能會(huì)增加。例如,當(dāng)圖像是從書(shū)中獲取時(shí)或者當(dāng)由基于成像器的掃描儀生成時(shí),這可能是該情況,因?yàn)樵谶@些情況下,文本/圖像是從一距離、從變化的方向、以及在變化的照明中掃描的。即使掃描過(guò)程的性能是良好的,當(dāng)相對(duì)低質(zhì)量的文本的頁(yè)面正被掃描時(shí),OCR引擎的性能也可能會(huì)降級(jí)。因而,一般需要許多單獨(dú)的處理步驟來(lái)以相對(duì)高的質(zhì)量執(zhí)行OCR。盡管OCR過(guò)程中的改進(jìn),仍會(huì)出現(xiàn)錯(cuò)誤,諸如錯(cuò)誤識(shí)別的單詞或字符、段落、文本行或頁(yè)面布局的其他方面的錯(cuò)誤標(biāo)識(shí)。在各個(gè)處理階段完成時(shí),可以給予用戶(hù)標(biāo)識(shí)和糾正在OCR過(guò)程期間出現(xiàn)的錯(cuò)誤的機(jī)會(huì)。用戶(hù)一般需要手動(dòng)地糾正每一個(gè)錯(cuò)誤,即使錯(cuò)誤之一傳播通過(guò)OCR過(guò)程并引起了多個(gè)其他錯(cuò)誤。每一單獨(dú)錯(cuò)誤的手動(dòng)糾正在用戶(hù)方面來(lái)說(shuō)會(huì)是耗時(shí)且令人生厭的過(guò)程。
發(fā)明內(nèi)容
向用戶(hù)給予在輸入文檔經(jīng)歷OCR過(guò)程之后對(duì)其作出糾正的機(jī)會(huì)。這種糾正可以包括錯(cuò)誤識(shí)別的字符或單詞、錯(cuò)誤對(duì)齊的欄、錯(cuò)誤識(shí)別的文本或圖像區(qū)域等。OCR過(guò)程一般進(jìn)行多個(gè)階段,該多個(gè)階段以順序的或流水線的方式處理輸入文檔。在用戶(hù)糾正了錯(cuò)誤識(shí)別的或錯(cuò)誤表征的項(xiàng)(例如,錯(cuò)誤表征的文本)之后,負(fù)責(zé)錯(cuò)誤表征的處理階段就糾正引起該錯(cuò)誤表征的底層錯(cuò)誤(例如,過(guò)大的單詞邊界框)。然后,OCR過(guò)程中的每一后續(xù)處理階段嘗試糾正在其相應(yīng)的階段中由初始錯(cuò)誤引起的任何隨之發(fā)生的錯(cuò)誤。當(dāng)然,在產(chǎn)生初始錯(cuò)誤的階段之前的處理階段沒(méi)有需要糾正的錯(cuò)誤。這樣,錯(cuò)誤的糾正就在OCR處理流水線中傳播。也就是,在產(chǎn)生初始錯(cuò)誤的階段之后的每一個(gè)階段都或者遞增地或者完全地重新計(jì)算其輸出,因?yàn)槠漭斎胍呀?jīng)在前一階段中被糾正。結(jié)果,用戶(hù)不需要糾正文檔中已經(jīng)在OCR 過(guò)程期間被錯(cuò)誤表征的每一項(xiàng)。在一種實(shí)現(xiàn)中,通過(guò)經(jīng)歷OCR過(guò)程來(lái)創(chuàng)建圖像文檔的電子模型。電子模型包括圖像文檔的已經(jīng)由OCR過(guò)程中多個(gè)順序執(zhí)行的階段的每一個(gè)所確定的元素(例如,單詞、文本行、段落、圖像)。電子模型充當(dāng)由處理該圖像文檔的前一階段提供給各個(gè)階段的輸入信息。 向用戶(hù)呈現(xiàn)圖形用戶(hù)界面,使用戶(hù)能提供對(duì)文檔中出現(xiàn)的錯(cuò)誤表征的項(xiàng)進(jìn)行糾正的用戶(hù)輸入數(shù)據(jù)。基于用戶(hù)輸入數(shù)據(jù),產(chǎn)生了引起錯(cuò)誤表征的項(xiàng)的初始錯(cuò)誤的處理階段對(duì)該初始錯(cuò)誤進(jìn)行糾正。然后,該階段之后的OCR過(guò)程的階段對(duì)由于初始錯(cuò)誤而在它們的相應(yīng)階段中產(chǎn)生的任何隨之發(fā)生的錯(cuò)誤進(jìn)行糾正。提供本發(fā)明內(nèi)容以便以簡(jiǎn)化形式介紹將在以下的詳細(xì)描述中進(jìn)一步描述的一些概念。本發(fā)明內(nèi)容并不旨在標(biāo)識(shí)出所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
圖1示出了用于對(duì)文本圖像執(zhí)行光學(xué)字符識(shí)別(OCR)的系統(tǒng)的一個(gè)說(shuō)明性示例。圖2是OCR引擎20的一個(gè)特定示例的高層邏輯圖。圖3示出其中標(biāo)記為區(qū)域1-8的文本區(qū)域已經(jīng)由OCR標(biāo)識(shí)的文本文檔。圖4示出可由錯(cuò)誤糾正組件提供給用戶(hù)的圖形用戶(hù)界面的一個(gè)示例。圖5是示出用于糾正文檔的文本圖像的方法的一個(gè)示例的流程圖。
具體實(shí)施例方式圖1示出了用于對(duì)文本圖像執(zhí)行光學(xué)字符識(shí)別(OCR)的系統(tǒng)5的一個(gè)說(shuō)明性示例。系統(tǒng)5包括生成文檔15的圖像的數(shù)據(jù)捕捉裝置(例如,掃描儀10)。掃描儀10可以是基于圖像的掃描儀,它利用電荷耦合器件作為圖像傳感器用于生成圖像。掃描儀10處理圖像以生成輸入數(shù)據(jù),并且將輸入數(shù)據(jù)發(fā)送給處理裝置(例如OCR引擎20)以供圖像內(nèi)的字符識(shí)別。在該具體示例中,將OCR引擎20合并到掃描儀10中。然而,在其他示例中,OCR 引擎20可以是分開(kāi)的單元,諸如獨(dú)立單元或被合并到諸如PC、服務(wù)器之類(lèi)的另一設(shè)備中的單元。圖2是OCR引擎20的一個(gè)特定示例的高層邏輯圖。在該例中,OCR引擎被配置為具有以下組件的應(yīng)用圖像捕捉組件30,分段組件40、讀次序組件50、文本檢測(cè)組件60、段落檢測(cè)組件70、錯(cuò)誤糾正組件80和圖形用戶(hù)界面(⑶I)組件90。然而,應(yīng)當(dāng)注意,圖2僅僅表示了 OCR引擎的一個(gè)抽象邏輯體系結(jié)構(gòu),其元素通常用硬件、軟件、固件或它們的任何組合來(lái)實(shí)現(xiàn)。此外,在這種體系結(jié)構(gòu)的其他例子中,所采用的組件的數(shù)量和/或類(lèi)型、以及檢測(cè)和識(shí)別各種文本特征的次序可能不同。圖像捕捉組件30用于例如通過(guò)對(duì)置于從傳真機(jī)或掃描儀接收到的存儲(chǔ)文件夾中的輸入進(jìn)行自動(dòng)處理,來(lái)捕捉圖像。圖像捕捉模塊30可以作為用于從用戶(hù)的圖像捕捉數(shù)據(jù)的OCR引擎的主要部分,或者它可以作為單獨(dú)的組件或者用戶(hù)的其他文檔成像和文檔管理應(yīng)用的模塊。分段組件40檢測(cè)文檔上的文本和圖像區(qū)域,并且定位單詞位置作為第一近似。讀次序組件50把單詞排列到文本區(qū)域中,并且確定這些區(qū)域的正確次序。文本識(shí)別組件60識(shí)別或標(biāo)識(shí)之前已被檢測(cè)的單詞,并且計(jì)算關(guān)于各個(gè)單詞和文本行的文本屬性。段落檢測(cè)組件70將已經(jīng)在文本區(qū)域中被標(biāo)識(shí)的文本行排列成段落,并且計(jì)算諸如段落是左對(duì)齊、右對(duì)齊還是居中對(duì)齊等段落屬性。如以下更詳細(xì)描述的,錯(cuò)誤糾正組件80在文檔經(jīng)由 ⑶I組件90經(jīng)歷了 OCR之后允許用戶(hù)糾正文檔中的錯(cuò)誤。
無(wú)論OCR引擎的詳細(xì)體系結(jié)構(gòu)如何,OCR過(guò)程一般進(jìn)行多個(gè)階段,該多個(gè)階段以順序的或流水線的方式處理輸入文檔。例如,在圖2所示的例子中,段落檢測(cè)在文本識(shí)別之后發(fā)生,文本識(shí)別在讀次序確定之后發(fā)生,而讀次序確定在分段過(guò)程之后發(fā)生。每一個(gè)后續(xù)的組件把前一組件提供的輸出用作其輸入。結(jié)果,一個(gè)組件中產(chǎn)生的錯(cuò)誤會(huì)混合到后續(xù)組件中,導(dǎo)致額外的錯(cuò)誤。每個(gè)組件的輸入數(shù)據(jù)可以被表示為電存儲(chǔ)的存儲(chǔ)器模型。存儲(chǔ)器模型存儲(chǔ)文檔的各個(gè)元素,包括例如各個(gè)頁(yè)面、文本區(qū)域(多欄文本頁(yè)面中的各欄、圖像標(biāo)題)、圖像區(qū)域、 段落、文本行和單詞。存儲(chǔ)器模型的這些元素的每一個(gè)都可以包含諸如邊界框坐標(biāo)、(單詞的)文本、字體特征、圖像等屬性。OCR引擎的每個(gè)組件使用存儲(chǔ)器模型作為其輸入,并且提供一輸出,在該輸出中,存儲(chǔ)器模型通過(guò)例如添加新元素或通過(guò)向當(dāng)前現(xiàn)有的元素添加新屬性來(lái)改變(一般被豐富)。在OCR引擎的一個(gè)組件中產(chǎn)生的初始錯(cuò)誤可以以?xún)煞N不同的方式被增加到后續(xù)組件中的額外錯(cuò)誤中。第一,由于OCR過(guò)程的行為是確定性的,因此它一般不止一次地作出同一種類(lèi)型的錯(cuò)誤,一般是每當(dāng)在輸入文檔中找到有問(wèn)題的模式時(shí)。例如,如果在文檔中使用了某一非常特殊的字體,字符“8”可能被識(shí)別為字符“S”,該錯(cuò)誤最有可能在每次出現(xiàn)字符“8”時(shí)重復(fù)。類(lèi)似地,如果實(shí)際上是項(xiàng)列表的段落被錯(cuò)誤識(shí)別為標(biāo)準(zhǔn)文本時(shí),同一錯(cuò)誤也會(huì)對(duì)文檔中的其他列表產(chǎn)生。第二,初始錯(cuò)誤可能倍增,因?yàn)楹罄m(xù)組件依賴(lài)于從前一組件獲得的不正確信息,從而引入新的錯(cuò)誤。將結(jié)合圖3說(shuō)明這類(lèi)錯(cuò)誤傳播的例子。圖3示出其中標(biāo)記為區(qū)域1-8的文本區(qū)域已經(jīng)由OCR標(biāo)識(shí)的文本文檔。在該例中,在文檔的擴(kuò)大部分的圓周區(qū)域內(nèi)示出的少量污跡被錯(cuò)誤標(biāo)識(shí)為文本,造成與圓周重疊的單詞邊界框過(guò)大。由于這種錯(cuò)誤標(biāo)識(shí),讀次序組件把文本區(qū)域6標(biāo)識(shí)為寬度過(guò)大,在文本區(qū)域4和7間以及在文本區(qū)域5和8之間延伸。結(jié)果,標(biāo)識(shí)了五個(gè)文本區(qū)域(區(qū)域4-8),而實(shí)際上讀次序組件應(yīng)該僅僅正確地標(biāo)識(shí)兩個(gè)文本區(qū)域,一個(gè)對(duì)應(yīng)于由區(qū)域4、區(qū)域6的左半和區(qū)域7所所定義的欄,另一個(gè)對(duì)應(yīng)于由區(qū)域 5、區(qū)域6的右半和區(qū)域8所定義的另一欄。首次出現(xiàn)的錯(cuò)誤將被稱(chēng)為初始錯(cuò)誤,諸如上例中文本污跡的錯(cuò)誤識(shí)別。從初始錯(cuò)誤產(chǎn)生的后續(xù)錯(cuò)誤將被稱(chēng)為隨之發(fā)生的錯(cuò)誤,諸如上例中文本區(qū)域的錯(cuò)誤表征。如下詳述,向用戶(hù)給予在輸入文檔經(jīng)歷OCR過(guò)程之后對(duì)其作出糾正的機(jī)會(huì)。這種糾正可以包括錯(cuò)誤識(shí)別的字符或單詞、錯(cuò)誤對(duì)齊的欄、錯(cuò)誤識(shí)別的文本或圖像區(qū)域等。一旦負(fù)責(zé)錯(cuò)誤表征(例如,錯(cuò)誤表征的文本)的處理階段糾正了造成該錯(cuò)誤表征的底層錯(cuò)誤 (例如,過(guò)大的單詞邊界框),則每一后續(xù)處理階段就嘗試糾正它們相應(yīng)的階段中由初始錯(cuò)誤造成的任何隨之發(fā)生的錯(cuò)誤。當(dāng)然,在產(chǎn)生初始錯(cuò)誤的階段之前的處理階段沒(méi)有需要糾正的錯(cuò)誤。這樣,錯(cuò)誤的糾正就在OCR處理流水線中傳播。也就是說(shuō),每一后續(xù)階段或者遞增地或者完全地重新計(jì)算其輸出,因?yàn)槠漭斎胍呀?jīng)在前一階段中被糾正。結(jié)果,用戶(hù)不需要糾正文檔中已經(jīng)在OCR過(guò)程期間被錯(cuò)誤表征的每一項(xiàng)。應(yīng)當(dāng)注意,由于用戶(hù)一般不知道造成錯(cuò)誤表征的底層錯(cuò)誤,因此用戶(hù)并不直接糾正錯(cuò)誤本身,而僅僅糾正錯(cuò)誤的結(jié)果,該錯(cuò)誤結(jié)果自身展現(xiàn)為錯(cuò)誤表征的項(xiàng)。因此,用戶(hù)所執(zhí)行的糾正僅僅充當(dāng)OCR引擎可用來(lái)標(biāo)識(shí)實(shí)際錯(cuò)誤的提示或建議。除了糾正隨之發(fā)生的錯(cuò)誤之外,負(fù)責(zé)初始錯(cuò)誤的階段或組件嘗試向糾正學(xué)習(xí),并且試圖在適當(dāng)時(shí)候自動(dòng)地重新應(yīng)用糾正。例如,在上例中,如果用戶(hù)已經(jīng)表明字符“8”已被錯(cuò)誤表征為字符“S”,則該錯(cuò)誤可能對(duì)于字符“8”的許多出現(xiàn)而發(fā)生。負(fù)責(zé)的組件因此會(huì)嘗試糾正該錯(cuò)誤的類(lèi)似實(shí)例。圖如示出可由⑶I組件90提供給用戶(hù)的圖形用戶(hù)界面400的一個(gè)示例。當(dāng)然, 該界面僅僅是用來(lái)說(shuō)明由OCR引擎的各個(gè)組件執(zhí)行的錯(cuò)誤糾正過(guò)程的這種界面的一個(gè)特定例子。更一般地,可以向用戶(hù)提供任何適當(dāng)?shù)慕缑?,所述界面提供工具以使他或她?lái)表示在OCR過(guò)程期間發(fā)生的錯(cuò)誤表征。圖4所示的示例性⑶I 400向用戶(hù)請(qǐng)求兩個(gè)信息片段以實(shí)現(xiàn)糾正過(guò)程。首先,請(qǐng)求用戶(hù)定義或分類(lèi)錯(cuò)誤類(lèi)型。該信息可以經(jīng)由GUI以任何方便的方式被糾正組件所接收。 在圖如的例子中,用戶(hù)經(jīng)由下拉菜單410從一系列預(yù)先定義的錯(cuò)誤類(lèi)別中選擇被提供給用戶(hù)的類(lèi)別。這種預(yù)先定義的錯(cuò)誤類(lèi)別可以包括,例如,文本區(qū)域錯(cuò)誤、段落區(qū)域錯(cuò)誤、段落結(jié)尾錯(cuò)誤、文本行錯(cuò)誤、單詞錯(cuò)誤、圖像區(qū)域錯(cuò)誤等。如果文本的大部分被完全忽略(例如由于低對(duì)比度),或如果所標(biāo)識(shí)的文本未被正確地分類(lèi)到文本區(qū)域中(例如,標(biāo)題、欄、頁(yè)眉、頁(yè)腳、圖像標(biāo)題等),則可能產(chǎn)生文本區(qū)域錯(cuò)誤。如果文本未被正確地分到段落中,則會(huì)產(chǎn)生段落區(qū)域錯(cuò)誤。如果在文本區(qū)域(通常是欄)的結(jié)尾處不正確地檢測(cè)到段落的結(jié)尾,則會(huì)產(chǎn)生段落結(jié)尾錯(cuò)誤,盡管它實(shí)際繼續(xù)到下一文本區(qū)域。如果文本行被完全忽略或者如果文本行未被正確地分隔(例如,兩個(gè)或更多行被不正確地垂直或水平合并、或者一個(gè)行被不正確地分成兩個(gè)或更多行),則會(huì)產(chǎn)生文本行錯(cuò)誤。單詞錯(cuò)誤會(huì)在以下情況下產(chǎn)生,例如,如果標(biāo)點(diǎn)符號(hào)缺失、如果一行未被正確地分成單詞(例如,兩個(gè)或更多單詞被合并在一起,或者單個(gè)單詞被分成兩個(gè)或更多單詞)、 或如果一個(gè)單詞的全部或部分缺失(即,未被檢測(cè))。圖像區(qū)域類(lèi)似于文本區(qū)域錯(cuò)誤,并且可能在圖像的全部或部分缺失時(shí)產(chǎn)生。其他類(lèi)型的錯(cuò)誤從圖像或文本的不正確檢測(cè)產(chǎn)生, 所述不正確檢測(cè)可能在例如除文本以外的內(nèi)容(例如,污跡、線條)被不正確地檢測(cè)為文本時(shí)出現(xiàn)。用戶(hù)所選擇的預(yù)定義的錯(cuò)誤類(lèi)型幫助錯(cuò)誤糾正組件標(biāo)識(shí)OCR引擎的造成初始錯(cuò)誤的組件。然而,應(yīng)當(dāng)注意,不止一個(gè)組件可能負(fù)責(zé)一給定錯(cuò)誤類(lèi)型。例如,文本區(qū)域錯(cuò)誤可能指示分段組件中的(例如,因?yàn)楦疚礄z測(cè)到文本的一部分或者因?yàn)槎x了不正確的單詞邊界框)或讀次序組件中的(例如,因?yàn)閱卧~邊界框是正確的但是單詞未被正確地分類(lèi)到文本區(qū)域中)初始錯(cuò)誤。用戶(hù)為實(shí)現(xiàn)糾正過(guò)程而提供的另一信息片段是糾正錯(cuò)誤表征的項(xiàng)的輸入。圖4b 中的GUI示出接收到這種用戶(hù)輸入的一種方式。在該例中,文檔被呈現(xiàn)在GUI的顯示窗口 420中。也示出在文檔中的每個(gè)單詞周?chē)膯卧~邊界框,以便于用戶(hù)糾正過(guò)程(盡管在一些實(shí)現(xiàn)中,用戶(hù)可能能夠關(guān)閉邊界框使它們不可見(jiàn))。用戶(hù)所選擇的錯(cuò)誤的分類(lèi)是單詞錯(cuò)誤。 在該例中,單詞“plains”之后的逗號(hào)原始是缺失的。該逗號(hào)未被包括的原因是OCR引擎已經(jīng)將其錯(cuò)誤表征為單詞“emotional”的一部分,使該單詞被錯(cuò)誤表征為“emotionai”。參見(jiàn)圖4b,該錯(cuò)誤出現(xiàn)的原因是,單詞“emotional”周?chē)倪吔缈蝈e(cuò)誤地將逗號(hào)包括在單詞 “plains”之后。在該情況下,用戶(hù)通過(guò)突出顯示或以其他方式指示適當(dāng)?shù)囊粋€(gè)或多個(gè)邊界框的已被不正確檢測(cè)的部分,從而糾正該錯(cuò)誤。然后,錯(cuò)誤檢測(cè)組件如圖4b所示地識(shí)別單詞。然而,在圖4b中,單詞邊界框尚未被更新以反映該變化。在圖如中,錯(cuò)誤糾正組件識(shí)別一用戶(hù)區(qū)域430( S卩,用戶(hù)在其上作出糾正的文本圖像的區(qū)域),其中用戶(hù)已經(jīng)重新定義了單詞“plains”周?chē)倪吔缈?。錯(cuò)誤糾正組件80還定義了所關(guān)注的地帶440,它包括用戶(hù)區(qū)域430以及與該用戶(hù)區(qū)域相交的所有單詞邊界框。圖4d示出所關(guān)注的地帶440。在該特定例子中,與用戶(hù)區(qū)域相交的單詞邊界框包括單詞“to” "plains, ”和“emotional”?;谟脩?hù)所指定的錯(cuò)誤類(lèi)型以及已由用戶(hù)在顯示窗口中重新表征的單詞和標(biāo)點(diǎn),分段組件首先重新計(jì)算所關(guān)注地帶內(nèi)的連通分支(即在被表示在邊空白中時(shí)組成每個(gè)字符或字母的組成部分)。然后,分段組件分析每一個(gè)連通分支相對(duì)于用戶(hù)區(qū)域以及之前檢測(cè)到的單詞邊界框的位置。如果連通分支在用戶(hù)區(qū)域內(nèi)的像素多于在用戶(hù)區(qū)域外的像素,則該連通分支被視為屬于用戶(hù)區(qū)域。被認(rèn)為屬于用戶(hù)區(qū)域內(nèi)的每一個(gè)連通分支都與一新單詞或與某一之前檢測(cè)到的單詞或行相關(guān)聯(lián)。刪除任何不具有與之相關(guān)聯(lián)的連通分支的單詞(在該情況下是原始單詞“plains”)。 然后更新在所關(guān)注地帶內(nèi)的所有元素(例如單詞)的邊界框,因?yàn)樗鲞吔缈蚩赡芤呀?jīng)丟失了它們的連通分支中的一些,或者可能接收到一個(gè)或多個(gè)新的連通分支。在此重申,在圖4b_4d所示的例子中,用戶(hù)區(qū)域430包含文本“Plains,”(包括逗號(hào)),所關(guān)注的地帶440被擴(kuò)展到用戶(hù)區(qū)域430之外以包括單詞“emotional”,因?yàn)檫@是與用戶(hù)區(qū)域相交的唯一單詞邊界框。在該情況下,所有連通分支將保留在它們的原始單詞邊界框中,除了那些在單詞“Plains”中的連通分支以及隨后的逗號(hào),后兩者將全部與用戶(hù)在用戶(hù)區(qū)域內(nèi)定義的新單詞相關(guān)聯(lián)。由于單詞“emotional”已經(jīng)丟失了與逗號(hào)相關(guān)聯(lián)的連通分支,因此其邊界框大小被減少,并且被指定為未被識(shí)別。這樣,單詞會(huì)由文本識(shí)別組件重新識(shí)別。新單詞“Plains,”也會(huì)被指定為未被識(shí)別,因此它也會(huì)被重新識(shí)別。概括而言,在用戶(hù)糾正了用戶(hù)區(qū)域中的任何錯(cuò)誤表征的項(xiàng)之后,錯(cuò)誤糾正組件80 使得一個(gè)或多個(gè)新單詞被創(chuàng)建、所關(guān)注地帶內(nèi)的連通分支被重新指派、邊界框被重新計(jì)算、 且單詞被重新識(shí)別。除了使用圖4所示的當(dāng)前用戶(hù)輸入數(shù)據(jù)以外,糾正組件還考慮到之前接收到的已經(jīng)被提供用來(lái)糾正其他錯(cuò)誤表征的項(xiàng)的用戶(hù)輸入。例如,如果前一錯(cuò)誤類(lèi)型是文本區(qū)域錯(cuò)誤或單詞錯(cuò)誤,且如果在當(dāng)前所關(guān)注地帶內(nèi)的某些單詞或行在糾正該錯(cuò)誤的過(guò)程期間被修改,那么在糾正當(dāng)前錯(cuò)誤時(shí)采用的標(biāo)準(zhǔn)可能更為嚴(yán)格。例如,現(xiàn)在糾正的任何錯(cuò)誤應(yīng)當(dāng)維持之前的用戶(hù)對(duì)錯(cuò)誤表征的項(xiàng)的糾正。這種之前的用戶(hù)糾正可以以多個(gè)不同的方式被維持或保持。在一例中,可以向存儲(chǔ)器模型添加每一組件用作其輸入數(shù)據(jù)的新屬性。一種新屬性是由OCR引擎的各組件確定的各個(gè)項(xiàng)元素的置信度水平。被指派給每一元素的置信度水平可以部分取決于該項(xiàng)是否在初始OCR過(guò)程期間被確定,或者它是否在對(duì)用戶(hù)糾正錯(cuò)誤表征的項(xiàng)時(shí)標(biāo)識(shí)的初始或后續(xù)錯(cuò)誤進(jìn)行糾正時(shí)被確定。例如,當(dāng)單詞或字符由用戶(hù)在糾正過(guò)程期間直接輸入(或通過(guò)鍵入或通過(guò)從兩個(gè)或多個(gè)備選項(xiàng)中選擇)時(shí),該單詞或字符的置信度水平可以被設(shè)為最大值。在上述例子中,用戶(hù)所選擇的錯(cuò)誤類(lèi)別是單詞錯(cuò)誤。可以為其他錯(cuò)誤類(lèi)別執(zhí)行類(lèi)似的糾正過(guò)程。例如,如果錯(cuò)誤類(lèi)別是文本區(qū)域錯(cuò)誤,則這類(lèi)錯(cuò)誤通常比單詞錯(cuò)誤更容易糾正,因?yàn)樗^不可能涉及由于相交邊界框引起的問(wèn)題。這是因?yàn)槲谋緟^(qū)域通常比單詞或行更容易分隔。然而,如果錯(cuò)誤涉及單詞邊界框的相交,則可以以上面討論的方式來(lái)檢查連通分支。更一般地,可以使用更直接的替代方式,即,僅僅檢驗(yàn)位于顯示窗口內(nèi)的用戶(hù)區(qū)域是否包含任何單詞邊界框的中心。如果用戶(hù)區(qū)域不包含任何單詞框中心,則可以假定該區(qū)域中沒(méi)有單詞。這意味著由于假定文本區(qū)域完全缺失,因此在分段組件中出現(xiàn)錯(cuò)誤。在該情況下,單詞檢測(cè)算法被重新執(zhí)行,但這次僅僅限制為用戶(hù)區(qū)域,使組件能更好地確定背景色或前景色。任選地,分段組件也可以在重新執(zhí)行單詞檢測(cè)組件時(shí)提高對(duì)色彩對(duì)比度的敏感性。另一方面,如果用戶(hù)區(qū)域確實(shí)包含一個(gè)或多個(gè)單詞邊界框而不裁剪它們中的任一個(gè) (或者,如果用戶(hù)區(qū)域包含某些單詞邊界框的中心),則該錯(cuò)誤可以被視為文本區(qū)域分隔錯(cuò)誤。也就是,單詞未被正確地安排到區(qū)域中,意味著該問(wèn)題在于讀次序組件而非分段組件。 在這一情況下,沒(méi)有東西需要分段組件糾正。如果用戶(hù)所選擇的預(yù)定義的錯(cuò)誤類(lèi)別是圖像區(qū)域錯(cuò)誤,則用戶(hù)輸入可以比圖4所示方式更為復(fù)雜的方式由GUI接收。例如,可以向用戶(hù)提供套索工具來(lái)定義用戶(hù)區(qū)域。這樣,用戶(hù)可以標(biāo)識(shí)不正確地部署在圖像區(qū)域中的連通分支。如果用戶(hù)所選擇的錯(cuò)誤類(lèi)型是文本區(qū)域錯(cuò)誤,則初始錯(cuò)誤可能在讀次序組件中產(chǎn)生。讀次序組件的主要任務(wù)是檢測(cè)文本區(qū)域。該組件假定單詞和圖像邊界框被正確地檢測(cè)。讀次序組件執(zhí)行文本區(qū)域檢測(cè)算法,該算法一般通過(guò)逐行地在單詞間創(chuàng)建初始小空白矩形集合來(lái)操作。它然后嘗試垂直地?cái)U(kuò)展空白矩形而不重疊任何單詞邊界框。這樣,空白矩形的尺寸較大,并且可能與其他空白矩形合并,從而形成空白區(qū)域。高度過(guò)短(即,低于閾值高度)的空白區(qū)域被放棄,就像在其左邊界或右邊界不接觸足夠數(shù)量的文本行的那些區(qū)域。然后,文檔被分成不同的文本區(qū)域,這些不同的文本區(qū)域由已經(jīng)標(biāo)識(shí)的空白區(qū)域隔開(kāi)。因而,讀次序組件將是響應(yīng)于該錯(cuò)誤的第一個(gè)組件,顯示窗口 420內(nèi)的單詞或者完全位于用戶(hù)區(qū)域內(nèi),或位于用戶(hù)區(qū)域外。當(dāng)用戶(hù)標(biāo)識(shí)文本區(qū)域錯(cuò)誤時(shí),讀次序組件如下修改其基本的文本區(qū)域檢測(cè)算法。首先,用戶(hù)區(qū)域內(nèi)包含的所有單詞邊界框都不再考慮,用戶(hù)之前定義的所有區(qū)域被暫時(shí)移除。接著,執(zhí)行基本的文本區(qū)域檢測(cè)算法,此后添加新定義的用戶(hù)區(qū)域作為另一文本區(qū)域。此外,暫時(shí)移除的區(qū)域都被添加回去。如果采用置信度水平屬性,對(duì)于新定義的區(qū)域(即用戶(hù)區(qū)域),它可以被設(shè)為其最大值。如果用戶(hù)所選擇的錯(cuò)誤類(lèi)型是文本行錯(cuò)誤,則執(zhí)行和上述對(duì)于文本區(qū)域錯(cuò)誤的過(guò)程類(lèi)似的過(guò)程。從用戶(hù)輸入學(xué)習(xí)如上所述,負(fù)責(zé)初始錯(cuò)誤的階段或組件可能?chē)L試從糾正中學(xué)習(xí),并且在適當(dāng)時(shí)自動(dòng)地重新應(yīng)用糾正。其他組件也可以嘗試從初始錯(cuò)誤學(xué)習(xí)。為理解這如何實(shí)現(xiàn),識(shí)別出OCR 引擎的各個(gè)組件基于組件計(jì)算的文檔的一個(gè)或多個(gè)特征來(lái)作出許多分類(lèi)決定是有用的。分類(lèi)過(guò)程可以使用基于規(guī)則的或基于機(jī)器學(xué)習(xí)的算法來(lái)執(zhí)行。這種分類(lèi)決定的示例包括-決定淡色背景上的一組給定的暗色像素連通組是否應(yīng)被分類(lèi)為文本;-決定兩個(gè)給定的單詞是否屬于同一文本行(在下標(biāo)、上標(biāo)和標(biāo)點(diǎn)的情況下變得困難);-決定同一文本行內(nèi)的各文本部分之間的給定空白是否是單詞結(jié)束(word break);-決定在兩個(gè)文本塊之間的給定的水平延伸的空白條(一般有幾行文本高)是否是兩個(gè)分開(kāi)的文本欄;標(biāo)識(shí)來(lái)自連通分支的給定干凈位圖的字符;
-決定給定的文本行是否表示段落的結(jié)尾;-決定給定段落是左對(duì)齊、右對(duì)齊、兩端對(duì)齊還是居中對(duì)齊;可以在分類(lèi)過(guò)程期間檢查的文檔特征的例子包括一組像素的大小、中值前景/ 背景色彩強(qiáng)度之間的差異、以及這組像素和其最近的相鄰組之間的距離。這些特征可以用來(lái)確定該組像素是否應(yīng)該與文本相關(guān)聯(lián)??梢詸z查一些特征來(lái)把兩個(gè)單詞分類(lèi)為屬于相同的或不同的文本行,這些特征包括單詞的高度、它們垂直重疊的量、到前一行的垂直距離寸寸。在糾正過(guò)程期間,OCR引擎作出結(jié)論說(shuō),一些特征集合會(huì)導(dǎo)致不同的分類(lèi)決定。一旦這些重分類(lèi)規(guī)則已經(jīng)被確定,它們就可以以多種不同的方式使用。例如,它們可以?xún)H應(yīng)用于經(jīng)歷OCR的文檔的當(dāng)前頁(yè)面。在該情況下,通過(guò)搜索頁(yè)面以找到重分類(lèi)規(guī)則所采用的模式或特征組、然后使用重分類(lèi)規(guī)則作出分類(lèi)決定,從而應(yīng)用重分類(lèi)規(guī)則。在一些情況下,重分類(lèi)規(guī)則被限制為僅應(yīng)用于當(dāng)前頁(yè)面,而不是將重分類(lèi)規(guī)則應(yīng)用于多頁(yè)文檔的每一頁(yè)面。另一方面,如果多頁(yè)文檔在任何人類(lèi)干預(yù)前被完全處理,則重分類(lèi)規(guī)則可以應(yīng)用于文檔的其他頁(yè)面。然而,如果用戶(hù)以逐頁(yè)模式工作,其中每一頁(yè)在該頁(yè)面經(jīng)歷OCR處理之后被立即糾正,則可能根據(jù)用戶(hù)偏好,在后續(xù)頁(yè)面的初始處理期間可能應(yīng)用所述規(guī)則或可能不應(yīng)用所述規(guī)則。根據(jù)期望,重分類(lèi)規(guī)則可以被應(yīng)用于其他文檔以及當(dāng)前文檔,并且可能甚至成為該OCR引擎所執(zhí)行的OCR過(guò)程的永久部分。然而,這一般不會(huì)是優(yōu)選的操作模式,因?yàn)楦袷胶蜆邮娇赡茉诟魑臋n間顯著地改變。OCR引擎一般被調(diào)諧成在大多數(shù)情況下以高準(zhǔn)確度執(zhí)行,因此,當(dāng)文檔遭遇到諸如單詞和標(biāo)點(diǎn)符號(hào)間的不尋常大間隔等不尋常的特征、或者在文本欄間具有極小的間隔時(shí),重分類(lèi)規(guī)則一般最為有用。在這種情況下,從糾正錯(cuò)誤表征的項(xiàng)的用戶(hù)輸入數(shù)據(jù)學(xué)習(xí)在該文檔內(nèi)會(huì)是有用的,但不在其他文檔中有用。因此,優(yōu)選操作模式可能是僅對(duì)當(dāng)前文檔應(yīng)用重分類(lèi)規(guī)則。例如,這可以是缺省操作模式,可以向用戶(hù)提供改變?nèi)笔≈狄员闶挂?guī)則也應(yīng)用于其他文檔的選項(xiàng)。作為重分類(lèi)規(guī)則的應(yīng)用性的一個(gè)例子,當(dāng)用戶(hù)選擇要求刪除文本或者要求正確地定義單詞、文本行或文本區(qū)域的錯(cuò)誤類(lèi)型時(shí),分段組件可以確定一小組像素已經(jīng)被錯(cuò)誤地誤歸類(lèi)為文本(諸如在污跡被識(shí)別為標(biāo)點(diǎn)的情況下)。從這一糾正過(guò)程產(chǎn)生的重分類(lèi)規(guī)則可以被應(yīng)用于整個(gè)文檔。舉另一個(gè)例子,當(dāng)一個(gè)別字符被錯(cuò)誤識(shí)別為另一字符時(shí)產(chǎn)生的重分類(lèi)規(guī)則可以被應(yīng)用于文檔中,因?yàn)檫@可能是每當(dāng)找到同一特征組合而發(fā)生的系統(tǒng)錯(cuò)誤。 同樣,將文本行錯(cuò)誤分類(lèi)為段落結(jié)尾或段落中間的連續(xù)行可能系統(tǒng)地發(fā)生,尤其對(duì)于具有不充分上下文的短段落。對(duì)如何定義段落(或通過(guò)不正確地分隔文本或通過(guò)未檢測(cè)到段落的結(jié)尾)的錯(cuò)誤進(jìn)行糾正的用戶(hù)輸入一般會(huì)調(diào)用行重分類(lèi)規(guī)則的創(chuàng)建,行重分類(lèi)規(guī)則然后用于糾正其他段落。隨之發(fā)生的錯(cuò)誤糾正在特定錯(cuò)誤的糾正期間,OCR引擎的各個(gè)組件通過(guò)改變現(xiàn)有元素的屬性,或者通過(guò)向存儲(chǔ)器模型添加元素或從中刪除元素(例如,單詞、行、區(qū)域),從而修改該模型。因此,對(duì)于其過(guò)程在OCR流水線的稍后階段執(zhí)行的組件的輸入將會(huì)在錯(cuò)誤已經(jīng)在流水線的早期階段被糾正后略微改變。后續(xù)組件或者通過(guò)完全地重新處理輸入數(shù)據(jù)、或者在可能時(shí)通過(guò)僅僅重新處理已經(jīng)改變的輸入數(shù)據(jù)使得輸出被增量地更新,從而把這種變化考慮在內(nèi)。一般而言,耗時(shí)的階段可能以增量的方式工作,而快速的和/或?qū)τ谳斎霐?shù)據(jù)中的小變化非常敏感的組件可能完全地重新處理數(shù)據(jù)。因此,一些組件比其他組件更受執(zhí)行增量更新的影響。例如,由于分段組件是流水線中的第一階段,因此它不需要處理已經(jīng)在前一階段中編輯的輸入數(shù)據(jù)。讀次序組件對(duì)于其輸入數(shù)據(jù)中的變化非常敏感,因?yàn)樾≥斎胱兓瘯?huì)急劇地改變其輸出(例如,讀次序可能在將單個(gè)單詞邊界框收縮幾個(gè)像素時(shí)改變),使該組件難以增量地工作。幸運(yùn)的是,讀次序組件極快,因此它能夠在每當(dāng)有改變時(shí)重新處理所有輸入數(shù)據(jù)。因而,該組件一般使用與存儲(chǔ)器模型的當(dāng)前狀態(tài)相關(guān)聯(lián)的數(shù)據(jù)來(lái)重新執(zhí)行,存儲(chǔ)器模型包含從用戶(hù)輸入產(chǎn)生的所有之前的改變和糾正。在分段過(guò)程使用用戶(hù)輸入糾正了錯(cuò)誤后,某些單詞邊界框會(huì)略微改變,可以標(biāo)識(shí)完全新的單詞并將其置于存儲(chǔ)器模型中。一般而言,很少的單詞會(huì)受到影響。因而,文本識(shí)別組件僅需要重新識(shí)別那些新標(biāo)識(shí)的單詞。(盡管當(dāng)讀次序組件作出糾正時(shí)一些之前識(shí)別的單詞可能被移到不同的行和區(qū)域,但是這些變化不會(huì)引入對(duì)單詞重新識(shí)別的需求)。因此,文本識(shí)別組件可以通過(guò)搜索由前一組件標(biāo)記或以其他方式表示為需要被重新識(shí)別的單詞,從而增量地工作。這是有利的,因?yàn)橐阎谋咀R(shí)別過(guò)程是緩慢的。由于讀次序組件會(huì)在文檔的存儲(chǔ)器模型中弓丨入顯著的變化,因此它一般不會(huì)使段落檢測(cè)組件增量地工作。但由于段落組件一般極快,因此它在有變化時(shí)重新處理所有輸入數(shù)據(jù)是方便的。因此,段落組件通過(guò)使用用戶(hù)輸入來(lái)糾正該組件中產(chǎn)生的初始錯(cuò)誤、存儲(chǔ)器模型的當(dāng)前狀態(tài)以及作為前一用戶(hù)輸入的結(jié)果獲得的信息(或者通過(guò)用戶(hù)糾正錯(cuò)誤表征所采用的所有以前動(dòng)作的列表,或者通過(guò)存儲(chǔ)器模型中包括的其他屬性,諸如置信度水平),從而作出糾正。圖5是示出用于糾正文檔的文本圖像的方法的一個(gè)示例的流程圖。首先,在步驟 510中,文檔經(jīng)歷OCR,在OCR期間產(chǎn)生圖像的電子模型。接著,在步驟520向用戶(hù)呈現(xiàn)電子模型的視覺(jué)表示,使得用戶(hù)能標(biāo)識(shí)文本圖像中任何錯(cuò)誤表征的項(xiàng)。在步驟530也向用戶(hù)呈現(xiàn)圖形用戶(hù)界面(GUI)。用戶(hù)可以使用GUI來(lái)糾正所找到的文本的任何錯(cuò)誤表征的項(xiàng)。在步驟M0,經(jīng)由糾正錯(cuò)誤表征的項(xiàng)的GUI接收用戶(hù)輸入。造成錯(cuò)誤表征的項(xiàng)的在OCR過(guò)程期間發(fā)生的一個(gè)或多個(gè)初始錯(cuò)誤在步驟550得以糾正。在步驟560更新文檔的電子模型以反映已經(jīng)被糾正的一個(gè)或多個(gè)初始錯(cuò)誤。最后,在步驟570,使用經(jīng)更新的電子模型在產(chǎn)生初始錯(cuò)誤的處理階段之后的處理階段中糾正隨之發(fā)生的錯(cuò)誤。如在本申請(qǐng)中所使用的,術(shù)語(yǔ)“組件”、“模塊”、“引擎”、“系統(tǒng)”、“裝置”、“接口”等一
般旨在表示計(jì)算機(jī)相關(guān)的實(shí)體,該實(shí)體可以是硬件、硬件和軟件的組合、軟件、或者執(zhí)行中的軟件。例如,組件可以是,但不限于是,在處理器上運(yùn)行的進(jìn)程、處理器、對(duì)象、可執(zhí)行碼、 執(zhí)行的線程、程序和/或計(jì)算機(jī)。作為說(shuō)明,運(yùn)行在控制器上的應(yīng)用程序和控制器都可以是組件。一個(gè)或多個(gè)組件可以駐留在進(jìn)程和/或執(zhí)行的線程中,并且組件可以位于一個(gè)計(jì)算機(jī)內(nèi)和/或分布在兩個(gè)或更多的計(jì)算機(jī)之間。此外,所要求保護(hù)的主題可以使用產(chǎn)生控制計(jì)算機(jī)以實(shí)現(xiàn)所公開(kāi)的主題的軟件、 固件、硬件或其任意組合的標(biāo)準(zhǔn)編程和/或工程技術(shù)而被實(shí)現(xiàn)為方法、裝置或制品。如這里所使用的術(shù)語(yǔ)“制品,,可以包含可以從任何計(jì)算機(jī)可讀的設(shè)備、載體或介質(zhì)進(jìn)行訪問(wèn)的計(jì)算機(jī)程序。例如,計(jì)算機(jī)可讀介質(zhì)可以包括但不限于磁存儲(chǔ)設(shè)備(例如,硬盤(pán)、軟盤(pán)、磁帶...)、光盤(pán)(例如,緊致盤(pán)(⑶)、數(shù)字多功能盤(pán)(DVD)底)、智能卡,以及閃存設(shè)備(例如, 卡、棒、鍵驅(qū)動(dòng)器...)。當(dāng)然,本領(lǐng)域的技術(shù)人員將會(huì)認(rèn)識(shí)到,在不背離所要求保護(hù)的主題的范圍或精神的前提下可以對(duì)這一配置進(jìn)行許多修改。 盡管用專(zhuān)門(mén)描述結(jié)構(gòu)特征和/或方法動(dòng)作的語(yǔ)言描述了主題,但是應(yīng)當(dāng)理解,在所附權(quán)利要求書(shū)中限定的主題并不一定局限于上述特定的特征或動(dòng)作。更確切而言,上述具體特征和動(dòng)作是作為實(shí)現(xiàn)權(quán)利要求的示例形式公開(kāi)的。
權(quán)利要求
1.一種用于執(zhí)行光學(xué)字符識(shí)別的圖像處理裝置,包括輸入組件30,用于接收文檔的文本圖像;分段組件40,用于檢測(cè)所述文檔中的文本和圖像并且標(biāo)識(shí)單詞位置;讀次序組件50,用于把單詞排列到文本區(qū)域中并且以正確的讀次序來(lái)排列所述文本區(qū)域;文本識(shí)別組件60,用于識(shí)別單詞并且計(jì)算和各個(gè)單詞和文本行有關(guān)的文本屬性;段落檢測(cè)組件70,用于把已經(jīng)在所述文本區(qū)域中標(biāo)識(shí)的文本行排列到段落中;用戶(hù)界面90,用戶(hù)經(jīng)其提供用戶(hù)輸入數(shù)據(jù),其中所述用戶(hù)輸入數(shù)據(jù)在經(jīng)歷OCR之后糾正在所述文檔中出現(xiàn)的第一個(gè)錯(cuò)誤表征的項(xiàng);以及錯(cuò)誤糾正組件80,用于接收用戶(hù)輸入數(shù)據(jù)、并且使其中初始錯(cuò)誤產(chǎn)生所造成的第一個(gè)錯(cuò)誤表征的項(xiàng)的第一個(gè)組件糾正該初始錯(cuò)誤,其中錯(cuò)誤糾正組件還被配置成使在第一組件之后處理所述圖像的各組件糾正作為初始錯(cuò)誤的結(jié)果而產(chǎn)生的隨之發(fā)生的錯(cuò)誤。
2.如權(quán)利要求1所述的圖像處理裝置,其特征在于,所述組件30-90中的第一個(gè)還被配置成自動(dòng)地糾正造成和第一錯(cuò)誤表征的項(xiàng)具有相同類(lèi)型的其他錯(cuò)誤表征的項(xiàng)的其他錯(cuò)誤。
3.如權(quán)利要求1所述的圖像處理裝置,其特征在于,所述用戶(hù)界面90包括預(yù)先選擇的錯(cuò)誤類(lèi)型410的菜單,用戶(hù)從所述菜單中選擇作為用戶(hù)輸入數(shù)據(jù)的部分。
4.如權(quán)利要求3所述的圖像處理裝置,其特征在于,所述預(yù)先選擇的錯(cuò)誤類(lèi)型410包括從由文本區(qū)域錯(cuò)誤、段落區(qū)域錯(cuò)誤、段落結(jié)尾錯(cuò)誤、文本行錯(cuò)誤、單詞錯(cuò)誤和圖像區(qū)域錯(cuò)誤組成的組中選擇的多個(gè)錯(cuò)誤類(lèi)型。
5.如權(quán)利要求1所述的圖像處理裝置,其特征在于,所述用戶(hù)輸入90包括第一錯(cuò)誤類(lèi)型的選擇,并且至少部分基于所述第一錯(cuò)誤類(lèi)型,所述錯(cuò)誤糾正組件80使一個(gè)或多個(gè)所選擇的組件至少部分地重新執(zhí)行以糾正初始錯(cuò)誤。
6.如權(quán)利要求1所述的圖像處理裝置,其特征在于,所述用戶(hù)界面90包括顯示420,在顯示420中在經(jīng)歷OCR之后呈現(xiàn)文本圖像的一部分,所述用戶(hù)界面90被配置成接收糾正第一錯(cuò)誤表征的項(xiàng)的用戶(hù)輸入,并且識(shí)別和用戶(hù)輸入所糾正的文本圖像的選擇相對(duì)應(yīng)的顯示 420的用戶(hù)區(qū)域部分。
7.如權(quán)利要求1所述的圖像處理裝置,其特征在于,所述隨之發(fā)生的錯(cuò)誤以與用戶(hù)之前糾正的錯(cuò)誤表征的項(xiàng)一致的方式被糾正。
8.如權(quán)利要求1所述的圖像處理裝置,還包括用于存儲(chǔ)所述圖像文檔的電子模型的存儲(chǔ)器組件,其中所述電子模型包括圖像文檔的由組件30-90的每一個(gè)確定的元件,其中所述電子模型充當(dāng)由處理所述圖像文檔的前一組件提供給組件30-90的每一個(gè)的輸入信息。
9.如權(quán)利要求8所述的圖像處理裝置,其特征在于,所述錯(cuò)誤糾正組件80使得文本識(shí)別組件60中產(chǎn)生的隨之發(fā)生的錯(cuò)誤通過(guò)增量地重新執(zhí)行文本識(shí)別組件60以?xún)H處理已被改變的元件而被糾正。
10.如權(quán)利要求8所述的圖像處理裝置,其特征在于,所述電子模型包括與元素的每一個(gè)相關(guān)聯(lián)的屬性,其中屬性的每一個(gè)指定了與屬性所關(guān)聯(lián)至的相應(yīng)元素相關(guān)聯(lián)的置信度水平。
11.如權(quán)利要求10所述的圖像處理裝置,其特征在于,所述初始錯(cuò)誤在電子模型中包括的至少一個(gè)元素中產(chǎn)生,其中所述糾正組件80在已經(jīng)糾正初始錯(cuò)誤后為與至少一個(gè)元素相關(guān)聯(lián)的一個(gè)或多個(gè)屬性的置信度水平分配一個(gè)最大值。
12.一種用于糾正已經(jīng)歷光學(xué)字符識(shí)別(OCR)的文本圖像文檔的方法,包括在圖像文檔已經(jīng)歷OCR過(guò)程之后接收510所述圖像文檔的電子模型,所述電子模型包括圖像文檔的已經(jīng)由OCR過(guò)程中的多個(gè)順序執(zhí)行的階段的每一個(gè)所確定的元素,其中電子模型充當(dāng)由處理所述圖像文檔的前一階段提供給每一個(gè)階段的輸入信息;向用戶(hù)呈現(xiàn)530圖形用戶(hù)界面,所述圖像用戶(hù)界面在經(jīng)歷OCR后接收對(duì)出現(xiàn)在文檔中的第一錯(cuò)誤表征的項(xiàng)進(jìn)行糾正的用戶(hù)輸入數(shù)據(jù);至少部分基于用戶(hù)輸入數(shù)據(jù),使550產(chǎn)生了造成第一錯(cuò)誤表征的項(xiàng)的初始錯(cuò)誤的OCR 過(guò)程的第一階段糾正所述初始錯(cuò)誤;以及使530所述第一階段之后的OCR過(guò)程的各階段對(duì)作為初始錯(cuò)誤的結(jié)果而在它們的相應(yīng)階段中產(chǎn)生的隨之發(fā)生的錯(cuò)誤進(jìn)行糾正。
13.如權(quán)利要求12所述的方法,其特征在于,呈現(xiàn)530所述圖像用戶(hù)界面包括請(qǐng)求用戶(hù)對(duì)錯(cuò)誤表征的項(xiàng)所屬的錯(cuò)誤類(lèi)型進(jìn)行分類(lèi)。
14.如權(quán)利要求12所述的方法,還包括使第一階段對(duì)產(chǎn)生和第一錯(cuò)誤表征的項(xiàng)同時(shí)產(chǎn)生其他錯(cuò)誤表征的項(xiàng)的其他錯(cuò)誤進(jìn)行糾正。
15.如權(quán)利要求12所述的方法,其特征在于,所述用戶(hù)界面90包括預(yù)先選擇的錯(cuò)誤類(lèi)型的菜單410,用戶(hù)從所述菜單中選擇作為用戶(hù)輸入數(shù)據(jù)的部分。
全文摘要
本發(fā)明涉及對(duì)經(jīng)歷光學(xué)字符識(shí)別(OCR)過(guò)程的文本文檔中出現(xiàn)的錯(cuò)誤的用戶(hù)糾正。通過(guò)經(jīng)歷OCR過(guò)程來(lái)創(chuàng)建圖像文檔的電子模型。電子模型包括圖像文檔的已經(jīng)由OCR過(guò)程中多個(gè)順序執(zhí)行的階段的每一個(gè)所確定的元素(例如,單詞、文本行、段落、圖像)。電子模型充當(dāng)由處理該圖像文檔的前一階段提供給各個(gè)階段的輸入信息。向用戶(hù)呈現(xiàn)圖形用戶(hù)界面,使用戶(hù)能提供對(duì)文檔中出現(xiàn)的錯(cuò)誤表征的項(xiàng)進(jìn)行糾正的用戶(hù)輸入數(shù)據(jù)?;谟脩?hù)輸入數(shù)據(jù),產(chǎn)生了引起錯(cuò)誤表征的項(xiàng)的初始錯(cuò)誤的處理階段對(duì)該初始錯(cuò)誤進(jìn)行糾正。然后,該階段之后的OCR過(guò)程的各階段對(duì)由于初始錯(cuò)誤而在它們的相應(yīng)階段中產(chǎn)生的隨之發(fā)生的錯(cuò)誤進(jìn)行糾正。
文檔編號(hào)G06K9/20GK102289667SQ20111013791
公開(kāi)日2011年12月21日 申請(qǐng)日期2011年5月16日 優(yōu)先權(quán)日2010年5月17日
發(fā)明者A·烏澤拉茨, B·德雷舍維奇, B·拉達(dá)科維奇, M·武格代利亞, N·托迪奇 申請(qǐng)人:微軟公司