语音降噪LMS算法_第1页
语音降噪LMS算法_第2页
语音降噪LMS算法_第3页
语音降噪LMS算法_第4页
语音降噪LMS算法_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章是绪论部分,阐述了课题研究的背景、目的和意义。第二章介绍了几种常见的语音降噪方法,并对每种方法进行了简单的分析,针对文章研究的内容,选择了适合的语音降噪方法。第三章先介绍了自适应滤波器技术原理,接着分析了噪声抵消算法的原理及算法性能比较,最后对LMS算法进行了详细分析。第四章对两种变步长LMS算法做了进一步的改进,对所提出的算法进行性能仿真,并针对仿真结果进行算法的可行性和性能分析。第五章引入并改进了频域快速LMS算法,并针对仿真结果进行算法的可行性和性能分析。第六章是对全文的总结,分析了本文的主要研究成果,并对未来工作进行了分析与展望。语音降噪LMS算法第2章语音降噪的模型与方法2.1引言语音降噪主要研究如何利用信号处理技术消除信号中的强噪声干扰, 从而提高输出信噪比以提取出有用信号的技术。消除信号中噪声污染的通常方法是让受污染的信号通过一个能抑制噪声而让信号相对不变的滤波器,此滤波器从信号不可检测的噪声场中取得输入,将此输入加以滤波,抵消其中的原始噪声,从而达到提高信噪比的目的。2.2语音和噪声的特性2.2.1语音的特性(1)语音是时变的、非平稳的随机过程人类发音系统生理结构的变化速度是有一定限度的,在一段时间内10-30ms),人的声带和声道形状是相对稳定的,因而语音的短时谱具有相对稳定性,所以在语音分析中就可利用短时谱的这种平稳性[1]。(2)语音可分为浊音和清音两大类浊音在时域上呈现出明显的周期性,在频域上有共振峰结构,而且能量大部分集中在较低频段内而清音段没有明显的时域和频域特征,类似于白噪声。在语音增强研究中,可利用浊音的周期性特征,采用梳状滤波器提取语音分量或者抑制非语音信号,而清音则难以与宽带噪声区分。(3)语音信号可以用统计分析特性来描述由于语音是非平稳的随机过程,所以长时间的时域统计特性在语音增强的研究中意义不大。语音的短时谱幅度的统计特性是时变的,只有当分析帧长趋于无穷大时,才能近似认为其具有高斯分布。高斯分布模型是根据中心极限定理得到的,将高斯模型应用于有限帧长只是一种近似的描述。在宽带噪声污染的语音增强中,可将这种假设作为分析的前提。(4)语音感知对语音增强研究有重要作用人耳对语音的感知主要是通过语音信号频谱分量幅度获得的,人耳对频率高低的感受近似与该频率的对数值成正比。共振峰对语音的感知十分重要,特别是第二共振峰比第一共振峰更为重要。2.2.2噪声的特性噪声来源于实际的应用环境,因而其特性变化无穷,噪声可以是加性的,也可以是非加性的。考虑到加性噪声更普遍且易于分析问题,并且对于部分非加性噪声,如乘积性噪声或卷积性噪声,可以通过同态变换而成为加性噪声,这里我们仅讨论加性噪声。加性噪声大致可分为周期性噪声、冲激噪声和宽带噪声:(1)周期性噪声周期性噪声的特点是有许多离散的窄谱峰,它往往来源于发动机等周期运转的机械,如或交流声会引起周期性噪声。周期性噪声引起的问题可以通过功率谱发现,并通过滤波或变换技术将其去掉。(2)冲激噪声冲激噪声表现为时域波形中突然出现的窄脉冲,它通常是放电的结果。消除这种噪声可根据带噪语音信号幅度的平均值确定闽值,当信号幅度超过这一阈值时判为冲激噪声,然后进行消除。(3)宽带噪声宽带噪声的来源很多,如热噪声、气流如风、呼吸噪声及各种随机噪声源等,量化噪声也可视为宽带噪声。由于宽带噪声与语音信号在时域和频域上完全重叠,因而消除它最为困难,这种噪声只有在语音间歇期才单独存在。对于平稳的宽带噪声,通常认为是白色高斯噪声不具有白色频谱的噪声,可以先进行白化处理。对于非平稳的宽带噪声,情况就更为复杂一些。本文中研究的噪声等以人的呼吸或实验室环境下的噪声为主要对象,这种噪声一般符合如下的假设:(1)噪声是加性的;(2)噪声是局部平稳的,局部平稳是指一段带噪语音中的噪声,具有和语音开始前那段噪声相同的统计特性,且在整个语音段中保持不变,也就是说,可以根据语音开始前那段噪声来估计语音中所叠加的噪声统计特性;(3)噪声与语音独立或不相关。2.2.3带噪语音模型本文中研究的噪声是以工厂噪声、人的噪音以及汽车噪声等为主要对象,一般符合如下的假设噪声是加性的、局部平稳的、噪声与语音统计独立或不相关。带噪语音模型表达式如下 [2]y(n) s(n) d(n)(2-1)其中s(n)表示纯净语音,d(n)表示噪声,y(n)表示带噪语音。带噪语音模型如图2-1所示:噪声d(n)纯净语音s(n) 加性系统 带噪语音y(n)图2-1带噪语音模型2-1带噪语音模型而说噪声是局部平稳,是指一段带噪语音中的噪声,具有和语音段开始前那段噪声相同的统计特性,且在整个语音段中保持不变。也就是说,可以根据语音开始前那段噪声来估计语音中所叠加的噪声统计特性。2.3几种传统的语音降噪方法通过对前人在噪声抵消方面的研究的学习和总结,现以语音信号为例,列举几种语音降噪的方法并对其性能进行简单介绍如下:2.3.1频谱减法频谱减法是利用噪声的统计平稳性以及加性噪声与读音不相关的特点而提出的一种语音增强方法。这种方法没有使用参考噪声源,但它假设噪声是统计平稳的,即有语音期间噪声振幅谱的期望值与无语音间隙噪声的振幅谱的期望值相等。用无语音间隙测量计算得到的噪声频谱的估计值取代有语音期间噪声的频谱,与含噪语音频谱相减,得到语音频谱的估计值。当上述差值得到负的幅度值时,将其置零。频谱减法的主要思想是认为:含噪语音在噪声平均功率以上的部分就是语音功率,其余则认为是噪声功率。这种显然忽略了噪声和语音的随机特性。在含噪语音的功率谱中,噪声平均功率以上部分并非全是语音,其中肯定有不少加性噪声成分存在,其下部分则也必有语音成分存在。因此,这种方法对提高语音信噪比十分有限,而且还会引起语音的失真。特别是在低信噪比时,这种方法很难提高语音质量,更难提高语音可懂度。普减法的优点在于它的算法简单,并且可以较大幅度地提高信噪比,其缺点是增强后的语音中含有明显的音乐噪声,这是由频谱相减而产生的一种残留噪声,具有一定的节奏起伏感,故而被称为音乐噪声。2.3.2线性滤波法线性滤波法主要是利用了语音的产生模型。 对于受加性稳态白噪声干扰的语音信号来说,语音的频谱又以根据语音的产生模型近似地用含噪语音来预测得到。而噪声频谱则用其期望值来近似。这样得到了语音和噪声近似的频谱后就可得到滤波器,由此滤波器可使语音得到增强。线性滤波法不仅用到了噪声的统计知识,还用到了部分语音知识,但显然这些知识都是一种近似的代替。因此这种方法对提高语音信噪比和可懂效果十分有限。特别是当信噪比较低时,对语音参数的预测误差明显增大,从而降噪效果就不明显,并且当噪声不是白噪声时,按照语音的产生模型就很难准确预测语音参数 [3]。因此对有色噪声线性滤波方法就能难以应付。2.3.3小波变换法小波分析是一种时频分析,而传统的信号分析是建立在傅立叶变换的基础之上的。由于傅立叶分析使用的是一种全局的变换,因此无法表达信号时频局域性质,而这种性质恰恰是非平稳信号如语音信号最根本和最关键的性质。Mallat最早建立了多分辨率分析框架与小波分析的关系 [4]。小波变换能将信号在多个尺度上进行子波分解,各尺度上分解所得的子波变换系数代表原信号在不同分辨率上的信息。它具有多分辨率分析的特点,而且在时频域都具有表征信号局部特征的能力。它克服了短时傅立叶变换固定分辨率的缺点,在信号的高频部分,可以获得较好的时间分辨率,在信号的低频部分可以获得较高的频率分辨率,特别适用于像语音信号、地震信号等非平稳信号的处理。由于信号和随机噪声在不同尺度的特性关系,许多研究学者已利用这种特性进行信号的去噪处理,并取得较好的效果。但是,由于用子波系数去噪时,需要选择和确定一个用于取舍信号和噪声模极大值的阈值,而在实际应用中该阈值是较难选择确定的。另外,也有学者采用二进子波、子波包和带子波进行语音增强,但这些方法的频率划分是一种倍频程关系,与人耳所固有的对语音的频域感知特性不完全吻合。2.3.4子空间语音降噪法子空间语音降噪法[5-7]将带噪语音信号投影到语音信号子空间和噪声子空间两个子空间,语音信号子空间中主要为语音信号,但还含有少量的噪声信号,噪声子空间只含有噪声信号,因此对纯净语音的估计可以不考虑噪声子空间中的分量,只保留语音信号子空间中的分量。在信号与噪声子空间分解算法中先对信号进行一些假设:语音信号与噪声都是零均值的随机过程;语音信号在短时内是平稳的;语音信号与噪声是正交的;噪声是一个随机的白噪声;所有的信号都是各态历经的,即可以用时间平均来代替统计平均。根据时域约束条件,可以推导出语音信号失真最小情况下的最优估计器。在线性信号模型中,假定纯净语音信号为:SY(2-2)其中Ψ为K×M的矩阵,其秩为M(M<K),Y是M×1的矩阵。S的协方差矩阵为:RS{SST}RYT(2-3)其中RY为Y的协方差矩阵,为正定的。RS的秩为M。有了前述的假设,可以将带噪语音信号表示为:XSNYN(2-4)其中X、S和N分别是K维的带噪语音信号、纯净语音信号和噪声向量。设~HX为纯净语音信号的估计,其中H为K×K阶矩阵。则该估计器的误差信S号ε为:~SS(HI)SHNSN(2-5)其中, S和N分别表示语音信号的失真和残留噪声。有研究表明[8],子空间法在低信噪比时效果要差一些, 而在高信噪比时效果较好。同时还须注意的是,子空间法的计算量较大,所以实时性会稍差些。2.3.5自适应噪声抵消法就目前而言,带自适应滤波器的自适应噪声抵消法对含噪声语音的降噪效果较好。因为这种方法比其它方法多用了 1个参考噪声作为辅助输入,从而获得了比较全面的关于噪声的信息,因而能得到更好的降噪效果。特别是在辅助输入噪声与语音中的噪声完全相关的情况下,自适应噪声抵消法能完全排除噪声的随机性,彻底地抵消语音中的噪声成分,从而无论在信噪比SNR(SignaltoNoiseRatio)方面还是在语音可懂度方面都能获得较大的提高[9]。其工作原理实质上为以均方误差E[e2(n)]或方差e2(n)最小为准则,对噪声d(n)进行最优增强语音的目的。随着理论性能研究的不断深入,应用日趋广泛。2.4本章小结本章首先对语音和噪声的特性进行了简要介绍,随后讨论了几种语音降噪的模型与实现方法以及各自的优缺点。文章的后几章主要是选用自适应噪声抵消技术进行语音降噪处理,并将进行详细的陈述,所以本章只是简要的对自适应噪声抵消的方法做了介绍。第3章 自适应滤波器和噪声抵消的算法3.1引言所谓自适应滤波器就是以输入和输出信号的统计特性的估计为依据,采取特定算法自动调整滤波器系数, 使其达到“最佳”滤波特性的一种算法或装置。 自适应滤波器通常由滤波器结构和自适应算法两部分构成,本文致力于研究自适应算法。3.1.1滤波器结构自适应滤波器的结构可以是 IIR型结构和 FIR型结构。但在实际应用中,一般都采用 FIR型,其主要原因是,FIR结构的自适应技术实现容易,其权系数的修正就调节了滤波器的性能, 同时还可以保证其稳定性。对于 IIR滤波器,当自适应处理过程中,极点移出单位圆之外时,就会使滤波器产生不稳定。一个自适应的FIR滤波器的结构,可以是横向结构(transversalstructure),对称结构(symmetrictransversalstructure)以及格形结构(latticestructure)。其中横式滤波器由于结构简单且易于实现而应用最为广泛,文章后面的自适应滤波器仿真都是采用横向型结构。横式滤波器如图

