EasyAR Surface Tracking
EasyAR Surface Tracking は、空間内で選択された表面点に対するデバイスの位置と姿勢を軽量に継続 tracking する機能を実現します。小規模な AR インタラクティブゲーム、AR ショート動画撮影、製品配置表示などのシーンで使用できます。
EasyAR Surface Tracking の原理
実空間と仮想空間の対応関係を構築するため、Surface Tracking はデバイスカメラと inertial measurement unit のデータを利用します。
Surface Tracking はまずカメラ画像から環境表面上の顕著な feature を認識します。これは必ずしも平面上とは限りません。その後、連続画像フレームとセンサーデータを使用して、これらの feature の位置を tracking します。起動時、仮想オブジェクトはデフォルトで画面中央付近の feature point 表面に配置され、仮想オブジェクトの位置が世界座標系の原点とみなされます。
仮想オブジェクトも対応する feature point の位置に配置され、継続的に tracking されます。デバイス移動中、カメラ画像内の feature 深度は継続的に更新され、仮想オブジェクトは対応する feature point 表面に貼り付き続けます。仮想オブジェクトに対応する feature point が失われた場合、システムは自動的に新しい feature point を選択し、その feature point に対するデバイスの位置と姿勢を出力します。
注記
Surface Tracking の feature が失われると、仮想オブジェクトの位置がドリフトする可能性があります。固定位置を継続 tracking する場合は、Motion Tracking の使用を推奨します。
Surface Tracking と Motion Tracking の比較
Motion Tracking と比べて、Surface Tracking はデバイスキャリブレーション不要で、より多くの機種をサポートし、initialization なしで実行できます。ただし、Surface Tracking は実スケールを提供せず、配置できる仮想オブジェクトは 1 つのみで、仮想オブジェクトの底部を座標系原点に配置する必要があります。
| 比較項目 | Surface Tracking | Motion Tracking |
|---|---|---|
| デバイスキャリブレーション要件 | デバイスキャリブレーション不要 | デバイスキャリブレーションが必要 |
| 対応機種範囲 | より多くの機種をサポート | ハードウェア能力要件が高く、対応機種は比較的限定的 |
| 空間スケール | 現実世界スケールを提供しない | 実スケールの pose を提供 |
| initialization フロー | initialization なしで実行可能 | 通常 initialization プロセスが必要 |
| 仮想オブジェクト数 | 1 つの仮想オブジェクトのみ配置可能 | 複数の仮想オブジェクトをサポート可能 |
| 仮想オブジェクト配置制約 | 仮想オブジェクトの底部を座標系原点に配置する必要がある | 仮想オブジェクトは任意の空間位置に配置可能 |
| 適用シーン | 軽量 AR 表示、クイック体験 | 高精度 AR、空間インタラクション、ナビゲーションと測定 |
注記
Surface Tracking は仮想オブジェクトを環境表面にできるだけ貼り付けます。その表面は不規則な物体表面、または平坦な床や壁の場合があります。ただし、環境内に平面が存在するかどうかは検出しません。水平面または垂直面の検出が必要な場合は、Plane Detection を参照してください。