一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

语音唤醒方法、电子设备和存储介质与流程

2022-03-09 06:54:20 来源:中国专利 TAG:


1.本发明属于语音数据处理技术领域,尤其涉及语音唤醒方法、电子设备和存储介质。


背景技术:

2.现有oneshot方案大多数为离线方案,离线方案通过wakeup(对音频数据进行实时检测,输出是否命中关键词)、vad(语音活动检测,voice activity detection)判断是否有人声来决策是否为oneshot(一种响应唤醒加命令一起连说的交互模式)模式,现有方案都使用了wakeup vad。
3.现有离线方案的方法步骤包括:vad实时缓存当前的语音音频;语音人声输入唤醒词,这时wakeup会触发唤醒;将唤醒之后音频送给vad,在规定的时候内检测是否可以触发vad的开始;如果在规定时间内触发了vad的开始,则说明是onehsot模式,否则可以判定为非oneshot模式。
4.发明人在实现本技术的过程中发现,现有离线方案的无法解决两个问题:人声输入唤醒词触发唤醒的时间点滞后和人声输入唤醒词触发唤醒的时间点提前。其中,人声输入唤醒词触发唤醒的时间点滞后导致唤醒之后的音频送vad无法触发vad的开始,导致用户实际为oneshot说法但没有命中oneshot模式;人声输入唤醒词触发唤醒的时间点提前导致唤醒之后的音频送vad提前触发vad的开始,导致用户实际为非oneshot说法但命中了oneshot模式。


技术实现要素:

