用于混合介质文档系统的数据组织和访问的制作方法

文档序号:6569316阅读:533来源:国知局
专利名称:用于混合介质文档系统的数据组织和访问的制作方法
技术领域
本发明涉及用于产生从至少两种介质类型而形成的混合介质文档的技 术,并且更具体地,涉及使用与电子介质结合的打印介质来产生混合介质文 档的混合介质实境(固R )系统。
背景技术
文档打印和复制技术已在许多环境中使用了许多年。例如,在私人和商 业办公环境中、在具有个人计算机的家庭环境中、以及在文档打印和出版服 务环境中,都使用打印机和复印机。然而,先前并未认为打印和复制技术是 起连接静态打印介质(即,纸质文档)与包括数字通信系统、网络、信息供 应、广告、娱乐、和电子商务之类的交互的"虚拟世界"之间的差距的桥梁 作用的手段。
打印介质已作为通信信息,例如新闻和广告信息,的主要来源历时几个 世纪。在过去的少数几年,通过使得以电子可读和可搜索的形式利用,以及 通过引进交互式多媒体性能,个人计算机和个人电子装置,例如个人数字助
理(PDA)装置和蜂窝式电话(如,照相手机)的出现和日益增长的流行度已 扩大了打印介质的概念,对于传统的打印介质来说,其为史无前例的。
不幸地,电可访问的虚拟的基于多媒体的世界与打印介质的物理世界之
子信息,但打印介质和个人电子装置的用户不拥有形成两者之间的连接(即, 用于便利混合介质文档)所必需的工具和技术。
此外,传统的打印介质提供特别的有利属性,例如触感,不需要功率, 和持久的组织和存储,其在虚拟或数字介质中不提供。同样地,传统的数字 介质也提供特别的有利属性,例如便携(如,在手机或便携式计算机的存储 中携带)和易于传输(如,通过电子邮件)。
因为这些原因,存在关于使得能够开发与打印的和虚拟的介质两者都关 联的益处的技术的需要。

发明内容
本发明的 一个或多个实施例的至少 一个方面提供用于在混合介质文档系 统中组织和访问信息的、计算机实现的方法。所述方法包括生成纸质文档的 电子表示,识别在纸质文档上的特征(其捕获纸质文档的二维面貌),识别特 征的位置,以及由其各自的位置来为特征编索引编索引,由此生成索引表。 所述方法可以包括接收纸质文档的预备步骤。所述方法包括存储与特征中的 至少一个关联的一个或多个特性。在一个这样的情况下, 一个或多个特性包 括一个或多个动作,而所述动作包括文本信息的检索、图形信息的检索、执 行过程、执行命令、定购、检索视频、检索声音、存储信息、创造创建新的 文档、打印文档和显示文档中的至少一个。在另一个特别的情况下,识别在 纸质文档上的特征(其捕获二维面貌)包括识别水平排列的(无论是否为邻 近的)和垂直排列的(无论是否为邻近的)对象。在另一个特别的情况下, 识别在纸质文档上的特征(其捕获二维面貌)包括识别水平的和垂直的单词 对(全部的或部分的单词对)。在另一个特别的情况下,在扫描或打印过程期 间执行生成纸质文档的电子表示。在另一个特别的情况下,识别在纸质文档 上的特征(其捕获纸质文档的二维面貌)包括通过检测在两个连贯的序列之 间的、垂直的重叠部分的数量,来将文本的序列归合成逻辑行。所述方法可 以包括基于来自索引表的数据,来接收一个或多个查询项(其捕获在目标文 档中的对象之间的二维关系),以及计算潜在地响应于查询项的至少一个混合 介质文档与位置假设。在一个这样的情况,通过接收目标文档,创建目标文 档的至少一个碎片的图像,以及生成一个或多个基于图像的查询项,来先于 接收一个或多个查询项(其捕获在目标文档中的对象之间的二维关系)。在一 个这样的情况下,生成一个或多个基于图像的查询项包括生成从图像提取的、 水平的和垂直的单词对。在另一个特别的情况下,计算至少一个混合介质文 档与位置假设包括将最可能匹配目标文档的碎片的、存储的页面定位,以及 计算在所述页面中最可能为碎片的中心的位置。在一个这样的情况下,将每 一个单词对与逆向文档频率相关联,并且将最可能匹配目标文档的至少一个
>淬片的、存储的页面定位包括将对于每一个单词对的逆向文档频率,添加到
阚值的、在所述累加器中的最大值,所述方法继续输出如对碎片的匹配这样的、相应的文档页面。在一个这样的情况下,计算在所述页面中的、最可能 为碎片的中心的位置包括将权重添加到在每一个单词对四周的区中的每一个 单元(例如,可以由单词对的逆向文档频率与在所述单元和区的中心之间的、 规范化的几何距离的乘积来确定对于每一个单元的权重),以及搜索对于单元具有最大值的累加器的、相应的累加器Accum阵列。响应于超过阈值的最大值,所述方法进一步包括报告如碎片的位置这样的、单元的坐标。在另一个 特别的情况下,报告计算至少 一 个混合介质文档和位置假设包括在索引表中 查找到一个或多个查询项中的每一个,来4全索与每一个查询项关联的一个或 多个位置,以及对于每一个识别的位置,来识别一个或多个包含所述位置的 候选区域。在一个所述情况下,计算至少一个混合介质文档和位置假设包括 识别与一个或多个查询项中的全部最一致的、 一个或多个j夷选区域中的一个。 响应于确定一个或多个候选区域中的那个满足预定的匹配标准,所述方法继续确i/v区域为7十目标文档的匹配。本发明的一个或多个实施例的至少一个另外的方面提供以指令来编码的 机器可读介质(如, 一个或多个压缩光盘、软盘、服务器、记忆棒,或硬盘 驱动器、R0M、 RAM,或适合于存储电子指令的、任何类型的介质),而当由一 个或多个处理器来执行时,其促使处理器来执行用于在混合介质文档系统中 组织和访问信息的过程。例如,所述过程可以与于此描述的方法相似或为所 述方法的变体。本发明的一个或多个实施例的至少 一个其他方面提供用于访问在混合介 质文档系统中的信息的方法。所述方法包括基于来自为混合介质文档的文档 特征和特征位置编索引的索引表的数据,接收一个或多个查询项(其捕获在 目标文档中的对象之间的二维关系),并来计算潜在地响应于查询项的、至少 一个混合介质文档与位置假设。在一个特别的情况下,由接收目标文档,创 建目标文档的至少一个碎片的图像,以及基于所述图像来生成一个或多个查 询项,来先于接收一个或多个查询项(其捕获在目标文档中的对象之间的二 维关系)。在一个这样的情况下,基于所述图像来生成一个或多个查询项包括 生成从图像4是取的、水平的和垂直的单词对。在另一个所述情况下,计算至 少一个混合介质文档和位置假设包括将最可能匹配目标文档的碎片的、所存 储的页面定位,并计算在所述页面之中最可能为碎片的中心的位置。在另一 个所述的情况下,将每一个单词对与逆向文档频率相关联,并且将最可能匹配目标文档的至少 一个碎片的、所存储的页面定位包括将对于每一个单词对 的逆向文档频率,添加到由单词对呈现于其上的文档页面来为其编索引的累 加器。响应于在所述累加器中的、超过阈值的最大值,所述方法继续输出作 为对碎片的匹配的、相应的文档页面。在另一个所述情况下,计算在所述页 面之中的、最可能为碎片的中心的位置包括将权重添加到在每一个单词对四 周的区中的每一个单元(例如,可以由单词对的逆向文档频率与在所述单元 和区的中心之间的、规范化的几何距离的乘积来确定对于每一个单元的权重),以及搜索对于单元具有最大值的累加器的、相应的Accum阵列。响应于超过阈值的最大值,所述方法包括报告作为碎片的位置的、单元的坐标。在 另 一个特别的情况下,计算至少 一个混合介质文档和位置假设包括在索引表 中查找一个或多个查询项中的每一个,来4全索与每一个查询项相关联的一个 或多个位置,并且对于每一个所识别的位置,识别包含所述位置的、 一个或 多个候选区域。计算至少 一个混合介质文档和位置假设可以进一步包括识别 与一个或多个查询项中的全部最一致的、 一个或多个候选区域中的一个,并 且响应于确定一个或多个候选区域中的那一个满足预定的匹配标准的,来将 区域确认为对目标文档的匹配。本发明的另一个实施例提供以指令来编码的机器可读介质(如, 一个或多个压缩光盘、软盘、服务器、记忆棒,或硬盘驱动器、R0M、 RAM,或适合 于存储电子指令的、任何类型的介质),而当由一个或多个处理器来执行时, 其促使处理器来执行用于在混合介质文档系统中访问信息的过程。例如,所 述过程可以与这里描述的方法相似或为所述方法的变体。本发明的一个或多个实施例的至少另一个方面提供以指令编码的机器可 读介质(例如, 一个或多个压缩光盘、磁盘、服务器、记忆棒、或硬盘驱动 器、R0M、 R認、或适合于存储电子指令的任何类型的介质),当由一个或多个 处理器执行时,其促使处理器执行用于访问混合介质文档系统中的信息的过 程。例如,这个过程能够与这里所描述的方法类似或是其变体。于此所描述的特点和优点并不包含所有的,且特别地,考虑绘图和描述, 对于一个本领域普通技术人员来说,许多另外的特点和优点将会很明显。此 外,应该注意到,主要为易读性和指导性的目的已选择说明书中所使用的语 言,并且不局限于发明主旨的范围。


