使用卡尔曼滤波器在Python中过滤加速度计噪声
我从一个插口获取到来自加速度计的数据流,这些数据里面有很多噪音。
something like this:
...
-0.014532123
0.183950298
0.003323536
-0.342343526
...
我试过用低通滤波器,但结果还是不够平滑。我觉得我需要使用卡尔曼滤波器,所以我得实现一个函数来“修正”数据流中的每一个元素。
stream_element_out = kalman(stream_element_in)
我在用Python编程,我在网上找了很多例子,但我还是不明白怎么把它应用到我的项目中 :).. 有人能简单地给我解释一下怎么实现这个算法吗? :)
1 个回答
1
对最近的x
个结果取个平均值,可以让数据看起来更平滑。
x
是一个可以调整的常数,根据你的应用需求来设置,找到最合适的值。
你还可以把那些与最近x
个数字的平均值相差超过y
的输入过滤掉。