用于消除笔画输入歧义的系统和方法

文档序号:6606062阅读:168来源:国知局
专利名称:用于消除笔画输入歧义的系统和方法
技术领域
本发明总体涉及笔画输入处理,更具体地,涉及用于诸如在包括移动通信设备在 内的电子设备上消除笔画输入歧义的系统和方法。
背景技术
在某些情况下,诸如当在电子设备上使用中文输入文本时,文本输入可以基于构 成字符的独立笔画的输入,而不是整个字符或符号的输入。这样的笔画输入通常较长而且 复杂,并且可能要求用户按照给定顺序录入笔画,来产生期望的字符。通常,文本输入由文本预测算法辅助,文本预测算法向用户提供包含基于输入预 测的候选字符在内的候选列表,用户可以从该候选列表中选择期望的字符。在笔画输入过 程中,用户可能未能输入笔画,或者输入的笔画顺序错误。作为结果,用户将无法在利用输 入序列产生的候选列表中找到期望的字符。这通常会导致用户必须重新输入可能很长的整 个笔画序列。在某些情况下,即使在反复重新输入笔画序列之后,用户也无法从候选列表中 找到期望的字符,这可能是由于用户尚未恰当地校正输入序列。这个过程将是很耗时,而且 很令人沮丧的。有必要提供一种解决方案来解决上述挑战中的至少一部分。

发明内容
在某些实施例中,提供了一种用于消除笔画输入歧义的电子设备,所述电子设备 包括微处理器,用于控制设备的操作;输入设备,与微处理器耦合,用于接受笔画输入;显 示设备,用于显示图形用户界面,显示设备与微处理器耦合用于向用户传达输出;以及存储 器,与微处理器耦合;所述设备包括驻留在存储器中的、并由微处理器执行的笔画消歧模 块,所述设备被配置为在笔画消歧模块处接收表示笔画输入序列的信号;对笔画输入序 列应用一种或多种笔画消歧规则,以生成更新后的输入序列;以及传输表示更新后的输入 序列的信号。在某些方面中,提供了一种用于消除笔画输入歧义的方法,包括接收表示笔画输 入序列的信号;对笔画输入序列应用一种或多种笔画消歧规则,以生成更新后的输入序列; 以及传输表示更新后的输入序列的信号。在某些方面中,提供了一种计算机程序产品,在其上确实记录有用于消除笔画输 入歧义的计算机可执行指令,所述计算机程序产品包括用于接收表示笔画输入序列的信 号的代码;用于对笔画输入序列应用一种或多种笔画消歧规则,以产生更新后的输入序列 的代码;以及用于传输表示更新后的输入序列的信号的代码。如上所述的设备、方法以及计算机程序产品,还可以在文本预测模块处,对更新后 的输入序列应用文本预测算法,以预测一个或多个候选;以及传输表示要在候选列表中提 供以进行选择的一个或多个候选的信号。


