3

これは、慣性(スマートフォン+エース+ジャイロ)を使用した屋内追跡に関する別の質問です。最初に、このテーマについて話しているスタックオーバーフローに関するほぼすべての投稿を読んだと思います。そして、位置を追跡するには、加速度を2倍統合する必要があることを知っています。これは、すべてのドリフトエラーがあるため、実際のアプリケーションでは非常に役に立ちません...

しかし、飛行機などを作る必要はないことがわかりました。また、販売するために動作する必要のあるアプリケーションなどを開発する必要もありません。屋内追跡の「理論的」概念を使用するシンプルなAndroidアプリを実現したいだけです-

  • 可能性は何ですか?
  • 私たちは何が必要なのか?

基本的に、電話を2または3メートルに押してから、回転させて2または3メートルもう一度押すと、電話は既知の位置(0,0)で上を向いた机の画面に置かれます。何メートルも不正確になるので、タグを使用して測定値を再調整します <---それが私の主な質問です

私が必要なものは何 ?- 角度 ?(ジャイロを統合しても大丈夫です)(コンパスは使いたくないです)-アクセル?(私は持っています)-速度?(アクセルの統合)-および位置(ダブルアクセルの統合)

私が知りたいのは、どうすればこの数字をまとめることができるかということです。それは正しい方法ですか?別の解決策はありますか(私の問題を解決するため、誰かを本当に正確に追跡するためではありません)?

また、DCMの理論も調べました(正しく理解していれば、6軸での電話の向きがわかりますか?しかし、Accelまたはジャイロ(ピッチ、ロールなど)から角度を取得することの違いは何ですか? )?

ありがとうございました

4

2 に答える 2

5

あなたのスマートフォンには、おそらく 3 軸ジャイロ、3 軸磁力計、3 軸加速度計が搭載されています。これは、姿勢を適切に推定するのに十分です。それぞれに長所と短所があります。

加速度計は重力を測定することができ、携帯電話の姿勢を知ることができますが、水平位置では携帯電話がどこを指しているのかわかりません。また、慣性ノイズに非常に敏感です。

ジャイロスコープは最も高速で最も正確ですが、問題はドリフトです。

磁力計にはドリフトがなく、慣性力の影響を受けませんが、遅すぎます。

3 つの組み合わせにより、すべての利点が得られ、欠点はありません。ジャイロの測定値をできるだけ速く読み取って (これによりドリフトが最小限に抑えられます)、遅くて正確ではない磁力計と加速度計の測定値を使用してそれらを修正する必要があります。

興味のあるリンクをいくつか残します。

お役に立てば幸いです。私の英語が下手で申し訳ありません。

于 2011-11-18T23:35:04.823 に答える
4

あなたが持っているセンサーでは、この時点でまだ計算能力を考慮していませんが、位置/変位推定の方法は1つしか知りません。これには、オンボード カメラを使用したオプティカル フローのみが含まれるか、精度を向上させるために加速度/ジャイロ (たとえば、カルマン フィルターを使用) からの融合データからの追加情報が含まれます。OpenCVには必要なもの (Android のサポートを含む) がすべて揃っていると思うので、そこから始めます。

まず、アクセルとジャイロだけで姿勢推定器を実装します。これは、ヨー軸(つまり、地面に垂直な軸、または重力ベクトルに平行な軸)でドリフトします。これは、カルマン フィルターまたはその他のアルゴリズムで実行できます。推定された位置はわずか数秒で数十分の一メートル離れてしまうため、これは位置推定には適していません。

次に、カメラにオプティカル フローを実装してみます。これには計算コストがかかります。実際には、これだけでも解決策になる可能性がありますが、IMU からの追加データを使用する場合よりも精度が低くなります。

幸運を。

編集:私は最近これを見つけまし- それはあなたに役立つかもしれません. (振動による) ノイズが多くない場合は、これでうまくいきます (私はクアッドローター UAV を使用していますが、残念ながらうまくいきません)。

于 2011-09-27T14:17:38.270 に答える