そのため、私はしばらくの間この問題に苦労してきましたが、インターネットの知恵と関連するSOの投稿をうまく利用できませんでした。
ユビキタスな加速度計を使用する Android アプリを作成していますが、安静時でも信じられないほどの量の「ノイズ」が発生しているようで、測定値を相対的に測定する必要があるため、対処方法がわかりません。正確。私の携帯電話 (HTC Incredible) が機能していないのではないかと思いましたが、私がプレイした他のゲームやアプリではセンサーが正常に動作しているようです。
さまざまな「フィルター」を使用しようとしましたが、それらについて頭を悩ませているようには見えません。重力を何らかの方法で処理する必要があることは理解していますが、それが間違っている可能性があります。現在、iPhone SDKの例を参照しているSO answerから改作して、これを試しました。
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 メンバーからも関心が寄せられているようです。