方向传感设备的制作方法

文档序号:6475302阅读:323来源:国知局
专利名称:方向传感设备的制作方法
技术领域
本发明主要关于与计算机交互的方法、系统和装置。本发明特别关于一种能够在相对于某表面移动或放置时感测其相对于该表面的移动方向的传感设备。
本发明主要用于支持大量分布的用户通过印刷品和光传感器与联网信息交互,从而通过高速联网彩色打印机随时获得交互的印刷品。虽然本发明在本文中主要是参考上述用途说明的,但是应该指出的是,本发明不局限于在上述领域中使用。
同类专利申请与本发明有关的各种方法、系统和装置在本发明的申请者或代理人与本申明同时申报的下列同类专利申请中揭示NPA060US,NPA061US,NPA081US,NPA082US,NPP010US,NPP013US,NPP015US,NPP020US,NPP021US,NPP022US,NPP023US,NPS014US,NPS015US,NPS017US,NPS018US,NPS022US,NPS027US NPS028US,NPT008US,BIN01US,BIN02US,BIN03US,BIN04US这些同类专利申请的揭示以互参方式综合在此。每个应用都采用其通知号临时标识。当获得相应的USSN申请号时,这些通知号将以USSN号代替。
与本发明有关的各种方法、系统和装置在本发明的申请者或代理人于2000年10月20日与本申明同时申报的下列同类专利申请中揭示NPA011US,NPA031US,NPA040US,NPA046US,NPA053US,NPA059US,NPA064US,NPB006US,NPS004US,NPS008US,NPS013US,NPS024US,UP01US,UP02US,UP03US,UP04US,UP05US这些同类专利申请的揭示以互参方式综合在此。每个应用都采用其通知号临时标识。当获得相应的USSN申请号时,这些通知号将以USSN号代替。
与本发明有关的各种方法、系统和装置在本发明的申请者或代理人于2000年9月15日与本申明同时申报的下列同类专利申请中揭示NPA024US,NPA025US,NPA047US,NPA049US这些同类专利申请的揭示以互参方式综合在此。每个应用都采用其通知号临时标识。当获得相应的USSN申请号时,这些通知号将以USSN号代替。
与本发明有关的各种方法、系统和装置在本发明的申请者或代理人于2000年6月30日与本申明同时申报的下列同类专利申请中揭示NPA014US,NPA015US,NPA022US,NPA026US,NPA038US,NPA041US,NPA050US,NPA051US,NPA052US,NPA063US,NPA065US,NPA067US,NPA068US,NPA069US,NPA071US,NPA072US,NPB003US,NPB004US,NPB005US,NPP019US,PEC04US,PEC05US,PEC06US,PEC07US这些同类专利申请的揭示以互参方式综合在此。每个应用都采用其通知号临时标识。当获得相应的USSN申请号时,这些通知号将以USSN号代替。
与本发明有关的各种方法、系统和装置在本发明的申请者或代理人于2000年5月23日与本申明同时申报的下列同类专利申请中揭示NPA001US,NPA002US,NPA004US,NPA005US,NPA006US,NPA007US,NPA008US,NPA009US,NPA010US,NPA012US,NPA016US,NPA017US,NPA018US,NPA019US,NPA020US,NPA021US,NPA030US,NPA035US,NPA048US,NPA075US,NPB001US,NPB002US,NPK002US,NPK003US,NPK004US,NPK005US,NPM001US,NPM002US,NPM003US,NPM004US,NPN001US,NPP001US,NPP003US,NPP005US,NPP006US,NPP007US,NPP008US,NPP016US,NPP017US,NPP018US,NPS001US,NPS003US,NPS020US,NPT001US,NPT002US,NPT003US,NPT004US,NPX001US,NPX003US,NPX008US,NPX011US,NPX014US,NPX016US,IJ52US,IJM52US,MJ10US,MJ11US,MJ12US,MJ13US,MJ14US,MJ15US,MJ34US,MJ47US,MJ58US,MJ62US,MJ63US,PAK04US,PAK05US,PAK06US,PAK07US,PAK08US,PEC01US,PEC02US,PEC03US这些同类专利申请的揭示以互参方式综合在此。每个应用都采用其通知号临时标识。当获得相应的USSN申请号时,这些通知号将以USSN号代替。
背景技术
目前,计算机系统的用户通常使用显示信息的监视器和输入信息的键盘和/或鼠标与系统交互。虽然这种接口很强大,但是它比较笨重,难以携带。在纸上打印的信息更便于阅读,也比在计算机监视器上显示的信息更便于携带。但是,与键盘或鼠标不同的是,纸上所用的笔通常缺少与计算机软件交互的能力。

发明内容
发明目的本发明的一个目的是把纸笔方式和计算机系统的优点综合起来。
本发明关于一种能够在相对于某表面移动或放置时产生方向数据的传感设备,方向数据指示传感设备相对于表面的方向,所述表面上带有按某种方式排列的编码数据,这些数据在被传感设备感测后可以指示方向,所述传感设备包括
一个外壳;配置为使用至少部分编码数据产生方向数据的方向传感装置;和配置为把方向数据传送给计算机系统的通信装置。在本发明的较佳实例中,方向数据指示外壳相对于所述表面的偏转、倾斜和/或滚动。
所述传感设备最好包括用于在其相对于所述表面移动时产生移动数据的移动传感装置以及配置为把移动数据传送给计算机系统的通信装置。而且,所述传感设备最好还包括一种区域标识传感装置,该区域标识传感装置被配置为在该设备相对于所述表面的区域移动或放置时使用至少一部分编码数据感测指示区域标识的区域标识数据。所述通信装置被配置为向计算机系统传送区域标识数据。
所述方向传感装置最好能够在所述外壳移动时动态地检测外壳相对于所述表面的移动方向。所述外壳可以为细长形状,以便于用户握持。在本发明的一个实例中,外壳为笔的形状。所述外壳可以带有一个标记笔尖,用于在表面上做标记,但是这不是强制要求。
通过同时捕捉方向和移动数据,该系统可用于核验个人签名。另外,动态测量的方向信号可以使所述外壳作为控制杆使用。例如,这种控制杆可用于三维软件应用。需要注意的是,所述方向传感装置不一定必须以三维方式感测外壳的方向。它只需能够检测倾斜信息,因为有些应用不需要三维方向信息。例如,所述外壳可用来线性地控制设备的一个方面,例如通过在0°-90°之间改变倾角来控制光密度或喇叭的音量。
所述设备的滚动、倾斜和偏转可以通过检测编码数据的透视畸变和旋转来计算。
首先,所述设备可用于确定该装置何时开始作用于所述表面以及何时离开表面,在力量施加和力量撤除之间的运动被定义为手绘中的“笔划”。力量数据信息可以加上时间标记。
所述设备最好是包含上述适当装置的独立形式。它可以是任何形状的,但最好是触笔或笔状。
该装置最好带有一个标记尖头,用于以手绘信息在所述表面上做标记,但是这不是强制性要求。
该装置最好设计为能够与某种计算机系统交互,所述计算机系统可以控制并能解释用户通过所述设备输入的手绘信息(可以是图形或文字)。所述传感设备最好能够提供唯一确定所述设备的设备标志信息。这样,计算机系统可以使用此信息确定设备。
通过下列实例的描述和参考所附图纸可以更好地理解本发明的特点和优点。


