维纳滤波和卡尔曼滤波ppt课件.ppt

上传人:小飞机 文档编号:1359125 上传时间:2022-11-13 格式:PPT 页数:110 大小:3.31MB
返回 下载 相关 举报
维纳滤波和卡尔曼滤波ppt课件.ppt_第1页
第1页 / 共110页
维纳滤波和卡尔曼滤波ppt课件.ppt_第2页
第2页 / 共110页
维纳滤波和卡尔曼滤波ppt课件.ppt_第3页
第3页 / 共110页
维纳滤波和卡尔曼滤波ppt课件.ppt_第4页
第4页 / 共110页
维纳滤波和卡尔曼滤波ppt课件.ppt_第5页
第5页 / 共110页
点击查看更多>>
资源描述

《维纳滤波和卡尔曼滤波ppt课件.ppt》由会员分享,可在线阅读,更多相关《维纳滤波和卡尔曼滤波ppt课件.ppt(110页珍藏版)》请在三一办公上搜索。

1、维纳滤波和卡尔曼滤波,5 卡尔曼(Kalman)滤波,1 引言,2 维纳滤波器的离散形式时域解,3 离散维纳滤波器的z域解,4 维纳预测,1 引 言,观测到的信号都是受到噪声干扰的。如何最大限度地抑制噪声,将有用信号提取出来,是信号处理基本的问题。信号处理的目的就是要得到不受干扰影响的真正信号。相应的处理系统称为滤波器。,这里,只考虑加性噪声的影响,即观测数据x(n)是信号s(n)与噪声v(n)之和,信号处理的目的是得到s(n),也称为期望信号,滤波系统的单位脉冲响应为h(n),系统的期望输出为yd(n),yd(n)应等于s(n);系统的实际输出为y(n),y(n)是s(n)的逼近或估计,yd

2、(n)=s(n),y(n) = 。,采用不同的最佳准则,估计得到的结果可能不同,对信号x(n)处理,可以看成是对期望信号的估计,可以将h(n)看作是估计器,信号处理的目的是要得到信号的一个最佳估计。,得到结果是封闭公式。采用谱分解的方法求解,简单易行,具有一定的工程实用价值,并且物理概念清楚,维纳滤波器的求解,要求知道随机信号的统计分布规律(自相关函数或功率谱密度),维纳滤波的最大缺点是仅适用于平稳随机信号,以估计结果与信号真值之间的误差的均方值最小作为最佳准则。最小均方误差准则(MMSE,Mininum Mean Square Error),2 维纳滤波器的离散形式时域解,根据线性系统的基本

3、理论,并考虑到系统的因果性,可以得到滤波器的输出y(n):,n = 0, 1, 2, ,设期望信号为d(n),误差信号及其均方值分别为:,2.1 维纳滤波器时域求解的方法,要使均方误差为最小,须满足,误差的均方值是标量,因此上式是一个标量对复函数的求导问题, 它等价于,记,j=0, 1, 2, ,则上式可以写为,展开得,j = 0, 1, 2, ,说明:均方误差达到最小值的充要条件是误差信号与任一进入估计的输入信号正交,这就是正交性原理。它的重要意义在于提供了一个数学方法,用以判断线性滤波系统是否工作于最佳状态。,因此,输出信号y(n)与误差信号e(n)的互相关函数,滤波器工作于最佳状态时的输

4、出为yopt(n),此时,输出yopt(n)与期望信号d(n)的误差为eopt(n),期望信号、估计值与误差信号的几何关系,当滤波器处于最佳工作状态时,估计值加上估计偏差等于期望信号,对于随机信号,上图中各矢量的几何表示为相应量的统计平均或者是数学期望。,假定输入信号x(n)和期望信号d(n)都是零均值, 应用正交性原理,因此在滤波器处于最佳状态时,估计值y(n)的能量总是小于等于期望信号d(n)的能量。,ryx(-k) = r*xy(k),k = 0, 1, 2, ,2.2 维纳霍夫方程,上式称为维纳-霍夫(WienerHopf)方程。,k=0, 1, 2, ,当k=0时,当h(n)是一个长

