声反馈消除方法、声反馈消除装置、存储介质及电子设备与流程
- 国知局
- 2024-06-21 11:32:59
本公开的实施方式涉及语音通信,更具体地,本公开的实施方式涉及一种声反馈消除方法、声反馈消除装置、计算机可读存储介质及电子设备。
背景技术:
1、本部分旨在为权利要求中陈述的本公开的实施方式提供背景或上下文,此处的描述不因为包括在本部分中就承认是现有技术。
2、声反馈消除方法主要有自适应法、陷波法、移频法三种;其中,移频法由于音质损伤严重,仅适用于音质要求不高的场景;自适应法理论上可以完全消除反馈,可以从时域计算,根据不同的细分,算法速度可快可慢,但整体慢于陷波法。陷波法必须从频域入手检测声反馈导致的啸叫频率,收敛速度更快、复杂度更低,一般来说音质损伤也更小。
技术实现思路
1、然而,相关技术中,自适应法和陷波法各有利弊,在不同的场景使用不同的方法,无法同时去劣存良,为声反馈消除过程造成了诸多不便。
2、为此,非常需要一种声反馈消除方法,以同时对自适应法和陷波法去劣存良,简化声反馈消除过程。
3、在本上下文中,本公开的实施方式期望提供一种声反馈消除方法、声反馈消除装置、计算机可读存储介质及电子设备。
4、根据本公开的第一方面,提供一种声反馈消除方法,所述方法包括:获取待处理声信号;对所述待处理声信号进行能量检测;响应于所述能量检测结果大于或等于第一预设阈值且小于第二预设阈值,采用第一声反馈消除策略对所述待处理声信号进行声反馈消除;所述第一声反馈消除策略包括自适应滤波处理;所述能量检测结果大于或等于第一预设阈值且小于第二预设阈值表示所述待处理声信号的能量不构成啸叫;和/或,响应于所述能量检测结果大于或等于所述第二预设阈值,采用第二声反馈消除策略对所述待处理声信号进行声反馈消除;所述第二声反馈消除策略包括陷波处理;所述能量检测结果大于或等于所述第二预设阈值表示所述待处理声信号的能量构成啸叫。
5、在一种实施方式中,所述采用第一声反馈消除策略对所述待处理声信号进行声反馈消除,包括:根据所述待处理声信号与扬声器输出声信号,更新自适应滤波器的参数,得到更新自适应滤波器;所述参数包括系数和步长;采用所述更新自适应滤波器对所述待处理声信号进行自适应滤波,得到消除声反馈后的声信号。
6、在一种实施方式中,所述根据所述待处理声信号与扬声器输出声信号,更新自适应滤波器的参数,得到更新自适应滤波器,包括:采用自适应滤波器对所述待处理声信号进行自适应滤波,得到第一声信号;根据所述第一声信号与所述扬声器输出声信号,确定累积误差向量;根据所述累积误差向量更新所述自适应滤波器的系数;根据所述第一声信号更新所述自适应滤波器的步长,得到所述更新自适应滤波器。
7、在一种实施方式中,所述采用自适应滤波器对所述待处理声信号进行自适应滤波,得到第一声信号,包括:将所述待处理声信号与所述自适应滤波器估计的反馈声信号的差确定为所述第一声信号。
8、在一种实施方式中,所述根据所述第一声信号与所述扬声器输出声信号,确定累积误差向量,包括:将扬声器输出声信号与所述第一声信号的差,作为误差;对对应时段的误差进行累加,得到所述累积误差向量。
9、在一种实施方式中,所述根据所述累积误差向量更新所述自适应滤波器的系数,包括:采用第一预设公式,根据所述累积误差向量更新所述自适应滤波器的系数;所述第一预设公式为w=w+mu*accu/(beta+norm);其中,w为自适应滤波器系数向量;accu为累积误差向量;mu为当前自适应滤波器的步长;beta为功率归一化系数;norm为输出声信号功率。
10、在一种实施方式中,所述根据所述第一声信号更新所述自适应滤波器的步长,得到所述更新自适应滤波器,包括:采用第二预设公式,根据所述第一声信号更新所述自适应滤波器的步长,得到所述更新自适应滤波器;所述第二预设公式为mu=alpha*mu+gamma*e*e;其中,mu为更新的自适应滤波器的步长;alpha和gamma为系数,一般alpha系接近1,gamma小于0.05;e为第一声信号。
11、在一种实施方式中,所述采用第一声反馈消除策略对所述待处理声信号进行声反馈消除,包括:在所述待处理声信号的采样点数量大于或等于第三预设阈值的情况下,根据所述待处理声信号与扬声器输出声信号,更新自适应滤波器的系数。
12、在一种实施方式中,在所述采用所述更新自适应滤波器对所述待处理声信号进行自适应滤波之后,所述方法还包括:对自适应滤波后的待处理声信号进行前向增益。
13、在一种实施方式中,所述对自适应滤波后的待处理声信号进行前向增益,包括:为所述自适应滤波后的待处理声信号加大于或等于1的增益。
14、在一种实施方式中,所述采用第二声反馈消除策略对所述待处理声信号进行声反馈消除,包括:对所述待处理声信号进行啸叫检测,并根据啸叫检测结果确定目标啸叫频点;对所述目标啸叫频点进行频率校正;响应于所述校正后的目标啸叫频点与上一帧中目标啸叫频点之间的功率差大于第四预设阈值,更新陷波器的系数,得到更新陷波器;采用所述更新陷波器对所述待处理声信号进行滤波,得到消除声反馈的声信号。
15、在一种实施方式中,所述对所述待处理声信号进行啸叫检测,包括:对所述待处理声信号进行时频域转换,得到频域待处理声信号;遍历所述频域待处理声信号的频点,将预设参数大于对应阈值的频点确定为候选啸叫频点,得到啸叫检测结果;所述预设参数包括峰值均值功率比、峰值邻近功率比和峰值谐波功率比。
16、在一种实施方式中,所述根据啸叫检测结果确定目标啸叫频点,包括:从所述候选啸叫频点中确定帧间峰值保持度满足第二预设条件的频点,得到中间啸叫频点集;从所述中间啸叫频点集中相邻的两个中间啸叫频点中选取频域值较大的中间啸叫频点,得到所述目标啸叫频点。
17、在一种实施方式中,所述采用第二声反馈消除策略对所述待处理声信号进行声反馈消除,包括:响应于所述待处理声信号大于预设长度,对所述待处理声信号进行啸叫检测,并根据啸叫检测结果确定目标啸叫频点。
18、在一种实施方式中,所述对所述目标啸叫频点进行频率校正,包括:对所述目标啸叫频点中的目标啸叫频点进行加汉明窗的离散傅里叶变换,得到离散傅里叶变换谱;确定所述离散傅里叶变换谱中谱峰位置和与其相邻的子峰的幅值比;根据所述幅值比确定小数频率偏移,并采用所述小数频率偏移对所述目标啸叫频点中目标啸叫频点的频率进行校正。
19、在一种实施方式中,在所述对所述待处理声信号进行啸叫检测之前,所述方法还包括:对所述待处理声信号进行前向增益。
20、在一种实施方式中,所述更新陷波器的系数,包括:采用第三预设公式,根据所述前向增益的增益值更新所述陷波器的系数;所述第三预设公式为其中,b0=1;b1=-2cosω0;b2=1;a0=1+α;a1=-2cosω0;a2=1-α;fs表示采样频率;f0表示滤波器中心频点;dbgain表示增益;h(z)表示陷波器的系数;s表示斜率因数,为滤波器通带和阻带的变化速度。
21、在一种实施方式中,所述方法还包括:响应于所述能量检测结果小于所述第一预设阈值,对所述待处理声信号进行前向增益。
22、根据本公开的第二方面,提供一种声反馈消除装置,所述装置包括:声信号获取模块,被配置为获取待处理声信号;能量检测模块,被配置为对所述待处理声信号进行能量检测;自适应处理模块,被配置为响应于所述能量检测结果大于或等于第一预设阈值且小于第二预设阈值,采用第一声反馈消除策略对所述待处理声信号进行声反馈消除;所述第一声反馈消除策略包括自适应滤波处理;所述能量检测结果大于或等于第一预设阈值且小于第二预设阈值表示所述待处理声信号的能量不构成啸叫;和/或,陷波处理模块,被配置为响应于所述能量检测结果大于或等于所述第二预设阈值,采用第二声反馈消除策略对所述待处理声信号进行声反馈消除;所述第二声反馈消除策略包括陷波处理;所述能量检测结果大于或等于所述第二预设阈值表示所述待处理声信号的能量构成啸叫。
23、在一种实施方式中,所述自适应处理模块被配置为:根据所述待处理声信号与扬声器输出声信号,更新自适应滤波器的参数,得到更新自适应滤波器;所述参数包括系数和步长;采用所述更新自适应滤波器对所述待处理声信号进行自适应滤波,得到消除声反馈后的声信号。
24、在一种实施方式中,所述自适应处理模块被配置为:采用自适应滤波器对所述待处理声信号进行自适应滤波,得到第一声信号;根据所述第一声信号与所述扬声器输出声信号,确定累积误差向量;根据所述累积误差向量更新所述自适应滤波器的系数;根据所述第一声信号更新所述自适应滤波器的步长,得到所述更新自适应滤波器。
25、在一种实施方式中,所述自适应处理模块被配置为:将所述待处理声信号与所述自适应滤波器估计的反馈声信号的差确定为所述第一声信号。
26、在一种实施方式中,所述自适应处理模块被配置为:将扬声器输出声信号与所述第一声信号的差,作为误差;对对应时段的误差进行累加,得到所述累积误差向量。
27、在一种实施方式中,所述自适应处理模块被配置为:采用第一预设公式,根据所述累积误差向量更新所述自适应滤波器的系数;所述第一预设公式为w=w+mu*accu/(beta+norm);其中,w为自适应滤波器系数向量;accu为累积误差向量;mu为当前自适应滤波器的步长;beta为功率归一化系数;norm为输出声信号功率。
28、在一种实施方式中,所述自适应处理模块被配置为:采用第二预设公式,根据所述第一声信号更新所述自适应滤波器的步长,得到所述更新自适应滤波器;所述第二预设公式为mu=alpha*mu+gamma*e*e;其中,mu为更新的自适应滤波器的步长;alpha和gamma为系数,一般alpha系接近1,gamma小于0.05;e为第一声信号。
29、在一种实施方式中,所述自适应处理模块被配置为:在所述待处理声信号的采样点数量大于或等于第三预设阈值的情况下,根据所述待处理声信号与扬声器输出声信号,更新自适应滤波器的系数。
30、在一种实施方式中,所述装置还包括增益模块,所述增益模块被配置为:对自适应滤波后的待处理声信号进行前向增益。
31、在一种实施方式中,所述增益模块被配置为:为所述自适应滤波后的待处理声信号加大于或等于1的增益。
32、在一种实施方式中,所述陷波处理模块被配置为:对所述待处理声信号进行啸叫检测,并根据啸叫检测结果确定目标啸叫频点;对所述目标啸叫频点进行频率校正;响应于所述校正后的目标啸叫频点与上一帧中目标啸叫频点之间的功率差大于第四预设阈值,更新陷波器的系数,得到更新陷波器;采用所述更新陷波器对所述待处理声信号进行滤波,得到消除声反馈的声信号。
33、在一种实施方式中,所述陷波处理模块被配置为:对所述待处理声信号进行时频域转换,得到频域待处理声信号;遍历所述频域待处理声信号的频点,将预设参数大于对应阈值的频点确定为候选啸叫频点,得到啸叫检测结果;所述预设参数包括峰值均值功率比、峰值邻近功率比和峰值谐波功率比。
34、在一种实施方式中,所述陷波处理模块被配置为:从所述候选啸叫频点中确定帧间峰值保持度满足第二预设条件的频点,得到中间啸叫频点集;从所述中间啸叫频点集中相邻的两个中间啸叫频点中选取频域值较大的中间啸叫频点,得到所述目标啸叫频点。
35、在一种实施方式中,所述陷波处理模块被配置为:响应于所述待处理声信号大于预设长度,对所述待处理声信号进行啸叫检测,并根据啸叫检测结果确定目标啸叫频点。
36、在一种实施方式中,所述陷波处理模块被配置为:对所述目标啸叫频点中的目标啸叫频点进行加汉明窗的离散傅里叶变换,得到离散傅里叶变换谱;确定所述离散傅里叶变换谱中谱峰位置和与其相邻的子峰的幅值比;根据所述幅值比确定小数频率偏移,并采用所述小数频率偏移对所述目标啸叫频点中目标啸叫频点的频率进行校正。
37、在一种实施方式中,所述增益模块被配置为:对所述待处理声信号进行前向增益。
38、在一种实施方式中,所述陷波处理模块被配置为:采用第三预设公式,根据所述前向增益的增益值更新所述陷波器的系数;所述第三预设公式为其中,b0=1;b1=-2cosω0;b2=1;a0=1+α;a1=-2cosω0;a2=1-α;fs表示采样频率;f0表示滤波器中心频点;dbgain表示增益;h(z)表示陷波器的系数;s表示斜率因数,为滤波器通带和阻带的变化速度。
39、在一种实施方式中,所述增益模块被配置为:响应于所述能量检测结果小于所述第一预设阈值,对所述待处理声信号进行前向增益。
40、根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种方法。
41、根据本公开的第一方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一种方法。
42、根据本公开实施方式的声反馈消除方法、声反馈消除装置、计算机可读存储介质及电子设备,获取待处理声信号;对所述待处理声信号进行能量检测;响应于所述能量检测结果大于或等于第一预设阈值且小于第二预设阈值,采用第一声反馈消除策略对所述待处理声信号进行声反馈消除;所述第一声反馈消除策略包括自适应滤波处理;所述能量检测结果大于或等于第一预设阈值且小于第二预设阈值表示所述待处理声信号的能量不构成啸叫;和/或,响应于所述能量检测结果大于或等于所述第二预设阈值,采用第二声反馈消除策略对所述待处理声信号进行声反馈消除;所述第二声反馈消除策略包括陷波处理;所述能量检测结果大于或等于所述第二预设阈值表示所述待处理声信号的能量构成啸叫。如此,在待处理声信号能量较大但不构成啸叫时,采用自适应法进行声反馈消除;在待处理声信号能量很大超过啸叫时,采用陷波法进行声反馈消除;联合使用自适应法和陷波法,能够同时对自适应法和陷波法去劣存良,并简化声反馈消除过程。
本文地址:https://www.jishuxx.com/zhuanli/20240618/22173.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。