1.本发明涉及人工智能技术领域,尤其涉及一种分布式唤醒方法及系统。
背景技术:2.分布式唤醒是针对目前多种人工智能(artificial intelligence,ai)语音设备同时部署在一个局部空间中,容易造成相同语音指令对多个ai语音设备同时操作的问题。特别是在分布式唤醒ai语音设备环境中,当通过用户唤醒语音唤醒ai语音设备时,如果多个ai语音设备同时响应,会造成一个语音指令中的同一用户唤醒语音唤醒多个ai语音设备的现象,导致用户无法实现真实操作目的。
3.目前为了解决多个ai语音设备同时被唤醒的问题,引入了分布式唤醒解决方案。常见的分布式唤醒解决方案,是根据唤醒时计算各个ai语音设备接收到的唤醒语音能量,各ai语音设备自动将相互之间能量大小进行比较,能量越大,则ai语音设备距离用户唤醒语音的声源处越近,从而应该优先唤醒。然而,在分布式唤醒ai语音设备场景中,很多ai语音设备在运行时会产生自噪声,一部分自噪声是ai语音设备的电机、机械摩擦造成的,在ai语音设备自身处没有办法直接获取这些噪声的参考信号。
4.这种简单基于能量判断的分布式唤醒计算,由于直接根据ai语音设备各自接收声音信号的语音能量来估计远近,有可能会导致接收自噪大、但实际离声源远的ai语音设备误判为距离声源近的ai语音设备,从而导致此时分布式唤醒误差极大。
技术实现要素:5.针对现有技术存在的问题,本发明实施例提供一种分布式唤醒方法及系统。
6.第一方面,本发明提供一种分布式唤醒方法,应用于第一语音设备,所述方法包括:根据用户唤醒语音确定第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号,所述估计参考信号根据各第二语音设备接收到的第二音频检测信号确定,所述第二音频检测信号是各第二语音设备根据用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号均包括所述第一语音设备运行时产生的噪声;根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定唤醒状态。
7.第二方面,本发明提供一种分布式唤醒方法,应用于第二语音设备,所述方法包括:根据用户唤醒语音确定第二音频检测信号;根据所述第二音频检测信号,确定估计参考信号;将所述估计参考信号发送至第一语音设备,以供所述第一语音设备根据所述估计参考信号和第一音频检测信号确定接收到的唤醒语音能量;所述第一音频检测信号是所述第一语音设备根据所述用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;所述唤醒语音能量是所述第一语音设备根据噪声估计能量确定的,用于确定所述第一语音设备的唤醒状态;所述噪声估计能量是所述第一语音设备根据所述估计参考信号和所述第一音频检测信号确定的。
8.第三方面,本发明提供一种分布式唤醒方法,应用于云端服务器,所述方法包括:接收由第一语音设备发送的第一音频检测信号,并同时接收由至少一个第二语音设备发送的第二音频检测信号;所述第一音频检测信号是所述第一语音设备根据用户唤醒语音确定的;所述第二音频检测信号是各第二语音设备根据所述用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号均包括所述第一语音设备运行时产生的噪声;根据各第二音频检测信号确定估计参考信号;根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;根据所述噪声估计能量,确定所述第一语音设备接收到的唤醒语音能量;将所述唤醒语音能量发送至所述第一语音设备;所述唤醒语音能量用于确定所述第一语音设备的唤醒状态。
9.第四方面,本发明提供一种第一语音设备,为第一语音设备,用于执行分布式唤醒方法,具体包括:第一模块,用于根据用户唤醒语音确定第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号,所述估计参考信号根据各第二语音设备接收到的第二音频检测信号确定,所述第二音频检测信号是各第二语音设备根据用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;第二模块,用于根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;第三模块,用于根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定唤醒状态。
10.第五方面,本发明提供一种分布式唤醒系统,包括:第一语音设备和至少一个第二语音设备;所述第二语音设备,用于根据用户唤醒语音确定第二音频检测信号;根据所述第二音频检测信号确定估计参考信号;将所述估计参考信号发送至所述第一语音设备;所述第一语音设备,用于根据用户唤醒语音确定第一音频检测信号,并接收所述估计参考信号,所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定所述第一语音设备的唤醒状态。
11.本发明提供的分布式唤醒方法及系统,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
附图说明
12.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
13.图1是本发明实施例提供的分布式唤醒方法的流程示意图之一;
14.图2是本发明实施例提供的分布式人工智能语音设备唤醒场景的示意图;
15.图3是本发明实施例提供的分布式唤醒方法的流程示意图之二;
16.图4是本发明实施例提供的分布式唤醒方法的流程示意图之三;
17.图5是本发明实施例提供的第一语音设备的结构示意图;
18.图6是本发明实施例提供的分布式唤醒系统的结构示意图;
19.图7是本发明实施例提供的电子设备的结构示意图。
具体实施方式
20.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.需要说明的是,在本发明实施例的描述中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
22.第一语音设备和第二语音设备均为ai语音设备,该ai语音设备例如为具有语音处理模块且具有语音识别、声纹识别或语义理解等功能的电子设备。ai语音设备分布式唤醒场景可以是指包含有多种ai语音设备同时部署在一个局部空间中的场景。第一语音设备在运行中会产生较大的噪声,而第二语音设备在运行中不会产生噪声。
23.在ai语音设备分布式唤醒场景中,包括第一语音设备和至少一个第二语音设备。由于第一语音设备产生噪声对自身有干扰,可以称为自噪声,且产生的噪声通过空气的传播成为对其他ai语音设备,例如第二语音设备产生干扰。
24.对于一些如智能音箱、留声机等声源性的第一语音设备产生的自噪声,可以分为两类。
25.一类自噪声是由第一语音设备自身播放音频的声音,如音响设备播放的音乐,对于这种自噪声,第一语音设备可以获取到参考信号,能做到自噪处理。
26.另一类是第一语音设备的电机、机械摩擦产生的自噪声,如智能洗衣机在运转的时候,会产生振动的声音,对于这种自噪声,第一语音设备没有参考信号,故无法做自噪处理。
27.由于运行中的第一语音设备接收到的声音大部分是自己的自噪声,在将自噪声部分去除干净后,才能够准确地估算出与用户唤醒语音的声源处的距离。因此,本发明实施例需要在去除ai语音设备自噪声影响前提下,估计出ai语音设备的分布式唤醒距离,分布式唤醒距离是ai语音设备距离用户唤醒语音的声源处的距离。
28.目前在已知的分布式唤醒方法中,由于没有考虑分布式ai语音设备自噪影响,在估算ai语音设备到用户唤醒语音的声源处的距离时,对自噪影响的鲁棒处理仍然困难,这极大地限制了分布式唤醒在ai语音设备场景的实际应用价值。
29.针对ai语音设备自噪条件下的分布式唤醒,现有技术大多数是对ai语音设备收到的信号进行混响估计、去混响、降噪处理,这些处理具有较高运算量,在实际应用中普遍受限、无法实施。
30.本发明没有这些复杂、高运算量计算,不影响获取信号的距离信息的特性,同时对环境影响具有鲁棒性,因此能够极大地提高分布式唤醒方法的应用范围,同时提高ai语音设备自噪条件下分布式唤醒的性能。
31.下面结合图1至图7描述本发明实施例所提供的分布式唤醒方法和系统。
32.图1是本发明实施例提供的分布式唤醒方法的流程示意图之一,应用于第一语音设备,如图1所示,包括但不限于以下步骤:
33.首先,在步骤s11中,根据用户唤醒语音确定第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号,所述估计参考信号根据各第二语音设备接收到的第二音频检测信号确定,所述第二音频检测信号是各第二语音设备根据用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号均包括所述第一语音设备运行时产生的噪声。
34.在ai语音设备分布式唤醒场景中,可以借助ai语音设备间的分布式互联,相互传递接收噪声的信息,每个ai语音设备之间互相通信,能相互获取当前场景中所有ai语音设备的状态。其中第一语音设备和第二语音设备例如为ai语音设备,第二语音设备能在所观测声音中分辨出作为自噪声声源的第一语音设备,从而有效帮助运行中的第一语音设备去除自噪声对自身判断分布式唤醒距离的影响。
35.其中,可以利用用户唤醒语音,对分布式ai语音设备唤醒场景中的ai语音设备进行唤醒。
36.估计参考信号是由每台第二语音设备观测第一语音设备所发出的自噪声时,根据第二音频检测信号所得到的。
37.图2是本发明实施例提供的分布式人工智能语音设备唤醒场景的示意图,如图2所示,在ai语音设备自噪声条件下,对于第一语音设备(即运行设备)接收到的声音信号,在声音信号中,除了用户发出的用户唤醒语音,还有第一语音设备(即运行设备)自身运行时所产生的噪声,即自噪声,这种自噪声对其他ai语音设备(即设备a和设备b)而言是来自于第一语音设备(即运行设备)的噪声,因此要准确判断出用户唤醒语音的声源处与ai语音设备的相对距离,需要在距离判断时将自噪声部分去除掉,才能有效地提高分布式唤醒距离的鲁棒性。而传统基于能量估计的分布式唤醒算法没有考虑自噪的影响,特别是设备运行时的自噪抑除问题。
38.具体地,对于任一第一语音设备,将采集到的第一时域信号转换为频域信号,作为第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号。
39.第一语音设备在多个预设时段内分别获取多个第一时域信号,并将每个第一时域信号进行快速傅里叶变换,转换成处于用户唤醒语音频段中的多个频域信号,作为第一音频检测信号,每个第一音频检测信号所处的频段均不同,每个频段均为用户唤醒语音频段的子频段。第一时域信号是由第一语音设备对自身发出的自噪声进行自观测所采集到的。
40.用户唤醒语音频段,主要是指用户唤醒语音的音频频谱范围。由于处于用户唤醒语音频段的自噪声会对ai语音设备造成干扰,故需要在ai语音设备所接收到的唤醒语音能量中,去除自噪声的能量。
41.其中,估计参考信号可以是第二语音设备直接发送至第一语音设备,也可以是第二语音设备发送至云端服务器,再由云端服务器转发至第一语音设备。
42.进一步地,在步骤s12中,根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量。
43.具体地,第一语音设备根据所有的估计参考信号和所述第一音频检测信号,可以更新该第一语音设备的第一滤波器系数,以达到更好的降噪效果。
44.第一语音设备还可以根据第一滤波器系数和第一音频检测信号,确定噪声估计能量。
45.进一步地,在步骤s13中,根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定唤醒状态。
46.具体地,第一语音设备根据所述噪声估计能量,确定第一语音设备的分布式唤醒距离。
47.每台第二语音设备在多个预设时段内分别获取多个第二时域信号,并将每个第二时域信号进行快速傅里叶变换(fast fourier transform,fft),转换成多个第二音频检测信号,每个第二音频检测信号均处于用户唤醒语音频段中不同的子频段。其中,预设时段的数量越大,导致第二音频检测信号数量越大,对应的子频段的数量越大,进而降噪的精度越高。
48.每台第二语音设备根据第二音频检测信号更新自身的第二滤波器系数,再根据第二音频检测信号和第二滤波器系数求得估计参考信号。
49.其中,噪声估计能量是在第一语音设备对接收到的处于用户唤醒语音频段上的声音能量中,通过更新第一滤波器系数减去部分的自噪声能量,因此更接近第一语音设备接收到用户唤醒语音的真实的能量。
50.此外,可以将每个ai语音设备的分布式唤醒距离进行比较,在所有ai语音设备的分布式唤醒距离中确定最小值,进而确定与最小值对应的ai语音设备被用户唤醒语音所唤醒,分布式ai语音设备唤醒场景中的其他ai语音设备则不被唤醒。
51.本发明实施例提供的分布式唤醒方法,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
52.可选地,根据用户唤醒语音确定第一音频检测信号,具体包括:
53.根据所述用户唤醒语音,获取第一时域信号;
54.将第一时域信号转换为频域信号,获取所述第一音频检测信号。
55.其中,第一时域信号可以在用户唤醒语音的长度(时间)内多个预设时段采集,各预设时段之间可以是连续的,各预设时段可以相等,也可以不相等。
56.每个预设时段内,在用户唤醒语音频段上,第一语音设备利用每个声音采集通道采集第一时域信号。其中,第一语音设备采用麦克风阵列,故声音采集通道的数量由设备的麦克风阵列决定的,例如有4个麦克,就会有4个声音采集通道。
57.具体地,第一语音设备在多个预设时段内分别获取多个第一时域信号,并将每个第一时域信号进行快速傅里叶变换,转换成多个频域信号,每个频域信号作为一个第一音频检测信号,每个第一音频检测信号所处的频段均不同。其中,预设时段的数量越大,导致第一音频检测信号对应的频段的数量越大,进而降噪的精度越高。
58.对于编号为s的第一语音设备,在多个第一音频检测信号中确定处于目标频段f上的第一音频检测信号x
s,f
(t),第一音频检测信号x
s,f
(t)的计算公式如下:
59.x
s,f
(t)=[x(1)
s,f
(t),x(2)
s,f
(t),...,x(m)
s,f
(t)]
k
;
[0060]
其中,m为编号为s第一语音设备的声音采集通道个数;f为目标频段,在对第一时域信号做快速傅里叶变换后,f表示频点;t为预设时段的顺序;k为预设时段的数量,t=0,1,
…
,k
‑
1;s为第一语音设备的编号。
[0061]
可选地,根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量,包括:
[0062]
根据各第二语音设备的估计参考信号和所述第一音频检测信号,更新所述第一语音设备的第一滤波器系数;
[0063]
根据更新后的第一滤波器系数和所述第一音频检测信号,确定所述噪声估计能量。
[0064]
如图2所示,运行设备由于运行产生对自身的自噪声,对设备a和设备b而言就是单纯的噪声。故运行设备为了能去除自噪声,需要其他设备如设备a和设备b对运行设备发出噪声的观测值作为参考。
[0065]
具体地,基于分布式唤醒网络,所有的第二语音设备将计算的估计参考信号发送至第一语音设备,第一语音设备根据所有的估计参考信号,获取参考信号统计值sn
f
(t),计算公式如下:
[0066]
sn
f
(t)=[sn
0,f
(t)
t
,sn
1,f
(t)
t
,
…
,sn
l
‑
1,f
(t)
t
]
t
;
[0067]
其中,sn
0,f
(t),
…
,sn
l
‑
1,f
(t)是每台第二语音设备发送的估计参考信号;l是用于观测第一语音设备的第二语音设备的数量;(x)
t
表示对任一矩阵或向量x取转置。
[0068]
可选地,根据以下公式更新所述第一语音设备的第一滤波器系数,所述公式具体为:
[0069]
w
s,f
(t)=(i+β
s,f
(t)sn
f
(t)sn
f
(t)
h
)w
s,f
(t
‑
1)
‑
β
s,f
(t)sn
f
(t)x
s,f
(t);
[0070]
其中,w
s,f
(t)为更新后的所述第一滤波器系数,i为单位矩阵;β
s,f
(t)为所述第一语音设备的第一滤波器更新函数;sn
f
(t)为参考信号统计值;(x)
h
表示对任一矩阵或向量x取共轭转置;w
s,f
(t
‑
1)为更新前的第一滤波器系数;x
s,f
(t)为目标频段f上第一音频检测信号;s为第一语音设备的编号;
[0071]
所述参考信号统计值是根据所述各第二语音设备的估计参考信号确定的。
[0072]
根据本发明实施例提供的分布式唤醒方法,第一语音设备利用第一频域信号和各第二语音设备的估计参考信号,更新自身的第一滤波器系数,进而达到排除噪声干扰的目的。
[0073]
可选地,根据更新后的第一滤波器系数和所述第一音频检测信号,确定所述噪声估计能量,包括:
[0074]
根据更新后的第一滤波器系数和所述第一音频检测信号,确定自噪声估计信号;
[0075]
将所述自噪声估计信号输入能量估计模型,得到所述噪声估计能量,其中,能量估计模型是利用自噪估计样本信号对深度神经网络模型训练得到,所述自噪估计样本信号带有自噪声能量标注。
[0076]
其中,自噪声估计信号可以是更新后的第一滤波器系数与所述第一音频检测信号
的乘积。
[0077]
在ai语音设备分布式唤醒场景中采集大量的自噪估计样本信号,并对每个自噪估计样本信号附上自噪声能量标注;进而利用带有自噪声能量标注的自噪估计样本信号对能量估计模型进行训练。
[0078]
其中,自噪声能量标注中包括带误差的自噪声能量标注和真实的自噪声能量标注。
[0079]
能量估计模型是深度神经网络模型(neural network,nnet),可以是基于长短期记忆网络(long short
‑
term memory,lstm)或卷积层构建的,能够将带误差的自噪声估计信号进行修正并输出噪声估计能量。
[0080]
噪声估计能量p
s
(f)的计算公式为:
[0081]
p
s
(f)=nnet(w
s,f
(t)x
s,f
(t));
[0082]
其中,nnet为能量估计模型;w
s,f
(t)为第一滤波器系数;x
s,f
(t)为目标频段f上第一音频检测信号;s为第一语音设备的编号。
[0083]
根据本发明实施例提供的分布式唤醒方法,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
[0084]
可选地,根据所述噪声估计能量,确定接收到的唤醒语音能量,具体包括:
[0085]
利用所述噪声估计能量,获取能量估计修正项;
[0086]
根据所述能量估计修正项,对采集语音能量进行修正,确定所述唤醒语音能量;其中,所述采集语音能量是对所述用户唤醒语音的频段上的声音信号进行采集得到的。
[0087]
第一语音设备根据用户唤醒语音频段内所有子频段上的噪声估计能量,获取能量估计修正项p
self
,具体计算公式如下:
[0088]
p
self
=10log
10
(∑
f
p
s
(f));
[0089]
其中,∑
f
p
s
(f)为对所有子频段上的噪声估计能量p
s
(f)进行求和;s为第一语音设备的编号。
[0090]
能量估计修正项p
self
用于对采集语音能量进行修正,进而得到去除了自噪影响的分布式唤醒距离。分布式唤醒距离为第一语音设备距离用户唤醒语音的声源处的距离。采集语音能量是第一语音设备对用户唤醒语音频段上的声音信号进行采集得到的。
[0091]
根据本发明实施例提供的分布式唤醒方法,第一语言设备借助分布式系统里面其他设备对发声设备自噪声进行联合估计,极大地提高分布式唤醒算法在人工智能语音设备的应用范围,准确性,特别是优化了自噪场景下分布式唤醒的准确性和鲁棒性。
[0092]
图3是本发明实施例提供的分布式唤醒方法的流程示意图之二,应用于第二语音设备,如图3所示,方法包括但不限于以下步骤:
[0093]
首先,在步骤s21中,根据用户唤醒语音确定第二音频检测信号。
[0094]
具体地,每台第二语音设备可以根据对第一语音设备发出自噪声的观测,采集第二时域信号,并将第二时域信号转换为频域信号,作为第二音频检测信号。每台第二语音设备在多个预设时段内分别获取多个第二时域信号,并将每个第二时域信号进行快速傅里叶变换,转换成处于用户唤醒语音频段中的多个第二音频检测信号,每个第二音频检测信号
所处的频段均不同。其中,预设时段的数量越大,导致第二音频检测信号对应的频段的数量越大,进而降噪的精度越高。
[0095]
进一步地,在步骤s22中,根据所述第二音频检测信号,确定估计参考信号。
[0096]
在ai语音设备分布式唤醒场景中,可以借助ai语音设备间的分布式互联,相互传递接收噪声的信息,每个ai语音设备之间互相通信,能相互获取当前场景中所有ai语音设备的状态。其中ai语音设备包括第一语音设备和第二语音设备,第二语音设备能在所观测声音中分辨出作为自噪声声源的第一语音设备,从而有效帮助运行中的第一语音设备去除自噪声对自身判断分布式唤醒距离的影响。
[0097]
其中,可以利用用户唤醒语音,对分布式ai语音设备唤醒场景中的ai语音设备进行唤醒。估计参考信号是由每台第二语音设备,根据观测第一语音设备发出的自噪声时,所采集到的第二时域信号所得到的。
[0098]
如图2所示,在ai语音设备自噪条件下,对于第一语音设备(即运行设备)接收到的声音信号,在声音信号中,除了用户发出的用户唤醒语音,还有第一语音设备(即运行设备)自身运行时所产生的噪声,即自噪声,这种自噪声对其他ai语音设备(即设备a和设备b)而言是来自于第一语音设备(即运行设备)的噪声,因此要准确判断出用户唤醒语音的声源处与ai语音设备的相对距离,需要在距离判断时将自噪声部分去除掉,才能有效地提高分布式唤醒距离的鲁棒性。而传统基于能量估计的分布式唤醒算法没有考虑自噪的影响,特别是设备运行时的自噪抑除问题。
[0099]
具体地,对于任一台第二语音设备,根据与第一语音设备对应的第二音频检测信号求得第二滤波器系数,再根据第二音频检测信号和第二滤波器系数求得估计参考信号。
[0100]
用户唤醒语音频段,主要是指用户唤醒语音的音频频谱范围。由于处于用户唤醒语音频段的自噪声会对ai语音设备造成干扰,故需要在ai语音设备所接收到的唤醒语音能量中,去除自噪声的能量。
[0101]
进一步地,在步骤s23中,将所述估计参考信号发送至第一语音设备,以供所述第一语音设备根据所述估计参考信号和第一音频检测信号确定接收到的唤醒语音能量;所述第一音频检测信号是所述第一语音设备根据所述用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;所述唤醒语音能量是所述第一语音设备根据噪声估计能量确定的,用于确定所述第一语音设备的唤醒状态;所述噪声估计能量是所述第一语音设备根据所述估计参考信号和所述第一音频检测信号确定的。
[0102]
具体地,至少一台第二语音设备,将估计参考信号发送至第一语音设备。
[0103]
第一语音设备根据这些估计参考信号计算噪声估计能量p
s
(f),再根据噪声估计能量p
s
(f)确定第一语音设备的分布式唤醒距离。
[0104]
此外,可以将每个ai语音设备的分布式唤醒距离进行比较,在所有ai语音设备的分布式唤醒距离中确定最小值,进而确定与最小值对应的ai语音设备被用户唤醒语音所唤醒,分布式ai语音设备唤醒场景中的其他ai语音设备则不被唤醒。
[0105]
对于编号为s的第一语音设备,在多个第一音频检测信号中确定处于目标频段f上的第一音频检测信号x
s,f
(t),第一音频检测信号x
s,f
(t),计算公式如下:
[0106]
x
s,f
(t)=[x(1)
s,f
(t),x(2)
s,f
(t),...,x(m)
s,f
(t)]
k
;
[0107]
其中,m为编号为s第一语音设备的声音采集通道个数;f为目标频段,在对第一时域信号做快速傅里叶变换后,f表示频点;t为预设时段的顺序;k为预设时段的数量,t=0,1,
…
,k
‑
1;s为第一语音设备的编号。
[0108]
如图2所示,运行设备由于运行产生对自身的自噪声,对设备a和设备b而言就是单纯的噪声。故运行设备为了能去除自噪声,需要其他设备如设备a和设备b对运行设备发出噪声的观测值作为参考。
[0109]
基于分布式唤醒网络,所有的第二语音设备将计算的估计参考信号发送至与第一语音设备,第一语音设备根据所有的估计参考信号,获取参考信号统计值sn
f
(t),计算公式如下:
[0110]
sn
f
(t)=[sn
0,f
(t)
t
,sn
1,f
(t)
t
,
…
,sn
l
‑
1,f
(t)
t
]
t
;
[0111]
其中,sn
0,f
(t),
…
,sn
l
‑
1,f
(t)是每台第二语音设备发送的估计参考信号;l是用于观测第一语音设备的第二语音设备的数量;(x)
t
表示对任一矩阵或向量x取转置。
[0112]
第一语音设备利用第一时域信号,以更新自身的第一滤波器系数,进而达到排除噪声干扰的目的。更新的计算公式如下:
[0113]
w
s,f
(t)=(i+β
s,f
(t)sn
f
(t)sn
f
(t)
h
)w
s,f
(t
‑
1)
‑
β
s,f
(t)sn
f
(t)x
s,f
(t);
[0114]
其中,w
s,f
(t)为更新后的第一滤波器系数,i为单位矩阵;β
s,f
(t)为第一语音设备的第一滤波器更新函数;sn
f
(t)为参考信号统计值;(x)
h
表示对任一矩阵或向量x取共轭转置;w
s,f
(t
‑
1)为更新前的第一滤波器系数;x
s,f
(t)为目标频段f上第一音频检测信号;s为第一语音设备的编号。
[0115]
在ai语音设备分布式唤醒场景中采集大量的自噪估计样本信号,并对每个自噪估计样本信号附上自噪声能量标注;进而利用带有自噪声能量标注的自噪估计样本信号对能量估计模型进行训练。
[0116]
其中,自噪声能量标注中包括带误差的自噪声能量标注和真实的自噪声能量标注。
[0117]
能量估计模型是深度神经网络模型,可以是基于lstm或卷积层构建的,能够将带误差的自噪声估计信号进行修正并输出噪声估计能量。
[0118]
噪声估计能量p
s
(f)的计算公式为:
[0119]
p
s
(f)=nnet(w
s,f
(t)x
s,f
(t));
[0120]
其中,nnet为能量估计模型;w
s,f
(t)为第一滤波器系数;x
s,f
(t)为目标频段f上第一音频检测信号;s为第一语音设备的编号。
[0121]
第一语音设备s根据所有子频段上的噪声估计能量,获取能量估计修正项p
self
,具体计算公式如下:
[0122]
p
self
=10log
10
(∑
f
p
s
(f));
[0123]
其中,∑
f
p
s
(f)为对所有频段上的噪声估计能量p
s
(f)进行求和;s为第一语音设备的编号。
[0124]
本发明实施例提供的分布式唤醒方法,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
[0125]
可选地,根据所述第二音频检测信号,确定估计参考信号,具体包括:
[0126]
根据所述第二音频检测信号,以更新第二滤波器系数;
[0127]
根据更新后的第二滤波器系数和所述第二音频检测信号,计算噪声信号;
[0128]
根据转换参数,将所述噪声信号映射为所述估计参考信号。
[0129]
每个预设时段内,在用户唤醒语音频段上,任一台第二语音设备利用每个声音采集通道采集第二时域信号。其中,所有的第二语音设备均采用麦克风阵列,故声音采集通道的数量由设备的麦克风阵列决定的,比如有4个麦克,就会有4通道数据。
[0130]
其中,第二时域信号可以在用户唤醒语音的长度(时间)内多个预设时段采集,各预设时段之间可以是连续的,各预设时段可以相等,也可以不相等。
[0131]
对于编号为l的第二语音设备,在多个第二音频检测信号中确定处于目标频段f上的第二音频检测信号x
l,f
(t),第二音频检测信号x
l,f
(t)的计算公式如下:
[0132]
x
l,f
(t)=[x(1)
l,f
(t),x(2)
l,f
(t),...,x(m)
l,f
(t)]
k
;
[0133]
其中,m为编号为l的第二语音设备的声音采集通道个数;f为目标频段,在对第二时域信号做快速傅里叶变换后,f表示频点;t为预设时段的顺序;k为预设时段的数量,t=0,1,
…
,k
‑
1;l为第二语音设备的编号。
[0134]
进一步地,在频点f上,第二语音设备l利用第二音频检测信号x
l,f
(t),以更新自身的第二滤波器系数,进而达到排除噪声干扰的目的。更新的计算公式如下:
[0135]
w
l,f
(t)=(i+α
l,f
(t)x
l,f
(t)
h
)w
l,f
(t
‑
1)
‑
α
l,f
(t)x
l,f
(t)d
l,f
(t)
h
;
[0136]
其中,w
l,f
(t)为更新后的第二滤波器系数;f为目标频段;i为单位矩阵;α
l,f
(t)为第二语音设备l的第二滤波器更新函数;x
l,f
(t)为第二语音设备l的在目标频段f上的第二音频检测信号;(x)h表示对任一矩阵或向量x取共轭转置;w
l,f
(t
‑
1)为更新前的第二滤波器系数;d
l,f
(t)为第二语音设备l的噪声参考向量,由第二语音设备在无声源语音环境下估计得到。
[0137]
第二语音设备l更新第二滤波器系数之后,即可得到在目标频段f上的估计参考信号sn
l,f
(t),计算公式如下:
[0138]
sn
l,f
(t)=δ
l,f
(t)w
l,f
(t)x
l,f
(t)+γ
l,f
(t);
[0139]
其中,δ
l,f
(t)为转换系数;w
l,f
(t)为第二滤波器系数;x
l,f
(t)为第二语音设备l的第二音频检测信号;γ
l,f
(t)为转换偏差;f为目标频段。
[0140]
转换参数包括转换系数δ
l,f
(t)及转换偏差γ
l,f
(t),可以将各个第二语音设备所计算出第一语音设备产生的噪声信号w
l,f
(t)x
l,f
(t),映射成估计参考信号。
[0141]
根据本发明提供的分布式唤醒方法,通过第二语音设备对噪声的观测,第二语音设备得到第二滤波器系数以对自身参数进行更新,从而达到降自噪声的目的,能够有效提高第二语音设备距离用户唤醒语音的声源处的准确性。
[0142]
图4是本发明实施例提供的分布式唤醒方法的流程示意图之三,应用于云端服务器,如图4所示,包括但不限于以下步骤:
[0143]
首先,在步骤s31中,云端服务器接收由第一语音设备发送的第一音频检测信号,并同时接收由至少一个第二语音设备发送的第二音频检测信号;所述第一音频检测信号是所述第一语音设备根据用户唤醒语音确定的;所述第二音频检测信号是各第二语音设备根据所述用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号均包括所述
第一语音设备运行时产生的噪声。
[0144]
估计参考信号是由每台第二语音设备,根据对第一语音设备发出的自噪声进行观测时,所采集到的第二时域信号所得到的。
[0145]
由于部分ai语音设备的处理能力有限,可以将采集到的信号经过简单处理后,上传至云端服务器,由云端服务器对数据进行运算处理后,将处理结果下发至相应的ai语音设备。
[0146]
具体地,云端服务器一方面接收由至少一台第二语音设备发送的第二音频检测信号,另一方面接收由第一语音设备发送的第一音频检测信号。
[0147]
用户唤醒语音频段,主要是指用户唤醒语音的音频频谱范围。由于处于用户唤醒语音频段的自噪声会对ai语音设备造成干扰,故需要在ai语音设备所接收到的采集语音能量中,去除自噪声的能量。
[0148]
对于任一ai语音设备,包括第一语音设备和第二语音设备,针对预设时段内,在接收到来自第一语音设备发出的自噪声中,利用每个声音采集通道获取与用户唤醒语音频段同频段的时域信号。其中,所有ai语音设备均采用麦克风阵列,故声音采集通道的数量由设备的麦克风阵列决定的,比如有4个麦克,就会有4通道数据。
[0149]
其中,对于编号为s的第一语音设备,在多个第一音频检测信号中确定处于目标频段f上的第一音频检测信号x
s,f
(t),获取第一音频检测信号x
s,f
(t)的计算公式如下:
[0150]
x
s,f
(t)=[x(1)
s,f
(t),x(2)
s,f
(t),...,x(m)
s,f
(t)]
k
;
[0151]
其中,m为编号为s第一语音设备的声音采集通道个数;f为目标频段,在对第一时域信号做快速傅里叶变换后,f表示频点;t为预设时段的顺序;k为预设时段的数量,t=0,1,
…
,k
‑
1;s为第一语音设备的编号。
[0152]
对于编号为l的第二语音设备,在多个第二音频检测信号中确定处于目标频段f上的第二音频检测信号x
l,f
(t),获取第二音频检测信号x
l,f
(t)的计算公式如下:
[0153]
x
l,f
(t)=[x(1)
l,f
(t),x(2)
l,f
(t),...,x(m)
l,f
(t)]
k
;
[0154]
其中,m为编号为l的第二语音设备的声音采集通道个数;f为目标频段,在对第二时域信号做快速傅里叶变换后,f表示频点;t为预设时段的顺序;k为预设时段的数量,t=0,1,
…
,k
‑
1;l为第二语音设备的编号。
[0155]
进一步地,在步骤s32中,根据各第二音频检测信号确定估计参考信号。
[0156]
具体地,在频点f上,云端服务器利用第二音频检测信号x
l,f
(t),以更新第二语音设备l的第二滤波器系数,进而达到排除噪声对第二语音设备l干扰的目的。更新的计算公式如下:
[0157]
w
l,f
(t)=(i+α
l,f
(t)x
l,f
(t)
h
)w
l,f
(t
‑
1)
‑
α
l,f
(t)x
l,f
(t)d
l,f
(t)
h
;
[0158]
其中,w
l,f
(t)为新的第二滤波器系数;f为目标频段;i为单位矩阵;α
l,f
(t)为第二语音设备l的第二滤波器更新函数;x
l,f
(t)为第二语音设备l的在目标频段f上的第二音频检测信号;(x)
h
表示对任一矩阵或向量x取共轭转置;w
l,f
(t
‑
1)为更新前的第二滤波器系数;d
l,f
(t)为第二语音设备l的噪声参考向量,由第二语音设备在无声源语音环境下估计得到。
[0159]
在云端服务器获取第二语音设备l的新的第二滤波器系数之后,将新的第二滤波器系数发送至第二语音设备l,以更新第二语音设备l的第二滤波器系数。
[0160]
在步骤s32之前,云端服务器还需要接收每台第二语音设备的第二滤波器更新函数、更新前的第二滤波器系数和噪声参考向量。
[0161]
进一步地,云端服务器利用第二音频检测信号和第二滤波器系,可得到第二语音设备l在目标频段f上的估计参考信号sn
l,f
(t),计算公式如下:
[0162]
sn
l,f
(t)=δ
l,f
(t)w
l,f
(t)x
l,f
(t)+γ
l,f
(t);
[0163]
其中,δ
l,f
(t)为转换系数;w
l,f
(t)为第二滤波器系数;x
l,f
(t)为第二语音设备l的第二音频检测信号;γ
l,f
(t)为转换偏差;f为目标频段。
[0164]
转换参数包括转换系数δ
l,f
(t)及转换偏差γ
l,f
(t),可以将各个第二语音设备所计算出第一语音设备产生的噪声信号w
l,f
(t)x
l,f
(t),映射成估计参考信号。
[0165]
进一步地,在步骤s33中,云端服务器根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量。
[0166]
云端服务器根据所有第二语音设备对第一语音设备观测的、目标频段f上的估计参考信号,获取参考信号统计值sn
f
(t),记为:
[0167]
sn
f
(t)=[sn
0,f
(t)
t
,sn
1,f
(t)
t
,
…
,sn
l
‑
1,f
(t)
t
]
t
;
[0168]
其中,sn
0,f
(t),
…
,sn
l
‑
1,f
(t)是在目标频段f上与每台第二语音设备对应的估计参考信号;l是观测第一语音设备的第二语音设备的数量;(x)
t
表示对任一矩阵或向量x取转置。
[0169]
另外,在云端服务器上,根据第一语音设备s的第一时域信号,以更新第一语音设备的第一滤波器系数,进而达到排除噪声对第一语音设备干扰的目的。
[0170]
第一语音设备s的第一滤波器系数,更新计算公式如下:
[0171]
w
s,f
(t)=(i+β
s,f
(t)sn
f
(t)sn
f
(t)
h
)w
s,f
(t
‑
1)
‑
β
s,f
(t)sn
f
(t)x
s,f
(t);
[0172]
其中,w
s,f
(t)为新的第一滤波器系数;f为目标频段;i为单位矩阵;β
s,f
(t)为第一语音设备的第一滤波器更新函数;sn
f
(t)为参考信号统计值;(x)
h
表示对任一矩阵或向量x取共轭转置;w
s,f
(t
‑
1)为更新前的第一滤波器系数;x
s,f
(t)为目标频段f上第一音频检测信号;s为第一语音设备的编号。
[0173]
在ai语音设备分布式唤醒场景中采集大量的自噪估计样本信号,并对每个自噪估计样本信号附上自噪声能量标注;进而利用带有自噪声能量标注的自噪估计样本信号对能量估计模型进行训练。
[0174]
其中,自噪声能量标注中包括带误差的自噪声能量标注和真实的自噪声能量标注。
[0175]
能量估计模型是深度神经网络模型(neural network,nnet),可以是基于长短期记忆网络(long short
‑
term memory,lstm)或卷积层构建的,能够将带误差的自噪声估计信号进行修正并输出噪声估计能量。
[0176]
在云端服务器上,噪声估计能量p
s
(f)的计算公式为:
[0177]
p
s
(f)=nnet(w
s,f
(t)x
s,f
(t));
[0178]
其中,nnet为能量估计模型;w
s,f
(t)为新的第一滤波器系数;x
s,f
(t)为第一语音设备在目标频段f上的第一音频检测信号;s为第一语音设备的编号。
[0179]
在步骤s33之前,云端服务器还需要接收第一语音设备的第一滤波器更新函数,以及更新前的第一滤波器系数。
[0180]
在步骤s33之后,云端服务器向每台第二语音设备发送与第二音频检测信号对应的第二滤波器系数,并向第一语音设备发送第一滤波器系数。
[0181]
进一步地,在步骤s34中,根据所述噪声估计能量,确定所述第一语音设备接收到的唤醒语音能量。
[0182]
具体地,云端服务器根据所有子频段上的噪声估计能量,获取能量估计修正项p
self
,具体计算公式如下:
[0183]
p
self
=10log
10
(∑
f
p
s
(f));
[0184]
其中,∑
f
p
s
(f)为对所有频段上的噪声估计能量p
s
(f)进行求和;s为第一语音设备的编号。
[0185]
能量估计修正项p
self
用于对采集语音能量进行修正,编号为s的第一语音设备进而得到去除了自噪影响的唤醒语音能量。采集语音能量是第一语音设备对用户唤醒语音频段上的声音信号进行采集得到的。
[0186]
在步骤s34之前,云端服务器还需要接收第一语音设备发送的采集语音能量。
[0187]
进一步地,在步骤s35中,将所述唤醒语音能量发送至所述第一语音设备;所述唤醒语音能量用于确定所述第一语音设备的唤醒状态。
[0188]
具体地,云端服务器将唤醒语音能量发送至所述第一语音设备,第一语音设备根据唤醒语音能量计算出第一语音设备的分布式唤醒距离,而各第二语音设备也根据观测的唤醒语音能量得到各自的分布式唤醒距离。可以将每个ai语音设备的分布式唤醒距离进行比较,进而确定最小距离所对应的ai语音设备,进而确定与最小值对应的ai语音设备被用户唤醒语音所唤醒,分布式ai语音设备唤醒场景中的其他ai语音设备则不被唤醒。
[0189]
本发明实施例提供的分布式唤醒方法,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
[0190]
图5是本发明实施例提供的第一语音设备的结构示意图,具体为第一语音设备,用于执行分布式唤醒方法,如图5所示,第一语音设备包括但不限于以下模块:
[0191]
第一模块501,用于根据用户唤醒语音确定第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号,所述估计参考信号根据各第二语音设备接收到的第二音频检测信号确定,所述第二音频检测信号是各第二语音设备根据用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;
[0192]
第二模块502,用于根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;
[0193]
第三模块503,用于根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定唤醒状态。
[0194]
在设备运行的过程中,第一模块501根据用户唤醒语音确定第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号,所述估计参考信号根据各第二语音设备接收到的第二音频检测信号确定,所述第二音频检测信号是各第二语音设备根据用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;第二模块502根据至少一个估计参考信号和所述第一音频检测信号,确定噪
声估计能量;第三模块503根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定唤醒状态。
[0195]
首先,第一模块501根据用户唤醒语音确定第一音频检测信号,并接收至少一个第二语音设备发送的估计参考信号,所述估计参考信号根据各第二语音设备接收到的第二音频检测信号确定,所述第二音频检测信号是各第二语音设备根据用户唤醒语音确定的;所述第一音频检测信号和所述第二音频检测信号均包括所述第一语音设备运行时产生的噪声。
[0196]
其中,可以利用用户唤醒语音,对分布式ai语音设备唤醒场景中的ai语音设备进行唤醒。
[0197]
估计参考信号是由每台第二语音设备观测第一语音设备所发出的自噪声时,根据第二音频检测信号所得到的。
[0198]
其中,估计参考信号可以是第二语音设备直接发送至第一语音设备,也可以是第二语音设备发送至云端服务器,再由云端服务器转发至第一语音设备。
[0199]
进一步地,第二模块502根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量。
[0200]
具体地,第一语音设备根据所有的估计参考信号和所述第一音频检测信号,可以更新该第一语音设备的第一滤波器系数,以达到更好的降噪效果。
[0201]
第一语音设备还可以根据第一滤波器系数和第一音频检测信号,确定噪声估计能量。
[0202]
进一步地,第三模块503根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定唤醒状态。
[0203]
具体地,第一语音设备根据所述噪声估计能量,确定第一语音设备的分布式唤醒距离。
[0204]
本实施例中的第一语音设备具体执行的步骤请参照前文中实施例的描述,在此不再赘述。
[0205]
本发明实施例提供的第一语音设备,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
[0206]
图6是本发明实施例提供的分布式唤醒系统的结构示意图,如图6所示,包括:
[0207]
第一语音设备601和至少一个第二语音设备602;
[0208]
所述第二语音设备601,用于根据用户唤醒语音确定第二音频检测信号;根据所述第二音频检测信号确定估计参考信号;将所述估计参考信号发送至所述第一语音设备;
[0209]
所述第一语音设备602,用于根据用户唤醒语音确定第一音频检测信号,并接收所述估计参考信号,所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定所述第一语音设备的唤醒状态。
[0210]
在系统运行的过程中,第二语音设备601根据用户唤醒语音确定第二音频检测信
号;根据所述第二音频检测信号确定估计参考信号;将所述估计参考信号发送至所述第一语音设备;第一语音设备602根据用户唤醒语音确定第一音频检测信号,并接收所述估计参考信号,所述第一音频检测信号和所述第二音频检测信号包括所述第一语音设备运行时产生的噪声;根据至少一个估计参考信号和所述第一音频检测信号,确定噪声估计能量;根据所述噪声估计能量,确定接收到的唤醒语音能量,并基于所述唤醒语音能量确定所述第一语音设备的唤醒状态。
[0211]
在ai语音设备分布式唤醒场景中,可以借助ai语音设备间的分布式互联,相互传递接收噪声的信息,每个ai语音设备之间互相通信,能相互获取当前场景中所有ai语音设备的状态。其中ai语音设备包括第一语音设备和第二语音设备,第二语音设备能在所观测声音中分辨出作为自噪声声源的第一语音设备,从而有效帮助运行中的第一语音设备去除自噪声对自身判断分布式唤醒距离的影响。
[0212]
此外,可以将每个ai语音设备的分布式唤醒距离进行比较,在所有ai语音设备的分布式唤醒距离中确定最小值,进而确定与最小值对应的ai语音设备被用户唤醒语音所唤醒,分布式ai语音设备唤醒场景中的其他ai语音设备则不被唤醒。
[0213]
其中,可以利用用户唤醒语音,对分布式ai语音设备唤醒场景中的ai语音设备进行唤醒。估计参考信号是由每台第二语音设备,根据观测第一语音设备发出的自噪声时,所采集到的第二时域信号所得到的。
[0214]
本发明实施例的分布式唤醒系统中的第一语音设备602和第二语音设备601具体执行的步骤请参照前文实施例中的描述,在此不再赘述。
[0215]
如图2所示,运行设备由于运行产生对自身的自噪声,对设备a和设备b而言就是单纯的噪声。故运行设备为了能去除自噪声,需要其他设备如设备a和设备b对运行设备发出噪声的观测值作为参考。
[0216]
本发明实施例提供的分布式唤醒系统,通过引入第二语音设备的估计参考信号,能够有效抑制第一语音设备自噪声对人工智能语音设备计算分布式唤醒距离估计值的影响,在运算量低的同时,在人工智能语音设备自噪场景中大幅提高分布式唤醒声源距离计算的准确性,进而提高分布式唤醒的性能和实际应用广泛性。
[0217]
需要说明的是,本发明实施例提供的分布式唤醒系统,在具体执行时,可以基于上述任一实施例所述的分布式唤醒方法来实现,对此本实施例不作赘述。
[0218]
图7是本发明实施例提供的电子设备的结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(communications interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行上述各个实施例提供分布式唤醒方法。
[0219]
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器
(read
‑
only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0220]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各实施例所提供的分布式唤醒方法。
[0221]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的分布式唤醒方法。
[0222]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0223]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。