5、度为M的因果序列(即系统是一个长度为M的FIR滤波器)时, 维纳-霍夫方程表述为,当k=1时,当k=M-1时,可以写成矩阵的形式,已知期望信号与观测数据的互相关函数和观测数据的自相关函数时,可以通过矩阵求逆运算,得到维纳滤波器的最佳解。,同时可以看到,直接从时域求解因果的维纳滤波器,当选择的滤波器的长度M较大时,计算工作量很大,并且需要计算Rxx的逆矩阵,从而要求的存贮量也很大。此外,在具体实现时,滤波器的长度是由实验来确定的,如果想通过增加长度提高逼近的精度,就需要在新M基础上重新进行计算。因此,从时域求解维纳滤波器,并不是一个有效的方法。,假定所研究的信号都是零均值的,维纳滤波器为M长的F

6、IR型,估计的均方误差为:,2.3 估计误差的均方值,均方误差与滤波器的单位脉冲响应是一个二次函数关系。由于单位脉冲响应h(n)为M维向量,因此均方误差是一个M维超椭圆抛物形曲面,该曲面有极小点存在。当滤波器工作于最佳状态时,均方误差取得最小值。,例:设y(n)=x(n)+v2(n), v2(n)是白噪声, 方差22=0.1.期望信号x1(n)的信号模型如图(a)所示,其中白噪声v1(n)的方差21=0.27, b0=0.8458。x(n)的信号模型如图(b)所示,b1=0.9458。假定v2(n)与x(n)、x1(n)不相关,并都是实信号。设计一个维纳滤波器,得到该信号的最佳估计,要求滤波器

7、是一长度为2的FIR滤波器。,解,观测数据为y(n),期望信号为x1(n),m = 0, 1,计算输出信号与期望信号的互相关函数矩阵,该维纳滤波达到最佳状态时的均方误差,3 离散维纳滤波器的z域解,在时域设计维纳滤波器就是求解维纳-霍夫方程,1)求解该方程时需要计算自相关函数矩阵Rxx的逆矩阵,使得运算量很大。 2)滤波器的长度事先不能确定,当改变长度时,所有数据就需要重新进行计算。效率很低。 因此,维纳滤波器的设计和求解,一般是在频域和复频域进行。,若不考虑滤波器的因果性,设d(n)=s(n),对上式两边做z变换,得,-k,假设期望信号和噪声不相关,即rsv(m)=0,则,上式表示,当噪声为

8、0时,信号全部通过;当信号为0时,噪声全部被抑制掉,因此维纳滤波确有滤除噪声的能力。,图 非因果维纳滤波器的传输函数的幅频特性,然而实际的系统都是因果的。对于一个因果系统,不能直接转入频域求解的原因是由于输入信号与期望信号的互相关序列是一个因果序列,如果能够把因果维纳滤波器的求解问题转化为非因果问题,求解方法将大大简化。,j = 0, 1, 2, ,k = 0, 1, 2, ,假设观测数据x(n)的信号模型B(z)已知,求出信号模型的逆系统B-1(z),将x(n)作为输入,那么逆系统的输出(n)为白噪声。,回顾前面讲的时间序列信号模型,把信号转化为白噪声的过程称为白化,对应的滤波器称为白化滤波

9、器.,用白噪声作为维纳滤波器G(z)的输入,假设1/B(z)为信号x(n)的白化滤波器的传输函数,那么关于x(n)的维纳滤波器的传输函数H(z)表示为,因此,维纳滤波器H(z)的求解转化为G(z)的求解,图 维纳滤波解题思路,3.1 非因果维纳滤波器的求解,假设待求维纳滤波器的输入为(n),期望信号d(n)=s(n),系统的输出信号 ,g(n)是G(z)的逆z变换,均方误差为:,均方误差的第一项和第三项都是与g(k)无关的常数, 要使均方误差为最小,当且仅当,-k,因此g(k)的最佳值为,对上式两边同时做z变换,得,-k,因此,非因果维纳滤波器的最佳解为,根据相关卷积定理, 得,对上式两边做z

