简述卡尔曼滤波器.docx

上传人:李司机 文档编号:1635517 上传时间:2022-12-12 格式:DOCX 页数:5 大小:32.97KB
返回 下载 相关 举报
简述卡尔曼滤波器.docx_第1页
第1页 / 共5页
简述卡尔曼滤波器.docx_第2页
第2页 / 共5页
简述卡尔曼滤波器.docx_第3页
第3页 / 共5页
简述卡尔曼滤波器.docx_第4页
第4页 / 共5页
简述卡尔曼滤波器.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《简述卡尔曼滤波器.docx》由会员分享,可在线阅读,更多相关《简述卡尔曼滤波器.docx(5页珍藏版)》请在三一办公上搜索。

1、卡尔曼滤波器摘要:卡尔曼滤波(KaImanfilterirlg)是一种采用线性系统状态方程,通过系统输入输出观 测数据,对系统状态进行最优估量的算法。由于观测数据中包括系统中的噪声和干扰的影响, 所以最优估量也可看作是滤波过程。对于解决大部分问题,它是最优,效率最高甚至是最有 用的。他的广泛应用已经超过30年,包括机器人导航,掌握,传感器数据融合甚至在军事 方面的雷达系统以及导弹追踪等等。近来更被应用于计算机图像处理,例如头脸识别,图像 分割,图像边缘检测等等。1卡尔曼滤波原理在统计中,卡尔曼滤波是以鲁道夫卡尔曼命名的数学方法。它供应了一种有效的计 算(递归)算法来估量过程的状态,它最大限度地

2、削减了均方误差。该滤波器在很多方面的 应用是特别强大:即使在模拟系统精确性不明的状况下,它可以对过去,现在,甚至可以对将来状态进行估量。卡尔曼滤波器产生测量真值的估量值及其相关的计算值的猜测值,估量猜测值的不确定性, 并计算猜测值与实测值的加权平均值。它给出不确定性最小的估量值。用该方法产生的估量 值往往比原来测量真值更接近真实值。从理论上看,卡尔曼滤波是一种有效的实现非线性动力学系统的算法,全部潜在的和观看到 的变量都听从高斯分布(通常是一个多元高斯分布)。假如全部的噪声为高斯噪声,卡尔曼淀波器最小化了参数估量的均方误差。鉴于只有噪声平 均值和标准差,卡尔曼滤波器是最优的线性估量;并且,它结

3、构优良,易于实现。2卡尔曼滤波简洁介绍(1)首先,我们先要引入一个离散掌握过程的系统。该系统可用一个线性随机微分方程(Linear Stochastic Difference equation) 来描述:X伙)=A X化-1)+B U化)+W化)协方差为Q再加上系统的测量值:Z化)=H X(k)+V(k)协方差为RX(k)是k时刻的系统状态,U(k)是k时刻对系统的掌握量。Z(k)是k时刻的测量值A和B是系统参数,对于多模型系统,他们为矩阵。H是测量系统的参数,对于多测量系统,H为矩阵。W(k)和V(k)分别表示过程和测量的噪声。他们被假设成高斯白噪声(White Gaussian Noise

4、), 他们的协方差(CoVarianCe)分别是Q, R (这里我们假设他们不随系统状态变化而变化)。首先我们要采用系统的过程模型,来猜测下一状态的系统。假设现在的系统状态是k,依据 系统的模型,可以基于系统的上一状态而猜测消失在状态:X(k I k-l)=A Mk-I I k-l)+B U(k)(1)式中,X(kk-1)是采用上一状态而进行猜测的结果,X(k-lk-l)是上一状态最优的结果,U(k) 为现在状态的掌握量,假如没有掌握量,它可以为0。到现在为止,我们的系统结果已经更新了,可是,对应于X(kkL)的协方差还没更新。我们 用P表示协方差矩阵(COVariance):P化 I k-l

