我很感兴趣,传感器融合系统中的双重输入在卡尔曼滤波器中如何建模?
举个例子,如果您有一个加速度计和陀螺仪,并希望呈现“水平线”,就像飞机上的演示一样,可以在这里看到一个很好的演示。
实际上,您如何收集两个传感器的正面属性并最小化其负面作用?
这是否在观测模型矩阵(通常由大写H表示)中进行建模?
备注:这个问题还在math.stackexchange.com上被问到,但没有回答。
我很感兴趣,传感器融合系统中的双重输入在卡尔曼滤波器中如何建模?
举个例子,如果您有一个加速度计和陀螺仪,并希望呈现“水平线”,就像飞机上的演示一样,可以在这里看到一个很好的演示。
实际上,您如何收集两个传感器的正面属性并最小化其负面作用?
这是否在观测模型矩阵(通常由大写H表示)中进行建模?
备注:这个问题还在math.stackexchange.com上被问到,但没有回答。
angle_radians+=gyro_reading_radians_per_sec * seconds_since_last_gyro_reading
每次接收到加速度计读数:
angle_radians+=0.02 * (angle_radians_from_accelerometer - angle_radians)
水平线是 G' * (u, v, f)=0,其中 G 是重力向量,u 和 v 是图像中心坐标,f 是焦距。现在传感器的优缺点:陀螺仪超快超准确,但会漂移;加速度计精度较低,但(如果校准)没有偏差且不漂移(除了重力加速度以外)。它们测量不同的东西 - 加速度计测量加速度,因此相对于重力向量的方向,而陀螺仪测量旋转速度,因此改变方向。要将其转换为方向,必须积分其值(幸运的是,它可以以高帧率采样,如100-200)。因此,卡尔曼滤波器被认为是线性的,不适用于陀螺仪。目前,我们只能将传感器融合简化为读数和预测的加权和。
您可以组合两个读数 - 加速度计和积分陀螺仪,并使用与数据方差成反比的权重来建模预测。您还需要偶尔使用指南针,因为加速度计不能告诉您有关方位角的信息,但我想这与计算水平线无关。该系统应具有响应性和准确性,为此,每当方向快速变化时,陀螺仪的权重应该很大;当系统稳定下来并停止旋转时,加速度计的权重将增加,允许更多零偏差读数的积分,并消除陀螺仪的漂移。