卡尔曼滤波学习

首先,我们先要引入一个离散控制过程的系统。该系统可用一个线性随机微分方程(Linear Stochastic Difference equation)来描述: 再加上系统的测量值:

上两式子中, 时刻的系统状态,   时刻对系统的控制量。   和  是系统参数,对于多模型系统,他们为矩阵。 是  时刻的测量值,   是测量系统的参数,对于多测量系统,   为矩阵。  和  分别表示过程和测量的噪声。他们被假设成高斯白噪声(White Gaussian Noise),他们的 covariance 分别是  (这里我们假设他们不随系统状态变化而变化)。

(1)利用系统的过程模型,预测下一状态的系统:其中:

是利用上一状态预测的结果

是上一状态最优的估计结果

是现在状态的控制量,如果没有控制量,可以为0

(2)更行对应于的covariance:P表示covariance

其中

对应的covariance

对应的covariance

表示的装置矩阵

是系统过程的covariance, 系统过程的噪声协方差

(3)结合预测值和测量值,可以得到现在状态的最优估计                                                                               卡尔曼增益(Kalman Gain)

(4)更新的covariance

其中为1的矩阵,对于单模型单测量,=1.

时间: 2024-08-24 04:57:03

卡尔曼滤波学习的相关文章

卡尔曼滤波学习笔记1-Matlab模拟温度例子--代码比较乱,还需优化

温度模拟参数选取 xk 系统状态 实际温度 A 系统矩阵 温度不变,为1 B.uk 状态的控制量 无控制量,为0 Zk 观测值 温度计读数 H 观测矩阵 直接读出,为1 wk 过程噪声 温度变化偏差,常量1e-1 vk 测量噪声 读数误差,常量1e-6 clc;clear all;close all; N = 200; % 迭代次数%w(1)=0;%w=randn(1,N);W = 0; %系统控制矩阵x(1) = 0;A = 1; %温度模拟A为1V = rand(1,N);q1 = std(

四轴学习笔记—DMP(一)DMP介绍

DMP是什么? DMP就是指MPU-6050集成内部的处理器,直接输出四元数,可以减轻外围微处理器的工作负担,且避免了繁琐的滤波和数据融合,DMP官方驱动库,是基于MSP430的,用来驱动DMP.理论上可以无缝移植到STM32f103系列和STM32F4系列中.不过如果不愿意自行移植,可以借鉴圆点四轴的dmp库.圆点四轴2013版与最新的圆点四轴2015版DMP库有一定区别.移植使用时需要特别注意.       应用场景       一般读出MPU-6050的加速度和角速度的原始数据不难.这些原

(转) 深度学习在目标跟踪中的应用

深度学习在目标跟踪中的应用 原创 2016-09-05 徐霞清 深度学习大讲堂 点击上方“深度学习大讲堂”可订阅哦!深度学习大讲堂是高质量原创内容的平台,邀请学术界.工业界一线专家撰稿,致力于推送人工智能与深度学习最新技术.产品和活动信息! 开始本文之前,我们首先看上方给出的3张图片,它们分别是同一个视频的第1,40,80帧.在第1帧给出一个跑步者的边框(bounding-box)之后,后续的第40帧,80帧,bounding-box依然准确圈出了同一个跑步者.以上展示的其实就是目标跟踪(vis

【分享】近4000份数学学习资源免费分享给大家

一直以来喜欢收集数学类的教程资源,于是费了好大劲从万千合集站上扒拉了下来,总结归类了一下,一共有将近4000本电子书.经测试,均可免费下载,可能会弹出小广告,可不必理会之.[仅供学术学习和交流,请无用于商业用途.]另外,如有可能,还请尽量支持正版纸质书.   数学史(54)     数学史.rar 55.6 MB   数学的起源与发展.rar 4.3 MB   费马大定理—一个困惑了世间智者358年的谜.pdf 9.5 MB   通俗数学名著译丛14-无穷之旅:关于无穷大的文化史.pdf 14.

【深度学习Deep Learning】资料大全

转载:http://www.cnblogs.com/charlotte77/p/5485438.html 最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books Deep Learning66 by Yoshua Bengio, Ian Goodfellow and Aaron Courville Neural Networks and Deep Learning42 by Michael Nielsen Deep Learning27 by

卡尔曼滤波简介及其算法实现代码(C++/C/MATLAB)

卡尔曼滤波器简介 近来发现有些问题很多人都很感兴趣.所以在这里希望能尽自己能力跟大家讨论一些力所能及的算法.现在先讨论一下卡尔曼滤波器,如果时间和能力允许,我还希望能够写写其他的算法,例如遗传算法,傅立叶变换,数字滤波,神经网络,图像处理等等. 因为这里不能写复杂的数学公式,所以也只能形象的描述.希望如果哪位是这方面的专家,欢迎讨论更正. 卡尔曼滤波器 – Kalman Filter 一.什么是卡尔曼滤波器(What is the Kalman Filter?) 在学习卡尔曼滤波器之前,首先看看

卡尔曼滤波的原理说明

卡尔曼滤波的原理说明 在学习卡尔曼滤波器之前,首先看看为什么叫"卡尔曼".跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人!卡尔曼全名Rudolf Emil Kalman,匈牙利数学家,1930年出生于匈牙利首都布达佩斯.1953,1954年于麻省理工学院分别获得电机工程学士及硕士学位.1957年于哥伦比亚大学获得博士学位.我们现在要学习的卡尔曼滤波器,正是源于他的博士论文和1960年发表的论文<A New Approa

卡尔曼滤波小结

一直在看,一直不懂. 我这人学数学的毛病,就是需要非常细致的知道每个变量的含义,谁变谁不变必须清清楚楚告诉我,否则我就没有那个直觉. anyway,从这篇文章入手吧: http://www.cs.unc.edu/~welch/kalman/media/pdf/kalman_intro_chinese.pdf 所谓滤波,实际上是要去掉自己不想要的信号,保留想要的部分.一般来说,是把过程中的噪声去掉. 卡尔曼滤波的默认假定是,世界充满噪声,任何测量结果都有噪声,状态转移过程会有噪声,你想知道系统的真

Arduino uno + mpu6050 陀螺仪 运用卡尔曼滤波姿态解算实验

MPU6050六轴陀螺仪 作用于四轴无人机,平衡车,机器人等等的电子实作当中,用于姿态判断,掌握了可以发挥自己的想象完成更多更有趣的作品. 本例程输出XYZ的角度,正负90度. 运用卡尔曼滤波算法解算姿态,感觉算是比较稳定,但好像有点偏移.大家好好学习参考,再改进吧. 输出效果 首先看看本例程XYZ轴的输出效果图: (时间曲线的体现是:静止姿态→摆动→恢复原静止姿态→拍动桌子→静止姿态) Bom表 Arduino Uno               *1 mpu6050 陀螺仪模块 *1 跳线