首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >标量卡尔曼滤波实现

标量卡尔曼滤波实现
EN

Stack Overflow用户
提问于 2019-07-21 01:08:42
回答 1查看 212关注 0票数 2

试图使用Kálmán滤波器来寻找时间序列数据的稳态。

可以看到Kálmán算法的标量如下:

预测:

代码语言:javascript
复制
x(k|k-1) = Ax(k-1|k-1) + B U(k)
P(k|k-1) = AP(k-1|k-1) + W(k)

更新:

代码语言:javascript
复制
y(k) = c x(k) + v(k)
K(k) = P(k|k-1)C/(CP(k|k-1) + v(k)
P(k|k) = (1-K(k)C)P(k|k-1)

我试着去理解P(k=k,k

当这个实现时,在下一次迭代中P(k\k_k)是否变成P(k_(k~(-1))?如果是的话,P(k\k-1)中的误差协方差W(k)是否不包括在计算中,还是它们有不同的项?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-23 08:56:08

示例中的predictionupdate步骤都属于迭代k

从迭代k的角度来看,您有以下协方差:

P(k-1|k-1) -迭代k-1中的后验协方差(在测量处理之后)

P(k|k-1) -迭代k的先验协方差(在预测步骤之后,在测量处理之前)

P(k|k) -迭代k中的后验协方差(在测量处理之后)

因此,P(k|k)P(k|k-1)的区别在于,P(k|k)涉及到上一次度量的信息,而P(k|k-1)没有。

对于两个不同的迭代,下面是相同的内容:

k-1**:** 迭代

P(k-1|k-2) = P(k-2|k-2) + W(k-1)

P(k-1|k-1) = (1-K(k-1))P(k-1|k-2)

k**:** 迭代

P(k|k-1) = P(k-1|k-1) + W(k)

P(k|k) = (1-K(k))P(k|k-1)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57129675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档