分布式手写识别方法、系统、客户端和服务器端的制作方法

文档序号:6429414阅读:120来源:国知局
专利名称:分布式手写识别方法、系统、客户端和服务器端的制作方法
技术领域
本发明涉及在服务器端包括手写识别器单元、在客户端识别手写的方法。本发明尤其涉及手写识别系统、手写识别客户、手写识别服务器、以及计算机软件产品。
本发明基于优先权申请EP03292386.4,其在此引入作为参考。
背景技术
渗透式计算可以定义为在任何时间任何地点对信息和软件应用程序的访问。该形式计算是高度动态和离散的。用户是可移动的,并且,通过集中一起协作的分布式组件提供服务。在移动计算、服务发现、以及分布式计算中的最新发展是支持渗透式计算的关键技术。
渗透式计算追求可得性和不可见性。一方面,可以将渗透式计算定义为在任何地点和任何时间对软件应用程序和信息的可得性。另一方面,渗透式计算也意味着,计算机被隐藏在许多我们在日常生活中使用的所谓的信息电器中。个人数据助理(PDA)和手机是最大范围可得并得到使用的渗透式计算装置。
渗透式计算追求无干扰性。这对照于在目前计算机的交互中的实际不透明性。输入输出装置和用户操作都不是天然的。输入输出装置,如鼠标、键盘以及监视器都是用于计算的纯制成品。
所述操作为如下的操作,如启动浏览器、搜索网页中的元素、设置声频或视频编码机构、以及输入识别信息(如,帐号和密码)。为达到交互的透明性,需要先进的硬件和软件工具,如手写识别、手势识别、语音识别、自由形式笔式交互、以及可触用户接口,即,使用日常物理物体操作电子信息。
用于上述的一种技术例如为在斯坦福研究院开发的开放智能体结构(OAA)。其允许通过独立智能体的分布式集中的协同工作提供软件服务。智能体之间的通信和合作由一家或多家服务商代理,服务商利用对其它智能体的性能的描述,负责匹配来自用户和智能体的要求。
几个紧密关联的趋势正向前驱动软件系统的设计和构造的模型发展,所述趋势包括网络化计算模型的采用正导致对数据和处理资源的分布式位置的急遽增大的依赖。
日益复杂的系统、新技术的发展、以及多媒体材料和环境的可得性正产生对更易得、直接的用户接口的需求。提供复杂服务的独立的、分布式、多组件系统将不再将其自身用于交互的常见的直接操作模型中,在所述模型中,单个用户控制由单个应用程序提供的命令的固定选择。在网络化环境中,渗透式计算已经产生了这样的情况,在其中,多个软件服务的通常使用者可能不是一个专家,他可能不频繁地、或只几次地访问给定的服务。需要新的方法来适应这种使用状况。幸运的是,现在,输入形式变成日益广泛地可得,如语音识别以及笔式手写和手势识别,并且通过使用多媒体对系统响应表示的管理能力提供了形成一种从人间交互吸取大量经验的人机交互形式的机会。
随着语音识别、手写识别、以及自然语言技术正变得日益成熟,必须为这些输入形式准备代理结构,以在代理的任务中起更重要的作用。
用户接口(UI)代理在用户本地移动装置上运行,并负责接收用户输入、向服务商(facilitator)发送适当代理的请求的委派(delegation)、以及显示分布式计算的结果。用户利用远程应用程序可以直接交互,通过点击接口上的激活区、调出所述应用程序的形式或窗口、以及使用标准接口对话机构提出问题。
该系统支持对笔式输入和图形的识别,并将个人数据助理(PDA)用作系统的智能输入装置,从接口ACMConference on Advanced VisualInterfaces 1996会议上,W.V.Citrin和M.D.Gross的论文“DistributedArchitectures for Pen-Based Input and Diagram Recognition”中可对其有所了解。其中,在PDA和主计算机之间分布功能,让PDA执行低级形状识别和编辑功能,而让后台计算机执行高级识别功能,包括对图形元素间的空间联系的识别。该机构提供了优于常规的、使用简单数字化写字板的笔式系统的多个优势。其在一般图形识别系统中提供使用特别为形状识别和编辑设计的硬件的机会,其通过并行处理允许改进的性能,以及通过使用现场中的PDA前台允许远程执行图形输入。
在那一点上,用于分布式手写识别的通信对话使如移动电话或PDA(它们可能不包含计算资源)的移动或远程终端用户装置可以执行令人满意的手写识别率。
手写识别包含整个识别领域,例如,从手势识别或作者识别到字符串压缩和语义解释。
数字墨水指数字化表示例如平面上的笔迹的自然形式的手写的技术。在典型的数字墨水系统中,在LCD屏幕下或上方放置数字转换器,以捕捉专用笔或针尖的移动,并在LCD屏幕上记录下移动。其效果类似于使用液体墨水在纸上书写。随后,使用手写识别技术可以将捕捉到的或记录下的手写,即数字墨水,存为手写或转换为打印文本。将描述分布式手写的通信对话内容的调换格式的格式化称为数字墨水。万维网联盟已经开始一系列关于(数字)墨水标示语言的需求,其中主要需求如下-其必须提供一个机构,以注明对基于识别的输入形式来说共同的外部资源和约束。
-其必须允许根据目标引擎或引擎类型对多种不同数据通道进行捕捉,并且其必须允许扩展进入新通道的定义,以支持未来的装置和应用程序。
-其必须支持用于实时输入的多级粒度的墨水流。
-其必须允许薄的移动装置的轻便客户的执行。
-其必须提供允许在低带宽网络连接上通信的机构。
在数字墨水的上下文中,笔划是例如由两个连续速度极值界定的笔的基本移动导致的数字墨水。通常,也可以由开始的抬笔事件和结束的落笔事件表征笔划。笔划的序列构成笔迹。
当使用分布式手写时,发生的问题是,要求通信对话是交互(至少通过用户)的,即,希望响应周期非常短。在识别服务分布并且例如突发地过载,将不能满足“无缝识别要求”。

