因此,我一直在努力解決這個問題一段時間,並沒有任何運氣挖掘互聯網和相關SO帖子的智慧。如何校準Android加速度計並減少噪音,消除重力
我正在編寫一個使用無處不在的加速度計的Android應用程序,但即使在休息時,我似乎也得到了令人難以置信的「噪音」量,似乎無法弄清楚如何處理它作爲我的讀數需要相對準確。我認爲,也許我的手機(宏達不可思議)功能失常,但傳感器似乎與我玩過的其他遊戲和應用程序運行良好。
我試過使用各種「過濾器」,但我似乎無法將我的思想包裹在它們周圍。我知道重力必須以某種方式處理,也許這就是我出錯的地方。目前,我已經試過了,改編自SO answer,這是指從iPhone SDK的例子:
accel[0] = event.values[0] * kFilteringFactor + accel[0] * (1.0f - kFilteringFactor);
accel[1] = event.values[1] * kFilteringFactor + accel[1] * (1.0f - kFilteringFactor);
double x = event.values[0] - accel[0];
double y = event.values[1] - accel[1];
海報上寫着的kFilteringFactor值「一起玩」(kFilteringFactor = 0.1F中的例子),直到滿意爲止。不幸的是,我似乎還是聽到了很多噪音,而這一切似乎只是讓讀數以小數字形式出現,這對我來說並沒有多大幫助,而且似乎只是讓傳感器不那麼敏感。我的大腦的數學中心也因多年的忽視而萎縮,所以我不完全理解這個過濾器是如何工作的。
有人可以向我詳細解釋一下如何從加速度計讀取有用的?一個簡潔的教程將是一個難以置信的幫助,因爲我沒有找到一個很好的(至少針對我的知識水平)。我感到沮喪,因爲我覺得所有這些對我來說應該更加明顯。任何幫助或方向將不勝感激,當然,如果需要,我可以從我的代碼中提供更多樣本。
我希望我不是要求太多吃飽;除非我一直試圖弄清楚我們的情況,否則我不會問。它看起來似乎還有其他SO成員的興趣。
讓我知道如果你在「消除重力」部分得到任何線索,我的氣墊船邊業務就是*這個關閉*! – 2011-02-02 00:15:05
哈哈喬恩,你沒聽到?谷歌固定重力。他們很快就會發布API。 – malfunction 2011-02-02 00:47:06