频域幅值自适应滤波器设计方法及装置、电子设备与流程



1.本发明涉及音频信号处理技术领域,尤其是一种频域幅值自适应滤波器设计方法及装置、电子设备。


背景技术:



2.20世纪60年代,贝尔电话实验室的kelly第一个提出把自适应滤波器用于回声消除。该原理如图1所示:利用数字滤波器模拟真实的回声路径h,参考信号x(n)与数字滤波器卷积生成估计的回声信号从麦克风信号d(n)中减去估计的回声信号即可得到回声消除后的信号e(n),再利用一定的准则更新滤波器的系数即可跟踪变化的回声路径实现自适应回声消除的目的。
3.根据数字信号处理理论可知,信号经快速傅里叶变换(fft,fast fourier transform)后,时域的卷积可表现为频域的点乘,复杂度从o(n^2)降至o(n*log2(n))。为实现线性卷积,通常还需将fft前的数据进行补零以防止发生混叠,实际情况实现线性卷积用的更多的频域处理方法是重叠保留法。重叠保留法的实现原理如图2所示:首先将当前帧参考信号x(n)与前一帧参考信号进行串联,得到2的指数个数的时域序列,然后直接进行fft生成频域信号x(k),k为频率索引;信号x(k)与滤波器的频响是时域滤波器进行补零后的傅里叶变换)进行点乘生成估计的回声频域信号将进行逆傅里叶变换(ifft)生成回声时域信号信号的前一半是循环卷积结果,只取后一半作为回声估计;用麦克风信号d(n)减去估计的回声信号后半部分得到回声消除后的信号e(n);利用残差信号e(n)和参考信号x(n)进行滤波器更新,为了在频域实现线性卷积,残差信号e(n)在经过fft前需要补零,且在滤波器更新项计算过程中还需要进行一次fft和一次ifft操作。
4.由以上可知,重叠保留法需要进行3次fft和2次ifft操作,除此以外,该算法还有以下特点:1)输出的残差信号是时域信号;2)输出残差信号直接与前一帧输出进行串联得到连续的时域输出信号;3)该算法对参考信号x(n)与麦克风信号d(n)之间的时延关系比较敏感。为了优化重叠保留法,有人提出了基于循环卷积的自适应滤波算法,如图3所示:首先将当前帧参考信号x(n)与前一帧参考信号进行串联,得到2的指数个数的时域序列,然后加窗并进行fft生成频域信号x(k);同时也对麦克风信号d(n)进行与x(n)类似的操作,获得麦克风频域信号d(k)。信号x(k)与滤波器的频响进行点乘生成估计的回声频域信号将麦克风频域信号d(k)减去回声频域信号即可得到回声消除后的残差信号e(k)。信号e(k)可以通过ifft变换到时域并加窗生成输出信号,也可以经过频域降噪或其他处理后再生成时域信号。
5.循环卷积的自适应滤波相比重叠保留法的自适应滤波,能够省去至少三个fft计算量,且对于参考信号和麦克风信号的时延关系不那么敏感。但是当麦克风采集的回声信号非线性非常大时,这两个自适应滤波器的收敛效果都会比较有限。


技术实现要素:



