卡尔曼滤波的全方位get

kalman的学习策略

对于基础公式,能够理解就行了,基础的数学概念要清楚
不需要自己推导,多做一些例子去看这个滤波器的强大,有个直观感受,实际应用的时候,有很多开源的滤波器,或者matlab的代码可以转换到c/c++ source进行使用!
把滤波器用好,产生良好的估计值,就达到目的了!

kalman当中的数学基础

基础

^ 表示最大似然估计值
字母上面的波浪形 表示无限接近真实值的


image.png

a一波浪读 "a tilde" a一个尖尖读 "a caret"
有个横线 叫x bar 有个撇叫x prime

协方差的理解

讲解卡尔曼滤波的一个比较好理解的视频,简单的把五个公式来龙去脉讲了一遍,可以多看几遍,然后自己要动手,不管是做笔记,跑example,还是把开源的filter用起来,都有利于get和成长
http://www.iqiyi.com/w_19rujtruhp.html

image.png

基本公式的理解

先说下 5个公式的组成,希望在这一片文章中把网上各种各样的5个公式的形式都撸一遍,让大家从各式各样的公式表达方法中抽离出来,做到心里5个公式的了然于胸
先对状态有个理论上的推算,这个是理论上求出状态的步骤,最后还会利用这个理论上的值和观测值做融合
以视频当中的小车子举例

单个公式的讲解

  • 【公式一】状态预测方程,具体公式内容,见下图
车子例子的状态预测方程详细推导

解释一下这个公式,u一般是控制量,比如车子运行的时候加油门和刹车的控制量,F是状态转移矩阵,B是控制矩阵,

  • 【公式二】状态协方差预测,方程内容见5个公式的图的方程2
状态协方差方程特性

协方差的特性,所以乘以F和F的转置矩阵,后面在加一个模型的干扰噪声矩阵Q

  • 【公式三】卡尔曼系数方程
    R是观测噪声的协方差矩阵
    H为观测矩阵
  • 【公式四 公式五】
    这两个公式都是用K去融合一个更加准确的估计值,然后这个估计值会成为下一次迭代的t-1值

五个公式的理解

对比下我们的车子例子的五个公式
【五个公式-车子例子】
(1)状态预测公式
F是状态转移矩阵,B是控制矩阵
(2)不确定性在各个时刻的传递关系公式
P也需要进行迭代
Q是预测模型的本身带来的噪声的协方差
(3)卡尔曼系数公式
在这里H=[1 0],R是观测带来的噪声的协方差
(4)数据融合公式
z是观测值
(5)协方差更新公式

五个公式图

同时我们看网上浏览量不错的一篇文章当中的公式,当时我看这个帖子,是越看越糊涂,然后对比别的帖子,也是形式各异,弄的都不知道5个公式是啥,这些作者太不负责任了!
http://blog.csdn.net/ouyang_linux007/article/details/7563998
【五个公式】:

  • X(k|k-1)=A X(k-1|k-1)+B U(k) (1)
  • P(k|k-1)=A P(k-1|k-1) A’+Q (2)
  • X(k|k)= X(k|k-1)+Kg(k) (Z(k)-H X(k|k-1)) (3)
  • Kg(k)= P(k|k-1) H’ / (H P(k|k-1) H’ + R) (4)
  • P(k|k)=(I-Kg(k) H)P(k|k-1) (5)
    五个公式当中的各个量解释:
  • Q是系统过程的covariance,上文也解释了,就是预测模型的噪声协方差
  • U(k)是k时刻对系统的控制量
  • A就是上面车子当中的F 状态转移矩阵
  • B就是控制矩阵 像A B这种的好像很多帖子当中的表述方法各式各样,弄的很多初学者容易晕,所以理解这个位置的含义,什么形式的字母都无所谓
  • Z是观察值 这个是一致的
  • X(k)是k时刻的系统状态,X是状态矩阵,状态量
  • H是测量系统的参数,对于多测量系统,H为矩阵 上文中是[1 0],
  • 过程(模型带来的)和测量的噪声。他们被假设成高斯白噪声(White Gaussian Noise),他们的covariance 分别是Q,R
[贴吧的帖子:http://tieba.baidu.com/p/3276827805](http://tieba.baidu.com/p/3276827805)
博客文章:http://www.cnblogs.com/jcchen1987/p/4371439.html

五个公式的顺序有点小差别,但是基本上都是这几个,两个状态更新,三个测量更新

  • 要确定的几个量ABHPQRK:

ABH都是固定的系统参量,PQRK

增益矩阵K是不需要初始化的
PQR 需要初始化
H一般都是1的对角矩阵

  • 需要初始化的几个量PQR:

P是误差矩阵,初始化可以是一个随机的矩阵或者0

增益矩阵K是不需要初始化的

Q和R分别是预测和观测状态协方差矩阵,一般可以简单认为系统状态各维之间(即上面的a和b)相互独立,那么Q和R就可以设置为对角阵。而这两个对角线元素的大小将直接影响着滤波结果,若Q的元素远大于R的元素,则预测噪声大,从而更相信观测值,这样可能使得kalman滤波结果与观测值基本一致;反之,则更相信预测,kalman滤波结果会表现得比较规整和平滑

手动仿真

res-软件

用于仿真的octave软件下载地址
https://ftp.gnu.org/gnu/octave/windows/
我是win10 我用了 octave-4.2.1-w64-installer.exe
启动界面是这样的

octave安装后的效果

动手做

http://www.iqiyi.com/w_19rujtruhp.html
跟着这个视频做测试,
代码如下
Z=(1:100);
noise=randn(1,100);
Z=Z+noise;

X=[0; 3];
P=[1 0; 0 1];
F=[1 1; 0 1];
Q=[0.0001, 0; 0 0.0001];
H=[1 0];
R=1;

%figure;
%hold on;

for i=1:100
X_ = FX;
P_ = F
PF'+Q;
K = P_
H'/(HP_H'+R);
X = X_+K(Z(i)-HX_);
P = (eye(2)-KH)P_;

plot(X(1), X(2));
end

最后用octave仿真的时候,需要选中代码,然后选择:仿真选中代码的方式

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,294评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,493评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,790评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,595评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,718评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,906评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,053评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,797评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,250评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,570评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,711评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,388评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,018评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,796评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,023评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,461评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,595评论 2 350

推荐阅读更多精彩内容