范文一:自适应维纳滤波
实验十 自适应维纳滤
学院:信息学院 专业:电子信息科学与技术 学号:20121060279 姓名:侯沛 指导老师:柏正尧
实验要求:
学习使用 Wiener2函数实现二维自适应维纳滤波
用 imnoise 加噪声到图像中
实验过程与结果
输入一个图像,加入高斯噪声
f=imread('yin.jpg');
figure,imshow(f)
J = imnoise(f,'gaussian',0.01);
figure,imshow(J)
原图像 加入高斯噪声后的图像
对图像进行 2维维纳滤波处理
对图像加入高斯噪声
f=imread('yin.jpg');
I=rgb2gray(f);
J = imnoise(I,'gaussian',0.01);
imshow(J)
加入高斯噪声的图像
使用维纳滤波恢复图像
f=imread('yin.jpg');
I=rgb2gray(f);
J = imnoise(I,'gaussian',0.01);
K1=wiener2(J,[3 3]); %对加噪图像进行二维自适应维纳滤波 K2=wiener2(J,[5 5]); %对加噪图像进行二维自适应维纳滤波 K3=wiener2(J,[7 7]); %对加噪图像进行二维自适应维纳滤波 K4=wiener2(J,[9 9]); %对加噪图像进行二维自适应维纳滤波 subplot(2,2,1);
imshow(K1);
title('恢复图像 1');
subplot(2,2,2);
imshow(K2);
title('恢复图像 2');
subplot(2,2,3);
imshow(K3);
title('恢复图像 3');
subplot(2,2,4);
imshow(K4);
title('恢复图像 4');
使用维纳滤波恢复过来的图像 输入一个图像,加入椒盐噪声
加入椒盐噪声的图像
使用维纳滤波恢复图像
f=imread('yin.jpg');
I=rgb2gray(f);
J = imnoise(I,'salt & pepper',0.02);; %添加均值为 0,方差为 0.02的椒盐噪声 K1=wiener2(J,[3 3]); %对加噪图像进行二维自适应维纳滤波
K2=wiener2(J,[5 5]); %对加噪图像进行二维自适应维纳滤波
K3=wiener2(J,[7 7]); %对加噪图像进行二维自适应维纳滤波
K4=wiener2(J,[9 9]); %对加噪图像进行二维自适应维纳滤波 subplot(2,2,1);
imshow(K1);
title('恢复图像 1');
subplot(2,2,2);
imshow(K2);
title('恢复图像 2');
subplot(2,2,3);
imshow(K3);
title('恢复图像 3');
subplot(2,2,4);
imshow(K4);
title('恢复图像 4');
滤波后的图像
范文二:自适应滤波器与维纳滤波器的区别
自适应滤波器与维纳滤波器的区别:
维纳滤波是利用平稳随机过程的相关特性和频谱特性对混有噪声的信号进行滤波的方法。它需要输入信号的自相关矩阵及输入信号与期望响应之间的互相关矢量,其基本依据就是最小均方误差准则。 但在实际情况中,往往不能预先得到先验信息,维纳滤波器不再满足要求。这时就需要滤波器能够进行自我调节,同时对输入信号进行滤波,利用滤波器的输出对期望响应进行估计,使用自适应算法来改变滤波器的系数以不断改进滤波器的性能,使滤波器的输出与期望响应之间的误差逐渐接近减小,这样的滤波器就是自适应滤波器。
自适应滤波器与维纳滤波器的区别在于:维纳滤波器系数固定,而自适应滤波器系数是不断更新的;维纳滤波器处理平稳随机信号,而自适应滤波器是处理非平稳随机信号的有效技术。
1. 已知4个样本值x (n )=(2,4,1,3),试用自相关法和协方差法估计AR(1)模型参数。 2.P60 3.3
3. 随机信号题目第二章 第3题 4.5见图片
总共5道大题,前两道为书上原题,菜逼都会!
三、信号S(n),混入一加性噪声v(n),v(n)的均值为0,在下列三种情况下,如何从受污染的信号x(n)=s(n)+v(n)中尽可能的恢复s(n),要求写出详细的设计步骤和实现方法。 (1)s(n)和v(n)的品频谱不互相重叠;
(2)已知s(n)的自相关函数,且v(n)和s(n)不相关;
(3)v(n)为宽带噪声,v(n)和s(n)的频谱重叠,v(n)的自相关函数未知,但可以对s(n)进行间接的测量。
四、一时变信号s(n)的时域和时频图分别如下。
(1)该信号是平稳的吗?为什么?
(2)用非参数谱估计,如何估计信号频谱?
(3)用参数谱估计,如何估计信号频谱?与(2)相比有什么改进?
五、结合一个自适应滤波器的应用实例,给出: (1)具体的应用框图;
(2)讨论框图中各部分的功能,说明其与维纳滤波的不同之处; (3)给出自适应滤波器的算法; (4)如何评价自适应滤波器的性能。
相关图法:
周期图法:
(5)(6)
范文三:维纳滤波器
西安电子科技大学
统计与自适应信号处理仿真
学院:班级: 学号: 姓名:
2013年12月
FIR 维纳滤波器
1维纳滤波原理概述
维纳(Wiener )是用来解决从噪声中提取信号的一种过滤(或滤波)方法。这种线性滤波问题,可以看做是一种估计问题或一种线性估计问题。一个线性系统,如果它的单位样本响应为h (n ) ,当输入一个随机信号x (n ) ,且
x (n ) =s (n ) +v (n ) (1)
其中x (n ) 表示信号,v (n ) ) 表示噪声,则输出y (n ) 为
y (n ) =
∑h (m ) x (n -m ) (2)
m
我们希望x (n ) 通过线性系统h (n ) 后得到的y (n ) 尽量接近于s (n ) ,因此称
y (n ) 为s (n ) 的估计值,用s (n ) 表示,即
y (n ) =s (n ) (3)
^
^
则维纳滤波器的输入—输出关系可用下面图1表示。
图1 维纳滤波器的输入—输出关系
实际上,式(2)所示的卷积形式可以理解为从当前和过去的观察值x (n ) ,
x (n -1) ,x (n -2) …x (n -m ) ,…来估计信号的当前值s (n ) 。因此,用h (n ) 进行
^
过滤问题实际上是一种统计估计问题。
一般地,从当前的和过去的观察值x (n ) ,x (n -1) ,x (n -2) …估计当前的信号值y (n ) =s (n ) 成为过滤或滤波;从过去的观察值,估计当前的或者将来的信号值y (n ) =s (n +N )(N ≥0) 称为外推或预测;从过去的观察值,估计过去的信号值
y (n ) =s (n -N )(N >1) 称为平滑或内插。因此维纳滤波器又常常被称为最佳线性
^
^
^
过滤与预测或线性最优估计。这里所谓的最佳与最优是以最小均方误差为准则的。 如果我们分别以s (n ) 与s (n ) 表示信号的真实值与估计值,而用e
(n ) 表示他们
^
之间的误差,即
e (n ) =s (n ) -s (n ) (4)
显然e (n ) 可能是正值,也可能是负值,并且它是一个随机变量。因此,用它的均方误差来表达误差是合理的,所谓均方误差最小即它的平方的统计期望最小:
^
ξ(n ) =E [e 2(n )]=min
采用最小均方误差准则作为最佳过滤准则的原因还在于它的理论分析比较简单,不要求对概率的描述。
2维纳-霍夫方程的求解
为了按(5)式所示的最小均方误差准则来确定维纳滤波器的冲激响应h (n ) ,令ξ(n ) 对h (j ) 的导数等于零,即可得
R xs (m ) =
∑h (i ) R
i
xx
(m -i ) , ?m (6)
式中,R xs (m ) 是s (n ) 与x (n ) 的互相关函数,R xx (m ) 是x (n ) 的自相关函数,分别定义为
R xs =E [x (n ) s (n +m )] R xx =E [x (n ) x (n +m )]
式(6)称为维纳滤波器的标准方程或维纳-霍夫(Wiener-Hopf )方程。如果已知R xs (m ) 和R xx (m ) ,那么解此方程即可求的维纳滤波器的冲激响应。
式(6)所示标准方程右端的求和范围即i 的取值范围没有具体标明,实际上有三种情况:
(1) 有限冲激响应(FIR )维纳滤波器,i 从0到N -1取得有限个整数值; (2) 非因果无限冲激响应(非因果IIR )维纳滤波器,i 从-∞到+∞取所
有整数值;
(3) 因果无限冲激响应(因果IIR )维纳滤波器,i 从0到+∞取正整数值。 上述三种情况下标准方程的解法不同,本文将描述因果IIR 维纳滤波器和FIR 维纳滤波器的求解。
3 FIR维纳滤波器的求解
设滤波器冲激响应序列的长度为N ,冲激响应矢量为
h =[h (0) h (1).... h (N -1)]T (14)
滤波器输入数据矢量为
x (n ) =[x (n ) x (n -1)... x (n -N +1)]T (15)
则滤波器的输出为
y (n ) =s (n ) =x (n ) h =h x (n ) (16)
^
T
T
这样,式(6)所示的维纳-霍夫方程可写成
P T =h T R 或P =Rh (17)
其中
P =E [x (n ) s (n )] (18)
是s (n ) 与x (n ) 的互相关函数,它是一个N 维列矢量;R 是x (n ) 的自相关函数,是N 阶方阵
R =E [x (n ) x T (n )] (19)
利用求逆矩阵的方法直接求解式(10),得
h opt =R P (20)
-1
这里opt 表示“最佳”,这就是FIR 维纳滤波器的冲激响应。
4 FIR维纳滤波器的matlab 实现
这是FIR 维纳滤波器的原理框图:
+1)
图2 FIR维纳滤波器的原理框图
设计维纳滤波器的过程就是寻求在最小均方误差下滤波器的单位脉冲响应
或传递函数的表达式,其实质就是解维纳-霍夫(Wiener -Hopf )方程。 这是用matlab 设计FIR 维纳滤波器的流程图:
图3 FIR维纳滤波器的流程图
5 FIR维纳滤波器的matlab 程序
%************************************************************ % wiener.m
% FIR维纳滤波器的设计与仿真
% *********************************************************** clear all; clc;
%************************* 生成信号 ************************* % 信号振幅 A=1.0; % 初始的相位 th0=0;
N=input('请输入信号长度');
vn=randn(1,N);%产生随机高斯白噪声 %产生信号 sn = zeros(1,N); k = 0:N-1;
sn = A*sin(2*pi*k/N+th0)+2;
xn=sn+vn; %信号中加入随机高斯白噪声
%******************** 计算自相关函数Rxx ********************** Rxx=xcorr(xn,xn); %得到混合信号的自相关函数 M=input('输入滤波器阶数 ');
for i=1:M %得到混合信号的自相关矩阵 for j=1:M
rxx(i,j)=Rxx(i-j+N); end end
%******************** 计算互相关函数Rxy ********************** Rxy=xcorr(xn,sn); %得到混合信号和原信号的互相关函数 for i=1:M
rxy(i)=Rxy(i+N-1);
end %得到混合信号和原信号的互相关向量 %********** 利用维纳-霍夫方程计算wiener 滤波器系数 ************** h1=inv(rxx)*rxy';
%************** 利用得到的wiener 滤波器滤波 ******************** out_signal=conv(xn,h1); yn=out_signal(1:N);
%*********************** 变换到频域 *************************** sf=abs(fftshift(fft(sn,N))); xf=abs(fftshift(fft(xn,N))); yf=abs(fftshift(fft(yn,N)));
%*********************** 在时域画图 ***************************
%分别画出原信号,加入噪声的混合信号,滤波后的信号 k=1:N; figure; plot(k,sn); axis([0,N,0,6]); title('原始信号'); figure; plot(k,xn); axis([0,N,0,6]); title('加噪后的信号'); figure; plot(k,yn); axis([0,N,0,6]); title('滤波后的信号');
%************************ 在频域画图 **************************** %分别画出变换到频域后原信号,加入噪声的混合信号,滤波后的信号 k=1:N; figure; plot(k,sf); axis([0,N,0,2000]); title('原始信号'); figure; plot(k,xf); axis([0,N,0,2000]); title('加噪后的信号'); figure; plot(k,yf); axis([0,N,0,2000]); title('滤波后的信号');
%************************** 计算均方误差MSE ********************** mse=mean((yn-sn).^2) %滤波后的信号相对原信号的统计均方误差
%******************************************************************
6 仿真结果
(1)保持滤波器阶数不变,改变信号样本的长度 A. 信号样本点数1000 维纳滤波器阶数100
图4 时域仿真图
图5 频域仿真图
B. 保持维纳滤波器阶数100,改变信号样本点数N 为5000和10000后滤波后
的信号仿真图对比
N=1000 N=5000 N=10000
图6 不同信号样本点数下的滤波后的信号仿真图对比
C. 保持维纳滤波器阶数100,信号样本点数N 分别为1000、2000、3000…10000。
每个样本点数下仿真100次。
图7 不同信号样本点数N 下的MSE
D. 仿真结果分析:
a) 从A 仿真结果可以看出,维纳滤波器对于噪声过滤有着显著的效果; b) 从B 仿真结果可以看出,保持滤波器阶数不变,改变信号样本的长度(点数)
滤波的效果随着信号样本的长度的增加而提高。(这是因为信号样本越长信号的统计特征就越完整)
c) 从C 仿真结果可以看出,均方误差MSE 随着信号样本的长度的增加而减小,
这和B 仿真结果的得出的结论是一致的。 (2)保持信号样本的长度不变,改变滤波器阶数
A. 保持信号样本点数N 为1000,改变维纳滤波器阶数为10、50和100后滤波
后的信号仿真图对比
阶数=10 阶数=50 阶数=100
图8 不同滤波器阶数下的滤波后的信号仿真图对比
B. 保持信号样本点数N 为1000,改变维纳滤波阶数为10、20、30…100滤波后
的MSE ,每个样本点数下仿真100次。
图9 不同维纳滤波器阶数下的MSE
C. 仿真结果分析:
a) 从A 仿真结果可以看出,维纳滤波器的阶数越大,滤波后的信号更接近原始
信号,但随之计算量也增大
b) 从B 仿真结果可以看出,均方误差MSE 随着维纳滤波器的阶数的增加而减
小,这和A 仿真结果的得出的结论是一致的。
范文四:维纳滤波器
第二章上机作业2
一、作业题目
设计一维纳滤波器
(1)产生三组观测数据:首先根据s(n)=a s(n-1)+w(n)产生信号s(n),将其加噪(信噪比分别为20dB,10 dB,6 dB),得到观测数据x(n), x(n), x3(n). 121
(2)估计x(n),i=1,2,3的AR模型参数。假设信号长度为L,AR模型阶数为i
N,分析实验结果,并讨论改变L,N对实验结果的影响。
二、原理
利用matlab的randn函数产生高斯白噪声w(n),用来模拟系统噪声。根据系统差分方程s(n)=as(n-1)+w(n)产生混有系统噪声的真实信号。式中a为方程的系数。
利用awgn函数向真实信号s(n)加入高斯白噪声得到观测信号。这里的高斯白噪声用来模拟观测噪声。此函数可以通过设置参数来控制观测信号的信噪比。
根据观测信号,为系统构建AR模型。AR模型的参数通过最小二乘法估计得到。观测信号的数目越多、AR模型的阶数越多,AR模型与真实体统的逼近程度就越高,不过运算量也越大。
运用最小二乘法估计参数非常方便,参数估计无偏、精度高。最小二乘估计法可用如下方程组表示:Y=Xφ+a。φ的最小二乘估计为:φ=inv(X’*X)*X’*Y。三、程序
根据上述原理编写出下面的程序:
clear;
clc;
fs=100;
t=(0:1/fs:2);
n=201;%信号的长度
N=randn(1,n);%产生1×L个高斯白噪声
A=0.6;%设差分方程s(n)=as(n-1)+w(n)的反馈系数a=A=0.6,是一个稳定系统 S1=0;
S2=0;
S=[];
for i=1:n
S2=A*S1+N(i);
S=[S S2];
S1=S2;
end
x_1=awgn(S,20); %产生信噪比为20dB的观测信号x(1) x_2=awgn(S,10); %产生信噪比为10dB的观测信号x(2) x_3=awgn(S,6); %产生信噪比为6dB的观测信号x(3)
subplot(3,1,1);
plot(t,S,'r',t,x_1,'c'); legend('实际值','信噪比为20dB');
xlabel('t');
ylabel('S/x_1');
title('真实信号s和观测信号x_1');
grid on;
subplot(3,1,2);
plot(t,S,'r',t,x_2,'g'); legend('实际值','信噪比为10dB');
xlabel('t');
ylabel('S/x_2');
title('真实信号s和观测信号x_2');
grid on;
subplot(3,1,3);
plot(t,S,'r',t,x_3,'b'); legend('实际值','信噪比为6dB');
xlabel('t');
ylabel('S/x_3');
title('真实信号s和观测信号x_3');
grid on;
%估计AR模型的参数
AR_n=40;%构造40阶AR模型,根据经验,AR模型的阶数在L/3到L/2之间比较合适。
Y=x_1';
Y(1:AR_n)=[];
m=n-AR_n;
X=[];
for j=1:m
for h=1:AR_n
X(j,h)=x_1(AR_n+j-h);
end
end
%AR模型的参数估计值
parameter_1=inv(X'*X)*(X'*Y); %用AR模型生成的信号与原信号的方差
d_1=(Y-X*parameter_1)'*(Y-X*parameter_1)/(n-AR_n);
%根据x(2)估计AR模型的参数
Y=x_2';
Y(1:AR_n)=[];
m=n-AR_n;
X=[];
for j=1:m
for h=1:AR_n
X(j,h)=x_1(AR_n+j-h);
end
end
%AR模型的参数估计值
parameter_2=inv(X'*X)*(X'*Y); %用AR模型生成的信号与原信号的方差
d_2=(Y-X*parameter_2)'*(Y-X*parameter_2)/(n-AR_n);
%根据x(3)估计AR模型的参数
Y=x_3';
Y(1:AR_n)=[];
m=n-AR_n;
X=[];
for j=1:m
for h=1:AR_n
X(j,h)=x_1(AR_n+j-h);
end
end
%AR模型的参数估计值
parameter_3=inv(X'*X)*(X'*Y); d_3=(Y-X*parameter_3)'*(Y-X*parameter_3)/(n-AR_n);三、结果及分析
运行上述程序,得到的一次结果为
通过改变信号的长度L和AR模型的阶数AR_n,可以得到由不用长度信号估计出的不
同阶数的AR模型的参数。根据理论知识和实验结果可以看出,信号长度越长、AR模型的
阶数越高,估计误差就越小。
范文五:维纳滤波器
维纳滤波器
1线性最优滤波问题 ........................................................................................................................ 1
2 正交原理....................................................................................................................................... 2 3 维纳-霍夫方程 ............................................................................................................................. 3 4 维纳-霍夫方程的矩阵形式 ......................................................................................................... 5
5 最小均方误差 ............................................................................................................................... 5
1线性最优滤波问题
un()yn()dn() 线性滤波器 ,,
endnyn()()(),, 图1 维纳滤波
线性滤波问题如图1所示,其中为滤波器的输入,在实际应用中,un()un()来自传感器或通信接收机,所以又称为输入观测数据。经过线性滤波器处理un()
之后得到输出。线性最优滤波问题就是在某种最优化条件下用作为yn()yn()
的估计,所以称为期望输出。实际上也是整个系统的输入,是可dn()dn()dn()
w以通过传感器观测的。与之差称为估计误差,表示为。表示线dn()yn()en()n
w性滤波器的冲激响应,往往也称为滤波器的权重系数。 n
在线性滤波问题中,假定是来自某个零均值广义平稳随机过程的观测样un()
本。同时也假定是来自某个零均值广义平稳随机过程的观测样本。不难想dn()
到,应该与有一定的统计相关性,否则就不可能用作为有意un()dn()yn()dn()义的估计。
线性最优滤波问题的关键是定义一个最优化判据,以衡量估计的优劣。最优
2Een[|()|]化判据存在多种选择,例如可以要求估计误差的均方值最小,也en()
可以要求最小,甚至可以要求的更高次幂的数学期望最小。选择Een[|()|]|()|en
2Een[|()|]均方误差最小作为最优化判据更加有利,一方面,均方误差在许多实际应用中有较为明确的意义,另一方面,它使问题的数学处理更加简单。关于这个问题,将在后面详细陈述。选择均方误差最小作为最优化判据的线性最优滤波问题称为维纳滤波。
2 正交原理
从物理可实现的角度,要求线性滤波器是一个因果性的滤波器,这时,输出
可以表示成如下卷积和: yn()
,*ynwunk()(),, (1) ,kk0,
上式中*号表示取复数共轭。
在维纳滤波问题中,用作为的估计。估计误差定义为 yn()dn()
(2) endnyn()()(),,
而均方误差则定义为
2* (3) JEenenEen,,[()()][()]
EJ其中表示取数学期望。在最优化理论中,又称为代价函数,它描述了用yn()作为的统计估计所必须付出的代价。根据最优化理论,代价函数必须是非dn()
负的。显然,按(3)式定义的代价函数确实是非负的。
Jw显然,是权重系数的函数,所以最优维纳滤波实际上就是找到最优权重n
J系数使得均方误差最小。如考虑一般的复信号问题,则权重系数也可能是复的,可写成
wajbk,,,,0,1,2,… (4) kkk
,k我们或许可以定义一个梯度算子,它是一个矢量算子,其第个分量定义为
,, (5) ,,,,jk,0,1,2,…k,,abkk
,JJ,JJ梯度矢量的方向就是变化最快的方向,而的模描述了沿这一方向的变
,Jk化率。按照上述梯度算子的定义,梯度矢量的第个分量为
,,JJ (6) ,0,1,2,,Jjk,,,…k,,abkk
J当最小时,梯度矢量为零,其各分量同时为零,即
,Jk,,0,0,1,2,… (7) k
将(3)代入(6),并利用(2)和(1),可以得到
*,JEunken,,,2[()()] (8) k
Jen()当达到最小值时的估计误差表示为,则由上述两式可得 o
*Eunkenk[()()]0,0,1,2,,,,… (9) o
的估计误差上式说明:当线性滤波器在最优化条件下运行时,在任意时刻en()no与该时刻及以前进入滤波器的输入不相关,或者说en()与正unkk(),0,1,2,,,…o
交。这一结论称为正交原理。
由(1)可以看到,只不过是的线性组合,所以yn()unkk(),0,1,2,,,…yn()与的互相关可表示成 en()
,,*****EynenEwunkenwEunken[()()][()()][()()],,,, (10) ,,kkkk00,,
yn()如用表示滤波器在最优化条件下运行时的输出,则由上列两式不难导出如o
下结论:
*Eynen[()()]0, (11) oo
yn()en()也就是说,输出与估计误差不相关,或者说它们彼此正交。这是正交oo
原理的重要推论。
d(n)
u(n-1)
ee(n)(n)o
(n)o yy(n)
u(n)
图2 正交原理
关于正交原理,可以作简单的几何解释,如图2所示。张unkk(),0,1,2,,,…成一个线性空间u(n),由于是的线性组合,故位于yn()unkk(),0,1,2,,,…yn()
en()yn()线性空间U(n)。在最优化条件下,与该线性空间正交,而是在dn()oo
yn()该空间的正交投影,也就是说,是的最优逼近。 dn()o
3 维纳-霍夫方程
将(1)、(2)代入正交原理表达式,有
,**Eunkdnwunik{()[()()]}0,0,1,2,,,,,,… ,oii0,
其中w表示在最优条件下的线性滤波器的第个权重系数。将上式稍加整理可得 ioi
,**wEunkuniEunkdnk[()()][()()],0,1,2,,,,,,… (12) ,oii0,
上式左边的数学期望表示维纳滤波器输入信号的自相关,如输入是平un()un()稳的,则其自相关只与时间差有关,而与时间起点无关,即
*rikEunkuni()[()()],,,, (13) 其中,表示的自相关。(12)式右边的数学期望则是与的互相rm()un()un()dn()关,如输入与期望输出联合平稳,则有 un()dn()
*pkEunkdn()[()()],,, (14) 根据上列两式的定义,(12)式可写成
,
wrikpkk()(),0,1,2,,,,,… (15) ,oi0i,
上式称为维纳-霍夫方程。它是维纳滤波器实现最小均方误差意义下线性滤波的充分必要条件。实际上,它是关于最优权重系数的线性联立方程组。
维纳滤波器既可以是具有无限冲激响应的IIR滤波器,也可以是具有有限冲激响应的FIR滤波器。(15)式给出了最优IIR维纳滤波器冲击响应必须满足的方程组。如选择FIR滤波器,则最优FIR维纳滤波器冲激响应满足的方程组可写成:
M,1
wrikpkkM()(),0,1,2,1,,,,,…, (16) ,oii,0
其中M表示FIR滤波器的阶数。上式是关于M个权重系数的线性联立方程组。
回顾上面的叙述,由于选择最优化判据是均方误差最小,从而得到满足最优化的充分必要条件表达式(9),即正交原理表达式。再从正交原理出发,导出最优维纳滤波器权重系数的维纳-霍夫方程(15)或(16)。正是由于选择均方误差最小的最优化判据,维纳-霍夫方程是线性联立方程组,数学求解相对来说比较容易。
由(16)式很容易看到,如维纳滤波器的输入与期望不相关,则维un()dn()纳-霍夫方程没有非零解。这意味着我们不可能通过对的线性滤波得到的un()
来对进行有意义的估计。 yn()dn()
4 维纳-霍夫方程的矩阵形式
定义输入信号列矢量和权重系数列矢量如下:
T (17) u()[(),(1),,(1)]nunununM,,,,…
T (18) w,[,,,]www…ooooM,01,1
维纳-霍夫方程(16)左边的系数矩阵可写成
rrrM(0)(1)(1)…,,,
,,*rrrM(1)(0)(2)…,H,, (19) Ruu,,Enn[()()],,
,,**rMrMr(1)(2)(0),,…,,
R称为输入信号的自相关矩阵,上标H表示取共轭转置矩阵。而方程右边的互相关可以写成如下列矢量
T*pu,,,,[(0),(1),,(1)][()()]pppMEndn… (20) p称为输入信号和期望输出的互相关矢量。这样就可以将维纳-霍夫方程写成如下矩阵形式
Rw=p (21) o
下面将说明自相关矩阵是可逆的,所以维纳-霍夫方程有唯一的非零解,且可写成如下形式:
-1w=Rp (22) o
5 最小均方误差
下面用矩阵形式导出最优维纳滤波器所能达到的最小均方估计误差。根据估计误差的定义,在最优条件下,
dnynen()()(),, oo
利用正交原理表达式(2.11),计算期望输出的方差如下:
2***,,,,EdndnEynynEenen[()()][()()][()()] doooo
上式右边第2项正是最优维纳滤波器所能达到的均方估计误差,即最小均方估计
J误差,以表示之,则有 min
*22 (23) JEenen,,,[()()],,oodymino
2其中,表示最优维纳滤波器输出信号的方差。如滤波器是M阶FIR滤波器,,yo
则由(1)式,滤波输出可以写成权重系数矢量和输入信号矢量的内积,即
M,1*Hynwunkn()()(),,,wu (24) ,ookok,0
由于两个列矢量的内积是一个标量,所以
*TH*ynnn()()(),,wuuw (25) ooo
于是有
2*HHHHH,,,,,EynynEnnEnn[()()][()()][()()]wuuwwuuwwRw yooooooooo
2将(21)代入上式,注意到是一个实数,则有 ,yo
2HH ,,,wppwyooo
将上式代入(23),最后得到
221HH-J,,,,,,pwpRp (26) mindod