質問

アップルのガイドラインで次のコードを見つけました:

- (void)accelerometer:(UIAccelerometer*)accelerometer didAccelerate:(UIAcceleration*)acceleration
{
    //Use a basic low-pass filter to only keep the gravity in the accelerometer values
    accel[0] = acceleration.x * kFilteringFactor + accel[0] * (1.0 - kFilteringFactor);
    accel[1] = acceleration.y * kFilteringFactor + accel[1] * (1.0 - kFilteringFactor);
    accel[2] = acceleration.z * kFilteringFactor + accel[2] * (1.0 - kFilteringFactor);
}

それは正確に何をしますか?このローパスフィルターとは何ですか? なぜ適用する必要があるのですか?

事前に感謝します。

役に立ちましたか?

解決

何をする必要があるかは、価値が必要なものによって異なりますが、基本的な考え方は、手の動きなどによる振動の影響を減らすことです。生の加速度値を取得し、それらを重力ベクトルとして扱うと、多くのジッタが発生します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top