10、变换,得到,非因果的维纳滤波器的复频域最佳解的一般表达式,假定信号与噪声不相关,即Es(n)v(n)=0,得到信号和噪声不相关时,非因果维纳滤波器的复频域最佳解和频率响应分别为,下面推出在复频域(z域)计算维纳滤波器最小均方误差E|e(n)|2min的计算方法,维纳滤波器的最小均方误差不仅与输入信号的功率谱,而且与信号和噪声的功率谱乘积有关,也就是说,最小均方误差与信号和噪声功率谱的重叠部分的大小有关,维纳滤波器是一个因果滤波器时,有,g(n)=0 n0,则滤波器的输出为,类似于非因果时的推导,可得,3.2 因果维纳滤波器的求解,均方误差为:,要使均方误差取得最小值,当且仅当,双边序列,取其因

11、果部分,求解因果序列问题转化为求解非因果序列的问题,所以因果维纳滤波器的复频域最佳解为,对于非因果情况,对于因果情况,非因果情况的E|e(n)|2min一定小于等于因果情况E|e(n)|2min,(2)求的z反变换,取其因果部分再做z变换,即舍掉单位圆外的极点,得,因果维纳滤波器设计的步骤为:,(1)根据观测信号x(n)的功率谱求出所对应的信号模型的传输函数,即采用谱分解方法得到B(z)。方法为Sxx(z)=2B(z)B(z-1),单位圆内的零极点分配给B(z),单位圆外的零极点分配给B(z-1),系数分配2,(3),解,根据白噪声的特点得出Svv(z)=1, 由噪声和信号不相关, 得到rxx

12、(m)=rss(m)+rvv(m),(1) 首先分析物理可实现情况,观测数据的均方误差为,(2) 对于非物理可实现情况,有,可以看出非物理可实现情况的最小均方误差小于物理可实现情况的均方误差。,4 维 纳 预 测,Sxx(z)是观测数据的功率谱;Sxyd(z)是观测数据与期望信号的互功率谱,即互相关函数rxyd(k)的傅里叶变换,4.1 维纳预测的计算,在维纳滤波中,期望的输出信号yd(n)=s(n),实际的输出为 。在维纳预测中,期望的输出信号yd(n)=s(n+N),实际的输出 。前面已经推导得到维纳滤波的最佳解为,对应于维纳预测器,其输出信号y(n)和预测误差信号e(n+N)分别为,要使

13、预测误差的均方值为最小,须满足,其中,hk表示h(k),观测数据与期望的输出的互相关函数rxyd(k)和互功率谱密度Sxyd(z)分别为,非因果维纳预测器的最佳解为,因果维纳预测器的最佳解为,维纳预测的最小均方误差为,从上面分析可以看出,维纳预测的求解和维纳滤波器的求解方法是一致的。,假设x(n)=s(n)+v(n),式中v(n)是噪声,当v(n)=0,期望信号为s(n+N), N0,此种情况称为纯预测。,4.2 纯预测,假定维纳预测器是因果的,纯预测情况下的输入信号的功率谱及维纳预测器的最佳解分别为,纯预测器的最小均方误差为,应用复卷积定理,b(n)是因果系统,当预测的距离越远,预测的效果越

14、差,偏差越大,因而 越大。,解,对Sxx(z)进行功率谱分解,取因果,纯预测维纳滤波器,由Hopt(z)=aN,此时可以把纯预测的维纳滤波器看作是一个线性比例放大器。,可以写出x(n)所对应的输入输出差分方程,根据x(n)的时间序列信号模型,已知x(n-1), x(n-2),x(n-p),预测x(n),假设噪声v(n)=0,称为一步线性预测。设定系统的单位脉冲响应为h(n),则输出信号y(n)为,令apk= -h(k),则,预测误差,4.3 一步线性预测的时域解,其中,ap0=1,要使均方误差为最小值,要求,与维纳滤波的推导过程类似, 可以得到正交性原理,均方预测误差,将误差公式代入上式,由于

