自适应滤波器的原理与设计

合集下载

自适应滤波器原理

自适应滤波器原理

自适应滤波器原理
自适应滤波是一种数字或电子信号处理策略,它通过动态识别和过滤器参数调整来有效地减少噪声并增强信号。

自适应滤波器可以通过减少滤波器内部增益以及解调器参数的调节来减少噪声,而不会损害信号的特性。

自适应滤波器的基本原理是,当信号的特征发生变化时,滤波器根据信号的特性更新自身参数进行实时调整。

它们通过改变滤波器的内部增益、改变滤波器的极点频率以及调整解调器的参数来达到该目的。

在不断更新这些参数的同时,自适应滤波器还能够根据信号特性调整滤波器的阻尼和贴合性。

具有优点的自适应滤波器是在非常复杂的环境中,例如畸变、多普勒及外界信号等,滤波器可以自动改变,从而保持正确的输出。

此外,它可以根据信号的参数改变,这使得其比其他基于一个固定设置的滤波器更加灵活和适应性更强。

自适应滤波器在各种方面均有所发挥,例如磁共振成像模型、数据处理,甚至电信领域等。

在这些领域中,可以借助自适应滤波技术减少背景噪声,有效提高信号质量,加速数据传输速度等。

自适应滤波器的原理与设计

自适应滤波器的原理与设计

自适应滤波器的原理与设计
1.确定误差信号:首先需要根据期望信号和滤波器输出信号,计算得到误差信号。

误差信号是计算滤波器参数修正的基础。

2.确定滤波器模型:根据输入信号和输出信号的特点,选择适当的滤波器模型。

滤波器模型可以是线性滤波器、非线性滤波器或者是神经网络模型等。

3.确定自适应算法:选择适当的自适应算法来修正滤波器的参数。

常用的自适应算法包括最小均方差(LMS)算法、最小二乘(LS)算法、递归最小二乘(RLS)算法等。

4.初始化滤波器参数:在开始滤波处理之前,需要对滤波器的参数进行初始化。

初始化的方法可以是随机初始化或者根据经验进行设定。

5.更新滤波器参数:根据误差信号和自适应算法,计算得到修正值,用于更新滤波器的参数。

这个过程通常采用迭代的方式,不断地根据误差信号进行修正,直到滤波器的输出与期望信号达到最优匹配为止。

6.调试和验证:最后,需要对自适应滤波器进行调试和验证。

可以通过对已知输入信号进行滤波处理,并与期望输出进行比较,来评估滤波器的性能和效果。

一些经典的自适应滤波器模型包括LMS滤波器和RLS滤波器。

LMS滤波器通过调整滤波器的权值来最小化输入信号与期望信号之间的均方差。

RLS滤波器通过递推方式更新滤波器的权值,能够更好地适应非平稳信号和时间变化的信号。

LMS自适应滤波器的原理和分析

LMS自适应滤波器的原理和分析

1 LMS自适应滤波器1.1 LMS算法最小均方误差(LMS)算法具有计算量小、易于实现等优点,因此,在实践中被广泛应用。

LMS算法的基本思想是调整滤波器自身的参数,使滤波器的输出信号与期望输出信号之间的均方误差最小,并使系统输出为有用信号的最佳估计。

实质上,LMS可以看成是一种随机梯度或者随机逼近算法,可以写成如下的基本迭代方程:其中,μ为步长因子,是控制稳定性和收敛速度的参量。

从上式可以看出,该算法结构简单、计算量小且稳定性好,但固定步长的LMS算法在收敛速度、跟踪速率及权失调噪声之间的要求相互制约。

为了克服这一缺点,人们提出了各种变步长的LMS改进算法,主要是采用减小均方误差或者以某种规则基于时变步长因子来跟踪信号的时变,其中有归一化LMS算法(NLMS)、梯度自适应步长算法、自动增益控制自适应算法、符号一误差LMS算法、符号一数据LMS算法、数据复用LMS算法等。

1.2 LMS自适应滤波器的结构原理自适应滤波是在部分信号特征未知的条件下,根据某种最佳准则,从已知的部分信号特征所决定的初始条件出发,按某种自适应算法进行递推,在完成一定次数的递推之后,以统计逼近的方式收敛于最佳解。