本文中所述的本发明的较佳实例和其它实例是通过非限制性的例子和所述图纸说明的,其中图1显示了打印的netpage样本与其在线页面描述之间的关系。
图2是netpage笔、netpage打印、netpage页面服务器和netpage应用服务器之间的交互的示意图。
图3显示了通过网络互联的多台netpage服务器和打印机。
图4是打印的netpage页面和其在线页面描述的高级结构的示意图。
图5a是显示netpage标记的结构的平面图。
图5b的平面图显示了图5a中所示的一组标记与笔式netpage传感设备的视野之间的关系。
图6a的平面图显示了netpage标记的另一种结构。
图6b的平面图显示了图6a中所示的一组标记与笔式netpage传感设备的视野之间的关系。
图6c的平面图显示了图6a中的9个标记的排列形式,其中的目标由相邻标记共享。
图6d的平面图显示了图6a中所示标记的4个编码字符号的交错和旋转。
图7是标记图像处理和解密算法的流程图。
图8是netpage笔和相关的标记感测视野圆锥的透视图。
图9是图8中所示的netpage笔的透视分解图。
图10是用于图8和图9中的netpage笔的笔控制器的示意性框图。
图11是壁挂式netpage打印机的透视图。
图12是沿图11中所示的netpage打印机的长度方向剖开的剖面图。
图12a是图12的局部放大图,它显示了双工打印引擎和胶轮组件的一部分。
图13是墨水盒、墨水、空气和胶路径以及图11和12中的netpage打印机引擎的详细视图。
图14是用于图11和12中所示的netpage打印机的打印机控制器的示意性框图。
图15是与图14中所示的打印机控制器有关的双工打印引擎控制器和MemjetTM打印头的示意性框图。
图16是图14和15中所示的打印引擎控制器的示意性框图。
图17是一个MemjetTM打印元件的透视图,该打印元件可用于图10-12中的netpage打印机。
图18是一排MemjetTM打印元件的一小部分的透视图。
图19的一系列透视图显示了图13中的MemjetTM打印元件的工作循环。
图20是页宽MemjetTM打印头的一小段的透视图。
图21是一个用户类图的示意图。
图22是一个打印机类图的示意图。
图23是一个笔类图的示意图。
图24是一个应用类图的示意图。
图25是一个文档和页面描述类图的示意图。
图26是一个文档和页面拥有类图的示意图。
图27是一个终端元素专门化类图的示意图。
图28是一个静态元素专门化类图的示意图。
图29是一个超链接元素类图的示意图。
图30是一个超链接元素专门化类图的示意图。
图31是一个超链接组类图的示意图。
图32是一个表单类图的示意图。
图33是一个数字墨水类图的示意图。
图34是一个域元素专门化类图的示意图。
图35是一个复选框域类图的示意图。
图36是一个文本域类图的示意图。
图37是一个签名域类图的示意图。
图38是一个输入处理算法的流程图。
图38a是图38中的流程图的一步的详细流程图。
图39是一个页面服务器命令元件类图的示意图。
图40是一个资源描述类图的示意图。
图41是一个收藏列表类图的示意图。
图42是一个历史列表类图的示意图。
图43是订阅递送协议的一个示意图。
图44是超链接请求类图的一个示意图。
图45是超链接激活协议的一个示意图。
图46是表单提交协议的一个示意图。
图47是手续费支付协议的一个示意图。
图48是一组构成一个符号的径向楔形标记的示意图。
图49是环A和环B符号分配方案的示意图。
图50是第一个环C和环D符号分配方案的示意图。
图51是第二个环C和环D符号分配方案的示意图。
图52是三角形标记打包的一个示意图。
图53是一个二十面体的透视图。
图54是一个频率为3的二十面最短线的透视图。
图55是最小标记间隔的示意图。
图56是可以避免重叠的最小标记间隔的示意图。
图57是第一个标记插入情况的示意图。
图58是第二个标记插入情况的示意图。
图59是第三个标记插入情况的示意图。
图60是第四个标记插入情况的示意图。
图61是相对于表面的笔方向的示意图。
图62是笔倾斜几何形状的示意图。
图63是笔滚动几何形状的示意图。
图64是笔坐标空间的示意图,该坐标空间显示了笔的物理轴和光轴。
图65是弧形尖头几何形状的示意图。
图66是取样频率和标记频率之间的交互的示意图。
图67是笔的光线路径的示意图。
图68是笔划捕捉算法的流程图。
图69是原始数字墨水类图的示意图。
图70的表包含公式1-10。
图71的表包含公式11-20。
图72的表包含公式21-26。
图73的表包含公式27-34。
图74的表包含公式35-41。
图75的表包含公式42-44。
图76的表包含公式45-47。
图77的表包含公式48-51。
图78的表包含公式52-54。
图79的表包含公式55-57。
图80的表包含公式58-59。
图81的表包含公式60-63。
图82的表包含公式64-74。
图83的表包含公式75-86。
图84的表包含公式87-99。
图85的表包含公式100-111。
图86的表包含公式112-120。
图87的表包含公式121-129。
图88的表包含公式64-71的一组简并形式。
图89显示了包含零倾斜和零滚动的条件和特殊处理的表的第一部分。
图90是图89中的表的第二部分。
具体实施例方式
注MemjetTM是澳大利亚Silverbrook研究股份有限公司的一个商标。在本发明的较佳实例中,本发明被配置为与netpage联网计算机系统一起工作。netpage联网计算机系统将在下文中详细描述。需要注意的是,并不是本发明的每个实例都需要实现与基本系统有关的下述所有的或大多数项目。但是,在本文中,我们以最详细的方式说明该系统,这样,当读者理解本发明的较佳实例的工作环境时,不需要寻找其它参考资料。总的来说,netpage系统的较佳实例利用一种映射表面形式的计算机界面,也就是说,一个包含对计算机系统中维护的表面图的映射的物理表面。图上坐标可以采用适当的传感设备查询。对于特定的实例,图上坐标可以采用可见形式或不可见形式编码,还可以采用某种局部查询方式定义,所述局部查询方式对映射表面进行查询,在图内部和不同的图之间产生明确的图上坐标。所述计算机系统可以包含关于映射表面的特性的信息,这种信息可以根据与映射表面一起使用的传感设备提供的图上坐标来检索。因此,检索的信息可以采取由计算机系统代表操作员发起的动作的形式来响应操作员与表面特征的交互。
在一种较佳形式中,netpage系统依赖于netpage的产生和与netpage的人机交互。这些页面包含打印在纸上的文本、图形和图像,但是这些文本、图形和图像能够像交互网页一样工作。每个页面上的信息使用对人眼不可见的墨水编码。但是,墨水(以及编码数据)可以由一支光学成像笔感测并发送给netpage系统。除了纸以外,还可以使用某些底质。本发明的较佳实例中的编码信息是采用一种红外线吸收墨水实现的,因此可以使用一种对红外线敏感的光学传感器。如有必要,还可以使用其它波长或光学感测技术以外的感测技术,例如使用磁性墨水和传感器。在本发明的较佳形式中,可以使用所述的笔点击每个页面上的活动按钮和超链接,实现从网络请求信息或者向网络服务器发送信号参数选择。在本发明的一个实例中,netpage上的手写文本可以被自动识别和转换为netpage系统中的计算机文本,从而可以向表单中填写数据。在本发明的其它实例中,在netpage上记录的签名是自动核验的,这样可以安全地审核电子贸易交易。
如图1所示,打印的netpage 1可以代表由用户在打印的页面上实际填充的交互表单或通过笔和netpage系统之间的通信以“电子方式”填充的交互表单。下述的例子显示了一个包含姓名和地址字段以及一个提交按钮的“请求”表单。该netpage包含使用可见墨水打印的图形数据2以及使用不可见墨水打印为一系列标记4的编码数据3。在netpage网络上存储的对应的页面描述5说明了netpage的各个元素。特别是,它描述了每个交互元素的类型和空间范围(即本例中的文本域或按钮),从而允许netpage系统通过netpage正确地解释输入信息。例如,提交按钮6带有一个区域7,该区域与图形8相应的空间范围对应。
如图2所示,netpage笔101(该笔的一个较佳形式在图8和图9中示出并在下文中详细说明)可以与netpage打印机601以及通过互联网连接的家庭、办公室或移动打印设备一起使用。这种笔是无线的,并能够与netpage打印机通过一条短程无线链路9安全地通信。如有必要,还可以使用接线或红外发射机把该笔与所述系统连接起来,但是这两种连接方式都会限制其移动性。
Netpage打印机601的一个较佳形式在图11-13中示出并在下文中详细说明。netpage打印机601可以定期地或在需要时提供个性化的报纸、杂志、目录、小册子及其它出版物,这些出版物的质量与交互netpage一样高。与个人计算机不同的是,netpage打印机是一种可以安装在早间新闻附近的墙上(例如在用户的厨房中、早餐桌旁、或每日家务工作的起点位置附近)。它还有桌面型、台式、便携式和微型等多种形式。在使用Netpage的地点打印的Netpage综合了纸张的易用性和交互媒体的及时性和交互性。
如图2所示,netpage笔101可以与打印在netpage 1上的编码数据交互,还可以通过短程无线链路9与netpage打印机交互。打印机601把交互信息发送给相关的netpage页面服务器10进行解释。在适当的情况下,页面服务器向运行在netpage应用服务器13上的应用计算机软件发送相应的消息。反过来,应用服务器可以回馈响应信息,而这种响应信息将打印在发出信息的打印机上。
在本发明的较佳实例中,通过把所述的netpage系统与基于高速微型机电系统(MEMS)的喷墨(MemjetTM)打印机联用,从而使netpage系统更加方便。在该技术的一种较佳形式中,可以为用户以合理的价格提供相当高的速度和高质量的印刷品。在其较佳形式中,netpage出版物不仅具有传统新闻杂志的物理性质(例如在双面上以真彩形式打印的一组清晰的页面),还具有便捷的导航能力和惬意的使用性。
Netpage打印机利用了宽带互联网访问的发展成果。在美国的95%家庭中具有宽带连接,其中有20%的家庭已经在使用通过电缆调制解调器实现的宽带互联网访问功能。Netpage打印机还可以使用较慢的连接,但是这种连接会增加传送时间或降低图像质量。实际上,netpage系统还可以使用用户现有的喷墨和激光打印机,但是在这种情况下系统的工作速度要慢的多,因此,从用户的观点来看较难接受。在本发明的其它一些实例中,netpage系统工作在一个专用的企业内部互联网中。在本发明的另一些实例中,netpage系统工作在一台计算机上或由计算机支持的设备上,例如一台打印机。
Netpage网络上的Netpage出版服务器14被配置为向netpage打印机提供印刷质量的出版物。期刊通过单播和多播互联网协议自动地传送到订阅它们的netpage打印机上。个性化的出版物根据特定用户的配置信息被过滤和格式化。
可以把Netpage打印机配置为支持任意数量的笔,而一支笔可以与任意数量的netpage打印机一起工作。在本发明的较佳实现中,每支netpage笔都带有一个唯一的标识符。一个家庭可以拥有一系列彩色的netpage笔,每支笔分配给家庭的特定成员。这样,假设被分配的笔只由特定的家庭成员使用,那么每个用户可以维护与netpage出版服务器或应用服务器有关的不同配置信息。但是,如我们在下文中所述的,还可以使用其它方法来确定用户的身份。
一支netpage笔还可以向一个netpage注册服务器11注册,并与一个或多个付费卡账户链接。这样,使用netpage笔可以安全地授权电子贸易付款。Netpage注册服务器把由netpage笔捕捉的签名与以前注册的签名比较,从而可以向电子贸易服务器鉴权用户的身份。另外,还可以采用其它生物测定学方法来核验身份。一种netpage笔还带有指纹扫描装置,这种装置产生的信息也可以由netpage注册服务器以相似的方式核验。虽然netpage打印机可以在无需用户干预的情况下提供期刊,但是也可以把它配置为不打印不请自来的垃圾邮件。在一种较佳形式中,打印机只从订阅的或未订阅的特许源提供期刊。在这方面,netpage打印机与传真机或电子邮件账户不同,因为垃圾邮件发送者只需知道电话号码或电子邮件地址就能向传真机或电子邮件账户发送垃圾邮件。另外,整个系统也可以向外部用户开放,每个用户也可以把自己的打印机向外部用户开放。这种形式可以通过选择允许发送垃圾邮件的外部用户来实现。
1.Netpage系统的体系结构系统中的每个对象模型使用一种统一模型语言(UML)类图来描述。类图包含由相互关系连接的一组对象类,我们在这里要讨论其中的两种相互关系关联和概括。关联代表对象(即类的实例)之间的某种关系。概括与实际的类有关并可以用下列方式理解如果一个类被认为是该类的所有对象的集合,而类A是类B的概括,那么类B就是类A的一个子集。每个类以一个矩形表示,并标有自己的类名。它包含一个属性列表(与类名之间用一条水平线隔开)、一个类操作列表(与属性表之间用一条水平线隔开)。但是,在下面的类图中不包含操作。
在类图中,关联被表示为连接两个类的线段,在线段的开始或结尾可以标有关联的重复数。默认的重复数为1。星号(*)代表“多”重复数,即0或0以上。每个关联可以标有关联名称,还可以在线段的任何一端标有相应类的用途。开口菱形代表聚合关联(“是......的一部分”),它画在关联线段的聚合类一端。
概括关系(“属于—A”)表示为连接两个类的一段实线,并带有一个指向概括端的箭头(开口三角形形式)。
当一个类图被细分为多个图时,在所有图中(定义该类的主图除外),被复制的类带有一条虚框。但是只有在定义该类的地方才显示该类的属性。
1.1 NETPAGENetpage是建立netpage网络的基础。这些页面为出版的信息和交互服务提供了一个基于纸张的用户界面。
一个netpage页面包含一个打印页面(或其它表面区域),该打印页面带有指向页面的在线描述的不可见标记。标记可以打印在页面的表面上,也可以打印在页面的表面中,可以在页面的一个子层中,也可以合并在页面中。在线页面描述由netpage页面服务器不间断地维护。页面描述说明页面的可见版面和内容,包括文本、图形和图像。它还描述页面上的输入元素,包括按钮、超链接、以及输入域。虽然不同netpage页面(以及相关的页面描述)的可见内容不同,但是不同netpage的页面描述可以共享组件,例如图像。每个netpage的页面描述可以包括对这些公共组件的引用。Netpage允许netpage系统同时捕捉和处理使用netpage笔在其表面上做出的标记。
多个netpage页面可以共享相同的页面描述。但是,为了能够通过输入区分相同的页面,每个netpage都分配有一个唯一的页面标识符。这种页面标识符非常精确,可以区分需要在所用环境中使用的全部netpage。在较小的环境中,标识符的精确性不一定与较大环境中的一样高。
每个页面描述的引用被编码为一个打印标记。这种标记确定相应的唯一页面,从而间接地确定了页面描述。在本发明的较佳实例中,标记还能确定自己在页面上的位置。标记的特点将在下文中更详细地说明。
标记采用红外线吸收墨水打印在可以反射红外线的任何底质上,例如普通的纸。近红外波长对人眼是不可见的,但是可以由带有适当过滤器的某种固态图像传感器感测。另外,还可以采用对相对波长或绝对波长敏感的传感器,而不需要使用过滤器。在使用适当的底质和传感器时,还可以使用其它的波长。
标记被netpage笔中的面图像传感器感测,然后被解码。下一步,标记中的编码数据被传送到netpage系统中(最好通过最近的netpage打印机)。笔是无线的,能够与netpage打印机通过一条短程无线链路通信。标记非常小,在底质上的排列非常紧密,这样,笔只需在页面上点一下就可以可靠地感测一个标记。重要的是,由于交互作用是无状态的,因此笔必须能够识别标记、提取出页面标识符,并定位每个与页面的交互作用。标记采用纠错方式编码,因此对表面损坏有一定的容忍能力。
Netpage页面服务器为每个打印的netpage页面维护唯一的页面实例,因此,在每个打印netpage的页面描述中,可以为输入域维护一系列不同的用户输入值。
页面描述、页面实例和打印netpage之间的关系在图4中说明。在本发明的一个较佳实例中,页面实例与打印页面的netpage打印机和请求页面的netpage用户(如果知道的话)有关。但是需要说明的是,在本发明的基本形式中,页面实例不一定必须与打印相应物理页面的netpage打印机、请求页面的用户、或者页面的目标用户关联。
1.2 NETPAGE标记1.2.1 标记数据内容在本发明的一个较佳形式中,每个标记确定包含该标记的区域以及该标记在区域中的位置。标记还可以包含与整个区域有关或与该标记有关的标志。例如,一个或多个标志位可以指令标记传感设备提供关于该标记的紧邻区域的功能的反馈,在这种情况下,传感设备不需要访问该区域的描述。例如,当一支netpage笔在一个超链接区域内时,它可以照亮一个“有效面积”LED。
下文中我们将更详细地解释,在本发明的一个较佳实例中,每个标记包含一个易于识别的恒定结构,该结构可以帮助初始检测,从而尽量降低由表面或感测过程导致的偏差的影响。标记最好铺满整个页面,并且应足够小,排列应足够紧密,这样,笔只需在页面上点一下就能够可靠地检测到至少一个标记。重要的是,由于交互作用是无状态的,因此笔必须能够识别页面标识符和定位与页面的每个交互作用。
在本发明的一个较佳实例中,标记引用整个页面的区域以及标识符编码在标记中的区域与出现该标记的页面的页面标识符是意义相同的。在其它实例中,标记引用的区域可以是页面或其它表面的任意一个子区。例如,这个区域可能是一个交互元素的区域,而此时区域标识符可以直接确定交互元素。
每个标记通常包含16位长的标记标识符、至少90位长的区域标识符,以及若干标志位。假设最大标记密度为每平方英寸64个标记,那么一个16位标记标识符最多可标识1024平方英寸的区域面积。把区域和图拼接起来可以不间断地映射更大的区域,同时不需提高标记标识符的精确性。对区域标识符和标记标识符进行区分主要是为了方便起见。在大多数情况下,这两种标识符可以视为一种全局标记标识符。另一方面,为了方便,还可以在标记标识符中引入结构,例如定义标记的X坐标和Y坐标。90位长的区域标识符可以唯一地标识290(1027)个不同的区域。标记还可以包含类型信息,而区域还可以带有混合类型的标记。例如,一个区域可以标有一个标记编码X坐标集合和另一个与编码X坐标间隔的编码Y坐标。需要注意的是,区域标识符和标记标识符的精确性可以高于或低于上述的精确性,这取决于系统的使用环境。
1.2.2 标记数据编码在本发明的一个实例中,每个标记包含120位信息。标记数据的120位是使用(15,5)里德—所罗门编码进行冗余编码的。这样产生360个编码的位,包含6个由15个4位符号构成的编码字。(15,5)编码支持在每个编码字中纠正5个符号差错,也就是说,它允许每个编码字出现33%的符号差错率。
每个4位符号在标记中是连续排列的,而6个编码字的符号在标记中是交错排列的。这样可以保证突发错误(影响多个相邻位的错误)对符号的总体影响最小,并且每个编码字中的符号数最少,从而保证了最大限度地纠正突发错误的可能性。
可以采用任何合适的错误校正码编码方式代替(15,5)里德-所罗门编码,例如采用相同或不同的符号和编码字大小且冗余度更高或较低的里德-所罗门编码,“另一种分组码”、或某种不同类型的编码(例如卷积码,见普伦蒂斯-霍尔出版社1995年出版的“数字通信和存储的差错控制系统”,作者史蒂芬B.威克,该书的内容以互参方式综合在此)。
1.2.3 标记的物理结构图5中显示的标记的物理形式包括固定目标结构15、16、17和可变数据区域18。固定目标结构允许传感设备(例如netpage笔)检测标记并推断其相对于传感器的三维方向。数据区域包含编码的标记数据的各个位。
为了实现正确地再现标记,应以256×256点的分辨率对标记进行处理。当以每英寸1600点的分辨率打印标记时,标记的直径为4毫米左右。在这种分辨率下,标记由一个半径为16点的“静区”环绕。由于这种静区也是由相邻标记构成的,因此它只把标记的有效直径增加了16点。标记包含6个目标结构。检测环15指示传感设备开始检测标记。由于这种环是旋转不变的,而且只需纠正其纵横比就能去掉大多数透视畸变的影响,所以这种环极易检测。方向轴16允许传感设备在传感器偏转时确定标记的平面取向。方向轴是倾斜的,以产生唯一的方向。4个透视目标17允许传感设备准确推断标记的二维空间透视变换,因此可以获得标记相对于传感器的准确的三维位置与方向。
所有目标结构都是冗余的,以提高抗噪性。
标记的总体形状是环形的。这种特点和其它一些特点(例如把标记填充在不等边三角栅格中)是铺满一个任意的非平面表面所必须的。但是,也可以把标记排列在带有n个角的多角形的角上,其中的n为3以上。由于采用圆形检测环15,因此标记中的数据位是以环形方式排列的。如图48所示,为了最大限度地增加数据区位的大小,每个数据位由一个径向楔形510表示,每个楔形是由两条径向线512、一条径向内弧514和一条径向外弧516围成。在1600dpi分辨率下,每个楔形最小为8点,并且每个楔形的基底(即其内弧514)至少等于该最小尺寸(8点)。楔形510的径向高度始终等于最小尺寸(8点)。每4位数据符号由2×2个楔形构成的阵列518表示,见图48。
在6个编码字中,每个编码字的15个4位数据符号被排列在四个同心的符号环18a-18d中,如图5所示,这些数据符号是按照间隔方式排列的,如图49-51所示。第一到第六个编码字520-525的符号被交替地排列在以标记为中心的同心圆环中。
采用这种交错排列方式的目的是尽可能增大相同编码字的任意两个符号之间的平均空间距离。需要说明的是,还可以使用其它方式排列编码字或编码字的数据符号。
标记的物理版面和每个标记中的数据符号的形状和/或排列方式并不是本发明所必须的。所必须的仅仅是在每个标记中为特定用途编码足够的信息。在标记中最好采用冗余手段,但是从根本上说,冗余对于本发明并不是强制要求。因此,也可以使用其它的标记排列方式。例如,在美国专利5625412,5661506,5477012和5852434中以及PCT专利申请PCT/US98/20597中描述了几种其它的标记结构,这些专利申请中的内容以参考方式综合在此。
为了支持通过传感设备与目标区域的“单击”交互,不管传感设备定位的区域或方向如何,传感设备必须能够“看到”其视野中的至少一个完整的标记。因此,传感设备的视野直径必须为标记的尺寸和间隔的一个函数。假设标记的形状为环形,当标记在等边三角栅格上平铺时,可以获得传感器视野的最小直径,如图6所示。
1.2.4 标记图像的处理和解码图5中所示的标记的标记图像处理和解码由一个传感设备(例如图7所示中的netpage笔)进行。当从图像传感器获得捕捉的图像时,图像的动态范围在20处确定。然后,范围的中心被选为图像21的二元门限。下一步,图像按照门限被划分为连接的像素区(即22处的形状23)。由于太小而无法代表标记目标结构的形状被忽略。另外,还需要计算每个形状的尺寸和中心。
然后,在24处,为每个形状计算二元形状力矩25,这些信息为以后定位目标结构提供了依据。中心形状力矩与形状的位置无关,而且可以方便地使其与方向、纵横比和旋转无关。
环形目标结构15是需要首先定位(在26处)的目标。环形具有不受透视畸变影响的优点。通过对每个形状的力矩进行方向标准化和旋转标准化进行匹配处理。当其二次力矩被标准化后,即使发生很明显的透视畸变,也很容易识别环型。环的原始方向和旋转27共同为透视变换提供了有用的近似。
轴目标结构16是下一步需要(在28处)定位的目标。通过把环的标准化施加给每个形状的力矩和把旋转标准化施加给合力矩进行匹配处理。当其二次力矩被标准化后,轴目标就很容易识别了。需要注意的是,为了消除轴的两个方向的可能性,还需要处理一个三次力矩。为此,应把所述形状向一侧倾斜,以消除这种可能性。还需要注意的是,在施加了环的标准化后,只能对轴目标进行旋转标准化,因为透视畸变可能隐藏轴目标的轴。轴目标的原始旋转为标记因笔的偏转29而产生的旋转提供了有用的近似。
四个透视目标结构17是最后需要定位的目标(在30处)。此时,可以根据它们与环目标和轴目标的空间关系、环的方向和旋转、以及轴的方向和旋转来估算这四个透视目标的位置。通过把环的标准化施加给每个形状的力矩可以实现匹配处理。当它们的二次力矩被标准化后,环形透视目标就很容易识别了。与每个估计位置最近的目标被作为一个匹配目标。四个透视目标的原始质心被作为标记空间中已知大小的正方形的透视畸变角31,然后通过对与四个标记空间和像空间点对有关的方程组进行求解来推断(在32处)8个自由度的透视变换33(见1989年月加利福尼亚州伯克利大学EECS系马斯特斯论文的技术报告UCB/CSD 89/516“纹理映射和图像卷曲的基本原理”,该论文的内容以互参方式综合在此。)标记空间向像空间的透视变换用于把标记空间中的已知数据位的位置映射(在36处)到像空间中,在像空间中,位置的实际值被用于对输入图像中四个相关的相邻像素进行双线性插值(在36处)处理。以前计算得到的图像门限21用于限制产生的结果,以获得最终位值37。
当以这样的方式获得了全部360个数据位37时,应对6个60位里德—所罗门编码字的每一个进行解码(在38处),以产生20个解码的位39,或者说全部120个解码的位。需要注意的是,编码字符号是按照编码字的顺序取样的,因此在取样过程中被隐含地取消间隔排列方式。
如上所述,物理标记结构或编码系统不是本发明所必须的,还可以采用标记的其它物理排列方式。很清楚,识别和解码标记图像以取回编码的数据的过程取决于标记的物理结构和用于冗余编码数据的系统。
环目标15只在图像的子区中存在,它与图像的关系能够保证它(如果在图像子区中找到的话)是完整标记的一部分。如果找不到完整标记或者无法成功地对完整标记解码,那么不会为当前格记录笔的位置。如果有足够的处理能力和非最小视野193,那么可以采用另一种策略,即在当前图像上查找另一个标记。
获得的标记数据给出该标记所在区域的标识和该标记在区域中的位置。然后,从标记上的透视变换33和笔的物理轴和笔的光轴之间的已知空间关系可以推断出笔尖在区域中的精确位置35以及笔的总体方向35。
1.2.5 另一种标记结构上述的标记结构可用于在平面上以常规方式平铺标记或在非平面上以不规则方式平铺标记。通常在非平面上无法按常规方式平铺标记。在可以按常规方式平铺标记的较普通的平面情况下,即例如纸板之类的表面,可以使用效率更高的标记结构,以便发挥平铺的常规特性。
另一种标记结构更适合于以常规方式平铺标记,如图6a所示。这种标记4是正方形的,并且带有4个透视目标17。它在结构上与贝内特等人在美国专利5051746中所述的标记相似。该标记代表60个4位里德—所罗门符号47,总共为240位。该标记把每一位表示为一个点48,每个零位以相应点的缺位代表。其透视目标可以在相邻标记之间共享,如图6b和6c所示。图6b显示了16个标记的正方形平铺情况以及相应的最小视野193,该视野必须跨越两个标记的对角线。图6c显示了9个标记的正方形平铺情况,它包含图中的所有1位。
使用(15,7)里德—所罗门编码,112位标记数据被冗余地编码,以产生240个编码的位。4个编码位在标记内是间隔排列的,以便尽可能提高从突发错误中恢复的能力。如前所述,假设采用的是16位标记标识符,那么区域标识符最长为92位。
由于标记的数据承载点48不会与相邻的点重叠,因此标记组不会产生与目标类似的结构。这种方式还可以省墨。由于使用透视目标就可以检测标记,因此不需要其它目标。在这种情况下,标记图像处理方式与1.2.4中所述的方法相似,所不同的是步骤26和28被省略了。
虽然可以在标记中包含方向特性以消除相对于传感器可能获得4个标记方向的情况,但是还可以在标记数据中嵌入方向数据。例如,4个编码字可以排列为使每个标记方向包含一个放置于该方向上的编码字,如图6d所示,其中每个符号都标有其编码字的数量(1-4)以及符号在编码字中的位置(A-O)。然后,标记解码过程要包括在每个方向上对一个编码字进行解码。每个编码字可以包含指示它是否是第一个编码字的一位数据,也可以包含指示它是哪一个编码字的两位数据。后一种方法的优点是当只需要一个编码字的数据内容时,只需对两个编码字进行解码以获得所需的数据。当在一个笔划中不需要改变区域标识符并且只需在笔划开始处进行解码时,可能出现这种情况。在一个笔划中只需要包含标记标识符的编码字。而且,由于在一个笔划中传感设备的旋转变化较慢并且是可预测的,所以对于每个格,通常只需对一个编码字解码。
另外,还可以省去所有透视目标,而依靠自配准的数据表示方法。在这种情况下,每个位值(或多位值)通常由一个明确的图符代表,缺位值由缺少该图符表示。这样可以保证数据网格的良好移植性,因而能够可靠地确定网格并能够在数据取样中检测和纠正其透视畸变。为了能够检测到标记的边界,每个标记数据必须包含一个记号图案,并且必须把这些标记冗余地编码以实现可靠的检测。这种记号图案的开销与明确的透视目标的开销类似。一种这样的方案是使用相对于网格顶点放置的各种点来代表不同的图符,从而代表不同的多位值(见2000年4月Anoto出版的“Anoto技术说明”)。
1.2.6 标记图对标记进行解码将产生一个区域标识符、一个标记标识符以及相对于标记的笔变换。在把标记标识符和相对于标记的笔位置转换为标记区域中的绝对位置之前,必须知道标记在区域内部的位置。这个位置由标记图给出,标记图把标记区域中的每个标记标识符映射为一个相应的位置。标记图类图在图22中示出,它是netpage打印机类图的一部分。
标记图反映了使用标记平铺表面区域的方案,这种方案可以根据表面形式变化。当多个标记区域共享相同的平铺方案和相同的标记编号方案时,它们还可以共享相同的标记图。
特定区域的标记图可以通过区域标识符恢复。在给定了区域标识符、标记标识符和笔变换后,可以恢复标记图。标记标识符可以被转换为区域内部的绝对标记位置,相对于标记的笔位置可以加到标记位置上,从而在区域中产生笔的绝对位置。
1.2.7 标记方案本门中讨论两种不同的表面编码方案,其中每种表面编码方案都使用本节中的上述标记结构。一种较佳的编码方案使用上述的“位置指示”标记。
另一种编码方案使用“对象指示”标记。
一个位置指示标记包含一个标记标识符,当该标记标识符被通过与标记区域有关的标记图翻译时,可以在区域内部产生一个唯一的标记位置。笔相对于标记的位置被加到该标记位置上,从而在区域内部产生笔的位置。而笔的位置又可用来确定笔相对于用户界面元素的位置,所述用户界面元素在与区域有关的页面描述中。采用这种方法不仅能确定用户界面元素本身,还能确定相对于用户界面元素的位置。因此,位置指示标记不支持捕捉笔在特定用户界面元素的区域中的绝对路径。
对象指示标记包含一个标记标识符,该标记标识符能够直接确定与区域有关的页面描述中的用户界面元素。用户界面元素的区域中的所有标记确定了用户界面元素,因此它们是相同的,不能区分开来。所以,对象指示标记不支持捕捉笔的绝对路径。但是,它们支持捕捉笔的相对路径。只要位置取样频率在标记频率的2倍以上,就可以明确地确定笔在一个笔划中从一个取样位置到下一个取样位置的位移。
在上述任何一个标记方案中,标记与netpage上作为用户交互元素的相关视觉元素协同工作,这样,用户可以使用适当的传感设备与打印页面交互,从而通过传感设备读取标记数据并在netpage系统中产生适当的响应。
1.3 文档与页面描述在图25和26中显示了文档与页面描述类图的一个较佳实例。在netpage系统中,文档有三个级别。在最抽象级上,文档836具有一种层次结构,其终端元素839与内容对象840(例如文本对象、文本风格对象、图像对象等)有关。当文档被以特定页面大小根据特定用户选择的比例因子打印到打印机上时,文档被加上页码,否则将被格式化。在某些情况下,格式化的终端元素835与特定内容对象有关,这些内容对象与相应终端元素的内容对象不同,特别是在内容对象与风格有关的情况下。文档和页面的每个打印实例还要单独描述,从而使通过特定页面实例830捕捉的输入与通过相同页面描述的其它实例捕捉的输入分开记录。由于在页面服务器上存在最抽象的文档描述,因此用户可以请求文档的一个副本,而不必接收源文档的特定格式。例如,用户可以通过具有不同页面尺寸的打印机来请求文档的副本。另一方面,带格式的文档描述在页面服务器上的存在使页面服务器能够在特定打印页面上高效地解释用户操作。
带格式文档834包含一组带格式的页面说明5,其中的每个页面说明包含一组带格式的终端元素835。每个带格式的元素在页面上有一个空间范围或区域58。该区域定义了输入元素(例如超链接和输入域)的有效面积。
文档实例831与带格式的文档834对应。它包含一组页面实例830,每个页面实例与带格式文档的一个页面描述5对应。每个页面实例830描述一个唯一的打印netpage 1,并记录该netpage的页面标识符50。如果一个页面实例代表单独请求的页面的副本,那么它不是文档实例的一部分。
一个页面实例包含一组终端元素实例832。只有当终端元素实例记录特定实例的信息时,这种元素实例才存在。因此,每个超链接元素存在一个超链接实例,因为它记录着与页面实例有关的事务处理标识符55;每个域元素存在一个域实例,因为它记录着特定页面实例的输入。但是,静态元素(例如文本流)不存在元素实例。
一个终端元素可以为静态元素843、超链接元素844、域元素845、或页面服务器命令元素846,如图27所示。一个静态元素843可以是带有相关的风格对象854的风格元素847、带有相关的有风格的文本对象855的文本流元素848、带有相关的图像对象856的图像元素849、带有相关的图形对象857的图形元素850、带有相关的影像剪辑对象858的影像剪辑元素851、带有相关的音频剪辑对象859的音频剪辑元素852、或带有相关的脚本对象860的脚本元素853,如图28所示。
页面实例可以具有背景域833,该背景域用于记录在页面上捕捉的任何数字墨水,这种数字墨水可能不适合于特定的输入元素。
在本发明的一个较佳实例中,标记图811与每个页面实例有关,这样,页面上的标记可以被转换为页面上的位置。
1.4 NETPAGE网络在本发明的一个较佳实例中,一个netpage网络包含一组分布的netpage页面服务器10、netpage注册服务器11、netpage标识符服务器12、netpage应用服务器13、netpage出版服务器14、以及netpage打印机601,这些设备通过一个网络19(例如互联网)相互连接,如图3所示。
Netpage注册服务器11是一个记录用户、笔、打印机、应用和出版物之间的信息以及对各种网络活动授权的服务器。在应用事务处理中,它对用户进行鉴权并作为一个代表已鉴权的用户的签名代理。必要时,它还提供手写识别服务。如上所述,netpage页面服务器10维护着与页面描述和页面实例有关的信息。Netpage网络可以包含任意数量的页面服务器,每个页面服务器处理页面实例的一个子集。由于页面服务器还为每个页面实例维护着用户输入值,因此客户机(例如netpage打印机)可以直接向适当的页面服务器发送netpage输入数据。页面服务器对与相应的描述有关的上述输入进行解释。
Netpage标识符服务器12在需要时分配文档标识符51,并通过其标识符分配方案实现页面服务器的负载均衡。
Netpage打印机使用互联网的分布式名称系统(DNS)或类似机制把netpage页面标识符50解析为处理相应页面实例的netpage页面服务器的网络地址。
Netpage应用服务器13是运行交互netpage应用的服务器。Netpage出版服务器14是一个应用服务器,它向netpage打印机出版netpage文档。它们在第二节中详细讨论。
Netpage服务器可以安装在由各种厂商(例如IBM、惠普和Sun)提供的多种网络服务器平台上。多个netpage服务器可以在一个主机上同时运行,一个服务器也可以分布到若干个主机上。由netpage服务器提供的部分或全部功能(特别是由标识符服务器和页面服务器提供的功能)还可以在netpage设备(例如netpage打印机、计算机工作站或局域网)中直接提供。
1.5 NETPAGE打印机Netpage打印机601是一种与netpage系统一起注册的设备,它以即时方式或通过订阅方式打印netpage文档。每台打印机有一个唯一的打印机标识符62,并通过某个网络(例如互联网)与netpage网络相连。网络连接最好是宽带连接。
除了在永久性存储器中保存标识和安全设置外,netpage打印机不需要带有任何永久存储设备。正如用户所知的,“网络就是计算机”。在分布的netpage页面服务器10的帮助下,Netpage能够跨越空间与时间交互,而不必依赖于特定的netpage打印机。
Netpage打印机从netpage出版服务器接收订阅的netpage文档。每个文档以两部分分发版面,以及构成页面的实际文本和图像对象。由于版面是个性化的,因此它通常针对特定用户,因而采用单播方式通过适当的页面服务器传送到用户的打印机上。与此相反的是,文本和图像对象通常是与其他用户共享的,因此被以多播形式传送给用户的打印机和适当的页面服务器。
Netpage出版服务器把文档内容的分割优化为单播和多播。在接到文档版面的单播后,打印机就知道应该侦听哪些多播(如果有的话)。
当打印机接到完整的版面和要打印的文档的对象时,它就可以打印文档了。
打印机对文档进行光栅化,并且在纸张的正反两面同时打印奇数页和偶数页。为此,它带有双工打印引擎控制器760和利用MemjetTM打印头350的打印引擎。
打印过程包括两个可区分的阶段对页面描述进行光栅化以及展开和打印页面图像。光栅图像处理器(RIP)由一个或多个并行运行的标准DSP 757构成。双工打印引擎控制器由定制的处理器构成,这些处理器以实时方式扩展、抖动和打印页面图像,这些处理过程与打印引擎中的打印头的动作同步。
不支持不可见红外打印的打印机可以使用吸收红外线的黑色墨水打印标记,但是这种方式只能在页面的空区域中打印标记。虽然这种页面比使用不可见的红外墨水打印的页面要差一些,但是它们仍然属于netpage。一般的netpage打印机使用纸张上打印netpage。比较专门化的netpage打印机可以在更专用的表面上(例如球形或塑料板上)打印。每台打印机必须支持至少一种表面类型,并且必须支持至少一种标记平铺方案以及用于每个表面类型的标记图。标记图811描述了实际用于打印文档的标记平铺方案,这种方案与文档有关,因此可以正确地解释文档的标记。
图2显示了netpage打印机类图,该图反映了由netpage网络上的注册服务器11维护的、与打印机有关的信息。
在第6节中,我们以图11到16为参考详细说明了netpage打印机的一个较佳实例。
1.5.1 MemjetTM打印头Netpage系统可以支持由各种数字印刷技术制成的打印机,包括热喷墨、压电喷墨、激光电子照相等等。但是,为了使用户更容易接受,netpage打印机最好具有下列特性·照片质量彩色打印·高质量文本打印·高可靠性·较低的打印机成本·较低的墨水成本·较低的纸张成本·操作简单·无噪音打印·高打印速度·同时双面打印·结构紧凑·低功耗目前,市场上还没有哪种打印技术具有上述全部特性。
为了能够使用这些特性生产打印机,本申请人发明了一种新型打印技术,称为MermjetTM技术。MemjetTM是一种即时喷墨技术,它带有使用微型机电系统(MEMS)技术制造的页宽打印头。图17显示了MemjetTM打印头的一个打印元件300。Netpage壁挂式打印机具有168960个打印元件300,以构成1600dpi的页宽双面打印机。这种打印机可以同时打印青色、洋红、黄色、黑色和红外线墨水、还有纸调节剂和墨水固定剂。打印元件300大约为110微米长,32微米宽。这些打印元件的阵列在硅基片301上形成,硅基片301上还带有CMOS逻辑、数据传输、计时、以及驱动电路(没有示出)。
打印元件300的主要元件是喷嘴302、喷嘴边303、喷嘴腔304、液体封口305、墨水通道边306、杠杆臂307、主动致动器梁对308、被动致动器梁对、主动致动器簧片310、被动致动器簧片311、以及墨水入口312。主动致动器梁对308与被动致动器梁对309在接合点319以机械方式连接。这两对梁分别固定在各自的固定点310和311上。元件308、309、310、311和319的结合形成一个悬臂式的电热弯曲致动器320。
图18显示了一排打印元件300的一小部分,包括打印元件300的一个横截面315。图中的横截面315上没有显示墨水,以便清晰地看到通过硅片301的墨水入口312。
图19(a)、19(b)和19(c)显示了MemjetTM打印元件300的工作循环。
图19(a)显示了在打印一个墨滴前墨水弯月面316的静止位置。由于墨水弯月面316上存在表面张力,并且喷嘴腔304和墨水通道边306之间形成液体封口305,因此墨水停留在喷嘴腔中。
在打印时,打印头CMOS电路把数据从打印引擎控制器分发给正确的打印元件,锁存并缓冲数据,从而驱动主动致动器梁对308的电极318。这导致电流通过梁对308一微秒左右,产生焦耳加热。由焦耳加热产生的温度升高使梁对308膨胀。由于被动致动器梁对309没有被加热,所以它不膨胀,这样,会使两个梁对之间产生应力差。这种应力差使电热弯曲致动器320的悬臂端向基片301弯曲。杠杆臂307把这种运动传送给喷嘴腔304。喷嘴腔304向图19(b)中所示的位置移动2微米左右。这会提高墨水压力,迫使墨水321从喷嘴302中滴出,并导致墨水弯月面316凸出。喷嘴边303可以防止墨水弯月面316越过喷嘴腔304的表面。随着梁对308和309的温度平衡,致动器320返回到其原始位置。这样会使墨滴317脱离喷嘴腔中的墨水321,如图19(c)所示。喷嘴腔在弯月面316的表面张力作用下重新填充墨水。
图20显示了打印头350的一段。在netpage打印机中,打印头的长度是纸张在351方向上的全宽(通常为210毫米)。图中显示的一段为0.4毫米长(一个完整打印头的0.2%左右)。在打印时,纸张以方向352移过固定打印头。打印头有6排互成角度排列的打印元件300,这些打印元件可以打印六种颜色或由墨水入口312提供的6种墨水类型。
在工作时,为了保护打印头的易碎表面,在打印头基片301上装有喷嘴护板330。每个喷嘴302都有一个相应的喷嘴护孔331,墨滴通过该喷嘴护孔喷射。为了防止喷嘴护孔331被纸纤维或其它碎屑堵塞,在打印过程中,要使过滤的空气通过进气口332流出喷嘴护孔。为了防止墨水321变干,在打印机空闲时,喷嘴护孔被封堵起来。
1.6 Netpage笔Netpage系统的主动传感设备通常是一支笔101,笔101使用其嵌入式控制器134可以通过一个图像传感器从页面中捕捉和解码红外位置标记。
图像传感器是一种固态设备,它带有适当的过滤器,能够感测近红外波长。在下文中我们将更详细地说明,本发明的系统能够感测笔尖触及表面,而笔能够以足够高的速度感测标记,从而捕捉手写内容(即以200dpi以上的分辨率和100Hz以上的频率)。由笔捕捉的信息被加密并以无线方式传送到打印机(或基站)上,基站上的打印机解释与(已知的)页面有关的数据。在本发明的一种较佳实例中,基站上的打印机也可以向netpage服务器发送信息以便进行解释。
Netpage笔的一种较佳实例既可以作为标记墨水笔使用,也可以作为非标记笔使用。但是,在把netpage系统作为浏览系统使用时(例如当作为互联网界面使用时),标记功能不是必须的。每支netpage笔都注册到netpage系统中,并且具有唯一的笔标识符61。图23显示了netpage笔类图,该图反映了由netpage网络上的注册服务器11维护的、与笔有关的信息。
当任何一种笔尖触及到netpage页面时,笔能够确定其相对于页面的位置和方向。笔尖带有一个力传感器,施加在笔尖上的力量被根据其门限解释,以指示笔是在“向上”运动还是在“向下”运动。这样,笔尖可以在页面上的交互元素上“点击”以便从网络请求信息。而且,捕捉的力量是连续值,因而可以核验签名的整个过程。当笔尖受到的力量高于正常书写所用的力量时,笔尖可以移动。在“点击”时,用户施加的力量应足以移动笔尖。与不可移动的笔尖相比,这样可以为用户提供更好的反馈。
通过以红外光谱对笔尖附近的页面区域193成像,笔能够确定其笔尖在netpage上的位置和方向。它对最近的标记进行解码,并根据观察到的图像标记的透视畸变和笔的光学器件的已知几何形状计算笔尖相对于标记的位置。虽然标记的位置分辨率可能较低(因为页面上的标记密度与标记大小成反比),但是调整后的位置分辨率相当高,超过了进行准确手写识别所需的最低分辨率。
笔相对于netpage的动作被捕捉为一系列笔划。一个笔划包含一系列页面上的带有时间标记的笔位置,这种笔位置的序列开始于落笔事件,截止于提笔事件。当页面标识符改变时,一个笔划还带有netpage页面标识符50,在正常情况下,该页面标识符在笔划的开始处。
每支netpage笔具有相关的当前选择826,它允许用户进行复制和粘贴等操作。选择带有时间标记,这样,在一定的时段后,系统可以丢弃选择内容。当前选择描述页面实例的一个区域。它包含通过笔相对于页面的背景区域的移动而捕捉的最近的数字墨水笔划。当选择的内容通过激活的选择超链接提交给应用后,应用以特定的方式解释选择的内容。
每支笔带有一个当前笔尖824。这个笔尖是由笔最后一次通知给系统的。对上述的默认netpage笔,当前笔尖可以是标记墨水笔尖,也可以是非标记笔尖。每支笔还带有当前笔尖风格825。这个笔尖风格是由应用最后一次指定给笔的(例如,应用对用户从调色板上选择颜色做出的响应)。默认的笔尖风格是与当前笔尖有关的笔尖风格。通过笔捕捉的笔画带有当前的笔尖风格。当笔画被复制时,它们以标记的笔尖风格被复制。每当笔在打印机的范围之内并能够与打印机通信时,笔上的“在线”LED会缓慢地闪烁。当笔无法解码相对于页面的笔划时,它会短暂地启动其“错误”LED。当笔成功地解码了相对于页面的笔划后,它会短暂地启动其“确定”LED。
捕捉的笔画顺序称为数字墨水。数字墨水是图形和手写的数字互换的基础,也是在线手写识别和在线签名核验的基础。
笔是无线形式的,并且通过短程无线链路向netpage打印机发送数字墨水。为了保密和安全,传送的数字墨水被加密,为了有效地传输,数字墨水被打包。但是,每当发生笔提起事件时,数字墨水就会被刷新,以保证打印机中的及时处理。
当笔超出打印机的范围时,它把数字墨水缓存在内部存储器中,内部存储器的容量可以存储10分钟以上的连续书写内容。当笔再一次进入到打印机的范围内时,它把缓存的数字传送给打印机。缓冲器的容量可大可小。笔可以注册给若干台打印机,但是,由于netpage中的全部状态数据即存储在纸张上,又存储在网络上,因此在特定的时间,笔与哪一台打印机通讯是不重要的。
在第6节中,我们以图8到10为参考详细说明了所述笔的一个较佳实例。
1.7 NETPAGE交互当笔用于与netpage 1交互时,netpage打印机601从笔101接收与笔划相关的数据。当笔用于执行动作时(例如笔划),笔会读取标记4的编码数据3。所读取的数据可以用来确定特定页面和相关交互元素的标识并获得笔相对于页面的相对定位指示。指示数据被传送到打印机,在打印机上,指示数据被通过DNS和笔划的页面标识符50解析为netpage页面服务器10的网络地址,netpage页面服务器10维护着相应的页面实例830。然后,打印机把笔划数据传送给页面服务器。如果页面是由以前的笔划确定的,那么在打印机的高速缓存中可能已经具有相关页面服务器的地址。每个netpage包含一个简洁的版面,版面由netpage页面服务器维护(见下文)。版面指向页面对象,例如图像、字体和文本,这些图像、字体和文本通常存储在netpage网络上。
当页面服务器从笔接收到笔划数据时,它返回应用笔划的页面描述,并确定笔划与页面描述的哪个元素相交。然后,它根据相关元素的类别解释笔划。
“点击”一般是落笔位置和提笔位置之间的距离和时间都低于最低门限值的笔划。由点击激活的对象通常只能以点击方式激活,因此较长的笔划将被忽略。笔动作的故障(例如“拖笔”点击)不会使笔的“确定”LED变亮。但是,如果netpage中包含按钮,那么在按钮区域内的落笔和提笔位置都会被登记。
在netpage页面描述中有两种输入元素超链接和表单域。通过表单域的输入还可以激活相关的超链接。
1.7.1 超链接超链接是向远程应用发送消息的一种方法,它通常会引发netpage系统中的打印响应。
超链接元素844确定激活超链接的应用71、一个确定指向应用的超链接的链接标识符54、一个应用系统把用户的应用别名标识符65包含在超链接激活中的“必要别名”标志,以及一个描述,当超链接被记录到收藏夹中或存储到用户的历史列表中时,需要使用超链接的描述。图29中给出了超链接元素类图。
当激活一个超链接后,页面服务器向网络中的某个应用发送请求。应用由应用标识符64确定,并通过DNS以正常方式解析。有三类超链接一般超链接863、表单超链接865、以及选择超链接864,如图30所示。一般超链接可以实现对链接文档的请求,或者向服务器发送优先选择选项。表单超链接把相应的表单提交给应用。选择超链接把当前选择内容提交给应用。例如,如果当前选择中包含一个文本词,那么应用会根据该词的上下文意义翻译一个单页文档,或者把它翻译为不同的语言。每个超链接类型由提交给应用的信息确定。
相应的超链接实例862记录一个事务处理标识符55,该标识符可以标识出现超链接实例的页面实例。事务处理标识符可以确定提供给应用的特定用户的数据,例如由采购应用为用户维护的“购物车”。
系统在选择超链接激活中包含笔的当前选择826。系统在表单超链接激活中包含相关的表单实例868的内容。但是,如果超链接有自己的“提交”属性集,那么表单超链接激活中只包含最后一次提交表单以来的输入。系统在所有超链接激活中都包含一条有效的返回路径。
超链接组866是一个组元素838,它带有相关的超链接,如图31所示。当通过该组中的任何域元素进行输入时,将激活与该组有关的超链接844。超链接组可用于把某个域(例如复选框)关联到超链接行为上。它还与表单超链接的“提交”属性集一起用于为应用提供连续输入。因此,它可用于支持″黑板″交互模型,即,在该模型中,当输入出现时,系统会立即捕捉输入并把它共享。
1.7.2 表单一个表单定义了用于通过一个或多个打印的netpage页面捕捉一系列相关的输入的输入域集合。表单允许用户向运行在服务器上的应用软件提交一个或多个参数。
表单867是文档体系中的一个组元素838。从根本上说,它包含一组终端域元素839。表单实例868代表表单的一个打印的实例。它包含一组域实例870,域实例870相当于表单的域元素845。每个域实例有一个结合值871,结合值871的类型取决于相应域元素的种类。每个域值通过一个特定的打印表单实例(即,通过一个或多个打印的netpage页面)记录输入。图32中显示了表单类图。
每个表单实例有一个状态872,该状态指示表单是活跃的、已提交、无效、还是已过期。在第一次打印时,表单处于活跃状态。当表单被签署后,它将变为冻结状态。当表单的提交超链接被激活后,表单变为“已提交”状态,除非表单的超链接有自己的“提交”属性集。当用户调用一个无效表单,重置表单或复制表单页命令时,表单将变为“无效”状态。当表单处于活跃状态的时间超过表单的生存期时,表单将过期。当表单处于活跃状态时,允许进行表单输入。通过不活跃表单进行的输入将在相关页面实例的背景域833中捕捉。当表单处于活跃状态或被冻结时,允许进行表单提交。当表单处于不活跃状态或没有被冻结时,不允许提交表单,在这种情况下,提交操作会产生一个表单状态报告。
每个表单实例最好与由它产生的表单实例关联(在59处),这样可以提供版本历史信息。采用这种方式,所有表单实例(最新的表单实例除外)将按照特定的周期被从搜索中剔除。
所有输入都作为数字墨水捕捉。数字墨水873包含一组带有时间标记的笔划组874,每个笔画组都带有一组有风格的笔划875。每个笔划包含一组带有时间标记的笔位置876,每个笔位置还包含笔的方向和笔尖的力量。图33中显示了数字墨水类图。
域元素845可以是复选框域877、文本域878、绘图域879、或签名域880。图34中给出了域元素类图。在域的区域58中捕捉的数字墨水将被分配给该域。
复选框域有一个相关的布尔值881,如图35所示。在复选框域的区域中捕获的任何标记(勾号、十字、笔划、填充折线等等)都将使该域的值为真。
文本域带有一个相关的文本值882,如图36所示。在文本域的区域中捕获的数字墨水将被自动地通过在线手写识别转换为文本,获得的文本将被分配给该域的值。在线手写识别是一种习知技术(见《IEEE学报——模式分析与机器智能》,1990年8月第8期,第12卷,“在线手写识别的目前工艺水平”,作者Tappert,C.,C.Y.Suen和T.Wakahara,其内容以互参方式综合在此)。文本域还包括日期和数字域。
签名域带有相关的数字签名值883,见图37。在签名域的区域中捕获的数字墨水根据拥有者的笔的标识被自动地核验。包含签名域的表单的内容的数字签名将被分配给该域的值。数字签名是使用笔用户的私有签名密钥产生的,这种私有签名密钥与拥有表单的应用有关。在线签名核验是一种习知技术(见《模式识别》,1989年第2期第22卷,“自动签名核验和作者识别—目前工艺水平”,作者普拉蒙登,R.和G.洛雷特)。如果域元素的“隐藏”属性为真,那么该域元素就是隐藏的。隐藏的域元素在页面上没有输入区域,也不接受输入。当包含该域的表单被提交时,该域可以带有相关的域值,其域值包含在表单数据中。
在表单域中还可以识别“编辑”命令(例如中划线表示删除)。
由于手写识别算法以″在线″方式工作(即,使用笔动作的动态信息)而不是以“离线”方式工作(即,只使用笔标记的位图),所以这种技术能够以相当高的精度识别连笔字符,不需要作者对其进行训练。与作者无关的笔迹模型可以随着时间的推移自动产生,但是在必要时也可以预先产生。
上述的数字墨水包含笔划序列。开始于特定元素区域任何笔划都被追加到该元素的数字墨水流中,以便随后进行判读。没有追加到对象的数字墨水流中的笔划将被追加到背景域的数字墨水流中。
在背景域中捕获的数字墨水将作为选择姿势判读。一个或多个对象的边界将作为一系列有界对象判读,但是实际的判读方式与特定应用有关。表2总结了笔与netpage的各种交互作用。
表2-笔与netpage的交互作用总结