发明内容
该问题通过一种通信对话方法得以解决,当在客户端的捕捉装置和服务器端的识别单元之间进行手写识别时,服务器端和客户端通过网络连接,所述方法包括以下步骤在客户端,将捕捉到的手写转换为数字传送格式用于捕捉到的手写和手写识别(下文中称为数字墨水);将数字墨水传送到服务器端;以及,当由服务器端的识别单元识别出数字墨水,将识别结果传送回客户端,其中,由通过所述网络交换的在数字墨水中的指令初始化识别会话,并形成所述手写识别器单元的上下文,以及在客户端重复执行以下步骤请求逐部分地识别数字墨水,以及当识别器单元已经识别一个或一些所述部分,回复部分识别结果,直到识别出数字墨水或进程中断。
该问题通过分布式手写识别器系统得以解决,所述系统包括通过网络连接的至少一个手写识别器客户端和一个手写识别器服务器端,所述手写识别器客户端包括用于捕捉手写输入的输入装置、在客户端将输入转换为数字墨水的处理装置、以及用于将数字墨水从客户端传送到服务器端的通信装置,所述手写识别器服务器端包括用于在服务器端识别数字墨水的识别器单元、以及用于将识别结果传送给客户端的通信装置,其中,形成通信装置以由通过所述网络交换的在数字墨水中的指令形成识别会话和形成所述手写识别器单元的上下文;以及,形成通信装置以处理一系列部分识别请求并;利用传送部分识别结果的序列进行回复,直到识别出数字墨水或进程中断。
特别是,通过手写识别器客户端和手写识别器服务器端解决了该问题。
而且,一种在服务器端包括手写识别器、在客户端识别手写、一旦运行即执行上述方法的计算机软件产品,解决了该问题。
换句话说,用于手写识别的分布式(客户端/服务器端)结构解决了该问题,适于在标准网络环境中整合,其中,通信协议使用手写识别的上下文和特征,即在客户端和服务器端之间传送部分数字墨水和结果并同步化识别上下文。
分布式手写识别系统包括用于处理手写输入的客户端(笔)和处理识别算法的主要部分的服务器端。客户端服务器端通信为识别提供对数字墨水(笔式输入)的传送。该通信最好是域名专用扩展标示语言(XML),类似控制识别器的活动的InkXML。一种高效而简单的通信策略在两笔划(抬笔、落笔)之间使用时间(停顿),以将墨水数据传送到识别服务器端,并利用例如在服务器端的识别活动与在客户端的扫描活动的交替。该方法甚至服务于不同的识别模式,如数字、草书。
因此,本发明的一个优势是,在性能和客户端数方面提供了高级可量测性,在区分识别请求和成果方面提供了高度灵活性,以及在反应能力和荷载平衡方面提供了高识别性能。
通过在会话上下文中对扫描的笔划分段,突发的荷载在时间上被分布,并显著提高了反应能力。通过在服务器端和客户端之间移动功能,可以根据荷载的上下文,如在突发请求阶段,平衡荷载。
本发明的另一优势是提供墨水识别服务,即,使功能对大部分末端用户网络装置开放。
本发明的另一优势是高效通信策略,其要求低宽带和低程序工作,而得到强大的识别能力。
本发明的还一优势是其良好地整合了万维网联盟的多模型框架和标准化。