当输入信号的统计特性未知,或者输入信号的统计特性变化时。

自适应滤波器能够自动地迭代调节自身的滤波器参数.以满足某种准则的要求,从而实现最优滤波。

因此,自适应滤波器具有自我调节和跟踪能力。

在非平稳环境中,自适应滤波在一定程度上也可以跟踪信号的变化。

图1 为自适应滤波的原理框图。

2 LMS滤波器的仿真与实现2.1 LMS算法参数分析传统的LMS算法是最先由统计分析法导出的一种实用算法.它是自适应滤波器的基础。

通过Matlab仿真对LMS算法中各参数的研究,总结出其对算法的影响。

现针对时域LMS算法的各参数进行一些讨论。

(1)步长步长μ是表征迭代快慢的物理量。

由LMS算法可知:该量越大,自适应时间μ越小,自适应过程越快,但它引起的失调也越大,当其大于1/λmax时,系统发散;而该值越小,系统越稳定,失调越小,但自适应过程也相应加长。

自适应滤波器原理

自适应滤波器原理

自适应滤波器原理
自适应滤波器是一种数字信号处理的方法,它基于信号的统计特性来自动调整滤波器的参数,以适应信号的变化。

其原理可以简要概括如下:
1. 自适应滤波器通过比较输入信号与期望输出信号之间的差异来调整滤波器的参数。

这种差异通常用误差信号来表示,它是输入信号与期望输出信号之间的差。

2. 滤波器的参数调整可分为离散时间和连续时间两种情况。

在离散时间中,滤波器的参数可以通过迭代更新来实现。

其中一个常用的方法是最小均方(LMS)算法,它通过不断调整滤波器的参数,使得误差信号的均方误差最小化。

3. 在连续时间中,自适应滤波器的参数调整可以通过梯度下降法来实现。

梯度下降法基于损失函数的梯度信息,通过更新参数的方向和步长来逐渐降低误差,直到收敛到最优解。

4. 自适应滤波器的应用广泛,特别是在信号处理、通信和控制系统中。

它可以用于去除信号中的杂波、抑制干扰、提升信号的质量等。

常见的应用包括语音降噪、信号恢复和自适应控制等领域。

总之,自适应滤波器通过根据信号的统计特性来调整滤波器的参数,以适应信号的变化。

它是一种有效的信号处理方法,具有广泛的应用前景。

通信电子中的自适应滤波器设计优化

通信电子中的自适应滤波器设计优化

通信电子中的自适应滤波器设计优化自适应滤波器是一种能够自动地调整自身参数的数字滤波器,常被用于信号处理、模拟信号滤波和数字信号滤波等领域。

当信号在经过传输或添加噪声后,其频谱分布可能发生改变,因此需要根据不同环境下的信号特征来调整滤波器的参数,以达到更好的滤波效果。

本文将分析通信电子中的自适应滤波器的设计与优化。

一、自适应滤波器的原理自适应滤波器使用一种称为“梳正交转换”的技术进行计算,该技术可以优化滤波器的频率响应。

具体来说,自适应滤波器根据目标信号与输入信号的比较结果来调整其参数,使得输出信号更接近于目标信号。

这种调整基于反馈机制进行,通过反馈的误差信号来更新滤波器的权重。

重复这个过程直到达到所需的性能水平。

自适应滤波器通常比传统的滤波器更具有适应性和稳定性。

二、自适应滤波器的设计方法自适应滤波器的设计方法主要有两种:基于LMS算法的梳正交转换和基于RLS算法的梳正交转换。

这两种方法都很适合在通信电子中进行滤波。

1. 基于LMS算法的梳正交转换LMS算法是一种流行的自适应滤波器算法。

在梳正交转换中,每个滤波器都对应着一个权值系数。

具体来说,LMS算法对滤波器的每个权值系数进行随机初始化,然后检查与目标信号的误差,以此更新权值系数。

LMS算法具有线性收敛性,因此易于实现和使用。

但是,LMS 算法在高斯白噪声信号下存在收敛速度慢等问题。

