我正在对陀螺仪和加速度计数据进行数学处理,并希望低通滤波处理结果数据。因此,能否有人发布一个通用的低通滤波器代码?
我正在对陀螺仪和加速度计数据进行数学处理,并希望低通滤波处理结果数据。因此,能否有人发布一个通用的低通滤波器代码?
一个一阶IIR低通滤波器可以表示为:
output_value = rate * input_value + (1.0 - rate) * previous_output_value;
这基本上就是苹果的AccelerometerGraph示例中的内容。你根据想要的频率(非常粗略的每秒晃动次数)选择速率参数,以便开始衰减或滚动以获得更平滑的输出结果,并且根据输入数据的采样率进行采样。
sample[n] (sample[n] + sample[n + 1]) / 2;
UIAccelerationValue lowPassFilteredXAcceleration = (currentXAcceleration * kLowPassFilteringFactor) + (previousLowPassFilteredXAcceleration * (1.0 - kLowPassFilteringFactor));