【问题标题】:Accelerometer Low Pass Filter Smoothing加速度计低通滤波器平滑
【发布时间】:2014-10-24 19:48:09
【问题描述】:

我正在使用设备加速度计并尝试平滑加速度计数据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 个按钮,每个方向左/右/上/下一个,我想确定用户用户在哪个方向滑动设备? (不是滑动手势)。 提前致谢!

【问题讨论】:

  • “左/右/上/下”取决于设备的握持方式。移动平均线是,它不反映设备当前移动的方向。前移动:u1,u2,d1,u2,u1,d2。平均值为u5,电流为d2。这个问题需要更多解释,而您要完成的工作会有所帮助。
  • @Zaph 我为你编辑我的问题 m8

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


【解决方案1】:

假设您以纵向方式握持设备,x 轴表示向左和向右的移动(正 x 向右,负 x 向左)。
y 轴表示设备的上下移动(正 y 表示向上,负 y 表示向下)。
z 轴表示设备前后移动(正 z 朝向用户,负 z 远离用户)。
Apple 有一张信息图:developer.apple.com

【讨论】:

  • 你能澄清一下这个问题吗?
  • 所以您想知道如何确定设备相对于用户的移动方向,无论设备是纵向、倒置还是其他倾斜方式?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-12
  • 1970-01-01
  • 2015-01-03
  • 2017-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多