图1A阐明根据本发明的一个实施例而配置的混合介质实境(薩R)系统 的功能框图;图IB阐明根据本发明的另一个实施例而配置的醒R系统的功能框图; 图2A、 2B、 2C、和2D阐明根据本发明的一个实施例的捕获装置; 图2E阐明根据本发明的一个实施例而配置的捕获装置的功能框图; 图3阐明根据本发明的一个实施例而配置的MMR计算机的功能框图; 图4阐明根据本发明的一个实施例而配置的醒R软件套装中所包括的一 组软件部件;图5阐明表示根据本发明的一个实施例而配置的固R文档的实施例的图解;图6阐明根据本发明的一个实施例的文档指紋匹配方法; 图7阐明根据本发明的一个实施例而配置的文档指紋匹配系统; 图8阐明根据本发明的一个实施例的文本/非文本辨别的流程; 图9阐明根据本发明的一个实施例的文本/非文本辨别的例子; 图1Q阐明用于估计根据本发明的一个实施例的图像碎片中的文本的磅 值的流程;图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的技术的醒R特征提取 的例子;图34C阐明根据本发明的一个实施例的示例性索引表组织;图35阐明根据本发明的一个实施例的用于产生一个廳R索引表的方法;图36阐明根据本发明的一个实施例的用于计算关于目标文档的分等级的一組文档、页面、和位置假设的方法;图37A阐明根据本发明的另一个实施例而配置的固R部件的功能框图; 图37B阐明根据本发明的一个实施例的函R打印软件中所包括的一组软件部件;图38阐明根据本发明的一个实施例的在文档中嵌入热点的方法的流程图;图39A阐明根据本发明的一个实施例的HTML文件的例子; 图39B阐明图39A的HTML文件的标记版的例子;图40A阐明根据本发明的一个实施例的浏览器中所显示的图39A的HTML 文件的例子;图40B阐明根据本发明的一个实施例的图40A的HTML文件的打印版的例子;图41阐明根据本发明的一个实施例的符号热点描述; 图42A和42B示出根据本发明的一个实施例的图39A的HTML文件的示例 性page —desc. xml文件;图43阐明根据本发明的一个实施例的,相应于图41、 42A、和42B的
hot spot, xml文件;
图44阐明根据本发明的一个实施例的转发DLL所使用的过程的流程图; 图45阐明根据本发明的一个实施例的转换相应于文档中的热点的字符
的方法的流程图46阐明根据本发明的一个实施例的文档的电子版的例子;
图47阐明根据本发明的一个实施例的打印修改文档的例子;
图48阐明根据本发明的一个实施例的共享文档注解的方法的流程图49A阐明根据本发明的一个实施例的浏览器中的样本源网页;
图49B阐明根据本发明的一个实施例的浏览器中的样本修改网页;
图49C阐明根据本发明的一个实施例的样本打印网页;
图50A阐明根据本发明的一个实施例的添加热点至图像化文档的方法的
流程图50B阐明根据本发明的一个实施例的定义用于添加至图像化文档的热 点的方法的流程图51A阐明示出已根据一个实施例而扫描的新闻纸页面的一部分的用户 接口的例子;
图51B阐明用于定义数据或交互作用,以与所选择的热点关联的用户接
口 ;
图51C阐明根据本发明的 一个实施例的包括分派框的图51B的用户接口 ; 图51D阐明根据本发明的一个实施例的用于显示文档内的热点的用户接
图52阐明根据本发明的一个实施例的使用画R文档和醒R系统的方法的 流程图53阐明根据本发明的一个实施例的与腦R系统关联的示例性的一组商 业实体的框图54阐明根据本发明的一个实施例的,作为通过使用画R系统而便利的 一般化的商业方法的,方法的流程图。
具体实施例方式
描述混合介质实境(薩R)系统和相关联的方法。画R系统提供用于形成
14包括至少两种类型的介质,如打印纸张作为第一种介质,以及数码照片、数 字电影、数字音频文件、数字文本文件、或网络链接作为第二种介质,的混 合介质文档的机制。醒R系统和/或技术能够进一步用于便利各种各样的利用
便携式电子装置(如,PDA或照相手机)与纸质文档的结合,以提供混合介
质文档的商业模型。
在一个特定实施例中,固R系统包括基于内容的检索数据库,其表示以
允许使用基于文本的索引查找的方式从打印文档中所提取的目标之间的二维 几何关系。证据累加技术将特征出现的频率与其在二维区域中的位置的可能
性结合。在一个这样的实施例中,醒R数据库系统包括接收由薩R特征提取 算法所计算的描述的索引表。索引表识别文档、页面、和每个特征出现处的 那些页面内的x-y位置。给出来自索引表的数据,证据累加算法计算分等级 的一组文档、页面和位置假设。如所期望的,能够使用关系数据库(或其它 适合的存储设施)来存储有关每个文档、页面、和位置的另外的特性。
醒R数据库系统也可以包括其它部件,如醒R处理器、捕获装置、通信 机制和包括醒R软件的存储器。也可以将醒R处理器连接至介质类型的存储 器或源、输入装置和输出装置。在一个这样的配置中,醒R软件包括固R处 理器可执行的例程,用于访问具有另外的数字内容的固R文档、创建或修改 MMR文档、以及使用文档执行其它的操作,如商业交易、数据查询、报告,等等。
MMR系统概述
现在参考图U,示出根据本发明的实施例的混合介质实境(画R)系统 100a。画R系统100a包括画R处理器102、通信机制104、具有便携式输入 装置168和便携式输出装置170的捕获装置106、包括羅R软件的存储器108、 基本介质存储器160、 MMR介质存储器162、输出装置164、和输入装置166。 通过提供使用来自现有的打印文档(第一介质类型)的信息作为第二介质类 型,如音频、视频、文本、更新的信息和服务的索引的方式,画R系统100a 创建混合介质环境。
捕获装置106能够产生打印文档(例如,图像、绘图、或其它这样的表 示法)的表示,并将该表示发送至薩R处理器102。然后醒R系统100a将该 表示与固R文档和其它第二介质类型匹配。應R系统100a也为响应表示的输 入和识别而采取动作负责。腦R系统100a所采取的动作能够为任何类型,包括,例如,检索信息、下订单、检索视频或声音、存储信息、创建新文档、 打印文档、显示文档或图像,等等。通过于此所描述的基于内容的检索数据
库技术的使用,画R系统100a提供将打印文本提交到向用户提供感兴趣的或
有价值的电子内容或服务的进入点的动态介质的机制。
薩R处理器102处理数据信号,并可以包括各种各样的计算体系结构, 包括复杂指令集计算机(CISC)体系结构、精简指令集计算机(RISC)体系 结构、或实现指令集的结合的体系结构。在一个特定实施例中,薩R处理器 102包括算术逻辑单元、微处理器、 一般用途的计算机、或为执行本发明的 操作而配备的一些其它信息设备。在另一个实施例中,薩R处理器102包括 具有图形化的用户接口的一般用途的计算机,该图形化用户接口可以由,例 如,以在像基于WINDOWS或UNIX操作系统那样的操作系统之上运行的Java 所写的程序产生。尽管在图1A中^f叉示出单个处理器,^[旦可以包括多个处理器。 处理器连接至,R存储器108,并执行存储在那里的指令。
通信机制104是用于将捕获装置106连接至腦R处理器102的任何装置 或系统。例如,能够使用网络(例如,WAN和/或LAN)、有线链接(例如,USB、 RS232、或以太网)、无线链接(例如,红外线、蓝牙、或802.11)、移动装 置通信链接(例如,GPRS或GSM)、公共交换电话网(PSTN)链接、或这些的任 何结合来实现通信机制104。这里能够使用许多通信体系结构和协i^。捕获 装置106包括像收发机那样的设备,以与通信机制104相接,并且是能够通 过输入装置168数字地捕获图像或数据的任何装置。捕获装置106能够选择 性地包括输出装置170,并且可替代地为便携式的。例如,捕获装置106是 标准的照相手机、PDA装置、数字相机、条形码读取器、射频识别(RFID)阅 读器、诸如标准的网络摄像机这样的计算机外围设备、或诸如PC的视频卡这 样的内置装置。参考图2A-2D,更详细地分别描述捕获装置106a-d的几个例 子。另外,捕获装置106可以包括使得基于内容的检索能够进行并且将捕获 装置106连4妄至醒R系统100a/100b的基础设施的软件应用程序。参考图2E 可找到捕获装置106的更多功能细节。根据这个公开发明,许多传统和定制 的捕获装置106,以及其各自的功能和体系结构将很明显。
存储器108存储可能由处理器102执行的指令和/或数据。该指令和/或 数据可以包括用于执行于此所描述的任何和/或所有的技术的代码。存储器 108可以是动态随机存取存储器(DR雄)装置、静态随机存取存储器(SRAM)装置、或任何其它适当的存储器装置。参考图4,下文将更加详细地描述存
储器108。在一个特定实施例中,存储器108包括丽R软件套装、操作系统
和其它应用程序(如,文字处理应用程序、电子邮件应用程序、金融应用程 序、和网页浏览器应用程序)。
基本介质存储器160是用于以其原始的形式存储第二介质类型的,并且 MMR介质存储器162是用于存储固R文档、数据库和其它如于此所描述的, 以创建MMR环境的信息的。尽管分别示出,在另一个实施例中,基本介质存 储器160和應R介质存储器162可以是相同存储器装置的部分,或是集成一 体的。数据存储器160、 162进一步存储关于,R处理器102的数据或指令, 并包括一个或多个装置,其包括,例如,硬盘驱动器、软盘驱动器、CD-ROM 装置、DVD-ROM装置、DVD-RAM装置、DVD-RW装置、闪存装置、或任何其它
适当的大容量存储装置。
输出装置164可操作地连接至醒R处理器102,并表示为输出像显示的 那些、声音、或当前内容那样的数据而配备的任何装置。例如,输出装置l64 能够是像打印机、显示装置、和/或扬声器那样的多种类型的任何一个。示例 性的显示输出装置164包括阴极射线管(CRT)、液晶显示器(LCD)、或任何 其它类似配备的显示装置、屏幕、或监视器。在一个实施例中,输出装置l64 配备有触摸屏,其中触摸敏感、透明的面板覆盖输出装置164的屏幕。
输入装置166可操作地连接至醒R处理器102,并且是像4定盘和光标控 制器、扫描仪、多功能打印机、相机或摄像机、数字按键键盘、触摸屏、探 测器、RFID特征阅读器、开关、或允许用户与系统100a互动的任何机制那 样的多种类型的任何一个。在一个实施例中,输入装置166为^t盘和光标控 制器。光标控制器可包括,例如,鼠标、轨迹球、触笔、笔、触摸屏和/或触 控板、光标方向键、或其它促使光标移动的机制。在另一个实施例中,输入 装置166是麦克风、为一般用途的计算机系统内使用而设计的音频插入卡/ 扩展卡、模拟-数字转换器、和数字信号处理器,以便利声音识别和/或音频 处理。
图1B阐明根据本发明的另一个实施例而配置的醒R系统100b的功能框 图。在这个实施例中,MMR系统100b包括醒R计算机112(由用户110操作)、 网络介质服务器114、和产生打印文档118的打印机1"。固R系统100b进 一步包括办公室入口 120、服务提供者服务器l"、电连接至机顶盒U6的电子显示器124、和文档扫描仪127。通过网络128提供醒R计算机112、网络 介质服务器114、打印机116、办公室入口 120、服务提供者服务器122、机 顶盒126、和文档扫描仪127之间的通信链接,网络12S能够是LAN (例如, 办公或家庭网络)、WAN(例如,因特网或公司网络)、LAN/WAN的结合、或通
过其多个计算装置可以通信的任何其它数据路径。
MMR系统100b进一步包括能够通过蜂窝式基础设施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,等等)。 另外,廳R系统100b进一步包括与服务提供者服务器122或网络128无线或 有线通信的地理位置机制142。这也能够被集成于捕获装置106之中。
丽R用户110为正使用MMR系统100b的任何个人。,R计算机112为任 何桌上型计算机、膝上型计算机、网络计算机、或其它这样的处理环境。用 户打印机116为能够产生打印文档118的任何家庭、办公、或商业打印机, 打印文档118为由一个或多个打印页面而形成的纸质文档。
网络介质服务器114为保留由,R系统100b的用户通过网络128访问的 信息和/或应用程序的网络计算机。在一个特定实施例中,网络介质服务器 114为集中式计算机,在其之上存储多种介质文件,如文本源文件、网页、 音频和/或视频文件、图像文件(例如,静态照片)、和诸如此类。网络介质 服务器114为,例如,康卡斯特公司的康卡斯特视频点播服务器、理光创新 公司的理光文档中心、或谷歌公司的谷歌图像和/或视频服务器。 一般而言, 网络介质服务器114提供对可能经由捕获装置106附着于打印文档118上、 与其集成一体、或与其相关联的任何数据的访问。办公室入口 120为用于捕 获画R用户110的环境中出现的事件,例如薩R用户IIO的办公室中出现的 事件,的可选择的机制。办公室入口 120为,例如,分离于薩R计算机112的计算机。在这种情形,办公室入口 120通过网络128直接连接至醒R计算 机112或连接至画R计算机112。可替代地,将办公室入口 120置入到画R 计算机112内。例如,办公室入口 120从传统的个人计算机(PC)而构建, 并然后以支持任何相关联的捕获装置106的适当的硬件扩大充实。办公室入 口 120可以包括捕获装置,例如摄像机和音频录音机。可替代地,办公室入 口 120可以捕获和存储来自丽R计算机112的数据。例如,办公室入口 120 能够接收和监控MMR计算机112上出现的功能和事件。结果,办公室入口 120 能够记录固R用户110的物理环境中的所有的音频和视频,并记录匿R计算 机112上出现的所有的事件。在一个特定实施例中,办公室入口 120捕获来 自薩R计算机112的事件,如正编辑文档时的视频屏幕捕获。在这样做时, 办公室入口 120捕获当创建给定的文档时,所浏览的网站和所参阅的其它文 档。稍后通过他/她的MMR计算机112或捕获装置106对于MMR用户110可以 利用。另外,办公室入口 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全彩色扫描仪。在现有打印文档至画R预备文档的转换中使用文
19档扫描仪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在从中微波至可见光以下的频谱中工作。此外,在一个 或多个其它实施例中,可以使用IEEE 802.15 (UWB)和/或802. 16 (WiMAX) 标准支持无线通信。
有线技术140为任何有线通信机制,例如标准以太网连接或通用串行总 线(USB)连接。通过使用蜂窝式基础设施132、 Wi-Fi技术134、蓝牙技术 136、 IR技术138、和/或有线技术140,捕获装置106能够双向地与固R系 统100b的任何或所有的电子装置通信。
i也理位置才几制142为4壬何适用于确定i也理卩立置的4几制。例如,如已知的, 地理位置机制142为提供位置数据给地球上的GPS接收器装置的GPS人造卫 星。在图1B中所示的示例性实施例中,GPS人造卫星通过与GPS接收器(未 示出)结合的连接至网络128的服务提供者服务器122,将位置数据提供给 MMR系统100b的用户。可替代地,地理位置机制142为提供作为确定地理位 置的部件的三角测量机制、蜂窝塔识别(ID)机制、和/或增强的911服务的 一組蜂窝塔(如,蜂窝式基础设施132的一个子集)。可替代地,通过来自 WiFi访问点或蓝牙装置的已知位置的信号强度测量而提供地理位置机制 142。
在"t喿作中,捕获装置106用作醒R用户110所拥有的客户机。其上存在 使得基于内容的检索操作能够进行,并通过蜂窝式基础设施132、 Wi-Fi技术 134、蓝牙技术136、 IR技术138、和/或有线技术140将捕获装置106连接 至醒R系统100b的基础设施的软件应用程序。另夕卜,在腦R计算机112上存 在执行像打印捕获操作、事件捕获操作(如,保存文档的编辑历史)、服务器操作(如,用于稍后供应给其它对象而在MMR计算机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可以为謹R用户110 所有,并且可以通过地理位置才几制142或通过蜂窝式基础设施132内的每个 蜂窝塔的ID号跟踪其物理位置。
现在参考图2E,示出根据本发明的捕获装置106的一个实施例的功能框 图。捕获装置106包括处理器210、显示器212、数字按^t一建盘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)或有机发光二极管(OLED) 显示器。数字按键键盘214为任何标准的字母数字符号输入机制,如标准计
算装置和像蜂窝式手机那样的可手握的电子装置中所使用的数字按键键盘。 存储装置216为任何易失性或非易失性存储装置,例如,如熟知的,硬盘驱动器或随机存取存储(RAM)装置。
无线通信链接218为通过如所熟知的访问接入点(未示出)和LAN (如, IEEE 802.11 Wi-Fi或蓝牙技术)提供直接的点对点通信或无线通信的无线 数据通信机制。有线通信链接220为,例如,通过标准以太网和/或USB连接 提供直接通信的有线数据通信机制。
画R软件套装222为执行像将一种类型的介质与第二种类型合并那样的 薩R操作的全部管理软件。参考图4可找到醒R软件套装222的更多细节。
捕获装置用户接口 (UI) 224为用于操作捕获装置106的用户接口。通 过使用捕获装置UI 224,为了在其上的功能的选择,将各种各样的菜单呈现 给MMR用户110。更明确地,捕获装置UI 224的菜单允许固R用户110管理 任务,如与纸质文档交互作用、从现有文档中读出数据、将数据写入现有文 档、查看并与那些文档所关联的扩增实境交互作用、以及查看并与在他/她的 MMR计算机112上所显示的文档关联的扩增实境交互作用,但并不局限于此。
文档指紋匹配模块226为用于从通过捕获装置106的捕获机制230的至 少一个而捕获的文本图像中提取特征的软件模块。文档指紋匹配模块226也 能够执行所捕获的图像与文档的数据库之间的模式匹配。在最基本的水平, 以及根据一个实施例,文档指紋匹配模块226确定较大的页面图像内的图像 碎片的位置,其中那个页面图像是AM艮大的文档集中选^^的。文档指紋匹配 模块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公司的快速链4妄笔手握式扫描仪,其允许信息 被存储在笔上或通过串行端口、红外通信、或USB适配器,被直接传递至计 算机应用程序。
如熟知的,激光器240为通过受激发射产生相干的、接近单色光的光源。 例如,激光器240为标准的激光器二极管,其为当施加正向偏压时,发射相 干光的半导体装置。与激光器240关联并包括于其中的是测量将激光器240 引导于此的图像所反射的光的总量的探测器。
GPS装置242是供给位置数据,如数字辟度和经度数据,的任何便携式 GPS接收器装置。便携式GPS装置242的例子为来自索尼公司的NV-U70便携 式人造卫星导航系统、和来自Thales North America公司的麦哲4仑牌 RoadMate系列GPS装置、Meridian系列GPS装置、和Explorist系列GPS装 置。如熟知的,GPS装置242给多个地理位置机制142提供依靠三角测量, 部分地,实时地,确定捕获装置106的位置的方式。
RFID阅读器244为商业上可利用的RFID标签阅读器系统,如德州仪器 所制造的TI RFID系统。RFID标签为用于通过使用无线电波识别唯一的项目 的无线装置。如熟知的,RFID标签由微芯片构成,该微芯片附着于天线,并 且在其上存储有唯一 的数字识别号码。
在一个特定实施例中,捕获装置106包括处理器210、显示器212、键盘 214、存储装置216、无线通信链接218、有线通信链接22Q、 MMR软件套装222、捕获装置UI 224、文档指紋匹配模块226、第三方软件模块228、和捕 获机制230的至少一个。在这样做时,捕获装置106为一个全功能装置。可 替代地,捕获装置106可以具有较少的功能,并因而可以包括有限的一组功 能部件。例如,腿R软件套装222和文档指紋匹配模块226可以远程地位于, 例如,醒R系统100b的醒R计算机112或网络介质服务器114处,并由捕获 装置106通过无线通信链接218或有线通信链接220访问。 MMR计算机
现在参考图3,示出根据本发明的实施例而配置的應R计算机112。如能 够看到的,函R计算机112连接至包括一个或多个多々某体(謹)文件336的 网络介质服务器114、产生打印文档118的用户打印机116、文档扫描仪127、 和包括捕获装置UI 224及文档指紋匹配模块226的第 一 实例的捕获装置106。 这些部件之间的通信链接可以直接链接或通过网络。另外,文档扫描仪127 包括文档指紋匹配模块226,的第二实例。
这个示例性实施例的羅R计算机112包括一个或多个源文件310、第一 源文档(SD)浏览器312、第二SD浏览器314、打印机驱动器316、打印文 档(PD)捕获模块318、存储PD索引322的文档事件数据库320、事件捕获 模块324、文档分析器模块326、多媒体(画)剪辑浏览器/编辑器模块328、 MM的打印机驱动器330、文档-视频纸(DVP)打印系统332、和视频纸文档 334。
源文件310是为文档(或其一部分)的电子表示的任何源文件的代表。 示例性源文件310包括超文本标记语言(HTML)文件、孩i软Word文件、微软 PowerPoint文件、简单文本文件、便携式文档格式(PDF)文件、及诸如此 类,其存储在醒R计算机112的硬盘驱动器(或其它适当的存储器)上。
第一 SD浏览器312和第二 SD浏览器314为关于提供已与源文件310相 关联的数据的访问的现有PC应用程序的独立PC应用程序或者插件。第一和 第二SD浏览器312、 314可以用来检索原始的HTML文件或MM剪辑,以在羅R 计算机112上显示。
如熟知的,打印机驱动器316为控制应用程序与页面描述语言或任何特 殊的打印机所使用的打印机控制语言之间的通信链接的打印机驱动器软件。 特别地,无^r何时打印一个文档,如打印文档118,打印机驱动器316都将 具有正确的控制命令的数据,例如理光公司所提供的用于他们的打印装置的
24那些,馈给打印机116。在一个实施例中,打印机驱动器316不同于传统的
打印驱动器,因为它自动捕获每个打印页面上的每个字符的x-y坐标、字体、 和磅值的表示。换句话说,其捕获有关所打印的每个文档的内容的信息,并 将那个数据反馈给PD捕获模块318。
PD捕获模块318为捕获文档的打印表示,以致能够检索打印页面上的字 符和图形的布局的软件应用程序。另外,通过使用PD捕获模块318,在打印 时刻,实时地,自动地捕获文档的打印表示。更明确地,PD捕获模块318为 捕获打印页面上的文本的二维布置,并将这个信息传送至PD索引322的软件 例程。在一个实施例中,PD捕获模块318通过捕捉打印页面上的每个字符的 Windows文本布局命令而搡作。文本布局命令给操作系统(OS)指示打印页 面上的每个字符的x-y位置、以及字体、磅值,等等。本质上,PD捕获模块 318监测听传送至打印机116的打印数据。在所示的例子中,PD捕获^t块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来接收源文件310、 事件捕获模块324、 PD捕获模块318和扫描仪127的输出,并且也连接至捕 获装置106,以接收查询和数据,并提供输出。
文档事件数据库320也存储PD索引322。PD索引322为将从打印文档的 图像所提取的特征映射到它们的符号形式(如扫描的图像至Word)上的软件应用程序。在一个实施例中,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描述^t据库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指向文 档,并确定何时它在MMR计算机112的桌面上是活动的;以及4)读取历史捕获-为了跟踪多长时间,以及特別的文档的哪个部分对于固R用户IIO是可
见的,帧缓沖器捕获和索引标定操作的数据与文档在他/她的,R计算机112 的桌面上活动的时间的分析连接。在这样做时,为了推断薩R用户IIO是否 正在读取文档,可能出现与其它事件的关联,如按^:或鼠标移动。文档事件 数据库320、 PD索引322、和事件捕获^t块324的结合在画R计算机112上 局部地实现,或者可替代地,作为共享的数据库而实现。如果局部地实现, 与以共享的方式实现相比较,则需要较小的安全性。
文档分析器模块326为软件应用程序,其分析和各个打印文档118有关 的源文件310,以定位在其中的有用的对象,如统一资源定位符(URL)、地 址、标题、作者、时间、或表示位置的短语,如,Hallidie Building。在这 样做时,确定在源文件310的打印版本中的那些对象的位置。然后接收装置 能够使用文档分析器模块326的输出,以用另外的信息扩增文档118的表述, 并提高模式匹配的准确性。此外,例如在URL的情形中,接收装置也能够采 取动作使用位置检索与URL相关联的网页。连接文档分析器模块326以接收 源文件310,并且该模块将其输出提供给文档指紋匹配模块226。尽管仅作为 连接至捕获装置的文档指紋匹配模块226而示出,但文档分析器模块326的 输出能够连接至所有或任何数量的文档指紋匹配模块226,无论它们位于何 处。此外,文档分析器模块326的输出也能够存储于文档事件数据库320中, 以便稍后使用。
醒剪辑浏览器/编辑器模块328为提供创作功能的软件应用程序。画剪 辑浏览器/编辑器模块328为单独的软件应用程序或,可替代地,,为文档浏 览器上运行的插件(由到第二SD浏览器314的虛线表示)。MM剪辑浏览器/ 编辑器模块328将多媒体文件显示给用户,并连接至网络介质服务器,以接 收多々某体文件336。另外,当固R用户IIO正创作文档(如,将多J 某体剪辑 附着于纸质文档)时,薩剪辑浏览器/编辑器模块328为这种功能的支持工 具。丽剪辑浏览器/编辑器模块328为示出元数据,如从接近于当捕获多媒 体时的时刻所打印的文档所分析的信息,的应用程序。
丽的打印机驱动器330提供创作丽R文档的能力。例如,画R用户110 可以在由醒的打印机驱动器330所产生的UI中加亮文本,并将包括4企索多 媒体数据或在网络128上或在画R计算机112上执行一些其它过程的动作添 加至该文本。画的打印机驱动器330与DVP打印系统332的结合提供使用条
27形码的可供选择的输出格式。这种格式不必定需要基于内容的检索技术。應
的打印机驱动器330为用于支持视频纸技术,即,视频纸334,的打印机驱 动器。画的打印机驱动器330创建包括条形码的纸质表示,作为访问多媒体 的方式。相比而言,打印机驱动器316创建包括,R技术的纸质表示,作为 访问多媒体的方式。MM剪辑浏览器/编辑器328与SD浏览器314的结合中所 体现的创作技术能够创建与SD浏览器312相同的输出格式,因而使得能够进 行为基于内容的检索准备的丽R文档的创建。DVP打印系统332执行与文档 相关联的文档事件数据库320中的任何数据至其打印表示的连接操作,或者 用明确的或者用隐含条形码。隐含条形码指像条形码一样使用的文本特征的 模式。
视频纸334为用于在可打印介质,例如纸,上呈现音频-视觉信息的技术。
引。用户扫描条形码和视频剪辑或与系统所输出的文本有关的其它多媒体内 容。存在用于打印音频或视频纸的系统,并且这些系统本质上提供关于多媒 体信息的基于纸的接口。
网络介质服务器114的画文件336为多种文件类型和文件格式的任何一 种的集合的代表。例如,醒文件336为文本源文件、网页、音频文件、视频 文件、音频/视频文件、和图像文件(如,数码照片)。
如图1B中所描述的,将文档扫描仪127用于现有打印文档至MMR-预备 文档的转换。然而,继续参考图3,通过将文档指纹匹配模块226,的特征提 取操作应用于所扫描的文档的每个页面,将文档扫描仪127用于MMR-使能的 现有文档。随后,以扫描和特征提取^I乘作的结果增加PD索引322,并因而, 将所扫描的文档的电子表示存储于文档事件数据库32G中。然后能够将PD索 引322中的信息用于创作腦R文档。继续参考图3,注意到MMR计算机112 的软件功能并不仅局限于腦R计算机112。可替代地,可以将图3中所示的 软件功能分布于薩R系统100b的MMR计算机112、网络介质服务器114、月良 务提供者服务器122与捕获装置106之间的任何用户定义的配置中。例如, 源文件310、 SD浏览器312、 SD浏览器314、打印机驱动器316、 PD捕获才莫 块318、文档事件数据库320、 PD索引322、事件捕获模块324、文档分析器 模块326、画剪辑浏览器/编辑器模块328、應的打印机驱动器330、和DVP 打印系统332可以完全位于捕获装置106之内,并从而,给捕获装置106提供增强的功 能。
MMR软件套装
图4阐明根据本发明的一个实施例的腦R软件套装222中所包括的一组 软件部件。应该理解,羅R计算机112、捕获装置106、网络介质服务器114 和其它服务器中可以包括應R软件套装222中的所有或一些。另夕卜,醒R软 件套装222的其它实施例可能具有从它们的一个至所有的任何数量的所阐明 的部件。这个例子的顧R软件套装222包括多^^某体注解软件410,其包括 基于文本内容的检索部件412、基于图像内容的检索部件414、和密写更改部 件416;纸张读取历史日志418;在线读取历史日志420;合作文档查阅部件 422、实时通知部件424、多i某体4企索部件426;桌面-见频提醒部件428;网 页提醒部件430、物理历史日志432;完整表格查阅器部件434;时间输送部 件436、位置告知部件438、 PC创作部件44G;文档创作部件442;捕获装置 创作部件444;无意识上载部件446;文档版本;f企索部件448; PC文档元数据 部件450;捕获装置UI部件452;和特定领域部件454。
根据一个特定实施例,多媒体注解软件410结合文档事件数据库320的 组织形成MMR系统100b的基本技术。更明确地,多媒体注解软件410是用于 管理纸质文档的多J 某体注解的。例如,謹R用户110将捕获装置106指向纸 质文档的任何章节,并然后使用捕获装置106的捕获机制230的至少一个来 给那个章节添加注解。在一个特定的例子中,律师口述有关合同的章节的记 录(创建音频文件)。将多媒体数据(音频文件)自动附着于文档的原始电子 版本。文本随后的打印输出可选地包括那些注解的存在的指示。
基于文本内容的检索部件412为从文本中检索基于内容的信息的软件应 用程序。例如,通过使用基于文本内容的检索部件412,从文本碎片中检索 内容,识别文档内的原始文档和章节,或者识别连接至那个碎片的其它信息。 基于文本内容的检索部件412可以利用基于OCR的技术。可替代地,用于执 行从文本的基于内容的检索的操作的不基于OCR的技术包括文本碎片中的单 词长度的二维布置。基于文本内容的检索部件412的一个例子为结合从文本 片段的图像中所提取的水平和垂直特征的算法,以识别文档和从其中提取它 的文档内的章节。能够串行地、并行地、或同时地使用水平和垂直特征。使 用这样的不基于OCR的特征集,以致在出现噪声时提供高速实现与鲁棒性。 基于图像内容的检索部件414为从图像中检索基于内容的信息的软件应用程序。基于图像内容的检索部件414执行所捕获的数据与数据库320中的图像
之间的图像比较,以产生一列可能的图像匹配和相关联的置信水平。另外, 每个图像匹配可以具有相关联的数据或响应用户输入而执行的动作。在一个 例子中,通过将图像转换为能够用来查询关于具有相同的特征布置的图像的
图像数据库的矢量表示,基于图像内容的检索部件414可检索,例如,基于 光栅图像(例如,地图)的内容。可选择的实施例使用图像的色彩内容或图 像内的对象的几何布置,以在数据库中查找匹配图像。
密写更改部件416为在打印之前执行密写更改的软件应用程序。为了使 MMR应用程序更好地运作,在打印文本和图像之前,将数字信息添加至所述 文本和图像。在可替代的实施例中,密写更改部件416产生并存储應R文档, 该文档包括l)像文本、音频、或视频信息那样的原始基本内容;2)以任 何像文本、音频、视频、Java的A卯lets、超文本链接,等等那样的形式存 在的另外的内容。密写更改能够包括在彩色或灰度图像中嵌入水印,文档背 景上的光点图形的打印,或者打印字符的轮廓至编码数字信息的细微更改。 纸张读取历史日志418为纸质文档的读取历史日志。纸张读取历史日志418 位于,例如,文档事件数据库320中。纸张读取历史日志418是基于由理光 创新公司开发的来自视频的文档识别技术的,其用于产生固R用户110所读 取的文档的历史。例如,对于提醒醒R用户110文档的读取和/或任何相关联 的事件,纸张读取历史日记418是很有用的。在线读取历史日志420为在线 文档的读取历史日志。在线读取历史日志420是基于操作系统事件的分析, 并位于,例如,文档事件数据库320中。在线读取历史日志420是MMR用户 110所读取的在线文档和读取文档的哪个部分的记录。可以以许多方式将在 线读取历史日志420的条目打印到任何随后的打印输出上,例如通过在每个 页面的底部提供笔记,或者通过用不同的颜色加亮基于读取每段所花费的时 间量的文本。另外,多媒体注解软件410可以将这种数据编入PD索引322中。 可选地,可以通过装备有如监控薩R计算机112的面部探测系统那样的装置 的應R计算机112 :暖助在线读取历史曰志420。
合作文档查阅部件422为通过将他/她的捕获装置106指向文档的任何章 节,允许相同纸质文档的不同版本的不止一个阅读器查阅其它阅读器所应用 的注释的软件应用程序。例如,在捕获装置106上注解可以显示为文档略图 之上的覆盖层。合作文档查阅部件422可以用任何类型的现有合作软件实现,或与任何种类的现有合作软件合作。
实时通知部件424为执行正被读取的文档的实时通知的软件应用程序。 例如,当固R用户110读取文档时,他/她的读取踪迹被张贴于博客或在线公 告板上。结果,对相同的话题感兴趣的其他人可以访问并谈论该文档。
多媒体检索部件426为从任意的纸质文档中检索多媒体的软件应用程 序。例如,通过将捕获装置106指向文档,醒R用户110可以检索当任意的 纸质文档呈现在画R用户110的桌上时发生的所有会话。这假设顧R用户110 的办公室中存在捕获多媒体数据的办公室入口 120 (或其它适当的机制)。
桌面视频提醒部件428为提醒固R用户110在固R计算机112上出现的 事件的软件应用程序。例如,通过将捕获装置106指向纸质文档的一个章节, 薩R用户110可以看见示出当那个章节可见时发生的應R计算机112的桌面 的变化的视频剪辑。另外,桌面视频提醒部件428可以用于检索MMR计算机 112所记录的其它多媒体,例如画R计算机112的周围所呈现的音频。
网页提醒部件430为提醒,R用户110在他/她的醒R计算机112上被查 看的网页。例如,通过在纸质文档上摇摆捕获装置106的镜头,MMR用户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为检索先前所获取的用于完善表格的信息的软 件应用程序。例如,薩R用户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的事件的链接或者与他/她的环 境中的事件的链接的纸质文档;允许自动产生具有链接的纸质文档,例如被 自动地链4妄至从其产生它的Wor d文件的打印文档118;或者允许固R用户110 检索Word文件,并将其交给其他人。在此将具有链接的纸质文档称为固R文 档。参考图5进一步描述MMR文档的更多细节。
文档创作部件442为执行现有文档的创作操作的软件应用程序。能够, 例如,或者作为个人版,或者作为企业版而实现文档创作部件"2。在个人 版中,醒R用户110扫描文档并将它们添加至画R文档数据库(例如,文档事件数据库320 )。在企业版中,出版者(或者第三方)从原始电子源(或者 电子校样本)创建醒R文档。这个功能可以被嵌入高端发布包(例如,Adobe Reader)并与另一个实体所提供的后台服务连接。捕获装置创作部件444为 直接在捕获装置106上执行创作操作的软件应用程序。使用捕获装置创作部 件444,應R用户110从他/她手头上的纸质文档中提取关键短语,并将该关 键短语与动态捕获的另外的内容一同存储,以创建临时MMR文档。另外,通 过使用捕获装置创作部件444,腦R用户110可以返回至他/她的腦R计算机 112,并将他/她所创建的临时固R文档下载至现有文档应用程序,如 PowerPoint,然后将其编辑成为薩R文档的最后版本或另 一个应用程序的文 档的其它标准类型。在这样做时,可将图像和文本自动地插入现有文档的页 面中,如4翁入PowerPoint文才当的页面中。
无意识上载部件446为无意识地(自动地,无用户千预地)将打印文档 上载至捕获装置106的软件应用程序。因为在大多数时间捕获装置106都为 應R用户110所有,包括当醒R用户110在他/她的腦R计算机112上时,除 了将文档发送至打印机116之外,结合Wi-Fi技术134或蓝牙技术136,经 由捕获装置106的无线通信链接218,或者如果捕获装置106与MMR计算机 112连接/对接,则通过有线连接,打印机驱动器316也可以将那些相同的文 档压入捕获装置106的存储装置216。以这种方式,在打印文档之后,MMR用 户110从来不会忘记捡取该文档,因为其被自动地上载至捕获装置106。文 档版本检索部件448为检索给定源文件310的过去和将来版本的软件应用程 序。例如,薩R用户110将捕获装置106指向打印文档,并然后文档版本检 索部件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 2 24的结合允许MMR用户110从现有文档读取数据,以及将数据写入现有 文档,查看并与那些文档所关联的扩增实境交互作用(即,通过捕获装置106, 醒R用户110能够查看当创建文档时或在编辑文档时发生了什么),以及查看 并与在他/她的捕获装置106上显示的文档所关联的扩增实境交互作用。
特定领域部件454为管理特定领域功能的软件应用程序。例如,在音乐 应用程序中,特定领域部件454为经由,例如,捕获装置106的录音器236 将所探测到的音乐与标题、艺术家、或作曲家匹配的软件应用程序。以这种 方式,可以将感兴趣的项目,如与所探测的音乐有关的活页乐谱或音乐CD, 呈现给画R用户110。类似地,特定领域部件454适应于以关于视频内容、 视频游戏、和任何娱乐信息的类似的方式操作。特定领域部件454也可以适 应于任何大众传媒内容的电子版本。
继续参考图3和4,注意到,R软件套装222的软件部件可以完全或者 部分地存在于醒R系统100b的一个或多个固R计算机112、网络介质服务器 114、服务提供者服务器122、和捕获装置106上。换句话说,可以将固R系 统100b的操作,例如画R软件套装222所执行的任何操作,分布于画R计算 机112、网络介质服务器114、服务提供者服务器122、和捕获装置106(或 者系统100b中所包括的其它这样的处理环境)之间的任何用户定义的配置 中。根据这个公开发明,将很明显,能够以MMR软件套装的软件部件的 某些结合而执行醒R系统100a/100b的基本功能。例如,醒R系统100a/100b 的 一个实施例的基本功能包括
创建或者增加包括第一介质部分和第二介质部分的固R文档;
使用画R文档的第一介质部分(例如,纸质文档)访问第二介质部分中 的信息;
使用,R文档的第一介质部分(例如,纸质文档)触发或启动电子领域 中的过程;
使用應R文档的第一介质部分(例如,纸质文档)创建或增加第二介质 部分;
使用醒R文档的第二介质部分创建或增加第一介质部分; 使用應R文档的第二介质部分触发或启动电子领域中的或与第一介质部 分有关的过程;
34画R文档
图5阐明根据本发明的一个实施例的画R文档500的图解。更明确地, 图5示出包括打印文档118的一部分的表示502、动作或第二介质504、索引 或热点506、以及整个文档118的电子表示508的,R文档500。尽管典型地 将画R文档5QG存储在文档事件数据库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 所识别的文档的一部分有关的文本文件、音频文件、或^L频文件。第二介质 类型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或MMR计算机112上显示文档。
應R文档500的示例性-使用如下。通过分析文本指紋或表示502,经由捕 获装置106的文档指紋匹配模块226识别所捕获的文本片段。例如,MMR用 户110将他/她的捕获装置106的摄像机232或数码相机234指向打印文档 118,并捕获图像。随后,文档指紋匹配模块226在所捕获的图像上执行其分 析,以确定PD索引322内是否存在相关联的条目。如果找到匹配项,在他/ 她的捕获装置106的显示器212上,为MMR用户110高亮显示热点506的存 在。如图5中所示,高亮显示单词或短语。打印文档118内的每个热点506 都用作至其它用户定义的或预定的数据,如存在于网络介质服务器114上的 國文件336的一个,的链接。PD索引322中所存储的文本指紋或表示502的 访问允许将电子数据添加至任何,R文档5 0 0或文档内的任何热点5 06 。如 参考图4所描述的,包括至少一个热点506 (如,链接)的纸质文档被称为 MMR文档500。
继续参考图1B、 2A直至2D、 3、 4、和5, MMR系统100b的示例性操作 如下。應R用户110或任何其它实体,例如出版社,打开给定的源文件310 并启动打印操作,以产生纸质文档,如打印文档118。在打印操作期间,自 动执行某些动作,如(l)在打印时刻,经由PD捕获模块318,自动捕获打 印格式,并将其传递至捕获装置106。通过使用位于,例如,SD浏览器312 的输出处的PD捕获模块318,在打印时刻自动捕获文档的电子表示508。例 如,MMR用户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内执行交互式会话,其 允i午醒R用户IIO在打印热点506之前将所述热点506添加至文档,并因而 形成應R文档500。将相关联的数据存储在固R计算机112上或上载至网络 介质服务器114。
示范性可替代实施例
MMR系统IOO (100a或100b)并不局限于图1A-1B、 2A-2D、和3-5中所 示的配置。固R软件可以全部或部分地分配于捕获装置106与MMR计算机112 之间,并且需要远少于上文参考图3和4所描述的所有的模块。多个配置都 是可能的,包括如下
画R系统100的第一可替代的实施例包括捕获装置106和捕获装置软件。 捕获装置软件为捕获装置UI 224和文档指紋匹配模块226 (如,图3中所示 的)。在捕获装置106上,或者可替代地,在可访问捕获装置106的像网络介 质服务器114或服务提供者服务器122那样的外部服务器上,执行捕获装置 软件。在这个实施例中,可利用提供连接至发行物的数据的网络服务。可以 使用分等级的识别方案,在其中首先识别发行物,并然后识别发行物内的页 面和章节。
匿R系统100的第二可替代的实施例包括捕获装置106、捕获装置软件和 文档使用软件。如参考图4所示出和描述的,第二可替代的实施例包括捕获 并给打印文档编索引,以及连接基本的文档事件,如文档的编辑历史,的软 件。这允许MMR用户110将他/她的捕获装置106指向任何打印文档,并确定 产生该文档的源文件310的名字和位置,以及确定打印的时间和地点。
MMR系统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包括数字按键:键盘、通过它用户登录并输入代码。该文档可 以包括在其页脚的代码的打印表示,其可以通过打印机驱动器316插入。
,R系统100的第五可替代的实施例包括捕获装置106、捕获装置软件、 和办公室入口 120。办公室入口装置优选地为办公室入口 120的个人化版本。 办公室入口 120捕获办公室中的事件,如会话、会谈/电话呼叫、和会议。办 公室入口 120识别并跟踪物理桌面上的特定纸质文档。办公室入口 120另外 执行文档识别软件(即,文档指紋匹配模块226和主机文档事件数据库320 )。 这个第五可替代的实施例可用于从MMR计算机112卸载计算工作负荷,并提 供将醒R系统100b包装成为消费者装置(例如,将固R系统100b作为硬件 和在苹果计算机公司的Mac迷你型计算机上执行的软件产品而出售)的便利 方法。
MMR系统100的第六可替代的实施例包括捕获装置106、捕获装置软件、 和网络介质服务器114。在这个实施例中,多i某体数据存在于网络介质服务 器114,例如康卡斯特-f见频点播服务器。当丽R用户110通过使用他/她的捕 获装置106扫描文档文本碎片时,将作为结果的查找命令或者传输至与醒R 用户IIO的有线电视(cable TV)相关联的机顶盒126 (通过因特网,无线 地,或者通过电话上呼叫机顶盒126),或者传输至康卡斯特服务器。在两种 情形中,多媒体都从康卡斯特服务器流向机顶盒126。系统100知道向何处 发送数据,因为函R用户110先前注册了他/她的电话。因而,能够将捕获装 置106用于^L顶盒126的访问和控制。
薩R系统100的第七可替代的实施例包括捕获装置106、捕获装置软件、 网络介质服务器114和位置服务。在这个实施例中,位置已知服务在来自康 卡斯特系统(或其它适当的通信系统)的输出的多个目的地之间辨别。或者 通过自动辨别蜂窝式电话塔ID,或者通过允许固R用户IIO选择将要显示数 据的位置的数字按键键盘接口,来执行这个功能。因而,当拜访另一个位置 时,只要那个其它位置具有有线接入,用户就能够访问他们的有线电视运营商所提供的节目和其它有线TV特征。
文档指紋匹配("基于图像的碎片识别")
如先前所描述的,文档指紋匹配涉及唯一地识别MMR文档的一部分、或 "碎片"。参考图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像素,其中M〈N。在每一步,通过寻找灰度水平值的 显著差别(例如,大于40)而确定峰值的存在。如果峰值位于窗口的一个位 置,则无论何时滑动窗口与这个位置交迭,都抑制其它峰值的探测。在步骤 812也可以探测连续的峰值之间的间隙。步骤812适用于图像碎片中的许多列(C),并且在步骤814以直方图累加间隙值。
将间隙直方图与从具有数据库818中所存储的已知分类(在步骤816) 的训练数据中导出的其它直方图相比较,并一起输出有关碎片的类别(或者 文本或者非文本)的决定和那个决定的置信度的测量。步骤816的直方图分
类考虑从文本的图像中导出的直方图的典型的外观,并且其包含两个紧密的 峰, 一个中心置于行之间的距离上,其中在直方图中远离那些峰的其它一个 或两个更小的峰可能整数倍高。以统计方差的测量,该分类可以确定直方图 的形状,或者其可以用距离测量,例如,汉明或欧氏距离,将直方图逐一与 所存储的原型相比较。
现在同样参考图9,其示出文本/非文本辨别的例子。处理输入图像910, 以采样许多列,用点线指示其子集。914中示出典型的列912的灰度水平直 方图。Y值为910中的灰度水平,以及X值为910中的行。916中示出直方图 中的峰值之间所探测到的间隙。918中示出来自所有采样列的间隙值的直方 图。这个例子阐明从包含文本的碎片所导出的直方图的形状。
图10中示出用于估计图像碎片中的文本的磅值的流程。这个流程利用图 像的模糊度反比例于捕获装置离页面的距离的事实。通过估计模糊量,可以 估计距离,并且那个距离可以用来,相对于已知"标准化的,,高度,将图像 中的对象的大小缩放。这个行为可以用来估计新的图像中的文本的磅值。
在训练阶段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更改反馈过程。一4殳而言,控制结构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中所存储的碎片的完美的图
42像数据与数据库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",数据库34GG可能返回 (15, x, y), (7, x, y),指示垂直相邻的单词对"in, hat"出现在文档 15和7中所指示的x-y位置。然后,使用数据库3400所返回的文档和位置
信息,能够进行如对哪个文档从所捕获的图像中所提取的各种各样的水平单 词对和垂直相邻的单词对之间出现最多的位置交迭一样的确定。响应可以确
定哪个热点和所链接的介质的存在,这可能导致识别包含所捕获的图像的文档。
图12示出根据本发明的实施例的另一个文档指紋匹配技术。图12中所 示的"交互式图像分析",技术涉及图像处理和可能在识别图像碎片之前出现的特征提取之间的交互作用。例如,图像处理模块716可能首先估计输入图
像中的模糊度。然后,特征提取模块718计算离页面的距离和图像文本的磅 值。然后,图像处理模块716可能使用那个磅值的字体的特征,在图像上执 行模板匹配步骤。随后,特征提取模块718可能因而从结果中提取字符或单 词特征。此外,本领域技术人员将认识到字体、磅值、和特征可能受制于数 据库3400文档中的字体。
图13中示出如上文参考图12所描述的交互式图像分析的例子。在步骤 1310处理输入图像碎片,估计图像碎片中的文本的字体和磅值和其离相机的 距离。本领域技术人员将注意到可以用已知的技术进行字体估计(即,碎片 中的文本的字体的候选者的识别)。例如,可以使用参考图IO所描述的流程 来执行磅值和距离估计。此外,可以使用其它技术,例如能够容易地适应于 捕获装置的离焦点的距离的已知方法。
仍然参考图13,在步骤1312应用行分割算法,其在碎片中的文本行的 周围构造边界框。在步骤1314使用像缩放那样的已知技术将每个行图像的高 度标准化为固定的大小。将关于图像中所探测到的字体的一致性以及其磅值 传递1324至字体原型集1322,其中使用它们来检索每个指定的字体中的字 符的图像原型。
字体数据库1322可以从由操作系统和其它软件应用程序用来打印文档 的用户系统上的字体集(例^口, TrueType、 OpenType、或Microsoft Windows 中的raster字体)而构造。在一个或多个其它实施例中,可以从数据库3^00 中的文档的原始图像产生字体集。数据库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中,已知文档碎片 Pv^人何而来,并因而,确定查询图{象来自相同的位置。
图15示出单词边界框探测算法的例子。示出在作旋转校正的图像处理之 后的输入图像碎片1510。通常已知为倾斜校正算法,这类技术将文本图像旋 转,以致其沿着水平轴排列。边界框探测算法中的下一步是水平投影轮廓图 1512的计算。以这样的方式,通过已知适应阈值或滑动窗口算法选4奪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中,仅只最后所估计的字母在间隔之上;第二和第三所估计的字母在间 隔之下。另外,将单词1910的特征编码为(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的第一行中水平地排列的单词"upper"、"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 (为 垂直地排歹'J的单词"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)中的五个水平三线形都涉及文档15,而(d) 中仅一个水平三线形涉及文档9。此外,例如,在(g)中,(e)中的十一个 垂直三线形都涉及文档15,而(e)中仅一个垂直三线形涉及文档18。现在同样参考图23,其示出用于将参考图22而描述的水平和垂直三线形信息结
合的技术。使用关于原始的打印页面上的三线形的已知物理位置的信息,该 技术将来自水平和垂直特征提取的表决的列表结合。对于由水平和垂直分类
器的每一个所输出的头M个选"t奪之中共有的每一个文档,将关于文档而表决 的每个水平三线形的位置与关于那个文档而表决的每个垂直三线形相比较。 文档接收等于与任何垂直三线形交迭的水平三线形的数量的许多表决,这里 当两个三线形的边界框交迭时,"交迭"出现。另外,用下文参考图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的描述特别适于三线形的使用,但对于水平 和垂直特征提取/分类的一个或两者,可以使用任何n-gram。例如,在一个 或多个实施例中,对于多分类器特征4是取,可以使用垂直和水平n-gram,这 里11=4。在一个或多个其它实施例中,水平分类器可以基于n-gram^是取特征, 这里n-3,而垂直分类器可以基于n-gram提取特征,这里n=5。
此外,在一个或多个实施例中,分类可以是基于并不是严格地垂直或水 平的邻接关系的。例如,NW、 SW、 NW、和SE邻接关系可以用于提取/分类。
图24示出根据本发明的实施例的另一个文档指紋匹配技术。图24中所 示的"数据库驱动的反馈"技术考虑到通过利用能够与输入相匹配的文档的图像,以确定在其中将来自原始文档的子图像与输入图像匹配的图像分析的 后序步骤,可以提高文档图像匹配系统的准确性。该技术包括复制输入图像 中所呈现的噪声的转换。在这之后可以有模版匹配分析。
图25示出根据本发明的实施例的数据库驱动的反馈的流程。如上文所描 述的,在步骤2510、 2512,首先预处理并识别输入图^^卒片(例如,使用单 词OCR和单词对查找、字符OCR和字符对查找、单词边界框配置),以产生图 像碎片2522的识别的许多候选者。这个列表中的每个候选者可以包含下列项 (doci、 pagei、 xi、 yi ),这里doci为文档的才示识才寻,pagei为文档内的页 面,以及(xi, yi )为那个页面内的图傳J卒片的中心的x-y坐标。
在步骤2514的原始碎片检索算法使用自页面的距离信息将整个输入图 像碎片的大小标准化至可选的固定大小,以确保将其转换为已知的空间分辨 率,例如,100 dpi。上文所描述的字体大小估计算法可以适应于这个任务。 类似地,可以使用已知的自焦点的距离或自焦点的深度技术。同样,能够基 于它们的单词边界框的高度,大小标准化能够按比例地缩放图像碎片。以关 于其接收到的每个文档和页面的标识符和醒R数据库将产生的碎片的边界框 的中心一起,原始碎片检索算法检索画R数据库3400。所产生的碎片的范围 依赖于标准化的输入碎片的大小。以这样的方式,可以获得相同空间分辨率 和维度的碎片。例如,当标准化至100 dpi时,输入碎片能够在其中心的每 一边上延伸50像素。在这种情形,将命令醒R数据库产生中心置于指定的 x-y值的,100像素高和宽的100dpi的原始碎片。
从匿R数据库2524返回的每个原始图像碎片都可以与下列项(doc i , pagei, xi, yi, widthi, heighti, actioni )相关联,这里(doci, pagei, xi, yi)为如上文所描述的,widthi和heighti为以像素计算的原始碎片的 宽度和高度,以及actioni为可能与数据库中doci的条目中的相应区域相关 联的可选的动作。原始碎片检索算法输出2518图像碎片和数据2518的这个 列表,并一起输出其构造的大小标准化的输出碎片。
此外,在一个或多个实施例中,碎片匹配算法2516将大小标准化的输入 碎片与每个原始碎片相比较,并分派度量它们彼此如何匹配的评分2520。本 领域技术人员将意识到由于被用来确保碎片的大小可比较的机制的原因,在
许多情形下,与汉明距离的简单交叉相关性就足够了。此外,这个过程可能 包括模仿输入中所探测到的图像噪声的原始碎片中的噪声的引进。比较也可
51能是任意复杂的,并可能包括任何特征组的比较,该特征组包括两个碎片的 OCR结果和基于字符、字符对、或单词对的数量的等级排序,其中单词对可 能受制于如以前的几何关系。然而,在这种情形,输入碎片与原始碎片之间 共有的几何对的数量可以被估计为或者用作等级排序度量标准。
jt匕夕卜,车命出2520可以是W、 n—元纟且(doci, pagei, xi, yi, actioni, scorei)的形式,这里评分由碎片匹配算法提供,并度量输入碎片与doci, pagei的相应区域相匹配的程度。
图26示出根据本发明的实施例的另一个文档指紋匹配技术。图26中所 示的"数据库驱动的分类器"技术使用初始的分类,产生可能包含输入图像 的一组假设。在数据库3400中查找那些假设,并且自动地为那些假设设计特 征提取加上分类策略。 一个例子是识别输入碎片为或者包含Times字体,或 者包含Arial字体。在这种情形,控制结构714调用衬线/无衬线字体辨别专 用的特征提取器和分类器。
图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产生,并由从无衬线字体辨别衬线而唯一地识别。 另一个例子可能由垂直n-grams产生,并由行分离的精确计算而唯一地识别。
图29示出根据本发明的实施例的数据库驱动的多分类的流程。该流程与 图27中所示的那个类似,但其使用多个不同的特征提取算法2910和2912, 以用分类器2914和2916产生输入图像碎片的独立的等级排序。特征和分类 技术的例子包括上文所描述的水平和垂直单词长度n-grams。每个分类器可 以产生包含至少关于每个候选者的下列项(doci, pagei, xi, yi, scorei ) 的石争片识别的分等级的列表,这里doci为文档的标识符,pagei为文档内的 页面,(xi, yi )为那个页面内的图像碎片的中心的x-y坐标,以及scorei 度量输入碎片与数据库文档中的相应位置相匹配的程度。
可以使用上文参考图25而描述的原始碎片检索算法产生相应于2914和 2916的输出中的碎片识别的列表中的条目的一组原始图像碎片。可以如以前 那样将第三和第四特征提取2918和"20应用于原始碎片和如上文图27中所 描述的那样自动设计和应用的分类器。
仍然参考图29,将那些分类器所产生的等级排序结合,以产生具有条目 (doci, pagei, xi, yi, actioni, scorei )的单个等级排序2924,这里i=l..., 候选者的数量,以及每个条目中的值都如上文所描述的。例如,可以通过基 于它在两个等级排序中的共同位置而分派项目 一个评分的已知的Borda计数 法测量,执行等级排序结合2922。这可以与由单独的分类器所分派的评分结 合,以产生合成的评分。此外,本领域技术人员将注意到可以使用其它等级 排序结合的方法。
图30示出根据本发明的实施例的另一个文档指紋匹配技术。图30中所 示的"视频序列图像累加"技术通过将来自附近的或相邻的帧的数据合并成 一体,而构建图像。 一个例子涉及"超分辨率"。它记录N个临时相邻的帧, 并使用透镜的点扩展功能的知识执行本质上为子像素边缘增强的操作。效果 是增加图像的空间分辨率。此外,在一个或多个实施例中,可以使超分辨率 方法专门化,以强调像洞、角落、和点那样的文本特定特征。进一步的扩展 将使用候选图像碎片的特征,如从数据库3400而确定的,以使超分辨率集成
53功能专门化。
图31示出根据本发明的实施例的另一个文档指紋匹配技术。图31中所 示的"视频序列特征累加"技术在做决定之前,在许多临时相邻的帧之上累 加特征。这利用捕获装置的高采样率(例如,每秒30帧)和用户的意图,其 保持捕获装置指向文档上的相同点至少几秒钟。在每帧上独立地执行特征提 取,并将结果结合,以产生单个统一的特征图。结合过程包括隐含注册步骤。 在文本碎片的视频剪辑的检查上,对于这种技术的需要是相当显然的。在典
同的结果。
图32示出根据本发明的实施例的另一个文档指紋匹配技术。图32中所 示的"视频序列决定结合"技术将来自许多临时相邻的帧的决定结合。这利 用典型的捕获装置的高采样率和用户的意图,其保持捕获装置指向文档上的 相同点至少几秒钟。独立地处理每帧,并产生其本身的分等级的一列决定。 将那些决定结合,以产生输入图像组的单个统一的等级排序。这种技术包括 控制决定结合过程的隐含注册方法。在一个或多个实施例中,上文参考图6 至32所描述的一个或多个各种各样的文档指紋匹配技术可以用于与一个或 多个已知匹配技术结合,这样的结合在此被称为"多层级(或多因素)识别"。 通常,在多层级识别中,使用第一匹配技术在文档数据库中定位一组具有特 定标准的页面,并且然后使用第二匹配技术从该组中的页面之中唯一地识别 碎片。
图33示出根据本发明的实施例的多层级识别的流程的例子。最初,在步 骤3310,使用捕获装置106在感兴趣的文档上捕获/扫描"挑选"特征。该 挑选的特征可以是任何特征,其捕获有效地导致文档数据库内的一组文档的 选择。例如,挑选的特征可以是仅只为数字的条形码(例如,通用产品码 (UPC))、字母^:字条形码(例如,code 39、 code 93、 code 128)、或二维 条形石马(例如,QR石马、PDF 417、 Datamatrix、 Maxicode)。 it匕夕卜,才兆选的对争 征可以是,例如,图形、图像、商标、标志、特别的颜色或颜色的结合、关 键字、或短语。此外,在一个或多个实施例中,挑选的特征可以局限于适合 于捕获装置1%识别的特征。
在步骤3312, —旦在步骤3310已捕获了挑选的特征,基于与所捕获的 挑选的特征的关联,选4奪文档数据库中一组文档和/或文档页面。例如,如果所捕获的挑选的特征为公司的标志,则选择数据库中编索引为包含那个标志 的所有文档。在另一个例子中,数据库可以包含将所捕获的挑选的图像与其 比较的商标库。当在该库中有"命中,,时,选择与所命中的商标相关联的所 有文档,以用于如下文所描述的随后的匹配。此外,在一个或多个实施例中,
文档上那个挑选的特征的位置。例如,与所捕获的挑选的特征相关联的信息 可以指定挑选的图像是否位于文档的右上角,而不是相对立的文档的左下角。 此外,本领域技术人员将注意到,可以由捕获装置106或一些其它从捕 获装置106接收原始的图像数据的部件作出特别的捕获图像包含挑选的特征 的图像的确定。例如,数据库自身可以确定从捕获装置106发送的特定捕获 对象包括挑选特征,作为对其的相应数据库选择与捕获的挑选特征关联的一 组文档。
在步骤3314,在步骤3312已经选择特定组文档之后,捕获装置106继 续扫描并且由此捕获感兴趣的文档的图像。然后,通过使用参考图6-32所 描述的不同的文档指紋匹配技术中的一个或多个,将该捕获的文档的图像与 在步骤3312选择的文档匹配。例如,在步骤3310基于感兴趣的文档上的鞋 图形图像的捕获来将被索引为包括鞋图形的挑选特征的一组文档之后,可以 使用如前所述的多个分类器技术来将随后的感兴趣的文档的捕获图像与所述 的一组选才奪的文档匹配。
由此,使用参考图33的描述的多层识别流处理的实现,通过初始降低页 面/文档的数量可以降低碎片识别次数,其中将所述页面/文档与随后的捕获 的图像匹配。此外,通过首先扫描存在图像、条形码、图形或其它类型的挑 选的特征的位置上的文档,用户可以利用这样的改进的识别次数。通过执行 这样的动作,用户可以快速地降低与随后的捕获的图像匹配的文档的数目。
薩R数据库系统
图34A阐明根据本发明的一个实施例而配置的MMR数据库系统3400的功 能框图。系统3400是为基于内容的检索而配置的,这里以使得能够进行基于 文本的索引(或任何其它可搜索的索引)的查找的方式表示对象之间的二维 几何关系。系统3400采用证据累加,以通过,例如,将特征发生的频率与二 维区域中其位置的可能性结合,而提高查找效率。在一个特定实施例中,数 据库系统3400为文档事件数据库32G (包括PD索引322 )的详细实现,其内容包括由捕获模块318产生的打印文档的电子表示和/或如上文参考图3所讨 论的文档指紋匹配模块226。根据这个公开发明,系统3400的其它应用程序 和配置将很明显。
如能够看到的,数据库系统3400包括接收由MMR特征提取模块3402计 算的描述的画R索引表模块3404、证据累加模块3406、和关系数据库3408 (或任何其它适当的存储设施)。索引表模块3404查询识别每个特征发生的 文档、页面、和那些页面内的x-y位置的索引表。能够通过,例如,顧R索 引表模块3404或一些其它专用的模块,产生索引表。将证据累加模块3406 程序化为或配置为,给定来自索引表模块3404的数据,而计算分等级的一组 文档、页面和位置假设3410。关系数据库3408能够用来存储有关每个碎片 的另外的特征3412。这些包括图5中的504和508,但并不局限于此。通过 在导出关于碎片的签名或指紋(即,唯一的搜索项)中使用碎片内的文本的 二维布置,可相当大程度地增加甚至很小的文本的片段的唯一性。其它实施 例类似地能够在导出关于碎片的签名和指紋中利用碎片内的对象/特征的任 何二维布置,并且关于唯一地识别碎片,本发明的实施例并不意味着局限于 文本的二维布置。图34A中所阐明的数据库系统3400的其它部件和功能包括 反馈导向的特征搜索模块3418、文档呈现应用程序模块3414、和子图像提取 模块3416。这些部件与其它的系统3400部件交互作用,以提供反馈导向的 特征搜索和动态原始图像生成。另外,系统3400包括接收动作的动作处理器 3413。动作确定数据库系统3400执行的动作和其提供的输出。将依次解释这 些其它部件的每一个。
图34B中示出利用这种碎片内的文本的二维布置的醒R特征提取模块 34 0 2的例子。在一个这样的实施例中,将MMR特征提取模块3402程序化为 或配置为采用基于OCR的技术从图像碎片中提取特征(文本或其它目标特 征)。在这个特定实施例中,特征提取模块3402提取文本的碎片的图像中的 单词的x-y位置,并将那些位置表示为其包含的水平或垂直相邻的单词对组。 如果它们是水平相邻的,则将图像碎片有效地转换为由"-"连接的单词对(例 ^口, 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"表示鼎-SE相邻的但由两个 单词的高度分离的具有"4rusl"描述的两个单词。根据这个公开发明,许多 编码方案将会很明显。此外,注意到能够使用数字、布尔值、几何形状、和 其它这样的文档特征,代替单词对,来识别碎片。
图34C阐明根据本发明的一个实施例的示例性索引表组织。如能够看到 的,MMR索引表包括倒置项索引表3422和文档索引表3424。如将依次讨论的, 每个唯一的项或特征(例如,关键点3421 )都指向项索引表3422中的位置, 该项索引表3422保留指向一列记录3423 (例如,Rec#l、 Rec#2,等等)的 特征的函数值(例如,关键点x),并且每个记录都识别文档内的页面上的候 选区域。在一个例子中,关键点和关键点的函数值(关键点x)是相同的。 在另一个例子中,将哈希函数应用于关键点,并且该函数的输出为关键点x。
给定一列查询项,检查经关键点编索引的每个记录,并且识别与所有的 查询项最一致的区域。如果该区域包含足够高的匹配评分(例如,基于预定 的匹配阈值),则确iM叚-没。否则,宣布匹配失败,并不返回区域。在这个示 例性实施例中,如先前所描述的,关键点为或者由"-"或者由"+"分离的 单词对(如,"the-cat"或"cat+the")。将几何关系合并入关键点中的这种 技术本身允许关于二维几何查询的传统的文本搜索技术的使用。
因而,索引表组织将图像碎片中所探测到的特征转换成为代表特征本身 和它们之间的几何关系两者的文本项。这允许传统的文本索? 1标定和搜索方 法的利用。例如,如才艮据这个公开发明将很明显的,由能够被称为"查询项" 的符号"cat+the,,表示垂直相邻的项"cat"和"the"。传统的文本4叟索数 据结构和方法的利用便利了在此所描述的腦R技术在因特网文本搜索系统 (例如,Google、 Yahoo、 Microsoft,等等)之上的移接。
在这个示例性实施例的倒置项索引表3422中,每个记录都使用六个参 数文档识别(DocID)、页面号(PG)、 x/y偏移量(分别为X和Y)、以及矩形区域的宽度和高度(分别为W和H),识别文档内页面上的候选区域。DocID
为当打印文档时,基于时间标记(或其它元数据)而产生的唯一的串。但它
能够是结合装置ID和人员ID的任何串。在任何情形,文档都由唯一的DocIDs 识别,并且具有存储于文档索引表中的记录。页面号为相应于纸张输出的页 码标记,并且从1开始。由左上角的X-Y坐标,以及标准化的坐标系统中的 边界框的宽度和高度为参数表示矩阵区域。根据这个公开发明,许多的文档 内部位置/坐标方案将会很明显,但本发明并不意味着局限于任何特别的一 个。
根据本发明的一个实施例而配置的示例性记录结构使用24-位DocID和 8-位页面号,允许直到一千六百万个文档和四十亿个页面。关于边界框的每 个X和Y偏移量的一个无符号字节都提供30dpi水平的和23dpi垂直的空间 分辨率(假设8.5" xii"的页面,尽管能够使用其它页面大小和/或空间分 辨率)。关于边界框的宽度和高度的类似的处置(例如,关于每个W和H的一 个无符号字节)允许与句点或者"i"上的点一样小的,或者与整个页面(例 如,8.5" x li"或其它) 一样大的区域的表示。因此,每个记录的八个字节
(DocID的3个字节、PG的l个字节、X的l个字节、Y的l个字节、W的1 个字节、和H的l个字节为总共8个字节)能够包含大量的区域。
文档索引表3424包括有关每个文档的相关信息。在一个特定实施例中, 这个信息包括XML文件中文档相关的字段,包括打印分辨率、打印日期、纸 张大小、影子文件名、页面图像位置,等等。因为当给文档编索引时,将打 印坐标转换成为标准化的坐标系统,计算搜索假设并不涉及这个表。因而, 仅关于相匹配的候选区域参阅文档索引表3424。然而,这个决定暗示索引中
若如是需要,当计算搜索假设时,可替代的实施例可以使用文档索引表3424 (或者标准化的坐标的更高的分辨率)。
因而,索引表模块3404运作,以有效地提供使得给定图像查询发生处的 对象(例如,文档页面)和那些对象内的x-y位置的基于内容的检索能够进 行的图像索引。这样的图像索引和关系数据库3408的结合允许使图像碎片与 碎片的特征(例如,附着于碎片的"动作",或者能够扫描以促使与碎片有关 的其它内容的检索的条形码)相匹配的对象的位置。关系数据库3408也提供相反链接提供找到当其从文档图像的 一个部分移动到另 一个部分时,识别算 法将期望看到的特征的方式,其可以相当大程度地提高如在此所讨论的應R 系统中前端图像分析算法的性能。 反馈导向的特征搜索
同样能够将图4象碎片的x-y坐标(例如,图4象石争片的中心的x-y坐标) 和文档及页面的识别输入至反馈导向的特征搜索模块3418。反馈导向的特征 搜索模块3418搜索自图像碎片的中心的给定距离内发生的记录3"3的项索 引表3422。例如,能够通过将关于每个DocID-PG结合的记录3"3存储在以 X和Y值的顺序分类的存储邻接块中,而便利这种搜索。通过关于给定值(依 赖于存储时数据如何分类的X或Y)的二进制搜索,和自具有给定的X和Y 值的所有记录的那个位置的串行搜索,而执行查找。典型地,这将包括围绕 度量给定的文档和页面中W英寸宽和H英寸高的碎片的外围的M英寸环中的 x-y坐标。定位这个环中发生的记录,并通过反跟踪指针定位它们的关键点 或特征3421。如在图34A的3417示出的,报导环中特征的列表和它们的x-y 位置。能够基于输入图像的大小,通过识别系统动态地设置在3415所示的W、 H、和M的值,以致特征3417在输入图像碎片的外面。
例如,对于消除多个假设的歧义,图像数据库系统3400的这样的特征是 很有用的。如果数据库系统3400报导不止一个文档可能与输入图像碎片相匹 配,则围绕碎片的环中的特征将允许识别系统(例如,指纹匹配模块2M或 其它适合的识别系统)通过引导用户在能够消除决定的歧义的方向轻^:地移 动图像捕获装置,而决定哪个文档与用户持有的文档最匹配。例如(假设使 用基于OCR的特征,尽管该概念可扩展至任何几何上编索引的特征组),文档 A中的图像碎片可能径直地位于单词对"blue-xylophone"之下。文档B中 的图^象碎片可能径直地位于单词对"blue-thunderbird,,之下。凝:据库系统 3400将报导这些特征的期望的位置,并且识别系统可能命令用户(例如,通 过用户接口 )将相机向上移动由特征的y坐标和碎片的顶部的差所指示的量。 识别系统能够计算那个差别区域中的特征,并使用来自文档A和文档B的特 4正确定口那一个最匹酉己。侈'B口, i口、另'J系纟充能够用由(xylophone, thunderbird) 组成的特征的"词典,,后处理来自差别区域的0CR结果。与0CR结果最匹配 的单词相应于与输入图像最匹配的文档。后处理算法的例子包括通常已知的
拼写校正技术(例如单词处理器和电子邮件应用程序所使用的那些)。如这个例子阐明,数据库系统3400的设计允许识别系统,通过以避免进
行进一 步的数据库访问的需要的方式匹配特征描述,以有效的方式消除多个 候选者的歧义。可替代的解决方案将为独立地处理每个图像。 动态原始图像生成
同样能够将图像碎片中的位置的x-y坐标(例如,图像碎片的中心的x-y 坐标)和文档及页面的识别输入至关系数据库3408,在其中能够使用它们来 检索那个文档和页面的所存储的电子原文。然后,能够通过文档呈现应用程 序模块3414将那个文档呈现成为位像。同样,子图像提取模块3416使 用由模块3414所提供的另外的"方框大小"值来提取围绕中心的位图的一部 分。这个位图是图像碎片的所期望的外观的"原始"表示,并且其包含输入 图像中应该呈现的所有特征的准确表示。然后能够返回原始碎片作为碎片特 征3412。这种解决方案克服了现有技术所要求的过度存储,该现有技术通过 存储能够随后在要求时被转换为位图数据的压缩非图像表示,而存储图像位 图。
这样的存储方案是有益的,因为其使得能够进行假设-和-检验识别策略 的使用,在其中使用从图像中所提取的特征表示检索通过详细的特征分析消 除歧义后的一组候选者。通常,预测将最佳地消除任意的一组候选者的特征 是不可能的,但从那些候选者的原始图像而确定这一点是很理想的。例如, 可以在两个^t据库文档中定位单词对"the cat"的图像,其中一个最初以 Times Roman字体打印,而另一个以Helvetica字体打印。简单地确定输入 图像是否包含这些字体的一个将识别正确匹配的数据库文档。用像欧氏距离 那样的模板匹配比较度量标准,将那些文档的原始碎片与输入图像碎片相比 较,将识别正确的候选者。
一个例子包括存々者Microsoft Word ". doc"文件的关系数据库3408 (类 似、的方法适于4象postscript、 PCL、 pdf.、或樣i專欠的XML paper specification XPS那样的其它文档格式,或者通过4象ghostscript那样的呈现应用程序, 或在XPS、具有所安装的WinFX部件的微软的Internet Explorer的情形中, 能够被转换成为位图的其它这样的格式)。假定文档、页面、x-y位置、方框 维度、和指示优选的分辨率为600点每英寸(dpi)的系统参数的识别,则能 够调用Word应用程序,以产生位〗象。这将提供6600 ^f亍和5100列的位图。 另外的参数乂=3"、 y=3"、 height=l,'、和width-l"指示数据库应该返回中心
60置于远离页面的左上角x和y上1800像素的点的600像素高和宽的碎片。 多个数据库
当使用多个数据库系统3400时,其每一个都可以包含不同的文档集,能 够使用原始碎片确定两个数据库是否返回相同的文档或者哪个数据库返回了 与输入较好地匹配的候选者。
如果两个数据库返回相同的文档,或许具有不同的标识符3410 (即,原 始文档是相同的是不明显的,因为它们在不同的数据库中分别输入)和特征 3412,则原始碎片将几乎完全相同。这能够通过,例如,用计算不同的像素 的数量的汉明距离,将原始碎片彼此比较而确定。如果原始文档是像素到像 素完全相同的,则汉明距离将为零。如果碎片稍微地不同,如可能由微小的 字体差别所导致的,则汉明距离将稍微地大于零。当计算汉明算符中的图像 差别时,这能够导致围绕字符边缘的"光环"效应。不同版本的原始呈现应 用程序、运行数据库的服务器上不同版本的操作系统、不同的打印机驱动器、 或不同的字体集,都能够导致像这样的字体差别。
能够在来自两个文档中的不止一个x-y位置的碎片上执行原始碎片比较 算法。它们所有的都应该相同,但像这样的采样过程将允许能够克服数据库 系统之间的呈现差别的冗余。例如,当在两个系统上呈现时, 一种字体可能 看起来彻底地不同, -但另一种字体可能完全相同。
如果两个或多个数据库返回不同的文档作为其关于输入图像的最佳匹 配,则能够通过像汉明距离那样的基于像素的比较度量标准,将原始碎片与 输入图像相比较,以确定哪个是正确的。
用于比较来自不止一个数据库的结果的可替代的策略为比较测量每个数 据库所报导的文档中的特征的几何分布的累加阵列的内容。直接由数据库提 供这个累加器,以避免执行分离的原始特征组的查找的需要,是很理想的。 同样,这个累加器应该独立于数据库系统3400的内容。在图34A所示的实施 例中,导出活动阵列3420。能够通过测量它们的值的内部分布,比较两个活 动阵列。
更详细地,如果两个或多个数据库返回相同的文档,或许具有不同的标 识符3410(即,原始文档是相同的是不明显的,因为它们在不同的数据库中 分别输入)和特征3412,则来自每个数据库的活动阵列3420将几乎完全相 同。这能够通过,例如,用计算不同的像素的数量的汉明距离,将阵列彼此
61比较而确定。如果原始文档完全相同,则汉明距离将为零。
配,则能够比较它们的活动阵列3420,以确定哪个文档与输入图像"最佳地,,
匹配。与图像碎片正确地匹配的活动阵列将包含中心近似置于碎片出现处的 位置的高数值的群族。与图像碎片不适当地匹配的活动阵列将包含随机分布 的数值。存在许多熟知的用于测量色散或图像的随机性的策略,例如熵。能
够将这样的算法应用于活动阵列3420,以获得指示群簇的存在的测量。例如, 包含相应于图像碎片的群簇的活动阵列3420的熵将相当地不同于其数值随 i^地分布的活动阵列3420的熵。
此外,注意到,单独的客户机106可能在任何时刻都可访问其内容并不 必定彼此冲突的多个数据库3400。例如,企业可能具有每个都涉及单个文档 的公开可访问的碎片和企业私有的碎片两者。在这样的情形,客户机装置106 将维持按顺序参阅的一列数据库D1、 D2、 D3...,并将经结合的活动阵列3420 和标识符3410生成统一的用户显示。给定的客户机装置106可能显示从所有 的数据库可得到的碎片,或者允许用户选择数据库子集(例如,仅只D1、 D3、 和D7 ),并仅显示来自那些数据库的碎片。可以通过订购服务将数据库添加 至列表,或者当客户机装置106处于某个位置时,使得数据库可以无线地获 得,或者因为数据库是已经被加载到客户机装置106之上的几个的一个,或 者因为已经证明某个用户当前正在使用该装置,或者甚至因为该装置正以某 个模式操作。例如,因为特别的客户机装置的音频扬声器开启或关闭,或者 因为像视频投影机那样的外围装置当前附着于客户机,某些数据库就可能是 可利用的。
动作
进一步参考图34A,醒R数据库340Q接收动作,和来自醒R特征提取模 块3402的一组特征。动作指定命令和参数。在这样的实施例中,命令和其参 数确定所返回的碎片特征3412。以能够容易地被翻译成为文本的包括,例如, http,的格式接收动作。
动作处理器3413接收由证据累加模块3406所确定的关于文档、页面和 页面内的x-y位置的标识符。它也接收命令和其参数。动作处理器3413被程 序化为或被配置为将命令转换成为或者检索数据或者使用关系数据库3408 将数据存储在相应于给定的文档、页面和x-y位置的位置处的指令。在一个这样的实施例中,命令包括RETRIEVE、 INSERT—TO 〈DATA〉、 RETRIEVE—TEXT <RADIUS>、 TRANSFER <AMOUNT>、 PURCHASE、 PRISTINE—PATCH 〈RA訓S[DOCID PAGEID X Y DPI]〉、和ACCESS—DATABASE <DBID>。现在将依 次讨论每一个。
RETRIEVE-检索连接至给定的文档页面中的x-y位置的数据。动作处理器 3413将RETRIEVE命令转换成为检索可能存储在这个x-y位置附近的数据的 关系数据库查询。这能够要求不止一个数据库查询的发布,以搜索包围着x-y 位置的区域。将检索的数据作为碎片特征3412输出。RETRIEVE命令的示例 性应用程序为检索视频剪辑或动态信息对象(例如,能够检索当前信息的电 子地址)的多媒体浏览应用程序。检索的数据能够包括指定将要在薩R装置 上执行的随后的步骤的菜单。它也可能是能够在电话(或其它显示装置)上 显示的静态数据,例如JPEG图像或视频剪辑。能够将参数提供给RETRIEVE 命令,其确定搜索碎片特性的区域。
INSERT_TO <DATA〉-在图像碎片指定的x-y位置插入〈DATA〉。动作处理器 3413将INSERT—TO命令转换成为关于关系数据库的将数据添加至指定的x-y 位置的指令。将INSERT-TO命令的成功完成的确认作为碎片特征3412而返回。 INSERT_TO命令的示例性应用程序为允许用户将数据附着于文本的段落中的 任意x-y位置的腦R装置上的软件应用程序。数据能够是静态多媒体数据, 如JPEG图像、视频剪辑、或音频文件,但它也能够是像菜单那样的指定与给 定的位置相关联的动作的任意的电子数据。
RETRIEVE—TEXT <RADIUS>-检索由图像碎片所确定的x-y位置的<11人01113〉 内的文本。能够将〈RADIUS〉指定为,例如,图像空间中的许多像素,或者能 够将它指定为围绕由证据累加模块3406所确定的x-y位置的许多单词的字 符。〈RADIUS〉也能够涉及经分析的文本对象。在这个特定实施例中,动作处 理器3413将RETRIEVE-TEXT命令转换成为^r索适当的文本的关系数据库查 询。如果〈RADIUS〉指定经分析的文本对象,则动作处理器仅返回经分析的文 本对象。如果经分析的文本对象不位于指定的x-y位置附近,则动作处理器 返回零指示。在可替代的实施例中,动作处理器调用反馈导向的特征搜索模 块,以检索在给定的x-y位置的半径范围内出现的文本。将文本串作为碎片 特征3412而返回。与文本串中的每个单词相关联的可选的数据包括原始文档 中x-y边界框。RETRIEVE-TEXT命令的示例性应用程序为/人打印文档中湘匕选文本短语,以便包括于另一个文档之中。这可能用于,例如,在画R系统上
合成陈述文4牛(例如,以PowerPoint格式)。
TRANSFER <AM0UNT>-^r索整个文档和以能够;故加载至另 一个^:据库上的 形式连接至它的一些数据。〈AMOUNT〉指定所;险索的数据的数量和类型。如果 〈AM0UNT〉为ALL,则动作处理器3413发布命令至数据库3408,其检索与文档 相关联的所有数据。这样的命令的例子包括D函P或UnixTAR。如果〈AM0UffD 为SOURCE,则检索文档的原始源文件。例如,这将检索打印文档的Word文 件。如果〈AM0UNT〉为BITMAP,则检索打印文档的位图的JPEG压缩版(或其 它通常所使用的格式)。如果"M0UNT〉为PDF,则检索文档的PDF表示。依靠 命令名称,以调用应用程序已知的格式,将检索的数据作为碎片特征3412而
而将文档的PDF表示传递至薩R装置的"文档攫取器"。
PURCHASE-;f全索连^l妻至文档中的x-y位置的产品il明。动作处理器3413 首先执行一系列一个或多个RETRIEVE命令,以获得给定的x-y位置附近的产 品说明。产品说明包括,例如,卖主的名字、产品的识别(例如,物料编号)、 和卖主的电子地址。优先于可能位于附近的其它数据类型,而检索产品说明。 例如,如果jpeg存储在由图像碎片所确定的x-y位置,则替代地检索下一个 最接近的产品说明。将检索的产品说明作为碎片特征3"2而输出。PURCHASE 命令的示例性应用程序与打印文档中的广告相关联。薩R装置上的软件应用 程序接收与广告相关联的产品说明,并在将其发送至所指定的电子地址处的 指定的卖主之前,添加用户的个人识别信息(例如,名字、运送地址、信用 卡号码,等等)。
PRISTINE—PATCH 〈RADIUS [D0CID PAGEID X Y DPI]〉-冲全索所指定的文档 的电子表示,并提取具有半径RADIUS,中心置于x-y的图像碎片。RADIUS能 够指定圓环形的半径,但它也能够指定矩形碎片(例如,2英寸高x 3英寸宽)。 它也能够指定整个文档页面。(DocID, PG, x, y)信息能够明白地作为动作 的一部分而提供,或者它能够从文本碎片的图像中导出。动作处理器3413从 关系数据库3408中检索文档的原始表示。那个表示能够是位图,但它也能够 是可呈现的电子文档。将原始表示传递至文档呈现应用程序3414,在此将其 变换成为位图(具有如点每英寸的参数DPI中所提供的分辨率),并然后将它 提供给在其提取所期望的碎片的子图像提取3416。将碎片图像作为碎片特征3412而返回。
ACCESS-DATABASE 〈DBID〉-将凄t据库3400添加至客户才几106的数据库列 表。除了当前在列表中任何现有的数据库之外,客户机现在能够参阅这个数 据库300。 DBID或者指定文件,或者指定涉及指定的数据库的远程网络。
索引表生成方法
图35阐明根据本发明的实施例的用于产生画R索引表的方法3500。能 够,例如,通过图34A的数据库系统3400实施这个方法。在一个这样的实施 例中,例如,通过MMR索引表模块3404 (或一些其它专用的模块),从扫描 或打印文档中产生MMR索引表。能够以软件、硬件(例如,门级逻辑)、固件 (例如,配置有用于实施该方法的嵌入例程的微控制器),或者它们的一些结 合,正如在此所描述的其它模块。
该方法包括接收3510纸质文档。纸质文档能够是任何文档,例如具有任 何数量的页面的便函(如,工作相关、个人的信件)、产品标签(如,罐装商 品、医药、箱装电子装置)、产品说明(如,吹雪机、计算机系统、制造系统)、 产品手册或广告材料(如,汽车、船、度假胜地)、服务描述材料(如,因特 网服务提供者、清洁服务)、书的一个或多个页面、杂志或其它这样的出版物、 从网站打印的页面、手写的笔记、从白板捕获和打印的笔记、或者从任何处 理系统(如,桌上型计算机或便携式计算机、相机、智能手机、远程终端) 打印的页面。
该方法继续产生3512纸质文档的电子表示,该表示包括文档中所示的特 征的x-y位置。目标特征能够是,例如,单独的单词、字母、和/或文档内的 字符。例如,如果扫描原始文档,则首先将其OCR并且提取单词(或者其它 目标特征)和其x-y位置(例如,通过扫描仪127的文档指紋匹配模块226, 的操作)。如果打印原始文档,则索引标定过程接收每个字符(或其它目标特 征)的字体、磅值、和x-y边界框的XML格式的精确表示(例如,通过打印 机116的打印驱动器316的操作)。在这种情形,索引表生成开始于步骤3514, 因为以精确地识别的x-y特征位置接收电子文档(例如,从打印驱动器316)。 根据这个公开发明,除了 XML以外的格式将很明显。通过将它们"打印,,至 其输出被导向文件的打印驱动器,以致并不必定产生纸张,能够将像 Microsoft Word、 Adobe Acrobat、禾口 pos tscr ipt那才羊的电子文档丰lr入凄史4居 库。这触发下文所示的XML文件结构的产生。在所有的情形,XML和原始文档格式(Word、 Acrobat、 postscript,等等)都分派有标识符(添加至数据 库的关于第i个文档的doc i),并且以通过那个标识符,但也基于包括捕获 它的时间、打印的日期、触发打印的应用程序、输出文件的名称,等等的文 档的其它"元数据"的特征,使得能够进行它们稍后的检索的方式,存储在 关系数据库3408中。
这里示出XML文件结构的例子
$docID. xml:
< xml version- "1. 0,, ?> 〈doclayout ID="00001234"> <setup〉
<url>file url/path or null if not known</url>
<date>file printed date</date>
<app>application that triggered print</app〉
<text>$docID. txt</text〉
<prfile〉name of output file</prfile>
<dpi>dpi of page for x, y coordinates, eg. 600</dpi>
〈width〉in inch, like 8. 5</width>
<height>in inch, eg. 11. 0</height>
<imagescale>0. 1 is l/10th scale of dpi</imagescale>
</setup>
<page no="l>
<image>$docID—1. jpeg</iraage>
〈sequence box= "x y w h"〉
<text>this string of text</text>
<font>any font info</font〉
<word box="x y w h"〉
<text〉word text</text〉
<char box="x y w h"〉a</char>
<char box="x y w h">b</char>
<char>l entry per char, in sequence</char〉
</word〉</sequence>
</page〉
</doclayout>
在一个特定的实施例中,单词可以包含自a-z、 A-Z、 0-9的任何字符, 和51%$#的任何一个;所有其它的是分隔符。能够通过索引标定过程所使用的 打印捕获软件(例如,在像数据库32Q服务器那样的服务器上执行的)创 建.xml文件的原始描述。随着系统获得新的文档,实际格式经常演化,并 包含多个元素。
保存打印驱动器(例如,打印驱动器316)所接收的文本的原始序列, 并且除"—鹏$#"之外,基于标点符号强加逻辑单词结构。使用XML文件作为 输入,索引表模块3404遵守页面边界,并首先试图通过;f全查两个连续的序列 之间的垂直交迭的数量,将序列分组成为逻辑行。在一个特定实施例中,如 果两个序列交迭少于它们的平均高度的 一半,则使用行中断发生的试探法。 对于典型的文本文档(例如,Microsoft Word文档),这样的试纟果法相当起 作用。对于具有复杂布局的html页面,可能需要另外的几何分析。然而,只 要能够如通过查询过程产生一致的索引标定项,就不必定要提取完美的语义 文档结构。
基于纸质文档的电子表示的结构,该方法继续3514给纸质文档的每个页 面上的每个目标特征的位置编索引。在一个特定实施例中,这个步骤包括给 纸质文档的每个页面上的每对水平和垂直相邻的单词的位置编索引。如先前 所解释的,水平相邻的单词为一行内的相邻单词对。垂直相邻的单词为垂直 地排列的相邻行中的单词。能够类似地利用页面的其它多维方面。
该方法进一步包括存储3516与每个目标特征相关联的碎片特征。在一个 特定实施例中,碎片特征包括附着于碎片的动作,并存储在关系数据库中。 如先前所解释的,这样的图像索引和存储设施的结合允许与图像碎片和碎片 的特征相匹配的对象的位置。特征能够是与路径有关的任何数据,例如元数 据。特征也能够包括,例如,将实施特定的功能的动作,能够被选择以提供 对与碎片有关的其它内容的访问的链接、和/或能够被扫描或处理,以促使与 碎片有关的其它内容的检索的条形码。关于搜索项生成,给出更精确的定义, 这里仅观察行结构的一段。对于水平相邻的对,通过用"-"分隔符连接单词, 形成查询项。使用"+,,连接垂直对。若如是需要,能够以其原始形式使用单词,以保存大写(这创建更多唯一的项,但同样产生具有另外的查询发布的 较大的索引,以考虑像大小写敏感性这样的事情)。索引标定方案允许将相同 的搜索策略应用于或者水平的或者垂直的单词对,或者两者的结合。任何一 种情况的逆向文档频率可说明项的辨别能力。 j正据累加方法
图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 = Norm—geometric-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)所描述的边界框中两个点之间的最大欧氏距 离。关于环区内的每个单元,而计算由单词对的逆向文档频率和单元与环区 的中心之间的标准化的几何距离的乘积所确定的权重。这使接近于中心的单 元权重高于较远处的单元。在由该算法处理每个单词对之后,在AccuW阵列 中搜索具有最大值的单元。如果那个值超过了阈值,则将其坐标作为图像碎 片的位置而报导所述单元的坐标。活动阵列存储累加的norm-dist值。因为 不通过idf将它们缩放,它们不考虑包含特别的单词对的数据库中的文档的 数量。然而,它们的确提供与给定的一组单词对最匹配的x-y位置的二维图 像表示。此外,活动阵列中的条目独立于数据库中所存储的文档。能够将通 常内部使用的这种数据结构导出3420。
根据本发明的一个实施例,如这里所示计算标准化的几何距离。<formula>formula see original document page 71</formula>
计算单词对的位置与环区的中心之间的欧氏距离,并返回这与可能已经
计算的最大距离之间的差。
在通过证据累加算法处理每个单词对之后,在Accum2阵列中搜索具有最 大值的单元。如果那个值超过了预定的阈值,则将其坐标作为图像碎片的中 心的位置而报导。
画R打印体系结构
图37A阐明根据本发明的一个实施例的固R部件的功能框图。基本的腦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⑧文件、简单文本文件、1更携式文档才各式(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,以显示给用户。
捕获模块37 35为在文档的打印表示上执行特征提取和/或坐标捕获,以 致能够检索打印页面上的特征和图形的布局,的软件应用程序。可以在打印 时刻自动地捕获布局,即,打印页面上的文本的二维布置。例如,捕获模块 3735执行所有的文本和绘图打印命令,并且另外,截取并记录打印表示中每
72个字符和/或图像的x-y坐标和其它特征。根据一个实施例,捕获模块3735 为如在此所描述的打印捕获DLL,允许现有的DLL的功能的添加或更改的转 发动态连接库(DLL)。参考图44描述捕获模块3735的功能的更详细的描述。
本领域技术人员将识别捕获模块3735连接至浏览器3715的输出,以便 数据捕获。可替代地,可以在打印机驱动器内直接实现捕获模块3735的功能。 在一个实施例中,捕获模块3735等同于如参考图3所描述的PD捕获模块318。
Page-desc. xml 3740为可扩展标记语言("XML',)文件,对于通过捕获 模块3725处理的文本相关的函数调用,可将文本相关的输出写入其中。 page-desc. xml 3740包括逐个单词逐个字符的关于所有的打印文本的文档的 坐标信息,以及热点信息、打印机端口名称、浏览器名称、打印的日期和时 间、和每英寸的点数(dpi)和分辨率(res)信息。page —desc. xml 3740存 储于,例如,数据存储器3750中。数据存储器3750等同于参考图34A所描 述的醒R数据库3400。图42A-B更详细地阐明HTML文件的page—desc. xml 3740的例子。
hotspot.xml 3745为当打印文档时(例如,如先前所讨论的,通过打印 驱动器316的4喿作),所创建的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打印软件
733760。尽管现在将描述MMR打印软件3760为包括这些不同的部件,本领域技 术人员将识别,固R打印软件3760能够具有从一个至它们的所有的任何数量 的这些部件。MMR打印软件3760包括变换模块3765、嵌入模块3768、分析 模块3770、转换模块3775、特征提取模块3778、注解模块3780、热点模块 3785、呈现/显示模块3790、和存储模块3795。
变换模块3765使得能够进行将源文档转换成为图像化的文档,从其中能 够提取特征表示,并且是这样做的一种方法。
嵌入模块3768使得能够进行相应于电子文档中的热点的标志的标记的 嵌入,并且是这样做的一种方法。在一个特定实施例中,嵌入的标记指示热 点的开始点和热点的结束点。可替代地,能够使用在实施例标记周围的预定 的区域,来识别电子文档中的热点。能够4吏用各种各样的这样的标记方案。
分析模块3770使得能够进行关于指示热点的开始点的标记,而分析电子 文档(已经发送至打印机的),并且是这样做的一种方法。
转换模块3775使得能够进行至电子文档的一部分的转换规则的应用程 序,并且是这样做的一种方法。在一个特定实施例中,部分为指示热点的开 始点的标记与指示热点的结束点的标记之间的字符流。
特征提取才莫块3778使得能够进行相应于文档和热点的打印表示的特征 提取和坐标捕获,并且是这样做的一种方法。坐标捕获包括使用转发动态连 接库分支至打印命令,并且分析相应于热点或经转换的字符的坐标子集的打 印表示。特征提取模块3778使得能够实现根据一个实施例的捕获模块3735 的功能。
注解模块3780使得能够接收共享注解和其附属的与共享注解相关联的 文档的一部分的标志,并且是这样^:的一种方法。接收共享注解包括从终端 用户以及从SDA服务器接收注解。
热点模块3785使得能够进行一个或多个剪辑与一个或多个热点的关联, 并且是这样做的一种方法。热点模块3785也使得能够进行通过首先标志文档 内的热点的位置,并定义剪辑以与热点相关联的热点定义的形成。
呈现/显示模块3790使得能够呈现或显示文档或文档的打印表示,并且 是这样做的一种方法。存储模块3795使得能够进行各种各样的文件、包括页 面布局、图像化的文档、热点定义、和特征表示的存储,并且是这样做的一 种方法。软件部分3765-3795不需要分离的软件模块。所示出的软件配置仅意味 着作为例子;如根据这个公开发明将很明显的,通过和在本发明的范围内可 期望其它配置。
在文档中嵌入热点
图38阐明根据本发明的一个实施例的在文档中嵌入热点的方法的流程。 根据该方法,在文档中嵌入3810相应于文档内的热点的标志的标记。在 一个实施例中,接收包括热点标志位置的文档,以在浏览器中显示,例如, 在浏览器3715从源文件3710接收文档。热点包括一些文本或像图形或照片 那样的其它文档对象,以及电子数据。电子数据能够包括像音频或视频那样 的多媒体,或者其能够是当访问热点时将在捕获装置上执行的一组步骤。例 如,如果文档为超文本标记语言(HTML )文件,则浏览器3715可以是Internet Explorer,并且标志可以是HTML文件内的统一资源定位符(URL )。图39A阐 明具有URL 3920的这样的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页面,插件"M在URL的 开始("here")插入3810基准标记"b0",并在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的3争 越标签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,允许客户AM吏用DLL gdi 32. dl 1绘图的任何Windows应用程 序捕获打印输出,并且其仅需要在局域计算机上执行,即使打印至远程服务 器。根据一个实施例,将gdi32—mmr. dll重命名为gdi32. dll,并复制至C: \Windows\system32,促使它监控来自几乎每个Windows应用程序的打印。根 据另一个实施例,将gdi32—顯r. dll命名为gdi32.dll,并复制至关于其监 控打印的应用程序的主目录。例如,用于监控Windows XP上的Internet Explorer的C: \Program\Fi les\Internet Explorer。 在这个例子中,i"又这个 应用程序(例如,Internet Explorer )将自动地调用打印捕获DLL中的函数。
图44阐明根据本发明的一个实施例的转发DLL所使用的过程的流程图。 打印捕获DLLgdi32—mmr. 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-隨r. dll接下来确定4425调用是否为文本相关的函数调用。200 个监控gdi32.dll调用的近似12个是文本相关的。如果它不是,则跳过步骤 4430。如果函数调用是文本相关的,则将文本相关的输出写入4430 xml文件, 在此4皮称为page-desc. xml 3740,如图37A中所示。page —desc. xml3740存储 于,例如,数据存储器3750。
图42A和42B示出关于参考图39A和40A所讨论的HTML文件3910例子 的示例性page—desc. xml37復page—desc. xml3740包括逐个x, y,宽度和 高度,逐个单词4210 (例如,Get)以及逐个字符4220 (例如,G)的所有的 打印文本的坐标信息。坐标是以点的形式存在的,其为相对于页面的左上角 的像素的打印等同物,除非另外指明。page-desc. xml3740也包括处于"序 列"形式的热点信息,例如开始标记4230和结束标记4240。对于跨越页面 边界的热点(例如,页面N至页面N+1的),其在两个页面(N和N+1)上都 示出;在两种情况中的热点标识符都是相同的。另外,page-desc. xml 3740 中包括其它重要的信息,例如打印机端口名称4250,其能够对如下产生重大 影响所产生的.xml和.jpeg文件、浏览器3715 (或应用程序)名称4260、和打印的日期及时间4270、以及关于页面4280和可打印区域4290的每英寸 的点数(dpi )和分辨率(res )。
再次参考图44,紧接着调用不是文本相关的确定,或者紧接着将文本相 关的输出写入4430 page—desc. xml3740, gdi32—mmr. dl 1才丸4亍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中所示。在这个例子中,当打印文档日t,创建hotspot. xml 3745。 图43中的例子示出热点0出现在x-1303, y=350,以及为19(H象素宽和71 像素高。同样示出热点的内容,即,http: //www. ricoh. com。
根据捕获模块3820的可替代的实施例,Microsoft XPS (XML打印说明) 打印驱动器中的过滤器,通常已知为"XPSDrv过滤器",接收文本绘图命令, 并创建如上文所描述的page—desc. xml文4牛。
明显可察觉的热点
图45阐明根据本发明的一个实施例的转换相应于文档中的热点的字符 的方法的流程图。该方法以指示终端用户和呈现热点的固R识别软件两者的 方式,更改打印文档。
最初,接收4510将要打印的电子文档作为字符流。例如,可以在打印机 驱动器或在能够过滤字符流的软件模块接收4510文档。在一个实施例中,在 浏览器3715从源文件3710接收4510文档。图46阐明根据本发明的一个实 施例的文档4610的电子版的例子。这个例子中的文档4610具有两个热点, 一个与"在下文列出"相关联,并且一个与"可能的现有技术"相关联。根 据一个实施例,对于终端用户,热点不是明显可察觉的。可以通过参考图38 所描述的坐标捕获方法,或者根据在此所描述的其它方法的任何一个,建立热点.
为开始标记分析4520文档,指示热点的开始。开始标记可以是如先前所
描述的基准标记,或者是任何其它单独可辨别的识别热点的标记。 一旦找到
开始标记,就将转换规则应用于4530文档的一部分,即,紧接着开始标记的 字符,直到找到结束标记。根据一个实施例,转换规则促使相应于热点的文 档的一部分的可见的更改,例如通过更改字符字体或颜色。在这个例子中, 可以将原始字体,例如,Times New Roman,变换成为不同的已知字体,例如, OCR-A。在另一个例子中,以不同的字体颜色呈现文本,例如,blue #F86A。 根据一个实施例,转换字体的过程与上文所描述的过程类似。例如,如果文 档4610是HTML文件,则当在文档4510中遇到基准标记时,就在HTML文件 中替代字体。
根据一个实施例,通过浏览器3715的插件3720完成转换步骤,产出经 更改的文档3730。图47阐明根据本发明的一个实施例的打印更改的文档4710 的例子。如所阐明的,从剩余的文本,热点4720和4730是视觉上可辨别的。 特别地,基于其不同的字体,热点4720是视觉上可辨别的,并且基于其不同 的颜色和下划线,热点4730是视觉上可辨别的。
接下来,将具有转换的部分的文档呈现4540成为页面布局,包含电子文 档和电子文档内的热点的位置。在一个实施例中,呈现文档是打印文档。在 一个实施例中,根据在此所描述的这样做的方法的任何一种,呈现包括在具 有转换的部分的文档上执行特征提取。在一个实施例中,特征提取包括,根 据一个实施例,响应打印命令,捕获相应于电子文档的页面坐标。然后为相 应于转换的字符的坐标的子集分析电子文档。根据一个实施例,图37A的捕 获模块3735执行特征提取和/或坐标捕获。
MMR识别软件使用相同的转换规则预处理每个图像。首先它寻找遵循规 则的文本,例如,其为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,例如,通过加亮。根据一个实施例,当点击标志4930 或将鼠标移过去时,注解494Q显示。热点。坐标捕获的细节是根据关于在此所描述的那个目的的方法的任何一个 的。
然后,呈现4850包括热点的打印表示的页面布局。根据一个实施例,呈 现4850为打印文档。图49C阐明根据本发明的一个实施例的样本打印网页 4950。打印网页布局4950包^r如所标明的热点4930,然而打印布局4950中 的行中断不同于网页4920。在这个例子中,热点4930的边界在打印布局4950 上是不可见的。
在可选的最后的步骤,将共享注解局部地存储于,例如,数据存储器3750, 并且使用其与打印文档4950中的热点4930的关联标定索引。也可以将打印 表示局部地保存。在一个实施例中,打印行为触发局部复制本的下载和创建。
图^^化的文档的热点
图50A阐明根据本发明的一个实施例的添加热点至图像化文档的方法的 流程图。该方法允许在扫描之后,将热点添加至纸质文档,或者在打印呈现 之后,将热点添加至符号电子文档。
首先,将源文档变换5010为图像化的文档。根据一个实施例,在浏览器 3715从源文件3710接收源文档。变换5010是通过产生在其上能够执行特征 提取的文档的任何方法,以产生特征表示。根据一个实施例,将纸质文档扫 描以成为图像化的文档。根据另一个实施例,使用适当的应用程序呈现电子 文档的可呈现页面样本。例如,如果可呈现页面样本是PostScript格式,则 使用Ghostscript。图51A阐明示出已根据一个实施例而扫描的新闻纸页面 5110的一部分的用户接口 5105的例子。主要的窗口 5115示出新闻纸页面 5110的放大的部分,并且略图5120示出正显示页面的哪个部分。
接下来,将特征提取应用5020于图像化的文档,以创建特征表示。为这 个目的可以使用在此所描述的各种各样的特征提取方法的任何一种。根据一 个实施例,通过参考图37A所描述的捕获模块3735执行特征提取。然后将一 个或多个热点5125添加5030至图像化的文档。根据多种多样的实施例,可 以预先定义或可需要定义热点。如果已经定义了热点,则定义包括页面号码、 页面上的热点的边界框的坐标位置、以及电子数据或附着于热点的交互作用。 在一个实施例中,如图43中所阐明的,热点定义釆取hotspot. xml文件的形 式。如果还未定义热点,则终端用户可以定义热点。图50B阐明根据本发明 的 一 个实施例的定义用于添加至图像化文档的热点的方法的流程图。首先,
选择5032候选热点。例如,在图51A中,终端用户已使用边界框5125选择 了文档的一部分作为热点。接下来,关于给定的数据库,在可选的步骤5034 确定热点是否是唯一的。例如,在周围的n"xn"碎片中应该存在足够的文本, 以唯一地识别热点。n的典型值的例子为2。如果对于数据库而言,热点不是 足够地唯一,则在关于如何处理含糊不清的一个实施例中,将可选项呈现给 终端用户。例如,用户接口可以提供可供选择的项,例如选择较大的区域, 或者接受含糊不清,但将它的描述添加至数据库。其它的实施例可以使用定 义热点的其它方法。
一旦选择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第一文档或第一文档的表示而开始。获取第 一文档的示例性方法包括下列各项(1)通过经由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)执行0CR图像化操作,并且相 应地给字符和/或单词的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第一文档和第二 文档之间的文档或模式匹配。在一个实施例中,这通过执行第二文档至第一
83文档的文档指紋匹配而进行。通过查询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,该方法5200 完成并结束。
图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所描述的,MMR消费者5312为任何醒R 用户110的代表。
多媒体公司5314为数字多媒体产品的任何提供者,例如Blockbuster Inc
84(Dallas, TX),其提供数字电影和视频游戏,和美国(纽约,NY)的索尼公 司,其提供数字音乐、电影、和TV展示。
打印机用户5316是为了产生打印纸质文档,利用任何种类的任何打印机 的任何单独的实体。例如,醒R消费者5312可以是打印机用户5316或文档 打印4几5330。
蜂窝式电话服务提供者5318为任何蜂窝式电话服务提供者,例如 Verizon Wireless (Bedminster,NJ) 、 Cingular Wireless(Atlanta, GA)、 T-Mobile USA (Bel levue, WA)、和Sprint Nextel (Reston. VA)。
硬件制造商5320为任何硬件装置的制造商,例如打印机、±奪窝式电话、 或PDA的制造商。示例性的硬件制造商包括Hewlett-Packard (Houston, TX)、 Motorola, Inc, (Schaumburg, IL)、和美国(纽约,NY)的Sony Corporation。 硬件零售商5322为任何硬件装置的零售商,例如打印机、蜂窝式电话、或 PDA的零售商。示例性的硬件零售商包括RadioShack Corporation (Fort Worth, TX) 、 Circuit City Stores, Inc. (Richmond, VA)、 Wal—Mart (Bentonville, AR)、牙口 Best Buy Co. (Richfield, MN),〈旦并不 局限于此。
金融机构5324为任何金融机构,例如用于处理银行账户以及资金至和从 其它银行或金融机构的传递的任何银行或信用合作社。信用卡处理者5326为 任何管理信用卡认证和购买交易的批准过程的信用卡机构。示例性的信用卡 处理者包括ClickBank,其为CIick Sales Inc, (Boise ID)的服务、Sharelt! Inc. (Eden Prairie, MN)、和CCNow Inc. (Eden Prairie,MN), i"旦并不局限于 此。
文档出版者5328为任何文档出版公司,例如,Gregath Publishing Company (Wyandotte,OK) 、 Prentice Hall (Upper Saddle River,NJ)、 和 Pelican Publishing Company (Gretna, LA) , j旦并不局限于》匕。文档4丁印才几 5330为任何文档打印公司,例如,PSPrint LLC (Oakland CA)、 PrintLizard, Inc. (Buffalo, NY)、和Mimeo, Inc. (New York, NY),但并不局 限于此。在另一个例子中,文档出版者5328和/或文档打印机5330为产生并 分布新闻纸或杂志的任何实体。
如熟知的,履约商5332为专门适用于订单的履行的任何第三方物流仓 库。示例寸生的履约商包4舌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),但并不局限于此。
广告7>司 5340为任何广告公司或代理,例如,D and B Marketing (Elhurst, IU 、 BlackSheep Marketing (Boston,MA)、 和Gotham Direct, Inc. (New York, NY),但并不局限于此。
商业网络5370为通过其建立和/或便利商业关系的任何机制的代表。
图54阐明根据本发明的实施例的方法5400,其为通过使用腹R系统100b 而便利的一般化的商业方法。方法5400包括步骤在至少两个实体之间建立 关系,确定可能的商业交易;执行至少一个商业交易并交付关于该交易的产 品或服务。首先,在至少两个商业实体5300之间建立5410关系。例如,可 以在四个广泛的范畴,如(1)應R创建者、(2)薩R分布者、(3)画R用户、 和(4)其它内排列商业实体5300,并且在其内某些商业实体可属于不止一 个范畴。才艮据这个例子,商业实体5300分类如下
画R创建者-醒R服务提供者5310、多媒体公司5314、文档出版者5328、 文档打印机5330、软件提供者5338、和广告公司5340;
薩R分布者-薩R服务提供者5310、多媒体乂>司5314、蜂窝式电话服 务提供者5318、硬件制造商5320、硬件零售商5322、文档出版者5328、文 档打印机5330、履约商5332、有线TV提供者5334、服务提供者5 336、和广 告公司5340;
薩R用户-醒R消费者5312、打印机用户5316和文档打印机5330;以

*其它-金融^4勾5324和信用卡处理者5 326。
例如在这个方法步骤中,在作为,R创建者的固R服务提供者5310,和作为画R用户的腦R消费者5312,和作为固R分布者的蜂窝式电话服务提供 者5318及硬件零售商5322之间建立商业关系。此外,硬件制造商5320与硬 件零售商5322具有商业关系,其两者都为MMR分布者。
接下来,方法5400确定5412具有在步骤5410中所建立的关系的团体之 间可能的商业交易。特别地,在任何两个或多个商业实体5300之间可以发生 多种交易。示例性的交易包括购买信息;购买物质商品;购买服务;购买 带宽;购买电子存储;购买广告;购买广告统计量;运送商品;出售信息; 出售物质商品;出售服务;出售带宽;出售电子存储器;出售广告;出售广 告统计量;租借/出租;以及收集意见/评级/投票。
一旦方法5400已经确定了团体之间可能的商业交易,就使用丽R系统 100来达成5414至少一个商业交易的协议。特别地,在任何两个或多个商业 实体5300之间可能发生作为交易的结果的多种动作。示例性的动作包括购 买信息;接收订单;为了更多的信息点进;创建广告空间;提供局部/远程访 问;主办;运送;创建商业关系;存储私有信息;将信息传递至其它对象; 添加内容;以及^番客。
一旦方法5400已经达成了商业交易的协议,就使用画R系统100交付 5416该交易的产品或服务,例如,至應R消费者5312。特别地,作为在方法 步骤5414中所达成的商业交易的结果,在任何两个或多个商业实体5300之 间可以交换多种内容。示例性的内容包括文本;网页链接;软件;静态照 片;视频;音频;和以上的任何结合。另外,为了便利交易,在任何两个或 多个商业实体5300之间可以利用多种交付机制。示例性的交付机制包括纸 张;个人计算机;网络计算机;捕获装置106;个人视频装置;个人音频装 置;和以上的任何结合。
除如上述实施例中所要求和描述的发明之外,本发明的一个或多个实施 例的至少一个方面提供用于提供混合介质文档的计算机实现的方法。所述方 法包括接收(在索引表处)从纸质文档提取的特征的电子描述。索引表为用 于将纸质文档和在所述文档内的特征的位置,与结合打印的和数字的介质的 混合介质文档相关联的。基于来自索引表的数据,所述方法继续接收捕获在 目标文档中的对象之间的二维关系的查询项,并计算至少一个混合介质文档 和潜在地响应于查询项的位置假设。在一个特定情形下,方法进一步包括存 储与目标文档相关联的、另外的特性。在一个所述情形下,另外的特性包括一个或多个动作,而所述动作包括文本信息的检索、图形信息的检索、执行 过程、执行命令、下订单、检索视频、检索声音、存储信息、创建新文档、 打印文档、和/或显示文档。在另一个特定情况下,接收(在索引表处)从纸 质文档提取的特征的电子描述包括接收从多个纸质文档提取的特征的电子描 述。在另一个特定情况下,计算至少一个混合介质文档和位置假设包括基于 来自索引表的数据,来计算分等级的一组混合介质文档、页面和位置假设。 在另 一个实施例中,接收捕获在目标文档中的对象之间的二维关系的查询项 包括接收从目标文档提取的一组水平和垂直相邻的单词对。在另 一个特定情 形下,索引表包括倒置项索引表,其中在倒置索引表中的、每一个唯一的项 指向一列记录,并且每一个记录在混合介质文档内的页面上识别候选区域。 在一个所述情形下,计算至少 一个混合介质文档和位置假设包括检查由相应 于查询项的一个关键点来编索引的每一个记录,并识别与所有查询项最一致 的区域。如果所识别的区域具有满足匹配标准的、匹配的评分,那么所述方 法可以进一步包括确认相应的混合介质文档和位置假设。在一个特定情形下, 目标文档为纸质文档或所述纸质文档的碎片的图像。本发明的 一个或多个实 施例的至少一个其他方法提供由指令编码的机器可读介质(如, 一个或多个
压缩光盘、软盘、服务器、记忆棒、或硬盘驱动器、R0M、 RAM或适合于存储 电子指令的介质的任何类型),而当由一个或多个处理器来执行时,其促使处 理器执行用于提供混合介质文档的过程。所述过程可以为,例如,相似于这 里所描述的方法的或为其变体。
本发明的一个或多个实施例的至少一个其他方法提供的数据库系统,而 所述系统提供混合介质文档。系统包括索引表,其用于接收从纸质文档提取 的特征的电子描述,并将纸质文档和在所述文档内的特征的位置与将打印的 和数字的介质结合的混合介质文档相关联。系统进一步包括累加器模块,其 基于来自索引表的数据,接收捕获在目标文档中的对象之间的二维关系的查 询项,并计算至少一个混合介质文档和潜在地响应于查询项的位置々i设。在 一个特定情形下,系统包括存储设施(如,关系数据库),其存储与目标文档 相关联的另外的特性。在一个所述情形下,另外的特性包括一个或多个动作, 而所述动作包括文本信息的检索、图形信息的检索、执行过程、执行命令、 下订单、检索视频、检索声音、存储信息、创建新文档、打印文档、和/或显 示文档。在另一个特定情形下,索引表能够接收从多个纸质文档提取的特征的电子描述。在另一个特定情形下,纸质文档包括多个页面,而为了识别混 合介质文档、页面、和在所述页面内的x-y特征位置,来进一步配置索引表。 在另 一个特定情形下,由累加器模块执行的计算至少 一个混合介质文档和位 置假设包括基于来自索引表的数据,来计算分等级的一组混合介质文档、页 面、和位置假设。在另一个特定情形下,由累加器模块执行的接收捕获在目 标文档中的对象之间的二维关系的查询项包括接收从目标文档提取的一组水 平和垂直相邻的单词对。在另一个特定情形下,索引表包括倒置项索引表, 其中在倒置索引表中的、每一个唯一的项指向一列记录,并且每一个记录在 混合介质文档内的页面上识别候选区域。在一个所述情形下,由累加器模块 执行的计算至少一个混合介质文档和位置假设包括检查由相应于查询项的一 个关键来编索引的每一个记录,并识别与所有查询项最一致的区域。如果所 识别的区域具有满足匹配标准的、匹配的评分,那么累加器才莫块可以确认相 应的混合介质文档和位置假设。在另一个所述情形下,索引表进一步包括文 档索引表,其包括对于每一个混合介质文档的相关信息、包括打印分辨率、 打印日期、纸张大小、影子文件名和页面图像位置中的至少一个的信息。在 另 一个特定情形下,由将所提取的特征与所述特征的内部文档位置数据相关 联的特征提取模块,来计算由索引表接收的描述。在一个特定情形下,目标 文档为纸质文档或所述纸质文档的碎片的图像。可以由多个手段,例如软件 (如,在一个或多个计算机可读介质上编码的、可执行的指令)、硬件(如,
门级逻辑,或一个或多个ASIC)、固件(如, 一个或多个有I/O性能的微控
制器和执行于此所描述的功能的、所嵌入的例程)、或其一些结合,来实现系 统功能。例如,在一个或更多的服务器处,或在计算机系统上,或在便携式
装置上,或其一些结合,可以在于此所描述的混合介质实境(画R)系统中实
现数据库系统。
在一个特定实施例中,MMR系统包括以允许使用基于文档的索引的查找 的方式的、由索引表配置来表示在从打印文档提取的对象之间的二维几何关 系的、基于内容的检索数据库。给定来自索引表的数据,能够计算分等级的 一组文档、页面和位置假设。所述技术将在图像碎片中探测的特征有效地转 换成文本项(或其他可搜索的特征),其表示两个特征自身和在它们之间的几 何关系。存储设施可以用于存储有关每一个文档图像碎片的、另外的特性。
在此所呈现的算法并不是固有地与任何特别的计算机或其它设备有关。
89可以根据本发明的实施例程序化或配置各种各样的一般目的和/或特殊目的 的系统。如根据这个公开发明将很明显的,能够使用许多编程语言和/或结构 来实现多种这样的系统。此外,本发明的实施例能够在信息系统或网络上操 作或者与它们一起运作。例如,本发明能够在具有依赖于配置而变化的功能
的单独的多功能打印机或网络打印机上操作。本发明能够与从具有最小的功 能的那些至提供在此所公开的所有的功能的那些的任何信息系统一起操作。
为解释说明和描述的目的,已经呈现了本发明的实施例的前述描述。但 并不意谓着详尽或限制本发明于所公开的精确形式。根据上述教义,许多更 改和变动都是可能的。意谓着本发明的范围并不由这个详细的描述限制,而 是由这个申请的权利要求限制。如熟悉本技术的技术人员将理解的,可以以 其它特定的形式体现本发明,而不背离其精神或本质特性。同样,模块、例 程、特征、属性、方法和其它方面的特别的命名和部分并不是强制性的或重
此外,如对于相关领域普通技术人员将很明显的,本发明的模块、例程、特 征、属性、方法和其它方面能够作为软件、硬件、固件或这三个的任何结合 而实现。同样,在其一个例子为模块的本发明的一个部件作为软件而实现的 任何地方,该部件也能够作为单独的程序、作为较大的程序的一部分、作为 多个分离的程序、作为静态或动态链接库、作为核心可装入模块、作为装置 驱动器、和/或对于计算机编程的领域中的普通技术人员而言,现在或将来已 知的每个和任何其它方式,而实现。另外,本发明决不局限于任何特定的编 程语言中、或关于任何特定的操作系统或环境的实现。另外,本发明的公开 发明意谓着解说性的、但并不是本发明的范围的限制,其在下列权利要求中 阐述。
本发明是基于美国优先申请2005年8月23日所提交的S. N. 60/710, 767、 2006年4月17日所提交的S. N. 60/792, 912、 2006年7月18日所提交的 S. N. 60/807, 654、 2006年7月31日所提交的S. N. 11/461, 147、和2006年7 月31日所提交的S.N. 11/461,164,其全部内容因此结合于此,以供参考。
权利要求
1、一种用于组织和访问在混合介质文档系统中的信息的计算机实现的方法,包括产生所述纸质文档的电子表示;识别捕获所述纸质文档的二维示像的、在所述纸质文档上的特征;识别所述特征的位置;以及由所述特征的、各自的位置来为所述特征编索引,由此产生索引表。
2、 如权利要求1所述的方法,进一步包括接收所述纸质文档的所述预备 步骤。
3、 如权利要求l所述的方法,进一步包括存储与所述特征中的至少 一个相关联的 一个或多个特性。
4、 如权利要求3所述的方法,其中所述一个或多个特性包括一个或多个 动作,而所述动作包括文本信息的检索、图形信息的检索、执行过程、执行 命令、下订单、检索视频、检索声音、存储信息、创建新文档、打印文档、 和显示文档中的至少一个。
5、 如权利要求l所述的方法,其中识别捕获二维示像的、在所述纸质文 档上的特征包括识别水平排列的和垂直排列的对象。
6、 如权利要求l所述的方法,其中识别捕获二维示像的、在所述纸质文 档上的特征包括识别水平的和垂直的单词对。
7、 如权利要求1所述的方法,其中在扫描或打印过程期间执行产生所述 纸质文档的电子表示。
8、 如权利要求1所述的方法,其中识别捕获所述纸质文档的二维示像的、 在所述纸质文档上的特征包括通过检查两个连续的序列之间的垂直交迭的数 量,来将文本的序列分组成为逻辑行。
9、 如权利要求l所述的方法,进一步包括接收捕获在目标文档中的对象之间的二维关系的一个或多个查询项;以及基于来自所述索引表的数据,来计算潜在地响应于所述查询项的至少一 个混合介质文档与位置々支设。
10、 如权利要求9所述的方法,其中在接收捕获在目标文档中的对象之间的二维关系的一个或多个查询项之前 接收所述目标文档;创建目标文档的至少一个碎片的图像;以及 基于所述图像,来产生所述一个或多个查询项。
11、 如权利要求10所述的方法,基于所述图像,来产生所述一个或多个 查询项包括产生从所述图像提^取的、水平的和垂直的单词对。
12、 如权利要求11所述的方法,其中计算至少一个混合介质文档与位置 假设包括将最可能匹配所述目标文档的碎片的、存储的页面定位;以及 计算在所述页面内最可能为所述碎片的中心的位置。
13、 如权利要求12所述的方法,其中将每一个单词对与逆向文档频率相 关联,并且将最可能匹配所述目标文档的至少一个碎片的、存储的页面定位 包括将对于每一个单词对的所述逆向文档频率,累加到按所述单词对呈现于 其上的文档页面编索引的累加器;以及响应于超过阈值的、在所述累加器中的最大值,输出作为对所述碎片的 匹配的所述相应的文档页面。
14、 如权利要求13所述的方法,其中计算在所述页面内最可能为所述碎 片的中心的位置包括将权重添加到在每一个单词对四周的区中的每一个单元,其中由所述单 词对的逆向文档频率与在所述单元和所述区的中心之间的、规范化的几何距 离的乘积来确定对于每一个单元的所述权重;搜索所述累加器的、相应的Accum阵列以寻找具有最大值的所述单元;以及响应于超过阈值的所述最大值,才艮告作为所述碎片的位置的所述单元的 坐标。
15、 如权利要求9所述的方法,其中计算至少一个混合介质文档与位置 假设包括在所述索引表中查找所述一个或多个查询项中的每一个,来检索与每一 个查询项关联的一个或多个^f立置;以及对于每一个识别的位置,来识别一个或多个包含所述位置的候选区域。
16、 如权利要求15所述的方法,其中计算至少一个混合介质文档与位置假设包括识别与所述一个或多个查询项中的全部最一致的、所述一个或多个候选 区域中的一个;以及响应于确定所述一个或多个候选区域中的那个满足预定的匹配标准,确 认所述区域为对所述目标文档的匹配。
17、 一种用指令编码的机器可读介质,当由一个或多个处理器来执行时, 其促使所述处理器来执行用于在混合介质文档系统中组织和访问信息的过 程,所述过程包括 —产生所述纸质文档的电子表示;识别捕获所述纸质文档的二维示像的、在所述纸质文档上的特征; 识别所述特征的位置;以及由所述特征的、各自的位置来为所述特征编索引,由此产生索引表。
18、 如权利要求17所述的机器可读介质,所述过程进一步包括 存储与所述特征中的至少 一个相关联的 一个或多个特性。
19、 如权利要求17所述的机器可读介质,其中识别捕获二维示像的、在 所述纸质文档上的特征包括识别水平的和垂直的单词对。
20、 如权利要求17所述的机器可读介质,所述过程进一步包括 接收捕获在目标文档中的对象之间的二维关系的一个或多个查询项;以及基于来自所述索引表的数据,来计算潜在地响应于所述查询项的至少一 个混合介质文档与位置假设。
21、 一种用于访问在混合介质文档系统中的信息的计算机实现的方法,包括接收捕获在目标文档中的对象之间的二维关系的一个或多个查询项;以及基于来自为混合介质文档的文档特征和特征位置编索引的索引表的数 据,来计算潜在地响应于所述查询项的至少一个混合介质文档与位置假设。
22、 如权利要求21所述的方法,其中在接收捕获在目标文档中的对象之 间的二维关系的 一个或多个查询项之前接收所述目标文档;创建目标文档的至少一个碎片的图像;以及 基于所述图像,来产生所述一个或多个查询项。
23. 如权利要求22的所述方法,其中基于所述图像,来产生所述一个或 多个查询项包括产生从所述图像提取的、水平的和垂直的单词对。
24. 如权利要求23所述的方法,其中计算至少一个混合介质文档与位置 假设包括将最可能匹配所述目标文档的碎片的、存储的页面定位;以及 计算在所述页面内最可能为所述碎片的中心的位置。
25. 如权利要求24所述的方法,其中将每一个单词对与逆向文档频率相 关联,并且将最可能匹配所述目标文档的至少一个碎片的、存储的页面定位 包括将对于每一个单词对的所述逆向文档频率,累加到按所述单词对呈现于 其上的文档页面编索引的累加器;以及响应于超过阈值的、在所述累加器中的最大值,输出作为对所述碎片的 匹配的所述相应的文档页面。
26. 如权利要求25所述的方法,其中计算在所述页面内最可能为所述碎 片的中心的位置包括将权重添加到在每一个单词对四周的区中的每一个单元,其中由所述单 词对的逆向文档频率与在所述单元和所述区的中心之间的、规范化的几何距 离的乘积来确定对于每一个单元的所述权重;搜索所述累加器的、相应的Accura阵列以寻找具有最大值的所述单元;以及响应于超过阈值的所述最大值,报告作为所述碎片的位置的所述单元格 单元的坐冲示。
27. 如权利要求21所述的方法,其中计算至少一个混合介质文档与位置 假设包括在所述索引表中查找所述一个或多个查询项中的每一个,来检索与每一 个查询项关^:的一个或多个位置;以及对于每一个识别的位置,来识别一个或多个包含所述位置的候选区域。
28. 如权利要求27所述的方法,其中计算至少一个混合介质文档与位置 々支设包括识别与所述一个或多个查询项中的全部最一致的、所述一个或多个候选区域中的一个;以及响应于确定所述一个或多个候选区域中的那个满足预定的匹配标准,确 认所述区域为对所述目标文档的匹配。
29、 一种用指令编码的机器可读介质,当由一个或多个处理器来执行时, 其促使所述处理器来执行用于在混合介质文档系统中访问信息的过程,所述 过程包括接收捕获在目标文档中的对象之间的二维关系的一个或多个查询项;以及基于来自为混合介质文档的文档特征和特征位置编索引的索引表的数 据,来计算潜在地响应于所述查询项的至少一个混合介质文档与位置假设。
30、 如权利要求29所述的机器可读介质,其中在接收捕获在目标文档中 的对象之间的二维关系的 一 个或多个查询项之前接收所述目标文档;创建目标文档的至少一个碎片的图像;以及 基于所述图像,来产生所述一个或多个查询项。
31、 如权利要求30所述的机器可读介质,其中基于所述图像,来产生所 述一个或多个查询项包括产生从所述图像提取的、水平的和垂直的单词对。
32、 如权利要求31所述的机器可读介质,其中计算至少一个混合介质文 档与位置假设包括将最可能匹配所述目标文档的碎片的、存储的页面定位;以及 计算在所述页面内最可能为所述碎片的中心的位置。
33、 如权利要求32所述的机器可读介质,其中将每一个单词对与逆向文 档频率相关联,并且将最可能匹配所述目标文档的至少一个碎片的、存储的 页面定位包4舌将对于每一个单词对的所述逆向文档频率,累加到按所述单词对呈现于 其上的文档页面编索引的累加器;以及响应于超过阈值的、在所述累加器中的最大值,输出作为对所述碎片的 匹配的所述相应的文档页面。
34、 如权利要求33所述的机器可读介质,其中计算在所述页面内最可能 为所述碎片的中心的位置包括将权重添加到在每一个单词对四周的区中的每一个单元,其中由所述单 词对的逆向文档频率与在所述单元和所述区的中心之间的、规范化的几何距 离的乘积来确定对于每一个单元的所述权重;搜索所述累加器的、相应的Accum阵列以寻找具有最大值的所述单元;以及响应于超过阈值的所述最大值,报告作为所述碎片的位置的所述单元格 单元的坐标。
35、如权利要求29所述的机器可读介质,其中计算至少一个混合介质文 档与位置假设包括在所述索引表中查找所述一个或多个查询项中的每一个,来检索与每一个查询项关联的一个或多个位置;对于每一个识别的位置,来识别一个或多个包含所述位置的候选区域。识别与所述一个或多个查询项中的全部最一致的、所述一个或多个候选 区域中的一个;以及响应于确定所述一个或多个候选区域中的那个满足预定的匹配标准,确 认所述区域为对所述目标文档的匹配。
全文摘要
公开了混合介质实境(MMR)系统和相关联的技术。MMR系统提供用于形成包括至少两种类型的介质(例如,作为第一介质的打印纸张和作为第二介质的数字内容和/或网页链接)的混合介质文档的机制。在一个特定实施例中,MMR系统包括基于内容的检索数据库,其由索引表配置以允许使用基于文本的索引的查找的方式,来表示在从打印文档所提取的对象之间的二维几何关系。给定来自索引表的数据,能够计算分等级的一组文档、页面、和位置假设。所述技术有效地将在图像碎片中探测的特征转换成文本项(或其他可搜索的特征),其表示特征自身和在它们之间的几何关系两者。存储设施可以用来存储有关每一个文档图像碎片的、另外的特性。
文档编号G06T1/00GK101297318SQ20068003947
公开日2008年10月29日 申请日期2006年8月22日 优先权日2005年8月23日
发明者丹尼尔·G·V·奥尔斯特, 乔纳森·J·赫尔, 伯纳·埃罗尔, 库尔特·皮索尔, 彼得·E·哈特, 李达祥, 杰米·格雷厄姆, 陆霄晔 申请人:株式会社理光
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1