找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: Bluesky

扩展卡尔曼滤波器(EKF):一个面向初学者的交互式教程

[复制链接]
发表于 2016-4-30 19:15:19 | 显示全部楼层
楼主写的非常好,但是为什么不更新了呢?
回复 支持 反对

使用道具 举报

发表于 2016-5-5 15:13:45 | 显示全部楼层
本帖最后由 zoujiachi 于 2016-5-5 16:52 编辑

7.运行滤波器

我们现在已经拥有了运营卡尔曼滤波器的所有条件:


预测:
捕获1.PNG

更新:

捕获2.PNG

请注意我在更新阶段将k-1的描述改为了简单的k,是为了表达我们正在同一个周期中修改这些存在的变量这样一个事实。[9]



为了试验我们的滤波器,我们需要:
  • 一系列的观察值Zk
  • 一个初始值 捕获3.PNG
    为了状态估计。这个值也可作为我们第一个观测值Zo
  • 一个初始的Po作为预测误差。它不能为0,否则pk将永远保持为0,所以我们索性将其置位1

因为我们的观测值并不是取自实际的系统(类似于飞机降落那样的系统),所以我们需要给观察数据添加一些随机噪声[10] Vk[-200,200]到理想值上 捕获4.PNG
起始从 捕获5.PNG


捕获6.PNG



[9]实际上,如果你看网页的源码,你会看到JavaScript的预测和更新的公式如下:  // Predict   
  xhat = a * xhat;   
  p    = a * p * a;   
// Update   
  g    = p  / (p  + r);   
  xhat = xhat + g * (z - xhat);   
  p    = (1 - g) * p;

[10]我是添加的一个均匀分布的噪声而不是通常的卡尔曼滤波器中所描述的高斯噪声,但这对于这个观测例子来说并不会有什么不同

回复 支持 反对

使用道具 举报

发表于 2016-5-5 16:36:48 | 显示全部楼层
本帖最后由 zoujiachi 于 2016-5-5 16:51 编辑

8.一个更现实的模型


重新回到那两个描述系统的两个公式:
33.PNG

x是我们系统当前的状态,xk-1是系统前一次的状态,a是某个常量,zk是我们系统当前的观测值,vk是当前有关观测的噪声。

虽然这两个等式在许多系统中都应用良好,但有时候也不是这样。首先,我们没有考虑飞行员在飞机上所操纵的时变的控制量,比如,移动控制杆前进或者后退。为了考虑这种控制我们介绍另外一个变量uk,表示当前飞行员发送的控制信号。就像前一次系统状态xk-1通过常量a进行缩放一样,这个控制信号也可以通过一个常量来进行缩放,我们取它为b。所以我们最终的状态等式变为:

11.PNG

将新的变量高亮为蓝色

通常,除了噪声的信号可能会有一个比例的缩放,所以我们观察值zk的等式可以被重写为:[size=13.3333px][11]

22.PNG



回复 支持 反对

使用道具 举报

发表于 2016-5-17 10:19:08 | 显示全部楼层
9.修改估计值
再一次,我们更真实/更普遍的等式如下:
1.PNG

按照我们所预期的,我们模型中所添加的新的元素相应的需要修改我们的预测和更新的等式:
Predict:
2.PNG

Update:
3.PNG


对于飞机的例子,这里有个扩展,显示了更长的持续时间以及添加了一个信号量来表示飞行员回拉操纵杆来提升飞机的高度。如下,原始信号是蓝色,红色是观察信号,卡尔曼滤波信号是绿色。
4.PNG

回复 支持 反对

使用道具 举报

发表于 2016-5-17 11:04:28 | 显示全部楼层
10.加入速度到系统中
回顾最初我们计算飞机高度的等式:
1.PNG

以及更一般的形式:
2.PNG

回顾你高中学的数学和物理知识,这个公式看起来有点古怪。高度,总而言之,是一种距离(海平面以上,或者地平面以下),对于我们所学的公式来说。
3.PNG



我们是否可以综合这两种思考距离的不同方式?答案是肯定的,但这需要我们分两步走。
首先,我们要高中学的公式中介绍current time和previous time的概念。以及思考离散时间步长的距离而不是总的距离。 4.PNG

换句话说,我们当前的位置,是我们上个时刻的位置加上上个时刻我们走过的距离。如果我们用一般的时间间隔来计算,或者步长(1s,100ns,6个月等),我们可以将其简化如下:
5.PNG

这个等式更接近于一般的形式
6.PNG



但是我们似乎还是有两个不同的系统:一个包含一个乘式,一个包含一个乘式和一个加式。


下一步我们要学习的可以将这两种形式进行融合,那就是:线性代数
回复 支持 反对

使用道具 举报

发表于 2016-5-31 04:22:45 | 显示全部楼层
怎么没了????
回复

使用道具 举报

发表于 2016-5-31 09:38:41 | 显示全部楼层
学习下,写的很好,自己还有好些地方不懂的。
回复 支持 反对

使用道具 举报

发表于 2016-7-27 12:02:30 | 显示全部楼层
楼主更新的很好 正在学习入门知识
回复 支持 反对

使用道具 举报

发表于 2016-8-2 17:06:28 | 显示全部楼层
求更新,求更新
回复 支持 反对

使用道具 举报

发表于 2016-8-6 17:30:38 | 显示全部楼层
占位编辑
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表