新四季網

用於混合介質環境中的圖像匹配的方法和系統的製作方法

2023-11-06 19:00:27 2

專利名稱:用於混合介質環境中的圖像匹配的方法和系統的製作方法
技術領域:
本發明涉及用於產生從至少兩種介質類型而形成的混合介質文檔的技 術,並且更具體地,涉及使用與電子介質結合的列印介質產生混合介質文檔
的混合介質實境(,R)系統。
背景技術:
文檔列印和複製技術已在許多環境中使用了許多年。例如,在私人和商 業辦公環境中、在具有個人計算機的家庭環境中、以及在文檔列印和出版服 務環境中,都使用印表機和複印機。然而,先前並未認為列印和複製技術是 起連接靜態列印介質(即,紙質文檔)與包括數字通信系統、網絡、信息供 應、廣告、娛樂、和電子商業之類的交互的"虛擬世界"之間的差距的橋梁 作用的手段。
列印介質已作為通信信息,例如新聞和廣告信息,的主要來源歷時幾個 世紀。在過去的少數幾年,通過使得以電子可讀和可搜索的形式利用,以及 通過引進交互式多媒體性能,個人計算機和個人電子裝置,例如個人數字助 理(PDA)裝置和蜂窩式電話(如,蜂窩式照相手機)的出現和日益增長的流 行度已擴大了列印介質的概念,對於傳統的列印介質來說,其為史無前例的。
不幸地,電可訪問的虛擬的基於多媒體的世界與列印介質的物理世界之
子信息,但列印介質和個人電子裝置的使用者不擁有形成兩者之間的連接 (即,用於便利混合介質文檔)所必需的工具和技術。
此外,傳統的列印介質提供特別的有利屬性,例如觸感,不需要功率, 和持久的組織和存儲,其在虛擬或數字介質中不提供。同樣地,傳統的數字 介質也提供特別的有利屬性,例如便攜(如,在手機或可攜式計算機的存儲 中攜帶)和易於傳輸(如,通過電子郵件)。
因為這些原因,存在關於使得能夠開發與列印的和虛擬的介質兩者都關 聯的益處的技術的需要。

發明內容
本發明的一個或多個實施例的至少一個方面涉及圖像匹配的計算機實現
方法。該方法包括用捕獲裝置捕獲第一介質類型的至少一個部分的圖像; 相對於資料庫中的文檔頁面集,匹配該圖像;以及肯定地響應匹配該圖像, 返回圖像所位於的至少 一個文檔頁面內的至少 一個位置。
本發明的一個或多個實施例的至少一個其它方面涉及用於圖像匹配的系 統。該系統包括可操作,以捕獲第一介質類型的至少一個部分的捕獲裝置; 可操作,以將所捕荻的圖像變換成為符號表示的特徵提取模塊;可操作,以 將符號表示變換成為圖像出現處的至少一個文檔頁面和至少一個文檔頁面內 的位置的識別的分類模塊。
本發明的 一個或多個實施例的至少 一個其它方面涉及使第 一介質類型與 第二介質類型交互作用的計算機實現方法。該方法包括用捕獲裝置捕獲第
一介質類型的至少一個部分的圖像;確認所捕獲的圖像的內容是能可靠地處 理的;響應確認,將所捕獲的圖像變換成為符號表示;將符號表示變換成為 圖像出現處的至少一個文檔頁面和其中的位置的識別;以及依賴於識別,將 第二介質類型提供給捕獲裝置。
本發明的一個或多個實施例的至少一個其它方面涉及擁有其上所存儲的 處理器可執行的指令的計算機可讀介質。該指令包括執行以下操作的指令 接收捕獲裝置所捕獲的圖像,所述圖像為第一介質類型的至少一部分;相對 於資料庫中所存儲的文檔頁面集,匹配圖像的表示;以及確定圖像所位於的 文檔頁面的至少 一個內的位置。
本發明的一個或多個實施例的至少一個其它方面提供以指令編碼的機器 可讀介質(例如, 一個或多個壓縮光碟、磁碟、伺服器、記憶棒、或硬驅動、 R0Ms、 RAMs、或適合於存儲電子指令的任何類型的介質),當由一個或多個處 理器執行時,其促使處理器執行用於訪問混合介質文檔系統中的信息的過程。 例如,這個過程能夠與這裡所描述的方法類似或是其變體。
於此所描述的特點和優點並不包含所有的,且特別地,考慮繪圖和描述, 對於一個本領域普通技術人員來說,許多另外的特點和優點將會很明顯。此 外,應該注意到,主要為易讀性和指導性的目的選擇說明書中所使用的語言, 並且不局限於發明主旨的範圍。


