数字信号处理第2章_第1页
数字信号处理第2章_第2页
数字信号处理第2章_第3页
数字信号处理第2章_第4页
数字信号处理第2章_第5页
已阅读5页,还剩125页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章 维纳滤波和卡尔曼滤波 2.1 引言 2.2 维纳滤波器的离散形式时域解 2.3 离散维纳滤波器的z域解 2.4 维纳预测 2.5 卡尔曼(Kalman)滤波 2.1 引 言 在生产实践中,我们所观测到的信号都是受到噪声干扰的。如何最大限度地抑制噪声,并将有用信号分离出来,是信号处理中经常遇到的问题。换句话说,信号处理的目的就是要得到不受干扰影响的真正信号。相应的处理系统称为滤波器。这里, 我们只考虑加性噪声的影响,即观测数据x(n)是信号s(n)与噪声v(n)之和(如图2.1.1所示), 即 x(n)=s(n)+v(n) (2.1.1) 我们的目的是为了得到不含噪声的信号s(n),也称

2、为期望信号,若滤波系统的单位脉冲响应为h(n)(如图2.1.2所示), 系统的期望输出用yd(n)表示,yd(n)应等于信号的真值s(n);系统的实际输出用y(n)表示,y(n)是s(n)的逼近或估计,用公式表示为yd(n)=s(n), y(n) = 。因此对信号x(n)进行处理,可以看成是对期望信号的估计,这样可以将h(n)看作是一个估计器,也就是说, 信号处理的目的是要得到信号的一个最佳估计。那么, 采用不同的最佳准则,估计得到的结果可能不同。所得到的估计, 在通信中称为波形估计; 在自动控制中,称为动态估计。 图 2.1.1 观测信号的组成 图 2.1.2 信号处理的一般模型 假若已知x

3、(n-1), x(n-2), , x(n-m),要估计当前及以后时刻的信号值s(n+N), N0,这样的估计问题称为预测问题;若已知x(n-1), x(n-2), , x(n-m) ,要估计当前的信号值s(n),称为过滤或滤波; 根据过去的观测值x(n-1), x(n-2), , x(n-m),估计过去的信号值s(n-N), N1,称为平滑或内插。维纳(Wiener)滤波与卡尔曼(Kalman)滤波就是用来解决这样一类从噪声中提取信号的过滤或预测问题, 并以估计的结果与信号真值之间的误差的均方值最小作为最佳准则。 维纳滤波是在第二次世界大战期间,由于军事的需要由维纳提出的。1950年,伯特和香

4、农给出了当信号的功率谱为有理谱时,由功率谱直接求取维纳滤波器传输函数的设计方法。 维纳滤波器的求解,要求知道随机信号的统计分布规律(自相关函数或功率谱密度),得到的结果是封闭公式。采用谱分解的方法求解,简单易行,具有一定的工程实用价值,并且物理概念清楚,但不能实时处理;维纳滤波的最大缺点是仅适用于一维平稳随机信号。这是由于采用频域设计法所造成的, 因此人们逐渐转向在时域内直接设计最佳滤波器的方法。 2.2 维纳滤波器的离散形式时域解 2.2.1 维纳滤波器时域求解的方法根据线性系统的基本理论,并考虑到系统的因果性,可以得到滤波器的输出y(n), n=0, 1, 2, (2.2.2) 设期望信号

5、为d(n),误差信号e(n)及其均方值E|e(n)|2分别为 e(n)=d(n)-y(n)=s(n)-y(n) (2.2.) (2.2.) 要使均方误差为最小,须满足 (2.2.5) 这里,hj表示h(j); 同理,可以用aj,bj分别表示a(j),b(j)。由于误差的均方值是一标量,因此(2.2.5)式是一个标量对复函数的求导问题, 它等价于 j=0, 1, 2, (2.2.6) 记 j=0, 1, 2, (2.2.) 则(2.2.6)式可以写为 (2.2.8) 将(2.2.8)式展开 (2.2.9) 又根据(2.2.1)(2.2.3)式 将(2.2.10)(2.2.13)式代入(2.2.9

6、)式, 得 (2.2.14) 因此 Ex*(n-j)e(n)=0 j=0, 1, 2, (2.2.15) 上式说明,均方误差达到最小值的充要条件是误差信号与任一进入估计的输入信号正交,这就是通常所说的正交性原理。它的重要意义在于提供了一个数学方法,用以判断线性滤波系统是否工作于最佳状态。 下面计算输出信号与误差信号的互相关函数 (2.2.16) 假定滤波器工作于最佳状态,滤波器的输出yopt(n)与期望信号d(n)的误差为eopt(n),把(2.2.15)式代入上式,得到 (2.2.17) 图 2.2.1 期望信号、 估计值与误差信号的几何关系 图2.2.1表明在滤波器处于最佳工作状态时, 估

