没有合适的资源?快使用搜索试试~ 我知道了~
首页卡尔曼滤波(Kalman Filter)原理介绍
卡尔曼滤波(Kalman Filter)原理介绍
需积分: 43 1.1k 浏览量
更新于2023-05-23
评论 3
收藏 47KB DOCX 举报
该资源是卡尔曼滤波(Kalman Filter)原理,内含实例代码,看了众多文章后,自己的理解。实例一个鼠标跟踪程序。
资源详情
资源评论
资源推荐

卡尔曼滤波(Kalman Filter)
卡尔曼滤波,个人理解类似于一种信息融合算法,它是将预测值和测量值进行融合,得到一个估计值。因此需要
一个预测(状态)方程和一个观测方程。即:
^
X
k
=K
k
· Z
k
+(1−K
k
) ·
^
X
k−1
K 表示离散状态量
^
X
k
表示当前状态的估计值,该值就是预测值和测量值进行估计
Z
k
表示当前状态的观测值,该值可以是有某些传感器获取的数据
^
X
k−1
表示前一状态的估计值
K
k
表示卡尔曼增益,这个值是未知的
模型
这里用一个小车在一维坐标系中做匀加速直线运动来说明参数含义。
预测方程:
预测方程是利用线性差分方程对下一状态进行估计。例如匀速运动问题,室温问题等。其方程表达式如下:
x
k
= A x
k−1
+B u
k−1
+w
参数含义:假设一个小车,其初始状态为
x
k−1
,其加速度为
a
,那么可以得到如下方程:
x
t
=x
t − 1
+x
t − 1
· Δt +
1
2
· a· Δt
2
+w
1
v
t
=v
t−1
+a· Δt +w
2
转换为矩阵形式如下:
[
x
t
v
t
]
=
[
1 Δt
0 1
]
[
x
t−1
v
t −1
]
+
[
Δt
2
2
Δt
]
[
a
]
+
[
w
1
w
2
]
因此可以转换为预测方程,其中预测量个数为
n
,控制量个数为
l
。
x
k
=
[
x
t
v
t
]
:表示该状态的预测值,其大小为
n∗1
A=
[
1 Δt
0 1
]
:表示由上一估计状态到当前预测状态的转换矩阵,其大小为
n∗n
x
k−1
=
[
x
t −1
v
t−1
]
:表示上一状态的估计值,其大小为
n∗1
B=
[
Δt
2
2
Δt
]
:表示控制输入到当前预测值的转换矩阵,其大小为
n∗l
u
k−1
=
[
a
]
:表示控制输入值,其大小为
l∗1
w=
[
w
1
w
2
]
:表示预测噪声,表示为有上一估计状态到当前预测状态的外界干扰因素,其大小为
n∗1



















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0