大致和插值GPS轨迹

4
我有一系列的GPS值,每个值都包含:时间戳、纬度、经度、卫星数、GPS速度、GPS方向...(这些是NMEA数据的子集)。我不确定方向和速度值的质量如何。此外,我不能期望序列在时间戳方面是均匀分布的。我想要在一个均匀的时间步长下得到平滑的轨迹。
我读过卡尔曼滤波器是这种任务的首选工具。这确实是这样吗?
我找到了一些Python的卡尔曼滤波器实现: 然而,这些似乎假定数据是定期的,即迭代。 如果要集成对非定期观测的支持,需要什么?
我能想象的一件事是将预测步骤重复/适应为基于时间的模型。你能为这个应用程序推荐这样的模型吗?它需要考虑NMEA速度值吗?

你自己找到答案了吗? - Poul K. Sørensen
最终我还没有必要这样做(但是现在重新阅读问题,可能有点离题/过于宽泛/基于观点,不适合本网站)。 - moooeeeep
肯定的。卡尔曼滤波器应该是一个不错的工具,但我只是在寻找实现细节时遇到了这个问题。 - Poul K. Sørensen
你想要插值的点有多远?被跟踪的对象是什么 - 如果是飞机,插值就很简单,但如果是汽车,则不太一样,人则非常困难。如果您可以对对象的运动行为做出一些假设,插值算法可以变得更简单和更准确。此外,是否有指南针、加速度计、陀螺仪、高度计等传感器可用? - Dojo
@Dojo 通常相邻点之间的距离最多为几米,每 <5 秒更新一次。它是在汽车中记录的。车辆的速度通常是可用的。没有罗盘、陀螺仪或 IMU 可用。 - moooeeeep
2个回答

1

1

我在寻找一份易于理解的卡尔曼滤波器资源时,强烈推荐这个链接:https://github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python

针对您提出的不规则间隔观测的问题:请参考上述参考资料中的第8章,“非平稳过程”部分。简而言之,您需要为每个迭代使用不同的状态转移函数和过程噪声协方差。由于它们是仅依赖于delta t的唯一组件,因此这些是您每次迭代需要更改的唯一内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接