用于FALL检测的卡尔曼滤波器传感器融合:加速度计+陀螺仪

时间:2017-03-02 17:45:09

标签: android filtering kalman-filter sensor-fusion pykalman

我试图了解传感器融合的过程以及卡尔曼过滤。

我的目标是使用加速度计和陀螺仪检测设备的跌落。

在大多数论文中,例如this one,它提到了如何克服由于陀螺仪引起的漂移和由于加速度计引起的噪声。最终传感器融合为我们提供了更好的滚动,俯仰和偏航测量,而不是更好的加速度。

是否有可能通过传感器融合获得更好的“加速结果”,然后将其用于“跌倒检测”?因为只有更好的Roll,Yaw和Pitch不足以检测跌倒。

然而,这source建议使用卡尔曼滤波器分别平滑加速度计(Ax,Ay,Az)和陀螺仪(Gx,Gy,Gz)并使用某种分类算法(如k-NN算法)或聚类来检测跌倒使用有监督的学习。

分类部分不是我的问题,如果我应该融合传感器(3D加速度计和3D陀螺仪)或单独平滑传感器,我的目标是检测跌落。

2 个答案:

答案 0 :(得分:1)

我认为您不需要使用KF来检测跌倒检测。使用简单的加速度计将能够检测到设备的跌落。如果您应用低通滤波器来平滑加速度计并检查总加速度是否接近零(在自由落体设备中使用-g(9.8 m / s2)acc)超过一定的持续时间,则可以检测为下降。 上述方法的问题是如果设备快速旋转则加速度不会接近零。对于强大的解决方案,您可以为此应用程序实现简单的互补(搜索Mahony)过滤器而不是KF。

答案 1 :(得分:1)

一些澄清

  1. 卡尔曼滤波器通常用于进行位置和方向估计的传感器融合,通常将IMU(加速度和陀螺仪)与一些无漂移绝对测量值(计算机视觉,GPS)相结合

  2. 免费滤波器,通常用于通过组合加速(嘈杂但非漂移)和陀螺仪(精确但漂移)进行良好的方向估计。使用加速并与陀螺结合,可以有相当好的方向估计。您可以使用陀螺仪将方向估计视为主要方位,但使用加速度进行校正。

  3. 对于使用IMU进行跌倒检测的应用,我认为加速非常重要。没有已知的方法来纠正"加速读数,并且这种方式的思考可能是错误的方法。我的建议是使用加速度作为系统的输入之一,收集大量模拟跌倒情况的数据,你可能会惊讶于那里有很多可行的信号。