精华内容
下载资源
问答
  • 自适应滤波器原理源代码
  • 说明了RLS自适应滤波器原理及其matlab设计和仿真
  • 自适应滤波器原理》经典教材中的部分matlab源代码,欢迎下载哈。
  • 自适应滤波器设计及Matlab实现附程序代码 维纳自适应滤波器设计及 Matlab 实现摘 要本文从随机噪声的特性出发,分析了传统滤波和自适应滤波基本工作原理和性能,以及滤波技术的现状和发展前景。然后系统阐述了基本...

    41528d3028836879cd698677c3999917.gif自适应滤波器设计及Matlab实现附程序代码

    维纳自适应滤波器设计及 Matlab 实现摘 要本文从随机噪声的特性出发,分析了传统滤波和自适应滤波基本工作原理和性能,以及滤波技术的现状和发展前景。然后系统阐述了基本维纳滤波原理和自适应滤波器的基本结构模型,接着在此基础上结合最陡下降法引出 LMS 算法。在 MSE 准则下,设计了一个定长的自适应最小均方 横向滤波器,并通过MATLAB 编程实现。接着用图像复原来验证该滤波器的 性能,结果表明图像的质量在MSE 准则 下得到了明 显的改善。最后分析比 较了自适应LMS 滤波和频域维纳递归滤波之间的性能。本文还对 MATLAB里面的自适 应维纳滤波函数wiener2 进行了简单分 析。关键字:退化图像 维纳滤波 自适应滤波 最陡下降法 LMSAbstractThis paper analyses the basic work theory, perance of traditional filter and adaptive filter based on the property of random noise, and introduce the status quo and the foreground of filter technology. Then we explain basic theory of wiener filter and basic structure model of adaptive filter, and combine the of steepest descent to deduce the LMS. Afterward according to the MSE rule, we design a limited length transversal filter, and implement by MATLAB. And then we validate perance of adaptive LMS filter by restoring images, Test result show that the quality of the degrade images were improved under the rule of MSE. Finally, we compare the perance of adaptive LMS filter and iterative wiener filter.We also simply analyses the wiener2 () which is a adaptive filter in MATLAB.Keywords: degrade image;wiene r filter;adapt ive filter;ADF;LMS algorithm目录1 绪论…………………………………………………………………………………11. 1 引言…………………………………………………………………………11. 2 研究目标及现状……………………………………………………………11. 2 .1 图像复原技术的目标……………………………………………11. 2 .2 图像复原技术的研究现状………………………………………12 理论基础 …………………………………………………………………………32. 1 基本自适应滤波器的模块结构……………………………………………32. 2 基本维纳滤波原理…………………………………………………………43 自适应滤波原理及算法 ………………………………………………………63.1 横向滤波结构的最陡下降算法……………………………………………73.1.1 最陡下降算法的原理……………………………………………73.1.2 最陡下降算法稳定性……………………………………………103.2 LMS 滤波 原理及算法 ……………………………………………………113.2.1 从最陡下降算法导出 LMS 算法 ………………………………113.2.2 基本 LMS算法的实现 步骤 ……………………………………113.2.3 基本 LMS算法的实现 流程图 …………………………………123.2.4 LMS 算法 的 Matlab 实现 ………………………………………123.2.5 wiener2()的原理 ……………………………………………123.2.6 LMS 性能 分析——自适应收敛 性……………………………134 Matlab 实验结果 …………………………………………………………144.1.LMS 滤波 器的收敛性 ………………………………………………144.2.LMS 滤波 器和频域迭 代维纳滤波器的性能比较 ……………………165 总结………………………………………………………………………………18致谢 …………………………………………………………………………………19参考文献 ……………………………………………………………………………20附录 A ………………………………………………………………………………21附录 B ………………………………………………………………………………22附录 C ………………………………………………………………………………271 绪论1.1 引言人类传递信息的主要媒介是语言和图像。据统计,在人类接受的信息中,听觉信息占20%,视觉信息占60%,其它如味觉、触觉、嗅觉总的加起来不过占20%,所以图像信息是十分重要的信息 [1]。然而,在图像的获取和图像信号的传输过程中,图像信号中不可避免的混入各种各样的随机噪声,造成图像失真(图像退化) 。造成人类所获取的信息和实际是有偏差的,成为人类从外界获取准确信息的障碍。因此,对图像信号中的随机噪声的抑制处理是图像处理中非常重要的一项工作。在图像的获取和传输过程中所混入的噪声,主要来源于通信系统中的各种各样的噪声,根据通信原理及统计方面的知识,可以知道在通信系统中所遇到的信号和噪声,大多数均可视为平稳的随机过程 [15]。又有“高斯过程又称正态随机过程,它是一种普遍存在和重要的随机过程,在通信信道中的噪声,通常是一种高斯过程,故又称高斯噪声。因此,在大多数的情况下,我们可以把造成图像失真的噪声可视为广义平稳高斯过程。本文针对图像信号中混入的随机噪声,在怎样把现有的滤波算法应用到实际的图像复原中去的问题上提出了解决方法,并且应用 Matlab 软件编程对图像进行处理。1.2 研究目标及现状1.2.1 图像复原技术的目标为了从含有噪声的数据中提取我们所感兴趣的、接近规定质量的图像,我们需要设计一个系统满足:当信号与噪声同时输入时,在输出端能将信号尽可能精确地重现出来,而噪声却受到最大抑制,即最佳滤波器。1.2.2 图像复原技术的研究现状目前的图像复原技术,即去噪的滤波技术可以分为两大类:传统滤波和现代滤波。传统滤波技术是建立在已知有用信号和干扰噪声的统计特性(自相关函数或功率谱)的基础上的噪声去除;现代滤波技术则是不需要知道图像的先验知识,只是根据观测数据,即可对噪声进行有效滤除。早在

    展开全文
  • 自适应滤波器设计及Matlab实现.doc》由会员分享,可免费在线阅读全文,更多与《(终稿)自适应滤波器设计及Matlab实现.doc(OK版)》相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索。1、曼滤波是线性无偏...

    《自适应滤波器设计及Matlab实现.doc》由会员分享,可免费在线阅读全文,更多与《(终稿)自适应滤波器设计及Matlab实现.doc(OK版)》相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索。

    1、曼滤波是线性无偏最小方差滤波递推滤波,它能使滤波器工作在平稳的或非平稳的环境,得到最优解。利用卡尔曼滤波理论的递推求解法导出自适应滤波器更新权矢量得不

    2、此为依据自动调整自己的参数,以达到最佳滤波效果。现在广为应用的自适应滤波方法主要是基于以下几种基本理论,再融合递推算法导出来的:()基于维纳滤波理论的

    3、出来的:()基于维纳滤波理论的方法维纳滤波是在最小均方误差准则下通过求解维纳霍夫方程来解决线性最优滤波问题的。基于维纳滤波原理,我们利用相关的瞬时值通

    4、同bs一旦输入信号的统计特性发生变化,应滤波器时不需要事先知道关于输入信号和噪声的统计特性的知识,它能够在自己的工作过程中逐渐估计出所需的统计特性,并

    5、sWidrowB和Hoff于年提出的自适应滤波理论,可使在设计自适应滤波器时不需要事先知道关于输入信号和噪声的统计特性的知识,它能够在自己的工作过程中

    6、是逼近的算法,使得实际估计值和理论值之间必然存在差距,也就造成在实际的应用中,往往无法得到这些统计特性的先验知识,或者统计特性是随时间变化的,因此,这

    7、器性能重新达到最佳。自适应滤波器自动调节参数可以通过各种不同的递推算法来实现,由于它采用的是逼近的算法,使得实际估计值和理论值之间必然存在差距,也就造

    8、)的基础上的噪声去除;现代滤波技术部分内容简介:了自适应滤波问题没有唯一的解。bs自适应滤波器自动调节参数可以通过各种不同的递推算法来实现,由于它采用

    9、逐渐估计出所需的统计特性,并以此为依据自动调整自己的参数,以达到最佳滤波效果。一旦输入信号的统计特性发生变化,它又能够跟踪这种变化,自动调整参数,使滤

    10、在工作过程中的逐步调整参数逼近信号的统计特性,实现最优滤波。由此,我们得到一种最常用的算法最小均方算法,简称LMS算法。()基于卡尔曼滤波理论的方法卡

    11、了自适应滤波问题没有唯一的解。依照各种递推算法的特点,我们把它应用于不同的场合。现在广为应用的自适应滤波方法主要是基于以下几种基本理论,再融合递推算法

    12、法维则是不需要知道图像的先验知识,只是根据观测数据,即可对噪声进行有效滤除。nb传统滤波技术是建立在已知有用信号和干扰噪声的统计特性(自相关函数或功率

    展开全文
  • 书籍《自适应滤波器原理》-—Simon Haykin,以及书籍对应的答案和matlab代码
  • 本书是自适应信号处理领域的一本经典...内容包括:自适应LMS横向滤波器、自适应格型滤波器、自适应递归滤波器、频域和子带自适应滤波器、盲自适应滤波器、神经网络非线性自适应滤波器等及其在通信与信息系统中的应用。
  • 权威经典! 本资源是自适应信号处理...内容包括:自适应LMS横向滤波器、自适应格型滤波器、自适应递归滤波器、频域和子带自适应滤波器、盲自适应滤波器、神经网络非线性自适应滤波器等及其在通信与信息系统中的应用。
  • 自适应滤波器原理(中文第四版).pdf

    热门讨论 2011-09-28 21:18:00
    自适应滤波器原理(中文第四版).自适应 滤波器 维纳 卡尔曼
  • 内容包括:自适应LMS横向滤波器、自适应格型滤波器、自适应递归滤波器、频域和子带自适应滤波器、盲目适应滤波器、神经网络非线性自适应滤波器等及其在通信与信息系统中的应用。全书取材新颖、内容丰富、概念清析、...
  • 自适应滤波器的设计以及使用MATLAB仿真实现
  • 自适应滤波器设计及MATLAB实现,可以作为毕设论文的参考
  • 维纳自适应滤波器设计及 Matlab 实现 摘 要 本文从随机噪声的特性出发分析了传统滤波和自适应滤波基本工作原理和 性能以及滤波技术的现状和发展前景然后系统阐述了基本维纳滤波原理和自 适应滤波器的基本结构模型...
  • 维纳自适应滤波器设计及 Matlab实现 摘 要 本文从随机噪声的特性出发分析了传统滤波和自适应滤波基本工作原理和 性能以及滤波技术的现状和发展前景然后系统阐述了基本维纳滤波原理和自 适应滤波器的基本结构模型接着...
  • 简单描述自适应滤波的原理及在MATLAB中实现的方法,并辅以相关MATLAB代码供大家交流。
  • LMS自适应滤波器原理简述1;LMS自适应滤波器原理简述2;噪声对消器与线性预测器的对比;=0.001;源程序 clear all; clc; delta = 1/1000; t = 0:delta:10; t = t; % 转换成列向量 s = sin(2*pi*t; sigma_n0 =1; n0 = ...
  • 基于Matlab自适应滤波器设计第30卷 第1期2008年2月武汉理工大学学报 信息与管理工程版JOURNALOFWUT(INFORMATION&MANAGEMENTENGINEERING)Vo.l30No.1Feb.2008文章编号:1007-144X(2008)01-0070-04基于Matlab的...

    基于Matlab的自适应滤波器设计

    第30卷 第1期2008年2月

    武汉理工大学学报 信息与管理工程版

    1-323-png_6_1_0_381_933_319_113_743.265_1222.725-912-0-0-912.jpg

    JOURNALOFWUT(INFORMATION&MANAGEMENTENGINEERING)

    Vo.l30No.1

    Feb.2008

    文章编号:1007-144X(2008)01-0070-04

    基于Matlab的自适应滤波器设计

    贺 宽,黄 涛

    (武汉理工大学信息工程学院,湖北武汉430070)

    摘 要:滤波器在电子设备中已得到广泛的应用,而自适应滤波器可以不必事先给定信号及噪声的自相关函数,它可以利用前一时刻已获得的滤波器参数自动地调节现时刻的滤波器参数,从而实现最优滤波。介绍了自适应滤波器原理,并对LMS自适应算法进行了分析,最后用Matlab对自适应低通滤波器进行了仿真和实现,并分析了该自适应滤波器的性能。

    关键词:自适应滤波器;LMS算法;Simulink;ANC中图法分类号:TP273.2 文献标志码:A

    自适应滤波器在信号检测、信号恢复和数字通信等许多领域中被广泛应用,一直是学术界的重要研究课题。近年来,微电子技术和超大规模集成(VLSI)电路技术的飞速发展又促进了自适应滤波技术的进步。自适应滤波技术正是由于具有对干扰频率不敏感,且其权值调整是基于对系统参数的优化等特点,而越来越多地受到人们的关注。

    2 自适应滤波器原理

    自适应滤波器由参数可调的数字滤波器和自适应算法两部分组成(如图1所示)。参数可调数字滤波器可以是FIR数字滤波器或IIR数字滤波器,也可以是格型数字滤波器。输入信号x(n)通过参数可调数字滤波器后产生输出信号(或响应)y(n),将其与参考信号(或称期望响应)d(n)进行比较,形成误差信号e(n)。e(n)(有时还要利用x(n))通过某种自适应算法对滤波器参数进行调整,最终使e(n)的均方值最小。因此,自适应滤波器实际上是一种能够自动调整本身参数的特殊维纳滤波器。在设计时不需要事先知道关于输入信号和噪声的统计特性的知识,它能够在自己的工作过程中逐渐了解,或估计出所需的统计特性,并以此为依据自动调整自己的参数,以达到最佳滤波效果。一旦输入信号的统计特性发生变化,它又能够跟踪这种变化,自动调整参数,使滤波器性能重新达到最佳

    [2]

    1 自适应滤波器研究现状

    传统的自适应滤波器主要在时域中实现,采用抽头延迟线(tappeddelayline)结构及WID ROW-HOFF自适应LMS算法。这种方法算法

    简单,稳健性也比较好,因而被广泛应用。但是滤波器的阶数可能会很高,步长系数可能会很小,收敛性能不理想,对输入信号的自相关矩阵有很强的依赖性,因而不具有高自适应率。当输入信号的自相关矩阵的特征值分布发散度很大时,算法的收敛速度很慢,跟踪性能不好。

    许多学者对LMS算法进行了研究,对传统LMS算法提出了许多有效的改进措施,如采用变步长LMS算法、变换域LMS算法,以及QR分解LMS算法等,有效地克服了其性能局限性。为了比较直观地观察和分析各种LMS算法的收敛性能,借助Matlab强大的工程计算和绘图功能,通过Matlab语言编译.m文件来实现各种算法的LMS滤波器,用计算机仿真,对输入信号做相应的处理,并分析仿真结果

    [1]

    图1 自适应滤波器的一般结构图

    收稿日期:2007-09-04.

    作者简介:贺 宽(1982-),男,湖北武汉人,武汉理工大学信息工程学院硕士研究生.

    展开全文
  • 清晰地描述了维纳滤波的原理以及实现,最后给出了MATLAB的实现代码以及测试结果
  • 学习FIR自适应滤波器原理;学习MATLAB中的Simulink及Xilinx的System Generator;用FPGA实现自适应滤波器;对不同输入情况,学习自适应滤波器的各种应用。
  • 滤波是滤除信号中某些特定频率的波形的技术,在数字...本文研究了最小均方差(LMS)算法,并结合自适应滤波器的结构和原理,设计出FIR结构自适应滤波器。最后给出MATLAB仿真结果,并利用DSP验证自适应滤波器的性能。
  • 摘 要: 滤波是滤除信号中某些特定频率的波形的技术,在数字信号处理中,主要用于滤除噪声和干扰信号。由于噪声和干扰信号的不确定性...本文研究了最小均方差(LMS)算法,并结合自适应滤波器的结构和原理,设计出FIR...

    摘  要: 滤波是滤除信号中某些特定频率的波形的技术,在数字信号处理中,主要用于滤除噪声和干扰信号。由于噪声和干扰信号的不确定性,采用固定滤波系数的数字滤波器无法达到最佳的效果。自适应滤波器能够随着环境的改变而改动滤波器自身的参数和结构,从而能够随着噪声和干扰信号的不断变化修正滤波器的参数和结构,最终实现较理想的滤波。本文研究了最小均方差(LMS)算法,并结合自适应滤波器的结构和原理,设计出FIR结构自适应滤波器。最后给出MATLAB仿真结果,并利用DSP验证自适应滤波器的性能。

    关键词: 自适应滤波器;MATLAB;LMS算法;FIR滤波器;DSP

    0 引言

    滤波即滤除信号中的噪声和干扰信号,提取有用信号的技术。滤波技术广泛应用于信号处理和信号分析中。在信号的获取和传输过程中出现的噪声,以及信号处理过程中的干扰信号都需要通过滤波技术滤除,来保证信号的安全性和可靠性。例如,实现雷达跟踪功能需要获取大量的船舶方位数据,在获取数据的过程中,会产生大量的随机干扰和测量误差。因此,为了准确地获取船舶瞬时的位置、加速度和速度等,需要利用滤波,将误差和随机干扰滤除,滤波技术在雷达跟踪功能实现中起到非常重要的作用。滤波器是一种允许特定频率信号通过的选频装置,通过这种装置获取有用的信号,滤除杂波。从最初的维纳滤波到后来的卡尔曼滤波,滤波器的实现有了很大的发展,随着技术的进步和社会的发展,需要处理的信号越来越复杂,要求实现的精度越来越高,同时对滤波器的要求也越来越高,其应用范围进一步得到拓展。随着滤波器的应用环境不断复杂化,对非线性的滤波技术研究得到进一步的发展。因此,自适应滤波器重新得到国内外研究者关注。自适应滤波器具有自我修正和跟踪的特点,主要适用于随机性噪声和干扰滤除。本文在自适应滤波器的原理和算法的基础上,利用MATLAB和DSP软件仿真环境设计实现自适应滤波的最优滤波。

    1 自适应滤波器原理与结构

    1.1 自适应滤波原理

    自适应滤波即滤波器的参数可以自我调节,可以利用前一时刻的结果作为当前时刻滤波器的参数改变的依据,由此可以适应具有随机噪声和随时间变化的干扰信号的应用环境。就像生物能以各种有效的方式适应生存环境一样。自适应滤波器是一种具有反馈作用的闭环设置,它是一种特殊形式的维纳滤波器,可以通过反馈信息调节自身参数达到最优滤波。自适应滤波器没有复杂计算,实时性强,不需要已知输入信号,也可以对信号进行有效滤波。因此对于无法预知的信号固定滤波系数的传统滤波器无法滤除的杂波和噪声,自适应滤波器可以简单快速地输出理想期望信号。利用数字滤波器对噪声和干扰的最佳估计将输入信号中混有的干扰滤除,将目标信号与噪声和干扰信号有效地分离。随着自适应滤波技术的发展,其在电信、雷达、声呐、实时控制以及图像处理等领域都有广泛应用。

    1.2 自适应滤波器的结构

    cb3becdcbc1b6cf56b23d182157407d3.png

    自适应滤波器主要由数字滤波器和自适应算法两部分构成[1],其中,数字滤波器的系数可以调节,而自适应算法的作用就是调节和修正自适应滤波器的系数。如图1所示。图中自适应滤波器有x(n)和z(n)两个输入端,其中z(n)是包含目标信号s(n)和噪声d(n)的输入信号,s(n)和d(n)是不相关的两个信号,x(n)是与噪声d(n)有某种联系的z(n)的一种度量信号。y(n)可以通过数字信号滤波器得到,然后可以通过公式e(n)=z(n)-y(n)=s(n)+d(n)-y(n)得到误差信号e(n)。通过e(n)得到s(n)的最佳估计信号,而自适应滤波器的基本原理就是利用系数可调的数字滤波器将杂波和噪声从信号中滤除。

    由图1自适应滤波器结构可知,基于滤波系数可调的要求,对于数字滤波器的选择包括有限长冲激响应滤波器(FIR)和无限长冲激响应滤波器(IIR)两种数字滤波器可选择。FIR型滤波器优势明显,它的系统更稳定,可以利用它实现多通带滤波器,同时它更容易实现线性相位[2]。IIR滤波器可以用更低的阶数实现与FIR相同的阻带衰减效果,但鉴于FIR易实现严格的线性相位、稳定性和任意的幅频特性等优点,另外FIR还有便于用DSP实现的优势,可以用节省存储空间的立即数乘加完成编程,因此本文的设计中自适应数字滤波器部分采用FIR滤波器横向结构。图2所示为FIR横向滤波器结构图。

    a287afd05c6e5a67190f17d541dc2ba7.png

    2 自适应滤波算法

    2.1 LMS自适应滤波算法

    Widrow和Hoff提出的最小均方差(LMS)算法在实践中被广泛应用,其具有计算量小和易于实现的特点[3]。自适应算法通常由三大重要的技术指标来衡量其优劣:时变系统随参数变化导致系统特性变化的检测能力、输出信号收敛到期望信号的速度以及对系统稳定性的调节能力。自适应滤波器实现功能的关键是寻找出均方误差最小时滤波器权系数Wi的值,整个过程中利用ε和各x(n)的值,再根据上述的条件,通过算法找出Wi的值,实现自动调节Wi值的滤波器。所有的滤波器系数调整算法都是设法使输出y(n)和目标信号d(n)之差 e(n)的均方值最小化,并且根据这个判据来修改权系数。均方误差ε表示为:

    5356006eca5dd037bb64efeac9d7eca1.png

    其中:R=E[X(n)XT(n)]为N×N的自相关矩阵,它是输入信号采样值间的相关性矩阵。P=E[d(n)X(n)]为N×1互相关矢量,代表理想信号d(n)与输入矢量的相关性。

    c26f18c04b400b3b14df87140efb7b7a.png

    由式(4)可知,自适应滤波器的权系数与滤波器的抽头系数相关联,可以根据已知的矩阵R和矢量P以及抽头系数的二次函数方程式求得W的解。根据二次函数曲线具有唯一最小函数值的性质,可以得出滤波器输出误差函数具有最小值即滤波得到最优效果,在数学上可以利用梯度法求得此最小值,为了简单起见,设W是一维的,则E[e2(n)]与W的关系成为一个抛物线。如图3中在W*点获得最小均方误差。根据递推关系式,利用梯度矢量法计算出抛物曲面的最低点。而自适应的过程就是在梯度矢量的负方向上逐渐校正滤波器系数,调节加权系数W使均方误差最小,相当于沿超抛物形曲面下降到最小值,获得最佳滤波或准最优工作状态。

    实际上,自适应滤波与维纳滤波最主要的差别就是自适应滤波增加了一个可以识别控制滤波器系数的部分,可以根据期望输出信号与滤波器实际输出信号的比较,用误差函数值去控制和调整滤波器系数直至误差达到最小值。也正因如此,找到一个能求得加权系数,直至W=W*,E[e2(n)]=min的递推式是LMS算法的核心。

    2.2 RLS自适应滤波算法

    另外一种区别于LMS算法的具有较快收敛速度的自适应算法即RLS,但是它存在实时性差的缺点,限制了其应用。RLS自适应滤波器的最佳滤波权系数需要用输入信号自相关矩阵的逆来求得[4]。针对RLS算法计算复杂、实时性差但收敛于期望信号的速度比较快的特性,只要加以改进就能使其得到很好的应用,因此人们提出了改进的RLS算法,即变换域自适应滤波算法。

    2.3 变换域自适应滤波算法

    对于某些强相关的信号或难以滤除的信号,利用变换域的思想可以将目标信号轻松地分离出来,变换域可以轻松解决时域疑难问题,频域变换、小波变换都属于变换域。1979年Dentino首次将变换域的思想应用在自适应滤波上,对变换域自适应滤波算法做了全面的总结和解释。变换域自适应滤波算法就通过正交变换把时域信号转变为频域或小波域等信号,用归一化的能量平方根来表示变换后的信号,然后结合自适应算法进行滤波。随着技术的不断发展,变换域自适应滤波算法不断得到推广。由于LMS算法是依赖于输入信号求其收敛性,所以针对强相关的信号,LMS自适应滤波的效果大大降低[5]。基于对以上三种自适应算法的研究,本文主要针对LMS自适应算法对其进行MATLAB与DSP设计与实现。

    3 自适应滤波器的仿真实现

    3.1 FIR滤波算法MATLAB仿真实现

    MATLAB能方便地以书写计算公式的思维方式对所要实现的功能编程,具有强大的语言功能,在数字信号处理方面具有很大的优势。另外,MATLAB具有很多封装完整的可供用户使用的开源数据和工具箱,如系统辨识工具箱、神经网络工具箱、信号处理工具箱、模糊推理系统工具箱等。图形、数学、编程还可以通过Simulink模块来实现,可将自己建好的模型打包成块,以后便可以直接调用,非常方便。它还提供了与Windows编程相结合的矩阵运算、图形绘制、数据处理和图形处理等工具,在自动控制、图像信号处理、雷达工程、信号分析、优化设计等领域得到了广泛应用[6]。

    自适应LMS算法可以用MATLAB方便地实现。自适应LMS算法的原理是利用最陡下降法以及时间n=0的滤波系数矢量和任意的起始值W(0)通过迭代公式更新滤波器权系数W(n),其具体方法如下:

    (1)求得误差信号e(n):e(n)=d(n)-x(n),其中  d(n)为滤波器期望输出信号,x(n)为滤波器输入信号。

    (2)求滤波器系数。利用如下递推公式更新矢量值:

    w(n)=w(n-1)+2*e(n)*x(n)

    其中

    055961c10b8350363d88179a472109a0.png为收敛因子。

    (3)从时间参数n=0开始递增加1,求误差信号,重复上述计算直到求得最小均方误差实现最优滤波为止。

    LMS的核心算法如下:

    function[yn,W,en]=LMS(xn,dn,M,mu,itr)

    en=zeros(itr,1);

    W=zeros(M,itr);

    for k=M:itr

    x=xn(k:-1:k-M+1);

    y=W(:,k-1).′*x;

    en(k)=dn(k)-y;

    W(:,k)=W(:,k-1)+2*mu*en(k)*xn(k);

    end

    yn=inf*ones(size(xn));

    for k=M:length(xn)

    x=xn(k:-1:k-M+1);

    yn(k)=W(:,end).′*x;

    end

    通过实验产生输入信号x(n),期望信号为d(n),两者相减得到误差信号e(n),然后通过调用LMS算法从宽甸信号中提取单频信号,实验结果如图4、图5所示,进一步调整收敛因子,观察结果变化发现,收敛因子越大,滤波器的抽头数越多,期望信号能以更快的速度收敛到输出信号,同时也存在稳态误差越大的风险,所以应选用合适的收敛因子和滤波器阶数,在收敛速度和误差稳态范围上得到权衡。

    a91b531dd9e4b0c890f3c4e0432fc364.png

    037157f19bbe69f87479d3681a4c4d63.png

    3.2 自适应滤波器DSP设计实现

    通过MATLAB的仿真实验,LMS自适应滤波器的滤波特性得到验证,接下来用TMS320C6713设计实现LMS自适应滤波器。本文设计实现的是应用LMS算法的FIR型自适应滤波器[7]。其自适应滤波器的程序流程图如图6所示。

    1deeeecca53acee485675fb650509698.png

    由图6自适应滤波器设计流程图可知,其设计过程主要包括三个步骤:

    第一步:程序初始化

    为输入信号x(n)、滤波输出信号y(n)、误差信号  e(n)分配存储区,同时为输入信号的长度(num)、滤波器阶数(coeff)设置初值,本文设置为num=1 024,coeff=16。收敛因子fU=0.000 5。

    第二步:调用信号输入子程序产生输入信号x(n),输出信号y(n),误差信号e(n)。

    其程序如下:

    for(i=0;i

    {

    x[i]=256*sin(i*2*PI/34);//初始化输入信号

    y[i]=z[i]=0;//初始化输出信号误差信号

    }

    第三步:调用LMS算法

    dda9caa2ba158daa6122f30f95d78abb.png

    主程序运行时不断调用LMS算法子程序,来计算滤波信号输出,检测信号是否完成滤波,如未完成重复第三步工作[8]。其LMS算法子程序流程图如图7。LMS算法子程序为int FIRLMS(int*nx,float*nh,int nError,int nCoeffNum)。在CCS环境下用C语言编写程序,通过编译、链接后生成公共目标代码,选择View/Graph/Time/Frequency,进入Graph Prorerty Dialog对话框,设置合适的图形显示参数,在显示窗口显示自适应滤波器DSP仿真结果,如图8、图9、图10所示。

    2a6acbd487721a8a558b37d19afc62ce.png

    LMS核心算法子程序如下:

    int FIRLMS(int*nx,float*nh,int nError,int nCoeffNum)

    {

    int i,r;

    float fWork;

    r=0;

    for(i=0;i

    {

    fWork=nx[i]*nError*fU;

    //h(n+1)=h(n)+2u*e(n)*x(n)

    nh[i]+=fWork;

    r+=(nx[i-i]*nh[i]);

    }

    r/=128;

    return r;}

    通过观察输出波形与输入波形,可以看出输出波形一开始与输入波形相差较大,但通过自适应滤波器不断调节加权系数w(n),使输出波形逐渐符合输出要求。由此也可验证此自适应滤波器LMS算法的有效性,其能够很好地滤除数字信号中的噪声,较好地还原了数字信号的信息,在数字信号处理领域有很好的应用价值。

    4 结束语

    本文对自适应滤波器的原理和结构图进行了分析,利用先进的MATLAB仿真技术进行仿真最后进行DSP的设计实现。仿真结果充分表明,自适应滤波器可以根据噪声信号的频率进行跟踪并以此来很好地滤除信号中的噪声。并且,在噪声和信号特性不断随时间变化的同时,自适应滤波器可以利用自适应算法不断调整和修正冲激响应函数系数,能很好地适应输入环境的变化。这充分突出了自适应滤波器的优势,使其具有更广泛的应用领域和广阔的发展前景,例如通信信道的自适应均衡、心电图的电源干扰消除、系统模型识别和雷达波束形成等领域。基于不同的自适应算法以及不同的数字滤波器结构可构成不同结构的自适应滤波器,本文重点研究了基于LMS算法的FIR型自适应滤波器。本文还有待于进一步研究和改进,以提高自适应滤波器的精度和收敛速度。

    参考文献

    [1] 贡镇.基于DSP的自适应滤波器的设计与实现[J].现代电子技术,2013(17):62-64.

    [2] 李茂清,王洁,陈强,等.基于MATLAB程序的FIR滤波器设计实现[J].电力学报,2008(2):87-90.

    [3] 张玲玲,唐晓英,刘伟峰.一种新的变步长LMS自适应滤波算法性能分析[J].生命科学仪器,2005(5):39-41.

    [4] 郭华.自适应滤波算法及应用研究[D].西安:西北师范大学,2007.

    [5] 蒋薇薇,杨萍,王昱洁.基于变步长LMS算法的自适应滤波器研究[J].仪器仪表学报,2010,31(8):478-480.

    [6] 刘光普,高玉春.MATLAB在通信原理教学中的应用[J].数据采集与处理,2012(S1):39-42.

    [7] 莫晶.基于自适应噪声抵消系统的不同滤波算法研究[D].昆明:云南师范大学,2014.

    [8] 许国威,马胜前,危淑平.自适应滤波RLS算法研究与DSP实现[J].计算机技术与发展,2010(10):35-38.

    展开全文
  • 本文从自适应滤波器研究的意义入手,介绍了自适应滤波器的基本理论思想,具体阐述了自适应滤波器的基本原理、算法及设计方法。自适应滤波器的算法是整个系统的核心。本文中,对两种最基本的自适应算法,即最小均方...
  • 自适应滤波器Matlab实现 直接上代码吧,原理一大堆,自行了解即可!这是LMS即自适应滤波器Matlab代码。 function [yn,W,en]=LMS(xt,dn,M,mu) itr = length(xt); en = zeros(itr,1); % 误差序列,en(k)表示第k次...
  • LMS算法应用到自适应滤波器。(MATLAB仿真!)  LMS算法的基本思想是通过调整滤波器自身参数,使滤波器的输出信号与期望信号之间的均方差最小,这样通过系统得到的输出信号即为最佳估计信号。一般...
  • 研究了自适应滤波器原理,公式推导及实现方法,结合LMS自适应滤波器的应用给出了matlab仿真结果及代码!
  • 自适应滤波器是在不知道输入过程的统计特性时,或是输入过程的统计特性发生变化时,能够自动调整自己的参数,以满足某种最佳准则要求的滤波器。所谓自适应滤波,就是利用前一时刻己获得的滤波器参数等结果,自动的...
  • 本文介绍了自适应滤波器的工作原理,以及推导了著名的LMS(Least mean squares)算法。以一个例子演示了自适应滤波器的滤波效果。实验结果表明,该滤波器滤波效果较好。
  • 文章主要阐述了自适应滤波器的基本结构和原理,介绍了利用最小均方误差算法-LMS算法,完成了应用MATLAB辅助DSP对自适应滤波器的设计,并实现了对信号进行初步的降噪处理。
  • 维纳自适应滤波器设计及Matlab实现摘 要本文从随机噪声的特性出发,分析了传统滤波和自适应滤波基本工作原理和性能,以及滤波技术的现状和发展前景。然后系统阐述了基本维纳滤波原理自适应滤波器的基本结构模型,...
  • 自适应滤波器设计及Matlab实现.doc》由会员分享,可免费在线阅读全文,更多与《(终稿)自适应滤波器设计及Matlab实现.doc(最终版)》相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索。1、图像复原技术,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,224
精华内容 489
关键字:

自适应滤波器原理matlab

matlab 订阅