下面将参考附图,附图以示例方式示出了本公开的实施例,附图中图1以框图的形式示出了根据示例实施例的、适合用于消除笔画输入歧义的电子 设备;图2以框图的形式示出了图1设备的存储器的内容;图3示出了笔画输入的示例字符;图4A和4B分别示出了根据示例实施例的、用于消除笔画输入歧义的示例图形用 户界面;图5A和5B分别示出了根据另一示例实施例的、用于消除笔画输入歧义的图形用 户界面;图6A是示意了根据示例实施例的、用于消除笔画输入歧义的方法的流程图;图6B是示意了根据示例实施例的、并入了图6A的方法的、在文本预测中消除笔画 输入歧义的方法的流程图;以及图7是示意了适于图6B的方法的文本预测的示例方法的流程图。需要注意的是,在附图中,相同的特征使用相同的附图标记标识。
具体实施例方式首先参考图1,图1示出了示意根据本公开的示例实施例的、适合用于执行消除笔 画输入歧义的电子设备102的示例实施例的框图。可以理解的是,在本公开中对电子设备 的引用,还可以指无线设备、无线通信设备或移动通信设备。虽然本公开描述电子通信设备 以及无线设备,但本公开的教导还适用于接受笔画输入的任何设备,而不限于无线设备或 通信设备。设备102可以通过无线通信网络104进行通信。无线网络104可以包括天线、 基站、以及用以支持设备102和连接至无线网络104的其它设备之间的通信的支持无线电 设备。无线网络104可以耦合至无线网络网关以及广域网。在示例实施例中,设备102可以是至少具有语音和数据通信能力双向移动通信设 备,所述语音和数据通信能力包括与其他计算系统进行通信的能力。在示例实施例中,设备 102是翻盖式手持设备。根据设备102提供的功能,设备102可以被称为数据消息设备、双 向寻呼机、具有数据消息能力的蜂窝电话、无线互联网设备、(具有或不具有电话能力的) 数据通信设备、或者触摸屏设备。设备102可以与在其地理覆盖区域内的多个固定收发信 台中的任意一个进行通信。设备102并入了通信子系统112,通信子系统112可以包括接收机114、发射机 116、以及相关组件,如一个或多个天线单元118和120、本地振荡器(LOs) 122,以及诸如数 字信号处理器(DSP) 124等处理模块。在示例是实施例中,天线单元118和120可以嵌入或 内置于设备102中。对本领域的技术人员显而易见的是,通信子系统112的具体设计可能 依赖于设备102所要工作于其中的无线网络104。在必要的网络注册或激活过程完成之后,设备102可以通过无线网络104发送和 接收通信信号。经天线118通过无线网络104接收的信号可以被输入到接收机114中,接 收机114可以执行诸如信号放大、下变频、滤波、信道选择等、以及模数转换(A/D)等常见接 收机功能。接收信号的A/D转换可以允许在DSP 124中执行诸如解调和译码等更加复杂的通信功能。采用类似的方式,可以例如用DSP 124对待发送信号进行包括调制和编码在内 的处理。可以将这些经过处理的信号输入至发射机116,以进行数模(D/A)转换、上变频、滤 波、放大、以及利用天线120发送至无线网络104。DSP 124不仅可以处理通信信号,还可以 为接收机和发射机提供控制。例如,可以利用实现于DSP 124中的自动增益控制算法,自适 应地控制应用于接收机114和发射机116中的通信信号上的增益。网络接入可以通过存储模块(如存储模块130)与设备102的订户或用户相关联, 存储模块可以是用于GSM网络的订户身份模块(SIM)卡或用于通用移动通信系统(UMTS) 的通用订户身份模块(USIM)卡。该SIM卡可以插入或者连接至设备102的接口 132,从而与 无线网络104协同工作。可选地,设备102可以具有集成身份模块,以用于码分多址(CDMA) 系统。设备102还包括用于接收一个或多个可再充电电池138的电池接口 136。电池138 向设备102中的至少某些电路提供电源,并且电池接口 136为电池138提供机械和电连接。 电池接口 136还可以耦合至调压器(未示出),该调压器可以向设备102的电路提供电源 V+。设备102包括可以控制设备102全部操作的微处理器140。可以通过通信子系统 112执行包括至少数据和语音通信在内的通信功能。微处理器140还可以与附加设备子系 统交互,附加设备子系统是诸如显示器142、闪存144、随机访问存储器(RAM) 146、只读存储 器(ROM) 148、辅助输入/输出(I/O)子系统150、诸如串行端口 152等数据端口、键盘或键 区154、用于与例如一组耳机或听筒相连接的扬声器或音频端口 156、麦克风158、可点击指 轮或指轮160、短程通信子系统162、以及总体标识为164的任何其它设备子系统。图1所 示的某些设备子系统执行与通信相关的功能,而其它子系统可以提供“驻留”或在机功能。 值得注意的是,例如,某些子系统(如键区154、显示器142、以及可点击指轮160)既可用于 与通信相关的功能,如显示通知或录入通过无线网络104传输的文本消息,又可用于设备 驻留功能,如闹钟、计算器或任务列表。微处理器140使用的操作系统软件可以存储在诸如 闪存144等永久存储器中,可选地,永久存储器可以是ROM 148或类似的存储单元。本领域 的技术人员可以理解的是,操作系统、特定设备应用或其部分可以临时加载到诸如RAM146 等易失性存储器中。除了其操作系统功能外,微处理器140还支持在设备102上执行软件应用。通常 可以在生产过程中或之后,在设备102上安装包括数据和语音通信应用在内的、控制基本 设备操作的一组预定应用。设备102可以包含个人信息管理器(PIM)应用,PIM具有对与 用户相关的数据项目(例如,但不局限于,即时消息、电子邮件、日历事件、语音邮件、约会、 以及任务项)进行组织和管理的功能。设备102上还可以使用一个或多个存储器(如闪存 144、RAM 146、ROM 148、存储器模块130、或其它类型的存储器设备、或其它设备子系统164 所示的诸如安全数字(SD)卡或迷你SD卡等的闪速存储卡),以便于存储信息。PIM和/或媒体应用具有通过无线网络104或至计算机系统的链路来发送和接收 数据项目的功能。至计算机系统的的链路可以经由串行端口 152或短距离通信子系统162。 在示例实施例中,通过无线网络104,可以将PIM和/或媒体数据项目与所存储的和/或与 主机系统相关的移动设备用户的相应数据项目进行无缝合并、同步、以及更新,从而在设备 102上创建关于这些项目的镜像或部分镜像主机。如果主机系统是设备用户的办公计算机系统,那么这样做可能特别有用。用户还可以利用无线网络104、辅助I/O子系统150、串行 端口 152、短距离通信子系统162或其他合适的子系统164,在移动设备102上加载附加应 用,并将附加应用安装在RAM146或诸如ROM 148等非易失性存储器中,从而由微处理器140 执行。应用安装的这种灵活性增加了移动设备102的功能,并且可以提供增强型在机功能、 通信相关功能或同时提供两种功能。例如,安全通信应用可以支持使用设备102实现电子 商务功能和其他此类金融交易。在数据通信模式下,通信子系统112将对诸如文本消息、电子邮件消息、要传输的 媒体文件、或所下载的网页等接收信号进行处理,并输入至微处理器140。接着,微处理器 140可以对接收到的信号进行进一步处理,并将处理结果输出至显示器142或可选地输出 至辅助I/O子系统150。设备102的用户还可以比如将键区154和/或可点击指轮160同 主显示器142可能还有辅助I/O设备150结合使用,以对数据项(如电子邮件消息)进行 编辑。键区154可以是全字母数字键区或电话类型的键区。在某些设备102是触摸屏设备 的示例实施例中,可以用具有虚拟键的虚拟键区来取代或增强键区154,并将其在触摸屏上 显示。经编辑的项目可以通过通信子系统112经由无线网络104或经由短距离通信子系统 162来传输。对于语音通信,除了接收信号输出至扬声器或音频端口 156,以及可以用诸如麦克 风158等换能器产生发送信号以外,设备102的全部操作基本是类似的。还可以在设备102 上实现可选语音或音频I/O子系统,如语音消息记录子系统。虽然主要使用扬声器或音频 端口 156输出语音或音频信号,然而还可以使用显示器142提供对主叫方身份、通话持续时 间或其他语音呼叫有关信息的指示。还可以使用立体声耳机或听筒取代扬声器156。串行端口 152通常实现于个人数字助理(PDA)类型的通信设备中,对于此类通信 设备而言,与用户计算机进行同步是期望但可选的成分。串行端口 152可以使用户能够通 过外部设备或软件应用设置偏好,并通过向设备102提供信息或软件下载来扩展设备102 的功能,而无需通过无线网络104。例如,可选下载路径可以用于将软件或数据文件通过直 接、可靠和可信的连接加载到设备102上。短距离通信子系统162可以是附加可选组件,在设备102和不同的系统或设备 (不必为相似的设备)之间提供通信。例如,子系统162可以包括红外设备以及相关的电路 和组件、或无线总线协议兼容通信机制,如蓝牙""通信模块(蓝牙""是Bluetooth SIG公司 的注册商标),用于提供与类似支持系统和设备的通信。在另一示例实施例中,短距离通信 子系统162可以是遵循IEEE 802. 11标准(如802. lib,802. Ilg,802. Iln)的无线联网通 信子系统。接着参考图2,图2示出了示意设备102的存储器300的示例实施例的框图。存 储器300具有用于控制设备102的各种软件组成,并且还可以包括例如闪存144、RAM 146、 ROM 148、存储模块130和/或其它设备子系统164。根据示例实施例,设备102是多任务 移动通信设备,用于发送和接收数据项目(例如即时消息)、发起和接收语音呼叫、以及创 建事件或警报。为提供用户友好环境以控制设备102的操作,驻留在设备102上的操作系 统(OS) 302可以提供一组基本操作以支持多种应用,这些应用通常可通过诸如图形用户界 面(GUI) 304等用户界面来操作。在该示例实施例中,OS 320包括应用文本预测算法的文本预测模块308。在本公
6开中,术语“文本”可以指非基于字母的文本,例如中文字符或其它基于笔画字符的文本。文 本预测模块308用于基于期望文本的部分输入来预测候选文本。在文本是中文字符的情况 下,文本预测模块308可用于基于期望字符笔画序列的部分输入来预测候选字符。OS 302 还包括用于消除笔画输入歧义的笔画消歧模块310。在该示例中,笔画消歧模块310是文本 预测模块308的一部分。可选地,笔画消歧模块310还可以与文本预测模块308分开。OS 302还可以提供基本输入/输出系统特征,以从辅助I/O 150、键区154、可点击指轮160、以 及其他输入设备获得输入,并且便于通过显示器142向用户输出。典型地,⑶I 304是OS 302的组件。还可以包括用于管理通信、提供个人数字助理(PDA)或其它功能的一个或多个 的软件模块306。存储器300还可以包括电子邮件和日历客户端,所述客户端可以合并在例如具有 基于电子邮件的日历和调度功能的PIM应用之中。通常,PIM可以作为一种软件模块306来 进行安装。文本预测模块308以及笔画消歧模块310可以包括在软件模块306之中。因此, 设备102可以包括计算机可执行编程指令,用于指示设备102执行多种应用。编程指令可以 确实地包含在驻留在设备102的存储器300中的一个或多个软件模块306中。可选地,编 程指令可以确实地包含在其上确实记录有计算机可执行指令的计算机可读介质(如DVD、 CD、软盘或其它存储介质)中,该介质可用于将编程指令传输至设备102的存储器300。可 选地,编程指令可以嵌入在计算机可读、信号承载介质中,编程指令的供应商或提供商可以 将该信号承载介质上传至无线网络104,并且终端用户可以通过接口 112、150、152、162中 的一个或多个从例如无线网络104将该信号承载介质下载至设备102。用户可以通过⑶I 304与设备102及其软件模块306进行交互。⑶1304可由操 作系统302 (图2)控制,并且可以提供显示格式,以向用户提供信息,或者通过选择图形表 示(即图标),或使用诸如可点击指轮160或键区154等输入或定位设备从菜单中选择项 目,来使用户能够选择命令、执行应用程序、管理计算机文件、以及执行其它功能。通常,GUI 304可用于传递信息和从用户接收命令,并且包括多种GUI对象或控件,包括图标、工具条、 下拉菜单、弹出菜单、文本、对话框、按钮等。通过使用输入或定位设备来将指针或者光标定 位在对象上(例如,“点”在对象上),或者在对象上“点击”(例如,按下指轮160或键区154 的按钮,或者通过虚拟键盘进行选择等),用户可以与呈现在显示器142上⑶I 304进行交 互。这可以被称之为定位点击或选择操作。通常,当指针或光标选择或指向对象时,被突出 显示(例如,变暗),以指示该对象是可选择的。例如,在设备102使用触摸屏显示时,还可 以通过触摸来与⑶I 304进行交互。通常,基于⑶I的系统在显示器142上向用户呈现应用、状态、以及其它信息。例 如,⑶I 304可以提供窗口,该窗口可以是显示器142内示出的一块显示区域,可以是用户 可以在其中查看应用或文档的矩形区域。该窗口可以被打开、关闭、全屏显示、缩小为图标、 增加或缩减尺寸、或移动至显示器142的不同区域。还可以同时显示多个窗口。例如,在其 它窗口中显示窗口、与其它窗口重叠、或者在显示区域内平铺。微处理器140可以与一个或多个输入设备(例如,键区154、可点击指轮160)耦 合,以接收用户命令、选择或查询,并且可以与显示器142耦合,以显示这些命令或查询的 结果。例如,用户查询可以转换为指令的组合,以产生输出数据的一个或多个表格,这些表 格可以并入一个或多个显示页面,从而呈现给用户。在另一示例中,用户选择可以被转换为命令,所述命令用于在显示器142上显示选择的预览。微处理器140还可以与存储器300 華禹合。根据本公开的教导,对于笔画输入序列,使用一个或多个消歧规则来确定可能字 符。对于文本预测,可以考虑任何先前文本的上下文。对于某些字符,如中文字符、中间物 (例如,输入字符的已识别部分,如字根)都可以被用于指导消歧。笔画字母表表示符号的 有限集合。根据输入类型(例如,语言、输入系统),用于输入的不同笔画的数目可能改变, 例如从2到5。例如,用于输入中文字符的五笔字型(通常称五笔)输入法具有5个不同的 笔画以及可用于输入的可选通配符。其它笔画输入法,不管是用于中文还是其它基于笔画 的语言,可能具有不同的笔画以及不同的功能。使用一种或多种消歧规则,对笔画输入进行消歧确定无效的笔画输入,并且可以 进行适当的所建议的校正。例如,消歧规则基于一组笔画表示一个字符的原则,以及该字符 在较长单词中出现频率很高的原则。下面将说明一些用于消除笔画输入歧义的示例规则。 笔画消歧模块310采用这些规则。可能的笔画输入错误包括在输入序列中漏掉笔画、在输入序列中以不正确的顺 序录入笔画、录入错误的笔画。一种或多种消歧规则可以校正这类错误中的一个或多个。在笔画漏掉时,可以应用消歧规则将漏掉的笔画添加到现有输入序列中。在录入错误笔画时(例如,输入从右至左的笔画,而不是左上至右下的笔画),可 以应用基于笔画视觉相似性的消歧规则。在笔画输入顺序不正确时(例如,错误地从字符的左端开始录入笔画,而不是从 字符的上端开始录入笔画),可以应用消歧规则校正输入序列中笔画的顺序。在示例实施例中,对于任何给定输入序列,在应用文本预测算法之后,如果没有足 够候选字符或中间物(例如,没有找到有效候选),或者接收到提供更多候选的指令(例如, 响应于提供更多候选的选择),笔画消歧模块310应用诸如如上所述的消歧规则的一个或 多个,从而向文本预测模块308提供更新的或校正的笔画输入顺序,以进行文本预测,这可 以产生扩大的或更新的候选列表。文本预测模块308可以附加地考虑之前文本的上下文, 来确定候选为期望文本的概率。可以在笔画输入期间的任何时刻(例如响应于输入或自动 地),激活使用一种或多种消歧规则和/或上下文,以进行文本预测。下面将对消除笔画输入歧义的示例进行说明。该示例描述了一组示例消歧规则, 并且可以由文本预测模块308和笔画消歧模块310执行。在该示例中,可以假定至少笔画 输入序列中的初始笔画时正确的。在该示例中,为了录入中文字符使用五笔输入法进行笔 画输入。为了便于参考,下面描述的示例中提及的字符⑴、(2)、(3)和(4)如图3所示。消歧规则1-“错误笔画”在输入序列中可以包括不正确的笔画(例如最多两个不 正确的笔画),并且应用消歧规则校正这些不正确的笔画。现在将具体参考五笔笔画输入法,对用于实施“错误笔画”消歧规则的示例算法进 行描述。在该示例中,所有有效字符的笔画序列存储在笔画序列数据库中,例如存储在笔画 消歧模块310中。对于五笔笔画输入法,每个笔画输入与从“1”到“5”的一个整数相关,在 数据库中可以根据整数值对笔画序列进行排序。当在笔画消歧模块310处接收到笔画输入 序列时,搜索笔画序列数据库,查找具有相同初始笔画以及相同笔画数的所有有效笔画序列。例如,如果笔画输入序列是“345323545”,笔画消歧模块310搜索笔画序列数据库,查 找以与3相关的笔画开始并且具有9个笔画的全部有效笔画序列。逐笔画地将搜索结果与 输入序列进行比较。如果来自数据库的笔画序列与输入序列只有一个或两个笔画不同,那 么将来自数据库的笔画序列被认为是用于消歧的一种可能序列,并且对应于该笔画序列的 所有字符被认为是输入序列的候选。例如,对于输入序列“345323545”,一条搜索结果可能 是“343313545”,该结果与输入序列只有第三位和第五位不同。因此,“343313545”被认为 是用于消除歧义的可能笔画序列,并且具有该笔画序列的所有字符都被提供为候选。虽然 该示例描述了校正仅仅一个或两个不正确的笔画输入,但是“错误笔画”消歧规则使用类似 上述的算法或不同算法还可以校正三个或更多个不正确笔画。现在参考图4A和4B,示出了示例图形用户界面500,说明了“错误笔画”规则的应 用。图形用户界面500包括笔画输入部分502、候选部分504、以及笔画序列部分506。笔画 输入部分502提供一个或多个笔画输入键508,在设备102具有触摸屏显示器的示例中,键 508可以是虚拟键。所示示例还可适于使用五笔输入法的笔画输入,在五笔输入法中,具有 五个不同笔画输入和一个通配符输入。笔画输入部分502还包括消歧或“模糊”键510,在 该示例中由单词(3)指示。例如通过用户输入选择“模糊”键,可以指示文本预测模块308 使用一种或多种消歧规则。笔画输入部分502可以包括其它键,包括诸如“大写”键等转义 键或者与文本输入不相关的其它键。候选部分504显示文本预测模块308找到的候选的列 表,并且可以选择所示的候选来添加至文本编辑。可以根据与成为期望候选的预测概率相 对应的顺序,来提供候选。笔画序列部分506显示当前笔画输入序列。在所示示例中,使用五笔输入法,中文字符(1)的正确笔画是“323121”。录入的 输入序列为“321121”,其中第三个笔画输入为错误输入。(例如,用户)选择消歧或“模糊” 键310将触发对该笔画序列应用消歧规则。应用“错误笔画”消歧规则校正笔画错误,允许 文本预测模块308预测候选(1)。图4B示出了应用一种或多种消歧规则之后(在该示例中,是在应用“错误笔画”消 歧规则之后)的图形用户界面500。候选部分504示出了在应用一种或多种消歧规则之后 更新的候选列表,此时候选列表包括期望字符(1)。当使用消歧规则时,对于任何被认为是 错误的笔画输入(例如,不符合所选字符或中间物的任何已知输入序列),可以通过以红色 突出显示错误的笔画输入,来向用户标记。例如,在该示例中,在应用笔画消歧准则之后,例 如通过将笔画或笔画序列呈现为红色,来突出显示,从而指示对笔画或笔画序列应用了一 种或多种消歧规则。这种突出显示还可以指示对选定的候选,突出显示的笔画或笔画序列 是错误的。如果用户在应用一种或多种消歧规则之前选择了基于笔画输入生成的候选(即 校正前的笔画输入),那么可以移除该突出显示。消歧规则2- “交换”交换即将笔画输入序列中的一个或多个笔画打乱顺序,通过 使用“交换”消歧规则对其进行校正。例如,如果字符的正确五笔笔画输入是“25114512”, 用户可能输入“25145112”,该输入错误地将第一个“1”输入交换到第“6”个位置。在一示 例中,中文字符(2)的五笔是“1324”。用户输入“1234”,把“2”和“3”进行了交换。该消 歧规则校正该错误,并预测了字符(2)。下面将具体参考五笔笔画输入法,对实施“交换”消歧规则的示例算法进行描述。 通常,该算法可以仅仅校正一次错误交换。如在针对“错误笔画”消歧规则的上述示例中一样,在该示例中,所有有效字符的笔画序列存储在笔画序列数据库中,例如,存储在笔画消 歧模块310中。对于五笔笔画输入法,每个笔画输入与一个整数相关,在数据库中可以根据 整数值对笔画序列进行排序。当在笔画消歧模块310处接收到笔画输入序列时,搜索笔画 序列数据库,查找具有相同初始笔画以及相同笔画数的所有有效笔画顺序。例如,如果笔 画输入序列是“25145112”,笔画消歧模块310搜索笔画顺序数据库,查找以与2相关的笔 画开始并且具有8个笔画的全部有效笔画序列。逐笔画地将搜索结果与输入序列进行比 较。如果来自数据库的笔画序列与输入序列只有一次交换不同(即,在序列中,两个笔画 的位置交换了),那么将数据库中的笔画序列认为是消除歧义的一种可能序列,并且对应于 该笔画序列的所有字符被认为是输入序列的候选。例如,对于输入序列“25145112”,一条 搜索结果可能是“25141512”,与输入序列的差异在于第五个和第六个输入交换了。因此, “25141512”被认为是用于消除歧义的可能笔画序列,并且具有该笔画序列的所有字符都被 提供为候选。响应于输入应用一种或多种消歧规则,可以允许扩大或更新候选列表,以包括期 望字符,即使在应用任何文本消除准则之前文本预测模块308已为输入序列预测了一个或 多个有效候选。在该情况下,更新后的候选列表可以排除先前显示的候选,以避免候选列表 混乱。为了避免不必要的候选使候选列表混乱,可以不总是应用消歧规则。即使没有接收到任何表示要进行消除歧义的输入,文本预测模块308也可以指示 笔画消歧模块310自动应用一种或多种消歧规则。例如,在对于给定笔画输入序列没有找 到候选的情况下,可以自动应用消歧规则。在输入序列中的第一个笔画导致未找到候选时, 可以自动应用消歧规则。可以将第一个错误的笔画,以及所有后续笔画,突出显示(如以红 色显示),从而指示应用消歧规则来校正错误的笔画输入。图5A和5B示出了图形用户界面600的示例,示意了自动应用一种或多种消歧规 则。在五笔输入法中,字符(4)的正确笔画输入序列为“45433444”,如图5A所示。在图5B 中,用户输入“45443444”。文本预测模块308确定,起始于第五个笔画的笔画序列没有有 效匹配候选字符。文本预测模块308自动向笔画消歧模块310发送信号,以应用消歧规则。 在应用消歧规则之后,从第五个笔画之后的所有笔画被突出显示,例如,被显示为红色,并 且从第五个笔画起,向输入自动应用消歧规则。即使没有接收到要应用任意消歧规则的任 何输入,但是这将导致期望字符(4)显示在候选部分504的候选列表中,如图所示。虽然图 示出了完整的输入序列,但是通常对导致文本预测模块308预测出小于最小所需数目的候 选(例如,小于1)的第一个输入自动应用一种或多种消歧规则。通常,对任何后续输入的 笔画继续应用消歧规则。虽然讨论了某些消歧规则,但是它们仅作为示例。还可以应用其它消歧规则。例 如,另一消歧规则可以是校正笔画输入序列中漏掉的笔画。实施该准则的算法可以与上面 所述的类似,即,通过搜索有效笔画顺序序列的数据库并将结果与输入序列进行比较。不必 要应用所有讨论的准则。通常,在笔画消歧模块310中预置了一种或多种消歧规则,并且消 除笔画输入歧义涉及应用在笔画消歧模块310中预置的所有消歧规则。在某些示例实施例 中,消歧规则仅校正与正确输入看上去类似的错误(即不正确的笔画输入)。在某些示例中,如针对于输入中文字符,某些字符可以包含中间物(例如,字符的 显著部分,也称为字根)。虽然在示出的输入完整字符的示例中对消歧规则进行了描述,但是还可以对中间物的输入应用消歧规则,并且可以使用文本预测来预测候选中间物。通过 将预测候选缩小为包含所选中间物在内的候选,对所预测的中间物的选择可以指导完整字 符的文本预测。在文本预测算法中,还可以使用先前输入的文本作为上下文来帮助确定候选字符 或中间物的可能的适配性。例如,在某个单词由两个或多个字符组成时,显示该单词的第一 个字符可以导致该单词的第二个字符具有更高或更低的概率成为期望字符。在示例实施例 中,构成有效单词的字符组的数据库存储在笔画消歧模块310中,并且搜索该数据库以在 一个或多个先前字符的上下文下确定候选字符的概率。当向用户提供候选时,按照概率将 候选降序排列,从而成为期望字符概率较大的候选字符被放置在被提供用于选择的候选列 表中较高的位置。如果已知某个特定字符不会跟在给定先前字符之后,那么可以将该特定 字符从候选列表中删除或者将其排在候选列表中较低位置。现在参考图6A,示出了用于消除笔画输入歧义的示例方法750。在某些示例中,假 定笔画序列中的第一个笔画输入是正确的,并且方法750仅仅用于笔画序列中后续的笔画 输入。在752,接收到表示输入序列的信号。该信号可以是在笔画消歧模块310处接收到 的。在某些示例中,笔画消歧仅仅可以应用于具有两个或更多笔画的输入序列。在754,对输入序列应用一种或多种消歧规则。例如,可以应用如上所述的一种或 多种消歧规则。在消歧规则多于一种时,以按照固定或者预置的顺序应用消歧规则。对于 输入序列,可以将一种或多种消歧规则应用多次。在756,在应用一种或多种消歧规则之后,传输更新后的或校正后的输入序列。例 如,可以将更新后的输入序列,从笔画消歧模块310传输至文本预测模块308。现在参考图6B,示出了在文本预测中消除歧义的示例方法700。方法700示意了 如何将方法750并入文本预测的示例。在702,在文本预测模块308处接收到表示笔画输入的信号。例如,可以从OS 302 接收该信号。该笔画输入可以是较长的笔画输入序列的一部分。在704,文本预测模块308确定是否应用消歧规则(例如,如果对输入顺序中之前 的笔画应用了一种或多种消歧规则,那么可以继续对输入序列中的所有后续笔画应用消歧 规则)。例如,这可以通过检查标记来实现,所述标记可以存储在笔画消歧模块310中。如 果接收到的笔画输入是输入序列中的第一个笔画,例如在假设第一个输入笔画时正确的情 况下,即使存在指示应该应用消歧规则的指示符,也可以不应用消歧规则。通常,消歧规则 并不总是应用于所有输入,并且可以仅仅响应于接收到表示需要这么做的指令时(例如, 用户选择了消除歧义或“模糊”键510),或者响应于应用文本预测算法后的自动触发(例 如,预测出小于最小所需数目的候选)时才应用消歧规则,如下所述。在706,如果应当应用消歧规则,对输入序列应用消歧规则。这可以按照方法750 中所述的来执行。笔画消歧模块310可以应用一种或多种消歧规则。在笔画消歧模块310 处,可以从文本预测模块308接收输入序列。文本预测模块308可以向笔画消歧模块310发 送信号,请求对笔画消除歧义。文本预测模块308还可以发送突出显示指令,或以其他方式 标记应用了消歧规则的笔画。笔画消歧涉及针对一种或多种如上所述的消歧规则来检查输 入序列。在应用一种或多种消歧规则时,笔画消歧模块310可以按照固定或预置顺序应用消歧规则。从而找到一个或多个校正后的或更新后的输入序列。在对笔画输入序列应用了 一种或多种消歧规则后,可以将校正后的或更新后的输入序列传输至文本预测模块308以 执行文本预测。在708,对更新后的笔画输入序列应用文本预测算法。例如,这可以由文本预测模 块308使用任何适合的文本预测算法来执行。例如,文本预测算法可以考虑任何先前的文 本的上下文。在710,将表示找到的任何候选的信号,例如从文本预测模块308发送至OS 302, 以在显示器142上显示。从而,可以提供一个或多个候选以供选择。方法700从而可以结
束ο返回704,如果没有任何要应用消歧规则的指示或指令,则在712对输入序列应用 文本预测算法,而无需应用任何消歧规则。例如,文本预测模块308可以应用文本预测算 法。在714,确定文本预测算法是否已找到所需最小数目的候选字符。在某些示例中, 候选字符的所需最小数目为一个。如果没有找到最小数目的候选字符(例如,一个候选字符也没有找到),那么在 716,自动应用消歧规则。例如,文本预测模块308可以向消歧模块310发送指令,指示应用 一种或多种消歧规则。例如通过使用标记,笔画消歧模块310可以指示应当应用消歧规则, 这可以确保对笔画输入序列中的所有后续笔画应用消歧规则。接着,方法700前进至706, 如上所述。如果已找到至少最小所需数目的候选字符,此时方法700前进至718,其中,如以 下参考710所述的那样,发送表示候选的信号。在720,可能接收到应用消歧规则的指令。例如,可以在文本预测模块308处,响应 于诸如用户选择消除歧义或者“模糊”键510等输入,接收到这样的指令。如果是这样,方 法700前进至716,如上所述。如果没有收到这样的指令,方法700结束。在某些示例实施例中,即使在应用一种或多种消歧规则之后,也可能够无法找到 候选字符。例如,在消歧规则被设计为仅仅对一个或两个不正确的笔画进行校正时,对于具 有三个或更多不正确笔画的输入序列,无法找到候选字符。在该情况下,无法提供候选,并 且取决于用户来校正不正确的笔画或尝试重新输入正确的笔画输入序列。虽然方法700被描述为提供候选字符,但方法700还可以在中间物适合的情况下, 提供候选中间物(例如,字根)。选择候选中间物可以对后续笔画的文本预测造成影响。下面将参考图7,图7示出了用于文本预测的示例方法800。方法800可适于执行 步骤708和/或步骤712。方法800包括在文本预测算法中使用中间物和上下文。其它适 合的文本预测算法可以省去使用中间物或上下文,或将二者都省去。任何适合的文本预测 算法都可以用于步骤708和/或步骤712。方法800或任何适合的文本预测算法可由文本 预测模块308来执行。方法800起始于表示部分或完整输入序列的信号。可以在文本预测模块308处接 收到该输入序列。可能已经根据一种或多种如上所述的消歧规则(例如来自笔画消歧模块 310的消歧规则)对输入序列进行了校正或更新。
在802中,确定先前是否选择过中间物。例如,对于输入序列的之前部分,可能已 经选择过中间物,并且该选择可能存储在文本预测模块308中。在804中,如果先前选择过中间物,那么应用文本预测算法,并且所预测的候选限 制于包含所选中间物在内的那些字符中。在某些示例中,字符可能包含多于一个的中间物, 在先前可能选择过多于一个的中间物的情况下,所预测的候选限制于包含多于一个的所选 中间物在内的那些字符中。在806,如果先前没有选择中间物,对输入序列应用文本预测算法。对可以预测的 候选可以没有约束或限制。除了完整字符以外,所预测的候选还可以包括中间物。在808中,判断是否预测出候选字符所需的最小数目。例如,可能最少需要一个候 选字符。如果没有预测到候选字符所需的最小数目,那么方法800结束,而无需提供任何候 选字符用于选择。在该情况下,如上所述,可以自动应用消歧规则。如果至少已预测出最小所需数目的候选字符,那么在810,基于先前上下文确定每 个候选的概率。如果没有先前上下文(如在编辑中没有先前文本的情况下,或者在先前文 本无法与另一字符相组合的情况下),可以根据使用频率(例如,在编辑上下文中,或者基 于先前编辑的历史)来对候选进行排序。可以跟踪所有字符的使用频率,并在数据库中(例 如文本预测模块308中)存储该频率。具有较高使用频率的候选可以比使用频率较低的候 选具有较高的排序等级。在存在先前上下文的情况下,可以使用上下文,来确定所预测候选 跟在先前上下文后面的概率。还可以使用上下文来对候选进行限制或排序,例如在已知某 个特定字符不可能紧随给定先前字符的情况下,可以将该特定字符从候选列表中删除,或 者在候选列表中以较低等级排序。在812,提供候选列表。例如,可以将表示候选列表的信号从文本预测模块308传 输至OS 302中。可以例如通过在显示器142上显示以进行选择,来提供该候选列表。在例 如已根据先前上下文确定了各个候选字符的概率的情况下,可以例如通过按照概率降序显 示候选,来按照概率的顺序提供候选。还可以按照其它顺序显示候选,例如按照笔画数目的 顺序,或者可以不必按照特定顺序进行显示。从而,方法800结束。虽然方法800示出了在笔画输入的文本预测中使用中间物或上下文,然而适合的 文本预测算法可以仅仅涉及使用中间物,或仅仅使用上下文,或者既不使用中间物也不使 用上下文。虽然方法750、方法700和方法800的步骤是按照特定顺序示出的,但是本领域的 技术人员将会理解的是,许多步骤是可交换的,并且可以按照与所示顺序不同的顺序发生, 而本质上不影响方法750、方法700或方法800的结果。虽然,可以用方法750或方法800 来实现方法700的特定部分,但方法700并非必须涉及方法750或方法800。方法750、方 法700和方法800可以彼此独立执行,以及在彼此不存在的情况下执行。附加地,虽然文本 预测和消除笔画歧义被描述为由文本预测模块308和笔画消歧模块310分别执行,但是本 领域的技术人员将理解的是,也可以在设备上作为其它软件模块的一部分,来实施与文本 预测模块308和笔画消歧模块310类似的一个模块或多个模块。可以由单个模块来执行, 或者由几个不同模块来执行所述步骤。虽然本公开涉及使用可点击指轮160、选择按钮161、键盘154、输入设备、或类似的导航或输入机制用于在电子设备102上进行导航,但是本领域技术人员将会理解的是, 导航、输入或二者都可以通过触摸屏显示器来提供。显示器142可以是触摸屏显示器。可 以通过用手指直接接触、或使用铁笔或类似的定位设备接触显示器,在触摸屏显示器上导 航或输入。虽然本公开包括方法说明,但是本领域的一般技术人员将会理解的是,本公开还 涉及用于执行本公开方法的设备,并且所述设备包括用于执行各个所述方法步骤的设备部 件,其可以具有硬件组件、以支持本公开的实现的合适的软件编程的计算机、或二者的结合 的形式,或者具有其它方式。此外,用于与该设备一起使用的制品(如预先记录的存储设 备、或其它类似的其上确实记录有程序指令的计算机可读介质、或其上确实记录有计算机 可执行指令的计算机程序产品)指引设备辅助实施本公开的方法。承载计算机可读程序指 令的计算机数据信号也可以指引设备辅助实施本公开的方法。可以理解的是,此类设备、制 品、以及计算机数据信号也属于本公开的范围。以上所述的本公开的示例实施例仅作示例。本领域一般技术人员在不背离由权利 要求所限定的本发明的保护范围的情况下,可以对前述特定实施例的构思出变更、修改和 变化。特别地,可以将来自一个或多个上述示例实施例的所选特征进行组合以构造出未明 确描述的可选示例实施例,适合进行组合的特征对本领域一般技术人员是显而易见的。在 所记载的权利要求中描述的主题意在覆盖和包含所有技术上适当的改变。
权利要求
一种用于在电子设备(102)中消除笔画输入歧义的方法,所述方法包括接收表示笔画输入序列的信号;对笔画输入序列应用一种或多种笔画消歧规则,以生成更新后的输入序列;以及传输表示所述更新后的输入序列的信号。
2.根据权利要求1所述的方法,其中,所述一种或多种笔画消歧规则包括对笔画序列 中一个或多个漏掉的笔画进行校正的规则。
3.根据权利要求1至2中任一项所述的方法,其中,所述一种或多种笔画消歧规则包 括对笔画序列中一个或多个交换笔画进行校正的规则。
4.根据权利要求1至3中任一项所述的方法,其中,所述一种或多种笔画消歧规则包 括对笔画序列中一个或多个不正确的笔画进行校正的规则。
5.根据权利要求1至4中任一项所述的方法,还包括接收输入,以执行笔画输入的消歧。
6.根据权利要求1至5中任一项所述的方法,还包括对更新后的输入序列应用文本预测算法,以预测一个或多个候选;以及 传输表示要在候选列表中提供以进行选择的所述一个或多个候选的信号。
7.根据权利要求6所述的方法,还包括如果对于笔画输入序列,预测出少于所需最小 数目的候选,则自动执行笔画输入的消歧。
8.根据权利要求6至7中任一项所述的方法,其中,应用文本输入算法包括确定是否 选择过中间物,并且,如果选择了中间物,那么仅仅传输包含所选中间物在内的候选。
9.根据权利要求6至8中任一项所述的方法,还包括基于先前上下文确定每个所述 候选的概率,并且基于对每个候选分别确定的概率,在候选列表中对一个或多个候选进行 排序。
10.一种用于消除笔画输入歧义的电子设备(102),所述设备(102)包括 微处理器(140),用于控制所述设备(102)的操作;输入设备(160),与所述微处理器(140)耦合,用于接受笔画输入; 显示设备(142),用于显示图形用户界面(304、500、600),所述显示设备(142)与微处 理器(140)耦合,用于传达输出;通信子系统(162),与所述微处理器(140)耦合,用于与通信网络(104)进行通信;以及存储器(144、146、148),与所述微处理器(140)耦合;所述设备(102)包括驻留在所述存储器(144、146、148)中、由微处理器(140)执行的 笔画消歧模块(140),所述设备(102)被配置为执行权利要求1至5中任一项所述的方法。
11.根据权利要求10所述的设备(102),还包括文本预测模块(308),并且所述设备 (102)还被配置为执行权利要求6至9中任一项所述的方法。
12.—种计算机程序产品,其上确实记录有用于消除笔画输入歧义的计算机可执行指 令,所述计算机程序产品包括用于执行权利要求1至9中任一项所述的方法的可执行代 码。
全文摘要
一种用于消除笔画输入歧异的设备,所述设备包括与微处理器相耦合、用于接受笔画输入的输入设备;以及驻留在存储器之中的、由微处理器执行的笔画消歧模块。所述设备被配置为在笔画消歧模块处接收表示笔画输入序列的信号;对笔画输入序列应用一种或多种笔画消歧规则,以生成更新后的输入顺序;以及传输表示更新后的输入序列的信号。
文档编号G06F3/048GK101950233SQ20101022802
公开日2011年1月19日 申请日期2010年7月8日 优先权日2009年7月10日
发明者孙小婷, 瓦迪姆·富克斯, 蒂莫西·库, 阿莱克塞·特雷菲洛夫 申请人:捷讯研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1