协同手写输入的系统和方法 【技术领域】
本发明一般地涉及计算设备的手写输入,具体地涉及两个计算设备之间协同手写输入的系统和方法。
背景技术
手写输入已经成为一种广泛应用的输入方法。特别是对于亚洲国家,由于文字本身的特点使得键盘输入很不方便,手写输入也就尤为重要。
目前,手写识别技术已经得到了长足的进步,识别率不断提高。例如,1996年7月17日提交的,并于1998年5月12日授权的,发明人为Kenneth J.Guzik和John L.C.Seybold的美国专利5,751,851号,发明名称为“手写输入分解方法”(METHOD OFSPLITTING HANDWRITTEN INPUT),公开了一种分解手写输入笔划及机器识别的方法,其内容引用在此以供参考。
常见的手写输入设备是由手写板、触笔以及连接线组成,一般通过串口、USB口或其他方式连接到计算机上。手写输入时,在计算机屏幕上显示输入笔划和识别字符。这种方式存在以下问题:由于输入和显示的分离造成没有可视化的反馈,手-眼配合困难,特别是纠错时;手写板、连接线等携带不方便,特别是对于移动的膝上型计算机(Laptop)用户来说这一问题尤为严重。
而另一方面,基于笔式输入的手持式计算设备的使用也越来越广泛,例如,IBM公司生产的Workpad或类似的掌上电脑,个人数字助理(PDA),带笔式接口的移动电话等。这些设备普遍使用了笔式输入设备,并且将压感触摸面板或其它形式的输入板(input tablet)与显示屏幕结合从而对应地回显输入笔划。1993年3月2日提交的,并于1994年9月13日授权的,发明人为JackLee的美国专利5,347,477号,发明名称为“基于笔输入的表单计算机”(PEN-BASED FORM COMPUTER),公开了这样一种形式的计算设备,其内容引用在此以供参考。这种计算设备体积小巧、携带方便、输入直观,但是由于这种手持式计算设备的计算能力和存储器容量有限,或者说其处理器地处理能力和存储器容量远远落后于台式计算机或膝上型计算机,无法实现充分、高效的手写识别。
同时,膝上型计算机的用户又需要一种方便、高效的输入解决方案。因此,就产生一种需要,即使用显示直观、携带方便的手持式计算设备与处理能力强的膝上型或台式计算机共同完成手写输入,从而发挥各自的优势。
【发明内容】
本发明的目的正是要解决上述问题,提供设备、系统和方法来实现协同两个或多个不同属性的计算设备完成手写输入识别,同时不添加或改动用户已有的计算设备。在进行协同输入时,两设备间建立连接,并且输入笔划采集和识别分别在不同设备上完成。
本发明提供了一个系统用于协同手写输入,该系统包括一个输入手持计算设备和一个识别计算机。其中输入手持计算设备包括:第一协议通讯装置,用于在标准通讯协议的基础上,建立用于手写输入通讯连接;笔迹捕获装置,用于收集并保存用户输入的笔迹信息;笔迹显示装置,用于回显被捕获的笔迹;笔迹信息发送装置,用于将捕获的笔迹信息通过所述第一协议通讯装置发送给识别计算机。识别计算机包括:第二协议通讯装置,用于在标准通讯协议的基础上,建立用于手写输入通讯连接;笔迹信息接收装置,用于接收所述输入手持计算设备发送来的笔迹信息;手写识别器,用于对接收的笔迹信息进行识别;结果输出装置,用于将识别结果输出。
本发明还提供了一种方法用于在信息处理系统中实现协同手写输入,该方法包括如下步骤:识别计算机和输入手持计算设备建立通讯连接;在输入计算设备上捕获、保存和回显用户的输入笔迹;将捕获的笔迹信息传送到识别计算机;在识别计算机上对笔迹信息进行识别;将识别结果输出。
【附图说明】
图1是根据本发明的一个实施例实现协同手写输入的系统的示意图;
图2是根据本发明的一个实施例用于手写识别的计算机10的示意方框图;
图3是根据本发明的一个实施例用于手写输入的手持计算设备20的示意方框图;
图4是根据本发明的一个实施例实现协同手写输入识别的方法的流程图;
图5是根据本发明的另一个实施例实现协同手写输入识别的方法的流程图;
图6是根据本发明的另一个实施例实现协同手写输入识别的方法的流程图;
图7是根据本发明的一个实施例多个手写输入的手持计算设备20与一个手写识别的计算机10协同完成手写输入识别的示意图。
【具体实施方式】
图1是根据本发明的一个实施例实现协同手写输入的系统的示意图。基于笔式输入的手持计算设备20和膝上型计算机10协同完成手写输入。其中,手持计算设备20用于笔迹采集和显示以及候选字选择,而计算机10用于手写识别,它们之间通过红外通讯连接交换数据。
图2是根据本发明的一个实施例用于手写识别的计算机10的示意方框图。识别计算机10可以是一台普通的PC、膝上型计算机或者其他的具有比手持计算设备更强的计算能力和存储器容量的计算机,从而可以在最大程度上发挥手写识别核心的潜力。该计算机10可以是台式计算机、膝上型计算机、服务器或机顶盒等,其应具有(未在图中示出)CPU、总线、存储器、永久存储设备(如硬盘、软盘或光盘等)、显示适配器、显示器、键盘等计算机必备的部件,以及以下各种通讯接口中的一种或多种,如串口、并口、USB口、红外(IR)接口、无线UDP或网络接口卡等。
如图2所示,识别计算机10上运行着一个用户应用100,用户希望向其输入文字。这个用户应用可以是任何应用,例如字处理应用、电子表格应用、电子邮件应用等等,或者甚至是软件开发应用。协议通讯装置109是用于与输入手持设备中的协议通讯装置209对应,在该计算机10与手写输入的手持设备20之间建立通讯链路的装置。各种用于计算机的通讯协议及设备是众所周知的,例如串口、USB、红外线接口、无线UDP、各种网络接口卡、SMS和IRDA等。协议通讯装置109在以上这些标准的通讯协议的基础上,建立用于手写输入识别的通讯链路。协议通讯装置109是一个协议抽象层,对标准通讯协议进行抽象和封装,将协议间的差异进行屏蔽,为上层提供统一的服务接口。对于本发明的其他组件,只需与该协议通讯装置109接口而不必了解底层具体的通讯协议。这样增加了本发明的可扩展性,对于新的具体通讯协议的支持可以在该协议通讯装置中增加。
识别计算机10还包括笔迹信息接收装置106,用于通过所述协议通讯装置从手持计算设备20接收输入的笔迹信息并将该笔迹信息传递给手写识别器102。手写识别器102可以是根据任何一种手写识别算法的手写识别引擎,如前面所述美国专利5,751,851号公开的手写识别方法或其他的手写识别引擎(如IBMJapaneseHandwriting Recognition Engine)。手写识别器102在对笔迹信息进行识别后,将识别结果传递给识别结果发送装置107。该识别结果是一组候选字符以及相似性参数,或者是按照相似性(可能性)排序的一组候选字符。识别结果发送装置107再通过协议通讯装置109将识别结果发送给手持计算设备20。
图2中的选择信息接收装置108,用于通过协议通讯装置从手持计算设备20接收用户对于候选字符的选择信息,并将该选择信息传递给结果输出装置103。结果输出装置103将用户选定的识别字符输入到用户应用100中。
另外,如图2所示,识别计算机10还可以包括笔迹显示装置101,与笔迹信息接收装置106相连,用于将接收的笔迹信息显示在该计算机的屏幕上的适当位置以供用户比对。存储器装置110,用于本发明其它组件保存临时信息。属性接收装置105,用于通过协议通讯装置109从手持设备20接收用户设置的属性信息,并将该信息传递给属性设置装置104。属性设置装置104,可以从本地或从属性接收装置105接收用户的属性设置信息,并根据该属性设置信息控制本发明的其它组件的行为,如手写识别器102的属性(语种、字符集、准确性和速度的侧重等),笔迹显示装置101的属性(笔划的粗细、颜色等),协议通讯装置109的属性(具体传输协议、速率、较验方式等),以及其他属性设置如识别的时间延迟等。用户管理器111,与协议通讯装置109相连,用于验证用户标识(ID),对于不同用户启动相应的用户实例。
图3是根据本发明的一个实施例用于手写输入的手持计算设备20的示意方框图。该手持计算设备可以是掌上电脑(如IBM的WorkPad),个人数字助理(PDA),带计算能力的移动电话等基于笔式输入的计算设备。该手持计算设备应具有(未在图中示出)处理器、存储器、显示器(如LCD)、压感触摸面板或其他形式的输入板(input tablet)以及触笔等。其中显示器与输入板可以集成在一起,一般被称为触摸屏或输入屏。同时各种通讯接口在现有的手持计算设备中也已被广泛应用,如串口、并口、USB口、红外(IR)接口、无线UDP或网络接口卡等。本发明用于手写输入的手持计算设备20包括以上的一种或多种通讯接口。
如图3所示,协议通讯装置209是用于与识别计算机10中的协议通讯装置对应,在该手持设备20与识别计算机10之间建立通讯链路的装置。与前面描述的在识别计算机10中的协议通讯装置109对应,协议通讯装置209在各种通讯协议,例如串口、USB、红外线接口、无线UDP、各种网络接口卡、SMS和IRDA等的基础上建立用于手写输入识别的到识别计算机10的通讯链路。
图3中,笔迹捕获装置200用于将用户的操作笔在输入板上的运动信息,即笔迹信息,以某种方式记录下来并保存在适当的数据结构中。这种记录方式可以是矢量方式或光栅方式等,现有技术中普遍使用,并且以矢量方式记录的笔迹信息可以转换成光栅方式。笔迹显示装置208,将由笔迹捕获装置200所捕获的笔迹回显出来提供给用户。笔迹信息发送装置201,将笔迹捕获装置200所捕获的笔迹信息,通过协议通讯装置209,发送给上述识别计算机10中的笔迹信息接收装置106。
识别结果接收装置203,通过协议通讯装置209,从识别计算机10中的识别结果发送装置107接收识别结果。并将识别结果传递给候选字显示/选择装置202。候选字显示/选择装置202将识别出的字符和候选字符通过屏幕显示给用户,并接收用户对于这些候选字的选择,将用户的选择信息传递给选择信息发送装置204。该选择信息发送装置204,通过协议通讯装置209,将该用户选择信息发送给识别计算机10中的选择信息接收装置108。
另外,如图3所示的用于手写输入的手持计算设备20还包括属性设置装置205,用于设置本发明手持计算设备20的属性和识别计算机10端的属性,并且对于识别计算机10端的属性信息,该属性设置装置205可以传递给属性发送装置206。属性发送装置206则通过协议通讯装置209,将识别计算机10端的属性信息发送给识别计算机10中的属性接收装置105。客户用户管理器211,与协议通讯装置209相连,用于保存和向识别计算机发送一个该设备唯一的用户标识(ID)。
图4是根据本发明的一个实施例实现协同手写输入识别的方法的流程图。如图所示,从步骤300开始,在步骤310,识别计算机10和输入手持计算设备20建立通讯连接。该通讯连接是通过前面所述在识别计算机10中的协议通讯装置109和输入手持计算设备20中的协议通讯装置209建立的。在该步骤中,计算机10和手持设备20还相应完成一些初始化工作及相互的识别确认。步骤320,在输入计算设备上捕获、保存和回显用户输入的笔迹信息。笔迹信息可以是各种方式的,如矢量方式的或光栅方式的等。目前,矢量的笔迹信息被广泛使用,因为它不仅能记录笔迹的形状还能记录笔顺,在手写识别时笔顺也是一个很重要的依据。本发明中捕获的笔迹信息既可以是光栅形式的也可以是矢量形式的。
在步骤330,在输入计算设备20上捕获的笔迹信息,被步骤310中建立的通讯连接,传送到识别计算机10。在步骤340,在识别计算机上对传送过来的笔迹信息进行识别。该步骤是通过识别计算机上的手写识别器102完成的。识别结果是一组候选字符以及相似性(可能性)参数,或者是按照相似性排序的一组候选字符。在步骤350,识别结果被从识别计算机10传送到输入计算设备20上。
接着在步骤360,在输入计算设备上显示识别结果中的其他候选字符,供用户选择;步骤370,接收用户的选择。然后步骤380,将用户的选择信息从输入计算设备20传送到识别计算机10。步骤390,在识别计算机上,将用户选择的字符输出到指定应用。在步骤395,判断用户是否继续手写输入,如果是,则返回到步骤320继续下一个字符的输入,否则最后在步骤400结束。
在本发明的一个实施例中,在将捕获的笔迹信息从输入计算设备20传送给识别计算机10后,可以将其还原成笔迹图像显示出来。
在本发明的另一个实施例中,笔迹捕获和笔迹信息的传送是同步进行的。这样,如果加上在前一个实施例的识别计算机回显笔迹,就会得到手写笔迹同时在输入计算设备20和识别计算机10同步显示的效果。
根据本发明的另一个实施例,如图5所示,在步骤310之后,在步骤320,在输入计算设备上捕获、保存和回显用户输入的笔迹信息,步骤330则实时地将捕获的笔迹信息传送给识别计算机10,但是计算机10并不对传送过来的笔迹信息进行识别。如果在这个过程中用户停止笔划动作超过一个预定的时间,如0.5秒,则激活手写识别器102进行识别。
根据本发明的另一个实施例,如图6所示,在步骤340,在识别计算机上对传送过来的笔迹信息进行识别之后,步骤341,将识别结果中最高相似性的字符输出到指定应用。这里所谓最高相似性是指,手写识别器102认为最有可能是用户希望的字符。然后,步骤350,识别结果被从识别计算机10传送到输入计算设备20上;步骤360,在输入计算设备上显示识别结果中的其他候选字符,供用户选择。这时,用户可以选择其他候选字符也可以继续下一个输入。如果用户接着输入则又回到步骤320。如果用户选择其他候选字,步骤370,接收用户的选择;步骤380,将用户的选择信息从输入计算设备20传送到识别计算机10。然后,步骤391,在识别计算机上将步骤341中输出的字符替换为用户选择的字符,再继续到步骤395。这样,对于手写识别器102识别正确的字符,用户就可以直接继续输入而不必选择或确定了。
根据本发明的一个实施例,一个识别计算机10可以同时与多个输入计算设备相连接组成本发明的协同手写输入系统,如图7所示,而且,与每个输入计算设备可以采用不同的协议建立连接,这已经可以从前面对于本发明中的协议通讯装置109和209的描述中理解。在该实施例中,识别计算机10同时与多个手持计算设备20建立连接,协同手写输入。该实施例中,识别计算机的协议通讯装置109中还包括一个用户管理器111,位于其最顶部。同时,输入计算设备20中的协议通讯装置209中也有一个客户用户管理器211。
在建立连接时,输入计算设备20中的客户用户管理器211首先向识别计算机10发送该设备的用户ID,识别计算机中的用户管理器111接收该用户ID并进行验证,通过验证后,用户管理器111启动一个对应该输入计算设备20的用户实例。如图2所示,一个用户实例包括除用户管理器111和协议通讯装置109以外的,其他所有针对该用户的识别计算机10一方的组件。并且,用户管理器111最终与该用户实例中的各组件完成交互。
另外,在本发明的一个实施例中还包括在输入计算设备20上属性设置的步骤,其中用户可以设定输入计算设备20和识别计算机10关于手写输入的属性。并且还包括将属性信息从输入计算设备20传送到识别计算机10的步骤。这样,用户就可以通过输入计算设备20定制他所需要的输入喜好。
本发明虽然是通过一些具体的实施例来描述的,但是本领域技术人员可以认识到,在不脱离本发明的精神和原则的情况下可以有很多种变化。因此,这些实施例不应作为对本发明的限制,本发明的范围仅由权利要求书限定。