我想我不会将KF / EKF用于测速计(该装置可以告诉飞机和降落伞垂直方向位置和速度)。就我而言,我已经生成了一些样本数据:在最初的几秒钟内,他(例如降落伞)下降(速度为正),然后上升(速度为负)。
到目前为止如我所见,这个系统是线性的。那我应该使用KF或EKF吗?
#1 楼
答案很简单:如果您的系统是线性的,那么(常规)卡尔曼滤波器就可以了。简要介绍了两者之间的区别:扩展卡尔曼滤波器(EKF)是可以应用于非线性系统的扩展。放宽对测量和状态转换模型的线性方程的要求;相反,模型可以是非线性的,仅需可微。
EKF的工作原理是将每个时间步长的非线性模型转换为线性方程组。在单变量模型中,您将使用当前模型值及其导数来执行此操作。多个变量和方程的通用化是雅可比矩阵。然后,以与标准卡尔曼滤波器相似的方式使用线性化方程。如果您对底层系统的状态有很差的初步猜测,那么您可能会产生垃圾。与线性系统的标准卡尔曼滤波器相比,EKF在任何意义上都没有被证明是最佳的。这只是线性系统技术对更多问题的扩展。
评论
$ \ begingroup $
谢谢。您能否指出一两个真实的例子,其中一个应使用EKF?
$ \ endgroup $
–Primož Kralj
2012年8月16日12:48
$ \ begingroup $
以一个雷达为例,它跟踪可在3D空间中自由移动的目标。雷达可以测量其与目标之间的仰角和方位角,以及到目标的距离。这是一个球坐标系。但是,目标的动力学(位置,速度,加速度)最好用笛卡尔坐标表示,因此您可以将跟踪系统的状态表示为目标的笛卡尔位置。因此,测量值与系统状态之间存在非线性关系,这建议使用扩展的卡尔曼滤波器。
$ \ endgroup $
–Jason R
2012年8月16日19:49
$ \ begingroup $
那么KF或EKF与噪音无关吗?仅当噪声正常时才能应用KF的想法是错误的,对吗?
$ \ endgroup $
– Sibbs赌博
13年8月20日在14:03
$ \ begingroup $
@ perfectionm1ng:整个Kalman滤波器框架的主要假设之一是所涉及的噪声过程是高斯的。但是,如果这不是真的,那么对于您的应用程序来说仍然可能“足够好”。如上所述,EKF与KF的区别是测量与状态之间的线性与非线性关系。
$ \ endgroup $
–Jason R
2013年8月20日14:39
$ \ begingroup $
@JasonR哦!我懂了。您能帮忙解决这两个相关问题吗? robotics.stackexchange.com/questions/1767/…和dsp.stackexchange.com/questions/10387/…
$ \ endgroup $
– Sibbs赌博
13年8月20日在14:43
#2 楼
我的回答是,如果是线性系统,则应使用KF;如果是线性系统,则应使用KF。如果是具有弱非线性的非线性系统,则应使用EKF;如果是具有高非线性度的非线性系统,则可以考虑使用著名的UKF。我为此画了一个图,希望它很有用。#3 楼
快速文献调查告诉我,EKF通常用于GPS,定位/导航系统以及无人飞行器中。 Kallapur,Shaaban S. Ali和Sreenatha G. Anavatti,Springer(2007)]。如果您有理由相信系统非线性的线性近似并不太有害,则EKF可能比KF更好的结果。但是没有理论上的最优性保证。
评论
$ \ begingroup $
谢谢。我正在使用航空系统,但尚未看到实际案例-只是想先解决一下问题。
$ \ endgroup $
–Primož Kralj
2012年8月17日下午6:32
评论
我想详细了解msckf吗?我正在做一个项目吗?