如何使用粒子过滤器增强行人航位推算?

信息处理 粒子过滤器
2022-02-13 07:28:44

我正在使用粒子过滤进行行人航位推算。我正在使用移动加速度计传感器来检测步数和步幅并计算总行驶距离。

我想使用粒子过滤器来提高结果的准确性。我已经阅读了粒子滤波器的理论,但停留在如何将模型应用于我的案例的问题上。

特别是我的问题,我有以下问题:

  1. 如何确定初始仓位pdf分布?我有一个蓝牙信标来检测起始位置。粒子过滤器在开始时需要一个点簇,对吗?我不认为在我的情况下分布是高斯的。那么它应该是什么?

  2. 我应该在智能手机上进行粒子过滤还是将数据传回并使用 Matlab 在计算机上进行?会不会计算很激烈。

1个回答

如何确定初始位置pdf分布?我有一个蓝牙信标来检测起始位置。粒子过滤器在开始时需要一个点簇,对吗?

不,粒子过滤器的分布在启动时不需要是一个簇。一个经典案例是让机器人弄清楚它在哪里。起初它不知道它在哪里。它会在任何地方获取传感器读数,但这通常不足以对其进行定位(如果您只需要一组读数,则不需要粒子过滤器)。相反,它会四处移动并读取更多读数。所有许多散布的粒子都代表可能的位置。随着它移动并读取更多读数,越来越多的可能位置变得非常不可能,直到分布崩溃为单个集群。那时机器人“知道”(或至少认为它知道)它在哪里。

我不认为在我的情况下分布是高斯的。那么它应该是什么?

如果不给我们更多信息,就无法回答这个问题。由于听起来您的初始估计完全来自您的蓝牙信标,因此您可能需要生成一个基于经验数据的准确性模型。

我应该在智能手机上进行粒子过滤还是将数据传回并使用 Matlab 在计算机上进行?会不会计算很激烈。

无论哪种方式。计算负载在很大程度上取决于您使用了多少粒子。关于您需要多少粒子,没有正确的答案。更多的粒子意味着更多的计算,但也降低了得到错误答案的机会。