ImmersalとMiRZAを連携させるための詳細ガイド
ImmersalをMiRZAで使う記事がありますが、 この記事では、ImmersalをMiRZAでより高精度に利用するための、ファームウェア、マップ作成、そしてMiRZAカメラ専用の試作アプリの活用方法とコツを紹介します。
MiRZAのファームウェアは最新にする
MiRZAグラスをご利用の際は、グラスソフトウェアアップデートを確認し、必ず最新のファームウェアを適用してください。
MAP作成時のカメラ選定
MAPを作成するカメラと、ローカライズ(現実空間におけるデバイスの正確な位置特定)時に使用するカメラの解像度・画角は、極力同じものをご利用いただくことを推奨します。
現在、Immersal社からiOSやAndroid向けにImmersal Mapperが提供されています。iOSやAndroidでのMAP作成は簡易ですが、MiRZAカメラとは画角や解像度が異なるため、ローカライズ精度において限界があります。
ローカライズの精度をより高めるためには、MiRZAカメラでマップを作成することが最も効果的です。このため、MiRZAを使ってマップ撮影ができる試作アプリを開発しました。 このアプリをご利用いただくことで、マップ作成とローカライズで使用するカメラを同一のものとすることができます。
MiRZAカメラでのMAP作成
試作アプリであるMiRZAImmersalMapperのAPKファイルは、以下のURLからダウンロードできます。
操作手順
メイン画面
AQUOS R9とMiRZAグラス本体を接続している状態で、MiRZAImmersalMapperを起動するとメイン画面が表示されます。
画面に表示されているUIは次の通りです。
UI要素名 | 説明 |
---|---|
プレビュー表示 | MiRZAグラス本体のRGBカメラで撮影した画像が表示されます。 |
「Capture」ボタン | キーフレーム画像を撮影するボタンです。このボタンを押すと、MiRZAグラス本体のRGBカメラで撮影した画像が、キーフレーム画像として保存されます。 |
「Upload」ボタン | このボタンを押すと、今まで撮影したキーフレーム画像をImmersal REST APIへアップロードして、マップ作成を行います。 |
「Clear」ボタン | このボタンを押すと、今まで撮影したキーフレーム画像をすべてクリアします。 |
「Config」ボタン | このボタンを押すと、設定画面が表示されます。アプリを初回起動する際は、Immersal REST API Tokenの設定が必要なのでご注意ください。 |
Capture Count表示 | 今まで撮影したキーフレーム画像の枚数を表示します。 |
設定画面
アプリを初回起動する際は、メイン画面で「Config」ボタンを押し、設定画面からImmersal REST API Tokenの設定を行う必要があります。
Immersal REST API Tokenは、Immersal Developer Portalへログイ ン後、Account画面(https://developers.immersal.com/account/)にあるTokenを使用してください。
Tokenを設定後、設定画面のCloseボタンを押すと、メイン画面へ戻ることができます。
マップ撮影
マップ撮影はメイン画面で実施します。
まず、MiRZAグラス本体のRGBカメラで周囲を撮影しながら、Captureボタンを複数回押してキーフレーム画像を撮影します。
(マップ撮影のコツについては次章をご参照ください)
撮影終了後、Uploadボタンを押すとアプリはキーフレーム画像のアップロードと、マップ作成 要求を実行します。
この際、マップ名は「mirza_送信開始日時」が自動的に設定されます。
マップのアップロードが正常に完了し、マップ作成が開始されると、「アップロードが完了しました 処理結果はImmersal Developer Portalを確認してください」とメッセージが表示されます。
マップ作成が成功したかどうかは、Immersal Developer Portalのマップ一覧画面(https://developers.immersal.com/mymaps/)から該当マップのStatusを確認します。
該当マップのStatusが「done」の場合は、マップ作成に成功している状態です。
マップ撮影のコツ
Immersalでマップ撮影を行う場合、以下のポイントを意識することで質の良いマップを作成できます。
- 特徴点がほどよく近くにある場所を選ぶ
- 模様がない、真っ白な部屋など、特徴が少ない場所ではマップを作成できません。
- 特徴点が遠くにある場合、測位結果に誤差が出やすくなります。
- ローカライズしたい場所にキーフレームを配置するように撮影する
- キーフレームから離れると、ローカライズの確率や測位精度が低下します。
- キーフレームから見えていない場所は、ローカライズできません。
- キーフレーム画像を順に撮影する際、前フレームと半分程度同じところが重なっていること
- Immersalでは、前の写真と次の写真が約50%程度つながっていないとマップ作成に失敗する可能性があります。
- 複数キーフレーム画像で視差が出るように横に移動しながら撮影する
- 同じ場所で回転するだけの撮影方法は、視差が出ないためマップ作成に失敗する確率が高くなります。
- 室内の場合、部屋を取り囲むようにキーフレームを配置するのが最も効果的です。
- テンポラリオブジェクトはできるだけ撮影しない
- 日時で変化するものがマップに入り込むと、ローカライズ成功率が低下する原因となります。
- ガラス・鏡のような反射・光沢があるものは避ける