一种语音识别方法及装置与流程

文档序号:12128386阅读:237来源:国知局
一种语音识别方法及装置与流程

本发明涉及终端技术领域,特别涉及一种语音识别方法及装置。



背景技术:

目前,在使用语音输入法进行语音识别时,都是在录音按键被按下时,才开始录音,然后将录制的语音识别为文字后进行输出,而相关技术中的录音方案对应两个线程,一个录音线程和一个识别线程,具体的录音过程如下:当录音按键被按下后,启动语音输入法对应的录音线程和识别线程,而录音线程负责启动终端录音,识别线程负责从录音线程处取录音数据,并发送给服务器识别,待识别完毕后,从服务器中获取识别的文字并输出,但由于录音线程启动终端录音时需要一定的时间,因而,相关技术中的录音方案可能会导致录音延迟,同时,由于识别线程有处理延时的问题不能在抬起录音按键时立即结束当前的识别过程且识别线程又只有一个,因而,当用户在短时间内连续抬起又按下录音按键时,识别线程很可能由于尚未识别完上一个录音过程的录音数据而无法立即处理下一个录音过程,进而出现较为严重的识别滞后问题或者识别线程为了尽量减轻识别滞后的问题只能丢弃部分语音信息不进行识别处理,从而影响了用户语音输入体验,给用户带来很大不便。



技术实现要素:

本发明提供一种语音识别方法及装置,用以当检测到语音输入触发操作时,通过控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,不仅可以通过该录音线程录制本次录音过程中输入的第一语音信息,也可以在用户反复启动录音按键时,不需要反复启动录音线程,进而不需要反复启动终端录音,使得终端在该预设过程中一直处于录音状态,以尽可能避免录音线程延迟启动终端录音的问题,尽可能避免了相关技术中的录音延迟问题。

本发明提供一种语音识别方法,包括:

当检测到语音输入触发操作时,控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,以通过所述录音线程录制输入的第一语音信息;

启动第一识别线程,以通过所述第一识别线程将所述第一语音信息识别为第一文字信息。

在一个实施例中,所述方法还包括:

在所述预设语音输入法被启用的预设过程中,若再次检测到对预设录音键的录音触发操作,则启动第二识别线程;

通过第二识别线程将所述录音线程录制的第二语音信息识别为第二文字信息。

在一个实施例中,所述终端包括:至少两个识别线程,其中,所述至少两个识别线程至少包括所述第一识别线程和所述第二识别线程;

所述在所述预设语音输入法被启用的预设过程中,若再次检测到对预设录音键的录音触发操作,则启动第二识别线程,包括:

在所述预设语音输入法被启用的预设过程中,若再次检测到所述录音触发操作,则从所述至少两个识别线程中确定出空闲识别线程;

将所述空闲识别线程确定为所述第二识别线程。

在一个实施例中,所述在所述预设语音输入法被启用的预设过程中,若再次检测到对预设录音键的录音触发操作,则启动第二识别线程,包括:

当再次检测到所述录音触发操作时,确定所述第一识别线程是否已停止运行;

当所述第一识别线程没有停止运行时,启动所述第二识别线程,其中,所述第一识别线程与所述第二识别线程为不同的识别线程。

在一个实施例中,所述语音输入触发操作包括:启用所述预设语音输入法或者在所述预设语音输入法被启用后,首次对预设录音键的录音触发操作。

本发明还提供一种语音识别装置,包括:

控制模块,用于当检测到语音输入触发操作时,控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,以通过所述录音线程录制输入的第一语音信息;

第一启动模块,用于启动第一识别线程,以通过所述第一识别线程将所述第一语音信息识别为第一文字信息。

在一个实施例中,所述装置还包括:

第二启动模块,用于在所述预设语音输入法被启用的预设过程中,若再次检测到对预设录音键的录音触发操作,则启动第二识别线程;

识别模块,用于通过第二识别线程将所述录音线程录制的第二语音信息识别为第二文字信息。

在一个实施例中,所述终端包括:至少两个识别线程,其中,所述至少两个识别线程至少包括所述第一识别线程和所述第二识别线程;

所述第二启动模块包括:

第一确定子模块,用于在所述预设语音输入法被启用的预设过程中,若再次检测到所述录音触发操作,则从所述至少两个识别线程中确定出空闲识别线程;

第二确定子模块,用于将所述空闲识别线程确定为所述第二识别线程。

在一个实施例中,所述第二启动模块包括:

第三确定子模块,用于当再次检测到所述录音触发操作时,确定所述第一识别线程是否已停止运行;

