Я помню, как видел код для фильтра Highpass несколько дней назад где-то в примерах, однако сейчас нигде не могу его найти! Может ли кто-нибудь запомнить меня, где был код реализации фильтра Highpass?
Или еще лучше выложить алгоритм?
Спасибо!
На форумах idevkit.com:
#define kFilteringFactor 0.1 static UIAccelerationValue rollingX=0, rollingY=0, rollingZ=0; - (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration { // Calculate low pass values rollingX = (acceleration.x * kFilteringFactor) + (rollingX * (1.0 - kFilteringFactor)); rollingY = (acceleration.y * kFilteringFactor) + (rollingY * (1.0 - kFilteringFactor)); rollingZ = (acceleration.z * kFilteringFactor) + (rollingZ * (1.0 - kFilteringFactor)); // Subtract the low-pass value from the current value to get a simplified high-pass filter float accelX = acceleration.x - rollingX; float accelY = acceleration.y - rollingY; float accelZ = acceleration.z - rollingZ; // Use the acceleration data. }
На тот случай, если кто-то захочет узнать, фильтр верхних частот можно найти в примере График акселерометра .
Вот ссылка, я тоже ее искал. Это пример адаптивного / неадаптивного фильтра верхних и нижних частот: Справочная библиотека Apple iOS - пример AccelerometerGraph