系统为每支笔维护着当前选择。选择只包含在背景域中捕获的最近一个笔划。在超过一定时间后,选择将被清除,以保证笔的可预测行为。在每个域中捕获的原始数字墨水被保存在netpage页面服务器上,当把表单提交给应用时,这种数字墨水可以与表单数据一起发送给应用。这样,如果应用对最初的转换(例如手写文本的转换)存在疑义时,可以直接检查原始数字墨水。例如,采用这种方式,对于没有通过特定应用相容性检查的表单,用户可以在应用级别上对其进行干预。从更广意义上说,还可以把表单的整个背景区域作为一个绘图区域。这样,假设用户要求对表单域以外的填充域进行修正,当在表单的各个域之外存在数字墨水时,应用可以把表单发送给操作员。
图38显示了处理笔相对于netpage的输入的过程流程图。该过程包括从笔接收一个笔划(在884处);确定笔划中的页面标识符50指向的页面实例830(在885处),搜索页面描述5(在886处);(在887处)确定带格式元素839(其区域58与笔划相交);(在888处)确定带格式元素是否与一个域元素对应,如果是,把接收的笔划追加到域值871的数字墨水中(在892处),翻译该域的所有数字墨水(在893),并确定该域是否是某个超链接组866的一部分(在894处),如果是,激活相关的超链接(在895处);(在889处)确定带格式元素是否与某个超链接元素对应,如果是,(在895处)激活相应的超链接;如果没有输入域或超链接,(在890处)把接收的笔划追加到背景域的数字墨水中;并(在891处)把接收的笔划复制到当前笔的当前选择826中,当前笔的当前选择由注册服务器维护。
图38a显示图38的过程的步骤893的详细流程图。其中在域中累积的数字墨水被按照域的类型判读。该过程包括(在896处)确定所述域是否是一个复选框和(在897处)确定数字墨水是否代表一个选择记号,如果是,那么(在898处)把域值置为真;(在899处)确定该域是否是一个文本域,如果是,(在900处)在适当的注册服务器的帮助下把数字墨水转化为计算机文本,并(在901处)把转换得来的计算机文本分配给域值;(在902处)确定该域是否是一个签名域,如果是,(在903处)在适当的注册服务器的帮助下把数字墨水核验为笔的拥有者的签名,(在904处)为相应表单的内容建立一个数字签名,并在注册服务器的帮助下,使用笔拥有者的私有签名密钥(与相应的应用有关)(在905处)把数字签名分配给域值。
1.7.3 页面服务器命令页面服务器命令是由页面服务器本地处理的命令。这种命令直接在表单、页面和文档实例上应用。
页面服务器命令907可以是无效表单(void form)命令908、复制表单(duplicate form)命令909、重置表单(reset form)命令910、获取表单状态(get form status)命令911、复制页面(duplicate page)命令912、重置页面(reset page)命令913、获取页面状态(get page status)命令914、复制文档(duplicate document)命令915、重置文档(reset document)命令916、或获取文档状态(get document status)命令,见图39所示。无效表单(void form)命令使相应表单实例无效。复制表单(duplicateform)命令使相应表单实例无效,然后产生当前表单实例的一个活跃打印副本,同时保留域值。副本中包含与原始超链接事务处理标识符相同的超链接事务处理标识符,因此,对于一个应用来说,无法区分原表单和复制表单。重置表单(reset form)命令使相应表单实例无效,然后产生表单实例的活跃打印副本,其中的域值被丢弃。副本中包含与原始超链接事务处理标识符相同的超链接事务处理标识符。获取表单状态(get formstatus)命令为相应表单实例的状态产生一个打印报表,包括报表的出版者,报表的打印时间、报表的目标用户、以及表单实例的表单状态。
由于表单超链接实例包含事务处理标识符,因此在产生新表单实例时必须包含应用程序。因此,请求新表单实例的按钮通常作为一个超链接实现。复制页面(duplicate page)命令产生相应页面实例的打印副本,其中的背景域值被保留。如果页面包含表单或者页面是某个表单的一部分,那么复制页面命令将被作为一个复制表单命令处理。重置页面(reset page)命令产生相应页面实例的一个打印副本,其中的背景域值被丢弃。如果页面包含表单或是某个表单的一部分,那么重置页面命令将被作为重置表单命令处理。获取页面状态(get page status)命令为相应页面实例的状态产生一个打印报表,包括报表的出版者、报表的打印时间、报表的目标用户、以及包含在页面中的所有表单或页面所属的表单的状态。
每个netpage上的netpage标志通常与本发明的较佳实例中的复制页面元素有关。
当页面实例被复制时,域值被保留,并且被打印到相应的本地表单中,即,选定记号将作为标准的选定记号图形,文本将作为排版文本,只有图形和签名保持原始形式,但是,签名最好带有一个指示成功签名核验的标准图形或以这样的一个标准图形代替。
复制文档(duplicate document)命令产生相应文档实例的一个打印副本,其中的背景域值将被保留。如果文档包含表单,那么复制文档命令将按照复制表单命令的执行方式复制表单。重置文档(reset document)命令产生相应文档实例的一个打印副本,其中的背景域值将被丢弃。如果文档包含表单,那么重置文档命令将按照重置表单命令的执行方式重置表单。获取文档状态(get document status)命令为相应文档实例的状态产生一个打印报表,包括报表的出版者、报表的打印时间、报表的目标用户、以及文档中包含的每个表单的状态。
如果页面服务器命令的“在选中时”属性被置为真,那么在页面上执行的命令将由笔的当前选择确定,而不是由包含命令的页面确定。采用这样的方式可以打印页面服务器命令的菜单。如果目标页面不包含指定的页面服务器命令的页面服务器命令元素,那么该命令将被忽略。
通过在超链接组中嵌入相关的页面服务器命令元素,应用程序可以实现特定的处理。在这种情况下,页面服务器激活与超链接组有关的超链接,而不是执行页面服务器命令。
如果页面服务器命令元素的“隐藏”属性被置为真,那么该元素就是隐藏的。隐藏的命令元素在页面上没有输入区域,因此不能由用户直接激活。但是,如果页面服务器命令有“在选中时”属性集,那么该命令元素可以通过嵌入在不同页面中的页面服务器命令激活。
1.8 NETPAGE的标准特性每个被打印的netpage在其底部最好带有netpage标志,以指示它是一个netpage并具有交互属性。该标志还可作为一个复制按钮。在大多数情况下,“点击”该标志可以产生页面的一个副本。对于表单,该按钮产生整个表单的一个副本。对于安全文档(例如入场券或赠券),该按钮可以提供一个说明或广告页。
默认的单页复制功能由相关的netpage页面服务器直接处理。特殊的复制功能通过把该标志按钮链接到某个应用处理。
1.9 用户帮助系统在本发明的一个较佳实例中,netpage打印机带有一个标为“帮助”的按钮。当按下该按钮时,会出现一个包含下列信息的信息页面·打印机的连接状态·打印机墨水的状态·最高一级帮助菜单·文档操作菜单
·最高一级netpage网络目录帮助菜单提供一个多层次的手册,该手册介绍如何使用netpage系统。
文档操作菜单包含下列功能·打印一份文档·打印一份空表单·打印文档状态用户只需按下按钮然后触及文档的任何页面就可以调用文档功能。文档的状态指明文档的出版者、出版时间、目标用户、以及文档作为表单提交的目标用户和提交时间。
Netpage网络目录允许用户在网络上操作出版物和服务的层次结构。另外,用户还可以呼叫netpage网络“900”号码“黄页目录”并向操作员求助。操作员可以找到所需的文档,并把该文档发送到用户的打印机上。对于特定的文档类型,出版者或用户需要支付一定的“黄页目录”服务费。如果打印机无法打印的话,那么就无法使用帮助页面。在这种情况下,“错误”灯会变亮,用户可以请求通过网络进行远程诊断。
2.个性化的出版模型在下文中,我们将以新闻作为一种标准出版物来说明netpage系统的个性化机制。虽然新闻经常被人们理解为报纸和时事刊物上的新闻,但是在本发明中,新闻的范围比较广泛。
在netpage系统中,可以使用多种机制对新闻出版物的社论内容和广告内容进行个性化。社论内容按照读者明确指定的和默认的专题进行个性化。广告内容按照读者的所在地和人口分布个性化。
2.1 社论个性化用户可以使用两种类型的新闻来源提供新闻出版物的机构和提供新闻流的机构。虽然新闻出版物由出版机构汇总和编辑,但是新闻流既可以由新闻出版机构汇总,也可以由专门的新闻汇总机构汇总。新闻出版物通常是指传统的报纸和新闻杂志,而新闻流可以有多种形式例如通讯社提供的“原始”新闻、连环漫画、自由职业作者的专栏、好友的公告板、或者读者自己的电子邮件。
Netpage出版服务器支持出版编辑后的新闻出版物以及对多个新闻流进行汇总。通过汇总和对由读者直接选择的新闻流进行排版,netpage出版服务器能够在没有社论的页面上加入广告。
用户可以选择一种或多种新闻出版物并为每种新闻出版物进行个性化,从而产生自己的日报。所获得的个性化内容将被打印并装订在一起,成为一张报纸。家庭的各个会员可以选择不同的日刊然后对他们进行定制,从而满足自己的独特兴趣和口味。
对于每个出版物,读者还可以挑选特定的部分。有些部分是每日提供的,而另一些可能是按周提供的。每日部分可以从纽约时报在线这样的出版物获得,可以包括“首页特刊”、“国家新闻”、“国际新闻”、“观点”、“商务”、“艺术与生活”、“科技”、以及“体育”等。不同出版物的可用部分不同。
读者还可以采用任意数量的新闻流来定制各个部分,从而扩展日报的范围。另外,还可以为电子邮件和好友的通知(“个人通知”)产生定制内容,或者为特定主题(“警报”或“花边新闻”)监视新闻来源而定制内容。
对于每个部分,读者还可以指定其规格(可以是定性的(例如短、中、长)或定量的(例如页数限制))以及广告的比例(可以是定性的(例如高、一般、低、无)或定量的(例如某个百分数))。
读取还可以指定自己对短文章或长文章的偏爱。每篇文章都有短和长两种形式,以适应用户的偏好。
另外,文章还可以具有不同的版本,以便满足不同层次和不同年龄的读者,例如可以提供儿童版和成人版等。读者可以根据自己的年龄选择适当的版本。另外,读者还可以指定“阅读年龄”,“阅读年龄”优先于实际年龄。
构成每个部分的文章由编者选择和确定优先顺序。每篇文章还指定了有效寿命期。默认情况下,这些文章被按照先后顺序提供给所有相关的用户,并受用户指定的空间限制。
在某些部分中,读者还可以启用合作过滤。然后,可以对存在了一定时间的文章使用这个功能。每篇可以进行合作过滤的文章将被打印出来,并且在文章的结尾处加上评价按钮。这些按钮可以实现方便地选评(例如“喜欢”或“不喜欢”),这样,读者对文章进行评价的可能性将提高。这样,编者可以优先阅读优先级较高和有效寿命较短的文章,然后把这些文章提供给大多数相关用户。
读者可以指定一个新奇系数(可以是定性的(例如“别吓我”)或定量的)。较高的新奇系数可以降低合作过滤的匹配指标。采用较高的系数,读者收到相应部分的可能性将提高。可以为一周中的不同日期指定不同的新奇系数。
读者还可以在某个部分中指定感兴趣的特定主题,这样会改变由编者分配的优先级。
读者的互联网连接速度影响传递图像的数量和质量。读者可以指定接收较少数量的图像、接收较小的图像、或者同时指定两者。如果不想减少图像的数量或大小,那么可以采用较低的质量传递图像(例如以较低的分辨率或较高的压缩比)。另外,传递图像的数量、大小和质量都可以调整。在全局水平上,读者可以指定如何对各种量、日期、时间和币值进行本地化。包括指定使用英制还是公制、本地时区和时间格式、本地货币、以及本地化中是否包含就地翻译或注释。在默认情况下,这些参数选择是根据读者的所在地产生的。
为了降低视力不好的读者阅读文章的困难,读者可以指定使用较大的字体显示。这样,文本和图像都可以相应地缩放,而每页中包含的信息较少。出版新闻出版物所用的语言以及相应的文本编码是出版物的特性,因此用户无法优先选择。但是,可以把netpage系统配置为在各种图形用户界面中提供自动翻译服务。
2.2 广告本地化和定位社论内容的个人化直接影响广告内容,因为广告内容的版面安排通常要利用社论的环境。例如,旅游广告一般出现在旅游部分中,而不会出现在其它地方。社论内容对广告商的价值(以及对出版商的价值)在于能够吸引大量的读者。
有效的广告通常以地点和人口分布为基础。地点确定了特殊服务、零售商等的大致取向以及与地方团体和环境有关的情趣和爱好。人口分布确定了大众兴趣和偏好以及可能的消费模式。
新闻出版商的最有利可图的产品是广告“版面”,而广告是由出版物的地域方位、读者群的规模、读者群的人口分布、以及可用于广告的页面区域决定的。
在netpage系统中,netpage出版服务器针对每个部分估算出版物的广告版面的多维尺寸,还要考虑到出版物的地域范围、该部分的读者群、每个读者为该部分分配的版面尺寸,每个读者的广告比例、以及读者的人口分布。与其它媒体比较,netpage系统能够更细致地确定广告版面,并且能够把更小的广告版面独立销售。因此,netpage系统能够使广告版面更加“物有所值”。
例如,可以把相同的广告“中缝”按不同的比例销售给若干家广告商,而每个读者的页面可以随机地接收某个广告商的广告,这样可以在总体上保证了销售给每家广告商的广告版面比例。
Netpage系统允许把广告直接链接到详细的产品资料和在线采购。因此,它可以提高广告版面的潜在价值。
由于个人化和本地化是由netpage出版服务器自动处理的,因此广告汇总商可以任意采用广泛的地理和人口分布范围。最终的汇总是非常高效的,因为它是自动完成的。因此,出版商利用广告汇总商比直接捕捉广告成本更低,效率更高。即使广告汇总商提取一定比例的广告收入,出版商也会发现这是一种双赢途径,因为广告汇总的效率将得到提高。广告汇总商作为广告商和出版商之间的一种中介机构,并且可以把相同的广告刊登在多个出版物上。
值得注意的是,netpage出版物上的广告安排可能比传统出版物上的更复杂,因为netpage出版物的广告版面更复杂。在不考虑广告商、广告汇总商和出版商之间的磋商的复杂性时,较佳的netpage系统可以对这些磋商提供一定的自动支持,包括支持广告版面的自动拍卖。对于收益较少的广告(例如较小或高度地方化的广告),自动化对广告的排版更加有利。在磋商版面后,广告汇总商可以捕捉和编辑广告,并把广告保存到netpage广告服务器上。相应地,出版商在相关的netpage出版服务器上记录广告的版面。当netpage出版服务器编排好每个用户的个性化出版物时,它从netpage广告服务器中检取相关的广告。
2.3 用户配置2.3.1 信息过滤新闻和其它出版物的个性化取决于对特定用户配置信息的分类,包括·出版物定制
·合作过滤指标·联系信息·显示选择出版物的定制通常与具体出版物有关,因此,定制信息由相关的netpage出版服务器维护。
合作过滤指标包含用户对如果新闻条目的评价。它用于把不同用户的兴趣关联起来,以便提供建议。虽然使每个合作过滤指标独立于所有特定的出版物有一定好处,但是有两个原因表明,应该为每个出版物提供单独的指标与不同的出版物相比,用户对相同出版物的指标有更多相同之处;另外,出版物很可以把其用户的合作过滤指标作为其品牌价值的一部分。因此,合作过滤指标也由相关的netpage出版服务器维护。
联系信息(包括姓名、街道地址、邮政编码、州、国家、电话号码)从本质上说是全局性的,因此由netpage注册服务器维护。
显示选择(包括数量、日期和时间)也是全局性的,因此也以同样方式维护。
广告的本地化取决于用户的联系信息中给出的地点,而广告的定位取决于个人信息(例如出生日期、性别、婚姻状况、收入、职业、教育等)或定性的派生信息(例如年龄范围和收入范围)。
对于愿意向广告公开自己的个人信息的用户,其信息由相关的netpage注册服务器维护。如果没有这种信息,那么可以根据与用户的邮政编码或ZIP+4编码有关的人口分布来定位广告。
每个用户、每支笔、每台打印机、每个应用提供商和应用都分配有唯一的标识符,而netpage注册服务器维护着它们之间的关系,如图21、22、23和24所示。为了便于注册,应把出版商视为一种特殊类型的应用提供商,把出版物视为一种特殊类型的应用。
每个用户800可以被授权为使用若干台打印机802,而每台打印机也允许若干用户使用。每个用户有一台默认打印机(在66处),在默认情况下,期刊打印到该打印机上,但是,即时打印的页面被提供给与用户交互的打印机。服务器跟踪用户有权在其默认打印机上打印哪些出版商的出版物。出版商不需要记录任何特定打印机的标识符,相反,可以根据需要获得打印机的标识符。
当用户订阅808出版物807时,出版商806(即应用提供商803)被授权向指定的打印机或用户的默认打印机打印该出版物。用户可以在任何时候撤回这种授权。每个用户可以有若干支笔801,但是一支笔只能属于一个用户。如果某个用户被受权使用一台特定的打印机,那么该打印机可以识别用户的所有笔。
笔标识符用于通过DNS以正常方式定位由特定的netpage注册服务器维护的相应用户配置。
Web终端809可以被授权在特定的netpage打印机上打印,这样,在Web浏览过程中遇到的Web页面和netpage文档可以方便地在最近的netpage打印机上打印出来。
对于打印在提供者的打印机上的出版物,netpage系统可以代表打印机提供者对其收入收取费用和手续费。这种收入可以包括广告费、点击费、电子贸易手续费、以及交易费用。如果打印机由用户所有,那么用户就是打印机提供者。
每个用户还有一个netpage账户820,该账户用于积累微量负债和盈利(例如上一段中描述的项目)、联系信息815(包括姓名、地址和电话号码)、全局参数选择816(包括保密、提供和本地化设置)、任意数量的生物测定学记录817(包括用户的加密签名818、指纹819等)、由系统自动维护的笔迹模型819、以及用于SET电子贸易支付的付费卡账户821。
2.3.2 收藏列表一个netpage用户在netpage网络上可以拥有一个收藏列表,该列表包含有用文档的“收藏”链接。该列表由系统为用户维护。它被组织为文件夹的一个层级924。图41中显示了这种层级的一个较佳实例。
2.3.3 历史列表系统最好为每个用户维护一个历史列表929,历史列表中包含由用户通过netpage系统访问的文档的链接。历史列表是一个按日期顺序排列的列表,图42的类图中显示了历史列表的一个较佳实例。
2.4 智能版面Netpage出版服务器自动地对每个用户的个性化出版物页面进行排版,这种排版是按各个部分进行的。由于大多数广告都是预格式化的矩形,所以这些广告被安排在社论内容之前的页面上。
某个部分的广告率可以通过随意改变该部分中每个页面的广告比来实现,广告版面算法利用了这种方法。这种算法尝试把联系紧密的社论和广告内容放在一起,例如把屋面材料的广告放到包含自我动手(DIY)修补屋面的内容的出版物中。
然后,根据各种美学规则编排为用户挑选的社论内容,包括文本和相关的图像与图形。
在合版时,还要重复整个过程(包括广告的选择和社论内容的选择),以便更好地实现用户要求的各部分尺寸。但是,对各部分尺寸的选择应按长期原则进行匹配,这样可以使每日的版面有所不同。
2.5 文档格式当文档被编排好后,应对其进行编码,以便高效分发和在netpage网络上长期存储。
最基本的效率机制是把特定用户的版本信息与由多个用户版本共享的信息分离开来。特定信息包含版面。共享信息包含版面涉及的对象,包括图像、图形和文本。
文本对象包含格式丰富的文本,这种文本最好采用可扩展样式表语言(XSL)以可扩展标记语言(XML)表示。XSL可以为与放置文本的区域无关的文本格式提供精确控制,在本文中,文本区域是由版面提供的。文本对象包含支持自动翻译的嵌入语言代码以及帮助编排段落格式的嵌入断字提示。
图像对象对图像进行编码(最好使用JPEG 2000小波压缩图像格式)。图形对象对二维图形进行编码(最好使用可缩放矢量图形(SVG)格式)。其它的格式也可用于文本、图像和图形。
版面本身包含一系列放置的图像和图形对象、链接的文本流对象(文本对象通过该对象流动)、上述的超链接和输入域、以及水印区域。这些版面对象总结在表3中。版面使用适合于高效分发和存储的紧凑格式。
图3-netpage版面对象


