用于小键盘的文本输入机制的制作方法

文档序号:7604907阅读:223来源:国知局
专利名称:用于小键盘的文本输入机制的制作方法
技术领域
本发明涉及电子装置中的文本输入领域,特别是涉及对以简化的小键盘中输入文本的用户既有效又直观的机制。
背景技术
因特网普及的惊人增长已导致文字通信的普及的相应急速增长,文字通信如电子邮件和即时消息。浏览因特网的万维网以及文字通信已日益通过简化的小键盘进行,这样的小键盘如在移动电话上发现的键盘。
多次击键系统为罗马字的用户提供了可用但不太方便的文本输入功能。简要地,多次击键系统测定键的多次重复按压以消除与单一键关联的多个字母的岐义。例如,按压“2”键一次代表字母“a”,按压“2”键两次代表字母“b”,按压“2”键三次代表字母“c”,按压“2”键四次代表数字“2”。特定键的按压次数通常使用短暂的停顿进行定界。虽然可行,但使用多次击键输入罗马字的文本数据既麻烦又耗时。
已有一些尝试试图使用键压的预测性译码来消除与单个键关联的多个书写符号的岐义。这样的预测性译码由Zi Corporation在其万维网http//www.zicorp.com以及授权给Robert B.O’Dell的美国专利5,109,352(下文中称为O’Dell专利)中描述。预测性译码通常是有效的且大大简化了使用简化小键盘及非常大的书写符号集合来进行的文本输入。然而,预测性译码在遇到使用为固定名词、俚语和新词的词时会有困难,因为这些词可能未被表现在预测数据库中。
尽管其效率很高,但用于消歧的键压的预测性译码仅提供很少的直观的用户体验。特别地,预测性译码在已有几个字符被指定之前缺乏准确性。下面是示例性的例子。
假定用户正使用数字电话小键盘确定词“forest”。在预测性译码中,用户顺序按压下面的键3-6-7-3-7-8。应该意识到的是,使用多次击键输入“forest”更加麻烦,其按压3-3-3,停顿,按压6-6-6,停顿,按压7-7-7,停顿,按压3-3,停顿,按压7-7-7-7,停顿,按压8,停顿。在预测性译码中,用户按压“3”并不必将“f”译码和显示为所指示的字母。作为代替,“e”或“d”可作为按压“3”键的译码显示给用户。在一些预测性译码实施例中,所有预测出的词均被显示给用户。由于有大量词以字母d、e或f中的任一作为开头,所预测出的词不是用户想要输入的词是普遍现象。因此,当用户按压“3”键而开始拼写“forest”时,所有不同的词如“don’t”均被显示为预测出的词。
当用户在拼写“forest”按压第二键时,即“6”键,一些不同于“forest”的词均被继续显示为预测出的词。更干扰用户的是预测出的词可能突然戏剧性地改变。例如,按压“6”键可能将预测出的词从“don’t”改变为“eminently”,这两个词的拼写均以“3”键开始,其后紧接“6”键,该变化取决于这些词的使用频率。为获得预测性译码系统的全部效率,用户继续其余部分,即以7-3-7-8顺序完成。一旦全部序列被输入,只有一个词或仅几个词与所输入的顺序匹配。然而,直到此时,用户还被要求相信预测性译码将最终实现正确的译码,尽管在拼写所想要的词时,先前已显示了多个不正确的译码。
因此,需要一种改进的机制,其可在与简化的小键盘的单个键相关联的多个符号之间有效消歧,同时继续向用户提供准确且可靠的反馈。

发明内容
根据本发明,使用简化的小键盘输入的字符根据相互邻近的字符的出现频率进行译码。例如,第一字符可使用非明确机制如多次击键进行输入,第二字符以紧随第一字符的第二字符的相对出现频率影响所输入字符的译码的方式进行输入。
下面的例子是示例性的。假定用户正使用电话小键盘输入词以确定英文语言的文字。还假定用户已明确地确定第一字母为“f”。接着,在该示例性的例子中,用户按压电话小键盘的“6”键,该键代表字母“m”、“n”、“o”。为对该用户输入手势进行适当地译码,确定英语语言使用中“m”、“n”、“o”邻近字母“f”的相对出现频率。换言之,二元模型“fm”、“fn”和“fo”的相对使用频率被确定。
如在此使用的,二元模型是两个字母的字符串。例如,单词“smile”包括下述二元模型“sm”、“mi”、“il”、“le”。如在此使用的,三元模型是三个字母的字符串。因此,单词“smile”包括下面的三元模型″smi″、″mil″和″ile″。
继续涉及二元模型″fm″、″fn″和″fo″的示例性例子,假定二元模型“fo”在英语使用中出现最频繁,二元模型“fn”次之,二元模型“fm”最不频繁。因此,单次按压电话小键盘上的“6”键将被译码为代表字母“o”而不是像传统的多次击键系统那样译码为代表字母“m”。在该例子中,按压“6”键两次将被译码为字母“n”。按压“6”键三次将被译码为字母“m”。因而,由给定键代表的字符的顺序取决于早先确定的字符。例如,在确定字母“a”之后由“6”键代表的字符的顺序可能如下“n”第一、“m”第二、“o”第三。这应该是属于这样的情况二元模型“an”最常使用,二元模型“am”次之,“ao”最少使用。
一旦用户已明确地确定第一字符并使用相对二元模型频率以上述改进的方式明确确定第二字符,随后的字符可使用基于用户先前使用的词典及个人词典的预测分析进行译码。由于前两个字符已被明确确定,预测出的词非常不同于用户想要的词的可能性得以实质性降低。具体地,在输入“forest”期间,像“don’t”和“eminently”这样的词将不被显示给用户,因为“f”和“o”已被明确确定。
同时,根据本发明的数据输入非常有效率。在上面给出的用户输入词“forest”的例子中,多次击键要求16次键压,而预测分析仅需要6次,每一字母一次。在上面给出的例子中,用户使用多次击键确定字母“f”,例如按压“3”键三次。由于二元模型“fo”比“fm”和“fn”更普遍,“6”键的单次按压即可被正确地译码为字母“o”。“forest”的其余部分的输入通过预测分析完成。因此,输入“forest”的全部序列为3-3-3-6-7-3-7-8,共8次键压。因而,根据本发明的数据输入几乎与预测分析机制一样有效率,而且用户的体验得以大大地改善,因为其在显示给用户的预测出的词中排除了明显不相关的词。
因此,根据本发明,由用户确定的第一字符被明确地确定,由用户确定的第二字符也被用户明确地确定,但通过使用二元模型的相对使用频率而提高了效率,其余字符通过单次键压确定,且最可能想要的词根据与用户按压的键相匹配的词的使用频率而被预测出。类似地,第三字符也可使用三元模型的相对使用频率进行译码,该三元模型包括前两个已输入的字符。第四及随后的字符也可在其它n元模型的相对使用频率的环境中进行译码。
附图简要说明

