【控制理论】卡尔曼滤波基本原理及公式推导
一、卡尔曼滤波基本原理
既然是滤波,那肯定就是一种提纯数据的东西。怎么理解呢,如果现在有一个任务,需要知道家里橘子树今年长了多少个橘子。你想到去年、前年、大前年这三年你把橘子吃到过年,按每天吃3个来算,大概知道每年橘子树产了多少橘子,今年的情况应该也差不多。这叫数学模型预测法;不过你懒得去想去年吃了多少个,就打算给邻居家的小孩一把糖果让他去数,小孩三下五除二就数完了,但是他数的仔细不仔细和有没有摘几个回家吃就不知道了,这叫传感器直接测量法。很明显这两种方法都不那么靠谱,卡尔曼滤波就是将这两种方法测得的数据融合起来,得到一个靠谱的数据。
二、公式推导之前回顾一些知识
1、正态分布
曲线两头低,中间高,左右对称。
若随机变量X服从一个数学期望为μ、方差为σ^2的正态分布,记为N(μ,σ^2)。期望值μ决定了其位置,其标准差σ决定了分布的幅度。σ越大曲线越矮胖,σ越小则越瘦长。————来自百度百科
2、协方差
协方差用来描述两个变量在变化时的联系情况,是同向变化,还是反向变化?你变大,同时我也变大,说明两个变量是同向变化的,这时协方差就是正的。你变大,同时我变小,说明两个变量是反向变化的,这时协方差就是负的。
三、公式推导
这里有一篇很不错的文章讲解推导的先贴在这里
如何通俗并尽可能详细解释卡尔曼滤波? - 米开朗基罗赵的回答 - 知乎 https://www.zhihu.com/question/23971601/answer/375355599
数学模型估计数据
1、假设我们现在要获取一个系统中某些状态稍微精确的数据,比如是智能小车的速度、位置,,p是position小车位置。
那么由数学模型,k时刻状态估计值可以由k-1时刻大致推导出来
F:状态转移矩阵,通常由机理关系得到,比如
:注意右边带有小斜杠,这是先验估计
:这是上一时刻的后验估计
先验估计是还没有结合传感器数据的纯模型估计值,后验估计是模型数据和传感器数据融合之后的也就是我们需要的精确数据。
当然在这些数据转移的时候,变量之间的关系(协方差)也会随着改变。为协方差
来源于:
2、当然状态不可能只受上一时刻状态的影响,比如智能小车有来自电机驱动的动能,小车有时会获得一个加速度。那么状态还要加上这一外部作用力的影响。
3、出来已知的外部作用力,还有一些不确定性因素会影响系统的状态变化,比如地上坑坑洼洼,智能小车抖那么一下,状态都会发生改变。这就是白噪声的影响,假设白噪声服从方差正态分布。这一部分的影响要加到协方差中去。
4、以上模型所有要考虑的因素基本都囊括进去了,但是的模型数据要和传感器数据融合起来,量纲肯定要统一,假设通过矩阵变化。还是据智能小车的例子,假如我们要利用编码器获取小车的速度,我们设计的数学模型关于速度的单位肯定是米每秒,但是编码器采集的数据有可能是一个脉冲数,它还要通过车轮转一米固定多少个脉冲这样一个间接方法才能获得小车的速度。
所以有:(数学模型估计正态分布的平均值和方差)
(敲公式太累了,偷懒!)
传感器数据
5、传感器的数据也符合正态分布,假设平均值是,方差是
开始融合
现有两个高斯分布数据,卡尔曼老先生将这两个高斯斑直接相乘,得到了一个新的高斯斑,就是我们要的更加精确的数据。直接通过相乘就得到了满意的结果,果然是大道至简,牛皮。
暂停一下,吃饭去了,明天再改改。。。
【控制理论】卡尔曼滤波基本原理及公式推导相关推荐
- 嵌入式软件算法之卡尔曼滤波基本原理浅析
卡尔曼滤波基本原理浅析 前言 一.卡尔曼滤波介绍 二.基本原理 2.1 测量值与估计值的权重配置 2.2 高斯分布数学模型的描述 2.3 基于高斯分布模型的迭代 三.一阶卡尔曼滤波 3.1温度示例模型 ...
- 卡尔曼_卡尔曼滤波最完整公式推导
卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法.由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程.上面一段话来自百度百科,其实最 ...
- 卡尔曼滤波最完整公式推导
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨东林钟声@知乎(已授权) 来源丨https://zhuanlan.zhihu.com/p/341 ...
- 卡尔曼滤波五个公式推导
一.两个方程 1,系统的状态方程(预测方程) xk=Akxk−1+Bkuk+wkx_k = A_kx_{k-1} + B_ku_k + w_k xk=Akxk−1+Bkuk+wk 2,测量 ...
- 卡尔曼滤波原理(2)
三.卡尔曼五大公式推导 相信大家已经看了我的上一篇文章吧,其实上一篇通过例子讲了卡尔曼滤波思想,卡尔曼滤波又称最优递归数字处理算法,他就是一处理数据的算法,目的是获取更为准确的数据.接下来,我要开始超 ...
- 卡尔曼滤波的理解、推导和应用
卡尔曼滤波的理解.推导和应用 1. 卡尔曼滤波简介 2. 卡尔曼滤波原理 3. 卡尔曼滤波的公式 3.1. 五个公式 3.2. 公式作用 4. 卡尔曼滤波的公式推导 4.1. 符号说明 4.2. 概念 ...
- Wiener维纳滤波基本原理及其算法实现
文章转载自:http://blog.sina.com.cn/s/blog_bb81c2230102xdbl.html 如果有侵权,请联系博主删除 To learn, to share, to deb ...
- 无人驾驶4: 无损卡尔曼滤波
在上一节的扩展卡尔曼滤波跟踪系统中,有两个缺陷: 系统采用恒速模型:假定行人沿直线运动:实际应用中,出现曲线运动时,预估不够准确. 每次测量都需要计算雅可比矩阵,很耗资源. 当问题一旦变得复杂,预测和 ...
- 手撕自动驾驶算法——多目标追踪:imm交互式多模型
文章目录 基本原理 流程图 公式推导 Mixing Prediction Updates Combination 基本原理 状态估计问题依赖于对象运动模型来预测和更新对象状态.然而,在城市情况下,被跟 ...
最新文章
- Pandas常用I/O(一)------read_csv(),read_table()
- java.sql.SQLException: validateConnection false
- c语言程序设计现代方法(2th)第12章答案(自己胡乱编写的答案,持续更新)
- libcurl实现解析(3) - libcurl对select的使用
- Robot Framework自动化测试(一)--- 安装
- [综述泛读] A survey on web services composition (IJWGS, 2005)
- HTML元素-META全集
- 用Python强制子类重写父类,如此简单就能做到
- Asp.NET MVC 技术参考:http://kb.cnblogs.com/zt/mvc/
- 单服务器高性能:PPC、TPC、epoll、Reactor、Proactor
- 解决:删除文件时“文件正在使用”不能完成
- 北京地铁2015年规划(清晰、大图、可下载)
- MSCNN论文解读-A Unified Multi-scale Deep Convolutional Neural Network for Fast Object Detection
- windows10 freeswitch soundtouch 变声
- 硬件开发笔记(一):高速电路设计Cadence Aleegro软件介绍和安装过程
- git 删除远端分支
- 追逐梦想,意味你要牺牲一切,这就是代价!!!----蔡赟
- 将系统必备组件打包进安装文件(以vs15打包.net formwork 4.5为例)有点鸡肋
- XML Publisher介绍
- 51nod快乐排队 1431