维纳滤波器设计详解.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
维纳滤波器设计 随机信号处理 学号: 姓名: 实验一 维纳滤波器设计 1实验内容 设计一个维纳滤波器: (1) 产生三组观测数据,首先根据产生信号,将其加噪,(信噪比分别为),得到观测数据。 (2) 估计,的AR模型参数。假设信号长度为L,AR模型阶数为N,分析实验结果,并讨论改变L,N对实验结果的影响。 2实验原理 滤波目的是从被噪声污染的信号中分离出有用的信号来,最大限度地抑制噪声。对信号进行滤波的实质就是对信号进行估计。滤波问题就是设计一个线性滤波器,使得滤波器的输出信号是期望响应的一个估计值。下图就是观测信号的组成和信号滤波的一般模型。 观测信号 信号滤波的一般模型 维纳滤波解决从噪声中提取信号的滤波问题,并以估计的结果与真值之间的误差均方值最小作为最佳准则。它根据估计信号的当前值,它的解以系统的系统函数或单位脉冲形式给出,这种系统常称为最佳线性滤波器。 维纳滤波器设计的任务就是选择,使其输出信号与期望信号误差的均方值最小。 假设滤波系统是一个线性时不变系统,它的和输入信号都是复函数,设 考虑系统的因果性,可得到滤波器的输出 设期望信号,误差信号及其均方误差分别为 要使均方误差为最小,需满足: 整理得,等价于 上式说明,均方误差达到最小值的充要条件使误差信号与任一进入估计的输入信号正交,这就是正交性原理。 将展开,得 整理得 等价于 此式称为维纳-霍夫(Wiener-Holf)方程。解此方程可得到最优权系数,此式是Wiener滤波器的一般方程。 定义 则维纳-霍夫方程可写成矩阵形式 求逆,得 此式表明,已知期望信号与观测数据的互相关函数及观测数据的自相关函数时,可以通过矩阵求逆运算,得到维纳滤波器的最佳解。 3实验结果及分析 (1)当L=200,N=6 信噪比为20dB的滤波效果 信噪比为10dB的滤波效果 信噪比为6dB的滤波效果 (2)当L=200,N=60 信噪比为20dB的滤波效果 信噪比为10dB的滤波效果 信噪比为6dB的滤波效果 (3)当L=600,N=6 信噪比为20dB的滤波效果 信噪比为10dB的滤波效果 信噪比为6dB的滤波效果 实验分析:别取信号长度为200、600,滤波器长度为6、60,加噪信噪比为20dB、10dB、6dB,组合进行实验。每组实验得到的最小均方误差统计如下表。由此表可以看出,信号长度越长,最小均方误差(绝对值)越大,精度越差;在信噪比较大(误差影响较小)的滤波过程中,滤波器长度约长,最小均方误差(绝对值)越小,精度越好。 表1 最小均方误差统计表 加噪 信号 信噪比 L=200 N=6 L=200 N=60 L=600 N=6 20dB -1785.3971 -1574.1107 -6888.4103 10dB -845.5714 -1727.5260 -10219.3397 6dB -1213.6367 -2135.4596 -7743.9358 对于相同信号和滤波器(这里取L=200,N=6),信噪比越大,最小距离误差约小;而当信噪比较小时,信号与噪声值接近,导致滤波效果受到影响,最小距离误差变大。 4源代码 clear; clc; %初始化变量 L=200; %信号长度 N=6; %滤波器的阶次 a=0.96; wn=randn(L,1); %wn为用于生成信号的噪声信号,随机生成一个L*1矩阵,生成矩阵的元素值在%区间(0.0,1.0)之间 sn=zeros(L,1); %sn为信号,生成一个L*1的零矩阵 hn=zeros(N,1); %hn为系统单位脉冲响应 生成一个N*1的零矩阵 rxx=zeros(N,1); %rxx为自相关函数,生成一个N*1的零矩阵 rxd=zeros(N,1); %rxd为互相关函数,生成一个N*1的零矩阵 yn=zeros(L,1); %yn为输出信号,生成一个L*1的零矩阵 xt=zeros(L+N,1); %生成一个(L+N)*1的零矩阵 gn=zeros(L,1); %gn为yn与sn最小距离误差信号,生成一个L*1的零矩阵 %根据给定公式s(n)=as(n-1)+w(n),生成理想信号 for i=2:L sn(i,1)=a*sn(i-1,1)+wn(i,1); end sn(1,1)=wn(1,1); subplot(2,2,1); plot(sn,r),axis([0 200 -10 10]),xlabel(时间),ylabel(幅度

文档评论(0)

a1166671 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档