HoloLens 2の視線追跡
HoloLens 2は、開発者にユーザーが見ている内容に関する情報を使用できるようにすることで、ホログラフィック エクスペリエンス内の新しいレベルのコンテキストと人間の理解を可能にします。 このページでは、開発者がさまざまなユース ケースの視線追跡を利用する方法と、視線入力ベースのユーザー操作を設計するときに何を探すべきかについて説明します。
Eye Tracking API は、ユーザーのプライバシーを念頭に置いて設計されています。識別可能な情報、特に生体認証の受け渡しを回避します。 視線追跡が可能なアプリケーションの場合、ユーザーは視線追跡情報を使用するアクセス許可をアプリに付与する必要があります。
デバイスのサポート
機能 | HoloLens (第 1 世代) | HoloLens 2 | イマーシブ ヘッドセット |
視線入力 | ❌ | ✔️ | ❌ |
頭と目の追跡設計の概念のデモ
頭部と目の追跡の設計の概念を実際に確認する場合は、以下の「ホログラムの設計 - ヘッド トラッキングと視線追跡」のビデオ デモをチェックしてください。 完了したら、引き続き具体的なトピックについて詳しく説明します。
このビデオは、"ホログラムの設計" HoloLens 2 アプリから撮影されました。 完全なエクスペリエンスをダウンロードして、ここでお楽 しみください。
キャリブレーション
視線追跡を正確に機能させるには、ユーザーがホログラフィック ターゲットのセットを確認する必要がある 視線追跡ユーザーの調整 を行う必要があります。 これにより、デバイスがシステムを調整できるため、ユーザーにとってより快適で高品質な視聴エクスペリエンスが得られ、同時に正確な視線追跡が保証されます。
視線追跡はほとんどのユーザーに対して機能する必要がありますが、ユーザーが正常に調整できないケースはほとんどありません。 調整は、次のようなさまざまな理由で失敗する可能性があります。
- ユーザーは、以前に調整プロセスからオプトアウトしました。
- ユーザーは気が散り、キャリブレーションターゲットに従いませんでした。
- ユーザーは、システムがまだサポートしていない特定の種類のコンタクトレンズと眼鏡を持っています。
- ユーザーは、特定の目の生理学や目の状態を持っているか、システムがまだサポートしていない目の手術を持っていました。
- HoloLens バイザーや眼鏡の汚れ、強い直射日光、目の前の髪によるオクルージョンなど、信頼性の高い視線追跡を阻害する外部要因。
開発者は、視線追跡データが利用できない可能性があるユーザー (正常に調整できないユーザー) に対して適切なサポートを提供する必要があります。 このページの下部にあるセクションで、フォールバック ソリューションに関する推奨事項を提供しました。
調整の詳細とスムーズなエクスペリエンスを確保する方法については、 視線追跡のユーザー調整 に関するページを参照してください。
使用可能な視線追跡データ
HoloLens 2の視線追跡を使用すると、開発者は自然で直感的な入力と対話のシナリオを設計できます。 視線追跡 API は、ユーザーが 1 つの視線視線 (視線の原点と方向) として約 30 FPS (30 Hz) で見ているものに関する情報を提供します。 視線追跡を正確に機能させるには、各ユーザーが視線追跡ユーザーの調整を行う必要があります。 視線追跡データにアクセスする方法の詳細については、DirectX での視線入力とUnityでの視線入力の使用に関する開発者ガイドを参照してください。
予測される視線入力は、実際のターゲットの周囲の視覚的な角度で約 1.5 度以内です (下の図を参照)。 わずかな不正確さが予想されるため、開発者はこの下限値の周りに余白を計画する必要があります (たとえば、2.0 から 3.0 度の方が快適なエクスペリエンスになる場合があります)。 以下では、小さなターゲットの選択に対処する方法について詳しく説明します。
2 メートルの距離での最適なターゲット サイズ
拡張視線追跡データ
拡張された視線追跡 API を使用すると、開発者は、ユーザーの目の視線入力に関するより細かい情報を提供することで、正常性評価、監視、治療などの次のレベルの革新的なシナリオのロックを解除できます。
拡張視線追跡 API を使用すると、既存の視線追跡値と、個々の (左と右) の視線視線入力ベクトル、サポートされているフレーム レート、視線追跡フレーム レートを 30、60、または 90fps に設定する機能などの新機能にアクセスできます。 拡張視線追跡 API を使用するには、ネイティブまたはUnityに拡張視線追跡 API を使用するための開発者ガイドを参照してください。
ユース ケース
視線追跡を使用すると、アプリケーションはユーザーがリアルタイムで探している場所を追跡できます。 次のユース ケースでは、Mixed Reality でのHoloLens 2に対する視線追跡で可能な相互作用について説明します。 これらのユース ケースは、Holographic Shell エクスペリエンス (HoloLens 2の起動時に表示されるインターフェイス) の一部ではありません。 それらの一部は、Mixed Reality ツールキットで試すことができます。 ツールキットには、視線追跡を使用するための興味深く強力な例がいくつか用意されています。たとえば、目で簡単にサポートされるターゲットの選択や、ユーザーが見ている内容に基づいてテキストを自動的にスクロールする場合などです。
ユーザーの意図
ユーザーが見ている場所と内容に関する情報は、音声、手、コントローラーなど、他の入力の強力なコンテキストを提供します。 これは、さまざまなタスクに使用できます。 たとえば、ユーザーはホログラムを見て 、"select" ( 視線入力とコミットも参照) または " put this..." と言って、ホログラムを配置する場所を見て"と言うことで、シーン全体をすばやく簡単にターゲットにすることができます 。そこで"。 この例は、Mixed Reality Toolkit - Eye-supported Target Selection と Mixed Reality Toolkit - Eye-supported Target Positioning にあります。
さらに、ユーザー意図の例としては、ユーザーが見る内容に関する情報を使用して、具体化された仮想エージェントと対話型ホログラムとのエンゲージメントを強化する方法が含まれる場合があります。 たとえば、仮想エージェントは、現在表示されているコンテンツに基づいて、使用可能なオプションとその動作を調整できます。
暗黙的なアクション
暗黙的なアクションのカテゴリは、ユーザーの意図と密接に関連しています。 ホログラムまたはユーザー インターフェイス要素は、ユーザーがシステムとまったく対話しているようには感じず、システムとユーザーが同期しているようにも感じられないような、本能的な方法で反応するという考え方です。1 つの例は、ユーザーがテキスト ボックスの下部に移動すると自動的にスクロールを開始する長いテキストを読み取ることができる 視線視線入力ベースの自動スクロール です。 これにより、ユーザーは指を持ち上げずに読み上げの流れを保ちます。 この重要な側面は、スクロール速度がユーザーの読み取り速度に適応することです。
もう 1 つの例は、 目でサポートされるズームとパン です。ユーザーは、焦点を当てたものに対して正確に飛び込んでいるように感じることができます。
ズーム速度のトリガーと制御は、音声または手入力によって制御できます。これは、ユーザーが圧倒されるのを避けながら、コントロール感を提供するために重要です。 これらの設計上の考慮事項について、以下で詳しく説明します。 ズームインすると、ユーザーは、たとえば、通りのコースにスムーズに従って、視線入力を使用して自分の近所を探索できます。 これらの種類の操作のデモ例は、Mixed Reality Toolkit - Eye-supported Navigation サンプルにあります。
暗黙的なアクションのその他のユース ケースには、次のようなものがあります。
- スマート通知: ビューの真ん中に通知が表示され、煩わされることはありますか? ユーザーが現在見つめている場所から通知をオフセットすることで、このエクスペリエンスを向上させることができます。 これにより、注意散漫が制限され、ユーザーの読み取りが完了すると自動的に無視されます。
- 注意深いホログラム: これらは、見つめられたときに微妙な方法で反応するホログラムです。 これは、わずかに光る UI 要素からゆっくりと咲く花、ユーザーを振り返って尾を振り始める仮想犬までさまざまです。 この相互作用により、アプリケーションの接続性と満足度が興味深く感じられます。
アテンショントラッキング
ユーザーが見る場所や内容に関する情報は、非常に強力なツールになる可能性があります。 これは、設計の使いやすさを評価し、ワークフロー内の問題を特定して、より効率的にするのに役立ちます。 視線追跡の視覚化と分析は、さまざまなアプリケーション領域で一般的な方法です。 HoloLens 2では、この理解に新しい次元を提供します。3D ホログラムを実際のコンテキストに配置し、それに応じて評価できます。
Mixed Reality ツールキットには、視線追跡データのログ記録と読み込みの基本的な例と、それらを視覚化する方法が用意されています。
Microsoft は、ユーザーが視線追跡情報の使用方法に関する情報と透明性の高いエクスペリエンスを確保しながら、イノベーションを促進することに専念しています。 引き続き開発者や UX チームと協力して、エクスペリエンスがユーザーを中心にしていることを確認するためのガイダンスをサード パーティに提供します。
この領域のその他のアプリケーションには、次のものが含まれます。
- リモート視線入力の視覚化: リモートコラボレーターが見ているものを視覚化します。 これにより、すぐにフィードバックを提供し、より正確な情報処理を容易にすることができます。
- ユーザー調査: アテンショントラッキングは、ユーザーが自然環境をどのように認識し、関与させるかについて、干渉することなく洞察を提供できます。 これは、開発者がより本能的な人間とコンピューターの相互作用を設計するのに役立ちます。 視線追跡は、研究の参加者によって直接明示されていない情報を提供することができ、研究者が簡単に見逃すことができます。
- トレーニングとパフォーマンスの監視: 実行フローでより効果的にボトルネックを特定することで、タスクの実行を練習し、最適化します。 視線追跡は、職場でのトレーニング、生産性、安全性の向上に役立つ、自然でリアルタイムで客観的な情報を提供できます。
- 設計評価、マーケティング、消費者調査: 目の追跡を使用すると、商業企業は、実際の環境でマーケティングと消費者調査を実行したり、製品やスペースの設計を改善するためにユーザーの注意を引くものを分析したりできます。
その他のユース ケース
- ゲーム: あなたは今まで超大国を持っていると思ったことがありますか? あなたのチャンスはここにあります!
ホログラムを見つめることで、ホログラムを浮き立てることができます。
あなたの目からレーザービームを撃つ - HoloLens 2のためにロボレイドでそれを試してみてください。
敵を石に変えたり、凍らせる。
X 線ビジョンを使用して建物を探索します。
あなたの想像力は限界です! ただし、ユーザーを圧倒しないように注意してください。 詳細については、 視線入力ベースの入力設計ガイドラインに関するページを参照してください。
表現力豊かなアバター: 視線追跡は、ライブ視線追跡データを使用してアバターの目をアニメーション化し、ユーザーが見ているものに従わせることで、より表現力の高い 3D アバターに役立ちます。
テキスト エントリ: 視線追跡は、特に音声や手が使いにくい場合に、低作業テキスト入力の代替手段として使用できます。
目の視線入力を操作に使用する
動きの速い視線ターゲティングを利用したインタラクションの構築は困難な場合があります。 目はすぐに動く可能性があるため、視線入力の使い方に注意しないと、ユーザーは圧倒的な操作や気を散らす可能性があります。 しかし、アイトラッキングを使用すると、ユーザーを興奮させる本当に魔法のような体験を作成できるため、これは課題に値します。 お客様を支援するために、相互作用の視線入力に関する主な利点、課題、設計に関する推奨事項の概要をチェックします。
視線追跡が利用できない場合のフォールバック ソリューション
まれに、視線追跡データを使用できない場合があります。 これはいくつかの理由で発生する可能性があります。最も一般的なものは次のとおりです。
- システムが ユーザーの調整に失敗しました。
- ユーザーは 調整をスキップしました。
- ユーザーは調整されますが、視線追跡データを使用するアクセス許可をアプリに付与しないことにしました。
- ユーザーは、システムがまだサポートしていない一意の眼鏡または目の状態を持っています。
- HoloLens バイザーや眼鏡の汚れ、強い直射日光、目の前の髪によるオクルージョンなど、信頼性の高い視線追跡を阻害する外部要因。
開発者は、これらのユーザーに対して適切なフォールバック サポートがあることを確認する必要があります。 DirectX の [視線追跡] ページで、視線追跡データが使用可能かどうかを検出するために必要な API について説明します。
一部のユーザーは、視線追跡が提供できるエクスペリエンスの向上よりもプライバシーが重要であると判断する場合があるため、視線追跡データへのアクセスを意図的に取り消します。 ただし、場合によっては、この取り消しが意図しない可能性があります。 アプリで視線追跡を使用していて、これがエクスペリエンスの重要な部分である場合は、これをユーザーに明確に伝えることをおすすめします。 視線追跡がアプリケーションの可能性を最大限に引き出す方法をユーザーに説明すると、ユーザーが何をあきらめているかを理解するのに役立ちます。 視線追跡が有効になっているが機能していない場合は、上記のチェックリストをガイドとして使用して、ユーザーが問題を特定して解決できるように支援します。 たとえば、システムが視線追跡をサポートし、ユーザーが調整され、アクセス許可が与えられているにもかかわらず、視線追跡データが受信されていないことを検出できる場合、これは、スマッジや目が隠れているなどの問題を指している可能性があります。
視線追跡が誰かのために機能せず、明らかな理由がない場合はまれです。 ユーザーがアプリで視線追跡を有効にするためのリマインダーを無視または無効にできるようにすることで、これを尊重してください。
視線入力をプライマリ入力ポインターとして使用するアプリのフォールバック
アプリで視線入力をポインター入力として使用してシーン全体のホログラムをすばやく選択する場合でも、視線追跡データを使用できない場合は、頭の視線入力に戻って頭の視線入力カーソルを表示することをお勧めします。 タイムアウト (500 ~ 1500 ミリ秒など) を使用して、切り替えるかどうかを判断することをお勧めします。 このアクションにより、高速な視線動作やウインクと点滅のために、システムが追跡を短時間失う可能性があるたびにカーソルが表示されるのを防ぎます。 Unity開発者の場合、ヘッド視線入力への自動フォールバックは、Mixed Reality Toolkit で既に処理されています。 DirectX 開発者の場合は、このスイッチを自分で処理する必要があります。
他の視線追跡固有のアプリケーションにフォールバックする
アプリでは、目に合わせて特別に調整された一意の方法で視線入力を使用する場合があります。たとえば、視覚的な注意に関する正確な情報に依存するアバターの目や目ベースの注意ヒートマップをアニメーション化します。 この種類のケースでは、明確なフォールバックはありません。 視線追跡を利用できない場合は、これらの機能を無効にする必要がある場合があります。 ここでも、機能が機能していないことを認識していない可能性があるユーザーに、これを明確に伝えすることをお勧めします。
このページでは、HoloLens 2の視線追跡と視線入力の役割を理解し始めるために、適切な概要を提供することを願っています。 開発を開始するには、ホログラムと対話するための視線入力の役割、Unityでの視線入力、DirectX での視線入力の役割に関する情報をチェックします。