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

语音交互设备的控制方法、服务器及语音交互设备与流程

2021-10-08 21:49:00 来源:中国专利 TAG:交互 语音 设备 器及 控制


1.本技术涉及智能语音交互技术领域,特别是涉及一种语音交互设备的控制方法、服务器及语音交互设备。


背景技术:

2.目前,智能语音交互设备,如智能音箱、带智能语音交互功能的智能电子设备等,在日常生产和生活中的应用日益广泛。
3.在实际使用中,智能语音交互设备通常处于待机状态,用户可以通过唤醒词唤醒智能语音交互设备。智能语音交互设备采集到用户发出的唤醒词,由待机状态切换至工作状态,可以识别用户发出的语音指令并与用户进行语音交互。
4.在较大的空间中,有可能会部署多个智能语音交互设备。例如,在家居场景中,如果家中的房间较多,可以在每个房间安装一个智能语音交互设备。通常多个智能语音交互设备使用相同的唤醒词。用户在说出唤醒词之后,多个智能语音交互设备可能会同时接收到唤醒词,导致多个智能语音交互设备同时被唤醒,同时与用户进行语音交互的混乱局面。因此,现有的语音交互设备控制方法在控制多个智能语音交互设备时,无法实现精确控制。


技术实现要素:

5.本技术提供了一种语音交互设备的控制方法、服务器及语音交互设备,在安装有多个语音交互设备的场景中,可以提高对语音交互设备进行控制的精确性。
6.第一方面,本技术实施例提供一种语音交互设备的控制方法,所述方法包括:
7.若在预设时长内接收到多个语音交互设备发送的目标用户的唤醒语音,确定每个语音交互设备的唤醒语音质量参数和距离参数;所述语音交互设备的距离参数是根据语音交互设备与所述目标用户之间的距离确定的;
8.根据每个语音交互设备的唤醒语音质量参数以及距离参数的加权和,确定每个语音交互设备对应的唤醒参数;
9.根据每个语音交互设备对应的唤醒参数,从所述多个语音交互设备中确定目标语音交互设备;
10.向所述目标语音交互设备发送第一唤醒指令。
11.本技术实施例提供的语音交互设备的控制方法,当接收到多个语音交互设备发送的目标用户的唤醒语音时,可以根据每个语音交互设备的唤醒语音质量参数以及语音交互设备与目标用户之间的距离的加权和确定每个语音交互设备对应的唤醒参数,根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定目标语音交互设备,并唤醒目标语音交互设备。当有多个语音交互设备同时接收到唤醒词时,通过上述过程,服务器可以根据语音交互设备的拾音效果以及目标用户与语音交互设备之间的距离,从多个语音交互设备中选择一个目标语音交互设备进行唤醒,减少语音交互设备被误唤醒的概率,避免同时唤醒多个语音交互设备而导致后续语音交互设备与目标用户之间语音交互过程的混乱,提
高对语音交互设备进行控制的精确性。
12.在一种可选的实施方式中,所述确定每个语音交互设备的唤醒语音质量参数包括:
13.根据每个语音交互设备对应的唤醒语音的信噪比和声强,确定每个语音交互设备的唤醒语音质量参数;或者,
14.接收每个语音交互设备发送的唤醒语音质量参数;所述唤醒语音质量参数是每个语音交互设备根据接收到的唤醒语音的信噪比和声强确定的。
15.在一种实施方式中,服务器接收到多个语音交互设备发送的唤醒语音之后,可以获取唤醒语音的信噪比和声强,根据语音交互设备对应的唤醒语音的信噪比和声强,确定每个语音交互设备的唤醒语音质量参数。其中,唤醒语音的信噪比可以体现语音交互设备的拾音性能,声强可以体现语音交互设备的与目标用户之间的距离,结合唤醒语音的信噪比和声强共同确定唤醒语音质量参数,可以更全面地反映语音交互设备的拾音效果,得到更准确的唤醒语音质量参数。
16.在另一种实施方式中,可以由语音交互设备确定自身采集到的唤醒语音的唤醒语音质量参数,服务器接收各个语音交互设备发送的唤醒语音质量参数,在服务器连接的语音交互设备较多时,可以明显减少服务器的计算量,节约服务器的计算资源,提高服务器的处理速度。
17.在一种可选的实施方式中,确定每个语音交互设备的距离参数,包括:
18.根据唤醒语音的声纹特征确定所述目标用户的身份信息;将监测到的与所述身份信息对应的定位标签的位置信息作为所述目标用户的位置信息;根据所述目标用户的位置信息以及每个语音交互设备的位置信息,确定每个语音交互设备与所述目标用户之间的距离;根据每个语音交互设备与所述目标用户之间的距离,确定每个语音交互设备的距离参数,或者,
19.接收每个语音交互设备发送的距离参数;所述距离参数是根据语音交互设备与所述目标用户之间的距离确定的,所述距离为语音交互设备根据麦克风阵列确定的声源的位置信息与语音交互设备自身的位置信息确定的。
20.在一种实施方式中,可以为每个用户佩戴定位标签,服务器通过定位标签确定每个用户的当前位置信息,并与用户的身份信息对应保存。在接收到唤醒语音后,根据唤醒语音的声纹特征可以确定目标用户的身份信息,将监测到的与该身份信息对应的定位标签的位置信息作为目标用户的位置信息,进而可以确定每个语音交互设备与目标用户之间的距离。该方法借助于定位标签的辅助,可以准确地确定每个语音交互设备与目标用户之间的距离。
21.在另一种实施方式中,每个语音交互设备可以根据麦克风阵列确定的声源的位置信息,根据声源的位置信息与语音交互设备自身的位置信息可以确定语音交互设备与目标用户之间的距离,计算出自身的距离参数发送服务器。在服务器连接的语音交互设备较多时,该方式可以明显减少服务器的计算量。
22.第二方面,本技术实施例提供一种语音交互设备的控制方法,所述方法包括:
23.接收目标语音交互设备发送的音频数据;
24.对所述音频数据进行语音识别和语义理解,得到所述音频数据对应的语义信息;
25.根据所述语义信息,确定接收所述音频数据的对端语音交互设备,并确定所述对端语音交互设备是否需要在基于所述音频数据进行播放后保持在工作状态;
26.若确定所述对端语音交互设备需要在播放所述音频数据后保持工作状态,则向所述对端语音交互设备发送第二唤醒指令,所述第二唤醒指令指示所述对端语音交互设备在基于所述音频数据进行播放后在设定时长内保持在工作状态,以及将所述音频数据发送至所述对端语音交互设备进行播放;
27.在接收到对端语音交互设备返回的回复语音数据之后,将所述回复语音数据发送至所述目标语音交互设备进行播放。
28.本技术实施例提供的语音交互设备的控制方法,在目标语音交互设备与对端语音交互设备之间进行音频数据传输时,可以根据音频数据的语义信息确定对端语音交互设备是否需要在播放音频数据后保持在工作状态,如果需要,向对端语音交互设备发送的第二唤醒指令将指示对端语音交互设备在播放音频数据后在设定时长内保持在工作状态。这样,用户在通过对端语音交互设备向目标语音交互设备回复消息时,无需通过唤醒词唤醒对端语音交互设备,方便多个用户使用不同空间的语音交互设备进行多轮对话。
29.第三方面,本技术实施例提供一种语音交互设备的控制方法,所述方法包括:
30.接收目标语音交互设备发送的音频数据;
31.对所述音频数据进行语音识别和语义理解,得到所述音频数据对应的语义信息;
32.根据所述语义信息,确定所述音频数据对应的回复音频数据,并确定所述目标语音交互设备是否需要在基于所述回复音频数据进行播放后保持在工作状态;
33.若确定所述目标语音交互设备需要在播放所述回复音频数据后保持工作状态,则向所述目标语音交互设备发送第二唤醒指令,所述第二唤醒指令指示所述目标语音交互设备在基于所述回复音频数据进行播放后在设定时长内保持在工作状态,以及将所述回复音频数据发送至所述目标语音交互设备进行播放。
34.本技术实施例提供的语音交互设备的控制方法,在接收到目标语音交互设备发送的音频数据后,可以根据音频数据的语义信息确定目标语音交互设备是否需要在播放回复音频数据后保持在工作状态,如果需要,向目标语音交互设备发送的第二唤醒指令将指示目标语音交互设备在播放回复音频数据后在设定时长内保持在工作状态。这样,用户再次与目标语音交互设备进行交互时,无需再通过唤醒词唤醒目标语音交互设备,方便用户与同一语音交互设备进行多轮交互。
35.第四方面,本技术实施例提供一种服务器,所述服务器被配置为执行上述第一方面至第三方面中的任意一种方法。
36.第五方面,本技术实施例提供一种语音交互设备,包括通讯组件、存储器和处理器。其中,通讯组件,用于与服务器进行通信;存储器,用于存储服务器运行时所使用的数据或程序;处理器,用于若采集到目标用户发出的唤醒语音,通过所述通讯组件将所述唤醒语音发送至服务器,以使所述服务器根据每个语音交互设备对应的唤醒参数,从所述多个语音交互设备中确定目标语音交互设备,并向所述目标语音交互设备发送唤醒指令;所述唤醒参数是根据语音交互设备的唤醒语音质量参数以及距离参数的加权和确定的;若通过所述通讯组件接收到所述服务器发送的唤醒指令,切换语音交互设备的状态至工作状态。
37.上述语音交互设备,在采集到目标用户发出的唤醒语音之后,并不立即切换至工
作状态,而是将唤醒语音发送至服务器,由服务器确定是否唤醒该语音交互设备。如果接收到服务器发送的唤醒指令,则切换至工作状态,如果未接收到服务器发送的唤醒指令,则不切换至工作状态,以减少被误唤醒的概率。在安装有多个语音交互设备的场合,可以避免同时唤醒多个语音交互设备而导致后续语音交互设备与目标用户之间语音交互过程的混乱。
38.在一种可选的实施方式中,所述处理器,还用于:
39.若采集到目标用户发出的唤醒语音,根据唤醒语音的信噪比和声强,确定唤醒语音质量参数;
40.通过所述通讯组件将所述唤醒语音质量参数发送至服务器。
41.第六方面,本技术实施例提供一种语音交互设备,包括通讯组件、存储器和处理器;
42.所述通讯组件,用于与服务器进行通信;
43.所述存储器,用于存储服务器运行时所使用的数据或程序;
44.所述处理器,用于通过所述通讯组件接收到所述服务器发送的第二唤醒指令,所述第二唤醒指令用于指示基于所述语音交互设备的音频数据或回复音频数据进行播放后在设定时长内保持在工作状态,所述回复音频数据来自于对端语音交互设备或基于所述语音交互设备的音频数据确定的,基于所述音频数据或回复音频数据进行播放后,在设定时长内保持在工作状态;若在设定时长内未采集到语音信号,切换所述语音交互设备的状态至待机状态。
45.上述语音交互设备,根据第二唤醒指令,在基于音频数据或回复音频数据进行播放后,在设定时长内保持在工作状态。这样,用户在与语音交互设备进行下一轮语音交互时,无需再通过唤醒词唤醒语音交互设备。
46.第七方面,本技术提供一种语音交互设备的控制方法,所述方法包括:
47.若采集到目标用户发出的唤醒语音,将所述唤醒语音发送至服务器,以使所述服务器根据每个语音交互设备对应的唤醒参数,从所述多个语音交互设备中确定目标语音交互设备,并向所述目标语音交互设备发送唤醒指令;所述唤醒参数是根据语音交互设备的唤醒语音质量参数以及距离参数的加权和确定的;
48.当接收到所述服务器发送的唤醒指令,切换语音交互设备的状态至工作状态。
49.第八方面,本技术提供一种语音交互设备控制系统,包括语音交互设备和服务器;
50.所述语音交互设备,用于采集到用户发出的唤醒语音,以及播报所述服务器发送的音频数据;
51.所述服务器,用于若在预设时长内接收到多个语音交互设备发送的目标用户的唤醒语音,确定每个语音交互设备的唤醒语音质量参数和距离参数;所述语音交互设备的距离参数是根据语音交互设备与所述目标用户之间的距离确定的;根据每个语音交互设备的唤醒语音质量参数以及距离参数的加权和,确定每个语音交互设备对应的唤醒参数;根据每个语音交互设备对应的唤醒参数,从所述多个语音交互设备中确定目标语音交互设备;向所述目标语音交互设备发送第一唤醒指令。
52.第九方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上述第一方面至第三方面中任意一种语音交互设备的控制方法的步骤。
53.第十方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上述第七方面的语音交互设备的控制方法的步骤。
54.第四方面至第十方面中任意一种实现方式所带来的技术效果可参见第一方面至第三方面中对应的实现方式所带来的技术效果,此处不再赘述。
附图说明
55.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
56.图1为本技术实施例的一种应用场景的示意图;
57.图2为本技术实施例提供的一种服务器的结构示意图;
58.图3为本技术实施例提供的一种语音交互设备的结构示意图;
59.图4为本技术实施例提供的一种音箱与服务器的交互图;
60.图5为本技术实施例提供的另一种音箱与服务器的交互图;
61.图6为本技术实施例提供的另一种音箱与服务器的交互图;
62.图7为本技术实施例提供的另一种音箱与服务器的交互图;
63.图8为本技术实施例提供的一种语音交互设备的控制方法的流程图;
64.图9为本技术实施例提供的另一种语音交互设备的控制方法的流程图;
65.图10为本技术实施例提供的一种蓝牙定位方法的示意图。
具体实施方式
66.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
67.在本技术实施例中,所用的词语“示例性”的意思为“用作例子、实施例或说明性”。作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
68.文中的术语“第一”、“第二”仅用于描述目的,而不能理解为明示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本技术实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
69.为了解决现有技术中用户说出唤醒词时,多个语音交互设备同时被唤醒的问题,本技术实施例提供了一种服务器、语音交互设备、语音交互设备的控制方法及系统。为更好地理解本技术实施例提供的技术方案,下面对本技术实施例提供的技术方案适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
70.图1示出了本技术实施例的一种应用场景,参见图1所示,该应用场景中包括服务
器100和多个语音交互设备200。该应用场景可以是家居场景、办公场景或生产车间场景。语音交互设备200可以进行音频播放,也可以采集用户的语音。服务器100是为语音交互设备200提供服务的本地服务器。语音交互设备200与服务器100之间可以通过有线连接方式或无线连接方式进行连接并传输数据。
71.例如,在家居场景中,如果家中的房间较多,可以在每个房间安装一个语音交互设备200,服务器100可以是家用小型服务器。所有语音交互设备200和服务器100处于同一局域网中,该局域网可以是有线网络或者无线网络。语音交互设备200和服务器100之间可以通过网络设备,如无线路由器等进行连接并实现通信。
72.通常多个语音交互设备200使用相同的唤醒词,现有技术中,用户在说出唤醒词之后,多个语音交互设备200可能会同时接收到唤醒词,导致多个语音交互设备200同时被唤醒,同时与用户进行语音交互的混乱局面。基于此,本技术实施例提供了一种服务器、语音交互设备、语音交互设备的控制方法及系统。在本技术实施例中,语音交互设备200通常处于待机状态。每个语音交互设备200采集到目标用户发出的唤醒语音,均会将唤醒语音发送至服务器100。如果服务器100在预设时长内接收到多个语音交互设备发送的目标用户的唤醒语音,该预设时长可以很短,例如可以小于或等于0.01s,相当于服务器100同时接收到多个语音交互设备发送的唤醒语音。服务器100将根据每个语音交互设备的唤醒语音质量参数以及距离参数的加权和,确定每个语音交互设备对应的唤醒参数,进而根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定一个目标语音交互设备,仅向目标语音交互设备发送唤醒指令。目标语音交互设备被唤醒,由待机状态切换至工作状态,其他语音交互设备仍处于待机状态,不会被唤醒。从而可以减少语音交互设备被误唤醒的概率,避免同时唤醒多个语音交互设备而导致后续语音交互设备与目标用户之间语音交互过程的混乱,提高对语音交互设备进行控制的精确性。
73.图2示出了本技术实施例提供了一种服务器的结构框图。如图2所示,该服务器100包括:通讯组件110、存储器120和处理器130。通讯组件110、存储器120和处理器130可以通过总线140连接。本领域技术人员可以理解,图2中示出的服务器100结构并不构成对服务器100的限定,可以包括比图示更多的部件,或者组合某些部件。下面结合图2对服务器100的各个构成部件进行具体的介绍:
74.通讯组件110可用于与语音交互设备进行通信,例如,接收语音交互设备发送的目标用户的唤醒语音及其它音频数据等。
75.存储器120可用于存储服务器运行时所使用的数据、程序和/或模块,如本技术实施例中的语音交互设备的控制方法对应的程序指令和/或模块,处理器130通过运行存储在存储器120的程序和/或模块,从而执行服务器100的各种功能应用以及数据处理,如本技术实施例提供的语音交互设备的控制方法。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个应用的应用程序等;存储数据区可存储根据服务器100的使用所创建的数据(比如每个音箱的位置信息)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
76.处理器130是服务器100的控制中心,利用各种接口和线路连接整个服务器100的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存
储器120内的数据,执行服务器100的各种功能和处理数据,从而对服务器100进行整体监控。
77.在一些示例性实施例中,处理器130,可以包括多个处理器。多个处理器可包括一个主处理器以及多个或一个子处理器。主处理器,用于在音箱设备预加载模式中执行语音交互设备200的一些初始化操作,和/或,在正常模式下数据的调取和处理操作,以实现对语音交互设备200的控制,如唤醒目标语音交互设备等。多个或一个子处理器,可用于协助主处理器进行距离或语音质量的计算等。
78.本发明实施例中不限定上述存储器120、处理器130和通讯组件110之间的具体连接介质。本发明实施例在图2中,存储器120、处理器130和通讯组件110之间通过总线140连接,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线140可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
79.图3示出了本技术实施例提供了一种语音交互设备的结构框图。图3所示的语音交互设备200仅是一个范例,并且语音交互设备200可以具有比图3中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
80.如图3所示,语音交互设备200包括:通信组件210、存储器220、处理器230、音频电路240、开关按键250、以及电源260等部件。
81.通信组件210用于与服务器进行通信,向服务器发送唤醒语音,以及接收服务器发送的唤醒指令等。通信组件210可以是wifi(wireless fidelity,电路无线保真)模块或射频模块等短距离无线传输模块。
82.存储器220可用于存储软件程序及数据。处理器230通过运行存储在存储器220的软件程序或数据,从而执行语音交互设备200的各种功能以及数据处理。存储器220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器220存储有使得终端设备200能运行的操作系统。本技术中存储器220可以存储操作系统及各种应用程序,还可以存储执行本技术实施例所述语音交互设备的控制方法的代码。
83.音频电路240、扬声器241、麦克风242可提供用户与终端设备200之间进行语音交互的音频接口。音频电路240可将接收到的音频数据转换后的电信号,传输到扬声器241,由扬声器241转换为声音信号输出。语音交互设备200还可配置音量按钮,用于调节声音信号的音量。另一方面,麦克风242将收集的声音信号转换为电信号,由音频电路240接收后转换为音频数据,再将音频数据通过通信组件210发送给服务器100,或者将音频数据输出至存储器220以便进一步处理。本技术实施例中麦克风242可以获取用户的语音。
84.处理器230是语音交互设备200的控制中心,利用各种接口和线路连接整个语音交互设备200的各个部分,通过运行或执行存储在存储器220内的软件程序,以及调用存储在存储器220内的数据,执行语音交互设备200的各种功能和处理数据。在一些实施例中,处理器230可包括一个或多个处理单元。本技术实施例中的处理器230可以运行操作系统、应用程序、执行服务器发送的操作指令以及本技术实施例的控制方法等。
85.语音交互设备200还可以包括为各个部件供电的电源260。电源260可以是市电电源,也可以是充电电池。电源可以通过电源管理系统与处理器230逻辑相连,从而通过电源管理系统实现管理充电、放电以及功耗等功能。语音交互设备200还可配置有开关按键250,用于切断或接通电源,或者说用于控制语音交互设备200的开机或关机,通常,语音交互设备200处于接通电源的状态,以随时接收用户发出的唤醒语音。
86.为了更便于理解,下文的实施例中,以语音交互设备是音箱为例进行说明。在其它实施例中,语音交互设备也可以是带智能语音交互功能的智能电子设备。
87.在一种实施例中,音箱与服务器之间的交互过程可以如图4和图5所示。为方便理解,图4和图5中仅示出了两个音箱:音箱a和音箱b。在实际使用中,音箱的数量可以多于两个。如图4所示,音箱与服务器之间的交互过程,包括如下步骤:
88.步骤s401,音箱a向服务器发送目标用户发出的唤醒语音。
89.步骤s402,音箱b向服务器发送目标用户发出的唤醒语音。
90.如图5所示,目标用户为用户a,音箱a和音箱b均处于待机状态,音箱a和音箱b监听用户发出的语音信号,将监听到的语音信号与唤醒词进行比对,当语音信号中与唤醒词不一致时,音箱a和音箱b不响应。当用户a说出唤醒词时,音箱a和音箱b均监听到用户a发出的语音信号与唤醒词一致,音箱a和音箱b均将用户a发出的语音信号作为唤醒语音发送至服务器。
91.步骤s403,服务器确定每个音箱的唤醒语音质量参数和距离参数,并根据每个音箱的唤醒语音质量参数以及距离参数的加权和,确定每个音箱对应的唤醒参数。
92.服务器在预设时长内接收到多个音箱发送的目标用户的唤醒语音,确定每个音箱的唤醒语音质量参数和距离参数。虽然音箱a和音箱b几乎是同时向服务器发送唤醒语音,但服务器接收到两个音箱发送的唤醒语音仍然可能会存在微小的时间差。如果服务器先接收到音箱a发送的唤醒语音,随后在0.001s之后,又接收到音箱b发送的唤醒语音,即可视为服务器在预设时长内分别接收到音箱a和音箱b发送的目标用户的唤醒语音。
93.如果服务器接收到多个音箱发送的目标用户的唤醒语音,可以根据每个音箱的唤醒语音质量参数以及距离参数的加权和,确定每个音箱对应的唤醒参数。例如,第i个音箱对应的唤醒参数h
i
可以通过如下公式表示:
94.h
i
=γz
i
βl
i
95.其中,z
i
表示第i个音箱的唤醒语音质量参数,γ表示唤醒语音质量参数对应的权重,l
i
表示第i个音箱的距离参数,β表示距离参数对应的权重。
96.在一种实施例中,可以选择离目标用户较近的音箱作为目标音箱,因此,可以适当调大音箱的距离参数对应的权重。
97.例如,在设定范围内设置有两台音箱,音箱a和音箱b。假设根据室内定位得到目标用户与音箱a之间的距离为1.2m,目标用户与音箱a之间的距离为1.5m。若设定距离最短的音箱对应的距离参数为1,则音箱a对应的距离参数为1,音箱b对应的距离参数为1.2m/1.5m=0.8。音箱的唤醒语音质量参数可以根据唤醒语音的信噪比确定,假设音箱a的唤醒语音的信噪比为-80db,音箱b的唤醒语音的信噪比为-60db。若设定唤醒语音的信噪比最大的音箱对应的唤醒语音质量参数为1,则音箱a对应的唤醒语音质量参数为1,音箱b对应的唤醒语音质量参数为-60db/-80db=0.75。为唤醒语音质量参数和距离参数分别设定权重,两个
权重之后为1。假设唤醒语音质量参数对应的权重为0.4,距离参数对应的权重为0.6,则音箱a对应的唤醒参数为0.6*1 0.4*1=1,音箱b对应的唤醒参数为0.6*0.75 0.4*0.8=0.77。
98.步骤s404,服务器根据每个音箱对应的唤醒参数,将音箱a确定为目标音箱。
99.音箱对应的唤醒参数越大,说明音箱的拾音效果越好或者音箱距离目标用户越近。因此,服务器可以选择唤醒参数最大的音箱作为目标音箱。如上述例子中,音箱a对应的唤醒参数为1,音箱b对应的唤醒参数为0.77,服务器确定的音箱a对应的唤醒参数大于音箱b对应的唤醒参数,可以选择音箱a作为目标音箱。
100.步骤s405,服务器向音箱a发送第一唤醒指令。
101.如图4和图5所示,音箱a距离用户a更近,因此对应的唤醒参数大于音箱b对应的唤醒参数,服务器将音箱a确定为目标音箱,通过通讯组件向音箱a发送第一唤醒指令以唤醒音箱a。
102.步骤s406,音箱a切换至工作状态。
103.音箱a接收到服务器发送的第一唤醒指令,切换至工作状态,与用户a进行语音交互。
104.在一些实施例中,服务器还可以向除目标音箱之外的其他音箱发送待唤醒指令,唤醒指令用于指示音箱维持待机状态。其他音箱接收到待唤醒指令,继续保持在待机状态。即,上述方法还包括:
105.步骤s407,服务器向音箱b发送待唤醒指令。
106.步骤s408,音箱b保持在待机状态。
107.在上述步骤s403中,服务器可以通过如下方式确定每个音箱的唤醒语音质量参数和距离参数。
108.(一)音箱的唤醒语音质量参数的确定方式可以如下:
109.在一种可选的实施例中,服务器可以根据每个音箱对应的唤醒语音的信噪比和声强,确定每个音箱的唤醒语音质量参数。例如,对于音箱a,服务器可以根据音箱a对应的唤醒语音的信噪比和声强,确定音箱a的唤醒语音质量参数。
110.具体地说,唤醒语音通常包括有效语音信号和其它噪声信号,如环境噪声信号等。唤醒语音的信噪比指有效语音信号与其它噪声信号的比例,唤醒语音的信噪比信息能够动态反映音箱采集音频的能力和音箱底噪的差异。在一种实施例中,服务器可以通过硬件分类出唤醒语音中的有效语音信号与其它噪声信号,然后确定二者的比例。在另一种实施例中,服务器中可以保存每个用户的声纹特征,这些声纹特征可以认为是不含噪音的正确的声纹特征。由于每个人的发声器官在尺寸和形态上各不相同,因此,每个人在讲话时的声纹图谱也会存在一定的差异。声纹特征是声纹所具备的特征参数,是使得声纹可量化的参数,不同的声纹特征可以区分不同的发声者。服务器接收到音箱a发送的唤醒语音,可以提取唤醒语音中的声纹特征,从保存的每个用户的声纹特征找到与唤醒语音中的声纹特征相匹配的目标声纹特征,根据查找到的目标声纹特征从唤醒语音中分离出有效语音信号与其它噪声信号,然后确定二者的比例,进而得到唤醒语音的信噪比。信噪比越高,说明其它噪声信号越小,音箱的拾音效果越好,也可以从侧面说明该音箱离用户越近。
111.声强指单位时间内通过垂直于声波传播方向的单位面积的平均声能,也可以称为
声音的响度。声强可以用声强级来表示,常用单位为分贝(db)。不同音箱距离同一用户的距离不同,采集到的唤醒语音的声强也不同,距离用户越近的音箱,采集到的唤醒语音的声强越高。服务器接收到音箱a发送的唤醒语音,可以通过计算单位面积的平均声能确定唤醒语音的声强。
112.得到音箱a的唤醒语音的信噪比和声强后,可以将唤醒语音的信噪比和声强的和或平均值,作为音箱a的唤醒语音质量参数;也可以根据唤醒语音的信噪比和声强的加权和,确定音箱a的唤醒语音质量参数。
113.在另一种可选的实施例中,音箱a的唤醒语音质量参数可以由音箱a确定后发送给服务器。服务器可以通过通讯组件接收每个音箱发送的唤醒语音质量参数。每个音箱可以根据自身接收到的唤醒语音的信噪比和声强确定自身的唤醒语音质量参数,其具体过程可以参照服务器确定音箱a的唤醒语音质量参数的过程执行,在此不再赘述。
114.在一些实施例中,为了使得到的信噪比数据更准确,音箱a在接收到唤醒语音之后,以及确定唤醒语音的信噪比之前,可以先判断唤醒语音是否为单通道语音信号。如果唤醒语音不是单通道语音信号,采用回波对消模块对唤醒语音进行回波对消以及语音增强,然后再确定唤醒语音的信噪比。
115.(二)音箱的距离参数的确定方式可以如下:
116.在一种可选的实施例中,服务器可以根据唤醒语音的声纹特征确定目标用户的身份信息,将监测到的与确定身份信息对应的定位标签的位置信息作为目标用户的位置信息,根据目标用户的位置信息以及每个音箱的位置信息,确定每个音箱与目标用户之间的距离,根据每个音箱与目标用户之间的距离,确定每个语音交互设备的距离参数。
117.具体地说,每个在设定范围内活动的用户均佩戴定位标签,定位标签可以嵌入或粘贴在人员衣物中。服务器可以实时监测每个定位标签的位置信息。每个定位标签具有唯一的编号,每个定位标签的编号绑定一个用户的身份信息。服务器将每个用户的身份信息与其佩戴的定位标签的编号对应进行保存。例如,在家庭应用场景中,用户的身份信息“妈妈”与定位标签的编号“001”对应保存,用户的身份信息“爸爸”与定位标签的编号“002”对应保存,用户的身份信息“奶奶”与定位标签的编号“003”对应保存,用户的身份信息“宝宝”与定位标签的编号“004”对应保存。
118.在一些实施例中,定位标签可以是rfid(radio frequency identification,无线射频识别)标签。在设定范围内还设置有多个读写器,读写器可以不断发射射频信号,定位标签可以接收到每个读写器发射的射频信号,并检测接收到的射频信号的信号强度值,将检测到的各个读写器的信号强度值发送至服务器。服务器中预先保存有定位标签在各个不同的坐标位置所能监测到的信号强度值,通过将定位标签检测到的各个读写器的信号强度值与在各个坐标位置所能监测到的信号强度值进行比对,可以确定定位标签的坐标位置,即确定定位标签的位置信息。
119.例如,设定范围内设置有四个读写器,服务器中保存有坐标位置与定位标签所能监测到的信号强度值的对应关系,该对应关系中包括[坐标a:(-30,-21,-70,-53);坐标b:(-40,-61,-79,-73);坐标c:(-30,-51,-72,-63)
……
]。在当前时刻,编号“001”的定位标签接收到四个读写器的信号强度值是(-40,-61,-79,-73),通过在对应关系中查找可以确定,编号“001”的定位标签接收到四个读写器的信号强度值与在坐标b处定位标签能监测到的
信号强度值一致,可以确定当前编号“001”的定位标签在坐标b处,由于身份信息“妈妈”与定位标签“001”相对应,说明“妈妈”佩戴着定位标签“001”,从而可以确定“妈妈”当前在坐标b处。
[0120]
在另一些实施例中,定位标签可以是蓝牙标签,可以发射蓝牙信号。蓝牙通信的传输速度快、功耗低、定位精度高,信号传输距离一般在1~100米之间,非常适合在家庭场景下进行室内定位。使用蓝牙技术进行定位,可以实现人员的米级定位。具体地,在设定范围内设置有多个蓝牙网关,用于采集蓝牙标签发射的蓝牙信号,蓝牙标签与蓝牙网关之间可以通过mqtt协议进行通信。蓝牙网关可以将接收到的蓝牙标签发射的蓝牙信号的信号强度值发送至服务器。服务器根据蓝牙网关采集的蓝牙标签的信号强度值确定蓝牙标签的坐标位置,即确定定位标签的位置信息。
[0121]
示例性地,服务器中设置有距离预测模块和位置预测模块。对于当前编号“001”的蓝牙标签,距离预测模块可以采用预先训练的深度神经网络,基于各个蓝牙网关采集的编号“001”的蓝牙标签的信号强度值确定该蓝牙标签与各个蓝牙网关之间的距离,位置预测模块用于根据预存的各个蓝牙网关的位置信息,以及该蓝牙标签与各个蓝牙网关之间的距离,确定编号“001”的蓝牙标签的坐标位置。
[0122]
例如,如图10所示,假设设定范围内设置有三个蓝牙网关,分别为网关a、网关b和网关c。距离预测模块确定编号“001”的蓝牙标签与网关a之间的距离为l
a
,与网关b之间的距离为l
b
,与网关c之间的距离为l
c
。由于与网关a之间的距离为l
a
并且与网关b之间的距离为l
b
的位置只有位置点m和位置点n。在位置点m和位置点n中,位置点n与网关c之间的距离为l
c
,因此,位置预测模块可以确定编号“001”的蓝牙标签在位置点n处,将位置点n的坐标位置作为编号“001”的蓝牙标签的坐标位置。
[0123]
在一些实施例中,通过上述方法,确定各个定位标签的位置信息后,服务器可以将每个用户的身份信息与其佩戴的定位标签的编号及位置信息对应进行保存。在另一些实施例中,服务器还可以将得到的每个用户的位置信息通过设定的方式推送至数据展示设备,以满足用户对人员位置进行查询的需求。
[0124]
上文中已经介绍,每个用户的声纹特征不同,因此服务器可以根据唤醒语音的声纹特征确定目标用户的身份信息,进而根据确定的身份信息找到目标用户的位置信息。例如,如果根据唤醒语音的声纹特征确定目标用户为“妈妈”,查找“妈妈”的位置信息,可以得到“妈妈”当前在坐标b处。对于音箱a,服务器中预先保存有音箱a的位置信息,音箱a的位置信息可以是音箱a所处的坐标位置,根据“妈妈”的坐标位置以及音箱a的坐标位置,可以计算得到音箱a与“妈妈”之间的距离,将音箱a与目标用户“妈妈”之间的距离的倒数或者反相关数作为音箱a的距离参数。
[0125]
在另一种可选的实施例中,音箱a的距离参数可以由音箱a确定后发送给服务器,具体地说,音箱a通过麦克风阵列接收唤醒语音,也可以通过麦克风阵列确定声源的位置信息。示例性地,麦克风阵列由多个麦克风组成,可以确定麦克风阵列中每两个麦克风接收到相同语音信号的时间差信息,并根据确定的时间差信息确定声源的位置信息。根据声源的位置信息与预先保存的音箱a自身的位置信息,可以确定音箱a与目标用户之间的距离,将音箱a与目标用户之间的距离的倒数或者反相关数作为音箱a的距离参数。
[0126]
服务器可以通过通讯组件接收每个音箱发送的距离参数。
[0127]
考虑到在现有技术中,两个以上的用户在使用不同空间的音箱进行多轮对话时,每次说话都需要使用唤醒词重新唤醒音箱,用户体验很差。为了解决用户使用不同空间的音箱进行多轮对话需要频繁使用唤醒词的问题,在本技术另一种实施例中,音箱与服务器之间的交互过程可以如图6所示,包括如下步骤:
[0128]
步骤s601,音箱a接收目标用户的语音信号,并将接收到的语音信号生成音频数据。
[0129]
音箱a被唤醒后,切换至工作状态,接收用户a发出的语音信号,并将接收到的语音信号生成音频数据。
[0130]
步骤s602,音箱a向服务器发送音频数据。
[0131]
步骤s603,服务器对接收到的音频数据进行语音识别和语义理解,得到音频数据对应的语义信息。
[0132]
服务器可以通过语音识别将音频数据转换为文本数据,然后采用语义识别模型,如模板匹配(aiml)将文本数据转换为语义信息。
[0133]
步骤s604,服务器根据得到的语义信息,确定接收该音频数据的对端音箱为音箱c,并确定对端音箱需要在播放音频数据后保持在工作状态。
[0134]
对端音箱为用于播放给音频数据的音箱。服务器根据得到的语义信息,确定接收该音频数据的对端音箱,并确定对端音箱是否需要在播放音频数据后保持在工作状态。
[0135]
服务器中保存有不同的语义向量对应的对端音箱,根据音频数据的语义向量,可以确定接收该音频数据的对端音箱。服务器中还可以保存不同的语义向量对应的工作状态持续信息,示例性地,语义向量对应的工作状态持续信息可以用“0”和“1”表示。如果某个语义向量对应的工作状态持续信息为“0”,表示接收该音频数据的音箱在播放音频数据后不需要保持在工作状态;如果某个语义向量对应的工作状态持续信息为“1”,表示接收该音频数据的音箱在播放音频数据后需要保持在工作状态。
[0136]
步骤s605,服务器向音箱c发送第二唤醒指令和音频数据。
[0137]
服务器在确定对端音箱需要在播放音频数据后保持工作状态,则向对端音箱发送第二唤醒指令,第二唤醒指令指示对端音箱在播放音频数据后在设定时长内保持在工作状态,并将音频数据发送至对端音箱进行播放。
[0138]
例如,通过图4所示的方法,用户a在卧室使用唤醒词唤醒音箱a,然后音箱a采集到用户a发出的语音“饭做好了吗”。音箱a生成“饭做好了吗”的音频数据,并将该音频数据发送至服务器。服务器对音频数据进行语音识别和语义理解,得到“饭做好了吗”的语义信息,在预先保存的语义信息与对端音箱的对应关系中,查找到“饭做好了吗”的语义信息对应的对端音箱为安装在厨房的音箱c,并且查找到“饭做好了吗”的语义信息对应的工作状态持续信息为“1”。服务器向音箱c发送第二唤醒指令和“饭做好了吗”的音频数据,第二唤醒指令指示音箱c在播放音频数据后在设定时长内保持在工作状态,该设定时长可以根据需要是设定,例如,可以设定为3分钟或5分钟。同时,服务器建立音箱a与音箱c之间的交互关系。
[0139]
步骤s606,音箱c播放接收到的音频数据,并在播放音频数据后在设定时长内保持在工作状态。
[0140]
音箱c将“饭做好了吗”的音频数据播报给正在厨房的用户c。音箱c在播放音频数据后在设定时长内保持在工作状态,可以采集用户c发出的回复语音,并根据采集到的回复
语音生成回复语音数据发送至服务器。服务器接收到音箱c返回的回复语音数据之后,根据建立的音箱a与音箱c之间的交互关系,将回复语音数据发送至音箱a进行播放。
[0141]
在一种实施例中,如果音箱c在设定时长内采集到用户c发出的回复语音“饭做好了”,音箱c生成“饭做好了”的回复语音数据,将该回复语音数据发送至服务器。服务器接收到该回复语音数据,对该回复语音数据进行语音识别和语义理解,得到“饭做好了”的语义信息,查找到“饭做好了”的语义信息对应的工作状态持续信息为“1”。服务器向音箱a发送第三唤醒指令和“饭做好了”的回复语音数据,第三唤醒指令指示音箱a在播放音频数据后在设定时长内保持在工作状态。音箱a将“饭做好了”的回复语音数据播报给用户a。音箱a在播放音频数据后在设定时长内保持在工作状态。
[0142]
如果音箱a在设定时长内又采集到用户a发出的语音“那就吃饭吧”,音箱a生成“那就吃饭吧”的回复语音数据,将该回复语音数据发送至服务器。服务器接收到该回复语音数据,对该回复语音数据进行语音识别和语义理解,得到“那就吃饭吧”的语义信息,查找到“那就吃饭吧”的语义信息对应的工作状态持续信息为“1”。服务器向音箱c发送第四唤醒指令和“那就吃饭吧”的回复语音数据,第四唤醒指令指示音箱c在播放音频数据后在设定时长内保持在工作状态。音箱c将“那就吃饭吧”的回复语音数据播报给用户c。音箱c在播放音频数据后在设定时长内保持在工作状态。
[0143]
如果音箱c在设定时长内又采集到用户c发出的语音“好的”,音箱c生成“好的”的回复语音数据,将该回复语音数据发送至服务器。服务器接收到该回复语音数据,对该回复语音数据进行语音识别和语义理解,得到“好的”的语义信息,查找到“好的”的语义信息对应的工作状态持续信息为“0”。服务器向音箱c发送第五唤醒指令和“好的”的回复语音数据,第五唤醒指令指示音箱c在播放音频数据后不需要保持在工作状态。此时,服务器可以删除之前建立的音箱a与音箱c之间的交互关系。音箱c接收到第五唤醒指令和“好的”的回复语音数据,将“好的”的回复语音数据播报给用户c,然后进入待机状态,用户a与用户c此次沟通过程结束。
[0144]
在另一种实施例中,音箱c播放音频数据或回复语音数据之后,在设定时长内保持在工作状态,如果音箱c在设定时长内未采集到回复语音,则音箱c进入待机状态,用户a与用户c此次沟通过程结束。
[0145]
在另一种实施例中,在上述步骤s604中,服务器也可以仅根据得到的语义信息,确定接收该音频数据的对端音箱,而不需要确定对端音箱是否需要在播放音频数据后保持在工作状态。服务器将音频数据发送给对端音箱,对端音箱在播放音频数据之后,自动在设定时长内保持在工作状态,如果在设定时长内未采集到回复语音,再进入待机状态。
[0146]
通过上述过程,在卧室的用户a可以通过音箱与在厨房的用户c完成如下多轮对话:
[0147]
a:饭做好了吗?
[0148]
c:饭做好了。
[0149]
a:那就吃饭吧。
[0150]
c:好的。
[0151]
上述沟通过程中,仅用户a在首轮对话时需要使用唤醒词唤醒音箱,在后续多轮对话过程中,均不需要用户再次使用唤醒词唤醒音箱,从而可以方便多个用户使用不同空间
的音箱进行对话,提升用户的使用体验。
[0152]
在一些实施例中,图6所示的步骤可以在采用图4所示的方法唤醒音箱a之后执行。
[0153]
考虑到在现有技术中,用户在与同一台音箱进行多轮交互时,每次说话也都需要使用唤醒词重新唤醒音箱,用户体验很差。为了解决用户在与同一台音箱进行多轮交互需要频繁使用唤醒词的问题,在本技术另一种实施例中,音箱与服务器之间的交互过程可以如图7所示,包括如下步骤:
[0154]
步骤s701,音箱a接收目标用户的语音信号,并将接收到的语音信号生成音频数据。
[0155]
步骤s702,音箱a向服务器发送音频数据。
[0156]
步骤s703,服务器对接收到的音频数据进行语音识别和语义理解,得到音频数据对应的语义信息。
[0157]
步骤s704,服务器根据得到的语义信息,确定该音频数据对应的回复音频数据,并确定音箱a需要在播放回复音频数据后保持在工作状态。
[0158]
服务器可以通过网络查询到该语义信息对应的回复文本,或者,服务器中保存有不同的语义信息对应的回复文本,可以在本地查找到该语义信息对应的回复文本。服务器根据得到的回复文本生成回复音频数据。
[0159]
服务器还可以根据得到的语义信息,确定音箱a是否需要在播放回复音频数据后保持在工作状态。例如,服务器中还可以保存不同的语义信息对应的工作状态持续信息,语义信息对应的工作状态持续信息的设置方式可以参照上文设置,在此不再赘述。
[0160]
步骤s705,服务器向音箱a发送第二唤醒指令和回复音频数据。
[0161]
服务器在确定音箱a需要在播放回复音频数据后保持工作状态之后,向音箱a发送第二唤醒指令,第二唤醒指令指示音箱a在播放回复音频数据后在设定时长内保持在工作状态,并将回复音频数据发送至音箱a进行播放。
[0162]
例如,通过图4所示的方法,用户a使用唤醒词唤醒音箱a,然后音箱a采集到用户a发出的语音“今天天气怎么样”。音箱a生成“今天天气怎么样”的音频数据,并将该音频数据发送至服务器。服务器对音频数据进行语音识别和语义理解,得到“今天天气怎么样”的语义信息,并根据得到的语义信息确定回复音频数据“今天天气晴朗”。服务器查找到上述语义信息对应的工作状态持续信息为“1”,向音箱a发送第二唤醒指令和“今天天气晴朗”的音频数据,第二唤醒指令指示音箱a在播放音频数据后在设定时长内保持在工作状态。
[0163]
步骤s706,音箱a播放接收到的回复音频数据,并在播放回复音频数据后在设定时长内保持在工作状态。
[0164]
音箱a将“今天天气晴朗”的音频数据播报给用户a。音箱a在播放音频数据后在设定时长内保持在工作状态。如果音箱a在设定时长内又采集到用户a发出的语音“明天天气怎么样”,音箱a生成“明天天气怎么样”的音频数据,将该音频数据发送至服务器。服务器接收到该音频数据,对该音频数据进行语音识别和语义理解,得到“明天天气怎么样”的语义信息,确定该语义信息对应的回复音频数据“明天天气多云”,并查找到该语义信息对应的工作状态持续信息为“1”。服务器向音箱a发送第三唤醒指令和“明天天气多云”的回复语音数据,第三唤醒指令指示音箱a在播放回复音频数据后在设定时长内保持在工作状态。音箱a将“明天天气多云”的回复音频数据播报给用户a。音箱a在播放音频数据后在设定时长内
保持在工作状态。如果音箱a在设定时长内未再采集到用户a的语音,则音箱a进入待机状态,音箱a与用户a的此次交互过程结束。
[0165]
在另一种实施例中,在上述步骤s704中,服务器也可以仅根据得到的语义信息,确定该音频数据对应的回复音频数据,而不需要确定音箱是否需要在播放回复音频数据后保持在工作状态。服务器将回复音频数据发送给音箱,音箱在播放音频数据之后,自动在设定时长内保持在工作状态,如果在设定时长内未采集到回复语音,再进入待机状态。
[0166]
通过上述过程,用户a可以与音箱a完成如下多轮交互:
[0167]
a:今天天气怎么样?
[0168]
c:今天天气晴朗。
[0169]
a:明天天气怎么样?
[0170]
c:明天天气多云。
[0171]
上述沟通过程中,仅用户a在首轮交互时需要使用唤醒词唤醒音箱a,在后续多轮对话过程中,均不需要用户再次使用唤醒词唤醒音箱a,从而可以方便用户与同一音箱进行多轮交互,提升用户的使用体验。
[0172]
在一些实施例中,图7所示的步骤可以在采用图4所示的方法唤醒音箱a之后执行。
[0173]
需要说明的是,上述各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0174]
基于同一发明构思,本发明实施例中还提供了一种语音交互设备的控制方法,该方法可以由服务器执行。由于该方法是本发明实施例服务器对应的方法,并且该方法解决问题的原理与该设备相似,因此该方法的实施可以参见上述服务器的实施,重复之处不再赘述。
[0175]
图8示出了本发明实施例提供的一种语音交互设备的控制方法的流程图,如图8所示,该方法具体包括如下步骤:
[0176]
步骤s801,若在预设时长内接收到多个语音交互设备发送的目标用户的唤醒语音,确定每个语音交互设备的唤醒语音质量参数和距离参数。
[0177]
其中,语音交互设备的唤醒语音质量参数是根据语音交互设备采集到的唤醒语音确定的。在一种实施例中,服务器可以根据每个语音交互设备对应的唤醒语音的信噪比和声强,确定每个语音交互设备的唤醒语音质量参数。在另一种实施例中,服务器可以通过通讯组件接收每个语音交互设备发送的唤醒语音质量参数;唤醒语音质量参数是每个语音交互设备根据接收到的唤醒语音的信噪比和声强确定的。
[0178]
语音交互设备的距离参数是根据语音交互设备与目标用户之间的距离确定的。在一种实施例中,服务器可以根据唤醒语音的声纹特征确定目标用户的身份信息;将监测到的与身份信息对应的定位标签的位置信息作为目标用户的位置信息;根据目标用户的位置信息以及每个语音交互设备的位置信息,确定每个语音交互设备与目标用户之间的距离;根据每个语音交互设备与目标用户之间的距离,确定每个语音交互设备的距离参数。在另一种实施例中,服务器可以通过通讯组件接收每个语音交互设备发送的距离参数;该距离参数是根据语音交互设备与目标用户之间的距离确定的,语音交互设备与目标用户之间的距离是语音交互设备根据麦克风阵列确定的声源的位置信息与语音交互设备自身的位置信息确定的。
[0179]
步骤s802,根据每个语音交互设备的唤醒语音质量参数以及距离参数的加权和,确定每个语音交互设备对应的唤醒参数。
[0180]
步骤s803,根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定目标语音交互设备。
[0181]
步骤s804,向目标语音交互设备发送第一唤醒指令。
[0182]
通过上述语音交互设备的控制方法,当服务器接收到多个语音交互设备发送的目标用户的唤醒语音时,可以根据每个语音交互设备的唤醒语音质量参数以及语音交互设备与目标用户之间的距离的加权和确定每个语音交互设备对应的唤醒参数,根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定目标语音交互设备,并唤醒目标语音交互设备。当有多个语音交互设备可能会同时接收到唤醒词时,通过上述过程,服务器可以根据语音交互设备的拾音效果以及目标用户与语音交互设备之间的距离,从多个语音交互设备中选择一个目标语音交互设备进行唤醒,减少语音交互设备被误唤醒的概率,避免同时唤醒多个语音交互设备而导致后续语音交互设备与目标用户之间语音交互过程的混乱,提高对语音交互设备进行控制的精确性。
[0183]
在一种可选的实施例中,在向目标语音交互设备发送唤醒指令之后,服务器执行的语音交互设备的控制方法还包括:
[0184]
接收目标语音交互设备发送的音频数据;
[0185]
对音频数据进行语音识别和语义理解,得到音频数据对应的语义信息;
[0186]
根据语义信息,确定接收音频数据的对端语音交互设备,并确定对端语音交互设备是否需要在播放音频数据后保持在工作状态;
[0187]
若确定对端语音交互设备需要在播放音频数据后保持工作状态,则向对端语音交互设备发送第二唤醒指令,第二唤醒指令指示对端语音交互设备在播放音频数据后在设定时长内保持在工作状态,以及将音频数据发送至对端语音交互设备进行播放;
[0188]
在接收到对端语音交互设备返回的回复语音数据之后,将回复语音数据发送至目标语音交互设备进行播放。
[0189]
在另一种可选的实施例中,在向目标语音交互设备发送唤醒指令之后,服务器执行的语音交互设备的控制方法还包括:
[0190]
接收目标语音交互设备发送的音频数据;
[0191]
对音频数据进行语音识别和语义理解,得到音频数据对应的语义信息;
[0192]
根据语义信息,确定音频数据对应的回复音频数据,并确定目标语音交互设备是否需要在播放回复音频数据后保持在工作状态;
[0193]
若确定目标语音交互设备需要在播放回复音频数据后保持工作状态,则向目标语音交互设备发送第二唤醒指令,第二唤醒指令指示目标语音交互设备在播放回复音频数据后在设定时长内保持在工作状态,以及将回复音频数据发送至目标语音交互设备进行播放。
[0194]
基于同一发明构思,本发明实施例中还提供了一种语音交互设备的控制方法,该方法可以由语音交互设备执行。由于该方法是本发明实施例语音交互设备对应的方法,并且该方法解决问题的原理与该设备相似,因此该方法的实施可以参见上述服务器的实施,重复之处不再赘述。
[0195]
图9示出了本发明实施例提供的一种语音交互设备的控制方法的流程图,如图9所示,该方法具体包括如下步骤:
[0196]
步骤s901,若采集到目标用户发出的唤醒语音,将唤醒语音发送至服务器,以使服务器根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定目标语音交互设备,并向目标语音交互设备发送唤醒指令。
[0197]
其中,唤醒参数是根据语音交互设备的唤醒语音质量参数以及距离参数的加权和确定的。
[0198]
步骤s902,若接收到服务器发送的唤醒指令,切换语音交互设备的状态至工作状态。
[0199]
通过上述语音交互设备的控制方法,在采集到目标用户发出的唤醒语音之后,并不立即切换至工作状态,而是将唤醒语音发送至服务器,由服务器确定是否唤醒该语音交互设备。如果接收到服务器发送的唤醒指令,则切换至工作状态,如果未接收到服务器发送的唤醒指令,则不切换至工作状态,以减少被误唤醒的概率。在安装有多个语音交互设备的场合,可以避免同时唤醒多个语音交互设备而导致后续语音交互设备与目标用户之间语音交互过程的混乱。
[0200]
在一种可选的实施例中,语音交互设备执行的语音交互设备的控制方法还包括:
[0201]
若采集到目标用户发出的唤醒语音,根据唤醒语音的信噪比和声强,确定唤醒语音质量参数;
[0202]
将唤醒语音质量参数发送至服务器。
[0203]
在另一种可选的实施例中,语音交互设备执行的语音交互设备的控制方法还包括:
[0204]
若接收到服务器发送的音频数据,播放音频数据,并在播放音频数据后的设定时长内保持在工作状态;
[0205]
若在设定时长内未采集到语音信号,切换语音交互设备的状态至待机状态。
[0206]
基于同一发明构思,本发明实施例中还提供了一种语音交互设备控制系统,该语音交互设备控制系统可以如图1所示,包括上文中记载的语音交互设备200和服务器100。
[0207]
其中,语音交互设备200,用于采集到用户发出的唤醒语音,以及播报服务器发送的音频数据。服务器100,用于若在预设时长内接收到多个语音交互设备发送的目标用户的唤醒语音,确定每个语音交互设备的唤醒语音质量参数和距离参数;语音交互设备的距离参数是根据语音交互设备与目标用户之间的距离确定的;根据每个语音交互设备的唤醒语音质量参数以及距离参数的加权和,确定每个语音交互设备对应的唤醒参数;根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定目标语音交互设备;向目标语音交互设备发送第一唤醒指令。
[0208]
在该语音交互设备控制系统中,当服务器接收到多个语音交互设备发送的目标用户的唤醒语音时,可以根据每个语音交互设备的唤醒语音质量参数以及语音交互设备与目标用户之间的距离的加权和确定每个语音交互设备对应的唤醒参数,根据每个语音交互设备对应的唤醒参数,从多个语音交互设备中确定目标语音交互设备,并唤醒目标语音交互设备。当有多个语音交互设备可能会同时接收到唤醒词时,通过上述过程,服务器可以根据语音交互设备的拾音效果以及目标用户与语音交互设备之间的距离,从多个语音交互设备
中选择一个目标语音交互设备进行唤醒,减少语音交互设备被误唤醒的概率,避免同时唤醒多个语音交互设备而导致后续语音交互设备与目标用户之间语音交互过程的混乱,提高对语音交互设备进行控制的精确性。
[0209]
在一些实施例中,上述语音交互设备控制系统还可以包括定位标签、读写器或蓝牙网关。具体地说,如果定位标签为rfid标签时,可以采用读写器与rfid标签配合进行定位,如果定位标签为蓝牙标签时,可以采用蓝牙网关与蓝牙标签配合进行定位。
[0210]
本技术实施例还提供一种计算机可读非易失性存储介质,包括程序代码,当程序代码在计算终端上运行时,程序代码用于使计算终端执行上述任意一种语音交互设备的控制方法的步骤。
[0211]
以上参照示出根据本技术实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本技术。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
[0212]
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本技术。更进一步地,本技术可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本技术上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。
[0213]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