《自适应滤波器论文.doc》由会员分享,可在线阅读,更多相关《自适应滤波器论文.doc(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、自适应滤波器论文自适应滤波器论文1 绪 论 人类传递信息的主要媒介是语言和图像。据统计,在人类接受的信息中,听觉信息占20%,视觉信息占60%,其中如味觉、触觉、嗅觉总的加起来不过占20%,所以图像信息是十分重要的信息。然而,在图像的获取和图像信号的传输过程中,图像信号中不可避免的混入各种各样的随机噪声,造成图像失真(图像退化)。造成人类所获取的信息和实际是有偏差的,成为人类从外界获取准确信息的障碍。因此,对图像信号中的随机噪声的抑制处理是图像处理中非常重要的一项工作。在图像的获取和传输过程中所混入的噪声,主要来源于通信系统中的各种各样的噪声,根据通信原理及统计方面的知识,可以知道在通信系统中
2、所遇到的信号和噪声,大多数均可视为平稳的随机过程。又有高斯又称正太随机过程,它是一种普遍存在和重要的随机过程,在通信信道中的噪声,通常是一种高斯过程,故又称高斯噪声。因此,在大多数的情况下,我们可以把造成图像失真的噪声可视为广义平稳高斯过程。目前的图像和信号复原技术,即去噪的滤波技术可分为两大类:传统滤波和现代滤波。传统滤波技术是建立在已知有用信号和干扰噪声的统计特性(自相关函数或功率谱)的基础上的噪声去除;现代滤波技术则是不需要知道图像的先验知识,知识根据观测数据,即可对噪声进行有效滤除。早在20世纪40年代,就对平稳随机信号建立了维纳滤波理论。根据有用信号和干扰噪声的统计特性(自相关函数或
3、功率谱),以线性最小均方误差(MSE)设计的最佳滤波器,称为维纳滤波器。这种滤波器能最大程度的滤除干扰噪声,提取有用信号。但是,当输入信号的统计特性偏离设计条件,则它就不再是最佳的了,这在实际应用中受到的限制。到60年代初,由于空间技术的发展,出现了卡尔曼滤波理论,即利用状态变量模型对非平稳、多输入多输出随机序列作最优估计。卡尔曼滤波器即可以对平稳的和平稳的随机信号作线性最佳滤波,也可以作为非线性滤波。然而只有在对信号和噪声的统计特性已知的情况下,这两种滤波器才能获得最优解。在实际的应用中,往往无法得到这些统计特性的先验知识,或者统计特性是随时间变化的,因此,这两种滤波器就实现不了真正的最佳滤
4、波。Widrow B.和Hoff于1967年提出的自适应滤波理论,可使在设计自适应滤波器时不需要事先知道关于输入信号和噪声的统计特性的知识,它能够在自己的工作过程中逐渐估计出所需要的统计特性,并以此为依据自动调整自己的参数,以达到最佳滤波效果。一旦输入信号的统计特性发生变化,它又能够跟踪这种变化,自动调整参数,使滤波器性能重新达到最佳。自适应滤波器自动调节参数可通过各种不同的递推算法来实现,由于它采用的是逼近的算法,使得实际估计值和理论值之间必然存在差距,也就造成自适应滤波问题没有唯一的解。依照各种递推算法的特点,我们把它应用于不同的场合。现在广为应用的自适应滤波方法主要是基于以下几种基本理论
5、,再融合递推算法导出来的:(1) 基于维纳滤波理论的方法 维纳滤波是在最小均方误差准则下通过求解维纳霍夫方程来解决线性最优滤波问题的。基于维纳滤波原理,我们利用相关的瞬时值通过在工作过程中的逐步调整参数逼近信号的统计特性,实现最优滤波。因此,我们得到一种最常用的算法最小均方算法,简称LMS算法。(2) 基于卡尔曼滤波理论的方法 卡尔曼滤波是线性无偏最小方差滤波递推滤波,它能使滤波器工作在平稳的或非平稳的环境,得到最优解。利用卡尔曼滤波理论的递推求解法导出自适应滤波器更新权矢量得不同递推算法。比LMS算法有极快的收敛速率,可是计算复杂度也增大了,它需要计算卡尔曼矩阵。(3) 基于最小二乘准则的方
6、法维纳滤波和卡尔曼滤波推导的算法是基于统计概念的,而最小二乘估计算法是以最小误差平方和为优化目标的。根据滤波器的实现结构,有以下3种不同的最小二乘自适应滤波算法:自适应递归最小二乘法(RLS),自适应最小二乘格型算法,QR分解最小二乘算法。(4) 基于神经网络理论的方法神经网络是有大量的神经元相互连接而成的网络系统,实质上它是一个高度非线性的动力学网络系统,这个系统具有很强的自适应、自学习、自组织能力,以及巨量并行性、容错性和坚韧性,因此,它可以做得很多传统的信号和信息处理技术所不能做的事情。因其超强的自动调节能力,使得它在自适应信号处理方面有着广阔的前景。在一系列的自适应算法中,虽然基于后面
7、3种基本理论的方法在收敛速率和稳定、坚韧性方面有着更好的性能,但是,基于维纳滤波理论的LMS算法因其算法简单,而且能达到满意的性能,得到了青睐,成为了应用最广泛的自适应算法。本文介绍了RLS和LMS两种方法。 2 自适应滤波器2.1 自适应滤波简介根据环境的改变,使用自适应算法来改变滤波器的参数和结构。这样的滤波器就称之为自适应滤波器。一般情况下,不改变自适应滤波器的结构。而自适应滤波器的系数是由自适应算法更新的时变系数。即其系数自动连续地适应于给定信号,以获得期望响应。自适应滤波器的最重要的特征就在于它能够在未知环境中有效工作,并能够跟踪输入信号的时变特征。2.2 自适应滤波器特征及特点(1
8、)滤波器是线性时不变的。(2)设计过程用到希望的带通、转换波段、带通波纹和阻带衰减。(3)因为滤波器是频率选择性的,所以当输入信号的各个部分占据不重叠频带时,滤波器工作得最好。例如,它可以轻易分离频谱不重叠的信号和附加噪声。(4)滤波系数在设计阶段选定,并在滤波器的正常运行中保持不变。然而,在实际应用中有很多问题不能用固定数字滤波器很好地解决,因为我们没有充足的信息去设计固定系数的数字滤波器,或设计规则会在滤波器正常运行时改变。绝大数这些应用都可以用特殊的智能滤波器,即常说的自适应滤波器来成功解决。自适应滤波器的显著特征是:它在工作过程中不需要用户的干预就能改变响应以改善性能。(5)滤波结构。
9、这个模块使用输入信号的测量值产生滤波器的输出。如果输出是输入测量值的线性组合,则这个滤波器就是线性的,否则称为非线性的。结构有设计者设定,它的参数由自适应算法调整。(6)性能标准。自适应滤波器的输出和期望的响应(当可获得时)由COP模块处理,并参照特定应用的需要来评估它的质量。(7)自适应算法。自适应算法使用性能标准的数值或它的函数、输入的测量值和期望值的响应来决定如何修改滤波器的参数,以改善性能。2.3 自适应滤波器的应用在实际应用中常常会遇到这样的情况:随机信号的统计特性是未知的,或者信号的统计特性是缓慢的变化着的(非平稳信号),这就促使人们去研究一类特殊的滤波器,这类滤波器具有以下特点:
10、当输入过程的统计未知时,或者输入过程的统计特性变化时,能够相应的调整自身的参数,以满足某种准则的要求,由于这类滤波器能变化自身的参数以“适应”输入过程统计特性的估计或变化,因此,就把这类滤波器称为自适应滤波器。自适应的过程涉及到将价值函数用于确定如何更改滤波器系数从而减小下一次迭代过程成本的算法。价值函数是滤波器最佳性能的判断准则,比如减小输入信号中的噪声成分的能力。随着数字信号处理器性能的增强,自适应滤波器的应用越来越常见,时至今日它们已经广泛地用于手机以及其它通信设备、数码录像机和数码照相机以及医疗监测设备中。2.4 自适应滤波器的模块结构自适应滤波器通常由两部分构成,其一是滤波子系统,根
11、据它所要处理的功能而往往有不同的结构形式。另一是自适应算法部分,用来调整滤波子系统结构的参数,或者滤波系数。在自适应调整滤波系数的过程中,有不用的准则和算法。算法是指调整自适应系数的步骤。以达到在所描述的准则下的误差最小化。自适应滤波器含有两个过程,即自适应过程和滤波过程。前一过程的基本目标是调节滤波系数,使得有意义的目标函数或代价函数最小化,滤波器输出信号逐步逼近所期望的参考信号,由两者之间的误差信号驱动某种算法对滤波系数进行调整,使得滤波器处于最佳工作状态以实现滤波过程。所以自适应过程是一个闭合的反馈环,算法决定了这个闭合环路的自适应过程需要的时间。但是,由于目标函数是输入信号,参考信号及
12、输出信号的函数,即。因此目标函数必须具有以下两个性质:(1)非负性 , (2.1)(2)最佳性 , (2.2)在自适应过程中,自适应算法逐步使目标函数最小化,最终使逼近与,滤波参数或权系数收敛于,这里是自适应滤波系数的最优解即维纳解。因此,自适应过程也是自适应滤波器的最佳线性估计的过程,既要估计滤波器能实现期望信号的整个过程,又要估计滤波权系数以进行有利于主要目标方向的调整。这些估计过程是以连续的时变形式进行的,这就是自适应滤波器需要有的自适应收敛过程。如何缩短自适应收敛过程需要的收敛时间,这个与算法和结构有关的问题是人们一直重视研究的问题之一。当然滤波子系统在整个自适应滤波器的设计中也占有很
13、重要的地位,因为它对最终的滤波性能有很大的影响。下面介绍两种常用的滤波器结构。2.4.1 FIR结构滤波器FIR滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。有限长单位冲激响应(FIR)滤波器有以下特点:(1)系统的单位冲激响应h (n)在有限个n值处不为零。(2)系统函数H(z)在|z|0处收敛,极点全部在z = 0处(因果系统)。(3)构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例
14、如频率抽样结构)也包含有反馈的递归部分。图2.4.1 FIR滤波器结构2.4.2 IIR结构滤波器IIR滤波器:具有反馈,一般认为具有无限的脉冲响应。采用递归型结构,即结构上带有反馈环路。无限长单位冲激响应(IIR)滤波器有以下特点:(1)IIR滤波器的系统函数可以写成封闭函数的形式(2)IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。(3)IIR滤波器在设计上可以借助成熟的模拟滤波器的成果。(4)IIR滤波器的相位特性不好控制,对相位要求较高时,
15、需加相位校准网络。图2.4.2 IIR滤波器结构2.4.3 FIR结构与IIR结构型的区别(1)单位响应IIR滤波器单位响应为无限脉冲序列,而FIR数字滤波器单位响应为有限的。FIR滤波器,也就是“非递归滤波器”,没有引入反馈。这种滤波器的脉冲响应是有限的。(2)幅频特性IIR数字滤波器幅频特性精度很高,不是线性相位的,可以应用于对相位信息不敏感的音频信号上;FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变,这是很好的性质。(3)实时信号处理FIR数字滤波器是有限的单位响应也有利于对数字信号的处理,便于编程,用于计算
16、的时延也小,这对实时的信号处理很重要。3 自适应滤波器原理及算法3.1 横向滤波结构的最陡下降法3.1.1 最陡下降法的原理首先考虑如图3.1所示的横向FTR自适应滤波器图3.1 自适应横向滤波器结构它的输入序列以向量的形式记为: (3.1)假设取自均值为零,自相关矩阵为R的广义平稳随机过程,而滤波器的系数矢量(加权矢量)为: (3.2)以上二式中括号内的k为时间指数,因此和分别表示时刻k的滤波器输入序列和加权值,滤波器的输出为: (3.3)式中M为滤波器的长度。图4.1中的称为“期望理想响应信号”,有时也可称为“训练信号”,它决定了设计最佳滤波器加权向量的取值方向。在实际应用中,通常用一路参
17、数信号来作为期望响应信号。是滤波器输出相对于的误差,即 (3.4)显然,自适应滤波控制机理是用误差序列按照某种准则和算法对其系数,M进行调节的,最终使自适应滤波器的目标(代价)函数最小化,打到最佳滤波状态。按照均方误差(MSE)准则所定义得目标函数是 (3.5)将式(3.4)代入式(3.5),目标函数可以化为 (3.6)当滤波系数固定时,目标函数又可以写为 (3.7)其中,是长度为N的期望信号与输入信号的互相关矢量,是的输入向量得自相关矩阵。由式(3.7)可见,自适应滤波器的目标函数是延迟线抽头系数(加权或滤波系数)的二次函数。当矩阵R和矢量P已知时,可以由权矢量直接求其解。现在我们将式(3.
18、7)对W求倒数,并令其等于零,同时假设R是非奇异的,由此可以得到目标函数最小的最佳滤波系数为 (3.8) 这个解就是维纳解,即最佳滤波器数值。因此均方误差函数是滤波系数的二次方程。最陡下降法就是实现上述搜索最佳值的一种优化技术,它利用梯度信息分析自适应滤波性能和追踪最佳滤波状态。梯度矢量是由均方误差的梯度来定义的。换句话说,自适应过程是在梯度矢量的负方向连接的校正滤波系数,最终达到均方误差为最小,获得最佳滤波或准优工作状态。令代表k时刻的维梯度矢量,这里M等于滤波器滤波系数的数目,为自适应滤波器在k时刻的滤波系数和权矢量。按照最陡下降法调节滤波系数,则在k+1时刻的滤波系数或权矢量可以用下列简
19、单递归关系来计算: (3.9)式中,为自适应收敛系数或步长,是一个正实常数。根据梯度矢量定义,可写成 (3.10)当滤波系数为最佳值,即是维纳解时,梯度矢量应等于零。将式(3.7)代入(3.10)得到 (3.11) 因此,在最陡下降算法中,当相关矩阵R和互相关矢量P已知时,由滤波系数矢量可以计算梯度矢量,把式(3.11)代入到(3.9)中,可以计算出滤波系数的更新值M (3.12)式(3.12)所描述的即是最陡下降算法自适应迭代的基本公式,且由该公式我们可以不用再直接求R的逆。(3.12)式所示的迭代算法是一个反馈模型,因此算法的收敛性(稳定性)就非常重要。3.1.2 最陡下降法的稳定性首先我
20、们定义k时刻的加权误差矢量为 (3.13)则最陡下降算法式(4.13)可以写成另一种形式 (3.14)这样,我们得到最陡下降法的稳定性取决于两个因素:自适应步长参数和输入信号矢量的自相关矩阵R。根据线性代数里的酉相似变换原理,用酉矩阵Q将相关矩阵R对角线化,即 (3.15)式中D为对角线矩阵,它的元素是R的特征值,矩阵Q的列矢量是相关矩阵R的特征值对应的特征向量的正交集,是Q的共轭转置。酉矩阵的性质是。把式(3.15)代入式(3.14),得到 (3.16)两边乘以得到 (3.17a)或写为 (3.17b)其中,为旋转参数矢量或旋转滤波系数矢量误差,的起始值为 (3.18) 由(3.17b)式,
21、可以推算出 (3.19) 把单位矩阵I和对角线矩阵D展开,上式可以写为 (3.20)上式表明,为了保证最陡下降算法的稳定性(收敛性),矩阵中的每一个元素,M的绝对值必须小于1,由此可以得到算法稳定性的收敛条件为 (3.21)式中是相关矩阵R的最大特征值。在此条件下,对角线矩阵中全部元素当而趋近于零,结果使得。当k很大时,意味着自适应滤波系数矢量趋近于最佳维纳解。3.2 自适应噪声抵消原理自适应滤波器已经在信道均衡、回波消除、雷达、线性预测、谱分析和系统识别等领域得到广泛应用。本节将专门讨论自适应滤波器用作自适应噪声抵消的应用。基于维纳理论的自适应噪声抵消需要无限加权滤波器,以极小化输出误差。为
22、了实现维纳滤波方案,必须使用有限加权滤波器。换句话说,自适应滤波器必须假定维纳滤波器是一个有限冲激响应(FIR)滤波器。(a) 最佳噪声抵消器(b) 自适应噪声抵消器图3.2 自适应噪声抵消原理方框图如图3.2(a)所示是基于维纳滤波器的自适应噪声抵消原理方框图。主信号由有用信号和背景噪声构成,其中和不相关。参考信号可与或相关。是背景噪声的最佳估计。可以通过选择最佳FIR维纳滤波器的最佳加权计算得出,即 (3.22)其中,M表示滤波器的阶:由延时获得。具有M个权重滤波器的估计误差由下式定义: (3.23)其中 由正交原理有所以和正交。对式(3.23)两边取平方和数学期望,可得 (3.24) (
23、3.25)然后,式(3.25)可简化如下: (3.26)其中,输入信号和参考矢量之间的互相关用表示,即 (3.27)R表示输入自相关矩阵,即 (3.28)式(3.26)中的均方估计误差应该相对于滤波器权重有极小值,即 (3.29)令均方估计误差函数的梯度等于0,可得最佳FIR滤波器(维纳滤波器)权重如下, (3.30)实际上,通常和的统计量是未知的。然而,用widrow和Hoff提出的方法迭代求解式(3.30)能够克服这一限制。图3.2(b)表示了自适应滤波器的方框图。如果参考信号和主信号中的噪声相关,则自适应滤波器将在输出端去除其相关性,具体方法是从参考信号的噪声中产生一个主信号中背景噪声的
24、估计值,然后从主信号中减去这个估计噪声,那么自适应滤波器的输出就是有用信号的估计。用最速下降法(或梯度下降法)可得到式(3.30)的解。自适应滤波器的加权值被更新的第(n+1)步迭代事为 (3.31)因,的估计十分关键。计算的最简单最通常的方法是用最速下降法,且每次迭代选择的应该满足此如下条件: (3.32)其中,表示性能指标。假设很小,则式(3.2.11)可写为 (3.33) 再设,则式(3.30)满足下列不等式 (3.34)其中,是收敛参数。最后,把代入式(3.31),得, (3.35)3.2.1 基于LMS算法的自适应噪声抵消从上节我们可以看出,如果没有关于参考信号和输入自相关矩阵R的先
25、验信息,要实现最优滤波器加权是不可能的。因此,Widrow和Hoff提出了另一种可迭代的维纳FIR滤波实现方法。在这种方法中,项用丢弃期望算子的瞬时梯度代替,即 (3.36)其中,。结合式(3.35)和式(3.36),滤波器的权重可被更新为: (3.37)综上所述,基于最小均方误差准则(LMS)的自适应抵消算法可以按以下步骤实现:第一步:设一个初值第二步:由式(3.38)计算自适应FIR滤波器的输出 (3.38)其中,M表示滤波器的阶。第三步:估计当前时刻n的误差 (3.39)第四步:用最速下降LMS算法更新滤波器权重: (3.40)第五步:校验误差是否满足标准。若满足标准,则停止迭代。若不满
26、足,则进行下一步;第六步:,到下一个时刻,重复以上步骤,直至满足要求为止。3.2.2 基于RLS算法的自适应噪声抵消我们在前面讨论过,LMS(最小均方)算法是一种有效而简便的方法。然而,这种方法对快速变化的信号并不适合,因为它的收敛速度较慢。RLS(递推最小二乘)算法是另一种基于最小二乘准则的精确方法,它具有快速收敛和稳定的滤波器特性,因而被广泛地应用于实时系统识别和快速启动的信号均衡等领域。但对于某些应用来说,这种算法的计算量会很大,因为她每次更新需要运算。这里我们将RLS算法作为一种FIR滤波器权重的更新算法。RLS算法的估计准则是最小二乘时间平均,即考虑从零时刻到当前时刻n的所有估计误差
27、如下: (3.41) (3.42)其中表示主参考信号中噪声信号的估计。为了更好的掌握信号特性的变化,式(3.41)中的性能指标定义为 (3.43)其中是遗忘因子。将式(3.43)对求导,可得最佳滤波器权重: (3.44)把式(3.42)代入式(3.44),并令式(3.44)等于零,我们可以得最佳滤波器权重如下: (3.45) (3.46)式(3.46)可简化为 (3.47)其中最后,最佳滤波权重可以表示为 (3.48)其中是的逆。RLS算法运用式(3.48)递推计算滤波权重。和在当前时刻n估计如下: (3.49) (3.50)其中M为FIR滤波器的阶。的逆定义为: (3.51)式(3.51)通
28、过矩阵求逆引理可以简化为: (3.52)利用市(3.51)和(3.52),式(3.48)可以表示如下: (3.53)其中表示增益矢量,表示在n-1时刻的滤波器权重的估计误差,二者可分别估计为 (3.54) (3.55)滤波器权重被更新为 (3.56)最后,估计误差可计算如下: (3.57)LMS算法和RLS算法滤波器更新序列的差别在于误差序列的估计和项出现在相关项的前面。当R矩阵初始化后的值很小时,RLS更新算法可按如下的步骤进行:其中,I为单位矩阵,为很小的正数,并且所有的权重系数初始化为零,即 ,在时刻n的值已知,运用式(3.54)计算增益矢量。第一步:用式(3.55)计算误差信号;第二步
29、:用式(3.54)计算增益矢量;第三步:用式(3.52)计算;第四步:用式(3.53)或(3.56)更新滤波器权重;第五步:估计噪声计算如下:第六步:计算估计误差:第七步:返回步骤1进行下一次迭代。遗忘因子的选择取决于样本数n,即如果待分析信号是平稳的,则应该选为单位1.否则应小于单位1,以便跟踪信号的非平稳部分。性能指标考虑到了由最邻近迭代(第n次迭代)产生的最邻近误差。在实际应用中,较小的值能促使平稳噪声信号的收敛,这种情况只利用了很少的样本。4 LMS滤波原理及算法4.1 从最陡下降法导出LMS算法最陡下降法不需要知道误差特性曲面的先验知识,其算法就可以收敛到最佳维纳解,且与起始条件无关
30、。但是最陡下降算法的主要限制是它需要准则测得每次迭代的梯度矢量,这妨碍了它的应用。为了减少计算复杂度和缩短自适应收敛时间,1960年,美国斯坦福大学的Widrow等提出了最小均方(LMS)算法,这是一种用瞬时值估计梯度矢量的方法,即 (4.1)可见,这种瞬时估计是无偏的,因为它的期望值确实等于(3.10)的梯度矢量。所以,按照自适应滤波器系数矢量的变化与梯度矢量估计的方向之间的关系,可以写出LMS算法的公式如下: (4.2)4.2 基本LMS算法的实现步骤(1)初始化令所有权重为任一固定值或为0,对没一个接下来地抽样时刻(k=1,2.,N)执行(2)到(4)。(2)计算滤波输出 (4.3)(3
31、)计算估计误差 (4.4) (4)更新下一时刻的权 (4.5) 从上面看出,LMS算法具有简洁和易于实现的特点使它成为许多实时系统的首选算法,LMS算法对每组输入和输出抽样大约2N1次加法。太多数信号处理器都适宜进行乘法和累加运算,使直接实现LMS算法更具有吸引力。5 MATLAB概述5.1 MATLAB基本功能MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模
32、设计与分析等领域。5.2 MATLAB基本应用(1)数值分析。 (2)数值和符号计算。 (3)工程与科学绘图。 (4)控制系统的设计与仿真。 (5)数字图像处理 技术。(6)数字信号处理 技术。(7)通讯系统设计与仿真。 (8)财务与金融工程。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。5.3 MATLAB的特点(1)其高级语言可用于技术计算 (2)开发环境可对代码、文件和数据进行管理(3)交互式
33、工具可以按迭代的方式探查、设计及求解问题 (4)数学函数可用于线性代数、统计、傅立叶分析、筛选、优化以及数值积分等 (5)二维和三维图形函数可用于可视化数据 (6)各种工具可用于构建自定义的图形用户界面 (7)各种函数可将基于MATLAB的算法与外部应用程序和语言(如 C、C+、Fortran、Java、COM 以及 Microsoft Excel)集成2(8)不支持大写输入,内核仅仅支持小写5.4 MATLAB的优势(1)友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命
34、令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。(2)简单易用的程序语言Matlab一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。(3
35、)强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C+ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。(4)出色的图形处理功能MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。(5)应用广泛的
36、模块集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。(6)实用的程序接口和发布平台新版本的MATLAB可以利用MATLAB编译器和C/C+数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。允许用户编写可以和MATLAB进行交互的C或C+语言程序。(7)应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性
37、对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。6 自适应滤波器的实现6.1 基本LMS算法的实现流程图图6.1 LMS算法实现流程图6.2 LMS算法的仿真程序程序如下:%lms 算法clear allclose allhold off%系统信道权数sysorder = 5 ;%抽头数N=1000;%总采样次数inp = randn(N,1);%产生高斯随机系列n = randn(N,1);b,a = butter(2,0.25);Gz = tf(b,a,-1);%逆变换函数h= 0.0976;0.2873;0.3360;0.2210;0.0964;%信道特性向量y
38、= lsim(Gz,inp);%加入噪声n = n * std(y)/(10*std(n);%噪声信号d = y + n;%期望输出信号totallength=size(d,1);%步长N=60 ; %60节点作为训练序列%算法的开始w = zeros ( sysorder , 1 ) ;%初始化for n = sysorder : N u = inp(n:-1:n-sysorder+1) ;% u的矩阵y(n)= w * u;%系统输出e(n) = d(n) - y(n) ;%误差if n 20mu=0.32;elsemu=0.15;endw = w + mu * u * e(n) ;%迭代
39、方程end %检验结果for n = N+1 : totallengthu = inp(n:-1:n-sysorder+1) ;y(n) = w * u ;e(n) = d(n) - y(n) ;%误差end hold onplot(d)plot(y,r);title(系统输出) ;xlabel(样本)ylabel(实际输出)figuresemilogy(abs(e) ;% e的绝对值坐标title(误差曲线) ;xlabel(样本)ylabel(误差矢量)figure%作图plot(h, k+)hold onplot(w, r*)legend(实际权矢量,估计权矢量)title(比较实际和估
40、计权矢量) ;axis(0 6 0.05 0.35)图6.2 (a) 图6.2 (b)图6.2 (c)6.3 LMS自适应算法性能分析自适应滤波系数矢量的初始值是任意的常数,应用LMS算法调节滤波系数具有随机性而使系数矢量带来非平稳过程。通常为了简化LMS算法的统计分析,假设算法连续迭代之间存在以下的充分条件:(1)每个输入信号样本矢量的起始值与其过去全部样本矢量,k=0,1,n-1是统计独立的,不相关的,既有,k=0,1,n-1。(2)每个输入信号样本矢量与全部过去的期望信号,k=0,1,n-1也是统计独立的,不相关的,既有,k=0,1,n-1。(3)期望信号样本矢量依赖于输入过程样本矢量,
41、但全部过去的期望信号样本是统计独立的。(4)滤波器抽头输入信号矢量与期望信号包含着全部n的共同的高斯分布随机变量。6.4 仿真结果分析从图6.2(a)中可以得到实际信号的输出在坐标0的范围波动,而系统输出大部分在(0.5,-0.5)之间。少部分在它之外波动。随N的增加而波动范围变小。从图6.2(b)中可以得到随步长参数的减少,LMS算法的收敛速率相应减少。同时也影响学习曲线的变化。误差曲线随迭代次数n的变化而逐渐收敛于,且随N的增加而越趋明显。从图6.2(c)中可以得到实际权矢量得关系:误差权矢量与实际权矢量有较大的误差,而误差权矢量总是围绕在实际权矢量上下波动。随N的增加而使得其相互之间的误差越小。结 论在整个毕业设计的过程中,我们从基本的维纳滤波到最陡下降法再到自适应LMS算法,进行了系统的分析和实验验证。知道在相关统计特性已知的情况下,传统滤波器能取得最佳滤波,但是在没有相关的验证知识的情况下,传统滤波器就不能满足我们的质量要求,这就需要我们的自适应滤波器来实现了。但是,自适应滤