通过参考附图进行说明,本发明的这些和其它很多目的和优势对于本领域的技术人员将变得显而易见,其中图1是示出采样点的两个手写输入图;图2是根据现有技术的基于服务器端客户端的手写识别器的通信图;图3是根据本发明,在服务器端包括手写识别器单元、在客户端识别手写的方法图;图4是根据本发明,通过在服务器端包括手写识别器单元、在客户端识别手写的方法的荷载平衡的示意图;图5和图6是数字墨水的XML块。
具体实施例方式
终端用户装置,如移动电话或PDA可能不具有执行令人满意的手写识别算法而产生高识别率的计算能力。因此,可以使用提供高级可量测性和软件灵活性的分布式(客户端/服务器端)结构。
分布式手写识别系统包括客户端,用于处理称为扫描的手写输入(笔式);以及服务器端,其主要处理识别。
手写客户端和服务器端之间的通信协议可以基于IP/TCP,并且可以在任何LAN或者使用如套接字连接等的互联网连接中执行。
客户端和服务器端之间的通信接口应当将数字墨水(笔式输入)传送到服务器端用于识别。
一种支持部分输入、尤其是笔划的识别请求的高效而实效的通信策略解决了在通信和识别过程中提供连续笔式输入和视觉反馈的问题。仅通过重新使用现有的在服务器端整合在一起的InkXML图表即可实现,从而识别算法可以从一组部分数字墨水输入得到部分结果字符串。这通常是在将笔划作为部分处理时的情况。
手写客户端和服务器端之间的通信协议也应该支持客户端或服务器端在紧张情况下的荷载移动,以提供平稳的服务(降级)分级和荷载平衡。即可以由类似于提高对在客户端的识别的预处理的功能移动,如数字墨水更新、减小采样率等支持荷载移动,也甚至可以通过在服务器端和客户端之间传送功能,如类似于Java类或LISP代码的可执行或可编译程序代码来支持荷载移动。
一种简单而高效的通信策略在两笔划(抬笔,落笔)之间使用时间(停顿),以将墨水数据传送到识别服务器端和对在客户端和服务器端的活动的平行处理。推荐的通信策略一致性地工作,即,不依赖于不同的识别模式,如数字、草书等,并当使用低通信带宽时保证有反应的、连续的高识别性能。
图1示出了“hello”的两种手写采样A和B。第一个“hello”采样A由一组末端采样点1,2,...,6,和中间采样点IP采样。第二个“hello”采样B由一组末端采样点1’,2’,...,10’,和同样的中间采样点IP采样。
该图示出,手写由笔划构成,而笔划可以由其末端点表征。这些末端点即可由如在第一个“hello”采样中的运笔速度轨迹的显著变化来表征,也可由如在第二个“hello”采样中的抬笔事件或落笔事件来表征。
总之,将笔划定义为手写文本的一部分。并且所述部分的粒度应该不低于一个字母。在字符串中,所述部分对整个手写文本应该具有区别性或可连接性。所述部分的边界是末端点1,2,...,6,1’,2’,...,10’。
可以将手写文本表示为使用采样点序列的数字墨水。更通常地,是将手写文本表示为子序列的序列,所述子序列可以串接成整个序列,即,在半组(结构的代数项)中的因式分解。
也可以通过一组相应的spine多项式或者任何功能应用程序表示笔迹。甚至可以由先前识别出的表示为类似记号的抽象实体的图形序列来表示。
出于方便和说明的目的,将手写的部分看作采样点的一般简单序列,尽管本发明方法不限于这种表示。
图2示出了根据现有技术的分布式手写识别系统,包括客户端C和服务器端S,通过例如InkXML的手写表示HWP通信。客户端包括应用程序APP,其使用由手写扫描器HWSC支持、通过连接装置COM连接到服务器端的手写用户接口HWUI。
还示出了交互序列图,图示了在客户端C的采样文本活动ST。图示了在服务器端的识别器初始化活动INIT和识别活动REC。
识别过程如下,在客户端C,当进行采样文本活动ST时,由手写扫描器HWSC从手写用户接口HWUI采样手写。可选地,扫描器也抛光采样,如,通过取消多余的采样点或计算上述spine近似等。然后,将识别请求RReq(包括采样信息)传送到服务器端S。在服务器端S,通过在识别器初始化活动INIT中首先初始化识别器单元HWRE,然后在进行识别活动REC时,识别采样手写,而解决识别请求RReq。通过识别结果回复RRes将结果传送回客户端。图中以由t标记的箭头表示时间方向。
图3示出了根据本发明的分布式手写识别系统,此处,同样也包括客户端C和服务器端S通过手写表示和识别器表示HWPRP通信,所述表示例如类似于InkXML的XML图表,由描述识别器单元的前条件和后条件或甚至语用、任务、识别域名模型、或资源的标记扩展。
客户端包括应用程序APP,其使用手写用户接口HWUI支持通过增强连接装置COM+连接到服务器端的增强手写扫描器HWSC+。
还示出了交互序列图,包括在客户端C的第一采样文本活动ST1和第二采样文本活动ST2。还示出了在服务器端的识别器初始化活动INIT,和第一识别活动REC1、及第二识别器活动REC2。
识别过程如下首先当需要手写识别功能时,利用手写识别器初始化请求HWIReq从服务器端请求。
该请求确定手写识别的上下文。其例如通过提供用户信息、如语言、或甚至识别语法的识别特征,例如限制识别结果空间,准备服务器端S。图5示出了在InkXML中对该信息的确定。其中,识别器单元由作者信息‘<writerBlock>’和采样<writerlmage>预备,以适应未来的识别。该描述也可以包括通信策略、笔划和格式定义、以及部分扫描的粒度。
该请求还覆盖了下列识别活动REC1 REC2以及进一步的请求的弱会话的上下文。会话是用户代理或客户端和服务器端之间的连接,其中当扫描手写和识别时在上述二者之间交换信息。
当服务器端进行初始化时,即,当进行识别器初始化活动INIT时,增强手写扫描器HWSC+在采样文本活动STI中采样第一笔划。然后,通过第一识别请求RReq1将该笔划传送到服务器端S,当进行第一识别活动REC1时,在服务器端S识别出第一笔划。当进行第一识别活动REC1时,增强手写扫描器HWSC+随第二采样文本活动ST2继续。然后,通过第二识别请求RReq2将第二手写采样传送到服务器S,当进行第二识别活动REC2时,在服务器S识别第二手写采样等。在服务器S中,当进行相应的识别活动REC1、REC2时,由识别器单元回复识别请求RReq1、RReq2,如图所示,服务器通过回复结果RRes1...来回复结果。
通过识别结果回复RRes1、RRes2将部分结果传送回客户端。图中也以t标记的箭头表示了时间的方向。
比较该图与图2所示,将会发现,通过在客户端和服务器端的一致同步化的平行处理改进了反应能力和效率。
增强连接装置COM+同步化了笔划和识别结果之间的联系。该图示出了非常简单的情况。应该注意到,可以对请求和响应或结果回复任意插页(变换)。用于通信的不变量只有如果i<j,则STi在STj前,以及,如果在客户端没有兑现或处理,如果i<j,则RReqi在RReqj之前。
因此,增强连接装置COM+必须根据系统上下文缓冲、延迟、重排序(re-order)请求和结果,其中系统上下文包括用于识别的请求前缀、用于语义确认的识别结果的整合等。
系统上下文可以是运行低存储器或处理器能力的客户C。那么,在服务器端的增强连接装置COM+必须排序(order)缓冲器并以正确的次序为回复重排序。
另一系统上下文可以在低资源、尤其是通信资源上运行的服务器S。那么,整合可以成为解决方案,即,把多笔划整合进一个请求,或把多结果整合进一个回复。另一方法可以加强对传送数据的压缩率,如,通过在传送请求前施加运行长度编码或其它任何熵减缩编码。
当服务器端S运行低处理功能,客户端C可以接管一些识别功能。这可以只通过缓冲请求进行。另一种加强为,类似于在编译器中,通过扫描器或记号赋予器加强预处理。通过使用移动Java环境代替上述指出的InkXML的扩展,甚至可以精确的传送识别算法的一些部分。当例如在Java中执行识别器单元和扫描器进程,可以将识别器单元的完整部分(分类组)传送到客户端上,并使其在客户端的虚拟机上运行。
可以假设简单形式的识别为Markov算法,即,存在允许(逐块地)部分运行的拓扑,并且然后可以将这些块整合到一起。该块或部分是笔划或单独的标记。单独的标记例如可以由提供记号字母表分布的顺序神经元网络(trained neuronal network)来识别。为了简化起见,假设使用了最大值(无折回或传播)。在进一步中,其由相邻的结果构成,并且然后根据语法和句法约束,如限制语法或拼写约束等进行修改。为提供识别进程性能,可以将每个这些进程平稳地从客户端传送到服务器端并从服务器端传送回客户端。
从上面三个情景,可以进一步认识到,增强连接装置COM+也必须处理识别算法拓扑约束,例如,当识别器单元包括拼写检查器,增强连接装置COM+必须延迟响应和整合识别内容,直到完成拼写检查。
假设直接使用标准调度程序技术,从而,为了在扫描步骤中支持有利的识别,推荐使用限定模块之间的通信的不变量,以解决指示的同步化问题。而且,为建立识别上下文,可以引入明确的会话标识符代替客户端标识符或地址等。
图4示出在服务器端S和两个客户端C1和C2之间的客户端服务器端资源平衡。当第一客户端C1使处理资源CPU1可得,其运行在低存储器MEM1资源。第二客户端C2具有重荷载CPU2。服务器端S必须补偿这些资源缺乏,并对第一服务器端C1提供比对第二服务器端C2提供的SCPU2更多的处理功能SCPU1。类似地提供了存储器。
简要介绍一下存储器。使用的存储器主要包括扫描的图形和参考图形组。因为当在客户端识别时,至少需要一部分图形出现在客户端,因此,事实上,存储器对于性能也是重要的。这里同样地,标准兑现和分页机构是可得和可应用的。
图6示出了InkXML数字墨水的示范块,包括扫描装置信息‘<deviceInfo>’,如采样率、功能等;以及通道信息‘<channelLIST>’,如位置XY的坐标或笔的角度、压力等。其还包括了一个块(chuck)和两个笔迹。
利用根据本发明的方法,建议将示出的以块笔迹测量(chunk-trace-measurement)结构表示的数字墨水分解为多个部分,例如,全都包括一个笔迹。
数字墨水的XML表示和进一步的信息交换允许将服务器端在例如应用如Sun’s Jini或微软通用插头和播放的网络中用作网络服务器。该程序接口的定义和背景通过万维网联盟,w3c.org可得,并被称为网络服务。
权利要求
1.一种当在客户端的捕捉装置和服务器端的识别器单元之间识别手写时用于通信对话的方法,服务器端和客户端通过网络连接,所述方法包括以下步骤在客户端,将捕捉到的手写转换为数字传送格式,用于捕捉到的手写和手写识别,所述格式之后被称为数字墨水;将数字墨水传送到所述服务器端;以及当在服务器端由识别器单元识别出数字墨水,将识别结果传送回客户端,其中还包括以下步骤初始化识别会话,并由通过所述网络交换的在数字墨水中的指令形成所述手写识别器单元的上下文;请求逐部分地识别数字墨水;以及当识别器单元已经识别出一个或一些所述部分时,回复部分识别结果,直到识别出数字墨水或进程中断。
2.根据权利要求1的方法,其中所述方法还包括以下可选步骤缓冲或延迟识别请求;或者延迟传送响应所述请求的对结果和部分结果的整合。
3.根据权利要求1的方法,其中请求由笔划触发。
4.根据权利要求1的方法,其中通过标示语言扩展实现请求逐部分地识别数字墨水。
5.根据权利要求1的方法,其中使用标示语言扩展将识别功能从客户端传送到服务器端,并且反之亦然,允许对手写识别器单元和捕捉装置的功能部分和资源的交换。
6.一种分布式手写识别器系统,包括通过网络连接的至少一个手写识别器客户端和手写识别器服务器端,所述手写识别器客户端包括用于捕捉手写输入的输入装置、用于在客户端将输入转换为数字墨水的处理装置、以及用于将数字墨水从客户端传送到服务器端的通信装置;所述手写识别器服务器端包括用于在服务器端识别数字墨水的识别器单元,以及用于将识别结果传送给客户端的通信装置,其中,形成通信装置以建立识别会话,并由通过所述网络交换在数字墨水中的指令形成所述手写识别器单元的上下文,并且,形成通信装置以传送部分识别请求的序列和通过传送部分识别的结果的序列以回复,直到识别出数字墨水或进程中断。
7.根据权利要求6的分布式手写识别器中的手写识别器客户端。
8.根据权利要求7的手写识别器客户端,其中将所述手写识别器客户端嵌入浏览器环境中。
9.根据权利要求6的分布式手写识别器的手写识别器服务器端。
10.根据权利要求9的手写识别器服务器端,其中将所述手写识别器服务器端提供为网络服务。
11.一种计算机软件产品,在服务器端包括手写识别器,在客户端识别手写,所述计算机软件产品在运行时执行根据权利要求1的方法。
全文摘要
一种用于当在客户端的捕捉装置和服务器端的识别器单元之间识别手写时进行通信对话的方法,服务器端和客户端通过网络连接,该方法包括以下步骤在客户端,为捕捉到的手写和手写识别,将捕捉到的手写转换为数字传送格式,所述格式被称为数字墨水;将数字墨水传送到服务器端;并当在服务器端由识别器单元识别出数字墨水时,将识别结果传送回客户端,还包括以下步骤初始化识别对话,并由通过所述网络交换在数字墨水中的指令形成所述手写识别器单元的上下文;请求逐部分地识别数字墨水,以及当识别器单元已经识别出一个或一些所述部分时,回复部分识别结果,直到识别出数字墨水或进程中断。
文档编号G06K9/00GK1604121SQ20041008038
公开日2005年4月6日 申请日期2004年9月29日 优先权日2003年9月29日
发明者H·勒斯勒尔, M·W·霍赫 申请人:阿尔卡特公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1