【问题标题】:Kalman Filtering need卡尔曼滤波需求
【发布时间】:2018-03-19 04:36:30
【问题描述】:

我有一个群体机器人项目。定位系统使用超声波和红外发射器/接收器完成。精度为 +-7 厘米。我能够遵循领导者算法。但是,我想知道如果传感器原始数据良好,为什么我还必须使用卡尔曼滤波器?它会改善什么?不仅会延迟发送给机器人的坐标(坐标不会立即更新,因为每个机器人每秒发送 4 次坐标需要时间来进行卡尔曼滤波器数学运算)

【问题讨论】:

    标签: localization navigation robotics kalman-filter particle-swarm


    【解决方案1】:

    传感器数据绝不是事实,无论它们有多好。他们总是会受到一些噪音的干扰。此外,它们确实具有有限的精度。因此,传感器数据只不过是您所做的观察,而您要做的是根据这些观察估计真实状态。用数学术语来说,您希望根据这些测量来估计可能性或联合概率。您可以根据上下文使用不同的工具来做到这一点。一个这样的工具是卡尔曼滤波器,它在最简单的情况下只是一个移动平均值,但通常与动态模型和一些关于错误/状态分布的假设结合使用,以便有用。动态模型对状态传播(例如知道先前状态的运动)和观察(测量)进行建模,并且在机器人/SLAM 中,通常假设误差是高斯的。此类滤波器的一个非常重要且有用的产品是根据协方差估计不确定性。

    现在,有哪些潜在的改进?基本上,您要确保您的传感器测量值与数学模型一致并且它们是“平滑的”。例如,如果您想估计移动车辆的位置,运动学方程会告诉您您期望车辆在哪里,并且您有一个相关的协方差。您的测量结果还带有协方差。因此,如果您得到的测量结果的确定性较低,您最终会相信数学模型而不是相信测量结果,反之亦然。

    最后,如果您担心延迟...请注意,标准扩展卡尔曼滤波器的复杂度大致为O(N^3),其中N 是地标的数量。所以如果你真的没有足够的计算能力,你可以把状态减少到pose, velocity,这样开销就可以忽略不计了。

    【讨论】:

      【解决方案2】:

      一般来说,卡尔曼滤波器通过对传感器输出的测量值(传感器输出)求和(使用正确的系数)和预测来帮助提高传感器精度。预测是最难的部分,因为您需要创建以某种方式预测传感器输出的模型。而且我认为在您的情况下,没有必要花时间创建这个模型。

      【讨论】:

      • 预测不一定是最难的部分,尤其是当您可以使用不同的传感器进行预测/观察时,其中一些可能已经离线校准,有些可能必须在线校准。例如,考虑一个受约束的 SLAM 系统,其预测基于 IMU,并基于来自低分辨率相机和 GPS 的视觉数据的数据组合进行更新。这些问题中的每一个都有其自身的挑战。
      【解决方案3】:

      虽然您从传感器获得准确的数据,但它们并不总是一致的。卡尔曼滤波器不仅可以识别测量数据中的任何异常值,还可以在缺少某些测量值时进行预测。但是,如果您真的在寻找计算要求较低的东西,那么您可以选择免费的过滤器。

      【讨论】:

        猜你喜欢
        • 2012-07-20
        • 2011-04-14
        • 1970-01-01
        • 2017-08-11
        • 2018-10-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多