何时使用EKF,何时使用卡尔曼滤波器?


13

我现在正在学习卡尔曼过滤器一个星期。我刚刚发现EKF(扩展卡尔曼滤波器)可能更适合我的情况。

我想我不会将KF / EKF应用于变速表(该设备会告诉飞机和跳伞者其垂直位置和速度是多少)。就我而言,我已经生成了一些样本数据:在最初的几秒钟内,他(例如降落伞)下降(速度为正),然后上升(速度为负)。

据我所知,这个系统是线性的。那么我应该使用KF还是EKF?


我想详细了解msckf吗?我正在做一个项目吗?
Sushanth Kalva 2015年

Answers:


16

答案很简单:如果您的系统是线性的,那么(常规)卡尔曼滤波器就可以了。简要概述了两者之间的区别:

扩展的卡尔曼滤波器(EKF)是可以应用到非线性系统的扩展。放宽对测量和状态转换模型的线性方程的要求;相反,模型可以是非线性的,仅需可微。

EKF的工作原理是将每个时间步长的非线性模型转换为线性方程组。在单变量模型中,您将使用当前模型值及其导数来执行此操作。多个变量和方程的通用化是雅可比矩阵。然后以与标准卡尔曼滤波器类似的方式使用线性化方程。

就像在许多情况下用线性模型近似非线性系统一样,在某些情况下,EKF的性能也不佳。如果您对底层系统的状态有很差的初步猜测,那么您可能会产生垃圾。与线性系统的标准卡尔曼滤波器相比,EKF在任何意义上都没有被证明是最优的。它只是线性系统技术对更多问题的扩展。


谢谢。您能否指出一两个实际示例,其中一个应使用EKF?
2012年

2
考虑以跟踪在3D空间中自由移动的目标的雷达为例。雷达可以测量其与目标之间的仰角和方位角,以及到目标的距离。这是一个球坐标系。但是,目标的动力学(位置,速度,加速度)最好用笛卡尔坐标表示,因此您可以将跟踪系统的状态表示为目标的笛卡尔位置。因此,测量值与系统状态之间存在非线性关系,这建议使用扩展的卡尔曼滤波器。
杰森R

那么KF或EKF与噪声无关吗?仅当噪声正常时才能应用KF的想法是错误的,对吗?
2013年

@ perfectionm1ng:整个卡尔曼滤波器框架的主要假设之一是所涉及的噪声过程是高斯的。但是,如果这不是真的,那么对于您的应用程序来说仍然可能“足够好”。EKF与KF的区别是如上所述的测量与状态之间的线性与非线性关系。
Jason R

@JasonR哦!我知道了。您能否在这两个相关问题上提供帮助?robotics.stackexchange.com/questions/1767/...dsp.stackexchange.com/questions/10387/...
Sibbs赌博

6

我的回答是,如果是线性系统,则应使用KF;如果是线性系统,则应使用KF。如果是非线性程度较弱的非线性系统,则应使用EKF;如果是非线性程度较高的非线性系统,则可以考虑使用知名的UKF。我为此画了一个图,希望它很有用。 在此处输入图片说明


5

快速文献调查告诉我,EKF通常用于GPS,定位/导航系统以及无人飞行器中。[例如参见Abhijit G.Kallapur,Shaaban S.Ali和Sreenatha G.Anavatti的Springer(2007)``扩展的卡尔曼滤波器在无人机识别中的应用''。]

如果您有理由相信系统非线性的线性近似并不太有害,则EKF可能会比KF产生更好的结果。但是没有理论上的最优性保证。


谢谢。我正在使用航空系统,但尚未看到实际案例-只是想先解决一下问题。
2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.