7、计值加上估计偏差等于期望信号, 即 注意我们所研究的是随机信号,图2.2.1中各矢量的几何表示应理解为相应量的统计平均或者是数学期望。再从能量的角度来看,假定输入信号和期望信号都是零均值, 应用正交性原理,则, 因此在滤波器处于最佳状态时, 估计值的能量总是小于等于期望信号的能量。 2.2.2 维纳霍夫方程将(2.2.15)式展开, 可以得到 将输入信号分配进去, 得到 k=0, 1, 2, 对上式两边取共轭,利用相关函数的性质: ryx(-k)=r*xy(k), 得到 k=0, 1, 2, (2.2.20) (2.2.20)式称为维纳-霍夫(WienerHopf)方程。当h(n)是一个长度为

8、M的因果序列(即h(n)是一个长度为M的FIR滤波器)时, 维纳-霍夫方程表述为 k=0, 1, 2, (2.2.21) 把k的取值代入(2.2.21)式, 得到 当k=0时,h1rxx(0)+h2rxx(1)+hMrxx(M-1)=rxd(0)当k=1时, h1rxx(1)+ h2rxx(0)+ hMrxx(M-2)= rxd(+1) 当k=M-1时, h1rxx(M-1)+ h2rxx (M-2)+hMrxx(0)= rxd(M-1) (2.2.22) 定义 (2.2.22)式可以写成矩阵的形式, 即 (2.2.23) 对上式求逆,得到 (2.2.24) 上式表明已知期望信号与观测数据的互

9、相关函数及观测数据的自相关函数时,可以通过矩阵求逆运算, 得到维纳滤波器的最佳解。同时可以看到,直接从时域求解因果的维纳滤波器, 当选择的滤波器的长度M较大时, 计算工作量很大, 并且需要计算Rxx的逆矩阵,从而要求的存贮量也很大。此外, 在具体实现时,滤波器的长度是由实验来确定的,如果想通过增加长度提高逼近的精度,就需要在新M基础上重新进行计算。因此,从时域求解维纳滤波器,并不是一个有效的方法。 2.2.3 估计误差的均方值 假定所研究的信号都是零均值的,滤波器为FIR型,长度等于M,将(2.2.2)式和(2.2.3)式代入(2.2.4)式,可以得到 (2.2.25) 上式可以进一步化简得到

10、 可以看出, 均方误差与滤波器的单位脉冲响应是一个二次函数关系。由于单位脉冲响应h (n)为M维向量,因此均方误差是一个超椭圆抛物形曲面,该曲面有极小点存在。当滤波器工作于最佳状态时, 均方误差取得最小值。将(2.2.24)式代入(2.2.26)式,得到最小均方误差 (2.2.27) 例2.2.1 设y(n)=x(n)+v2(n),v2(n)是一白噪声,方差22=0.1。 期望信号x1(n)的信号模型如图2.2.2(a)所示,其中白噪声v1(n)的方差21=0.27,且b0=0.8458。x(n)的信号模型如图2.2.2(b)所示,b1=0.9458。假定v1(n)与v2(n)、x1(n)与y

11、(n)不相关,并都是实信号。设计一个维纳滤波器,得到该信号的最佳估计,要求滤波器是一长度为2的FIR滤波器。 图 2.2.2 输入信号与观测数据的模型 解 这个问题属于直接应用维纳-霍夫方程的典型问题, 其关键在于求出观测信号的自相关函数和观测信号与期望信号的互相关函数。 图 2.2.3 维纳滤波器的框图 根据题意,画出这个维纳滤波器的框图,如图2.2.3所示。 用H1(z)和H2(z)分别表示x1(n)和x(n)的信号模型,那么滤波器的输入信号x(n)可以看作是v1(n)通过H1(z)和H(z)级联后的输出, H1(z)和H(z)级联后的等效系统用H(z)表示,输出信号y(n)就等于x(n)

