專利名稱:啟用嵌入式交互代碼的顯示器的制作方法
啟用嵌入式交互代碼的顯示器
些旦 冃尿
計(jì)算機(jī)用戶習(xí)慣于使用鼠標(biāo)和鍵盤作為與個(gè)人計(jì)算機(jī)交互的一種方法。盡管 個(gè)人計(jì)算機(jī)提供了優(yōu)于書面文檔的眾多優(yōu)點(diǎn),然而大多數(shù)用戶繼續(xù)使用印刷的紙張 來執(zhí)行某些功能。這些功能的部分包括讀和注釋書面文檔。在注釋的情況下,由于 由用戶放置在其上的注釋,印刷的文檔呈現(xiàn)更大的意義。然而,令印刷的文檔具有 注釋的困難之一是隨后需要將注釋輸入回該文檔的電子形式中。這需要原始用戶或 另一用戶很辛苦地讀完注釋,然后將它們輸入到個(gè)人計(jì)算機(jī)中。在某些情況下,用 戶將在注釋和原始文本中掃描,由此來創(chuàng)建一個(gè)新文檔。這多個(gè)步驟令印刷文檔和 文檔的電子版本之間的交互在重復(fù)的基礎(chǔ)上變得難以處理。此外,掃描的圖像通常 是不可修改的。沒有方法將注釋從原始文本中分離。這令使用注釋變得困難。因此, 需要一種處理注釋的改進(jìn)的方法。
捕捉手寫信息的一種技術(shù)是通過使用其位置可在書寫過程中確定的筆。提供 這一功能的一種筆是Anoto Inc的Anoto筆。這一筆通過使用照相機(jī)捕捉用預(yù)定圖 案編碼的紙件圖像來起作用。該圖像筆的一個(gè)示例在圖21中示出。該圖案由Anoto 筆(AnotoInc生產(chǎn))用于確定筆在一張紙(或其它對(duì)位置編碼的介質(zhì))上的位置。
簡述
提供本概述來以簡化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概 念。本概述并不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于 幫助確定所要求保護(hù)的主題的范圍。
一種啟用嵌入式交互代碼的顯示器包括外部透明層、可任選的內(nèi)部透明層、 在外部透明層與內(nèi)部透明層之間的可任選的紅外反射層、在外部透明層與紅外反射 層之間的EIC點(diǎn)圖案、以及在外部透明層與紅外反射層或內(nèi)部透明層之間的可任 選的透明膠。該外部透明層和內(nèi)部透明層可以是玻璃、塑料或膜。EIC點(diǎn)圖案可以 被打印或印刷到外部透明層的內(nèi)側(cè)。EIC點(diǎn)圖案可包括標(biāo)識(shí)該啟用嵌入式交互代碼 的顯示器的已編碼表面標(biāo)識(shí)符。該已編碼表面標(biāo)識(shí)符可唯一地標(biāo)識(shí)該啟用嵌入式交互代碼的顯示器。 附圖簡述
當(dāng)結(jié)合附圖閱讀時(shí),可以更好地理解以上本發(fā)明的概述以及以下較佳實(shí)施例 的詳細(xì)描述,附圖作為示例而不是對(duì)本發(fā)明的局限被包括在內(nèi)。
圖1示出了可用于本發(fā)明的實(shí)施例的計(jì)算機(jī)的通用描述。
圖2A和2B示出了依照本發(fā)明的實(shí)施例的圖像捕捉系統(tǒng)和對(duì)應(yīng)的已捕捉圖像。
圖3A到3F示出了依照本發(fā)明的實(shí)施例的各種序列和折疊技術(shù)。 圖4A到4E示出了依照本發(fā)明的實(shí)施例的各種編碼系統(tǒng)。 圖5A到5D示出了與依照?qǐng)D4A和4B的編碼系統(tǒng)相關(guān)聯(lián)的四個(gè)可能的結(jié)果角。 圖6示出了依照本發(fā)明的實(shí)施例的已捕捉圖像部分的旋轉(zhuǎn)。 圖7示出了結(jié)合圖4A到4E的編碼系統(tǒng)使用的各個(gè)旋轉(zhuǎn)角度。 圖8示出了依照本發(fā)明的實(shí)施例用于確定已捕捉陣列的位置的過程。 圖9示出了依照本發(fā)明的實(shí)施例用于確定已捕捉圖像的位置的方法。 圖IO示出了依照本發(fā)明的實(shí)施例用于確定已捕捉圖像的位置的另一方法。 圖11示出了依照現(xiàn)有技術(shù)的文檔中的編碼空間的表示。 圖12示出了根據(jù)本發(fā)明的實(shí)施例的用于解碼從捕捉的圖像中提取的比特的流 程圖。
圖13示出了根據(jù)本發(fā)明的各實(shí)施例的啟用嵌入式交互代碼的顯示器。 圖14示出了紅外反射層可如何改善從啟用嵌入式交互代碼的顯示器捕捉的圖 像的質(zhì)量。
圖15示出了根據(jù)本發(fā)明的實(shí)施例的用于表示啟用嵌入式交互代碼的顯示器上 的一個(gè)比特的EIC符號(hào)的比特表示。
圖16示出了四種不同顏色的EIC圖案的一部分青色、洋紅、黃色和黑色。 圖17示出了根據(jù)本發(fā)明的實(shí)施例的用于編碼表面標(biāo)識(shí)符的系統(tǒng)的流程圖。 圖18示出了根據(jù)本發(fā)明的實(shí)施例的用于解碼表面標(biāo)識(shí)符的系統(tǒng)的流程圖。 圖19示出了根據(jù)本發(fā)明的實(shí)施例的表面標(biāo)識(shí)符編碼示例。 圖20示出了根據(jù)本發(fā)明的實(shí)施例的EIC符號(hào)的一個(gè)示例。
詳細(xì)描述如此處所使用的"筆"指的是可包括或不包括儲(chǔ)存墨水的能力的任何書寫工 具。在某些示例中,依照本發(fā)明的實(shí)施例,不儲(chǔ)存墨水能力的觸針可用做筆。如此處所使用的"照相機(jī)"指的是可從紙張或任何其它媒質(zhì)捕捉圖像的圖像 捕捉系統(tǒng)。週#微圖1是可用于實(shí)現(xiàn)本發(fā)明的各方面的常規(guī)通用數(shù)字計(jì)算環(huán)境的一個(gè)示例的功能框圖。在圖1中,計(jì)算機(jī)100包括處理單元110、系統(tǒng)存儲(chǔ)器120和將包括系統(tǒng) 存儲(chǔ)器的各種系統(tǒng)組件耦合到處理單元110的系統(tǒng)總線130。系統(tǒng)總線130可以是 若干類型總線結(jié)構(gòu)的任一種,包括存儲(chǔ)器總線和存儲(chǔ)器控制器、外圍總線以及使用 各種總線體系結(jié)構(gòu)的任一種的局部總線。系統(tǒng)存儲(chǔ)器120包括只讀存儲(chǔ)器(ROM) 140和隨機(jī)存取存儲(chǔ)器(RAM) 150?;据斎?輸出系統(tǒng)160 (BIOS)包含如在啟動(dòng)時(shí)幫助在計(jì)算機(jī)100中的元件 之間傳輸信息的基本例程,儲(chǔ)存在ROM 140中。計(jì)算機(jī)100也包括用于對(duì)硬盤(未 示出)進(jìn)行讀寫的硬盤驅(qū)動(dòng)器170、用于對(duì)可移動(dòng)磁盤190進(jìn)行讀寫的磁盤驅(qū)動(dòng)器 180、以及用于對(duì)諸如CD ROM或其它光媒質(zhì)等可移動(dòng)光盤192進(jìn)行讀寫的光盤驅(qū) 動(dòng)器191。硬盤驅(qū)動(dòng)器170、磁盤驅(qū)動(dòng)器180和光盤驅(qū)動(dòng)器191分別由硬盤驅(qū)動(dòng)器 接口 192、磁盤驅(qū)動(dòng)器接口 193和光盤驅(qū)動(dòng)器接口 194連接到系統(tǒng)總線130。驅(qū)動(dòng) 器及其關(guān)聯(lián)的計(jì)算機(jī)可讀媒質(zhì)為個(gè)人計(jì)算機(jī)100提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié) 構(gòu)、程序模塊和其它數(shù)據(jù)的非易失存儲(chǔ)。本領(lǐng)域的技術(shù)人員可以理解,在示例操作 環(huán)境中也可使用可儲(chǔ)存可由計(jì)算機(jī)訪問的數(shù)據(jù)的其它類型的計(jì)算機(jī)可讀媒質(zhì),如磁 帶盒、閃存卡、數(shù)字視頻盤、貝努利盒式磁帶、隨機(jī)存取存儲(chǔ)器(RAM)、只讀 存儲(chǔ)器(ROM)等等。眾多程序模塊可儲(chǔ)存在硬盤170、磁盤190、光盤192、 ROM 140或RAM 150 中,包括操作系統(tǒng)195、 一個(gè)或多個(gè)應(yīng)用程序196、其它程序模塊197和程序數(shù)據(jù) 198。用戶可通過輸入設(shè)備,如鍵盤101和定位設(shè)備102向計(jì)算機(jī)100輸入命令和 信息。其它輸入設(shè)備(未示出)可包括麥克風(fēng)、操縱桿、游戲墊、圓盤式衛(wèi)星天線、 掃描儀等等。這些和其它輸入設(shè)備通常通過耦合到系統(tǒng)總線的串行端口接口連接到 處理單元110,但也可通過其它接口連接,如并行端口、游戲端口和通用串行總線 (USB)。此外,這些設(shè)備可通過適當(dāng)?shù)慕涌?(未示出)直接耦合至系統(tǒng)總線130。 監(jiān)視器107或其它類型的顯示設(shè)備也通過接口 ,如視頻適配器108連接到系統(tǒng)總線130。除監(jiān)視器之外,個(gè)人計(jì)算機(jī)通常包括其它外圍輸出設(shè)備(未示出),如揚(yáng)聲器或打印機(jī)。在一個(gè)較佳的實(shí)施例中,提供了筆數(shù)字化儀165和所附的筆或觸針 166,以便數(shù)字地捕捉手畫線輸入。盡管示出了筆數(shù)字化儀165和串行端口之間的 直接連接,然而實(shí)際上,筆數(shù)字化儀165可以通過并行端口或其它接口和系統(tǒng)總線 B0直接耦合到處理單元110,這在本領(lǐng)域中是己知的。此外,盡管示出數(shù)字化儀 165與監(jiān)視器107分離,然而較佳的是數(shù)字化儀165的可用輸入?yún)^(qū)域可與監(jiān)視器107 的顯示區(qū)域有相同的范圍。此外,數(shù)字化儀165可被集成到監(jiān)視器107中,或可作 為單獨(dú)的設(shè)備疊加或附加在監(jiān)視器107上。計(jì)算機(jī)100可在使用到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī),如遠(yuǎn)程計(jì)算機(jī)109的邏輯連 接的網(wǎng)絡(luò)化環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)109可以是服務(wù)器、路由器、網(wǎng)絡(luò)PC、對(duì)等 設(shè)備或其它公用網(wǎng)絡(luò)節(jié)點(diǎn),并通常包括上述涉及計(jì)算機(jī)100的許多或所有元件,盡 管圖1中僅示出了存儲(chǔ)器存儲(chǔ)設(shè)備111。圖1所描述的邏輯連接包括局域網(wǎng)(LAN) 112和廣域網(wǎng)(WAN) 113。這類網(wǎng)絡(luò)環(huán)境常見于辦公室、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、 內(nèi)聯(lián)網(wǎng)和因特網(wǎng)。當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時(shí),計(jì)算機(jī)100通過網(wǎng)絡(luò)接口或適配器114連接到 局域網(wǎng)112。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中使用時(shí),個(gè)人計(jì)算機(jī)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)境中, 相對(duì)個(gè)人計(jì)算機(jī)100所描述的程序模塊或其部分可儲(chǔ)存在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。可以理解,所示的網(wǎng)絡(luò)連接是說明性的,可以使用在計(jì)算機(jī)之間建立通信鏈 路的其它技術(shù)。假定存在各種公知協(xié)議的任一種,如TCP/IP、以太網(wǎng)、FTP、 HTTP、 藍(lán)牙、IEEE 802.llx等等,系統(tǒng)可在客戶機(jī)一服務(wù)器配置中操作,以準(zhǔn)許用戶從基 于web的服務(wù)器檢索網(wǎng)頁??墒褂酶鞣N常規(guī)web瀏覽器的任一種來顯示并操作網(wǎng) 頁上的數(shù)據(jù)。房像縦著本發(fā)明的各方面包括將已編碼的數(shù)據(jù)流置于表示該已編碼的數(shù)據(jù)流的顯示形 式(例如,如后文參考圖4B所討論的,已編碼數(shù)據(jù)流用于創(chuàng)建圖形圖案)。顯示 形式可以是印刷的紙張(或其它物理介質(zhì)),或可以是結(jié)合另一圖像或圖像集來投 影已編碼數(shù)據(jù)流的顯示屏。例如,已編碼數(shù)據(jù)流可被表示為紙張上的物理圖形圖像 或疊加在顯示的圖像(如表示文檔的文本)上的圖形圖像,或可以是顯示屏上的物理(不可修改)圖形圖像(因此,由筆捕捉的任何圖像部分都位于該顯示屏上)。 已捕捉圖像的位置的確定可用于確定用戶與紙張、介質(zhì)或顯示屏交互的位置。 在本發(fā)明的某些方面,筆可以是在紙張上書寫的墨水筆。在其它方面,筆可以是用 戶在計(jì)算機(jī)顯示屏的表面上書寫的觸針。交互活動(dòng)可返回給已知文檔上的已編碼圖像或支持計(jì)算機(jī)屏幕上的顯示文檔系統(tǒng)。通過當(dāng)筆或觸針遍歷文檔時(shí)用筆或觸針中 的照相機(jī)重復(fù)地捕捉圖像,系統(tǒng)可跟蹤由用戶操縱的觸針的移動(dòng)。顯示的或印刷的 圖像可以是與空白或內(nèi)容豐富紙張相關(guān)聯(lián)的水印,或可以是與疊加在屏幕上或內(nèi)建 到屏幕中的顯示圖像或固定編碼相關(guān)聯(lián)的水印。圖2A和2B示出了具有照相機(jī)203的筆201的一個(gè)說明性示例。筆201包括 筆尖202,它可包括或不包括墨水貯液器。照相機(jī)203從表面207捕捉圖像204。 筆201還可包括另外的傳感器和/或處理器,如由虛線框206所表示的。這些傳感 器和/或處理器206也可包括向另一筆201和/或個(gè)人計(jì)算機(jī)發(fā)送信息的能力(例如, 通過藍(lán)牙或其它無線協(xié)議)。圖2B表示由照相機(jī)203察看的圖像。在一個(gè)說明性示例中,照相機(jī)203的可 見區(qū)(即,照相機(jī)的圖像傳感器的分辨率)是32X32像素(其中,N=32)。在一 個(gè)實(shí)施例中,已捕捉圖像(32像素X32像素)對(duì)應(yīng)于由照相機(jī)203捕捉的表面平 面的約5mmX5mm的區(qū)域。因此,圖2B示出了 32像素長X32像素寬的可見區(qū)。 N的大小是可調(diào)節(jié)的,使得較大的N對(duì)應(yīng)于更高的圖像分辨率。而且,盡管此處 為說明目的,示出照相機(jī)203的可見區(qū)是正方形,然而,本領(lǐng)域中已知,可見區(qū)可 包括其它形狀。由照相機(jī)203捕捉的圖像可被定義為圖像幀序列(IJ,其中,Ii由筆201在采 樣時(shí)刻^捕捉。采樣率可大可小,取決于系統(tǒng)配置和性能要求。已捕捉圖像幀的大 小可大可小,取決于系統(tǒng)配置和性能要求。由照相機(jī)203捕捉的圖像可由處理系統(tǒng)直接使用,或可經(jīng)歷預(yù)過濾。這一預(yù) 過濾可在筆201中發(fā)生,或可在筆201之外發(fā)生(例如,在個(gè)人計(jì)算機(jī)中)。圖2B的圖像大小是32X32像素。如果每一編碼單元大小是3X3像素,則已 捕捉的已編碼單元的數(shù)量約為IOO單元。如果編碼單元大小是5X5像素,則已捕 捉的已編碼單元的數(shù)量約為36單元。圖2a也示出了圖像平面209,在其上形成來自位置204的圖案的圖像210。 從對(duì)象平面207的圖案接收的光可由透鏡208聚焦。透鏡208可以是單個(gè)透鏡或多 部件透鏡系統(tǒng),但是為簡明起見,在此處表示為單個(gè)透鏡。圖像捕捉傳感器211捕捉圖像210。圖像傳感器211可以足夠大來捕捉圖像210??蛇x地,圖像傳感器211可以足 夠大來捕捉位置212處的筆尖202的圖像。僅供參考,位置212處的圖像被稱為虛 擬筆尖。注意,由于筆尖、透鏡208和圖像傳感器211之間的恒定關(guān)系,相對(duì)于圖 像傳感器211的虛擬筆尖位置是固定的。以下變換&^將由照相機(jī)捕捉的圖像中的位置坐標(biāo)轉(zhuǎn)換成紙張上的真實(shí)圖像的位置坐標(biāo)-Z紙張二^^—P(Z傳感器)在書寫的過程中,筆尖和紙張?jiān)谕黄矫嫔稀R虼?,從虛擬筆尖到真實(shí)筆尖的變換也是i^p:Z筆尖=^^—PC^虛擬筆尖)變換^^可被估算為逼近F"p的仿射變換<formula>formula see original document page 9</formula>其中,《,《,、和 是在位置204處捕捉的圖案的兩個(gè)方向的旋轉(zhuǎn)和比例。 此外,可通過將已捕捉圖像與紙張上對(duì)應(yīng)的真實(shí)圖像進(jìn)行匹配來細(xì)化《^。"細(xì) 化"指通過被稱為遞歸方法的一種類型的優(yōu)化算法來獲取變換&^的更精確的估 算。該遞歸方法將矩陣《^作為初始值來處理。經(jīng)細(xì)化的估算更精確地描述了 S和P之間的轉(zhuǎn)換。下一步,可通過校準(zhǔn)來確定虛擬筆尖的位置。將筆尖202置于紙張上的固定位置i^^上。接著擺動(dòng)該筆,從而允許照相機(jī) 203用不同的筆姿勢(shì)來捕捉一系列圖像。對(duì)于捕捉到的每一圖像,可獲得變換F,^ 。 從該變換,可獲得虛擬筆尖的位置Z^^^Z虛擬筆尖=S(Z筆尖)其中,z筆尖被初始化為(o,o),并且通過對(duì)從每一圖像獲得的^w^求平均值,可確定虛擬筆尖的位置;w,。采 用丄M,《,可獲得丄^^的更準(zhǔn)確的估算。在若干次迭代之后,可確定虛擬筆尖的準(zhǔn)^^^^胃Z虛擬筆尖。虛擬筆尖的位置現(xiàn)在已知。也可從捕捉的圖像獲得變換F,^。最后:可使用該信息來確定真實(shí)筆尖的位置<formula>formula see original document page 10</formula>可通過折疊一維序列來構(gòu)造二維陣列。包含足夠多數(shù)量比特的二維陣列的任 何部分可用于確定其在整個(gè)二維陣列中的位置。然而,有必要從一個(gè)已捕捉的圖像 或幾個(gè)已捕捉的圖像確定位置。為將已捕捉的圖像部分與二維陣列中的兩個(gè)或多個(gè) 位置相關(guān)聯(lián)的概率最小化,可使用一非重復(fù)序列來創(chuàng)建該陣列。所創(chuàng)建的序列的一 個(gè)屬性是該序列不在一段長度(或窗)"上重復(fù)。下文描述了一維序列的創(chuàng)建,隨 后將序列折疊成陣列。序列構(gòu)造數(shù)字序列可用做編碼系統(tǒng)的起始點(diǎn)。例如,序列(也稱為m序列)可被表示 為域F《中的《元素集。此處,《=p",其中,"21,并且p是質(zhì)數(shù)。序列或m序 列可通過各種不同的技術(shù)來生成,包括但不限于,多項(xiàng)式除法。使用多項(xiàng)式除法, 序列可被定義如下其中,《(x)是在域^[;c](具有《"個(gè)元素)中n次的本原多項(xiàng)式。i ,(x)是域F,W 中/次(其中,的非零多項(xiàng)式。序列可使用一迭代過程來創(chuàng)建,它具有兩個(gè) 步驟首先,將兩個(gè)多項(xiàng)式相除(得到域i^中的一個(gè)元素),其次,將余項(xiàng)乘以 X。當(dāng)輸出開始重復(fù)時(shí),停止計(jì)算。該過程可使用一線性反饋移位寄存器來實(shí)現(xiàn), 如Douglas W.Clark禾卩Lih-Jvh Weng的文章"Maximal and Near-Maximal Shift Register Sequences: Efficient Event Counters and Easy Discrete Logarithms (最大禾口近 最大移位寄存器序列有效的事件寄存器和簡單的離散對(duì)數(shù))"中所描述的,該文 發(fā)表在IEEE計(jì)算機(jī)學(xué)報(bào)43.5 (IEEE Transactions on Computers 43.5 ) (1994年5 月,560-568頁)上。在這一實(shí)施例中,在序列的循環(huán)移位和多項(xiàng)式i ,(x)之間建立一種關(guān)系改變及,(;c)僅對(duì)該序列循環(huán)移位,并且每次循環(huán)移位對(duì)應(yīng)于一個(gè)多項(xiàng)式 i ,(x)。所得的序列的一個(gè)性質(zhì)是,該序列具有《"-l的周期,并且在一個(gè)周期內(nèi),在寬度(或長度)"上,任何部分在該序列中存在一次且僅一次。這被稱為"窗特 性"。周期《"-l也被稱為序列的長度,"被稱為序列的階。在此處的實(shí)現(xiàn)中,《被 選為2。上述過程僅是可用于創(chuàng)建具有窗特性的序列的各種過程的其中一個(gè)。陣列構(gòu)造可用于創(chuàng)建圖像(其一部分可由照相機(jī)捕捉)的陣列(或m陣列)是一維序 列或m序列的擴(kuò)展。設(shè)^為周期(附!, m2)的陣列,即J(A+mt, /)^(A, /+附2)^4(& /)。 當(dāng) XW2的窗通過^的周期移位時(shí),i^上所有的非零 Xw2矩陣出現(xiàn)一次且僅一 次。這一特性也被稱為"窗特性",因?yàn)槊恳淮笆俏ㄒ坏?。窗然后可被表達(dá)為周期 (W,m2)和階("!,"2)的陣列(w和m2是陣列中存在的水平和垂直比特?cái)?shù))可通過折疊序列來構(gòu)造二進(jìn)制陣列(或m陣列)。 一種方法是獲得序列,然 后將其折疊成大小為^X附2,其中,該陣列的長度為i^m!Xw^2n-l??蛇x地,可 以想要覆蓋的空間的預(yù)定大小開始(例如, 一張紙、30張紙,或計(jì)算機(jī)監(jiān)視器的 大小),確定區(qū)域(叫X附2),然后使用該尺寸以使2^/^x附2,其中,Z=2n-1??墒褂酶鞣N不同的折疊技術(shù)。例如,圖3A到圖3C示出了三個(gè)不同的序列。 其每一個(gè)可被折疊成如圖3D所示的陣列。這三個(gè)不同的折疊方法被示出為圖3D 中的覆蓋圖,以及圖3E和3F中的光柵路徑。采用圖3D所示的折疊方法。為創(chuàng)建如圖3D所示的折疊方法,創(chuàng)建長度為丄且階為w的序列{",}。下一步, 通過使陣列的每一比特按以下公式1計(jì)算,從序列{化}創(chuàng)建大小為m,Xm2的陣列 {&/},其中,gcd(m1;附2)=1,并且丄=附1乂附2:^t尸A, 其中,mod(m0, /=f mod(m2), —0,…工-l。 (1)該折疊方法可被可選地表達(dá)為將序列放置在陣列的對(duì)角線上,然后當(dāng)達(dá)到邊 時(shí)從對(duì)邊開始繼續(xù)。圖4A示出了可用于對(duì)圖3D的陣列進(jìn)行編碼的示例編碼技術(shù)??梢岳斫?,也 可使用其它編碼技術(shù)。例如,圖ll示出了一個(gè)替換編碼技術(shù)。參考圖4A,第一比特401 (例如,"1")由深色墨水的列來表示。第二比特 402 (例如,"0")由深色墨水的行來表示。可以理解,可使用任何顏色的墨水來 表示各種比特。對(duì)所選擇的墨水顏色的唯一要求是它提供了與介質(zhì)的背景的顯著對(duì) 比,以便可由圖像捕捉系統(tǒng)來區(qū)分。圖4A中的比特由單元的3X3的矩陣來表示。 該矩陣的大小可被修改成任何大小,如基于圖像捕捉系統(tǒng)的大小和分辨率。比特O和1的替換表示在圖4C-4E中示出。可以理解,圖4A-4E的示例編碼的1或0的 表示可以交換,而沒有任何影響。圖4C以隔行排列示出了占據(jù)兩行或兩列的比特 表示。圖4D以虛線形式示出了行和列中的像素的替換排列。最后,圖4E以不規(guī) 則間隔格式(例如,兩個(gè)深色點(diǎn)之后為一個(gè)空白點(diǎn))示出了列和行中的像素表示。再次參考圖4A,如果比特由3X3的矩陣表示,并且成象系統(tǒng)檢測(cè)到3X3區(qū) 域中的一個(gè)深色行和兩個(gè)空白行,則檢測(cè)到0 (或l)。如果檢測(cè)到圖像具有一個(gè) 深色列和兩個(gè)空白列,則檢測(cè)到l (或0)。此處,使用了一個(gè)以上像素或點(diǎn)來表示一個(gè)比特。使用單個(gè)像素(或點(diǎn))來 表示一個(gè)比特是脆弱的?;覊m、紙張中的折痕、不平坦表面等等會(huì)造成讀取數(shù)據(jù)單 元的單個(gè)比特表示的困難。然而,可以理解,可使用不同的方法來圖形地表示表面 上的陣列。某些方法在圖4C到4E中示出??梢岳斫?,也可使用其它方法。 一種 方法在圖11中僅使用間隔移位的點(diǎn)來描述。使用比特流來創(chuàng)建圖4B的圖形圖案403。圖形圖案403包括12行和18列。行和列由比特流形成,該比特流使用比特表示401和402被轉(zhuǎn)化成圖形表示。圖4B可被視為具有以下比特表示 <formula>formula see original document page 12</formula>解碼當(dāng)一個(gè)人用圖2A的筆書寫時(shí),或?qū)⒐P移動(dòng)到靠近已編碼的圖案時(shí),照相機(jī)捕 捉圖像。例如,當(dāng)筆201被壓向紙張時(shí),且筆201遍歷紙張上的文檔時(shí),筆201 可使用壓力傳感器。然后處理圖像來確定已捕捉的圖像相對(duì)于已編碼圖像的完整表 示的方向,并提取構(gòu)成已捕捉圖像的比特。為了確定己捕捉圖像相對(duì)于整個(gè)已編碼區(qū)域的方向,可注意到,并非圖5A-5D 所示的所有四個(gè)可想象的角在圖形圖案403中都存在。實(shí)際上,采用了正確的方向, 圖5A所示的角的類型無法在圖形圖案403中存在。因此,缺少圖5A所示的角類 型的方向是正確的方向。繼續(xù)到圖6,可分析由照相機(jī)601捕捉的圖像,并確定其方向,以便可對(duì)由圖 像601實(shí)際表示的位置進(jìn)行解釋。首先,審閱圖像601以確定旋轉(zhuǎn)該圖像使得像素在水平和垂直上對(duì)齊所需的角度^。注意,替換的網(wǎng)格對(duì)齊也是可能的,包括底層 網(wǎng)格到非水平和垂直排列(如,45度)的旋轉(zhuǎn)。使用非水平和垂直排列可提供消 除來自用戶的視覺分心的可能益處,因?yàn)橛脩敉谄渌鼒D案之前注意到水平和垂 直圖案。為簡明目的,網(wǎng)格的方向(水平和垂直,以及底層網(wǎng)格的任何其它旋轉(zhuǎn)) 被總稱為預(yù)定義網(wǎng)格方向。下一步,分析圖像601以確定缺少了那個(gè)角。將圖像601旋轉(zhuǎn)到可用于解碼 的圖像603所需的旋轉(zhuǎn)量0被示出為0=(^加上旋轉(zhuǎn)量{由缺少哪個(gè)角來定義})。該 旋轉(zhuǎn)量由圖7中的公式示出。再次參考圖6,首先通過像素的布局來確定角度^, 以到達(dá)像素的水平和垂直(或其它預(yù)定義網(wǎng)格方向)排列,并且如602所示地旋轉(zhuǎn) 圖像。然后進(jìn)行分析以確定缺少的角,并且將圖像602旋轉(zhuǎn)到圖像603,以建立用 于解碼的圖像。此處,圖像被逆時(shí)針旋轉(zhuǎn)90度,使得圖像603具有正確的方向, 并可用于解碼??梢岳斫猓D(zhuǎn)角度P可在圖像601的旋轉(zhuǎn)之前或之后應(yīng)用,以考慮丟失的角。 也可理解,通過考慮已捕捉圖像中的噪聲,所有四個(gè)類型的角都可存在。可計(jì)算每 一類型的角的數(shù)量,并選擇具有最少數(shù)量的類型作為所缺少的角類型。最后,讀出圖像603中的代碼,并將其與用于創(chuàng)建圖像403的原始比特流相 關(guān)。相關(guān)可以眾多方式執(zhí)行。例如,它可通過遞歸方式執(zhí)行,其中,將恢復(fù)的比特 流與原始比特流內(nèi)的所有其它比特流片段進(jìn)行比較。其次,可在恢復(fù)的比特流和原 始比特流之間執(zhí)行統(tǒng)計(jì)分析,例如使用兩個(gè)比特流之間的漢明距離來執(zhí)行??梢岳?解,可使用各種方法來確定恢復(fù)的比特流在原始比特流中的位置。如將討論的,EIC圖案分析從圖像603獲得恢復(fù)的比特。 一旦得到了恢復(fù)的比 特,需要在原始陣列(例如,圖4B所示的)中查找已捕捉圖像。確定比特分段在 整個(gè)陣列中的位置的這一過程可被若干項(xiàng)目變得更復(fù)雜。首先,可遮蔽要被捕捉的 實(shí)際比特(例如,照相機(jī)可捕捉具有遮蔽原始代碼的手寫體的圖像)。其次,灰塵、 折痕、反射等等也可在已捕捉圖像中弓I入誤差。這些誤差可令查找過程變得更困難。 在這一點(diǎn)上,圖像捕捉系統(tǒng)可能需要用從該圖像提取的非順序比特來運(yùn)作。下文示 出了用來自圖像的非順序比特來操作的方法。設(shè)序列(或m序列)I對(duì)應(yīng)于冪級(jí)數(shù)/Oc)=l/P (;c),其中,M是m序列的階, 并且已捕捉的圖像包含Ib-( ^ 62…^—,)t的《個(gè)比特,其中《2",并且上標(biāo)f 表示矩陣或向量的轉(zhuǎn)置。《個(gè)比特的位置s正好是I的循環(huán)移位的次數(shù),使得& 被移位到序列的起始。然后,該移位的序列R對(duì)應(yīng)于冪級(jí)數(shù)xVP"(;c),即11=7*(1),其中r是循環(huán)移位算子。間接地找出這一S。多項(xiàng)式的模數(shù)P"X)形成了一個(gè)域。確 保?三r。 + ^c +…r"—,x"mod(尸"(;c》。因此,可找出(>0,。,…,r"》,并解s。關(guān)系式?三r。十^c +… ;—,Jc"-'mod(尸"(;c》隱含R^)+nr(I)+…+^!:T1(1)。以二元 線性方程寫出,變?yōu)镽=r" (2)其中,r=(r0。r2…r"-,)',并且A-(ir(i)…r1(1))、它包括i從o移位到("-i)移位的循環(huán)移位。現(xiàn)在在R中僅稀少的《個(gè)比特可用于解r。設(shè)R中&和6。之間 的下標(biāo)差為&, /=1,2,…,A-1,則R的第1個(gè)和化+l)個(gè)元素(/=1,2,…,A-1)正 好是^^,…,6w。通過選擇A的第1列和第化.+l)列,/=1,2,…,A-1,形成以下二 元線性方程bW'M (3) 其中,M是A的wX《子矩陣。如果b是無誤差的,則r的解可被表示為r、冊(cè)-1 (4) 其中,M是M的任何非退化wX"子矩陣,S是b的對(duì)應(yīng)的子向量。 已知r,可4吏用Douglas W.Clark和Lih陽Jyh Weng的"Maximal and Near-Maximal Shift Register Sequences: Efficient Event Counters and Easy Discrete Logarithms (最大 和近最大移位寄存器序列有效的事件計(jì)數(shù)器和簡單的離散對(duì)數(shù))",IEEE計(jì)算 機(jī)學(xué)報(bào)43.5 (IEEE Transactions on Computers 43.5) (1994年5月,560-568頁) 中描述的Pohlig-Helhnan-Silver算法來找出s,使得? e r。 + ^ +…/^x"-1 mod(SO))。由于矩陣A (其大小為wX丄,其中,Z=2"-l)可能是非常大的,應(yīng)當(dāng)避免儲(chǔ) 存整個(gè)矩陣A。實(shí)際上,如可從上述過程中所見到的,給定其下標(biāo)差為&的提取的 比特,僅A的第一和第"+l)列與計(jì)算相關(guān)。給定已捕捉圖像的大小,^的這種選 擇是相當(dāng)有限的。由此,僅計(jì)算中涉及的那些列需要被保存。這些列的總數(shù)遠(yuǎn)小于 丄(其中,丄=2"-1是m序列的長度)。鄉(xiāng)如果在b中有誤差,則r的解法變得更復(fù)雜。帶有糾錯(cuò)的解碼的傳統(tǒng)方法并 不能容易地應(yīng)用,因?yàn)榕c已捕捉比特相關(guān)聯(lián)的矩陣M可在已捕捉的圖像之間變化。采用一種隨機(jī)方法。假定b中的誤差比特?cái)?shù) 與K相比相對(duì)較小,則從b的 《個(gè)比特中選擇正確的《個(gè)比特并且M的對(duì)應(yīng)子矩陣M為非退化的概率較高。當(dāng)所選擇的w個(gè)比特都正確時(shí),W和一M之間的漢明距離,或與r相關(guān)聯(lián)的 誤差比特?cái)?shù)應(yīng)當(dāng)最小,其中,r通過公式(4)來計(jì)算。重復(fù)該過程若干次,標(biāo)識(shí) 出導(dǎo)致最小誤差比特的正確的r是可能的。如果僅有一個(gè)r與最小誤差比特?cái)?shù)相關(guān)聯(lián),則它可被看作是正確的解。否則, 如果有一個(gè)以上r與最小誤差比特?cái)?shù)相關(guān)聯(lián),則"e超出由M生成的代碼的糾錯(cuò)能 力的概率是相當(dāng)高的,并且解碼過程失敗。系統(tǒng)然后可繼續(xù)處理下一已捕捉的圖像。 在另一實(shí)現(xiàn)中,可考慮關(guān)于筆的先前位置的信息。即,對(duì)于每一已捕捉的圖像,可 標(biāo)識(shí)其中接下來期望筆的目的地區(qū)域。例如,如果用戶在由照相機(jī)捕捉的兩個(gè)圖像 之間為提起筆,則由第二次圖像捕捉所確定的該筆的位置應(yīng)當(dāng)不會(huì)太遠(yuǎn)離第一個(gè)位 置。然后可檢查與最小誤差比特?cái)?shù)相關(guān)聯(lián)的每一r,來看從r計(jì)算的位置s是否滿 足局部約束,即,該位置是否在指定的目的地區(qū)域內(nèi)。如果位置"薛足局部約束,則返回陣列中的所提取的比特的X, Y位置。如果 不是,則解碼過程失敗。圖8描述了可用于確定序列(或m序列)中已捕捉圖像的位置的過程。首先, 在步驟801,接收涉及已捕捉圖像的數(shù)據(jù)流。在步驟802,從A中提取對(duì)應(yīng)的列, 并構(gòu)造矩陣M。在步驟803,從矩陣M中隨機(jī)地選擇w個(gè)不相關(guān)的列向量,并通過解方程式 (4)來確定向量r。在步驟804,該過程被執(zhí)行g(shù)次(例如,100次)。循環(huán)次數(shù) 的確定在"循環(huán)次數(shù)計(jì)算" 一節(jié)中討論。在步驟805,依照其相關(guān)聯(lián)的誤差比特?cái)?shù)來對(duì)r進(jìn)行排序。排序可使用本領(lǐng)域 中已知的各種排序算法來完成。例如,可使用選擇排序算法。選擇排序算法在數(shù)字 2不大時(shí)是有益的。然而,如果2變得非常大,則可使用更有效地處理大量項(xiàng)的 其它排序算法(例如,合并排序)。系統(tǒng)然后在步驟806通過檢查是否有多個(gè)r與最小誤差比特?cái)?shù)相關(guān)聯(lián),來確 定是否成功地執(zhí)行了糾錯(cuò)。如果有多個(gè)r,則在步驟809返回誤差,指示解碼過程 失敗。如果沒有多個(gè)r,則在步驟807計(jì)算提取的比特在序列(或w序列)中的位 置,例如,通過使用Pohig-hellman-Silver算法來計(jì)算。下一步,計(jì)算陣列中的(X,Y)位置如下X=modm!,并且;;^modm2,并在 步驟808返回結(jié)果。泣置嫁定圖9示出了用于確定筆尖的位置的過程。輸入是由照相機(jī)捕捉的圖像,輸出 可以是筆尖的位置坐標(biāo)。而且,輸出可包括(或不包括)其它信息,如已捕捉圖像 的旋轉(zhuǎn)角度。在步驟901,從照相機(jī)接收?qǐng)D像。下一步,在步驟902可任選地預(yù)處理所接收 的圖像(如由步驟902的虛線框所示),以調(diào)整亮和暗像素之間的對(duì)比度等等。下一步,在步驟903,分析該圖像以確定其中的比特流。下一步,在步驟904,多次從比特流中隨機(jī)地選擇M個(gè)比特,并確定接收的比 特流在原始序列(或m序列)中的位置。最后, 一旦在步驟904確定了已捕捉圖像的位置,可在步驟905確定筆尖的 位置。圖10給出了關(guān)于903和904的更多細(xì)節(jié),并示出了提取已捕捉圖像內(nèi)的比特 流的方法。首先,在步驟1001從照相機(jī)接收?qǐng)D像。然后在步驟1002,該圖像可任 選地經(jīng)歷圖像預(yù)處理(如由步驟1002的虛線所示的)。在步驟1003提取圖案。此 處,可提取各線上的像素以找出圖案的方向和角度P。下一步,在步驟1004分析接收的圖像,以確定底層的網(wǎng)格線。如果在步驟1005 找到網(wǎng)格線,則在步驟1006從圖案中提取代碼。然后在步驟1007對(duì)該代碼進(jìn)行解 碼,并在步驟1008確定筆尖位置。如果在步驟1005沒有找到網(wǎng)格線,則在步驟 1009返回錯(cuò)誤。潛虔練礙辦條微鰣采用如圖12所示的本發(fā)明的實(shí)施例,給定從所捕捉的圖像中提取的比特1201 (對(duì)應(yīng)于所捕捉的陣列)和目的地區(qū)域,m-陣列解碼和糾錯(cuò)過程的變體解碼X、 Y 位置。圖12示出了該增強(qiáng)方法的過程1200的流程圖。過程1200包括兩個(gè)組成部 分1251和1253。 解碼一次。組成部分1251包括三部分。> 隨機(jī)比特選擇隨機(jī)地選擇被提取比特1201的子集(步驟1203)> 解碼該子集(步驟1205)> 使用局部約束確定X、 Y位置(步驟1209) 使用智能比特選擇來解碼。組成部分1253包括四部分。> 智能比特選擇選擇被提取比特的另一個(gè)子集(步驟1217)> 解碼該子集(步驟1219)> 調(diào)整步驟1217和步驟1219迭代的次數(shù)(循環(huán)次數(shù))(步驟1221)> 使用局部約束確定X、 Y位置(步驟1225)本發(fā)明的實(shí)施例利用了一種謹(jǐn)慎策略,依照局部約束來選擇比特、調(diào)整循環(huán)次 數(shù)和確定X、 Y位置(位置坐標(biāo)),所述局部約束被提供給過程1200。在組成部 分1251和1253中,步驟1205和1219 ("解碼一次")都使用方程(4)來計(jì)算r。設(shè)6為被解碼的比特,艮卩6'=r(M (5)b和6之間的差別是與r相關(guān)聯(lián)的誤差比特。圖12示出了依照本發(fā)明的實(shí)施例,用于解碼從所捕捉的圖像中提取的比特 1201的過程1200的流程圖。程序1200包含組成部分1251和1253。組成部分1251 取得與所捕捉的圖像(對(duì)應(yīng)于所捕捉的陣列)相關(guān)聯(lián)的提取比特1201 (包含《比 特)。在步驟1203中,從提取比特1201中隨機(jī)地選擇w比特(其中w是m-陣列 的階數(shù))。在步驟1205中,過程1200解碼一次并計(jì)算r。在步驟1207中,過程 1200確定對(duì)b是否檢測(cè)到誤差比特。如果步驟1207確定沒有誤差比特,則在步驟 1209中確定所捕捉陣列位置的X、 Y坐標(biāo)。對(duì)于步驟1211,如果X、 Y坐標(biāo)滿足 局部約束,S卩,坐標(biāo)在目的地區(qū)域內(nèi),則過程1200在步驟1213中提供X、 Y位置 (諸如給另一個(gè)過程或用戶接口)。否則,步驟1215提供失敗指示。如果步驟1207檢測(cè)到b中的誤差比特,為了在誤差比特存在的情況下解碼, 就執(zhí)行組成部分1253。步驟1217從所提取的比特1201中選擇另一組w比特(它 與步驟1203中選擇的"比特至少相差一個(gè)比特)。步驟1221和1223確定為了解 碼所提取的比特所需要迭代的次數(shù)(循環(huán)次數(shù))。步驟1225通過測(cè)試在步驟1219 中獲取的哪些候選者滿足局部約束來確定所捕捉陣列的位置。將更詳細(xì)地討論步驟 1217—1225。智能比特選擇步驟1203從所提取比特1201 (具有《個(gè)比特)中隨機(jī)地選擇"比特,并求出 n。可使用方程(5)來計(jì)算被解碼的比特。設(shè)/1=|^^{1,2,...,火}|^=&}, A = {1, 2,…,/0 I h - W ,其中&是6的第k個(gè)比特,A = {^| A: e }且g = & I A: e A }, 即,A是解碼結(jié)果與原始比特相同的比特,且耳是解碼結(jié)果與原始比特不同的比 特,h和L是這些比特相應(yīng)的下標(biāo)。應(yīng)該理解,當(dāng)從A中選擇任意M個(gè)獨(dú)立的比 特時(shí),將獲得相同的A。因此,如果不仔細(xì)選擇接下來的"個(gè)比特,所選擇的比特 可能是5,的子集,這會(huì)導(dǎo)致獲得相同的r,。為了避免這樣的情況,步驟1217依照以下的過程選擇下w個(gè)比特 從gl303中選擇至少一個(gè)比特,其余的比特隨機(jī)地從Bi1301和g 1303中選出,如對(duì)應(yīng)于比特排列1351的圖13所示。接著過程1200通過計(jì)算^=1"2(]\12 得出1*2,并找出52 1305、 1309和互2 1307、 1311。重復(fù)步驟l。當(dāng)對(duì)每個(gè)^力'=1,2,3...,義-1,其中義是當(dāng)前循環(huán)數(shù)目),選擇下w 個(gè)比特時(shí),至少有一個(gè)比特是從g中選出的。當(dāng)沒有這樣的比特子集可被選 擇或達(dá)到循環(huán)次數(shù)時(shí),該迭代終止。使用糾錯(cuò)組成部分1253,在每次循環(huán)后調(diào)整所需迭代次數(shù)(循環(huán)次數(shù))。由 期望的誤差率來確定循環(huán)次數(shù)。其中并非所有被選擇的"比特都是正確的期望誤差其中"表示循環(huán)次數(shù),它由一個(gè)常數(shù)初始化,《是從所捕捉陣列中提取的比特 的數(shù)目,ne表示在過程1200的迭代期間出現(xiàn)的最小數(shù)目的誤差比特,w是m-陣列 的階數(shù),且^是組合的數(shù)目,其中M比特是從《比特中選取的。在該實(shí)施例中,我們希望Pe小于e—5 =0.0067。與(6)結(jié)合,我們得到率Pe是:伊麟辦練束嫁定AT、 r泣置在步驟1209和1225中,被解碼的位置應(yīng)該在目的地區(qū)域內(nèi)。所述目的地區(qū)域是算法的輸入,且根據(jù)不同的應(yīng)用,它可以是各種尺寸和位置,或簡單地是整個(gè)附-陣列。 一般地,它可以由應(yīng)用預(yù)知。例如,如果己確定先前的位置,考慮到書寫速度,當(dāng)前筆尖的目的地區(qū)域應(yīng)該接近先前的位置。然而,如果筆被提起,那么它的下一個(gè)位置可以是任何地方。因此,在這種情況下,目的地區(qū)域應(yīng)該是整個(gè)m-陣列。由以下步驟確定正確的X、 Y位置。在步驟1224中,過程1200選擇iv其相應(yīng)的誤差比特的數(shù)目少于,3、log10見l。g10〖一w〖xlog.10(8)其中&是實(shí)際的循環(huán)次數(shù),且/r表示局部約束率,由以下計(jì)算:目的地區(qū)域的面積 丄(9)其中Z是m-陣列的長度。步驟1224以誤差比特?cái)?shù)目升序來對(duì)r,排序。接著,步驟1225、 1211和1212 找出第一r,,在該n中相應(yīng)的X、 Y位置在目的地區(qū)域內(nèi)。最后,步驟1225、 1211 和1212返回X、 Y位置作為結(jié)果(經(jīng)由步驟1213),或返回解碼程序失敗的指示 (經(jīng)由步驟1215)。潛微麟辦條辦麵欲絲示,/一說明性例子說明了如由組成部分1251和1253所執(zhí)行的過程1200。假設(shè)《=3, 《=5, 1 = (/。
/, ... /6)'是階數(shù)"=3的附-序列。那么A =/0 A /2 /3 /4 /5 /6/4 /: 厶(10)4乂A A力4 /0 A同樣假設(shè)所提取比特b二(6。
/>, 62 63 其中《=5,實(shí)際上是m-序列的第s、 (s+l)、 (s+3)、 (s+4)和("6)比特(這些數(shù)目實(shí)際上是m-陣列長度 丄=2"—1 = 23_1 = 7的模數(shù))。因此M =厶入/《/6 /。
A /3 /5,5 A A /2 /4 乂(11)它是由A的第0、 1、 3、 4和6列組成。唯一地確定m-陣列中6o的X、 Y位 置的數(shù)字s可在解出r:(r。
q ^后計(jì)算出,所述r:^" ^ 〃2)'被期望實(shí)現(xiàn)1)1 =rtM。由于b中可能的誤差比特,可能不能完全地實(shí)現(xiàn)1)1 = 一]\1。過程1200利用以下的程序。從b中隨機(jī)地選擇肝3比特,為6(=(6。
^ 62)。求出IV6卜r/化 (12) 其中化由M的第O、 l和2列組成。(注意,化是"x"矩陣,且r/是lx"向 量,這樣5(是所選比特的lx"向量。)接著,計(jì)算被解碼的比特b"r,'M (13) 其中M是"x《矩陣,且r/是lx"向量,使得6;是lx尺向量。如果6,等于b,即,沒有檢測(cè)到誤差,那么步驟1209確定X、 Y位置,且步驟1211確定解碼的位 置是否在目的地區(qū)域內(nèi)。如果是,解碼是成功的,就執(zhí)行步驟1213。否則,如圖 1215所示,解碼失敗。如果^不同于b,那么在b中檢測(cè)到誤差比特,就執(zhí)行組成部分1253。步驟1217確定集合5p為0o^62 6d,其中解碼的比特與原始比特 相同。因此,g ={&}(對(duì)應(yīng)于圖13中的比特排列1351)。循環(huán)次數(shù)(/0被初始 化為一常量,例如,100,根據(jù)應(yīng)用,它是可變化的。注意,對(duì)應(yīng)于^的誤差比特 數(shù)等于l。接著,步驟1221根據(jù)方程(7)來更新循環(huán)次數(shù)("),《=min(",13)= 13。步驟1217接著從b選擇另外的w=3比特。如果這些比特都屬于A,即 {6。 62 63},那么步驟1219將再次確定r。為了防止這樣的重復(fù),步驟1217會(huì)從 S選擇(舉例而言) 一個(gè)比特{64},并保留來自51的兩個(gè)比特{6。 W。所選擇的三個(gè)比特形成了S卜(6。《64)。步驟1219求出r"6卜r風(fēng) (14) 其中]^2由M的第0、 l和4列組成。步驟1219計(jì)算6卜r〗M。找出這樣的52,例如{6。
^ 64},使得62和1)是相 同的。那么《={62 63}(對(duì)應(yīng)于圖13中的比特排列1353)。步驟1221根據(jù)方程 (7)更新循環(huán)次數(shù)(/0。注意與r,相關(guān)聯(lián)的誤差比特的數(shù)目等于2。代入(7) , & 二minO!,32)二 13。因?yàn)樾枰獔?zhí)行另一迭代,步驟1217從b中選擇另外的肝3比特。所選擇的比特應(yīng)該不都屬于A或^。因此,步驟12H,舉例而言,可從g選擇一個(gè)比特(/U, 從豆2選擇一個(gè)比特似并保留 一個(gè)比特{6。}。繼續(xù)所述的對(duì)r求解、比特選擇和循環(huán)次數(shù)調(diào)整,直至我們不能選出任何新的 "=3比特,它們不完全屬于任何先前的5,.,或達(dá)到了最高循環(huán)次數(shù)&。假設(shè)過程1200計(jì)算5個(gè)r,.(—1,2,3,4,5),其誤差比特的數(shù)目分別對(duì)應(yīng)于1、 2、4、 3、 2。(實(shí)際上,對(duì)于這個(gè)例子,誤差比特?cái)?shù)目不能超過2,但說明性例子示 出了更大數(shù)目的誤差比特以說明該算法)。舉例而言,步驟1224選擇r,的例如 r,,r,,r,,r;,其對(duì)應(yīng)的誤差比特?cái)?shù)低于(8)中所示的仄。步驟1224以所選擇向量r,,r,,r^誤差比特?cái)?shù)的升序來對(duì)它們排序r,,r2,r5,r4 。 步驟1225、 1211和1212從已排序的候選列表中找出第一向量r,例如r;,其對(duì)應(yīng)的位置在目的地區(qū)域以內(nèi)。接著,步驟1213輸出對(duì)應(yīng)的位置。如果沒有一個(gè)位置 是在目的地區(qū)域以內(nèi)的,解碼程序失敗,如步驟1215所示的。藩統(tǒng)乂效互髓顏示器嵌入式交互代碼(EIC)技術(shù)指的是一種允許將x-y位置數(shù)據(jù)和元數(shù)據(jù)兩者嵌 入到包括紙張、白板、顯示屏等的各種表面的數(shù)據(jù)嵌入和編碼技術(shù)。顯示屏可以是 液晶顯示器(LCD)、有機(jī)發(fā)光裝置(OLED)、等離子顯示器、平板顯示器等。LCD是使用如液體那樣流動(dòng)并完全光的桿狀分子(液晶)的顯示技術(shù)。未能 量化(unenergized)的晶體指引光穿過兩個(gè)偏振濾光片,從而允許顯示自然的背景 色。當(dāng)被能量化時(shí),它們重新引導(dǎo)光在偏振片之一中吸收,使得顯示交叉偏振片的 暗外觀。OLED (也稱為有機(jī)發(fā)光二極管)是一種通常由兩個(gè)電觸點(diǎn)(電極)之間的一 系列有機(jī)層構(gòu)成的薄膜發(fā)光器件。OLED可使用小分子量有機(jī)材料或基于聚合物的 材料來制造。與LCD和由分層材料構(gòu)造的場(chǎng)致發(fā)射顯示器不同,OLED是單片器 件,因?yàn)槊恳粚颖怀练e在另一層上,從而形成單一的單元。等離子顯示器(也稱為"氣體放電顯示器")是一種使用沿充滿了惰性電離 氣體(通常是氙和氖的混合)的熒光體排列的小單元的平板屏幕技術(shù)。三個(gè)單元構(gòu) 成一個(gè)像素(一個(gè)像素具有紅色熒光體、 一個(gè)綠色熒光體和一個(gè)藍(lán)色熒光體)。單 元被夾在x和y軸面板之間,并且單元通過對(duì)適當(dāng)?shù)膞和y電極充電來選擇。充電 使得單元中的氣體發(fā)出紫外光,并且紅、綠和藍(lán)的不同強(qiáng)度的組合產(chǎn)生所需的所有 顏色。平板顯示器是在便攜式計(jì)算機(jī)中使用的相對(duì)較薄的顯示屏幕。幾乎所有的現(xiàn)代平板顯示器都使用了LCD技術(shù)。大多數(shù)LDC屏幕是背光的,以使其在明亮的環(huán)境中更容易閱讀。嵌入式交互代碼(EIC)信息可被嵌入到顯示表面內(nèi),使得諸如數(shù)字筆等基于 照相機(jī)的設(shè)備的用戶可與顯示在顯示表面上的文檔交互??墒褂酶鞣N技術(shù)來將EIC圖案嵌入到特定的顯示表面中。在本發(fā)明的一個(gè)實(shí) 現(xiàn)中,提出了幾種相對(duì)低成本的將EIC圖案嵌入到諸如相對(duì)較大的等離子顯示器、 LCD屏幕、白板、如CAD繪圖等媒體(例如,EIC圖案作為一不同的層插入到電 子CAD繪圖中)、屏幕保護(hù)膜以及加水印的屏幕圖像等顯示表面中的方法。單個(gè) 配備了照相機(jī)的數(shù)字筆可同時(shí)在印刷文檔和不同類型的顯示表面上工作,而無需用 戶手動(dòng)切換數(shù)字筆模式來考慮不同類型的顯示表面(即,印刷文檔還是各種類型的 顯示表面),由此提供了增強(qiáng)且更一致的用戶體驗(yàn)。EIC圖案載體結(jié)構(gòu)圖13示出了根據(jù)本發(fā)明的實(shí)施例的用于顯示器1300的EIC圖案載體的結(jié)構(gòu)。 如圖13所示,該EIC圖案載體包含外部透明層1308,帶有位于外部透明層1308 內(nèi)側(cè)的EIC點(diǎn)圖案1306 (由包括但不限于EIC圖案點(diǎn)1306-1和1306-2的EIC圖 案點(diǎn)構(gòu)成);紅外反射層1302;以及內(nèi)部透明層1304。外部透明層1308可以是膜、 塑料、玻璃等。圖案可以被打印或印刷到外部透明層1308的內(nèi)側(cè)。紅外反射覆膜 (即,覆蓋表面)層1302在內(nèi)部透明層1304的外側(cè)。內(nèi)部透明層1304也可以是 膜、塑料、玻璃等。透明膠1310可用于外部透明層1308和紅外反射層1302之間, 且在內(nèi)部透明層1304的內(nèi)側(cè)上,如圖13所示。紅外反射層1304是可任選的。紅外反射層1304可提高從顯示表面捕捉的圖 像的質(zhì)量。如圖214所示,由紅外反射層1304反射的光也會(huì)由EIC圖案點(diǎn)1306 反射,由此增加了來自紅外發(fā)光二極管("IRLED" ) 1402的穿過透鏡1406被反 射回到圖像傳感器1404的光量。內(nèi)部透明層1304是可任選的。出于類似于以上關(guān)于紅外反射層1304所討論 的相同的原因,雙透明層結(jié)構(gòu)可以提高從顯示表面捕捉的圖像的質(zhì)量。顯示器制造商可將EIC圖案載體集成到各種類型的顯示器中。例如,圖15示 出了根據(jù)本發(fā)明的實(shí)施例的用于表示平板顯示器上的一個(gè)比特的EIC符號(hào)的比特 表示。用于平板顯示器的EIC符號(hào)大小是600 DPI下的8點(diǎn)。在本發(fā)明的一個(gè)實(shí)現(xiàn)中,EIC陣列地址空間是30位,其中的28位被分配用于 標(biāo)識(shí)特定的顯示器,而2位被分配用于表面標(biāo)識(shí)符,這將在以下更詳細(xì)討論。根據(jù)本發(fā)明的一個(gè)實(shí)施例,EIC陣列可用相對(duì)較大的地址空間,諸如240位來 實(shí)現(xiàn),這允許顯示器制造商用唯一表面標(biāo)識(shí)符來發(fā)行每一新的顯示器。如將清楚的, 也可實(shí)現(xiàn)除以上討論的之外的EIC陣列地址空間大小。表尿/D薪礙圖17示出了根據(jù)本發(fā)明的實(shí)施例的用于編碼表面標(biāo)識(shí)符的系統(tǒng)的流程圖。如 由m陣列1702所描繪的一個(gè)或多個(gè)m陣列和表面標(biāo)識(shí)符1704被輸入到表面ID 編碼模塊1706中,后者輸出具有已編碼表面標(biāo)識(shí)符1708的組合陣列。這一個(gè)或多 個(gè)輸入的m陣列可以是諸如位置m陣列1902和表面標(biāo)識(shí)符m陣列1904等m陣 列,這兩者將在圖19中描述。顯示表面的一特定區(qū)域中的表面標(biāo)識(shí)符可使用與表示X,Y位置信息的m陣列 相同的m陣列來編碼。然而,表面IDm陣列可根據(jù)表面標(biāo)識(shí)符的值而位移。圖19示出了根據(jù)本發(fā)明的實(shí)施例的表面ID編碼示例。在圖19的左側(cè)示出了 兩個(gè)相同的m陣列,即位置m陣列1902和表面ID m陣列1904。這兩個(gè)m陣列 都是6階m陣列。因此,每一m陣列的寬度是2Vl,且每一 m陣列的高度是23-1 。位置m陣列和表面ID m陣列可包含長度相同但具有彼此不同的比特序列的重 復(fù)比特序列。換言之,可使用不同的n階本原多項(xiàng)式來生成不同的m陣列,該m 陣列因此將包含不同的重復(fù)比特序列。根據(jù)本發(fā)明的各實(shí)施例,兩個(gè)m陣列可被組合以在一個(gè)EIC符號(hào)中編碼兩個(gè) 比特。EIC符號(hào)的一個(gè)示例在圖20中描繪。圖20中的EIC符號(hào)占據(jù)了圖20所示 的網(wǎng)格空間除了底部的行和最右邊的列之外的所有行和列。該行和該列屬于相鄰的 EIC符號(hào)。因此,盡管黑點(diǎn)2002-1和2002-4屬于圖20所示的EIC符號(hào),但是黑 點(diǎn)2002-2和2002-3不是該EIC符號(hào)的一部分。數(shù)據(jù)點(diǎn)2006-1到2006-16可以是用 于表示信息比特的黑色或白色。方向點(diǎn)2004-1到2004-4總是為白色,以便于正確 地定向照相機(jī)捕捉的EIC符號(hào)圖像。當(dāng)組合位置m陣列1902和表面ID m陣列1404時(shí),基于表面標(biāo)識(shí)符的值(例 如,11),表面ID m陣列1904的開頭被移位到位置m陣列1902的位置0^,力), 如在圖19中的1930處所描述的。c,j;坐標(biāo)可如下計(jì)算<formula>formula see original document page 24</formula>其中"是m陣列的階數(shù),并且0《表面/DS2"-2。在圖19中,所編碼的表面標(biāo)識(shí)符1906的值為ll,并且m陣列的階數(shù)為6(即, =6)。因此,<formula>formula see original document page 24</formula>如部分組合的m陣列1908中所示,表面標(biāo)識(shí)符m陣列1904從位置m陣列 1902的位置(2,1)處開始。由于位置m陣列1902和表面標(biāo)識(shí)符m陣列1904自身重 復(fù),因此可生成具有已編碼表面標(biāo)識(shí)符1910的組合的m陣列,這在圖19的右下 角示出。作為在(2,l)處開始表面IDm陣列1904的結(jié)果,在組合了位置m陣列1902 和表面ID m陣列1904的重疊的行和列之后,留下了表面ID m陣列1904的部分 1920、 1914和1926。表面ID m陣列1904的部分1926和位置m陣列1902的部分 1924在組合陣列1910中組合,如在1928處所描繪的。類似地,表面標(biāo)識(shí)符m陣 列1904的部分1914和位置m陣列1902的部分1912在組合陣列1910中組合,如 在1916處所描繪的。并且表面ID m陣列1904的部分1920和位置m陣列1902的 部分1918在組合陣列1910中組合,如在1922處所描繪的。表面標(biāo)識(shí)符的值是組合陣列中位置m陣列1902與表面IDm陣列1904之間的 距離。該距離在組合陣列1910的每一對(duì)比特中保持相同。因此,如果獲得其相應(yīng) 的m陣列中的每一比特的位置,可確定組合陣列1910中的該距離。圖18示出了根據(jù)本發(fā)明的實(shí)施例的用于解碼已編碼表面標(biāo)識(shí)符的系統(tǒng)的流程 圖。具有已編碼標(biāo)識(shí)符1708的組合陣列被輸入到表面ID解碼模塊1802中,后者 輸出已解碼表面標(biāo)識(shí)符1804。為解碼已編碼表面標(biāo)識(shí)符,已被組合來形成組合陣列1708的m陣列被各自單 獨(dú)解碼。例如,參考圖19中所示的示例,單獨(dú)解碼位置m陣列1902和表面IDm 陣列1904。然后,對(duì)于特定的點(diǎn)/M932,獲得兩個(gè)位置該點(diǎn)在位置m陣列1902中的位置(&, A),以及該點(diǎn)在表面ID m陣列1904中的位置(&,^)。 表面標(biāo)識(shí)符的值然后可如下計(jì)算<formula>formula see original document page 25</formula>其中w是組合m陣列1708的階數(shù)。在圖19所示的示例中,P在第一m陣列中的位置是(4, 3)。 P在第二m陣列 中的位置是(2,2)。因此,表面標(biāo)識(shí)符的值是<formula>formula see original document page 25</formula>對(duì)于真實(shí)的應(yīng)用,可能存在多維表面標(biāo)識(shí)符信息。例如,假定有1個(gè)位置維 度和7個(gè)表面標(biāo)識(shí)符維度。則總的表面標(biāo)識(shí)符可如下計(jì)算。在對(duì)每一維度解碼之后,位置(^,力)是表示X, Y位置的維度的輸出,而(x二,乂)是其余7個(gè)表面ID維度的輸出,其中、0,1,2,...,6。因此,可獲得在每一維度中 編碼的表面標(biāo)識(shí)符信息<formula>formula see original document page 25</formula> 其中w是m陣列的階數(shù)。對(duì)于維度"其中/ = 0,1,2,...,6,從對(duì)該維度成功解碼的每一圖像中獲得表面 ID部分,的值。對(duì)于所有圖像,最經(jīng)常出現(xiàn)的值可被認(rèn)為是表面標(biāo)識(shí)符的該部分的 值?,F(xiàn)在獲得了在表示表面標(biāo)識(shí)符的7個(gè)維度的每一個(gè)中編碼的表面標(biāo)識(shí)符,則 表面標(biāo)識(shí)符可被計(jì)算為<formula>formula see original document page 25</formula>('=0其中w是m陣列的階數(shù)。如將清楚的,可使用任何適當(dāng)數(shù)目的維度來嵌入表 面ID信息。在多個(gè)維度中嵌入表面ID信息允許編碼非常大量的表面ID值。例如,假定 有8個(gè)維度可用, 一個(gè)維度用于X,Y位置數(shù)據(jù),且7個(gè)維度用于表面ID信息。對(duì) 于表面ID信息的7個(gè)維度,假定使用28階m陣列(即,m陣列將具有214+1和 214-1行)。因此,可在七個(gè)維度中編碼的表面ID信息的可能值的個(gè)數(shù)是(228 -2)7 。圖16示出了四種不同顏色的EIC圖案的一部分青色、洋紅、黃色和黑色。 這些是打印和印刷行業(yè)中的主流顏色。然而如將清楚的,也可使用其它顏色。當(dāng)在 透明材料上打印或印刷青色、洋紅或黃色EIC圖案時(shí),配備了照相機(jī)的計(jì)算設(shè)備 通常捕捉比在EIC圖案為黑色時(shí)更好的圖像。對(duì)于人類用戶,黃色EIC圖案較青色或洋紅EIC圖案不可見(且因此較不會(huì)使人分心)。EIC圖案可被打印到EIC圖案膜上以使用戶能夠經(jīng)由配備了照相機(jī)的計(jì)算設(shè) 備與由顯示器顯示的文檔交互(包括用數(shù)字筆作出注解)。根據(jù)本發(fā)明的各實(shí)施例, EIC圖案可由單色或彩色打印機(jī)打印到透明膜上。此外,打印機(jī)可以是激光打印機(jī) 或噴墨打印機(jī)。研究結(jié)果表明,以下組合產(chǎn)生合適的結(jié)果,以性能的降序排列黃色彩色激光打印機(jī)、洋紅彩色激光打印機(jī)、青色彩色激光打印機(jī)、黃色彩色噴墨打 印機(jī)、洋紅彩色噴墨打印機(jī)、青色彩色噴墨打印機(jī)、單色激光打印機(jī)和單色噴墨打 印機(jī)。盡管以對(duì)結(jié)構(gòu)特征和/或方法動(dòng)作專用的語言描述了本主題,但是可以理解, 所附權(quán)利要求書中定義的主題不必限于上述具體特征或動(dòng)作。相反,上述具體特征 和動(dòng)作是作為實(shí)現(xiàn)權(quán)利要求書的示例形式來公開的。
權(quán)利要求
1.一種啟用嵌入式交互代碼的顯示器(1300),包括外部透明層(1308);內(nèi)部透明層(1304);在所述外部透明層(1308)與所述內(nèi)部透明層(1304)之間的紅外反射層(1302);以及在所述外部透明層(1308)和所述紅外反射層(1302)之間的EIC點(diǎn)圖案(1306)。
2. 如權(quán)利要求1所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述外 部透明層包括玻璃、塑料和膜的至少一種。
3. 如權(quán)利要求1所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述內(nèi) 部透明層包括玻璃、塑料和膜的至少一種。
4. 如權(quán)利要求1所述的啟用嵌入式交互代碼的顯示器,其特征在于,還包括 在所述外部透明層與所述紅外反射層之間的透明膠。
5. 如權(quán)利要求1所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述EIC 點(diǎn)圖案是打印到所述外部透明層的內(nèi)側(cè)和印刷到所述外部透明層的內(nèi)側(cè)中的至少 一種。
6. 如權(quán)利要求1所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述EIC 點(diǎn)圖案包括標(biāo)識(shí)所述啟用嵌入式交互代碼的顯示器的已編碼表面標(biāo)識(shí)符。
7. 如權(quán)利要求1所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述已 編碼表面標(biāo)識(shí)符唯一地標(biāo)識(shí)了所述啟用嵌入式交互代碼的顯示器。
8. —種啟用嵌入式交互代碼的顯示器(1300),包括 外部透明層(1308);內(nèi)部透明層(1304);以及在所述外部透明層(1308)和所述內(nèi)部透明層(1304)之間的EIC點(diǎn)圖案(1306)。
9. 如權(quán)利要求8所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述外 部透明層包括玻璃、塑料和膜的至少一種。
10. 如權(quán)利要求8所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述內(nèi) 部透明層包括玻璃、塑料和膜的至少一種。
11. 如權(quán)利要求8所述的啟用嵌入式交互代碼的顯示器,其特征在于,還包括在所述外部透明層與所述內(nèi)部透明層之間的透明膠。
12. 如權(quán)利要求8所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 EIC點(diǎn)圖案是打印到所述外部透明層的內(nèi)側(cè)和印刷到所述外部透明層的內(nèi)側(cè)中的 至少一種。
13. 如權(quán)利要求8所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 EIC點(diǎn)圖案包括標(biāo)識(shí)所述啟用嵌入式交互代碼的顯示器的已編碼表面標(biāo)識(shí)符。
14. 如權(quán)利要求13所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 已編碼表面標(biāo)識(shí)符唯一地標(biāo)識(shí)了所述啟用嵌入式交互代碼的顯示器。
15. —種啟用嵌入式交互代碼的顯示器(1300),包括 外部透明層(1308);紅外反射層(1302);以及在所述外部透明層(1308)與所述紅外反射層(1302)之間的EIC點(diǎn)圖案(1306)。
16. 如權(quán)利要求15所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 外部透明層包括玻璃、塑料和膜的至少一種。
17. 如權(quán)利要求15所述的啟用嵌入式交互代碼的顯示器,其特征在于,還包 括在所述外部透明層與所述紅外反射層之間的透明膠。
18. 如權(quán)利要求15所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 EIC點(diǎn)圖案是打印到所述外部透明層的內(nèi)側(cè)和印刷到所述外部透明層的內(nèi)側(cè)的至 少一種。
19. 如權(quán)利要求15所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 EIC點(diǎn)圖案包括標(biāo)識(shí)所述啟用嵌入式交互代碼的顯示器的已編碼表面標(biāo)識(shí)符。
20. 如權(quán)利要求19所述的啟用嵌入式交互代碼的顯示器,其特征在于,所述 已編碼表面標(biāo)識(shí)符唯一地標(biāo)識(shí)了所述啟用嵌入式交互代碼的顯示器。
全文摘要
一種啟用嵌入式交互代碼的顯示器(1300)包括外部透明層(1308)、可任選的內(nèi)部透明層(1304)、在外部透明層(1308)與內(nèi)部透明層(1304)之間的可任選紅外反射層(1302)、外部透明層(1308)與紅外反射層(1302)之間的EIC點(diǎn)圖案(1306)、以及外部透明層(1308)與紅外反射層(1302)或內(nèi)部透明層(1304)之間的可任選的透明膠(1310)。外部透明層(1308)和內(nèi)部透明層(1304)可以是玻璃、塑料或膜。EIC點(diǎn)圖案(1306)可被打印到或印刷到外部透明層(1308)的內(nèi)側(cè)。EIC點(diǎn)圖案(1306)可包括標(biāo)識(shí)啟用嵌入式交互代碼的顯示器(1300)的已編碼表面標(biāo)識(shí)符。已編碼表面標(biāo)識(shí)符可唯一地標(biāo)識(shí)啟用嵌入式交互代碼的顯示器(1300)。
文檔編號(hào)G06K9/48GK101243461SQ200680029957
公開日2008年8月13日 申請(qǐng)日期2006年8月16日 優(yōu)先權(quán)日2005年8月17日
發(fā)明者C·張, J·王, Q·王 申請(qǐng)人:微軟公司