启动子模块,用于当所述第一识别线程没有停止运行时,启动所述第二识别线程,其中,所述第一识别线程与所述第二识别线程为不同的识别线程。

在一个实施例中,所述语音输入触发操作包括:启用所述预设语音输入法或者在所述预设语音输入法被启用后,首次对预设录音键的录音触发操作。

本公开的实施例提供的技术方案可以包括以下有益效果:

当检测到语音输入触发操作时,通过控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,不仅可以通过该录音线程录制本次录音过程中输入的第一语音信息,也可以在用户反复启动录音按键时,不需要反复启动录音线程,进而不需要反复启动终端录音,使得终端在该预设过程中一直处于录音状态,以尽可能避免录音线程延迟启动终端录音的问题,尽可能避免了相关技术中的录音延迟问题。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1是根据一示例性实施例示出的一种语音识别方法的流程图。

图2是根据一示例性实施例示出的另一种语音识别方法的流程图。

图3是根据一示例性实施例示出的一种语音识别装置的框图。

图4是根据一示例性实施例示出的另一种语音识别装置的框图。

图5是根据一示例性实施例示出的又一种语音识别装置的框图。

图6是根据一示例性实施例示出的再一种语音识别装置的框图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

相关技术中,在使用语音输入法进行语音识别时,都是在录音按键被按下时,才开始录音,然后将录制的语音识别为文字后进行输出,而相关技术中的录音方案对应两个线程,一个录音线程和一个识别线程,具体的录音过程如下:当录音按键被按下后,启动语音输入法对应的录音线程和识别线程,而录音线程负责启动终端录音,识别线程负责从录音线程处取录音数据,并发送给服务器识别,待识别完毕后,从服务器中获取识别的文字并输出,但由于录音线程启动终端录音时需要一定的时间,因而,相关技术中的录音方案可能会导致录音延迟,同时,由于识别线程有处理延时的问题不能在抬起录音按键时立即结束当前的识别过程且识别线程又只有一个,因而,当用户在短时间内连续抬起又按下录音按键时,识别线程很可能由于尚未识别完上一个录音过程的录音数据而无法立即处理下一个录音过程,进而出现较为严重的识别滞后问题或者识别线程为了尽量减轻识别滞后的问题只能丢弃部分语音信息不进行识别处理,从而影响了用户语音输入体验,给用户带来很大不便,例如,如果用户在抬起录音按键后短时间内又立刻按下录音按键,则识别线程常常由于正在识别上一个录音过程所录制的语音信息而无法立刻处理下一个录音过程,直至识别线程将上一个录音过程的语音信息识别完成时,才开始准备处理下一个录音过程,从而导致录音线程被延迟启动而丢失部分语音信息,或者,即便录音线程在录音按键被按下时立即被启动,识别线程为了使识别过程尽可能与语音输入过程同步,也会从当前时刻接收到的语音信息开始识别而丢弃录音线程本次录制的部分语音信息或者如果录音线程从本次录制该语音信息的开端开始识别则会造成严重的识别滞后,如通常会有1、2秒的滞后等。

为了解决上述技术问题,本公开实施例提供了一种语音识别方法,该方法适用于信息输入程序、系统或装置中,其执行主体上安装有云知声、科大讯飞等能够将录制的语音信息转换为文字信息的预设语音输入法,如图1所示,该方法包括步骤S101和步骤S102,其中,

在步骤S101中,当检测到语音输入触发操作时,控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,以通过录音线程录制输入的第一语音信息;

该预设语音输入法可以是云知声、科大讯飞等能够将录制的语音信息转换为文字信息的输入法,而预设语音输入法被启用表示当前使用的输入法被切换至该预设语音输入法。

当检测到语音输入触发操作时,通过控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,不仅可以通过该录音线程录制本次录音过程中输入的第一语音信息,也可以在用户反复启动录音按键时,不需要反复启动录音线程,进而不需要反复启动终端录音,使得终端在该预设过程中一直处于录音状态,以尽可能避免录音线程延迟启动终端录音的问题,尽可能避免了相关技术中的录音延迟问题。

另外,语音输入触发操作可以包括:启用预设语音输入法,这样,录音线程可以自当前输入法切换至预设语音输入法时就被开启且在停留在该预设语音输入法的过程中,一直处于开启状态,而不受在该预设过程中用户对预设录音键的反复触发操作(其中,这些触发操作用于开启录音键或者关闭预设录音键,如可以是按下预设录音键或者抬起预设录音键等)的影响,当然,这种情况下,预设过程的时间起点为预设语音输入法被启用的时间,预设过程的时间终点为当前输入法由该预设语音输入法切换至其他非语音输入法的时间;