3-1所示。x(n)

x(n

1)

x(n

2)

xn

N

1Z

SZ

ZSw0(n) w1(n) w2(n) wN1(n)++Σ + y(n)+图3-1横向型滤波器结构滤波器的输出 y(n)表示为:N1y(n)WT(n)X(n)wi(n)x(ni)(3-1)i0其中,输入矢量为()[(),(n1),,(nN1)]T,转置符为T,时间序列XnxnxLx为n,权系数矢量W(n)[w0(n),w1(n1),LwN1(n)]T,N为滤波器阶数。由表达式可见,y(n)实际是两矢量的内积——即把X(n)与W(n)相卷积的结果。3.1.2最佳滤波准则前文己经提到,设计滤波器时应该根据输入信号的特性,设计出最佳的滤波器。那么,什么样的滤波效果才算是最佳呢?必须有一个判断的标准。至今已研究出很多最佳滤波准则。常见的有最小均方误差准则 (MMSE),最小二乘准则(LS),最大信噪比准则(MaxSNR),线性约束最小方差准则(LCMV)[10]等等。最佳滤波准则和自适应滤波器关系密切,最佳滤波准则规定了与某种特性的信号对应的最佳参数,而这个最佳参数指出了自适应滤波器调整参数的方向。以下主要介绍前两个准则。最小均方误差准则MMSE(MinimumMeanSquareError)就是要使输出信号和理想信号的误差的平方的均值最小。设d(n)为滤波器输出想要逼近的信号,y(n)为滤波器输出信号,则误差为e(n)d(n)y(n),最小均方误差准则就是要使E[e2(n)]达到最小。最小二乘准则 LS(LeastSquare)就是要使一定范围内(从k到k+m-1)误差k m1的平方和达到最小。最小二乘准则就是要使