15、预测器的输出 是输入信号的线性组合,得,说明误差信号与输入信号满足正交性原理,预测误差与预测的信号值同样满足正交性原理。,预测误差的最小均方值,将方程组写成矩阵形式,这就是有名的Yule-Walker方程,Yule-Walker方程具有以下特点: (1) 除了第一个方程外,其余都是齐次方程; (2) 与维纳-霍夫方程相比,不需要知道观测数据x(n)与期望信号s(n)的互相关函数。 该方程组有p+1个方程,对应地,可以确定apk,k=1, 2, , p和Ee2(n)min,共计p+1个未知数,因此可用来求解AR模型参数。这就是后面要介绍的AR模型法进行功率谱估计的原理,它再一次揭示了时间序列信号

16、模型、功率谱和自相关函数描述一个随机信号的等价性。,对Sxx(z)做z反变换,得到x(n)的自相关函数rxx(m),rxx(m)=0.8|m|,采用试验的方法确定模型阶数p。先取p=2,代入Yule-Walker方程,求解AR模型参数包括确定AR模型的阶数p及系数ap1,ap2, ,app,解,计算得,a1= -0.8, a2= 0, 2=0.36,取p=3,可计算出a1= -0.8, a2=a3=0, 2=0.36,说明AR模型的阶数是一阶的。,采用谱分解的方法,即对Sxx(z)进行谱分解,得到的模型也是一阶的,其时间序列模型和差分方程为,设计维纳滤波器要求已知信号和噪声的统计特性。,维纳滤

17、波器最大缺点是仅适用于一维平稳随机信号,为了解决非平稳、多输入多输出随机序列的估计问题,卡尔曼提出了递推最优估计理论。,卡尔曼递推法根据前一个状态的估计值和最近的观测数据,递推估计当前的状态值。适合于计算机处理,可以处理多维、非平稳随机信号,已广泛的应用于很多领域。,2.5 卡尔曼(Kalman)滤波,估计一个包含测量噪声的未知数据的均值:假设顺序测得的数据为:,4) 依次类推,可得均值为:,1) 测得第一个数据 ,存入 ,计算均值为,2) 测得第二个数据 ,存入 的同时,计算均值,3) 测得第三个数据 ,存入 的同时,计算均值,随着测量数据的增加,需要存贮的数据越来越多,计算量也越来越大。,

18、1) 测得第一个数据 ,计算均值为: 存入均值 ,抛弃 ;,2) 测得第二个数据 ,计算均值为: 存入 ,抛弃 和 ;,4) 依次类推,可得均值为:,3) 测得第三个数据 ,计算均值为: 存入 ,抛弃 和 ;,递推法计算过程:,n时刻的估计值 可以由(n-1)时刻的估计值 和当前的观测值 加权确定:,显然递推法可以获得同非递推法相同的精度,但递推法不需要将过去的测量值都保存起来,只是将前一次的估值存起来,在获得新数据后,在估计中加以考虑计算就行了。,(1)算法是递推的,且状态空间法采用在时域内设计滤波器的方法,因而适用于多维随机过程的估计,适用于计算机处理。,卡尔曼滤波是用状态空间法描述系统,

19、由状态方程和量测方程组成。用前一个状态的估计值和最近一个观测数据来估计状态变量的当前值,并以状态变量的估计值的形式给出结果。卡尔曼滤波具有以下特点:,(2)用递推法计算不需要知道全部过去的值,用状态方程描述状态变量的动态变化规律,因此信号可以是平稳的,也可以是非平稳的。,(3)卡尔曼滤波采取的误差准则仍为最小均方误差准则,假设某系统k时刻的状态变量为xk,状态方程和量测方程(也称为输出方程)表示为,其中,k表示时间,这里指第k步迭代时,相应信号的取值;输入信号k是白噪声,输出信号的观测噪声vk也是白噪声, 输入信号到状态变量的支路增益等于1,即B=1;A表示状态变量之间的增益矩阵,可以随时间发

