SciTech-BigDataAIML-Python Time Series Handbook - Kalman filter:( Optimal Recursive Data Processing Algorithm): 卡尔曼滤波器算法(也称“最优的递归数据处理算法”)
Kalman Filter(卡尔曼滤波器算法)
SciTech-BigDataAIML-Python Time Series Handbook
Kalman filter is also known as:
Optimal Recursive Data Processing Algorithm.
最优的递归数据处理算法
网上文档:
Python时间序列手册: 有ipynb和PDF文件:
https://filippomb.github.io/python-time-series-handbook/notebooks/07/kalman-filter.htmlIllinois University PDF: Understanding the Basis of the Kalman Filter Via a …
PDF: Standford University: Lecture 8 The Kalman filter - Stanford University
ArXiv:
PDF: An Elementary Introduction to Kalman Filtering - arXiv.org
PDF: A Step by Step Mathematical Derivation and Tutorial on …
Overview
This lecture will cover the following topics:
- Introduction to the Kalman Filter.
- Model components and assumptions.
- The Kalman Filter algorithm.
- Application to static and dynamic one-dimensional data.
- Application to higher-dimensional data.
What is a Kalman Filter?
- The Kalman Filter (KF) is an algorithm that uses a series of measurements observed over time, containing statistical noise and other inaccuracies.
- It produces estimates of unknown variables that tend to be more accurate than those based only on measurements.
- Developed by Rudolf E. Kálmán in the late 1950s.
- Applications:
tracking objects (Auto EV, GPS, self driving cars).
image processing.
economic and financial modeling.
Theoretical foundations
- Dynamic systems are systems that change over time.
- They are described by a set of equations that predict the future state of the system based on its current state.
- The KF assumes the system is a linear dynamic system with Gaussian noise.
- Gaussian distributions are used because of their nice properties when dealing with averages and variances.
What are the ingredients?
State
- The true value of the variables we want to estimate.
- The state vector represents all the information needed to describe the current state of the system.
Observation model
*Relates the current state to the measurements or observations.
Noisy measurements
The process noise and measurement noise (assumed to be Gaussian) represent the uncertainty in our models and measurements.
Example:
- Car moving at a constant velocity.
- Model: Car position = velocity × time + system noise.
- Measurements: position and velocity (which are also noisy).
The role of noise
- The tradeoff between the influence of the model and the measurements is determined by noise.
- If the model has relatively large errors, more importance is given to the latest measurements in computing the current estimate.
- If the measurements have larger errors, more importance is given to the model in making the current estimate.
- Therefore, you need to estimate not only your state but also the errors
Update strategy
KF is a recursive algorithm:
- Uses information from previous time step to update the estimates.
- Does not keep in memory all the data acquired so far.
Has predictor-corrector structure:
Make a prediction based on the model.
Update the prediction with the measurements.
Repeat.
Fundamental assumptions
The Kalman filter approach is based on three fundamental assumptions:
- The system can be described or approximated by a linear model.
- All noise (from both the system and the measurements) is white, i.e., the values are not correlated.
All noise is Gaussian.
Assumption 1: linearity
- Each variable at the current time is a linear function of the variables at previous times.
- Many systems can be approximated this way.
- Linear systems are easy to analyze.
Nonlinear systems can often be approximated by linear models around a current estimate (extended KF).
Assumption 2: Whiteness
- The noise values are not correlated in time.
If you know the noise at time, it doesn't help you to predict the noise at future times. - White noise is a reasonable approximation of the real noise.
The assumption makes the mathematics tractable.
Note White noise contains a mix of all the different frequencies at the same intensity blended together.
This is similar to how white light contains all the colors of the rainbow combined.
Assumption 3: Gaussian noise
At any point in time, the probability density of the noise is a Gaussian.
System and measurement noise are often a combination of many small sources of noise.
The combination effect is approximately Gaussian.
If only mean and variance are known (typical case in engineering systems), Gaussian distribution is a good choice as these two quantities completely determine the Gaussian distribution.
Gaussian distribution have nice properties and are easy to treat mathematically.
Technical details
Combining two sources
Assume a car has a certain initial position and initial velocity.
If the speed is constant, we have:
SciTech-BigDataAIML-Python Time Series Handbook - Kalman filter:( Optimal Recursive Data Processing Algorithm): 卡尔曼滤波器算法(也称“最优的递归数据处理算法”)的更多相关文章
- 卡尔曼滤波器 Kalman Filter (转载)
在学习卡尔曼滤波器之前,首先看看为什么叫“卡尔曼”.跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人! 卡 尔曼全名Rudolf Emil ...
- 对Kalman(卡尔曼)滤波器的理解
1.简单介绍(Brief Introduction) 在学习卡尔曼滤波器之前,首先看看为什么叫"卡尔曼". 跟其它著名的理论(比如傅立叶变换.泰勒级数等等)一样.卡尔曼也是一个人的 ...
- 对Kalman(卡尔曼)滤波器的理解@@zz
1.简介(Brief Introduction) 在学习卡尔曼滤波器之前,首先看看为什么叫“卡尔曼”.跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他 ...
- 泡泡一分钟:Robust Attitude Estimation Using an Adaptive Unscented Kalman Filter
张宁 Robust Attitude Estimation Using an Adaptive Unscented Kalman Filter 使用自适应无味卡尔曼滤波器进行姿态估计链接:https: ...
- 卡尔曼滤波—Simple Kalman Filter for 2D tracking with OpenCV
之前有关卡尔曼滤波的例子都比较简单,只能用于简单的理解卡尔曼滤波的基本步骤.现在让我们来看看卡尔曼滤波在实际中到底能做些什么吧.这里有一个使用卡尔曼滤波在窗口内跟踪鼠标移动的例子,原作者主页:http ...
- 卡尔曼滤波器【Kalman Filter For Dummies】
搬砖到此: A Quick Insight As I mentioned earlier, it's nearly impossible to grasp the full meaning o ...
- GMM+Kalman Filter+Blob 目标跟踪
转 http://www.cnblogs.com/YangQiaoblog/p/5462453.html ==========图片版================================== ...
- [Scikit-learn] Dynamic Bayesian Network - Kalman Filter
看上去不错的网站:http://iacs-courses.seas.harvard.edu/courses/am207/blog/lecture-18.html SciPy Cookbook:http ...
- (二). 细说Kalman滤波:The Kalman Filter
本文为原创文章,转载请注明出处,http://www.cnblogs.com/ycwang16/p/5999034.html 前面介绍了Bayes滤波方法,我们接下来详细说说Kalman滤波器.虽然K ...
- 机器人学 —— 机器人感知(Kalman Filter)
对于机器人感知任务而言,经常需要预判物体的运动,保证机器人在物体与自身接触之前进行规避.比如无人机与障碍物的碰撞,足球机器人判断足球的位置.预判的前提是对当前状态进行准确的估计,比如足球的速度,障碍物 ...
随机推荐
- 内网穿透——Natapp实现
转自:NATAPP使用教程(内网穿透)_Willing卡卡的博客-CSDN博客_natapp NATAPP内网穿透使用教程 本文主要分享了有关内网穿透NATAPP的使用,包括:注册.建立隧道(免费). ...
- FastJSON序列化扩展接口与特性详解
结论先行 FastJSON 的 SerializeFilter 接口通过 动态拦截和修改序列化过程,可实现字段名重命名.敏感数据脱敏.字段过滤等高级功能.其核心子接口包括 PropertyPreFil ...
- ESP32S3 BLE_HID的编程实现
ESP32S3 BLE_HID的编程实现 BLE是低功耗蓝牙,HID是Human Interface Device,也就是人机接口设备. 主要用于无线连接并传输用户输入数据(如按键.触控.手势等). ...
- [随记]-SpringMVC中的handler到底是什么东西
HandlerMapping 初始化时候的 HandlerMapping 有,按顺序排列: requestMappingHandlerMapping beanNameHandlerMapping -& ...
- 智表ZCELL产品V2.0发版小感
不知不觉,智表从诞生以来已经两年多了,首先感谢各位用户的支持,没有大家的支持,智表这个产品估计早就已经终止了,正是大家的支持和鼓励,智表才一步一步走到了今天.智表最初是从一个简单不能再简单的table ...
- SQL 强化练习 (十三)
这几天都在整帆软报表, 还要弄 RPA ... 咱说呢, 这些破玩意, 是提升了业务人员的工作效率, 但, 极大降低了我的工作效率, 明明写代码就能解决, 非要各种 点点点... 文档也不全, 就很难 ...
- ISCC区域赛wp
ISCC区域 Web 哪吒的试炼 根据吃藕猜测要传参food /?food=lotus root 来到下一关 f12看源码 发现disable,把这个属性删掉 <?php if (isset($ ...
- 为何PostgreSQL没有聚集索引?解读两大数据库的设计差异
为何PostgreSQL没有聚集索引?解读两大数据库的设计差异 前言 高效的数据检索是数据库管理的基石, PostgreSQL和SQL Server都能提供强大的数据访问方法以支持各种工作负载方面表现 ...
- 洛谷 P5066 [Ynoi2014] 人人本着正义之名debug-log
序言 此日志分为四部分. 00:00是开始打代码的时间. 最开始打完代码(没有debug)大约用了两小时. part1-20210323 02:30 生成新节点时,没有给随机权值. 02:41 upd ...
- 【深度评测】Joomla Auto Readmore插件:自动提取缩略图+智能摘要,双引擎驱动内容效率革命
"文章缩略图与摘要分离管理.重复上传图片.移动端封面图比例失调--"这些Joomla站长的经典痛点,如今被Auto Readmore插件的全自动缩略图提取功能彻底终结.本文将深度解 ...