用于电子笔中的数据管理的方法和器件的制作方法

文档序号:6552919阅读:286来源:国知局
专利名称:用于电子笔中的数据管理的方法和器件的制作方法
技术领域
本发明一般涉及数字记录数据的管理,特别是涉及电子笔中的数据管理方法。
背景技术
电子笔可用于产生以电子学方式代表产品表面上的手写输入的信息。一种类型的电子笔通过捕获产品表面上的位置代码的图像工作。基于这些图像,该笔能够以电子学方式记录反映产品表面上的笔移动的一系列位置(笔划(pen stroke))。
WO 00/72230公开了将电子笔划逐个、大致实时地发送到附近的打印机的这种电子笔。打印机将笔划转发到实现专用服务的网络服务器。该服务处理笔划并可致使打印机打印位置编码响应纸(responsesheet)。当笔处于打印机范围外时,笔在内部存储器中缓冲笔划。当笔重新处于打印机范围内时,它以与被直接发送到打印机的笔划相同的形式转移任何被缓冲的笔划。该笔被设计为以与打印机/网络服务器在线通信的方式工作。笔总是依次即严格以产生笔划的次序输出笔划,由此使得使用者明白笔划传输过程。同时,这种操作原理限制笔的效用。

发明内容
本发明的目的是提供与现有的笔相比具有改进的多功能性的电子笔。
一般地,通过根据独立权利要求、由从属权利要求限定的优选实施例的电子笔装置中的方法和器件、电子笔装置和用于与编码的产品表面交互作用的系统至少部分实现本发明的目的。
本发明的第一方面是一种电子笔装置中的方法,该方法包括接收产品表面的图像;从所述图像提取数据;和在在线处理和离线处理中选择性地处理提取的数据;其中,在线处理可操作为在笔装置的通信接口上连续提供提取的数据,并且其中,离线处理可操作为在笔装置的内部存储器中存储提取的数据,并在通信接口上以非连续性次序选择性地提供提取的数据。
本发明的第二方面是一种电子笔装置中的器件,该器件包括从产品表面的图像提取数据的提取处理器,所述图像被笔装置中的图像传感器捕获;和在在线处理和离线处理中选择性处理提取的数据的数据处理器;其中,在线处理中的数据处理器可操作为在笔装置的通信接口上连续提供提取的数据;并且其中,离线处理中的数据处理器可操作为在笔装置的内部存储器中存储提取的数据,并在通信接口上以非连续性次序选择性地提供提取的数据。
本发明的第三方面是一种电子笔装置,该电子笔装置包括用于捕获产品表面的图像的图像传感器;通信接口;和执行第一方面的方法的处理器件。
本发明的第四方面是一种用于与编码的产品表面交互作用的系统,该系统包括第三方面的电子笔装置;可操作为与电子笔的通信接口建立连接的通信接口;控制器;和反馈器件;其中,控制器在电子笔装置提供在线数据时可操作为通过通信接口从笔装置接收在线数据,并与在线数据的接收基本上实时通过反馈器件提供反馈数据。
从以下的详细公开、从所附的从属权利要求以及从附图,本发明的其它目的、特征、方面和优点将十分明显。