e2(n)达到最小。i

k由此两准则衍生出许多不同的自适应滤波算法,人们从算法的收敛精度、收敛速度、跟踪能力、计算复杂度和数值稳定性等方面对

LMS

类算法和

RLS类算法进行了研究和改进。3.2基本自适应滤波算法介绍3.2.1基本LMS 自适应算法最小均方(LMS)自适应算法就是以已知期望响应和滤波器输出信号之间误差的均方值最小为准的,依据输入信号在迭代过程中估计梯度矢量,并更新权系数以达到最优的自适应迭代算法。 LMS算法是一种梯度最速下降方法,其显著的特点和优点是它的简单性,这种算法不需要计算相应的相关函数,也不需要进行矩阵运算。[10-12]对于横向型滤波结构,其误差为:e(n)d(n)y(n)(3-2)均方误差表示为:E[e2(n)]E[d(n)y(n)](3-3)对于横向结构的滤波器,代入y(n)的表达式(3-1),有E[d2(n)]WT(n)RW(n)2WT(n)P(3-4)其中,R(n)x(n)xT(n)是N×N的自相关矩阵,它是输入信号采样值间的自相关矩阵。Pd(n)x(n)为互相关矢量,代表理想信号d(n)与输入矢量x(n)的相关性。在均方误差达到最小时,得到最佳权系数W[w0,w1,,wN1]T。它满足下列方程W(n)W(n)W0(3-5)即RWP0(3-6)这是一个线性方程组,如果矩阵R是满秩的,R1存在,可得到权系数的最佳值满足WR1P(3-7)用完整的矩阵表示为式w0x(0)x(1)Lx(N1xd(0)1)w1x(1)x(0)Lx(N1)xd(1)MLLLL(3-8)MwN1x(N1)x(N2)Lx(0)xd(N1)显然,x(m)E[x(n)x(nm)]是x(n)的自相关值,xd(R)E[x(n)(nk)]是x(n)与 d(n)的互相关值。在有些应用中,把输入信号的采样值分成相同的段(每段为一帧),再求出R和V的估计值,以得到每帧的最佳权系数。这种方法称为块对块的自适应算法。如语音信号的线性预测编码LPC,就是把语音信号分成帧进行处理的。R和P的计算,要求出期望值E?,在实际运算中不易实现。为此,可通过下式进行估计:Km1xd1x(ni)d(nmi)(3-9)Kmi01Km1xx(ni)x(nmi)(3-10)Kmi0用以上方法获得最佳W的运算量很大,对于一些在线或实时应用场合,无法满足其时间要求。大多数场合使用迭代算法,对每次采样值求出较佳权系数,称为采样值对采样值迭代算法。迭代算法可以避免复杂的R1和P的运算,又能实时求得式(3-7)的近似解,因而切实可行。LMS算法是以最快下降法为原则的迭代算法,即W(n1)矢量是W(n)矢量按均方误差性能平面的负斜率大小调节相应一个增量W(n1)W(n)(n)(3-11)这个是由系统稳定性和迭代运算收敛速度来决定的自适应步长。(n)为n次迭代的梯度。对于LMS算法,(n)是式(3-3)中E[e2(n)]的斜率,即(n)E[e2(n)]W(n)2E[e(n)x(n)](3-12)由式(3-9)产生了求解最佳权系数W的两种方法,一种是最陡梯度法。其思路为,设初始权系数W(0),用式(3-11)迭代公式计算,直到W(n1)与W(n)误差小于规定范围。其中(n)的E[?]计算,可用估计值表达式E[e(n)x(n)]1K1e(ni)x(ni)(3-13)Ki0式中K的取值应该足够大。如果用瞬时2e(n)x(n)来代替上式对2E[e(n)x(n)]的估计运算,就产生了另一种算法——随机梯度法,即WidrowHoff的LMS算法。此时迭代公式为W(n1)W(n)2e(n)x(n)(3-14)其中是步长因子。为了分析方便,将式(3-2)代入(3-14)可得w(n1)w(n)2x(n)[d(n)xH(n)w(n)](3-15)文章后面讨论的自适应算法都是基于WindrowHoff的LMS算法。式(3-14)的迭代公式W(n1)W(n)2e(n)[x(n)x(nN1)](3-16)其中,x(n)为[x(n),x(n1),L,x(nN21)]T,而x(nN1)为[(nN1),(2),L,x(nN2)]T。xxnN由式(3-1)式(3-2)和式(3-12)便构成了LMS的实现算法。LMS算法的两个优点是:实现起来简单;不依赖模型(model-independent),因此具有稳健的性能。下面给出了LMS算法的流程:参量M=滤波器抽头数步长因子0(MPin)1,Pin2}E{x1(n)初始条件w(0)0或由先验知识确定运算对n1,2L1)得x(n),d(n)2)滤波y(n)wH(n)x(n)3)误差估计e(n)d(n)y(n)4)更新权系数w(n1)w(n)2x(n)e(n)3.2.1.1权向量的收敛经过推导,为保证 LMS算法收敛,步长因子应满足以下条件:0 2 max(3-17)max是输入信号自相关矩阵R的最大特征值,它不可能大于R的迹,所以上式变为:0 2tr[R](3-18)对于中等长度和较大长度M的LMS滤波器,均方收敛的步长参数的必要条件定义为0 2MSmax(3-19)其中Smax表示抽头输入功率谱密度的最大值。3.2.1.2性能指标(1)失调失调定义为自适应过程中超量均方误差和最小均方误差之比。超量均方误差:Jex J(n) Jmin kE[vk2(n)](3-20)如果假设自适应暂态过程已消失,均方误差已接近最小值,则可近似为:Jex1Jmintr[R](3-21)2失调定义为:Jex1tr[R][总的抽头输入功率](3-22)Jmin22(2)平均时间常数(收敛时间)LMS算法的平均时间常数为:1,其中1mse,avav2avL