5、)=A P(k-1 k-l) AaQ(2)式(2)中,P(kkl)是X(kk-1)对应的协方差,P(k-lk-l)是X(k-lk-l)对应的协方差,A表示A 的转置矩阵,Q是系统过程的协方差。式子1,2就是卡尔曼滤波器5个公式当中的前两个, 也就是对系统的猜测。计算卡尔曼增益矩阵(Kalman Gain)Kg:Kg(k)= P(k I k-l) H, /(H P(k k-l) HT R)(3)现在我们有了现在状态的猜测结果,然后我们再收集现在状态的测量值。结合猜测值和测量 值和卡尔曼增益,我们可以得到现在状态(k)的最优化估算值X(kk):(kk)= X(kk-l)Kg(k) (Z(k)-H

6、(kk-l)(4)到现在为止,我们已经得到了 k状态下最优的估算值X(kk)。但是为了要令卡尔曼滤波器不 断的运行下去直到系统过程结束,我们还要更新k状态下X(kk)的协方差:(5)P(kk)= (l-Kg(k)H) P(kk-1)其中I为1的矩阵,对于单模型单测量,I=Io当系统进入k+1状态时,P(kk)就是式子 的P(k-lkL).这样,算法就可以自同归的运算下去。输出最优方程(kk)3 .基于卡尔曼滤波的温度估量C(kk-1)=A C(klk-l)+B U(k)(1)P(k I k-l)=A P(k-1 k-l) A,+Q(2)Kg(k)= P(k I k-l) W /(H P(k k

7、-l) HT R)(3)C(k I k) C(k I k-l)+Kg(k) (Z(k)-H C(kIkI)(4)P(kk) (l-Kg(k)H) P(kk-1) (5)假如我们要估算k时刻的实际温度值。首先要依据k-1时刻的温度值,来猜测k时刻 的温度。一般来说,我们假设温度是恒定的,所以k时刻的温度猜测值是跟k-1时刻一样的, 假设是23度,同时该值的高斯噪声的偏差是5度(5是这样得到的:假如k-1时刻估算出 的最优温度值的偏差是3,假如对猜测的不确定度是4度,他们平方相加再开方,就是5)。 然后,从温度计那里得到了 k时刻的温度值,假设是25度,同时该值的偏差是4度。由于我们用于估算k时刻

8、的实际温度有两个温度值,分别是23度和25度。那么毕竟 实际温度是多少呢?估量值更精确还是测量值更精确?我们可以用他们的协方差(COVarianCe)来推断。rF Kg=5A2/(5A2+4A2),所以Kg=O.61,我们可以估算 出k时刻的实际温度值是:23+0.61*(25-23)=24.22度。可以看出,由于温度计的协方差 (covariance)比较小(比较信任温度计),所以估算出的最优温度值偏向温度计的值。现在我们已经得到k时刻的最优温度值了,下一步就是要进入k+1时刻,进行新的最 优估算。但是,在进入k+1时刻之前,我们还要算出k时刻那个最优值(24.22度)的偏差。 算法如下:(

9、1闷)*5八2)人0.5=3.12。这里的5就是上面的k时刻你猜测的那个23度温度值 的偏差,得出的3.12就是进入k+1时刻以后k时刻估算出的最优温度值的偏差(对应于上 面的3)。就是这样,卡尔曼滤波器就不断的把(协方差(CoVarianCe)递归,从而估算出最优的温度值。 他运行的很快,而且它只保留了上一时刻的协方差(covariance)。上面的Kg,就是卡尔曼增 益(KaImanGain) ,4 .基于卡尔曼滤波的飞行器跟踪本试验中,我们应用扩展卡尔曼淀波器来跟踪飞行器的位置和速度,飞行器按方案以给 定的方向和速度运动,需测量距离和方位。在得出的飞行器的动力学模型中,我们假定恒定 速度

10、,只受到由风、稍微的速度修正等产生的扰动,这些状况在飞机上是可能消失得,所以 在n时刻,在X和Y方向的速度重量为,M = +4,M假如没有噪&H川和町,扰动,速度是不变的,因此,飞行器将被看作是直线运动。 依据运动方程,在时刻n的位置为,小口/T+) Z y其中A是样本之间的时间间隔。在这个运动方程的离散模型中,飞行器将按前一时刻的 速度运动,然后下一时刻突然转变,这是对真实连续行为的一种近似。现在,我们选择的 信号矢量是由位置和速度矢量重量组成的。T=r m/ J mD y状态:1 O O O 1 O OOlO 0 0 0 1 I001,卬V加N TW-1yi-1测量的是距离和方位:厂向)i = arctan y或者Rn = Rn + pn夕 二夕勿+ 0夕勿按照一般形式,观测方程式为xn = (sw) + vw其中h是函数:/7(S力 D卬arctan 最终,我们需要指定驱动噪声和观测噪声的协方差。我们假设风、速度修正等在任何方2向以同样的幅度消失,那么给心川uyn给予相同的方差(都用表示)并且假定 它们是独立的,这是合理的。那么,我们有0 O O OOOO OQ =OobOUO O O 2

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号