一种基于循环卷积的频域自适应滤波器及其频域处理方法与流程

文档序号:29697300发布日期:2022-04-16 13:23阅读:283来源:国知局
一种基于循环卷积的频域自适应滤波器及其频域处理方法与流程

1.本发明涉及音频信号处理技术领域,特别是涉及一种基于循环卷积的频域自适应滤波器及其频域处理方法。


背景技术:

2.20世纪60年代,贝尔电话实验室的kelly第一个提出把自适应滤波器用于回声消除,其原理如图1所示:利用数字滤波器模拟真实的回声路径h,参考信号x(n)与数字滤波器卷积生成估计的回声信号从麦克风信号d(n)中减去估计的回声信号即可得到回声消除后的信号e(n),再利用一定的准则更新滤波器的系数即可跟踪变化的回声路径实现自适应回声消除的目的。
3.根据数字信号处理理论可知,信号经快速傅里叶变换(fft,fastfourier transform)后,时域的卷积可表现为频域的点乘,复杂度从o(n^2)降至o(n*log2(n))。为实现线性卷积,通常还需将fft前的数据进行补零以防止发生混叠,实际情况实现线性卷积用的更多的频域处理方法是重叠保留法。重叠保留法的实现原理如图2所示:首先将当前帧参考信号x(n)与前一帧参考信号进行串联,得到2的指数个数的时域序列,然后直接进行fft生成频域信号x(k);信号x(k)与滤波器的频响(是时域滤波器进行补零后的傅里叶变换)进行点乘生成估计的回声频域信号将进行逆傅里叶变换(ifft)生成回声时域信号信号的前一半是循环卷积结果,只取后一半作为回声估计;用麦克风信号d(n)减去估计的回声信号后半部分得到回声消除后的信号即残差信号e(n);利用残差信号e(n)和参考信号x(n)进行滤波器更新,为了在频域实现线性卷积,残差信号e(n)在经过fft前需要补零,且在滤波器更新项计算过程中还需要进行一次fft和一次ifft操作。
4.可见,上述重叠保留法需要进行3次fft和2次ifft操作,除此以外,该算法还有以下缺点:1)输出的残差信号e(n)是时域信号,则需要再一次fft才能转换到频域,浪费了计算量;2)输出残差信号直接与前一帧输出进行串联得到连续的时域输出信号,容易导致在连接处不连续,出现失真的情况;3)该算法对参考信号x(n)与麦克风信号d(n)之间的时延关系比较敏感。


技术实现要素:

5.为克服上述现有技术存在的不足,本发明之目的在于提供一种基于循环卷积的频域自适应滤波器及其频域处理方法,以实现一种计算量更小、对时延不敏感且输出为频域信号可直接进行后续频域降噪等操作的频域自适应滤波器。
6.为达上述及其它目的,本发明提出一种基于循环卷积的频域自适应滤波器,包括:
7.第一时频分析单元,用于将参考信号从时域转换到频域,得到参考信号的频域信
号;
8.第二时频分析单元,用于将近端信号从时域转换到频域,得到近端信号的频域信号;
9.回声估计单元,用于将参考信号的频域信号点乘自适应滤波器频率响应,得到估计的回声信号;
10.残差估计单元,用于将近端信号的频域信号减去所述回声估计单元得到的估计的回声信号,得到频域的残差信号输出;
11.滤波器更新项计算单元,用于利用所述残差估计单元输出的频域的残差信号和参考信号的频域信号估计自适应滤波器更新因子;
12.滤波器更新单元,用于利用所述滤波器更新项计算单元估计的自适应滤波器更新因子对自适应滤波器系数进行更新。
13.优选地,所述第一时频分析单元将当前帧参考信号与前一帧参考信号进行串联并加窗,然后进行傅里叶变换得到所述参考信号的频域信号。
14.优选地,所述第二时频分析单元将当前帧近端信号与前一帧近端信号进行串联并加窗,然后进行傅里叶变换得到所述近端信号的频域信号。
15.优选地,所述滤波器更新项计算单元包括:
16.平滑功率谱计算模块,用于计算参考信号的平滑功率谱;
17.归一化模块,用于对所述残差估计单元输出的残差信号进行归一化;
18.滤波器更新项系数计算模块,用于根据归一化残差信号以及参考信号的频域信号计算滤波器更新项系数。
19.优选地,所述参考信号的平滑功率谱p(k)计算如下:
20.p
l
(k)=γ*p
l-1
(k)+(1-γ)*|x
l
(k)|221.其中γ为平滑系数,||表示取模操作,x(k)为参考信号的频域信号,下标l表示帧索引。
22.优选地,所述残差信号的归一化计算如下:
23.e2(k)=e(k)./(p(k)+δ)
24.其中,δ表示一个小量,e(k)为所述残差估计单元输出的频域的残差信号。
25.优选地,于所述归一化模块中,令所述归一化残差信号e2(k)每一点的模值与一个设定好的阈值作比较,如果模值大于该阈值则进行限制。
26.优选地,所述滤波器更新项系数计算如下:
[0027][0028]
其中μ为设定好的步长因子,conj表示取复共轭。
[0029]
优选地,所述滤波器更新单元更新自适应滤波器系数如下:
[0030][0031]
其中,表示更新前的滤波器频率响应,表示更新后的滤波器频率响应。
[0032]
为达到上述目的,本发明还提供一种基于循环卷积的频域自适应滤波器的频域处理方法,包括如下步骤:
[0033]
步骤s1,将参考信号和近端信号转换到频域;
[0034]
步骤s2,将参考信号的频域信号点乘自适应滤波器频率响应,得到估计的回声信号;
[0035]
步骤s3,利用近端信号的频域信号减去步骤s2得到的估计的回声信号,得到频域的残差信号输出;
[0036]
步骤s4,利用残差信号和参考信号的频域信号估计自适应滤波器更新因子;
[0037]
步骤s5,利用步骤s4估计的自适应滤波器更新因子对自适应滤波器系数进行更新。
[0038]
与现有技术相比,本发明具有如下有益效果:
[0039]
1、本发明的参考信号和近端信号(例如麦克风信号)在进行fft之前采用加窗的操作,最后信号的合成也采用加窗操作,可防止帧间变化太大而引起失真;
[0040]
2、本发明采用的循环卷积替代原本的线性卷积;
[0041]
3、本发明去掉了滤波器更新系数中的两次fft操作;
[0042]
4、本发明去掉了输出信号的fft操作,输出为频域信号。
附图说明
[0043]
图1为现有技术回声消除中的自适应滤波器示意图;
[0044]
图2为现有技术中重叠保留法实现原理图;
[0045]
图3为本发明一种基于循环卷积的频域自适应滤波器的结构框图;
[0046]
图4为本发明具体实施例中基于循环卷积的频域自适应滤波器的结构图;
[0047]
图5为本发明一种基于循环卷积的频域自适应滤波器的频域处理方法的步骤流程图;
[0048]
图6为应用现有技术的滤波器的语音增强处理流程图;
[0049]
图7为应用本发明滤波器的语音增强处理流程图;
[0050]
图8为在参考信号和目标信号延迟不匹配情况下本发明与重叠保留法的erle指标对比图。
具体实施方式
[0051]
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
[0052]
图3为本发明一种基于循环卷积的频域自适应滤波器的结构框图,图4为本发明具体实施例中基于循环卷积的频域自适应滤波器的结构图。如图3及图4所示,本发明一种基于循环卷积的频域自适应滤波器,包括:
[0053]
第一时频分析单元1,用于将参考信号从时域转换到频域,得到参考信号的频域信号。
[0054]
第二时频分析单元2,用于将近端信号从时域转换到频域,得到近端信号的频域信号。
[0055]
在本发明具体实施例中,第一时频分析单元1将当前帧参考信号x(n)与前一帧参考信号进行串联并加窗,然后进行傅里叶变换(fft)得到参考信号的频域信号x(k),第二时频分析单元2对目标信号d(n)(即近端信号)进行与参考信号x(n)相同的操作,得到近端信号的频域信号d(k)。
[0056]
在本发明具体实施例中,以用于语音的回声消除为例,由于语音的短时平稳性,每帧可取10ms~30ms对应的点数。这里以采样率为s=8k,帧长t=20ms为例进行分析,得出每帧长度m=s*t=160。为了便于进行fft,同时提高频域分辨率,需要串联前一帧的最后96点(保证将n凑为2的幂次)数据,使得fft长度n=256。然后点乘n点的分析窗,这里分析窗采用的是hanning窗的开方与矩形窗的结合,也可采取其他形式的窗,但需注意后面合成窗与分析窗的关系,最后进行fft,并取fft结果的前点作为信号频谱,得到参考信号的频域信号x(k)与近端信号的频域信号d(k)。
[0057]
回声估计单元3,用于将参考信号的频域信号点乘自适应滤波器频率响应,得到估计的回声信号。
[0058]
在本发明具体实施例中,参考信号的频域信号x(k)与近端信号的频域信号d(k)都是点数为n/2+1的复数信号,所以频域自适应滤波器也是点数为n/2+1的复数信号。估计的回声信号由参考信号的频域信号点乘自适应滤波器频率响应得到,估计的回声信号表达式为
[0059][0060]
其中.*表示点乘,这里的并未像重叠保留法那样由时域滤波器补零后经fft得到,而是未进行补零的时域滤波器的频率响应。
[0061]
根据上述式(1),从时域来看是参考信号与滤波器进行循环卷积而非线性卷积。
[0062]
残差估计单元4,用于将近端信号的频域信号减去回声估计单元3得到的估计的回声信号,得到频域的残差信号,即本发明频域自适应滤波器的输出信号。
[0063]
在本发明具体实施例中,输出残差信号e(k)表达式为:
[0064][0065]
滤波器更新项计算单元5,用于利用残差估计单元4输出的残差信号e(k)和参考信号的频域信号x(k)估计自适应滤波器更新因子。所述自适应滤波器更新因子包括但不限于参考信号的平滑功率谱、参考信号和残差信号互功率谱以及滤波器更新项系数。
[0066]
具体地,滤波器更新项计算单元5包括:
[0067]
平滑功率谱计算模块,用于计算参考信号的平滑功率谱。
[0068]
在本发明具体实施例中,参考信号的平滑功率谱p(k)计算如下:
[0069]
p
l
(k)=γ*p
l-1
(k)+(1-γ)*|x
l
(k)|2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0070]
其中γ为平滑系数,建议取值为0.9,||表示取模操作,下标l表示帧索引。
[0071]
归一化模块,用于对残差估计单元4输出的残差信号e(k)进行归一化。
[0072]
在本发明具体实施例中,对残差信号进行归一化,计算如下:
[0073]
e2(k)=e(k)./(p(k)+δ)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0074]
其中,./表示点除,δ表示一个小量,其目的是防止分母为0。这里去掉了帧索引l,所有信号均表示当前帧。
[0075]
在本发明具体实施例中,为防止滤波器发散,需要对归一化残差信号e2(k)大小进行约束,采用的方法是:令e2(k)每一点的模值与一个设定好的阈值threshold作比较,如果模值大于该阈值则进行限制。具体如下:
[0076]
abse(k)=max(abs(e(k)),threshold)
ꢀꢀꢀ
(5)
[0077][0078]
e2(k)=e2(k).*abse(k)
ꢀꢀꢀ
(7)
[0079]
滤波器更新项系数计算模块,用于根据归一化残差信号以及参考信号的频域信号计算滤波器更新项系数。
[0080]
在本发明具体实施例中,滤波器更新项系数计算如下:
[0081][0082]
其中μ为设定好的步长因子,conj表示取复共轭。本发明中,更新项为归一化后的互功率谱乘以步长因子。
[0083]
滤波器更新单元6,用于利用滤波器更新项计算单元5估计的自适应滤波器更新因子对自适应滤波器系数进行更新。
[0084]
具体地,利用滤波器更新项系数更新自适应滤波器系数,即自适应滤波器频率响应:
[0085][0086]
其中,表示更新前的滤波器频率响应,表示更新后的滤波器频率响应。
[0087]
可见,本发明整个过程只需要用到2个fft,相比于重叠保留法的3个fft和2个ifft操作减少了3个fft的计算量。
[0088]
在本发明中,本发明自适应滤波器输出的残差信号e(k)为频域信号,其可以直接变换到时域并进行加窗合成,也可以直接进行降噪等操作再转换到时域并进行加窗合成。具体方法如下:
[0089]
e(n)=ifft(e(k);flipud(conj(e(2:end))))
ꢀꢀꢀꢀꢀꢀ
(10)
[0090]
其中conj表示取复共轭,flipud表示向量上下颠倒,ifft表示逆fft操作。
[0091]
这是因为原时域信号是实信号,经过fft后频域信号共轭对称,所以只需选取了一半进行处理,处理完成后,需要还原信号的共轭对称性才能经过ifft还原时域信号。最后当前帧时域输出信号需加合成窗然后与前一帧信号进行重叠合成最后的时域序列。
[0092]
可见,本发明参考信号和麦克风信号进行fft之前有加窗的操作,最后信号的合成也有加窗操作,该操作可以防止帧间变化太大而引起失真。
[0093]
图5为本发明一种基于循环卷积的频域自适应滤波器的频域处理方法的步骤流程图。如图5所示,本发明一种基于循环卷积的频域自适应滤波器的频域处理方法,包括如下步骤:
[0094]
步骤s1,将参考信号和近端信号转换到频域。
[0095]
在本发明具体实施例中,将当前帧参考信号x(n)与前一帧参考信号进行串联并加窗,然后进行傅里叶变换(fft)得到参考信号的频域信号x(k),对目标信号d(n)(即近端信号)进行与参考信号x(n)相同的操作,得到近端信号的频域信号d(k)。
[0096]
在本发明具体实施例中,以用于语音的回声消除为例,由于语音的短时平稳性,每帧可取10ms~30ms对应的点数。这里以采样率为s=8k,帧长t=20ms为例进行分析,得出每帧长度m=s*t=160。为了便于进行fft,同时提高频域分辨率,需要串联前一帧的最后96点(保证将n凑为2的幂次)数据,使得fft长度n=256。然后点乘n点的分析窗,这里分析窗采用的是hanning窗的开方与矩形窗的结合,也可采取其他形式的窗,但需注意后面合成窗与分析窗的关系,最后进行fft,并取fft结果的前点作为信号频谱,得到参考信号的频域信号x(k)与近端信号的频域信号d(k)。
[0097]
步骤s2,将参考信号的频域信号点乘自适应滤波器频率响应,得到估计的回声信号。
[0098]
在本发明具体实施例中,参考信号的频域信号x(k)与近端信号的频域信号d(k)都是点数为n/2+1的复数信号,所以频域自适应滤波器也是点数为n/2+1的复数信号。估计的回声信号由参考信号的频域信号点乘自适应滤波器频率响应得到,估计的回声信号表达式为
[0099][0100]
其中.*表示点乘,这里的并未像重叠保留法那样由时域滤波器补零后经fft得到,而是未进行补零的时域滤波器的频率响应。
[0101]
根据上述式(1),从时域来看是参考信号与滤波器进行循环卷积而非线性卷积。
[0102]
步骤s3,利用近端信号的频域信号减去步骤s2得到的估计的回声信号,得到频域的残差信号,即本发明自适应滤波器的输出信号。
[0103]
在本发明具体实施例中,输出残差信号e(k)表达式为:
[0104][0105]
步骤s4,利用残差信号和参考信号的频域信号估计自适应滤波器更新因子。所述自适应滤波器更新因子包括参考信号的平滑功率谱、参考信号和残差信号互功率谱以及滤波器更新项系数。
[0106]
具体地,步骤s4进一步包括:
[0107]
步骤s400,计算参考信号的平滑功率谱。
[0108]
在本发明具体实施例中,参考信号的平滑功率谱p(k)计算如下:
[0109]
p
l
(k)=γ*p
l-1
(k)+(1-γ)*|x
l
(k)|2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0110]
其中γ为平滑系数,建议取值为0.9,||表示取模操作,下标l表示帧索引。
[0111]
步骤s401,对步骤s3输出的残差信号e(k)进行归一化。
[0112]
在本发明具体实施例中,对残差信号进行归一化,计算如下:
[0113]
e2(k)=e(k)./(p(k)+δ)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0114]
其中,δ表示一个小量,其目的是防止分母为0。这里去掉了帧索引l,所有信号均表示当前帧。
[0115]
在本发明具体实施例中,为防止滤波器发散,需要对e2(k)大小进行约束,采用的方法是:令e2(k)每一点的模值与一个设定好的阈值threshold作比较,如果模值大于该阈值则进行限制。具体如下:
[0116]
abse(k)=max(abs(e(k)),threshold)
ꢀꢀꢀ
(5)
[0117][0118]
e2(k)=e2(k).*abse(k)
ꢀꢀꢀ
(7)
[0119]
步骤s402,根据归一化残差信号以及参考信号的频域信号计算滤波器更新项系数。
[0120]
在本发明具体实施例中,滤波器更新项系数计算如下:
[0121][0122]
其中μ为设定好的步长因子,conj表示取复共轭。本发明中,更新项为归一化后的互功率谱乘以步长因子
[0123]
步骤s5,利用步骤s4估计的自适应滤波器更新因子对自适应滤波器系数进行更新。
[0124]
具体地,利用滤波器更新项系数更新滤波器系数:
[0125][0126]
其中,表示更新前的滤波器频率响应,表示更新后的滤波器频率响应。
[0127]
实施例
[0128]
在本实施例中,将本发明自适应滤波器用于回声消除。完整的语音增强算法包含回声消除(aec,acoustic echo cancellation),主动噪声消除(anc,active noise cancellation)和自动增益控制(agc,active gain control)三个主要部分,如图6及图7所示,图6为应用现有技术的滤波器的语音增强处理流程图,图7为应用本发明滤波器的语音增强处理流程图,因为本发明采用了分析窗与合成窗,输出的频域信号可以直接进行另外的处理,合成后的信号也不会产生畸变。对于重叠保留法,也可以有输出的频域残差信号,由于最终转换到时域的信号是直接与前一帧串联生成合成信号的,对该频域信号进行额外操作极易导致前后帧间的突变,从而导致最后合成的信号失真;所以经过重叠保留法后需要对该输出的时域信号进行加窗并时频转换后才能进行频域降噪等操作。如此一来,根据图5和图6对比所示,在整个语音增强方案中,本发明还可以再多省去1个fft的计算量,总共比重叠保留法省去了4个fft计算量。
[0129]
对于参考信号和目标信号间的时延关系不敏感。对于回声消除而言,需要事先估计参考信号与回声信号之间的延迟,进行对齐之后再进行自适应滤波的操作。参考信号需要与回声信号对齐或者略微超前于回声信号才能获得比较好的收敛效果。如果参考信号稍落后于回声信号,滤波器收敛效果会受到很大影响。erle是评价自适应回声消除效果的一
个重要指标,该值越大,说明回声消除越好。图8是在参考信号和目标信号延迟不匹配情况下本发明与重叠保留法的erle指标对比,从图中可得,重叠保留法在此情况下erle值很小,说明此时的滤波器没有对回声起到消除效果,而本发明的erle值整体上比重叠保留法高出了10db以上,在时延不匹配情况下仍不会对收敛效果有太大的影响。
[0130]
需说明的是,本发明的自适应滤波器除了可用在回声消除中,也可用在其余用到自适应滤波器的场景,本发明不以此为限。
[0131]
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1