20、生变化,用Ak表示第k步迭代时,增益矩阵的取值,2.5.1 卡尔曼滤波的状态方程和量测方程,C表示状态变量与输出信号之间的增益矩阵,可以随时间变化,第k步迭代时,取值用Ck表示,其信号模型如下图所示。,卡尔曼滤波器的信号模型,为了后面的推导简单,假设状态变量的增益矩阵Ak不随时间发生变化,k,vk都是均值为零的正态白噪声,方差分别是Qk和Rk,并且状态变量的初始状态与k,vk都不相关,r表示相关系数。即,卡尔曼滤波是采用递推的算法实现的,其基本思想是先不考虑输入信号k和观测噪声vk的影响,得到状态变量和输出信号(观测数据)的估计值,再用输出信号的估计误差加权后校正状态变量的估计值,使状态变量估

21、计误差的均方值最小。因此,卡尔曼滤波的关键是计算出加权矩阵的最佳值。,2.5.2 卡尔曼滤波的递推算法,当不考虑观测噪声和输入信号时,状态方程和量测方程为,显然,由于不考虑观测噪声的影响,输出信号的估计值与实际值是有误差的,误差用 表示,为了提高状态估计的质量,用输出信号的估计误差 来校正状态变量,Hk为增益矩阵,实质是一加权矩阵。经过校正后的状态变量的估计误差及其均方值分别用 和Pk表示,把未经校正的状态变量的估计误差的均方值用 表示,卡尔曼滤波要求状态变量的估计误差的均方值Pk为最小,因此卡尔曼滤波的关键就是要得到Pk与Hk的关系式,即通过选择合适的Hk,使Pk取得最小值。,卡尔曼递推公式

22、,初始条件Ak,Ck,Qk,Rk,yk, ,Pk-1已知,其中 , P0 = varx0, 递推流程见下图,卡尔曼滤波递推流程,根据Sxx(z) =2B(z)B(z-1),得,解:,由yk=xk+vk 得:Ck=1,对Sxx(z)进行谱分解,确定x(n)信号模型B(z),确定Ak,上式与卡尔曼状态方程相比,不同之处在于输入信号(n)的时间不同,因此将Sxx(z)改写为,Ak = 0.8,卡尔曼滤波和维纳滤波都是采用均方误差最小的准则来实现信号滤波的; 但维纳滤波是在信号进入了稳态后的分析; 卡尔曼滤波是从初始状态采用递推的方法进行滤波。对于平稳随机信号,当过渡过程结束以后,卡尔曼滤波与维纳滤波

23、的结果间存在什么关系? 下面举一例说明。,解,将参数矩阵Ak,Ck,Qk,Rk代入卡尔曼递推公式,得,Kalman滤波迭代结果,求出卡尔曼滤波的稳态解,达到稳态后的卡尔曼滤波的状态方程:,用维纳滤波的方法分析,yk为观测数据,xk为期望信号,非因果维纳滤波器的系统函数为:,因果维纳滤波器的系统函数为:,可看出卡尔曼滤波的稳态解与维纳解是相等的,通过上面的例题,可以看出维纳滤波是已知前p个观测数据及信号与噪声的相关函数,通过建立模型的方法分析的。卡尔曼滤波要求已知前一个时刻的状态估计值 和当前时刻的观测值yk,由状态方程和量测方程递推得到结果。维纳滤波的解以H(z)的形式给出,卡尔曼滤波的解是以

24、状态变量的估计值给出。它们都采用均方误差最小的准则, 但卡尔曼滤波有一个过渡过程,在过渡期间其结果与维纳滤波不完全相同,但过渡结束达到稳态后,二者结果相同。,下面举一个雷达跟踪目标物的具体例子说明卡尔曼滤波的应用。 雷达跟踪目标的基本原理是通过发射脉冲,根据接收到的脉冲与发射脉冲的时间间隔,来确定目标物的距离和速度。由于干扰的影响,接收到的脉冲波形变化很大,那么一次的测量结果可能存在很大的误差。为了减小误差,往往采取发射一串脉冲的方法进行测量。,2.5.3 应用举例,空间目标(飞行器)的位置需要由径向距离和方位角来确定。发射的脉冲时间间隔为T,在时间k,径向距离为R+(k),在时间k+1,距离

