自适应滤波器设计及Matlab实现
简单描述自适应滤波的原理及在MATLAB中实现的方法,并辅以相关MATLAB代码供大家交流。1绪论11引言人类传递信息的主要媒介是语言和图像。据统计,在人类接受的信息中,听觉信息占20%,视觉信息占60%,其它如味觉、触觉、嗅觉总的加起来不过占20%,所以图像信息是十分重要的信息。然而,在图像的获取和图像信号的传输过程中,图像信号中不可避免的混入各种各样的随机噪声,造成图像失真(图像退化)。造成人类所获取的信息和实际是有偏差的,成为人类从外界获取准确信息的障碍。因此,对图像信号中的随杋噪声的抑制处理是图像处理中非常重要的一项工作在图像的获取和传输过程中所混入的噪声,主要来源于通信系统中的各种各样的噪声,根据通信原理及统计方面的知识,可以知道在通信系统中所遇到的信号和噪声,大多数均可视为平稳的随机过稈。又有“高斯过程又称正态随机过程,它是一种普遍存在和重要的随机过程,在通信信道中的噪声,通常是一种高斯过程,故又称高斯噪声。囚此,在大多薮的情况下,我们可以把造成图像失真的噪声可视为广义平稳高斯过程本文针对图像信号中混入的随机噪声,在怎样把现有的滤波算法应用到实际的图像复原中去的问题上提出了解决方法,并且应用 Matlab软件编程对图像进行处理。1.2研究目标及现状121图像复原技术的目标为了从含有噪声的数据中提取我们所感兴趣的、接近规定质量的图像,我们需要设计个系统满足:当信号与噪声同时输入吋,在输出端能将信号尽可能精确地重现出来,而噪声却受到最大抑制,即最佳滤波器。122图像复原抆术的研究现状日前的图像复原技术,即去噪的滤波技术可以分为两大类:传统滤波和现代滤波。传统滤波技术是建立在已知有用信号和干扰噪声的统计特性(自相关函数或功率谱)基础上的噪声去除;现代滤波技术则是不需要知道图像的先验知识,只是根据观测数据,即可对噪声进行有效滤除。早在20世纪40年代,就对平稳随机信号建立了维纳滤波理论。根据有用信号和干扰噪声的统计特性(自相关函数或功率谱),以线性最小均方误差(MSE)估计准则所设计的最佳滤波器,称为维纳滤波器。这种滤汲器能最大程度的滤除干扰噪声,提取有用信号。但是,当输入信号的统计特性偏离设计条件,则它就不再是最佳的了,这在实际应用中受到了限制。到60年代初,由于空间技术的发展,出现了卡尔曼滤波理论,即利用状态变量模型对非平稳、多输入多输出随机序列作最优估计。卡尔曼滤波器既可以对平稳的和平稳的随机信号作线性最佳滤波,也可以作为非线性滤波[2]。然而只有在对信号和噪声的统计特性已知的情况下,这两种滤波器才能获得最优解。在实际的应用中,往往无法得到这些统计特性的完验知识,或者统计特性是随时间变化的,因此,这两种滤波器就实现不了真正的最佳滤波。Widrow B.和Hof于1967年提出的自适应滤波理论,可使在设计自适应滤波器时不需要事先知道关于输入信号和噪声的统计特性的知识,它能够在自己的工作过程中逐渐估计出所需的统计特性,并以此为依据自动调整自己的参数,以达到最佳滤波效果。一旦输入信号的统计特性发生变化,它又能够跟踪这种变化,自动调整参数,使滤波器性能重新达到最佳。自适应滤波器自动调节参数可以通过各和不同的递推算法来实现,由于它采用的是逼近的算法,使得实际估计值和理论值之间必然存在差距,也就造成了自适应滤波问题没有唯一的解。依照各种递推算法的特点,我们把它应用于不同的场合。现在广为应用的自适应滤波方法主要是基于以下几种基本理论,再融合递推算法导出来的:(1)基于维纳滤波理论的方法维纳滤波是在最小均方误差准则下通过求解维纳霍夫方程来解决线性最优滤波问题的。基于维纳滤波原理,我们利用相关的瞬时值通过在工作过程中的逐步调整参数逼近信号的统计特性,实现最优滤波。由此,我们得到一种最常用的算法—最小均方算法,简称LMS算法。(2)基于卡尔曼滤波理论的方法卡尔曼滤波是线性无偏最小方差滤波递推滤波,它能使滤波器工作在平稳的或非平稳的环境,得到最优解。利用卡尔曼滤波理论的递推求解法导出自适应滤波器更新权矢量得不同递推算法。比LMS算法有极快的收敛速率,可是计算复杂度也增大∫,它需要计算卡尔曼矩阵。(3)基于最小二乘准则的方法维纳滤波和卡尔曼滤波推导的算法是基于统计概念的,而最小二乘佔计算法是以最小误差平方和为优化目标的。根据滤波器的实现结构,有以下3种不同的最小二乘自适应滤波算法:自适应递归最小二乘法(RLS),自适应最小二乘格型算法,QR分解最小二乘算法。(4)基于神经网络理论的方法神经网络是有大量的神经元相互连接而成的网络系统,实质上它是一个高度非线性的动力学网络系统,这个系统具有很强的自适应、自学习、自组织能力,以及巨量并行性、容错性和坚韧性,因而,它可以做很多传统的信号和信息处理技术所不能做的事情。因其超强的自动调节能力,使符它在自适应信号处理方面有着广阔的前景[2]在一系列的自适应算法中,虽然基于后面3种基本理论的方法在收敛速率和稳定、坚韧性方面有着更好的性能,但是,基于维纳滤波理论的IMS算法因其算法简单,而且能达到满意的性能,得到了青睐,成为了应用最广泛的自适应算法。为此,本文主要研究LMS自适应滤波器在图像去噪方面的应用。2理论基础21基本自适应滤波器的模块结构自适应滤波器通常由两部分构成,其一是滤波子系统,根据它所要处理的功能而往往有同的结构形式。另一是自适应算法部分,用来调整滤波子系统结构的参数,或滤波系数。在自适应调整滤波系数的过程中,有不同的准则和算法算法是指调整自适应滤波系数的步骤,以达到在所描述的准则下的误差最小化。自适应滤波器含有两个过程,即自适应过程和滤波过程。前一过程的基本目标是词节滤波系数"(),使得有意义的目标函数或代价函数()最小化,滤波器输出信号y()逐步逼近所期望的参考信号4k),由两者之间的误差信号(k)驱动某种算法对滤波系数进行调整,使得滤波器处于最佳工作状态以实现滤波过程。所以自适应过程是一个闭合的反馈环,算法决定了这个闭合环路的自适应过程所需要的时间。但是,由于目标函数)是输入信号(k),参考信号(k)及输出信号y(k)的函数,即20=ack,.y,因此目标函数必须具有以下两个性质(1)非负性g (=8[x(k), d(k), y(k] 20Vx(), u(k), y(k)(2.1)(2)最佳性E()=E[x(k),d(k),y(k)]=0(22在自适应过程中,自适应算法逐步使目标函数(最小化,最终使()逼近于(),滤波参数或权系数()收敛于",这里"是自适应滤波系数的最优解即维纳解。因此,自适应过程也是自适应滤波器的最佳线性估计的过程,既要估计滤波器能实现期望信号()的整个过程,又要估计滤波权系数以进行有利于主要目标方向的调整。这些估计过程是以连续的时变形式进行的,这就是自适应滤波器需要有的自适应收敛过程。如何缩短自适应收敛过程所需要的收敛时间,这个与算法和结构有关的问题时人们一直重视研究的问题之—[2]。当然滤波子系统在整个自适应滤波器的设计中也占有很重要的地位,因为它对最终的滤波性能有很大的影响。本文要研究的是基于维纳滤波原理的LMS算法,那么下面我们需要介绍一下基本维纳滤波原理。22基本维纳滤波原理基本维纳滤波就是用来解决从噪声中提取信号问题的一种过滤(或滤波)方法。它基于平稳随机过程模型,且假设退化模型为线性空间不变系统的。实际上这种线性滤波间题,可以看成是种估计问题或种线性佔计问题。基本的维纳滤波是根据全部过去的和当前的观察数据来估计信号的当前值,它的解是以均方误差最小条件下所得到的系统的传递函数万(3)或单位样本响应h(k)的形式给出的,因此更常称这种系统为最住线性过滤器或滤波器。设计维纳滤波器的过程就是寻求在最小均方误差下滤波器的单位样本响应h(k)或传递函数h(x)的表达式,其实质是解维纳-霍大( Wiener-Hopf方程。基木维纳滤波器是这样的,有两个信号x(k)和y(k)同时加在滤波器上。典型地y(k)包含一个与x(k)相关地分量和另一个与x(k)个相关地分量。维纳滤波器则产生y(k)中与x(k)相关分量地最优估计,再从y(k)中减去它就得到ε(k)。y(kak)输出rk)维纳德波n=∑v(D)x(k-)f=0图21基本维纳滤被模型假定一个N个系数(权值)的FR滤波器的结构,维纳滤波和原始信号y(k)之间的差信号c(k)为ek= yk-nk=ye∑w(i)x(23)其中和w分别为输入信号矢量和权矢量,由下式确定(24)k-N-1)H(N-1)误差平方为2Y, x,w+w x.x,w对(3)式两边取期望得到均方误差(MSE),若输入x(k)与输出yk)是联合平稳的,则ELel=Ely,-2ELYXiwItElwx, x, w2.62P其中E[代表期望,=Ex是(k)的方差,P=E[yx1是长度为N地互相关矢量,R=Exx是NxN的自相矩阵。一个MSE滤波系数的图形是碗形地,且只有唯一地底部,这个图称为性能曲面,它是非负的。性能曲面地梯度可由下式给出2P+2R(2.7)Ytrim图22误差性能曲面每组系数w(i)(i=1,2,N-1)对应曲面是一点,在由面是地最小点梯度为0滤波权矢量达到最优”呷R P(28)即著名的维纳霍夫方稈的解。自适应滤波地仟条是采用合适的算法来调节滤波权重W,0)W,1),…W,N-1),从而找到性能曲面地最优点维纳滤波的实际用途有限,因为:(1)它需要已知自相关矩阵R和可相关矢量P,这两个量通常是未知的。(2)它包含∫矩阵的求逆,非常的耗时3)若信号为非平稳的,则R和P是时变的,导致必需重复计算。对于实际的应用需要一种能够依次加入地抽样点而得到"的算法。自适应算法就就是用于达到这个目的,而且不需显式计算R和P或进行矩阵求逆[3]3自适应滤波原理及算法在实际应用中常常会遇到这样的情况:随机信号的统计特性是未知的,或者信号的统计特性是缓慢的变化着的(非≯稳信号),这就促使人们去研究一类特殊的滤波器,这类滤波器具有以下特点:当输入过程的统计特性未知时,或者输入过程的统计特性变化时,能够相应的调整自身的参数,以满足某种准则的要求,由于这类滤波器能变动自身的参数以“适应”输入过程统计特性的估计或变化,因此,就把这类滤波器称为自适应滤波器41。在本文中我们研究的是退化图像复原的问题,由于图像自身的多样性和所混入的噪声的随机性和多样性,我们选择自适应滤波取出图像中混入的噪声。3.1横向滤波结构的最陡下降算法3.11最陡下降算法的原理首先考虑如下图所示的横向FIR自适应滤波器x(k-1k-2)x、-M+2)xR-M+l)e自适应控制算法1图31自适应横向滤波器结构它的输入序列以向量的形式记为X(k)=[x(k)x(k-1)(k-M+1)(3.1假设x()取自一均值为零,自相关矩阵为R的广义平稳随机过程,而滤波器的系数矢量(加权矢量)为:k)=[w,(k)w2(k)(32)以上二式中括号内的k为时间指数,因此,X()和W()分别表示时刻k的滤波器输入序列和加权值,滤波器的输山y(k)为:y(k)=∑w(n)x(n-t+1)33)式中M为滤波器的长度。图31中的“k称为“期望理想响应信号”,有时也可称为“训练信号”,它决定了设计最佳滤波器加权向量W(k)的取值方向。在实际应用中,通常用一路参考信号来作为期望响应信号。(k)是滤波器输出y(k)相对于a(k)的误差,即e(k)=d(k)-v(h)(34)显然,自适应滤波控制机理是用误差序列(k按照某种准则和算法对其系数w)n),=1.2…,M进行调节的,最终使自适应滤波的目标(代价)函数最小化,达到最佳滤波状态。按照均方误差(MSE)准则所定义得目标函数是E(h)=Ele()(35)eId()-2d(k)y(k)+y(k)将式(3.4)代入式(3.5),目标函数可以化为c(k)=Ele(k)(3.6)E[d(k)]-2Eld(kw(k)x(k]+ elw(kX(eX(s)w(k)当滤波系数固定时,目标函数又可以写为c(k=[d(k]-2W(k)P+W(k)RW (k)(3.7)其中,P-趴是长度为N的期望信号与输入信号的互相关矢量,R=Exx是Nx的输入向量得自相关矩阵。由式(37)可见,自适应滤波器的目标函数()是延迟线抽头系数(加权或滤波系数)的二次函数。当矩阵R和矢量P已知时,可以由权矢量W(k)直接求其解。现在我们将式(3.7)对W求倒数,并令其等于零,同时假设R是非奇异的,由此可以得到目标函数最小的最佳滤波系数w为R P(38)
- 2020-11-28下载
- 积分:1
16×64LED点阵显示屏的设计(附完整proteus仿真图和源程序)
16×64LED点阵显示屏的设计(附完整proteus仿真图和源程序)答辩记录1、例举设计过程中遇到的问题及其解决方法(至少两例)。答:(1)问题说明:解决方法:(2)问题说明:解决方法2、教师现场提的问题记录在此(不少丁2个问题)《单片机原理及应用》课程设计摘要LED电子显示屏是利川发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,在信息显示领域得到了广泛的应用,实现显示屏的技术也有很多和。本文介绍了基于单片机80C51为控制器的16×64LED点阵显示屏系统的设计。整机以美国 ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制一个行驱动器74LS154和八个列驱动器74HC595米驱动显示屏显示。该电子显示屏可以显示各种文字或单色图像,全屏能显示4个汉字,采用16块8×8点阼LED显示模块来组成一个16×64点阼显示模式。显示采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。本文介绍了利用 Proteus7.10软件进行原理图的绘制,利用汉字转换软件将汉字转换为将要发送给单片机的点阵数据,在keil软件当中采用C语言编程,与 proteus进行联调,并通过仿真软件Proteus7.10最终实现自己设想的效果,总体上系统的设计简单、显示清晰、成本较低。关键词:单片机;LED;点阼屏;c语言《单片机原理及应用》课程设计目录摘要设计任务基本要求选做设计方案点阵屏显示模块原理数据传输方案系统硬件电路的设计单片机系统及外围电路点阵显示屏设计点阵显示器的扫描驱动系统软件的设计显示驱动程序系统主程序总结参考文献附录:总设计图附录:总源程序《单片机原理及应用》课程设计设计任务从LED材料的不断更新,灰度控制技术的发展,真彩色图像的展现:到驱动电路的灵活、高效,控制系统技术的提高无不体现了LED行业技术的飞跃发展另外,随着计算机的网路技术的发展,LE显示屏在网路环境下的使用情况越来越多,在多媒体、多和显示设备组成的信息显示系统中,采用智能化网路控制,联网控制多屏技术也在实际屮得到应用。本文讨论了利用单片机为控制信号完成一个点阵显示屏系统的设计。11基本要求设计一款能够显示不同字符的点阵广告牌;2.设计不同的字符切换效果(如內烁,静止,平移等);设计控制按钮,可以在不同的效果间切换;12选做4能够显示图形或自定义字符5通过串行口从电脑上下载更新需显示的字符6其他功能(创新部分)图示例图《单片机原理及应用》课程设计设计方案21点阵屏显示模块原理四个8×8的点阵构成一个16×16的点阵,共由256个LED构成。如果LED的阴极与行相连,而阳极与列相连,那么只要给该LED对应的行以低电平,列以高电平,那么对应的LED就发光。图2-1画岀了可显示一个汉字的16×16的点阵屏模块。这种模块由256个发光LED以16×16的形式构成一个正方形模块,然后引出2列16针的引脚将内部电路接口引出,供驱动电路使用0200100fFC200生400gfEO004000800100TFFE010010001000005000200图2.1LED点阵显示原理图行对应的给LED的阴极,先给第一行以低电平,如果送给16列的代码为0200,则第一行的第7个LED被点亮,再给第二行以低电平,如果送给16列的代码为0100,则第二行的第8个被点亮,接着给第三行以低电平,同时给列以动代码,这样不断地进行行行的扫摧,只要速度够快,由于人的祧觉暂留作用,就不会感觉釗明显的闪烁感。点阵上会看到一个清晰的“字”字《单片机原理及应用》课程设计22数据传输方案显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的方案是不可取的。采用牛行传输的方法,控制电路可以只用根信号线,将列数据位一位传往列驱动器,在硬件方面无疑是卜分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都以传输到位之后,这行的各列才能并行地进行显小。这样,对于一行的显小过程就可以分解成列数据准备(传输)和列数据显示两部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下留给行显示的时间就人少了,以致影响到LED的亮度。解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一列数据。为了达到重叠处理的目的,列数据的显示就需要具有所存功能。经过上述分析,就可以归纳出列驱动器电路应具有的功能。对于列数据准备来说,它应能实现串入并处的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响行的显示。图22为显示屏电路实现的结构框图列驱动列驱动列驱动列驱动单片机控制器行驱动6×6LED16×⊥6LED16×16LED6×6LED点阵点阵点阵点阵图点阵显示屏系统框图《单片机原理及应用》课程设计系统硬件电路的设计本系统采用单片机作控制器。整个电路主要由单片机控制及其接口电路、驱动显小电路、电源电路等部分纽成。为了简化显示屏电路,降低成本,本系统在单片机部分不加字库存储器,而在机上编辑汉字和字符显示信息,并将其转换为相应的点阵显示数据。然后通过串口送给单片机存储并进行显示处理使件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路部分。31单片机系统及外围电路单片机采用MSC-51或其兼容系列芯片,采用24MHZ或更高频率晶振,以获得较高的刷新频率,时期显小更稳定。单片机的串口与列动器相连,用来显小数据。P1口低4位与行驱动器相连,送出行选信号;P1.5~P1.7口则用来发送控制信号MSC51单片机部分管脚说明如下:P0口:P0口为一个8位漏级开路刈向I/0口,每脚可吸收8TTL门电流。当P凵的管脚第次写1时,被定义为高阻输入。P0能够用于外部程序薮据存储器,它可以被定义为数据/地址的第八位P1凵:P1凵是一个内部提供上拉电阻的8位双向I/0凵,P1凵缓冲器能接收输出4L门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH编程和校验时,P1口作为第八位地址接收P2凵:P2凵为一个内部上拉电阻的8位双向I0凵,P2凵缓冲器可接收输出4个TL门流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将《单片机原理及应用》课程设计输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“I”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2凵输出其特殊功能寄存器的内谷。P2凵在 FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/0口,可接收输出4个TTL门电流。当P3凵写入“1”后,它们被内部上拉为髙电平,并用作输入。作为输入,由亍外部下拉为低电平,P3凵将输出电流(IL)这是由于上拉的缘故RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。CF气x1灯TAP0ADD□P0.2/AD236C2F4/D4F0.5AD5PO, 3JAD6RSTPO.7/A07A3t4C3H山ARo 1nFP2.2A10PSENP2.3A|1ALEF2.4inP2541328P25A1427P27A|5P123P3. 0/RXD F10F1.1/2EP3. ITXDP3 2/NT0F13P1361. 4P34/014P3 6R16PC/FD17B9C54图单片机最小系统原理图
- 2020-12-12下载
- 积分:1