6.为克服上述现有技术存在的不足,本发明提供一种频域幅值自适应滤波器设计方法及装置、电子设备,以解决当麦克风采集的回声信号非线性非常大时,自适应滤波器的收敛效果比较有限的问题。
7.为达到上述目的,本发明提供一种频域幅值自适应滤波器设计方法,包括以下步骤:
8.步骤s1,对时域参考信号与麦克风信号进行时频分析,得到各自的频域幅值;
9.步骤s2,基于参考信号频域幅值与滤波器得到回声频域幅值初步估计信号,并获得残差信号;
10.步骤s3,利用残差信号与参考信号对滤波器系数进行更新,得到本帧滤波器最优解;
11.步骤s4,基于本帧滤波器最优解与参考信号重新进行回声估计,得到回声频域幅值二次估计;
12.步骤s5,基于回声频域幅值二次估计和麦克风信号频域幅值得到维纳滤波系数,根据获得的维纳滤波系数对麦克风信号滤波得到自适应滤波输出信号。
13.可选地,在步骤s1中,对当前帧参考信号或当前帧麦克风信号与前一帧对应信号进行串联并加窗,进行傅里叶变换得到相应的频域信号,并获得相应频域信号的频域幅值。
14.可选地,步骤s2进一步包括:
15.步骤s200,根据所述麦克风信号和参考信号在频域大小的比值设置初始滤波器参数和滤波器系数上限;
16.步骤s201,利用参考信号频域幅值与滤波器系数相乘,获得回声频域幅值初步估计信号;
17.步骤s202,基于近端信号频域幅值与回声频域幅值初步估计信号得到残差信号。
18.可选地,在步骤s202中,利用麦克风信号频域幅值减去步骤s201中估计的回声频域幅值,得到所述残差信号。
19.可选地,在步骤s3中,利用残差信号和参考信号估计自适应滤波器更新项,包括:参考信号的平滑功率谱计算,参考信号和残差信号互功率谱计算,更新项限幅计算,更新滤波器系数以及并用步骤s200得到的滤波器系数上限对滤波器进行限幅。
20.可选地,在步骤s4中,利用参考信号频域幅值与更新后的滤波器系数相乘,获得回声频域幅值二次估计信号。
21.可选地,步骤s5进一步包括:
22.步骤s501,对所述回声频域幅值二次估计信号和麦克风信号频域幅值在频域和时域进行平滑,并用平滑结果构建维纳滤波系数;
23.步骤s502,利用得到的维纳滤波系数对麦克风信号进行滤波输出。
24.可选地,在步骤s5后,还包括:
25.步骤s6,将步骤s5得到的频域幅值信号结合相位谱angle进行频谱的还原,得到频谱信号输出。
26.为达到上述目的,本发明还提供一种频域幅值自适应滤波器设计装置,包括:
27.时频分析单元,用于对时域参考信号与麦克风信号进行时频分析,得到各自的频
域幅值;
28.回声估计及残差计算单元,用于基于参考信号频域幅值与滤波器得到回声频域幅值初步估计信号,并获得残差信号;
29.滤波器更新单元,用于利用得到的残差信号与参考信号对滤波器系数进行更新,并对滤波器系数进行限幅;
30.回声二次估计单元,用于基于更新后的滤波器系数与参考信号重新进行回声估计,得到回声频域幅值二次估计;
31.维纳滤波单元,基于回声频域幅值二次估计和麦克风信号频域幅值得到维纳滤波系数,根据获得的维纳滤波系数对麦克风信号滤波得到自适应滤波输出信号。
32.为达到上述目的,本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述的频域幅值自适应滤波器设计方法的步骤。
33.与现有技术相比,本发明一种频域幅值自适应滤波器设计方法及装置、电子设备,具有如下有益效果:
34.一、本发明用幅值替代频谱,实数运算替代复数运算,计算量可降为之前1/4。
35.二、本发明收敛性好于传统自适应滤波,尤其是在非线性回声较强的情况。
36.三、增加滤波器系数最大值限定,可在抑制回声的同时保护近端语音。
37.下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
38.通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
39.图1是现有技术回声消除中的自适应滤波器的示意图;
40.图2是现有技术重叠保留法实现原理的示意图;
41.图3是现有技术循环卷积自适应滤波器的示意图;
42.图4是本发明一示例性实施例提供的频域幅值自适应滤波器设计方法的流程示意图;
43.图5是本发明实施例的自适应滤波器工作流程示意图;
44.图6是线性卷积,循环卷积和本发明的自适应滤波器对于非线性较强的回声的erle比较图;
45.图7是在信回比低于-6db情况下双讲仿真结果比较图;
46.图8是本发明一示例性实施例提供的频域幅值自适应滤波器设计装置的结构框图;
47.图9是本发明一示例性实施例提供的电子设备的结构图。
具体实施方式
48.以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可
由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
49.对于非线性大的回声,麦克风信号相比于参考信号的时域波形差异较大。对应到频域,一则是回声信号的频谱会产生参考信号没有的谐波,二则是对于参考信号与回声信号中都存在的频域信号,并不会有稳定的路径(因为参考信号的频率,特别是高频,叠加了很多非线性,而非线性是相对随机和不可控的)。也就是说自适应滤波要么无法对参考信号没有的谐波进行消除,要么即便当前帧收敛,对于下一帧也很大概率无法收敛。于是自适应滤波的收敛效果非常有限。因此,本发明提出一种频域幅值自适应滤波器设计方法及装置,其基于循环卷积,只考虑频域信号的大小,不考虑频域信号的相位,对回声大小进行估计,然后用维纳滤波的方式进行回声抑制,以解决回声非线性较大时的收敛问题。
50.示例性方法
51.图4是本发明一示例性实施例提供的频域幅值自适应滤波器设计方法的流程示意图,图5是本发明实施例的自适应滤波器工作流程示意图。本实施例可应用在电子设备上,如图4及图5所示,一种频域幅值自适应滤波器设计方法,包括以下步骤:
52.步骤s1,对时域参考信号与近端信号进行时频分析,得到各自的频域幅值。
53.将当前帧参考信号x(n)与前一帧参考信号进行串联并加窗,进行傅里叶变换(fft)得到频域信号x(k),并获得频域信号的频域幅值xa(k);同时对近端信号,或称之麦克风信号或目标信号d(n),进行与参考信号x(n)相同的操作,得到频域幅值da(k)和频域相位angle(k)。
54.由于语音的短时平稳性,每帧可取10ms~30ms对应的点数。在本实施例中,以采样率为8k,帧长20ms为例进行分析,得出每帧长度m=160。为了便于进行fft,同时提高频域分辨率,需要串联前一帧的最后96点数据,使得fft长度n=256;然后点乘n点的分析窗,这里分析窗采用的是hanning窗的开方与矩形窗的结合,也可采取其他形式的窗,但需注意后面合成窗与分析窗的关系;最后进行fft,并取fft结果的前129点作为信号频谱,对频谱求模,得到参考信号的频域幅值xa(k)与近端信号的频域幅值da(k)。
55.步骤s2,基于参考信号频域幅值与滤波器得到估计的回声频域幅值,并获得残差信号。
56.具体地,步骤s2进一步包括:
57.步骤s200,根据麦克风信号和参考信号在频域大小的比值设置初始滤波器参数和滤波器系数上限。
58.也就是说,在本实施例中,滤波器需设定初始值,并进行最大值限定。具体地,则根据麦克风信号和参考信号在频域大小的比值设置初始滤波器参数和滤波器系数上限。
59.步骤s201,利用参考信号频域幅值与滤波器系数相乘,获得回声频域幅值初步估计信号。
60.在本实施例中,参考信号频域幅值xa(k)与da(k)都是点数为n/2+1的实数信号,因此,滤波器也是点数为n/2+1的实数信号。具体地,初步估计的回声频谱幅值表达式为
[0061][0062]
其中*表示乘。一般来说,估计的回声大小越接近实际回声da(k),则说明滤波器收敛性越好。因此,这里的实际含义是实际回声和参考信号在频域的幅值之比。
[0063]
步骤s202,基于近端信号频域幅值与回声频域幅值初步估计信号得到残差信号。
[0064]
在本实施例中,利用近端信号频域幅值减去步骤s201中估计的回声频域幅值,得到残差信号,具体地,输出残差信号ea(k)表达式为:
[0065][0066]
其中,残差信号ea(k)可以是正的,也可以是负的,取决于估计回声和实际回声的大小关系,本实施例中,残差信号ea(k)不作为直接输出,而是只作为滤波器更新的参数。
[0067]
步骤s3,利用残差信号与参考信号对滤波器系数进行更新,得到本帧滤波器最优解
[0068]
在本实施例中,利用残差信号和参考信号估计自适应滤波器更新项:包括参考信号的平滑功率谱计算,参考信号和残差信号互功率谱计算,更新项限幅计算,更新滤波器系数,并用步骤s200得到的滤波器系数上限对滤波器进行限幅。
[0069]
具体地,步骤s3进一步包括:
[0070]
步骤s300,计算参考信号的平滑功率谱。
[0071]
滤波器系数更新由残差信号ea(k)和参考信号xa(k)确定,首先求得参考信号xa(k)的平滑功率谱pa(k)。
[0072]
pa
l
(k)=γ*pa
l-1
(k)+(1-γ)*|xa
l
(k)|2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0073]
其中γ为平滑系数,取值范围为(0,1),||表示取模操作,下标l表示帧索引。
[0074]
步骤s301,计算参考信号与残差信号互功率谱。
[0075]
e2(k)=ea(k)/(pa(k)+δ)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0076]
其中,e2(k)为归一化的残差信号。
[0077]
δ表示一个小量,目的是防止分母为0。这里去掉了帧索引l,所有信号均表示当前帧。
[0078]
步骤s302,计算更新项限幅。
[0079]
由于更新项的计算与归一化的残差信号e2(k)有关,所以对归一化的残差信号e2(k)进行限幅实际上也是对更新项进行了限幅。
[0080]
在本实施例中,为防止滤波器发散,对归一化的残差信号e2(k)大小进行约束,方法是让e2(k)每一点的模值与一个设定好的阈值threshold作比较,如果模值大于该阈值则进行限制。
[0081]
abse(k)=max(|e2(k)|,threshold)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0082]
abse(k)=threshold/abse(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0083]
e2(k)=e2(k)*abse(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0084]
步骤s303,计算滤波器更新项系数,并更新滤波器系数。
[0085]
具体地,利用下式计算出滤波器更新项系数:
[0086][0087]
其中μ是步长因子,由(8)式可知,如果残差信号ea(k)大于0,说明估计的回声偏小,此时为正,将会增大估计的回声,反之如果残差信号ea(k)小于0,将会减小估计的回声。
[0088]
最后更新滤波器系数:
[0089][0090]
表示更新前的回声与参考频域幅值比,表示更新后的回声与参考频域幅值比。
[0091]
步骤s4,基于本帧滤波器最优解与参考信号重新进行回声估计,得到本帧回声信号最优估计。
[0092]
上述公式(1)估计的回声实际是上帧的滤波器系数乘上参考信号所得到的,目的仅是为了更新滤波器系数,所以收敛性不一定是最好的。由于上述公式(9)中得出了当前帧的滤波器系数,利用该系数估计回声可以得到更准确的结果,这也是本发明的创新点之一。为了区分与公式(1)的区别,本发明用ya(k)表示二次回声的估计,具体地,利用参考信号频域幅值乘上更新后的滤波器系数,获得回声频域幅值二次估计信号ya(k):
[0093][0094]
步骤s5,利用回声频域幅值二次估计信号ya(k)和麦克风信号频域幅值(即目标信号的频域幅值da(k)),通过平滑等操作生成维纳滤波系数,并对麦克风信号滤波得到自适应滤波输出信号。
[0095]
具体地,步骤s5进一步包括:
[0096]
步骤s501,对回声频域幅值二次估计信号ya(k)和麦克风信号频域幅值da(k)在频域和时域进行平滑,并用平滑结果构建维纳滤波系数。
[0097]
在本实施例照中,ya(k)是最终估计的回声,该回声与实际回声da(k)相比,可能估计偏大,也可能估计偏小,也可能随着帧移大小关系一直发生抖动。因为输出结果为频谱幅值,不应存在负数情况,因此,在本实施例中,采用了维纳滤波的形式进行。
[0098]
具体地,为了使维纳滤波系数不至于波动过大,可对估计回声信号ya(k)和实际回声da(k)在频域上和时域上均进行平滑操作。
[0099][0100][0101]
ya_s(k)=δ*ya_s(k)+(1-δ)*ya_t(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)
[0102]
da_s(k)=δ*da_s(k)+(1-δ)*da_t(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(14)
[0103]
其中,(11)式与(12)式表示在频域进行的平滑,w是平滑向量,长度为2i+1,数值和为1且中心对称。(13)式与(14)式表示在时域进行的平滑,δ为平滑系数,取值范围[0,1],值越大,越关注历史信息,平滑越强。
[0104]
并基于平滑后的ya_s(k)与da_s(k)构建维纳滤波增益系数:
[0105]
gain(k)=(da_s(k)-ya_s(k))/da_s(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)
[0106]
gain(k)=max(gain(k),min)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(16)
[0107]
(16)式是对增益大小进行限定,当估计的回声平滑值ya_s(k)接近或者大于实际回声平滑值da_s(k)时,得出的增益值接近0或者小于0,需要对增益的最小值进行限定,min为允许的最小增益。
[0108]
步骤s502,利用得到的维纳滤波系数对麦克风信号进行滤波输出。
[0109]
具体地,将当前帧的麦克风频谱乘以该维纳增益:
[0110]
ea(k)=da(k)*gain(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(17)
[0111]
ea为最终输出的频谱幅值,可将ea用于后续的降噪操作,也可将ea结合相位谱angle进行频谱的还原并通过ifft操作转换到时域。
[0112]
因此,可选地,在步骤s5,本发明还包括:
[0113]
步骤s6,将步骤s5得到的频域幅值信号结合相位谱angle进行频谱的还原,得到频谱信号输出。
[0114]
可选地,于步骤s6后,本发明还包括:
[0115]
步骤s7,将频谱信号通过ifft操作转换到时域,得到时域信号。
[0116]
经过以上的步骤,本发明相比于其他的自适应回声消除算法,无论是非线性多强的回声都能得到有效抑制。但可能存在对双讲语音(有时麦克风信号会同时存在回声和近端语音,此时为双讲场景,存在双讲语音)的损失问题,这个问题主要是由于对回声的过估计导致的。
[0117]
为了解决该问题,本实施例对自适应滤波器的值进行了限定。表示麦克风回声大小与参考信号大小在频域的比值,系数值越大,回声估计越大,回声抑制越干净,同时语音损失也越大。为了避免语音损失大的情况,可预先估计出麦克风回声信号的频响和参考信号的频响的比值,并用该比值计算出滤波器系数的最大值限定,可解决语音易损失的问题。也可将该频响的比值作为滤波器初始值,解决滤波器初始阶段收敛慢的问题。
[0118]
与图3的循环卷积自适应滤波相比,本发明通过利用频谱幅值替代频谱,实数运算替代复数运算,运算量降为原来的1/4。与图2的线性卷积自适应滤波相比,除了复数运算被实数运算取代的计算量优化外,还可以节省至少3个fft的计算量,同时本发明与线性卷积自适应滤波器相比较,输出为频域信号,可直接做后续频域降噪等操作。
[0119]
在普遍情况下,本发明收敛效果好于其他自适应滤波器,在回声非线性大的情况下,收敛效果更是远好于其他自适应滤波器。erle能够表示回声的衰减量,该值越大,表明回声抑制越强,图6是线性卷积,循环卷积和本发明的自适应滤波器对于非线性较强的回声的erle比较图,可见本发明的erle值较线性卷积自适应滤波大出8db以上,较循环卷积自适应滤波大出2db以上。
[0120]
本发明通过对滤波器的最大值进行限定,可在保证回声抑制量的同时保证双讲语音的保留量。图7是在信回比低于-6db情况下双讲仿真结果:自上而下分别是参考信号语谱图、麦克风信号的语谱图(其中包含回声信号,也包含近端语音信号,语音信号被回声信号覆盖且相较回声信号小6db以上)以及回声抑制仿真结果,可见回声信号基本被抑制干净了,同时语音信号并没有出现较大的损失。
[0121]
因此,本发明与传统的频域自适应滤波相比,具有以下优点:
[0122]
一、本发明用幅值替代频谱,实数运算替代复数运算,计算量可降为之前1/4。
[0123]
二、本发明收敛性好于传统自适应滤波,尤其是在非线性回声较强的情况。
[0124]
三、增加滤波器系数最大值限定,可在抑制回声的同时保护近端语音。
[0125]
示例性装置
[0126]
图8是本发明一示例性实施例提供的频域幅值自适应滤波器设计装置的系统结构图。本实施例可应用在电子设备上,如图8所示,包括:
[0127]
时频分析单元801,用于对时域参考信号与麦克风信号进行时频分析,得到各自的频域幅值。
[0128]
具体地,时频分析单元801包括时频分析单元1、时频分析单元2、幅值提取单元3和幅值提取单元4,其中,时频分析单元1和时频分析单元2分别将近端信号和参考信号从时域转换到频域,幅值提取单元3和幅值提取单元4则分别将频域信号转换成频域幅值的形式。
[0129]
回声估计及残差计算单元802,用于基于参考信号频域幅值与自适应滤波器得到回声频域幅值初步估计信号,并获得残差信号。
[0130]
具体地,回声估计及残差计算单元802包括回声估计单元5及残差估计单元6,其中,回声估计单元5用于将参考信号频域幅值和滤波器系数进行点乘,得到估计的回声频域大小估计;残差计算单元6则用近端信号减去估计的回声信号,得到去回声后的残差信号。
[0131]
滤波器更新单元803,用于利用得到的残差信号与参考信号对滤波器系数进行更新,并对滤波器系数进行限幅;
[0132]
回声二次估计单元804,用于基于更新后的滤波器系数与参考信号重新进行回声估计和滤波,得到回声频域幅值二次估计信号。
[0133]
维纳滤波单元805,用于对二次估计得到的回声频域幅值二次估计信号和麦克风信号频域幅值进行平滑,获得维纳滤波系数,并基于得到的维纳滤波系数对麦克风信号进行滤波,得到滤除回声之后的信号。
[0134]
可选地,本发明之频域幅值自适应滤波器设计装置,还包括:
[0135]
频谱重构单元806,用于对维纳滤波单元805输出的频域幅值信号结合相位谱angle进行频谱的还原,得到频谱信号,以进行后续处理。
[0136]
可选地,频谱重构单元806将得到的频谱信号转换到时域进行输出。
[0137]
实施例
[0138]
在本实施例中,一种频域幅值自适应滤波器设计方法,具体流程如下:
[0139]
步骤1,将时域参考信号和近端信号转换到频域。
[0140]
步骤2,将参考信号和近端信号的频域信号转换成频域幅值。
[0141]
步骤3,根据麦克风信号和参考信号在频域大小的比值设置初始滤波器参数和滤波器系数上限。
[0142]
步骤4,用参考信号频域幅值乘上滤波器系数,获得回声频域幅值初步估计信号。
[0143]
步骤5,用近端信号频域幅值减去步骤d中估计的回声幅值,得到残差信号。
[0144]
步骤6,用残差信号和参考信号估计自适应滤波器更新项:包括参考信号的平滑功率谱计算,参考信号和残差信号互功率谱计算,更新项限幅计算。更新滤波器系数,并用步骤3得到的滤波器系数上限对滤波器进行限幅。
[0145]
步骤7,用参考信号频域幅值乘上更新后的滤波器系数,获得回声频域幅值二次估计信号。
[0146]
步骤8,对回声二次估计信号和麦克风信号在频域和时域进行平滑,并用平滑结果构建维纳滤波系数。
[0147]
步骤9,用维纳滤波系数对麦克风信号进行滤波,得到输出频域信号。
[0148]
步骤10,将频域信号转换到时域。
[0149]
步骤11,开启下一帧,重复以上步骤。
[0150]
示例性电子设备
[0151]
图9是本发明一示例性实施例提供的电子设备的结构。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。图9图示了根据本公开实施例的电子设备的框图。如图9所示,电子设备包括一个或多个处理器11和存储器12。
[0152]
处理器11可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
[0153]
存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本公开的各个实施例的软件程序的声源定位方法以及/或者其他期望的功能。在一个示例中,电子设备还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
[0154]
此外,该输入装置13还可以包括例如键盘、鼠标等等。
[0155]
该输出装置14可以向外部输出各种信息。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
[0156]
当然,为了简化,图9中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。
[0157]
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
[0158]
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0159]
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使
用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0160]
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
[0161]
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0162]
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

