- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
卡尔曼滤波器
摘耍:卡尔曼滤波(Kalman filtering)是,种利用线性系统状态方稈,通过系统输入输出观 测数据,对系统状态进行最优估计的算法° rh于观测数据中包括系统中的噪声和干扰的影响, 所以最优佔计也町看作是滤波过程。对于解决大部分问题,它是最优,效率最高其至是最有 用的。他的广泛应用己经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事 方面的雷达系统以及导弹追踪等等。近来更被应用于计算机图像处理,例如头脸识别,图像 分割,图像边缘检测等等。
1卡尔曼滤波原理
在统计中,卡尔曼滤波是以鲁道夫一卡尔曼命名的数学方法。它提供了一种冇效的计 算(递归)算法来估计过程的状态,它最人限度地减少了均方谋羌。该滤波器在许多方面的 应用是非常强大:即使在模拟系统准确性不明的情况下,它可以对过去,现在,甚至可以对 耒来状态进行估计。
卡尔曼滤波器产生测暈真值的估计值及其相关的计算值的预测值,估计预测值的不确定性, 并计算预测值与实测值的加权平均值。它给出不确定性最小的估计值。用该方法产生的估计 值往往比原来测量真值更接近真实值。
从理论上看,卡尔曼滤波是一?种有效的实现非线性动力学系统的算法,所有潜在的和观察到 的变量都服从高斯分布(通常是一个多元高斯分布)。
如果所有的噪声为高斯噪声,卡尔曼滤波器最小化了参数估计的均方课差。鉴于只有噪声平 均值和标准差,卡尔曼滤波器是绘优的线性估计;并且,它结构优良,易于实现。
2卡尔曼滤波简单介绍
(1)首先,我们先要引入一个离散控制过程的系统。该系统可用一个线性随机微分方程 (Lin ear Stochastic Differe nee equati on) 来描述:
X(k)=A X(k-1)+B U(k)+W(k)协方差为 Q
再加上系统的测量值:
Z(k)=H X(k)+V(k) 协方差为 R
X(k)是k时刻的系统状态,
U(k)是k时刻対系统的控制量。
Z(k)是k时刻的测量值
A和B是系统参数,对于多模型系统,他们为矩阵。
H是测量系统的参数,对于多测量系统,H为矩阵。
W(k)和V(k)分别表示过程和测量的噪声。他们被假设成高斯白噪声(White Gaussian Noise), 他们的协方差(covariance)分别是Q, R (这里我们假设他们不随系统状态变化而变化)。
首先我们要利用系统的过程模型,来预测下一状态的系统。假设现在的系统状态是k,根据 系统的模型,可以基于系统的上一状态而预测出现在状态:
X(k|k-1)=A X(k-l|k-l)+B U(k) (1)
式⑴屮,X(k|k?l)是利用上一状态而进行预测的结果,X(k-l|k-l)是上一状态最优的结果,U(k) 为现在状态的控制量,如果没冇控制量,它可以为0。
到现在为止,我们的系统结果已经更新了,可是,对应于X(k|k-1)的协方差述没更新。我们 用P表示协方差矩阵(covariance):
P(k | k-l)=A P(k-11 k-1) Az+Q (2)
式(2)中,P(k|k?l)是X(k|k?l)对应的协方差,P(k-l|k-l)MX(k-l|k-l)M应的协方差,A表示A 的转置矩阵,Q是系统过程的协方差。式子1,2就是卡尔曼滤波器5个公式当屮的前两个, 也就是对系统的预测。
计算卡尔曼增益矩阵(Kalman Gain)Kg:
TOC \o 1-5 \h \z Kg(k)= P(k|k-1) Hz/(H P(k|k-1) H# + R) (3)
现在我们有了现在状态的预测结果,然后我们再收集现在状态的测量值。结合预测值和测量 值和卡尔曼增益,我们可以得到现在状态(k)的最优化估算值X(k|k):
X(k | k)= X(k | k-l)+Kg(k) (Z(k)-H X(k | k-1)) (4)
到现在为止,我们已经得到了 k状态卞最优的估算值X(k|k)。但是为了要令卡尔曼滤波器不 断的运行下去直到系统过程结束,我们还耍更新k状态卜-X(k|k)的协方差:
P(k|k)= (l-Kg(k)H) P(k|k-1) (5)
其中I为1的矩阵,对于单模型单测fi, l=lo当系统进入k+1状态时,P(k|k)就是式子(2)
的 P(k-l|k-l)0 这样,
的 P(k-l|k-l)0 这样,
算法就可以印川归的运算下去。
根据估计值和测量值得出放 优方程X(k|k)
V
3.基于卡尔曼滤波的温度估计
TOC \o 1-5 \h \z C(k | k-l)=A C(k-11 k-l)+B U(k) (1)
P(k | k-l)=A P(k-11 k-1) A*+Q (2)
Kg(k)= P(k | k-1) H7(H P(k| k-1) Hz + R) (3)
C(k|k)= C
文档评论(0)