2.6文档的分发如上所述,为了能够在netpage网络上高效地分发和长久存储文档,需要把特定用户的版面从其指代的共享目标分离开来。
当订阅的出版物可以分发时,netpage出版服务器在netpage标识符服务器12的帮助下为每个页面、页面实例、文档和文档实例分配一个唯一的标识符。
该服务器为共享内容计算一组优化的子集,并为每个子集建立一个多播通道,然后,使用多播通道的名称标记每个特定用户的版面,多播通道将承载由版面使用的共享内容。然后,服务器以单播方式通过适当的页面服务器把每个用户的版面传送给该用户的打印机上,单播完成后,服务器以多播方式通过指定的通道发送共享内容。在接收到单播内容后,每个页面服务器和打印机向版面中指定的多播通道订阅。在多播过程中,每个页面服务器和打印机从多播流中提取由其版面指代的对象。页面服务器不断存档接收到的版面和共享内容。另外,也可以使用其它技术分发数据。
当一台打印机接收到由其版面指代的全部对象后,该打印机重建完整填充的版面,然后对其光栅化并打印。
在一般情况下,打印机打印页面的速度要比页面的提供速度高。假设每个页面的四分之一覆盖有图像,那么页面的平均大小不超过400KB。因此,打印机可以在其64MB存储器中存储100个以上的页面,实现临时缓冲。打印机的打印速度为每秒一个页面。这相当于每秒400KB或每秒3Mbit的页面数据率,这种速度与通过宽带网络提供页面数据的最高速度相当。
即使在异常情况下(例如打印机空纸),用户也可以在打印机的100页内存容量用完之前重新装纸。
但是,如果打印机的内部存储器真的已满,那么当出现多播时,打印机将无法使用多播内容。因此,netpage出版服务器允许打印机提交重新进行多播的请求。当这种请求的数量达到临界值或出现超时时,服务器会重新多播相应的共享对象。
打印一个文档后,打印机可以随时从相关的页面服务器取回其版面和内容,然后产生文档的副本。
2.7 即时文档当用户请求一个netpage文档时,系统可以采用与处理期刊类似的方式对该netpage文档进行个性化并提供该文档。但是,由于没有共享内容,所以系统将直接向请求的打印机提供文档,而不必使用多播。
当用户请求非netpage文档时,系统不对该文档进行个性化,而是通过指定的netpage格式化服务器提供该文档,netpage格式化服务器将把该文档重新变为netpage文档。Netpage格式化服务器是一种特殊的netpage出版服务器。Netpage格式化服务器支持各种互联网文档格式,包括Adobe PDF和HTML。如果是HTML文档,netpage格式化服务器将使用打印页面的较高分辨率以一种多列格式提供网页,并提供目录表。它可以自动地包含与所请求的页面链接的所有网页。用户还可以通过优先选项调整这种行为。
Netpage格式化服务器可以在任何互联网文档中加入标准的netpage行为(包括交互性和持久性),不管互联网文档来自哪里或者采用何种格式。它使netpage打印机和netpage页面服务器不必理解不同的文档格式,也使Web服务器不必理解netpage系统。
3. 安全性3.1 密码系统密码系统用于在存储和运输中保护敏感信息以及为交易鉴权交易双方。有两种广泛应用的密码系统秘密密钥密码系统和公共密钥密码系统。
Netpage网络同时使用这两类密码系统。
秘密密钥密码系统也称为对称密码系统,它使用同一个密钥加密和解密消息。需要互换消息的双方首先需要安全地交换秘密密钥。
公共密钥密码系统也称为非对称密码系统,它使用两个密钥。这两个密钥在数学上是相关的,使用一个密钥加密的消息只能使用另一个密钥解密。其中一个密钥公开,而另一个不公开。公共密钥用于加密提供给持有私有密钥的人的消息。当消息被使用公共密钥加密后,只能使用私有密钥对其解密。这样,双方可以安全地交换信息,而不必首先交换秘密密钥。为了保证私有密钥的安全性,通常私有密钥的持有者要产生一个密钥对。
公共密钥密码系统可用于产生数字签名。私有密钥的持有者可以为消息产生已知的哈西表,然后使用私有密钥加密哈西表。然后,任何人都可以使用公共密钥对加密的哈西表进行解密,并根据消息验证,从而验证构成私有密钥持有者的“签名”的加密的哈西表。如果签名是附加到消息上的,那么消息的接收者既可以检验消息的真实性,又可以检验该消息是否在传输过程中被更改过。
为了使公共密钥密码系统能够工作,必须采用某种方法安全地分发公共密钥,这种方法必须能防止公共密钥的假冒。这通常是采用证书和证书授权机构实现的。证书授权机构是一个可信的第三方,它对公共密钥和用户身份之间的关系进行鉴权。证书授权机构通过检查身份证验证人员的身份,然后建立和签署包含人员身份的详细信息和公共密钥的数字证书。信任证书授权机构的任何人都可以高度信任并使用证书中的公共密钥。
他们只需验证证书上签署有证书授权机构的签名,而证书授权机构的公共密钥是公开的。
在大多数事务处理环境中,公共密钥密码系统只用于产生数字签名并安全地交换秘密对话密钥。其它任务采用秘密密钥密码系统执行。
在下面的讨论中,当涉及netpage打印机和服务器之间的安全信息传输时,实际发生的情况是打印机获得服务器的证书,并参照证书授权机构对证书进行鉴权,然后使用证书中的公共密钥-交换密钥与服务器交互秘密对话密钥,最后使用秘密对话密钥加密消息数据。根据定义,对话密钥的生存期可以任意短。
3.2 NETPAGE打印机的安全性每台netpage打印机在制造时都分配有一对唯一的标识符,这对标识符存储在打印机的只读存储器中,也存储在netpage注册服务器的数据库中。第一个标识符62是公共的,它在netpage网络上唯一地标识打印机。第二个标识符是秘密的,它在打印机第一次注册到网络时使用。
在安装后,当打印机第一次连接到netpage网络上时,它产生一个用于签名的公共/私有密钥对。它把秘密标识符和公共密钥安全地传送到netpage注册服务器上。服务器把秘密标识符与记录在其数据库中的打印机的秘密标识符比较,如果两个标识符相配,那么就接受注册。然后,服务器产生和签署一个包含打印机的公共标识符和公共签名密钥的证书,并把该证书存储到注册数据库中。
Netpage注册服务器作为netpage打印机的一个证书授权机构,由于它可以访问秘密信息,因此可以验证打印机的身份。
当用户订阅出版物时,会在netpage注册服务器的数据库中产生一个记录,使netpage注册服务器授权出版商向用户的默认打印机或指定的打印机打印出版物。每个通过页面服务器发送到打印机的文档都带有特定用户的地址,并由出版商使用自己的私有签名密钥签名。页面服务器通过注册数据库验证出版商有权向指定用户提供出版物。页面服务器使用出版商的公共密钥验证签名,出版商的公共密钥由存储在注册数据库中的出版商证书获得。
Netpage注册服务器接受向数据库添加打印授权的请求,但是这些请求必须是通过注册到打印机的笔发起的。
3.3 NETPAGE笔的安全性每支netpage笔在制造时都分配有一个唯一的标识符,该标识符存储在笔的只读存储器中,也存储在netpage注册服务器的数据库中。笔标识符61在netpage网络上唯一地标识笔。
一支netpage笔可以“知道”若干台netpage打印机,而一台打印机也可以“知道”若干支笔。当笔在打印机的有效范围内,它通过无线频率信号与打印机通信。当笔和打印机被注册后,它们定期地互换对话密钥。每当笔向打印机传送数字墨水时,它始终使用适当的对话密钥加密数字墨水。数字墨水绝不能以明码方式传送。
每支笔为自己知道的每台打印机存储着一个对话密钥,对话密钥由打印机标识符索引;每台打印机为自己知道的每支笔存储着一个对话密钥,并由笔标识符索引。笔和打印机存储对话密钥的容量都是有限的,在必要时,它们会以新的对话密钥覆盖时间最久的对话密钥。
当笔进入打印机的有效范围内时,笔和打印机确定是否能够识别对方。如果不能识别对方,打印机会确定自己是否支持该笔。存在这种可能性是因为该笔属于一个注册为可以使用该打印机的用户。如果打印机应该识别该笔但是没有识别,它会启动一个自动笔注册步骤。如果打印机无法识别该笔,它对笔产生回应并忽略该笔,直到该笔被插入到一个充电帽中,此时打印机将启动注册步骤。
除了公共标识符,笔还带有一个秘密密钥—交换密钥。密钥—交换密钥在笔制造时也记录到netpage注册服务器的数据库中。在注册过程中,笔把其标识符传送给打印机,而打印机把笔的标识符传送给netpage注册服务器。服务器为打印机和笔产生一个对话密钥,并安全地把对话密钥传送给打印机。它还传送使用笔的密钥—交换密钥加密的对话密钥的一个副本。打印机在自己的存储器内存储对话密钥并以笔标识符对其索引,然后把加密的对话密钥传送给笔。笔在其内部存储器中存储对话密钥,并以打印机标识符对其进行索引。
虽然在笔注册协议中一支假笔可以假冒真笔,但是只有真笔能够对打印机传送的对话密钥进行解密。
当上述的未注册笔第一次被注册时,它的功能是受限制的,直到它被分配给某个用户。一支已注册的但“没有主人”的笔只能用来请求和填写netpage用户和笔注册表,以便为自己注册一个新用户或者把自己付给一个现有用户。
由于笔的硬件性能有限,因此它使用秘密密钥进行加密,而不使用公共密钥加密。
3.4 安全文档Netpage系统支持提供安全文档,例如入场券和赠券。Netpage打印机带有一个打印水印的装置,但是只有在经过授权的出版商请求时,它才能执行这个功能。出版商在其证书中指明其打印水印的权限,而打印机能够对这种权限鉴权。
“水印”打印过程在页面的指定“水印”区域中使用另一种抖动矩阵。在打印后,相互背靠的页面上包含重合的镜像图像水印区域。当透过纸张同时看奇数和偶数页的水印区域时,可以发现这两个区域的水印产生干涉效应。
这种效应与水印的相似之处是,在只看页面的单侧时,它是不可见的,并且当通过一般方法复制页面时,这种效应会丢失。
安全文档的页面不能使用上述1.9节中所述的内嵌netpage复制机制复制。即使在能够感测netpage的复印机上也无法复制netpage页面。
安全文档通常是作为电子贸易交易的一部分产生的。因此,它们可以包含用户的照片,这种照片是在用户向netpage注册服务器注册生物测定学信息时捕获的,如第2节所述。
当接收到一个安全的netpage文档时,接收者可以采用普通方式请求其状态,从而核验其可靠性。安全文档的唯一标识符只有在文档的生命期内才有效,并且,安全文档的标识符是以不连续的方式分配的,这样可以防止伪造者推测标识符。安全文档核验笔可以内嵌有对核验故障的反馈能力,以便支持简单的点击核验。
很明显,从加密的角度看,水印和用户的照片都不是安全的。它们只能防止粗略伪造。在线文档核验(特别是使用核验笔)的安全性较高,但是仍不是100%安全的。
3.5 不可抵赖性在netpage系统中,用户提交的表单被可靠地传送给表单处理者,并且在netpage页面服务器中长期归档。因此,收件人无法抵赖接收了表单。如第4节所示,采用本发明的系统实现的电子贸易支付方式也是收款人无法抵赖的。
4. 电子贸易模型4.1 安全电子交易(SET)Netpage系统把安全电子交易(SET)系统作为自己的一个支付系统。由MasterCard和Visa开发的SET以付费卡为中心,这从它的词汇上也可以反映出来。但是,该系统在很大程度上不依赖于所用账户的类型。其它的支付系统也可以使用。
在SET中,持卡人和商家向证书授权机构注册,并由证书授权机构发给证书,证书中包含他们的公共签名密钥。证书授权机构与卡发行机构一起核验持卡人的注册信息,并根据具体情况与买家一起核验商家的注册信息。持卡人和商家把各自的私有签名密钥安全地存储在自己的计算机上。在付费过程中,这些证书用于相互鉴权商家和持卡人,并向支付网关鉴权商家和持卡人。
SET的使用还不太广泛,其中一个原因是持卡人维护密钥和证书的工作比较繁重。一些过渡性解决方案在服务器上维护持卡人的密钥和证书,并允许持卡人通过密码使用其密钥和证书,这些解决方案获得了一定的成功。
4.2 SET支付在netpage系统中,netpage注册服务器作为netpage用户(即持卡人)在SET支付交易中的代理。
Netpage系统使用生物测定学技术对用户进行鉴权并授权SET支付。由于本系统是以笔为基础的,因此所用的生物测定学数据是用户的在线签名,包括随时间变化的笔的位置和压力。如果在笔中设计一个指纹传感器,那么也可以使用指纹测定技术,但是这种方法的成功较高。所用的生物测定技术的类型只影响生物测定数据的捕捉,而与系统的授权方面无关。
实现SET支付的第一步是向netpage注册服务器注册用户的生物测定数据。这种过程在一个受控环境中完成,例如在银行中。在该过程中,系统捕捉用户的生物测定学数据,同时核验用户的身份。生物测定学数据被捕捉并存储到注册数据库中,并与用户的记录链接起来。另外,还可以拍摄用户的照片并把照片与用户的记录链接起来。SET持卡人注册过程完成后,所获得的私有签名密钥和证书被存储到数据库中。用户的付费卡信息也被存储到数据库中,这样,netpage注册服务器就获得了足够的信息,从而能够在SET支付交易中充当用户的代理。
当用户最终提供生物测定学数据以完成支付时(例如签署netpage订单),打印机将安全地把订购信息、笔的标识符和生物测定学数据传送给netpage注册服务器。服务器根据由笔标识符确定的用户身份核验生物测定学数据,并在SET支付交易中开始充当用户的代理。
4.3 微量支付Netpage系统提供了一种微量支付机制,允许用户支付打印即时文档和支付有版权文档的较低费用,还允许用户支付打印广告资料的费用。后一种付费取决于已经提供给用户的补贴。
当用户为进行电子贸易注册时,系统将为用户建立一个网络账户,该账户累积用户的微量付费。用户定期接收账单,并且可以通过标准支付机制结清较多的欠款。
网络账户还可以累积期刊订阅费用,系统也会向用户提供个人账单。
4.4 交易在特定的应用环境中,当用户请求netpage页面时,应用可以在页面中嵌入该用户的交易标识符55。以后,该用户通过该页面的输入将被标记有交易标识符,因此应用可以为用户的输入建立适当的前后关系。
但是,当通过非特定页面输入信息时,应用必须使用用户的唯一标识建立前后关系。这种情况的一个典型实例包括从预打印的目录页面向用户的虚拟“购物车”添加物品。但是,为了保护用户的隐私,netpage系统所知的唯一用户标识符60最好不要泄露给应用。这样可以防止不同的应用提供商轻易地关联累积的行为数据。
为此,netpage注册服务器通过唯一的别名标识符65维护用户和应用之间的匿名关系,如图24所示。每当用户激活标记有“已注册”属性的超链接时,netpage页面服务器要求netpage注册服务器把相关的应用标识符64和笔标识符61翻译为一个别名标识符65。然后把别名标识符提交给超链接的应用。
应用维护由别名标识符索引的状态信息,并能够取回特定用户的状态信息,而不必知道用户的全局标识。
系统还为用户的每个应用维护一个独立的证书和私有签名密钥,这样,系统只需使用特定应用的信息带有用户签署应用交易。
为了帮助系统激活产品条形码(UPC)“超链接”,系统为用户记录任意数量的产品类型的首选应用。
每个应用都与一个应用提供商关联,系统为每个应用提供商维护一个账户,通过这个账户,应用提供商可以收取或支付费用,例如点击费用等。
应用提供商可以是期刊的出版商。系统记录用户是否愿意接收订阅的出版物以及出版物的期望频率等。
4.5 资源描述和版权图40显示了资源描述类图的一个较佳实例。
每个文档和内容对象可以由一个或多个资源描述说明。资源描述最好使用Dublin核心元数据元素集,这样可以查找电子资源。Dublin核心元数据符合万维网协会(W3C)资源描述框架(RDF)规范。其它的元数据元素集也可以便用。
资源描述可以确定正确的持有人920。在用户打印受版权保护的内容时,netpage系统可以自动地从用户向正确的持有人传送版权费。
5.通信协议通信协议定义了实体之间的消息的有序交换。在netpage系统中,各种实体(例如笔、打印机和服务器)利用一套规定的协议与netpage系统合作处理用户的交互。
每个协议可以由一个顺序图说明,在顺序图中,水平轴代表信息流,垂直轴代表时间。每个实体由一个矩形代表,其中包含实体的名称和一个代表实体生命期的垂直列。在实体存在的时间内,生命线显示为一条虚线。在实体处于活跃状态的时间内,生命线显示为一条双线。由于这里所讨论的协议不创建或销毁实体,因此,一旦实体停止参与协议,生命线通常就会被切短。
5.1 订阅递送协议图43中显示了订阅递送协议的一个较佳实例。
某种定期刊物可能有大量用户订阅。每个用户的版本可能在版面上有所不同,但是许多用户的版本可以共享公共内容,例如文本对象和图像对象。因此,订阅递送协议可以通过单播向各个打印机传送文档结构,但是通过多播传送共享的内容对象。
应用(即出版商)首先从标识符服务器12为每个文档获得一个文档标识符51。然后,它向负责最近分配的文档标识符的页面服务器10发送每个文档结构,包括文档标识符和页面描述。应用具有自己的应用标识符64、用户的别名标识符65、以及相关的多播通道名称。应用使用自己的私有签名密钥签署消息。
页面服务器使用应用标识符和别名标识符从注册服务器获得相应的用户标识符60、用户选择的打印机标识符62(可以是为该应用明确选择的打印机,也可以是用户的默认打印机)、以及应用的证书。
应用的证书允许页面服务器核验消息签名。如果由应用标识符和别名标识符无法确定订阅任务808,那么页面服务器向注册服务器的请求将失败。
然后,页面服务器分配文档和页面实例标识符,并把页面描述(包括页面标识符50)转发给打印机。页面描述中还包含相关的多播通道名称,以便打印机侦听。
下一步,页面服务器把刚刚分配的页面标识符返回给应用,以备将来参考。当应用通过相关的页面服务器向用户选择的打印机分发了全部文档结构后,它在选定的多播通道上以多播方式传送共享对象的各种子集。页面服务器和打印机都监视适当的多播通道并接收所需的内容对象。然后,它们可以填充通过单播获得的文档结构。这样,页面服务器可以向自己的数据库中添加完整的文档,打印机也可以打印文档。
5.2 超链接激活协议图45显示了超链接激活协议的一个较佳实例。
当用户使用netpage笔在netpage上点击时,笔把点击信息传送给最近的netpage打印机601。点击动作确定页面和笔在页面上的位置。打印机从笔连接协议中已经获得了笔的标识符61。
打印机通过DNS确定处理特定页面标识符50的页面服务器10a的网络地址。如果最近与同一个页面进行过交互,那么地址可能已经存在于打印机的高速缓存中。然后,打印机把笔标识符、自己的打印机标识符62、页面标识符和点击位置发送给页面服务器。
页面服务器加载由页面标识符确定的页面描述5,并确定点击所在的输入元素区域58(如果有的话)。假设相关的输入元素是一个超链接元素844,那么页面服务器将获得相关的应用标识符64和链接标识符54,然后通过DNS确定安装有应用71的应用服务器的网络地址。
页面服务器使用笔标识符61从注册服务器11获得相应的用户标识符60,然后分配全局唯一的超链接请求标识符52,并产生一个超链接请求934。图44中给出了超链接请求类图。超链接请求记录请求用户和打印机的标识符,并确定所点击的超链接实例862。然后,页面服务器向应用发送自己的服务器标识符53、超链接请求标识符、以及链接标识符。应用按照特定应用的逻辑产生响应文档,并从标识符服务器12获得文档标识符51。然后,它把文档、请求页面的服务器的标识符和超链接请求标识符发送给负责新分配的文档标识符的页面服务器10b。
第二个页面服务器向第一个页面服务器发送超链接请求标识符和应用标识符,以获得相应的用户标识符和打印机标识符62。如果超链接请求已经过期或者是针对不同的的应用,那么第一个页面服务器将拒绝请求。第二个页面服务器分配文档实例和页面标识符50,向应用返回新分配的页面标识符,把完整文档添加到自己的数据库中,最后向请求的打印机发送页面描述。
超链接实例可以包含有意义的交易标识符55,在任何一种情况下,第一个页面服务器都会在发送给应用的消息中包含交易标识符。这样,应用可以为超链接的激活建立特定交易的前后关系。
如果超链接需要用户别名(其超链接的“需要别名”属性被值为真),那么第一个页面服务器向注册服务器11同时发送笔标识符61和超链接的应用标识符64,以便同时获得与笔标识符对应的用户标识符以及与应用标识符和用户标识符对应的别名标识符65。它把别名标识符包含在发送给应用的消息中,使应用能够为超链接的激活建立一个特定用户的前后关系。
5.3 手写识别协议当用户使用netpage笔在netpage上画出一个笔划时,笔把笔划信息传送给最近的netpage打印机。笔划确定页面和笔在页面上的路径。
打印机把笔标识符61、自己的打印机标识符62、页面标识符50、以及笔划路径以常规方式传送给页面服务器10。
页面服务器加载由页面标识符确定的页面描述5,并确定笔划与哪个输入元素区域58相交(如果有的话)。假设相关的输入元素是一个文本域878,那么页面服务器会把笔划追加到文本域的数字墨水中。
在文本域的区域处于不活动状态一段时间后,页面服务器向注册服务器11发送笔标识符和待处理的笔画进行判读。注册服务器确定与笔对应的用户,并使用累积的用户笔迹模型822把笔划判读为手写文本。当把笔划转换为文本后,注册服务器把文本返回给发出请求的页面服务器。页面服务器把文本追加到文本域的文本值中。
5.4 签名核验协议假设笔划与其区域相交的输入元素是一个签名域880,那么页面服务器10会把笔划追加到签名域的数字墨水中。
在签名域的区域处于不活跃状态一段时间后,页面服务器向注册服务器发送笔标识符61和待处理的笔划进行核验。它还发送与包含签名域的表单对应的应用标识符64、表单标识符56、以及表单的当前数据内容。注册服务器确定与笔对应的用户,并使用用户的动态签名生物测定学数据818把笔划核验为用户的签名。在核验了签名后,注册服务器使用应用标识符64和用户标识符60确定用户的特定应用的私有签名密钥。然后,它使用密钥产生表单数据的数字签名,并向发出请求的页面服务器返回数字签名。页面服务器把数字签名分配给签名域,并冻结相关表单的状态。
数字签名包含相应用户的别名标识符65。这样,一个表单可以捕捉多个用户签名。
5.5 表单提交协议图46显示了表单提交协议的一个较佳实例。
表单提交通过激活表单超链接实现。因此,它符合5.2中定义的协议,同时补充了一些针对表单的内容。
如果是表单超链接,那么由页面服务器10向应用71发送的超链接激活消息还包含表单标识符56和表单的当前数据内容。如果表单包含签名域,那么应用将提取与相应数字签名有关的别名标识符65并从注册服务器11获得相应的证书,从而对每个签名域进行核验。
5.6 手续费支付协议图47显示了手续费支付协议的一个较佳实例。
在电子贸易环境中,应用提供商应向出版商支付点击、交易和销售的费用和手续费。出版商还应向打印机的提供商支付处理费用和手续费的手续费。
超链接请求标识符52用于把费用或手续费从目标应用提供商70a(即商家)传送给源应用提供商70b(即出版商)以及从源应用提供商(70b)传送给打印机提供商72。
在第一次激活超链接时,目标应用会从页面服务器10接收超链接请求标识符,如5.2所述。当目标应用需要向源应用提供商付款时,它把应用提供商的信用证和超链接请求标识符发送给原页面服务器。页面服务器使用超链接请求标识符确定源应用,并把信用证和源应用标识符64、自己的服务器标识符53、以及超链接请求标识符一起发送给相关的注册服务器11。注册服务器把款项发送到相应的应用提供商的账户827。同时通知应用提供商。
如果应用提供商需要向打印机提供商付款,把打印机提供商的款项和超链接请求标识符一起发送给原页面服务器。页面服务器使用超链接请求标识符确定打印机,并把款项和打印机标识符一起发送给相关的注册服务器。注册服务器把款项发送到相应的打印机提供商的账户814。
源应用提供商可以被告知目标应用提供商的身份以及源应用提供商的打印机提供商的身份。
6.Netpage笔介绍6.1 笔的结构请参考图8和图9,一支笔通常带有参考数字101,它具有一个塑模外壳102,塑壳的璧103确定了安装笔的组件的内部空间104。笔的顶部105安装在外壳102的一端106,并且可以旋转。在外壳102的另一端108处套有一个半透明笔帽107。笔帽107也是由模塑制成的。使用半透明材料是为了使用户能够观察安装在外壳102内的LED的状态。笔帽107带有一个包裹外壳102的一端108的主体部分109以及一个凸出部分110。凸出部分110从主体部分109折回,并固定在外壳102的外壁103中的一个槽111中。无线天线112安装在凸出部分110的后面,并位于外壳102内部。在笔帽107的孔113A周围有一个丝扣113,用于安装带有配合丝扣115的金属端件114。金属端件114是可拆卸式的,这样可以更换墨盒。
在笔帽107内还安装有一个三色状态LED 116,该LED固定在柔性印刷电路板117上。天线112也安装在柔性印刷电路板117上。状态LED 116安装在笔101的顶端,以便于观察。
所述笔可以作为一支普通的标记墨水笔,也可作为非标记触笔。带有尖头119的墨水笔芯118和带有尖头121的笔尖120并排安装在外壳102内。当旋转笔的顶端105时,墨水芯的尖头119或笔尖的尖头121可以通过金属端件114的开口端122伸出。在墨水芯118和笔尖120上分别安装有滑块123和124。一个可旋转的靠模管125固定在笔的顶端105上,并且能够与笔的顶端一起旋转。靠模管125有一个靠模126,该靠模是靠模管壁181内的一个狭槽。靠模随动件127和128从安装在靠模槽126中的滑块123和124中探出。在靠模管125旋转时,滑块123或124相对于对方移动,使笔尖119或尖头121从金属端件114的孔122中探出。笔101有三种工作状态。当把顶端105旋转90°时,先后出现的三个状态是·笔尖120的尖头121探出;·墨水芯118的尖头119探出;·墨水芯118的尖头119和笔尖120的尖头121都不探出。
在外壳102内的电子底板130上安装有第二块柔性印刷电路板129。第二块柔性印刷电路板129安装一个红外LED 131,该LED产生的红外线照射到所述表面上。在第二块柔性印刷电路板129上还安装有一个图像传感器132,用于接收从所述表面反射的红外线。第二块柔性印刷电路板129还安装有一个无线频率芯片133,该芯片带有一个RF发射机和一个RF接收机,以及一个用于控制笔的动作的控制器芯片134。在笔帽107中有一个光学器件135(由模制透明塑胶制成),它向所述表面发射红外光束,并把接收到的图像传送到图像传感器132上。电源线136把第二块柔性印刷电路板129上的组件连接到电池触点137上,电池触点安装在靠模管125内。端子138把电池触点137与靠模管125连接起来。在靠模管125内有一个3V充电电池139,该电池与电池触点接触。在第二块柔性印刷电路板129的周围安装有一个感应充电线圈140,用于通过感应方式对电池139充电。第二块柔性印刷电路板129上还安装有一个红外LED 143和一个红外光电二极管144,当用户使用笔尖120或墨水芯118书写时,该红外光电二极管检测靠模管中的位移,这样可以确定笔尖119或尖头121施加在所述表面上的力量。红外光电二极管144通过安装在滑块123和124上的反光镜(没有示出)检测红外LED 143发出的光线。
在外壳102的一端108上有橡胶握垫141和142,可帮助用户握笔。在顶端105上还有一个笔夹,用于把笔夹到用户的口袋上。
6.2 笔控制器笔101被设计为通过以红外光谱对尖头附近的表面区域成像来确定其尖头(触笔的尖头121或墨水芯的尖头119)的位置。它从最近的位置标记记录位置数据,并能够利用光学器件135和控制器芯片134计算尖头121或119与位置标记的距离。控制器芯片134根据在图像标记上观察到的透视畸变计算笔的方向和尖头到标记的距离。
从位置标记获得的控制数据可以包含指示笔激活其“有效区域”LED的控制位(这个LED实际上是三色LED 116的一个状态,当笔从控制数据确定成像的区域是一个“有效区域”时,三色LED 116将变成黄色)。因此,可以对表面上与按钮或超链接的有效区域对应的区域进行编码,以便激活此LED,这样,当笔101移过按钮或超链接的有效区域时,笔可以为用户提供可视反馈。控制数据还可以指令笔捕捉连续的笔压力读数。因此,可以对表面上与签名输入区对应的区域进行编码,以捕捉连续的笔压力。
笔相对于所述表面的动作可能包含一系列笔划。一个笔划由表面上的一系列带有时间标记的笔位置构成,笔划从落笔事件开始,到提笔事件结束。需要注意的是,可以根据力量门限来判读笔的力量,从而判断笔是“提起”还是“落下”,另外,还可以根据连续值(例如在笔捕捉签名时)来判读笔的力量。捕获的笔划序列构成所谓的“数字墨水”。数字墨水可由计算系统用来进行绘图和笔迹的数字交互,笔迹的在线识别,以及签名的在线核验。
利用RF芯片133和天线112,笔101可以向计算系统发送数字墨水数据(数字墨水数据被加密以提高安全性,并且被打包以提高传输效率)。
当笔在接收机的范围内时,数字墨水数据被原封不动地传送给接收机。当笔移出接收机的范围时,数字墨水数据被缓存在笔的内部存储器中(笔电路带有一块缓冲器,该缓冲器可以存储笔在表面上运动12分钟左右的数字墨水数据),稍后再传送。
控制器芯片134安装在笔的第二块柔性印刷电路板129上。图10的框图详细说明了控制器芯片134的体系结构。
图10还显示了RF芯片133、图像传感器132、三色状态LED 116、红外LED 131、红外力传感器LED143、以及力传感器光电二极管144。
笔控制器芯片134带有一个控制处理器145。总线146支持在控制器芯片134的组件之间交互数据。芯片中还带有闪存147和512KB DRAM148。一个A/D转换器149用于把力传感器光电二极管144获得的模拟信号转换为数字信号。
图像传感器接口152与图像传感器132接口。收发机控制器153和基带电路154用于与RF芯片133接口,RF芯片133带有一条RF电路155、一个与天线112连接的RF共振器/感应器156。
控制处理器145通过图像传感器132捕捉表面上的标记并解码出位置数据,监视力传感器光电二极管144,控制的LED 116、131和143,并通过无线收发机153处理短程无线通信。它是一种中档性能(40MHz左右)的通用RISC处理器。
处理器145、数字收发机组件(收发机控制器153和基带电路154)、图像传感器接口152、闪存147和512KB DRAM 148被集成在一个控制器ASIC中。模拟RF组件(RF电路155、RF共振器和感应器156)集成在一个RF芯片中。
图像传感器是一个分辨率为215×215像素左右的CCD(这种传感器由Matsushita电子公司制造,它在Itakura,K T Nobusada,N Okusenya,RNagayoshi,和M Ozaki合写的“微型照相机系统的1mm 50k像素ITCCD图像传感器”(IEEE学报——电子设备,2000年1月第1期第47卷)中有所描述,该论文以参考方式综合在此),并带有一个红外滤镜。当笔101不接触所述表面时,控制器ASIC 134在经过一段不活跃时间后将进入待机状态。控制器ASIC带有一条专用电路150,该电路监视力传感器光电二极管144,当发生落笔事件时,它通过电源管理器151唤醒控制器134。
无线收发机采用无绳电话常用的不受限900MHz频带通信,或者以不受限2.4GHz工业、科学和医学(ISM)频带通信,并使用跳频和冲突检测技术实现抗干扰通信。
6.3 笔的光学器件如上所述,笔的光学器件是由一个模制的光学器件本体135实现的。图67中示意性地显示了由光学器件本体135实现的光学器件。该光学器件包含第一个镜头157(用于对红外LED 131发射的红外线进行聚焦)、一个镜子158、一个分光镜159、一个物镜160、以及第二个镜头161(用于把图像聚焦到图像传感器132上)。轴向射线162显示了光线路径。
光线路径用于向图像传感器132提供清晰图像,以反映所述表面上与视野圆锥192相交的部分193,但是,成像有一定的倾斜范围(见下文)。主聚焦元件是物镜160。物镜还用于从反向把红外LED 131发射的红外线投射到视野内的表面上。由于无法把图像传感器132和红外LED 131同时放在目标的聚焦内,所以需要使用分光镜159把光路分开。每个路径上的中继透镜157和161分别对图像传感器132和红外LED 131重新聚焦。
这样,可以在两个路径上使用不同的光圈。
图像传感器132的边可作为捕捉域的视野光圈,捕捉路径的设计能够保证获得所需的物方视角范围(即,对于本实例的应用来说,视角范围稍稍小于20°)。光照路径的设计能够保证获得与捕捉路径相同的物方视野,这样,光线能够以最高的功率和均匀性覆盖物方视野。
IR LED 131的频闪与帧捕捉的速度同步。使用聚焦光线有利于缩短曝光时间和减小光圈。较短的曝光时间可以防止运动模糊,因此可以在笔移动过程中捕捉位置标记数据。较小的光圈有助于增加由倾斜产生的整个表面的景深。为此,捕捉路径上带有一个光阑191。
由于图像传感器132对光谱的可见部分和近红外部分都有较强的敏感度,所以在捕捉路径中,在图像传感器的前面增加了一个红外滤光镜163,以便使图像传感器能够捕捉到表面上的标记数据的清晰图像,不会受到表面上的其它图形的干扰(这些其它图形可以采用在近红外线下透明的墨水打印)。
6.4 笔的处理当触笔的尖头121或墨水芯的尖头119与表面接触时,笔能够以100Hz的频率确定自己相对于表面的位置和方向,从而实现准确的手写识别(见《IEEE学报——模式分析与机器智能》1990年8月第8期第12卷上的“在线手写识别的目前工艺水平”,作者Tappert,C,C Y Suen和TWakahara,该文章的揭示以互参方式综合在此)。力传感器光电二极管144用于指示笔是在“提起”还是在“落下”的相对门限。如上所述,还可以把压力作为连续值捕捉,以便核验签名的整个动态过程。
通过以红外光谱对笔尖119、121附近的页面区域成像,笔能够确定其笔尖119、121在表面上的位置和方向。它对最近的标记数据进行解码,并根据观察到的图像标记的透视畸变和笔的光学器件的已知几何形状135计算尖头119、121相对于标记的位置(见下文)。虽然标记的位置分辨率可能较低,但是调整后的位置分辨率相当高,很轻易地就能超过准确手写识别所需的200dpi分辨率(见上文中的参考)。
笔相对于表面的动作被捕捉为一系列笔划。一个笔划包含表面上的一系列带有时间标记的笔位置,笔划从落笔事件开始,到提笔事件结束。每当区域标识符改变时(即,在正常情况下,仅仅在笔划开始时),笔划还被标有表面的区域标识符。如上所述,每个位置标记包含指示自己在表面上的位置的数据以及指示自己在表面的哪个区域中的区域数据。图68显示了在笔中进行的位置标记和笔划的处理过程。笔控制器134启动时把笔划默认为空(在164处)。然后,它通过力传感器光电二极管144不断对尖头上的力量取样(在165处),以检查落笔状态(在166处)。如果出现落笔状态,笔控制器134捕捉表面的图像(在167处),定位捕获图像中的一个标记(在168处),从标记中解码出标记数据(在169处),推断笔相对于表面的位置和方向(在170处),并且把位置数据追加到当前的笔划数据中(在171处)。在检测到笔提起事件时(在获得了落笔状态后(出现非空笔划),检测提笔状态(在172处)),笔控制器134对笔划数据进行编码(在173处),通过RF芯片133和天线112把笔划数据传送给计算系统(在174处),然后以空笔划重新开始检测过程(在164处)。
假设处理算法(见下文)采用相当快的8位乘法(3次循环),那么当笔处于活跃状态时,处理算法将占用80%左右的处理器能力。
如果笔超出计算系统的有效范围,那么它会把数字墨水缓存在自己的内部存储器中。当下一次进入计算系统的有效范围内时,它会向计算系统传送所有缓存的数字墨水。当笔的内部存储器用完时,笔将停止捕捉数字墨水,而且,每当用户试图用该笔来书写时,该笔上的错误LED将闪烁。
表4列出了从笔向计算系统传送的原始数字墨水的成分。图69显示了原始数字墨水的结构。当笔离线工作时,在笔中缓存的数字墨水的形式与传送到计算系统中的数字墨水的形式是相同的。
表4.原始数字墨水的成分