或者

语音输入触发操作还可以包括:在预设语音输入法被启用后,首次对预设录音键执行的录音触发操作,这样,录音线程可以在预设语音输入法被启用后用户第一次对该预设录音键执行录音触发操作(如按下预设录音键)时就一直处于开启状态,而不受用户对预设录音键的反复触发操作的影响,直至当前输入法切换为其他输入法等情况时才停止运行,而这种情况下,预设过程的时间起点为预设语音输入法被启用后,第一次接收到用户对预设录音键的录音触发操作的时间,而预设过程的时间终点仍然为当前输入法由该预设语音输入法切换至其他非语音输入法的时间。

在步骤S102中,启动第一识别线程,以通过第一识别线程将第一语音信息识别为第一文字信息。

在本次的录音过程中,可以启动第一识别线程将用户本次输入的第一语音信息识别为第一文字信息,以完成语音识别过程。

如图2所示,在一个实施例中,上述图1所示的方法还可包括步骤S201和步骤S202:

在步骤S201中,在预设语音输入法被启用的预设过程中,若再次检测到对预设录音键的录音触发操作,则启动第二识别线程;

该预设录音键可以是与安装有预设语音输入法的执行主体相连接的外设麦克风上的录音按键,或者

该预设录音键可以是与安装有预设语音输入法的执行主体相连接的外设键盘上的预设按键,或者

该预设录音键还可以是安装有预设语音输入法的执行主体上的虚拟录音按键。

由于终端在该预设过程中一直处于录音状态,一直能够录制用户所输入的语音信息,所以,录音触发操作用于表示用户期望开始一个有效的录音过程,且该录音触发操作可以是点击、长按该预设录音键,而再次检测到对预设录音键的录音触发操作表示在结束用户所期望的上一个有效录音过程后,再次对该预设录音键执行录音触发操作,如当录音触发操作为按下预设录音键时,再次检测到该录音触发操作可以为用户抬起该预设录音键后又按下该预设录音键。

另外,再次检测到对预设语音键的录音触发操作表示在该预设语音输入法被启用的预设过程中,用户第N次对该预设语音键执行录音触发操作,其中,N为大于或等于2的正整数。

在步骤S202中,通过第二识别线程将录音线程录制的第二语音信息识别为第二文字信息,当然,在启用第二识别线程将第二语音信息进行识别后,第一识别线程可能仍然尚未停止运行,仍然还在处理第一语音信息的录音结束和复位等操作,且第一识别线程在处理完第一语音信息之后会进行初始化,而这一处理过程与相关技术中的处理步骤类似,此处不再赘述。

在预设语音输入法被启用的预设过程中,若再次检测到录音触发操作,则说明用户希望开始下一个有效录音过程,因而,通过启动第二识别线程,可以使用另一个识别线程(即第二识别线程)将录音线程本次录制的完整的第二语音信息及时识别为第二文字信息,从而实现语音识别过程,同时避免了相邻两次录音过程均使用相同的识别线程(即第一识别线程)而导致第一识别线程由于尚未处理完上一个录音过程的第一语音信息而无法立即处理本次录音过程,进而避免出现较为严重的识别滞后问题或者尽量避免第一识别线程为了减轻识别滞后的问题只能丢弃第二语音信息开头的部分语音信息不对其进行识别处理。

另外,当再次接收到的录音触发操作为接收到的第N个录音触发操作时,第一语音信息为第N-1个录音触发操作(其中,录音触发操作用于指示本次录音过程开始即第N-1个录音过程开始)的接收时间至第N-1个录音停止操作(其中,录音停止操作用于指示本次录音过程结束即第N-1个录音过程结束,且当该录音触发操作为按下该预设录音键时,该录音停止操作可以为抬起该预设录音键)的接收时间这一时间段所录制的语音信息(当然,由于录音线程在预设过程中一直保持启动状态,因而,在第N-1个录音停止操作的接收时间至第N个录音触发操作的接收时间这一时间段内终端仍然处于录音状态,只是这一过程中的录音数据可能并不是用户需要的语音信息,而第一语音信息和第二语音信息才是用户需要的语音信息),而第二语音信息为第N个录音触发操作的接收时间至第N个录音停止操作的接收时间这一时间段所录制的语音信息,即第N个录音过程内的语音信息。

在一个实施例中,终端包括:至少两个识别线程,其中,至少两个识别线程至少包括第一识别线程和第二识别线程,例如:至少两个识别线程可能包括3个识别线程等;