通過示例闡明本發明,但並不局限於附屬繪圖,附屬繪圖中使用相同的 參考數字指代類似的元素。
圖1A闡明根據本發明的一個實施例而配置的混合介質實境(固R)系統
的功能框圖1B闡明根據本發明的另一個實施例而配置的腦R系統的功能框圖; 圖2A、 2B、 2C、和2D闡明根據本發明的一個實施例的捕獲裝置; 圖2E闡明根據本發明的一個實施例而配置的捕獲裝置的功能框圖; 圖3闡明根據本發明的一個實施例而配置的畫R計算機的功能框圖; 圖4闡明根據本發明的一個實施例而配置的,R軟體套裝中所包括的一 組軟體部件;
圖5闡明表示根據本發明的一個實施例而配置的麗R文檔的實施例的圖
解;
圖6闡明根據本發明的一個實施例的文檔指紋匹配方法; 圖7闡明根據本發明的一個實施例而配置的文檔指紋匹配系統; 圖8闡明根據本發明的一個實施例的文本/非文本辨別的流程; 圖9闡明根據本發明的一個實施例的文本/非文本辨別的例子; 圖10闡明用於估計根據本發明的一個實施例的圖像碎片中的文本的磅 值的流程;
圖11闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖12闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖13闡明根據本發明的一個實施例的交互式圖像分析的例子;
圖14闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖15闡明根據本發明的一個實施例的文字邊界框探測的例子;
圖16闡明根據本發明的一個實施例的特徵提取技術;
圖17闡明根據本發明的另一個實施例的特徵提取技術;
圖18闡明根據本發明的另一個實施例的特徵提取技術;
圖19闡明根據本發明的另一個實施例的特徵提取技術;
圖20闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖21闡明根據本發明的一個實施例的文檔指紋匹配的多分類器特徵提取;
圖22和23闡明根據本發明的一個實施例的文檔指紋匹配技術的例子;
圖24闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖25闡明根據本發明的一個實施例的資料庫驅動的反饋的流程;
圖26闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖27闡明根據本發明的一個實施例的資料庫驅動的分類的流程;
圖28闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖29闡明根據本發明的一個實施例的資料庫驅動的多重分類的流程;
圖30闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖31闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖32闡明根據本發明的另一個實施例的文檔指紋匹配技術;
圖33示出根據本發明的一個實施例的多層級識別的流程;
圖34A闡明根據本發明的一個實施例而配置的應R資料庫系統的功能框
圖34B闡明根據本發明的一個實施例的基於OCR的技術的MMR特徵提取 的例子;
圖34C闡明根據本發明的一個實施例的示例性索引表組織;
圖35闡明根據本發明的一個實施例的用於產生一個畫R索引表的方法;
圖36闡明根據本發明的一個實施例的用於計算關於目標文檔的分等級
的一組文檔、頁面、和位置假設的方法;
圖37A闡明根據本發明的另一個實施例而配置的腦R部件的功能框圖; 圖37B闡明根據本發明的一個實施例的固R列印軟體中所包括的一組軟
件部件;
圖38闡明根據本發明的一個實施例的在文檔中嵌入熱點的方法的流程
圖39A闡明根據本發明的一個實施例的HTML文件的例子; 圖39B闡明圖39A的HTML文件的標記版的例子;
圖40A闡明根據本發明的一個實施例的瀏覽器中所顯示的圖39A的HTML 文件的例子;
圖40B闡明根據本發明的一個實施例的圖40A的H頂L文件的列印版的例
子;圖41闡明根據本發明的一個實施例的符號熱點描述;
圖42A和42B示出根據本發明的一個實施例的圖39A的HTML文件的示例
性page一desc. xml文件;
圖43闡明根據本發明的一個實施例的,相應於圖41、 42A、和42B的
hotspot. xml文件',
圖44闡明根據本發明的一個實施例的轉發DLL所使用的過程的流程圖; 圖45闡明根據本發明的一個實施例的轉換相應於文檔中的熱點的字符
的方法的流程圖46闡明根據本發明的一個實施例的文檔的電子版的例子;
圖47闡明根據本發明的一個實施例的列印修改文檔的例子;
圖48闡明根據本發明的一個實施例的共享文檔註解的方法的流程圖49A闡明才艮據本發明的一個實施例的瀏覽器中的樣本源網頁;
圖49B闡明根據本發明的一個實施例的瀏覽器中的樣本修改網頁;
圖49C闡明根據本發明的一個實施例的樣本列印網頁;
圖50A闡明根據本發明的一個實施例的添加熱點至圖像化文檔的方法的
流程圖50B闡明根據本發明的一個實施例的定義用於添加至圖像化文檔的熱 點的方法的流程圖51A闡明示出已根據一個實施例而掃描的新聞紙頁面的一部分的用戶 接口的例子;
圖51B闡明用於定義數據或交互作用,以與所選擇的熱點關聯的用戶接
D ;
圖51C闡明根據本發明的一個實施例的包括分派框的圖51B的用戶接口; 圖51D闡明根據本發明的一個實施例的用於顯示文檔內的熱點的用戶接
13 ;
圖52闡明根據本發明的一個實施例的使用薩R文檔和薩R系統的方法的 流程圖53闡明根據本發明的一個實施例的與畫R系統關聯的示例性的一組商 業實體的框圖54闡明根據本發明的一個實施例的,作為通過使用薩R系統而便利的 一般化的商業方法的,方法的流程圖。
具體實施例方式
描述混合介質實境(MMR)系統和相關聯的方法。醒R系統提供用於形成
包括至少兩種類型的介質,如列印紙張作為第一種介質,以及數碼照片、數 字電影、數字音頻文件、數字文本文件、或網絡連結作為第二種介質,的混
合介質文檔的機制。,R系統和/或技術能夠進一步用於便利各種各樣的利用 可攜式電子裝置(如,PDA或蜂窩式照相手機)與紙質文檔的結合,以提供 混合介質文檔的商業模型。
在一個特定實施例中,畫R系統包括基於內容的檢索資料庫,其表示以 允許使用基於文本的索引查找的方式從列印文檔中所提取的目標之間的二維 幾何關係。證據累加技術將特徵出現的頻率與其在二維區域中的位置的可能 性結合。在一個這樣的實施例中,腦R資料庫系統包括接收由應R特徵提取 算法所計算的描述的索引表。索引表識別文檔、頁面、和每個特徵出現處的 那些頁面內的x-y位置。給出來自索引表的數據,證據累加算法計算分等級 的一組文檔、頁面和位置假設。如所期望的,能夠使用相關的資料庫(或其 它適合的存儲設施)來存儲有關每個文檔、頁面、和位置的另外的特性。
腦R資料庫系統也可以包括其它部件,如醒R處理器、捕獲裝置、通信 機制和包括醒R軟體的存儲器。也可以將醒R處理器連接至介質類型的存儲 或源、輸入裝置和輸出裝置。在一個這樣的配置中,薩R軟體包括MMR處理 器可執行的例程,用於訪問具有另外的數字內容的應R文檔、創建或修改固R 文檔、以及使用文檔執行其它的操作,如商業交易、數據查詢、報告,等等。
醒R系統概述
現在參考圖1A,示出根據本發明的實施例的混合介質實境(薩R)系統 100a。畫R系統100a包括醒R處理器102、通信才幾制104、具有可攜式輸入 裝置168和可攜式輸出裝置170的捕獲裝置106、包括腦R軟體的存儲器108、 基礎介質存儲器160、醒R介質存儲器162、輸出裝置164、和輸入裝置166。 通過提供使用來自現有的列印文檔(第一介質類型)的信息作為第二介質類 型,如音頻、視頻、文本、更新的信息和服務的索引的方式,羅R系統100a 創建混合介質環境。
捕獲裝置106能夠產生列印文檔(例如,圖像、繪圖、或其它這樣的表 示法)的表示,並將該表示發送至醒R處理器102。畫R系統100a然後將該表示與,R文檔和其它第二介質類型匹配。畫R系統100a也為響應表示的輸 入和識別而採取動作負責。固R系統100a所採取的動作能夠為任何類型,包 括,例如,檢索信息、下訂單、檢索視頻或聲音、存儲信息、創建新文檔、 列印文檔、顯示文檔或圖像,等等。通過於此所描述的基於內容的檢索數據 庫技術的使用,醒R系統100a提供將列印文本提交給提供對用戶有益或有價 值的電子內容或服務的進入點的動態介質的機制。
MMR處理器102處理數據信號,並可以包括各種各樣的計算體系結構, 包括複雜指令集計算機(CISC)體系結構、精簡指令集計算機(RISC)體系 結構、或實現指令集的結合的體系結構。在一個特定實施例中,腦R處理器 102包括算術邏輯單元、微處理器、 一般用途的計算機、或為執行本發明的 操作而配備的一些其它信息設備。在另一個實施例中,MMR處理器102包括 具有圖形化的用戶接口的一般用途的計算機,該圖形化用戶接口可以由,例 如,以在{象基於WINDOWS或麗IX作業系統那樣的作業系統之上運行的Java 所寫的程序產生。儘管在圖1A中僅示出單個處理器,但可以包括多個處理器。 處理器連接至畫R存儲器108,並執行存儲在那裡的指令。
通信機制104是用於將捕獲裝置106連接至薩R處理器102的任何裝置 或系統。例如,能夠使用網絡(例如,WAN和/或LAN)、有線連結(例如,USB、 RS232、或乙太網)、無線連接(例如,紅外線、藍牙、或802.11 )、移動裝 置通信連結(例如,GPRS或GSM)、公共交換電話網(PSTN)連結、或這些的任 何結合來實現通信機制104。這裡能夠使用許多通信體系結構和協議。
捕獲裝置106包括像收發機那樣的設備,以與通信機制104相接,並且 是能夠通過輸入裝置168數字地捕獲圖像或數據的任何裝置。捕獲裝置106 能夠選擇性地包括輸出裝置170,並且選擇性地為可攜式的。例如,捕獲裝 置106是標準的蜂窩式相機手機、PDA裝置、數字相機、條形碼讀取器、射 頻識別(RFID)閱讀器、計算機外圍設備,如標準的網絡攝像機、或內置裝置, 如PC的碎見頻卡。參考圖2A-2D,更詳細地分別描述捕獲裝置106a-d的幾個 例子。另外,捕獲裝置106可以包括使得基於內容的檢索能夠進行並且將捕 獲裝置106連接至MMR系統100a/100b的基礎設施的軟體應用程式。參考圖 2E可找到捕獲裝置106的更多功能詳情。根據這個公開發明,許多傳統和定 制的捕獲裝置106,以及其各自的功能和體系結構將很明顯。
存儲器108存儲可能由處理器102執行的指令和/或數據。該指令和/或數據可以包括用於執行於此所描述的任何和/或所有的技術的代碼。存儲器
108可以是動態隨機存取存儲器(DRAM)裝置、靜態隨機存取存儲器(SRAM) 裝置、或任何其它適當的存儲器裝置。參考圖4,下文將更加詳細地描述存 儲器108。在一個特定實施例中,存儲器108包括畫R軟體套裝、作業系統 和其它應用程式(如,文字處理應用程式、電子郵件應用程式、金融應用程 序、和網頁瀏覽器應用程式)。
基礎介質存儲器160是用於以其原始的形式存儲第二介質類型的,並且 MMR介質存儲器162是用於存儲醒R文檔、資料庫和其它如於此所描述的, 以創建羅R環境的信息的。儘管分別示出,在另一個實施例中,基礎介質存 儲器160和薩R介質存儲器162可以是相同存儲器裝置的一部分,或是集成 一體的。數據存儲器160、 162進一步存儲關於MMR處理器102的數據或指令, 並包括一個或多個裝置,其包括,例如,硬碟驅動器、軟盤驅動器、CD-ROM 裝置、DVD-R0M裝置、DVD-RAM裝置、DVD-RW裝置、快閃記憶體裝置、或任何其它 適當的大容量存儲裝置。
輸出裝置164可操作地連接至固R處理器102,並表示為輸出像顯示的 那些、聲音、或當前內容那樣的數據而配備的任何裝置。例如,輸出裝置l64 能夠是像印表機、顯示裝置、和/或揚聲器那樣的多種類型的任何一個。示例 性的顯示輸出裝置164包括陰極射線管(CRT)、液晶顯示器(LCD)、或任何 其它類似配備的顯示裝置、屏幕、或監視器。在一個實施例中,輸出裝置U4 配備有觸控螢幕,其中觸摸敏感、透明的面板覆蓋輸出裝置164的屏幕。
輸入裝置166可操作地連接至薩R處理器102,並且是像鍵盤和光標控 制器、掃描儀、多功能印表機、數碼或視頻相機、數字按鍵鍵盤、觸控螢幕、 探測器、RFID特徵閱讀器、開關、或允許用戶與系統100a互動的任何機制 裝置那樣的多種類型的任何一個。在一個實施例中,輸入裝置166為鍵盤和 光標控制器。光標控制器可包括,例如,滑鼠、軌跡球、觸筆、筆、觸控螢幕 和/或鍵盤、光標方向鍵、或其它促使光標移動的機制裝置。在另一個實施例 中,輸入裝置166是麥克風、為一般用途的計算機內使用而設計的音頻添加/ 擴展卡、模擬-數字轉換器、和數位訊號處理器,以便利聲音識別和/或音頻 處理。
圖1B闡明根據本發明的另一個實施例而配置的,R系統100b的功能框 圖。在這個實施例中,函R系統100b包括醒R計算機112 (由用戶110操作)、網絡介質伺服器114、和產生列印文檔118的印表機116。 MMR系統100b進 一步包括辦公室入口 120、服務提供者伺服器122、電連接至機頂方框126的 電子顯示器124、和文檔掃描儀127。通過網絡128提供畫R計算機112、網 絡介質伺服器114、印表機116、辦公室入口 120、服務提供者伺服器122、 機頂方框126、和文檔掃描儀127之間的通信連接,網絡128能夠是LAN (例 如,辦公或家庭網絡)、WAN(例如,網際網路或公司網絡)、LAN/WAN的結合、 或通過其多個計算裝置可以通信的任何其它數據路徑。
腿R系統1 OOb進一步包括能夠通過蜂窩式基礎設施132、無線保真(Wi-Fi) 技術134、藍牙技術136、和/或紅外線(IR)技術138,與一個或多個計算 機112、網絡介質伺服器114、用戶印表機116、辦公室入口 120、服務提供 者伺服器122、電子顯示器124、機頂方框126、和文檔掃描儀127無線通信 的捕獲裝置106。可替代地,或者另外,捕獲裝置106能夠通過有線技術140, 以有線的方式與畫R計算機112、網絡介質伺服器114、用戶印表機116、辦 公室入口 120、服務提供者伺服器122、電子顯示器124、機頂方框126、和 文檔掃描儀127通信。儘管在圖1B中如分離的元素一樣示出Wi-Fi技術134、 藍牙技術136、 IR技術138、和有線技術140,這樣的技術也能夠被集成為處 理環境(如,腦R計算機112、網絡介質伺服器114、捕獲裝置106,等等)。 另外,MMR系統100b進一步包括與服務提供者伺服器122或網絡128無線或 有線通信的地理位置機制裝置142。這也能夠被集成於捕獲裝置106之中。
MMR用戶110為使用醒R系統100b的任何個人。醒R計算機112為任何 桌上型計算機、膝上型計算機、網絡計算機、或其它這樣的處理環境。用戶 印表機116為能夠產生列印文檔118的任何家庭、辦公、或商業印表機,打 印文檔118為由一個或多個列印頁面而形成的紙質文檔。
網絡介質伺服器114為保留由醒R系統100b的用戶通過網絡128訪問的 信息和/或應用程式的網絡計算機。在一個特定實施例中,網絡介質伺服器 114為集中式計算機,在其之上存儲多種介質文件,如文本源文件、網頁、 音頻和/或視頻文件、圖像文件(例如,靜態照片)、和諸如此類。網絡介質 伺服器114為,例如,康卡斯特公司的康卡斯特視頻點播伺服器、理光創新 公司的理光文檔中心、或谷歌公司的谷歌圖像和/或視頻伺服器。 一般而言, 網絡介質伺服器114提供對可能經由捕獲裝置106與列印文檔118結合、附 著於其上、或與其相關聯的任何數據的訪問。辦公室入口 120為用於捕獲醒R用戶110的環境中出現的事件,例如醒R 用戶110的辦公室中出現的事件,的可選擇的機制裝置。辦公室入口 120為, 例如,分離於醒R計算機112的計算機。在這種情形,辦公室入口 120通過 網絡128直接連接至醒R計算機112或連接至腦R計算機112。可替代地, 將辦公室入口 120建造成為畫R計算機112。例如,辦公室入口 120從傳統 的個人計算機(PC)而構建,並然後以支持任何相關聯的捕獲裝置106的適 當的硬體擴大充實。辦公室入口 120可以包括捕獲裝置,例如^L頻相^/L和音 頻錄音機。可替代地,辦公室入口 120可以捕獲和存〗渚來自薩R計算才幾112 的數據。例如,辦公室入口 120能夠接收和監控固R計算機112上出現的功 能和事件。結果,辦公室入口 120能夠記錄醒R用戶IIO的物理環境中的所 有的音頻和視頻,並記錄應R計算機112上出現的所有的事件。在一個特定 實施例中,辦公室入口 120捕獲來自畫R計算機112的事件,如編輯文檔時 的視頻屏幕捕獲。在這樣做時,辦公室入口 120捕獲當創建給定的文檔時, 所瀏覽的網站和所參閱的其它文檔。稍後通過他/她的應R計算機112或捕獲 裝置106,腦R用戶IIO可以利用那個信息。另外,辦公室入口 120可以用作 用戶添加至其文檔的剪輯的多媒體伺服器。此外,辦公室入口 120可以捕獲 其它辦公事件,例如當紙質文檔在桌面上時出現的談話(如,電話或辦公)、 電話上的討論、和辦公室中的小會議。通過為捕獲裝置106而發展的相同的 基於內容的檢索技術的使用,辦公室入口 120上的視頻相機(未示出)可以 識別顧R用戶110的物理桌面上的紙質文檔。
服務提供者伺服器122為保留醒R系統100b的畫R用戶110能夠通過網 絡128訪問的信息或應用程式的任何商業伺服器。特別地,服務提供者服務 器122為與醒R系統100b關聯的任何服務提供者的代表。服務提供者伺服器 122為,例如,有線TV提供者的商業伺服器,如康卡斯特公司;蜂窩式電話 服務提供者,如Verizon Wireless;網際網路服務提供者,如阿德爾菲亞通信; 在線音樂服務提供者,如索尼公司;以及諸如此類,但並不局限於此。
電子顯示器124為任何顯示裝置,例如,標準模擬或數位電視(TV)、純 平TV、平板顯示器、或投影系統,但並不局限於此。如已知的,機頂方框126 為處理來自圓盤式衛星電視天線、天線、電纜、網絡、或電話線的輸入信號 的接收機裝置。機頂方框的一個示例性製造商為Advanced Digital Droadcast (遠升科技)。機頂方框126電連接至電子顯示器124的視頻輸入。文檔掃描儀127為商業上可利用的文檔掃描儀裝置,例如松下公司的
KV-S2026C全彩色掃描儀。在現有列印文檔至MMR預備文檔的轉換中使用文 檔掃描儀127。
蜂窩式基礎設施132是多個蜂窩塔和其它蜂窩網絡互連的代表。特別地, 通過蜂窩式基礎設施132的使用,經由結合於裝置,例如結合於捕獲裝置106 的無線數據機,給可手握的、便攜的、以及車載的電話提供雙向聲音和
數據通信。
Wi-Fi技術134、藍牙技術136、和IR技術138為便利電子裝置之間的 無線通信的技術的代表。如已知的,Wi-Fi技術134是與基於802. 11標準的 無線區域網(WLAN)產品關聯的技術。如已知的,藍牙技術136是描述通過 短程無線連接的使用,蜂窩式電話、計算機、和PDA如何互相連接的電訊工 業規範。IR技術138允許電子裝置通過短程無線信號通信。例如,IR技術 138是電視遙控器、膝上型計算機、PDAs、和其它裝置所使用的視線無線通 信介質。IR技術138在從中微波至可見光以下的頻i普中工作。此外,在一個 或多個其它實施例中,可以使用IEEE 802.15 (UWB)和/或802. 16 (WiMAX) 標準支持無線通信。
有線技術140為任何有線通信機制,例如標準乙太網連接或通用串行總 線(USB)連接。通過使用蜂窩式基礎設施132、 Wi-Fi技術134、藍牙技術 136、 IR技術138、和/或有線技術140,捕獲裝置106能夠雙向地與醒R系 統100b的任何或所有的電子裝置通信。
地理位置機制裝置142為任何適用於確定地理位置的機制裝置。例如, 如已知的,地理位置機制裝置142為提供位置數據給地球上的GPS接收器的 GPS人造衛星。在圖1B中所示的示例性實施例中,GPS人造衛星通過與GPS 接收器(未示出)結合的連接至網絡128的服務提供者伺服器122,將位置 數據提供給畫R系統100b的用戶。可替代地,地理位置機制裝置142為提供 作為確定地理位置的設備的三角測量機制裝置、蜂窩塔識別(ID)機制裝置、 和/或增強的911服務的一組蜂窩塔(如,蜂窩式基礎設施132的一個子集)。 可替代地,通過來自WiFi訪問點或藍牙裝置的已知位置的信號強度測量而提 供地理位置機制裝置142。
在操作中,捕獲裝置106用作醒R用戶IIO所擁有的客戶機。其上存在 使得基於內容的檢索操作能夠進行,並通過蜂窩式基礎設施132、 Wi-Fi技術134、藍牙技術136、 IR技術138、和/或有線技術140將捕獲裝置106連接 至,R系統10 0b的基礎設施的軟體應用程式。另夕卜,在固R計算機112上存 在執行像列印捕獲操作、事件捕獲操作(如,保存文檔的編輯歷史)、伺服器 操作(如,用於稍後供應給其它對象而在謝R計算機112上所保存的數據和 事件)、或印表機管理操作(如,可以將印表機116設置為將像文檔布置和多 媒體剪輯那樣的畫R所需要的數據排隊)那樣的,但並不局限於此的幾個操 作的軟體應用程式。網絡介質伺服器114提供隸屬於列印文檔,如通過屬於 醒R用戶110的國R計算機112列印的列印文檔118,的數據的訪問。在這樣 做時,第二介質,如視頻或音頻,與第一介質,如紙質文檔關聯起來。下文 參考圖2E、 3、 4、和5描述用於形成第二介質至第一介質的關聯的軟體應用 程序和/或機制的更多細節。 捕獲裝置
圖2A、 2B、 2C、和2D闡明根據本發明的實施例的示例性捕獲裝置106。 更明確地,圖2A示出為蜂窩式照相手機的捕獲裝置106a。圖2B示出為PDA 裝置的捕獲裝置106b。圖2C示出為計算機外圍裝置的捕獲裝置106c。計算 機外圍裝置的一個例子是任何標準的網絡攝像機。圖2D示出為內嵌式計算裝 置(如,腦R計算機112)的捕獲裝置106d。例如,捕獲裝置106d為計算機 圖形卡。參考圖2E可找到捕獲裝置106的示例細節。
在捕獲裝置106a和106b的情形中,捕獲裝置106可以為MMR用戶110 所有,並且可以通過地理位置機制裝置142或通過蜂窩式基礎設施132內的 每個蜂窩塔的ID號跟蹤其物理位置。
現在參考圖2E,示出根據本發明的捕獲裝置106的一個實施例的功能框 圖。捕獲裝置106包括處理器210、顯示器212、數字按鍵鍵盤214、存儲裝 置216、無線通信連結218、有線通信連結220、顧R軟體套裝222、捕獲裝 置用戶接口 (UI) 224、文檔指紋匹配模塊226、第三方軟體模塊228、和多 種捕獲機制裝置230的至少一個。示例性捕獲機制裝置230包括視頻相機232、 數位相機234、錄音器236、電子高亮器238、雷射器240、 GPS裝置242、和 RFID閱讀器244,但並不局限於此。
處理器210為中央處理單元(CPU),如英特爾公司製造的奔騰微處理器, 但並不局限於此。顯示器212為任何標準的視頻顯示機制裝置,如可手握的 電子裝置中所使用的那些。更明確地,例如,顯示器212為任何數字顯示器,如液晶顯示器(LCD)或有機發光二極體(0LED)顯示器。數字按鍵鍵盤214 為任何標準的字母數字符號進入機制裝置,如標準計算裝置和像蜂窩式手機 那樣的可手握的電子裝置中所使用的數字按^^建盤。存儲裝置216為任何易 失性或非易失性存儲裝置,例如,如熟知的,硬碟驅動器或隨機存取存儲(RAM ) 裝置。
無線通信連結218為通過如所熟知的訪問接入點(未示出)和LAN (如, IEEE 802.11 Wi-Fi或藍牙技術)提供直接的點對點通信或無線通信的無線 數據通信機制。有線通信連結220為,例如,通過標準乙太網和/或USB連接 提供直接通信的有線數據通信機制。
固R軟體套裝222為執行像將一種類型的介質與第二種類型合併那樣的 MMR操作的全部管理軟體。參考圖4可找到畫R軟體套裝2 2 2的更多細節。
捕獲裝置用戶接口 (UI) 224為用於操作捕獲裝置106的用戶接口。通 過使用捕獲裝置UI 224,為了在其上的功能的選擇,將各種各樣的菜單呈現 給MMR用戶110。更明確地,捕獲裝置UI 224的菜單允許應R用戶110管理 任務,如與紙質文檔交互作用、從現有文檔中讀出數據、將數據寫入現有文 檔、查看並與那些文檔所關聯的擴增實境交互作用、以及查看並與在他/她的 MMR計算機112上所顯示的文檔關聯的擴增實境交互作用,但並不局限於此。
文檔指紋匹配模塊226為用於從通過捕獲裝置106的至少一個捕獲機制 裝置230而捕獲的文本圖像中提取特徵的軟體模塊。文檔指紋匹配模塊226 也能夠執行所捕獲的圖像與文檔的資料庫之間的模式匹配。在最基本的水平, 以及根據一個實施例,文檔指紋匹配模塊226確定較大的頁面圖像內的圖像 碎片的位置,其中那個頁面圖像是從很大的文檔集中選擇的。文檔指紋匹配 模塊226包括接收所捕獲的數據、從所捕獲的數據中提取圖像的表示、執行 文檔內的碎片識別和移動分析、執行決定性結合、以及輸出輸入圖像所位於 的頁面內的一列x-y位置的例程和程序。例如,為了識別從其中提取它的文 檔內的文檔和章節,文檔指紋匹配模塊226可以是結合從文本的片段的圖像 中所提取的水平和垂直特徵的算法。 一旦提取了特徵,為了識別符號文檔, 就查詢,例如,位於醒R計算機112或網絡介質伺服器114上的列印文檔索 引(未示出)。在捕獲裝置UI 224的控制下,文檔指紋匹配模塊226可訪問 列印文檔索引。參考圖3的畫R計算機112更加詳細地描述列印文檔索引。 注意到在一個可替代的實施例中,文檔指紋匹配模塊226可能為羅R計算機112的一部分,並不位於捕獲裝置106內。在這樣的實施例中,捕獲裝置106 將原始的捕獲數據發送至固R計算機112,以便圖像提取、模式匹配、和文 檔及位置識別。在另一個實施例中,文檔指紋匹配模塊226僅執行特徵提取, 並將所提取的特徵發送至醒R計算機112,以便模式匹配和識別。
第三方軟體模塊228為用於增強可能在捕獲裝置106上所出現的任何操 作的任何第三方軟體模塊的代表。示例性的第三方軟體包括安全軟體、圖像 感知軟體、圖像處理軟體、和醒R資料庫軟體。
如上文所提到的,捕獲裝置106可以包括任何數量的捕獲機制裝置230, 現在將描述其示例。
視頻相機232為如在標準數字相機或一些蜂窩手機中可找到的那樣的數 字視頻記錄裝置。
數位相機234為能夠捕獲數字圖像的任何標準數字相機裝置。
錄音器236為能夠捕獲音頻信號並以數字形式輸出它的任何標準音頻記 錄裝置(麥克風和相關聯的硬體)。
電子高亮器238為提供掃描、存儲和傳遞列印文本、條形碼、和小圖像 至PC、膝上型計算機、或PDA裝置的能力的電子高亮器。例如,電子高亮器 238為WizCom Technologies公司的快速連結筆手握式掃描儀,其允許信息 被存儲在筆上或通過一系列埠、紅外通信、或USB適配器,被直接傳遞至 計算機應用程式。
如熟知的,雷射器240為通過受激發射產生相干的、接近單色光的光源。 例如,雷射器240為標準的雷射器二極體,其為當施加正向偏壓時,發射相 幹光的半導體裝置。與雷射器240關聯並包括於其中的是測量將雷射器240 引導於此的圖像所反射的光的總量的探測器。
GPS裝置242是供給位置數據,如數字煒度和經度數據,的任何可攜式 GPS接收機裝置。可攜式GPS裝置242的例子為來自索尼公司的NV-U70便攜 式人造衛星導航系統、和來自Thales North America公司的麥哲倫牌 RoadMate系列GPS裝置、Meridian系列GPS裝置、和Explorist系列GPS裝 置。如熟知的,GPS裝置242給多個地理位置機制裝置142提供依靠三角測 量,部分地,實時地,確定捕獲裝置106的位置的方式。
RFID閱讀器244為商業上可利用的RFID標籤閱讀器系統,如德州儀器 所製造的TI RFID系統。RFID標籤為用於通過^f吏用無線電波識別唯一的項目的無線裝置。如熟知的,RFID標籤由微晶片構成,該微晶片附著於天線,並 且在其上存儲有唯一的數字識別號碼。
在一個特定實施例中,捕獲裝置106包括處理器210、顯示器212、鍵盤 214、存儲裝置216、無線通信連結218、有線通信連結22G、醒R軟體套裝 222、捕獲裝置UI 224、文檔指紋匹配模塊226、第三方軟體模塊228、和捕 獲機制裝置230的至少一個。在這樣做時,捕獲裝置106為一個全功能裝置。 可替代地,捕獲裝置106可以具有較少的功能,並因而可以包括有限的一組 功能部件。例如,醒R軟體套裝222和文檔指紋匹配模塊226可以遠程地位 於,例如,醒R系統100b的畫R計算機112或網絡介質伺服器114上,並由 捕荻裝置106通過無線通信連結218或有線通信連結220訪問。
畫R計算枳j
現在參考圖3,示出根據本發明的實施例而配置的醒R計算機112。如能 夠看到的,,R計算機112連接至包括一個或多個多^ 某體(薩)文件336的 網絡介質伺服器114、產生列印文檔118的用戶印表機116、文檔掃描儀127、 和包括捕獲裝置UI 2 2 4及文檔指紋匹配模塊2 2 6的第 一 實例的捕獲裝置106 。 這些部件之間的通信連結可以直接連結或通過網絡。另外,文檔掃描儀127 包括文檔指紋匹配模塊226,的第二實例。
這個示例性實施例的MMR計算4幾112包括一個或多個源文件310、第一 源文檔(SD)瀏覽器312、第二SD瀏覽器314、印表機驅動器316、列印文 檔(PD)捕獲模塊318、存儲PD索引322的文檔事件資料庫320、事件捕獲 模塊324、文檔分析器模塊326、多媒體(固)剪輯瀏覽器/編輯器模塊328、 MM的印表機驅動器330、文檔-視頻紙(DVP)列印系統332、和視頻紙文檔 334。
源文件310是為文檔(或其一部分)的電子表示的任何源文件的代表。 示例性源文件310包括超文本標記語言(HTML)文件、微軟Word文件、微軟 PowerPoint文件、簡單文本文件、可攜式文檔格式(PDF)文件、及諸如此 類,其存儲在應R計算機112的硬碟(或其它適當的存儲器)上。
第一 SD瀏覽器312和第二SD瀏覽器314為關於提供與源文件310相關
二SD瀏覽器312、 314可以用來檢索原始的HTML文件或醒剪輯,以在畫R 計算機112上顯示。如熟知的,印表機驅動器316為控制應用程式與頁面描述語言或任何特 殊的印表機所使用的印表機控制語言之間的通信連結的印表機驅動器軟體。
特別地,無論何時列印一個文檔,如列印文檔118,印表機驅動器316都將 具有正確的控制命令的數據,例如理光公司所提供的用於他們的列印裝置的 那些,饋給印表機116。在一個實施例中,印表機驅動器316不同於傳統的 列印驅動器,因為它自動捕獲每個列印頁面上的每個字符的x-y坐標、字體、 和磅值的表示。換句話說,其捕獲有關所列印的每個文檔的內容的信息,並 將那個數據反饋給PD捕獲模塊318。
PD捕獲模塊318為捕獲文檔的列印表示,以致能夠檢索列印頁面上的字 符和圖形的布局的軟體應用程式。另外,通過使用PD捕獲模塊318,在列印 時刻,實時地,自動地捕獲文檔的列印表示。更明確地,PD捕獲模塊318為 捕獲列印頁面上的文本的二維布置,並將這個信息傳送至PD索引322的軟體 例程。在一個實施例中,PD捕獲模塊318通過捕捉列印頁面上的每個字符的 Windows文本布局命令而操作。文本布局命令給作業系統(OS)指示列印頁 面上的每個字符的x-y位置、以及字體、磅值,等等。本質上,PD捕獲模塊 318監測聽傳送至印表機116的列印數據。在所示的例子中,PD捕獲模塊318 連接至第一SD瀏覽器312的輸出,以便數據的捕獲。可替代地,可以在列印 機驅動器316內直接實現PD捕獲模塊318的功能。根據這個公開發明,各種 各樣的配置將會很明顯。
根據本發明的一個實施例,文檔事件資料庫320是為存儲列印文檔與事 件之間的關係而更改的任何標準的資料庫。(參考圖34A,下文進一步將文檔 事件資料庫320描述為醒R資料庫)。例如,文檔事件資料庫320存儲從源文 件310 (如,Word、 HTML、 PDF文件)至與列印文檔118相關聯的事件的雙向 連結。示例性事件包括列印了 Word文檔之後即刻在捕獲裝置106上的多媒體 剪輯的捕獲、用捕獲裝置106的客戶機應用程式將多媒體添加至文檔、或多 媒體剪輯的註解。另外,可以存儲在文檔事件資料庫320中,與源文件310 關聯的其它事件包括當打開、關閉、或移動給定的源文件310時的日誌;當 給定的源文件310處於薩R計算才幾112的桌面上的活動應用程式中時的曰志; 文檔"複製"和"移動"操作的日誌時間和目的地;以及記錄給定源文件310 的編輯歷史。這樣的事件由事件捕獲模塊324捕獲並存儲在文檔事件資料庫 320中。文檔事件資料庫320連接至事件捕獲模塊324的輸出、PD捕獲模塊318和掃描儀127,以接收源文件310,並且也連接至捕獲裝置106,以接收 查詢和數據,並提供輸出。
文檔事件資料庫320也存儲PD索引322。 PD索引322為將從列印文檔的 圖像所提取的特徵映射到它們的符號形式(如掃描的圖像至單詞)上的軟體 應用程式。在一個實施例中,PD捕獲模塊318給PD索引322提供列印頁面 上的每個字符的x-y位置、以及字體、磅值,等等。在列印給定文檔的時候 構建PD索引322。然而,捕獲所有的列印數據並以能夠在稍後的時間詢問的 方式將其保存在PD索引322中。例如,如果列印文檔118包含物理上位於頁 面上單詞"rose"之上一行的單詞"garden",則PD索引322支持這樣的查 詢(即,單詞"garden"在單詞"rose"之上)。PD索引322包含在其上單詞
"garden"出現在單詞"rose"之上的哪個文檔、哪個頁面、和那些頁面內的 哪個位置的記錄。因而,組織PD索引322,以支持基於特徵或基於文本的查 詢。通過在列印操作期間使用PD捕獲模塊318和/或通過在掃描操作期間使 用文檔掃描儀127的文檔指紋匹配模塊226,產生作為列印文檔的表示的PD 索引322的內容。下文將參考圖34A-C、 35、和36描述資料庫320和PD索 引322的另外的體系結構和功能。
事件捕獲模塊324為在醒R計算機112上捕獲與給定的列印文檔118和/ 或源文件310相關聯的事件的軟體應用程式。這些事件在給定的源文件310 的生命周期期間被捕獲並被保存在文檔事件資料庫320中。在一個特定的例 子中,通過使用事件捕獲模塊324,捕獲涉及醒R計算機112的瀏覽器,例 如第一SD瀏覽器312中活動的HTML文件的事件。這些事件可能包括在,R 計算機112上所顯示的HTML文件的時間或者在顯示或列印HTML文件的同時 開著的其它文檔的文件名。例如,如果醒R用戶110想要知道(在稍後的時 刻)在顯示或列印HTML文件的同時他/她正在查看或工作於哪個文檔,則這 種事件信息是很有用的。事件捕獲模塊324所捕獲的示例性事件包括文檔編 輯歷史;來自接近當給定的源文件310在桌面上時的時刻出現的辦公室會議 的視頻(例如,如由辦公室入口 120所捕獲的);以及當給定的源文件310是 打開著的時候出現的電話(如,由辦公室入口 120所捕獲的)。
事件捕獲模塊324的示例性功能包括1 )跟蹤-跟蹤活動文件和應用程 序;2)鍵擊捕獲-鍵擊捕獲和與活動應用程式的關聯;3)幀緩衝器捕獲和索 引標定-用幀緩沖器數據的光學字符識別(OCR)結果給每個幀緩衝器圖像編索引,以致能夠將列印文檔的章節與其在屏幕上顯示的時間相匹配。可替代 地,能夠用捕捉由PC作業系統所發布的PC桌面的文本繪圖命令的圖形顯示
接口 (GDI)陰影dll來捕獲文本。醒R用戶110可以將捕獲裝置106指向文 檔,並確定何時它在M織計算機112的桌面上是活動的;以及4)讀取歷史 捕獲-為了跟蹤多長時間,以及特別的文檔的哪個部分對於固R用戶IIO是可 見的,幀緩衝器捕獲和索引標定操作的數據與文檔在他/她的,R計算機112 的桌面上活動的時間的分析連接。在這樣做時,為了推斷薩R用戶IIO是否 正在讀取文檔,可能出現與其它事件的關聯,如按鍵或滑鼠移動。
文檔事件資料庫320、 PD索引322、和事件捕獲模塊324的結合在MMR 計算機112上局部地實現,或者可替代地,作為共享的資料庫而實現。如果 局部地實現,與以共享的方式實現相比較,則需要較小的安全性。
文檔分析器模塊326為軟體應用程式,其分析和各個列印文檔118有關 的源文件310,以定位在其中的有用的對象,如統一資源定位符(URL)、地 址、標題、作者、時間、或表示位置的短語,如,Hallidie Building。在這 樣做時,可確定在源文件310的列印版本中的那些對象的位置。然後接收裝 置能夠使用文檔分析器模塊326的輸出,以用另外的信息擴增文檔118的表 述,並提高模式匹配的準確性。此外,例如在URL的情形中,接收裝置也能 夠採取動作使用位置檢索與URL相關聯的網頁。連接文檔分析器模塊326以 接收源文件310,並且該模塊將其輸出提供給文檔指紋匹配模塊226。儘管僅 作為連接至捕獲裝置的文檔指紋匹配模塊226而示出,但文檔分析器模塊326 的輸出能夠連接至所有或任何數量的文檔指紋匹配模塊226,無論它們位於 何處。此外,文檔分析器模塊326的輸出也能夠存儲於文檔事件資料庫320 中,以便稍後使用。
醒剪輯瀏覽器/編輯器模塊328為提供創作功能的軟體應用程式。醒剪 輯瀏覽器/編輯器模塊328為單獨的軟體應用程式或,可替代地,,為文檔瀏 覽器上運行的插件(由第二SD瀏覽器314的虛線表示)。醒剪輯瀏覽器/編 輯器模塊328將多媒體文件顯示給用戶,並連接至網絡介質伺服器,以接收 多媒體文件336。另外,當畫R用戶IIO正創作文檔(如,將多媒體剪輯附 著於紙質文檔)時,躍剪輯瀏覽器/編輯器模塊328為這種功能的支持工具。 MM剪輯瀏覽器/編輯器模塊328為示出元數據,如從接近於當捕獲多媒體時 的時刻所列印的文檔中所分析的信息,的應用程式。畫的印表機驅動器330提供創作固R文檔的能力。例如,固R用戶llO 可以在由畫的印表機驅動器330所產生的UI中加亮文本,並將包括檢索多 媒體數據或在網絡128上或在畫R計算機112上執行一些其它過程的動作添 加至該文本。固的印表機驅動器330與DVP列印系統332的結合提供使用條 形碼的可供選擇的輸出格式。這種格式不必定需要基於內容的檢索技術。腦 的印表機驅動器330為用於支持視頻紙技術,即,視頻紙334,的印表機驅 動器。國的印表機驅動器330創建包括條形碼的紙質表示,作為訪問多媒體 的方式。相比而言,印表機驅動器316創建包括應R技術的紙質表示,作為 訪問多媒體的方式。MM剪輯瀏覽器/編輯器328與SD瀏覽器314的結合中所 體現的創作技術能夠創建與SD瀏覽器312相同的輸出格式,因而使得能夠進 行為基於內容的檢索準備的,R文檔的創建。DVP列印系統332執行與文檔 相關聯的文檔事件資料庫320中的任何數據至其列印表示的連接操作,或者 用明確的或者用隱含條形碼。隱含條形碼指像條形碼一樣使用的文本特徵的 模式。
視頻紙334為用於在可列印介質,例如紙,上呈現音頻-視頻信息的技術。 在視頻紙中,條形碼用作計算機可訪問的或其中所存儲的電子內容的索引。 用戶掃描與系統所輸出的文本有關的條形碼和視頻剪輯或其它多媒體內容。 存在用於列印音頻或視頻紙的系統,並且這些系統本質上提供關於多媒體信 息的基於紙的4妻口。
網絡介質伺服器114的醒文件336為多種文件類型和文件格式的任何一 種的集合的代表。例如,,文件336為文本源文件、網頁、音頻文件、視頻 文件、音頻/視頻文件、和圖像文件(如,數碼照片)。
如圖1B中所描述的,將文檔掃描儀127用於現有列印文檔至薩R-預備 文檔的轉換。然而,繼續參考圖3,通過將文檔指紋匹配模塊226,的特徵提 取操作應用於所掃描的文檔的每個頁面,將文檔掃描儀127用於腦R-可能的 現有文檔。隨後,以掃描和特徵提取搡作的結果增加PD索引322,並因而, 將所掃描的文檔的電子表示存儲於文檔事件資料庫320中。然後能夠將PD索 引322中的信息用於創作MMR文檔。
繼續參考圖3,注意到MMR計算機112的軟體功能並不僅局限於固R計 算機112。可替代地,可以將圖3中所示的軟體功能分布於醒R計算機112、 網絡介質伺服器114、服務提供者伺服器122與畫R系統100b的捕獲裝置106之間的任何用戶定義的配置中。例如,源文件310、 SD瀏覽器312、 SD瀏覽 器314、印表機驅動器316、 PD捕獲模塊318、文檔事件資料庫320、 PD索引 322、事件捕獲模塊324、文檔分析器模塊326、應剪輯瀏覽器/編輯器模塊 328、畫的印表機驅動器330、和DVP列印系統332可以完全位於捕獲裝置 106之內,並從而,給捕獲裝置106提供增強的功能。 MMR軟體套裝
圖4闡明根據本發明的一個實施例的MMR軟體套裝222中所包括的一組 軟體部件。應該理解,醒R計算機112、捕獲裝置106、網絡介質伺服器114 和其它伺服器中可以包括所有或一些國R軟體套裝222。另外,醒R軟體套裝 222的其它實施例可能具有從它們的一個至所有的任何數量的所闡明的部件。 這個例子的醒R軟體套裝222包括多媒體註解軟體410,其包括基於文本 內容的檢索部件412、基於圖像內容的檢索部件414、和密寫更改部件416; 紙張讀取歷史日誌418;在線讀取歷史日誌420;合作文檔查閱部件422、實 時通知部件424、多媒體4企索部件426;桌面視頻提醒部件428;網頁提醒部 件430、物理歷史日誌432;完整表格查閱器部件434;時間輸送部件436、 位置告知部件438、 PC創作部件44G;文檔創作部件442;捕獲裝置創作部件 444;無意識上載部件446;文檔版本^r索部件448; PC文檔元數據部件450; 捕獲裝置UI部件452;和特定領域部件454。
根據一個特定實施例,多媒體註解軟體410結合文檔事件資料庫320的 組織形成醒R系統100b的基本技術。更明確地,多媒體註解軟體410是用於 管理紙質文檔的多媒體註解的。例如,腦R用戶110將捕獲裝置106指向紙 質文檔的任何章節,並然後使用捕獲裝置106的捕獲機制裝置230的至少一 個來給那個章節添加註解。在一個特定的例子中,律師口述有關合同的章節 的記錄(創建音頻文件)。將多媒體數據(音頻文件)自動附著於文檔的原始 電子版本。文本隨後的列印輸出可選地包括那些註解的存在的指示。
序。例如,通過使用基於文本內容的檢索部件412,從文本碎片中檢索內容, 識別文檔內的原始文檔和章節,或者識別連接至那個碎片的其它信息。基於 文本內容的檢索部件412可以利用基於OCR的技術。可替代地,用於執行從 文本的基於內容的檢索的操作的不基於OCR的技術包括文本碎片中的單詞長 度的二維布置。基於文本內容的檢索部件412的一個例子為結合從文本片段的圖像中所提取的水平和垂直特徵的算法,以識別從其中提取它的文檔內的 文檔和章節。能夠串行地、並行地、或同時地使用水平和垂直特徵。使用這
樣的不基於OCR的特徵集,以致在出現噪聲時提供高速實現與強大功能。
基於圖像內容的檢索部件414為從圖像中檢索基於內容的信息的軟體應 用程序。基於圖像內容的檢索部件414執行所捕獲的數據與資料庫320中的 圖像之間的圖像比較,以產生一列可能的圖像匹配和相關聯的置信水平。另 外,每個圖像匹配可以具有相關聯的數據或響應用戶輸入而執行的動作。在 一個例子中,通過將圖像轉換為能夠用來查詢關於具有相同的特徵布置的圖 像的圖像資料庫的矢量表示,基於圖像內容的檢索部件414可檢索,例如, 基於光柵圖像(例如,地圖)的內容。可選擇的實施例使用圖像的色彩內容 或圖像內的對象的幾何布置,以在資料庫中查找匹配圖像。
密寫更改部件416為在列印之前執行密寫更改的軟體應用程式。為了使 ,R應用程式更好地運作,在列印它們之前,將數字信息添加至文本和圖像。 在可替代的實施例中,密寫更改部件416產生並存儲國R文檔,該文檔包括 l)像文本、音頻、或視頻信息那樣的原始基本內容;2)以任何像文本、音 頻、視頻、Java的Applets、超文本連結,等等那樣的形式存在的另外的內 容。密寫更改能夠包括在彩色或灰度圖像中嵌入水印,文檔背景上的光點圖 形的列印,或者列印字符的輪廓至編碼數字信息的細微更改。
紙張讀取歷史日誌418為紙質文檔的讀取歷史日誌。紙張讀取歷史日誌 418位於,例如,文檔事件資料庫320中。紙張讀取歷史日誌418是基於由 理光創新公司開發的來自視頻的文檔識別技術的,其用於產生醒R用戶110 所讀取的文檔的歷史。例如,對於提醒MMR用戶110文檔的讀取和/或任何相 關聯的事件,紙張讀取歷史日記418是很有用的。
在線讀取歷史日誌420為在線文檔的讀取歷史日誌。在線讀取歷史曰志 420是基於作業系統事件的分析,並位於,例如,文檔事件資料庫320中。 在線讀取歷史日誌420是醒R用戶110所讀取的在線文檔和讀取文檔的哪個 部分的記錄。可以以許多方式將在線讀取歷史日誌420的條目列印到任何隨 後的列印輸出上,例如通過在每個頁面的底部提供筆記,或者通過用不同的 顏色加亮基於讀取每段所花費的時間量的文本。另外,多媒體註解軟體410 可以將這種數據編入PD索引322中。可選地,可以通過裝備有如監控固R計 算機112的face detection system那樣的裝置的固R計算機112援助在線讀取歷史日誌420。
合作文檔查閱部件422為通過將他/她的捕獲裝置106指向文檔的任何章 節,允許相同紙質文檔的不同版本的不止一個閱讀器查閱其它閱讀器所應用 的注釋的軟體應用程式。例如,在捕獲裝置106上註解可以顯示為文檔略圖 之上的覆蓋層。合作文檔查閱部件422可以用任何類型的現有合作軟體實現, 或與任何種類的現有合作軟體合作。
實時通知部件424為執行正被讀取的文檔的實時通知的軟體應用程式。 例如,當應R用戶110讀取文檔時,他/她的讀取蹤跡被張貼於博客或在線公
多媒體檢索部件426為從任意的紙質文檔中檢索多媒體的軟體應用程 序。例如,通過將捕獲裝置106指向文檔,MMR用戶110可以檢索當任意的 紙質文檔呈現在顧R用戶110的桌上時發生的所有會話。這假設畫R用戶110 的辦公室中存在捕獲多媒體數據的辦公室入口 12 0(或其它適當的機制裝置)。
桌面視頻提醒部件428為提醒固R用戶110在畫R計算機112上出現的 事件的軟體應用程式。例如,通過將捕獲裝置106指向紙質文檔的一個章節, 畫R用戶110可以看見示出當那個章節可見時發生的薩R計算機112的桌面 的變化的視頻剪輯。另外,桌面視頻提醒部件428可以用於4企索薩R計算機 112所記錄的其它多媒體,例如畫R計算機112的周圍所呈現的音頻。
網頁提醒部件430為提醒固R用戶110在他/她的醒R計算機112上被查 看的網頁。例如,通過在紙質文檔上搖擺捕獲裝置106的鏡頭,應R用戶110 可以看見當應R計算機112的桌面上示出文檔的相應章節時被查看的網頁的 蹤跡。可以在像SD瀏覽器312、 314那樣的瀏覽器中,或者在捕獲裝置106 的顯示器212上示出網頁。可替代地,網頁作為原始URL呈現在捕獲裝置106 的顯示器212上或薩R計算機112上。
物理歷史日誌432存在於,例如,文檔事件資料庫320中。物理歷史日 志432為紙質文檔的物理歷史日誌。例如,醒R用戶110將他/她的捕獲裝置 106指向紙質文檔,並且通過使用物理歷史日誌432中所存儲的信息,可確 定與過去某個時刻感興趣的文檔相鄰的其它文檔。例如,RFID類似的跟蹤系 統可便利這種操作。在這種情形,捕獲裝置106包括RFID閱讀器244。
完整表格查閱器部件434為檢索先前所獲取的用於完善表格的信息的軟 件應用程式。例如,MMR用戶110將他/她的捕獲裝置106指向空白表格(例如,從網站所列印的醫療索賠表格),並提供有先前所輸入的信息的歷史。隨 後,由這個完整表格查閱器部件434用這個先前所輸入的信息自動填充該表 格。
時間輸送部件436為檢索文檔過去的和將來的版本的源文件,並檢索和 顯示與那些版本相關聯的 一 列事件的軟體應用程式。這個操作補償手頭上的 列印文檔可能是從在與之相關聯的最重要的外部事件(如,討論和會議)之 後數月所創建的一版文檔而產生的事實。
位置告知部件438為管理位置已知的紙質文檔的軟體應用程式。例如, RFID類似的跟蹤系統便利了位置已知的紙質文檔的管理。例如,捕獲裝置106 整天捕獲醒R用戶110的地理位置的蹤跡,並掃描附著於包含文檔的文檔或 文件夾的RFID標籤。RFID掃描操作由捕獲裝置106的RFID閱讀器244執行, 以探測其範圍內的任何RFID標籤。可以通過蜂窩式基礎設施132內的每個蜂 窩塔的識別號,或者可替代地,經由與地理位置機制裝置142結合的捕獲裝 置106的GPS裝置242 ,跟蹤醒R用戶110的地理位置。可替代地,可以以 "總是開著的視頻"或捕獲裝置106的視頻相機232完成文檔識別。位置數 據提供"地理位置參考"文檔,其使能整天示出文檔位於何處的基於地圖的 接口。 一個應用可能是攜帶文件拜訪遠程客戶機的律師。在可替代的實施例 中,文檔118包括當移動文檔並執行一些初步的外形探測操作時能夠感知的 附著於其上的感知機制裝置。感知功能是經由附著於紙質文檔的一組迴轉儀 或類似的裝置的。基於位置信息,醒R系統100b指示何時"呼叫"所有者的 可攜式電話,以告訴他/她文檔正移動。可攜式電話可以將那個文檔添加至其 虛擬短例。另外,這是"無形"條形碼的概念,其為捕獲裝置106的視頻相 機232或數位相機234可見的,但對於人而言是不可見的或非常微弱的機器 可讀記號。可以考慮在捕獲裝置106上可以被解碼的各種各樣的墨標記和密 寫或,列印圖像水印技術,來確定位置。
PC創作部件440為在PC上,如在,R計算機112上執行創作操作的軟 件應用程式。PC創作部件440作為現有創作應用程式,如Microsoft Word、 PowerPoint和網頁創作包,的插件而提供。PC創作部件440允許醒R用戶 110準備具有與來自他/她的願R計算機112的事件的連結或者與他/她的環 境中的事件的連結的紙質文檔;允許自動產生具有連結的紙質文檔,例如被 自動地連結至從其產生它的Word文件的列印文檔118;或者允許醒R用戶110檢索Word文件,並將其交給其他人。在此將具有連結的紙質文檔稱為MMR文 檔。參考圖5進一步描述腦R文檔的更多細節。
文檔創作部件442為執行現有文檔的創作操作的軟體應用程式。能夠, 例如,或者作為個人編輯,或者作為企業編輯而實現文檔創作部件442。在 個人編輯中,,R用戶IIO掃描文檔並將它們添加至腦R文檔資料庫(例如, 文檔事件資料庫320 )。在企業編輯中,出版者(或者第三方)從原始電子源 (或者電子校樣本)創建畫R文檔。這個功能可以#:嵌入高端發布包(例如, Adobe Reader)並與另 一個實體所提供的後臺服務連接。
捕獲裝置創作部件444為直接在捕獲裝置106上執行創作操作的軟體應 用程序。使用捕獲裝置創作部件444,畫R用戶110從他/她手頭上的紙質文 檔中提取關鍵短語,並將該關鍵短語與動態捕獲的另外的內容一同存儲,以 創建臨時廳R文檔。另外,通過使用捕獲裝置創作部件444,畫R用戶110可 以返回至他/她的顯R計算機112,並將他/她所創建的臨時醒R文檔下載至 現有文檔應用程式,如PowerPoint,然後將其編輯成為醒R文檔的最後版本 或另一個應用程式的文檔的其它標準類型。在這樣做時,可將圖像和文本自 動地插入現有文檔的頁面中,如插入PowerPoint文檔的頁面中。
無意識上載部件446為無意識地(自動地,無用戶幹預地)將列印文檔 上載至捕獲裝置106的軟體應用程式。因為在大多數時間捕獲裝置106都為 醒R用戶110所有,包括當畫R用戶110在他/她的醒R計算機112上時,除 了將文檔發送至印表機116之外,結合Wi-Fi技術134或藍牙技術136,經 由捕獲裝置106的無線通信連結218,或者如果捕獲裝置106與MMR計算機 112連接/對接,則通過有線連接,麗R用戶110也可以將那些相同的文檔推 進捕獲裝置106的存儲裝置216。以這種方式,在列印文檔之後,畫R用戶 110從來不會忘記撿取該文檔,因為其被自動地上載至捕獲裝置106。
文檔版本檢索部件448為檢索給定源文件310的過去和將來版本的軟體 應用程式。例如,腦R用戶110將捕獲裝置106指向列印文檔,並然後文檔 版本4企索部件448定位當前的源文件310 (例如,Word文件)和源文件310 的其它過去和將來版本。在一個特定實施例中,這個搡作使用跟蹤將源文件 310複製和移動於此的位置的Windows文件跟蹤軟體。同樣這裡也能夠-使用 其它這樣的文件跟蹤軟體。例如,Google桌面搜索或Microsoft Windows搜 索助理能夠用從源文件310所挑選的單詞而組成的查詢找到文件的當前版本。
PC文檔元數據部件450為檢索文檔的元數據的軟體應用程式。例如,薩R 用戶110將捕獲裝置106指向列印文檔,並且PC文檔元數據部件450確定誰 列印了該文檔,何時列印的該文檔,文檔在何處列印的,以及在列印時刻的 給定源文件310的文件路徑。
捕獲裝置UI部件452為管理捕獲裝置106的UI的操作的軟體應用程式, 其允許醒R用戶110與紙質文檔交互作用。捕獲裝置UI部件452與捕獲裝置 UI 224的結合允許MMR用戶IIO從現有文檔讀取數據,以及將數據寫入現有 文檔,查看並與那些文檔所關聯的擴增實境交互作用(即,通過捕獲裝置106, 畫R用戶110能夠查看當創建文檔時或在編輯文檔時發生了什麼),以及查看 並與在他/她的捕獲裝置106上顯示的文檔所關聯的擴增實境交互作用。
特定領域部件454為管理特定領域功能的軟體應用程式。例如,在音樂 應用程式中,特定領域部件454為經由,例如,捕獲裝置106的錄音器236 將所探測到的音樂與標題、藝術家、或作曲家匹配的軟體應用程式。以這種 方式,可以將感興趣的項目,如與所探測的音樂有關的活頁樂譜或音樂CDs, 呈現給醒R用戶110。類似地,特定領域部件454適應於以關於^L頻內容、 視頻遊戲、和任何娛樂信息的類似的方式操作。特定領域部件454也可以適 應於任何大眾傳媒內容的電子版本。
繼續參考圖3和4,注意到畫R軟體套裝222的軟體部件可以完全或者 部分地存在於固R系統100b的一個或多個醒R計算機112、網絡介質伺服器 114、服務提供者伺服器122、和捕獲裝置106上。換句話說,可以將薩R系 統100b的操作,例如MMR軟體套裝222所執行的任何操作,分布於醒R計算 機112、網絡介質伺服器114、服務提供者伺服器122、和捕獲裝置106(或 者系統100b中所包括的其它這樣的處理環境)之間的任何用戶定義的配置 中。
根據這個公開發明,將很明顯,能夠以固R軟體套裝222的軟體部件的 某些結合而4丸行醒R系統100a/100b的基本功能。例如,醒R系統100a/100b 的 一個實施例的基本功能包括
創建或者增加包括第一介質部分和第二介質部分的醒R文檔; 使用畫R文檔的第一介質部分(例如,紙質文檔)訪問第二介質部分中 的信息;使用應R文檔的第一介質部分(例如,紙質文檔)觸發或啟動電子領域
中的過程;
使用腦R文檔的第一介質部分(例如,紙質文檔)創建或增加第二介質
部分;
使用薩R文檔的第二介質部分創建或增加第一介質部分; 使用醒R文檔的第二介質部分觸發或啟動電子領域中的或與第一介質部 分有關的過程; 畫R文檔
圖5闡明根據本發明的一個實施例的畫R文檔500的圖解。更明確地, 圖5示出包括列印文檔118的一部分的表示502、動作或第二介質504、索引 或熱點506、以及整個文檔118的電子表示508的醒R文檔500。儘管典型地 將MMR文檔500存儲在文檔事件資料庫320,也能夠將其存儲在捕獲裝置或 連接至網絡128的任何其它裝置中。在一個實施例中,多個畫R文檔可以相 應於列印文檔。在另一個實施例中,複製圖5中所示的結構,以在單個列印 文檔中創建多個熱點506。在一個特定實施例中,醒R文檔500包括具有頁面 和頁面內的位置的表示502和熱點506;第二介質504和電子表示508是可 選的並且如由虛線那樣描畫。注意到,若如是需要,能夠在已經創建薩R文 檔稍後添加第二介質504和電子表示508。這個基本的實施例能夠用來定位 相應於表示的文檔或文檔中的特殊位置。
列印文檔118的一部分的表示502能夠是以適用於模式匹配並識別文檔 中的至少一個位置的任何形式(圖像、矢量、像素、文本、代碼,等等)存 在的。表示502最好唯一地識別列印文檔中的位置。在一個實施例中,表示 502是如圖5中所示的文本指紋。在列印操作期間,經由PD捕獲模塊318自 動捕獲文本指紋502,並將其存儲在PD索引322中。可替代地,在掃描操作 期間,經由文檔掃描儀127的文檔指紋匹配模塊226,自動捕獲文本指紋502, 並將其存儲在PD索引322中。如果其為文檔中的唯一實例、圖像的一部份、 文檔可匹配部分的唯一屬性或任何其它表示,則表示502可替代地能夠為整 個文檔、文本碎片、單個單詞。
動作或第二介質504優選地為數字文件或任何類型的數據結構。最基本 的實施例中的第二介質504可以是將要呈現的文本或將要執行的一個或多個 命令。第二介質類型504更典型地為與由表示502所識別的文檔的一部分有關的文本文件、音頻文件、或視頻文件。第二介質類型504可能是附註或包 括多個不同介質類型,和相同類型的多個文件的數據結構或文件。例如,第
二介質504能夠是文本、命令、圖像、PDF文件、視頻文件、音頻文件、應 用程序文件(如,電子數據表或文字處理文檔),等等。
索引或熱點506為表示502與動作或第二介質504之間的連結。熱點506 使表示502與第二介質504關聯。在一個實施例中,索引或熱點506包括像 文檔內的x和y坐標那樣的位置信息。熱點506可能是點、區域或甚至整個 文檔。在一個實施例中,熱點是具有表示502的指針、第二介質504的指針、 和文檔內的位置的數據結構。應該理解到,畫R文檔500可能具有多個熱點 506,並且在這樣的情形中,數據結構創建多個表示、多個第二介質文件、和 列印文檔118內的多個位置之間的連結。
在可替代的實施例中,醒R文檔500包括整個文檔118的電子表示508。 這個電子表示能夠被用於確定熱點506的位置,並且也能夠通過用戶接口用 於在捕獲裝置106或固R計算機112上顯示文檔。
MMR文檔500的示例性使用如下。通過分析文本指紋或表示502,經由捕 獲裝置106的文檔指紋匹配模塊226識別所捕獲的文本片段。例如,固R用 戶110將他/她的捕獲裝置106的視頻相機232或數位相機234指向列印文檔 118,並捕獲圖像。隨後,文檔指紋匹配模塊226在所捕獲的圖像上執行其分 析,以確定PD索引322內是否存在相關聯的條目。如果找到匹配項,在他/ 她的捕獲裝置106的顯示器212上,為固R用戶110高亮顯示熱點506的存 在。如圖5中所示,高亮顯示單詞或短語。列印文檔118內的每個熱點506 都用作至其它用戶定義的或預定的數據,如存在於網絡介質伺服器114上的 畫文件336的一個,的連結。PD索引322中所存儲的文本指紋或表示502的 訪問允許將電子數據添加至任何腦R文檔500或文檔內的任何熱點506。如 參考圖4所描述的,包括至少一個熱點506 (如,連結)的紙質文檔被稱為 MMR文檔500。
繼續參考圖1B、 2A直至2D、 3、 4、和5,廳R系統100b的示例性操作 如下。醒R用戶110或任何其它實體,例如出版社,打開給定的源文件310 並啟動列印操作,以產生紙質文檔,如列印文檔118。在列印操作期間,自 動執行某些動作,如l)在列印時刻,經由PD捕獲模塊318,自動捕獲打 印格式,並將其傳遞至捕獲裝置106。通過使用位於,例如,SD瀏覽器312的輸出處的PD捕獲模塊318,在列印時刻自動捕獲文檔的電子表示508。例 如,醒R用戶110列印來自SD瀏覽器312的內容,並且該內容濾過PD捕獲 模塊318。如先前所討論的,當為列印而展示文檔時,能夠確定頁面上的文 本的二維布置;(2)在列印時刻,經由PD捕獲模塊318,自動捕獲給定的源 文件310;以及(3)為了定位"指定的實體,,或可以增加捕獲裝置106上的 多媒體註解接口的其它有趣的信息,經由文檔分析器模塊326,分析列印格 式和/或源文件310。指定的實體為,例如,用於稍後添加多媒體的"錨", 即,自動生成的熱點506。文檔分析器模塊326接收與給定的列印文檔118 有關的輸入源文件310。文檔分析器模塊326為識別文檔118中與熱點506 一起使用的表示502的應用程式,例如,標題、作者、時間、或位置,並因 而,在捕獲裝置106上提示將要接收的信息;(4)為基於內容的檢索自動地 給列印格式和/或源文件310編索引,即,構建PD索引322; ( 5 )在文檔事 件資料庫320中製造關於文檔和與源文件310相關聯的事件的條目,例如, 編輯歷史和當前位置;以及(6)在印表機驅動器316內執行交互式會話,其 允許醒R用戶110在列印他們之前將熱點506添加至文檔,並因而形成畫R 文檔500。將相關聯的數據存儲在固R計算機112上或上載至網絡介質服務 器114。
示範性可替代實施例
MMR系統100 ( 100a或100b)並不局限於圖1A-1B、 2A-2D、和3-5中所 示的配置。固R軟體可以全部或部分地分配於捕獲裝置106與MMR計算機112 之間,並且需要遠少於上文參考圖3和4所描述的所有的模塊。多個配置都 是可能的,包括如下
MMR系統100的第一可替代的實施例包括捕獲裝置106和捕獲裝置軟體。 捕獲裝置軟體為捕獲裝置UI 224和文檔指紋匹配模塊226 (如,圖3中所示 的)。在捕獲裝置106上,或者可替代地,在可訪問捕獲裝置106的像網絡介 質伺服器114或服務提供者伺服器122那樣的外部伺服器上,執行捕獲裝置 軟體。在這個實施例中,可利用提供連接至發行物的數據的網絡服務。可以 使用分等級的識別方案,在其中首先識別發行物,並然後識別發行物內的頁 面和章節。
醒R系統100的第二可替代的實施例包括捕獲裝置106、捕獲裝置軟體和 文檔使用軟體。如參考圖4所示出和描述的,第二可替代的實施例包括捕獲並給列印文檔編索引,以及連接基本的文檔事件,如文檔的編輯歷史,的軟
件。這允許腦R用戶110將他/她的捕獲裝置106指向任何列印文檔,並確定 產生該文檔的源文件310的名字和位置,以及確定列印的時間和地點。
醒R系統100的第三可替代的實施例包括捕獲裝置106、捕獲裝置軟體、 文檔使用軟體、和事件捕獲模塊324。將事件捕獲模塊324添加至,R計算 機112,該計算機捕獲與文檔相關聯的事件,例如當它們在腦R計算機112 的桌面上可見時的時間(通過監控GDI特徵發生器而確定)、在文檔打開時所 訪問的URL、或者在文檔打開時在鍵盤上鍵入的字符。
應R系統100的第四可替代的實施例包括捕獲裝置106、捕獲裝置軟體、 和印表機116。在這個第四可替代的實施例中,印表機116配備有藍牙收發 器或與處於其附近的任何固R用戶110的捕獲裝置106通信的類似的通信鏈 接。無論何時任何醒R用戶110從印表機116拾取文檔,印表機116將顯R 數據(文檔布局和多媒體剪輯)壓入那個用戶的捕獲裝置106。為了獲得與 特定的文檔相關聯的多媒體數據,用戶印表機116包括數字按鍵鍵盤、通過 它用戶登錄並輸入代碼。該文檔可以包括在其頁腳的代碼的列印表示,其可 以通過列印^L驅動器316插入。
薩R系統100的第五可替代的實施例包括捕獲裝置106、捕獲裝置軟體、 和辦公室入口 120。辦公室入口裝置優選地為辦公室入口 120的個人化版本。 辦公室入口 120捕獲辦公室中的事件,如會話、會談/電話、和會議。辦公室 入口 120識別並跟蹤物理桌面上的特定紙質文檔。辦公室入口 120另外執行 文檔識別軟體(即,文檔指紋匹配模塊226和主機文檔事件資料庫320 )。這 個第五可替代的實施例可用於從腦R計算機112卸載計算工作負荷,並提供 將MMR系統100b包裝成為消費者裝置(例如,將醒R系統100b作為在蘋果 計算機公司的Mac迷你型計算機上執行的硬體和軟體產品而出售)的便利方 法。
,R系統100的第六可替代的實施例包括捕獲裝置106、捕獲裝置軟體、 和網絡介質伺服器114。在這個實施例中,多媒體數據存在於網絡介質服務 器114,例如康卡斯特視頻點播伺服器。當醒R用戶110通過使用他/她的捕 獲裝置106掃描文檔文本碎片時,將作為結果的查找命令或者傳輸至與應R 用戶IIO的有線電視(cable TV)相關聯的機頂方框126 (通過網際網路,無 線地,或者通過電話上的機頂方框126),或者傳輸至康卡斯特伺服器。在兩種情形中,多媒體都從康卡斯特伺服器流向機頂方框126。系統100知道向
何處發送數據,因為畫R用戶110先前註冊了他/她的電話。因而,能夠將捕 獲裝置106用於機頂方框126的訪問和控制。
MMR系統100的第七可替代的實施例包括捕獲裝置106、捕獲裝置軟體、 網絡介質伺服器114和位置服務。在這個實施例中,位置已知服務辨別來自 康卡斯特系統(或其它適當的通信系統)的輸出的多個目的地。或者通過自 動辨別蜂窩式電話塔IDs,或者通過允許固R用戶IIO選擇將要顯示數據的 位置的數字按鍵^t盤接口,來執行這個功能。因而,當拜訪另一個位置時, 只要那個其它位置具有有線接入,用戶就能夠訪問他們的有線電視運營商所 提供的節目和其它有線TV特徵。
文檔指紋匹配("基於圖像的碎片識別")
如先前所描述的,文檔指紋匹配涉及唯一地識別醒R文檔的一部分、或 "碎片"。參考圖6,文檔指紋匹配模塊/系統610接收所捕獲的圖像612。文 檔指紋匹配系統610然後查詢文檔資料庫3400 (例如,下文參考圖34A進一 步描述的)中的頁面集,並返回一列頁面和包含它們的文檔,其內包含所捕 獲的圖像612。每個結果都為出現所捕獲的輸入圖像612的x-y位置。本領 域技術人員將注意到資料庫3400能夠處於文檔指紋匹配模塊610的外部(例 如,如圖6中所示),但也能夠處於文檔指紋匹配模塊610的內部(例如,如 圖7、 11、 12、 14、 20、 24、 26、 28、和30-32中所示,其中文檔指紋匹配 模塊610包括資料庫3400 )。
圖7示出根據本發明的實施例的文檔指紋匹配系統610的框圖。捕獲裝 置106捕獲圖像。將所捕獲的圖像發送至質量評估模塊712,其基於下遊處 理的需要和能力,有效地進行關於所捕獲的圖像的內容的初步判斷。例如, 如果所捕獲的圖像是如此的質量,以致在下遊文檔指紋匹配系統610中不能 處理它,則質量評估模塊712促使捕獲裝置106以更高的解析度重新捕獲圖 像。此外,例如,質量評估模塊712可以探測所捕獲的圖像的許多其它相關 的特徵,例如所捕獲的圖像中所包含的文本的清晰度,其為所捕獲的圖像是 否"對焦"的指示。此外,質量評估模塊712可以確定所捕獲的圖像是否包 含可能為文檔的一部分的某物。例如,包含非文檔圖像(例如,桌子、室外 場景)的圖像碎片指示用戶正將捕獲裝置106的視野轉換至新的文檔。
此外,在一個或多個實施例中,質量評估模塊712可以執行文本/非文本辨別,以致僅通過可能包含可識別的文本的圖像。圖8示出根據一個或多個 實施例的文本/非文本辨別的流程。在步驟810從輸入圖^^f片提取許多列像
素。典型地,輸入圖像是灰度圖,並且列中的每個值都是從零至255的整數 (對於8位像素)。在步驟812,探測每列中的局部峰值。這能夠以通常所熟 悉的"滑動窗口"的方法進行,在該方法中固定長度(例如,N像素)的窗 口沿著列滑動,每次M像素,其中MW。在每一步,通過尋找灰度水平值的 顯著差別(例如,大於40)而確定峰值的存在。如果峰值位於窗口的一個位 置,則無論何時滑動窗口與這個位置交迭,都抑制其它峰值的探測。在步驟 812也可以探測連續的峰值之間的間隙。步驟812適用於圖像碎片中的許多 列,並且在步驟814以直方圖累加間隙值。
將間隙直方圖與從具有資料庫818中所存儲的已知分類(在步驟816) 的訓練數據中導出的其它直方圖相比較,並一起輸出有關碎片的類別(或者 文本或者非文本)的決定和那個決定的置信度的測量。步驟816的直方圖分 類考慮從文本的圖像中導出的直方圖的典型的外觀,並且其包含兩個緊密的 峰, 一個中心置於行之間的距離上,其中在直方圖中遠離那些峰的其它一個 或兩個更小的峰可能整數倍高。以統計方差的測量,該分類可以確定直方圖 的形狀,或者其可以用距離測量,例如,漢明或歐氏距離,將直方圖逐一與 所存儲的原型相比較。
現在同樣參考圖9,其示出文本/非文本辨別的例子。處理輸入圖像910, 以採樣許多列,用點線指示其子集。914中示出典型的列912的灰度水平直 方圖。Y值為910中的灰度水平,以及X值為910中的行。916中示出直方圖 中的峰值之間所探測到的間隙。918中示出來自所有採樣列的間隙值的直方 圖。這個例子闡明從包含文本的碎片所導出的直方圖的形狀。
圖10中示出用於估計圖像^f卒片中的文本的磅值的流程。這個流程利用圖 像的模糊度反比例於捕獲裝置離頁面的距離的事實。通過估計模糊量,可以 估計距離,並且那個距離可以用來,相對於已知"標準化的"高度,將圖像 中的對象的大小縮放。這個行為可以用來估計新的圖像中的文本的磅值。
在訓練階段IOIO,在步驟1012,用在已知距離的圖像捕獲裝置獲得具有 已知字體和磅值的文本的碎片的圖像(稱為"校準"圖像)。在步驟1014測
量以許多像素表達的那個圖像中的文本字符的高度。例如,這可以用像微軟 照片編輯器那樣的圖像註解工具手動進行。在步驟1016估計校準圖像中的模糊度。例如,這可以用已知的二維快速傅立葉變換的光譜截止測量進行。這
也可以單位的形式表達為許多像素1020。
當在步驟1024呈現"新的,,圖像時,如在運行時刻薩R識別系統中,在 步驟1026處理圖像,以用通常熟知的在每個字符周圍產生邊界框的行分割和 字符分割方法定位文本。可以用像素表達那些方框的高度。在步驟1028,以 與步驟1016類似的方式估計新圖像的模糊度。在步驟1030結合這些測量, 以產生每個字符(或者等同地,每行)的磅值的第一估計1032。這可以通過 計算下列方程進行(校準圖像模糊大小/新圖像模糊大小)* (新圖像文本高 度/校準圖像文本高度)* (校準圖像字體磅值)。這按比例確定校準圖像中的 文本的磅值,以產生經估計的輸入圖像碎片中的文本的磅值。可以將相同的 標度功能應用於每個字符的邊界框的高度。這產生關於碎片中的每個字符的 決定。例如,如果碎片包含50個字符,則這個過程將產生關於碎片中的字體 的磅值的50個表決。然後可以用該表決的中值導出關於磅值的單一估計。
此外,更明確地返回參考圖7,在一個或多個實施例中,可以將質量評 估模塊712至捕獲裝置106的反饋傳導至捕荻裝置106的用戶接口 (UI )。例 如,反饋可能包括以聲音或振動形式存在的指示,其指示所捕獲的圖像包含 看起來像文本但模糊不清的某物,並指示用戶應該使捕獲裝置106穩固。反 饋可能也包括改變捕獲裝置106的光學裝置的參數,以提高所捕獲的圖像的 質量的命令。例如,可以調節焦距、F制光圈、和/或暴光時間,以致提高所 捕獲的圖像的質量。
此外,通過所使用的特殊的特徵提取算法的需要,可以使質量評估模塊 712至捕獲裝置106的反饋專門化。如下文進一步描述的,特徵提取將圖像 轉換成為符號表示。在計算單詞的長度的識別系統中,使所捕獲的圖像衝莫糊 對於捕獲裝置106的光學裝置來說可能是很理想的。本領域技術人員將注意 到這樣的調節可能產生儘管人類或者光學字符識別(OCR )過程或許不可識別 的,但良好地適合於特徵提取技術的圖像。通過將指令反饋給捕獲裝置106, 促使捕獲裝置106將其鏡頭散焦,並從而產生模糊的圖像,質量評估模塊712 可以實現這一點。
由控制結構714更改反饋過程。 一般而言,控制結構714從文檔指紋匹 配系統610中的其它部件接收數據和符號信息。控制結構714決定文檔指紋 匹配系統610中的各種各樣的步驟地執行順序,並能夠使計算負載最優化。控制結構714識別所接收到的圖像碎片的x-y位置。更具體地,控制結構714 接收有關特徵提取過程的需要、質量評估模塊712的結果、和捕獲裝置106 的參數的信息,並能夠適當地改變它們。這能夠在一幀接一幀的基礎上動態 地進行。在使用多個特徵提取方法的系統配之中, 一個可能需要文本的大碎 片的模糊圖像,而另一個可能需要紙張紋理的高解析度銳聚焦圖。在這樣的 情形中,控制結構714可以發送命令至質量評估模塊712,指示它當其視野 中具有文本時,產生適當的圖像質量。質量評估模塊712與捕獲裝置106交 互作用,以產生正確的圖像(例如,大碎片的N個模糊圖像,跟隨有銳聚焦 紙張紋理(高解析度)的M個圖像)。控制結構714跟蹤通過處理管道的那些 圖像的進展,以確保應用了相應的特徵提取和分類。
基於識別系統的需要,圖像處理模塊716更改輸入圖像的質量。圖像更 改的類型的例子包括銳化、偏移校正、和二進位化。這樣的算法包括像掩碼 大小、期望的旋轉、和閾值那樣的許多可調的參數。
如圖7中所示,文檔指紋匹配系統610使用來自特徵提取和分類模塊718、 720 (下文所描述的)的反饋,以動態地更改圖像處理模塊716的參數。這樣 可行,因為用戶典型地會將他們的捕獲裝置106連續幾秒地指向文檔中的相 同位置。例如,々支設捕獲裝置106每秒處理30幀,則以任何順序處理最初幾 幀的結果可能影響如何處理稍後所捕獲的幀。
特徵提取模塊718將所捕獲的圖像轉換成為符號表示。在一個例子中, 特徵提取模塊718定位單詞,並計算它們的邊界框。在另一個例子中,特徵 提取模塊718定位聯在一起的部件,並計算它們的形狀的描述符。此外,在 一個或多個實施例中,文檔指紋匹配系統610與控制結構714共享有關特徵 提取的結果的元數據,並使用那個元數據調節其它系統部件的參數。本領域 技術人員將注意到通過抑制差質量數據的識別,這可能顯著地減少計算需求, 並提高準確性。例如,識別單詞邊界框的特徵提取模塊718能夠告訴控制結 構714其找到的行和"單詞"的數量。如果單詞的數量太高(例如,指示輸 入圖像為片斷),則控制結構714能夠指示質量評估模塊712產生更模糊的圖 像。質量評估模塊712然後會將適當的信號發送至捕獲裝置106。可替代地, 控制結構714能夠命令圖像處理模塊716應用平滑濾波。
分類模塊720將來自特徵提取模塊718的特徵描述轉換成為文檔內的一 個或多個頁面以及輸入圖像碎片出現的那些頁面內的x, y位置的識別。依次描述,依賴於自資料庫3400的反饋進行該識別。此外,在一個或多個實施例 中,置信度值可與每個決定相關聯。文檔指紋匹配系統610可以使用這樣的 決定確定系統中其它部件的參數。例如,控制結構714可以確定頭兩個決定 的置信度是否彼此靠近,是否應該改變圖像處理算法的參數。這可能導致增 加中值濾波器的大小的範圍,以及其結果順流至剩餘的部件的運送。
此外,如圖7中所示,在分類模塊720與資料庫3400之間可以存在反饋。 此外,本領域技術人員將記起資料庫3400能夠處於如圖6中所示的模塊610 的外部。能夠使用有關碎片的一致性的決定,關於具有類似的外觀的其它碎 片,而查詢資料庫3400。這將會將資料庫3400中所存儲的碎片的完美的圖 像數據與資料庫3400中的其它圖像相比較,而不是將輸入圖像碎片與資料庫 3400相比較。這可以提供關於分類模塊720的決定的另外的確認水平,並可 以允許匹配數據的 一些預處理。
也能夠在碎片的符號表示,而非僅僅是圖像數據上,進行資料庫比較。 例如,最好的決定可能指示圖像碎片包含雙間距的12號Arial字體。資料庫 比較能夠定位具有類似的字體間距的其它文檔中的碎片,並僅使用文本數元 數據,而不是圖像比較,來定位單詞布局。
資料庫3400可以支持幾種類型的基於內容的查詢。分類模塊720能夠傳 遞給資料庫3400特徵布置,並接收一列文檔和那個布置出現的x-y位置。例 如,特徵可能是或者水平的或者垂直的單詞長度的三線形。能夠組織資料庫 3400,以響應每種類型的查詢而返回一列結果。分類模塊720或控制結構714 能夠結合那些等級排序,以產生單一的經篩選的一列決定。
此外,在資料庫3400、分類模塊720、與控制結構714之間可以存在反 饋。除了存儲足夠從特徵矢量識別位置的信息外,資料庫3400可以存儲包括 文檔的原始圖像,以及其繪圖部件的符號表示的相關信息。這允許控制結構 714更改其它動態系統部件的行為。例如,如果關於給定的圖像碎片存在兩 種似乎可能的決定,則資料庫3400可能指示關於圖像的存在,通過縮小並檢 查右邊的區域,能夠消除它們的歧義。控制結構714能夠發送適當的消息至 捕獲裝置106,指示它縮小。特徵提取模塊718和分類模塊720能夠關於文 檔上列印的圖像;f企查圖像的右邊。
此外,注意到假設碎片準確地位於文檔中,則資料庫3400存儲關於圍繞 圖像碎片的數據的詳細信息。這可以用來進一步觸發現有技術中未預期的硬體和軟體圖像分析步驟。在一個情形中,由保存文檔的詳細符號描述的列印 捕獲系統提供那個詳細的信息。在一個或多個其它實施例中,通過掃描文檔, 可以獲得類似的信息。
仍然參考圖7,位置跟蹤模塊724接收來自控制結構714的關於圖像碎 片的一致性的信息。位置跟蹤模塊724使用它從資料庫3400檢索整個文檔頁 面的拷貝或描述文檔的數據結構。起始位置是位置跟蹤過程開始的錨。當質 量評估模塊712決定所捕獲的圖像適合跟蹤時,位置跟蹤模塊724接收來自 捕獲裝置106的圖像數據。位置跟蹤模塊724也具有關於自成功地識別了上 一幀以來已經流逝的時間的信息。位置跟蹤模塊724應用光流技術,其允許 它估計在文檔之上捕獲裝置106在連續的幀之間已移動的距離。給定捕荻裝 置106的採樣率,即使它看到的數據可能是不可識別的,也能夠估計其目標。 通過其圖像數據與從資料庫文檔中所導出的相應圖像數據的比較,可以確認 捕獲裝置106的估計位置。 一個簡單的例子計算所捕獲的圖像與資料庫3400 中的期望圖像的交叉相關性。
因而,位置跟蹤模塊724提供資料庫圖像的交互使用,以引導位置跟蹤 算法的過程。這允許將電子交互作用附著於非文本對象,如圖形和圖像。此 外,在一個或多個其它實施例中,可以在不存在上文所描述的圖像比較/確認 步驟的情況下實現這樣的依附。換句話說,通過估計在頁面之上的捕獲裝置 106的瞬間移動,可以估計應該處於獨立於所捕獲的圖像的視野中的電子鏈 接。
圖11示出根據本發明的實施例的文檔指紋匹配技術。圖11中所示的"前 饋"技術獨立地處理每個碎片。它從被用來定位一個或多個頁面和碎片出現 的那些頁面上的x-y位置的圖像碎片中提取特徵。例如,在一個或多個實施 例中,文檔指紋匹配的特徵提取可能依賴於所捕獲的圖像的水平和垂直組特 徵(例如,單詞、字符、塊)。然後可以使用這些組的提取特徵來查找包含所 提取的特徵的文檔(和那些文檔內的碎片)。可以使用OCR功能來識別所捕獲 的圖像中的水平單詞對。然後使用每個識別的水平單詞對形成資料庫3400的 搜索查詢,用於確定包含所識別的水平單詞對的所有文檔,以及那些文檔中 的單詞對的x-y位置。例如,對於水平單詞對"the, cat",資料庫3400可 能返回(15, x, y), (20, x, y),指示水平單詞對"the, cat"出現在文檔 15和20中所指示的x-y位置。類似地,對於每個垂直相鄰的單詞對,關於包含單詞對的實例的所有文檔和那些文檔中的單詞對的X-y位置,查詢數據
庫3400。例如,對於垂直相鄰的單詞對"in, hat",資料庫34QG可能返回 (15, x, y), (7, x, y),指示垂直相鄰的單詞對"in, hat"出現在文檔 15和7中所指示的x-y位置。然後,使用資料庫3400所返回的文檔和位置
信息,能夠進行如對哪個文檔從所捕獲的圖像中所提取的各種各樣的水平單 詞對和垂直相鄰的單詞對之間出現最多的位置交迭一樣的確定。響應可以確
定哪個熱點和所連結的介質的存在,這可能導致識別包含所捕獲的圖像的文檔。
圖12示出根據本發明的實施例的另一個文檔指紋匹配技術。圖12中所 示的"交互式圖像分析"技術涉及圖像處理和可能在識別圖像碎片之前出現 的特徵提取之間的交互作用。例如,圖像處理模塊716可能首先估計輸入圖 像中的模糊度。然後,特徵提取模塊718可能使用那個磅值的字體的特徵, 在圖像上執行模板匹配步驟。隨後,特徵提取模塊718可能因而從結果中提 取字符或單詞特徵。此外,本領域技術人員將認識到字體、磅值、和特徵可 能受制於資料庫3400文檔中的字體。
圖13中示出如上文參考圖12所描述的交互式圖像分析的例子。在步驟 1310處理輸入圖^^卒片,估計圖像碎片中的文本的字體和磅值和其離相機的 距離。本領域技術人員將注意到可以用已知的技術進行字體估計(即,碎片 中的文本的字體的候選者的識別)。例如,可以使用參考圖IO所描述的流程 來執行磅值和距離估計。此外,可以使用其它技術,例如能夠容易地適應於 捕獲裝置的離焦點的距離的已知方法。
仍然參考圖13,在步驟1312應用行分割算法,其在碎片中的文本行的 周圍構造邊界框。在步驟1314使用像縮放那樣的已知技術將每個行圖像的高 度標準化為固定的大小。將關於圖像中所探測到的字體的一致性以及其磅值 傳遞1324至字體原型集1322,其中使用它們來檢索每個指定的字體中的字 符的圖像原型。
字體資料庫1322可以從由作業系統和其它軟體應用程式用來列印文檔 的用戶系糹充上的字體集(例如,TrueType, OpenType、或Microsoft Windows 中的Raster字體)而構造。在一個或多個其它實施例中,可以從資料庫3400 中的文檔的原始圖像產生字體集。資料庫3400 xml文件提供可以用來從原始 圖像中提取字符的原型圖像的x-y邊界框坐標。xml文件正確地識別字體的名稱和字符的磅值。
基於在步驟1314所使用的參數的功能,在步驟1320將所選擇的字體中 的字符原型大小標準化。在步驟1316的圖像分類可以將在步驟1320所輸出 的大小標準化後的字符與步驟1314的輸出相比較,以在圖像碎片中的每個 x-y位置產生決定。關於圖像碎片中所探測到的每個字符i, i=l...n,可以使 用圖像模板匹配的已知方法產生像(ci, xi, yi, wi, hi)那樣的輸出,其 中ci為字符的一致性,(xi, yi )為其邊界框的左上角,以及hi, wi為其寬 度和高度。
在步驟1318,能夠如上文所描述的執行幾何關係限制資料庫查找,但在 一個情形中,可以專門適應於字符對,而不是單詞對。在這樣的情形中"a-b" 可能指示字符a和b是水平相鄰的;"a+b"可能指示它們是垂直相鄰的;
"a/b,,可能指示a在b的西南方;以及"a \ b"可能指示a在b的東南方。 可以從每對字符的xi, yi值導出幾何關係。可以組織醒R資料庫3400,以 致其返回包含字符對而不是單詞對的一列文檔頁面。步驟1326的輸出為與表 達為通過"i平分等級才非序的n—元糹且(documenti, pagei, xi, yi, actioni, scorei )的輸入圖像相匹配的候選者列表。
圖14示出根據本發明的實施例的另一個文檔指紋匹配技術。圖14中所 示的"產生和測試"技術獨立地處理每個碎片。它從圖像碎片中提取特徵, 其被用來定位可能包含給定的圖像碎片的許多頁面圖像。此外,在一個或多 個實施例中,可以執行另外的提取分類步驟,以通過它們包含該圖像碎片的 可能性將頁面分等級。
仍然參考上文參考圖14所描述的"產生和測試"技術,可以提取所捕獲 的圖像的特徵,並可以識別資料庫3400中包含最多數量的這些提取的特徵的 文檔碎片。然後進一步處理具有最多的匹配特徵的最初X個文檔碎片("候選 者")。在這種處理中,將匹配文檔碎片候選者中的特徵的相對位置與查詢圖 像中的特徵的相對位置相比較。基於這個比較計算評分。然後,識別相應於 最好的匹配文檔碎片P的最高評分。如果最高的評分大於適應閾值,則然後 找到文檔碎片P,作為至查詢圖像的匹配。閾值適應於許多參數,包括,例 如,所提取的特徵的數量。在資料庫3400中,已知文檔碎片P從何而來,並 因而,確定查詢圖像來自相同的位置。
圖15示出單詞邊界框探測算法的例子。示出在作旋轉校正的圖像處理之後的輸入圖像碎片1510。通常已知為傾斜校正算法,這類技術將文本圖像旋 轉,以致其沿著水平軸排列。邊界框探測算法中的下一步是水平投影輪廓圖
1512的計算。以這樣的方式,通過已知適應閾值或滑動窗口算法選擇1516 行探測的閾值,以致區域"在閾值之上"相應於文本行。以類似的方式1514 和1518提取並處理每行內的區域,以定位指示行內的單詞的在閾值之上的區 域。1520中示出在一個文本行中所探測到的邊界框的例子。
為了與文檔碎片候選者相比較,可以提取各種各樣的特徵。例如,可以 提取尺度不變特徵轉換(SIFT)特徵、角點特徵、凸點,上行字母,和下行 字母,單詞邊界,和間隔,以便匹配。能夠可靠地從文檔圖像中提取的特徵 的一個是單詞邊界。 一旦提取了單詞邊界,它們就可以形成如圖16中所示的 組。在圖16中,例如,以這樣的方式形成垂直組,以致單詞邊界在其上和其 下都具有交迭單詞邊界,並且交迭單詞邊界的總數量至少是3(注意到在一 個或多個其它實施例中,交迭單詞邊界的最小數量可能不同)。例如,第一個 特徵點(第二行中的第二個單詞方框,長度為6)在其上具有兩個單詞邊界 (長度為5和7 ),以及在其下具有一個單詞邊界(長度為5 )。第二個特徵點 (第三行中的第四個單詞方框,長度為5)在其上具有兩個單詞邊界(長度 為4和5),以及在其下具有兩個單詞邊界(長度為8和7)。因而,如圖16
中所示,用中間單詞邊界的長度,其後的其上單詞邊界的長度,並然後其後 的其下單詞邊界的長度,來表示所指示的特徵。此外,注意到單詞方框的長
度可以是基於任何度量標準的。因而,對於一些單詞方框,具有可替代的長 度是可能的。在這樣的情形,可以提取包含所有或某些它們的可替代物的特 徵。
此外,在一個或多個實施例中,可以提取特徵,以致用0表示間隔,並 用l表示單詞區域。圖17中示出一個例子。在右邊的塊表示相應於左邊的文 檔碎片的單詞/間隔區域。
可以將所提取的特徵與各種各樣的距離測量相比較,包括,例如,規範 和漢明距離。可替代地,在一個或多個實施例中,可以使用哈希表識別具有 與查詢圖像相同的特徵的文檔碎片。 一旦識別了這樣的碎片,就可以如圖18 中所示的計算從每個特徵點至其它特徵點的角度。可替代地,可以計算特徵 點組之間的角度。1802示出從三個一組的特徵點而計算出的角度1803、 1804、 和1805。然後可以將所計算出的角度與查詢圖像中從每個特徵點至其它特徵點的角度相比較。如果匹配點的任何角度是相似的,則然後可以增加相似性 評分。可替代地,如果使用角度組,並且如果兩個圖像中相似組的特徵點之 間的角度組數字上相似,則然後增加相似性評分。 一旦在查詢圖像之間計算 了每個檢索文檔碎片的評分,就選擇導致最高評分的文檔碎片,並將其與適 應閾值相比較,以確定匹配是否滿足一些預定的標準。如果滿足標準,則然 後指示已找到匹配文檔路徑。
此外,在一個或多個實施例中,所提取的特徵可以是基於單詞的長度的。 基於單詞高度和寬度,將每個單詞劃分為所估計的字母。當掃描在給定單詞 之上和之下的單詞行時,根據其上和其下的行中的間隔信息,將二進位值分 派給所估計的字母的每一個。然後用整數號碼表示二進位代碼。例如,參考 圖19,其示出每個都代表所捕獲的圖像中探測到的一個單詞的單詞方框的布
置。將單詞1910劃分為所估計的字母。用(i )單詞1910的長度,(ii )單 詞1910之上的行的文本布置,和(iii )單詞1910之下的行的文本布置,來 描述這個特徵。以所估計的字母的數量測量單詞1910的長度。從當前所估計 的字母之上或之下的間隔信息的二進位編碼中提取文本布置信息。在單詞 1910中,僅只最後所估計的字母在間隔之上;第二和第三所估計的字母在間 隔之下。另外,將單詞l910的特徵編碼為(6, 100111, 111110),其中O表 示間隔,以及l表示無間隔。以整數形式重寫,單詞1910編碼為(6, 39, 62 )。
圖20示出根據本發明的實施例的另一個文檔指紋匹配技術。通過將它們 獨立地分類,並將結果結合,圖20中所示的"多個分類器"技術利用不同特
直相鄰的單詞對的長度,並分別計算資料庫中碎片的等級排序。更具體地, 例如,在一個或多個實施例中,由"分類器"附屬部件通過分類模塊720與 確定特徵的位置。使用用於確定所捕獲的圖像的水平和垂直特徵的分類器的 結合,給所捕獲的圖像加指紋。這是考慮到文本的圖像包含兩個獨立的信息 源作為其一致性的觀察而執行的,除了單詞的水平序列之外,也能夠使用單 詞的垂直布局識別從其提取圖像的文檔。例如,如圖21中所示,通過水平分 類器2112和垂直分類器2114,將所捕獲的圖像2110分類。除輸入所捕獲的 圖像之外,分類器2112、 2114的每一個都從資料庫3400中取得信息,以依 次輸出可以應用各個分類的那些文檔頁面的等級排序。換句話說,圖21中所示的多分類器技術使用水平和垂直特徵獨立地將所捕獲的圖像分類。然後根
據結合算法2118結合分等級的一列文檔頁面(下文進一步描述示例),其依 次輸出分等級的一列文檔頁面,該列表是基於所捕獲的圖像2110的水平和 垂直特徵兩者的。特別地,在一個或多個實施例中,使用有關資料庫3400中 所探測到的特徵如何協同發生的信息,結合來自水平分類器2112和垂直分類 器2114的分別的等級排序。
現在同樣參考圖22,其示出關於特徵提取,垂直布局如何與水平布局結 合的例子。在(a)中,示出帶有單詞分割的所捕獲的圖像2200。從所捕獲 的圖像2200,確定水平和垂直"n-grams"。 "n-gram"為每個都描述一些特 性量的n個數量的序列。例如,水平三線形指定水平序列的三個單詞的每個 單詞中的字符的數量。例如,對於所捕獲的圖像2200, (b)示出水平三線形 5-8-7 (為所捕獲的圖像2200的第一行中水平地排列的單詞"叩per"、
"division"、和"courses"的每一個中的字符的數量);7-3-5 (為所捕獲 的圖像2200的第二行中水平地排列的單詞"Project", "has"、和"begun" 的每一個中的字符的數量);3-5-3 (為所捕獲的圖像2200的第二行中水平地 排列的單詞"has"、 "begun"、和"The"的每一個中的字符的數量);3-3-6 (為所捕獲的圖像2200的第三行中水平地排列的單詞"461"、 "and"、和 "permit"的每一個中的字符的數量);以及3-6-8 (為所捕獲的圖像2200 的第三行中水平地排列的單詞"and"、 "permit"、和"projects"的每一個 中的字符的數量)。
垂直三線形指定在給定的單詞之上和之下垂直排列的單詞的每個單詞中 的字符的數量。例如,對於所捕獲的圖像2200, (c)示出垂直三線形5-7-3
(為垂直地排列的單詞"upper"、 "Project",和"461"的每一個中的字符 的數量);8-7-3 (為垂直地排列的單詞"division", "Project",和"461" 的每一個中的字符的數量);8-3-3 (為垂直地排列的單詞 "division",
"has"、和"and"的每一個中的字符的數量);8-3-6 (為垂直地排列的單詞
"division"、 "has"、和"permit"的每一個中的字符的數量);8-5-6 (為 垂直地排列的單詞"division", "begun"、和"permit"的每一個中的字符 的數量);8-5-8 (為垂直地排列的單詞"division", "begun"、和"projects" 的每一個中的字符的數量);7-5-6 (為垂直地排列的單詞"courses"、
"begun"、和"permit"的每一個中的字符的數量);7-5-8 (為垂直地排列的單詞"courses"、 "begun"、和"projects"的每一個中的字符的數量); 7-3-8 (為垂直地排列的單詞"courses", "The"、和"projects"的每一個 中的字符的數量);7-3-7 (為垂直地排列的單詞"Project", "461"、和 "student"的每一個中的字符的數量);以及3-3-7 (為垂直地排列的單詞 "has"、 "and"、和"student"的每一個中的字符的數量)。
基於從圖22中所示的所捕獲的圖像2200中所確定的水平和垂直三線形, 產生指示包含水平和垂直三線形的每一個的文檔的(d)和(e)的文檔列表。 例如,在(d)中,水平三線形7-3-5出現在文檔15、 22、和134中。此外, 例如,在(e)中,垂直三線形7-5-6出現在文檔15和17中。使用(d)和 (e)的文檔列表,在(f )和(g)中分別示出所有的所涉及的文檔的分等級 的列表。例如,在(f )中,(d)中的五個水平三線形都涉及文檔l5,而(d) 中僅一個水平三線形涉及文檔9。此外,例如,在(g)中,(e)中的十一個 垂直三線形都涉及文檔15,而(e)中僅一個垂直三線形涉及文檔18。
現在同樣參考圖23,其示出用於將參考圖22而描述的水平和垂直三線 形信息結合的技術。使用關於原始的列印頁面上的三線形的已知物理位置的 信息,該技術將來自水平和垂直特徵提取的表決的列表結合。對於由水平和 垂直分類器的每一個所輸出的頭M個選擇之中共有的每一個文檔,將關於文 檔而表決的每個水平三線形的位置與關於那個文檔而表決的每個垂直三線形 相比較。文檔接收等於與任何垂直三線形交迭的水平三線形的數量的許多表 決,這裡當兩個三線形的邊界框交迭時,"交迭,,出現。另外,用下文參考圖 34A的3406而描述的證據累加算法的經適當更改後的版本計算交迭部分的中 心的x-y位置。例如,如圖23中所示,(a)和(b)中的列表(分別為圖22 中的(f )和(g))相交,以確定水平和垂直三線形都涉及的頁面列表(c)。 使用交叉列表(c)、列表(d)和(e)(僅示出由所識別的三線形所涉及的交 叉文檔)、和列印文檔資料庫3400,確定文檔的交迭部分。例如,水平三線 形3-5-3和垂直三線形8-3-6涉及文檔6,而在所捕獲的圖像2200中,那兩 個三線形本身在單詞"has"之上交迭;因而文檔6接收關於這個交迭部分的 一個表決。如(f)中所示,對於特殊的所捕獲的圖像2200,文檔15接收最 多數量的表決,並因而被識別為包含所捕獲的圖像2200的文檔。識別(xl, yl)作為文檔15內的輸入圖像的位置。因而,總結上文參考圖22和23所描 述的文檔指紋匹配技術,水平分類器使用從文本的單詞的水平布置而導出的特徵,以及垂直分類器使用從那些單詞的垂直布置而導出的特徵,這裡基於 原始文檔中那些特徵的交迭部分,而將結果結合起來。這樣的特徵提取提供 用於唯一地識別文檔的機制,因為當這個特徵提取的水平方面受制於適當的 語法和語言約束時,垂直方面並不受制於這樣的約束。
此外,儘管參考圖22和23的描述特別適於三線形的使用,但對於水平 和垂直特徵4是取/分類的一個或兩者,可以使用任何n-gram。例如,在一個 或多個實施例中,對於多分類器特徵提取,可以使用垂直和水平n-gram,這 裡n-4。在一個或多個其它實施例中,水平分類器可以基於n-gram提取特徵, 這裡n-3,而垂直分類器可以基於n-gram提取特徵,這裡n=5。
此外,在一個或多個實施例中,分類可以是基於並不是嚴格地垂直或水 平的鄰接關係的。例如,麗、SW、 NW、和SE鄰接關係可以用於提取/分類。
圖24示出根據本發明的實施例的另一個文檔指紋匹配技術。圖24中所 示的"資料庫驅動的反饋"技術考慮到通過利用能夠與輸入相匹配的文檔的 圖像,以確定在其中將來自原始文檔的子圖像與輸入圖像匹配的圖像分析的 後序步驟,可以提高文檔圖像匹配系統的準確性。該技術包括複製輸入圖像 中所呈現的噪聲的轉換。在這之後可以有模版匹配分析。
圖25示出根據本發明的實施例的資料庫驅動的反饋的流程。如上文所描 述的,在步驟2510、 2512,首先預處理並識別輸入圖像碎片(例如,使用單 詞OCR和單詞對查找、字符OCR和字符對查找、單詞邊界框配置),以產生圖 像碎片2522的識別的許多候選者。這個列表中的每個候選者可以包含下列項 (doci、 pagei、 xi、 yi ),這裡doci為文檔的才示i口、才尋,pagei為文檔內的頁 面,以及(xi, yi )為那個頁面內的圖{|^卒片的中心的x-y坐標。
在步驟2514的原始碎片檢索算法使用自頁面的距離信息將整個輸入圖 像碎片的大小標準化至可選的固定大小,以確保將其轉換為已知的空間分辨 率,例如,100dpi。上文所描述的字體大小估計算法可以適應於這個任務。 類似地,可以使用已知的自焦點的距離或自焦點的深度技術。同樣,能夠基 於它們的單詞邊界框的高度,大小標準化能夠按比例地縮放圖像碎片。
以關於其接收到的每個文檔和頁面的標識符和畫R資料庫將產生的碎片 的邊界框的中心一起,原始碎片檢索算法檢索薩R資料庫3400。所產生的碎 片的範圍依賴於標準化的輸入碎片的大小。以這樣的方式,可以獲得相同空 間解析度和維度的碎片。例如,當標準化至100dpi時,輸入碎片能夠在其中心的每一邊上延伸50像素。在這種情形,將命令薩R資料庫產生中心置於指 定的x-y值的,IOO像素高和寬的100dpi的原始碎片。
從MMR資料庫2524返回的每個原始圖^f象碎片都可以與下列項(doci, pagei, xi, yi, widthi, heighti, actioni)相關聯,這裡(doci, pagei, xi, yi)為如上文所描述的,widthi和heighti為以^像素計算的原始^f卒片的 寬度和高度,以及actioni為可能與資料庫中doci的條目中的相應區域相關 聯的可選的動作。原始碎片檢索算法輸出2518數據2518和圖像碎片的這個 列表,並一起輸出其構造的大小標準化的輸出碎片。
此外,在一個或多個實施例中,碎片匹配算法2516將大小標準化的輸入 碎片與每個原始碎片相比較,並分派度量它們彼此如何匹配的評分2520。本 領域技術人員將意識到由於被用來確保碎片的大小可比較的機制的原因,在 許多情形下,與漢明距離的簡單交叉相關性就足夠了。此外,這個過程可能 包括模仿輸入中所探測到的圖像噪聲的原始碎片中的噪聲的引進。比較也可 能是任意複雜的,並可能包括任何特徵組的比較,該特徵組包括兩個碎片的 OCR結果和基於字符、字符對、或單詞對的數量的等級排序,其中單詞對可 能受制於如以前的幾何關係。然而,在這種情形,輸入碎片與原始碎片之間 共有的幾何對的數量可以被估計為或者用作等級排序度量標準。
jt匕夕卜,專lT出2520可以是n-元糹且(doci, pagei, xi , yi, act ioni , scorei ), 這裡評分由碎片匹配算法提供,並度量輸入碎片與doci, pagei的相應區域 相匹配的程度。
圖26示出根據本發明的實施例的另一個文檔指紋匹配技術。圖26中所 示的"資料庫驅動的分類器"使用初始的分類,產生可能包含輸入圖像的一 組假設。在資料庫3400中查找那些假設,並且自動地為那些假設設計特徵提 取加上分類策略。 一個例子是識別輸入碎片為或者包含Times字體,或者包 含Arial字體。在這種情形,控制結構714調用serif/san serif辨別專用 的特徵提取器和分類器。
圖27示出根據本發明的實施例的資料庫驅動的分類的流程。緊接著第一 特徵提取2710,由上文所描述的任何一種或兩種識別方法將輸入圖像碎片分 類2712,以產生文檔,頁面,和那些頁面內的x-y位置的等級排序。這個列 表中的每個候選者都可以包含,例如,下列項(doci, pagei, xi, yi ),這 裡doci為文檔的標識符,pagei為文檔內的頁面,以及(xi, yi )為那個頁面內的圖像碎片的中心的x-y坐標。可以使用參考圖25而描述的原始碎片檢 索算法2714產生關於每個候選者的碎片圖像。
仍然參考圖27,將第二特徵提取應用於原始碎片2716。這可能不同於第 一特徵提取,並可能包括,例如, 一個或多個字體探測算法、字符識別技術、 邊界框、和SIFT特徵。將每個原始碎片中所探測到的特徵輸入至自動分類器 設計方法2720,該方法包括,例如,為將未知的樣本分類為原始碎片的一個 而設計的神經網絡、支持向量機、和/或最近鄰分類器。可以將相同的第二特 徵提取應用於2718輸入圖像碎片,並且將它探測到的特徵輸入至這個新近設
計的可能為原始碎片專用的分類器。
專命出2714可能是n—元糹且(doci, pagei, xi, yi, actioni, scorei ) 的形式,這裡評分由2720自動設計的分類技術2722提供。本領域技術人員 將意識到,評分度量輸入碎片與doci, pagei的相應區域相匹配的程度。
圖28示出根據本發明的實施例的另一個文檔指紋匹配技術。圖28中所 示的"資料庫驅動的多分類器"技術通過遍及決定過程多個候選者,而減少 識別過程中早期的不可恢復性錯誤的機會。執行幾個初始分類。每個都產生 不同的特徵提取和分類能夠辨別的輸入碎片的不同等級排序。例如,那些組 的一個可能由水平n-grams產生,並由/人san-serif辨別serif而唯一地識 別。另一個例子可能由垂直n-grams產生,並由行分離的精確計算而唯一地 識別。
圖29示出才艮據本發明的實施例的悽t據庫驅動的多分類的流程。該流程與 圖27中所示的那個類似,但其使用多個不同的特徵提取算法2910和2912, 以用分類器2914和2916產生輸入圖像^5卒片的獨立的等級排序。特徵和分類 技術的例子包括上文所描述的水平和垂直單詞長度n-grams。每個分類器可 以產生包含至少關於每個候選者的下列項(doci, pagei, xi, yi, scorei ) 的碎片識別的分等級的列表,這裡doci為文檔的標識符,pagei為文檔內的 頁面,(xi, yi)為那個頁面內的圖傳碎片的中心的x-y坐標,以及scorei 度量輸入碎片與資料庫文檔中的相應位置相匹配的程度。
可以使用上文參考圖25而描述的原始碎片檢索算法產生相應於2914和 2916的輸出中的碎片識別的列表中的條目的一組原始圖像碎片。可以如以前 那樣將第三和第四特徵提取2918和2920應用於原始碎片和如上文圖27中所 描述的那樣自動設計和應用的分類器。仍然參考圖29,將那些分類器所產生的等級排序結合,以產生具有條目 (doci, pagei, xi, yi , actioni , scorei )的單個等級排序2924,這裡i=l..., 候選者的數量,以及每個條目中的值都如上文所描述的。例如,可以通過基 於它在兩個等級排序中的共同位置而分派項目 一個評分的已知的Borda計數 法測量,執行等級排序結合2922。這可以與由單獨的分類器所分派的評分結 合,以產生合成的評分。此外,本領域技術人員將注意到可以使用其它等級 排序結合的方法。
圖30示出根據本發明的實施例的另一個文檔指紋匹配技術。圖30中所 示的"視頻序列圖像累加,,技術通過將來自附近的或相鄰的幀的數據合併成 一體,而構建圖像。 一個例子涉及"超解析度"。它記錄N個臨時相鄰的幀, 並使用透鏡的點擴展功能的知識執行本質上為子像素邊緣增強的操作。效果 是增加圖像的空間解析度。此外,在一個或多個實施例中,可以使超解析度 方法專門化,以強調像洞、角落、和點那樣的文本特定特徵。進一步的擴展 將使用候選圖像碎片的特徵,如從資料庫3400而確定的,以使超解析度集成 功能專門化。
圖31示出根據本發明的實施例的另一個文檔指紋匹配技術。圖31中所 示的"視頻序列特徵累加"技術在做決定之前,在許多臨時相鄰的幀之上累 加特徵。這利用捕獲裝置的高採樣率(例如,每秒30幀)和用戶的意圖,其 保持捕獲裝置指向文檔上的相同點至少幾秒鐘。在每幀上獨立地執行特徵提 取,並將結果結合,以產生單個統一的特徵圖。結合過程包括隱含註冊步驟。 在文本碎片的視頻剪輯的檢查上,對於這種技術的需要是相當顯然的。在典
同的結果。
圖32示出根據本發明的實施例的另一個文檔指紋匹配技術。圖32中所 示的"視頻序列決定結合"技術將來自許多臨時相鄰的幀的決定結合。這利 用典型的捕獲裝置的高採樣率和用戶的意圖,其保持捕獲裝置指向文檔上的 相同點至少幾秒鐘。獨立地處理每幀,並產生其本身的分等級的一列決定。 將那些決定結合,以產生輸入圖像組的單個統一的等級排序。這種技術包括 控制決定結合過程的隱含註冊步驟。
在一個或多個實施例中,上文參考圖6-32所描述的一個或多個各種各樣 的文檔指紋匹配技術可以用於與 一個或多個已知匹配技術結合,這樣的結合在此被稱為"多層級(或多因素)識別"。通常,在多層級識別中,使用第一 匹配技術在文檔資料庫中定位一組具有特定標準的頁面,並且然後使用第二 匹配技術從該組中的頁面之中唯一地識別碎片。
圖33示出根據本發明的實施例的多層級識別的流程的例子。最初,在步 驟3310,使用捕獲裝置106在感興趣的文檔上捕獲/掃描"挑選,,特徵。該 挑選的特徵可以是任何特徵,其捕獲有效地導致文檔資料庫內的一組文檔的 選擇。例如,挑選的特徵可以是僅只為數字的條形碼(例如,通用產品代碼 (UPC))、字母數字條形碼(例如,code39、 code93、 codel28 )、或二維條形 石馬(例如,QR石馬、PDF417、 Datamatrix、 Maxicode)。 it匕夕卜,才兆選的對爭4i可 以是,例如,圖形、圖像、商標、標誌、特別的顏色或顏色的結合、關鍵字、 或短語。此外,在一個或多個實施例中,挑選的特徵可以局限於適合於捕獲 裝置106識別的特徵。
在步驟3312, —旦在步驟3310已捕獲了挑選的特徵,基於與所捕獲的 挑選的特徵的關聯,選擇文檔資料庫中一組文檔和/或文檔頁面。例如,如果 所捕獲的挑選的特徵為公司的標誌,則選擇資料庫中標記為包含那個標誌的 所有文檔。在另一個例子中,資料庫可以包含將所捕獲的挑選的圖像與其比 較的商標庫。當在該庫中有"命中"時,選擇與所命中的商標相關聯的所有 文檔,以用於如下文所描述的隨後的匹配。此外,在一個或多個實施例中, 在步驟3312的文檔/頁面的選擇可以依賴於所捕獲的挑選的特徵和所描述的 文檔上那個挑選的特徵的位置。例如,與所捕獲的挑選的特徵相關聯的信息 可以指定挑選的圖像是否位於文檔的右上角,而不是相對立的文檔的左下角。
此外,本領域技術人員將注意到,可以由捕獲裝置106或一些其它從捕 獲裝置106接收原始的圖像數據的部件作出特別的捕獲圖像包含挑選的特徵 的圖像的確定。例如,資料庫本身可以確定從捕獲裝置106發送的特定捕獲 對象包括挑選特徵,作為對其的響應,資料庫選擇與捕獲的挑選特徵關聯的 一組文檔。
在步驟3314,在步驟3312已經選擇特定組文檔之後,捕獲裝置106繼 續掃描並且由此捕獲感興趣的文檔的圖像。然後,通過使用參考圖6-32所 描述的不同的文檔指紋匹配技術中的一個或多個,將該捕獲的文檔的圖像與 在步驟3312選4奪的文檔匹配。例如,在步4f 3310基於感興趣的文檔上的鞋 圖形圖像的捕獲來將被索引為包括鞋圖形的挑選特徵的一組文檔之後,可以使用如前所述的多個分類器技術來將隨後的感興趣的文檔的捕獲圖像與所述 的 一組選擇的文檔匹配。
由此,使用參考圖33的描述的多層識別流處理的實現,通過初始降低頁 面/文檔的數量可以降低碎片識別次數,其中將所述頁面/文檔與隨後的捕獲 的圖像匹配。此外,通過首先掃描存在圖像、條形碼、圖形或其它類型的挑 選的特徵的位置上的文檔,用戶可以利用這樣的改進的識別次數。通過執行 這樣的動作,用戶可以快速地降低與隨後的捕獲的圖像匹配的文檔的數目。
醒R資料庫系統
圖34A闡明根據本發明的一個實施例而配置的固R資料庫系統3400的功 能框圖。系統3400是為基於內容的檢索而配置的,這裡以使得能夠進行基於 文本的索引(或任何其它可搜索的索引)的查找的方式表示對象之間的二維 幾何關係。系統3400採用證據累加,以通過,例如,將特徵發生的頻率與二 維區域中其位置的可能性結合,而提高查找效率。在一個特定實施例中,數 據庫系統3400為文檔事件資料庫320 (包括PD索引322 )的詳細實現,其內 容包^l舌由捕獲模塊318產生的列印文檔的電子表示和/或如上文參考圖3所討 論的文檔指紋匹配模塊226。根據這個公開發明,系統3400的其它應用和配 置將很明顯。
如能夠看到的,資料庫系統3400包括接收由畫R特徵提取模塊3402計 算的描述的醒R索引表模塊3404、證據累加模塊3406、和關係資料庫3408 (或任何其它適當的存儲設施)。索引表模塊3404查詢識別每個特徵發生的 文檔、頁面、和那些頁面內的x-y位置的索引表。能夠通過,例如,醒R索 引表模塊3404或一些其它專用的模塊,產生索引表。將證據累加模塊3406 程序化為或配置為,給定來自索引表模塊3404的數據,而計算分等級的一組 文檔、頁面和位置假設3410。關係資料庫34P8能夠用來存儲有關每個碎片 的另外的特徵3412。這些包括圖5中的504和508, ^旦並不局限於此。通過 在導出關於碎片的籤名或指紋(即,唯一的搜索項)中使用碎片內的文本的 二維布置,可相當大程度地增加甚至很小的文本的片段的唯一性。其它實施 例類似地能夠在導出關於碎片的籤名和指紋中利用碎片內的對象/特徵的任 何二維布置,並且關於唯一地識別碎片,本發明的實施例並不意味著局限於 文本的二維布置。圖34A中所闡明的資料庫系統3400的其它部件和功能包括 反饋導向的特徵搜索模塊3418、文檔呈現應用程式模塊3414、和子圖像提取模塊3416。這些部件與其它的系統3400部件交互作用,以提供反饋導向的 特徵搜索和動態原始圖像生成。另外,系統3400包括接收動作的動作處理器 3413。動作確定資料庫系統3400執行的動作和其提供的輸出。將依次解釋這 些其它部件的每一個。
圖34B中示出利用這種碎片內的文本的二維布置的MMR特徵提取模塊 3402的例子。在一個這樣的實施例中,將畫R特徵提取模塊3402程序化為 或配置為採用基於OCR的技術從圖像碎片中提取特徵(文本或其它目標特 徵)。在這個特定實施例中,特徵提取模塊3402提取文本的碎片的圖像中的 單詞的x-y位置,並將那些位置表示為其包含的水平或垂直相鄰的單詞對組。 如果它們是水平相鄰的,則將圖像碎片有效地轉換為由"-"連接的單詞對(例 3口, the—cat, in—the, the-hat,和is—back),而^口果它們垂直i也交迭,貝寸 由"+,,連接(例如,the+in, cat+the, in+is,和the+back )。該x-y位置 能夠是,例如,基於自文檔圖像中的某些固定點(從文檔的最左上角或中心), 在x和y平面方向中計算的像素的。注意到該例子中水平相鄰的對可以頻繁 地出現在許多其它文本段落中,而垂直交迭的對在其它文本段落中將可能較 少見。能夠類似地將圖像特徵之間的其它幾何關係編碼,例如單詞之間帶有 "/,,的SW-NE鄰接、帶有"\,,的NW-SE鄰接,等等。同樣,能夠將"特徵" 一般化為能夠用任意的但一致的串編碼的單詞邊界框(或者其它特徵邊界 框)。例如,能夠用串"4rusl"表示具有粗糙的上輪廓線但光滑的下輪廓線, 與高的四倍一樣長的邊界框。另外,能夠將幾何關係一般化為特徵之間的任 意角度和距離。例如,可以用"4ruslW4rusl"表示NW-SE相鄰的但由兩個 單詞的高度分離的具有"4rusl"描述的兩個單詞。根據這個公開發明,許多 編碼方案將會很明顯。此外,注意到能夠使用數字、布爾值、幾何形狀、和 其它這樣的文檔特徵,代替單詞對,來識別碎片。
圖34C闡明根據本發明的一個實施例的示例性索引表組織。如能夠看到 的,醒R索引表包括倒置項索引表3422和文檔索引表3424。如將依次討論的, 每個唯一的項或特徵(例如,關鍵點3421 )都指向項索引表3"2中的位置, 該項索引表3422保留指向一列記錄3423 (例如,Rec#l、 Rec#2,等等)的 特徵的函數值(例如,關鍵點x),並且每個記錄都識別文檔內的頁面上的候 選區域。在一個例子中,關鍵點和關鍵點的函數值(關鍵點x)是相同的。 在另一個例子中,將哈希函數應用於關鍵點,並且該函數的輸出為關鍵點x。給定一列查詢項,檢查經關鍵點編索引的每個記錄,並且識別與所有的 查詢項最一致的區域。如果該區域包含足夠高的匹配評分(例如,基於預定 的匹配閾值),則確認假設。否則,宣布匹配失敗,並不返回區域。在這個示 例性實施例中,如先前所描述的,關鍵點為或者由"-"或者由"+"分離的
單詞對(如,"the-cat"或"cat+the")。將幾何關係合併入關鍵點中的這種 技術本身允許關於二維幾何查詢的傳統的文本搜索技術的使用。
因而,索引表組織將圖像碎片中所探測到的特徵轉換成為代表特徵本身 和它們之間的幾何關係兩者的文本項。這允許傳統的文本索引標定和搜索方 法的利用。例如,如根據這個公開發明將很明顯的,由能夠被稱為"查詢項" 的符號"cat+the"表示垂直相鄰的項"cat"和"the"。傳統的文本搜索數 據結構和方法的利用便利了在此所描述的醒R技術在網際網路文本搜索系統 (例如,Google、 Yahoo、 Microsoft,等等)之上的移接。
在這個示例性實施例的倒置項索引表3422中,每個記錄都使用六個參 數文檔識別(DocID)、頁面號(PG)、 x/y偏移量(分別為X和Y)、以及矩 形區域的寬度和高度(分別為W和H),識別文檔內頁面上的候選區域。DocID 為當列印文檔時,基於時間標記(或其它元數據)而產生的唯一的串。但它 能夠是結合裝置ID和人員ID的任何串。在任何情形,文檔都由唯一的DocID 識別,並且具有存儲於文檔索引表中的記錄。頁面號為相應於紙張輸出的頁 碼標記,並且從1開始。由左上角的X-Y坐標,以及標準化的坐標系統中的 邊界框的寬度和高度為參數表示矩陣區域。根據這個公開發明,許多的文檔 內部位置/坐標方案將會很明顯,但本發明並不意味著局限於任何特別的一 個。
根據本發明的一個實施例而配置的示例性記錄結構使用24-位DocID和 8-位頁面號,允許直到一千六百萬個文檔和四十億個頁面。關於邊界框的每 個X和Y偏移量的一個無符號字節都提供30dpi水平的和23dpi垂直的空間 解析度(假設8.5" xii"的頁面,儘管能夠使用其它頁面大小和/或空間分 辨率)。關於邊界框的寬度和高度的類似的處置(例如,關於每個W和H的一 個無符號字節)允許與句點或者"i"上的點一樣小的,或者與整個頁面(例 如,8.5" xll"或其它) 一樣大的區域的表示。因此,每個記錄的八個字節 (DocID的3個字節、PG的1個字節、X的l個字節、Y的l個字節、W的l 個字節、和H的1個字節為總共8個字節)能夠容納大量的區域。文檔索引表3424包括有關每個文檔的相關信息。在一個特定實施例中, 這個信息包括XML文件中文檔相關的欄位,包括列印解析度、列印日期、紙 張大小、影子文件名、頁面圖像位置,等等。因為當給文檔編索引時,將打 印坐標轉換成為標準化的坐標系統,計算搜索假設並不涉及這個表。因而, 僅關於相匹配的候選區域參閱文檔索引表3424。然而,這個決定暗示索引中
若如是需要,當計算搜索假設時,可替代的實施例可以使用文檔索引表3424 (或者標準化的坐標的更高的解析度)。
因而,索引表模塊3404運作,以有效地提供使得給定圖像查詢發生處的 對象(例如,文檔頁面)和那些對象內的x-y位置的基於內容的檢索能夠進 行的圖像索引。這樣的圖像索引和關係資料庫3408的結合允許使圖像碎片與 碎片的特徵(例如,附著於碎片的"動作",或者能夠掃描以促使與碎片有關 的其它內容的檢索的條形碼)相匹配的對象的位置。關係資料庫3408也提供 從一個碎片至文檔中的其它碎片在索引表中的特徵的"相反連結"的方法。 相反連結提供找到當其從文檔圖像的一個部分移動到另 一個部分時,識別算 法將期望看到的特徵的方式,其可以相當大程度地提高如在此所討論的醒R 系統中從頭至尾f ront-end的圖像分析算法的性能。 反饋導向的特徵搜索
同樣能夠將圖像碎片的x-y坐標(例如,圖像碎片的中心的x-y坐標) 和文檔及頁面的識別輸入至反饋導向的特徵搜索模塊3418。反饋導向的特徵 搜索模塊3418搜索自圖像碎片的中心的給定距離內發生的記錄3423的項索 引表3422。例如,能夠通過將關於每個DocID-PG結合的記錄3423存儲在以 X和Y值的順序分類的存儲鄰接塊中,而便利這種搜索。通過關於給定值(依 賴於存儲時數據如何分類的X或Y)的二進位搜索,和自具有給定的X和Y 值的所有記錄的那個位置的串行搜索,而執行查找。典型地,這將包括圍繞 度量給定的文檔和頁面中W英寸寬和H英寸高的碎片的外圍的M英寸環中的 x-y坐標。定位這個環中發生的記錄,並通過反跟蹤指針定位它們的關鍵點 或特徵3421。如在圖34A的3417示出的,報導環中特徵的列表和它們的x-y 位置。能夠基於輸入圖像的大小,通過識別系統動態地設置在3415所示的W、 H、和M的值,以致特徵3417在輸入圖像碎片的外面。
例如,對於消除多個假設的歧義,圖像資料庫系統3400的這樣的特徵是很有用的。如果資料庫系統3400報導不止一個文檔可能與輸入圖像碎片相匹 配,則圍繞碎片的環中的特徵將允許識別系統(例如,指紋匹配模塊226或 其它適合的識別系統)通過引導用戶在能夠消除決定的歧義的方向輕微地移 動圖像捕獲裝置,而決定哪個文檔與用戶持有的文檔最匹配。例如(假設使 用基於OCR的特徵,儘管該概念可擴展至任何幾何上編索引的特徵組),文檔 A中的圖像碎片可能徑直地位於單詞對"blue-xylophone"之下。文檔B中 的圖像碎片可能徑直地位於單詞對"blue-thunderbird"之下。資料庫系統 3400將報導這些特徵的期望的位置,並且識別系統可能命令用戶(例如,通 過用戶接口 )將相機向上移動由特徵的y坐標和碎片的頂部的差所指示的量。 識別系統能夠計算那個差別區域中的特徵,並使用來自文檔A和文檔B的特 徵確定哪一個最匹配。例如,識別系統能夠用由(xylophone, thunderbird) 組成的特徵的"詞典"後處理來自差別區域的0CR結果。與OCR結果最匹配 的單詞相應於與輸入圖像最匹配的文檔。後處理算法的例子包括通常已知的 拼寫校正技術(例如單詞處理器和電子郵件應用程式所使用的那些)。
如這個例子闡明,資料庫系統3400的設計允許識別系統,通過以避免進 行進一步的資料庫訪問的需要的方式匹配特徵描述,以有效的方式消除多個 候選者的歧義。可替代的解決方案將為獨立地處理每個圖像。
動態原始圖像生成
同樣能夠將圖像碎片中的位置的x-y坐標(例如,圖像碎片的中心的x-y 坐標)和文檔及頁面的識別輸入至關係資料庫3408,在其中能夠使用它們來 檢索那個文檔和頁面的所存儲的電子原文。然後,能夠通過文檔呈現應用程 序模塊3414將那個文檔呈現成為位像。同樣,子圖像提取模塊3416使 用由模塊3W4所提供的另外的"方框大小"值來提取圍繞中心的位圖的一部 分。這個位圖是圖像碎片的所期望的外觀的"原始"表示,並且其包含輸入 圖像中應該呈現的所有特徵的準確表示。然後能夠返回原始碎片作為碎片特 徵3"2。這種解決方案克服了現有技術所要求的過度存儲,該現有技術通過 存儲能夠隨後在要求時被轉換為位圖數據的壓縮非圖像表示,而存儲圖像位 圖。
這樣的存儲方案是有益的,因為其使得能夠進行假設-和-檢驗識別策 略的使用,在其中使用從圖像中所提取的特徵表示檢索通過詳細的特徵分析 消除歧義後的一組候選者。通常,預測將最佳地消除任意的一組候選者的特徵是不可能的,但從那些候選者的原始圖像而確定這一點是很理想的。例如,
可以在兩個資料庫文檔中定位單詞對"the cat"的圖像,其中一個最初以 Times Roman字體列印,而另一個以Helvetica字體列印。簡單地確定輸入 圖像是否包含這些字體的一個將識別正確匹配的資料庫文檔。用像歐氏距離 那樣的模板匹配比較度量標準,將那些文檔的原始碎片與輸入圖像碎片相比 較,將識別正確的候選者。
一個例子包括存儲Microsoft Word ". doc"文件的關係資料庫3408 (類 似、的方法適於i象postscript, PCL、 pdf、或樣£4欠的XML paper specif icat ion XPS那樣的其它文檔格式,或者通過像ghostscript那樣的呈現應用程式, 或在XPS、具有所安裝的WinFX部件的微軟的Internet Explorer的情形中, 能夠被轉換成為位圖的其它這樣的格式)。假定文檔、頁面、x-y位置、方框 維度、和指示優選的解析度的系統參數的識別為600點每英寸(dpi),則能 夠調用Word應用程式,以產生位像。這將提供6600行和5100列的位圖。 另外的參數乂=3"、 y=3"、 height=l"、和width-l"指示資料庫應該返回中心 置於遠離頁面的左上角x和y上1800像素的點的600像素高和寬的碎片。
多個資料庫
當使用多個資料庫系統3400時,其每一個都可以包含不同的文檔集,能 夠使用原始碎片確定兩個資料庫是否返回相同的文檔或者哪個資料庫返回了 與輸入較好地匹配的候選者。
如果兩個資料庫返回相同的文檔,或許具有不同的標識符3410 (即,原 始文檔是相同的是不明顯的,因為它們在不同的資料庫中分別輸入)和特徵 3412,則原始碎片將幾乎完全相同。這能夠通過,例如,用計算不同的像素 的數量的漢明距離,將原始碎片彼此比較而確定。如果原始文檔是像素到像 素完全相同的,則漢明距離將為零。如果碎片稍微地不同,如可能由微小的 字體差別所導致的,則漢明距離將稍微地大於零。當計算漢明算符中的圖像 差別時,這能夠導致圍繞字符邊緣的"光環"效應。不同版本的原始呈現應 用程序、運行資料庫的伺服器上不同版本的作業系統、不同的印表機驅動器、 或不同的字體集,都能夠導致像這樣的字體差別。
能夠在來自兩個文檔中的不止一個x-y位置的碎片上執行原始碎片比較 算法。它們所有的都應該相同,但像這樣的採樣程序將允許能夠克服資料庫 系統之間的呈現差別的冗餘。例如,當在兩個系統上呈現時, 一種字體可能看起來徹底地不同,但另一種字體可能完全相同。
如果兩個或多個資料庫返回不同的文檔作為其關於輸入圖像的最佳匹 配,則能夠通過像漢明距離那樣的基於像素的比較度量標準,將原始碎片與 輸入圖像相比較,以確定哪個是正確的。
用於比較來自不止一個資料庫的結果的可替代的策略為比較測量每個數 據庫所報導的文檔中的特徵的幾何分布的累加器陣列的內容。直接由資料庫 提供這個累加器,以避免執行分離的原始特徵組的查找的需要,是很理想的。
同樣,這個累加器應該獨立於資料庫系統3400的內容。在圖34A所示的實施 例中,輸出活動陣列3420。能夠通過測量它們的值的內部分布,比較兩個活 動陣列。
更詳細地,如果兩個或多個資料庫返回相同的文檔,或許具有不同的標 識符3410(即,原始文檔是相同的是不明顯的,因為它們在不同的資料庫中 分別輸入)和特徵3412,則來自每個資料庫的活動陣列3420將幾乎完全相 同。這能夠通過,例如,用計算不同的像素的數量的漢明距離,將陣列彼此 比較而確定。如果原始文檔完全相同,則漢明距離將為零。
如果兩個或多個資料庫返回不同的文檔作為其關於輸入特徵的最佳匹 配,則能夠比較它們的活動陣列3420,以確定哪個文檔與輸入圖像"最佳地" 匹配。與圖像碎片正確地匹配的活動陣列將包含中心近似置於碎片出現處的 位置的高數值的群族。與圖像碎片不適當地匹配的活動陣列將包含隨機分布 的數值。存在許多熟知的用於測量色散或圖像的隨機性的策略,例如熵。負fe 夠將這樣的算法應用於活動陣列3420,以獲得指示群簇的存在的測量。例如, 包含相應於圖像碎片的群簇的活動陣列3420的熵將相當地不同於其數值隨 ^/L地分布的活動陣列3420的熵。
此外,注意到,單獨的客戶機106可能在任何時刻都可訪問其內容並不 必定彼此沖突的多個資料庫3400。例如,企業可能具有每個都涉及單個文檔 的公開可訪問的碎片和企業私有的碎片兩者。在這樣的情形,客戶機裝置106 將維持按順序參閱的一列資料庫D1、 D2、 D3...,並將經結合的活動陣列3420 和標識符3410生成統一的用戶顯示。給定的客戶機裝置106可能顯示從所有 的資料庫可得到的碎片,或者允許用戶選擇資料庫子集(例如,僅只D1、 D3、 和D7 ),並僅顯示來自那些資料庫的碎片。可以通過訂購服務將資料庫添加 至列表,或者當客戶機裝置106處於某個位置時,使得資料庫可以無線地獲得,或者因為資料庫是已經被加載到客戶機裝置106之上的幾個的一個,或
者因為已經證明某個用戶當前正在使用該裝置,或者甚至因為該裝置正以某 個模式操作。例如,因為特別的客戶機裝置的音頻揚聲器開啟或關閉,或者 因為像視頻投影機那樣的外圍裝置當前附著於客戶機,某些資料庫就可能是 可獲得的。 動作
進一步參考圖34A,畫R資料庫3400接收動作,和來自畫R特徵提取模 塊3402的一組特徵。動作指定命令和參數。在這樣的實施例中,命令和其參 數確定所返回的碎片特徵3412。以能夠容易地被翻譯成為文本的包括,例如, http,的格式接收動作。
動作處理器3413接收由證據累加模塊3406所確定的關於文檔、頁面和 頁面內的x-y位置的標識符。它也接收命令和其參數。動作處理器3413被程 序化為或被配置為將命令轉換成為或者檢索數據或者使用關係資料庫3408 將數據存儲在相應於給定的文檔、頁面和x-y位置的位置處的指令。
在一個這樣的實施例中,命令包括RETRIEVE, INSERT_TO<DATA〉、 RETRIEVE—TEXT〈RADIUS〉、 TRANSFER、 PURCHASE, PRISTINE_PATCH、和 ACCESS_DATABASE〈DBID> 。現在將依次討論每一個。
RETRIEVE-檢索連接至給定的文檔頁面中的x-y位置的數據。動作處理器 3413將RETRIEVE命令轉換成為檢索可能存儲在這個x-y位置附近的數據的 關係資料庫查詢。這能夠要求不止一個資料庫查詢的發布,以搜索包圍著x-y 位置的區域。將檢索的數據作為碎片特徵3412輸出。RETRIEVE命令的示例 性應用程式為檢索視頻剪輯或動態信息對象(例如,能夠檢索當前信息的電 子地址)的多媒體瀏覽應用程式。檢索的數據能夠包括指定將要在醒R裝置 上執行的隨後的步驟的菜單。它也可能是能夠在電話(或其它顯示裝置)上 顯示的靜態數據,例如JPEG圖像或視頻剪輯。能夠將參數提供給RETRIEVE 命令,其確定搜索碎片特性的區域。
INSERT_TO-在圖像碎片指定的x-y位置插入〈DATA〉。動作處理器 3413將INSERT-TO命令轉換成為關係資料庫的將數據添加至指定的x-y位置 的指令。將INSERT-TO命令的成功完成的確認作為碎片特徵3412而返回。 INSERT_TO命令的示例性應用程式為允許用戶將數據附著於文本的段落中的任意x-y位置的固R裝置上的軟體應用程式。數據能夠是靜態多媒體數據, 如JPEG圖像、視頻剪輯、或音頻文件,但它也能夠是像菜單那樣的指定與給 定的位置相關聯的動作的任意的電子數據。
RETRIEVE—TEXT〈RADIUS〉-檢索由圖像碎片所確定的x-y位置的〈RADIUS〉 內的文本。能夠將〈RADIUS〉指定為,例如,圖像空間中的許多像素,或者能 夠將它指定為圍繞由證據累加模塊3406所確定的x-y位置的許多單詞的字 符。〈RADIUS〉也能夠涉及經分析的文本對象。在這個特定實施例中,動作處 理器3413將RETRIEVE-TEXT命令轉換成為檢索適當的文本的關係資料庫查 詢。如果〈RADIUS〉指定經分析的文本對象,則動作處理器僅返回經分析的文 本對象。如果經分析的文本對象不位於指定的x-y位置附近,則動作處理器 返回零指示。在可替代的實施例中,動作處理器調用反饋導向的特徵搜索模 塊,以檢索在給定的x-y位置的半徑範圍內出現的文本。將文本串作為碎片 特徵3412而返回。與文本串中的每個單詞相關聯的可選的數據包括原始文檔 中x-y邊界框。RETRIEVE-TEXT命令的示例性應用程式為從列印文檔中挑選 文本短語,以便包括於另一個文檔之中。這可能用於,例如,在,R系統上 編4非陳述文件(例如,以PowerPoint 4各式)。
TRANSFER〈AMOUNT〉-^r索整個文檔和以能夠;波加載至另一個資料庫上的 形式連接至它的一些數據。〈AMOUNT〉指定所檢索的數據的數量和類型。如果 〈AM0UNT〉為ALL,則動作處理器3413發布命令至資料庫3408,其檢索與文檔 相關聯的所有數據。這樣的命令的例子包括DUMP或Unix TAR。如果〈A歸UND 為SOURCE,則衝企索文檔的原始源文件。例如,這將4企索列印文檔的Word文 件。如果〈AM0UNT〉為BITMAP,則4企索列印文檔的位圖的JPEG壓縮版(或其 它通常所使用的格式)。如果〈AM0UNT〉為PDF,則檢索文檔的PDF表示。依靠 命令名稱,以調用應用程式已知的格式,將檢索的數據作為碎片特徵3412而
而將文檔的PDF表示傳遞至固R裝置的"文檔攫取器"。
PURCHASE-;f企索連接至文檔中的x-y位置的產品-說明。動作處理器3413 首先執行一系列一個或多個RETRIEVE命令,以獲得給定的x-y位置附近的產 品說明。產品說明包括,例如,賣主的名字、產品的識別(例如,物料編號)、 和賣主的電子地址。優先於可能位於附近的其它數據類型,而檢索產品說明。 例如,如果jpeg存儲在由圖像碎片所確定的x-y位置,則替代地檢索下一個最接近的產品說明。將檢索的產品說明作為碎片特徵3412而輸出。PURCHASE 命令的示例性應用程式與列印文檔中的廣告相關聯。畫R裝置上的軟體應用 程序接收與廣告相關聯的產品說明,並在將其發送至所指定的電子地址處的 指定的賣主之前,添加用戶的個人識別信息(例如,名字、運送地址、信用 卡號碼,等等)。
PRISTINE一PATCH〈RA訓S[DOCID PAGEID X Y DPI]〉-檢索所指定的文檔的 電子表示,並提取具有半徑RADIUS,中心置於x-y的圖像碎片。RADIUS能夠 指定圓環形的半徑,但它也能夠指定矩形碎片(例如,2英寸高x3英寸寬)。 它也能夠指定整個文檔頁面。(DocID, PG, x, y)信息能夠明白地作為動作 的一部分而提供,或者它能夠從文本碎片的圖像中導出。動作處理器3413從 關係資料庫3408中檢索文檔的原始表示。那個表示能夠是位圖,但它也能夠 是可呈現的電子文檔。將原始表示傳遞至文檔呈現應用程式3414,在此將其 變換成為位圖(具有如點每英寸的參數DPI中所提供的解析度),並然後將它 提供給在其提取所期望的碎片的子圖像提取3416。將碎片圖像作為碎片特徵 3412而返回。
ACCESS_DATABASE-將資料庫3400添加至客戶機106的資料庫列 表。除了當前在列表中任何現有的資料庫之外,客戶機現在能夠參閱這個數 據庫300。 DBID或者指定文件,或者指定涉及指定的資料庫的遠程網絡。
索引表生成方法
圖35闡明根據本發明的實施例的用於產生應R索引表的方法3500。能 夠,例如,通過圖34A的資料庫系統3400實施這個方法。在一個這樣的實施 例中,例如,通過固R索引表模塊3404 (或一些其它專用的模塊),從掃描 或列印文檔中產生醒R索引表。能夠以軟體、硬體(例如,門級邏輯)、固件 (例如,配置有用於實施該方法的嵌入例程的微控制器),或者它們的一些結 合,正如在此所描述的其它模塊。
該方法包括接收3510紙質文檔。紙質文檔能夠是任何文檔,例如具有任 何數量的頁面的便函(如,工作相關、個人的信件)、產品標籤(如,罐裝商 品、醫藥、箱裝電子裝置)、產品說明(如,吹雪機、計算機系統、製造系統)、 產品手冊或廣告材料(如,汽車、船、度假勝地)、服務描述材料(如,因特 網服務提供者、清潔服務)、書的一個或多個頁面、雜誌或其它這樣的出版物、 從網站列印的頁面、手寫的筆記、從白板捕獲和列印的筆記、或者從任何處理系統(如,桌上型計算機或可攜式計算機、相機、智慧型電話、遠程終端) 列印的頁面。
該方法繼續產生3512紙質文檔的電子表示,該表示包括文檔中所示的特 徵的x-y位置。目標特徵能夠是,例如,單獨的單詞、字母、和/或文檔內的 字符。例如,如果掃描原始文檔,則首先將其OCR並且提取單詞(或者其它 目標特徵)和其x-y位置(例如,通過掃描儀127的文檔指紋匹配才莫塊226, 的操作)。如果列印原始文檔,則索引標定過程接收每個字符(或其它目標特 徵)的字體、磅值、和x-y邊界框的XML格式的精確表示(例如,通過列印 機116的列印驅動器316的操作)。在這種情形,索引表生成開始於步驟3514, 因為以精確地識別的x-y特徵位置接收電子文檔(例如,從列印驅動器316 )。 根據這個公開發明,除了 XML以外的格式將很明顯。通過將它們"列印"至 其輸出被導向文件的列印驅動器,以致並不必定產生紙張,能夠將像 Microsoft Word、 Adobe Acrobat、和postscript那才羊的電子文檔專命入悽丈才居 庫。這觸發下文所示的XML文件結構的產生。在所有的情形,XML和原始文 檔格式(Word、 Acrobat、 postscript,等等)都分派有標識符(添力卩至數據 庫的關於第i個文檔的doc i),並且以通過那個標識符,但也基於包括捕獲 它的時間、列印的日期、觸發列印的應用程式、輸出文件的名稱,等等的文 檔的其它"元數據"的特徵,使得能夠進行它們稍後的檢索的方式,存儲在 關係資料庫3408中。
這裡示出XML文件結構的例子
$docID. xml:
< xml version= "1. 0" 〉 〈doclayout〉
file url/path or null if not known
file printed date</date〉
application that triggered print
$docID. txt
<prfile〉name of output file
<dpi〉dpi of page for x, y coordinates, eg-600
〈width〉in inch, like 8. 5</width〉in inch, eg. 11. 0
<imagescale〉0. 1 is l/10th scale of dpi

$docID—l. jpeg
〈sequence box= "x y w h,, >
this string of text
<font〉any font info

<text〉word text</text〉
<char〉a</char〉
<char〉b
l entry per char, in sequence


</page〉

在一個特定的實施例中,單詞可以包含自a-z、 A-Z、 0-9的任何字符, 和鄉$#的任何一個;所有其它的是分隔符。能夠通過索引標定過程所使用的 列印捕獲軟體(例如,在像資料庫32Q伺服器那樣的伺服器上執行的)創 建.xml文件的原始描述。隨著系統獲得新的文檔,實際格式經常演化,並 包含多個元素。
保存列印驅動器(例如,列印驅動器316)所接收的文本的原始序列, 並且除"—鵬$#"之外,基於標點符號強加邏輯單詞結構。使用XML文件作為 輸入,索引表模塊3404遵守頁面邊界,並首先試圖通過檢查兩個連續的序列 之間的垂直交迭的數量,將序列分組成為邏輯行。在一個特定實施例中,如 果兩個序列交迭少於它們的平均高度的一半,則使用行中斷發生的試探法。 對於典型的文本文檔(例如,Microsoft Word文檔),這樣的試^笨法相當起 作用。對於具有複雜布局的html頁面,可能需要另外的幾何分析。然而,只 要能夠如通過查詢過程產生一致的索引標定項,就不必定要提取完美的語義 文檔結構。
基於紙質文檔的電子表示的結構,該方法繼續3514給紙質文檔的每個頁面上的每個目標特徵的位置編索引。在一個特定實施例中,這個步驟包括給 紙質文檔的每個頁面上的每對水平和垂直相鄰的單詞的位置編索引。如先前 所解釋的,水平相鄰的單詞為一行內的相鄰單詞對。垂直相鄰的單詞為垂直
地排列的相鄰行中的單詞。能夠類似地利用頁面的其它多維方面。
該方法進一步包括存儲3516與每個目標特徵相關聯的碎片特徵。在一個 特定實施例中,碎片特徵包括附著於碎片的動作,並存儲在關係資料庫中。 如先前所解釋的,這樣的圖像索引和存儲設施的結合允許與圖像碎片和碎片 的特徵相匹配的對象的位置。特徵能夠是與路徑有關的任何數據,例如元數
據。特徵也能夠包括,例如,將實施特定的功能的動作,能夠被選擇以提供 對與碎片有關的其它內容的訪問的連結、和/或能夠被掃描或處理,以促使與
碎片有關的其它內容的檢索的條形碼。
關於搜索項生成,給出更精確的定義,這裡僅觀察行結構的一段。對於 水平相鄰的對,通過用"-"分隔符連接單詞,形成查詢項。使用"+"連接 垂直對。若如是需要,能夠以其原始形式使用單詞,以保存大寫(這創建更 多唯一的項,但同樣產生具有另外的查詢發布的較大的索引,以考慮像大小 寫敏感性這樣的事情)。索引標定方案允許將相同的搜索策略應用於或者水平 的或者垂直的單詞對,或者兩者的結合。任何一種情況的逆文檔頻率可說明 項的辨別能力。
i正々居累力口方法
圖36闡明根據本發明的一個實施例的用於計算分等級的一組文檔、頁 面、和關於目標文檔的位置假設的方法3600。能夠,例如,通過圖34A的數 據庫系統3400實施該方法。在一個這樣的實施例中,證據累加模塊3406使 用來自如先前所討論的索引表模塊3404的數據計算假設。
該方法以接收3610像較大的文檔圖像的圖像碎片或整個文檔圖像那樣 的目標文檔圖像開始。該方法繼續產生3612捕獲目標文檔圖像中對象之間的 二維關係的一個或多個查詢項。在一個特定實施例中,通過如先前參考圖34B 所討論的產生水平和垂直的單詞對的特徵提取過程,而產生查詢項。然而, 如根據這個公開發明將會很明顯的,能夠使用如在此所描述的任何數量的特 徵提取過程,來產生查詢項,其捕獲目標圖像中對象之間的二維關係。例如, 能夠使用用來構建方法3500的索引的相同的特徵提取技術,來產生查詢項, 例如參考步驟3512所討論的那些(產生紙質文檔的電子表示)。此外,注意到,查詢項的二維方面能夠單獨地應用於每個查詢項(例如,表示目標文檔
中的水平和垂直對象兩者的單個查詢項),或者應用於一組搜索項(例如,為 水平單詞對的第 一查詢項和為垂直單詞對的第二查詢項)。
該方法繼續查找3614項索引表3422中的每個查詢項,以檢索與每個查 詢項相關聯的一列位置。關於每個位置,該方法繼續產生3616包含位置的許 多區域。在處理所有的查詢之後,該方法進一步包括識別3618與所有的查詢 項最一致的區域。在一個這樣的實施例中,以權重(例如,基於每個區域與 所有的查詢項一致的程度)增加每個候選區域的評分。該方法繼續確定3620 所識別的區域是否滿足預定的匹配標準(例如,基於預定的匹配閾值)。如果 這樣,該方法繼續確認3622該區域作為目標文檔圖像的匹配(例如,最可能
包含能夠被訪問或以其它方式被使用的區域的頁面)。否則,該方法繼續拒絕 3624該區域。
單詞對和"標準化"的坐標空間的位置存儲在項索引表3422中。這提供 不同的印表機與掃描儀解析度之間的一致性。在一個特定實施例中,將85x 110坐標空間用於8. 5"x ll"的頁面。在這樣的情形,由其在這個85xll0空
間中的位置識別每個單詞對。
為了提高搜索的效率,能夠執行兩步過程。第一步包括定位最可能包含 輸入圖像碎片的頁面。第二步包括計算最可能為碎片的中心的那個頁面內的 x-y位置。這樣的途徑引進可能在第一步中錯過的真實的最好匹配的可能性。 然而,在稀疏索引標定空間,這樣的可能性很少見。因而,依賴於索引的大 小和所期望的性能,能夠使用這樣的效率提高技術。
在一個這樣的實施例中,使用下列算法找到最可能包含輸入圖像碎片中 所探測到的單詞對的頁面。
For each given word—pair wp
idf = 1/log (2 + num—docs (wp))
For each (doc, page) at which wp occurred
Accum[doc, page] += idf; end /* For each (doc, page) */ end /* For each wp */
(maxdoc, maxpage) = max ( Accum[doc, page]);if (Accum[ maxdoc, maxpage ] > thresh—page) return ( maxdoc, maxpage);
這個技術將關於每個單詞對的逆文檔頻率(idf )添加至由文檔和它在其 上出現的頁面標定索引的累加器。num-docs (wp)返回包含單詞對wp的文檔的 數量。由證據累加模塊3406實現累加器。如果那個累加器中的最大值超過閾 值,則其作為是碎片的最佳匹配的頁面而輸出。因而,該算法運作,以識別 與查詢中的單詞對最匹配的頁面。可替代地,能夠篩選Accum陣列,並作為 與輸入文檔相匹配的"N個最佳"頁面報導頭N個頁面。
根據本發明的 一 個實施例,下列證據累加算法累加關於單個頁面內的輸 入圖像碎片的位置的證據。
For each given word-pair wp
idf = 1/log (2 + num—docs (wp)) For each (x,y) at which wp occurred
(minx, maxx, miny, maxy) = extent (x, y); maxdist = maxdist (minx, maxx, , miny, maxy); For i=miny to maxy do
For j = minx to maxx do
norm_dist = Nornugeometric_dist (i, j, x, y,
maxdist)
Activity [i, j ] += norm_dist; weight = idf * norm—dist; Accum2[i, j] += weight; end /* for j */ end /* for I */ end /* For each (y, y) */ end /* For each */
該算法運算,以定位最可能為輸入圖像碎片的中心的85 x 110空間中的 單元。在這裡所示的實施例中,通過將權重添加至圍繞每個單詞對的固定區域(稱為環區)中的單元,該算法可做到這一點。對extent函數給定x, y 對,並且其返回關於環繞的固定大小區域U.5"高和2"寬是典型的)的最小 和最大值。extent函數考慮邊界條件,並確保其返回的值不會落在累加器之 外(即,小於零或x大於85或者y大於110)。 maxdist函數找到由邊界框坐 標(minx, maxx, miny, maxy )所描述的邊界框中兩個點之間的最大歐氏距 離。關於由單詞對的逆文檔頻率和單元與環區的中心之間的標準化的幾何距 離的乘積所確定的環區內的每個單元,而計算權重。這使接近於中心的單元 權重高於較遠處的單元。在由該算法處理每個單詞對之後,在Accum2陣列中 搜索具有最大值的單元。如果那個值超過了闊值,則將其坐標作為圖像^^片 的位置。而報導活動陣列存儲累加的norm-dist值。因為不通過idf將它們 縮放,它們不考慮包含特別的單詞對的資料庫中的文檔的數量。然而,它們 的確提供與給定的一組單詞對最匹配的x-y位置的二維圖像表示。此外,活 動陣列中的條目獨立於資料庫中所存儲的文檔。能夠將通常內部使用的這種 數據結構輸出3420。
根據本發明的一個實施例,如這裡所示計算標準化的幾何距離。
Norm—geometric-dist (i, j, x, y, maxdist)
begin
d = sqrt( (i-x)2 + (j-y)2 ); return ( maxdist - d );
end
計算單詞對的位置與環區的中心之間的歐氏距離,並返回可能已經計算
的最大距離與這之間的差。
在通過證據累加算法處理每個單詞對之後,在Accum2陣列中搜索具有最 大值的單元。如果那個值超過了預定的閾值,則將其坐標作為圖像碎片的中 心的位置而報導。
固R列印體系結構
圖37A闡明根據本發明的一個實施例的MMR部件的功能框圖。基本的醒R 部件包括具有相關聯的印表機116和/或共享文檔註解(SDA)伺服器3755的 計算機3705。
如本技術領域中已知的,計算機3705為任何標準的桌上型計算機、膝上 型計算機、或網絡計算機。在一個實施例中,計算機為參考圖1B所描述的醒R計算機112。如在此所描述的,用戶印表機116為任何標準的家庭、辦公
室、或商業印表機。用戶印表機116產生列印文檔116,其為由一個或多個
列印頁面組成的紙質文檔。
SDA伺服器3755為擁有信息、應用程式、和/或多種與共享註解的方法 相關聯的文件的標準的網絡或集中化的計算機。例如,與網頁或其它文檔相 關聯的共享註解存儲在SDA伺服器3755上。在這個例子中,如在此所描述的, 註解為醒R中所使用的數據或交互作用。SDA伺服器3755是通過根據一個實 施例的網絡連接可訪問的。在一個實施例中,SDA伺服器3755是參考圖1B 所描述的網絡介質伺服器114。
計算機3705進一步包括多種部件,根據各種各樣的實施例,其一些或所 有的都是可選的。在一個實施例中,計算機3705包括源文件3710、瀏覽器 3715、插件3720、符號熱點描述3725、更改過的文件3730、捕獲模塊3735、 page—desc. xml 3740、 hotspot.xml 3745、數據存儲3750、 SDA伺服器3755、 和MMR印表機軟體3760。
源文件3710是為文檔的電子表示的任何源文件的代表。示例性的源文件 3710包括超文本標記語言(HTML)文件、Microsoft Word文件、Microsoft PowerPoint文件、簡單文本文件、可攜式文檔格式(PDF)文件、和諸如此 類。如在此所描述的,在許多情況下,在瀏覽器3715所接收到的文檔都起源 於源文件3710。在一個實施例中,源文件3710等同於如參考圖3所描述的 源文件310。
瀏覽器3715為提供已與源文件3710相關聯的數據的訪問的應用程式。 例如,可以使用瀏覽器3715檢索來自源文件3710的網頁和/或文檔。在一個 實施例中,瀏覽器3715為如參考圖3所描述的SD瀏覽器312、 314。在一個 實施例中,瀏覽器3715為像Internet Explorer那樣的網際網路瀏覽器。
插件3720為提供創作功能的軟體應用程式。插件3720為獨立的軟體應 用程序,或者可替代地,為瀏覽器3715上運行的插件。在一個實施例中,插 件3720為與像瀏覽器3715那樣的應用程式交互作用的電腦程式,以提供 在此所描述的特定的功能。根據各種各樣的實施例,插件3720執行文檔或瀏 覽器3715中所顯示的網頁的各種各樣的轉換和其它更改。例如,插件3720 以獨立可辨別的基準標記環繞熱點標誌,以創建熱點,並將"已標記"片反本 的HTML文件返回至瀏覽器3715,將轉換規則應用於瀏覽器3715中所顯示的文檔的一部分,並檢索和/或接收瀏覽器3715中所顯示的文檔的共享註解。另外,插件3720可以執行其它功能,例如創建經更改的文檔以及創建如在此 所描述的符號熱點描述3725。參考捕獲模塊3735,插件3720便利了參考圖 38、 44、 45、 48、和50A-B所描述的方法。符號熱點描述3725為識別文檔內的熱點的文件。符號熱點描述3725識 別熱點號和內容。在這個例子中,將符號熱點描述3725存儲於數據存儲器 3750。圖41中更加詳細地示出符號熱點描述的例子。經更改的文件3730為作為通過插件3720的源文件3710的更改和轉換的 結果而產生的文檔和網頁。例如,如上文所提及的經標記的HTML文件是經更 改的文件3730的一個例子。如根據這個公開發明將很明顯的,在某些情形, 經更改的文件3730返回至瀏覽器3715,以顯示給用戶。捕獲模塊3735為在文檔的列印表示上執行特徵提取和/或坐標捕獲,以 致能夠;險索列印頁面上的特徵和圖形的布局,的軟體應用程式。可以在列印 時刻自動地捕獲布局,即,列印頁面上的文本的二維布置。例如,捕獲模塊 3735執行所有的文本和繪圖列印命令,並且另外,截取並記錄列印表示中每 個字符和/或圖像的x-y坐標和其它特徵。根據一個實施例,捕獲模塊3735 為如在此所描述的列印捕獲DLL,允許現有的DLL的功能的添加或更改的轉 發動態連接庫(DLL)。參考圖44描述捕獲模塊3735的功能的更詳細的描述。本領域技術人員將識別捕獲模塊3735連接至瀏覽器3715的輸出,以便 數據捕獲。可替代地,可以在印表機驅動器內直接實現捕獲模塊3735的功能。 在一個實施例中,捕獲模塊3735等同於如參考圖3所描述的PD捕獲模塊318。Page—desc. xml 3740為extensible markup language ("XML")文件, 對於通過捕獲模塊3725處理的文本相關的函數調用,可將文本相關的輸出寫 入其中。page-desc. xml 3740包括逐個單詞逐個字符的關於所有的列印文本 的文檔的坐標信息,以及熱點信息、印表機埠名稱、瀏覽器名稱、列印的 日期和時間、和每英寸的點數(dpi )和解析度(res )信息。page — desc. xml 3740存儲於,例如,數據存儲器3750中。數據存儲器3750等同於參考圖34A 所描述的醒R悽t據庫3400。圖42A-B更詳細地闡明HTML文件的page—desc. xml 3740的例子。hotspot.xml 3745為當列印文檔時(例如,如先前所討i侖的,通過列印 驅動器316的操作),所創建的XML文件。hotspot. xml為將符號熱點描述3725與page—desc. xml 3740合併的結果。hotspot.xml包括像熱點號、坐標信息、 維度信息、和熱點的內容那樣的熱點標識符信息。圖43中闡明hotspot.xml 文件的例子。
數據存儲器3750為本技術領域中已知的用於存儲為了與在此所描述的 方法一同使用所更改的文件的任何資料庫。例如,根據一個實施例,數據存 儲器3750存儲源文件3710、符號熱點描述3725、 page —desc. xml 3740、經 呈現的頁面布局、共享註解、圖像化的文檔、熱點定義、和特徵表示。在一 個實施例中,數據存儲器3750等同於如參考圖3所描述的文檔事件資料庫 320,並等同於如參考圖34A所描述的資料庫系統3400。
函R列印軟體3760為便利在此所描述的像如先前所描述的由計算機3705 的部件所執行的那樣的畫R列印操作的軟體。下文將參考圖37B更加詳細地 描述醒R列印軟體3760。
圖37B闡明根據本發明的一個實施例的,R列印軟體3760中所包括的一 組軟體部件。應該理解到,計算機112, 905、捕獲裝置106、網絡介質服務 器114和如在此所描述的其它伺服器中,可以包括所有或一些腦R列印軟體 3760。儘管現在將描述固R列印軟體3760為包括這些不同的部件,本領域技 術人員將識別,躍R列印軟體3760能夠包括從一個至它們的所有的任何數量 的這些部件。畫R列印軟體3760包括變換模塊3765、嵌入模塊3768、分析 模塊3770、轉換模塊3775、特徵提取模塊3778、註解模塊3780、熱點模塊 3785、呈現/顯示模塊3790、和存儲模塊3795。
變換模塊3765使得能夠進行將源文檔變換成為圖像化的文檔,從其中能 夠提取特徵表示,並且是這樣做的一種方法。
嵌入模塊3768使得能夠進行相應於電子文檔中的熱點的標誌的標記的 嵌入,並且是這樣做的一種方法。在一個特定實施例中,嵌入的標記指示熱 點的開始點和熱點的結束點。可替代地,能夠使用在實施例標記周圍的預定 的區域,來識別電子文檔中的熱點。能夠使用各種各樣的這樣的標記方案。
分析模塊3770使得能夠進行關於指示熱點的開始點的標記,而分析電子 文檔(已經發送至印表機的),並且是這樣做的一種方法。
轉換模塊3775使得能夠進行至電子文檔的一部分的轉換規則的應用,並 且是這樣做的一種方法。在一個特定實施例中,部分為指示熱點的開始點的 標記與指示熱點的結束點的標記之間的字符流。特徵提取模塊3778使得能夠進行相應於熱點和文檔的列印表示的特徵提取和坐標捕獲,並且是這樣做的一種方法。坐標捕獲包括使用轉發動態連 接庫分支至列印命令,並且分析相應於熱點或經轉換的字符的坐標子集的列印表示。特徵提取模塊3778使得能夠實現根據一個實施例的捕獲模塊3735 的功能。註解模塊3780使得能夠接收共享註解和其附屬的與共享註解相關聯的 文檔的一部分的標誌,並且是這樣做的一種方法。接收共享註解包括從終端 用戶以及從SDA伺服器接收註解。熱點模塊3785使得能夠進行一個或多個剪輯與一個或多個熱點的關聯, 並且是這樣做的一種方法。熱點模塊3785也使得能夠進行通過首先標誌文檔 內的熱點的位置,並定義剪輯以與熱點相關聯的熱點定義的形成。呈現/顯示模塊3790使得能夠呈現或顯示文檔或文檔的列印表示,並且 是這樣做的一種方法。存儲模塊3795使得能夠進行各種各樣的文件、包括頁面布局、圖像化的 文檔、熱點定義、和特徵表示的存儲,並且是這樣做的一種方法。軟體部分3765-3795不需要分離的軟體模塊。所示出的軟體配置僅意味 著作為例子;如根據這個公開發明將很明顯的,通過和在本發明的範圍內可 期望其它配置。在文檔中嵌入熱點圖38闡明根據本發明的一個實施例的在文檔中嵌入熱點的方法的流程。 根據該方法,在文檔中嵌入3810相應於文檔內的熱點的標誌的標記。在 一個實施例中,接收包括熱點標誌位置的文檔,以在瀏覽器中顯示,例如, 在瀏覽器3715從源文件3710接收文檔。熱點包括一些文本或像圖形或照片 那樣的其它文檔對象,以及電子數據。電子數據能夠包括像音頻或視頻那樣 的多媒體,或者其能夠是當訪問熱點時將在捕獲裝置上執行的一組步驟。例 如,如果文檔為超文本標記語言(HTML)文件,則瀏覽器3715可以是Internet Explorer,並且標誌可以是HTML文件內的統一資源定位符(URL )。圖39A闡 明具有URL3920的這樣的HTML文件3910的例子。圖40A闡明如瀏覽器4010, 例如,Internet Explorer,中所顯示的圖39A的HTML文件3910的文本。為了嵌入3810標記,瀏覽器3715的插件3720以獨立可辨別的基準標記 環繞每個熱點標誌位置,以創建熱點。在一個實施例中,插件3720更改瀏覽器3715中所顯示的文檔,例如,繼續上文的例子的Internet Explorer中所 顯示的HTML,並插入將熱點標誌位置(例如,URL)置於括號內的標記、或 標籤。或者在瀏覽器3715中或者在文檔的列印版本中查看文檔的終端用戶是 察覺不到標記的,但在列印命令中能夠探測到該標記。在這個例子中,使用 在此被稱為醒R Courier New的新字體,來添加開始和結束基準標記。在畫R Courier New字體中,通過空格表示關於字符"b"、 "e"的典型字形或點模 式表示和數字。
再次參考圖39A和40A中所示的示例性HTML頁面,插件3720在URL的 開始("here")插入3810基準標記"bO,,,並在URL的結尾插入3810基準標 記"e0",以用標識符"0"指示熱點。因為b、 e和數字字符都作為間隔示出, 用戶僅可看到很少的或不可看到文檔的外觀的改變。另外,如圖41中所示, 插件3720創建指示這些標記的符號熱點描述3725。符號熱點描述3725識別 熱點號為零4120,其相應於"b0"和"e0"基準標記中的0。在這個例子中, 符號熱點描述3725存儲於,例如,數據存儲器3750。
如圖39B中所示,插件3720返回HTML3950的"經標記"的版本至瀏覽 器3715。經標記的HTML3950以將字體改變為1號的醒R Courier New的跨 越標籤3960環繞基準標記i。因為b、 e、和數字字符作為間隔而示出,用戶 僅可看到很少的或不可看到文檔的外觀的改變。經標記的HTML3950為經更改 的文件3730的例子。為簡單起見,這個例子使用單一頁面模型,然而,多頁 面模型使用相同的參數。例如,如果熱點跨越頁面邊界,則其將具有相應於 每個頁面位置的基準標記,關於每個的熱點標識符是相同的。
接下來,響應列印命令,捕獲3820相應於列印表示和熱點的坐標。在一 個實施例中,捕獲模塊3735 "分支至"列印命令內的文本和繪圖命令。捕獲 模塊3735執行所有的文本和繪圖命令,並且另外,截取並記錄列印表示中每 個字符和/或圖像的x-y坐標和其它特徵。在這個例子中,捕獲模塊3735涉 及列印表示的設備場景(DC),其為定義將要依賴於輸出格式(即,印表機、 窗口、文件格式、存儲緩沖器,等等)而輸出的文本和/或圖像的屬性的列印 表示的結構的句柄。在捕獲3820列印表示的坐標的過程中,使用HTML中嵌 入的基準標記可很容易地識別熱點。例如,當遇到開始標記時,如果記錄了 所有的字符,可找到直到結束標記的x-y位置。
根據一個實施例,捕獲模塊3735為轉發DLL,在此被稱為"列印捕獲DLL",其允許現有DLL的功能的添加或更改。轉發DLL在客戶看來完全像原始的DLL, 然而,在將調用轉遞至目標(原始)DLL之前,將另外的代碼("分支至") 添加至一些或所有的函數。在這個例子中,列印捕獲DLL為關於Windows圖 形裝置接口 (Windows GDI) DLL gdi 32. dl 1的轉發DLL。 gdi32.dll具有超 過600個輸出函數,其所有的都需要被轉發。列印捕獲DLL,在此被稱為 gdi32-mmr.dll,允許客戶從使用DLL gdi 32. dl 1繪圖的任何Windows應用程 序捕獲列印輸出,並且其僅需要在局域計算機上執行,即使列印至遠程服務 器。
根據一個實施例,將gdi32—隱r. dll重命名為gdi32. dll,並複製至C: \Windows\system32,促使它監控來自幾乎每個Windows應用程式的列印。根 據另一個實施例,將gdi32—mmr.dll命名為gdi32.dll,並複製至關於其監 控列印的應用程式的主目錄。例如,用於監控Windows XP上的Internet Explorer的C: \Program\Files\Internet Explorer。 在這個例子中,Y又這個 應用程式(例如,Internet Explorer )將自動地調用列印捕獲DLL中的函H
圖44闡明根據本發明的一個實施例的轉發DLL所使用的過程的流程圖。 列印捕獲DLLgdi32—隱r. dll首先接收4405指向gdi32.dll的函數調用。在 一個實施例中,gdi32_mmr. dll接收指向gdi32.dll的所有的函數調用。 gdi32.dll監控600個左右的總的函數調用的近似200個,其用於以某些方 式影響列印頁面的外觀的函數。因而,列印捕獲DLL接下來確定4410所接收 的調用是否為被監控的函數調用。如果所接收的調用不是被監控的函數調用, 則該調用旁路步驟4415直至4435,並轉遞4440至gdi32. dll。
如果它是被監控的函數調用,則該方法接下來確定4415函數調用是否指 定"新"的印表機設備場景(DC),即,先前還未接收到的印表機DC。這通 過相對於內部DC表而檢查印表機DC來確定。如先前所提及的,DC封裝用於 繪圖的目標(其可能為印表機,存儲緩沖器,等等),以及像字體、顏色,等 等一樣的繪圖設置。在DC上執行所有的繪圖操作(例如,LineTo、 DrawText,等等)。如果印表機DC不是新的,那麼已存在相應於印表機DC 的存儲緩衝器,並且跳過步驟4420。如果印表機DC是新的,則創建4420相 應於新的印表機DC的存儲緩沖器DC。這個存儲緩沖器DC映出列印頁面的外 觀,並且在這個例子中,等同於上文所涉及的列印表示。因而,當將列印DC 添加至內部DC表時,創建相同維度的存儲緩衝器DC (和存儲緩沖器),並使之與內部DC表中的列印DC相關聯。gdi32—mmr. dll接下來確定4425調用是否為文本相關的函數調用。200 個被監控的gdi32. dll調用的近似12個是文本相關的。如果它不是,則跳過 步驟4430。如果函數調用是文本相關的,則將文本相關的輸出寫入4430 xml 文4牛,在jt匕淨皮禾t、為page一desc. xml3740, ^口圖37A中戶斤示。page一desc. xml3740 存儲於,例如,數據存儲器3750。圖42A和42B示出關於參考圖39A和40A所討論的HTML文件3910的示 例性page—desc. xml3740。 page—desc. xml3740包括按照x, y,寬度和高度, 逐個單詞4210 (例如,Get)以及逐個字符4220 (例如,G)的所有的列印文 本的坐標信息。坐標是以點的形式存在的,其為相對於頁面的左上角的像素 的列印等同物,除非另外指明。page-desc. xml3740也包括處於"序列"形 式的熱點信息,例如開始標記4230和結束標記4240。對於跨越頁面邊界的 熱點(例如,頁面N至頁面N+1的),其在兩個頁面(N和N+1)上都示出; 在兩種情況中的熱點標識符都是相同的。另外,page_desc. xml3740中包括 其它重要的信息,例如印表機埠名稱4250,其能夠對如下產生重大影響 所產生的.xml和.jpeg文件、瀏覽器3715 (或應用程式)名稱4260、和列印 的日期及時間4270、以及關於頁面4280和可列印區域4290的每英寸的點數 (dpi )和解析度。再次參考圖44,緊接著調用不是文本相關的確定,或者緊接著將文本相 關的輸出寫入4430 page—desc. xml 3740, gdi32_mmr. dl 1扭j亍4435關於DC 的存儲緩沖器上的函數調用。這個步驟4435提供至印表機的輸出,同樣得到 至局域計算機上的存儲緩衝器的輸出。然後,當增加頁面時,壓縮存儲緩沖 器的內容,並以JPEG和PNG的格式寫出。然後將函數調用轉遞4440至 gdi32.dll,其如通常地執行它。再次參考圖38,呈現3830包含包括熱點的列印表示的頁面布局。在一 個實施例中,呈現3830包括列印文檔。圖40B闡明圖39A和40A的HTML文 件3910的列印版本4011的例子。注意到,對於終端用戶而言,基準標記不 是明顯可察覺的。呈現的布局保存至,例如,數據存儲器3750。根據一個實施例,列印捕獲DLL將符號熱點描述3725中的數據和 page_desc. xml 3740,例如,如圖42A-B中所示,合併入hotspot. xml 3745, 如圖43中所示。在這個例子中,當列印文檔時,創建hotspot. xml 3745。圖43中的例子示出熱點0出現在x=1303, y=350,以及為190像素寬和71 像素高。同樣示出熱點的內容,即,http: 〃www. ricoh. com。
根據捕獲模塊3820的可替代的實施例,Microsoft XPS (XML列印說明) 列印驅動器中的過濾器,通常已知為"XPSDrv過濾器",接收文本繪圖命令, 並創建^口上文戶斤描述的page一desc. xml文j牛。
明顯可察覺的熱點
圖45闡明根據本發明的一個實施例的轉換相應於文檔中的熱點的字符 的方法的流程圖。該方法以指示終端用戶和呈現熱點的MMR識別軟體兩者的 方式,更改列印文檔。
起初,接收4510將要列印的電子文檔作為字符流。例如,可以在印表機 驅動器或在能夠過濾字符流的軟體模塊接收4510文檔。在一個實施例中,在 瀏覽器3715從源文件3710接收4510文檔。圖46闡明根據本發明的一個實 施例的文檔4610的電子版的例子。這個例子中的文檔4610具有兩個熱點, 一個與"在下文列出"相關聯,並且一個與"可能的現有技術,,相關聯。根 據一個實施例,對於終端用戶,熱點不是明顯可察覺的。可以通過參考圖38 所描述的坐標捕獲方法,或者根據在此所描述的其它方法的任何一個,建立 熱點。
為開始標記分析4520文檔,指示熱點的開始。開始標記可以是如先前所 描述的基準標記,或者是任何其它單獨可辨別的識別熱點的標記。 一旦找到 開始標記,就將轉換規則應用於4530文檔的一部分,即,緊接著開始標記的 字符,直到找到結束標記。根據一個實施例,轉換規則促使相應於熱點的文 檔的一部分的可見的更改,例如通過更改字符字體或顏色。在這個例子中, 可以將原始字體,例如,Times New Roman,變換成為不同的已知字體,例如, 0CR-A。在另一個例子中,以不同的字體顏色呈現文本,例如,blue #F86A。 根據一個實施例,轉換字體的過程與上文所描述的過程類似。例如,如果文 檔4610是HTML文件,則當在文檔4510中遇到基準標記時,就在HTML文件 中替代字體。
根據一個實施例,通過瀏覽器3715的插件3720完成轉換步驟,產出經 更改的文檔3730。圖47闡明衝艮據本發明的一個實施例的列印更改的文檔4710 的例子。如所闡明的,從剩餘的文本,熱點4720和4730是碎見覺上可辨別的。 特別地,基於其不同的字體,熱點4720是視覺上可辨別的,並且基於其不同的顏色和下劃線,熱點4730是^L覺上可辨別的。
接下來,將具有轉換的部分的文檔呈現4540成為頁面布局,包含電子文 檔和電子文檔內的熱點的位置。在一個實施例中,呈現文檔是列印文檔。在 一個實施例中,根據在此所描述的這樣做的方法的任何一種,呈現包括在具 有轉換的部分的文檔上執行特徵提取。在一個實施例中,特徵提取包括,根 據一個實施例,響應列印命令,捕獲相應於電子文檔的頁面坐標。然後為相 應於轉換的字符的坐標的子集分析電子文檔。根據一個實施例,圖37A的捕 獲模塊3735執行特徵提取和/或坐標捕獲。
醒R識別軟體使用相同的轉換規則預處理每個圖像。首先它尋找遵循規 則的文本,例如,其為OCR-A或blue #F86A,並然後它應用其標準的識別算 法。
本發明的這個方面是有利的,因為其充分地降低了薩R識別軟體的計算 負載,因為它使用消除大量的計算開銷的非常簡單的圖像預處理例程。另夕卜, 例如,如參考圖51A-D所討論的,如果在文檔的一部分之上的包圍盒,則通 過消除可能從選擇中應用的大量的可替代的解決方案,而提高特徵提取的精 確性。另外,文本的可見更改指示終端用戶哪個文本(或其它文檔對象)是 熱點的一部分。
共享文檔註解
圖48闡明根據本發明的一個實施例的共享文檔註解的方法的流程圖。該 方法使得用戶能夠在共享的環境中給文檔加註解。在下文所描述的實施例中, 共享環境為各種各樣的用戶正查閱的網頁;然而,根據其它實施例,共享環 境能夠是在其中共享資源的任何環境,例如工作組。
根據該方法,在瀏覽器(例如瀏覽器3715)中顯示4810源文檔。在一 個實施例中,從源文件3710接收源文檔;在另一個實施例中,源文檔為通過 網絡(例如,網際網路連接)所接收到的網頁。使用網頁例子,圖49A闡明根 據本發明的一個實施例的瀏覽器中的樣本源網頁4910。在這個例子中,網頁 4910為關於與流行的孩子的書本特性有關的遊戲,the Jerry Butter Game, 的HTML文件。
在源文檔的顯示4810之後,接收4820共享註解和與共享註解相關聯的 源文檔的一部分的標誌,該共享註解與源文檔相關聯。為描述清楚,在這個 例子中使用單一註解,然而多個註解是可能的。在這個例子中,註解為數據或如在此所討論的畫R中所使用的交互作用。根據一個實施例,註解存儲於
共享文檔註解伺服器(SDA伺服器),例如圖37A中所示的3755,並通過自該 伺服器的檢索接收。在一個實施例中,通過網絡連接可訪問SDA伺服器3755。 共享註解的檢索的插件便利了這個例子中的這種能力,例如,如圖37A中所
示的插件3720。根據另一個實施例,從用戶接收註解和標誌。用戶可以創建 關於不具有任何註解的文檔的共享註解,或者可以添加或更改文檔的現有共 享註解。例如,用戶可以加亮源文檔的一部分,關於與共享註解的關聯標明 它,也由用戶經由在此所描述的各種各樣的方法提供。
接下來,在瀏覽器中顯示4830經更改的文檔。經更改的文檔包括相應於 在步驟4820標明的源文檔的一部分的熱點。熱點指定共享註解的位置。根據 一個實施例,經更改的文檔為由插件3720所創建的經更改的文件3730的一 部分,並返回至瀏覽器3715。圖49B闡明根據本發明的一個實施例的瀏覽器 中的樣本經更改的網頁4920。網頁4920示出熱點4930的標誌和相關聯的注 解4940,其為這個例子中的視頻剪輯。可以在視覺上從剩餘的網頁4920文 本來辨別標誌4930,例如,通過加亮。4艮據一個實施例,當點擊標誌4930 或將滑鼠移過去時,註解4940顯示。
響應列印命令,捕獲4840相應於經更改的文檔的列印表示的文本坐標和 熱點。坐標捕獲的細節是根據關於在此所描述的那個目的的方法的任何一個 的。
然後,呈現4850包括熱點的列印表示的頁面布局。才艮據一個實施例,呈 現4850為列印文檔。圖49C闡明根據本發明的一個實施例的樣本列印網頁 4950。列印網頁布局4950包括如所標明的熱點4930,然而列印布局4950中 的行中斷不同於網頁4920。在這個例子中,熱點4930的邊界在列印布局4950 上是不可見的。
在可選的最後的步驟,將共享註解局部地存儲於,例如,數據存儲器3 7 5 0, 並且使用其與列印文檔4950中的熱點4930的關聯標定索引。也可以將列印 表示局部地保存。在一個實施例中,列印行為觸發局部複製本的下載和創建。
圖像化的文檔的熱點
圖50A闡明根據本發明的一個實施例的添加熱點至圖像化文檔的方法的 流程圖。該方法允許在掃描之後,將熱點添加至紙質文檔,或者在列印呈現 之後,將熱點添加至符號電子文檔。首先,將源文檔變換5010為圖像化的文檔。根據一個實施例,在瀏覽器 3715從源文件3710接收源文檔。變換5010是通過產生在其上能夠執行特徵 提取的文檔的任何方法,以產生特徵表示。根據一個實施例,將紙質文檔掃 描以成為圖像化的文檔。根據另一個實施例,使用適當的應用程式呈現電子 文檔的可呈現頁面樣本。例如,如果可呈現頁面樣本是PostScript 4各式,則 使用Ghostscript。圖51A闡明示出已#4居一個實施例而掃描的新聞紙頁面 5110的一部分的用戶接口 5105的例子。主要的窗口 5115示出新聞紙頁面 5110的》文大的部分,並且略圖5120示出正顯示頁面的哪個部分。接下來,將特徵提取應用5020於圖像化的文檔,以創建特徵表示。為這 個目的可以使用在此所描述的各種各樣的特徵提取方法的任何一種。根據一 個實施例,通過參考圖37A所描述的捕獲模塊3735執行特徵提取。然後將一 個或多個熱點5125添加5030至圖像化的文檔。才艮據多種多樣的實施例,可 以預先定義或可需要定義熱點。如果已經定義了熱點,則定義包括頁面號碼、 頁面上的熱點的邊界框的坐標位置、以及電子數據或附著於熱點的交互作用。 在一個實施例中,如圖43中所闡明的,熱點定義採取hotspot. xml文件的形 式。如果還未定義熱點,則終端用戶可以定義熱點。圖50B闡明根據本發明的 一 個實施例的定義用於添加至圖像化文檔的熱點的方法的流程圖。首先, 選擇5032候選熱點。例如,在圖51A中,終端用戶已使用邊界框5125選擇 了文檔的一部分作為熱點。接下來,關於給定的資料庫,在可選的步驟5034 確定熱點是否是唯一的。例如,在周圍的n"xn,,碎片中應該存在足夠的文本, 以唯一地識別熱點。n的典型值的例子為2。如果對於^t據庫而言,熱點不是 足夠地唯一,則在關於如何處理含糊不清的一個實施例中,將可選項呈現給 終端用戶。例如,用戶接口可以提供可供選擇的項,例如選擇較大的區域, 或者接受含糊不清,但將它的描述添加至資料庫。其它的實施例可以使用定 義熱點的其它方法。一旦選擇5032 了熱點位置,就定義5036數據或交互作用,並將其附著 於熱點。圖51B闡明用於定義數據或交互作用,以與所選擇的熱點關聯的用 戶接口。例如, 一旦用戶已選擇了邊界框5125,就顯示編輯框5130。使用相 關聯的按鈕,用戶可以取消5135操作,僅簡單地保存5140邊界框5125,或 者將數據或交互作用分派5145給熱點。如果用戶選#^將數據或交互作用分派給熱點,則顯示分派框5150,如圖51C中所示。分派框5150允許終端用戶 將圖像5155、各種各樣的其它介質5160、和網絡連結5165分派給熱點,其 由ID號5170識別。用戶然後能夠選擇保存5175熱點定義。儘管為簡單起見, 已經描述了單個熱點,多個熱點是可能的。圖51D闡明用於顯示文檔內的熱 點5125的用戶接口。在一個實施例中,不同顏色的邊界框相應於不同的數據 和交互作用類型。
在可選的步驟,圖像化的文檔、熱點定義、和特徵表示一起存儲於5040, 例如,數據存儲器3750。
圖52闡明根據本發明的一個實施例的使用醒R文檔500和醒R系統100b 的方法5200。
該方法5200通過獲取5210第一文檔或第一文檔的表示而開始。獲取第 一文檔的示例性方法包括下列各項U)通過經由PD捕獲模塊318自動地捕 獲醒R計算機112的作業系統內的列印文檔的文本布局,獲取第一文檔;(2) 通過自動地捕獲醒R計算機112的印表機驅動器316內的列印文檔的文本布 局,獲取第一文檔;(3)通過經由連接至(例如,醒R計算機112)的標準文 檔掃描儀裝置127掃描紙質文檔,獲取第一文檔;以及(4)通過自動或手動 地傳遞、上載或下載,為列印文檔的表示的文件至醒R計算機112,獲取第 一文檔。儘管已經描述獲取步驟為獲取列印文檔的大多數或全部,但應該理 解到,能夠僅關於列印文檔的最小的一部分執行獲取步驟5210。此外,儘管 就獲取單個文檔而言描述了該方法,但可以執行這個步驟,以獲取許多文檔, 並創建第一文檔庫。
一旦執行了獲取步驟5210,該方法5200就在第一文檔上執行5212索引 標定操作。索引標定操作允許文檔的相應電子表示和關於與所獲取的第 一文 檔或其部分相匹配的輸入的相關聯的第二介質類型的識別。在這個步驟的一 個實施例中,通過PD捕獲模塊318執行產生PD索引322的文檔索引標定操 作。示例性的索引標定操作包括下列各項(1)給列印文檔的字符的x-y位 置編索引;(2)給列印文檔的單詞的x-y位置編索引;(3)給圖像或列印文 檔中的圖像的一部分的x-y位置編索引;(4 )執行OCR成像操作,並且相應 地給字符和/或單詞的x-y位置編索引;(4)執行自呈現頁面的圖像的特徵提 取,並且給特徵的x-y位置編索引;以及(5 )模擬頁面的符號版本上的特徵 提取,並且給特徵的x-y位置編索引。索引標定操作5212可以包括依賴於本發明的應用程式的上述索引標定操作的任何一個或組。該方法5200也獲取5214第二文檔。在這個步驟5214中,所獲取的第二 文檔能夠為整個文檔或僅只第二文檔的一部分(碎片)。獲取第二文檔的示例 性方法包括下列各項(1)依靠捕獲裝置106的一個或多個捕獲機制230, 掃描文本碎片;(2)依靠捕獲裝置106的一個或多個捕獲機制230,掃描文 本碎片,並隨後,預處理圖像,以確定將正確地提取所想要的特徵描述的可 能性。例如,如果索引是基於OCR的,則系統可能確定圖像是否包含文本行, 以及對於成功的OCR操作,圖像清晰度是否足夠。如果這個確定失敗,則掃 描另一個文本碎片;(3)掃描識別所掃描的文檔的機器可讀標識符(例如, 國際標準書號(ISBN)或通用產品碼(UPC)代碼);(4)輸入識別所要求的 文檔或一組文檔(例如,運動畫刊雜誌的2003版)的數據,並且隨後,通過 使用這個方法步驟的項目(1)或(2),掃描文本碎片;(5)接收具有所附的 第二文檔的電子郵件;(6)通過文檔傳遞接收第二文檔;(7)用捕獲裝置106 的一個或多個捕獲機制230掃描圖像的一部分;以及(9)用輸入裝置166輸 入第二文檔。一旦已經執行了步驟5210和5214,該方法就執行5216第一文檔和第二 文檔之間的文檔或模式匹配。在一個實施例中,這通過執行第二文檔至第一 文檔的文檔指紋匹配而進行。通過查詢PD索引322,在第二介質文檔上執行 文檔指紋匹配操作。文檔指紋匹配的例子為在步驟5214從所捕獲的圖像中提 取特徵,以那些特徵組成描述符,並且查找包含那些描述符的一部分的文檔 和碎片。應該理解到,可以多次執行這種模式匹配步驟,關於每個文檔一次, 其中資料庫存儲許多的文檔,以確定是否庫或資料庫中的某個文檔與第二文 檔相匹配。可替代地,索引標定步驟5212將文檔5210添加至代表文檔集的 索引,並執行模式匹配步驟一次。最後,該方法5200執行5218基於步驟5216的結果並且可選地基於用戶 輸入的動作。在一個實施例中,該方法5200查找與,例如,存儲在第二介質 504中的給定的文檔碎片相關聯的預定的動作,該第二介質504與步驟5216 中作為匹配而找到的熱點506相關聯。預定的動作的例子包括(l)從文檔 事件資料庫320、網際網路、或別的地方,檢索信息;(2)將信息寫入準備接 收系統的輸出的畫R系統100b所核實的位置;(3)查找信息;(4)在客戶裝 置,例如捕獲裝置106上,顯示信息,並且引導與用戶的交互會話;(5)查詢在方法步驟5216中所確定的動作和數據,以便稍後執行(用戶的參與可以 是可選的);以及(6 )立即執行在方法步驟5216中所確定的動作和數據。這 種方法步驟的示例性結果包括信息、經更改的文檔的檢索、 一些其它動作的 執行(例如,股票或產品的購買)、或者發送至有線TV盒,例如機頂盒126, 的命令的輸入,該機頂盒連接至有線TV伺服器(例如,服務提供者伺服器 122),其將視頻回流至有線TV盒。 一旦已經進行了步驟5218,該方法WOO 完成並結束。
圖53闡明根據本發明的一個實施例的與畫R系統100b關聯的示例性的 一組商業實體5300的框圖。商業實體5300組包括醒R服務提供者5310、醒R 消費者5312、多媒體公司5314、印表機用戶5316、蜂窩式電話服務提供者 5318、硬體製造商5320、硬體零售商5322、金融機構5324、信用卡處理者 5326、文檔出版者5328、文檔印表機5330、履約商5332、有線TV提供者5334、 服務提供者5336、軟體提供者5338、廣告公司5340、和商業網絡5370。
畫R服務提供者5310為如參考圖1A至5和52所描述的醒R系統100的 所有者和/或管理者。如先前參考圖1B所描述的,,R消費者5312為任何畫R 用戶110的代表。
多媒體公司5314為數字多媒體產品的任何提供者,例如Blockbuster Inc (Dallas, TX),其提供數字電影和視頻遊戲,和美國(紐約,NY)的索尼公 司,其提供數位音樂、電影、和TV展示。
印表機用戶5316是為了產生列印紙質文檔,利用任何種類的任何印表機 的任何單獨的實體。例如,醒R消費者5312可以是印表機用戶5316或文檔 印表機5330。
蜂窩式電話服務提供者5318為任何蜂窩式電話服務提供者,例如 Verizon Wireless (Bedminster,NJ) 、 Cingular Wireless(Atlanta,GA)、 T-Mobile USA (Bellevue, WA)、和Sprint Nextel(Reston. VA)。
硬體製造商5320為任何硬體裝置的製造商,例如印表機、蜂窩式電話、 或PDA的製造商。示例性的硬體製造商包括Hewlett-Packard (Houston, TX)、 Motorola, Inc, (Schaumburg, IU 、和美國(紐約,NY)的Sony Corporation。 硬體零售商5322為任何硬體裝置的零售商,例如印表機、蜂窩式電話機、或 PDA的零售商。示例性的硬體零售商包括RadioShack Corporat ion (For t Worth, TX) 、 Circuit City Stores, Inc. (Richmond, VA) 、Wal-Mart (Bentonvi lle, AR)、和Best Buy Co. (Richfield, MN),但並不局限 於此。金融機構5324為任何金融機構,例如用於處理銀行帳戶以及資金至和從 其它銀行或金融機構的傳遞的任何銀行或信用合作社。信用卡處理者5326為 任何管理信用卡認證和購買交易的批准過程的信用卡機構。示例性的信用卡 處理者包括ClickBank,其為CIick Sales Inc, (Boise ID)的服務、Sharelt! Inc. (Eden Prairie, MN)、和CCNow Inc. (Eden Prairie, MN),寸旦並不局限於 此。文檔出版者5328為任何文檔出版/>司,例如,Gregath Publishing Company (Wyandotte,OK) 、 Prentice Hall (Upper Saddle River,NJ)、 和 Pelican Publishing Company (Gretna, LA) , ^f旦並不局限於此。文檔印表機 5330為任何文檔列印司,例如,PSPrint LLC (Oakland CA)、 PrintLizard, Inc. (Buffalo, NY)、和Mimeo, Inc. (New York, NY),但並不局 限於此。在另一個例子中,文檔出版者5328和/或文檔印表機5330為產生並 分布新聞紙或雜誌的任何實體。如熟知的,履約商5332為專門適用於訂單的履行的任何第三方物流倉 庫。示例性的履約商包括Corporate Disk Company (McHenry, IL)、 OrderMotion, Inc. (New York, NY)、 和Shipwire. com (Los Angeles, CA), 但 並不局限於此。有線TV提供者5334為任何有線TV服務提供者,例如,Comcast Corporation (Philadelphia,PA)和 Adelphia Communications(Greenwood Village, CO),但並不局限於此。服務提供者5336為提供任何種類的服務的 任何實體的代表。軟體提供者 5338 為任何軟體開發公司,例如, Art&Logic, Inc. (Pasadena, CA) 、 Jigsaw Data Corp. (San Mateo, CA)、 DataMirrorCorporation(New York,NY) 、 DataBank IMX, LCC(Beltsville,MD) , ^旦並不局限於此。廣告司 5340為任何廣告7>司或代理,例如,D and B Marketing(Elhurst, IL) 、 BlackSheep Marketing(Boston, MA)、 和 Gotham Direct, Inc. (New York, NY) , j旦並不局限於此。商業網絡5370為通過其建立和/或便利商業關係的任何機制的代表。圖54闡明根據本發明的實施例的方法5400,其為通過使用固R系統100b 而便利的一般化的商業方法。方法5400包括步驟在至少兩個實體之間建立 關係,確定可能的商業交易;執行至少一個商業交易並遞送關於該交易的產 品或服務。
首先,在至少兩個商業實體5300之間建立5410關係。例如,可以在四 個廣泛的範疇,如(1 ) ,R創建者、(2 ) MMR分布者、(3 )醒R用戶、和(4 ) 其它,其中某些商業實體可屬於不止一個範疇。根據這個例子,商業實體5300 分類如下
隨R創建者-薩R服務提供者5310、多媒體公司5314、文檔出版者5328、 文檔印表機5330、軟體提供者5338、和廣告公司5340;
* MMR分布者-畫R服務提供者5310、多i某體公司5314、蜂窩式電話服 務提供者5318、硬體製造商5320、硬體零售商5322、文檔出版者5328、文 檔印表機5330、履約商5332、有線TV提供者5334、服務提供者5336、和廣 告公司5340;
MMR用戶-MMR消費者5312、印表機用戶5316和文檔印表機5330;以

其它-金融機構5324和信用卡處理者5326。
例如在這個方法步驟中,在作為國R創建者的醒R服務提供者5310,和 作為醒R用戶的固R消費者5312,和作為薩R分布者的蜂窩式電話服務提供 者5318及硬體零售商5322之間建立商業關係。此外,硬體製造商5320與硬 件零售商5322具有商業關係,其兩者都為畫R分布者。
接下來,方法5400確定5412具有在步驟5410中所建立的關係的團體之 間可能的商業交易。特別地,在任何兩個或多個商業實體5300之間可以發生 多種交易。示例性的交易包括購買信息;購買物質商品;購買服務;購買 帶寬;購買電子存儲;購買廣告;購買廣告統計量;運送商品;出售信息; 出售物質商品;出售服務;出售帶寬;出售電子存儲;出售廣告;出售廣告 統計量;租借/出租;以及收集意見/評級/投票。
一旦方法5400已經確定了團體之間可能的商業交易,就使用畫R系統 100來達成5414至少一個商業交易的協議。特別地,在任何兩個或多個商業 實體5300之間可能發生作為交易的結果的多種動作。示例性的動作包括購 買信息;接收訂單;為了更多的信息點進;創建廣告空間;提供局部/遠程訪問;主辦;運送;創建商業關係;存儲私有信息;將信息傳遞至其它對象; 添加內容;以及播客。
一旦方法5400已經達成了商業交易的協議,就使用應R系統100傳送 5416該交易的產品或服務,例如,至腿R消費者5312。特別地,作為在方法 步驟5414中所達成的商業交易的結果,在任何兩個或多個商業實體"00之 間可以交換多種內容。示例性的內容包括文本;網頁連結;軟體;靜態照 片;視頻;音頻;和以上的任何結合。另外,為了便利交易,在任何兩個或 多個商業實體5300之間可以利用多種傳送機制。示例性的傳送機制包括紙 張;個人計算機;網絡計算機;捕獲裝置106;個人視頻裝置;個人音頻裝 置;和以上的任何結合。
除如上述實施例中所要求和描述的發明之外,本發明的一個或多個實施 例的至少一個方面涉及圖像匹配的方法。該方法包括捕獲第一介質類型的 至少一部分的圖像;從所捕獲的圖像中提取特徵,其中所提取的特徵包括所 捕獲的圖像中的內容的多維布置;以及將所提取的特徵與文檔頁面集匹配, 以識別文檔頁面的至少 一個中所捕獲的圖像的位置。
本發明的一個或多個實施例的至少一個其它方面涉及用於圖像匹配的系 統。該系統包括可操作的捕獲裝置,以捕獲第一介質類型的至少一部分的 圖像;可操作的特徵提取模塊,以從所捕獲的圖像中提取特徵,其中所提取 的特徵包括所捕獲的圖像中的內容的多維布置;以及可操作的資料庫,以存 儲文檔頁面集,其中特徵提取模塊進一步可操作,以將多維布置轉換成為可 與文檔頁面集匹配的符號表示,以識別文檔頁面的至少一個中所捕獲的圖像 的位置。
本發明的一個或多個實施例的至少一個其它方面涉及使第一介質類型與 第二介質類型交互作用的方法。該方法包括用捕獲裝置捕獲第一介質類型 的至少一部分的圖像;從所捕獲的圖像中提取特徵,其中所提取的特徵包括 所捕獲的圖像內的內容的多維布置;將多維布置轉換成為符號表示;將符號 表示與文檔頁面集匹配;響應肯定地匹配符號表示,識別文檔頁面的至少一 個中的圖像的位置;以及基於識別,提供第二介質類型。
在一個特定實施例中,畫R系統提供文檔指紋匹配。
另外,本發明的一個或多個實施例的至少一個方面涉及圖像匹配的方法。 該方法包括用捕獲裝置捕獲第一介質類型的至少一部分的第一圖像;用捕獲裝置捕獲第一介質類型的至少一部分的第二圖像;基於第一圖像和第二圖
像,在第一介質類型上跟蹤捕獲裝置的位置;以及依賴於所跟蹤的位置,識
別包含第一圖像和第二圖像的文檔頁面。
本發明的 一個或多個實施例的至少 一個其它方面涉及用於圖像匹配的系
統。該系統包括可操作的捕獲裝置,以捕獲第一介質類型的至少一部分的 圖像序列;可操作的位置跟蹤模塊,以基於所捕獲的圖像序列,在第一介質 類型上跟蹤捕獲裝置的位置;以及可操作的資料庫,以存儲文檔頁面集,相 對於該文檔頁面集,依賴於所跟蹤的位置,所捕獲的圖像序列是可匹配的, 以識別至少 一個文檔頁面和在其中包含圖像序列的位置。
本發明的一個或多個實施例的至少一個其它方面涉及使第一介質類型與 第二介質類型交互作用的方法。該方法包括用捕獲裝置捕獲第一介質類型 的至少一部分的圖像序列;將所捕獲的圖像序列與文檔頁面集匹配;在第一 介質類型上跟蹤捕獲裝置的位置,其中由文檔頁面集約束該跟蹤;響應跟蹤 和匹配,識別包含所捕獲的圖像序列的至少一個文檔頁面;以及響應識別, 給捕獲裝置提供第二介質類型。
在一個特定實施例中,醒R系統提供基於位置的圖像匹配。
另夕卜,本發明的一個或多個實施例的至少一個方面涉及圖像匹配的方法。 該方法包括捕獲第一介質類型的至少一部分的圖像;確定圖像是否包含挑 選特徵;響應確定,從文檔集中選擇一組頁面;捕獲介質類型的至少一部分 的另一圖像;以及將該另一圖像與該組頁面匹配。
本發明的一個或多個實施例的至少一個其它方面涉及用於圖像匹配的系 統。該系統包括可操作的捕獲裝置,以捕獲第一介質類型的至少一部分的 第一圖像,該第一圖像包含挑選特徵;可操作的資料庫,以基於挑選特徵, 選擇資料庫內的一組頁面,其中捕獲裝置進一步可操作,以捕獲第一介質類 型的至少一部分的第二圖像,以及其中數據進一步可操作,以將第二圖像與 該糹且頁面匹配。
本發明的一個或多個實施例的至少一個其它方面涉及使第一介質類型與 第二介質類型交互作用的方法。該方法包括用捕獲裝置捕獲第一介質類型
的至少一部分的第一圖像;探測所捕獲的第一圖像中所包含的挑選特徵;響 應探測挑選特徵,選擇文檔資料庫內的 一組頁面,該組頁面與挑選特徵相關 聯;用捕獲裝置捕獲第一介質類型的至少一部分的第二圖像;將第二圖像與該組頁面匹配;以及響應肯定地匹配第二圖像,識別第二介質類型。 在一個特定實施例中,醒R系統提供多層級圖像匹配。在此所呈現的算法並不是固有地與任何特別的計算機或其它設備有關。 可以根據本發明的實施例程序化或配置各種各樣的一般目的和/或特殊目的 的系統。如根據這個公開發明將很明顯的,能夠使用許多程式語言和/或結構 來實現多種這樣的系統。此外,本發明的實施例能夠在信息系統或網絡上操 作或者與它們一起運作。例如,本發明能夠在具有依賴於配置而變化的功能 的單獨的多功能印表機或網絡印表機上操作。本發明能夠與從具有最小的功 能的那些至提供在此所公開的所有的功能的那些的任何信息系統一起操作。為解釋說明和描述的目的,已經呈現了本發明的實施例的前述描述。但 並不意謂著詳盡或限制本發明於所公開的精確形式。根據上述教義,許多更 改和變動都是可能的。意謂著本發明的範圍並不由這個詳細的描述限制,而 是由這個申請的權利要求限制。如熟悉本技術的那些將理解的,可以以其它 特定的形式體現本發明,而不背離其精神或本質特性。同樣,模塊、例程、 特徵、屬性、方法和其它方面的特別的命名和部分並不是強制性的或重要的,如對於相關領域普通技術人員將很明顯的,本發明的模塊、例程、特徵、屬 性、方法和其它方面能夠作為軟體、硬體、固件或這三個的任何結合而實現。 同樣,在其一個例子為模塊的本發明的 一個部件作為軟體而實現的任何地方, 該部件也能夠作為單獨的程序、作為較大的程序的一部分、作為多個分離的 程序、作為靜態或動態連結的庫、作為核心可受載模塊、作為裝置驅動器、 和/或對於計算機編程的領域中的普通技術人員而言,現在或將來已知的每個 和任何其它方式,而實現。另外,本發明決不局限於任何特定的程式語言中、 或關於任何特定的作業系統或環境的實現。另外,本發明的公開發明意謂著 解說性的、但並不是本發明的範圍的限制,其在下列權利要求中闡述。本發明是基於美國優先申請2006年7月31日所提交的S. N. 11/461, 279、 2006年7月31日所提交的S.N. 11/461,286、 2006年7月31日所提交的 S. N. 11/461, 294、 2006年7月31日所提交的S. N. 11/461, 300、 2005年8月 23日所提交的S.N. 60/710, 767、2006年4月17日所提交的S. N. 60/792, 912、 2006年7月18日所^是交的S. N. 60/807, 654的,其全部內容因此結合於此, 以供參考。
權利要求
1.一種圖像匹配的計算機實現方法,包括用捕獲裝置捕獲第一介質類型的至少一部分的圖像;將所述圖像與資料庫中的文檔頁面集匹配;以及響應肯定地匹配所述圖像,返回所述圖像所位於的所述文檔頁面的至少一個內的至少一個位置。
2. 如權利要求1所述的計算機實現方法,其中由所述文檔頁面的至少一 個的x, y坐標指定所述至少一個位置。
3. 如權利要求1所述的計算機實現方法,進一步包括 返回與所返回的至少一個位置相關聯的置信度值。
4. 如權利要求1所述的計算機實現方法,進一步包括 使所述返回的至少一個位置與第二介質類型相關聯。
5. 如權利要求4所述的計算機實現方法,進一步包括 給所述捕獲裝置提供所述第二介質類型。
6. 如權利要求4所述的計算機實現方法,其中所述第二介質類型包括從 由數據結構、命令、文本、音頻、視頻、圖像、數字照片、網絡連結文本、 應用程式文件、更新信息、和服務組成的群組中所選擇的至少一個。
7. 如權利要求1所述的計算機實現方法,其中所述第一介質類型為紙質 文檔。
8. —種用於圖像匹配的系統,包括捕獲裝置,用於捕獲第一介質類型的至少一部分的圖像; 特徵提取模塊,用於將所述捕獲的圖像轉換成為符號表示;以及 分類模塊,用於將所述符號表示轉換成為所述圖像出現處的至少一個文 檔頁面和所述至少一個文檔頁面內的位置的識別。
9. 如權利要求8所述的系統,進一步包括資料庫,用於存儲文檔頁面集,所述資料庫與所述分類模塊通信。
10. 如權利要求8所述的系統,其中所述捕獲裝置包括所述特徵提取模塊。
11. 如權利要求8所述的系統,進一步包括 質量評估模塊,用於評估所捕獲的圖像的內容,其中所述評估是依賴於所述系統的需要和性能的至少 一個。
12. 如權利要求11所述的系統,其中所述評估是依賴於所述捕獲的圖像 的內容是否包含文本。
13. 如權利要求11所述的系統,其中所述評估是依賴於所述捕獲的圖像 中的文本的清晰度。
14. 如權利要求11所述的系統,其中所述評估是依賴於所述捕獲的圖像 是否包含非文檔圖像。
15. 如權利要求11所述的系統,其中所述評估是依賴於所述特徵提取模 塊的功能。
16. 如權利要求11所述的系統,其中所述捕獲裝置的操作是依賴於所述 評估可調節的。
17. 如權利要求8所述的系統,進一步包括 圖像處理模塊,用於更改所述捕獲的圖像的內容。
18. 如權利要求8所述的系統,進一步包括位置跟蹤模塊,用於在所述第一介質類型上跟蹤所述捕獲裝置的移動。
19. 如權利要求8所述的系統,其中所述第一介質類型為紙質文檔。
20. 如權利要求8所述的系統,進一步包括 控制結構,用於控制流經所述系統的信息和命令。
21. 如權利要求8所述的系統,其中所述識別與第二介質類型相關聯。
22. 如權利要求21所述的系統,其中所述捕獲裝置進一步用於執行接收 和輸出所述第二介質類型的至少一個。
23.如權利要求21所述的系統,其中所述第二介質類型包括從由數據結 構、命令、文本、音頻、視頻、圖像、數字照片、網絡連結文本、應用程式 文件、更新信息、和服務組成的群組中所選擇的至少一個。
24. 如權利要求8所述的系統,其中所述捕獲裝置包括從由照相手機、 個人數字助理(PDA)裝置、數字相機、條形碼閱讀器、射頻識別(RFID)閱 讀器、計算機外圍設備、網絡攝像機、和視頻卡組成的群組中所選擇的一個。
25. —種使第一介質類型與第二介質類型交互作用的計算機實現方法, 包括用捕獲裝置捕獲所述第一介質類型的至少一部分的圖像; 驗證所述捕獲的圖像的內容為可靠地可處理的;響應所述驗證,將所述捕獲的圖像轉換成為符號表示; 將所述符號表示轉換成為所述圖像出現處的至少一個文檔頁面和其中的 位置的識別;以及依賴於所述識別,給所述捕獲裝置提供所述第二介質類型。
26. 如權利要求25所述的計算機實現方法,其中所述第一介質類型為紙 質文檔。
27. 如權利要求25所述的計算機實現方法,其中所述第二介質類型包括 從由數據結構、命令、文本、音頻、視頻、圖像、數字照片、網絡連結文本、 應用程式文件、更新信息、和服務組成的群組中所選擇的至少一個。
28. 如權利要求25所述的計算機實現方法,進一步包括 使置信度值與所述識別相關聯。
29. 如權利要求25所述的計算機實現方法,進一步包括 執行依賴於所述識別的動作,其中所述動作包括從由檢索信息、下訂單、檢索視頻、檢索聲音、存儲信息、 創建新文檔、列印文檔或圖像、顯示文檔或圖像、搜索信息、和呈現信息組 成的群組中所選擇的至少 一 個。
30. 如權利要求25所述的計算機實現方法,進一步包括 維護包括所述至少 一個文檔頁面的文檔頁面集。
31. —種具有存儲於其中的處理器可執行的指令的計算機可讀介質,所 述指令包括指令接收由捕獲裝置所捕獲的圖像,所述圖像為第一介質類型的至少一部分; 將所述圖像的表示與資料庫中所存儲的文檔頁面集匹配;以及 確定所述圖像所位於的所述文檔頁面的至少 一個內的位置。
32. 如權利要求31所述的計算機可讀介質,進一步包括指令 評估所述接收到的圖像的質量;以及 依賴於所述質量評估,發送命令至所述捕獲裝置。
33. 如權利要求31所述的計算機可讀介質,進一步包括指令在由所述指令處理之前更改所述圖像,用於將所述圖像與所述文檔頁面 集匹配。
34. 如權利要求31所述的計算機可讀介質,進一步包括指令 響應確定所述圖像所位於的所述位置,將第二介質類型傳達至所述捕獲裝置。
35. 如權利要求31所述的計算機可讀介質,其中所述第一介質類型為紙 質文檔。
36. 如權利要求31所述的計算機可讀介質,其中所述第二介質類型包括 從由數據結構、命令、文本、音頻、視頻、圖像、數字照片、網絡連結文本、 應用程式文件、更新信息、和服務組成的群組中所選擇的至少一個。
37. 如權利要求31所述的計算機可讀介質,進一步包括指令 從所述圖像中提取特徵;以及響應所述特徵提取,形成所述圖像的表示。
全文摘要
公開了混合介質實境(MMR)系統和相關聯的技術。MMR系統提供用於形成包括至少兩種類型的介質(例如,作為第一介質的列印紙張和作為第二介質的數字內容和/或網頁連結)的混合介質文檔的機制。在一個特定實施例中,MMR系統提供文檔的圖像匹配部分。
文檔編號G06T1/00GK101292259SQ200680039398
公開日2008年10月22日 申請日期2006年8月22日 優先權日2005年8月23日
發明者丹尼爾·G·V·奧爾斯特, 喬納森·J·赫爾, 伯納·埃羅爾, 庫爾特·皮索爾, 彼得·E·哈特, 李達祥, 傑米·格雷厄姆, 陸霄曄 申請人:株式會社理光

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