当笔101连接到计算系统时,控制器134以原始数字墨水标题182的形式向系统通知笔标识符、尖头标识符、当前的绝对时间、以及在离线前从系统获得的上一次绝对时间。这样,系统可以计算笔的时钟的任何偏差,并对从笔接收的数字墨水进行相应的时移。然后,笔使用系统的准确实时时钟同步自己的实时时钟。当只有一支笔与计算系统连接时,计算系统可通过笔标识符来确定该笔。在利用笔来确定笔拥有者的系统中(例如以某种直接方式与拥有者交互),笔标识符可能是很重要的。在其它类型的系统中,笔标识符可能不是必须的。尖头标识符允许计算系统确定当前使用的是哪个尖头、触笔尖头121或墨水芯尖头119。计算系统可以根据当前正在使用的尖头来改变自己的动作。例如,如果正在使用的是墨水芯尖头119,那么计算系统可以推迟产生反馈输出,因为即时反馈是由在表面上产生的墨水标记提供的。如果使用的是触笔尖头121,那么计算系统就可以产生即时反馈输出。
在笔划开始时,笔控制器134以原始笔划标题183形式记录从上次接到系统通知的绝对时间以来经过的时间。对于笔划中的每个笔位置,控制器134以原始笔位置177形式记录笔尖119、121距当前标记的x偏移量和y偏移量、笔的x、y、z旋转、以及尖头的力量。如果标记标识符(用来确定区域内部的标记)发生了变化,那么笔控制器只会以标记变更178形式记录标记标识符。由于标记频率比典型的位置取样频率低得多,所以对于若干个连续的笔位置,标记标识符是不变的,而且,如果笔划较短,那么在整个笔划中,标记标识符都有可能是不变的。
由于笔以100Hz的频率对其位置和方向取样,因此一个笔划中的笔位置频率就是100Hz,不需要明确的时间标记。即使笔无法计算笔位置(例如无法解码标记),笔也必须记录笔位置,以便保持隐含的时间同步。因此,笔应以未知笔位置179的形式把当前位置记录为“未知”,这样,计算系统在必要时可以从相邻取样中以插值方式计算出该位置。
由于32位时间偏移量的范围有限(即49.7天),所以笔可以选择以时间变更176的形式为笔划记录绝对时间。后续笔划的时间偏移量将相对于这个绝对时间测量。
由于在若干个连续笔划的中区域标识符可能是恒定的,所以笔只需在区域标识符发生变化时以区域变更180的形式记录区域标识符的变化。所记录的区域标识符将隐含地成为与后续笔位置相关的区域标识符。
由于在两个相邻笔划之间用户可能改变尖头119、121,所以笔还可以采用尖头变更175的形式为每个笔划记录尖头标识符。所记录的尖头标识符将隐含地成为与后续笔划相关的尖头标识符。
笔划的每个成分都有一个按信息熵编码的前缀,如表5所示。
表5.原始笔划成分前缀

