语音输入系统和方法

文档序号:2826401阅读:524来源:国知局
语音输入系统和方法
【专利摘要】本发明提供了一种语音输入系统和方法。所述语音输入方法,包括:将采集的语音按照预定时间间隔分隔成多个分段;当通过单音对应拼音的分类器判断出分段的语音信息的置信度超过预定阈值时,把置信度超过预定阈值的语音分段判别为对应一个单字的拼音;根据拼音识别规则来识别与得到的拼音序列对应的汉字,其中,所述拼音序列对应于所采集的语音。
【专利说明】语音输入系统和方法
【技术领域】
[0001]本发明涉及语音识别技术。更具体地讲,涉及一种语音输入系统和方法。
【背景技术】
[0002]目前手持式设备上的输入方式一般都是通过键盘或触摸屏进行输入。为了给用户提供交互方式,往往需要通过为某种操作预留特定的输入键的方式来进行用户与设备之间的交互。对于一些复杂的操作,在设备上无法预留过多的输入键,只能通过复用某些操作键以及组合一些操作键的方式来实现,或者通过复杂的菜单分级的策略,用户往往要进行多次菜单操作才能实现所需的功能。这些输入方式,一来容易引起误操作,二来实现的功能依然有限,无法满足用户的实际需求。
[0003]与传统的通过键盘以及触摸屏输入方式不同,语音输入作为一种最自然的交互方式,无需占用额外的硬件及尺寸方面的资源,只通过一个简单的麦克风即可实现动态扩展的虚拟界面来完成多种输入操作。这样对于手持设备的所有操作均可以通过语音输入来实现,无需对某种功能指定特殊的键,因而在不增加设备外观尺寸的前提下能够最大程序的丰富手持式设备的交互乐趣。
[0004]在现有的语音输入方法中,用户点击语音输入的开始按钮之后录入语音,点击结束按钮并将语音上传到服务器端,并接收其返回的解析得到的文字信息。
[0005]然而,这样的语音输入方法会造成如下问题:1、语音传输占用带宽,在网络信号不好的时候发送语音的过程会耗时或失败;2、一次输入完毕,用户对输入结果没有很好的预期,只有看到返回结果才知道是否输入成功。
[0006]因此,需要一种能够提供语音输入的准确性和效率的语音输入方法。

【发明内容】

[0007]本发明的目的在于提供一种提供更高准确性和更高效率的语音输入系统和方法。
[0008]为了实现上述目的,提供了一种语音输入方法,包括:将采集的语音按照预定时间间隔分隔成多个分段;当通过单音对应拼音的分类器判断出分段的语音信息的置信度超过预定阈值时,把置信度超过预定阈值的语音分段判别为对应一个单字的拼音;根据拼音识别规则来识别与得到的拼音序列对应的汉字,其中,所述拼音序列对应于所采集的语音。
[0009]所述对应一个单字的拼音可以是一个或多个拼音。
[0010]在所述对应一个单字的拼音是多个拼音时,所述方法可还包括:将所述多个拼音显示在屏幕上,并且用户可针对所述对应一个单字的多个拼音选取期望的拼音。
[0011]在所述对应一个单字的拼音是多个拼音时,所述方法可还包括:对所述多个拼音进行拼音纠错以得到正确的拼音。
[0012]所述语音输入方法可还包括:如果在自检查的开始时间过去预定时间的时间段内不存在超过预定阈值的置信度的分段,则将检查的起始时间重新设置为自检查的开始时间过去短于所述预定时间的时间段作为重新设置的开始时间,并从所述重新设置的开始时间检查分段的语音信息。
[0013]根据本发明的另一方面,提供了一种语音输入系统,包括:语音分段单元,用于将采集的语音按照预定时间间隔分隔成多个分段;置信度判别单元当通过单音对应拼音的分类器判断出分段的语音信息的置信度超过预定阈值时,把置信度超过预定阈值的语音分段判别为对应一个单字的拼音;汉字识别单元,根据拼音识别规则来识别与得到的拼音序列对应的汉字,其中,所述拼音序列对应于所采集的语音。
[0014]所述对应一个单字的拼音可以是一个或多个拼音。
[0015]所述语音输入系统可还包括:拼音显示单元,在所述对应一个单字的拼音是多个拼音时,用于将所述多个拼音显示在屏幕上,并且用户针对所述对应一个单字的多个拼音选取期望的拼音。
[0016]所述语音输入系统可还包括:拼音纠错单元,在所述对应一个单字的拼音是多个拼音时,对所述多个拼音进行拼音纠错以得到正确的拼音。
[0017]在自检查的开始时间过去预定时间的时间段内不存在超过预定阈值的置信度的分段的情况下,置信度判别单元可还用于将检查的起始时间重新设置为自检查的开始时间过去短于所述预定时间的时间段作为重新设置的开始时间,并从所述重新设置的开始时间检查分段的语音信息。
[0018]将在接下来的描述中部分阐述本发明另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本发明的实施而得知。
【专利附图】

