卡尔曼滤波算法c语言实现

卡尔曼滤波算法c语言实现

ID:21864440

大小:214.50 KB

页数:7页

时间:2018-10-25

卡尔曼滤波算法c语言实现_第1页
卡尔曼滤波算法c语言实现_第2页
卡尔曼滤波算法c语言实现_第3页
卡尔曼滤波算法c语言实现_第4页
卡尔曼滤波算法c语言实现_第5页
资源描述:

《卡尔曼滤波算法c语言实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、专业资料精心整理卡尔曼滤波算法及C语言实现摘要:本文着重讨论了卡尔曼滤波器的原理,典型算法以及应用领域。清晰地阐述了kalmanfilter在信息估计方面的最优性能。着重介绍简单kalmanfilteralgorithm的编程,使用kalmanfilter的经典5个体现最优化递归公式来编程。通过c语言编写程序实现kalmanfilter的最优估计能力。关键词:kalmanfilter;最优估计;C语言1引言KalmanFilter是一个高效的递归滤波器,它可以实现从一系列的噪声测量中,估计动态系

2、统的状态。起源于RudolfEmilKalman在1960年的博士论文和发表的论文《ANewApproachtoLinearEilteringandPredictionProblems》(《线性滤波与预测问题的新方法》)。并且最先在阿波罗登月计划轨迹预测上应用成功,此后kalmanfilter取得重大发展和完善。它的广泛应用已经超过30年,包括机器人导航,控制。传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等,近年来更被广泛应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。2

3、kalmanfilter最优化递归估计Kalmanfilter是一个“optimalrecursivedataprocessingalgorithm(最优化递归数据处理方法)”。对于解决很大部分的问题,他是最优,效率最高甚至是最有用的方法。而kalmanfilter最为核心的内容是体现它最优化估计和递归特点的5条公式。举一个例子来详细说明5条公式的物理意义。假设我们要研究的对象是某一个房间的温度信号。对于室温来说,一分钟内或一小段时间内的值是基本上不变的或者变化范围很小。也就是说时刻的温度和时刻

4、的温度基本不变,即。在这个过程中,因为毕竟温度还是有所改变的,设有几度的偏差。我们把这几度的偏差看成是高斯白噪声,也就是说,。除此之外我们在用一个温度计来实时测量房间的温度值,但由于量具本身的误差,所测得的温度值也是不准确的,也会和实际值偏差几度,把这几度的偏差看成是测量噪声。即满足,。此时我们对于这个房间的温度就得到了两个数据。一个是你根据经验得到的经验值,一个是从温度计上得到的测量值下载可编辑专业资料精心整理,以及各自引入的高斯白噪声。下面就具体讲解kalmanfilter来估计房间温度的原

5、理与步骤。要估计K时刻的实际温度值,首先要根据K-1时刻的温度值预测K时刻的温度,按照之前我们讨论的,若k-1时刻的温度值是,那么预测此时的,假如该值的噪声是,5°是这样得到的,若果k-1时刻估算出的最优温度值的噪声是,预测的噪声是,所以总体的噪声为。此时再从温度计上得到K时刻的温度值为,设该测量值的噪声是。现在发现问题了,在k时刻我们就有了两个温度值和,要信那个呢,简单的求平均已经不能满足精度的要求了。我们可以用他们的协方差covariance来判断。协方差本身就能体现两个信号的相关性,通过它

6、就能判断到底真值更逼近于预测值还是测量值。引入kalmangain(),有公式计算,……(1)所以=0.78。我们可以估算出K时刻的实际温度值是,……(2)可以看出这个值接近于温度计测量到的值,所以估算出的最优温度值偏向温度计的值。这时我们已经得到了K时刻的最优温度值,接下来估计K+1时刻的最优温度值。既然kalmanfilter是一个最优化的递归处理方法,那么递归就体现在该算法的一个核心参数上,由公式(1)的算法可知每次计算时的是不一样的。这样我们要估计K+1时刻的最优温度值,就得先算出K时刻

7、的,然后才能利用公式(2)估计K+1时刻的最优温度值。由此可以看出我们只需知道初始时刻的值和它所对应的协方差以及测量值,就可以进行kalman估计了。3KalmanFilterAlgorithm首先以一个离散控制过程为例讨论kalmanfilteralgorithm。该系统可用一个线性微分方程来描述。……(3)……(4)下载可编辑专业资料精心整理(3)式和(4)式中,是K时刻的系统状态,是K时刻对系统的控制量,A和B是系统参数,对于多模型系统,它们为矩阵。是K时刻的测量值,H是测量系统的参数,对

8、于多测量系统,H为矩阵。和分别表示系统和测量过程中的噪声,使用kalmanfilter估计时,我们认为噪声满足高斯白噪声模型,设和的covariance分别为Q和R。讨论kalmanfilteralgorithm的5个经典核心公式。第一步,预测现在的状态:……(5)式(5)中是利用上一状态预测的结果,是上一时刻的最优预测值,为现在状态的控制量,如果没有,可以为0。经过公式(5)后系统结果已经更新了,对应于的covariance还没有更新,用P表示covariance,……(6)式(6)中是对应的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。