我正在使用Android手机开发加速度计。我希望过滤掉加速度计返回的可怕噪音,以记录手机的 Action 。

我正在阅读卡尔曼滤波器,因为低通还不够。

但是我没有从ACCELERATION(k-1)ACCELERATION(k)过渡的模型,因为它是用户的运动。因此,我没有状态转移矩阵(不同论文中的H或F,是将等式Xk中的Xk-1乘以Xk = HXk-1 + Bcommand + noise的矩阵)

我看到一些人在简单的示例中采用了身份矩阵。如何实现动态加速?

我知道卡尔曼滤波器,人们总是产生一些H矩阵,我只是不知道这种情况。

最佳答案

卡尔曼滤波器通常被认为是线性滤波器,您可以在其中拥有所有模型矩阵,但是滤波器的概念及其最初的应用来自非线性模型。在这种情况下,您可以使用函数而不是矩阵。

如果预测和更新功能是高度非线性的,则可以使用统计方法在线估算参数。首先,您可以看到unscented kalman filter,它可以从确定性采样技术unscented transformation中恢复均值和协方差。我认为,从您的情况出发,这可能是最好的选择。

卡尔曼滤波器还有其他变体。您可以从wikipedia开始,但是如果您使用Google“自适应卡尔曼滤波器”,则可以看到各种主题。

如果您想更深入地学习该主题,而不必从所有数学入手,我建议使用Phil Kim的book: Kalman Filter for Beginners很好。传感器融合还有其他可能性,但这是另一个广泛的主题。

关于android - 卡尔曼滤波器: how to use it with no "state transition model"?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14465415/

10-13 03:35