图1示出了根据本发明实施数据输入的装置。
图2为图1的装置的部分功能组成的框图。
图3为根据本发明的数据输入的逻辑流程图。
图4为图3的逻辑流程图的一部分的详细逻辑流程图。
图5A和5B示出了数据结构,其中表现了二元模型的相对使用频率。
图6为图3的逻辑流程图的一部分的详细逻辑流程图。
图7为图2的预测数据库的详细框图。
图8为根据本发明的在数据输入中使用的数据结构的框图。
图9为根据本发明另一实施例的图示数据输入的逻辑流程图的一部分。
图10为根据本发明的在数据输入中使用的数据结构的框图。
图11-18为在根据本发明的数据输入期间的显示屏图。
图19为根据本发明的用于数据输入中的个人字典的逻辑流程图。
具体实施例方式
根据本发明,文本消息的第一字符由用户明确确定,使得随后的键压的预测性译码的准确性得以相当的改善。具体地,例如,第一字符可使用多次击键而明确地确定。第二字符根据用户所写的特定语言(即本机语言)的频繁出现的二元模型进行预测。随后的字母根据本机语言的匹配词的频率进行译码。
图1示出了用于文字通信的移动电话100。例如,移动电话100可用于发送和接收文字消息和/或可用于根据已知且标准的无线应用协议(WAP)浏览普遍存在的万维网。在该示例性的实施例中,移动电话100还可用于根据当前可用且公知的短消息服务(SMS)发送文本消息。移动电话100包括小键盘102,其包括命令键104和数据输入键106。此外,移动电话100包括显示屏108。此外,移动电话100包括用于接收音频信号的麦克风110和用于呈现音频信号的扬声器112。
数据输入键106,其在此有时被总体上称为数字小键盘106,按典型的电话小键盘布置进行排列,如图所示。在数字小键盘106在此作为简化的小键盘的示例性例子进行描述的同时,应该意识到的是,本发明的原理可用于其它简化的小键盘。如在此所使用的,简化的小键盘是指其一个或多个键中的每一个均可用于输入两个或多个符号构成的组中的一个。例如,字母“a”、“b”和“c”与数字小键盘106的键“2”关联并通过用户按压进行确定。
移动电话100的某些元件在图2中以图表形式示出。移动电话100包括微处理器202,其从存储器204检索数据和/或指令并以常规方式执行所检索的指令。
微处理器202和存储器204通过互连元件206而相互连接在一起,在该示例性的实施例中,互连元件206为总线。互连元件206还连接到一个或多个输入装置208、一个或多个输出装置210、及网络接入电路212。输入装置208包括小键盘102(图1)和麦克风110。在另一实施例中,输入装置208(图2)可包括其它类型的用户输入装置如触摸屏。输出装置210包括显示器108(图1),在该示例性的实施例中其为液晶显示器(LCD),输出装置210还包括用于播放移动电话100接收到的音频的扬声器112及用于播放铃声的第二扬声器。输入装置208和输出装置210还可包括常规的耳机插孔,其用于支持通过常规耳机进行的声音通信。网络接入电路212包括用于通过网络传导数据和/或声音通信的收发器和天线。
调用逻辑220是定义移动电话100以常规方式通过网络接入电路212进行通信时的行为的指令和数据的集合。拨号逻辑222是定义移动电话100以常规方式通过网络接入电路212建立通信时的行为的指令和数据的集合。文本通信逻辑224是定义移动电话100以常规方式通过网络接入电路212发送和接收文本消息时的行为的指令和数据的集合。
文本输入逻辑226是定义移动电话100在从用户处接受文本数据时的行为的指令和数据的集合。由用户输入的该文本可通过文本通信逻辑224发送给另一用户或被保存为移动电话100的所有人的姓名或保存为与所保存的电话号码相关联的文字形式的姓名。如上所述,除了无线装置之间的文本消息以外,文本输入逻辑226还可用于其它很宽范围的应用中。预测数据库228保存数据,其用于根据按压的输入装置208的键以下面将详尽描述的方式预测用户想要的文本。
逻辑流程图300(图3)示出了根据该示例性实施例的文本输入逻辑226的移动电话100(图2)的行为。循环步骤302(图3)及下一步骤322定义一循环,其中,词或短语由用户根据步骤304-320进行输入,直到用户指示消息已完成。在该示例性的实施例中,用户通过调用“发送”命令来指示消息已完成,如通过按压小键盘102(图1)上的“发送”按钮。对于每一词或短语,处理均转接到测试步骤304。
在测试步骤304中,文本输入逻辑226(图2)测定用户是否正确定词或短语的第一字符。在该示例性的实施例中,通过确定步骤302-322的循环的当前运行是否是步骤302-322的循环的第一次运行或确定用户在步骤302-322的循环的刚完成的运行中是否已确认一词或短语,文本输入逻辑226可测定用户正确定词或短语的第一字符。这样的确认将在下面详细描述。如果用户不是正确定词或短语的第一字符,处理转到测试步骤308,其将在下面描述。
相反,如果用户正确定词或短语的第一字符,则处理转到步骤306。在步骤306,文本输入逻辑226(图2)以明确的方式将用户产生的输入信号译码为确定一字符。在该示例性的实施例中,用户使用多次击键确定词或短语的第一字符。如在此更详细描述的那样,第一字母的明确确定大大提高了词或短语的随后字符的预测准确性。
根据本发明的文本的用户确定在用户确定词“forest”的示例性例子的上下文中进行描述。图11示出了移动电话100(图1)的显示器108,其中显示器108被文本输入逻辑226(图2)在逻辑上划分为上面部分——窗口108B(图11)和下面部分——窗口108A。窗口108A显示当前的词,及当前由用户确定的词。窗口108B显示先前确定的词,其已被用户确认并因而附加在当前消息的后面,消息可包括多个词。在步骤306(图3)的当前运行中,用户使用多次击键用户接口技术确定字母“f”,如通过按压“3”键三次并停顿以确认字母“f”的确定。其结果示出在图11中,其中字母“f”显示在窗口108A中。在该示例性的例子中,用户先前未确定任何词,所以窗口108B是空的。在另一实施例中,在窗口108A中文本按行进行编辑,窗口108A示出了已完成的词及部分词,且窗口108B被省略。
在步骤306(图3)之后,处理转到测试步骤314,文本输入逻辑226测定用户是否确认当前的词。在该示例性的实施例中,用户通过按压小键盘102的一预定控制按钮104(图1)确认当前词。如果用户已确认当前词,处理转到步骤316(图3),其将在下面描述。相反,如果用户尚未确认当前词,处理通过重复步骤322而转到循环步骤302,且由用户确定的下一字符根据步骤302-322进行处理。在该示例性的实施例中,用户继续使用数字小键盘106确定第二字符因而不确认当前词。因此,文本输入逻辑226执行步骤302-322的循环的另一重复运行。
在该随后的重复运行中,用户不再确定词的第一字符。因此,文本输入逻辑226进行的处理从测试步骤304转到测试步骤308。
在测试步骤308中,文本输入逻辑226测定用户是否正测定当前词的第二字符。在该示例性的实施例中,如果用户在刚刚进行的步骤302-322的循环的重复运行中确定当前词的第一字符,则用户正确定第二字符。如果用户不是正在确定当前词的第二字符,文本输入逻辑226(图2)的处理转到步骤312,其将在下面描述。
相反,如果用户正确定当前词的第二字符,处理转到步骤310。在步骤310,文本输入逻辑226与用户互动以测定当前词的第二字符与用户想要的一样。步骤310被更完整地示为逻辑流程图310(图4)。
在步骤402,文本输入逻辑226(图2)测定在确定第二字符时用户按压的键。在该示例性的实施例中,用户按压“6”键来确定“forest”中的字母“o”。在步骤404(图4),文本输入逻辑226(图2)根据以字母“f”为开头的二元模型的相对出现频率预测用户想要哪一字符。在该例子中,用户已按压代表字母“m”、“n”和“o”的“6”键。因此,在按压“6”键后,三种可能的二元模型与字母“f”相关联,即“fm”、“fn”和“fo”。
在该示例性的实施例中,文本输入逻辑226通过参考预装的二元模型表704(图5A)而根据二元模型的相对出现频率预测第二字符,二元模型表704是图7所示的预测数据库228的一部分。二元模型表704(图5A)为三维表,其中三维为(i)代表当前词的可能第一字符的字符,(ii)可由用户使用来确定当前词的第二字符的键,及(iii)可能的第二字符的排序列表。在第一字符为字母“f”且第二字符对应于“6”键时,单元502代表可能的第二字符的排序列表。如图5B中所示,排序列表为“o”、“m”和“n”。因此,二元模型表704表明以字母“f”为开头且以与“6”键关联的字符结尾的二元模型中最频繁出现的是“fo”。在二元模型表704中,第二频繁出现的是“fm”,最不频繁出现的是“fn”。
因此,在步骤404(图4),文本输入逻辑226(图2)预测用户在按压“6”键时想要输入字母“o”,因为“fo”是以字母“f”为开头且包括与“6”键关联的字母的二元模型中最频繁出现的。因此,文本输入逻辑226将字母“o”显示在窗口108A(图12)中,以作为预测出的第二字母。
在步骤406(图4),文本输入逻辑226允许用户明确地确定第二字符,其通过确认或澄清按压“6”键所预测出的译码进行。在该示例性的实施例中,文本输入逻辑226通过将排序列表502当作根据多次击键机制译码的字符的修订排序而那样做。因此,要接受字母“o”作为按压“6”键的正确译码,用户只需短暂地停顿。文本输入逻辑226将该短暂的停顿译码为对预测出的译码即字母“o”的确认。如果用户希望澄清该译码,用户再次无停顿的按压“6”键以将译码改变为字母“m”,及再次无停顿的按压“6”键以将译码改变为字母“n”。然而,在该示例性的例子中,最初预测出的译码是正确的,所以用户仅需短暂停顿以确认第二字母。
由于预测出的第二字母的译码是基于二元模型的频率,通常初始预测的译码将是正确的,用户确定第二字符所要求的键压得以减少。在该示例性的实施例中,非字母字符仍被保持为多次击键译码,其在排序列表502的字母的末尾。具体地,用户在停顿之前可按压“6”键四次来确定数字“6”。
在步骤406之后,根据逻辑流程图310的处理即步骤310(图3)结束。在下面描述的另一实施例中,用户特有的字典也被用于预测当前词的第二字符。在步骤310之后,处理转到测试步骤314,其中,文本输入逻辑226测定用户是否已以上述方式确认当前词,且由用户输入的下一字符也根据步骤302-322进行处理。
在该示例性的例子中,用户没有确认当前词,因而文本输入逻辑226执行步骤302-322的循环的另一重复运行。由于这是由用户确定的第三字符,文本输入逻辑226的处理跳过测试步骤304和308而转到步骤312。
步骤312被详细地示为逻辑流程图312(图6)。在步骤602,文本输入逻辑226以上面关于步骤402(图4)所述的方式测定用户按压了哪一键。在步骤604(图6),文本输入逻辑226根据文本输入逻辑226期待的一种或多种预言的词汇的通用字典预测用户想要的字符。在该示例性的实施例中,文本输入逻辑226期待英语预言的词。
通用字典708的一部分被详细示出在图8中以图示保存在其中的数据的各种关系,从而以在此描述的方式帮助预测分析。二元模型表704的每一二元模型具有相关联的二元模型记录802。例如,二元模型表704的单元502(图5A-B)表现三个二元模型的排序列表。在该示例性的实施例中,单元502与表现在单元502内的三个二元模型中的每一个相关联,指针指向通用字典708内的相关二元模型记录。这样的二元模型记录的例子如二元模型记录802所示(图8)。
二元模型记录802包括二元模型字段804,其识别由二元模型记录802表现的二元模型。在另一实施例中,二元模型字段804被省略,所表现的二元模型的身份从二元模型表704的单元如单元502内的关联进行推断。二元模型记录802还包括多个词表指针806-812,每一指针分别指已排序的词表816-822之一。
已排序的词表816-822中的每一个均包含通用字典708的元词,其根据使用频率进行排序。因此,每一表中的最频繁使用的词位于第一位置。已排序的词表816仅包括元词,其为两个字符长。已排序的词表818和820分别仅包括具有三个和四个字符长度的元词。已排序的词表822仅包括具有至少五个字符长度的元词。将以二元模型字段804中表现的二元模型为开头的词分割为各种长度的分割列表允许文本输入逻辑226更喜欢在长度上与用户的输入匹配的词,而不是那些超出用户的输入的长度的词。例如,在以二元模型“fo”为开头的词中,“s”(与电话小键盘的“7”键相关联)相较“r”更经常紧随“fo”的后面。然而,“for”是一个完整的词,文本输入逻辑226采取完整的词而不是更长的词的开头部分,这对用户而言似乎更自然。这呈现了更自然和舒适的用户体验。
因此,在步骤604(图6)通过参考通用字典708,文本输入逻辑226(图2)收集通用字典708的所有包括迄今已明确确定的所有字母的词,例如,在该示例性的例子中为前两个字母,且其包括在当前字母位置中的字母,在该例子中为第三个字母,该字母对应于最近按压的键。在该示例性的例子中,前两个字母即“f”和“o”已被明确确定且用户最近已按压“7”键。因此,在步骤604,文本输入逻辑226检索通用字典708的所有以“f”和“o”为开始两字母的词,且这些词包括第三字母,该第三字母为“7”键代表的字符之一,即“p”、“q”、“r”或“s”。此外,文本输入逻辑226根据每一词的相对使用频率排序词表。在该示例性的实施例中,通用字典708的项均以相对使用频率的顺序进行保存,且在检索这些词时由文本输入逻辑226保持该相对顺序,除了与用户迄今确定的字符数长度完全一样的词被给予较高的优先权以外。
在一实施例中,文本输入逻辑226仅预测一个字符,其通过选择从通用字典708检索的最频繁使用的词的相应字符并将包括预测出的字符的当前词显示在窗口108A中进行,如图13所示。在另一实施例中,文本输入逻辑226预测整个词,其通过选择从通用字典708检索的最频繁使用的词的全部并将整个词显示在窗口108A中进行,如图18中所示。如图18中所示,词的预测部分被突出显示。由于前两个字母已被用户明确确定,第三及随后确定的字符的预测分析相对于第一或前两个字母未被用户明确确定的预测分析而言得以大大改善。为此,预测出的字符或词更加准确,且用户经受较少的显示按压键的不正确译码的情况。因此,用户体验得以改善。
文本输入逻辑226可提供多个用户接口,用户借助于该接口可纠正文本输入逻辑226做出的不准确输入译码。在图13所示的实施例中,文本输入逻辑226根据通用字典708预测单一字符,用户可通过没有停顿的按压同一键另外的时间(非常类似于多次击键机制)(在该例子中为“7”键)来预示由文本输入逻辑226做出的不准确译码。响应于该快速的再次按压同一键,文本输入逻辑226从按使用频率排序的匹配通用字典项列表选择下一个第三字符,并将同一键的快速再次按压译码为呈现该字符。下面的例子是示例性的。
假定从通用字典708选择的词包括“for”和“forward”作为最频繁使用的词,其均以“f”和“o”开头并具有“p”、“q”、“r”或“s”作为第三字符。因此,在该实施例中,关于用户想要的第三字符的第一预测为字母“r”,如窗口108A中所示(图13)。如果用户没有停顿的再次按压“7”键,文本输入逻辑226从通用字典708向下搜索已排序的列表以查找第三字母不是“r”的最频繁使用的词。在该示例性的例子中,词如“fossil”和“foster”作为足够频繁使用的词,文本输入逻辑226将“7”键的快速再次按压译码为将预测出的字母从“r”切换为“s”。用户的体验类似于多次击键,但重复按压期间特定字母出现的顺序由在相应位置使用这些字母的词的相对频率确定。当用户停顿时,字母被当作已由用户明确确定,步骤604结束。
在图18所示的另一实施例中,文本输入逻辑226预测词的其余部分。文本输入逻辑226可提供不同的用户接口,用户借助于这些接口可澄清预测出的文本。在一实施例中,文本输入逻辑226提供多次击键用户接口,其类似于上面所述的接口,除了每一预测出的词的全部均被显示以使用户可立即确认任何预测出的词以外。每当用户停顿时,预测出的词在当前位置的一个字母被接受且在随后的步骤302-322的循环的重复运行中突出所预测的词时又少突出一个字符。因此,用户每次澄清单一字母时,如果所预测的词是正确的也可确认整个词。由于所预测的词根据使用频率进行选择,在大多数时间所预测的词的全部均是正确的。
在另一实施例中,文本输入逻辑226提供多次击键用户接口,其中用户的每一重复的键压选择从通用字典708检索的下一最频繁使用的词。因此,重复键压滚动所预测的词的已排序列表。由于前两个字母已由用户明确确定,且由于列表按每一词的使用频率排序,用户通常可快速地定位想要的词。
在另一实施例中,文本输入逻辑226非多次击键机制被提供用于用户的澄清。作为代替,用户的每一键压由文本输入逻辑226译码为确定用于想要的词的相应字符的字母集合。例如,一旦“f”和“o”被明确确定,用户按压“7”键一次以确定“r”,按压“3”键一次以确定“e”,再次按压“7”键以确定“s”等。在该另一实施例中,按压同一键两次被文本输入逻辑226译码为从键代表的字母组确定两个字母。
一旦用户以上述方式之一澄清当前字母,步骤604、逻辑流程图312即步骤312(图3)结束。在步骤312之后,文本输入逻辑226执行步骤314-320以由用户以上述方式处理词确认。
随后的步骤302-322的循环的重复运行按类似于上述的第三次重复运行那样进行。具体地,文本输入逻辑226的处理包括步骤312(顺序通过测试步骤304和308)并通过测试步骤314到下一步骤322。在该示例性的实施例中,到目前为止用户已按压下述键3-3-3-<停顿>-6-<停顿>-7。因此,在通用字典708中与迄今确定的字母相匹配的词的数量已相当少。因此,单次键压就非常可能确定想要的词的每一剩余字母。因而,用户按压下面的键以完成想要的词按压“3”键以确定“e”(图14),按压“7”键以确定“s”(图15),按压“8”键以确定“t”(图16)。
在确定最后的字母“t”之后,用户按压一预定的控制键104以指示想要的词已被正确地呈现在窗口108A中。因此,文本输入逻辑226(图2)的处理通过测试步骤314(图3)转到步骤316,在该步骤,文本输入逻辑226将呈现在窗口108A(图16)中的确定的词附加到由文本输入逻辑226保持的文本消息的后面。然后处理转到步骤318和320,文本输入逻辑226(图2)分别清空窗口108A(图17)并在窗口108B(图17)中显示当前全部文本消息,包括在步骤316(图3)所附加的词。
因此,根据本发明,要确定词“forest”,用户执行八次键压3-3-3-6-7-3-7-8。作为对比,使用传统的多次击键确定“forest”要求十五次键压3-3-3-6-6-6-7-7-7-3-3-7-7-7-7-8。因此,根据本发明的文本输入相较传统的多次击键系统相当有效率。此外,通过仅增加两次额外的键压(两次额外的按压“3”键以明确确定字母“f”为第一字母)并通过根据二元模型的使用频率预测第二字符,随后的键压的预测分析得以大大改进。具体地,由于任何所预测的词均至少以与用户想要的同一字母为开头,所预测的词更接近用户想要的词,因此与用户心中想要的词更密切相关。此外,由文本输入逻辑226(图2)预测的词和/或随后的字母均更接近于用户想要的。因此,对于用户而言,整个体验得以相当的改善。
在上述实施例使用词频来进行关于用户确定的第三字符的预测分析的同时,在另一实施例中,关于用户输入的第三字符的预测分析包括三元模型频率。该另一实施例被表示为逻辑流程图300B(图9),其示出了逻辑流程图300(图3)的修改。具体地,逻辑流程图300B(图9)示出了插入在测试步骤308和312之间的测试步骤902。
在测试步骤902,文本输入逻辑226测定步骤302-322(图3)的循环的当前重复运行中处理的当前字符是否是当前词的第三字符。文本输入逻辑226通过测定在先前刚刚进行的步骤302-322的循环的重复运行中处理的字符是当前词的第二字符来进行上述确定。
如果当前字符不是第三字符,处理转到上面已描述的步骤312。然而,步骤312稍微不同于上面描述的。具体地,预测数据库228(图7)包括三元模型表706,其总体上类似于二元模型表704,除了三元模型表706的单个单元对应于所按压的键和前述的二元模型以外。
此外,三元模型在通用字典608内的表示稍微不同。通用字典608的三元模型记录1002(图10)包括三元模型字段1002,其类似于二元模型字段804(图8),还包括词表指针1006-1010(图10),其大体上类似于词表指针806-812(图8)。具体地,词表指针1006-1010(图10)分别指已排序的列表1016-1020。已排序的列表1016包括三个字符长的词。已排序的列表1018包括四个字符长的词。已排序的词表1020包括至少五个字符长的词。
当三元模型以逻辑流程图300B(图9)中所示的方式进行处理时,除了这些较小差别外,步骤312均以上述方式执行。
相反,在测试步骤902,如果当前字符是第三字符,处理转到步骤904。在步骤904,文本输入逻辑226以上面关于步骤402(图4)描述的方式识别所按压的键。
在步骤906(图9),文本输入逻辑226根据三元模型频率预测想要的字符。步骤906类似于上面描述的步骤404(图4),除了三元模型表606(图6)代替二元模型表604以外。如上所述,三元模型表606总体上类似于如上所述的二元模型表604,除了三元模型表606是在前述二元模型而不是前述的第一字符基础上进行判定以外。
在步骤908(图9),文本输入逻辑226从用户处获得确认和/或澄清以明确地以类似于上面关于步骤406(图4)描述的方式将第三字符确定为用户想要的字符。处理从步骤908(图9)转到步骤312(图3)。
因此,在另一实施例中,第一字符由用户明确确定,第二字符根据二元模型使用频率进行预测,第三字符根据三元模型使用频率进行预测,而另外的字符根据词使用频率进行预测。如上述实施例中那样,其以渐增的准确度预测每一相继字符,使得用户未被呈现以实质上不同于用户想要的词的预测候选词。因此,用户的体验既有效又舒适。
如上所述,较后的字符根据通用字典708(图7)中呈现的词使用频率进行预测。在另一实施例中,个人字典710(图7)被包括在预测数据库228中以记录词使用频率和/或专用于单个用户的新词,且个人字典710被用于预测用户想要的候选词。为此,文本输入逻辑226的行为适于用户的词使用以进一步改善想要的词的预测准确度。
在该示例性的实施例中,个人字典710以根据最新使用排序的简单列表保存相当少量的词,这些词未被包括在通用字典708中。当然,为节约移动电话100中的处理资源,简单的指针逻辑被用于保持保存在个人字典710中的词的顺序。为使最新使用表现在个人字典710中,位于个人字典710内且由用户确定的词被移到个人字典710内最近使用的词的位置。因此,频繁使用的词趋向于根据在此描述的最近使用机制而被保持在个人字典710内。
在稍微复杂的另一实施例中,最新使用(即频率)与其它因素结合,以在用户确定的词将被写入个人字典710时确定全部个人字典710的哪一项将被删除或盖写。该实施例如逻辑流程图1900(图19)中所示。
在测试步骤1902,文本输入逻辑226(图2)测定个人字典710是否已满。如果未满,文本输入逻辑226在步骤1910将用户确定的词保存在个人字典710中且根据逻辑流程图1900的处理结束。相反,如果个人字典710是满的,新近确定的词必须显示个人字典710内的另一词,处理转到步骤1904。
在步骤1904,文本输入逻辑226收集多个个人字典710中最近使用的词。在该示例性的实施例中,个人字典710共保存200个词,其中100个最近使用的词均在步骤1904进行收集。有多种方式可用于有效确定最近使用的词。在一实施例中,指针逻辑在个人字典710内形成词的双链表,且指针被保持为识别第100个最近是一次的词。在另一实施例中,每当添加词到个人字典710中时词的序号递增,且新保存的序号或更新的词代表词的序号的当前值。第100个最近使用的词为所有序号小于当前词序号(小于100)的词。其它用于确定个人字典710内的100个最近使用的词的机制可通过应用例行设计进行确定。
在步骤1906,文本输入逻辑226根据直观判断法对所收集的词进行排序。在该示例性的实施例中,直观判断包括词长度和/或大写体字母的使用。较长的词更难于使用简化的小键盘进行输入,因此其最好被保持在个人字典710内。具体地,相较于预测较短的词,这对用户预测较长的词更有帮助,因为较长的词的准确预测为用户节省了更多次的键压。在词中的大写体字母的使用代表用户强调的形式,因此其指示由用户赋予的重要级别。因而,包括一个或多个大写体字母的词被优先保持在个人字典710内。
在该示例性的实施例中,所搜集的最近使用的词首先按词长度排序,在相同长度的词内,则再根据大写体字母的使用进行排序。在相同长度且相同大系统字母的使用的一组词中,相对最新使用被保持。
在步骤1908,从个人字典710中去除所搜集的最近使用的词中的最低排序的词。在步骤1910,添加新近确定的词。在步骤1908的去除可通过在步骤1910的存储之前直接删除进行,或可通过在步骤1910将新确定的词盖写在个人字典710内的同一记录中进行。
因此,根据所描述的逻辑流程图1900的实施,个人字典710中的100个最近使用的词中的最短的词被新确定的词代替。如果100个最近使用的词中有两个或多个具有相同长度的最短的词,则最少使用大写体字母的词被代替。如果100个最近使用的词中有两个或多个具有相同长度及相同大写体字母使用的最短的词,则最最近使用的词被代替。
上面的描述仅是说明性的并非限制。例如,在使用无线电话的文本通信被描述为示例性的实施例的同时,应该意识到的是,上述方式中的文本输入还可应用于许多其它类型的文本输入。无线电话为通信之外的目的使用文本输入,如保存无线电话的所有人的姓名及与所保存的电话号码相关的文字名称或描述。此外,无线电话之外的装置也可用于文本通信,如双向寻呼机及个人无线电子邮件装置。个人数字助理(PDA)及紧凑的个人信息管理器(PIM)可以在此描述的方式使用文本输入以输入联系信息及推而广之,输入任何类型的数据。娱乐设备如DVD播放机、VCR等可以上述方式使用文本输入以用于在屏幕上编程或视频游戏中输入最高分玩家的姓名。视频摄像机具有的比遥控器的数字小键盘更小的小键盘可用于输入文本以将文字覆盖在所记录的视频上。以上述方式进行的文本输入还可用于在所有大小、所有功能的计算机系统中进行词处理或任何数据输入。
因此,本说明书仅是说明性的,本发明仅由后面的权利要求及其全部等价范围确定。
权利要求
1.用于响应于用户产生的信号产生文本的方法,该方法包括接收用户产生的、确定文本的词的第一字符的信号;接收用户产生的信号,其确定可能是词的第二字符的一个或多个候选字符的集合;根据邻近于第一字符的预定字符的相对使用频率预测一个或多个候选字符中的预定字符是用户想要的字符;及将预定的字符呈现给用户进行确认。
2.根据权利要求1所述的方法,其中预测包括确定包括第一字符和所预定字符的二元模型的相对使用频率。
3.根据权利要求2所述的方法,其中二元模型的相对使用频率是相对于包括第一字符和一个或多个候选字符中的其它字符之一的各个二元模型的使用频率。
4.根据权利要求1所述的方法,其中确定第一字符的信号明确确定第一字符。
5.根据权利要求4所述的方法,其中确定第一字符的信号根据多次击键数据输入技术确定第一字符。
6.根据权利要求1所述的方法,其中确定集合的信号代表单一用户数据输入手势。
7.根据权利要求6所述的方法,其中单一用户数据输入手势为单一按钮按压。
8.用于响应于用户产生的信号产生文本的方法,该方法包括接收用户产生的、确定文本的词的第一和第二字符的信号;接收用户产生的信号,其确定可能是词的第三字符的一个或多个候选字符的集合;根据第一、第二及顺次预定的字符的相对使用频率预测一个或多个候选字符中的预定字符是用户想要的字符;及将预定的字符呈现给用户进行确认。
9.根据权利要求8所述的方法,其中预测包括确定包括第一、第二及所预定字符的三元模型的相对使用频率。
10.根据权利要求9所述的方法,其中三元模型的相对使用频率是相对于包括第一和第二字符及一个或多个候选字符中的其它字符之一的各个三元模型的使用频率。
11.根据权利要求8所述的方法,其中确定第一和第二字符的信号明确确定第一和第二字符。
12.根据权利要求11所述的方法,其中确定第一和第二字符的信号根据多次击键数据输入技术确定第一和第二字符。
13.根据权利要求8所述的方法,其中确定集合的信号代表单一用户数据输入手势。
14.根据权利要求13所述的方法,其中单一用户数据输入手势为单一按钮按压。
15.可用于结合计算机进行使用的计算机可读介质,计算机包括处理器和存储器,计算机可读的介质包括计算机指令,这些指令被配置来使计算机响应于用户产生的信号而产生文本,其通过下述步骤进行接收用户产生的、确定文本的词的第一字符的信号;接收用户产生的信号,其确定可能是词的第二字符的一个或多个候选字符的集合;根据邻近于第一字符的预定字符的相对使用频率预测一个或多个候选字符中的预定字符是用户想要的字符;及将预定的字符呈现给用户进行确认。
16.根据权利要求15所述的计算机可读的介质,其中预测包括确定包括第一字符和所预定字符的二元模型的相对使用频率。
17.根据权利要求16所述的计算机可读的介质,其中二元模型的相对使用频率是相对于包括第一字符和一个或多个候选字符中的其它字符之一的各个二元模型的使用频率。
18.根据权利要求15所述的计算机可读的介质,其中确定第一字符的信号明确确定第一字符。
19.根据权利要求18所述的计算机可读的介质,其中确定第一字符的信号根据多次击键数据输入技术确定第一字符。
20.根据权利要求15所述的计算机可读的介质,其中确定集合的信号代表单一用户数据输入手势。
21.根据权利要求20所述的计算机可读的介质,其中单一用户数据输入手势为单一按钮按压。
22.可用于结合计算机进行使用的计算机可读介质,计算机包括处理器和存储器,计算机可读的介质包括计算机指令,这些指令被配置来使计算机响应于用户产生的信号而产生文本,其通过下述步骤进行接收用户产生的、确定文本的词的第一和第二字符的信号;接收用户产生的信号,其确定可能是词的第三字符的一个或多个候选字符的集合;根据第一、第二及顺次预定的字符的相对使用频率预测一个或多个候选字符中的预定字符是用户想要的字符;及将预定的字符呈现给用户进行确认。
23.根据权利要求22所述的计算机可读的介质,其中预测包括确定包括第一、第二及所预定字符的三元模型的相对使用频率。
24.根据权利要求23所述的计算机可读的介质,其中三元模型的相对使用频率是相对于包括第一和第二字符及一个或多个候选字符中的其它字符之一的各个三元模型的使用频率。
25.根据权利要求22所述的计算机可读的介质,其中确定第一和第二字符的信号明确确定第一和第二字符。
26.根据权利要求25所述的计算机可读的介质,其中确定第一和第二字符的信号根据多次击键数据输入技术确定第一和第二字符。
27.根据权利要求22所述的计算机可读的介质,其中确定集合的信号代表单一用户数据输入手势。
28.根据权利要求27所述的计算机可读的介质,其中单一用户数据输入手势为单一按钮按压。
29.一种计算机系统,包括处理器;在操作上连接到处理器的存储器;及数据输入模块,(i)其自存储器在处理器中运行,及(ii)当由处理器运行时,其使计算机响应于用户产生的信号产生文本,其通过下述步骤进行接收用户产生的、确定文本的词的第一字符的信号;接收用户产生的信号,其确定可能是词的第二字符的一个或多个候选字符的集合;根据邻近于第一字符的预定字符的相对使用频率预测一个或多个候选字符中的预定字符是用户想要的字符;及将预定的字符呈现给用户进行确认。
30.根据权利要求29所述的系统,其中预测包括确定包括第一字符和所预定字符的二元模型的相对使用频率。
31.根据权利要求30所述的系统,其中二元模型的相对使用频率是相对于包括第一字符和一个或多个候选字符中的其它字符之一的各个二元模型的使用频率。
32.根据权利要求29所述的系统,其中确定第一字符的信号明确确定第一字符。
33.根据权利要求32所述的系统,其中确定第一字符的信号根据多次击键数据输入技术确定第一字符。
34.根据权利要求29所述的系统,其中确定集合的信号代表单一用户数据输入手势。
35.根据权利要求34所述的系统,其中单一用户数据输入手势为单一按钮按压。
36.一种计算机系统,包括处理器;在操作上连接到处理器的存储器;及数据输入模块,(i)其自存储器在处理器中运行,及(ii)当由处理器运行时,其使计算机响应于用户产生的信号产生文本,其通过下述步骤进行接收用户产生的、确定文本的词的第一和第二字符的信号;接收用户产生的信号,其确定可能是词的第三字符的一个或多个候选字符的集合;根据第一、第二及顺次预定的字符的相对使用频率预测一个或多个候选字符中的预定字符是用户想要的字符;及将预定的字符呈现给用户进行确认。
37.根据权利要求36所述的系统,其中预测包括确定包括第一、第二及所预定字符的三元模型的相对使用频率。
38.根据权利要求37所述的系统,其中三元模型的相对使用频率是相对于包括第一和第二字符及一个或多个候选字符中的其它字符之一的各个三元模型的使用频率。
39.根据权利要求36所述的系统,其中确定第一和第二字符的信号明确确定第一和第二字符。
40.根据权利要求39所述的系统,其中确定第一和第二字符的信号根据多次击键数据输入技术确定第一和第二字符。
41.根据权利要求36所述的系统,其中确定集合的信号代表单一用户数据输入手势。
42.根据权利要求41所述的系统,其中单一用户数据输入手势为单一按钮按压。
全文摘要
用于简化的小键盘的数据输入机制使用二元模型的相对使用频率帮助用户。由用户确定的第一字符被明确确定,由用户确定的第二字符也被明确确定,但通过使用二元模型的相对使用频率提高了效率,其余的字符通过单次键压进行预测,而最可能想要的词根据与用户所按压的键匹配的词的使用频率进行预测。类似地,第三字符也可以使用包括输入的前两个字符的三元模型的相对使用频率进行译码。第四及随后的字符也可在其它n元模型的相对使用频率的环境中进行译码。
文档编号H04M1/2745GK1748195SQ200480003692
公开日2006年3月15日 申请日期2004年2月5日 优先权日2003年2月5日
发明者罗兰·E.·威廉斯, 罗伯特·欧戴尔 申请人:字源集团加拿大公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1