【附图说明】
[0019]通过下面结合附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
[0020]图1是示出根据本发明第一实施例的语音输入方法的流程图;
[0021]图2是示出根据本发明第二实施例的语音输入方法的流程图;
[0022]图3是示出根据本发明第一实施例的语音输入系统的框图;
[0023]图4是示出根据本发明第二实施例的语音输入系统的框图。
【具体实施方式】
[0024]现在,详细描述本发明的实施例,其示例在附图中表示,其中,相同的标号始终表示相同的部件。以下通过参考附图描述实施例以解释本发明。
[0025]图1是示出根据本发明第一实施例的语音输入方法的流程图。
[0026]如图1所示,在步骤S101,在用户开始语音录入之后,客户端进行语音采集并可将采集到的语音存储在其缓存器中。
[0027]在步骤S102,客户端从录入开始时间起按照预定时间间隔将采集的语音分隔成多个分段。所述预定时间间隔可表示为t,例如0.1s。
[0028]在步骤S103,客户端从录入开始时间依次检查所述多个分段内的语音信息,直到通过单音对应拼音的分类器判断出置信度超过第一预定阈值(例如,S)时,把检查的语音分段判别为对应一个单字的拼音。此时语音分段的长度可表示为n*t (即,检查到上次截止时间开始的第η段的时候发现n*t时间段内的语音对应到了一个单字的拼音)。其中,η表示第η分段,t表示预定时间间隔。即表示采集的η个分段的语音对应一个单字的拼音。
[0029]这里的单音对应拼音的分类器可由客户端从服务器端下载。另外,这里的单音对应拼音的分类器可由现有技术中的分类器来实现,例如,分类器能够自动将语音输入数据划分到已知类别(即,不同的拼音),因此这里不对其进行详细描述。
[0030]判别出对应一个单字的拼音之后,在步骤S104,将该拼音进行记录并显示到客户端的屏幕上。同时将上述语音缓存的处理起始时刻更新到下一时间分段,即总时间轴上的(n+1) *t处,并开始下一轮的语音匹配。
[0031]可选择地,在语音输入中间或结束了以后,用户可以随时暂停语音输入并查看单字识别的成功情况,并(传统输入或语音输入)更改错误的音。
[0032]在步骤S105,确定是否完成全部语音分段的判别。
[0033]如果在步骤S105确定没有完成全部语音分段的判别,则返回步骤S103继续对剩余语音分段进行判别。否则,执行步骤S106以根据拼音识别规则来识别与得到的拼音序列对应的汉字。现有技术中存在多种根据拼音序列得到汉字的技术(比如现有的搜索引擎纠错功能)。例如,根据拼音序列得到汉字,就是纠错的一种。比如在百度输入‘fenleiqi’会提示是不是要找‘分类器’。现有的搜索引擎纠错功能的原理有多种,例如:1、如果用户检索‘fenleiqi’,但是没有结果,这是用户会再检索‘分类器’,那这两者作为关联检索词就会作为纠错的依据;2、事先维护一个汉字到拼音的对应关系和不同拼音对应到某些汉字的可能性(大量文本统计就能做到),当输入拼音的时候就能得到最可能出现的汉字是什么。
[0034]应该理解步骤S106可由客户端执行也可以由服务器端执行。因此,通过将拼音序列的编码信息而非语音信号的编码信息提交给服务器端,使得占用比较少的带宽。
[0035]可选择地,客户端也可以将原始语音和拼音序列一起发送给服务器端,由服务器端来识别与得到的拼音序列对应的汉字。在服务器端拼音序列的引入,将可以指导原始语音信息的解析,提高解析的精确度。具体来说就是有当存在多种可能的解析结论时,对应结论的拼音和客户端传输的拼音越相似,则该结论的置信度越大。比如用户说了一句:“王上”但是发音不标准,直接语音解析可能就得到了“黄山”。结合步骤S104客户端上可以更改错误的拼音,那么在服务器解析语言的时候就能得到进一步的指导。现有技术中存在多种对于相似性的评价方式,例如拼音对应的字母序列的编辑距离等。编辑距离就是两个字符串通过最少的步数添加、删除、替换字母互换的步数。比如“huangshan”和“huangshang”的编辑距离为1,后者比前者多了一个字符。
[0036]另外,拼音序列和语音信号的对应关系可以进一步的作为后续语音识别模块的训练依据,从而提高服务器端的在线语音识别能力。
[0037]图2是示出根据本发明第二实施例的语音输入方法的流程图。
[0038]图2中的步骤S201-S202与图1中的步骤S101-S102相同,因此在此不再赘述。
[0039]在步骤S203,客户端从录入开始时间依次检查所述多个分段内的语音信息,直到通过单音对应拼音的分类器判断出置信度超过第二预定阈值S’(第二预定阈值S’〈第一预定阈值S)时,把检查的语音分段判别为对应一个单字的多个拼音。此时语音分段的长度可表示为n*t。其中,η表示第η分段,t表示预定时间间隔。即表示采集的η个分段的语音对应一个单字的拼音。例如,当用户语音输入“黄”时,可能给出符合条件S’的‘wang’或‘huang’的拼音。[0040]判别出对应一个单字的多个拼音之后,在步骤S204,将该多个拼音进行记录并显示到客户端的屏幕上。同时将上述语音缓存的处理起始时刻更新到下一时间分段,即总时间轴上的(n+1) *t处,并开始下一轮的语音匹配。
[0041]可选择地,用户可针对单字的多个拼音选取期望的拼音。
[0042]如果在用户没有选择期望的拼音的情况下,在步骤S205,针对所述多个拼音进行纠错。例如,在上述步骤S203中,当用户语音输入“黄”时,给出符合条件S’的‘wang’或‘huang’的拼音,同时对于语音‘河’给出拼音‘he’。通过拼音纠错,可确定‘huanghe’是概率更高的词对应的音。因而通过拼音纠错可选用‘huanghe’这个拼音序列。应该理解步骤S205可由客户端执行也可以由服务器端执行(B卩,客户端将得到的多个拼音发送给服务器端,由服务器端进行纠错)。
[0043]在步骤S206,确定是否完成全部语音分段的判别。
[0044]如果在步骤S206确定没有完成全部语音分段的判别,则返回步骤S203继续对剩余语音分段进行判别。否则,执行步骤S207以根据拼音识别规则来识别与得到的拼音序列对应的汉字。应该理解步骤S207可由客户端执行也可以由服务器端执行。
[0045]另一方面,预定分段的输入语音可能对应于噪声或静音等情况。下面将对这种情况进行描述。
[0046]在客户端按照预定时间间隔从录入开始时间将采集的语音分隔成多个分段(所述预定时间间隔可表示为t,例如0.1s)之后,客户端从录入开始时间依次检查所述多个分段内的语音信息,如果在N*t的时间内(N为预设阈值,比如10,对应ls),该片段语音无法匹配到任何单字的拼音,那么这段时间可能对应了噪声或静音等情况。
[0047]S卩,如果起始时刻为i*t,在(i+N)*t时刻发现N*t的时间段内无法匹配到任何单字的拼音。则将起始时刻重置为(i+M) *t (其中M为小于N的整数)并重新开始执行如图1中的步骤S103或图2中的步骤S203以判别对应一个单字的拼音。
[0048]这里,之所以不将起始时刻重置为(i+N) *t是因为可能(N-M) *t的这段时间对应了半个字的音,而没有被识别,但是前面的M*t的时间基本上可以确定没有对应某个实际的字)。比如t为0.1,N为10,M为5。整条语音的长度是3秒。其中0-0.8秒是静默期或噪声期,第0.8-0.12秒用户发了一个‘黄’的音,在1.2-1.5秒又是静默期,在1.5-2.0秒用户发音‘山’。那么从O到1.0秒的时候,用户的‘黄’这个音还没有发完,识别不出来,同时I秒已经达到了,所以历史的这一秒不对应到某个汉字。那么就从(N-M) *5=0.5秒开始再作检测。0.5-1.2秒因为能检测到完整的用户发音‘黄’,所以得到了 ‘huang’这个拼音。再从1.2秒往后检测继续检测到‘shan’这个音。
[0049]图3是示出根据本发明第一实施例的语音输入系统的框图。
[0050]如图3所示,根据本发明第一实施例的语音输入系统包括:语音采集单元301、语音分段单元302、置信度判别单元303、拼音显示单元304、汉字识别单元305。
[0051]在用户开始语音录入之后,语音采集单元301进行语音采集并可将采集到的语音存储在其缓存器中。
[0052]语音分段单元302从录入开始时间起按照预定时间阈值将采集的语音分隔成多个分段。
[0053]置信度判别单元303从录入开始时间依次检查所述多个分段内的语音信息,直到通过单音对应拼音的分类器判断出置信度超过第一预定阈值(例如,S)时,把检查的语音分段判别为对应一个单字的拼音。
[0054]同样,置信度判别单元303可从语音中识别出对应噪声或静音等情况。
[0055]拼音显示单元304将判别的拼音显示在屏幕上。
[0056]汉字识别单元305用于识别与拼音序列对应的汉字,所述拼音序列对应于采集的语音。
[0057]应该理解,根据本发明第一实施例的语音输入系统中的语音采集单元301、语音分段单元302、置信度判别单元303、拼音显示单元304和汉字识别单元305可在客户端实现,或者语音采集单元301、语音分段单元302、置信度判别单元303、拼音显示单元304可在客户端实现,而汉字识别单元305可在服务器端实现。
[0058]图4是示出根据本发明第二实施例的语音输入系统的框图。
[0059]根据本发明第二实施例的语音输入系统包括:语音采集单元401、语音分段单元402、置信度判别单元403、拼音显示单元404、汉字识别单元405。
[0060]在用户开始语音录入之后,语音采集单元401进行语音采集并可将采集到的语音存储在其缓存器中。
[0061]语音分段单元402从录入开始时间起按照预定时间阈值将采集的语音分隔成多个分段。
[0062]置信度判别单元403从录入开始时间依次检查所述多个分段内的语音信息,直到通过单音对应拼音的分类器判断出置信度超过第二预定阈值S’(第二预定阈值S’〈第一预定阈值S)时,把检查的语音分段判别为对应一个单字的多个拼音。
[0063]在判别出多个拼音的情况下,拼音显示单元404将判别的多个拼音显示在屏幕上。可由用户针对所述多个拼音选取期望的拼音。
[0064]同样,置信度判别单元403可从语音中识别出对应噪声或静音等情况。
[0065]汉字识别单元405用于识别与拼音序列对应的汉字,所述拼音序列对应于采集的语音。
[0066]根据本发明的语音输入系统还可包括拼音纠错单元406。在用户没有针对所述多个拼音选取期望的拼音的情况下,拼音纠错单元406可对所述多个拼音进行拼音纠错以得到正确的拼音。
[0067]应该理解,根据本发明第二实施例的语音输入系统中的语音采集单元401、语音分段单元402、置信度判别单元403、拼音显示单元404、汉字识别单元405和拼音纠错单元406可在客户端实现,或者语音采集单元401、语音分段单元402、置信度判别单元403、拼音显示单元404可在客户端实现,而汉字识别单元405和拼音纠错单元406可在服务器端实现;或者只有汉字识别单元405在服务器端实现。
[0068]根据本发明实施例的语音输入系统和方法,通过将拼音传输到服务器端,因此可以减小带宽的占用。另外,在将拼音和原始语音传输到服务器端的情况下,可以提升语音识别的准确性。
[0069]尽管已经参照本发明的实施例具体显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种改变。
【权利要求】
1.一种语音输入方法,包括: 将采集的语音按照预定时间间隔分隔成多个分段; 当通过单音对应拼音的分类器判断出分段的语音信息的置信度超过预定阈值时,把置信度超过预定阈值的语音分段判别为对应一个单字的拼音; 根据拼音识别规则来识别与得到的拼音序列对应的汉字,其中,所述拼音序列对应于所采集的语音。
2.如权利要求1所述的语音输入方法,其中,所述对应一个单字的拼音是一个或多个拼音。
3.如权利要求2所述的语音输入方法,其中,在所述对应一个单字的拼音是多个拼音时,所述方法还包括:将所述多个拼音显示在屏幕上,并且用户针对所述对应一个单字的多个拼音选取期望的拼音。
4.如权利要求2所述的方法,其中,在所述对应一个单字的拼音是多个拼音时,所述方法还包括:对所述多个拼音进行拼音纠错以得到正确的拼音。
5.如权利要求1所述的语音输入方法,还包括:如果在自检查的开始时间过去预定时间的时间段内不存在超过预定阈值的置信度的分段,则将检查的起始时间重新设置为自检查的开始时间过去短于所述预定时间的时间段作为重新设置的开始时间,并从所述重新设置的开始时间检查分段的语音信息。
6.—种语音输入系统,包括: 语音分段单元,用于将采集的语音按照预定时间间隔分隔成多个分段; 置信度判别单元当通过单音对应拼音的分类器判断出分段的语音信息的置信度超过预定阈值时,把置信度超过预定阈值的语音分段判别为对应一个单字的拼音; 汉字识别单元,根据拼音识别规则来识别与得到的拼音序列对应的汉字,其中,所述拼音序列对应于所采集的语音。
7.如权利要求6所述的语音输入系统,其中,所述对应一个单字的拼音是一个或多个拼音。
8.如权利要求7所述的语音输入系统,还包括:拼音显示单元,在所述对应一个单字的拼音是多个拼音时,用于将所述多个拼音显示在屏幕上,并且用户针对所述对应一个单字的多个拼音选取期望的拼音。
9.如权利要求7所述的语音输入系统,还包括:拼音纠错单元,在所述对应一个单字的拼音是多个拼音时,对所述多个拼音进行拼音纠错以得到正确的拼音。
10.如权利要求6所述的语音输入系统,其中,在自检查的开始时间过去预定时间的时间段内不存在超过预定阈值的置信度的分段的情况下,置信度判别单元还用于将检查的起始时间重新设置为自检查的开始时间过去短于所述预定时间的时间段作为重新设置的开始时间,并从所述重新设置的开始时间检查分段的语音信息。
【文档编号】G10L15/04GK103559880SQ201310552972
【公开日】2014年2月5日 申请日期:2013年11月8日 优先权日:2013年11月8日
【发明者】王光远 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1