2. 基于RLS算法的梳正交转换与LMS算法相比,RLS算法具有更快的收敛速度和更高的精度。

在梳正交转换中,RLS算法根据输入信号和目标信号之间的误差来更新权重系数。

RLS算法利用递归方程更新权重系数,所以需要计算矩阵的逆。

然而,相对于LMS算法,RLS算法计算量更大,需要更多的内存和计算能力。

三、自适应滤波器的优化自适应滤波器的优化可以从以下三个方面入手:过渡带宽宽度的控制、滤波器支路数的选择以及突变因子的调节。

1. 过渡带宽宽度的控制自适应滤波器中,过渡带一般被看作是频率范围内信号分量最易丢失的部分。

自适应滤波器原理 第五版

自适应滤波器原理 第五版

自适应滤波器原理第五版一、自适应滤波器概述自适应滤波器是一种能够自动调整其内部参数的滤波器,以适应输入信号的变化。

这种滤波器在许多领域都有广泛的应用,如通信、图像处理、控制系统等。

自适应滤波器的核心特点是能够根据输入信号自动调整其参数,从而实现最优的滤波效果。

二、最小均方误差准则最小均方误差准则是自适应滤波器设计的重要准则之一。

这个准则的基本思想是使滤波器的输出信号与期望信号之间的均方误差最小。

通过最小化均方误差,自适应滤波器能够逐渐逼近最优滤波器,从而提高信号处理的性能。

三、递归最小二乘法递归最小二乘法是一种常用的自适应滤波算法。

该算法通过最小化误差的平方和来不断更新滤波器的系数,从而实现最优的滤波效果。

递归最小二乘法具有快速收敛和稳定的特点,因此在实践中得到了广泛应用。

四、格型自适应滤波器格型自适应滤波器是一种特殊的自适应滤波器,其结构类似于格型结构。

这种滤波器的特点是具有较低的计算复杂度,同时具有良好的性能表现。

格型自适应滤波器广泛应用于实时信号处理和控制系统等领域。

五、自适应滤波器的应用自适应滤波器在许多领域都有广泛的应用,如通信、图像处理、控制系统等。

在通信领域,自适应滤波器用于信号的降噪和增强,从而提高通信质量。

在图像处理领域,自适应滤波器用于图像的平滑和锐化,从而提高图像的清晰度。

在控制系统中,自适应滤波器用于实现最优控制,从而提高系统的性能。

六、采样矩阵求逆算法采样矩阵求逆算法是一种求解线性方程组的算法,其在自适应滤波器的设计中也有重要的应用。

通过采样矩阵求逆算法,可以求解出自适应滤波器的最优系数,从而提高滤波器的性能。

七、并行分布式自适应滤波器并行分布式自适应滤波器是一种基于并行结构和分布式思想的自适应滤波器。

这种滤波器的特点是具有较高的计算效率和可扩展性,适用于大规模信号处理和实时系统等领域。

八、开关型自适应滤波器开关型自适应滤波器是一种特殊类型的自适应滤波器,其通过开关电路实现信号的传递和滤除。

自适应滤波算法原理及其应用

自适应滤波算法原理及其应用

自适应滤波算法原理及其应用自适应滤波算法是一种能够自动调整滤波参数的信号处理方法。

它根据当前的输入信号和噪声情况,通过不断迭代计算更新滤波器的系数,使得滤波器能够适应不同的输入信号并实现有效的噪声抑制。

自适应滤波的基本原理是通过最小均方差准则,寻找滤波器的最优系数。

它通过最小化滤波输出与原始信号之间的均方差差异,来优化滤波器的性能。

自适应滤波器将输入信号与待估计的滤波系数进行卷积运算,得到滤波输出信号。

然后根据输出信号与实际信号之间的误差,来调整滤波器的系数。

通过不断迭代,最终得到一个最佳的滤波器参数。

自适应滤波在信号处理领域有广泛的应用。

其中一个主要应用是在通信领域,用于抑制信号中的噪声和干扰。

自适应滤波能够有效地降低通信信号中的噪声,提高通信系统的性能。

另外,自适应滤波也常用于图像处理领域,用于去除图像中的噪声和增强图像的质量。

