1.本发明主要涉及远场语音交互领域,特别是涉及一种提升远场语音交互性能的方法和远场语音交互系统。
背景技术:2.随着技术的不断发展,许多智能设备出现在人们的生活和工作中,比如智能音箱、智能汽车等。这些智能设备往往具有远场语音交互的功能,能够在复杂的环境中实现语音助手的功能。但是,由于用户所处的环境是复杂多变的,现有语音交互系统中的核心算法很难在所有的用户场景中均获得优异的性能。
3.行业内语音交互系统主要分为两种,一种是由前端的语音信号处理模块和后端的语音唤醒和识别模块组成,另一种是端到端的语音识别和唤醒系统。考虑到用户对唤醒时延以及稳定性的要求,唤醒模块一般部署在设备端。但是,由于嵌入式设备的算力有限,特别是相对于云端的算力差距较大,因此设备端的唤醒模块往往对唤醒模型的大小有所限制。
4.一部分厂商为了获得更好的语音交互性能,在语音识别模块采用一些自适应语音识别的方法,但是这种方法在噪声场景和本机播放场景中的性能仍需改善。
5.为了改善语音交互系统的效果,在远场语音交互方案设计中如果能够获取一些房间的空间声学参数,那么将大幅提升远场语音交互的性能。例如,在端到端的语音识别系统中进行语音数据集模拟时,可以指定相应的传递函数,或者在声学前端设计中可以获得最优的滤波器长度等。
6.中国专利cn107452372a提供了一种远场语音识别的训练方法,通过在房间内部转录的方法,从近场语音数据集中抽取一定量的进场语音数据,并采用重录的方式获取远场音频,再从远场音频中提取分段的远场语音特征,将远场语音特征和近场语音特征按照设定的比例进行混叠,最终基于混叠后的语音特征数据训练远场语音识别模型。
7.该专利通过对训练数据模拟的方式可以获取大量的混有房间噪声和设备混响的远场语音数据,进而训练出识别率较高的远场语音识别模型。这种方法对于提高远场语音识别性能具有一定的作用,但是,在远场语音的数据集模拟的过程中很难具有非常大的覆盖面,而每个房间由于尺寸、墙壁反射系数等的区别其空间声学参数差异较大,因此,这种转录方法不可能覆盖大部分场景。此外,语音识别的神经网络模型泛化能力能否在所有的声学环境中获得优异的结果也缺乏保障和数学解释。
8.中国专利cn109523999a提供了一种提升远场语音识别的前端处理方法和系统,通过对房间冲激响应信号进行计算,得到早期混响信号与晚期混响信号的分割时间点,将直达声信号和早期混响信号与语音库中干净语音信号在时域上进行卷积,得到时域目标信号;将时域目标信号和时域混合信号中除时域目标信号外的其他信号分别进行计算,得到目标信号能量和其他信号能量,通过目标信号能量和其他信号能量得到理想比值掩蔽;将时域混合信号转换成频域混合信号后,将频域混合信号的幅值和理想比值掩蔽相乘,再使
用频域混合信号的相位,得到重构信号。
9.该专利通过在前端处理的过程中去除晚期混响来提升语音识别率,该方法在语音交互过程中具有一定的作用,但是该方法在高混响场景具有一定的劣势。由于高混响场景下干净的语音信号和带有混响声的语音信号频域相位差异明显,简单的通过增益系数乘上原始信号的幅度,然后乘上原始信号的相位,并不能够完美的恢复出干净的语音。并且,这种方法会带来非线性失真以及音乐噪声,对于依赖语音特征的语音识别模型而言,会产生一定的识别率下降。
10.针对上述问题,本发明提出一种提升远场语音交互性能的方法,利用智能设备在声波配网阶段发出的音频信号,计算所处空间的空间声学参数,并基于此优化远场语音交互的性能。本发明利用智能设备初始阶段的声波配网获取智能设备所处空间的空间声学参数,通过将空间声学测试与配网过程相结合,便于用户操作。此外,本发明根据空间声学参数,更新设备的声学前端语音处理算法,可以提升前端语音处理的数学建模的准确性。同时,根据空间声学参数更新云端的语音识别引擎,可以提升声学模型训练数据集的匹配度。
技术实现要素:11.针对上述问题,本发明的目的在于提供一种提升远场语音交互性能的方案。
12.在本发明的一方面,提供一种提升远场语音交互性能的方法,其特征在于,包括:循环n次执行以下步骤s1至s6,其中,n为不小于2的自然数:
13.步骤s1:在配网过程中,接收预定时间长度的配网声波信号;步骤s2:基于前端语音处理参数,对配网声波信号进行前端语音处理;其中,前端语音处理包括回声消除,前端语音处理参数包括回声消除滤波器的长度;步骤s3:计算当前循环内步骤s2中获得的经过前端语音处理的配网声波信号的能量值en;步骤s4:判断当前循环是否为第一次循环,若是,则基于步骤s1中接收的配网声波信号,计算得到初始空间声学参数p
initial
,并转至步骤s5;若否,则直接转至步骤s5;步骤s5:结合预设的上限裕度和下限裕度,确定下一次循环中的空间声学参数pn+1的数值,使得pn+1的数值满足(p
initial-m1)≤pn+1≤(p
initial
+m2),其中n为当前循环的序号,m1为预定的下限裕度,m2为预定的上限裕度;步骤s6:利用步骤s5中得到的空间声学参数pn+1,更新前端语音处理参数,用于下一次循环;在n次循环结束后,转至步骤s7:确定n次循环中获得的配网声波信号能量值中的最小值emin,并将最小值emin所对应的循环中的空间声学参数作为最终的空间声学参数。可选地,sta设备根据接收到的由单个ap设备发送的信标帧或探测响应帧,获取单个ap设备的csi扫描能力信息。
14.优选地,前端语音处理参数还包括波束形成滤波器的长度。
15.可选地,步骤s2包括:判断当前循环是否为第一次循环,若是,则基于前端语音处理参数的初始值,对配网声波信号进行前端语音处理;若否,则基于上一次循环中更新的前端语音处理参数,对配网声波信号进行前端语音处理。
16.可选地,步骤s3还包括,判断当前循环是否为第n次循环,若是,则转至步骤s7。
17.优选地,将最终的空间声学参数传输至存储在本地或云端的语音识别引擎中,语音识别引擎从多个声学模型中,选择由与最终的空间声学参数最接近的数据集训练得到的声学模型作为远场语音识别模型。
18.优选地,步骤s5中采用逐步递增的方法确定下一次循环中的空间声学参数p
n+1
的
数值,使得p
n+1
的数值满足(p
initial-m1)≤pn≤p
n+1
。
19.优选地,步骤s5中采用逐步递减的方法确定下一次循环中的空间声学参数p
n+1
的数值,使得p
n+1
的数值满足p
n+1
≤pn≤(p
initial
+m2)。
20.优选地,步骤s5中采用固定步长逐步求精的方法确定下一次循环中的空间声学参数p
n+1
的数值,根据预定的下限裕度m1和步长s,确定下一次循环中的空间声学参数p
n+1
的数值,其中p
n+1
=p
initial-m1+(n-1)*s;或者根据预定的上限裕度m2和步长s,确定下一次循环中的空间声学参数p
n+1
的数值,其中p
n+1
=p
initial
+m2–
(n-1)*s。
21.可选地,步骤s4中计算得到初始空间声学参数p
initial
包括:采用稳态噪声切断法计算初始空间声学参数p
initial
。
22.可选地,在步骤s6中,更新前端语音处理参数包括:将回声消除滤波器的长度更新为与步骤s5中得到的空间声学参数成正相关的值。
23.进一步可选地,在步骤s6中,更新前端语音处理参数还包括:将波束形成滤波器的长度更新为与步骤s5中得到的空间声学参数成正相关的值。
24.优选地,第一次循环中计算得到的配网声波信号能量值e1对应于空间声学参数p1,其中,p1根据前端语音处理参数的初始值确定。
25.在本发明的另一方面,提供一种远场语音交互系统,其包括:
26.信号采集模块,用于在配网过程中接收配网声波信号;参数计算模块,用于基于配网声波信号,确定空间声学参数;回声消除模块,用于采用回声消除算法对配网声波信号进行回声消除处理;模型选择模块,用于基于空间声学参数,选择远场语音识别模型;语音识别模块,用于接收经过回声消除模块处理的配网声波信号,并基于模型选择模块选择的远场语音识别模型,对语音信息进行识别分析;其中,回声消除模块从参数计算模块获取空间声学参数,并根据空间声学参数确定回声消除滤波器的长度。
27.可选地,远场语音交互系统还包括能量计算模块,用于计算配网声波信号的能量值;其中,能量计算模块从回声消除模块获取回声消除滤波器长度以及经过回声消除模块处理的配网声波信号,计算配网声波信号的能量值。
28.可选地,信号采集模块为麦克风阵列;远场语音交互系统还包括波束形成模块,用于采用波束形成算法对经过回声消除模块处理的配网声波信号进行波束形成处理;其中,波束形成模块从参数计算模块获取空间声学参数,并根据空间声学参数确定波束形成滤波器的长度。
29.可选地,远场语音交互系统还包括能量计算模块,用于计算配网声波信号的能量值;其中,能量计算模块从波束形成模块获取波束形成滤波器长度以及经过波束形成模块处理的配网声波信号,计算配网声波信号的能量值。
30.可选地,远场语音交互系统还包括,参数计算模块从能量计算模块获取多个配网声波信号的能量值;确定能量计算模块中的最小的能量值,并将最小的能量值所对应的空间声学参数设置为最终的空间声学参数。
31.可选地,模型选择模块还包括:从参数计算模块获取最终的空间声学参数,并基于最终的空间声学参数,选择由与最终的空间声学参数最接近的数据集训练得到的声学模型作为远场语音识别模型。
32.可选地,空间声学参数为房间混响系数。
33.可选地,参数计算模块采用稳态噪声切断法计算空间声学参数。
34.在本发明的又一方面,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现提升远场语音交互性能方法。
35.在本发明的又一方面,提供一种终端设备,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,处理器用于执行提升远场语音交互性能方法。
36.随着物联网、ai技术的快速发展,诞生了越来越多的智能硬件,如智能音箱等活跃地出现在各类智能家居场景中。在诸多智能硬件在智能家居场景中发挥智能化作用时,联网成了必须。传统的配网方式,要求设备带有具备输入功能的屏幕,从而直接在屏幕上输入无线网络的账号(ssid)和密码。而随着智能设备的逐步小型化,越来越多的智能设备不再具有可输入的屏幕。一种替代的配网方式是声波配网,利用配网辅助设备发出的声音传输数据,把无线网络的ssid和密码通过声音广播出来,智能设备通过监听声音可以获取ssid和密码,从而进行联网。基于这种声波配网的方式,本发明针对远场语音交互性能进行优化,提出一种提升远场语音交互性能的方案,其中通过在配网过程中接收的配网声波信号计算智能设备所处空间的空间声学参数,从而对远场语音交互信号进行优化。本方案可以提高空间声学参数的精确程度,以及远场语音识别的准确性。
37.本发明至少克服了现有技术中由于空间环境变化给远场语音识别所带来的问题,即语音识别模型与空间环境不匹配而导致语音识别效果不能得到保证。本发明通过对智能设备所处空间的声学参数进行计算,然后利用计算获得的空间声学参数对远场语音交互信号进行优化。本发明中,智能设备通过在声波配网过程中的声波信号,无需额外获取测量信号或者模拟远场语音的数据集,即可完成对空间声学参数的测量。特别是对于依赖语音识别模型的语音识别引擎而言,本发明可以在智能设备所处的声学环境发生变化时,仍能够获得优化的语音识别结果。
38.应理解,上述对背景技术以及发明内容概要的描述仅仅是示意性的而非限制性的。
附图说明
39.图1是一种远场语音交互的应用场景示意图。
40.图2是根据本发明一个实施例的智能设备的空间声学参数计算和前端语音处理的示意流程图。
41.图3是根据本发明一个实施例的远场语音交互系统300的框图。
42.图4是根据本发明一个实施例的远场语音交互系统400的框图。
43.图5是根据本发明一个实施例的远场语音交互系统500的框图。
具体实施方式
44.在下文中将参考附图更全面地描述本发明,附图构成本发明公开的一部分并通过图示的方式示出示例性的实施例。应理解,附图所示以及下文所述的实施例仅仅是说明性的,而不作为对本发明的限制。
45.在对本技术实施例的技术方案说明之前,首先结合附图对本技术实施例的远场语音交互系统进行说明。参见图1,为本技术实施例提供的一种应用场景示意图。该应用场景
中包括配网辅助设备,智能设备以及语音识别引擎。本技术实施例的具体实施的过程中,配网辅助设备是具有无线收发功能的通信装置,例如可以为电脑、智能手机、平板电脑等设备;智能设备为可以为智能音箱、智能家居设备等,其具有一个或多个麦克或者麦克风阵列,用于收集语音指令;语音识别引擎,存储于远场语音交互系统的本地端智能设备或者云端,基于语音识别模型对智能设备获取的语音信号进行语音识别,从而实现语音交互功能。
46.结合上述如图1所示的应用场景示意图,下面介绍本技术的具体实施方案。根据本技术的技术方案,以下描述三个主要的场景。其中,场景1为智能设备的声波配网;场景2为前端语音信号处理;场景3为后端语音识别优化。
47.场景1:智能设备的声波配网
48.结合图1,以下说明智能设备利用语音信号进行声波配网。
49.本实施例中的智能设备在应用的起始阶段会进行声波配网,以连接到相应的网络上。其中,配网辅助设备通过发送端将要识别的字符(比如无线网络的账号ssid和密码)映射成频率,随后将每一个频率映射成相应的音节信号从而编码成音频(即配网声波信号)进行播放;智能设备接收到从配网辅助设备发出的音频信号后,解析出音频信号的频率,然后根据码表查找到频率对应的字符,从而解码出数据用于实现联网。
50.场景2:空间声学参数计算和前端语音处理
51.结合图2,介绍本实施例中智能设备的空间声学参数计算和前端语音处理。
52.在本实施例的一个方面,作为示例而非限制,智能设备在通过声波信号联网的过程中,获取辅助配网设备通过喇叭播放出的声波,并基于该声波,计算智能设备所处空间的声学参数。举例而言,可以采用稳态噪声切断法,通过对智能设备自身麦克风所获得的声波信号的计算获得声学参数。进一步的,对计算出来的空间声学参数设置一定的裕度,并在该裕度范围内选择多个空间声学参数的数值,再根据空间声学参数的数值更新前端语音处理参数,并计算经过前端语音处理后的声波信号能量值,从而选出最小能量值所对应的空间声学参数作为最终的空间声学参数。
53.在本实施例的另一个方面,作为示例而非限制,智能设备的前端语音处理方法包括回声消除,即通过回声消除滤波器对语音信号进行滤波处理。进一步的,如果智能设备采用多个麦克风或者麦克风阵列,则智能设备的前端语音处理方法还包括波束形成,即通过波束形成滤波器对语音信号进行滤波处理。应理解,此时,前端语音处理参数还包括波束形成滤波器的长度。
54.图2是根据本实施例的提升远场语音交互性能的方法的示意流程图。如图2所示,该方法包括:循环n次执行以下步骤s1至s6,其中,n为不小于2的自然数:
55.步骤s1:在配网过程中,接收预定时间长度的配网声波信号;
56.步骤s2:基于前端语音处理参数,对配网声波信号进行前端语音处理;其中,前端语音处理包括回声消除,前端语音处理参数包括回声消除滤波器的长度;
57.步骤s3:计算当前循环内步骤s2中获得的经过前端语音处理的配网声波信号的能量值en;
58.步骤s4:判断当前循环是否为第一次循环,若是,则基于步骤s1中接收的配网声波信号,计算得到初始空间声学参数p
initial
,并转至步骤s5;若否,则直接转至步骤s5;
59.步骤s5:结合预设的上限裕度和下限裕度,确定下一次循环中的空间声学参数p
n+1
的数值,使得p
n+1
的数值满足(p
initial-m1)≤p
n+1
≤(p
initial
+m2),其中n为当前循环的序号,m1为预定的下限裕度,m2为预定的上限裕度;
60.步骤s6:利用步骤s5中得到的空间声学参数p
n+1
,更新前端语音处理参数,用于下一次循环;
61.在n次循环结束后,转至步骤s7:确定n次循环中获得的配网声波信号能量值中的最小值e
min
,并将最小值e
min
所对应的循环中的空间声学参数作为最终的空间声学参数。
62.应当理解的是,上述步骤s2、s3与步骤s4、s5的执行顺序可以调换,即也可以先执行步骤s4、s5,再执行步骤s2、s3。
63.举例来讲,智能设备按照预定的时间长度(例如,1s)周期性地接收配网声波信号,例如共6个周期即周期(a)至周期(f),执行以下步骤:
64.计算初始空间声学参数及计算周期(a)的能量:智能设备在接收到周期(a)的声波信号后,计算空间声学参数,其中声学参数为rt60,rt60用于衡量房间内的信号衰减程度,具体地表示信号衰减到60db的混响时间(单位为毫秒)。应当理解的是,不同房间的墙壁材质以及空间大小会对空间声学参数产生一定的影响。
65.具体地,采用稳态噪声切断法计算初始空间声学参数,其步骤包括:
66.1.播放接受到的周期(a)的配网声波,并确保接收单元不截幅(不超过1),且接受单元的信号短时幅度大于0.5。应当注意的是,信号幅度过小会导致难以精确识别rt60。所述配网声波信号为数字信号。
67.2.使用麦克风或者麦克风阵列采集声波,其中每个采样点上采集到的声波信号幅度记为y
(n)
,n为采样时刻的序号。其中,采样时刻根据采样率和采样周期长度确定,例如,假设采样周期长度为1秒,采样率为16000,则采样时刻为1/16000、2/16000、3/16000、
…
、16000/16000。
68.3.将声波信号幅度y
(n)
以帧长1024和帧移512进行分帧处理,获得y
i(n)
,i为帧号。其中,帧长表示采样的点数,例如帧长1024表示共1024各采样点。
69.4.计算每一帧的短时能量e(i)=10
×
log10(∑(y
i(n)
×yi(n)
)),其中,e(i)的单位为db。
70.5.计算相邻帧短时能量e(i)之间差值,δe(i)=e
(i)-e
(i-1)
。
71.6.当δe(i)接近零时,暂停播放配网声波,并且记录时刻t1,单位为毫秒,此时短时能量为es。
72.7.当e(i)=e
s-60时,记录此时的时刻t2。
73.8.计算混响时间δt=t
2-t1。
74.应理解的是,配网声波信号本身是稳定的,但是由于房间混响的因素,导致接受信号不稳定。因此,稳态噪声切断法通过观察声波信号经过多长时间才能稳定下来,以此获取房间的空间声学参数。
75.进一步的,对于周期(a)的声波信号,还基于前端语音处理参数(即回声消除滤波器长度,或者回声消除滤波器长度以及波束形成滤波器长度)的初始值,对配网声波信号进行前端语音处理。
76.更新周期(b)-周期(f)声波信号对应的空间声学参数:对初始空间声学参数设定上限裕度和下限裕度,并在下限裕度和上限裕度的范围内选择数值作为更新的空间声学参
数数值。对于周期(b)-(f)的声波信号,其对应的空间声学参数依次为p2,p3,
…
,p6。
77.应理解的是,可以采用逐步递增的方法确定更新的空间声学参数p
n+1
的数值,使得p
n+1
的数值满足(p
initial-m1)≤pn≤p
n+1
。
78.应理解的是,还可以采用逐步递减的方法确定更新的空间声学参数p
n+1
的数值,使得p
n+1
的数值满足p
n+1
≤pn≤(p
initial
+m2)。
79.应理解的是,还可以采用固定步长逐步求精的方法确定下一次循环中的空间声学参数p
n+1
的数值,根据预定的下限裕度m1和步长s,确定下一次循环中的空间声学参数p
n+1
的数值,其中p
n+1
=p
initial-m1+(n-1)*s;或者根据预定的上限裕度m2和步长s,确定下一次循环中的空间声学参数p
n+1
的数值,其中p
n+1
=p
initial
+m2–
(n-1)*s。
80.更新周期(b)-周期(f)声波信号对应的滤波器长度:每次获得空间声学参数之后,利用空间声学参数更新回声消除滤波器,或者回声消除滤波器及波束形成滤波器的长度。作为示例而非限制,回声消除滤波器的长度以及波束形成滤波器的长度与空间声学参数成正相关。进一步的,回声消除滤波器的长度以及波束形成滤波器的长度与空间声学参数可以成正比例。例如,回声消除滤波器和波束形成滤波器的长度均为:智能设备的采样率fs(单位/s)
×
空间声学参数(单位s)。一般而言,智能设备的采样率fs=16000/s,例如当空间声学参数为600ms时,则相应地,回声消除滤波器和波束形成滤波器的长度均为16000/s
×
0.6s=9600。
81.应理解的是,滤波器的长度会对信号处理效果产生较大的影响,滤波器长度过长会导致产生新的噪声,例如音乐噪声,而滤波器长度过短则会影响算法性能。
82.周期(b)-周期(f)声波信号的前端语音处理:对于周期(b)-周期(f)的声波信号,基于更新后的前端语音处理参数,对配网声波信号进行前端语音处理。其中,前端语音处理包括回声消除,即通过回声消除滤波器对语音信号进行滤波处理,前端语音处理参数包括回声消除滤波器的长度。进一步的,如果智能设备采用多个麦克风或者麦克风阵列,则智能设备的前端语音处理还包括波束形成,即通过波束形成滤波器对语音信号进行滤波处理。应理解,此时,前端语音处理参数还包括波束形成滤波器的长度。应理解的是,前端语音处理中可以采用通常的回声消除算法,例如nlms、lms等。前端语音处理中可以采用通常的波束形成算法,如mvdr、gsc、dsb等。
83.周期(b)-周期(f)声波信号的能量计算:对于周期(b)-周期(f)的声波信号,分别利用相应的更新后前端语音处理参数对信号进行能量计算,由此计算出每个周期的能量值。即,每个周期的能量值对应于不同的声学参数和前端语音处理参数。应理解的是,所述计算每个周期的能量值方法,主要通过对采样周期信号的幅值进行累加、累加求平均值、或者一阶递归平滑实现。
84.最终空间声学参数的确定:确定周期(a)-周期(f)配网声波信号中声波信号能量值的最小值e
min
,并将所述最小值e
min
所对应的循环中的空间声学参数作为最终的空间声学参数。例如,如果最小值为周期(b)配网声波信号的能量值,则取周期(b)对应的空间声学参数p2作为最终的空间声学参数。
85.应当理解的是,如果能量最小值为周期(a)配网声波信号的能量值,那么最终的空间声学参数可以根据前端语音处理参数的初始值推导获得,即由前端语音处理参数与空间声学参数成正比例这一基础推导。
86.场景3:后端语音识别优化
87.声学模型更新及语音识别:将最终的空间声学参数传输至存储在本地或云端的语音识别引擎中,语音识别引擎从多个声学模型中,选择由与最终的空间声学参数最接近的数据集训练得到的声学模型作为远场语音识别模型。
88.本发明相对与传统方法,将空间声学测试与语音识别算法性能优化两个独立的模块进行了整合,通过空间声学测试预估空间声学参数,然后算法逐步求精获得最终的声学参数。同时利用获得的空间声学参数去检索匹配的云端识别引擎。本方法具有相对现有方法具有更好的性能,一方面增加了声学前端算法的数学建模的正确性,另外一方面提高了声学模型训练数据集的匹配度,全面的提升了远场语音交互系统的性能。
89.图3示出一个实施例中的远场语音交互系统300。如图3所示,远场语音交互系统300被配置为包括:信号采集模块302、参数计算模块304、回声消除模块306、模型选择模块308和语音识别模块310,且各模块之间相互耦合。其中,信号采集模块302配置为用于在配网过程中接收配网声波信号。回声消除模块306配置为用于采用回声消除算法对配网声波信号进行回声消除处理。参数计算模块304配置为用于基于配网声波信号,确定空间声学参数。模型选择模块308配置为用于基于空间声学参数,选择远场语音识别模型。语音识别模块310配置为用于接收经过回声消除模块处理的配网声波信号,并基于模型选择模块选择的远场语音识别模型,对语音信息进行识别分析。进一步的,回声消除模块306从参数计算模块304获取空间声学参数,并根据空间声学参数确定回声消除滤波器的长度。
90.进一步的,图4示出一个实施例中的远场语音交互系统400。如图4所示,远场语音交互系统400被配置为包括:信号采集模块402、参数计算模块404、回声消除模块406、模型选择模块408和语音识别模块410,且各模块之间相互耦合。其中,信号采集模块402配置为用于在配网过程中接收配网声波信号。回声消除模块406配置为用于采用回声消除算法对配网声波信号进行回声消除处理。参数计算模块404配置为用于基于配网声波信号,确定空间声学参数。模型选择模块408配置为用于基于空间声学参数,选择远场语音识别模型。语音识别模块410配置为用于接收经过回声消除模块处理的配网声波信号,并基于模型选择模块选择的远场语音识别模型,对语音信息进行识别分析。进一步的,回声消除模块406从参数计算模块404获取空间声学参数,并根据空间声学参数确定回声消除滤波器的长度。远场语音交互系统400还包括能量计算模块412,用于计算配网声波信号的能量值;其中,能量计算模块412从回声消除模块获取回声消除滤波器长度以及经过回声消除模块处理的配网声波信号,计算配网声波信号的能量值。
91.进一步的,参数计算模块404从能量计算模块412获取多个配网声波信号的能量值;确定能量计算模块中的最小的能量值,并将最小的能量值所对应的空间声学参数设置为最终的空间声学参数。
92.应当理解的是,在每次智能设备开启配网时,触发运行参数计算模块404、模型选择模块408和能量计算模块412。
93.进一步的,模型选择模块还包括:从所述参数计算模块404获取最终的空间声学参数,并基于所述最终的空间声学参数,选择由与最终的空间声学参数最接近的数据集训练得到的声学模型作为远场语音识别模型。进一步的,图5示出一个实施例中的远场语音交互系统500。如图5所示,远场语音
交互系统500被配置为包括:信号采集模块502、参数计算模块504、回声消除模块506、波束形成模块514、模型选择模块508和语音识别模块510,且各模块之间相互耦合。其中,信号采集模块502配置为用于在配网过程中接收配网声波信号,信号采集模块502为麦克风阵列。回声消除模块506配置为用于采用回声消除算法对配网声波信号进行回声消除处理。波束形成模块514配置为采用波束形成算法对经过回声消除模块处理的配网声波信号进行波束形成处理。参数计算模块504配置为用于基于配网声波信号,确定空间声学参数。模型选择模块508配置为用于基于空间声学参数,选择远场语音识别模型。语音识别模块510配置为用于接收经过波束形成模块处理的配网声波信号,并基于模型选择模块选择的远场语音识别模型,对语音信息进行识别分析。进一步的,回声消除模块506和波束形成模块514从参数计算模块504获取空间声学参数,并根据空间声学参数确定回声消除滤波器和波束形成的长度。远场语音交互系统500还包括能量计算模块512,用于计算配网声波信号的能量值;其中,能量计算模块512从波束形成模块获取波束形成滤波器长度以及经过波束形成模块处理的配网声波信号,计算配网声波信号的能量值。
94.进一步的,参数计算模块504从能量计算模块512获取多个配网声波信号的能量值;确定能量计算模块中的最小的能量值,并将最小的能量值所对应的空间声学参数设置为最终的空间声学参数。
95.进一步的,模型选择模块还包括:从所述参数计算模块504获取最终的空间声学参数,并基于所述最终的空间声学参数,选择由与最终的空间声学参数最接近的数据集训练得到的声学模型作为远场语音识别模型。
96.但应理解,本发明的实施不限于此。本发明各实施例中的远场语音交互系统的各组件之间可以采取不同于所示的连接方式。
97.作为一种具体实施方式的示例,以下描述一个具体的应用示例:
98.智能设备分(a)-(f)共6个周期接收配网声波信号,每个周期的长度相等,可以设置为固定的时长,例如一分钟。每个周期的长度也可以设置为完成一次空间声学参数计算所用的时长计为一个周期。在本示例中,共接收6个周期的配网声波信号。应当理解的是,周期越多,理论上而言,获得的空间声学参数则越精确。
99.智能设备在接收到周期(a)信号,基于接收到的周期(a)信号,采用稳态噪声切断法,计算得到空间声学参数rt60=600ms(即初始空间声学参数p
initial
)。同时,在应用稳态噪声切断法计算时,还获得了周期(a)声波信号的能量为e1。其中,回声消除滤波器和波束形成滤波器的长度采用智能设备的默认值。
100.在初始空间声学参数p
initial
基础上增加一定的裕度(例如120ms),将空间声学参数p2更新为rt60=600ms+120ms=720ms。
101.使用空间声学参数p2=720ms更新回声消除滤波器和波束形成滤波器的长度,滤波器长度均为16000/s
×
0.72s=11520,其中采样率fs=16000/s。
102.接着,利用更新后的回声消除滤波器和波束形成滤波器对周期(b)的信号进行前端语音处理,并计算周期(b)信号经过前端处理后的能量,获得e2。
103.再次,更新空间声学参数p3,p2更新为rt60=660ms(按照递减方式)。
104.使用空间声学参数p3=660ms更新回声消除滤波器和波束形成滤波器的长度,滤波器长度均为16000/s
×
0.66s=10560,其中采样率fs=16000/s。
105.接着,利用更新后的回声消除滤波器和波束形成滤波器对周期(c)的信号进行前端语音处理,并计算周期(c)信号经过前端处理后的能量,获得e3。
106.依次类推,继续更新空间声学参数p3,p4,
…
,p6,并相应地更新回声消除滤波器和波束形成滤波器长度,以及分别计算各周期信号经过前端处理后的能量值。
107.最终获得6个周期信号的能量值,并将能量值最小的周期所对应的空间声学参数为最终确定的空间声学参数(即房间混响系数rt60),并由最终的空间声学参数确定最终的回声消除和波束形成的滤波器长度。应当理解的是,能量值最小的周期对应的声学参数、滤波器参数与房间的声学特性最为匹配,如回声消除的声学路径和空间声学参数的匹配最为适配,因此前端信号处理的效果最好。
108.应理解的是,每次更新空间声学参数可以在设定的裕度范围内选择。例如,更新方法可以采用逐步递减的方法依次将声学参数减小5%。本方案采用逐步求精的计算过程,在多个声学参数中选择性能最优的一个,并根据最优的声学参数确定滤波器长度。
109.将本地端获得最终的空间声学系数传递给云端,云端在获得这一信息之后在平台上进行声学模型的更新,选择空间声学系数相近的数据集训练出来的声学模型。
110.在本示例中,云端分别部署了声学参数rt60=0.1:0.1:2(起始为0.1,步长为0.2,终点为2)的多个声学模型,即空间声学参数为0.1,0.2,0.3,0.4,
…
,1.9,2.0的声学模型。经过上述6个周期的计算后,最终得到的空间声学参数rt60=0.76s,最接近0.8,因此选择rt60=0.8的声学模型。
111.作为一种具体实施方式的示例,以下描述另一个具体的应用示例:
112.本发明在长度为8米,宽度为4米,高度为3米的混响室内部进行实验,其中智能设备采用乐鑫科技信息有限公司的esp-korvo双麦开发板,将开发板置于房间的中央并距离地面高度1.5米。通过声波联网阶段对空间声学参数进行更新,与原来的方法相比,本智能设备的回声消除模块能够提升5.2db的信回比,波束形成模块能够提升2.6db的信干比。同时对语音识别的语音识别率进行了测试,在云端分别部署了声学参数rt60=0.1:0.1:2的声学模型,最终得到的空间声学参数为rt60=0.76秒,在测试场景为三米安静场景中,通过本发明方案对空间声学参数进行更新之后,最终的语音识别率相对于其他引擎提升3.6%。
113.以上实施例以示例的方式给出了具体操作过程和步骤,但应理解,本发明的保护范围不限于此。
114.根据本发明公开的方法和设备,作为一种可选的实施方法,上述具体实施例中的任一项方法的步骤,可以使用计算机程序执行并将其存储在计算机可读存储介质上。
115.虽然出于本公开的目的已经描述了本发明各方面的各种实施例,但是不应理解为将本公开的教导限制于这些实施例。在一个具体实施例中公开的特征并不限于该实施例,而是可以和不同实施例中公开的特征进行组合。此外,应理解,上文所述方法步骤可以顺序执行、并行执行、合并为更少步骤、拆分为更多步骤,以不同于所述方式组合和/或省略。本领域技术人员应理解,还存在可能的更多可选实施方式和变型,可以对上述部件和构造进行各种改变和修改,而不脱离由本发明权利要求所限定的范围。