12、和v2(n)之和。因此求出输出信号的自相关函数矩阵Ryy和输出信号与期望信号的互相关矩阵Ryd是解决问题的关键。相关函数矩阵由相关函数值组成,已知x(n)与v2(n)不相关,那么 (1) 求出期望信号的方差。根据图2.2.2(a),期望信号的时间序列模型所对应的差分方程为 x1(n)=v1(n)-b0 x1(n-1) 这里,b0=0.8458, 由于x1(n)的均值为零,其方差与自相关函数在零点的值相等。 (2) 计算输入信号和输出信号的自相关函数矩阵。根据自相关函数、功率谱密度和时间序列信号模型的等价关系,已知时间序列信号模型,就可以求出自相关函数。这里,信号的模型H(z)可以通过计算得到。

13、 这是一个二阶系统,所对应的差分方程为 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 m0 (1)rxx(0)+ a1rxx(1)+a2rxx(2)=21 m=0 (2) 对方程(1)取m=1, 2,得到 rxx(1)+a1rxx(0)+a2rxx(1)=0 (3)rxx(2)+a1rxx(1)+a2rxx(0)=0(4) 方程(2)、(3)、(4)联立求解,得 至

14、此, 输入信号的自相关矩阵Rxx可以写出: v2(n)是一个零均值的白噪声,它的自相关函数矩阵呈对角形, 且 ,因此,输出信号的自相关Ryy为 (3) 计算输出信号与期望信号的互相关函数矩阵。 由于两个信号都是实信号,故 ryd(m)=Ey(n)d(n-m)=Ey(n)x1(n-m)=E(x(n)+v2(n)x1(n-m)=Ex(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) 这样 ryd(m) =Ex(n)x1(n-m)=Ex(n)(x(n-m)+b1x(n-1-m

15、) =rxx(m)+b1rxx(m-1) 将m=0, m=1代入上式, 得 ryd(0)=rxx(0)+b1rxx(-1)=1-0.94580.5=0.5272ryd(1)=rxx(1)+ b1rxx(0)=0.5-0.94581=-0.4458 因此,输出信号与期望信号的互相关Ryd为 求出输出信号自相关的逆矩阵, 并乘以Ryd, 就可以得到维纳滤波器的最佳解Wopt:把Wopt代入(2.2.27)式,可以计算出该维纳滤波达到最佳状态时均方误差,即取得了最小值E|e(n)|2min, 2.3 离散维纳滤波器的z域解 若不考虑滤波器的因果性,(2.2.20)式可以写为 设定d(n)=s(n),

16、对上式两边做Z变换,得到 Sxs(z)=Hopt(z)Sxx(z) 假设信号和噪声不相关,即rsv(m)=0,则 Sxs(z)=Sss(z)Sxx(z)=Sss(z)+Svv(z) (2.3.2)式可以写成 (2.3.5)式表示,当噪声为0时,信号全部通过;当信号为0时, 噪声全部被抑制掉,因此维纳滤波确有滤除噪声的能力。把信号的频谱用Pss(ej)表示,噪声的频谱用Pvv(ej)表示,那么非因果的维纳滤波器的传输函数Hopt(ej)的幅频特性如图2.3.1所示。 Pss(ej)0, Pvv(ej)=0 Pss(ej)0, Pvv(ej) 0 Pss(ej)=0, Pvv(ej) 0 然而实际

17、的系统都是因果的。对于一个因果系统,不能直接转入频域求解的原因是由于输入信号与期望信号的互相关序列是一个因果序列,如果能够把因果维纳滤波器的求解问题转化为非因果问题,求解方法将大大简化。那么怎样把一个因果序列转化为一个非因果序列呢? 图 2.3.1 非因果维纳滤波器的传输函数的幅频特性 回顾前面讲到的时间序列信号模型,假设x(n)的信号模型B(z)已知(如图2.3.2(a)所示),求出信号模型的逆系统B-1(z), 并将x(n)作为输入,那么逆系统B-1(z)的输出(n)为白噪声。一般把信号转化为白噪声的过程称为白化,对应的滤波器称为白化滤波器(如图2.3.2(b)所示)。 图 2.3.2 x

18、(n)的时间序列信号模型及其白化滤波器 具体思路如图2.3.3所示。用白噪声作为待求的维纳滤波器的输入,设定1/B(z)为信号x(n)的白化滤波器的传输函数,那么维纳滤波器的传输函数G(z)的关系为 (2.3.7) 因此,维纳滤波器的传输函数H(z)的求解转化为G(z)的求解。 图 2.3.3 维纳滤波解题思路 2.3.1 非因果维纳滤波器的求解 假设待求维纳滤波器的单位脉冲响应为(n),期望信号d(n)=s(n),系统的输出信号y(n)=s(n),g(n)是G(z)的逆Z变换, 如图2.3.3所示。 (2.3.9) 可以看出,均方误差的第一项和第三项都是非负数, 要使均方误差为最小,当且仅当

19、 -k (2.3.10) 因此g(n)的最佳值为 -k (2.3.11) 对上式两边同时做Z变换,得到 (2.3.12) 这样,非因果维纳滤波器的最佳解为 (2.3.13) 因为s(n)=s(n)*(n),且x(n)=(n)*b(n),根据相关卷积定理(1.4.15)式, 得到 rxs(m)=rs(m)*b(-m) (2.3.14) 对上式两边做Z变换,得到 Sxs (z)=Ss(z)B(z-1) 因此 (2.3.15) 将上式代入(2.3.13)式,并根据x(n)的信号模型,得到非因果的维纳滤波器的复频域最佳解的一般表达式 (2.3.16) 假定信号与噪声不相关,即当Es(n)v(n)=0时

20、,有 rxs(m)=E(s(n)+v(n)*s(n+m)=rss(m)rxx(m)=E(s(n)+v(n)*(s(n+m)+v(n+m)=rss(m)+rvv(m) 对上边两式做Z变换, 得到 Sxs(z)=Sss(z) Sxx(z)=Sss(z)+Svv(z) (2.3.17) (2.3.18) 把(2.3.17)式代入(2.3.15)式, 得到 (2.3.19) 将(2.3.18)式和(2.3.19)式代入(2.3.16)式, 得到信号和噪声不相关时,非因果维纳滤波器的复频域最佳解和频率响应分别为 (2.3.20) (2.3.21) 下面我们推出该滤波器的最小均方误差E|e(n)|2min

21、的计算, 重新写出(2.3.9)式的最佳解 根据围线积分法求逆Z变换的公式, rss(m)用下式表示: (2.3.22) 得出 (2.3.23) 由复卷积定理 (2.3.24) 取y(n)=x(n), 有 (2.3.25) 因此 (2.3.26) 把(2.3.23)式和(2.3.26)式代入(2.3.9)式, 得到 (2.3.27) 将(2.3.19)式代入上式, 得到 (2.3.28) 因为实信号的自相关函数是偶函数,即rss(m)=rss(-m),因此 Sss(z)=Sss(z-1) 假定信号与噪声不相关,Es(n)v(n)=0, 则 (2.3.30) 2.3.2 因果维纳滤波器的求解 若

22、维纳滤波器是一个因果滤波器, 要求 g(n)=0 n0 则滤波器的输出信号 估计误差的均方值 E|e(n)|2=E|s(n)-y(n)|2 (2.3.32) (2.3.31) 类似于(2.3.9)式的推导,得到 (2.3.33) 要使均方误差取得最小值, 当且仅当 (2.3.34) 令 (2.3.35) (2.3.36) 又由(2.3.15)式得到 (2.3.37) 所以因果维纳滤波器的复频域最佳解为 (2.3.38) 维纳滤波的最小均方误差为 (2.3.39) 比较(2.3.28)式和(2.3.39)式,可以看出因果维纳滤波器的最小均方误差与非因果维纳滤波器的最小均方误差的形式相同,但公式中

23、的Hopt(z)的表达式不同, 分别参见(2.3.16) 式和(2.3.38)式。 前面已经导出, 对于非因果情况,对于因果情况, 比较两式,它们的第二项求和域不同,因为因果情况下,k=0+, 因此可以说明非因果情况的E|e(n)|2min一定小于等于因果情况E|e(n)|2min。在具体计算时,可以选择单位圆作为积分曲线, 应用留数定理, 计算积分函数在单位圆内的极点的留数来得到。 通过前面的分析, 因果维纳滤波器设计的一般方法可以按下面的步骤进行: (1) 根据观测信号x(n)的功率谱求出它所对应的信号模型的传输函数,即采用谱分解的方法得到B(z)。具体方法为Sxx(z)=2B(z)B(z

24、-1),把单位圆内的零极点分配给B(z),单位圆外的零极点分配给B(z-1),系数分配给2。 (2)求的Z反变换,取其因果部分再做Z变换,即舍掉单位圆外的极点,得 (3) 积分曲线取单位圆,应用(2.3.38)式和(2.3.39)式,计算Hopt(z), E|e(n)|2min。 。 例 2.3.1 已知 信号和噪声不相关,即rsv(m)=0,噪声v(n)是零均值、单位功率的白噪声(2v=1,mv=0),求Hopt(z)和E|e(n)|2min。 解 根据白噪声的特点得出Svv(z)=1, 由噪声和信号不相关, 得到rxx(m)=rss(m)+rvv(m)。 对上式两边做Z变换,并代入已知条件

25、,对x(n)进行功率谱分解:考虑到B(z)必须是因果稳定的系统,得到 (1) 首先分析物理可实现情况,应用公式(2.3.38):令 F(z)的极点为0.8和2,考虑到因果性、稳定性,仅取单位圆内的极点zi=0.8, f(n)为F(z)的Z反变换。用Res表示留数,应用留数定理,有 取因果部分, f+(n)=0.60.8nu(n) 令 单位圆内只有极点Zi=0.5, 未经滤波器的均方误差 (2) 对于非物理可实现情况, 应用公式(2.3.20)和(2.3.28), 有 令 单位圆内有两个极点0.8和0.5, 应用留数定理,有 比较两种情况下的最小均方误差,可以看出非物理可实现情况的最小均方误差小

26、于物理可实现情况的均方误差。 2.4 维 纳 预 测 2.4.1 维纳预测的计算 在维纳滤波中,期望的输出信号yd(n)=s(n),实际的输出为y(n)=s(n)。在维纳预测中,期望的输出信号yd(n)=s(n+N), 实际的输出y(n)=s(n+N)。前面已经推导得到维纳滤波的最佳解为 (2.4.1) 其中,Sxx(z)是观测数据的功率谱;Sxyd(z)是观测数据与期望信号的互功率谱,即互相关函数rxyd(k)的傅里叶变换 (2.4.2) 对应于维纳预测器, 其输出信号y(n)和预测误差信号e(n+N)分别为 (2.4.3) (2.4.4) 同理,要使预测误差的均方值为最小,须满足 (2.4

27、.5) 其中,hk表示h(k)。 观测数据与期望的输出的互相关函数rxyd(k)和互谱密度Sxyd(z)分别为 (2.4.6) (2.4.7) 这样,非因果维纳预测器的最佳解为 (2.4.8) 因果维纳预测器的最佳解为 (2.4.9) 维纳预测的最小均方误差为 从上面分析可以看出, 维纳预测的求解和维纳滤波器的求解方法是一致的。 2.4.2 纯预测 假设x(n)=s(n)+v(n),式中v(n)是噪声,且v(n)=0,期望信号为s(n+N), N0,此种情况称为纯预测。 假定维纳预测器是因果的,仍设s(n)与v(n)不相关,纯预测情况下的输入信号的功率谱及维纳预测器的最佳解分别为 (2.4.1

28、1) (2.4.12) 纯预测器的最小均方误差为 (2.4.13) 应用复卷积定理 (2.4.14) 取y(n)=x(n) (2.4.15) 将上式代入(2.4.13)式, 并考虑到b(n)是因果系统,得到 可以看到,随着N增加,E|e(n+N)|2min也增加。这一点也容易理解,当预测的距离越远,预测的效果越差,偏差越大,因而E|e(n+N)|2min越大。 例2.4.1 已知 其中-1a1, 求: (1) 最小均方误差下的s(n+N); (2) E|e(n+N)|2min。 解 首先对Sxx(z)进行功率谱分解。因为 所以 其次,求出B(z)的Z反变换 然后,应用Z变换的性质,得到 (2.

29、4.17) 图 2.4.1 纯预测维纳滤波器 由Hopt(z)=aN,此时可以把纯预测的维纳滤波器看作是一个线性比例放大器(如图2.4.1所示)。 根据x(n)的信号模型 可以写出x(n)的时间序列模型所对应的输入输出方程 x(n)=(n)+ax(n-1) 将信号x(n)通过纯预测维纳滤波器,随着时间的递增,可以得到 当N=1时,x(n+1)=ax(n)=as(n)当N=2时,x(n+2)=ax(n+1)=a2s(n) 当N=N时,x(n+N)=ax(N+n-1)=aNs(n) (2.4.19) 以上推导结果相当于在n+N时刻,(n+N)=0,即去掉噪声时的结果。设N0时,(n+N)=0,则

30、x(n+N)=ax(n+N-1) 此时,从统计意义上讲,当N0时,白噪声信号(n+N)对x(n)无影响。 这一结论还可以推广,对于任何均值为零的x(n),要估计s (n+N)时,只需要考虑B(z)的惯性,即可认为(n+N)=0,N0, 这样估计出来的结果将有最小均方误差。 终值定理 表明一个信号的功率谱在单位圆上没有极点与信号均值等于0等价,因此对于功率谱在单位圆上没有极点的信号,要估计s(n+N)时,可认为(n+N)=0, N0,即仅需要考虑B(z)的惯性,这样估计出来的结果将有最小均方误差。 2.4.3 一步线性预测的时域解 已知x(n-1), x(n-2),,x(n-p), 预测x(n)

31、,假设噪声v(n)=0,这样的预测称为一步线性预测。设定系统的单位脉冲响应为h(n),根据线性系统的基本理论,输出信号 令apk=-h(k),则 (2.4.21) 预测误差 (2.4.22) 其中, ap0=1, (2.4.23) 要使均方误差为最小值,要求 同维纳滤波的推导过程一样, 可以得到 Ee*(n)x(n-l)=0 l=1, 2, , p (2.4.24) 把(2.4.22)式代入(2.4.24)式, 得到 l=1, 2, , p (2.4.25) 由于预测器的输出 是输入信号的线性组合,参见(2.4.21)式, 得到 (2.4.26) (2.4.24)式说明误差信号与输入信号满足正

32、交性原理, (2.4.26)式说明预测误差与预测的信号值同样满足正交性原理。 预测误差的最小均方值 (2.4.27) 将(2.4.25)式和(2.4.27)式联立, 得到下面的方程组: (2.4.28) 将方程组写成矩阵形式 (2.4.29) 这就是有名的Yule-Walker方程,可以看出Yule-Walker方程具有以下特点: (1) 除了第一个方程外,其余都是齐次方程; (2) 与维纳-霍夫方程相比,不需要知道观测数据x(n)与期望信号s(n)的互相关函数。 该方程组有p+1个方程,对应地,可以确定apk,k=1, 2, , p和Ee2(n)min,共计p+1个未知数,因此可用来求解AR

33、模型参数。这就是后面要介绍的AR模型法进行功率谱估计的原理,它再一次揭示了时间序列信号模型、功率谱和自相关函数描述一个随机信号的等价性。 例2.4.2 已知 x(n)为AR模型,求AR模型参数。 解 求解AR模型参数包括确定AR模型的阶数p及系数ap1,ap2, ,app。 首先对Sxx(z)做傅里叶反变换,得到x(n)的自相关函数rxx(m), rxx(m)=0.8|m| 采用试验的方法确定模型阶数p。首先取p=2, 各相关函数值由上式计算,并代入(2.4.29)式 计算得到 a1=-0.8, a2=0, 2=0.36 如果取p=3,可计算出a1=-0.8, a2=a3=0, 2=0.36,

34、说明AR模型的阶数只能是一阶的。采用谱分解的方法,即对Sxx(z)进行谱分解,得到的模型也是一阶的,其时间序列模型和差分方程为 2.5 卡尔曼(Kalman)滤波 卡尔曼滤波是用状态空间法描述系统的,由状态方程和量测方程所组成。卡尔曼滤波用前一个状态的估计值和最近一个观测数据来估计状态变量的当前值, 并以状态变量的估计值的形式给出。卡尔曼滤波具有以下的特点: (1) 算法是递推的,且状态空间法采用在时域内设计滤波器的方法,因而适用于多维随机过程的估计;离散型卡尔曼算法适用于计算机处理。 (2) 用递推法计算,不需要知道全部过去的值,用状态方程描述状态变量的动态变化规律,因此信号可以是平稳的,也

35、可以是非平稳的, 即卡尔曼滤波适用于非平稳过程。 (3) 卡尔曼滤波采取的误差准则仍为估计误差的均方值最小。 2.5.1 卡尔曼滤波的状态方程和量测方程 假设某系统k时刻的状态变量为xk,状态方程和量测方程(也称为输出方程)表示为 (2.5.1a) (2.5.1b) 其中,k表示时间,这里指第k步迭代时,相应信号的取值;输入信号k是一白噪声,输出信号的观测噪声vk也是一个白噪声, 输入信号到状态变量的支路增益等于1,即B=1;A表示状态变量之间的增益矩阵,可以随时间发生变化,用Ak表示第k步迭代时, 增益矩阵A的取值; C表示状态变量与输出信号之间的增益矩阵,可以随时间变化, 第k步迭代时,

36、取值用Ck表示,其信号模型如图2.5.1所示。 将状态方程中时间变量k用k-1代替,得到的状态方程和量测方程如下所示: xk=Ak-1xk-1+k-1 yk=Ckxk+vk 其中,xk是状态变量;k-1表示输入信号是白噪声; vk是观测噪声; yk是观测数据。 图 2.5.1 卡尔曼滤波器的信号模型 为了后面的推导简单起见,假设状态变量的增益矩阵A不随时间发生变化,k,vk都是均值为零的正态白噪声,方差分别是Qk和Rk,并且初始状态与k,vk都不相关,表示相关系数。即其中 2.5.2 卡尔曼滤波的递推算法 卡尔曼滤波是采用递推的算法实现的,其基本思想是先不考虑输入信号k和观测噪声vk的影响,得

37、到状态变量和输出信号(即观测数据)的估计值,再用输出信号的估计误差加权后校正状态变量的估计值,使状态变量估计误差的均方值最小。 因此, 卡尔曼滤波的关键是计算出加权矩阵的最佳值。 当不考虑观测噪声和输入信号时,状态方程和量测方程为 (2.5.4) (2.5.5) 显然,由于不考虑观测噪声的影响,输出信号的估计值与实际值是有误差的,用 表示 (2.5.6) 为了提高状态估计的质量,用输出信号的估计误差 来校正状态变量 (2.5.7) 其中,Hk为增益矩阵,实质是一加权矩阵。经过校正后的状态变量的估计误差及其均方值分别用 和Pk表示,把未经校正的状态变量的估计误差的均方值用 表示 (2.5.8)

38、(2.5.9) (2.5.10) 卡尔曼滤波要求状态变量的估计误差的均方值Pk为最小, 因此卡尔曼滤波的关键就是要得到Pk与Hk的关系式,即通过选择合适的Hk,使Pk取得最小值。 首先推导状态变量的估计值 和状态变量的估计误差 , 然后计算 的均方值Pk ,并通过化简Pk ,得到一组卡尔曼滤波的递推公式。 将(2.5.3)、 (2.5.5)式代入(2.5.7)式 (2.5.11) 同理,状态变量的估计误差 为 (2.5.12) 由上式可以看出,状态变量的估计误差 由三部分组成, 可记为 其中 (2.5.13b) (2.5.13c) (2.5.13d) 那么,状态变量的估计误差的均方值Pk就由9

39、项组成:(2.5.14a) 其中 (2.5.14b) (2.5.14d) (2.5.14c) 下面化简Pk的表达式,根据假设的条件,状态变量的增益矩阵A不随时间发生变化,起始时刻为k0,则(2.5.2)式经过迭代, 得到 令l=k-k0-j,得到 取k0=0,k=k-1,得到 (2.5.15) 所以xk-1仅依赖于x0,0, 1,k-2,与k-1不相关,即 (2.5.16) 又据(2.5.7)式和(2.5.3)式, 得 (2.5.17) 所以 仅依赖于xk-1,vk-1,而与vk不相关,即 (2.5.18) (2.5.19) 把(2.5.15)(2.5.19)式代入(2.5.14)式, Pk中

40、的9项可以分别化简为 (2.5.20a) (2.5.20b) (2.5.20c) (2.5.20d) (2.5.20e) (2.5.20f) (2.5.20g) (2.5.20h) (2.5.20j) 也就是说,Pk仅有其中的三项不为零, 化简成 (2.5.21) 为了进一步化简Pk,推导未经误差校正的状态估计误差的均方值Pk,由下面推导结果可以看出,Pk是一对称矩阵,满足Pk=(Pk)T。 (2.5.22) 将(2.5.22)式代入(2.5.21)式,即把Pk代入Pk, (2.5.23) 其中, 是正定阵,记 (2.5.24) 令 (2.5.25) 将上式代入(2.5.23)式,得 (2.5

41、.26) 将(2.5.26)式后三项配对 (2.5.27) 第二项和第三项均与Hk无关,第一项为一半正定阵,因此使Pk最小的Hk应满足 (2.5.28) (2.5.29) 将Hopt代入Pk,得到最小均方误差阵 将(2.5.7)、 (2.5.22)、 (2.5.29)式和(2.5.30)式联立, 得到一组卡尔曼递推公式 (2.5.30) (2.5.31a) (2.5.31b) (2.5.31c) (2.5.31d) 假设初始条件Ak,Ck,Qk,Rk,yk,xk-1, Pk-1已知,其中x0=Ex0, P0=varx0, 那么,递推流程见图2.5.2。 图 2.5.2 卡尔曼滤波递推流程 例2

42、.5.1 已知 信号与噪声不相关,yk=xk+vk,求卡尔曼信号模型中的Ak和Ck。 解 由yk=xk+vk知道,Ck=1。 对Sxx(z)进行谱分解,确定x(n)的信号模型B(z),从而确定Ak。 根据Sxx(z) =2B(z)B(z-1),得出 上式与卡尔曼状态方程相比,不同之处在于输入信号(n)的时间不同,因此将Sxx(z)改写为 再对Sxx(z)进行谱分解,得到 (解毕) 卡尔曼滤波和维纳滤波都是采用均方误差最小的准则来实现信号滤波的,但维纳滤波是在信号进入了稳态后的分析, 卡尔曼滤波是从初始状态采用递推的方法进行滤波。对于平稳随机信号,当过渡过程结束以后,卡尔曼滤波与维纳滤波的结果间

43、存在什么关系呢? 下面举一例说明。 例2.5.2 已知在k=0时开始观察yk, yk=xk+vk,用卡尔曼过滤的计算公式求xk, 并与维纳过滤的方法进行比较。 解 (1) 由x(n)功率谱及量测方程,确定卡尔曼递推算法。 首先对Sxx(z)进行功率谱分解,由例2.5.1的结果,得到卡尔曼滤波的状态方程为 xk=0.8xk-1+k-1,确定Ak=0.8 由量测方程yk=xk+vk, 确定Ck=1, 将参数矩阵Ak,Ck,Rk代入卡尔曼递推公式(2.5.30),得到 (2.5.32a) (2.5.32b) (2.5.32c) (2.5.32d) (2) 求出卡尔曼滤波的输出。由卡尔曼递推公式,以及

44、 ,P0=varx0=1, 可得到Pk,Hk,Pk及xk(k表示迭代次数),迭代流程为: 由具体迭代结果可以看出,原先的增益矩阵Ak,由于只选择了一个状态变量, 变成了加权系数。 见表2.5.1。 表2.5.1 Kalman滤波迭代结果 (3) 求出卡尔曼滤波的稳态解。将(2.5.32b)式代入方程(2.5.32d), 得到第5个方程 (2.5.32e) 将方程(2.5.32c) 、(2.5.32e) 代入方程(2.5.32d), 消去Pk, 可以得到Pk的递推关系: Pk=(1-Pk)0.64 Pk-1+0.36=0.64 Pk-1-0.64 Pk -1 Pk +0.36-0.36 Pk 化

45、简上式,得到 1.36Pk+0.64Pk-1Pk=0.64Pk-1+0.36 要求的是稳态解,因此将Pk, Pk-1都用P代替, 得到 根据P,可以确定达到稳态后的卡尔曼滤波的状态方程: (2.5.33) (4) 用维纳滤波的方法分析。采用功率谱分解的方法,得到x(n)的时间序列信号模型的传输函数H(z): 上式说明x是一阶AR模型,对H(z)做Z反变换得到 (2.5.34) 比较(2.5.33)式和(2.5.34)式,可以看出卡尔曼滤波的稳态解与维纳解是相等的。 (解毕) 通过上面的例题,可以看出维纳滤波是已知前p个观测数据及信号与噪声的相关函数,通过建立模型的方法分析的。卡尔曼滤波要求已知

46、前一个时刻的状态估计值x(k-1)和当前的观测值yk,由状态方程和量测方程递推得到结果。 维纳滤波的解以H(z)的形式给出,卡尔曼滤波是以状态变量的估计值给出解的形式。它们都采用均方误差最小的准则, 但卡尔曼滤波有一个过渡过程,其结果与维纳滤波不完全相同,但到达稳态后, 结果相同。 2.5.3 应用举例 下面举一个雷达跟踪目标物的例子说明卡尔曼滤波的应用。 雷达跟踪目标的基本原理是通过发射脉冲,根据接收到的脉冲与发射脉冲的时间间隔,来确定目标物的距离和速度。 由于干扰的影响,接收到的脉冲波形变化很大,那么一次的测量结果可能存在很大的误差。为了减小误差,往往采取发射一串脉冲的方法进行测量。 我们

47、知道,空间中的一点需要由径向距离和方位角来确定。 假设雷达跟踪的目标为飞行器,发射的脉冲时间间隔为T,在时间k,径向距离为R+(k),在时间k+1,距离为R+(k+1), 两者之间有秒的延时,因此T表示空间一次扫描的时间间隔。 平均距离用R表示,(k)和(k+1)表示对平均值的偏差。 假定偏差是统计随机的,均值为零, 那么可以写出距离方程 式中, 表示速度。用u表示加速度,则可以得到加速度方程 假定加速度u(k)是零均值的平稳白噪声,即满足 为了后面叙述方便,定义x(k)表示第k个雷达回波脉冲获得的目标距离,z(k)表示在第k个雷达脉冲进行数据处理之后的目标距离估计,z(k)表示在第k个雷达脉冲进行数据处理之

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论