C++下扩展卡尔曼类(EKF)的实现

最初的卡尔曼滤波用于解决离散系统的滤波问题,然而工程中常遇到的滤波问题是连续系统产生的滤波问题。
卡尔曼滤波器具有如下形式的离散的状态方程:
Xk+1=Ψk+1,kXk+Wk(1)X_{k+1}=\Psi_{k+1,k} X_{k}+W_{k} \tag{1}Xk+1=Ψk+1,kXk+Wk(1)
但这只是一个高度简化的方程,更多的时候我们能获得的是关于连续系统的如下形式的方程:
X˙=f(X)+W(2)\dot X=f(X)+W \tag{2}X˙=f(X)+W(2)
其中fff通常是一个非线性方程。
针对上述的非线性方程,扩展卡尔曼滤波的做法如下:
首先,状态一定存在一个轨迹X(t)X(t)X(t),尽管根据式(2)我们很难具体地解出这个轨迹。假设有一个t0t_{0}t0时刻的状态估计值X^\hat XX^,在状态的估计值X^\hat XX^附近把X(t)X(t)X(t)展开得到
X(t)=X^+∂X∂t∣X=X^(t−t0)+⋯(3)X(t)=\hat X+\frac{\partial X}{\partial t}\mid_{X=\hat X}(t-t_{0})+\cdots \tag{3}X(t)=

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值