前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kalman滤波通俗理解+实际应用

Kalman滤波通俗理解+实际应用

原创
作者头像
一点人工一点智能
修改2023-03-16 10:00:02
8420
修改2023-03-16 10:00:02
举报

作者 | 南叔先生

原文地址:http://t.csdn.cn/s8RaT

01  Kalman用于解决什么的问题

卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。

人话就是:线性数学模型算出预测值+传感测量值=更准确的测量值。

图片
图片

02  先来看一下姿态估计问题

图片
图片

03  看几个例子

3.1 例题1

假设有一个标量系统,信号与观测模型为:

图片
图片

其中a为常数,n[k]w[k]是不相关的零均值白噪声,方差分别为\sigma^2_n\sigma^2 。系统的起始变量x[0]为随机变量,其均值为零,方差为P_x[0]

(1)求估计x[k] 的卡尔曼滤波算法;

(2)当a=0.9,\sigma^2_n=1,\sigma^2=10,P_x[0]=10 时的卡尔曼滤波增益和滤波误差方差。

根据卡尔曼算法,预测方程为:

图片
图片

预测误差方差为:

图片
图片

卡尔曼增益为:

图片
图片

滤波方程:

图片
图片

滤波误差方差

图片
图片

起始:

图片
图片
图片
图片

3.2 例题2——运动模型,写出匀加速运动的状态转移方程

第一步,根据基本的物理运动方程,写出状态方程

图片
图片

第二步,写出观测方程模型

图片
图片

我开始也不明白这个观测方程是啥意思,实际上这是模拟传感器的测量值,S代表位移,V代表误差。这里代表目标测量量为位移。                                           

第三步,将第一步和第二步的状态方程与观测方程写成矩阵形式

图片
图片

根据对应关系,可以得到系数:

图片
图片

其中A叫做状态转移矩阵,G叫做控制矩阵,H叫做预测矩阵

给定一个初值,就可以迭代得到后面的值了。

图片
图片

04  计算流程

图片
图片

05  详细推导

图片
图片
图片
图片
图片
图片
图片
图片
图片
图片

下图更简洁的展示了计算流程:

其中F为控制矩阵,Q为预测不确定性,R为传感器噪声,H为映射矩阵,y为误差,

S为方差之和,K为卡尔曼增益,P为更新后的协方差 

图片
图片

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 01  Kalman用于解决什么的问题
  • 02  先来看一下姿态估计问题
  • 03  看几个例子
    • 3.1 例题1
      • 3.2 例题2——运动模型,写出匀加速运动的状态转移方程
      • 04  计算流程
      • 05  详细推导
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档