2017-10-03 25 views
-1

関連する質問はほとんどありません。ARKitを使用して現在の速度を取得できますか?

1)デバイスの位置をグローバル座標で取得できますか?私はARFrame.camera.transform.colums.3を使ってこの値を取得しようとしましたが、この列の[X、Y、Z]はいつも[0,0,0]のようです。私はこの変換をボディフレームのそれぞれのカメラの向きと解釈しました。誰かがあなたがARFrame.camera.transformから出てくるものを正確に説明できますか?

2)私たちがグローバル座標でデバイス(カメラ)の位置を持っていれば、私は簡単にデバイスの速度を得ることができると思います。これは有効な声明ですか?

3)オブジェクトを追跡しているときにのみグローバルポジションを取得できますか?したがって、あなたは追跡されたオブジェクトに相対的なあなたの位置を取得しますか?私はカメラがたくさん動揺しても、デバイスの速度を得たいので、追跡の品質は常に良いとは限りません。

+0

私はARKitの仕組みは分かっていませんが、あなたが達成しようとしていることは、実行中のアプリケーションのようにGPSを使って達成できると思います。距離と時間を追跡し、 。しかし、私はあなたが他の何かを試していると思う、そのコンテキストでは、3番目のポイントは、私には、他のオブジェクトに相対的なオブジェクトの速度を追跡するために有効と思われる意味があります。あなたが距離と時間を知っていなければ、速度を計算することはできません。これはここでは欠落しています。 – Rishabh

+2

あなたの投稿を破壊しないでください。 Stack Exchangeネットワーク上に掲載することで、SEがそのコンテンツを配布する権利(CC BY-SA 3.0ライセンス)(https://creativecommons.org/licenses/by-sa/3.0 /))。 SEのポリシーによって、どんな破壊行為も元に戻されます。この投稿とアカウントとの関連付けを解除する場合は、[解約リクエストの正しいルートは何ですか?](https://meta.stackoverflow.com/q/323395) – Machavity

答えて

2

はい、ARKitでスピードメーターを作成できます。あなたのより具体的な質問については

A few people have already. ...

  1. ARKitは、「グローバル座標」を持っていない、またはおそらく意味では、あなたが考えているではありません。カメラとアンカー変換では、共有参照フレーム(従来の3Dグラフィックス用語では「ワールド」スペース)が使用されますが、参照フレームはセッション内でのみ有効です。0,0,0は、カメラ/デバイスがセッションの開始時にあった場所です。

  2. 共有参照フレームで2つの異なる時刻に2つの位置がある場合、それらの位置の差はその時間の平均速度です。

  3. ARKitはオブジェクトを追跡しません。カメラ変換は、常に「ワールド」空間に相対的です。前述のように、参照フレームはセッション内にあるため、セッションの開始時には0,0,0です。

地球との相対的な位置付けが必要な場合は、コアの位置を確認する必要があります。しかし、スケールと精度には違いがありますが、GPSは1メートル〜2メートルの正確さを持ちますが、地球規模で動作し、ARKitは1センチメートルまたは2センチの精度ですが、室内スケールで動作します。

+0

詳細な回答ありがとうございます。私は[0,0,0]を読まない位置を得る方法をまだ理解していません。私はARKitからどのようにスピードを出すことができるかについてより多くの洞察を持っていますか? –

関連する問題