在1秒中,10毫米长的笔划可能跨越两三个标记,并包含100个位置取样,因此,这样一个笔划的数据量为5500位左右。因此,进行在线连续数字墨水捕捉所需的最高传输速度为5.5Kbps,而进行离线连续数字墨水捕捉所需的缓冲存储器容量为每分钟40K字节左右。所以笔的512KBDRAM可以保存12分钟以上的连续数字墨水量。时间、区域和尖头变更很少发生,因此对所需的传输速度和缓冲存储器容量影响不大。另外,笔位置数据的压缩可以进一步降低所需的传输速度和缓冲存储器容量。在把笔划传送到计算系统之前,每个原始笔划都采用三重DES算法编码(见施奈尔.B的“实用密码技术”第二版,威利出版社1996年出版,对该书的揭示以互参方式综合在此)。为此,笔和计算系统定期交换对话密钥。按每个编码位50次循环的保守估计,对每秒一个笔划(5500位)的书写量进行加密需要消耗处理器45的0.7%处理时间。
6.5 其它形式的笔在本发明的另一种实例中,笔带有一个红外线数据关联(IrDA)接口,用于与基站或netpage打印机进行短程通信。
在本发明的另一个实例中,笔101包含一对正交加速度计,该加速度计安装在笔轴的法平面内。图9和图10中以虚框显示了加速度计190。
由于增加了加速度计,所以这种笔可以感测运动,而不必参考表面位置标记,这样,可以以较低的速率对位置标记进行取样。然后,可以使用每个位置标记标识符确定相应对象,而不是表面上的位置。例如,如果对象是一个用户界面输入元素(例如一个命令按钮),那么在输入元素区域内的每个位置标记的标记标识符可以直接确定输入元素。
由加速度计测量的X和Y方向的加速度按照时间结合起来可以获得瞬时速度和位置。
由于的起始位置是未知的,因此只能计算笔划内的相对位置。虽然位置结合过程会在感测的加速度中累积误差,但是加速度计的分辨率一般都比较高,并且笔划的持续时间较短,因此累计的误差较小。
7 Netpage打印机介绍7.1 打印机的结构图11中显示了垂直安装的netpage壁挂式打印机601。这种打印机使用双工8”MemjetTM打印引擎602和603在信纸/A4大小的媒质上打印netpage,如图12和12a所示。它直接送纸路径,纸张604通过双工打印引擎602和603,这两个引擎在纸张的正反两面上以真彩和全页面方式同时打印。
一个整体式装订组件605在每张纸的边缘涂一条胶水,这样,每张纸可以与前一张纸粘在一起。这样可以产生装订成册的文档618,文档的厚度可以从一张到几百张。
图13中所示的可更换墨盒627与双工打印引擎结合在一起,其空囊或空腔中可以存储固定剂、粘合剂、以及青色、洋红、黄色、黑色和红外墨水。墨盒在其底模上还带有一个微型空气过滤器。该微型空气过滤器通过一条软管639与打印机内部的气泵638接口。这样可以向打印头提供过滤的空气,以防止微粒进入到MemjetTM打印头中,造成打印头喷嘴堵塞。在墨盒中加装空气过滤器可以有效延长墨盒的寿命。墨盒是一种100%可回收产生,可以打印和粘合3000个页面(1500张纸)。
请参考图12,电动的媒质拾取压辊组件626把最上一张媒质直接从媒质托盘从拉过第一个打印引擎602的纸传感器,拉入双工MemjetTM打印头组件中。两个MemjetTM打印引擎602和603以相对的直线形式沿送纸路径排列。纸张604被整体式的电动拾取压辊626拉入到第一个打印引擎602中。纸张604的位置和大小被感测后,全页面打印开始。打印机还同时打印固定剂,以便在尽可能短的时间内使纸变干。
纸张通过一组电动出纸钉轮(沿送纸路径排列)退出第一个MemjetTM打印引擎602,并通过一个涂胶滚轮。这些钉轮与“湿”打印表面接触,并把纸张604送进第二个MemjetTM打印引擎603中。
请看图12和12a,纸张604通过双工打印引擎602和603,并进入装订组件605。打印的页面从带有纤维质支承轮的电动钉轮轴670和另一个带有钉轮和快粘胶水轮的可移动轴之间穿过。可移动轴/胶水组件673安装在一个金属支架上,在一个凸轮轴的作用下,该组件向前移动,通过齿轮与驱动轴670接口。一个独立的电机驱动上述凸轮轴。
胶轮组件673包含一个局部空心轴679,该空心轴带有一个旋转耦合件,该耦合件把供胶软管641与墨盒627接合起来。轴679与胶轮连接,胶轮在毛细作用下通过径向孔吸取粘合剂。一个模制外壳682包裹着胶轮,在该外壳的前面有一个开口。枢轴式侧模和弹性外门固定在金属支架上,当组件673的其余部分向前移动时,它们可以侧向打开。这种动作使胶轮向前探出模制外壳682。在不工作时,拉簧关闭上述组件,并有效地盖住胶轮。
当纸张604进入到胶轮组件673中时,胶轮组件在纸张正面的垂直边上涂一层胶(文档的第一张除外),然后,纸张向下进入到装订组件605。
7.2 打印机控制器的体系结构Netpage打印机控制器由一个控制处理器750、一个预装或现场安装的网络接口模块625、一个无线收发机(收发机控制器753、基带电路754、RF电路755、以及RF共振器和感应器756)、双光栅图像处理器(RIP)DSP 757、双工打印引擎控制器760a和760b、闪存658、以及64MB DRAM657构成,如图14所示。
控制处理器处理与网络19和本地无线netpage笔101的通信,感测帮助按钮617,控制用户界面LED 613-616,为RIP DSP和打印引擎控制器760提供反馈并对其同步。它由一个中档性能的通用微处理器构成。控制处理器750通过一条高速串行总线659与打印引擎控制器760通信。
RIP DSP对页面描述进行光栅化,并采用netpage打印机的压缩页面格式压缩页面描述。每个打印引擎控制器展开和抖动页面图像,并以实时方式(每分钟30页以上)向相关的MemjetTM打印头350打印页面图像。
双工打印引擎控制器同时在纸张的正反面上打印。
主打印引擎控制器760a与主QA芯片665和墨水盒QA芯片761一起控制纸页输送并监视墨水的使用。
打印机控制器的闪存658为处理器750和DSP757存储软件以及配置数据。在启动时,这些软件和配置程序被复制到主存储器657中。
处理器750、DSP 757、以及数字收发机组件(收发机控制器753和基带电路754)集成为一个控制器ASIC 656。模拟RF组件(RF电路755、RF共振器和感应器756)集成在一个独立的RF芯片762中。网络接口模块625是独立的,因为netpage打印机允许预先或现场进行网络连接。闪存658和2X256Mbit(64MB)DRAM 657也是独立的。打印引擎控制器760在独立的ASIC中实现。
另外,打印机还带有各种网络接口模块625,每个模块提供一个netpage网络接口751,还可以提供一个本地计算机接口或网络接口752。Netpage网络互联网接口包括POTS调制解调器、混合光纤—同轴(HFC)电缆调制解调器、ISDN调制解调器、DSL调制解调器、卫星收发机、现有的和下一代蜂窝式电话收发机、以及无线本地回路(WLL)收发机。本地接口包括IEEE 1284(并行端口)、10Base-T和100Base-T以太网接口、USB和USB 2.0接口、IEEE 1394(Firewire)接口、以及各种新型家庭网络接口。如果本地网络上有互联网连接,那么可以把局部网络接口作为netpage网络接口使用。
无线收发机753采用无绳电话常用的不受限900MHz频带通信,或者以不受限2.4GHz工业、科学和医学(ISM)频带通信,并使用跳频和冲突检测技术实现抗干扰通信。
打印机控制器还可以带有一个红外线数据关联(IrDA)接口,用于从netpage照相机这样的设备接收“灌入”的数据。在本发明的另一种实例中,打印机使用IrDA接口与相应配置的netpage笔进行短程通信。
7.2.1 光栅化和打印当主处理器750接收并核验了文档的版面和页面对象后,它在DSP 757上运行适当的RIP软件。
DSP 757光栅化每个页面描述,并压缩光栅化的页面图像。主处理器把每个压缩的页面图像存储到存储器中。实现多DSP的负载平衡的最简单方法是使每个DSP光栅化独立的页面。由于通常可以在存储器中存储任意数量的光栅化页面,因此DSP可以始终进行页面处理工作。但是,在对较短的文档进行光栅化时,这种策略可能降低DSP的利用率。
页面描述中的水印区域被光栅化为连续色调分辨率的双级位图,这种位图能够无损地压缩到很小的尺寸,它构成压缩的页面图像的一部分。打印页面的红外(IR)层包含编码的netpage标记,netpage标记的密度为每英寸6个左右。每个标记编码有页面标识符、标记标识符和控制位,每个标记的数据内容是在光栅化过程中产生的,并被存储到压缩的页面图像中。
主处理器750把背靠背的页面图像传递给双工打印引擎控制器760。每个打印引擎控制器760在其本地存储器中存储压缩的页面图像,然后启动页面展开和打印管道。页面展开和打印是以管道方式进行的,因为无法在存储器中存储整个114MB双级CMYK+IR页面图像。
7.2.2 打印引擎控制器打印引擎控制器760的页面展开和打印管道由一个高速IEEE 1394串行接口659、一个标准的JPEG解码器763、一个标准的Group 4传真译码器764、一个定制的半色调/合成器单元765、一个定制的标记编码器766、一个行装载器/格式器单元767、以及一个与MemjetTM打印头350连接的定制接口768构成。
打印引擎控制器360以双缓冲方式工作。当一个页面被通过高速串行接口659加载到DRAM 769中时,以前加载的页面被从DRAM 769中读出,并通过打印引擎控制器管道。当页面打印完成后,刚刚加载的页面被打印,同时另一个页面被加载。
管道的第一个阶段是(在763处)展开JPEG压缩的连续色调CMYK层,(在764处)展开Group 4传真压缩的双级黑色层,(在766处)按照在第1.2节中定义的标记格式处理双级netpage标记层。所有工作都是以并行方式进行的。第二个阶段是(在765处)抖动连续色调CMYK层并(在765处)把双级黑色层复合到获得的双级CMYK层上。所获得的双级CMYK+IR点数据(在767处)被缓存和格式化,以便通过一组行缓冲区在MemjetTM打印头350上打印。大多数行缓冲区存储在独立的DRAM中。最后一个阶段是通过打印头接口768向MemjetTM打印头350打印6个通道的双级点数据(包括固定剂)。
当若干个打印引擎控制器760联合使用时(例如在双工配置中),它们通过共用线路同步信号770同步。通过外部主/备针角771选择的打印引擎760在共用线路上产生线路同步信号770。
打印引擎控制器760包含一个低速处理器772,用于同步页面展开和处理管道,通过低速串行总线773配置打印头350,并控制步进电机675和676。在8”形式的netpage打印机中,每一个打印引擎沿页面的长度方向(11″)以每分钟30个信封页的速度打印,因此在1600dpi的分辨率下实现8.8kHz的行速度。在12″形式的netpage打印机中,每个打印引擎沿页面的宽度方向(8”)以每分钟45个信封页的速度打印,从而实现10.2kHz的行速度。这些行速度在MemjetTM打印头的工作频率之内,因为目前的MemjetTM打印头的工作频率在30kHz以上。
8.Netpage标记8.1 标记平铺8.1.1 平面上的标记平铺为了支持通过传感设备与目标区域的“单击”交互,不论传感设备定位的区域或方向如何,传感设备必须能够看到其视野中的至少一个完整的标记4。因此,传感设备的视野直径必须为标记4的尺寸和间隔的一个函数。如果标记形状是环形的(例如上述的较佳标记4),那么当在等边三角栅格上平铺直径为k的标记500时,可以获得传感器视野的最小直径m,见图52和公式1。当相邻标记中心之间的间隔与标记的直径k相同时,可以实现这种情况。
对于256点的标记直径k(在1600dpi时为4毫米左右),m为552点(8.8毫米左右)。如果静区的直径为16点(即,有效标记直径k为272点(4.3毫米左右))m增加到587点(9.3毫米左右)。
当标记4被分开一个距离s时(s至少与k一样大)最小视野可以由公式2确定。
当不希望在水平方向的连续两行标记500之间存在重叠时(例如为了使标记的处理更容易),那么必须至少应把标记分开公式3给出的距离。因此,对于256点直径的标记,u为40点(在1600dpi下为0.6毫米左右)。由于这超过了标记所需的静区,因此,如果以分重叠方式处理标记行,那么可以忽略静区。
令s=k+u(公式2),可得公式4。因此,对于256点直径的标记,s为296点(在1600dpi下为4.7毫米左右),而m为598点(9.5毫米左右)。
8.1.2 球面上的标记平铺通常采用正二十面体来实现在球面进行正三角形平铺。一个正二十面体(例如图53中的二十面体526)由20个同样大小的等边三角形面528构成,这些三角形面共享30个边530和12个顶点532,其中有5个边530在每个顶点532上相交。
为了实现所需的平铺,需要把二十面体526内接在一个目标球面中,而二十面体526的每个三角形528被细分为相等数量相同大小的子三角形,以产生所需数量的三角形。如果把二十面体的每个边分为v个相等的线段,沿每个边确定v-1个点,沿任何两个相邻边的每对对应点由平行于另一个共享的相邻边的线连接,那么这样绘出的线在所需的相同大小的等边子三角形的顶点上相交,从而在二十面体526的每个三角形面528上将产生v2个三角形,总共可获得20v2个三角形。对于获得的10v2+2个顶点,有五个三角形面在二十面体526的每个原始顶点(共12个顶点)上相交,有六个三角形面在其余的每个顶点上相交。12个原始顶点532已经处于球面上,而其余的顶点位于球内。然后,把每个产生的定点中心投影到球面上,最终产生所需的平铺效果。
由正多面体采用上述方式逼近的球面称为最短线,参数v称为最短线的频率。图54显示了一个二十面的最短线534,其中v=3,即,有180个面528。
子三角形与二十面体526的面中心的距离越近,它与球面的距离越远,因此,在投影到球面时也就越大。为了最大限度地减少投影子三角形的尺寸变化,在投影前,可以有系统地把子顶点位移(见Tegmark,M.编写的“基于二十面体的天球像素化方法”,ApJ信札,470,L81,1996年10月14日)。如果v=1,那么不会产生顶点,而在一个定点上,三角形正面正对的角仍为60°。但是,随着v的增加,由围绕每个原始定点的5个三角形面构成的面也越来越平,每个三角形面的顶角将趋向于72°(即360°/5)。这是在球面上平铺标记的最坏情况。在一个72°的等腰三角形中,底边长度是侧边长度的1.18倍。因此,用于计算传感器视野的最大标记间隔接近于1.18k。当标记直径为256点而静区直径为16点时(即有效标记直径k为272点(4.3毫米左右)),根据公式2,m为643点(10.2毫米左右)。
位于外接球面中心的二十面体的每个边所对的角可以由公式5得出。对于半径为r的球面,每个中心投影边的弧长为r。假设标记直径K与r的单位相同,那么覆盖球面所需的标记数量n可由公式6得出。
对于给定的n,r由公式7限定。
如果n限定为216,为了能够在使用16位标记标识符的同时不必用多个区域覆盖球面,并且K取为上述的4.3,那么r限定为310毫米左右。常用地球仪的半径为160毫米。其177毫米左右的投影弧长可以容下41个均匀间隔的标记,此时几乎不存在额外空隙。
这样一个地球仪总共可以使用16812个标记。
8.1.3 任意曲面上的标记平铺采用三角网格可以逼近任意形状和拓扑结构的表面,而不会出现骤变点或奇点。网格的局部比例取决于表面的局部曲率和误差范围。假设存在一个特定表面的三角网格,那么只要每个网眼三角形满足最小顶点角和最短边长度的要求,就可以实现标记的有效不均匀平铺。对于在表面上任意位置的传感设备,如果传感设备的视野至少包含一个完整的标记,那么就可以被认为是有效的。
平铺过程从在网格的每个顶点上放置标记开始,这样可以保证最短边长度与标记直径k相同。下一步,在长度超过最大标记间距s的所有边的中点处插入标记。如图9所示,最大标记间距s的计算方法是如果两个两个相邻标记4a和4b之间的距离是s+,那么在它们之间可以另外一个标记4c,见公式8。
但是,如果两条长度为s+的边之间的顶角小于60°,那么插入的标记将出现重叠。
为了防止插入的标记出现重叠,需要引入一个最小标记间距t,其中t≥k。这样,最小顶角将称为k与t的函数,见公式9。
很明显,当t=k时,被限定为60°,即网格为等边的。但是如图56所示,当t>k时,即使小于60°,也可能出现插入的标记不重叠的情况。
根据公式10,最大标记间距s必须按照新引入的最小标记间距t确定。对于特定的网格三角形,有四种不同的标记插入情况。假设最小顶角不小于30°(即60°的一半),我们可以发现,每当网格三角形有一个以上的边小于或等于s时,其余两个边的长度就小于2s。实际上,最小顶角通常在45°以上。
在第一种情况下(图57),三角形546的任意一边的长度都不超过s。所以三角形的标记工作已经完成。
在第二种情况下(图58),三角形550的一个边548的长度超过s,因此需要在边548的中点插入标记552,这样才能完成三角形550的标记工作。在第三种情况下(图59),三角形558的两个边554和556的长度超过s,因此需要在两个长边554和556的中点分别插入标记560和562,这样才能完成三角形558的标记工作。两个插入标记560和562的中心以及原始三角形558的短边568的两个顶点564和566构成一个梯形。如果梯形的任何一条对角线的长度超过s,那么还要在梯形的中心插入一个标记570,这样才能完成三角形的标记工作。
在第四种情况下(图60),三角形573的三个边572的长度都超过s。因此,需要在每边572的中点插入一个标记顶点574。这三个新顶点574由边576连起来。然后,需要分别对获得的四个三角形577、578、579和580重复上述的标记步骤。需要注意的是,新的三角形也符合最小顶角要求,因为它们与原始三角形573的形状相同。
标记平铺变量总结在表4中。
表4.标记平铺变量