现在参照附图详细说明本发明。
图1示出将抽象位置编码图案分割成页单元的可寻址树结构的逻辑分割。
图2是实现本发明的原理的电子笔的截面图。
图3A~3B分别示出用于产生和处理离线和在线数据的信息管理系统和其中的通信路径。
图4示出模板定义和对最终位置编码产品的页面说明的关系。
图5示出用于控制图2的笔的操作的软件模块的系统的实施例。
图6是用于在根据本发明的实施例的电子笔中产生位置数据的处理的总图。
具体实施例方式
概要图6给出根据本发明的实施例的电子笔中的处理的原理总图。笔捕获602具有编码图案的表面的图像。图像被处理604以产生一系列数据项目,一般是每个图像一个位置。这些位置然后基于选择机构被连续输入606到离线处理或在线处理或这两者。在离线处理中,数据项目被存储608在笔中的永久存储器M中。然后,在随后或者一般由笔使用者启动,存储器M基于选择准则被访问610,并且得到的位置从笔中被输出。选择准则一般指示源自编码图案的特定部分的位置。在在线处理中,在从笔中被输出614之前,这些位置至少当笔与外部设备连接时可在临时存储器B中被缓冲612。在线处理操作以连续并且基本上与图像处理一起604实时(real time)输出641这些位置。
离线处理允许笔使用者以独立于任何外部设备的方式产生分别包含由笔产生的笔划的一组电子文件。不管笔产生笔划的特定次序如何,使用者然后都可在随后携带该笔以输出一个或更多个选择的文件或文件的一部分。
另一方面,通过从接收设备通过本地外设、诸如显示器或扬声器或者甚至笔本身给予笔使用者的交互式反馈,在线处理允许笔使用者在笔划由笔产生时直接与笔划交互作用。
在同一个电子笔中同时提供离线和在线操作处理导致笔的多功能性增加。举例来说,由于现在对于笔使用者来说能够实现产生手写数据和与其交互作用的新的、非常有功效的方式,因此使用者体验可得到改善。
抽象图案(abstract pattern)以下说明基于被再分成页单元的抽象位置编码图案的使用。在US6570104、US 6663008和US 6667695中给出这种抽象图案的例子,在此加入它们作为参考。页单元在页单元组的层次中是可单独寻址的。图1示出这样一个例子,即,在该例子中,图案106包含“段”110,这些“段”110又被分成大量的“架(shelve)”111,每个“架”111包含大量的“书(book)”112,这些“书”112被分成大量的又称为“图案页”的上述页单元113。适当地,在上面的图案层次的一个等级内,所有的图案页具有相同的格式。例如,一些架可包含A4格式的图案页,而其它的架包含A5格式的图案页。特定图案页在抽象图案中的位置可被记为段.架.书.页(segment.shelf.book.page)形式的页面地址,例如,99.5000.1.1500,多少类似于IP地址。为了处理效率的原因,页面地址的内部表示可以不同,例如,作为预定长度例如64位的整数被给出。
在一个例子中,各个段包含多于26,000,000个的图案页,每个图案页具有约50×50cm2的尺寸。在一个实施例中,至少一个这种段被分成5175个架,每个架包含分别具有2,517个页的2个书。
每个图案页可被视为编码图案的实际子集,或被视为通过子集被编码的绝对位置。每个这种绝对位置可被表示为整个图案的坐标系统114中的整体位置,或被表示为逻辑位置,即,页地址和图案页内的坐标系统115中的局部位置。
适当的电子笔可将其在位置编码产品上的移动记录为一系列整体位置(即,整体笔划),或记录为页地址和相应图案页上的一系列局部位置(即,寻址的笔划)。
以下说明也基于包含与一个或更多个图案页对应的位置代码的各个产品。但应注意,产品上的位置代码不需要符和图案页。因此,来自一个或更多个图案页的一个或更多个子集可被任意配置在产品上。由于产品上的位置代码与在包含特定位置的电子笔划上选择性地操作的一个或更多个功能相关,因此产品还可具有嵌入的功能。
在一个这种实施例中,笔的功能可至少部分由在位置编码图案的特定部分上操纵笔的使用者控制。因此,笔可存储限定笔如何对从位置编码图案的不同部分(功能区)记录的信息进行操作的一个或更多个模板。在一个实施例中,例如段或架的页层中的特定页单元组与给定的模板定义相关,该模板定义因此对该特定页单元组内的所有图案页有效。模板限定可影响笔的操作的任何功能区的尺寸、布置和功能。这些功能区被称为“pidgets”。图4示出在图案页402上布置的模板400,表示不同pidgets 400的布置。
在模板中,图案页中的所有没被任何pidget占据的位置都被限定为属于绘制区,该绘制区因此可被视为内在pidget。在绘制区中检测的位置被笔解释以被记录为笔划。
Pidget可例如(i.a.)指示触发器功能、服务选择功能、器件选择功能、局部动作功能或反馈功能。如将在下面进一步解释的那样,触发器功能触发笔以暴露数据。服务选择功能识别可传输影响笔对记录的位置的处理的上下文信息(例如,电子邮件、传真、SMS)和/或影响笔对要被处理的位置的选择的内容信息(例如,页、书、架)的服务。器件选择功能识别笔的连接器件(例如,PC、移动设备、LAN接入点)。局部动作功能启动影响笔存储器的动作。反馈功能使笔激活诸如振动器、显示器或扬声器的内部MMI。
在一个实施例中,模板通过pidget ID、图案页402内的局部位置中的尺寸和布置限定各个pidget 404(图4)。Pidget ID是确定pidget功能的16位标识符。Pidget ID包含pidget类型(8~15位)和pidget号(0~7位)。Pidget类型识别上述功能,而pidget号可识别子功能。
上述触发器pidget可以为特定或通用的。特定触发器pidget具有通过pidget号同时识别特定连接器件和特定服务的pidget ID。每当笔记录这种特定触发器pidget内的位置时,就能够实现数据的暴露。通用触发器pidget具有不识别特定连接器件和/或特定服务的pidget ID。为了触发数据的暴露,必须通过记录相应的位置并形成同时识别有效服务和有效连接器件的触发器pidget ID的笔与器件选择pidget和/或服务选择pidget结合使用通用触发器pidget。
在一个实施例中,例如段的页层中的特定页单元组与一个或更多个功能属性有关,这一个或更多个功能属性因此对该特定页单元组内的所有图案页有效。一个这种属性是对笔指示落在页单元组内的记录位置应被实时输出到外部设备的STREAMING属性。页单元组的DO_NOT_STORE属性使笔避免存储落在该页单元组内的记录的笔划。其它的功能属性可用于将页单元组分成不同的类型,例如,分成FORMS或NOTEPADS。一般而言,功能属性可对于页层中的任何页单元组被设定,并可提供将综合逻辑与由模板提供的逻辑分开的优点。因此,功能属性提供第二等级的逻辑,该逻辑可以以与模板逻辑无关的方式被设定并且对于图案页的整个范围对笔控制系统可用。
电子笔图2示出上述的笔200的实施例,该笔200具有限定窗口或开口204的笔状外壳或壳体202,图像通过该窗口或开口204被记录。外壳包含照相机系统、电子系统和电源。
照相机系统206包含至少一个照明光源、透镜配置和光学图像读取器(图中未示出)。合适地为发光二极管(LED)或激光二极管的光源通过红外辐射照亮可通过窗口204被观察的区域的一部分。被观察的区域的图像通过透镜配置被投影到图像读取器上。图像读取器可以为被触发以一般为约70~100Hz的固定或可变速率捕获图像的两维CCD或CMOS检测器。
用于传感器器件的电源有利地为电池208,该电池208可替代性被主电源(未示出)替代或补充。
电子系统包含与存储器块212连接的控制单元210。控制单元210对电子笔中的不同功能负责,并可有利地由诸如CPU(“中央处理单元)的市售微处理器、由DSP(“数字信号处理器”)或由诸如FPGA(“现场可编程门阵列”)的一些其它可编程逻辑器件或替代性地由ASIC(“专用集成电路”)、离散模拟和数字部件或上述部件的一些组合实现。存储器块212优选包含不同类型的存储器,诸如工作存储器(例如,RAM)和程序代码和永久存储存储器(非易失性存储器,例如,闪速存储器)。为了向笔控制系统提供电子笔的操作,相关的软件被存储在存储器块212中并由控制单元210执行。
外壳202还承载允许使用者通过在表面上淀积的基于颜料的标记墨水以物理的方式在表面上写或画的笔尖214。为了避免干扰电子笔中的光电检测,笔尖214中的标记墨水适当地对照明辐射透明。接触传感器216在操作上与笔尖214连接以检测笔在什么时候被施加于表面上(落笔)和/或从表面上提起(抬笔),并任选地允许确定施加力。基于接触传感器216的输出,照相机系统206被控制为在抬笔和落笔之间捕获图像。这些图像被控制单元210处理,以产生代表笔在被编码产品上的绝对位置和移动的一系列位置。
产生的位置可通过内置的通信接口218被笔输出到附近的或远程的装置,诸如计算机、移动电话、PDA、网络服务器等。因此,通信接口218可一般通过计算机、电话或卫星通信网络向部件提供有线或无线短程通信(例如,USB、RS232、无线电传输、红外传输、超声传输、感应耦合等)和/或向部件提供有线或无线远程通信。
笔还可包含为了使用者反馈被选择性地激活的MMI(人机界面)220。MMI可包含显示器、指示灯、振动器、扬声器等。
笔还可包含一个或更多个可激活和/或控制它的按钮222。
离线系统在离线处理(离线模式)中,笔可被操作为通过选择性地从其存储器块检索笔划数据并将该数据加入暴露于外部设备的文件对象中输出离线数据。具体而言,暴露离线数据包含在空间上核对存储在存储器块212中的笔划数据(图2)。一般地,笔划数据通过页面地址被核对。各个文件对象可包含来自一个或更多个特定图案页的笔划数据。一般地,离线数据不代表笔划被笔记录的时间发生顺序,而是记录在位置编码图案的特定部分上的所有笔划数据的集合。在文件对象内,对于各个图案页,笔划数据可以被或不被按时间发生顺序配置。
图3A是从电子笔接收离线数据的信息管理系统的总图。
在一个实施例中,如图3A中的路径300A~300C所示,文件对象300从笔200被推送到给定的本地或远程接收设备302、304上的通信接口301。经由通信网络310直接在笔200和远程设备304之间建立路径A。通过本地设备302并经由网络310从笔200到远程设备304建立路径300B。在笔200和本地设备302之间建立路径300C。在另一实施例中,文件对象300被暴露以沿路径300A~300C中的任何一个通过接收设备302、304从笔200中被拉出。在另一实施例中,笔200不产生任何文件对象。作为替代,接收设备302、304能够向笔200传送数据请求。在从笔200接收请求的数据后,设备302、304产生包含该数据的文件对象300或从其中导出的数据。
本地或远程接收设备可包含流程控制器306,该流程控制器306如路径300C1、300C2例示的那样将文件对象300或从其中导出的数据转发给在本地驻留在接收设备上或驻留在远程设备上的应用程序308。在US 2003/0046256、WO 03/056420和WO 03/105064中给出这种流程控制器的例子。在从笔到应用程序的数据传送中可包含多于一个的流程控制器。
流程控制器306可被配置为从文件对象300提取转发数据,并例如通过HTTP(超文本传输协议)邮递(post)、SMTP(简单邮件传输协议)、X.400、MMS(多媒体信息服务)、SMS(短信服务)、数据库同步等将适当的数据转发给目的地地址。可以通过转发数据直接或间接给出目的地地址。在一个实施例中,流程控制器306可因此从文件对象提取明确的目的地地址。在另一实施例中,流程控制器306可包含将地址指示符与目的地地址相关联的查找表。例如,地址指示符可以是页地址、整体位置、pidget ID、笔固有参数值等。要被转发的适当的数据也可以由文件对象给出。作为转发文件对象300的替代方案,流程控制器306可将通知发送给文件对象300对检索可用的目的地地址。
一旦接收文件对象300或从其中导出的数据,应用程序308就可访问限定始发的物理产品即文件对象300中的位置数据发源的产品的页面说明(由图3A中的附图标记P表示)。页面说明限定始发产品P的布局。该布局可同时包含产品的物理布局和功能布局。物理布局包含支持性的图形即针对指导、控制和/或通知使用者的人可理解的信息。功能布局限定相关图案页上的任何所谓使用者区域的布置和尺寸。使用者区域是具有对特定应用程序308来说唯一的布置、尺寸和功能的应用特定功能区。在页面说明中,各个使用者区域可被分配专用处理指令的标识符,该处理指令对于应用程序是可访问的。作为替代方案,各个处理指令可被包含于页面说明中。物理布局也可作为用于产生物理布局的明确指令、或作为限定物理布局的计算机文件的网络存储地址的指示符被包含于页面说明中。页面说明也可限定产品上的图案的配置和布置,以允许处理应用以与支持性图形适当地对准的方式显示笔划。
在US 2002/0040816和WO 03/105064中进一步说明了页面说明的结构、功能和用途。
图4进一步示出图案页402、模板400、页面说明410和物理产品420之间的相互关系。物理产品420包含限定一个或更多个图案页402(图4中仅示出一个)内的位置的位置代码(未示出)。这些位置与一个或更多个功能有关,这些功能在系统中被预先定义(对于pidget404)或者是应用特定的(对于使用者区域414)。如模板400给出的那样,Pidget 404在图案页402内具有预先定义的布置和尺寸。但是,通过产品420上的以任何方式“被切除(cut out)”和被重新集合的位置编码图案的多个部分,它们可在物理产品420上具有任何布置。页面说明410限定图案页402上的任何附加使用者区域414的布置、尺寸和功能。因此,除了其物理布局,产品420还具有由模板400给出的一个功能布局部分400′和由页面说明410给出的一个功能布局部分410′。
文件对象300(图3A)中的笔划数据是自支持的或自治的,即,接收应用程序308能够在不需要与产生数据的笔200通信的情况下访问和处理数据。
文件对象300可以以不同的提炼等级(level of refinement)由笔200产生。例如,文件对象300可包含以下方面中的任一个或它们的组合(1)原始笔划数据,即,构造笔划的总体或逻辑位置的临时相干次序;(2)笔划的图片,即,直接代表记录的位置的图像;(3)提炼的笔划数据,一般是与模板有关的信息,诸如由笔划触摸的任何pidget的标识和/或与这些pidget相关的功能的结果。
文件对象300可在提炼等级中的任一个中包含附加的与笔或笔划有关的数据,诸如笔划中的位置和任何pidget的时标(timestamp)、笔划中的位置的力值和任何笔固有参数。时标将允许应用程序或流程控制器基于笔划和pidget的共有记录时间组合这些笔划和/或pidget。力值将允许应用程序用依赖于力的线宽表达笔划的图像。
笔固有参数被预存在存储器块212(图2)中,以识别笔自身或笔的所有人/使用者的特性。这些参数可被接收应用程序308(图3A)使用,并可因此至少选择性地被包含于文件对象300中。笔固有参数的包含内容可由文件对象中的笔划的页地址和/或上述上下文或内容信息确定。笔固有参数可包含笔的唯一标识符、语言标识符、名称、街道地址、电子邮件地址、电话号码、呼机号码、传真号码、信用卡号码等。
文件对象300还可包含既不与由笔记录的笔划有关也不与笔自身有关的独立式数据。独立式数据可包含任何类型的非位置数据,这些非位置数据可通过笔中的传感器(例如,照相机系统206)被导出或经由通信接口218(图2)被笔接收。这种独立式数据可以为一个或更多个图像(即,静态或移动图像)或从这些图像提取的数据(例如,从条形码或任何其它机器可读代码解码的数据,或从光学字符识别(OCR)处理得到的机器编码文本)的形式。在另一例子中,独立式数据可以是由笔中的音频传感器记录或在通信接口上接收的音频数据。
文件对象300可以被字符编码或非字符编码(例如,二进制),并可以为任何适当的格式。文件格式可以为专有的或标准化的文件格式,例如XML(可扩展标记语言)、HTML(超文本链接标记语言)、XForms、PDF(可移植文档格式)等。
在线系统在在线处理(在线模式)中,笔被操作为使数据流入接收设备,该数据在下面被表示为在线数据。在线数据可通过实现交互式服务的应用程序被接收。在图3B中示出用于在线数据的这种交互式使用的系统。
在图3B中,笔200通过短程通信向本地接收设备302′上的通信接口301′供给在线数据。在线数据任选地通过上述类型的流程控制器306′被传输到专用的应用程序308′,该应用程序308′一般通过接收设备本地上的处理单元(CPU)运行,但作为替代方案可以通过可经由通信网络301′访问的远程设备304′上的处理单元(CPU)运行。应用程序308′基于上述页面说明处理数据,并产生通过诸如显示屏或扬声器的本地反馈设备312′大致实时呈现给使用者的反馈数据(路径300A′~300C′)。因此,应用程序308′允许使用者大致实时访问服务。使用者可将手写数据输入到服务和/或通过操纵编码产品P上的笔200交互控制服务。服务还可在手写数据从笔中被接收时依次在屏幕上显示手写数据,以大致实时再现笔在编码产品上的移动。
在下面进一步详细说明的优选实施例中,笔通过离线模式中的缺省值操作,并且只是每当它记录来自与STREAMING属性有关的段(在线段)的位置时激活在线模式。每当它记录来自与STREAMING属性无关的段的位置时,它使在线模式无效。
在另一实施例中,当笔被控制为暴露离线数据(文件对象)时,笔自动激活在线模式。该实施例允许使用者离线产生手写数据,然后当该数据被视为被外部设备中的应用程序接收时对相同的手写数据进行交互式操作。例如,使用者可通过在始发产品上操纵笔,诸如通过缩放或滚动,控制手写数据的显示。在另一例子中,应用程序可对手写数据执行HWR处理,并允许使用者通过在始发产品上操纵笔交互校正、注释或编辑手写输入。应用程序可在最近接收的离线数据上自动操作在线数据。作为替代方案,在线数据可被应用程序使用,以从外部设备可访问的存储器检索相关的离线数据,随之,应用程序在该离线数据上操作在线数据。例如,应用程序可使用在线数据的页地址,以检索具有相同的页地址的离线数据。
与离线模式类似,在线模式中的笔操作可部分由pidget控制。但是,在优选实施例中,在线段的模板缺乏绘制区以外的任何pidget。作为替代方案,在在线模式中,笔可被设计为忽略任何这种pidget。为了实现笔MMI反馈,笔可被设计为基于从应用程序在通信接口218上接收的反馈命令选择性地激活其MMI 220(图2)。由此,在线模式中的所有使用者反馈均被应用程序控制。
笔可向当前与笔连接的接收设备供给在线数据。作为替代方案,笔可启动与在线数据的缺省接收设备或与在在线模式中最后与笔连接的接收设备的连接。在另一替代方案中,可以通过检测专用pidget的笔或通过将笔物理连接到接收设备上的使用者给出接收设备。还可以构想从接收设备启动连接。
笔控制系统笔200通过在控制单元210(图2)中执行的软件操作。现在参照示出一些主软件成分的图5说明整个软件结构。
笔系统软件基于模块。模块是具有清晰界面的软件中的单独的实体。模块可以通过包含至少一个处理为有源(active)模块,或通过不包含任何处理为无源(passive)模块。模块可具有执行功能调用的功能接口或接收消息的消息接口。有源和无源模块基本上具有树结构,这里,模块的双亲结构(parent)对启动和关闭所有其子结构负责。
笔系统软件还实现事件框架,以减少模块之间的依赖性。各个模块可暴露它可用信号通知的预定的一组事件。为了得到特定事件的通知,必须在事件寄存器中对该事件登记模块。事件寄存器还可指示通知是否要通过消息的邮递或作为回叫功能(callback function)发生。
软件模块的组合实现所谓的坐标管线502,该坐标管线502是用于笔划的存储(离线模式)或位置的流动(在线模式)的事件的流程。来自图像处理模块504的整体位置的流被传输到将整体位置转换成逻辑位置的翻译器模块506。如果翻译器模块506检测到穿过pidget的笔划,那么相应的pidget事件被触发。如果整体位置的段与功能属性相关,那么翻译器模块506还产生特定的属性事件。通过包含确定pidget和属性事件的各个相关性的事件收听器的这些模块,Pidget和属性事件可在其它的软件模块中导致适当的动作。除非产生DO_NOT_STORE属性事件,否则逻辑位置被坐标管理器模块508接收,该坐标管理器模块508将它们与以简洁表示法被编码并被存储在存储器块212(图2)中的寻址笔划组合。
如果产生STREAMING属性事件,那么逻辑位置还被流束器(streamer)模块508′接收,该流束器模块508′产生在线数据,而暴露模块516被导致与接收设备建立在线连接。
因此,在本特定实施例中,笔可只以离线模式(通过缺省值)、只以在线模式(如果成像的图案同时与STREAMING属性和DO_NOT_STORE属性有关)或同时以离线和在线模式(如果成像的图案与STREAMING属性有关,但与DO_NOT_STORE属性无关)操作。
1.监控器如图5所示,笔系统软件包含直接或间接启动所有其它模块的监控器模块509。监控器模块509包含与事件寄存器的接口,使得模块可在它们想接收的事件上登记它们自身。监控器模块509还产生对其它软件模块中的收听器可用的控制事件。
2.服务器服务器模块510作为笔中的事件的协调器被提供。它基于系统和输入事件的状态对笔应做什么做出决定。
3.图像处理这里将不进一步说明图像处理模块504。可例如根据申请人的现有公开US 2003/0053699、US 2003/0189664、US 2003/0118233、US2002/0044138、US 6667695、US 6732927、US 6929183、US 2003/0128194和这里的参考文献实现它。
4.位置数据库笔包含驻留在笔的存储器块212(图2)中并可通过通信接口218(图2)被编辑或更新的位置数据库511。位置数据库511被翻译器模块506使用,并包含将各个段与由模板索引给出的模板并任选地与一个或更多个功能属性相关联的段数据库511A。段数据库511A在用于快速访问的RAM存储器中被适当地高速缓存。位置数据库511还包含将模板索引与模板定义的指针相关联的模板数据库511B,该模板定义可在笔中的非易失性存储器中作为性能被存储。这种模板定义可包含页X尺寸(16位)、页Y尺寸(16位)、页的数量(16位)、pidget的数量(16位)、Pidget列表(pidget的数量那样长)。Pidget列表包含pidget的数量。各个Pidget可通过以下方面被定义pidgetID(16位,上8位是类型,下8位是数量)、X左上坐标(16位)、Y左上坐标(16位)、宽度(16位)、高度(16位)。
5.翻译器上述翻译器模块506使用基于已知的图案格式化数据的算法,以将整体位置翻译成逻辑位置。图案格式化数据限定将编码图案分割成图案页的分层分割(图1)。图案格式化数据的一部分可被预存在笔中,而其它的部分可从笔中的位置数据库511中被动态地导出。例如,如果所有的段都具有预定的尺寸,那么整体位置可被处理以识别该整体位置的当前的段。已知当前的段,其分割区上的数据可然后从位置数据库511中的其模板定义中被导出,随之,整体位置可进一步被处理以识别当前的架、书、页和局部位置,即,全逻辑位置。如果笔通常在同一图案页上操作一段时间,那么可通过高速缓存整体位置中的当前图案页的边界并通过对这些边界检查任何新的整体位置实现大大的加速。只要新的整体位置落在边界内,就不再需要重新计算页地址。
翻译器模块506还通过对于由位置数据库511给出的相关模板定义映射局部位置来检测是否任何记录的位置都落在当前的图案页上的pidget内。在一个实施例中,对于各个笔划只有一个pidget可被识别,即,如果几个pidget被识别,那么只有最后的pidget被考虑。然后产生相应的pidget事件,用于通知其它的软件模块。如果没有pidget被识别,那么位置被假定为落在绘制区内。
翻译器模块506还检测是否当前的段与任何功能属性有关。然后产生并通知相应的属性事件,以向其它的软件模块指示各个这种功能属性。
因此,对于各个整体位置,翻译器模块506提供至少一个页地址和局部位置,并且它还可提供属性指示符。对于位置的各个临时相干次序即笔划,翻译器模块506还可提供pidget ID。各个逻辑位置与由控制单元210(图2)的定时电路给出的时标和由接触传感器216给出的力值有关。类似地,各个pidget ID与时标有关。另外,它可具有允许其它模块关于模板、功能属性和pidget检查位置数据库511中的信息的接口。
6.坐标管理器坐标管理器模块508从翻译器模块506接收逻辑位置。在存储之前,它将逻辑位置组成临时相干次序即笔划。坐标管理器模块508然后可以预处理各个笔划用于压缩并将结果存储在非易失性存储器中。在US 2003/0123745和US 2003/0122802中给出了这种压缩和存储的例子。
坐标管理器模块508还包含用于其它模块的接口,以例如基于页地址搜索存储的笔划,以及检索离线传输格式的笔划。在一个实施例中,离线传输格式为二进制,并包含以下数据各个笔划的开始时间、各个笔划中的局部位置和各个位置的力值。
任选地,离线传输格式可包含从捕获的图像导出以指示笔在位置记录过程中的三维取向的取向数据。
7.流束器可被激活以从翻译器模块506接收逻辑位置的流束器模块508′具有三种内部状态已断开、连接中、已连接。它基于由暴露模块516(见下文)产生的连接中、已连接和连接失败事件进入各种状态。
在已连接状态中,笔系统软件处于离线模式中。在连接中状态中,流束器模块508′依次存储由包含于存储器块212(图2)中的缓冲存储器(一般为RAM)中的翻译器模块506输出的所有逻辑位置(与力值和时标一起)。连接中状态的持续时间一般为约1~10秒。在已连接状态中,流束器模块508′根据预定的二进制在线传输格式产生在线数据。在一个实施例中,该格式包含三种不同的消息NewSession(时标、笔标识符)NewPosition(时标、页地址、位置、力值)PenUp(时标)流束器模块508′在检测到已连接事件时产生NewSession消息,并且包含反映在线连接被建立的时间的时标。流束器模块508′然后产生NewPosition消息,使得每个包含一个逻辑位置、力值和时间值。时间值反映始发图像被笔照相机系统捕获的时间。各个NewPosition消息还可包含上述的取向数据。每当笔被移动以不与书写表面接触时,如接触传感器216(图2)所指示的那样,流束器模块508′产生PenUp消息。
在替代性实施例中,页地址对于各个笔划只被输出一次。为了进一步减少要被传送的数据的量,例如如上述的US 2003/0123745和US2003/0122802所述,可以根据再取样准则从各个笔划消除局部位置,和/或作为与相同笔划中的前面的局部位置不同的值给出各个局部位置。
流束器模块508′总是以逻辑位置由图像处理模块504产生的次序处理这些逻辑位置。因此,它首先检索和处理在连接中状态中存储在缓冲存储器中的位置,然后在必要情况下通过缓冲存储器中的中间存储器处理依次产生的位置。
如果笔控制系统被指导为关闭或切换到离线模式,那么流束器模块508′将保持在已连接状态中直到它处理完缓冲存储器中的所有数据,由此使暴露模块516将该数据输出到在线连接。如果连接失败事件由连接中状态中的流束器模块508′接收,那么流束器模块操作为从缓冲存储器删除所有数据。
在线传输格式允许接收设备区分分别在连接中状态和已连接状态中产生的数据。在连接中状态中记录的位置的时标将先于NewSession消息的时标,而在已连接状态中记录的位置的时标将在NewSession消息的时标之后。作为替代方案,或者,另外,位值(bit value)可包含于各个NewPosition消息中以指示其数据是否已被缓冲。
8.参数存储笔系统还包含参数存储模块512。需要在笔关闭后保持某一状态的所有其它模块调用存储它们的状态参数的该模块。参数存储模块512还处理在制造中设定的笔固有参数,诸如唯一的笔性能(笔标识符等)或校准参数以及模板定义。各个参数在非易失性存储器中存有名称、大小和数据。模块512提供用于插入、检索和删除参数的接口512′。
9.文件汇编(assembly)文件汇编模块514被实现为产生要被暴露于笔外面的数据处理器的文件对象300(图3A)。模块514被实现为收听专有事件,诸如触发器pidget事件。一旦检测到专有事件,它就以二进制离线传输格式从坐标管理器模块508检索与触发器pidget有关的笔划。
很显然,文件汇编模块514的功能将依赖于提炼(refinement)的等级。上面的步骤对于等级1提炼是足够的。
对于等级2提炼,笔系统可包含将给定的一组笔划转换(transfer)成存储器块212(图2)中的图片缓冲(picture buffer)的笔划转换器模块(未示出)和将图片缓冲编码成给定类型例如位图格式或矢量图形格式的图像的图片编码器。
对于等级3提炼,模块514可从由与触发器pidget相关的其它pidget给出的其它模块(未公开)检索数据项目。这种数据项目可包含从笔划的手写识别(HWR)得到的机器编码字符、从笔存储器检索的机器编码字符、从笔存储器检索的通信地址等。
模块514还可检索文件对象中包含的任何独立式数据,诸如条形码数据、OCR文本、音频、图像等。
最后,模块产生可使得其它模块通过接口514′可用的文件对象300(图3A)。
这种文件对象可例如具有以下结构文件报头(触发器Pidget ID、页地址、页的数量、附加数据项目的数量)页数据报头(页地址、pidget的数量)页数据(离线传输格式的笔划数据)Pidget数据(Pidget ID、时标)附加数据(笔固有参数值、从pidget得到的数据项目、独立式数据)文件对象允许应用程序308(图3A)并任选地允许流程控制器306识别和提取其所有或选择的部分。
可以从包含于触发器pidget ID中的内容信息确定要被包含于文件对象中的笔划的选择。这种内容信息可例如指示当前的图案页或书,即,选择的笔划应属于与触发器pidget相同的组的图案页。很显然,存在替代性的笔划选择方式。例如,可以从由专用笔划限定的边界区内选择笔划(即,笔在产品上移动以对笔指示要暴露什么)。在另一例子中,可基于与图案页有关的分类属性选择笔划。例如,笔划可选自与上述FORMS属性有关的所有图案页。在另一例子中,笔存储器中的所有笔划被自动选择用于暴露,适当地使得对于每个图案页或书产生一个文件对象。
所有由此选择的笔划可被加入文件对象中。作为替代方案,只有那些不被表示为pidget的笔划被加入文件对象中。
10.暴露暴露模块516被设置以向笔外面的数据处理器提供收集的数据。模块被实现为收听专有的事件,诸如触发器pidget事件或STREAMING属性事件。
一旦检测到触发器pidget事件,它就从文件汇编模块514检索文件对象,并通过将文件推送到例如由触发器pidget或设备选择pidget给出的特定设备/端口、或通过允许外部数据处理器从笔中拖入文件对象来暴露文件对象。例如,文件对象可被存储在笔存储器的文件系统中,该文件系统被暴露于外部数据处理器。例如,文件系统可被暴露,用于通过USB(通用串行总线)、蓝牙、FTP(文件传输协议)、HTTP(超文本传输协议)或任何其它适当的协议浏览。
一旦检测到STREAMING属性事件,暴露模块516就启动与特定接收设备的在线连接,并产生连接中事件。当连接被建立时,它产生已连接事件并开始依次输出由流束器模块508′产生的消息。如果它不能在超时(timeout)周期内与接收设备连接,它就产生连接失败事件。
暴露模块516包含所有必需的协议堆栈,并且,通过建立被分配给独立模块的链路的责任并通过与设备提取的合作,暴露模块516被设计为不依赖于传输手段。建立链路的责任被分配给链路选择模块(未示出)。链路选择模块处理通信链路的选择和建立。
上面参照几个实施例大体上说明了本发明。但是,本领域技术人员很容易理解,在仅由所附的专利权利要求限定和限制的本发明的范围和精神内,上面公开的实施例以外的其它实施例是同样可能的。
例如,可以通过使用者按压笔上的按钮或发出要被笔上的麦克风记录的口头命令,在笔控制系统中产生事件。因此,触发器pidget事件或任何功能属性事件可被这种事件代替或补充。
在上述的实施例中,由于逻辑位置是基于笔中的位置数据库被计算的,因此抽象图案的分割是动态的。在替代性实施例中,通过在图案中被编码,抽象图案的分割可以是静态的。例如,US 6330976公开了在产品表面上平铺编码单元的编码图案,每个单元同时对局部位置和页标识符编码。这种图案可作为在图案中被编码的一个或更多个标记位实现功能属性。通过对图案解码,笔由此能够直接检测其逻辑位置,并任选地检测功能属性。
应当注意,笔可包含用于相对定位的补助设备,诸如加速计、滚动球、三角测量器件等。因此,笔可用由补助设备给出的相对位置补充从位置代码导出的绝对位置。在这种情况下,位置代码仅需要对产品上的很少的绝对位置进行编码。
并且,笔系统软件可基于不同软件模块之间的功能的任何分布。例如,例如通过同样实现暴露模块的功能的服务器模块,几个模块的功能可由单一的模块实现。事实上,笔系统软件不需要由各个单独的模块构成。
类似地,事件的信号发送可被忽略或减少。在一个这种实施例中,属性事件被忽略。作为替代,翻译器模块向坐标管理器模块和流束器模块这两者供给所有的逻辑位置。每当翻译器模块也检测到DO_NOT_STORE属性时,它就仅向流束器模块供给相关的逻辑位置。流束器模块连续访问翻译器接口以检查是否任何接收的逻辑位置与STREAMING属性相关。在检测到这种属性时,流束器模块使暴露模块启动在线连接。
笔还可以以这里所述的方式以外的其它方式输出离线数据。例如,笔可与接收设备建立端对端通信,并输出离线数据作为对接收设备的http请求的一部分。在申请人的专利公开US 2003/0055865中进一步公开了用于这种通信的协议,在此加入其作为参考。
权利要求
1.一种电子笔装置中的方法,包括接收产品表面的图像;从所述图像提取数据;和在在线处理和离线处理中选择性地处理提取的数据,其中,在线处理可操作为在笔装置的通信接口上连续地提供提取的数据;以及其中,离线处理可操作为在笔装置的内部存储器中存储提取的数据,并在通信接口上以非连续的次序选择性地提供提取的数据。
2.根据权利要求1的方法,其中,在线处理可操作为与所述提取步骤基本上实时地在通信接口上提供提取的数据。
3.根据权利要求1或2的方法,其中,提取的数据包含多个位置,每个位置与位置区域标识符相关,并且其中,所述非连续的次序的提取的数据通过位置区域标识符被核对。
4.根据前面权利要求中的任一个的方法,其中,离线处理可操作为在适于在计算机文件系统中存储的至少一个自治数据文件对象中提供提取的数据。
5.根据前面权利要求中的任一个的方法,其中,离线处理可操作为仅在检测到专有的触发器事件时选择性地提供提取的数据。
6.根据权利要求5的方法,其中,专有的触发器事件源自与外部设备连接的通信接口,或源自在所述图像中的至少一个中被检测的预定图案。
7.根据前面权利要求中的任一个的方法,其中,通过在所述图像中的至少一个中检测预定图案,选择在线处理和离线处理中的至少一个。
8.根据权利要求7的方法,其中,在离线处理中处理缺省的提取数据,并且其中,所述检测使在在线处理中处理在所述检测之后提取的数据。
9.根据权利要求7或8的方法,还包括产生指示所述检测的专有的处理事件。
10.根据权利要求7~9中的任一项的方法,其中,在线处理仅在所述图像中的预定图案的所述检测中被激活。
11.根据权利要求9或10的方法,其中,从提取的数据检测预定图案。
12.根据权利要求7~11中的任一项的方法,其中,提取的数据包含整体坐标系统中的位置,所述方法还包括通过对存储在笔装置的存储器中的定义数据映射所述位置中的至少一个导出处理指示符,其中从所述处理指示符检测预定图案。
13.根据权利要求12的方法,其中,定义数据指示整体坐标系统中的可单独寻址的位置区域,每个位置区域与位置区域标识符相关,其中处理指示符包含所述位置区域标识符。
14.根据权利要求12的方法,其中,定义数据指示整体坐标系统中的可单独寻址的位置区域并将一组这样的位置区域与功能属性相关联,其中处理指示符包含所述功能属性。
15.根据权利要求7的方法,其中,通过在通信接口上选择性提供非连续的次序的提取的数据的离线处理激活在线处理。
16.根据前面权利要求中的任一个的方法,其中,离线处理还可操作为基于提取的数据识别要由笔装置执行的功能。
17.根据权利要求16的方法,其中,所述功能包含激活笔装置的MMI的指令。
18.根据前面权利要求中的任一个的方法,其中,在线处理还可操作为在通信接口上接收反馈指令,并基于反馈指令激活笔装置的MMI。
19.根据前面权利要求中的任一个的方法,其中,在线处理还可操作为在笔装置的缓冲存储器中存储从在通过通信接口与外部设备的连接的启动和建立之间取得的图像提取的数据;以及,在所述建立之后,通过通信接口向外部设备提供存储在缓冲存储器中的数据和在所述建立之后提取的数据。
20.根据权利要求19的方法,其中,在线处理还可操作为如果所述连接不能被建立就擦除存储在缓冲存储器中的数据。
21.根据权利要求19或20的方法,其中,在线处理还可操作为通过通信接口提供缓冲指示符,该缓冲指示符识别在所述建立之前已被存储在缓冲存储器中的提取数据。
22.根据权利要求21的方法,其中,所述缓冲指示符包含在通信接口上提供的提取的数据中包括的各数据项目的捕获时标和连接时标,所述捕获时标代表所述数据项目被记录在所述图像中的时间,并且所述连接时标代表建立连接的时间。
23.根据前面权利要求中的任一个的方法,其中,在线处理提供包含连接时标的对话消息,该连接时标代表通过通信接口建立与外部设备的连接的时间。
24.根据权利要求23的方法,其中,对话消息还包含唯一识别笔装置的笔标识符。
25.根据前面权利要求中的任一个的方法,其中,在线处理提供提取的数据作为一系列数据消息,每个数据消息包含从所述图像中的一个中提取的数据项目。
26.根据权利要求25的方法,其中,各个数据项目包含位置和位置区域标识符。
27.根据权利要求25或26的方法,其中,各个数据消息还包含代表取得所述图像的时间的时标。
28.根据权利要求25~27中的任一项的方法,其中,各个数据消息包含从与笔装置的笔尖相关的力传感器导出的力值。
29.根据权利要求25~28中的任一项的方法,其中,各个数据消息包含从所述图像确定并代表笔装置的三维取向的取向数据。
30.一种电子笔装置中的器件,包括从产品表面的图像提数据的提取处理器,所述图像被笔装置中的图像传感器捕获;和在在线处理和离线处理中选择性地处理提取的数据的数据处理器,其中,在线处理中的数据处理器可操作为在笔装置的通信接口上连续地提供提取的数据;以及其中,离线处理中的数据处理器可操作为在笔装置的内部存储器中存储提取的数据,并在通信接口上以非连续的次序选择性地提供提取的数据。
31.一种电子笔装置,包括用于捕获产品表面的图像的图像传感器;通信接口;和执行权利要求1~29中的任一项的方法的处理器件。
32.一种用于与编码的产品表面交互作用的系统,包括根据权利要求31的电子笔装置;可操作为与电子笔的通信接口建立连接的通信接口;控制器;和反馈器件;其中,控制器在电子笔装置提供在线数据时可操作为通过通信接口从笔装置接收在线数据,并与在线数据的接收基本上实时地通过反馈器件提供反馈数据。
33.根据权利要求32的系统,其中,控制器在笔装置提供在线数据时可操作为检索以前已经由笔装置提供的离线数据。
34.根据权利要求33的系统,其中,控制器基于在线数据识别要被检索的离线数据。
35.根据权利要求32或33的系统,其中,控制器在检索的离线数据上操作在线数据。
36.根据权利要求32~35中的任一项的系统,其中,所述连接的持续时间由电子笔装置控制。
全文摘要
本发明涉及用于电子笔中的数据管理的方法和器件。电子笔装置中的数据管理器件操作为接收(602)产品表面的图像,并从这些图像提取(604)数据。产品表面可具有位置编码图案的一部分,并且提取的数据可然后代表由图案编码的位置。器件在在线处理和离线处理中选择性地处理提取的数据。处理的选择(606)可由图像中的图案数据控制。在线处理可操作为在笔装置的通信接口上连续并且一般大致实时地提供(614)提取的数据。离线处理可操作为在笔装置的内部存储器(M)中存储(608)提取的数据。通过检索和核对源自抽象位置编码图案的特定部分的提取数据,离线处理还可操作为在通信接口上以非连续的次序选择性地提供(610)提取的数据。
文档编号G06F3/0354GK101052940SQ200580037423
公开日2007年10月10日 申请日期2005年11月7日 优先权日2004年11月5日
发明者乔安·加恩德, 斯蒂芬·林加德 申请人:阿诺托股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1