第2章 维纳滤波和卡尔曼滤波
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章 维纳滤波和卡尔曼滤波
2.1 引言 2.2 维纳(Weiner)滤波器的离散时域解 2.3 离散维纳滤波器的z域解 2.4 维纳预测 2.5 卡尔曼(Kalman)滤波
2014年11月26日星期三
15:38:36
1
153
2.1 引 言
§2.1 引 言
随机信号处理讨论的滤波问题 :就是一个估计问题,或者说是
(2.2.23)
维纳滤波器的最佳解: (2.2.24) 存在问题:求维纳滤波器的时域因果解,需要矩阵求逆,计
算量大(M3),不是一个有效的方法。
2014年11月26日星期三 15:38:36 13
153
2.2 维纳滤波器的离散形式—时域解
clc;close all;clear all; %% 信号产生 % 观测点数 N = 2000; n = linspace(0, 1200, N); % 信号 d = 2 * sin(pi * n / 128 + pi / 3); % 噪声(方差1.25) v = sqrt(1.25) * randn(N , 1); % 观测样本值 x = d' + v;
结论:均方误差达到最小值的充要条件是误差信号与任一进入
估计器的输入信号正交。这就是著名的正交性原理。
正交性原理的重要意义 :它提供了一个简便的数学方法,来判
断线性滤波系统是否工作于最佳状态。
2014年11月26日星期三 15:38:36 9
153
2.2 维纳滤波器的离散形式—时域解
假定滤波器工作于最佳状态,相应滤波器输出 yopt(n) 与估计 误差为eopt(n),则有 (2.2.17)
解 这个问题属于直接应用维纳-霍夫方程的典型问题, 其
关键在于求出观测信号的自相关函数和观测信号与期望信号的
互相关函数。
v2 ( n )
v1 ( n )
H1 (z)
x1 ( n )
H2 (z)
+ x( n ) + +
y( n )
图 2.2.3 维纳滤波器的框图
2014年11月26日星期三 15:38:36 21
2014年11月26日星期三 15:38:36 15
153
2.2 维纳滤波器的离散形式—时域解
% 滤波 y = filter(Wopt, 1, x); % 误差 En = d - y'; % 结果 figure, plot(n, d, 'r:', n, y, 'b-'); legend('维纳滤波信号真值','维纳滤波估计值'); title('期望信号 与滤波结果对比'); xlabel('观测点数');ylabel('信号幅度');figure, plot(n , En); title('维纳滤波误差曲线'); xlabel('观测点数');ylabel('误差幅度'); toc
2014年11月26日星期三 15:38:36 6
153
2.2 维纳滤波器的离散形式—时域解
下面求使均方误差最小的滤波器h(n)。 定义h(j)->hj,设hj=aj+jbj为复数,考虑复变量求导问题。
定义求导符号: 维纳滤波的极小值问题变为:
(2.2.7)
(2.2.8)
2014年11月26日星期三 15:38:36 7
维纳滤波WF与卡尔曼滤波KF:属于过滤或预测问题,采用最
小均方误差准则(MMSE)为最佳准则。
MMSE: Minimum Mean Square Error。
2014年11月26日星期三
15:38:36
4
153
2.1 引 言
维纳滤波器与卡尔曼滤波器比较:
名称 已知数据 x(n-1), x(n-2), ...... 前一个估 计值和最 近的观察 需要计算 计算结果 适用 条件 求解方法 提出 年代 40 年代
最佳状态下的信号关系(向量和几何表示):
d (n) eopt (n)
上式假定输入和期望信号为0均值。
2014年11月26日星期三 15:38:36
yopt (n)
10
153
2.2 维纳滤波器的离散形式—时域解
2.2.2 维纳—霍夫(Wiener-Hopf)方程 重写正交性原理公式(2.2.15):
15:38:36
25
153
2.2 维纳滤波器的离散形式—时域解
v2(n)是一个零均值的白噪声,它的自相关函数矩阵呈对角形,
且
2 rv2v2 (, 0) 2
因此,输出信号的自相关Ryy为
2014年11月26日星期三
15:38:36
26
153
2.2 维纳滤波器的离散形式—时域解
(3) 计算输出信号与期望信号的互相关函数矩阵。 由于两个信 号都是实信号,故 ryd(m)=E[y(n)d(n-m)]=E[y(n)x1(n-m) =E[(x(n)+v2(n))x1(n-m)]=E[x(n)x1(n-m)] m=0, 1 根据图2.2.2系统H2(z)的输入与输出的关系, 有 x1(n)-b1x(n-1)=x(n) 这样 x1(n)=x(n)+b1x(n-1)
2014年11月26日星期三 15:38:36 3
153
2.1 引 言
三种估计形式:
(1) 预测问题:已知x(n-1), x(n-2), …, x(n-m),估计s(n+N), N≥0 (2)过滤或滤波:已知x(n-1), x(n-2), …, x(n-m) ,估计s(n) (3)平滑或内插: 已知x(n-1), x(n-2), …, x(n-m),估计s(n-N), N≥1
差σ21=0.27,且b0=0.8458。x(n)的信号模型如图2.2.2(b)所示,
b1= -0.9458 。假定 v1(n) 与 v2(n) 、 x1(n) 与 y(n) 不相关,并都是实信 号。设计一个维纳滤波器,得到该信号的最佳估计,要求滤波器 是一长度为2的FIR滤波器。
2014年11月26日星期三
2014年11月26日星期三 15:38:36 12
h0rxx(0)+h1rxx(1)+…+hM-1rxx(M-1)=rxd(0) h0rxx(1)+ h2rxx(0)+…+ hM-1rxx(M-2)= rxd(1)
153
2.2 维纳滤波器的离散形式—时域解
维纳-霍夫方程( Wiener-Hopf )的矩阵形式:
153
2.2 维纳滤波器的离散形式—时域解
根据题意,画出维纳滤波器的框图,如图2.2.3所示。 用H1(z)和
H2(z)分别表示x1(n)和x(n)的信号模型,输入信号x(n)可以看作是 v1(n)通过H1(z)和H2(z)级联后的输出, H1(z)和H2(z)级联后的等 效系统用 H(z) 表示,输出信号y(n) 就等于 x(n) 和 v2(n) 之和。因此 求输出信号的自相关函数矩阵Ryy和输出信号与期望信号的互相 关矩阵Ryd是解决问题的关键。相关函数矩阵由相关函数值组成, 已知x(n)与v2(n)不相关,那么
维纳 滤波器
相关函数
H(z)或h(n)
平稳
解析形式
卡尔曼 滤波器
状态方程 量测方程
状态变量 估计值
平稳或 递推算法 非平稳
60 年代
2014年11月26日星期三
15:38:36
5ቤተ መጻሕፍቲ ባይዱ
153
2.2 维纳滤波器的离散形式—时域解
§2.2 维纳滤波器的离散形式—时域解 2.2.1 维纳滤波器时域求解的方法 考虑到系统的因果性,即h(n)=0,n<0 (2.2.2) 设期望信号为d(n),计算误差和均方误差为 e(n)=d(n) -y(n)=s(n) -y(n) (2.2.3) (2.2.4)
15:38:36
19
153
2.2 维纳滤波器的离散形式—时域解
v2(n) v1(n) x1(n) x1(n) x(n) y(n)
-b0
z£1
-b1
z£1
(a )
(b)
图 2.2.2 输入信号与观测数据的模型
2014年11月26日星期三
15:38:36
20
153
2.2 维纳滤波器的离散形式—时域解
说明:均方误差与h(n)是一个二次函数关系,因此存在极小值。
当滤波器工作于最佳状态时,均方误差取得最小值。
2014年11月26日星期三
15:38:36
18
153
2.2 维纳滤波器的离散形式—时域解
例2.2.1 设y(n)=x(n)+v2(n),v2(n)是一白噪声,方差σ22=0.1。 期望 信号 x1(n) 的信号模型如图 2.2.2 ( a )所示,其中白噪声 v1(n) 的方
2014年11月26日星期三 15:38:36 14
153
2.2 维纳滤波器的离散形式—时域解
%%%%%%%%%%%%%%%%%%%%%%%%%% % 设计维纳滤波器 tic % 观测信号自相关 [C, lags] = xcorr(x, N, 'biased'); % 自相关矩阵R_xx,N 阶滤波器 R_xx = toeplitz( C(N + 1 : end) ); % x,d 互相关函数R_xd R_xd = xcorr(d, x, N, 'biased'); R_xd = R_xd(N + 1 : end); % 维纳-霍夫方程 Wopt = inv(R_xx) * R_xd';
2014年11月26日星期三 15:38:36 16
153
2.2 维纳滤波器的离散形式—时域解
2.2.3
假定所研究的信号都是零均值的,滤波器为FIR型,长度 等于M,可以得到
(2.2.25)
2014年11月26日星期三 15:38:36 17
153
2.2 维纳滤波器的离散形式—时域解
进一步化简得到
2014年11月26日星期三
15:38:36
23
153
2.2 维纳滤波器的离散形式—时域解
(2) 计算输入信号和输出信号的自相关函数矩阵。根据自相关函
数、功率谱密度和时间序列信号模型的等价关系,已信号模型,
就可以求出自相关函数。这里,信号模型为
对应的差分方程为 x(n)+a1x(n-1)+a2x(n-2)=v1(n) 式中,a1=-0.1,a2=-0.8。由于v1(n)、v2(n)的均值为零,因此 x(n) 的均值为0。方程两边同乘以x*(n-m),并取数学期望,得 rxx(m)+a1rxx(m-1)+a2rxx (m-2)=0 m>0 (1) rxx(0)+ a1rxx(1)+a2rxx(2)=σ21
2014年11月26日星期三 15:38:36
m=0
(2)
24
153
2.2 维纳滤波器的离散形式—时域解
对方程(1)取m=1, 2,得到 rxx(1)+a1rxx(0)+a2rxx(1)=0 (3)
rxx(2)+a1rxx(1)+a2rxx(0)=0
方程(2)、(3)、(4)联立求解,得
(4)
2014年11月26日星期三
滤波的目的:利用滤波系统h(n)取出有用信号s(n), s(n)又称为
期望信号,h(n)就是估计器。
x( n ) s(n )+v(n )
h (n )
y( n )
ˆ( n ) s
主要问题 :设计滤波器 h(n) ,使滤波器输出 y(n) 是s(n) 的一个最
佳估计。采用不同的最佳准则,估计结果可能不同。这样的滤 波,通信中称为波形估计; 自动控制中,称为动态估计。
从噪声中提取信号、抑制噪声。
本章介绍维纳(Wiener)滤波器和卡尔曼(Kalman)滤波器。
通常可以将观测数据x(n)表示为信号s(n)与噪声v(n)之和。
s( n )
x(n) v(n )
x(n)=s(n)+v(n)
(2.1.1)
2014年11月26日星期三
15:38:36
2
153
2.1 引 言
153
2.2 维纳滤波器的离散形式—时域解
展开(2.2.8)式::
(2.2.9)
分别计算(2.2.9)每一项:
e(n) d (n) h j x(n j )
j 0
2014年11月26日星期三
15:38:36
8
153
2.2 维纳滤波器的离散形式—时域解
整理上面结果,得: (2.2.14) 因此,使均方误差最小的充要条件描述如下: E[x*(n-j)e(n)]=0 j=0, 1, 2, … (2.2.15)
对上式取共轭,利用 ryx(-k)=r*xy(k)可得维纳-霍夫方程: (2.2.20)
2014年11月26日星期三 15:38:36 11
153
2.2 维纳滤波器的离散形式—时域解
特殊情况下的维纳-霍夫方程: h(n) 是长度为 M 的因果序列,
或h(n)是长度为M的FIR滤波器。 (2.2.21) 上式取M个k值,得M个方程: k=0: k=1: … k=M-1: h0rxx(M-1)+ h1rxx (M-2)+…+hM-1rxx(0)= rxd(M-1)
2014年11月26日星期三
15:38:36
22
153
2.2 维纳滤波器的离散形式—时域解
(1) 求出期望信号的方差。根据图2.2.2(a),期望信号的时 间序列模型所对应的差分方程为
x1(n)=v1(n)-b0x1(n-1)
这里,b0=0.8458, 由于x1(n)的均值为零,其方差与自相关函数在 零点的值相等。
2.1 引言 2.2 维纳(Weiner)滤波器的离散时域解 2.3 离散维纳滤波器的z域解 2.4 维纳预测 2.5 卡尔曼(Kalman)滤波
2014年11月26日星期三
15:38:36
1
153
2.1 引 言
§2.1 引 言
随机信号处理讨论的滤波问题 :就是一个估计问题,或者说是
(2.2.23)
维纳滤波器的最佳解: (2.2.24) 存在问题:求维纳滤波器的时域因果解,需要矩阵求逆,计
算量大(M3),不是一个有效的方法。
2014年11月26日星期三 15:38:36 13
153
2.2 维纳滤波器的离散形式—时域解
clc;close all;clear all; %% 信号产生 % 观测点数 N = 2000; n = linspace(0, 1200, N); % 信号 d = 2 * sin(pi * n / 128 + pi / 3); % 噪声(方差1.25) v = sqrt(1.25) * randn(N , 1); % 观测样本值 x = d' + v;
结论:均方误差达到最小值的充要条件是误差信号与任一进入
估计器的输入信号正交。这就是著名的正交性原理。
正交性原理的重要意义 :它提供了一个简便的数学方法,来判
断线性滤波系统是否工作于最佳状态。
2014年11月26日星期三 15:38:36 9
153
2.2 维纳滤波器的离散形式—时域解
假定滤波器工作于最佳状态,相应滤波器输出 yopt(n) 与估计 误差为eopt(n),则有 (2.2.17)
解 这个问题属于直接应用维纳-霍夫方程的典型问题, 其
关键在于求出观测信号的自相关函数和观测信号与期望信号的
互相关函数。
v2 ( n )
v1 ( n )
H1 (z)
x1 ( n )
H2 (z)
+ x( n ) + +
y( n )
图 2.2.3 维纳滤波器的框图
2014年11月26日星期三 15:38:36 21
2014年11月26日星期三 15:38:36 15
153
2.2 维纳滤波器的离散形式—时域解
% 滤波 y = filter(Wopt, 1, x); % 误差 En = d - y'; % 结果 figure, plot(n, d, 'r:', n, y, 'b-'); legend('维纳滤波信号真值','维纳滤波估计值'); title('期望信号 与滤波结果对比'); xlabel('观测点数');ylabel('信号幅度');figure, plot(n , En); title('维纳滤波误差曲线'); xlabel('观测点数');ylabel('误差幅度'); toc
2014年11月26日星期三 15:38:36 6
153
2.2 维纳滤波器的离散形式—时域解
下面求使均方误差最小的滤波器h(n)。 定义h(j)->hj,设hj=aj+jbj为复数,考虑复变量求导问题。
定义求导符号: 维纳滤波的极小值问题变为:
(2.2.7)
(2.2.8)
2014年11月26日星期三 15:38:36 7
维纳滤波WF与卡尔曼滤波KF:属于过滤或预测问题,采用最
小均方误差准则(MMSE)为最佳准则。
MMSE: Minimum Mean Square Error。
2014年11月26日星期三
15:38:36
4
153
2.1 引 言
维纳滤波器与卡尔曼滤波器比较:
名称 已知数据 x(n-1), x(n-2), ...... 前一个估 计值和最 近的观察 需要计算 计算结果 适用 条件 求解方法 提出 年代 40 年代
最佳状态下的信号关系(向量和几何表示):
d (n) eopt (n)
上式假定输入和期望信号为0均值。
2014年11月26日星期三 15:38:36
yopt (n)
10
153
2.2 维纳滤波器的离散形式—时域解
2.2.2 维纳—霍夫(Wiener-Hopf)方程 重写正交性原理公式(2.2.15):
15:38:36
25
153
2.2 维纳滤波器的离散形式—时域解
v2(n)是一个零均值的白噪声,它的自相关函数矩阵呈对角形,
且
2 rv2v2 (, 0) 2
因此,输出信号的自相关Ryy为
2014年11月26日星期三
15:38:36
26
153
2.2 维纳滤波器的离散形式—时域解
(3) 计算输出信号与期望信号的互相关函数矩阵。 由于两个信 号都是实信号,故 ryd(m)=E[y(n)d(n-m)]=E[y(n)x1(n-m) =E[(x(n)+v2(n))x1(n-m)]=E[x(n)x1(n-m)] m=0, 1 根据图2.2.2系统H2(z)的输入与输出的关系, 有 x1(n)-b1x(n-1)=x(n) 这样 x1(n)=x(n)+b1x(n-1)
2014年11月26日星期三 15:38:36 3
153
2.1 引 言
三种估计形式:
(1) 预测问题:已知x(n-1), x(n-2), …, x(n-m),估计s(n+N), N≥0 (2)过滤或滤波:已知x(n-1), x(n-2), …, x(n-m) ,估计s(n) (3)平滑或内插: 已知x(n-1), x(n-2), …, x(n-m),估计s(n-N), N≥1
差σ21=0.27,且b0=0.8458。x(n)的信号模型如图2.2.2(b)所示,
b1= -0.9458 。假定 v1(n) 与 v2(n) 、 x1(n) 与 y(n) 不相关,并都是实信 号。设计一个维纳滤波器,得到该信号的最佳估计,要求滤波器 是一长度为2的FIR滤波器。
2014年11月26日星期三
2014年11月26日星期三 15:38:36 12
h0rxx(0)+h1rxx(1)+…+hM-1rxx(M-1)=rxd(0) h0rxx(1)+ h2rxx(0)+…+ hM-1rxx(M-2)= rxd(1)
153
2.2 维纳滤波器的离散形式—时域解
维纳-霍夫方程( Wiener-Hopf )的矩阵形式:
153
2.2 维纳滤波器的离散形式—时域解
根据题意,画出维纳滤波器的框图,如图2.2.3所示。 用H1(z)和
H2(z)分别表示x1(n)和x(n)的信号模型,输入信号x(n)可以看作是 v1(n)通过H1(z)和H2(z)级联后的输出, H1(z)和H2(z)级联后的等 效系统用 H(z) 表示,输出信号y(n) 就等于 x(n) 和 v2(n) 之和。因此 求输出信号的自相关函数矩阵Ryy和输出信号与期望信号的互相 关矩阵Ryd是解决问题的关键。相关函数矩阵由相关函数值组成, 已知x(n)与v2(n)不相关,那么
维纳 滤波器
相关函数
H(z)或h(n)
平稳
解析形式
卡尔曼 滤波器
状态方程 量测方程
状态变量 估计值
平稳或 递推算法 非平稳
60 年代
2014年11月26日星期三
15:38:36
5ቤተ መጻሕፍቲ ባይዱ
153
2.2 维纳滤波器的离散形式—时域解
§2.2 维纳滤波器的离散形式—时域解 2.2.1 维纳滤波器时域求解的方法 考虑到系统的因果性,即h(n)=0,n<0 (2.2.2) 设期望信号为d(n),计算误差和均方误差为 e(n)=d(n) -y(n)=s(n) -y(n) (2.2.3) (2.2.4)
15:38:36
19
153
2.2 维纳滤波器的离散形式—时域解
v2(n) v1(n) x1(n) x1(n) x(n) y(n)
-b0
z£1
-b1
z£1
(a )
(b)
图 2.2.2 输入信号与观测数据的模型
2014年11月26日星期三
15:38:36
20
153
2.2 维纳滤波器的离散形式—时域解
说明:均方误差与h(n)是一个二次函数关系,因此存在极小值。
当滤波器工作于最佳状态时,均方误差取得最小值。
2014年11月26日星期三
15:38:36
18
153
2.2 维纳滤波器的离散形式—时域解
例2.2.1 设y(n)=x(n)+v2(n),v2(n)是一白噪声,方差σ22=0.1。 期望 信号 x1(n) 的信号模型如图 2.2.2 ( a )所示,其中白噪声 v1(n) 的方
2014年11月26日星期三 15:38:36 14
153
2.2 维纳滤波器的离散形式—时域解
%%%%%%%%%%%%%%%%%%%%%%%%%% % 设计维纳滤波器 tic % 观测信号自相关 [C, lags] = xcorr(x, N, 'biased'); % 自相关矩阵R_xx,N 阶滤波器 R_xx = toeplitz( C(N + 1 : end) ); % x,d 互相关函数R_xd R_xd = xcorr(d, x, N, 'biased'); R_xd = R_xd(N + 1 : end); % 维纳-霍夫方程 Wopt = inv(R_xx) * R_xd';
2014年11月26日星期三 15:38:36 16
153
2.2 维纳滤波器的离散形式—时域解
2.2.3
假定所研究的信号都是零均值的,滤波器为FIR型,长度 等于M,可以得到
(2.2.25)
2014年11月26日星期三 15:38:36 17
153
2.2 维纳滤波器的离散形式—时域解
进一步化简得到
2014年11月26日星期三
15:38:36
23
153
2.2 维纳滤波器的离散形式—时域解
(2) 计算输入信号和输出信号的自相关函数矩阵。根据自相关函
数、功率谱密度和时间序列信号模型的等价关系,已信号模型,
就可以求出自相关函数。这里,信号模型为
对应的差分方程为 x(n)+a1x(n-1)+a2x(n-2)=v1(n) 式中,a1=-0.1,a2=-0.8。由于v1(n)、v2(n)的均值为零,因此 x(n) 的均值为0。方程两边同乘以x*(n-m),并取数学期望,得 rxx(m)+a1rxx(m-1)+a2rxx (m-2)=0 m>0 (1) rxx(0)+ a1rxx(1)+a2rxx(2)=σ21
2014年11月26日星期三 15:38:36
m=0
(2)
24
153
2.2 维纳滤波器的离散形式—时域解
对方程(1)取m=1, 2,得到 rxx(1)+a1rxx(0)+a2rxx(1)=0 (3)
rxx(2)+a1rxx(1)+a2rxx(0)=0
方程(2)、(3)、(4)联立求解,得
(4)
2014年11月26日星期三
滤波的目的:利用滤波系统h(n)取出有用信号s(n), s(n)又称为
期望信号,h(n)就是估计器。
x( n ) s(n )+v(n )
h (n )
y( n )
ˆ( n ) s
主要问题 :设计滤波器 h(n) ,使滤波器输出 y(n) 是s(n) 的一个最
佳估计。采用不同的最佳准则,估计结果可能不同。这样的滤 波,通信中称为波形估计; 自动控制中,称为动态估计。
从噪声中提取信号、抑制噪声。
本章介绍维纳(Wiener)滤波器和卡尔曼(Kalman)滤波器。
通常可以将观测数据x(n)表示为信号s(n)与噪声v(n)之和。
s( n )
x(n) v(n )
x(n)=s(n)+v(n)
(2.1.1)
2014年11月26日星期三
15:38:36
2
153
2.1 引 言
153
2.2 维纳滤波器的离散形式—时域解
展开(2.2.8)式::
(2.2.9)
分别计算(2.2.9)每一项:
e(n) d (n) h j x(n j )
j 0
2014年11月26日星期三
15:38:36
8
153
2.2 维纳滤波器的离散形式—时域解
整理上面结果,得: (2.2.14) 因此,使均方误差最小的充要条件描述如下: E[x*(n-j)e(n)]=0 j=0, 1, 2, … (2.2.15)
对上式取共轭,利用 ryx(-k)=r*xy(k)可得维纳-霍夫方程: (2.2.20)
2014年11月26日星期三 15:38:36 11
153
2.2 维纳滤波器的离散形式—时域解
特殊情况下的维纳-霍夫方程: h(n) 是长度为 M 的因果序列,
或h(n)是长度为M的FIR滤波器。 (2.2.21) 上式取M个k值,得M个方程: k=0: k=1: … k=M-1: h0rxx(M-1)+ h1rxx (M-2)+…+hM-1rxx(0)= rxd(M-1)
2014年11月26日星期三
15:38:36
22
153
2.2 维纳滤波器的离散形式—时域解
(1) 求出期望信号的方差。根据图2.2.2(a),期望信号的时 间序列模型所对应的差分方程为
x1(n)=v1(n)-b0x1(n-1)
这里,b0=0.8458, 由于x1(n)的均值为零,其方差与自相关函数在 零点的值相等。