5.本发明实施例提供一种语音唤醒方法和装置,用于至少解决上述技术问题之一。
6.第一方面,本发明实施例提供一种语音唤醒方法,包括:持续缓存用户音频流,判断所述用户音频流是否能够触发唤醒;响应于所述用户音频流触发唤醒,将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,其中,所述语音活性检测模块在检测到第二预设时间间隔的非人声后结束检测;在所述语音活性检测模块检测的同时实时将所述回退音频流发送至服务器端进行识别得到第一识别结果;判断所述第一识别结果中是否包含除唤醒词之外的其他人声;若所述第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式,其中,所述oneshot模式为响应唤醒词和命令词一起连说的模式。
7.第二方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的语音唤醒方法的步骤。
8.第三方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当
所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的语音唤醒方法的步骤。
9.本技术的方法、电子设备和存储介质通过将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,从而可以实现一定可以触发语音活性检测,进一步地,在语音活性检测模块检测的同时实时将回退音频流发送至服务器端进行识别得到第一识别结果,从而可以实现精准的判断是否进入oneshot模式。
附图说明
10.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
11.图1为本发明一实施例提供的一种语音唤醒方法的流程图;
12.图2为本发明一实施例提供的另一种语音唤醒方法的流程图;
13.图3为本发明一实施例提供的语音唤醒方法的一个具体示例的现有方案图;
14.图4为本发明一实施例提供的语音唤醒方法的一个具体示例的语音唤醒流程图;
15.图5是本发明一实施例提供的电子设备的结构示意图。
具体实施方式
16.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
17.请参考图1,其示出了本技术的语音唤醒方法一实施例的流程图,本实施例的语音唤醒方法可以适用于具备实时语音对话功能的终端、如智能音箱、车载终端、智能手机、平板、电脑等。
18.如图1所示,在步骤101中,持续缓存用户音频流,判断所述用户音频流是否能够触发唤醒;
19.在步骤102中,响应于所述用户音频流触发唤醒,将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,其中,所述语音活性检测模块在检测到第二预设时间间隔的非人声后结束检测;
20.在步骤103中,在所述语音活性检测模块检测的同时实时将所述回退音频流发送至服务器端进行识别得到第一识别结果;
21.在步骤104中,判断所述第一识别结果中是否包含除唤醒词之外的其他人声;
22.在步骤105中,若所述第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式,其中,所述oneshot模式为响应唤醒词和命令词一起连说的模式。
23.在本实施例中,对于步骤101,语音唤醒装置持续缓存用户音频流,判断用户音频流是否包含唤醒词,能否触发唤醒。
24.对于步骤102,语音唤醒装置响应于用户音频流触发唤醒,将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,其中,语音活性检测模块在检测到第二预设时间间隔的非人声后结束检测,例如,用户的音频流是“你好小驰播放音乐”,无论在这句话的那个时间点触发唤醒,都将回退触发唤醒之前的一个预设时间的音频继续语音活性检测。
25.对于步骤103,语音唤醒装置在语音活性检测模块检测的同时实时将回退音频流发送至服务器端进行识别得到第一识别结果,其中,在服务端进行识别时,能够将唤醒词过滤掉只返回命令词的识别结果。
26.对于步骤104,语音唤醒装置判断第一识别结果中是否包含除唤醒词之外的其他人声,其中,其他人声包括命令词。
27.对于步骤105,若第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式,其中,oneshot模式为响应唤醒词和命令词一起连说的模式,例如,若识别结果中不包含命令词,进入正常唤醒播报欢迎语或询问语等,若用户的音频流是“你好小驰播放音乐”,识别结果包含命令词“播放音乐”,将直接播放音乐和完成指令反馈,不播报欢迎语或询问语等。
28.本实施例的方法通过将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,从而可以实现一定可以触发语音活性检测,进一步地,在语音活性检测模块检测的同时实时将回退音频流发送至服务器端进行识别得到第一识别结果,从而可以实现精准的判断是否进入oneshot模式。
29.在上述实施例所述的方法中,在所述判断所述第一识别结果中是否包含除唤醒词之外的其他人声之后,所述方法还包括:
30.若第一识别结果中不包含除唤醒词之外的其他人声,进入非oneshot模式,其中,非oneshot模式即正常的唤醒模式,触发唤醒之后播报欢迎语或询问语等。
31.本实施例的方法通过判断第一识别结果中是否包含除唤醒词之外的其他人声,从而可以实现判断是否进入oneshot模式。
32.在一些可选的实施例中,所述服务器端返回的所述第一识别结果中不包含唤醒词,所述判断所述第一识别结果中是否包含除唤醒词之外的其他人声包括:
33.语音唤醒装置判断第一识别结果是否为空,其中,若为空,说明用户只说了唤醒词,没有说命令词。
34.在一些可选的实施例中,所述若所述第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式包括:
35.若第一识别结果不为空,进入oneshot模式。
36.在一些可选的实施例中,在所述判断所述第一识别结果是否为空之后,所述方法还包括:
37.若第一识别结果为空,进入非oneshot模式。
38.在一些可选的实施例中,在所述若所述第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式之后,所述方法还包括:
39.获取当前的oneshot交互模式,其中,oneshot交互模式包括继续监听和播报欢迎语,用于判断用户说出命令词的时间点在是不是触发唤醒之后。
40.进一步参考图2,其示出了本技术一实施例提供的另一种语音唤醒方法的流程图。该流程图主要是对上述实施例“获取当前的oneshot交互模式”之后的流程进一步限定的步骤的流程图。
41.如图2所示,在步骤201中,若所述oneshot交互模式为继续监听,则将所述用户音频流中未进行语音活性检测的后续音频流继续发送至所述语音活性检测模块进行检测,并同时将所述后续音频流发送至所述服务器进行识别得到第二识别结果;
42.在步骤202中,基于所述第二识别结果对所述用户音频流进行响应。
43.在本实施例中,对于步骤201,若oneshot交互模式为继续监听,则将用户音频流中未进行语音活性检测的后续音频流继续发送至语音活性检测模块进行检测,并同时将后续音频流发送至服务器进行识别得到第二识别结果,以“你好小驰,播放音乐”为例,若触发唤醒的时间点在播放音乐之前,那么就将触发唤醒的时间点之后的播放音乐进行语音活性检测,同时发送至服务器进行识别。
44.对于步骤202,语音唤醒装置基于第二识别结果对用户音频流进行响应,例如,若返回的识别结果中包含命令词,则基于命令词执行对应的操作,若返回的识别结果中不包含命令词,则播放欢迎语。
45.本实施例的方法通过将用户音频流中未进行语音活性检测的后续音频流继续发送至语音活性检测模块进行检测,并同时将后续音频流发送至服务器进行识别得到第二识别结果,从而可以实现精准的判断是否进入oneshot模式。
46.在一些可选的实施例中,在所述获取当前的oneshot交互模式之后,所述方法还包括:
47.若oneshot交互模式为播放欢迎语,则播放欢迎语。
48.需要说明的是,上述方法步骤并不用于限制各步骤的执行顺序,实际上,某些步骤可能会同时执行或者以与步骤限定的相反的顺序执行,本技术在此没有限制。
49.下面对通过描述发明人在实现本发明的过程中遇到的一些问题和对最终确定的方案的一个具体实施例进行说明,以使本领域技术人员更好地理解本技术的方案。
50.发明人在实现本技术的过程中发现现有技术中存在的缺陷主要是由以下原因导致的:
51.由于wakeup无法准确的在说完唤醒词之后触发唤醒消息,导致后期送vad的音频有可能带上唤醒词的音频,也有可能丢失后面真正的人声。
52.针对现有技术的缺陷通常采用的方法为加大唤醒算法的研究,尽量将唤醒消息的时间点与唤醒音频对应上,此解决方法的出发点对现有方案的修改与完善。
53.发明人还发现,之前的oneshot方案是纯离线的作法,不需要服务端的配合,在没有服务端配合的情况下无法完成。
54.本技术的方案主要从以下几个方面入手进行设计和优化:
55.请参考图3,其示出了本发明一实施例提供的语音唤醒方法的一个具体示例的现有方案图。
56.如图3所示,在触发唤醒之后将唤醒之后的音频送给vad做人声检测,如果在500ms的时间内触发vad的开始则说明本轮说法为oneshot,否则即认为本轮说法不是oneshot。
57.正常应该是b点触发唤醒,但现有技术无法做到很精准的在b点触发。
58.导致现有oneshot方案有两个缺陷:
59.如果在a点触发唤醒,那么送给vad的音频就会包含a点之后的音频,这种情况下如果客户只说了“你好小驰”,现有方案也会认为他是一个oneshot说法。
60.如果在c点触发唤醒,那么送给vad的音频就是c点之后的音频,这种情况下就算客户是说了“你好小驰,退出”,现有方案也会认为他不是一个oneshot说法。
61.本技术的方案是从一开始缓存音频,无论从abc哪个时间点触发唤醒,都将回退唤醒之前的2.5秒的音频送给vad,触发vad开始之后将音频送给云端识别,此时服务端会将唤醒词过滤掉只返回命令识别结果,假如识别返回的是空则说明客户只说了唤醒词,没说后面的命令,那么本轮认定为非oneshot模式。假如识别返回的是“退出”则说明客户在说完唤醒词之后还说了命令词,则本轮认定为oneshot模式。
62.本技术的方案从根本上解决了唤醒位置切不准的问题,用云端识别结果准确的判断用户是否为oneshot模式,解决了现有的2个缺陷。
63.请参考图4,其示出了本发明一实施例提供的语音唤醒方法的一个具体示例的语音唤醒流程图,其中,usegreeting是使用欢迎语;keelistening是继续监听,oneshottype是oneshot交互模式或者是oneshot类型;startvad是开始vad。
64.如图4所示,步骤1:用户语音输入“你好小驰”唤醒词,触发唤醒结果;
65.步骤2:内部启动vad引擎,启动对话引擎;
66.步骤3:送缓存音频给vad,此时送给vad的音频为“你好小驰”这时一定可以触发vad.begin(vad开始);
67.步骤4:发送vad.begin之后内核回退的音频给云端识别;
68.步骤5:发送vad.begin之后的音频给云端识别;
69.步骤6:触发vad.end(vad结束)之后,开始缓存音频;
70.步骤7:等待识别结果,如果识别结果为空,则判定本轮为非oneshot模式,走正常的唤醒流程;
71.步骤8:如果识别结果不为空,则判定本轮为oneshot模式;
72.步骤9:如果是oneshot模式,则判断当前的oneshot交互模式,如果是继续监听,则将步骤六缓存的音频继续送给vad做后面的识别,如果是播放欢迎语,则走正常的播放流程。
73.在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的语音唤醒方法;
74.作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:
75.持续缓存用户音频流,判断所述用户音频流是否能够触发唤醒;
76.响应于所述用户音频流触发唤醒,将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,其中,所述语音活性检测模块在检测到第二预设时间间隔的非人声后结束检测;
77.在所述语音活性检测模块检测的同时实时将所述回退音频流发送至服务器端进行识别得到第一识别结果;
78.判断所述第一识别结果中是否包含除唤醒词之外的其他人声;
79.若所述第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式,其中,所述oneshot模式为响应唤醒词和命令词一起连说的模式。
80.非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据语音唤醒装置的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至语音唤醒装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
81.本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项语音唤醒方法。
82.图5是本发明实施例提供的电子设备的结构示意图,如图5所示,该设备包括:一个或多个处理器510以及存储器520,图5中以一个处理器510为例。语音唤醒方法的设备还可以包括:输入装置530和输出装置540。处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器520为上述的非易失性计算机可读存储介质。处理器510通过运行存储在存储器520中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例语音唤醒方法。输入装置530可接收输入的数字或字符信息,以及产生与通讯补偿装置的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。
83.上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
84.作为一种实施方式,上述电子设备应用于语音唤醒装置中,用于客户端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
85.持续缓存用户音频流,判断所述用户音频流是否能够触发唤醒;
86.响应于所述用户音频流触发唤醒,将自触发唤醒的时间点回退第一预设时间间隔后得到的回退音频流发送给语音活性检测模块进行语音活性检测,其中,所述语音活性检测模块在检测到第二预设时间间隔的非人声后结束检测;
87.在所述语音活性检测模块检测的同时实时将所述回退音频流发送至服务器端进行识别得到第一识别结果;
88.判断所述第一识别结果中是否包含除唤醒词之外的其他人声;
89.若所述第一识别结果中包含除唤醒词之外的其他人声,进入oneshot模式,其中,所述oneshot模式为响应唤醒词和命令词一起连说的模式。
90.本技术实施例的电子设备以多种形式存在,包括但不限于:
91.(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。
92.(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。
93.(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
94.(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
95.(5)其他具有数据交互功能的电子装置。
96.以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
97.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
98.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献