專利名稱:位置編碼的文檔圖像分析和標簽的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實施例涉及位置編碼的媒質(zhì)和數(shù)字筆之間的交互,尤其涉及基于文檔內(nèi)容遮蔽位置編碼的信息的程度對包含位置編碼的信息的文檔圖像加標簽。
背景技術(shù):
計算機用戶習慣于使用鼠標和鍵盤作為與個人計算機交互的一種方法。盡管個人計算機提供了優(yōu)于書面文檔的眾多優(yōu)點,然而大多數(shù)用戶繼續(xù)使用印刷的紙張來執(zhí)行某些功能。這些功能的部分包括讀和注釋書面文檔。在注釋的情況下,由于由用戶放置在其上的注釋,印刷的文檔呈現(xiàn)更大的意義。然而,令印刷的文檔具有注釋的困難之一是隨后需要將注釋輸入回該文檔的電子形式中。這需要原始用戶或另一用戶很辛苦地讀完注釋,然后將它們輸入到個人計算機中。在某些情況下,用戶將在注釋和原始文本中掃描,由此來創(chuàng)建一個新文檔。這多個步驟令印刷文檔和文檔的電子版本之間的交互在重復的基礎(chǔ)上變得難以處理。此外,掃描的圖像通常是不可修改的。沒有方法將注釋從原始文本中分離。這令使用注釋變得困難。因此,需要一種處理注釋的改進的方法。
捕捉手寫信息的一種技術(shù)是通過使用其位置可在書寫過程中確定的筆。提供這一功能的一種筆是Anoto Inc的Anoto筆。這一筆通過使用照相機捕捉用預(yù)定圖案編碼的紙件圖像來起作用。該圖像筆的一個示例在圖21中示出。該圖案由Anoto筆(Anoto Inc生產(chǎn))用于確定筆在一張紙上的位置。然而,用Anoto筆使用的系統(tǒng)來確定位置的效率究竟如何是不清楚的。為提供對已捕捉圖像的位置的有效確定,需要一種提供捕捉圖像的有效解碼的系統(tǒng)。
當注釋文檔時,用戶可通過相對于文檔移動筆尖來對該文檔加標簽。筆尖的路徑可包括多個筆畫,其中,每一筆畫對應(yīng)于一系列被捕捉的圖像。因此,希望有效地標識筆的路徑以處理文檔上的注釋。
位置編碼信息的部分,如加水印的迷宮圖案(maze pattern),可被諸如文本和/或圖形等文檔的內(nèi)容遮蔽。當文檔的內(nèi)容遮蔽文檔區(qū)域中相對少量(或沒有)位置編碼的信息時,則該區(qū)域在文檔內(nèi)的位置可被有效地確定,而無需執(zhí)行大量的計算來確定位置。然而,當文檔的內(nèi)容遮蔽文檔區(qū)域中的大量位置編碼的信息時,需要使用計算量更大的技術(shù)來確定該區(qū)域在文檔內(nèi)的位置。因此,需要將相對少量的位置編碼信息被遮蔽的情況與相對大量的信息被遮蔽的情況區(qū)別的技術(shù)來提高用戶與包含位置編碼信息的文檔進行交互的效率。
發(fā)明內(nèi)容
本發(fā)明的實施例涉及分析包含位置編碼信息,如迷宮圖案的文檔圖像,并對捕捉的圖像加標簽。這類文檔分析的結(jié)果可用于有效地確定由照相機捕捉的圖像在位置編碼的文檔內(nèi)的位置。
一種系統(tǒng)包括一圖像捕捉模塊和一分析和加標簽?zāi)K。該分析和加標簽?zāi)K接收由圖像步驟模塊輸出的已捕捉圖像的數(shù)據(jù)和離線訓練數(shù)據(jù)作為輸入;執(zhí)行分析和加標簽處理;并輸出圖像標簽信息。
印刷的文檔用迷宮圖案來加水印。這類迷宮圖案可以被諸如文本等文檔內(nèi)容所遮蔽。根據(jù)這類遮蔽的程度,可能無法從照相機捕捉的圖像中提取足夠的位置編碼比特來確定照相機捕捉的圖像在文檔中的位置。
加水印的文檔圖像被分析并加標簽。分析和加標簽涉及基于迷宮圖案在文檔中的特定位置上的可見程度來確定加水印的文檔內(nèi)的x-y位置的能力。
閱讀以下詳細描述,可以清楚本發(fā)明的其它特征和優(yōu)點。
當接合附圖閱讀時,可以更好地理解以上本發(fā)明的概述以及以下較佳實施例的詳細描述,附圖包括示例而不是對本發(fā)明的局限。
圖1示出了可用于本發(fā)明的實施例的計算機的通用描述。
圖2A和2B示出了依照本發(fā)明的實施例的圖像捕捉系統(tǒng)和對應(yīng)的已捕捉圖像。
圖3A到3F示出了依照本發(fā)明的實施例的各種序列和折疊技術(shù)。
圖4A到4E示出了依照本發(fā)明的實施例的各種編碼系統(tǒng)。
圖5A到5D示出了與依照圖4A和4B的編碼系統(tǒng)相關(guān)聯(lián)的四個可能的結(jié)果角。
圖6示出了依照本發(fā)明的實施例的已捕捉圖像部分的旋轉(zhuǎn)。
圖7示出了結(jié)合圖4A到4E的編碼系統(tǒng)使用的各個旋轉(zhuǎn)角度。
圖8示出了依照本發(fā)明的實施例用于確定已捕捉數(shù)組的位置的過程。
圖9示出了依照本發(fā)明的實施例用于確定已捕捉圖像的位置的方法。
圖10示出了依照本發(fā)明的實施例用于確定已捕捉圖像的位置的另一方法。
圖11描述了依照本發(fā)明的實施例的圖像捕捉模塊和分析和加標簽?zāi)K。
圖12描述了用于生成加水印的灰度級文檔圖像的步驟,該圖像可依照本發(fā)明的各種實施例來分析和加標簽。
圖13描述了文檔內(nèi)容的一部分的圖像、位置編碼的迷宮圖案的一部分、組合的內(nèi)容和迷宮圖案、以及內(nèi)容和迷宮圖案的一部分的放大視圖。
圖14示出了圖13所示的組合文檔和迷宮圖案的子窗以及子窗的中心像素。
圖15示出了依照本發(fā)明的各種實施例的示例文檔的文檔分析結(jié)果。
圖16描述了具有非零旋轉(zhuǎn)角和45度旋轉(zhuǎn)角的照相機捕捉的圖像。
圖17描述了形成Sobel邊算子的兩個卷積核。
圖18示出了僅包含迷宮圖案的已捕捉圖像的梯度圖像的直方圖。
圖19示出了包含文檔內(nèi)容的已捕捉圖像的梯度圖像的直方圖。
圖20示出了離線訓練的一個示例結(jié)果,它包括—用于在純迷宮圖案圖像和包含文檔內(nèi)容的圖像之間進行區(qū)別的所選擇的閾值。
圖21示出了依照現(xiàn)有技術(shù)的文檔中的編碼空間的表示。
具體實施例方式
本發(fā)明的各方面涉及確定已捕捉的圖像相對于較大圖像的位置。本發(fā)明描述的位置確定方法和系統(tǒng)可結(jié)合多功能筆使用。
為方便讀者,以下內(nèi)容由小標題分割。小標題包括術(shù)語、通用計算機、圖像捕捉筆、數(shù)組的編碼、解碼、糾錯、位置確定、以及照相機捕捉的圖像的分析和加標簽。
I.術(shù)語筆-可包括或不包括儲存墨水的能力的任何書寫工具。在某些示例中,依照本發(fā)明的實施例,不儲存墨水能力的觸針可用做筆。
照相機-可從紙張或任何其它媒質(zhì)捕捉圖像的圖像捕捉系統(tǒng)。
II.通用計算機圖1是可用于實現(xiàn)本發(fā)明的各方面的常規(guī)通用數(shù)字計算環(huán)境的一個示例的功能框圖。在圖1中,計算機100包括處理單元110、系統(tǒng)存儲器120和將包括系統(tǒng)存儲器的各種系統(tǒng)組件耦合到處理單元110的系統(tǒng)總線130。系統(tǒng)總線130可以是若干類型總線結(jié)構(gòu)的任一種,包括存儲器總線和存儲器控制器、外圍總線以及使用各種總線體系結(jié)構(gòu)的任一種的局部總線。系統(tǒng)存儲器120包括只讀存儲器(ROM)140和隨機存取存儲器(RAM)150。
基本輸入/輸出系統(tǒng)160(BIOS)包含如在啟動時幫助在計算機100中的元件之間傳輸信息的基本例程,儲存在ROM 140中。計算機100也包括用于對硬盤(未示出)進行讀寫的硬盤驅(qū)動器170、用于對可移動磁盤190進行讀寫的磁盤驅(qū)動器180、以及用于對諸如CD ROM或其它光媒質(zhì)等可移動光盤192進行讀寫的光盤驅(qū)動器191。硬盤驅(qū)動器170、磁盤驅(qū)動器180和光盤驅(qū)動器191分別由硬盤驅(qū)動器接口192、磁盤驅(qū)動器接口193和光盤驅(qū)動器接口194連接到系統(tǒng)總線130。驅(qū)動器及其關(guān)聯(lián)的計算機可讀媒質(zhì)為個人計算機100提供了計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失存儲。本領(lǐng)域的技術(shù)人員可以理解,在示例操作環(huán)境中也可使用可儲存可由計算機訪問的數(shù)據(jù)的其它類型的計算機可讀媒質(zhì),如磁帶盒、閃存卡、數(shù)字視頻盤、貝努利盒式磁帶、隨機存取存儲器(RAM)、只讀存儲器(ROM)等等。
眾多程序模塊可儲存在硬盤170、磁盤190、光盤192、ROM 140或RAM 150中,包括操作系統(tǒng)195、一個或多個應(yīng)用程序196、其它程序模塊197和程序數(shù)據(jù)198。用戶可通過輸入設(shè)備,如鍵盤101和定位設(shè)備102向計算機100輸入命令和信息。其它輸入設(shè)備(未示出)可包括麥克風、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等等。這些和其它輸入設(shè)備通常通過耦合到系統(tǒng)總線的串行端口接口連接到處理單元110,但也可通過其它接口連接,如并行端口、游戲端口和通用串行總線(USB)。此外,這些設(shè)備可通過適當?shù)慕涌?未示出)直接耦合至系統(tǒng)總線130。監(jiān)視器107或其它類型的顯示設(shè)備也通過接口,如視頻適配器108連接到系統(tǒng)總線130。除監(jiān)視器之外,個人計算機通常包括其它外圍輸出設(shè)備(未示出),如揚聲器或打印機。在一個較佳的實施例中,提供了筆數(shù)字化儀165和所附的筆或觸針166,以便數(shù)字地捕捉手畫線輸入。盡管示出了筆數(shù)字化儀165和串行端口之間的直接連接,然而實際上,筆數(shù)字化儀165可以通過并行端口或其它接口和系統(tǒng)總線130直接耦合到處理單元110,這在本領(lǐng)域中是已知的。此外,盡管示出數(shù)字化儀165與監(jiān)視器107分離,然而較佳的是數(shù)字化儀165的可用輸入?yún)^(qū)域可與監(jiān)視器107的顯示區(qū)域有相同的范圍。此外,數(shù)字化儀165可被集成到監(jiān)視器107中,或可作為單獨的設(shè)備疊加或附加在監(jiān)視器107上。
計算機100可在使用到一個或多個遠程計算機,如遠程計算機109的邏輯連接的網(wǎng)絡(luò)化環(huán)境中操作。遠程計算機109可以是服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它公用網(wǎng)絡(luò)節(jié)點,并通常包括上述涉及計算機100的許多或所有元件,盡管圖1中僅示出了存儲器存儲設(shè)備111。圖1所描述的邏輯連接包括局域網(wǎng)(LAN)112和廣域網(wǎng)(WAN)113。這類網(wǎng)絡(luò)環(huán)境常見于辦公室、企業(yè)范圍計算機網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)。
當在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機100通過網(wǎng)絡(luò)接口或適配器114連接到局域網(wǎng)112。當在WAN網(wǎng)絡(luò)環(huán)境中使用時,個人計算機100通常包括調(diào)制解調(diào)器115或其它裝置,用于通過廣域網(wǎng)113,如因特網(wǎng)建立通信。調(diào)制解調(diào)器115可以是內(nèi)置或外置的,通過串行端口接口106連接到系統(tǒng)總線130。在網(wǎng)絡(luò)化環(huán)境中,相對個人計算機100所描述的程序模塊或其部分可儲存在遠程存儲器存儲設(shè)備中。
可以理解,所示的網(wǎng)絡(luò)連接是說明性的,可以使用在計算機之間建立通信鏈路的其它技術(shù)。假定存在各種公知協(xié)議的任一種,如TCP/IP、以太網(wǎng)、FTP、HTTP、藍牙、IEEE 802.11x等等,系統(tǒng)可在客戶機-服務(wù)器配置中操作,以準許用戶從基于web的服務(wù)器檢索網(wǎng)頁??墒褂酶鞣N常規(guī)web瀏覽器的任一種來顯示并操作網(wǎng)頁上的數(shù)據(jù)。
III.圖像捕捉筆本發(fā)明的各方面包括將已編碼的數(shù)據(jù)流置于表示該已編碼的數(shù)據(jù)流的顯示形式(例如,如后文參考圖4B所討論的,已編碼數(shù)據(jù)流用于創(chuàng)建圖形圖案)。顯示形式可以是印刷的紙張(或其它物理介質(zhì)),或可以是結(jié)合另一圖像或圖像集來投影已編碼數(shù)據(jù)流的顯示屏。例如,已編碼數(shù)據(jù)流可被表示為紙張上的具體圖形圖像或疊加在顯示的圖像(如表示文檔的文本)上的圖形圖像,或可以是顯示屏上的具體(不可修改)圖形圖像(因此,由筆捕捉的任何圖像部分都位于該顯示屏上)。
已捕捉圖像的位置的確定可用于確定用戶與紙張、介質(zhì)或顯示屏交互的位置。在本發(fā)明的某些方面,筆可以是在紙張上書寫的墨水筆。在其它方面,筆可以是用戶在計算機顯示屏的表面上書寫的觸針。交互活動可返回給已知文檔上的已編碼圖像或支持計算機屏幕上的顯示文檔系統(tǒng)。通過當筆或觸針遍歷文檔時用筆或觸針中的照相機重復地捕捉圖像,系統(tǒng)可跟蹤由用戶操縱的觸針的移動。顯示的或印刷的圖像可以是與空白或內(nèi)容豐富紙張相關(guān)聯(lián)的水印,或可以是與疊加在屏幕上或內(nèi)建到屏幕中的顯示圖像或固定編碼相關(guān)聯(lián)的水印。
圖2A和2B示出了具有照相機203的筆201的一個說明性示例。筆201包括筆尖202,它可包括或不包括墨水貯液器。照相機203從表面207捕捉圖像204。筆201還可包括另外的傳感器和/或處理器,如由虛線框206所表示的。這些傳感器和/或處理器206也可包括向另一筆201和/或個人計算機發(fā)送信息的能力(例如,通過藍牙或其它無線協(xié)議)。
圖2B表示由照相機203察看的圖像。在一個說明性示例中,照相機203的可見區(qū)(即,照相機的圖像傳感器的分辨率)是32×32像素(其中,N=32)。在一個實施例中,已捕捉圖像(32像素×32像素)對應(yīng)于由照相機203捕捉的表面平面的約5mm×5mm的區(qū)域。因此,圖2B示出了32像素長×32像素寬的可見區(qū)。N的大小是可調(diào)節(jié)的,使得較大的N對應(yīng)于更高的圖像分辨率。而且,盡管此處為說明目的,示出照相機203的可見區(qū)是正方形,然而,本領(lǐng)域中已知,可見區(qū)可包括其它形狀。
由照相機203捕捉的圖像可被定義為圖像幀序列{Ii},其中,Ii由筆201在采樣時刻ti捕捉。采樣率可大可小,取決于系統(tǒng)配置和性能要求。已捕捉圖像幀的大小可大可小,取決于系統(tǒng)配置和性能要求。
由照相機203捕捉的圖像可由處理系統(tǒng)直接使用,或可經(jīng)歷預(yù)過濾。這一預(yù)過濾可在筆201中發(fā)生,或可在筆201之外發(fā)生(例如,在個人計算機中)。
圖2B的圖像大小是32×32像素。如果每一編碼單元大小是3×3像素,則已捕捉的已編碼單元的數(shù)量約為100單元。如果編碼單元大小是5×5像素,則已捕捉的已編碼單元的數(shù)量約為36單元。
圖2a也示出了圖像平面209,在其上形成來自位置204的圖案的圖像210。從對象平面207的圖案接收的光可由透鏡208聚焦。透鏡208可以是單個透鏡或多部分透鏡系統(tǒng),但是為簡明起見,在此處表示為單個透鏡。圖像捕捉傳感器211捕捉圖像210。
圖像傳感器211可以足夠大來捕捉圖像210。可選地,圖像傳感器211可以足夠大來捕捉位置212處的筆尖202的圖像。僅供參考,位置212處的圖像被稱為虛擬筆尖。注意,由于筆尖、透鏡208和圖像傳感器211之間的恒定關(guān)系,相對于圖像傳感器211的虛擬筆尖位置是固定的。
以下變換FS→P將由照相機捕捉的圖像中的位置坐標轉(zhuǎn)換成紙張上的真實圖像的位置坐標L紙張=FS→P(L傳感器)在書寫的過程中,筆尖和紙張在同一平面上。因此,從虛擬筆尖到真實筆尖的變換也是FS→PL筆尖=FS→P(L虛擬筆尖)變換FS→P可以被估算為一仿射變換。它被簡化為FS→P′=sxsinθycosθxsinθy-cosθysinθx,-sxcosθycosθxsinθy-cosθysinθx,0sysinθxcosθxsinθy-cosθysinθx,sycosθxcosθxsinθy-cosθysinθx,00,0,1]]>作為FS→P的估算,其中,θx,θy,sx和sy是在位置204處捕捉的圖案的兩個方向的旋轉(zhuǎn)和比例。此外,可通過將已捕捉圖像與紙張上對應(yīng)的真實圖像進行匹配來細化F'S→P?!凹毣敝竿ㄟ^被稱為遞歸方法的一種類型的優(yōu)化算法來獲取變換FS→P的更精確的估算。該遞歸方法將矩陣F'S→P作為初始值來處理。經(jīng)細化的估算更精確地描述了S和P之間的轉(zhuǎn)換。
下一步,可通過校準來確定虛擬筆尖的位置。
將筆尖202置于紙張上的固定位置L筆尖上。接著擺動該筆,從而允許照相機203用不同的筆姿勢來捕捉一系列圖像。對于捕捉到的每一圖像,可獲得變換FS→P。從該變換,可獲得虛擬筆尖的位置L虛擬筆尖L虛擬筆尖=FP→S(L筆尖)其中,L筆尖被初始化為(0,0),并且FP→S=(FS→P)-1通過對從每一圖像獲得的L虛擬筆尖求平均值,可確定虛擬筆尖的位置L虛擬筆尖。采用L虛擬筆尖,可獲得L筆尖的更準確的估算。在若干次迭代之后,可確定虛擬筆尖的準確位置L虛擬筆尖。
虛擬筆尖的位置L虛擬筆尖現(xiàn)在已知。也可從捕捉的圖像獲得變換FS→P。最后,可使用該信息來確定真實筆尖的位置L筆尖L筆尖=FS→P(L虛擬筆尖)IV.數(shù)組的編碼可通過折疊一維序列來構(gòu)造二維數(shù)組。包含足夠多數(shù)量比特的二維數(shù)組的任何部分可用于確定其在整個二維數(shù)組中的位置。然而,有必要從一個已捕捉的圖像或幾個已捕捉的圖像確定位置。為將已捕捉的圖像部分與二維數(shù)組中的兩個或多個位置相關(guān)聯(lián)的概率最小化,可使用一非重復序列來創(chuàng)建該數(shù)組。所創(chuàng)建的序列的一個屬性是該序列不在一段長度(或窗)n上重復。下文描述了一維序列的創(chuàng)建,隨后將序列折疊成數(shù)組。
IV.A.序列構(gòu)造數(shù)字序列可用做編碼系統(tǒng)的起始點。例如,序列(也稱為m序列)可被表示為域Fq中的q元素集。此處,q=pn,其中,n≥1,并且p是質(zhì)數(shù)。序列或m序列可通過各種不同的技術(shù)來生成,包括但不限于,多項式除法。使用多項式除法,序列可被定義如下Rl(x)pn(x)]]>其中,Pn(x)是在域Fq[x](具有qn個元素)中次數(shù)為n的本原多項式。Rl(x)是域Fq[x]中次數(shù)為l(其中,l<n)的非零多項式。序列可使用一迭代過程來創(chuàng)建,它具有兩個步驟首先,將兩個多項式相除(得到域Fq中的一個元素),其次,將余項乘以x。當輸出開始重復時,停止計算。該過程可使用一線性反饋移位寄存器來實現(xiàn),如Douglas W.Clark和Lih-Jvh Weng的文章“最大和近最大移位寄存器序列有效的事件寄存器和簡單的離散對數(shù)(Maximal and Near-Maximal ShiftRegister SequencesEfficient Event Counters and Easy Discrete Logarithms)”中所描述的,該文發(fā)表在IEEE計算機學報43.5(IEEE Transactions on Computers 43.5)(1994年5月,560-568頁)。在這一實施例中,在序列的循環(huán)移位和多項式Rl(x)之間建立一種關(guān)系改變Rl(x)僅對該序列循環(huán)移位,并且每次循環(huán)移位對應(yīng)于一個多項式Rl(x)。所得的序列的一個性質(zhì)是,該序列具有qn-1的周期,并且在一個周期內(nèi),在寬度(或長度)n上,任何部分在該序列中存在一次且僅一次。這被稱為“窗特性”。周期qn-1也被稱為序列的長度,n被稱為序列的階。
上述過程僅是可用于創(chuàng)建具有窗特性的序列的各種過程的其中一個。
IV.B.數(shù)組構(gòu)造可用于創(chuàng)建圖像(其一部分可由照相機捕捉)的數(shù)組(或m數(shù)組)是一維序列或m序列的擴展。設(shè)A為周期(m1,m2)的數(shù)組,即A(k+m1,l)=A(k,l+m2)=A(k,l)。當n1×n2的窗通過A的周期移位時,F(xiàn)q上所有的非零n1×n2矩陣出現(xiàn)一次且僅一次。這一特性也被稱為“窗特性”,因為每一窗是唯一的。窗然后可被表達為周期(m1,m2)和階(n1,n2)的數(shù)組(m1和m2是數(shù)組中存在的水平和垂直比特數(shù))可通過折疊序列來構(gòu)造二進制數(shù)組(或m數(shù)組)。一種方法是獲得序列,然后將其折疊成大小為m1×m2,其中,該數(shù)組的長度為L=m1×m2=2n-1??蛇x地,可以想要覆蓋的空間的預(yù)定大小開始(例如,一張紙、30張紙,或計算機監(jiān)視器的大小),確定區(qū)域(m1×m2),然后使用該尺寸以使L≥m1×m2,其中,L=2n-1。
可使用各種不同的折疊技術(shù)。例如,圖3A到圖3C示出了三個不同的序列。其每一個可被折疊成如圖3D所示的數(shù)組。這三個不同的折疊方法被示出為圖3D中的覆蓋圖,以及圖3E和3F中的光柵路徑。采用圖3D所示的折疊方法。
為創(chuàng)建如圖3D所示的折疊方法,創(chuàng)建長度為L且階為n的序列{ai}。下一步,通過使數(shù)組的每一比特按以下公式1計算,從序列{ai}創(chuàng)建大小為m1×m2的數(shù)組{bkl},其中,gcd(m1,m2)=1,并且L=m1×m2bkl=ai,其中,k=i mod(m1),l=i mod(m2),i=0,…,L-1。(1)該折疊方法可被可選地表達為將序列放置在數(shù)組的對角線上,然后當達到邊時從對邊開始繼續(xù)。
圖4A示出了可用于對圖3D的數(shù)組進行編碼的示例編碼技術(shù)??梢岳斫?,也可使用其它編碼技術(shù)。例如,圖11示出了一個替換編碼技術(shù)。
參考圖4A,第一比特401(例如,“1”)由深色墨水的列來表示。第二比特402(例如,“0”)由深色墨水的行來表示??梢岳斫?,可使用任何顏色的墨水來表示各種比特。對所選擇的墨水顏色的唯一要求是它提供了與介質(zhì)的背景的顯著對比,以便可由圖像捕捉系統(tǒng)來區(qū)分。圖4A中的比特由單元的3×3的矩陣來表示。該矩陣的大小可被修改成任何大小,如基于圖像捕捉系統(tǒng)的大小和分辨率。比特0和1的替換表示在圖4C-4E中示出。可以理解,圖4A-4E的示例編碼的1或0的表示可以交換,而沒有任何影響。圖4C以隔行排列示出了占據(jù)兩行或兩列的比特表示。圖4D以虛線形式示出了行和列中的像素的替換排列。最后,圖4E以不規(guī)則間隔格式(例如,兩個深色點之后為一個空白點)示出了列和行中的像素表示。
再次參考圖4A,如果比特由3×3的矩陣表示,并且成象系統(tǒng)檢測到3×3區(qū)域中的一個深色行和兩個空白行,則檢測到0(或1)。如果檢測到圖像具有一個深色列和兩個空白列,則檢測到1(或0)。
此處,使用了一個以上像素或點來表示一個比特。使用單個像素(或點)來表示一個比特是脆弱的?;覊m、紙張中的折痕、不平坦表面等等會造成讀取數(shù)據(jù)單元的單個比特表示的困難。然而,可以理解,可使用不同的方法來圖形地表示表面上的數(shù)組。某些方法在圖4C到4E中示出。可以理解,也可使用其它方法。一種方法在圖11中僅使用間隔移位的點來描述。
使用比特流來創(chuàng)建圖4B的圖形圖案403。圖形圖案403包括12行和18列。行和列由比特流形成,該比特流使用比特表示401和402被轉(zhuǎn)化成圖形表示。圖4B可被視為具有以下比特表示010101110110110010001010011101101100]]>V.解碼當一個人用圖2A的筆書寫時,或?qū)⒐P移動到靠近已編碼的圖案時,照相機捕捉圖像。例如,當筆201被壓向紙張時,且筆201遍歷紙張上的文檔時,筆201可使用壓力傳感器。然后處理圖像來確定已捕捉的圖像相對于已編碼圖像的完整表示的方向,并提取構(gòu)成已捕捉圖像的比特。
為了確定已捕捉圖像相對于整個已編碼區(qū)域的方向,可注意到,并非圖5A-5D所示的所有四個可想象的角在圖形圖案403中都存在。實際上,采用了正確的方向,圖5A所示的角的類型無法在圖形圖案403中存在。因此,缺少圖5A所示的角類型的方向是正確的方向。
繼續(xù)到圖6,可分析由照相機601捕捉的圖像,并確定其方向,以便可對由圖像601實際表示的位置進行解釋。首先,審閱圖像601以確定旋轉(zhuǎn)該圖像使得像素在水平和垂直上對齊所需的角度θ。注意,替換的網(wǎng)格對齊也是可能的,包括底層網(wǎng)格到非水平和垂直排列(如,45度)的旋轉(zhuǎn)。使用非水平和垂直排列可提供消除來自用戶的視覺分心的可能益處,因為用戶往往在其它圖案之前注意到水平和垂直圖案。為簡明目的,網(wǎng)格的方向(水平和垂直,以及底層網(wǎng)格的任何其它旋轉(zhuǎn))被總稱為預(yù)定義網(wǎng)格方向。
下一步,分析圖像601以確定缺少了那個角。將圖像601旋轉(zhuǎn)到可用于解碼的圖像603所需的旋轉(zhuǎn)量o被示出為o=(θ加上旋轉(zhuǎn)量{由缺少哪個角來定義})。該旋轉(zhuǎn)量由圖7中的公式示出。再次參考圖6,首先通過像素的布局來確定角度θ,以到達像素的水平和垂直(或其它預(yù)定義網(wǎng)格方向)排列,并且如602所示地旋轉(zhuǎn)圖像。然后進行分析以確定缺少的角,并且將圖像602旋轉(zhuǎn)到圖像603,以建立用于解碼的圖像。此處,圖像被逆時針旋轉(zhuǎn)90度,使得圖像603具有正確的方向,并可用于解碼。
可以理解,旋轉(zhuǎn)角度θ可在圖像601的旋轉(zhuǎn)之前或之后應(yīng)用,以考慮丟失的角。也可理解,通過考慮已捕捉圖像中的噪聲,所有四個類型的角都可存在??捎嬎忝恳活愋偷慕堑臄?shù)量,并選擇具有最少數(shù)量的類型作為所缺少的角類型。
最后,讀出圖像603中的代碼,并將其與用于創(chuàng)建圖像403的原始比特流相關(guān)。相關(guān)可以眾多方式執(zhí)行。例如,它可通過遞歸方式執(zhí)行,其中,將恢復的比特流與原始比特流內(nèi)的所有其它比特流片段進行比較。其次,可在恢復的比特流和原始比特流之間執(zhí)行統(tǒng)計分析,例如使用兩個比特流之間的漢明距離來執(zhí)行。可以理解,可使用各種方法來確定恢復的比特流在原始比特流中的位置。
一旦得到了恢復的比特,需要在原始數(shù)組(例如,圖4B所示的)中查找已捕捉圖像。確定比特分段在整個數(shù)組中的位置的這一過程可被若干項目變得更復雜。首先,可遮蔽要被捕捉的實際比特(例如,照相機可捕捉具有遮蔽原始代碼的手寫體的圖像)。其次,灰塵、折痕、反射等等也可在已捕捉圖像中引入誤差。這些誤差可令查找過程變得更困難。在這一點上,圖像捕捉系統(tǒng)可能需要用從該圖像提取的非順序比特來運作。下文示出了用來自圖像的非順序比特來操作的方法。
設(shè)序列(或m序列)I對應(yīng)于冪級數(shù)I(x)=1/Pn(x),其中,n是m序列的階,并且已捕捉的圖像包含Ib=(b0b1b2…bK-1)t的K個比特,其中K≥n,并且上標t表示矩陣或向量的轉(zhuǎn)置。K個比特的位置s正好是I的循環(huán)移位的次數(shù),使得b0被移位到序列的起始。然后,該移位的序列R對應(yīng)于冪級數(shù)xs/Pn(x),即R=Ts(I),其中T是循環(huán)移位算子。間接地找出這一s。多項式的模數(shù)Pn(x)形成了一個域。確保xs≡r0+r1x+…rn-1xn-1mod(Pn(x))。因此,可找出(r0,r1,…,rn-1),并解s。
關(guān)系式xs≡r0+r1x+…rn-1xn-1mod(Pn(x))隱含R=r0+r1T(I)+…+rn-1Tn-1(I)。以二元線性方程寫出,變?yōu)镽=rtA (2)其中,r=(r0r1r2…rn-1)t,并且A=(I T(I)…Tn-1(I))t,它包括I從0移位到(n-1)移位的循環(huán)移位。現(xiàn)在在R中僅稀少的K個比特可用于解r。設(shè)R中bi和b0之間的下標差為ki,i=1,2,…,k-1,則R的第1個和(ki+1)個元素(i=1,2,…,k-1)正好是b0,b1,…,bk-1。通過選擇A的第1列和第(ki+1)列,i=1,2,…,k-1,形成以下二元線性方程bt=rtM(3)其中,M是A的n×K子矩陣。
如果b是無誤差的,則r的解可被表示為rt=b~tM~-1---(4)]]>其中, 是M的任何非退化n×n子矩陣, 是b的對應(yīng)的子向量。
已知r,可使用Douglas W.Clark和Lih-Jyh Weng的“最大和近最大移位寄存器序列有效的事件計數(shù)器和簡單的離散對數(shù)(Maximal and Near-Maximal ShiftRegister SequencesEfficient Event Counters and Easy Discrete Logarithms)”,IEEE計算機學報43.5(IEEE Transactions on Computers 43.5)(1994年5月,560-568頁)中描述的Pohlig-Hellman-Silver算法來找出s,使得xs≡r0+r1x+…rn-1xn-1mod(Pn(x))。
由于矩陣A(其大小為n×L,其中,L=2n-1)可能是非常大的,應(yīng)當避免儲存整個矩陣A。實際上,如可從上述過程中所見到的,給定其下標差為ki的提取的比特,僅A的第一和第(ki+1)列與計算相關(guān)。給定已捕捉圖像的大小,ki的這種選擇是相當有限的。由此,僅計算中涉及的那些列需要被保存。這些列的總數(shù)遠小于L(其中,L=2n-1是m序列的長度)。
VI.糾錯如果在b中有誤差,則r的解法變得更復雜。帶有糾錯的解碼的傳統(tǒng)方法并不能容易地應(yīng)用,因為與已捕捉比特相關(guān)聯(lián)的矩陣M可在已捕捉的圖像之間變化。
采用一種隨機方法。假定b中的誤差比特數(shù)ne與K相比相對較小,則從b的K個比特中選擇正確的n個比特并且M的對應(yīng)子矩陣 為非退化的概率較高。
當所選擇的n個比特都正確時,bt和rtM之間的漢明距離,或與r相關(guān)聯(lián)的誤差比特數(shù)應(yīng)當最小,其中,r通過公式(4)來計算。重復該過程若干次,標識出導致最小誤差比特的正確的r是可能的。
如果僅有一個r與最小誤差比特數(shù)相關(guān)聯(lián),則它可被看作是正確的解。否則,如果有一個以上r與最小誤差比特數(shù)相關(guān)聯(lián),則ne超出由M生成的代碼的糾錯能力的概率是相當高的,并且解碼過程失敗。系統(tǒng)然后可繼續(xù)處理下一已捕捉的圖像。在另一實現(xiàn)中,可考慮關(guān)于筆的先前位置的信息。即,對于每一已捕捉的圖像,可標識其中接下來期望筆的目標區(qū)域。例如,如果用戶在由照相機捕捉的兩個圖像之間為提起筆,則由第二次圖像捕捉所確定的該筆的位置應(yīng)當不會太遠離第一個位置。然后可檢查與最小誤差比特數(shù)相關(guān)聯(lián)的每一r,來看從r計算的位置s是否滿足局部約束,即,該位置是否在指定的目標區(qū)域內(nèi)。
如果位置s滿足局部約束,則返回數(shù)組中的所提取的比特的X,Y位置。如果不是,則解碼過程失敗。
圖8描述了可用于確定序列(或m序列)中已捕捉圖像的位置的過程。首先,在步驟801,接收涉及已捕捉圖像的數(shù)據(jù)流。在步驟802,從A中提取對應(yīng)的列,并構(gòu)造矩陣M。
在步驟803,從矩陣M中隨機地選擇n個不相關(guān)的列向量,并通過解方程式(4)來確定向量r。在步驟804,該過程被執(zhí)行Q次(例如,100次)。循環(huán)次數(shù)的確定在“循環(huán)次數(shù)計算”一節(jié)中討論。
在步驟805,依照其相關(guān)聯(lián)的誤差比特數(shù)來對r進行排序。排序可使用本領(lǐng)域中已知的各種排序算法來完成。例如,可使用選擇排序算法。選擇排序算法在數(shù)字Q不大時是有益的。然而,如果Q變得非常大,則可使用更有效地處理大量項的其它排序算法(例如,合并排序)。
系統(tǒng)然后在步驟806通過檢查是否有多個r與最小誤差比特數(shù)相關(guān)聯(lián),來確定是否成功地執(zhí)行了糾錯。如果有多個r,則在步驟809返回誤差,指示解碼過程失敗。如果沒有多個r,則在步驟807計算提取的比特在序列(或m序列)中的位置,例如,通過使用Pohig-hellman-Silver算法來計算。
下一步,計算數(shù)組中的(X,Y)位置如下x=s mod m1,并且y=s mod m2,并在步驟808返回結(jié)果。
VII.位置確定圖9示出了用于確定筆尖的位置的過程。輸入是由照相機捕捉的圖像,輸出可以是筆尖的位置坐標。而且,輸出可包括(或不包括)其它信息,如已捕捉圖像的旋轉(zhuǎn)角度。
在步驟901,從照相機接收圖像。下一步,在步驟902可任選地預(yù)處理所接收的圖像(如由步驟902的虛線框所示),以調(diào)整亮和暗像素之間的對比度等等。
下一步,在步驟903,分析該圖像以確定其中的比特流。
下一步,在步驟904,多次從比特流中隨機地選擇n個比特,并確定接收的比特流在原始序列(或m序列)中的位置。
最后,一旦在步驟904確定了已捕捉圖像的位置,可在步驟905確定筆尖的位置。
圖10給出了關(guān)于903和904的更多細節(jié),并示出了提取已捕捉圖像內(nèi)的比特流的方法。首先,在步驟1001從照相機接收圖像。然后在步驟1002,該圖像可任選地經(jīng)歷圖像預(yù)處理(如由步驟1002的虛線所示的)。在步驟1003提取圖案。此處,可提取各線上的像素以找出圖案的方向和角度θ。
下一步,在步驟1004分析接收的圖像,以確定底層的網(wǎng)格線。如果在步驟1005找到網(wǎng)格線,則在步驟1006從圖案中提取代碼。然后在步驟1007對該代碼進行解碼,并在步驟1008確定筆尖位置。如果在步驟1005沒有找到網(wǎng)格線,則在步驟1009返回錯誤。
VIII.加水印的文檔圖像生成、分析和加標簽本發(fā)明的實施例涉及分析包含諸如迷宮圖案等位置編碼的信息的文檔圖像,并對圖像加標簽。這類文檔分析的結(jié)果可用于有效地確定由照相機捕捉的圖像在位置編碼的文檔內(nèi)的位置。
參考圖11,依照本發(fā)明的各種實施例,系統(tǒng)1100包括圖像生成和捕捉模塊1102以及分析和加標簽?zāi)K1106。捕捉圖像用于后續(xù)分析和加標簽的合適的技術(shù)在上文名為“圖像捕捉筆”的III節(jié)中,以及在本節(jié)的以下內(nèi)容和名為“生成加水印的灰度級文檔圖像”的VIII.A節(jié)中有揭示。該分析和加標簽?zāi)K1106接收由圖像生成和捕捉模塊1102輸出的圖像數(shù)據(jù)1104以及離線訓練數(shù)據(jù)1110作為輸入;執(zhí)行分析和加標簽過程,如下文更詳細討論的;并輸出圖像標簽信息1108。
依照本發(fā)明的各個實施例,照相機203捕捉的圖像的大小為32×32像素。嵌入的m數(shù)組的階為36,即m數(shù)組的大小為(218+1)×(218-1),它用于對表面207上的位置進行位置編碼。因此,為從子塊m數(shù)組中解碼唯一的x-y位置,用于確定表面207上的位置的子塊的比特數(shù)應(yīng)當至少為36。
依照本發(fā)明的各個實施例,用迷宮圖案對印刷文檔加水印。這類迷宮圖案可被諸如文本等文檔的內(nèi)容遮蔽。根據(jù)這類遮蔽的程度,可能無法從由照相機捕捉的圖像中提取足夠的m數(shù)組比特來確定該由照相機捕捉的圖像在文檔內(nèi)的位置。
依照本發(fā)明的各個實施例,加水印的文檔圖像被分析并加標簽。分析和加標簽涉及基于文檔內(nèi)特定位置上的迷宮圖案單元的可見程度來確定加水印的文檔中的x-y位置的能力。
VIII.A.生成加水印的灰度級文檔圖像圖12描述了依照本發(fā)明的各個實施例用于生成加水印的灰度級文檔圖像的步驟,該文檔可被分析和加標簽。通過如由1200所示的將電子文檔描繪成對應(yīng)于印刷文檔的位圖,或通過如1202和1206所示的掃描紙件文檔,來獲取文檔圖像。然后對位圖進行重采樣到適當?shù)姆直媛?,?208所示。分辨率的確定基于以下考慮(1)文檔圖像的分辨率不應(yīng)當小于已捕捉圖像的分辨率,因為當已捕捉圖像的位置無法通過m數(shù)組解碼來確定時,已捕捉圖像將與加水印的灰度級文檔圖像進行匹配,以確定位置;(2)一個印刷的迷宮圖案單元應(yīng)當被映射到整數(shù)個文檔圖像像素,使得匹配算法可以有效地起作用。例如,如果照相機的分辨率是0.15mm/像素,即,物理世界的0.15mm被映射到一個照相機像素,則印刷迷宮圖案單元大小為0.45mm×0.45mm,即,一個印刷迷宮圖案單元被映射到照相機傳感器上的3×3像素,文檔圖像的分辨率應(yīng)當也被設(shè)置為0.15mm/像素,使得印刷迷宮圖案單元將被映射到文檔圖像中的3×3像素區(qū)域。
然后對獲取的圖像加水印。圖13描述了文檔內(nèi)容1300的一部分的圖像1300、經(jīng)位置編碼的迷宮圖案的一部分1302、組合的內(nèi)容和迷宮圖案1304、以及內(nèi)容和迷宮圖案的一部分的經(jīng)放大的視圖1306,它示出了(1)迷宮圖案單元由于被疊加的文本遮蔽而不可見的位置1308、以及(2)迷宮圖案單元未被文檔內(nèi)容遮蔽并因此可見的位置1310。
VIII.B.文檔圖像的分析和加標簽依照本發(fā)明的各種實施例,文檔圖像通過以下步驟來加以分析將圖像劃分成具有實際上與迷宮圖案單元相同大小的相對較小的塊;確定這些小塊是否被諸如文檔文本等文檔內(nèi)容遮蔽;對每一像素,對以該像素為中心的鄰域窗中的完全可見的塊的數(shù)量進行計數(shù);以及基于該數(shù)量對像素加標簽。鄰域窗可具有實際上與照相機203捕捉的圖像相同的大小,即,32×32像素。
注意,上述過程不要求對灰度級文檔圖像加水印,即,內(nèi)容與迷宮圖案相組合。只要文檔圖像被劃分成具有實際上與迷宮圖案單元相同大小的相對較小的塊,則分析被文檔內(nèi)容遮蔽的迷宮圖案單元就等效于分析被文檔內(nèi)容遮蔽的塊。
圖14示出了這一32×32像素鄰域窗1400以及其中心像素1402。依照本發(fā)明的各個實施例,文檔圖像的像素可被加標簽為以下四種類型之一類型I32×32像素鄰域窗(以所考慮的像素為中心)基本上僅包含經(jīng)位置編碼的迷宮圖案單元。
類型II32×32像素鄰域窗包含60個或更多可見迷宮圖案單元。
類型III32×32像素領(lǐng)域窗包含36到60個可見迷宮圖案單元。
類型IV32×32像素鄰域窗包含35個或更少的可見迷宮圖案單元。
依照本發(fā)明的各個實施例,當已捕捉圖像的中心位于類型I或類型II區(qū)域中時,圖像在文檔內(nèi)的位置可唯一地通過m數(shù)組解碼來確定。
圖15示出了示例文檔的文檔分析結(jié)果,其中,文檔的區(qū)域被不同地加上顏色(或陰影),以表示基于每一像素的32×32鄰域窗內(nèi)的可見迷宮圖案單元的數(shù)量,已對文檔的該部分加上了哪一類型(即,類型I、II、III或IV)的標簽。
注意,在對可見迷宮圖案單元的數(shù)量進行計數(shù)時,32×32像素鄰域窗應(yīng)當被旋轉(zhuǎn)360度,以考慮照相機可能在任一角度捕捉文檔圖像的事實。然而,為易于實現(xiàn),僅分析非傾斜視圖,并且由傾斜角引起的誤差在確定像素類型的閾值中考慮。例如,圖16描述了已捕捉的圖像被旋轉(zhuǎn)45度的情況。這是最壞的情況,其中,丟失了可見迷宮圖案單元的最大值的17.2%。即使如此,類型II像素仍具有至少49(=60×(1-17.2%))個可見迷宮圖案單元,這允許通過m數(shù)組解碼來確定的唯一的x-y位置。換言之,如果像素被加標簽為類型I或II,則無論照相機已什么角度來捕捉圖像,仍具有足夠數(shù)量的可見迷宮圖案單元來用m數(shù)組解碼確定x-y位置。因此,如果已捕捉圖像無法被解碼,則很可能它位于類型III或IV區(qū)域。
如果由于沒有足夠的迷宮圖案單元可見而無法從筆畫圖像的序列中解碼x-y位置,則可使用一搜索算法來確定文檔中諸如在類型III和IV像素區(qū)域中的圖像的位置。僅在類型III和IV區(qū)域上使用這一搜索算法相對于對實際上文檔的所有部分使用該搜索算法,可降低用于確定圖像位置的計算成本。例如,在圖15的示例文檔中,僅13.7%的區(qū)域被加標簽為類型III(11.1%)或類型IV(2.6%)。與搜索整個文檔相關(guān)聯(lián)的計算成本遠高于僅搜索類型III和IV區(qū)域的計算成本。在一個實現(xiàn)中,可花費10秒以上來搜索整個文檔,而只需不到1秒來僅搜索類型III和IV區(qū)域。文檔圖像分析很大程度上降低了計算成本。
IX.由照相機捕捉的圖像的加標簽由照相機捕捉的圖像也可用上文在名為“文檔圖像分析和加標簽”的VIII.B節(jié)中討論的四種類型來加標簽??纱_定由照相機捕捉的圖像基本上是否僅包含經(jīng)位置編碼的迷宮圖案。換言之,可確定該圖像是否為類型I圖像。這一初始確定將在下文更詳細討論。
如果由照相機捕捉的圖像不是類型I圖像,則可分析由照相機捕捉的圖像的經(jīng)位置編碼的迷宮圖案,來確定可從該圖像中提取的若干位置編碼比特數(shù)。首先計算迷宮圖案網(wǎng)格線的參數(shù)(沿每一維度的比例和旋轉(zhuǎn),即仿射變換),然后確定其中嵌入了迷宮圖案的原始方向(或象限)。因此,m數(shù)組比特信息是基于網(wǎng)格線和條形方向(bar direction)來確定的。如果提取的比特數(shù)大于約60,則將該圖像加標簽為類型II;如果在提取的比特數(shù)在約36和60之間,則該圖像被加標簽為類型III;如果少于約36個比特被提取,則該圖像被加標簽為類型IV。為以這一方式對由照相機捕捉的圖像進行分類,可使用下文名為“閾值算法”的IX.B節(jié)中討論的閾值算法,以將迷宮圖案從文本區(qū)域中分離。然后,可基于所提取的比特數(shù)對圖像加標簽。從類型I、II和III中提取的比特可用于確定由照相機捕捉的圖像在較大的文檔中的x-y位置。這一類型的位置確定過程對類型IV圖像可省略,因為它們不包含用于x-y位置解碼的足夠的比特。
與同時包含文檔內(nèi)容和迷宮圖案相反,為確定圖像基本上是否僅包含經(jīng)位置編碼的迷宮圖案,依照本發(fā)明的各個實施例,可使用一種被稱為梯度圖像直方圖的支持間隔(SIGIH)的特征。SIGIH是基于以下知識來使用的純迷宮圖案圖像通常不包含邊,而具有諸如文本等文檔內(nèi)容的圖像通常包含邊,因為文檔內(nèi)容通常比迷宮圖案單元或空白區(qū)域更深。
IX.A.特征提取依照本發(fā)明的各個實施例,特征提取的第一個步驟是梯度算子,如Sobel邊算子或另一算子,可用于獲取梯度圖像。參考圖17,兩個卷積核1700和1702形成了Sobel邊算子。為使用Sobel邊算子,圖像中的每一像素與這兩個卷積核1700和1702進行卷積。一個核最大地對應(yīng)于一般性的垂直邊,而另一個核最大地對應(yīng)于水平邊。兩個卷積的“向量和”值可被用做特定像素的輸出值。該結(jié)果是梯度圖像。
可計算由梯度算子產(chǎn)生的梯度圖像的直方圖。然后可從梯度圖像的直方圖中獲取梯度圖像直方圖的支持間隔(SIGIH)。例如,圖18示出了僅包含迷宮圖案的已捕捉圖像的梯度圖像的直方圖。對圖18的直方圖,SIGIH特征為17,它是具有非零值的沿x軸的最大數(shù)。
圖19示出了包含諸如文本和/或一個或多個圖等文檔內(nèi)容的已捕捉圖像的梯度圖像的直方圖。對圖19的直方圖,SIGIH特征為44。
IX.B.閾值算法依照本發(fā)明的各個實施例,用于確定圖像是否為類型I的閾值算法可被劃分成兩個時期(1)離線訓練、以及(2)在線加標簽。
IX.B.1.離線訓練在離線訓練時期,可對具有已知標簽(即,類型I、II、III或IV)的相對大量的圖像計算SIGIH特征。純迷宮圖案圖像的SIGIN通常低于其它類型的圖像的SIGIH??苫谔幚碛柧殧?shù)據(jù)的結(jié)果選擇最優(yōu)閾值η。對于訓練組中的基本上所有的純迷宮圖案圖像,其SIGIH小于η,而對于基本上所有的非純迷宮圖案圖像,其SIGIH大于η。圖20示出了離線訓練的一個示例結(jié)果,其中,最優(yōu)閾值2004-η被選擇為32。還示出對應(yīng)于純迷宮圖案圖像的直方圖條2002,以及對應(yīng)于非純迷宮圖案圖像(即,包括文檔內(nèi)容的圖像)的直方圖條2006。
IX.B.2.在線加標簽在在線加標簽期間,計算每一已捕捉圖像的SIGIH。如果SIGIH小于η,則將該圖像加標簽為類型I圖像。否則,如果SIGIH大于η,則將該圖像加標簽為除類型I之外的類型(即,類型II、III和IV)。
上述涉及文檔分析和加標簽的討論假定已捕捉圖像的對比度保持相對一致。換言之,假定圖像傳感器的放大器和/或照相機的光照條件保持相對一致。如果這些條件明顯地改變,則可執(zhí)行新的訓練來更新特征參數(shù)。
X.總結(jié)性評論上文描述的僅是本發(fā)明的原理的說明性應(yīng)用。本領(lǐng)域的計數(shù)人員可在不脫離本發(fā)明的精神和范圍的情況下實現(xiàn)其它方案和方法。本發(fā)明的任何方法可以可儲存在計算機的盤或其它計算機可讀媒質(zhì)上的軟件來實現(xiàn)。
權(quán)利要求
1.一種對包含經(jīng)位置編碼的信息的文檔圖像加標簽以指示可從該圖像中提取的已編碼位置信息量的方法,其特征在于,所述方法包括獲取所述文檔圖像;以及將所述圖像加標簽為至少選自以下的一種類型基本上僅包含經(jīng)位置編碼的信息并且基本上不包含文檔內(nèi)容的第一類型、包含遮蔽所述經(jīng)位置編碼信息的至少一部分的文檔內(nèi)容的第二類型。
2.如權(quán)利要求1所述的方法,其特征在于,獲取文檔圖像還包括將一電子文檔變?yōu)閷?yīng)于印刷文檔的位圖表示。
3.如權(quán)利要求1所述的方法,其特征在于,獲取文檔圖像還包括處理經(jīng)掃描的紙件文檔。
4.如權(quán)利要求1所述的方法,其特征在于,所述第二類型被劃分成多個子類型,它們表示所述經(jīng)位置編碼的信息被所述文檔內(nèi)容的不同遮蔽程度。
5.一種對包含經(jīng)位置編碼的信息的由照相機捕捉的圖像加標簽以指示可從該圖像中提取的已編碼位置信息量的方法,其特征在于,所述方法包括獲取所述由照相機捕捉的圖像;以及將所述圖像加標簽為至少選自以下的一種類型基本上僅包含經(jīng)位置編碼的信息并且基本上不包含文檔內(nèi)容的第一類型、以及包含遮蔽所述經(jīng)位置編碼信息的至少一部分的文檔內(nèi)容的第二類型。
6.如權(quán)利要求5所述的方法,其特征在于,使用一梯度圖像直方圖的支持間隔來確定所述圖像是所述第一類型還是所述第二類型。
7.如權(quán)利要求6所述的方法,其特征在于,它還包括向所述圖像應(yīng)用一梯度算子以獲取一梯度圖像。
8.如權(quán)利要求7所述的方法,其特征在于,所述梯度算子是Sobel邊算子。
9.如權(quán)利要求8所述的方法,其特征在于,它還包括生成所述梯度圖像的直方圖。
10.如權(quán)利要求9所述的方法,其特征在于,它還包括使用沿所述直方圖的x軸的具有非零值的最大數(shù)作為所述梯度圖像直方圖支持間隔。
11.如權(quán)利要求6所述的方法,其特征在于,使用一離線訓練時期和一在線加標簽時期來確定所述圖像是所述第一類型還是所述第二類型。
12.如權(quán)利要求11所述的方法,其特征在于,用于在所述第一類型圖像和所述第二類型圖像之間進行區(qū)別的一閾值是基于在訓練數(shù)據(jù)圖像上執(zhí)行的所述離線訓練時期的結(jié)果來選擇的。
13.如權(quán)利要求12所述的方法,其特征在于,在所述在線加標簽時期,將所述閾值與所述圖像的梯度圖像直方圖支持間隔相比較,以確定所述圖像是所述第一類型還是所述第二類型。
14.一種對包含經(jīng)位置編碼的信息的文檔圖像加標簽以指示可從該圖像提取的已編碼位置信息量的系統(tǒng),其特征在于,所述系統(tǒng)包括一圖像生成和捕捉模塊,它獲取所述文檔圖像;以及一分析和加標簽?zāi)K,它將所述圖像加標簽為至少選自以下的一種類型基本上僅包含經(jīng)位置編碼的信息并基本上不包含文檔內(nèi)容的第一類型、以及包含遮蔽所述經(jīng)位置編碼信息的至少一部分的文檔內(nèi)容的第二類型。
15.如權(quán)利要求14所述的系統(tǒng),其特征在于,所述圖像生成和捕捉模塊將一電子文檔變?yōu)閷?yīng)于印刷文檔的位圖表示。
16.如權(quán)利要求14所述的系統(tǒng),其特征在于,所述圖像生成和捕捉模塊處理掃描的紙件文檔。
17.如權(quán)利要求14所述的系統(tǒng),其特征在于,所述第二類型被劃分成多個子類型,它們表示所述經(jīng)位置編碼的信息被所述文檔內(nèi)容的不同的遮蔽程度。
18.一種對包含經(jīng)位置編碼的信息的由照相機捕捉的圖像加標簽以指示可從所述圖像提取的已編碼位置信息量的系統(tǒng),其特征在于,所述系統(tǒng)包括一圖像生成和捕捉模塊,它獲取所述由照相機捕捉的圖像;以及一分析和加標簽?zāi)K,它將所述圖像加標簽為至少選自以下的一種類型基本上僅包含經(jīng)位置編碼的信息并基本上不包含文檔內(nèi)容的第一類型、以及包含遮蔽所述經(jīng)位置編碼信息的至少一部分的文檔內(nèi)容的第二類型。
19.如權(quán)利要求18所述的系統(tǒng),其特征在于,使用一梯度圖像直方圖支持間隔來確定所述圖像是所述第一類型還是所述第二類型。
20.如權(quán)利要求19所述的系統(tǒng),其特征在于,所述分析和加標簽?zāi)K向所述圖像應(yīng)用一梯度算子來獲取一梯度圖像。
21.如權(quán)利要求20所述的系統(tǒng),其特征在于,所述梯度算子是Sobel邊算子。
22.如權(quán)利要求19所述的系統(tǒng),其特征在于,所述分析和加標簽?zāi)K生成所述梯度圖像的直方圖。
23.如權(quán)利要求22所述的系統(tǒng),其特征在于,所述分析和加標簽?zāi)K使用一沿所述直方圖的x軸的具有非零值的最大數(shù),作為所述梯度圖像直方圖支持間隔。
24.如權(quán)利要求23所述的系統(tǒng),其特征在于,所述分析和加標簽?zāi)K執(zhí)行一離線訓練時期和一在線加標簽時期,以確定所述圖像是所述第一類型還是所述第二類型。
25.如權(quán)利要求24所述的系統(tǒng),其特征在于,用于在所述第一類型圖像和所述第二類型圖像之間進行區(qū)別的一閾值是基于在訓練數(shù)據(jù)圖像上執(zhí)行的所述離線訓練時期的結(jié)果來選擇的。
26.如權(quán)利要求25所述的系統(tǒng),其特征在于,在所述在線時期,所述分析和加標簽?zāi)K將所述閾值與所述圖像的梯度圖像直方圖支持間隔相比較,以確定所述圖像是所述第一類型還是所述第二類型。
27.一種包含計算機可讀指令的計算機可讀媒質(zhì),所述計算機可讀指令用于對包含經(jīng)位置編碼的信息的文檔圖像加標簽以指示可從該圖像提取的已編碼位置信息量,其特征在于,所述計算機可執(zhí)行指令執(zhí)行以下步驟獲取所述文檔圖像;以及將所述圖像加標簽為至少選自以下的一種類型基本上僅包含經(jīng)位置編碼的信息并基本上不包含文檔內(nèi)容的第一類型、以及包含遮蔽所述經(jīng)位置編碼信息的至少一部分的文檔內(nèi)容的第二類型。
28.如權(quán)利要求27所述的計算機可讀媒質(zhì),其特征在于,獲取文檔圖像還包括將一電子文檔變?yōu)閷?yīng)于印刷文檔的位圖表示。
29.如權(quán)利要求27所述的計算機可讀媒質(zhì),其特征在于,獲取文檔圖像還包括處理掃描的紙件文檔。
30.如權(quán)利要求27所述的計算機可讀媒質(zhì),其特征在于,所述第二類型被劃分成多個子類型,它們表示所述經(jīng)位置編碼的信息被所述文檔內(nèi)容的不同的遮蔽程度。
31.一種包含計算機可讀指令的計算機可讀媒質(zhì),所述計算機可讀指令用于對包含經(jīng)位置編碼的信息的由照相機捕捉的圖像加標簽以指示可從該圖像提取的已編碼位置信息量,其特征在于,所述計算機可讀指令執(zhí)行以下步驟獲取所述由計算機捕捉的圖像;以及將所述圖像加標簽為至少選自以下的一種類型基本上僅包含經(jīng)位置編碼的信息并基本上不包含文檔內(nèi)容的第一類型、以及包含遮蔽所述經(jīng)位置編碼信息的至少一部分的文檔內(nèi)容的第二類型。
32.如權(quán)利要求31所述的計算機可讀媒質(zhì),其特征在于,使用一梯度圖像直方圖支持間隔來確定所述圖像是所述第一類型還是所述第二類型。
33.如權(quán)利要求32所述的計算機可讀媒質(zhì),其特征在于,它還包含用于執(zhí)行以下步驟的計算機可讀指令向所述圖像應(yīng)用一梯度算子來獲取一梯度圖像。
34.如權(quán)利要求33所述的計算機可讀媒質(zhì),其特征在于,所述梯度算子是Sobel邊算子。
35.如權(quán)利要求34所述的計算機可讀媒質(zhì),其特征在于,它還包括用于執(zhí)行以下步驟的計算機可讀指令生成所述梯度圖像的直方圖。
36.如權(quán)利要求35所述的計算機可讀媒質(zhì),其特征在于,它還包括用于執(zhí)行以下步驟的計算機可讀指令使用一沿所述直方圖的x軸的具有非零值的最大數(shù),作為所述梯度圖像直方圖支持間隔。
37.如權(quán)利要求32所述的計算機可讀媒質(zhì),其特征在于,使用一離線訓練時期和一在線加標簽時期,來確定所述圖像是所述第一類型還是所述第二類型。
38.如權(quán)利要求37所述的計算機可讀媒質(zhì),其特征在于,用于在所述第一類型圖像和所述第二類型圖像之間進行區(qū)分的一閾值基于在訓練數(shù)據(jù)圖像上執(zhí)行的所述離線訓練時期的結(jié)果來選擇。
39.如權(quán)利要求38所述的計算機可讀媒質(zhì),其特征在于,在所述在線加標簽時期,將所述閾值與所述圖像的梯度圖像直方圖支持間隔相比較,以確定所述圖像是所述第一類型還是所述第二類型。
全文摘要
本發(fā)明所揭示的實施例涉及分析包含諸如迷宮圖案水印等經(jīng)位置編碼信息的文檔圖像,并基于諸如文本等文檔內(nèi)容遮蔽該經(jīng)位置編碼信息的程度來對該圖像加標簽。取決于這一遮蔽程度,可能無法從由照相機捕捉的文檔圖像中提取足夠的位置編碼比特來確定該由照相機捕捉的圖像在文檔內(nèi)的位置。一分析和加標簽?zāi)K接收由圖像生成和捕捉模塊輸出的圖像數(shù)據(jù)以及離線訓練數(shù)據(jù)作為輸入;執(zhí)行分析和加標簽處理;并輸出圖像標簽信息。文檔分析和加標簽處理的結(jié)果可用于有效地確定由照相機捕捉的圖像在經(jīng)位置編碼的文檔內(nèi)的位置。
文檔編號G06F3/033GK1637775SQ20051000418
公開日2005年7月13日 申請日期2005年1月6日 優(yōu)先權(quán)日2004年1月6日
發(fā)明者王堅, 陳黎勇, 黨映農(nóng) 申請人:微軟公司