在本描述中,等式,矩阵,等按以下所述的示出。信号用小写字符标记,常数用大写字符标记。下划线被用于向量,小写用于时间域,大写用于频率域。矩阵用黑体大写标记,如I。维数被放在上角中(例如B×Q矩阵X由XB,Q给出,对于方阵第二维被省略)。对角阵用双下线标记,如
,其对角线标记为
P=diag{
}。下角标i,如
w i,标记第i型。
w的第k个元素由(
w)k给出。最后,附加符号[k]标记时间指数,(.)t标记转置,(.)*标记复共轭和(.)h标记Hermitain转置(复共轭转置)。
在图1中所示的一种通常的多输入自适应FIR滤波器利用S信号x0[k]至xs-1[k],除去与信号e[k]中这些信号相关的不需要的成分。信号x0[k]至xs-1[k]被输入S FIR滤波器W0至Ws-1,输出为ê0[k]至ês-1[k]。更新算法的目的是使FIR滤波器的系数适应于这样一种方式,即在r[k]和输入信号x0[k]和xs-1[k]之间的相关被除去。
对于S>a≥0,FIR滤波器Wa执行信号xa[k]和滤波器系数Wa,0[k]…Wa,N-1[k]的卷积。这样一种滤波器的输出信号êa[k]可被描述如下:
对于S>a≥0
多输入自适应滤波器输出由下式给出:
分离的(自适应)滤波器W0至Ws-1的这些滤波器部分可藉助于分区,块处理和离散富里哀变换(DFT)在频率域中被有效地实现。缩减计算复杂性被获得是因为在时间域中每个样本的卷积变换成频率域中每块的元素乘法。我们利用块长度B的块处理和长度M的DFT,其中M≥N+B-1。对于S>a≥0,输入信号的变换可被描述如下:
其中FM是M×M富里哀矩阵。富里哀矩阵的第(a,b)个元素(对于0≤a<M,0≤b<M),由下式给出: 其中
然后可在频率域中计算此滤波器,利用:
注意,频率域滤波器系数与时间域系数有关,对于所有的S>a≥0,这可被标记为:
为了达到有效率的实施,块长度B必须选取与滤波器长度N相同的数量级,这导致较大的处理延时。
为了降低处理延时,滤波器可被分区成较小的长度B的部分,利用g=[N/B],我们得到图2的实施方案,可被描述如下:
其中
对于滤波器的更新部分,我们可以利用S分离的更新算法以便改变通过利用导致很大的计算复杂性的类似RLS的算法,在时间域中被分离地去相关的输入信号的收敛状况。利用如在G.P.M.Egelmeers,Real time realization of large adaptive filters,Ph.D.thesis,Eindhoven University of Technology,Eindhoven(TheNetherlands),Nov.1995中所描述的(被分区的)块频率域自适应滤波器在频率域中的实施方案可以降低复杂性。当在滤波器的输入信号之间存在相关时,由于非唯一性问题,这样仍然可以导致非常差的收敛状况。
在本申请中,提议使用一种频率域中的分区算法,减少输入信号之间的互相关对算法的收敛状况的影响。为了减少复杂性,采用块长度A进行块处理,用以计算随每次迭代得到的A个相继的更新值之和。对于S>a≥0,利用g
u=[N/z],系数向量
[lA]被分区成为长度Z的g
u部分,对于S>j≥0:
富里哀变换长度L被采用,L≥Z+A-1,对于S>a≥0,我们定义输入信号富里哀变换为
对角矩阵
[lA]包含作为主对角线的向量
[lA],所以对于S>a≥0
一种交迭-存储方法被用于计算频率域中包含在自适应过程中的相关,残余信号向量的频率域变换等于
在MFDAF(多输入频率域自适应滤波器)算法中对于滤波器系数的更新等式组,对于g
u>i≥0,现在可被定义为:
和
变换矩阵G
S.Z,S.L由下式给出
其中G
Z,L=(J
Z0
Z,L-Z)(F
L)
-1.输入信道的功率矩阵P
S.L[lA]被定义为
其中
以上等式的期望算子ε{}必须用一种估值的例行程序代替。
功率矩阵PS.L[lA]可被估值为
为了减少乘法数目,通过定义
等式的步距参数α被并入以上的功率估值例行程序中,所以
然后功率矩阵
[lA]的估值可由下式算得:
本算法的直接应用导致稳定性问题。当在某个频段中输入信号功率是非常小时,在此段中的功率将减少到(非常)小的值。那末矩阵的倒置将具有大的值,这将是不准确的(由于数字和估值误差)。在理想情况下,功率矩阵估值的本征值抵消输入信号功率矩阵的本征值。由于估值误差,这个目标只是近似的,失配引起偏离理想收敛状况并甚至可导致不稳定。特别是当倒置功率矩阵估值的某些本征值很大,并未(准确地)抵消输入信号功率矩阵的(小的)本征值,不稳定可能产生。对功率矩阵估值本征值的一个较低的限度可以解决这个问题。在单信道情况下(或者当我们忽略交叉项时),我们可通过将较低的限度应用于较低的值解决这个问题。我们可以这样做是因为对角线矩阵的本征值等于对角线的元素,所以我们实际上限制了本征值。在多信道的情况下我们也必须限制本征值以保证稳定性,但是这些值不再等于对角线的元素。
然而我们知道所有功率矩阵的本征值是正的。现在通过用所建议的最小值替换它们,我们可以建立本征值的下限。我们知道对于一个矩阵A的所有本征值λ,A+(Pmin-λ’)·I的行列式必须为零。所以对于所有的λ’,A+Pmin·I,必定是λ,A的本征值,使得λ’=λ+Pmin(和其他的圆整方法)。这意味着通过将恒定的Pmin加到一个矩阵的主对角线,该矩阵的所有本征值被Pmin替换,所以我们定义:
这导致:
这种本征值的替换对(理论上理想的)算法的收敛状况的影响将是非常小的,实际上算法是非常稳定的。
虽然
[lA]是一种稀少的矩阵,计算其倒置将仍然需要SxS矩阵的倒置L,按L·S3的操作次序进行。然而,因为我们不需要倒置其本身,只是其矩阵向量与输入信号的积,当解该系统时我们也可以观察这点,
这需要按L·S2的操作次序。另一种可选方案是直接估计PS.L[LA]的倒置,这也导致许多与L·S2成比例的操作。然而,在这种情况下我们也必须限制本征值以保证稳定性。
一种简单的算法由下式给出:
我们可以并入α,这导致
以上算法并不保证矩阵(
[lA])-1具有正的本征值,因此引入许多稳定性问题。在单信道的情况下,我们能够通过利用估值的下限稳定算法,并自动地得到正的本征值,因为矩阵是对角线的,但在多信道情况下这是不可能的。正本征值
一种用于估计带有正本征值的
[lA]的算法的准确变换将导致用于带有正本征值的倒置的一种估值算法。这可通过利用矩阵倒置的辅助定理来完成。当有一个矩阵A,使得A=B+C·D·E (15)
则A的倒置矩阵(A)-1可被表达为(A)-1=(B)-1-(B)-1·C·((D)-1+E·(B)-1·C)-1·E·(B)-1· (16)
通过选择 C=(XS·L,L[lA])* (17) E=Ch=(XS·L,L[lA])t
和Q=(B)-1·C=E·(B)-1 (18)
利用等式(14)我们得到:
其中
算法(19)不包含矩阵倒置,只有L/2+1个除法,因为等式(20)的
[lA]矩阵是一个实数值的对角线矩阵。对本征值的限制
一种等效于将常数加到(非倒置)功率矩阵的对角线的对倒置功率矩阵的运算可以解决此问题。加上一个完全的(S·L)×(S·L)恒等矩阵和利用矩阵倒置辅助定理试图找到一种对倒置功率矩阵的等效操作导致一种算法,需要我们想要避免的矩阵倒置,所以我们试图
其中:
因为矩阵I具有秩S·L,积矩阵(
[lA])
*·(
[lA])
t和(X
S.L.L[lA])
*·(X
S.L.L[lA])
t两者具有秩(顶多)L,对于S>1的情况这是不可能的。因为我们需要(X
S.L.L[lA])
*·(X
S.L.L[lA])
t的平均值,通过在S个相继的更新值上取平均,我们可以找到一个解。我们将试图找到
[lA],使得:
对S=1我们得到
对于S>1存在无穷数量的解。如我们试图保持最大畸变(最大的矩阵元素)尽可能的小,我们必须选取对于所有的S>j≥0和S>i≥0
如果对于S=L,有一个实对称矩阵UL,那末对S=2L,一个实对称矩阵U2L由下式给出:
利用以上的等式我们可以组成所有的U2i,i>0。如果S+1不是2的幂数,那末我们将利用矩阵U2i,其中2i>S+1>2i-1,并且利用最后的S行。在表1中概要列出利用一种带对本征值限的直接倒置估值的功率矩阵估值算法。初始化
for i=l to log2(Su)do2.begin(开始)
end
3.对功率矩阵初始化迭代
表1:带有限值的直接倒置功率更新过程
注意,P
S.L[LA]的倒置也是一种带有相同结构的稀少的矩阵,我们定义:
其中对于0≤i<S和0≤j<S
图5扼要示出利用一种带有自适应滤波器AF5(只示出一个)的立体声回波消除器SEC5的一种远程会议系统TS5的例子。远程会议系统包括一个远处的房间FR5和一个近处的房间NR5。自适应滤波器AF5必须滤去立体声回波信号。
图6示出在远程会议系统TS6中使用的一种立体声回波消除器SEC6的例子。立体声回波消除必须在近处房间NR6和远处房间FR6之间实施。在本例中也使用可编程滤波器PF61和PF62以改进回波消除的性能。可编程滤波器描述于US-A-4,903,247中。
可编程滤波器的输出也被进一步供给一个动态的回波抑制器DES6,其输出被连到立体声回波消除器的输出。动态回波抑制器被描述在WO-97-45995中。
一种完全的立体声通信需要四个立体声AEC,两个在近端侧,两个在远端侧。在图6中这些回波消除器中只有一个被示出。注意,在每一侧,我们可通过两个回波消除器的倒置功率矩阵将输入信号延时线,FFT和乘法组合,这意味着为除去互相关的有关的额外的计算复杂性被更进一步地降低。通过加入所示的动态回波抑制器,AEC的性能被进一步改进。
图7示出另一种应用,其中一种立体声回波消除器SEC7被用于话音控制声频(和视频)系统VCS7中。为了能够由话音辨认器械辨认本地的扬声器,我们必须抵消由声频装置通过扬声器发送出的声音。这是通过利用立体声消除器SEC7完成的。为了改进立体声回波的消除,在本例中也使用可编程滤波器PF71和PF72,以及动态回波抑制器DES7。动态回波抑制器的输出被连到话音辨认器VR7,用于处理已滤波的信号。
图8示出一种噪声消除器NC8的例子,用于消除在房间R8中的话筒上与该房间中的一个人的话音信号SP1一起接收到的噪声。在本例中,话筒提供信号给一个波束形成器BF8,该波束形成器提供信号给噪声消除器NC8和可编程滤波器PF81,PF82和PF83。噪声消除器进一步包括一个动态回波抑制器DES8。动态回波抑制器的输出被连到噪声抑制器的输出,提供接收到的语音SP2的一种估值。
在多输入噪声消除器中我们也采用DES(实际上它并不抑制回波,但与AEC情况下的DES类似)和可编程滤波器以改进性能,如图8中所示。一个附加的问题是滤波器的输入可能包含某些所希望的信号的成分(“信号泄漏”),因为波束形成器并不是完美无缺的。当所希望的信号是语音信号时,语音检测器可被用于改进MFDAF的状况。
以上描述了一种立体声回波消除器和噪声消除器的某些应用的例子,应该指出本发明可被用于不同的应用场合,并不限于所描述的应用。