L为抽头输入I 1的相关矩阵R的平均特征值。则可近似定义失调为:1MavM(3-23)24mse,av其中M为滤波器阶数。可得如下结论:1)对于固定的 mse,av,失调随着滤波器长度 M线性增加。2)失调正比于步长,平均时间常数反比于步长。3.2.1.3性能分析LMS算法是一种随机优化方法,对其进行了深入的研究,主要有以下三点结论[12,13]:(1)LMS算法是最速下降法的近似,它利用估计的梯度进行调整。因为梯度是函数的局部性质,从局部看在一点附近下降得快,但从总体上来看可能走许多弯路,只有当权矢量坐标位于性能表面的主轴上时,梯度的负方向才指向最小点。因此一般情况下,权向量改变的方向不一定在指向最小值的方向上。由于最速下降并非对整体而言,所以其收敛速度较慢。(2)为保证 LMS算法的稳定收敛,步长因子 应满足02(3-24)tr[R]这样当迭代次数n趋于无穷大时,权矢量w(n)的期望值将逼近最优解(维纳解)wopt。值越大,算法收敛越快,但稳态误差也越大;值越小,算法收敛越慢,但稳态误差也越小。失调与步长因子成正比;相反地,平均时间常数mse却与步长因子成反比。因此,如果减小步长因子,则失调将减小,但是收敛时间将有所增加,反之亦然。(3)LMS算法收敛速度受控于特征值的分布范围。自相关阵R的特征值分布范围越大,LMS算法收敛的越慢;反之,R的特征值分布范围越小,LMS算法收敛得越快。在极端情况下,当输入信号是白噪声时,自相关阵R的所有特征值均相同,这时LMS算法收敛速度最快。如果输入是语音信号,而语音信号又恰恰具有较大的特征值的分布范围,从而导致收敛速度会显著地减慢。(4)失调直接与抽头输入向量成正比,当输入较大时,LMS滤波器遇到梯度噪声放大问题,而输入较小时算法收敛速度较慢。将输入信号按照自身的平均能量进行归一化处理,就得到了归一化 LMS算法,也称 NLMS 算法,可以消除梯度噪声放大问题。LMS算法的主要缺点是收敛速度慢,如何加快其收敛速度一直是研究的热点,一般可以从以下三个方面入手。(1)对步长因子 选用合适的控制方法。步长因子 决定着算法的收敛速度和达到稳态时失调量的大小。对于设定为常数的 来说,收敛速度和失调量是一对矛盾。要想得到较快的收敛速度,可选用大的调整步长,这就导致大的失调量;如果要满足失调量的要求,则收敛速度将受到制约。变步长的方法可以克服这一矛盾。自适应过程开始时,采用较大的步长以保证快的收敛速度,然后步长逐渐减小,以保证稳态时可以得到较小的失调量。(2)改善梯度估值如LMS/Newton算法,它在估计梯度后又利用了输入矢量相关函数的估值,使得在每个迭代周期权矢量的改变总是在指向性能表面最小点的方向上。由于其在迭代过程中采用了更多的有关输入信号矢量的信息,其收敛速度比典型的LMS算法相比有显著的提高。(3)降低输入信号的相关性从上面对LMS算法的分析结果可知,LMS算法的收敛速度受输入信号特征值分布的影响,因此可以考虑通过对输入信号进行白化处理来提高收敛速度。这方面的算法主要有:1)变换域算法[14]。变换域算法的思想是将信号经过某种变换(一般是正交变换)分解为一系列近似不相关的各个分量。很显然,变换域LMS算法的收敛性与变换核函数有关。K-L变换是理论上最佳的,但是计算量太大,在一定条件下,DCT、DST、FFT是K-L变换的良好近似,同时也因为这些变换存在快速算法,因而获得较广泛的应用。2)预滤波白化算法。将原始输入信号和目标信号分别通过相同的白化滤波器,将滤波结果再作为输入信号和目标信号进行自适应。3.2.2基本RMS自适应算法RLS算法是“递推最小二乘法”。与LMS算法不同,RLS算法是考察一个由平稳信号输入的自适应系统在一段时间内输出误差信号的平均功率(在时间上作平均),并使该平均功率达到最小作为自适应系统的性能的准则。RLS算法推导见文献[12],RLS算法的递推公式为:w(n)w(n1)g(n)[d(n)xTw(n1)](3-25)上式表明n时刻的最佳值w(n)可由n1时刻的最佳值w(n1)加一修正量得到。修正量等于()[()T(n1)]T1)为根据n1时刻的最佳加gndnxw。其中xw(n权和n时刻数据对d(n)之预测值。因而d(n)xTw(n1)为预测误差,g(n)确定了根据预测误差进行修正时的比例系数,因而称为增益系数。比较上式和实信号 LMS算法的递推公式w(n) w(n 1) 2 x(n 1)[d(n 1) xH(n 1)w(n 1)](3-26)可以看出两者的主要差别在于增益系数,LMS算法简单的利用输入矢量乘上常数作为增益系数,而RLS算法则用较复杂的增益系数g(n)。g(n)中指数加权因子为遗忘因子,它是小于1的正数。遗忘因子的数值对算法影响很大。算法的有效记忆长度用t0来度量,t0定义为nnn0(3-27)t0n1n0越小,对应的t0越小,稳态误差越大,意味着对信号的非平稳性的跟踪性能越好。但如果太小,会小于信号每个平稳段的有效时间,这时就不能充分利用所有能够获取的取样数据(这些数据本来覆盖着整个平稳段),结果所算出的权矢量w(n)将会受到噪声的严重影响,对于平稳信号的最佳值为1。现将RLS算法步骤总结如下:RLS算法的收敛与E[x(n)?xT(n)]的特征值无关,同时RLS的收敛速率比LMS(NLMS)要快得多,因此,RLS在收敛速率方面有很大优势。然而,鲁棒性或有限精度问题却给RLS算法的有效性带来很大的问题:一方面,横向RLS算法往往不稳定,鲁棒性很差;另一方面,格状 RLS算法计算量很大,基本是 LMS算法的计算量的平方。初始条件 w(0) 0C(0) 1I,为小的正实数运算 对n 1,2L(1)取得d(n),x(n)(2)更新增益矢量(n) xT(n)C(n 1)x(n)C(n 1)x(n)g(n)(n)(3)更新滤波器参数w(n) w(n 1) g(n)[d(n) xT(n)w(n 1)](4)更新逆矩阵C(n) 1[C(n1) g(n)xT(n)C(n 1)RLS算法中的步长参数被输入向量的相关矩阵的逆代替,它对抽头输入有白化作用。这一改进对平稳环境下RLS算法的收敛性能有如下深刻影响:(1)RLS算法的收敛速率比 LMS算法快一个数量级。(2)RLS算法速率不随输入向量x(n)的集平均相关矩阵R特征值的扩散度而改变。(3)随着迭代次数n趋于无限,RLS算法的额外均方误差收敛于零。RLS算法是对输入信号的自相关矩阵的逆进行递推估计更新,收敛速度快,其收敛性能与输入信号的频谱特性无关。但是, RLS算法的计算复杂度很高,所需的存储量极大,不利于实时实现;倘若被估计的自相关矩阵的逆失去了正定特性,还将引起算法的发散。为了减少RLS算法的计算复杂度,并保留RLS算法收敛速度快的特点,许多文献提出了改进的RLS算法,如快速RLS算法[15],快速递推最小二乘格型算法[16]等。3.3自适应噪声抵消系统及 MATLAB 仿真3.3.1自适应噪声抵消原理自适应噪声对消器[17-19]是一个具有二输入端的自适应滤波器,运行在参考传感器输入端的自适应滤波器用来估计噪声,然后从基本传感器输入中减去该噪声估值。对消器的总输出用来控制自适应滤波器中抽头权系数的调整。这里主要讨论采用 LMS算法的噪声对消器。图3-2给出了基本的自适应噪声抵消系统[18]。信源s(n)v0(n)节点ae(n)d(n)节点b噪声 v1(n)

y(n)AF图3-2自适应噪声抵消器原理图3-2中信号沿信道传到接收该信号的传感器,此传感器除接收到信号源发出的有用信号s(n)外,还收到一个不相关的噪声场,原始输入为受扰信号d(n)s(n)v0(n);参考输入为v1(n),v1(n)与v0(n)相关,而与信号s(n)不相关。原始输入加到自适应滤波器的a端,参考输入加到自适应滤波器的b端。图中自适应滤波器AF接收误差e(n)的控制,调整权矢量w(n),使得它的输出y(n)趋于等于d(n)中与它相关的v0(n),于是e(n)作为d(n)与y(n)之差就接近等于信号s(n)。证明如下:由图3-2得:e(n)d(n)y(n)s(n)v0(n)y(n)(3-28)∴e2(n)s2(n)(v0(n)y(n))22s(n)(v0(n)y(n))(3-29)两边取数学期望,可得:E[e2(n)]E[s2(n)]E[(v0(n)y(n))2]2E[s(n)(v0(n)y(n))](3-30)自适应过程就是自动调节权重wj使均方最小的过程,(3-30)式中第一项为信号功率,与w(n)无关。由于信噪不相关,第三项为0。所以,要使E[e2(n)]min成立,即(3-30)式中第二项应最小,即:E[(v0(n) y(n))2] E[(v0(n) y(n))2]min(3-31)∴E[e2(n)]min

E[s2(n)]

E[(v0(n)

y(n))2]min

(3-32)由图

3-2得:当E[(v0

(n)

∴E[(e(n)2y(n))]被最小化,E[(e(n)

e(n) s(n) v0(n) y(n)(3-33)s(n))2] E[(v0(n) y(n))2](3-34)2s(n))]也被最小化,e(n)以最小均方差趋于

s(n)

,可能的最好情况为:

y(n)

v0(n)

,则

e(n)

s(n);最小化输出功率使输出完全没有噪声,是自适应滤波器最理想的情况。因此,自适应滤波器可以用来从噪声中提取信号。3.3.2仿真分析前面分析研究了自适应噪声消除原理,下面在MATLAB[21~23]平台上进行模拟与仿真。以后各章的仿真分析都是在MATLAB平台上进行处理。MATLAB(MATrixLABoratory矩阵实验室)是由美国MathWorks公司推出的用于数值计算和图形处理的科学计算系统环境。它集中了日常数学处理中的各种功能,包括高效的数值计算、矩阵运算、信号处理和图形生成等功能。在MATLAB 环境下,可以集成地进行程序设计、数值计算、图形绘制、输入输出等各项操作。消噪所采用的方法是:编写自适应滤波器的 .m文件,进行噪声消除的仿真分析。在MATLAB中编写M文件function[h,y,e]=lms(x,d,u,N),此文件即为最小均方算法在噪声抑制中应用的设计文件。其中各参数的意义如下:h为估计的FIR滤波器y为滤波器的输出序列e为误差序列x为输入的参考序列d为滤波器输出的理想序列u为步长为滤波器的阶数用传统的固定步长LMS算法对一段语音进行消噪的仿真结果如图 3-3:图3-3LMS语音消噪结果方便分析,以单频正弦波替代语音信号,以高斯白噪声作为背景噪声信号(下文同),将标准 LMS 算法步长选为 0.007;算法中参数为 0.983,0.8, 0.999,做200次独立仿真,求其统计平均,仿真过程如下图所示。lms算法收敛过程1.510.50-0.5)(e -1-1.5-2-2.5-3-3.50 20 40 60 80 100 120 140 160 180 200采样点数图3-4LMS算法收敛过程LMS算法收敛结果为图 3-5:lms算法收敛结果0.020.0150.010.005)(e0-0.005-0.01-0.0150 500 1000 1500 2000 2500 3000 3500 4000 4500采样点数图3-5LMS算法收敛结果LMS自适应滤波器的学习曲线为图 3-6:图3-6 LMS自适应滤波器的学习曲线图LMS算法自适应滤波器用于噪声抵消具有较好的效果,但是基本LMS算法的收敛速度较慢[24],而且稳态误差较大。下面两章对基本LMS算法进行改进:(1)对步长因子 选用合适的控制方法步长因子 决定着算法的收敛速度和达到稳态时失调量的大小。对于设定为常数的 来说,收敛速度和失调量是一对矛盾。第四章提出两种改进的变步长的方法可以克服这一矛盾,自适应过程开始时,采用较大的步长以保证快的收敛速度,然后步长逐渐减小,以保证稳态时可以得到较小的失调量。(2)改善收敛速度慢的方法LMS算法实际应用中为了更好地逼近任何所希望的频率响应特性,N应取得较大,但运算量却以N平方的比例迅速增加,妨碍了系统的实时实现,第五章采用频域快速自适应

LMS

算法,其收敛速度比典型的

LMS

算法相比有显著的提高,并可以保持与传统 LMS算法相近的收敛效果。3.4本章小结本章讨论了自适应滤波器的基本算法:最小均方算法和最小二乘算法。最小均方算法因其计算简单、收敛快速而在现实中得到广泛应用。最小二乘法计算量相对较大。之后介绍了 LMS算法自适应噪声抵消系统,并在 MATLAB平台仿真分析了标准 LMS算法对语音降噪的性能,从而明确了算法改进的方向。第4章 改进的变步长LMS算法和仿真实现固定步长的自适应滤波算法在收敛速度、时变系统跟踪精度与收敛精度方面对步长因子的要求互相矛盾。为了克服这一矛盾,人们提出在

LMS

算法的权系数递推中采用时变步长代替标准

LMS

算法中的固定步长,通常称为变步长LMS算法,既VS-LMS算法。变步长LMS算法是基于这样的准则 :当权系数远离最佳权系数时,步长比较大,以加快收敛速度和对时变系统的跟踪速度 ;当权系数接近最佳权系数,步长比较小,以获得较小的稳态失调噪声。YasukawaH和.ShimadaS等.人[25]提出使步长因子(n)正比于误差信号e(n)。这样,在初始收敛阶段或系统发生时变时,由于误差较大,故步长就较大,而在接近收敛稳态时误差很小,故步长也很小,所以该算法既具有较快的收敛和跟踪速度,又具有很小的稳态失调。但该算法对独立噪声特别敏感,当自适应算法进入稳态阶段时,容易出现收敛步长过大而加剧稳态失调问题。 GitlinR.D和提出了一种时间平均估值梯度的自适应滤波算法,与采用瞬时梯WeinsteinS.D.度估值的LMS算法相比,对同样的调整步长稳态失调有所减小,但是随之而来的却是收敛速度变慢。而文献[27]一种算法提出使步长因子 (n)与误差e(n)和输入信号x(n)的互相关函数的估值成正比的变步长自适应滤波算法,该算法的收敛特性比较好,然而计算复杂性大大增加,不利于实时实现,实用性较差。综上所述,变步长算法[28~35]都是利用自适应过程中提供的某种近似值作为衡量标准来调节步长。比较简单有效的方法是利用自适应过程中的误差信号,试图在步长与误差信号之间建立某种函数关系。己经用到的有:步长正比于误差信号的大小;②步长与均方瞬时误差建立关系 ;③尽量减少每一次迭代的均方估计误差 ;④步长与e(n)和x(n)的互相关函数的估值成正比 ;⑤使用当前误差与上一步误差的自相关估计来控制步长更新 ;⑥基于某种函数曲线更新步长。根据上述步长调整原则,文章分析并改进两种已有的变步长自适应滤波算法,具体内容如下。4.1一种基于S函数改进的变步长 LMS算法由于变步长 LMS算法[36~39]要求步长因子 (n)在自适应初始阶段较大以保证算法有较快的收敛速度,而在算法收敛后则很小的稳态失调噪声,因此,步长因子和自适应滤波器输出误差之间存在着非线性关系。若将步长因子与输出误差之间的关系近似为 S(Sigmoid)函数,就形成了基于 S函数的变步长自适应LMS算法(SVS-LMS)。4.1.1SVS-LMS算法文献[40]给出了一种基于 Sigmoid函数的变步长LMS算法:e(n)d(n)XT(n)W(n)(4-1)(n)(1(1exp(e(n)))0.5)(4-2)W(n1)W(n)2(n)e(n)X(n)(4-3)其中,变步长(n)是关于e(n)的Sigmoid函数:(n){1[1exp(e(n))]0.5}(4-4)式中,常数控制S型函数形状;常数控制S型函数范围。由该函数确定的 (n)与e(n)的函数曲线如图 4-1所示:0.80.70.6=8,=1.50.50.4=1,=2.50.30.2=0.2,=3.50.10-1-0.8-0.6-0.4-0.200.20.40.60.81图4-1由式(4-4)所确定的n~e(n)关系图可以看出S型函数基本上符合自适应滤波算法的步长调整原则,因此该算法能同时获得较快的收敛和跟踪速度。但该Sigmoid函数在误差e(n)接近零处(n)变化太大,不具有缓慢变化的特征,使得SVS-LMS算法在自适应稳态阶段仍有较大的步长变化,这是该算法的不足[13]。4.1.2对SVS-LMS算法的改进针对上述问题,对式(4-4)进行了改进,得到一种改进的变步长因子m0.5(4-5)(n)11expe(n)e(n1)2式中参数0是控制函数取值范围的常数,参数0是控制函数形状的常数,参数、的最佳取值可通过实验来确定,实验表明最佳值0.2,10000。下面重点分析改进算法引入的m值对步长因子的影响。如图4-2所示)n(

0.10.09m=10.08m=20.07m=30.06m=40.05m=80.040.030.020.010-0.3-0.2-0.100.10.20.30.4-0.4e(n)图4-2由式(4-5)所确定的 n~e(n)关系图当m 1时(即Sigmoid函数),当误差e(n)接近于零时(此时算法已达或将要达到稳态), (n)变化太大,不具有缓慢变化的特征;当 m 2时,曲线的底部形态虽比m 1时有所变缓但依然尖锐,这就意味着当误差 e(n)接近于零时,(n)变化仍很大;当m 3时,在算法初始收敛阶段和跟踪阶段也较大,而当算法进入收敛稳态时 (n)很小,且误差e(n)接近零时步长 (n)仍具有缓慢变化的特征;m 4和m 8时,虽然曲线的底部形态更加平缓,但由于当误差 e(n)较大 (n)已接近零,可造成较大的稳态误调噪声。仿真实验结果表明:m 2.8~3.2范围内所对应算法的性能最理想,如图 4-3所示,由此选取m 3代入变步长公式。0.02m=2.70.02m=2.8))n0n0((ee-0.0270008000900010000-0.027000800090001000060006000采样点数采样点数m=2.9m=30.020.02))n0n0((ee-0.0270008000900010000-0.027000800090001000060006000采样点数采样点数0.02m=3.20.02m=3.4))n0n0((ee-0.0270008000900010000-0.027000800090001000060006000采样点数采样点数图4-3m为不同值时改进算法性能比较改进后基于Sigmoid函数的变步长LMS算法的变步长(n)公式为:30.5(4-6)(n)11expe(n)e(n1)2这就是本次改进变步长 LMS算法的最后用于仿真实验的公式。4.1.3改进的算法仿真分析仿真中信号为单频正弦连续波信号,信号幅度0.01,遮盖性高斯白噪声,自适应滤波器阶数N=2,滤波算法分别选用固定步长LMS算法、基于S函数的(SVS-LMS)变步长算法以及本节提出改进算法。仿真中固定步长LMS算法步长0.007,本条件下SVS-LMS算法最优参数选为=0.1,=2.5,改进算法最优参数选为=10000,=0.2,三种算法的仿真结果如图4-4所示。以下分别从收敛速度、稳态误差两个主要指标对上述三种自适应滤波算法仿真结果进行分析。其中输入正弦信号和高斯白噪声同第三章LMS算法仿真中信号一样。LMS自适应滤波器计算过程如下:1)给定所需信号:x0.01sin(10pit);2)滤波器阶数:N2;3)采样点数为10000,分别做200次独立的仿真,运算的结果如图4-4。然后得前1000次迭代的学习曲线如图4-5。)n(e)n(e)n(e

lms算法收敛过程5)n0 (e-50 50 100 150 200采样点数SVS-LMS算法收敛过程2)n0 (e-20 50 100 150 200采样点数本文算法收敛过程1)n0 (e-10 50 100 150 200采样点数

lms算法收敛结果0.020-0.020 2000 4000 6000采样点数SVS-LMS算法收敛结果0.020-0.020 2000 4000 6000采样点数本文算法收敛结果0.020-0.020 2000 4000 6000采样点数图4-4算法收敛过程和结果仿真比较LMS算法学习曲线图0.040.0200-4x10500-5x1010.500

1002003004005006007008009001000SVS-LMS算法学习曲线图100 200 300 400 500 600 700 800 900 1000本文改进算法的学习曲线图100 200 300 400 500 600 700 800 900 1000图4-5算法学习曲线仿真结果比较仿真结果分析:从图4-4中可以在输入信号和噪声信号相同的条件下,看出三种算法进行自适应噪声对消中改进算法更有效地去除了噪声信号,在收敛性和跟踪性上有了明显的改善。(1)收敛速度固定步长LMS算法最快也要150个采样点处才趋于稳态,而 SVS-LMS算法以及改进算法可在第50个采样点以前收敛,而且改进算法的收敛速度还要更快一些。因此,改进算法比固定步长LMS算法和SVS-LMS算法收敛速度快。(2)稳态误差图4-4中固定步长LMS算法的稳态误差最大, SVS-LMS算法和改进算法的稳态误差比固定步长 LMS算法小,而改进算法 SVS-LMS算法的稳态误差在图中不容易分辨,但可从图 4-5看出。从图4-5中的三种算法的收敛曲线可以看出,传统的 LMS算法收敛速度最慢,大约迭代400次后才收敛,且稳态误差较大;SVS-LMS算法收敛速度较快(迭代50次后收敛)稳态误差较小,而本文算法的收敛速度最快(迭代20次后收敛),而稳态误差比SVS-LMS算法还要小。通过上面的理论分析和计算机仿真及计算可知,基于改进Sigmoid函数的时域变步长自适应滤波算法的收敛速度、稳态误差均有提高,因此,该算法是合理有效的。4.2一种改进的时域变步长 LMS算法(NVS-LMS)4.2.1NVS-LMS算法在基本的LMS算法中,当 一定时,自适应滤波器的收敛速度取决于输入序列自相关矩阵R的min,而总失调量主要取决于最大特征值min。由于R的特征值随输入信号改变,这将影响LMS算法的收敛速度和失调,甚至可能造成不满足收敛条件的后果。于是文章对LMS算法进行改进[41~44],提出了一种改进的时域变步长NVS-LMS算法:e(n)d(n)XT(n)W(n)(4-7)W(n1)W(n)2(n)e(n)X(n)(4-8)(n1)(n)p2(n)(4-9)p(n)p(n1)(1)e(n)e(n1)(4-10)取(n)max,p(0)(0)。NVS-LMS算法用自相关值e(n)e(n1)来控制调整步长,当自适应滤波算法接近于最佳值时,自适应误差e(n)的各个采样点之间的相关性变小,不仅缩短了收敛时间,而且使得算法具有较好的抗干扰性。此时步长的迭代公式为(n1)(n)EVT(n)X(n)XT(n1)V(n1)(4-11)其中,V(n)W(n)Wopt(n)是权系数误差矢量。由于步长的迭代公式(n1)与偏离最佳权值的大小有关,所以能有效取出独立噪声的干扰,尤其是在低信噪比时稳定性较高,但不适用于处理大动态范围的输入信号。4.2.2算法仿真分析Wj

需要经过一个迭代过程才能到达

W*

(维纳解),也就是说

Ee2j

趋于Ee2j

min

需要一个过程。Ee2j

与迭代次数的关系曲线称为学习曲线,它表达了LMS算法的动态特性,即任意一个初始权矢量W0通过一次次逼近最后趋于W*的过程,也即Ee2j趋近于Ee2j的过程。min将输入正弦信号的幅度设为 0.01,对应信噪比为-42dB,图4-6是独立运行200次取平均后的学习曲线,从图中可以看出,在迭代过程开始阶段,NVS-LMS算法的学习曲线急速下降,迭代100次左右,曲线逐渐趋于平稳,LMS算法开始阶段下降缓慢,收敛速度受到影响,需要迭代 630次左右才能达到稳态。]2)(e[E

LMS自适应滤波器的学习曲线图0.020.0150.010.00500 100 200 300 400 500 600 700 800 900 1000-4x1043]2)n(e 2[E

n(迭代次数)NVS-LMS 自适应滤波器的学习曲线图100 100 200 300 400 500 600 700 800 900 1000n(迭代次数)图4-6稳态环境下LMS、NVS-LMS算法的学习曲线将输入信号幅度设为0.01,得到LMS算法和NVS-LMS算法收敛过程中步长因子变化曲线,如图4-7所示,输入信号幅度0.01时NVS-LMS算法的变步长因子呈现出随迭代次数增加而减小的稳定趋势。符合本章前面讲的步长调整原则。图4-8对应的仿真中信号为正弦波信号,幅度为0.2,噪声为高斯白噪声,自适应滤波器的阶数N2,滤波算法分别选用固定步长LMS算法,NVS-LMS算法。仿真中LMS算法仍选择步长 0.007,经过多次仿真实验选定:NVS-LMS算法的最佳参数 0.983, 0.999, 0.01, min 0.0002, max 0.05。信号幅度0.010.05LMS0.045NVS-LMS0.040.0350.03)n( 0.025u0.020.0150.010.00500 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000迭代次数图4-7两种算法收敛过程中步长因子变化曲线图正弦波信号正弦波+干扰信号0.25度0度0幅幅-0.2500010000-550001000000采样点数采样点数2LMS算法收敛过程2NVS-LMS算法收敛过程))nn(0(0ee-250100150200-25010015020000采样点数采样点数LMS算法收敛结果NVS-LMS算法收敛结果0.20.2))nn(0(0ee-0.270008000900010000-0.27000800090001000060006000采样点数采样点数图4-8 LMS算法、NVS-LMS算法自适应滤波仿真结果下面分别从收敛速度、稳态误差和改善因子G三个主要方面对上述两种自适应滤波算法仿真结果进行分析。(1)收敛速度固定步长LMS算法最快要在130个采样点处才趋于稳态,而NVS-LMS算法在80个采样点左右收敛。因此改进算法具有收敛速度快的优点。(2)稳态误差固定步长LMS算法的稳态误差最大,本节的 NVS-LMS算法的稳态误差明显小于LMS算法。(3)改善因子经计算,信号幅度0.2时,LMS算法的改善因子G约为24dB,本文NVS-LMS算法的改善因子G约为28.4dB。明显改进算法的改善因子较高。通过上面的理论分析和计算机仿真及计算可知本文提出的 NVS-LMS 算法的收敛速度、稳态误差和改善因子均较为令人满意。4.3本章小结我们对变步长自适应滤波算法进行了研究讨论,通过对基于 S函数变步长LMS算法进行比较研究和分析,引入的m值对步长因子的影响。我们改进基于S函数变步长自适应滤波算法,并对其性能指标进行了比较仿真。在同一仿真条件下的仿真结果表明:我们提出的改进算法(GSVS-LMS算法)比基于S函数变步长自适应滤波算法(SVS-LMS算法)和LMS算法具有收敛速度快、稳态误差小等优点。应用变步长技术仿真并证明了 NVS-LMS算法相对于LMS算法的优越性。NVS-LMS在收敛速度、稳态误差和改善因子上均优于 LMS算法。第5章 频域快速自适应 LMS算法研究LMS算法实际应用中为了更好地逼近任何所希望的频率响应特性, N应取得较大,但是运算量却以 N平方的比例迅速增加,这妨碍了噪声抵消系统的实时实现,因此LMS算法的快速实现有很大的实际意义。本章利用FFT技术实现了频域快速LMS算法(FBLMS),并保持了与传统LMS算法相近的收敛效果。5.1分块LMS时域算法为了改善自适应滤波算法的性能,人们发展了各种各样的改进方法。在 70年代,C.Berrus讨论了块数字滤波这一新的滤波器结构。在此基础上,80年代初,Gregory.A.Clark等人提出了块最小均方误差(BMSE)的概念,并得到沿着BMSE的梯度估计值实现块均方误差最小意义下的时域BLMS算法。[45~47]y(k)d(k)e(k)W0WW2WN11z1z1z1x(k)x(kN1)自适应滤波器的 LMS算法图5-1 自适应横向滤波器的 LMS算法如图5-1LMS算法中,权值迭代公式为:W(k1)W(k)2e(k)X(k)(5-1)在该式中,滤波器每接受一对信号x(k)d(k),权系数向量递归迭代一次,而对于BLMS算法先固定权系数向量不变,直到滤波器接受L对新的信号x(k)d(k)才更新迭代一次权系数向量,考虑权系数向量迭代方程w(kL)w(kL1)2x(kL1)e(kL1)(5-2)上式中L是一个整数,取值范围1LN,w(kL1)用w(kL2)迭代一直到w(k),则有L1i)(5-3)W(k1)W(k)2x(ki)e(ki 0上式表示从n时刻到n+L时刻,权系数向量迭代一次求和项中的各个误差信号对应于相同的权系数向量,即w(ki)d(ki)y(ki)i0,1,2,3,L1(5-4)y(ki)xT(ki)w(k)i0,1,2,3,L1(5-5)为了更方便明确,定义一个新的时间变量m,与时间k的关系是k=mL,于是(3.3)式中的变量mLL可写成(m1)L,为简单起见,省略掉L,则(3.3)式变为L1i)(5-6)w(m1)w(m)2x(mLi)e(mLi0即m表示组的序数,k表示信号的序数,分组自适应滤波器的梯度估计值为?2L1i)e(mLi)(5-7)x(mLLi0定义矩阵x(m)为x(m)[x(mL)x(mL1)x(mLL1)]T(5-8)定义误差信号向量e(m)、期望响应信号向量d(m)和输出信号向量y(m)为e(m)[e(mL)e(mL1)e(mLL1)]T(5-9)d(m)[d(mL)d(mL1)d(mLL1)]T(5-10)y(m)[y(mL)y(mL1)y(mLL1)]T(5-11)则由式(5-6)~(5-11)得到BLMS算法为w(m1)w(m)B?(m)(5-12)?(m)2x(m)e(m)(5-13)Ly(m)x(m)w(m)(5-14)比较LMS、BLMS算法,两者的收敛因子有如下关系BL(5-15)分组BLMS自适应滤波器的均方差误差函数为B1E[eT(m)e(m)]E[1L1e2(mLi)](5-16)LLi0是一组误差信号的平方的平均值的数学期望,将( 5-9)~(5-11)式代入上式可得LB1E[dT(m)d(m)]E[dT(m)x(m)]wwTE[xT(m)d(m)]wTE[xT(m)x(m)]w(5-17)L在这里我们定义RE[xT(m)x(m)](5-18)BxxRE[xT(m)d(m)](5-19)BxdRBxx是NN阶的分组BLMS滤波器的输入信号的自相关矩阵,RBxd是分组输入信号和分组期望响应信号的互相关向量,代入(5-17)式得到B1E[dT(m)d(m)]2RBxdTwwTRw(5-20)LBxx在平稳信号的环境下,有RBxxLRxx(5-21)RBxd LRxd(5-22)则由(5-18)~(5-22)式可以得到B E[e2(k)](5-23)即分组BLMS自适应滤波器的均方误差等于LMS自适应滤波器的均方误差,也就是说分组Wiener滤波器的最优权系数向量等于Wiener滤波器的最优权系数向量,即wR1R()optxxxd5-24BLMS算法的有关性能已做了详细的讨论,在这里引用几个结论。(1)收敛步长因子的选择为了保证BLMS算法收敛,即迭代次数趋近于无穷大,权系数向量等于Wiener权系数向量,当且仅当收敛因子满足条件0B1(5-25)maxmax是输入信号的自相关矩阵 Rxx的最大特征值。(2)自适应收敛速度自适应收敛速度是指权系数向量从初始值收敛到 Wiener权系数向量的快慢速度,也就是指均方误差降低到最小均方误差的快慢速度,通常用时间常数表示,如下式所示1BMSE (5-26)4 B PP是矩阵Rxx的特征值(P=1,2,,N),显然可见自适应的收敛速度取决于最大的一个时间常数。(3)自适应精度在自适应过程中的噪声将引起权系数向量围绕最小点随机变化,其结果使得稳态均方误差大于最小均方误差,两者之差的平均值为 “超量”均方误差excessMSE),它与最小均方误差的比值即为失调M。我们知道LMS算法的稳态失调为Mtrace[Rxx],则对于BLMS算法来说excessMSEBmintrac[Rxx]MBBtrac[Rxx](5-27)LL比较LMS、BLMS算法的收敛速度和收敛精度,我们可以得到如下系:TBMSELMBB(5-28)MSEBML如果BL,BLMS算法和LMS算法的收敛速度和失调都一致的。但由于B是x(m)和与之对应的w(m)的线性卷积,即:y(m)xT(m)w(m)(5-29)5.2频域LMS算法(FBLMS 算法)公式(5-29)在LMS频域实现中,将参考信号分隔成N长(自适应滤波器的权数)的块,权系数的更新每N个样点进行一次,而每次的更新是由N个误差信号样点累加结果控制的,这既保证了与时域LMS算法有相同的收敛速度,同时可以利用快速FFT技术,用序列的循环卷积来计算线性卷积,从而大幅度地减少运算量。 [47][48]对每个m,以x(m1)块和x(m)块组成2N点序列,而在m1时,在x(1)的前面添置N个零,也就是说保留过去的N个信号,引入了N个新的信号,使其具有50%的数据重叠。则频域输入信号是现在的一组时域输入信号与过去一组时域输入信号所组成一组长度为

2N

的信号的

FFT变换,即为x(m)

diag

FFT

xT(m

1)

xT(m)diag

FFT[x(mNN),x(mNN1444444444

1),x(mN4244

N2),4444

x(mN1),44443第m-1块x(mN),x(mN 1),x(m/p>

2), x(mN N 1),]T44444443

(5-30)第m块对应每个输入块的时域权系数向量

w(m)

在其后添置

N个零,组成

2N点序列,并通过

FFT变换转换为频域权系数向量,即有w(m)

FFT[wT(m),0,0 ,0]T14243

(5-31)N个0用循环卷积来计算上面的线性卷积,每组频域输出是

x(m)和w(m)的乘积,则输出的时域序列相应可表示为:y'(m)

IFFT[w(m)x(m)](5-32)原线性卷积运算是频域输出逆快速傅立叶变换的下半部分元素,则去掉y'(m)中前N个零,剩余的N个值便是自适应滤波器的真正输出,即ymN,y(mN 1),y(mN 2), ymN N 1 ym(5-33)这时将频域中的误差信号可表示为TE(m) FFT0,0,,0,d(mN) y(mN),d(mN1)y(mN1),d(mNN1)y(mNN1)14243N个0FFT0,0,,0,e(mN),e(mN1),e(mNN1),14243N个0FFT 0,0, ,0,e(m) (5-34)14243N个0因为,线性相关是线性卷积的“颠倒”形式,因此梯度估计值是x*(m)与E(m)的乘积的逆快速傅立叶变换后的上半部分元素,即?(m)IFFT[x*(m)E(m)]T的前N

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论