通过自适应滤波,能够减少图像中的噪点、平滑图像边缘等,使得图像更加清晰和易于分析。

此外,自适应滤波还可以应用在语音处理、雷达信号处理、生物医学信号处理等领域。

例如,在语音处理中,自适应滤波可以在语音的捕获和传输过程中,自动抑制环境噪声和回声,提高语音的清晰度和理解度。

在雷达信号处理中,自适应滤波可以去除雷达回波中的杂波和干扰,提高目标的探测和跟踪性能。

在生物医学信号处理中,自适应滤波可以去除脑电图(EEG)或心电图(ECG)等生物信号中的噪声和干扰,以提取有用的生理信息。

总之,自适应滤波算法是一种基于最小均方差准则的信号处理方法,能够根据输入信号和噪声情况自动调整滤波器的系数,从而实现有效的噪声抑制。

它在通信、图像处理、语音处理、雷达信号处理、生物医学信号处理等领域有广泛应用。

通过自适应滤波,能够提高系统的性能和提取有用信号的质量。

滤波器设计中的自适应高斯滤波器

滤波器设计中的自适应高斯滤波器

滤波器设计中的自适应高斯滤波器在滤波器设计中,自适应高斯滤波器是一种常用的滤波器类型。

它的设计理念是基于高斯分布的特性来对信号进行滤波,以提取出所需的信息。

本文将介绍自适应高斯滤波器的原理、设计方法以及应用领域。

一、自适应高斯滤波器的原理自适应高斯滤波器是一种非线性滤波器,其原理是基于高斯函数的卷积操作。

高斯函数是一种常见的数学函数,具有平滑的特性。

在信号处理中,如果信号中存在噪声或者干扰,可以使用高斯滤波器来降低这些干扰的影响。

自适应高斯滤波器的特点是在滤波过程中可以自动调整滤波器参数,以适应不同的信号特性。

这是通过计算信号的局部统计特征来实现的。

通过对信号局部统计特性的分析,可以确定适合该信号的高斯滤波器参数,从而实现自适应滤波。

二、自适应高斯滤波器的设计方法设计自适应高斯滤波器需要确定以下几个关键参数:1. 高斯函数的标准差(sigma):标准差决定了高斯曲线的宽度,也与滤波器的频率响应有关。

一般情况下,标准差越大,滤波器的频率响应越宽,能够更好地保留信号中的细节信息。

2. 滤波器窗口大小(window size):窗口大小决定了滤波器的局部范围。

通常情况下,窗口大小应该足够大,能够包含足够多的信号点,以准确地计算出信号的局部统计特性。

3. 自适应参数(adaptive parameter):自适应参数用于调整滤波器参数的权重。

通过对信号局部统计特性的分析,可以确定相应的自适应参数,以实现对不同信号特性的适应。

根据以上参数,可以使用以下步骤进行自适应高斯滤波器的设计:1. 首先,确定滤波器的窗口大小。

一般情况下,窗口大小应该足够大,能够包含足够多的信号点。

2. 然后,计算信号在窗口内的局部统计特性,例如均值和方差。

3. 根据信号的局部统计特性,计算适合该信号的高斯滤波器参数,例如标准差。

4. 使用计算得到的高斯滤波器参数,对信号进行滤波操作。

5. 重复步骤2到步骤4,直到对整个信号进行滤波。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二 自适应滤波信号一、实验目的:1.利用自适应LMS 算法实现FIR 最佳维纳滤波器。

2.观察影响自适应LMS算法收敛性,收敛速度以及失调量的各种因素,领会自适应信号处理方法的优缺点。

3.通过实现AR 模型参数的自适应估计,了解自适应信号处理方法的应用。

