Magic Leap 2 は、カメラと IMU(慣性計測ユニット)を使用して、いつでも正確な相対姿勢(位置と回転)を決定します。デバイスは、その姿勢を知ることで、ヘッドセットが空間を移動する間、オブジェクトが環境にロックされているように見せることができます。これにより、デジタルコンテンツは、ユーザーがさまざまな視点から見ている間も、環境に対して最初の位置と回転を保つことができます。
デバイスの姿勢を決定するシステムは、ヘッドポーズと呼ばれ、ほとんどの屋内環境で高い信頼性で動作します。テクノロジーの性質上、一部の条件で他の条件下よりもうまく機能する場合があります。この記事の目的は、ヘッドポーズがうまく機能する場所と、デバイスが最適な状態で動作しにくい環境についてのガイダンスを提供することです。
環境
ヘッドポーズのパフォーマンスには環境のさまざまな側面が影響する可能性があります。
テクスチャ
ヘッドポーズは、環境内の特徴の認識と追跡に依存します。特徴とは、角、線の交点、斑点などの顕著なポイントを指し、さまざまな視点から認識できるランドマークとして機能します。このような特徴が目立ち、散在するほど、ヘッドポーズの精度と堅牢性が向上します。こうした環境は「テクスチャリッチ」環境と呼ばれます。このデバイスは、比較的テクスチャに乏しい環境でも追跡するように設計されていますが、テクスチャが多いほど体験がより正確で堅牢になります。
理想的なテクスチャ
シーン内に多彩な種類のオブジェクトがあること。散在しているほど良いです。
-
種類: 均一でなく、室内において静止しているもの。
- 例:
- 写真、ポスター、ロゴ、看板、テキストなど。
- 家具、インテリア、植物
- センサー、照明スイッチ、バッジリーダーなどの小型の(静的な)電子機器
- 大抵の時間動かない機械
- 例:
- 配置: できるだけ部屋に分散して配置します。カメラが部屋のあらゆる部分の特徴を捕捉できるようであれば理想的です。
- 大きさ:配置よりもはるかに重要度が下がります。オブジェクトのサイズは2cm~2mの間であれば問題ありません。
- 距離:テクスチャは、1〜4mの範囲でデバイスの近くに配置する必要があります。
難易度の高い環境:
- 特徴のない均一で大きな壁しかない部屋など、表面が均一な環境は避けてください。
- また、類似した特徴が多数存在する場合にも、特徴が互いに混同されるなどの問題が発生する可能性があります。これは、デバイスの視野内に他の顕著なポイントがない天井の反復構造などで引き起こされる可能性があります。
- 遠距離(4メートル超)のテクスチャのみな場合。例としては、窓の外を眺めたり、大きなオープンスペース(廊下など)など、テクスチャが近くにほとんどない場合が挙げられます。
- 以下を始め、多数の移動するオブジェクト(セクション「シーンダイナミクス」を参照)。
- 高さの調節可能なテーブル
- 静的でない椅子
- コンテンツや映像が変化する大画面
環境設計に関する推奨事項:
- 壁にポスターや看板を掛けたり、植物やその他の特徴の豊富なオブジェクトを環境に追加すると、追跡を改善できます。
- 環境を変更できない場合は、十分な特徴を備えた環境の一部がデバイスのカメラに常に表示されるようにする必要があります。
良好な条件の例
難易度の高い均一な表面の例
繰り返し模様の例
光
ヘッドポーズは、さまざまな光の条件で機能し、ほとんどのシナリオで適切に機能するはずです。一般的な経験則としては光は多ければ多いほど好ましくなります。
理想的な条件:
- 人工の均一な室内照明(50ルクス超)
難易度の高い条件:
- 10ルクス未満の低照度の場合。非常に暗い条件では、パフォーマンスの低下により、トラッキングが失われ、ポーズの変動が大きくなります。こうなると、ヘッドポーズは速い動きも処理できなくなり、トラッキングロストから復帰できなくなる可能性があります。
- 非常に強い輝度差(単一の非常に明るいスポットライトなど)。
- 照明の変更:天井の照明をオンまたはオフにするなどの照明の大幅な変更は、ヘッドポーズに問題を引き起こす可能性があるため、避ける必要があります。ヘッドポーズは、段階的な照明の変化に対しては比較的堅牢です。
シーンダイナミクス
環境(「シーン」)は、静的な部分と動的な部分で構成されています。人、オブジェクト(ドアなど)、テクスチャ(コンピューターやテレビ画面上のコンテンツなど)が移動すると、これらがデバイスの視野の目立つ部分を占める場合、トラッキングが不安定になる可能性があります。動的オブジェクトがトラッキングの品質に及ぼす悪影響は、デバイスの視野が動的オブジェクトによってカバーされる場合(特に廊下などのテクスチャの乏しい環境)に強くなります。
理想的な条件:
- 最高のトラッキング性能は、テクスチャが豊かで、完全に静的な環境で実現できます。動的なコンテンツのある環境では、静的なオブジェクト、できればテクスチャの多いオブジェクト(壁のポスター、植物など)で環境を強化し、静的コンテンツをできるだけ視野に収めることで、トラッキングのパフォーマンスを向上させることができます。
難易度の高い条件:
- 混雑した場所は、移動する人の数が多いため、特に困難な場合があります。群衆の中を移動する場合、群衆に直接焦点を合わせる(「群衆自体を見る」)のではなく、環境内の静的な部分に焦点を合わせ(「群衆の上を見る」)、トラッキングの品質を向上させることができます。
- ドアの通り抜けは、特にテクスチャの低い環境では困難なシナリオとなる可能性があります(画像を参照)。ドアを開けるときにドアから目を離し、できればテクスチャのある領域に視点を向けることで、トラッキングの品質を維持しやすくなります。また、可動部分からテクスチャを削除(動くドアのポスターなど)すると、体験を向上させることができます。
鏡面反射
カメラが光沢のある表面や床、ガラスの壁、鏡などの反射面をキャプチャする場合、これらの領域はデバイスが実際とは異なる方向に動いているように見える場合があります。これらの領域と環境の残りの部分のサイズによっては、トラッキングに問題が生じる可能性があります。反射面が大きい領域を避けるか、そうした面を少なくとも部分的に覆うようにしてください。
理想的な条件:
- 反射面がない状態。鏡面反射が少ないほど良いです。
難易度の高い条件:
- ヘッドセットのカメラの視野の大部分を大きなガラスの壁が占める
- ヘッドセットのカメラの視野の大部分を大きな鏡が占める
動き
動きの速度
このデバイスは、あらゆる種類の動きをサポートするように設計されていますが、非常に速い動きの捕捉は困難で、パフォーマンスを低下させる可能性があります。
理想的な条件:
- ゆっくり歩き回ったり、落ち着いて周囲を見渡す。
難易度の高い条件:
- 頭を素早く振る。
デバイスの取り扱い
動きが制約されるため、ヘッドポーズはデバイスが頭上にあるときに最も効果的に機能します(「動き」を参照)。デバイスが頭上にない場合(頭から外し、後で使用するために置く、または手で持ち運ぶなど)のヘッドポーズの問題を軽減するには、次の推奨事項に従ってデバイスを慎重に取り扱うことが重要です。スタンバイモードを有効にしている場合は、スタンバイモードの場合のベストプラクティスを必ずお読みください。
デバイスの保持と持ち運び
- カメラを覆わず、デバイスの正面が水平または直立(上向き)の向きで保持して、カメラがシーンをできるだけ多く捉えられるようにします。
-
- 左:良好 - デバイスが水平で、カメラが覆われていない
- 中央:不良 - デバイスが床を向いている
- 右:不良 - 1台のカメラが覆われている
- デバイスは動的でないテクスチャシーンに向ける必要があります( 「シーンダイナミクス」を参照)。
- デバイスは視線方向に最も近い物体から少なくとも30cm/1フィートほど離した距離にある必要があります。
起動中のデバイスを一時的に配置
「後での使用」には、充電などのシナリオが含まれます。
- デバイスの保持または持ち運びに関する推奨事項に従います。
- 動的(人やコンテンツが変化するモニターなど)でないテクスチャのある環境を向くように、デバイスをそっと、デバイスの前にある近くのオブジェクトに十分な距離で配置します。デバイスを逆さまに配置して、カメラが部屋をより多くの部分を捕捉できるようにすることもできます。
左:不良 - デバイスがデスク上で人の方を向いている
中央:不良 - デバイスの前にある青いボックスが近すぎて視野が遮られる
右:良好 - デバイスが十分な距離でテクスチャシーンを捕捉している
スタンバイモード
スタンバイモードが有効な場合、ヘッドポーズはスタンバイ状態でシャットダウンされます。スタンバイモードは、デバイスが頭から外されたときなど、5~10秒間目が検出されない場合に開始します。目の検出が完了し通常の電源モードに復帰すると、ヘッドポーズはスタンバイ前のセッションに基づいてトラッキングの回復を試みます。以下の推奨事項に従うことで、スタンバイモードから通常モードに戻るときにリローカライゼーションが成功する可能性と速度を最大化させることができます。
- デバイスを頭から外したら、さらに5〜10秒間手で持ったままにして、良好な状態(テクスチャのある静的なシーンに向けた状態)でスタンバイモードに入るようにします。
- デバイスを頭に装着するときは、スタンバイモードに入る前に見ていたシーンの特徴的な部分(パターンの繰り返しのないテクスチャに富んだ部分など)を見て、ヘッドポーズがシーンを認識し、追跡を正常に回復できるようにします。
屋外での使用条件
屋外条件は、現在、Magic Leap によってサポートまたはテストされていません。ただし、これはこうしたシナリオで機能しないという意味ではなく、環境に関するセクションで説明したのと同じ推奨事項が適用されます。次の一般的な注意事項に留意するようにしましょう。
うまくいく可能性が高いシナリオ
- テクスチャに優れた構造化された屋外条件:構造化された床、オブジェクトの近く、テクスチャのある壁のある環境
うまくいく可能性が低いシナリオ
- 風で葉が移動したり、長い草が生えたりしている森など、植生が多い自然環境
- 広いオープンスペース
- 非常に混雑した場所
- 荒天
Magic Leap は製品の機能を継続的に改善しており、将来的にはソフトウェアアップデートで特定の屋外シナリオを公式にサポートする可能性があります。
移動体での利用
移動するプラットフォームは、IMU の測定値がカメラが見る内容と一致しないため、対応が困難です。これは、人間が移動中の車の中で本を読むときに経験する吐き気と非常によく似ています。Magic Leap 2 は現在、移動するプラットフォームをサポートしていません。Magic Leap は製品の機能を継続的に改善しており、将来的にはソフトウェアアップデートで特定の移動するプラットフォームシナリオを公式にサポートする可能性があります。
以下は、移動するプラットフォームの例です。
- エレベーター
- 自動車
- 船舶・ボート
- 飛行機
ヘッドポーズの問題の対応
ヘッドポーズのロスト
暗い場所や「テクスチャが不十分」な状況では、デバイスは環境を追跡し続けることができません(一般的に発生するシナリオの説明については前のセクションを参照してください)。この結果、デジタルコンテンツが「ヘッドロック」された状態となり、コンテンツが頭の動きに追従し、環境にロックされず、ヘッドポーズが失われたことを示すシステム通知が表示されます。
デバイスは、このロスト状態からリローカライゼーションを試みます。このリローカライゼーションの試みでは、デバイスが環境を追跡していたときに作成されたマップを利用します。デバイスのリローカライゼーション(追跡の回復)を進めるためには、以前に追跡された環境内のシーンを見る必要があります。デバイスは通常、ほとんどの一般的なケースで1秒以内にトラッキングを回復することができます。
15秒経ってもリローカライゼーションが成功しない場合、ヘッドポーズは自動的にリセットされ、新しいトラッキングセッションが開始されます( ヘッドポーズのリセットを参照)。以下は、追跡が失われる可能性が最も高いシナリオです。
- 低照度(通常5ルクス未満)。
- 廊下やユーザーが壁のすぐ近くにいる場合など、テクスチャが不十分な場合。
- デバイスのトラッキングカメラビューの大部分を動的オブジェクトがカバーする場合(非常に混雑したスペースなど)。
- 非常に速い動き。一般的な人間の早歩きであれば問題ありませんが、走ると追跡が失われる可能性が高くなります。
推奨事項:
- トラッキングを失う前にトラッキングが機能していた場所に戻り、そこを見回します。ほとんどの場合、トラッキングを続行できます。
デジタルコンテンツの位置ずれ
デジタルコンテンツが環境にロックされずに、間違った場所、つまり元の位置からわずかにずれた状態で表示されることがあります。
「コンテンツの位置ずれ」には主に以下の2つのタイプがあり、根本的な原因が異なります。
- 比較的近い距離(数メートル程度)でコンテンツの周りを歩き回るときに発生する小さな位置ずれ:これは現時点でのシステムの既知のリミテーションです。この問題を軽減するには、仮想コンテンツを操作する予定の場所にあなたがいるときに、仮想コンテンツを配置してみてください。
- コンテンツから一度離れて、再度元の位置に戻ったときに発生する仮想コンテンツの位置ずれ:この場合、コンテンツがずれた位置に留まり続けてしまうと、内部的にデバイスによって構築されたマップが破損する可能性があります。この場合は、以下の方法で強制リローカライゼーションを試してください。
- デバイスがトラッキングを失うまで、3台のカメラすべてを数秒間覆います。
- リローカライゼーション後も問題が解決しない場合は、カメラを15秒以上覆ってマップを完全にリセットします。注:この場合、仮想コンテンツの再配置が必要となります。
- ヘッドポーズがリセットされた後に発生するずれ:ヘッドポーズがリセットされ、新しいトラッキングセッションが開始されると、前のセッションのすべての情報が失われ、デジタルコンテンツが新しい場所に表示されます。
デジタルコンテンツの飛散
難易度の高いシナリオ (暗い場所や非常に動的なシーン) や、ドアを開けたり、反射面のあるエリアを歩いたりするなどの特定のアクションを実行すると、トラッキングが不安定になることがあります。まれに、仮想コンテンツが「飛散」してしまい、ヘッドポーズのロストの問題が発生することがあります。Magic Leap 2 は、このロスト状態からリローカライゼーションを試みます。
このリローカライゼーションの試みでは、デバイスが環境をトラッキングしていたときに作成されていたマップを利用します。デバイスのリローカライゼーション (およびトラッキングが失われたときの回復) をするためには、以前にトラッキングした環境にそのデバイスを置く必要があります。
デジタルコンテンツが傾いて見える
デジタルコンテンツを環境と正しく一致させる(例:重力方向の調整)には、ヘッドポーズは調整を正確に推定するためのある程度の動きが必要です。ベストプラクティスは、ヘッドポーズの初期化後にデバイスを0.5m/20インチ動かし、調整を正確に計算できるようにすることです。
ヘッドポーズのリセット
ヘッドポーズが失われ、15秒以内にリローカライゼーションできない場合 (ユーザーが新しい環境にいる場合など)は、リセットされます。前のセッションのヘッドポーズ情報はすべて失われ、アプリで適切に処理されない場合、前のセッションのデジタルコンテンツは間違った場所に表示されます。