加速度计低通滤波器平滑

时间:2014-08-31 11:00:27

标签: ios iphone accelerometer core-motion lowpass-filter

我正在使用设备加速度计并尝试平滑加速度计数据CMAcceleration

我在这段代码的帮助下这样做:

-(void)proccessAccelerometerData:(CMAcceleration)accelData {
    currentAccelX = (kUpdateInterval * accelData.x) + ((1.0 - kUpdateInterval) * currentAccelX);
    currentAccelY = (kUpdateInterval * accelData.y) + ((1.0 - kUpdateInterval) * currentAccelY);
}

哪个currentAccelXcurrentAccelY是最后一个加速度计x和y数据。

现在,我有平滑的x和y值,x或y的值是多少来确定用户左/右/上/下移动设备的ID?

为了让事情更清楚,例如,让我们说我有4个按钮,每个方向左/右/上/下一个,我想确定用户用户刷卡的方向? (不是轻扫手势)。 提前谢谢!

1 个答案:

答案 0 :(得分:1)

假设您以纵向方向握住设备,x轴表示向左和向右移动(正x表示右侧,负x表示左侧)。
y轴表示设备上下移动(正y向上,负y向下) z轴表示设备向前和向后移动(正z朝向用户,负z远离用户)。
Apple提供了一个信息图片:developer.apple.com