8.2 标记的感测8.2.1 笔的方向为了能够把笔式传感设备做为比较好用的书写装置使用,这种传感设备必须支持一定范围的笔方向。由于笔的尖头必须与所述表面接触,因此笔的方向可以区分为偏转(绕z轴旋转)、倾斜(绕x轴旋转)和滚动(绕y轴旋转),如图61所示。虽然笔的偏转应当是不受限制的,但是在一定程度上限制笔的倾斜和滚动以及由倾斜和滚动共同导致的倾角是比较合理的。
偏转通常是在倾斜后出现,因此,对于笔设备,应该围绕其物理轴定义扭转,而不应把扭转视为表面上的一个方向。但是,对于具有标记尖头的笔,图像传感器没有安装在笔的轴上,因此,除非笔处于近似垂直的状态,否则笔的图像感测能力(以及其偏转感测能力)将受到限制,如下文所述。在这种情况下,偏转应在倾斜之前出现,这样可以相对于表面旋转笔同时保持倾斜和滚动不变来指定其整个偏转范围。
倾斜和滚动通常分别定义为绕y轴旋转和绕x轴旋转。由于它们是相对于表面的x-y坐标系统定义的,而从用户的角度来看,y轴通常是纵轴,x轴通常是横轴,因此倾斜和滚动在此定义为绕x轴旋转和绕y轴旋转。在右手三位坐标系中,逆时针的滚动通常被视为正向滚动,而顺时针的倾斜和偏转通常被视为正向运动。但是在本文中,所有逆时针的旋转都定义为正。
根据公式11,笔的总倾角( )与其倾斜( )和滚动( )有关。
笔的倾角影响视野中不同点上的表面特征的成像比例,因此影响图像传感器的分辨率。由于无法感测笔尖下的正对区域,因此笔的倾角还影响尖头到图像区域中心的距离。为了能够由标记确定的位置导出尖头的精确位置,必须知道这个距离。
8.2.2 图像的感测当光轴垂直于表面时,视野可以模型化为一个由实半角α(产生2α的视角范围)和顶高D确定的圆锥体。虽然图像传感器通常是矩形的,但是如上所述,只有图像传感器的最大椭圆子区才能保证对表面的足够大区域成像。
视野圆锥与表面的交线确定了表面上的一个椭圆窗口。当光轴垂直于表面时,这个窗口是圆形的。
图62显示了在给定了与倾斜有关的光轴倾角后笔的尖头(A点)、笔的光轴(CE)、以及视野窗口(FH)之间的几何关系。我们把倾角定义为沿顺时针方向为正。下列公式同时适用于正倾角和负倾角。
当笔没有倾角时,窗口直径(即|BD|)由公式12确定。
当笔没有倾角时,如果笔尖到窗口的距离(即|AB|)为T,那么笔尖到窗口中心的距离(即|AC|)由公式13确定。
当笔的倾角为时,视点到表面的距离沿光轴方向减小为d(即|GE|),见公式14。
此时窗口的宽度(即|FH|)由公式15确定。
D和必须能够保证在有效倾角范围内对足够大的面积成像。所需的面积的最小直径m由公式4确定,而实际成像面积的宽度由公式15确定。这样可导出公式16。
当D和确定后,必须选择适当的图像传感器分辨率,保证对成像区域有足够高的取样率,即,应以奈奎斯特速率以上的频率对最高特征频率取样。
成像时,表面的比例随视点距离以及相对于观测光线的倾斜度的增加而减小。对于正倾角,这两个因子的影响在点F达到最大;对于负倾角,它们的影响在点H达到最大,也就是说,在窗口中距视点最远的点处。需要注意的是,当倾角为负时,下列公式中的F可以替换为H。
点F到视点的距离(即|EF|)由公式17确定。
因相对于观测光线(通过F)的表面倾斜导致的比例(EF)由公式18确定。
如果表面的特征频率为f,那么因上述两个因子导致的F点的斜面特征频率(即相对于视野)由公式19确定。
当没有物面倾角时(即=0),上述公式19可简化为公式20。
根据定义,图像传感器必须至少对整个视角范围内成像。由于图像传感器的像素密度是均匀的,因此它必须以最高频率对整个视野成像。假设图像区域的视角范围为2’,图像传感器相对于光轴的倾角(即像平面倾角)为’,取样率为n(根据奈奎斯特定理,n≥2),那么图像传感器所需的最低分辨率q由公式21和公式22确定。
公式22的分子的余弦平方项与公式19的分母的余弦平方项的推导方法相同。
当没有像平面倾角(即’=0),并且像空间和物空间的视角范围相同时(即’=),可以简化为公式23和公式24。
当没有物面倾角时(即=0),可以进一步简化为公式25。
当像面倾角和物面倾角相等(即’=)且像空间和物空间的视角范围也相等时(即’=),公式22可简化为公式26。
因此,与固定为0的图像传感器倾角相比,使像平面倾角与物平面倾角相等可以降低对图像传感器的尺寸的要求,并且能消除捕获图像的透视畸变。但是,在实际中,可变图像传感器倾角很难做到,而且需要更大的景深。
图63显示当给定与滚动相关的光轴倾角时,笔尖(A点)、笔的光轴(CE)、以及视野窗口(FH)之间的关系。我们仍把相对于垂直方向的顺时针倾角定义为正倾角。除公式13外,上述公式也适用于因滚动产生的倾角。对于因滚动而产生的倾角,笔尖与窗口中心的距离S(即|AC|)为0,而不是由公式13确定。
对于因倾斜导致的倾角,当选择最小倾角(负)和最大倾角(正)时(这两个倾角对图像传感器的要求相同),倾角范围最大。对于因倾斜导致的倾角,由于负倾角比同样大小的正倾角导致的表面距离更远,因此最小倾角的绝对值要比最大倾角的绝对值小。对于因滚动导致的倾角,这两个倾角的绝对值相等。
如上所述,标记4的最小特征是对数据位编码的结构,这种结构的最小直径为8个点。因此,在1600dpi下,最高特征频率f为每毫米7.9左右。根据上述公式4,在连续标记行之间采用不重叠的256点直径等边三角形平铺要求表面上的视野窗口直径至少为598点,或1600dpi下的9.5毫米。大多数人以30°倾斜和0°滚动方式握笔。在超过+50°倾斜时(即水平方向上的40°),圆珠笔尖的出墨珠会与纸面接触不良。因此,比较合理的目标倾斜范围为-10°-+50°,比较合理的滚动范围为-30°-+30°,应当记住的是,公式11中对倾斜和滚动的组合关系给出了较高的限制。高度紧凑的(1.5平方毫米)Matsushita CCD图像传感器(Matsushita电子公司制造,这种传感器在《IEEE学报-电子设备》2000年第1期第47卷上的论文“微型照相机的1mm 50k像素IT CCD图像传感器”中有所描述,作者Itakura,K T Nobusada,N Okusenya,R Nagayoshi和MOzaki)适合于在本发明的这种小型设备(例如笔)中使用。其分辨率为215×215像素左右。假设像空间和物空间视角范围相等,不存在像平面倾角,且笔尖到窗口的距离T为4毫米,那么使用公式16和公式24优化可实现所需的上述倾斜和滚动范围,其结果为当视距D为30毫米,视角范围为18.8°(=9.4°)时,倾斜范围为16°到.48°(64°),滚动范围为~28°到.28°(56°)。实际的有效倾斜范围为~21°到.43°。通过把光轴相对于物理轴倾斜5°,可以比较好地达到所需的范围。需要注意的是,通过优化像平面的非零倾角,可以稍稍扩展倾角范围。
因此,笔的总倾角限制在一个椭圆形圆锥内,圆锥的优角为64°,在倾斜平面内;圆锥的劣角为56°,在滚动平面内。
图像感测变量总结在表5中。
表5.图像感测变量