技术特征:


1.一种频域幅值自适应滤波器设计方法,包括以下步骤:步骤s1,对时域参考信号与麦克风信号进行时频分析,得到各自的频域幅值;步骤s2,基于参考信号频域幅值与滤波器得到回声频域幅值初步估计信号,并获得残差信号;步骤s3,利用残差信号与参考信号对滤波器系数进行更新,得到本帧滤波器最优解;步骤s4,基于本帧滤波器最优解与参考信号重新进行回声估计,得到回声频域幅值二次估计;步骤s5,基于回声频域幅值二次估计和麦克风信号频域幅值得到维纳滤波系数,根据获得的维纳滤波系数对麦克风信号滤波得到自适应滤波输出信号。2.如权利要求1所述的频域幅值自适应滤波器设计方法,其特征在于,在步骤s1中,对当前帧参考信号或当前帧麦克风信号与前一帧对应信号进行串联并加窗,进行傅里叶变换得到相应的频域信号,并获得相应频域信号的频域幅值。3.如权利要求2所述的频域幅值自适应滤波器设计方法,其特征在于,步骤s2进一步包括:步骤s200,根据所述麦克风信号和参考信号在频域大小的比值设置初始滤波器参数和滤波器系数上限;步骤s201,利用参考信号频域幅值与滤波器系数相乘,获得回声频域幅值初步估计信号;步骤s202,基于近端信号频域幅值与回声频域幅值初步估计信号得到残差信号。4.如权利要求3所述的频域幅值自适应滤波器设计方法,其特征在于,在步骤s202中,利用麦克风信号频域幅值减去步骤s201中估计的回声频域幅值,得到所述残差信号。5.如权利要求4所述的频域幅值自适应滤波器设计方法,其特征在于,在步骤s3中,利用残差信号和参考信号估计自适应滤波器更新项,包括:参考信号的平滑功率谱计算,参考信号和残差信号互功率谱计算,更新项限幅计算,更新滤波器系数以及并用步骤s200得到的滤波器系数上限对滤波器进行限幅。6.如权利要求5所述的频域幅值自适应滤波器设计方法,其特征在于,在步骤s4中,利用参考信号频域幅值与更新后的滤波器系数相乘,获得回声频域幅值二次估计信号。7.如权利要求6所述的频域幅值自适应滤波器设计方法,其特征在于,步骤s5进一步包括:步骤s501,对所述回声频域幅值二次估计信号和麦克风信号频域幅值在频域和时域进行平滑,并用平滑结果构建维纳滤波系数;步骤s502,利用得到的维纳滤波系数对麦克风信号进行滤波输出。8.如权利要求1所述的频域幅值自适应滤波器设计方法,其特征在于,在步骤s5后,还包括:步骤s6,将步骤s5得到的频域幅值信号结合相位谱angle进行频谱的还原,得到频谱信号输出。9.一种频域幅值自适应滤波器设计装置,包括:时频分析单元,用于对时域参考信号与麦克风信号进行时频分析,得到各自的频域幅值;
回声估计及残差计算单元,用于基于参考信号频域幅值与滤波器得到回声频域幅值初步估计信号,并获得残差信号;滤波器更新单元,用于利用得到的残差信号与参考信号对滤波器系数进行更新,并对滤波器系数进行限幅;回声二次估计单元,用于基于更新后的滤波器系数与参考信号重新进行回声估计,得到回声频域幅值二次估计;维纳滤波单元,基于回声频域幅值二次估计和麦克风信号频域幅值得到维纳滤波系数,根据获得的维纳滤波系数对麦克风信号滤波得到自适应滤波输出信号。10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任意一项所述的频域幅值自适应滤波器设计方法的步骤。

技术总结


本发明公开了一种频域幅值自适应滤波器设计方法及装置、电子设备,该方法包括:对时域参考信号与麦克风信号进行时频分析,得到各自的频域幅值;基于参考信号频域幅值与滤波器得到回声频域幅值初步估计信号,并获得残差信号;利用残差信号与参考信号对滤波器系数进行更新,得到本帧滤波器最优解;基于本帧滤波器最优解与参考信号重新进行回声估计,得到回声频域幅值二次估计;基于回声频域幅值二次估计和麦克风信号频域幅值得到维纳滤波系数,根据获得的维纳滤波系数对麦克风信号滤波得到自适应滤波输出信号。适应滤波输出信号。适应滤波输出信号。


技术研发人员:

罗本彪 邹灵琦 董鹏宇

受保护的技术使用者:

上海富瀚微电子股份有限公司

技术研发日:

2022.11.24

技术公布日:

2023/3/28

本文发布于:2024-09-23 03:17:12,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/81957.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:信号   滤波器   回声   系数
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议