通过在终端中开辟多个可与录音线程配合使用的识别线程,可以实现在该预设语音输入法被启用的预设过程中,如果用户反复对预设录音键执行录音触发操作以开启多个不同的有效录音过程,则可以在相邻两次录音过程中很方便地切换使用不同的识别线程。

上述图2所示的步骤S201可被执行为:

在预设语音输入法被启用的预设过程中,若再次检测到录音触发操作,则从至少两个识别线程中确定出空闲识别线程;

将空闲识别线程确定为第二识别线程。

在该预设语音输入法被启用的预设过程中,若再次检测到该录音触发操作,则可以根据至少两个识别线程中各识别线程是否处于空闲状态,自动地从至少两个识别线程中确定出空闲识别线程,并将该空闲识别线程确定为第二识别线程,从而使用该空闲识别线程及时地对本次录音过程进行识别处理,避免相邻两次录音过程使用相同的识别线程,而导致较为严重的识别滞后问题或者为了减轻识别滞后问题不得不丢弃本次录音过程录制的部分语音信息而不对其进行识别处理。

在一个实施例中,上述图2所示的步骤S201可被执行为:

当再次检测到录音触发操作时,确定第一识别线程是否已停止运行;

在确定第一识别线程是否已停止运行时,可以判断该第一识别线程的状态是否被标记为停止运行状态,当第一识别线程的状态被标记为停止运行状态时,说明第一识别线程已停止运行,当第一识别线程的状态没有被标记为停止运行状态时,说明第一识别线程没有停止运行。

当第一识别线程没有停止运行时,启动第二识别线程,其中,第一识别线程与第二识别线程为不同的识别线程,该预设时间间隔可以个性化设定。

当再次检测到对预设录音键的录音触发操作时,说明用户期望再次开始一个新的录音过程,只是上一个录音过程可能已处理完,即第一识别线程可能已停止运行,因而,不一定需要启用另一个识别线程,所以,需要判断下第一识别线程是否已停止运行,如果没有停止运行,则说明上一次录音过程并没有处理完,因而,为了避免第一识别线程无法及时处理本次录音过程,可以调用第二识别线程,以使第二识别线程运行后能够及时处理本次的录音过程,尽可能避免丢失本次录音过程的录音数据或者出现识别严重滞后的问题。

在一个实施例中,语音输入触发操作包括:启用至预设语音输入法或者在预设语音输入法被启用后,首次对预设录音键的录音触发操作。

语音输入触发操作可以包括:启用预设语音输入法或者在预设语音输入法被启用后,首次对预设录音键的录音触发操作,从而使得录音线程可以自当前输入法切换至预设语音输入法时就被开启且在停留在该预设语音输入法的过程中,一直处于开启状态,或者,可以使录音线程可以在预设语音输入法被启用后用户第一次对该预设录音键执行录音触发操作时就一直处于开启状态。

如图3所示,本发明还提供一种语音识别装置,包括:

控制模块301,被配置为当检测到语音输入触发操作时,控制终端中的录音线程在预设语音输入法被启用的预设过程中一直保持启动状态,以通过录音线程录制输入的第一语音信息;

第一启动模块302,被配置为启动第一识别线程,以通过第一识别线程将第一语音信息识别为第一文字信息。

如图4所示,在一个实施例中,上述图3所示的装置还可包括第二启动模块401和识别模块402:

第二启动模块401,被配置为在预设语音输入法被启用的预设过程中,若再次检测到对预设录音键的录音触发操作,则启动第二识别线程;

识别模块402,被配置为通过第二识别线程将录音线程录制的第二语音信息识别为第二文字信息。

如图5所示,在一个实施例中,终端包括:至少两个识别线程,其中,至少两个识别线程至少包括第一识别线程和第二识别线程;

上述图4所示的第二启动模块401可以包括第一确定子模块4011和第二确定子模块4012:

第一确定子模块4011,被配置为在预设语音输入法被启用的预设过程中,若再次检测到录音触发操作,则从至少两个识别线程中确定出空闲识别线程;

第二确定子模块4012,被配置为将空闲识别线程确定为第二识别线程。

如图6所示,在一个实施例中,上述图4所示的第二启动模块401可以包括第三确定子模块4013和启动子模块4014:

第三确定子模块4013,被配置为当再次检测到录音触发操作时,确定第一识别线程是否已停止运行;

启动子模块4014,被配置为当所述第一识别线程没有停止运行时,启动第二识别线程,其中,第一识别线程与第二识别线程为不同的识别线程。

在一个实施例中,语音输入触发操作包括:启用预设语音输入法或者在预设语音输入法被启用后,首次对预设录音键的录音触发操作。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

最后,本发明中的语音识别装置适用于终端设备。例如,可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1