8.3 标记的解码8.3.1 标记图像的处理和解码标记图像的处理在上文中的1.2.4中已经说明。它获得标记上的二维透视变换以及解码的标记数据。
8.3.2 推断笔的变换如上所述,当获得了与捕获图像中的标记的透视畸变有关的二维透视变换后,可以相对于笔的光轴推断相应的离散三维标记变换,如下文中的8.4节所述。
获得了离散三维标记变换后,可以推断相应的三维笔变换,即,笔的物理轴相对于表面的变换。笔的物理轴是在笔的形状内的轴,它由笔的用户握住。笔的物理轴穿过笔尖。物理轴和光轴关系在图64中示出。
使用三维坐标空间比较方便。在传感器空间中,光轴与Z轴重合,视点位于原点。在笔空间中,物理轴与Z轴重合,笔尖位于原点。在标记空间中,标记4位于x-y平面内,其中心为原点。标记变换把标记4从标记空间变换到传感器空间中。
传感器空间在图64中示出。在图64中,点的标注与图62的标注一致。视点在E,感测点在G,笔尖在A。光轴和表面的交点称为感测点。它与图62中的几何形状不同,在图62中,笔尖被视为一个点,但是在这里,笔尖被视为一个小球面。如果笔尖是弧形的,那么物理轴的倾角会影响感测点与笔尖/表面的接触点之间的偏移。笔的物理轴支撑在球状笔尖的中心点K,该点称为支点。
当光轴垂直时,笔尖在A点与表面虚接触。KA定义为与光轴平行。但是,当笔有倾角时,接触点在L,如图65所示。假设尖头的半径为R,那么支点K到表面的距离(即在A点或L点)始终为R。
离散标记变换包括从感测点到标记中心的平移、三维标记旋转、以及从视点到感测点的平移。
在离散标记变换中,假设从视点到感测点的平移为d,那么根据公式14,感测点可由公式27得出。
由于物理轴只与光轴相差y偏移和绕X轴的旋转(即倾斜),所以物理轴位于y-z平面内。请参考图64,其中|AC|=S和|EC|=D(与图62相同)。很明显,在传感器空间内,支点的位置可由公式28确定。
因此,从感测点到支点的矢量可由公式29确定。
从支点到接触点的矢量定义为长度为R的表面法线。该矢量可以通过对标记空间的表面法线施加三维标记旋转M,对结果进行正规化,然后以比例R缩放获得,如公式30和公式31所示。
从感测点到接触点的矢量可以从公式32得出。
对该矢量进行逆向标记变换三维旋转,可以把它转换到标记空间中,然后,根据公式33,把转换后的矢量加到标记中心到感测点的矢量上,可以获得标记空间中(即表面上)从标记中心到接触点的矢量。
这个值最后被加到标记的绝对位置上,从而在标记的区域内产生笔尖的所需绝对位置,见公式34。
最后一步是从标记的三维方向推断笔的三维方向。笔的离散旋转仅仅是标记的离散旋转的倒数,但是笔的倾斜还要包括光轴相对于笔的轴的倾斜效应(sensor),见公式35、公式36和公式37。
8.4 推断标记变换由图像传感器捕获的标记4的图像包含由图像传感器相对于标记的位置和方向所产生的透视畸变。当在像空间中建立了标记的透视目标后,可以对与四个标记空间和像空间点对有关的方程组进行求解,以推断8个自由度的透视变换。产生标记的像的离散变换步骤以符号方式串联起来,然后,通过在串联的变换和透视变换中使用相应的条件可以获得一组联立的非线性方程。对这些方程组进行求解可以产生离散变换步骤,其中包含所需的标记距笔尖的偏移量、三维标记旋转、以及距表面的视点偏移量。
8.4.1 对标记变化建模标记4从标记空间到像空间的变换可以模型化为一系列以下变换步骤·x-y平移(由标记到视点的偏移量确定)·绕z轴旋转(由标记的偏转确定)·绕x轴旋转(由标记的倾斜确定)·绕y轴旋转(由标记的滚动确定)·z平移(由标记到视点的偏移量确定)·透视投影(采用特定的焦距)·x-y缩放(缩放到视区大小)
这些步骤以符号方式串联起来,产生影响标记变换的一个变换矩阵。表7中总结了用于下列部分的离散变换变量以及每个变量的范围。
表7.离散变换变量和它们的范围 x-y平面中的平移由tx和ty决定,可由公式42计算(其中A=tx,B=ty)。由公式43绕z轴旋转(其中 可获得公式44。
由公式45绕x轴旋转(其中 可获得公式46。
由公式47绕y轴旋转(其中 可获得公式48,其中K和L由公式49和公式50确定。
由公式51沿z轴平移tz(其中I=tz),可获得公式52。
由公式53采用聚焦.和投影平面z=0进行投影变换(其中J=1/),可获得公式54。
由公式55以S缩放到视区,可获得公式56。
由公式57在x-y平面内(z=0)平移点,可获得公式58。
最后,扩展K和L,可获得公式59。
8.4.2 二维透视变换假设推断的8自由度二维透视变换由公式60确定,乘以一个未知数i可以获得9个自由度的矩阵,见公式61。
由公式62对二维点平移,可获得公式63。
8.4.3 推断标记变换8.4.3.1配平系数使用公式63中的系数配平公式59中的系数,可获得公式64到公式72,它们是带有11个未知数的9个非线性方程。
采用与角的正弦和余弦(即偏转、倾斜和滚动中任意一个量的正弦和余弦)相关的三角恒等式对这些方程进行扩充,见公式73。
给定角的正弦和余弦后,可以使用两个变量的反正切获得相应的角,见公式74。
8.4.3.2求解X-Y偏移量使用公式64和公式65可以把公式66简化为公式75和公式76。
使用公式67和公式68可以把公式69简化为公式77和公式78。
使用公式70和公式71简化公式72,可以得出公式79和公式80。
公式76可以重写为公式81,公式78可以重写为公式82。
对公式81和公式82配平并求解B可获得公式83—公式85,最终产生公式86,从该公式中可以解出B。
把B的值带入公式82并简化可产生公式87—公式90,最终产生公式91,从该公式中可以解出A。
由于A=tx,B=ty,这样可以获得标记4距视点的x-y偏移量。
8.4.3.3求解倾斜从公式68中可获得公式92。
从公式67中可获得公式93。
从公式64、公式92和公式93可获得公式94。
从公式65、公式92和公式93可获得公式95。
从公式70、公式92和公式93可获得公式96。
从公式71、公式92和公式93可获得公式97。
从公式94可获得公式98。
从公式95可获得公式99。
从公式96可获得公式100。
从公式97可获得公式101。
从公式98和公式99可获得公式102和公式103。
从公式100和公式101可获得公式104和公式105。
从公式103和公式105可获得公式106和公式107。
如果G和H同时不为0,那么公式107有效。由于||/2,因此滚动的余弦(G)始终为正值,不为0。如果滚动不为0,那么滚动的正弦(H)就不为0。零倾斜和零滚动的特殊处理在第6.7.3.10节中给出。
由此可以获得倾斜的正弦量,由于F=sin(),根据公式108,倾斜的余弦(E)可由公式73确定。
由于||./2,倾斜的余弦(E)始终为正值,因此,在取平方根时,不存在两个结果。但是,正弦(F)的符号必须由其它方法确定,如第6.7.3.9节所述。
根据公式109,给定E和F后,可以获得倾斜值。
8.4.3.4 求解滚动从公式103可获得公式110。
从公式73可获得公式111和公式112。
由此可获得滚动的正弦值,根据公式113,由于H=sin( ),滚动的余弦(G)可由公式73确定。
由于||/4,滚动的余弦(G)始终为正值,因此在取平方根时不存在两个结果。但是,正线(H)的符号必须由其它方法确定,如第6.7.3.9节所述。
根据公式114,给定了G和H后,可获得滚动值。
8.4.3.5 求解偏转从公式73、公式92和公式93,可获得公式115和公式116。
从公式92和公式116,可获得公式117和公式118。
从公式92和公式116,可获得公式119和公式120。
在公式116中、公式118和公式120中,平方根的符号由i的符号确定,而i可由公式80确定,这样可获得公式121。
由于I(tz)为负值,J(1/)为正值,IJ~1(因|tz|),所以公式122成立。
根据公式123,给定了C和D后,可以获得偏转量。
8.4.3.6 求解视区比例根据定义,偏转的正弦(C)和余弦(D)永远不会同时为0。由于倾斜的正弦(E)始终不为0,那么始终可以采用公式67或公式68确定视区比例(S)。
如果D不为0,那么可从公式67得到公式124。
否则,如果C不为0,那么可以从公式68获得公式125。
8.4.3.7 求解焦距类似地,由于滚动的余弦(G)永远不为0,所以只要倾斜或滚动不为0,就可以使用公式70或公式71来确定焦距(J)的倒数。但是,倾斜和滚动的正弦值(F和H)的符号可能是未知的。而倾斜和滚动的正弦值的积(FH)可由公式103确定,见公式126。
由于J的符号可根据经验确定,因此可以为F任意指定一个符号。如果gi不为0,那么可以从公式70获得公式127。
如果hi不为0,那么可以从公式71获得公式128。
在实际情况下,是选用公式127还是选用公式128取决于gi和hi在哪个公式中的值更大。如果gi和hi同时为0(即,如果倾斜和滚动同时为0),那么焦距的倒数是未知的。
8.4.3.8 求解Z偏移量当焦距(J)的倒数已知时,根据公式129,可以从公式80中获得z偏移量(I)。
相反,如果焦距(J)的倒数是未知的(即倾斜和滚动同时为0),那么z偏移量(I)无法求得。
8.4.3.9 确定倾斜和滚动的方向倾斜和滚动的正弦值的积(FH)的符号由公式126确定。由于/4./4,可以在公式中引入/4滚动调整量,以保证滚动始终为正值。这种处理方法不会影响其它假设。进行了滚动调整后,可以由公式126获得正弦(F)的符号。
滚动调整如下实现。视区比例(S)、焦距(J)的倒数、以及z偏移量(I)都以上述方式计算。从二维透视变换矩阵产生三维变换矩阵。按相反顺序把视区比例的倒数、焦距投影和z平移应用到三维矩阵上。然后,在该矩阵上预乘一个/4y旋转矩阵可实现滚动调整。然后,可以按照上述的方法计算滚动、倾斜和偏转。由于滚动为正值,所以可以确定倾斜的方向。最后,需要从滚动中减去/4滚动调整值,以获得实际的滚动值。如上所述,当滚动和倾斜同时为0时,焦距和z偏移量都是未知的。在这种情况下,没有必要调整滚动,因为倾斜和滚动已经确定。
8.4.3.10 处理零倾斜和零滚动当倾斜为0或滚动为0时,以公式107为基础的一般方法是无效的。图85中的表显示了公式64到公式71的12个简化形式(当偏转为0(或)、/2(或3/2)或不等于0,而倾斜和滚动为0或不为0)。图86和87的表给出了当倾斜和/或滚动为0时进行检测和处理所需的逻辑,其中的每种情况由图85中出现的0触发。图85的表中的各种情况标有图86和图87的表的情况标号。
总结本发明是参考一个较佳实例和若干特定的实例说明的。业界有经验的人士应该懂得,与本文中所述的实例不同的一些其它实例也属于本发明的范围。因此,需要理解的是,本发明的范围不仅限于本说明书中所述的特定实例(包括互参的文档)。本发明的范围只受所附的权利要求书限制。
权利要求
1.一种能够在相对于某表面移动或放置时产生方向数据的传感设备,上述方向数据指示传感设备相对于表面的方向,上述表面上带有按某种方式排列的编码数据,这些编码数据在被上述传感设备感测后可以指示方向,所述传感设备包括一个外壳;配置为使用至少部分编码数据产生方向数据的方向传感装置;和配置为把方向数据传送给计算机系统的通信装置。
2.如权利要求1所述的传感设备,其中上述方向数据至少指示上述外壳相对于上述表面的偏转、倾斜或滚动。
3.如权利要求1所述的传感设备进一步包括用于在上述传感设备相对于上述表面运动时产生动作数据的运动传感装置以及配置为把运动数据传送给计算机系统的通信装置。
4.如权利要求3所述的传感设备进一步包括一种区域标识传感装置,上述区域标识传感装置被配置为在上述传感设备相对于上述表面的区域移动或放置时使用至少部分编码数据感测指示区域标识的区域标识数据。上述通信装置被配置为把区域标识数据传送给计算机系统。
5.如权利要求4所述的传感设备,其中上述运动传感装置被配置为使用至少部分编码数据产生动作数据。
6.如权利要求5所述的传感设备,其中上述编码数据还指示上述区域的复数个参考点;上述运动传感装置被配置为根据传感设备相对于至少一个参考点的运动产生动作数据。
7.如权利要求5所述的传感设备,其中上述编码数据包括周期性元素;上述运动传感装置被配置为根据传感设备相对于至少一个定期元素的运动产生动作数据。
8.如权利要求6或7所述的传感设备,其中上述运动传感装置被配置为相对于至少一个参考点或周期性元素对传感设备的位置进行取样,从而产生动作数据。
9.如权利要求8所述的传感设备进一步包括一种距离估算装置,上述距离估算装置被配置为估算从至少一个参考点或周期性元素到传感设备的距离。
10.如权利要求9所述的传感设备,其中上述通信装置被配置为向计算机系统发送距离数据;上述距离数据指示距离。
11.如权利要求9所述的传感设备,其中上述运动传感装置被配置为使用上述距离估算装置估算的距离来确定传感设备的精确位置;由这种装置获得的设备位置比至少一个参考点或周期性元素本身指示的位置更精确。
12.如权利要求5所述的传感设备进一步包括一个方向传感装置,该装置被配置为感测上述传感设备相对于至少一部分编码数据的方向。
13.如权利要求12所述的传感设备,其中上述通信装置被配置为向计算机系统传送方向数据,方向数据可以指示方向。
14.如权利要求3所述的传感设备,其中上述运动传感装置至少包括一种加速度传感装置,上述加速度传感装置被配置为当传感设备移过表面区域时感测其加速度;上述运动传感装置被配置为通过定期对加速度取样来产生动作数据。
15.如权利要求13所述的传感设备,其中上述加速度传感装置被配置为至少感测加速度的两个正交分量。
16.如权利要求4所述的传感设备进一步包括一种计时器装置,上述计时器装置被配置为当传感设备相对于表面区域移动时产生时间基准。
17.如权利要求16所述的传感设备,其中上述通信装置被配置为向计算机系统发送时间基准数据,上述时间基准数据由计时器装置产生并指示动作数据的时间基准。
18.如权利要求1所述的传感设备,其中上述通信装置是一种无线通讯装置。
19.如权利要求1所述的传感设备进一步包括一种力量传感装置,上述力量传感装置被配置为感测由传感设备施加到上述表面的压力。
20.如权利要求19所述的传感设备,其中上述通信装置被配置为向计算机系统传送力量数据,上述力量数据指示力量。
21.如权利要求19所述的传感设备进一步包括一种笔划检测装置,上述笔画检测装置被配置为根据上述传感设备施加在表面上的压力的变化来检测并确定笔划的持续时间。
22.如权利要求4、5、和14所述的传感设备进一步包括一个用于在上述表面上做标记的可书写笔尖。
23.如权利要求22所述的传感设备,其中上述传感设备为触笔或笔式装置。
24.如权利要求1所述的传感设备,其中上述编码数据在人眼下直接观察是不可见的。
25.如权利要求24所述的传感设备,其中上述编码数据使用红外墨水打印,上述传感设备对红外光谱敏感。
26.如权利要求6所述的传感设备,其中上述编码数据包含复数个标记,每个标记指示自己所在的区域以及该区域的参考点,上述区域与表面有关,上述参考点指示上述标记在上述区域内的位置。
27.如权利要求7所述的传感设备,其中上述编码数据包含复数个标记,每个标记指示自己所在的区域,并且每个标记至少包含编码数据的一个周期性元素。
28.如权利要求1所述的传感设备,其中上述方向传感装置被配置为从至少一部分编码数据的透视畸变推断方向。
全文摘要
本发明提供了一种传感设备,该传感设备可以在其相对与某个表面放置或移动时产生方向数据;所述方向数据可以指示传感设备相对于所述表面的方向;所述表面上具有以特定方式排列的编码数据;当所述编码数据被上述传感设备感测时,可以指示方向;所述传感设备包括一个外壳、配置为使用至少一部分编码数据产生方向数据的方向传感装置、以及配置为把方向数据传送给一个计算机系统的通信装置。
文档编号G06F3/0354GK1498389SQ01819475
公开日2004年5月19日 申请日期2001年11月26日 优先权日2000年11月25日
发明者保罗·拉普斯顿, 保罗 拉普斯顿, 卡·西尔弗布鲁克, 尔弗布鲁克 申请人:西尔弗布鲁克研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1