25、为R+(k+1),两者之间有T秒的延时,因此T表示空间一次扫描的时间间隔。平均距离用R表示,(k)和(k+1)表示对平均值的偏差。假定偏差是统计随机的,均值为零, 那么可以写出距离方程,表示速度,u表示加速度,则可得到加速度方程,假定加速度u(k)是零均值的平稳白噪声,即满足,定义x(k)表示第k个雷达回波脉冲获得的目标距离,z(k)表示在第k个雷达脉冲进行数据处理之后的目标距离估计, 表示在第k个雷达脉冲进行数据处理之后的目标速度估计。设定状态变量为x(k),选择的状态变量有4个,分别表示径向距离、径向速度、方位角和方位角速度:,根据状态变量的物理含义,得到以下方程:,u1(k)和u2(k)

26、表示在区间T内径向速度和方位角速度的变化。将上式写成矩阵形式,由此得到卡尔曼滤波的信号模型的状态方程,量测方程:距离和方位角的估计值为,v1(k), v2(k)为观测噪声,写成向量形式和矩阵形式为,量测方程的噪声协方差阵为,观测噪声假定为高斯噪声,均值为0,方差为 和,其中, ,为径向加速度在T时刻的方差; ,为角加速度在T时刻的方差。,状态方程激励信号的协方差阵为,假定在各个方向,加速度服从均匀分布,并将u的值限制在M之间,则其概率密度函数为 ,因此,加速度的方差为:,初始条件Ak,Ck,Qk,Rk,yk, ,Pk-1,进行卡尔曼滤波,必须确定均方误差 的初始值,根据接收到的相邻两个回波脉冲

27、,可以测量出飞行器的距离z1(1)和z1(2),方位角z2(1)和z2(2)。根据这四个数据,可计算出状态变量的初值,因此,k时刻的状态向量 可以写为,取k=2,将上式中的观测信号z1(1),z1(2),z2(1),z2(2)用z(k)=x(k)+v(k)代入,得到状态变量的估值,k=2时的状态向量真值为,计算k=2时刻的协方差阵,因此,误差协方差阵是44阶矩阵,假设噪声源u和v是独立的, 则协方差阵为,初始条件Ak,Ck,Qk,Rk,yk, ,Pk-1,理论上讲,卡尔曼滤波的递推算法可以无限地继续下去。然而在实际中某些条件下,可能产生发散问题 导致发散的一个原因是舍入误差的影响以及递推算法使

28、得舍入误差积累的影响。计算机存贮单元的长度有限,使得舍入误差不可避免地存在,它相当于在状态方程和量测方程中又加入了噪声。舍入误差引起的发散现象可以采用双精度运算得以改善,但运算量要增加许多。目前多采用平方根法,即把递推公式中的均方误差阵P改用其平方根P1/2实现。,2.5.4 发散问题及其抑制,另一种类型的发散是由于待估计过程模型的不精确引起的。当模型不准确时,由于新观测值对估计值的修正作用下降,陈旧观测值的修正作用相对上升,是引发滤波发散的一个重要因素。因此逐渐减小陈旧观测值的权重,相应地增大新观测值的权重,是抑制这类发散的一个可行途径。常用的方法有衰减记忆法、限定记忆法、限定下界法等。另外,通过人为地增加模型输入噪声方差,用扩大了的系统噪声来补偿模型误差,也是一种常见的策略。,还存在第三种发散问题,它是由于系统不可观察引起的。所谓不可观察,是指系统有一个或几个状态变量是隐含的,现有的观测数据不能提供足够的信息来估计所有的状态变量。这种发散问题表现为估计值误差不稳定或者均方误差阵的主对角线上有一项或几项无限增长。 卡尔曼滤波还有一些变形,包括激励信号和观测噪声不是白噪声,而是有色噪声,或是有噪声的确定性信号等等。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号