Frage

Ich fand das folgende Stück Code in Apfel-Richtlinien:

- (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);
}

Was bedeutet es genau tun? Was ist das Tiefpassfilter? Warum muss ich es anwenden?

Vielen Dank im Voraus.

War es hilfreich?

Lösung

Was Sie tun müssen, hängt davon ab, was Sie den Wert für benötigen, aber die Grundidee ist es, die Wirkung von Schwingungen von Handbewegungen und so zu reduzieren. Wenn Sie die rohen Beschleunigungswerte nehmen und sie als Schwerkraftvektor behandeln, werden Sie eine Menge von Jitter erhalten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top