二、实验原理及方法自适应滤波是一种自适应最小均方误差算法(LMS ),这种算法不像维纳滤波器需要事先知道输入和输出信号的自相关和互相关矩阵,它所得到的观察值,滤波器等价于自动“学习”所需要的相关函数,从而调整FIR 滤波器的权系数,并最终使之收敛于最佳值,即维纳解。

)(n y 下面是自适应FIR 维纳滤波器的LMS 算法公式:(2-1))()()(0^^m n y n h n x Mm m -=∑= (2-2) ^)()()(n x n x n e -=M m m n y n e n h n h m m ⋯=-∙+=+,1)()(2)()1(^^μ (2-3)其中FIR 滤波器共有M+1个权系数,表示FIR 滤波器第m 个权系数在第n 步的估计值。

),0)((^M m n h m ⋯=因此,给定初始值)M ,0(),0(⋯=m h m ,每得到一个样本,可以递归得到一组新的滤波器权系数,只要步长)(n y μ满足max10λμ<< (2-4)其中max λ为矩阵R 的最大特征值,当∞→n 时,)M ,0(),0(⋯=m h m 收敛于维纳解。

现在我们首先考察只有一个权系数h 的滤波器,如图2.1所示。

假如信号由下式确定:)(n y )()()(y n w n s n += (2-5) )()(n hx n s = (2-6) 其中h 为标量常数,与互不相关,我们希望利用和得到)(n x )(n w )(n y )(n x )(n s图1利用公式(2-1),(2-2),(2-3),我们可以得到下面的自适应估计算法:(2-7) )()()(^^n x n h n s = (2-8) )())()()((2)()1(^^^n x n x n h n y n h n h -+=+μ其框图如图所示。

图2选择的初始值为,对式2-8取数学期望可得^)(n h ^)0(h (2-9) ))0(()21(])([^^h h R h n h E n--+=μ其中(2-10) ])()([R T n x n x E =因此,只要满足R10<<μ (2-11) 的条件,总归可以收敛于最佳值,从而也逐渐收敛于。

^)(n h h ^)(n s )(n s 自适应信号处理的一个重要应用是用来进行参数估计。

下面是利用LMS 算法实现AR 模型参数的估计。

如果信号为一个M 阶的AR 模型,即)(n y )()()2()1()(21n w M n y a n y a n y a n y M +--⋯-----= (2-12) 通过解Yule-Walker 方程可以得到AR 模型的参数估计,同样,利用LMS 算法,我们也可以对AR 模型的参数估计进行自适应估计,其算法如下:(2-13)∑=--=Mm m m n y n a n y 1^^)()()( (2-14) ^)()()(n y n y n e -= (2-15)M m m n y n e a n a m m ≤≤-∙-=+1)()(2)1(^^μ这种算法的实现框图如图2.3所示。

图3同样可以证明,只要步长μ值选择合适,当∞→n 时,上述自适应算法得到的)(^n a M =μ也收敛于AR 模型的参数。

m a ([h E 三、实验结果及分析1. 时8.0,1,03.02-==h w σ)]n 和)(n h 的比较:图4 自适应滤波器)]([n h E 和)(n h的比较图1是时100=L )]([n h E 和)(n h的比较,由图可以看出的均值刚开始一直在变化,然后逐渐趋于稳定,最后收敛于最佳值。

^)(n h2. 自适应滤波器的效果和)(n s )(n s的比较:图5 和)(n s )(n s的比较图2是时和100 L )(n s )(n s的比较比较,由于滤波器逐渐收敛于最佳值,所以随着L 的增大滤波效果越好。

3.利用实验一中的维纳滤波器估计的h 和估计的到的)(n s )(n s与2中的估计进行比较:图6 自适应滤波器和维纳滤波器的估计比较图3是利用卷积得到的100=L 时的)(n s 和有2中得到的)(n s进行比较,可得出自适应滤波算法大大改善了滤波性能。

4、的情况8.0,1,01.02-===h w σμ图701.0=μ时自适应滤波器的性能8.0,1,1.02-===h w σμ的情况图81.0=μ时自适应滤波器的性能8.0,1,12-===h w σμ的情况图91=μ时自适应滤波器的性能由图4-图6可知,当μ增大时,自适应滤波器的性能随之降低。

当1=μ时滤波器失配。

5、时:8.0,01.0,03.02-===h w σμ图10时自适应滤波器的性能8.0,01.0,03.02-===h w σμ由图7可知,其他条件不变的情况下,随着 μ的减小,收敛的更快,失调量越大。

)(n h 6. 自适应AR 模型:当时和的估计情况:1,01.0,8.0,3.1,100,2,2221===-====w a a L p M σμ1a 2a图11和的估计情况1a 2a7. 通过实验一解Yule-Walker 方程的方法解的和的估计值和通过自适应AR 模型得到的估计值的比较1a 2a图12 Yule-Walker 方程得到的估计值和自适应AR 模型得到的估计值的比较8、时自适应AR 的估计情况:01.0,01.0,8.0,3.1,100,2,2221===-====w a a L p M σμ图13时a1和a2的估值01.02=w σ图10是时的a1和a2的估计值,由图可以看出,虽然a1和a2的估计值都逐渐收敛,但是已经产生了很大的误差,收敛速度比时的情况慢,失调量也变大。

01.02=w σ12=w σ四、思考题1、s(n)和w(n)的方差越大,收敛速度越快,失调量也越大;在噪声方差越大时,随即起伏项越大,表现为权值振动也就越大,为了追求更快的收敛性,往往增大μ值,但μ值越大,就使得失调系数也就越大,在有限次起动迭代过程中,也就很难收敛到较稳态值,所以必须选择合适的μ值。

2、定义权矢量A=[]T ^^2^1)(,,)(),(n a n a n a m ⋯且X(n)=[X(n-1),X(n-2),⋯,X(n-m)] T 误差信号为:(3-1) An X n y n X A n y n y n y n e T T )()()()()()()(^-=-=-=误差平方和为(3-2) A n X n X A A n x n y n y n e T T T )()()()(2)()(22+-=上式两边去数学期望得均方误差为(3-3) A n X n X E A A n X n y E n y E n e E T T T )]()([)]()([2)]([)]([22+-=定义互相关函数行向量:XY T R (3-4) )]()([n X n y E R T XY T =和自相关函数矩阵(3-5) )]()([n X n X E R T XX =则均方误差(3-3)式可表示为(3-6) A R A A R n y E n e E XX T XY T +-=2)]([)]([22这说明均方误差是权系数向量A 的二次函数,它是一个中间向上凹的抛物形曲面,是具有唯一最小值的函数。

调节权系数使均方误差为最小,相当于沿抛物形曲面下降找最小值。

可以用梯度来求该最小值。

将(3-6)对权系数A 求导,得到均方误差函数的梯度AR R n a n e E n a n e E n e E n XX XY m 22)()]([,,)()]([)]([)(^2^122+-=⎥⎥⎦⎤⎢⎢⎣⎡∂∂⋯∂∂=∇=∇T (3-7) 令,即可求出最佳权系数向量0)(=∇n (3-8) XY XX opt R R A 1-=将A 带入(3-3)式得最小均方误差opt XY T A R n Y E n e E -=)]([)]([2min 2 (3-9) 根据最陡下降法,“下一时刻”权系数向量应该等于“现在时刻”权系数向量加上一个负均方误差梯度^)1(+n a m )n ^)(n a m (∇-的比例项,即 (3-10) )()()1(^^n n a n a m m ∇-=+μ式中,μ是一个控制收敛速度与稳定性的常数,称之为收敛因子。

一种的近似计算方法是:直接取作为均方误差的估计值,即 )(n ∇)(2n e )]([2n e E (3-11) )]([)(2)]([)(2^n e n e n e n ∇=∇=∇式中 )]([n e ∇为 (3-12) )()]()([)]([n X n X A n y n e T -=-∇=∇将式(3-12)带入式(3-11)得梯度估值)()(2)(^n X n e n -=∇于是Widrow-Hoff LMS 算法最终为 )()(2)()1(^^n X n e n a n a m m μ-=+其中X (n )相当于y(n)的时刻以前的输入,即y (n-m )故 )()(2)()1(^^m n y n e n a n a m m --=+μ五、程序源代码a )自适应滤波器:%% 数字信号处理: 自适应信号滤波器 (1)clear;clc;%% input parameterL=input('样本个数L= ');u=input('\n步长u= ');sigam=input('\n方差sigam=');h=input('\n一阶自适应滤波器的参数h=');h_=zeros(1,L);h_(1)=input('\n估计之前估计一阶自适应滤波器的参数h_='); %%xn=randn(1,L);wn=sigam*randn(1,L);sn=h*xn;yn=sn+wn;figure(1)stem(sn,'r')hold onstem(yn,'b')title('原信号(红色)和观测信号(蓝色)')R=mean(xn.*xn);% R=1/L*sum((xn).*(xn))sn_=zeros(1,L);% E_h_=zeros(1,L);for ii=1:Lsn_(ii)=h_(ii)*xn(ii);% E_h_(ii)=h+(h_(1)-h)*(1-2*u*R)^ii;h_(ii+1)=h_(ii)+2*u*(yn(ii)-h_(ii)*xn(ii))*xn(ii);endE_h_=h+(h_(1)-h)*(1-2*u*R).^(1:L);stem(E_h_,'r')hold onstem(h_(2:L+1),'b')title('自适应滤波器估计h期望(红色)和其估计值h(蓝色)')figure(3)stem(sn,'r')hold onstem(sn_,'b')title('原信号(红色)滤波后的信号(蓝色)')sn_n=conv(xn,h)figure(4)stem(sn_,'b')hold onstem(sn_n,'r')title('自适应滤波器得到的原信号(绿色)维纳滤波器得到的原信号(红色)')b)自适应AR模型:%% 数字信号处理:自适应滤波器(2)%%%%%close all;clear;clc;%% input parameterL=100;sigam=0.01;M=2;p=2;u=0.01;a1=-1.3;a2=0.8;a=zeros(M,L);% a1_=zeros(1,L);% a2_=zeros(1,L);wn=sqrt(sigam)*randn(1,L);A=[1,a1,a2];yn=filter(1,A,wn);% yn=zeros(1,L);% yn(1)=wn(1);% yn(2)=-a1*yn(1)+wn(2);% for kk=3:L% yn(kk)=-a1*yn(kk-1)-a2*yn(kk-2)+wn(kk);% endyn_=zeros(1,L);en=zeros(1,L);for n=1:Lfor m=1:Mif n-m>0yn_(n)=yn_(n)-a(m,n)*yn(n-m);%滤波器输出endenden(n)=yn(n)-yn_(n);%计算误差for m=1:Mif n-m>0a(m,n+1)=a(m,n)-2*u*en(n)*yn(n-m);%更新权值endendend%%%for in=1:L-1% if in==1% yn_(in)=-a1_(in)*0;% en(in)=yn(in)-yn_(in);% a1_(in+1)=a1_(in)-2*u*en(in)*0;% a2_(in+1)=0;% elseif in==2% yn_(in)=-a1_(in)*yn(in-1)-a2_(in)*0;% en(in)=yn(in)-yn_(in);% a1_(in+1)=a1_(in)-2*u*en(in)*yn(in-1);% a2_(in+1)=a2_(in)-2*u*en(in)*0;% else% yn_(in)=-a1_(in)*yn(in-1)-a2_(in)*yn(in-1); % en(in)=yn(in)-yn_(in);% a1_(in+1)=a1_(in)-2*u*en(in)*yn(in-1);% a2_(in+1)=a2_(in)-2*u*en(in)*yn(in-2); % end%endfigure(1)%stem(a1,'r')%hold onstem(a(1,1:L),'b')title('a1的值(red)及其迭代估计值(blue)') figure(2)%stem(a2,'r')%hold onstem(a(2,1:L),'b')title('a2的值(red)及其迭代估计值(blue)')%% 维纳滤波器Wn=randn(L,1);AA=[1,a1,a2];sn=filter(1,AA,Wn);r_ss = xcorr(sn,'unbiased');p=p+1;R_ss=zeros(p);for i=1:pR_ss(i,:)=r_ss(L-i+1:L+p-i);endI=zeros(1,p);for i=1:pif i==1I(i)=sigam;elseI(i)=0;endendA=inv(R_ss)*I';A1=[a(1,100),a(2,100)];figure(3),clfstem(A(2:p),'*r')hold onstem(A1,'*b')axis([-1 5 -2 2 ])title('自适应AR估计的a(红色)和Yule-Walker方程法估计的a(蓝色)')。

相关文档
最新文档