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