(57)【要約】  一実装形態では、方法は、複数の光源からユーザの眼に向けて強度を変調した光を放射することを含む。本方法は、複数のグリントの形態でユーザの眼によって反射された複数のグリントの強度を示す光強度データを受信することと、光強度データに基づいてユーザのアイトラッキング特性を判定することと、を含む。一実装形態では、方法は、複数のそれぞれの位置に複数の光センサを含むイベントカメラを使用して、複数のイベントメッセージを生成することであって、複数のイベントメッセージのそれぞれは、光の強度の変化を検出し、特定の光センサの特定の位置を示す特定の光センサに応答して生成される。本方法は、複数のイベントメッセージに基づいて、ユーザのアイトラッキング特性を判定することを含む。
2020536309.tif 000002
【特許請求の範囲】
【請求項１】
複数の光源からユーザの眼に向けて強度を変調した光を放射することと、
複数のグリントの形態で前記ユーザの前記眼によって反射された前記放射光の強度を示す光強度データを受信することと、
前記光強度データに基づいて、前記ユーザのアイトラッキング特性を判定することと、
を含む、方法。
【請求項２】
前記複数の光源のうちの第１の光源が、第１の位相オフセットで第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記第１の位相オフセットとは異なる第２の位相オフセットで前記第１の周波数で変調される、請求項１に記載の方法。
【請求項３】
前記複数の光源のうちの第１の光源が、第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記第１の周波数とは異なる第２の周波数で変調される、請求項１に記載の方法。
【請求項４】
前記複数の光源のうちの第１の光源が、第１の直交符号にしたがって変調され、前記複数の光源のうちの第２の光源が、第２の直交符号にしたがって変調される、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記複数の光源のうちの第１の光源が、第１の強度範囲内で変調され、前記複数の光源のうちの第２の光源が、前記第１の強度範囲とは異なる第２の強度範囲内で変調される、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記複数の光源のそれぞれの光源が、高強度値と低強度値のいずれかに変調される、請求項１から４のいずれか一項に記載の方法。
【請求項７】
前記高強度値がオン状態であり、前記低強度値がオフ状態である、請求項６に記載の方法。
【請求項８】
前記複数の光源のうち前記オン状態の光源数が一定である、請求項７に記載の方法。
【請求項９】
前記強度が、予め決定されたアイトラッキング特性、ユーザバイオメトリクス、又は提示されたユーザインタフェースのうちの少なくとも１つにしたがって変調される、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記複数の光源が、近赤外波長範囲内で光を放射する、請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記光強度データが、前記ユーザの前記眼の複数の画像を含む、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
前記光強度データが複数のイベントメッセージを含む、請求項１から１０のいずれか一項に記載の方法。
【請求項１３】
前記変調の周波数範囲にしたがって前記光強度データをフィルタリングすることをさらに含み、前記ユーザの前記アイトラッキング特性を判定することが、前記フィルタリングされた光強度データに基づいている、請求項１から１２のいずれか一項に記載の方法。
【請求項１４】
前記光強度データの変調に基づいてそれぞれの光源を識別することをさらに含み、前記ユーザの前記アイトラッキング特性を判定することが、前記それぞれの光源の前記識別に基づいている、請求項１から１３のいずれか一項に記載の方法。
【請求項１５】
前記アイトラッキング特性が、視線方向及び／又は瞬き状態を含む、請求項１から１４のいずれか一項に記載の方法。
【請求項１６】
ユーザの眼に向かって強度を変調した光を放射する複数の光源と、
複数のグリントの形態で前記ユーザの前記眼によって反射された前記放射光の強度を示す光強度データを生成するカメラと、
前記光強度データに基づいて、前記ユーザのアイトラッキング特性を判定するプロセッサと、
を備える、システム。
【請求項１７】
前記複数の光源のうちの第１の光源が、第１の位相オフセットで第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記第１の位相オフセットとは異なる第２の位相オフセットで前記第１の周波数で変調される、請求項１６に記載のシステム。
【請求項１８】
前記複数の光源のうちの第１の光源が、第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記第１の周波数とは異なる第２の周波数で変調される、請求項１６に記載のシステム。
【請求項１９】
前記複数の光源のうちの第１の光源が、第１の直交符号にしたがって変調され、前記複数の光源のうちの第２の光源が、第２の直交符号にしたがって変調される、請求項１６から１８のいずれか一項に記載のシステム。
【請求項２０】
前記複数の光源のうちの第１の光源が、第１の強度範囲内で変調され、前記複数の光源のうちの第２の光源が、前記第１の強度範囲とは異なる第２の強度範囲内で変調される、請求項１６から１９のいずれか一項に記載のシステム。
【請求項２１】
前記複数の光源のそれぞれの光源が、高強度値と低強度値のいずれかに変調される、請求項１６から１９のいずれか一項に記載のシステム。
【請求項２２】
前記高強度値がオン状態であり、前記低強度値がオフ状態である、請求項２１に記載のシステム。
【請求項２３】
前記オン状態の前記複数の光源の光源数が一定である、請求項２２に記載のシステム。
【請求項２４】
前記強度が、予め決定されたアイトラッキング特性、ユーザバイオメトリクス、又は提示されたユーザインタフェースのうちの少なくとも１つにしたがって変調される、請求項１６から２３のいずれか一項に記載のシステム。
【請求項２５】
前記複数の光源が近赤外波長範囲内の光を放射する、請求項１６から２４のいずれか一項に記載のシステム。
【請求項２６】
前記カメラが、前記ユーザの前記眼の複数の画像を生成する画像カメラを含む、請求項１６から２５のいずれか一項に記載のシステム。
【請求項２７】
前記カメラが、複数のイベントメッセージを生成するイベントカメラを含む、請求項１６から２６のいずれか一項に記載のシステム。
【請求項２８】
前記プロセッサがさらに、前記変調の周波数範囲にしたがって前記光強度データをフィルタリングし、前記フィルタリングされた光強度データに基づいて前記ユーザの前記アイトラッキング特性を判定する、請求項１６から２７のいずれか一項に記載のシステム。
【請求項２９】
前記プロセッサがさらに、前記光強度データの変調に基づいてそれぞれの光源を識別し、前記それぞれの光源の前記識別に基づいて前記ユーザの前記アイトラッキング特性を判定する、請求項１６から２８のいずれか一項に記載のシステム。
【請求項３０】
前記アイトラッキング特性が、視線方向及び／又は瞬き状態を含む、請求項１６から２９のいずれか一項に記載のシステム。
【請求項３１】
コード化された命令を有する、非一時的コンピュータ可読媒体であって、前記命令が、プロセッサによって実行されると、前記プロセッサに、
複数の光源からユーザの眼に向けて強度を変調した光を放射することと、
複数のグリントの形態で前記ユーザの前記眼によって反射された前記放射光の強度を示す光強度データを受信することと、
前記光強度データに基づいて、前記ユーザのアイトラッキング特性を判定することと、
を含む動作を実行させる、非一時的コンピュータ可読媒体。
【請求項３２】
前記複数の光源のうちの第１の光源が、第１の位相オフセットで第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記第１の位相オフセットとは異なる第２の位相オフセットで前記第１の周波数で変調される、請求項３１に記載の非一時的コンピュータ可読媒体。
【請求項３３】
前記複数の光源のうちの第１の光源が第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記第１の周波数とは異なる第２の周波数で変調される、請求項３１に記載の非一時的コンピュータ可読媒体。
【請求項３４】
前記複数の光源の光源グリントが、第１の直交符号にしたがって変調され、前記複数の光源のうちの第２の光源が、第２の直交符号にしたがって変調される、請求項３１から３３のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項３５】
前記複数の光源のうちの第１の光源が、第１の強度範囲内で変調され、前記複数の光源のうちの第２の光源が、前記第１の強度範囲とは異なる第２の強度範囲内で変調される、請求項３１から３４のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項３６】
前記複数の光源のそれぞれの光源が、高強度値と低強度値のいずれかで変調される、請求項３１から３４のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項３７】
前記高強度値がオン状態であり、前記低強度値がオフ状態である、請求項３６に記載の非一時的コンピュータ可読媒体。
【請求項３８】
前記複数の光源のうち前記オン状態の光源数が一定である、請求項３７に記載の非一時的コンピュータ可読媒体。
【請求項３９】
前記強度が、予め決定されたアイトラッキング特性、ユーザバイオメトリクス、又は提示されたユーザインタフェースのうちの少なくとも１つにしたがって変調される、請求項３１から３８のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４０】
前記複数の光源が近赤外波長範囲内の光を放射する、請求項３１から３９のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４１】
前記光強度データが、前記ユーザの前記眼の複数の画像を含む、請求項３１から４０のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４２】
前記光強度データが複数のイベントメッセージを含む、請求項３１から４１のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４３】
前記動作が、前記変調の周波数範囲にしたがって前記光強度データをフィルタリングすることをさらに含み、前記ユーザの前記アイトラッキング特性を判定することが、前記フィルタリングされた光強度データに基づいている、請求項３１から４２のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４４】
前記動作が、前記光強度データの変調に基づいてそれぞれの光源を識別することをさらに含み、前記ユーザの前記アイトラッキング特性を判定することが、前記それぞれの光源の前記識別に基づいている、請求項３１から４３のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４５】
前記アイトラッキング特性が、視線方向及び／又は瞬き状態を含む、請求項３１から４４のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項４６】
複数のそれぞれの位置に複数の光センサを含むイベントカメラであって、光の強度の変化を検出する特定の光センサに応答して、前記特定の光センサの特定の位置を示すイベントメッセージを生成するイベントカメラと、
前記イベントカメラからイベントメッセージを受信し、前記イベントメッセージに基づいてユーザのアイトラッキング特性を判定するアイトラッカと、
を備える、装置。
【請求項４７】
前記イベントメッセージが、前記光の強度の変化の極性をさらに示す、請求項４６に記載の装置。
【請求項４８】
前記イベントメッセージが、前記光の強度の変化が検出された時間をさらに示す、請求項４６又は４７に記載の装置。
【請求項４９】
前記特定の位置が画素座標で示される、請求項４６から４８のいずれか一項に記載の装置。
【請求項５０】
前記アイトラッカが、前記ユーザの眼の瞳孔を検出することによって前記アイトラッキング特性を判定する、請求項４６から４９のいずれか一項に記載の装置。
【請求項５１】
前記アイトラッカが、
前記イベントカメラからの前記イベントメッセージに基づいて、ユーザの前記眼の近似強度画像を生成することと、
前記ユーザの前記眼の前記近似強度画像内に低強度領域を位置決めすることと、
楕円を前記低強度領域に当てはめることと、
によって、前記瞳孔を検出する、請求項５０に記載の装置。
【請求項５２】
前記アイトラッカが、前記ユーザの眼の瞳孔を追跡することによって、前記アイトラッキング特性を判定する、請求項４６から５１のいずれか一項に記載の装置。
【請求項５３】
前記アイトラッカが、
前記イベントカメラからの前記イベントメッセージに基づいて１つ以上の高コントラスト縁部を位置決めすることと、
前記１つ以上の高コントラスト縁部及び前の楕円に基づいて新しい楕円を当てはめることと、
によって前記ユーザの前記眼の前記瞳孔を追跡する、請求項５２に記載の装置。
【請求項５４】
前記アイトラッカが、前記ユーザの眼から反射された１つ以上のグリントを検出することによって、前記アイトラッキング特性を判定する、請求項４６に記載の装置。
【請求項５５】
前記アイトラッカが、光の強度の低下を示すイベントメッセージに基づくことなく、光の強度の増大を示すイベントメッセージに基づいて、前記１つ以上のグリントを検出する、請求項５４に記載の装置。
【請求項５６】
前記アイトラッカが、光の強度の増大を示すイベントメッセージに基づくことなく、光の強度の低下を示すイベントメッセージに基づいて、前記１つ以上のグリントを検出する、請求項５４に記載の装置。
【請求項５７】
複数のそれぞれの位置に複数の光センサを含むイベントカメラを使用して、複数のイベントメッセージを生成することであって、前記複数のイベントメッセージのそれぞれが、光の強度の変化を検出する特定の光センサに応答して、前記特定の光センサの特定の位置を示す、ことと、
前記複数のイベントメッセージに基づいて、ユーザのアイトラッキング特性を判定することと、
を含む、方法。
【請求項５８】
前記複数のイベントメッセージのそれぞれが、前記光の強度の変化の極性をさらに示す、請求項５７に記載の方法。
【請求項５９】
前記複数のイベントメッセージのそれぞれが、前記光の強度の変化が検出された時間をさらに示す、請求項５７又は５８に記載の方法。
【請求項６０】
前記特定の位置が、画素座標で示される、請求項５７から５９のいずれか一項に記載の方法。
【請求項６１】
前記アイトラッキング特性を判定することが、前記ユーザの眼の瞳孔を検出することを含む、請求項５７から６０のいずれか一項に記載の方法。
【請求項６２】
前記瞳孔を検出することが、
前記イベントカメラからの前記イベントメッセージに基づいて、ユーザの前記眼の近似強度画像を生成することと、
前記ユーザの前記眼の前記近似強度画像内に低強度領域を位置決めすることと、
楕円を前記低強度領域に当てはめることと、
を含む、請求項６１に記載の方法。
【請求項６３】
前記アイトラッキング特性を判定することが、前記ユーザの眼の瞳孔を追跡することを含む、請求項５７から６２に記載のいずれか一項の方法。
【請求項６４】
前記ユーザの前記眼の前記瞳孔を追跡することが、
前記イベントカメラからの前記イベントメッセージに基づいて１つ以上の高コントラスト縁部を位置決めすることと、
前記１つ以上の高コントラスト縁部及び前の楕円に基づいて新しい楕円を当てはめることと、
を含む、請求項６３に記載の方法。
【請求項６５】
前記アイトラッキング特性を判定することが、前記ユーザの眼から反射された１つ以上のグリントを検出することを含む、請求項５７から６４のいずれか一項に記載の方法。
【請求項６６】
前記１つ以上のグリントを検出することが、光の強度の低下を示すイベントメッセージに基づくことなく、光の強度の増大を示すイベントメッセージに基づく、請求項６５に記載の方法。
【請求項６７】
前記１つ以上のグリントを検出することが、光の強度の増大を示すイベントメッセージに基づくことなく、光の強度の低下を示すイベントメッセージに基づく、請求項６５に記載の方法。
【請求項６８】
コード化された命令を有する、非一時的コンピュータ可読媒体であって、前記命令が、プロセッサによって実行されると、前記プロセッサに、
複数のそれぞれの位置に複数の光センサを含むイベントカメラを使用して、複数のイベントメッセージを生成することであって、前記複数のイベントメッセージのそれぞれが、光の強度の変化を検出する特定の光センサに応答して生成され、前記特定の光センサの特定の位置を示す、ことと、
前記複数のイベントメッセージに基づいて、ユーザのアイトラッキング特性を判定ることと、
を含む動作を実行させる、非一時的コンピュータ可読媒体。
【請求項６９】
前記複数のイベントメッセージのそれぞれが、前記光の強度の変化の極性をさらに示す、請求項６８に記載の非一時的コンピュータ可読媒体。
【請求項７０】
前記複数のイベントメッセージのそれぞれが、前記光の強度の変化が検出された時間をさらに示す、請求項６８又は６９に記載の非一時的コンピュータ可読媒体。
【請求項７１】
前記特定の位置が画素座標で示される、請求項６８から７０のいずれか一項に記載の非一時的コンピュータ可読記憶媒体。
【請求項７２】
前記アイトラッキング特性を判定することが、前記ユーザの眼の瞳孔を検出することを含む、請求項６８から７１のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項７３】
前記瞳孔を検出することが、
前記イベントカメラからの前記イベントメッセージに基づいて、ユーザの前記眼の近似強度画像を生成することと、
前記ユーザの前記眼の前記近似強度画像内に低強度領域を位置決めすることと、
楕円を前記低強度領域に当てはめることと、
を含む、請求項７２に記載の非一時的コンピュータ可読媒体。
【請求項７４】
前記アイトラッキング特性を判定することが、前記ユーザの眼の瞳孔を追跡することを含む、請求項６８から７３のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項７５】
前記ユーザの前記眼の前記瞳孔を追跡することが、
前記イベントカメラからの前記イベントメッセージに基づいて１つ以上の高コントラスト縁部を位置決めすることと、
前記１つ以上の高コントラスト縁部及び前の楕円に基づいて新しい楕円を当てはめることと、
を含む、請求項７４に記載の非一時的コンピュータ可読媒体。
【請求項７６】
前記アイトラッキング特性を判定することが、前記ユーザの眼から反射された１つ以上のグリントを検出することを含む、請求項６８から７５のいずれか一項に記載の非一時的コンピュータ可読媒体。
【請求項７７】
前記１つ以上のグリントを検出することが、光の強度の低下を示すイベントメッセージに基づくことなく、光の強度の増大を示すイベントメッセージに基づく、請求項７６に記載の非一時的コンピュータ可読媒体。
【請求項７８】
前記１つ以上のグリントを検出することが、光の強度の増大を示すイベントメッセージに基づくことなく、光の強度の低下を示すイベントメッセージに基づく、請求項７６に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２０１７年９月２８日に出願された米国特許仮出願第６２／５６４，８７５号の優先権を主張し、参照によりその全体を本明細書に組み込む。
【０００２】
本開示は、概して、アイトラッキングに関し、特に、イベントカメラデータを使用するアイトラッキングのためのシステム、方法、及び装置に関する。
【背景技術】
【０００３】
様々な実装形態では、頭部装着デバイスは、頭部装着デバイスのユーザの視線方向を判定するアイトラッキングシステムを含む。アイトラッキングシステムは、多くの場合、アイトラッキングを行うプロセッサにユーザの眼の画像を送信するカメラを含む。アイトラッキングを可能にするのに十分なフレームレートでの画像の送信は、相当な帯域幅を有する通信リンクを必要とし、そのような通信リンクの使用により、頭部装着デバイスによる熱の発生と電力消費量が増加する。
【０００４】
本開示は、当業者によって理解され得るように、いくつかの例示的な実装形態の態様を参照することによって、より詳細な説明を有してもよく、そのいくつかは添付図面に示されている。
【図面の簡単な説明】
【０００５】
【図１】いくつかの実装形態に係る、例示的な動作環境のブロック図である。
【図２】いくつかの実装形態に係る、例示的なコントローラのブロック図である。
【図３】いくつかの実装形態に係る、例示的な頭部装着デバイス（ＨＭＤ）のブロック図である。
【図４】いくつかの実装形態に係る、頭部装着デバイスのブロック図である。
【図５Ａ】いくつかの実装形態に係る、第１の視線方向を有するユーザの眼を示す図である。
【図５Ｂ】いくつかの実装形態に係る、第２の視線方向を有するユーザの眼を示す図である。
【図６Ａ】いくつかの実装形態に係る、異なる時間における図５のユーザの眼を示す図である。
【図６Ｂ】いくつかの実装形態に係る、異なる時間における図５のユーザの眼を示す図である。
【図６Ｃ】いくつかの実装形態に係る、異なる時間における図５のユーザの眼を示す図である。
【図６Ｄ】いくつかの実装形態に係る、異なる時間における図５のユーザの眼を示す図である。
【図７】いくつかの実装形態に係る、イベントカメラの機能ブロック図である。
【図８】いくつかの実装形態に係る、イベントメッセージのデータ図である。
【図９Ａ】いくつかの実装形態に係る、イベントカメラを含むアイトラッキングシステムの機能ブロック図である。
【図９Ｂ】いくつかの実装形態に係る、機械学習回帰器を含むアイトラッキングシステムの機能ブロック図である。
【図９Ｃ】いくつかの実装形態に係る、視線推定器を含むアイトラッキングシステムの機能ブロック図である。
【図１０】いくつかの実装形態に係る、強度を変調したグリントを使用して視線方向を判定する方法のフローチャートである。
【図１１】いくつかの実装形態に係る、イベントカメラを使用して視線方向を判定する方法のフローチャートである。
【０００６】
慣例により、図面に示される様々な特徴は縮尺どおりに描かれていない場合がある。したがって、明確にするために、様々な特徴の寸法は任意に拡大又は縮小されている場合がある。加えて、いくつかの図面は、所与のシステム、方法、又はデバイスの構成要素の全てを描いていない場合がある。最後に、本明細書及び図の全体を通して、同様の特徴を示すために同様の参照番号が使用される場合がある。
【発明の概要】
【０００７】
本明細書に開示される様々な実装形態は、強度変調光源を使用してアイトラッキング特性を判定するためのデバイス、システム、及び方法を含む。本方法は、複数の光源からユーザの眼に向けて強度を変調した光を放射することを含む。本方法は、複数のグリントの形態でユーザの眼によって反射された放射光の強度を示す光強度データを受信することを含む。本方法は、光強度データに基づいて、ユーザのアイトラッキング特性を判定することを含む。
【０００８】
本明細書に開示される様々な実装形態は、イベントカメラを使用してアイトラッキング特性を判定するためのデバイス、システム、及び方法を含む。本方法は、複数のそれぞれの位置に複数の光センサを含むイベントカメラを使用して、複数のイベントメッセージを生成することであって、複数のイベントメッセージのそれぞれが、光の強度の変化を検出する特定の光センサに応答して生成され、特定の光センサの特定の位置を示すことを含む。本方法は、複数のイベントメッセージに基づいて、ユーザのアイトラッキング特性を判定することを含む。
【０００９】
いくつかの実装形態によれば、デバイスは、１つ以上のプロセッサと、非一時的メモリと、１つ以上のプログラムと、を含む。１つ以上のプログラムは、非一時的メモリに記憶され、１つ以上のプロセッサによって実行されるように構成されており、１つ以上のプログラムは、本明細書に記載の方法のいずれかを実行するか又は実行させる命令を含む。いくつかの実装形態によれば、非一時的コンピュータ可読記憶媒体は内部に命令を記憶しており、この命令は、デバイスの１つ以上のプロセッサによって実行されると、デバイスに本明細書内で説明する方法のうちのいずれかの動作を実行させる。いくつかの実装形態によれば、デバイスは、１つ以上のプロセッサと、非一時的メモリと、本明細書に記載される方法のいずれかを実行する又は実行させる手段と、を含む。
【発明を実施するための形態】
【００１０】
図面に示される例示的な実装形態の十分な理解を提供するために、数多くの詳細が記載されている。しかしながら、図面は単に本開示のいくつかの例示的な態様を示すものであり、したがって、限定的であると考慮されるべきではない。当業者であれば、他の有効な態様及び／又は変形が本明細書に記載される特定の詳細全てを含むものではないと理解するであろう。さらに、周知のシステム、方法、構成要素、デバイス及び回路は、本明細書に記載される例示的な実装形態のより適切な態様を不明瞭にしないように、網羅的に詳細を記載していない。
【００１１】
様々な実装形態では、アイトラッキングは、ユーザ対話を可能にするために使用され、中心窩レンダリングを提供するか、又は幾何学的歪みを低減する。アイトラッキングシステムは、光源と、カメラと、ユーザの眼から反射された光源からの光に関する、カメラからの受信データに対してアイトラッキングを実行するプロセッサと、を含む。様々な実装形態では、カメラは、複数の位置に複数の光センサを有するイベントカメラを含み、このイベントカメラは、光の強度の変化を検出する特定の光センサに応答して、特定の光センサの特定の位置を示すイベントメッセージを生成する。イベントカメラは、動的視覚センサ（ＤＶＳ）、シリコン網膜、イベントベースのカメラ、又はフレームレスカメラを含んでもよく、又はこのように称されてもよい。したがって、イベントカメラは、各光センサにおける絶対強度に関する大量のデータとは対照的に、光の強度の変化に関するデータを生成（及び送信）する。さらに、様々な実装形態では、強度が変化するときのデータが生成されるため、光源は、強度を変調した光を放射する。
【００１２】
図１は、いくつかの実装形態に係る、例示的な動作環境１００のブロック図である。関連する特徴が示されているが、当業者であれば、本明細書に開示される例示的な実施形態のより適切な態様を曖昧にしないように簡潔化するために、様々な他の特徴が示されていないことを、本開示から理解するであろう。そのため、非限定的な例として、動作環境１００は、コントローラ１１０と、頭部装着デバイス（ＨＭＤ）１２０とを含む。
【００１３】
いくつかの実施形態では、コントローラ１１０は、ユーザに対する拡張現実／仮想現実（ＡＲ／ＶＲ）体験を管理及び調整するように構成される。いくつかの実施形態では、コントローラ１１０は、ソフトウェア、ファームウェア、及び／又はハードウェアの好適な組み合わせを含む。コントローラ１１０については、図２を参照して以下より詳細に記載する。いくつかの実施形態では、コントローラ１１０は、シーン１０５に対してローカル又はリモートであるコンピューティングデバイスである。例えば、コントローラ１１０は、シーン１０５内に位置するローカルサーバである。別の例では、コントローラ１１０は、シーン１０５の外側に位置するリモートサーバ（例えば、クラウドサーバ、中央サーバなど）である。いくつかの実施形態では、コントローラ１１０は、１つ以上の有線又は無線通信チャネル１４４（例えば、ＢＬＵＥＴＯＯＴＨ、ＩＥＥＥ  ８０２．１１ｘ、ＩＥＥＥ  ８０２．１６ｘ、ＩＥＥＥ  ８０２．３ｘなど）を介して、ＨＭＤ１２０と通信可能に結合される。
【００１４】
いくつかの実施形態では、ＨＭＤ１２０は、ＡＲ／ＶＲ体験をユーザに提示するように構成される。いくつかの実施形態では、ＨＭＤ１２０は、ソフトウェア、ファームウェア、及び／又はハードウェアの好適な組み合わせを含む。ＨＭＤ１２０については、図３を参照して以下より詳細に記載する。いくつかの実施形態では、コントローラ１１０の機能は、ＨＭＤ１２０によって提供される、及び／又はＨＭＤ１２０と組み合わされる。
【００１５】
いくつかの実施形態によれば、ＨＭＤ１２０は、ユーザがシーン１０５内に仮想的及び／又は物理的に存在している間に、拡張現実／仮想現実（ＡＲ／ＶＲ）体験をユーザに提示する。いくつかの実施形態では、拡張現実（ＡＲ）体験を提示している間に、ＨＭＤ１２０は、ＡＲコンテンツを提示し、シーン１０５の光学シースルーを可能にするように構成される。いくつかの実施形態では、仮想現実（ＶＲ）体験を提示している間に、ＨＭＤ１２０は、ＶＲコンテンツを提示し、シーン１０５の映像パススルーを可能にするように構成される。
【００１６】
いくつかの実施形態では、ユーザはＨＭＤ１２０を頭部に装着する。したがって、ＨＭＤ１２０は、ＡＲ／ＶＲのコンテンツを表示するために提供される１つ以上のＡＲ／ＶＲディスプレイを含む。このようなＨＭＤ１２０は、ユーザの視野を包囲する。いくつかの実装形態では、ＨＭＤ１２０は、ＡＲ／ＶＲコンテンツをユーザに提示するように構成されたハンドヘルド電子デバイス（例えば、スマートフォン又はタブレット）に置き換えられる。いくつかの実施形態では、ＨＭＤ１２０は、ユーザがＨＭＤ１２０を着用又は保持せずに、ＡＲ／ＶＲコンテンツを提示するように構成されたＡＲ／ＶＲチャンバ、エンクロージャ、又は部屋に置き換えられる。
【００１７】
図２は、いくつかの実装形態に係る、コントローラ１１０の一例のブロック図である。特定の特徴が示されているが、当業者は、本明細書に開示される実装形態のより適切な態様を曖昧にしないよう、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。そのため、非限定的な例として、いくつかの実装形態では、コントローラ１１０は、１つ以上の処理ユニット２０２（例えば、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、グラフィック処理ユニット（ＧＰＵ）、中央処理ユニット（ＣＰＵ）、処理コアなど）、１つ以上の入出力（Ｉ／Ｏ）デバイス２０６、１つ以上の通信インタフェース２０８（例えば、ユニバーサルシリアルバス（ＵＳＢ）、ＦＩＲＥＷＩＲＥ、ＴＨＵＮＤＥＲＢＯＬＴ、ＩＥＥＥ  ８０２．３ｘ、ＩＥＥＥ  ８０２．１１ｘ、ＩＥＥＥ  ８０２．１６ｘ、グローバル移動通信システム（ＧＳＭ）、符号分割多元接続（ＣＤＭＡ）、時分割多元接続（ＴＤＭＡ）、グローバル測位システム（ＧＰＳ）、赤外線（ＩＲ）、ＢＬＵＥＴＯＯＴＨ、ＺＩＧＢＥＥ、及び／又は同様のタイプのインタフェース）、１つ以上のプログラミング（例えば、Ｉ／Ｏ）インタフェース２１０、メモリ２２０、並びにこれら及び様々な他の構成要素を相互接続するための１つ以上の通信バス２０４とを含む。
【００１８】
いくつかの実装形態では、１つ以上の通信バス２０４は、システム構成要素を相互接続し、システム構成要素間の通信を制御する回路を含む。いくつかの実装形態では、１つ以上のＩ／Ｏデバイス２０６は、キーボード、マウス、タッチパッド、ジョイスティック、１つ以上のマイクロフォン、１つ以上のスピーカ、１つ以上の画像センサ、１つ以上のディスプレイなどのうちの少なくとも１つを含む。
【００１９】
メモリ２２０は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダブルデータレートランダムアクセスメモリ（ＤＤＲＲＡＭ）、又は他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含む。いくつかの実装形態では、メモリ２２０は、１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性記憶デバイスなどの不揮発性メモリを含む。メモリ２２０は、１つ以上の処理ユニット２０２のリモートに位置する１つ以上の記憶デバイスを任意選択的に含む。メモリ２２０は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実装形態では、メモリ２２０又はメモリ２２０の非一時的コンピュータ可読記憶媒体は、以下のプログラム、モジュール及びデータ構造、又はそれらのサブセットを記憶し、任意選択のオペレーティングシステム２３０及び拡張現実／仮想現実（ＡＲ／ＶＲ）体験モジュール２４０を含む。
【００２０】
オペレーティングシステム２３０は、様々な基本システムサービスを処理するため及びハードウェア依存タスクを実行するための手順を含む。いくつかの実装形態では、ＡＲ／ＶＲ体験モジュール２４０は、１人以上のユーザに対する１つ以上のＡＲ／ＶＲ体験（例えば、１人以上のユーザに対する単一のＡＲ／ＶＲ体験、又は１人以上のユーザの各群に対する複数のＡＲ／ＶＲ体験）を管理及び調整するように構成される。そのため、様々な実装形態では、ＡＲ／ＶＲ体験モジュール２４０は、データ取得ユニット２４２、追跡ユニット２４４、調整ユニット２４６、及びデータ送信ユニット２４８を含む。
【００２１】
いくつかの実装形態では、データ取得ユニット２４２は、少なくともＨＭＤ１２０からデータ（例えば、提示データ、対話データ、センサデータ、位置データなど）を取得するように構成される。その目的で、様々な実装形態において、データ取得ユニット２４２は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００２２】
いくつかの実装形態では、追跡ユニット２４４は、シーン１０５をマッピングし、シーン１０５に対する少なくともＨＭＤ１２０の位置／場所を追跡するように構成される。その目的で、様々な実装形態において、追跡ユニット２４４は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００２３】
いくつかの実装形態では、調整ユニット２４６は、ＨＭＤ１２０によってユーザに提示されるＡＲ／ＶＲ体験を管理及び調整するように構成される。その目的で、様々な実装形態において、調整ユニット２４６は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００２４】
いくつかの実装形態では、データ送信ユニット２４８は、少なくともＨＭＤ１２０にデータ（例えば、提示データ、位置データなど）を送信するように構成される。その目的で、様々な実装形態において、データ送信ユニット２４８は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００２５】
データ取得ユニット２４２、追跡ユニット２４４、調整ユニット２４６、及びデータ送信ユニット２４８は、単一のデバイス（例えば、コントローラ１１０）上に存在するものとして示されているが、他の実装形態では、データ取得ユニット２４２、追跡ユニット２４４、調整ユニット２４６、及びデータ送信ユニット２４８の任意の組み合わせが、別個のコンピューティングデバイス内に配置されてもよいことを理解されたい。
【００２６】
図２は、本明細書に記載される実装形態の構造概略とは対照的に、特定の実装形態に存在する様々な特徴の機能的説明をさらに意図している。当業者によって認識されるように、別々に示されたアイテムを組み合わせることができ、一部のアイテムを分離することができる。例えば、図２に別々に示されるいくつかの機能モジュールは、単一のモジュールに実装することができ、単一の機能ブロックの様々な機能は、様々な実装形態において１つ以上の機能ブロックによって実装され得る。モジュールの実際の数並びに特定の機能の分割及びそれらの間にどのように機能が割り当てられるかは、実装形態によって異なり、いくつかの実装形態では、特定の実装形態のために選択されたハードウェア、ソフトウェア又はファームウェアの特定の組み合わせに部分的に依存する。
【００２７】
図３は、いくつかの実装形態に係る、頭部装着デバイス（ＨＭＤ）１２０のブロック図である。特定の特徴が示されているが、当業者は、本明細書に開示される実装形態のより適切な態様を曖昧にしないよう、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。その目的のため、非限定的な例として、いくつかの実装形態では、ＨＭＤ１２０は、１つ以上の処理ユニット３０２（例えば、マイクロプロセッサ、ＡＳＩＣ、ＦＰＧＡ、ＧＰＵ、ＣＰＵ、処理コアなど）、１つ以上の入出力（Ｉ／Ｏ）機器及びセンサ３０６、１つ以上の通信インタフェース３０８（例えば、ＵＳＢ、ＦＩＲＥＷＩＲＥ、ＴＨＵＮＤＥＲＢＯＬＴ、ＩＥＥＥ  ８０２．３ｘ、ＩＥＥＥ  ８０２．１１ｘ、ＩＥＥＥ  ８０２．１６ｘ、ＧＳＭ、ＣＤＭＡ、ＴＤＭＡ、ＧＰＳ、赤外線、ＢＬＵＥＴＯＯＴＨ、ＺＩＧＢＥＥ、ＳＰＩ、Ｉ２Ｃ又は同様のタイプのインタフェース）、１つ以上のプログラミング（例えば、Ｉ／Ｏ）インタフェース３１０、１つ以上のＡＲ／ＶＲディスプレイ３１２、１つ以上の内部及び／又は外部対向画像センサシステム３１４、メモリ３２０、及びこれら並びに様々な他の構成要素を相互接続するための１つ以上の通信バス３０４が挙げられる。
【００２８】
いくつかの実装形態では、１つ以上の通信バス３０４は、システム構成要素を相互接続し、システム構成要素間の通信を制御する回路を含む。いくつかの実装形態では、１つ以上のＩ／Ｏデバイス及びセンサ３０６は、慣性測定装置（ＩＭＵ）、加速度計、磁力計、ジャイロスコープ、温度計、１つ以上の生理的センサ（例えば、血圧モニタ、心拍数モニタ、血液酸素センサ、血糖センサなど）、１つ以上のマイクロフォン、１つ以上のスピーカ、触覚エンジン、１つ以上の深度センサ（例えば、構造化光、飛行時間など）などのうちの少なくとも１つを含む。
【００２９】
いくつかの実装形態では、１つ以上のＡＲ／ＶＲディスプレイ３１２は、ＡＲ／ＶＲ体験をユーザに提示するように構成されている。いくつかの実装形態では、１つ以上のＡＲ／ＶＲディスプレイ３１２は、ホログラフィック、デジタル光処理（ＤＬＰ）、液晶ディスプレイ（ＬＣＤ）、液晶オンシリコン（ＬＣｏＳ）、有機発光電界効果トランジスタ（ＯＬＥＴ）、有機発光ダイオード（ＯＬＥＤ）、表面伝導型電子放射素子ディスプレイ（ＳＥＤ）、電界放射ディスプレイ（ＦＥＤ）、量子ドット発光ダイオード（ＱＤ−ＬＥＤ）、ＭＥＭＳ、及び／又は同様のディスプレイタイプに相当する。いくつかの実装形態では、１つ以上のＡＲ／ＶＲディスプレイ３１２は、回折、反射、偏光、ホログラフィックなどの、導波管ディスプレイに相当する。例えば、ＨＭＤ１２０は、単一のＡＲ／ＶＲディスプレイを含む。別の実施例では、ＨＭＤ１２０は、ユーザの各眼用のＡＲ／ＶＲディスプレイを含む。いくつかの実装形態では、１つ以上のＡＲ／ＶＲディスプレイ３１２は、ＡＲ又はＶＲコンテンツを提示することができる。いくつかの実装形態では、１つ以上のＡＲ／ＶＲディスプレイ３１２は、ＡＲ又はＶＲコンテンツを提示することができる。
【００３０】
いくつかの実装形態では、１つ以上の画像センサシステム３１４は、ユーザの眼を含むユーザの顔の一部に対応する画像データを取得するように構成される。１つ以上の画像センサシステム３１４は、１つ以上のＲＧＢカメラ（例えば、相補型金属酸化膜半導体（ＣＭＯＳ）画像センサ又は電荷結合デバイス（ＣＣＤ）画像センサを備えた）、モノクロカメラ、赤外線カメラ、イベントベースのカメラなどを含む。様々な実装形態では、１つ以上の画像センサシステム３１４は、フラッシュ又はグリント源などの、ユーザの顔の一部に光を放射する照明源をさらに含む。
【００３１】
メモリ３２０は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ又は他のランダムアクセスソリッドステートメモリデバイスなどの、高速ランダムアクセスメモリを含む。いくつかの実装形態では、メモリ３２０は、１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又はその他の不揮発性記憶デバイスなどの不揮発性メモリを含む。メモリ３２０は、１つ以上の処理ユニット３０２からリモートに位置する１つ以上の記憶デバイスを任意選択的に含む。メモリ３２０は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実装形態では、メモリ３２０又はメモリ３２０の非一時的コンピュータ可読記憶媒体は、以下のプログラム、モジュール及びデータ構造、又はそれらのサブセットを記憶し、任意選択のオペレーティングシステム３３０、ＡＲ／ＶＲ提示モジュール３４０、及びユーザデータストア３６０を含む。
【００３２】
オペレーティングシステム３３０は、様々な基本システムサービスを処理するための及びハードウェア依存タスクを実行するための手順を含む。いくつかの実装形態では、ＡＲ／ＶＲ提示モジュール３４０は、１つ以上のＡＲ／ＶＲディスプレイ３１２を介してＡＲ／ＶＲコンテンツをユーザに提示するように構成される。そのため、様々な実装形態では、ＡＲ／ＶＲ提示モジュール３４０は、データ取得ユニット３４２、ＡＲ／ＶＲ提示ユニット３４４、アイトラッキングユニット３４６、及びデータ送信ユニット３４８を含む。
【００３３】
いくつかの実装形態では、データ取得ユニット３４２は、少なくともコントローラ１１０からデータ（例えば、提示データ、対話データ、センサデータ、位置データなど）を取得するように構成される。その目的で、様々な実装形態では、データ取得ユニット３４２は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００３４】
いくつかの実装形態では、ＡＲ／ＶＲ提示ユニット３４４は、１つ以上のＡＲ／ＶＲディスプレイ３１２を介してＡＲ／ＶＲコンテンツを提示するように構成される。その目的のため、様々な実装形態では、ＡＲ／ＶＲ提示ユニット３４４は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００３５】
いくつかの実装形態では、アイトラッキングユニット３４６は、イベントカメラから受信したイベントメッセージに基づいて、ユーザのアイトラッキング特性を判定するように構成される。その目的で、様々な実装形態において、アイトラッキングユニット３４６は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００３６】
いくつかの実装形態では、データ送信ユニット３４８は、少なくともコントローラ１１０にデータ（例えば、提示データ、位置データなど）を送信するように構成される。その目的で、様々な実装形態では、データ送信ユニット３４８は、そのための命令及び／又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
【００３７】
データ取得ユニット３４２は、ＡＲ／ＶＲ提示ユニット３４４、アイトラッキングユニット３４６、及びデータ送信ユニット３４８は、単一のデバイス（例えば、ＨＭＤ１２０）上に存在するものとして示されているが、他の実装形態では、データ取得ユニット３４２、ＡＲ／ＶＲ提示ユニット３４４、アイトラッキングユニット３４６、及びデータ送信ユニット３４８の任意の組み合わせが、別個のコンピューティングデバイス内に配置されてもよいことを理解されたい。
【００３８】
図３は、本明細書に記載される実装形態の構造概略とは対照的に、特定の実装形態に存在する様々な特徴の機能的説明をさらに意図している。当業者によって認識されるように、別々に示されたアイテムを組み合わせることができ、一部のアイテムを分離することができる。例えば、図３に別々に示されるいくつかの機能モジュールは、単一のモジュール内に実装することができ、単一の機能ブロックの様々な機能は、様々な実装形態において１つ以上の機能ブロックによって実装され得る。モジュールの実際の数並びに特定の機能の分割及びそれらの間にどのように機能が割り当てられるかは、実装形態によって異なり、いくつかの実装形態では、特定の実装形態のために選択されたハードウェア、ソフトウェア又はファームウェアの特定の組み合わせに部分的に依存する。
【００３９】
図４は、いくつかの実装形態に係る、頭部装着デバイス４００のブロック図である。頭部装着デバイス４００は、頭部装着デバイス４００の様々な構成要素を収容する筐体４０１（又はエンクロージャ）を含む。筐体４０１は、筐体４０１の（ユーザ１０の）近位端に配置されたアイパッド４０５を含むことができる（又はアイパッドに結合することができる）。いくつかの実装形態では、アイパッド４０５はプラスチック又はゴム片であり、ユーザ１０の顔の上の適切な位置（例えば、ユーザ１０の眼を取り囲む位置）に快適かつぴったりと頭部装着デバイス４００を保持する。
【００４０】
筐体４０１は、画像を表示するディスプレイ４１０を収容することができ、ユーザ１０の眼に向けて光を放射する。様々な実装形態では、ディスプレイ４１０は、ディスプレイ４１０によって放射された光を屈折させるアイピース（図示せず）を通って光を出射し、ディスプレイは、ユーザ１０にとって眼からディスプレイ４１０までの実際の距離よりも遠い仮想距離にあるように見える。様々な実装形態では、ユーザがディスプレイ４１０に焦点を合わせることができるようにするために、仮想距離は、眼の最小焦点距離（例えば、７ｃｍ）よりも少なくとも大きい。さらに、様々な実装形態では、より良好なユーザ体験を提供するために、仮想距離は１ｍ超である。
【００４１】
図４は、ディスプレイ４１０及びアイパッド４０５を含む頭部装着デバイス４００を示すが、いくつかの実装形態では、頭部装着デバイス４００はディスプレイ４１０を含まないか、又はアイパッド４０５を含まない光学シースルーディスプレイを含む。
【００４２】
筐体４０１はまた、１つ以上の光源４２２、カメラ４２４、及びコントローラ４８０を含むアイトラッキングシステムを収容する。１つ以上の光源４２２は、カメラ４２４によって検出することができる光パターン（例えば、グリントの円）として反射する光をユーザ１０の眼上に出射する。光パターンに基づいて、コントローラ４８０は、ユーザ１０のアイトラッキング特性を判定することができる。例えば、コントローラ４８０は、ユーザ１０の視線方向及び／又は瞬き状態（眼の開いた又は眼が閉じた状態）を判定することができる。別の例として、コントローラ４８０は、瞳孔中心、瞳孔径、又は注視点を判定することができる。したがって、様々な実装形態では、光が１つ以上の光源４２２によって放射され、ユーザ１０の眼で反射され、カメラ４２４によって検出される。様々な実装形態では、ユーザ１０の眼からの光は、カメラ４２４に到達する前に、ホットミラーで反射されるか、又はアイピースを通過する。
【００４３】
ディスプレイ４１０は、第１の波長範囲の光を放射し、１つ以上の光源４２２は、第２の波長範囲の光を放射する。同様に、カメラ４２４は、第２の波長範囲の光を検出する。様々な実装形態では、第１の波長範囲は可視波長範囲（例えば、約４００〜７００ｎｍの可視スペクトル内の波長範囲）であり、第２の波長範囲は近赤外波長範囲（例えば、約７００〜１４００ｎｍの近赤外スペクトル内の波長範囲）である。
【００４４】
様々な実装形態では、アイトラッキング（又は、具体的には、所定の視線方向）を使用して、ユーザ対話を可能にする（例えば、ユーザ１０は、ディスプレイ４１０上のオプションを見ることによって選択する）、中心窩レンダリングを提供する（例えば、ユーザ１０が見ているディスプレイ４１０の領域内では高い解像度で、ディスプレイ４１０上の他の場所ではそれ以下の解像度で提示する）、又は（例えば、ディスプレイ４１０上のオブジェクトの３Ｄレンダリングにおいて）幾何学的歪みを低減する。
【００４５】
様々な実装形態では、１つ以上の光源４２２は、複数のグリントの形態で反射する光を、ユーザの眼に向けて出射する。図５Ａは、いくつかの実装形態に係る、第１の視線方向を有するユーザの眼５００を示す。図５Ｂは、いくつかの実装形態に係る、第２の視線方向を有するユーザの眼５００を示す。眼５００は、虹彩５５４によって囲まれた瞳孔５５２を含み、虹彩と瞳孔はどちらも角膜５５０によって覆われている。眼５００は、強膜５５６（白眼５００としても知られる）をさらに含む。ユーザが（図５Ａのように）第１の視線方向を有するとき、あるパターン（例えば、円）に配置された複数の光源４２２から出射された光は、第１のパターン（図５Ａの円も）の複数のグリント５１０の形態で角膜５５０によって反射される。ユーザが（図５Ｂのように）第２の視線方向を有するとき、同じパターンで配列された複数の光源４２２から出射された光は、第２のパターン（図５Ｂの傾斜楕円）を有する複数のグリント５１０の形態で角膜５５０によって反射される。したがって、反射パターン（及び、場合によっては、瞳孔径、瞳孔形状、瞳孔中心などの他の特徴）に基づいて、ユーザのアイトラッキング特性を判定することができる。
【００４６】
様々な実装形態では、１つ以上の光源４２２（図４）は、ユーザの眼に向けて強度を変調した光を出射する。したがって、第１の時間において、複数の光源のうちの第１の光源は、第１の強度でユーザの眼に投射され、第２の時間において、複数の光源のうちの第１の光源は、第１の強度とは異なる第２の強度（ゼロになり得る、例えば、オフ）でユーザの眼に投射される。
【００４７】
図６Ａ〜図６Ｄは、いくつかの実装形態に係る、異なる時間における図５のユーザの眼５００を示す。複数のグリント６１０Ａ〜６１０Ｈは、ユーザの眼５００に向けて強度を変調した光を放射する（及び角膜５５０によって反射される）。例えば、第１の時間（図６Ａ）では、複数のグリント６１０Ａ〜６１０Ｈのうちの第１のグリント６１０Ａ及び第５のグリント６１０Ｅは、ユーザの眼５００によって第１の強度で反射される。第１の時間よりも後の第２の時間（図６Ｂ）では、第１のグリント６１０Ａ及び第５のグリント６１０Ｅの強度は、第２の強度（例えば、ゼロ）に変調される。また、第２の時間では、複数のグリント６１０Ａ〜６１０Ｈのうちの第２のグリント６１０Ｂ及び第６のグリント６１０Ｆは、ユーザの眼５００によって第１の強度で反射される。第２の時間よりも後の第３の時間（図６Ｃ）では、複数のグリント６１０Ａ〜６１０Ｈのうちの第３のグリント６１０Ｃ及び第７のグリント６１０Ｇは、ユーザの眼５００によって第１の強度で反射される。第３の時間よりも後の第４の時間（図６Ｄ）では、複数のグリント６１０Ａ〜６１０Ｈのうちの第４のグリント６１０Ｄ及び第８のグリント６１０Ｈは、ユーザの眼５００によって第１の強度で反射される。第４の時間よりも後の第５の時間（図６Ａに戻る）では、第１のグリント６１０Ａ及び第５のグリント６１０Ｅの強度は、第１の強度に戻るように変調される。
【００４８】
したがって、様々な実装形態では、複数のグリント６１０Ａ〜６１０Ｈのそれぞれは、変調周波数（例えば、６００Ｈｚ）で点滅する。しかしながら、第２のグリント６１０Ｂの位相は、第１のグリント６１０Ａの位相からオフセットされ、第３のグリント６１０Ｃの位相は、第２のグリント６１０Ｂなどの位相からオフセットされて、グリントは角膜５５０の周りを回転しているように見える。
【００４９】
したがって、様々な実装形態では、複数の光源のうちの異なる光源の強度は、異なるように変調される。したがって、眼によって反射されカメラ４２４によって検出されたグリントが分析されると、グリント及び対応する光源（例えば、検出されたグリントを生成した光源）を判定することができる。
【００５０】
様々な実装形態では、１つ以上の光源４２２（図４Ａの）は、様々に差示的に変調される。様々な実装形態では、複数の光源のうちの第１の光源は、第１の位相オフセットによって第１の周波数で変調され（例えば、図６Ａの第１のグリント６１０Ａ）、複数の光源のうちの第２の光源は、第２の位相オフセットによって第１の周波数で変調される（例えば、図６Ｂの第２のグリント６１０Ｂ）。
【００５１】
様々な実装形態では、１つ以上の光源４２２は、異なる変調周波数で放射光の強度を変調する。例えば、様々な実装形態では、複数の光源のうちの第１の光源は、第１の周波数（例えば、６００Ｈｚ）で変調され、複数の光源のうちの第２の光源は、第２の周波数（例えば、５００Ｈｚ）で変調される。
【００５２】
様々な実装形態では、１つ以上の光源４２２は、ＣＤＭＡ（符号分割多重アクセス）通信で使用され得るものなどの、異なる直交符号にしたがって放射光の強度を変調する。例えば、ウォルシュ行列の行又は列は、直交符号として使用することができる。したがって、様々な実装形態では、複数の光源のうちの第１の光源は、第１の直交符号にしたがって変調され、複数の光源のうちの第２の光源は、第２の直交符号にしたがって変調される。
【００５３】
様々な実装形態では、１つ以上の光源４２２は、高強度値と低強度値のいずれかに放射光の強度を変調する。したがって、様々な時間において、光源によって放射される光の強度は、高強度値又は低強度値のいずれかである。様々な実装携帯では、低強度値はゼロである。したがって、様々な実装形態では、１つ以上の光源４２２は、オン状態（高強度値）とオフ状態（低強度値）のいずれかで放射光の強度を変調する。様々な実装形態では（図６Ａ〜６Ｄ）、複数の光源のうちオン状態の光源数は一定である。
【００５４】
様々な実装形態では、１つ以上の光源４２２は、強度範囲内（例えば、最大強度の１０％〜最大強度の４０％）で放射光の強度を変調する。したがって、様々な時間において、光源の強度は、低強度値、高強度値、又はそれらの間の何らかの値のいずれかである。様々な実装形態では、１つ以上の光源４２２は、複数の光源のうちの第１の光源が第１の強度範囲内で変調され、複数の光源のうちの第２の光源が第１の強度範囲とは異なる第２の強度範囲内で変調されるように、差次的に変調される。
【００５５】
様々な実装形態では、１つ以上の光源４２２は、視線方向にしたがって放射された光の強度を変調する。例えば、ユーザが、特定の光源からの光（例えば、図５Ｂの左上のグリント）を瞳孔によって反射する方向を注視している場合、１つ以上の光源４２２は、この知識に基づいて、放射光の強度を変更する。様々な実装形態では、１つ以上の光源４２２は、放射光の強度を低下させて、近赤外光の量を安全上の予防措置として瞳孔に入射させる。
【００５６】
様々な実装形態では、１つ以上の光源４２２は、ユーザバイオメトリクスにしたがって放射された光の強度を変調する。例えば、ユーザが正常時よりも多く瞬きしている、心拍数が上昇している、又は子供として登録されている場合、１つ以上の光源４２２は、眼への応力を低減するために、放射光の強度（又は複数の光源によって放射される全ての光の総強度）を低下させる。別の例として、１つ以上の光源４２２は、青色の眼と茶色の眼とはスペクトル反射率が異なるため、ユーザの眼の色に基づいて放射光の強度を変調する。
【００５７】
様々な実装形態では、１つ以上の光源４２２は、提示されたユーザインタフェース（例えば、ディスプレイ４１０上に表示されているもの）にしたがって、放射光の強度を変調する。例えば、ディスプレイ４１０が異常に明るい（例えば、爆発の映像が表示されている）場合、１つ以上の光源４２２は、放射光の強度を向上させて、ディスプレイ４１０からの潜在的な干渉を補償する。
【００５８】
様々な実装形態では、カメラ４２４は、フレームレートでの特定の時点又は複数の時点で、ユーザ１０の眼の画像を生成するフレームカメラである。各画像は、カメラの光センサのマトリクスの位置に対応する、画像の画素に対応する画素値のマトリクスを含む。
【００５９】
様々な実装形態では、カメラ４２４は、光の強度の変化を検出する特定の光センサに応答して、特定の光センサの特定の位置を示すイベントメッセージを生成する複数の光センサ（例えば、光センサのマトリクス）を、複数の対応する位置に含むイベントカメラである。
【００６０】
図７は、いくつかの実装形態に係る、イベントカメラ７００の機能ブロック図である。イベントカメラ７００は、メッセージ生成器７７０にそれぞれ結合された複数の光センサ７６０を含む。様々な実装形態では、複数の光センサ７６０は、行及び列のマトリクス状に配置されるため、複数の光センサ７６０のそれぞれは行値及び列値と関連付けられる。
【００６１】
複数の光センサ７６０は、図７に詳細に示される光センサ７０１を含む。光センサ７０１は、ソース電圧と接地電圧との間の抵抗器７２１と直列のフォトダイオード７１０を含む。フォトダイオード７１０の両端間電圧は、光センサ７０１に衝突する光の強度に比例する。光センサ７０１は、フォトダイオード７１０と平行な第１のコンデンサ７３１を含む。したがって、第１のコンデンサ７３１の両端間電圧は、（例えば、光センサ７０１によって検出された光の強度に比例する）フォトダイオード７１０の両端間電圧と同じである。
【００６２】
光センサ７０１は、第１のコンデンサ７３１と第２のコンデンサ７３２との間に結合されたスイッチ７４０を含む。第２のコンデンサ７３２は、スイッチと接地電圧との間に結合される。したがって、スイッチ７４０が閉じられているとき、第２のコンデンサ７３２の両端間電圧は、第１のコンデンサ７３１の両端間電圧と同じである（例えば、光センサ７０１によって検出された光の強度に比例する）。スイッチ７４０が開いているとき、第２のコンデンサ７３２の両端間電圧は、スイッチ７４０が最後に閉じられたときの第２のコンデンサ７３２の両端間電圧に固定される。
【００６３】
第１のコンデンサ７３１の両端間電圧及び第２のコンデンサ７３２の両端間電圧は、比較器７５０に供給される。第１のコンデンサ７３１の両端間電圧と第２のコンデンサ７３２の両端間電圧との差が閾値量未満であるとき、比較器７５０は「０」電圧を出力する。第１のコンデンサ７３１の両端間電圧が、第２のコンデンサ７３２の両端間電圧よりも少なくとも閾値量だけ高いとき、比較器７５０は「１」電圧を出力する。第１のコンデンサ７３１の両端間電圧が、第２のコンデンサ７３２の両端間電圧よりも少なくとも閾値量だけ低いとき、比較器７５０は、「−１」電圧を出力する。
【００６４】
比較器７５０が「１」電圧又は「−１」電圧を出力するとき、スイッチ７４０は閉じられ、メッセージ生成器７７０はこのデジタル信号を受信し、イベントメッセージを生成する（以下でさらに説明する）。
【００６５】
一例として、第１の時間において、光センサ７０１に衝突する光の強度が、第１の光値である。したがって、フォトダイオード７１０の両端間電圧が、第１の電圧値である。同様に、第１のコンデンサ７３１の両端間電圧が、第１の電圧値である。この例では、第２のコンデンサ７３２の両端間電圧も第１の電圧値である。したがって、比較器７５０は「０」電圧を出力し、スイッチ７４０は閉じたままであり、メッセージ生成器７７０は何も行わない。
【００６６】
第２の時間において、光センサ７０１に衝突する光の強度は、第２の光値まで増加する。したがって、フォトダイオード７１０の両端間電圧は、（第１の電圧値よりも高い）第２の電圧値である。同様に、第１のコンデンサ７３１の両端間電圧が、第２の電圧値である。スイッチ７４０が開いているため、第２のコンデンサ７３２の両端間電圧は、依然として第１の電圧値のままである。第２の電圧値が少なくとも第１の電圧値よりも大きい閾値であると仮定すると、比較器７５０は、「１」電圧を出力して、スイッチ７４０は閉じられ、メッセージ生成器７７０は、受信したデジタル信号に基づいてイベントメッセージを生成する。
【００６７】
スイッチ７４０が比較器７５０から「１」電圧によって閉じられた状態で、第２のコンデンサ７３２の両端間電圧は、第１の電圧値から第２の電圧値に変化する。したがって、比較器７５０は「０」電圧を出力し、スイッチ７４０を開く。
【００６８】
第３の時間において、光センサ７０１に衝突する光の強度は、第３の光値まで（再び）増大する。したがって、フォトダイオード７１０の両端間電圧は、（第２の電圧値よりも高い）第３の電圧値である。同様に、第１のコンデンサ７３１の両端間電圧が、第３の電圧値である。スイッチ７４０が開いているため、第２のコンデンサ７３２の両端間電圧は、依然として第２の電圧値のままである。第３の電圧値が少なくとも第２の電圧値よりも大きい閾値であると仮定すると、比較器７５０は、「１」電圧を出力し、スイッチ７４０が閉じられ、メッセージ生成器７７０は、受信したデジタル信号に基づいてイベントメッセージを生成する。
【００６９】
スイッチ７４０が比較器７５０から「１」電圧によって閉じられた状態で、第２のコンデンサ７３２の両端間電圧は、第２の電圧値から第３の電圧値に変化する。したがって、比較器７５０は「０」電圧を出力し、スイッチ７４０を開く。
【００７０】
第４の時間において、光センサ７０１に衝突する光の強度は、第２の光値に戻る。したがって、フォトダイオード７１０の両端間電圧は、第２の電圧値（第３の電圧値未満）である。同様に、第１のコンデンサ７３１の両端間電圧が、第２の電圧値である。スイッチ７４０が開いているため、第２のコンデンサ７３２の両端間電圧は、依然として第３の電圧値のままである。したがって、比較器７５０は、「−１」電圧を出力し、スイッチ７４０が閉じられ、メッセージ生成器７７０は、受信したデジタル信号に基づいてイベントメッセージを生成する。
【００７１】
スイッチ７４０が比較器７５０から「−１」電圧によって閉じられた状態で、第２のコンデンサ７３２の両端間電圧は、第３の電圧値から第２の電圧値に変化する。したがって、比較器７５０は「０」電圧を出力し、スイッチ７４０を開く。
【００７２】
メッセージ生成器７７０は、異なる時点で、複数の光センサ７６０のそれぞれから、光の強度の増大（「１」電圧）又は光の強度の低下（「−１」電圧）を示すデジタル信号を受信する。複数の光センサ７６０の特定の光センサからデジタル信号を受信したことに応じて、メッセージ生成器７７０はイベントメッセージを生成する。
【００７３】
図８は、いくつかの実装形態に係る、イベントメッセージ８００のデータ図である。様々な実装形態では、イベントメッセージ８００は、位置フィールド８０２において、特定の光センサの特定の位置を示す。様々な実装形態では、イベントメッセージは、（例えば、行フィールド内の）行値及び（例えば、列フィールド内の）列値などの画素座標で特定の位置を示す。様々な実装形態では、イベントメッセージは、極性フィールド８０３において、光の強度の変化の極性をさらに示す。例えば、イベントメッセージは、極性フィールド８０３内に光の強度の増大を示す「１」を含み、極性フィールド８０３内に光の強度の低下を示す「０」を含むことができる。様々な実装形態では、イベントメッセージは、時間フィールド８０１において、光の強度の変化が検出された時間（例えば、デジタル信号が受信された時間）をさらに示す。様々な実装形態では、イベントメッセージは、極性に代えて又は極性に加えて、検出された光の強度を示す値を示す絶対強度フィールド（図示せず）を示す。
【００７４】
図９Ａは、いくつかの実装形態に係る、イベントカメラ９１０を含むアイトラッキングシステム９００の機能ブロック図である。アイトラッキングシステム９００は、イベントカメラ９１０から受信したイベントメッセージに基づいて、ユーザの視線方向を出力する。
【００７５】
イベントカメラ９１０は、複数の光センサを複数の対応位置に備える。光の強度の変化を検出する特定の光センサに応答して、イベントカメラ９１０は、特定の光センサの特定の位置を示すイベントメッセージを生成する。図８に関して上述したように、様々な実装形態では、特定の位置は画素座標で示す。様々な実装形態では、イベントメッセージは、光の強度の変化の極性をさらに示す。様々な実装形態では、イベントメッセージは、光の強度の変化が検出された時間をさらに示す。様々な実装形態では、イベントメッセージは、検出された光の強度を示す値をさらに示す。
【００７６】
イベントカメラ９１０からのイベントメッセージは、ダイプレクサ９２０によって受信される。ダイプレクサ９２０は、イベントメッセージを、（１つ以上の光源の変調周波数を中心とする周波数帯域に関連付けられた）標的周波数イベントメッセージと、（他の周波数に関連付けられた）標的外周波数イベントメッセージとを分離して、グリント検出器９４０に結合された第１の特徴生成器９３０に標的周波数イベントメッセージを供給し、瞳孔検出器９６０に結合された第２の特徴生成器９５０に標的外周波数イベントメッセージを供給する。いくつかの実装形態では、第１の特徴生成器９３０及び／又は第２の特徴生成器９５０は省略され、標的周波数イベントメッセージ及び／又は標的外周波数イベントメッセージはそれぞれ、グリント検出器９４０及び／又は瞳孔検出器９６０に直接供給される。
【００７７】
様々な実装形態では、ダイプレクサ９２０は、時間フィールドにおいて、光の強度の変化が検出された時間を示すタイムスタンプに基づいて、イベントメッセージが標的周波数イベントメッセージ（又は標的外周波数イベントメッセージ）であると判定する。例えば、様々な実装形態では、ダイプレクサ９２０は、イベントメッセージが、設定時間内の特定の位置を示す設定範囲内の設定数のイベントメッセージを含むセットのうちの１つである場合、イベントメッセージが標的周波数イベントメッセージであると判定する。そうでない場合、ダイプレクサ９２０は、イベントメッセージが標的外周波数イベントメッセージであると判定する。様々な実装形態では、設定範囲及び／又は設定時間は、ユーザの眼に向けて放射される変調光の変調周波数に比例する。別の実施例として、様々な実装形態では、ダイプレクサ９２０は、類似又は反対の極性を有する連続イベント間の時間が設定時間範囲内にある場合、イベントメッセージが標的周波数イベントメッセージであると判定する。
【００７８】
第２の特徴生成器９５０は、標的外周波数イベントメッセージを受信し、標的外周波数イベントメッセージに基づいて１つ以上の標的外特徴を生成する。一実施形態では、標的外特徴は、近似強度画像である。様々な実装形態では、近似強度画像は、光センサのそれぞれの位置に対応するそれぞれの複数の画素における複数の画素値を有する画像を含む。特定の位置及び（光の強度が増大したことを示す）正の極性を示すイベントメッセージを受信すると、特定の位置に対応する画素における画素値にある量（例えば、１）が加算される。同様に、特定の位置及び（光の強度が低下したことを示す）負の極性を示すイベントメッセージを受信すると、特定の位置に対応する画素における画素値からある量を減算する。様々な実装形態では、近似強度画像はフィルタリングされる、例えば、ぼやける。一実施形態では、標的外特徴は、光センサのそれぞれの位置に対応するそれぞれの複数の画素における複数の画素値を有する正のタイムスタンプ画像であり、画素値は、対応する光センサが最後の正の極性のイベントをトリガしたときを示すタイムスタンプである。一実施形態では、標的外特徴は、光センサのそれぞれの位置に対応するそれぞれの複数の画素における複数の画素値を有する負のタイムスタンプ画像であり、画素値は、対応する光センサが最後の負の極性のイベントをトリガしたときを示すタイムスタンプである。一実施形態では、標的外特徴は、光センサのそれぞれの位置に対応するそれぞれの複数の画素における複数の画素値を有する周波数画像であり、画素値は、対応する光センサから受信したイベントメッセージの周波数の尺度である。様々な実装形態では、標的外特徴は、標的外周波数イベントメッセージに基づく他の特徴であり得る。
【００７９】
標的外特徴は、瞳孔検出器９６０によって受信される。一実施形態では、標的外特徴は、近似強度画像であり、瞳孔検出器９６０は、近似強度画像内に低強度領域を位置決めする。様々な実装形態では、瞳孔検出器９６０は、閾値未満の画素値を有する（少なくとも閾値サイズの）領域を位置決めする。様々な実装形態では、この領域は、ユーザの眼の瞳孔に対応する。様々な実装形態では、瞳孔検出器９６０は、楕円を低強度領域に当てはめ、楕円に関する楕円データを生成する。
【００８０】
様々な実装形態では、瞳孔検出器９６０は、初期瞳孔検出に加えて瞳孔追跡を行う。様々な実装形態では、瞳孔検出器９６０は、標的外周波数イベントメッセージ及び／又は標的外特徴に基づいて１つ以上の高コントラスト縁部を位置決めし、１つ以上の高コントラスト縁部及び前の楕円に基づいて新しい楕円を当てはめる。
【００８１】
様々な実装形態では、瞳孔検出器９６０は、新しい楕円及び／又は前の楕円に関する楕円データを幾何学的分析器９７０に提供する。様々な実装形態では、楕円データは、（瞳孔の瞳孔径に対応する）中心、（瞳孔径に対応する）短軸径及び長軸径、並びに回転角のうちの１つ以上を含む。
【００８２】
第１の特徴生成器９３０は、標的周波数イベントメッセージを受信し、標的周波数イベントメッセージに基づいて標的特徴を生成する。標的特徴は、標的外特徴と同じ又は異なる特徴を含む、標的外特徴に対して上述した特徴のうちのいずれかであり得る。グリント検出器９４０は、第１の特徴生成器９３０から標的特徴を受信する。様々な実装形態では、グリント検出器９４０は、ユーザの眼から反射された１つ以上のグリントの位置を判定する。様々な実装形態では、グリント検出器９４０は、光の強度の低下を示す（例えば、負の極性を示す）イベントメッセージに基づくことなく、光の強度の増大を示す（例えば、正の極性を示す）イベントメッセージに基づいて、位置を判定する。様々な実装形態では、グリント検出器９４０は、光の強度の増大を示す（例えば、正の極性を示す）イベントメッセージに基づくことなく、光の強度の低下を示す（例えば、負の極性を示す）イベントメッセージに基づいて、位置を判定する。
【００８３】
上述のように、様々な実装形態では、グリントは差示的変調をもって反射される（例えば、異なって変調される）。したがって、様々な実装形態では、グリント検出器９４０は、１つ以上のグリントの位置に加えて識別情報を判定する。したがって、様々な実装形態では、グリント検出器９４０は、１つ以上のグリントに対して、グリントを生成したそれぞれの光源に対応するそれぞれの位置及び対応する識別子を示すグリント検出メッセージを、幾何学的分析器９７０に出力する。様々な実装形態では、光源とイベントカメラとが同期され、変化が検出された時間と光源がトリガされた時間との間の相対時間を判定して、上記識別を可能にする。
【００８４】
幾何学的分析器９７０は、グリント検出器９４０から検出されたグリントに関するデータ、及び瞳孔検出器９６０からユーザの眼の瞳孔に関するデータを受信する。この受信情報に基づいて、幾何学的分析器９７０は、ユーザの視線方向及び／又は瞬き状態などの、ユーザのアイトラッキング特性を判定する。
【００８５】
様々な実施において、特にロバスト視線推定のために、幾何学的分析器９７０は、角膜から反射されたグリントと強膜から反射されたグリントとを区別し、視線方向を推定するために角膜から反射されたグリントのみを使用する。したがって、様々な実装形態では、幾何学的分析器９７０は、例えばＲＡＮＳＡＣ（ランダムサンプルコンセンサス）やロバスト重み付けなどのロバスト推定技術を適用することによって、この区別を実行するための手段を実装する。
【００８６】
図９Ｂは、いくつかの実装形態に係る、機械学習回帰器９８０を含むアイトラッキングシステム９０２の機能ブロック図である。アイトラッキングシステム９０２は、図９Ａのアイトラッキングシステム９００と実質的に同様であるが、グリント検出器９４０、瞳孔検出器９６０、及び幾何学的分析器９７０は、標的特徴及び標的外特徴に基づいてアイトラッキング特性を判定する機械学習回帰器９８０に置き換えられている。いくつかの実装形態では、第１の特徴生成器９３０及び／又は第２の特徴生成器９５０は省略されており、標的周波数イベントメッセージ及び／又は標的外周波数イベントメッセージは、それぞれ、機械学習回帰器９８０に直接供給される。
【００８７】
様々な実装形態では、機械学習回帰器９８０は、線形回帰器、ランダムフォレスト回帰器、適応型ブースティング回帰器、又はニューラルネットワーク（畳み込みニューラルネットワーク、反復ニューラルネットワーク、又は長期／短期メモリネットワークなど）を含む。
【００８８】
図９Ｃは、いくつかの実装形態に係る、視線推定器９９０を含むアイトラッキングシステム９０４の機能ブロック図である。アイトラッキングシステム９０４は、上述したようにイベントカメラ９１０を含む。イベントメッセージは、イベントメッセージが標的周波数イベントメッセージである確率を備えた各イベントメッセージをタグ付けする確率タグ付け器９２５に供給される。確率タグ付きイベントメッセージは、標的外特徴に関して上述したような１つ以上の特徴を生成する特徴生成器９３５に供給される。１つ以上の特徴は、１つ以上の特徴に基づいてアイトラッキング特性（例えば、視線方向）を判定する視線推定器９９０に供給される。
【００８９】
図１０は、いくつかの実装形態に係る、強度変調光源を使用してアイトラッキング特性を判定する方法１０００のフローチャートである。いくつかの実装形態では（及び以下に実施例として詳述するように）、方法１０００は、頭部装着電子デバイス、例えば図４の頭部装着電子デバイス４００によって実行される。様々な実装形態では、方法１０００は、１つ以上のプロセッサ、非一時的メモリ、及び１つ以上のＡＲ／ＶＲディスプレイ（例えば、図３のＨＭＤ１２０）を有するデバイスによって実行される。いくつかの実装形態では、方法１０００は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせを含む処理ロジックによって実行される。いくつかの実装形態では、方法１０００は、非一時的コンピュータ可読媒体（例えば、メモリ）に記憶されたコードを実行するプロセッサによって実行される。
【００９０】
方法１０００によると、まず、ブロック１０１０で、ＨＭＤは、複数の光源からユーザの眼に向けて強度を変調した光を放射する。様々な実装形態では、複数の光源のうちの第１の光源は、第１の位相オフセットで第１の周波数で変調され、複数の光源のうちの第２の光源は、第１の位相オフセットとは異なる第２の位相オフセットで、第１の周波数で変調される。様々な実装形態では、複数の光源のうちの第１の光源は、第１の周波数で変調され、複数の光源のうちの第２の光源は、第１の周波数とは異なる第２の周波数で変調される。様々な実装形態では、複数の光源のうちの第１の光源は、第１の直交符号にしたがって変調され、複数の光源のうちの第２の光源は、第２の直交符号にしたがって変調される。
【００９１】
様々な実装形態では、複数の光源のうちの第１の光源は、第１の強度範囲内で変調され、複数の光源のうちの第２の光源は、第１の強度範囲とは異なる第２の強度範囲内で変調される。様々な実装形態では、複数の光源の各光源は、高強度値と低強度値のいずれかに変調される。様々な実装形態では、高強度値はオン状態であり、低強度値はオフ状態である。様々な実装形態では、複数の光源のうちオン状態の光源数は一定である。様々な実装形態では、強度は、予め決定されたアイトラッキング特性、ユーザバイオメトリクス、又は提示されたユーザインタフェースのうちの少なくとも１つにしたがって変調される。
【００９２】
様々な実装形態では、複数の光源は、近赤外波長範囲内で光を放射する。
【００９３】
方法１０００は、引き続きブロック１０２０で、ＨＭＤは、複数のグリントの形態でユーザの眼によって反射された放射光の強度を示す光強度データを受信する。様々な実装形態では、光強度データは、ユーザの眼の複数の画像を含む。様々な実装形態では、光強度データは、複数のイベントメッセージを含む。
【００９４】
方法１０００は、引き続きブロック１０３０で、ＨＭＤは、光強度データに基づいてユーザのアイトラッキング特性を判定する。様々な実装形態において、アイトラッキング特性は、視線方向及び／又は瞬き状態を含む。様々な実装形態では、ＨＭＤが、変調周波数範囲にしたがって光強度データをフィルタリングし、フィルタリングされた光強度データに基づいてユーザのアイトラッキング特性を判定する。様々な実装形態では、ＨＭＤが、光強度データの変調に基づいてそれぞれの光源を識別し、それぞれの光源の識別に基づいてユーザのアイトラッキング特性を判定する。
【００９５】
図１１は、いくつかの実装形態に係る、イベントカメラを使用してアイトラッキング特性を判定する方法１１００のフローチャートである。いくつかの実装形態では（及び以下に実施例として詳述するように）、方法１１００は、頭部装着電子デバイス、例えば図４の頭部装着電子デバイス４００によって実行される。様々な実装形態では、方法１１００は、１つ以上のプロセッサ、非一時的メモリ、及び１つ以上のＡＲ／ＶＲディスプレイ（例えば、図３のＨＭＤ１２０）を有するデバイスによって実行される。いくつかの実装形態では、方法１１００は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせを含む処理ロジックによって実行される。いくつかの実装形態では、方法１１００は、非一時的コンピュータ可読媒体（例えば、メモリ）に記憶されたコードを実行するプロセッサによって実行される。
【００９６】
方法１１００によると、ブロック１１１０で、ＨＭＤは、複数のそれぞれの位置に複数の光センサを含むイベントカメラを使用して、複数のイベントメッセージを生成する。様々な実装形態では、複数のイベントメッセージはそれぞれ、光の強度の変化を検出する特定の光センサに応答して生成され、複数のイベントメッセージはそれぞれ、特定の光センサの特定の位置を示す。
【００９７】
様々な実装形態では、特定の位置は画素座標で示す。様々な実装形態では、複数のイベントメッセージはそれぞれ、光の強度の変化の極性をさらに示す。様々な実装形態では、複数のイベントメッセージはそれぞれ、光の強度の変化が検出された時間をさらに示す。
【００９８】
方法１１００によると、引き続きブロック１１２０で、ＨＭＤが、複数のイベントメッセージに基づいてユーザのアイトラッキング特性を判定する。様々な実装形態において、アイトラッキング特性は、視線方向及び／又は瞬き状態を含む。
【００９９】
様々な実装形態では、ＨＭＤが、ユーザの眼の瞳孔を検出することによってアイトラッキング特性を判定する。例えば、様々な実装形態では、ＨＭＤは、イベントカメラからのイベントメッセージに基づいてユーザの眼の近似強度画像を生成し、ユーザの眼の近似強度画像内に低強度領域を位置決めし、楕円を低強度領域に当てはめる。
【０１００】
様々な実装形態では、ＨＭＤは、ユーザの眼の瞳孔を追跡することによってアイトラッキング特性を判定する。例えば、様々な実装形態では、ＨＭＤは、イベントカメラからのイベントメッセージに基づいて１つ以上の高コントラスト縁部を位置決めし、１つ以上の高コントラスト縁部及び前の楕円に基づいて新しい楕円を当てはめる。
【０１０１】
様々な実装形態では、ＨＭＤは、（例えば、図１０の方法１０００で実行されるように）ユーザの眼から反射された１つ以上のグリントを検出することによってアイトラッキング特性を判定する。様々な実装形態では、ＨＭＤは、光の強度の低下を示すイベントメッセージに基づくことなく、光の強度の増大を示すイベントメッセージに基づいて、１つ以上のグリントを検出する。様々な実装形態では、ＨＭＤは、光の強度の増大を示すイベントメッセージに基づくことなく、光の強度の低下を示すイベントメッセージに基づいて、１つ以上のグリントを検出する。
【０１０２】
添付の特許請求の範囲内の実装形態の様々な態様を上述したが、上述の実装形態の様々な特徴は、多種多様な形態で具現化されてもよく、上記の特定の構造及び／又は機能は単なる例示に過ぎないことは明らかである。本開示に基づいて、当業者は、本明細書に記載される態様は、任意の他の態様とは独立して実施されてもよく、これらの態様のうちの２つ以上が様々な方法で組み合わされてもよいことを理解すべきである。例えば、本明細書に記載される任意の数の態様を使用して、装置が実装されてもよい、及び／又は方法が実行されてもよい。加えて、本明細書に記載される態様のうちの１つ以上に加えて、又はその他の構造及び／又は機能を使用して、このような装置が実装されてもよい、及び／又はこのような方法が実行されてもよい。
【０１０３】
本明細書では、様々な要素を説明するために「第１の」、「第２の」などの用語が使用される場合があるが、これらの要素は、これらの用語によって限定されるべきではないことも理解されるであろう。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、「第１のノード」の全ての出現について一貫して名前が変更され、「第２のノード」の全ての出現について一貫して名前が変更される限り、第１ノードは第２ノードと呼び、同様に、第２のノードは第１のノードと呼び、説明の意味を変更することができる。第１のノードと第２のノードは両方ともノードであるが、それらは同じノードではない。
【０１０４】
本明細書で使用される用語は、特定の実装形態を説明する目的のためであり、特許請求の範囲を限定することを意図するものではない。実装形態の説明及び添付の請求項で使用されるときに、単数形の「ａ」、「ａｎ」、及び「ｔｈｅ」は、文脈上そうではないことが明確に示されない限り、複数形も含むことが意図されている。また、本明細書で使用されるとき、用語「及び／又は」は、関連する列挙された項目のうちの１つ以上のいずれか及び全ての考えられる組み合わせを指し、かつこれを含むことを理解されたい。用語「ｃｏｍｐｒｉｓｅｓ（含む）」及び／又は「ｃｏｍｐｒｉｓｉｎｇ（含む）」が、本明細書で使用される場合、述べられた特徴、整数、ステップ、動作、要素、及び／又は構成要素の存在を指定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び／又はそれらのグループの存在又は追加を除外しないことをさらに理解されたい。
【０１０５】
本明細書で使用されるとき、用語「ｉｆ」は、文脈に応じて、「時」又は「際に」又は、先に述べた条件が正しいとの「判定に応じて」又は「判定にしたがって」、「検出に応じて」を意味するものと解釈できる。同様に、「［先に述べた条件が正しい］と判定される場合」又は「［先に述べた条件が正しい］場合」、又は「［先に述べた条件が正しい］時」というフレーズは、先に述べた条件が正しいとの「判定に際して」又は「判定に応じて」又は「判定にしたがって」又は「検出した際に」又は「検出に応じて」ということを意味するものと解釈できる。
【図１】
2020536309.tif 000003
【図２】
2020536309.tif 000004
【図３】
2020536309.tif 000005
【図４】
2020536309.tif 000006
【図５Ａ】
2020536309.tif 000007
【図５Ｂ】
2020536309.tif 000008
【図６Ａ】
2020536309.tif 000009
【図６Ｂ】
2020536309.tif 000010
【図６Ｃ】
2020536309.tif 000011
【図６Ｄ】
2020536309.tif 000012
【図７】
2020536309.tif 000013
【図８】
2020536309.tif 000014
【図９Ａ】
2020536309.tif 000015
【図９Ｂ】
2020536309.tif 000016
【図９Ｃ】
2020536309.tif 000017
【図１０】
2020536309.tif 000018
【図１１】
2020536309.tif 000019
【手続補正書】
【提出日】令和2年3月27日(2020.3.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の光源からユーザの眼に向けて強度を変調した光を放射することと、
複数のグリントの形態で前記ユーザの前記眼によって反射された前記放射光の強度を示す光強度データを受信することと、
前記強度の前記変調の周波数範囲にしたがって前記光強度データをフィルタリングすることと、
前記フィルタリングされた光強度データに基づいて、前記ユーザのアイトラッキング特性を判定することと、
を含む、方法。
【請求項２】
前記複数の光源のうちの第１の光源が、前記周波数範囲において第１の位相オフセットで第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記周波数範囲において前記第１の位相オフセットとは異なる第２の位相オフセットで前記第１の周波数で変調される、請求項１に記載の方法。
【請求項３】
前記複数の光源のうちの第１の光源が、前記周波数範囲において第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記周波数範囲において前記第１の周波数とは異なる第２の周波数で変調される、請求項１に記載の方法。
【請求項４】
前記複数の光源のそれぞれの光源が、高強度値と低強度値のいずれかに変調される、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記高強度値がオン状態であり、前記低強度値がオフ状態である、請求項４に記載の方法。
【請求項６】
前記複数の光源のうち前記オン状態の光源数が一定である、請求項５に記載の方法。
【請求項７】
前記強度が、予め決定されたアイトラッキング特性、ユーザバイオメトリクス、又は提示されたユーザインタフェースのうちの少なくとも１つにしたがって変調される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記複数の光源が、近赤外波長範囲内で光を放射する、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記光強度データが、前記ユーザの前記眼の複数の画像を含む、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記光強度データが複数のイベントメッセージを含む、請求項１から８のいずれか一項に記載の方法。
【請求項１１】
前記光強度データの変調に基づいてそれぞれの光源を識別することをさらに含み、前記ユーザの前記アイトラッキング特性を判定することが、前記それぞれの光源の前記識別に基づいている、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
前記強度の前記変調の前記周波数範囲にしたがって前記光強度データをフィルタリングすることは、強度の前記変調の前記周波数範囲の外側の光強度データをフィルタアウトして、標的周波数光強度データを生成することを含み、前記アイトラッキング特性を判定することは、前記標的周波数光強度データに基づいて前記複数のグリントの位置を判定することを含む、請求項１から１１のいずれか一項に記載の方法。
【請求項１３】
前記強度の前記変調の前記周波数範囲にしたがって前記光強度データをフィルタリングすることは、強度の前記変調の前記周波数範囲の内側の光強度データをフィルタアウトして、標的外周波数光強度データを生成することを含み、前記アイトラッキング特性を判定することは、前記標的外周波数光強度データに基づいて前記ユーザの瞳孔の位置を判定することを含む、請求項１から１２のいずれか一項に記載の方法。
【請求項１４】
前記アイトラッキング特性が、視線方向及び／又は瞬き状態を含む、請求項１から１３のいずれか一項に記載の方法。
【請求項１５】
ユーザの眼に向かって強度を変調した光を放射する複数の光源と、
複数のグリントの形態で前記ユーザの前記眼によって反射された前記放射光の強度を示す光強度データを生成するカメラと、
前記強度の前記変調の周波数範囲にしたがって前記光強度データをフィルタリングし、前記フィルタリングされた光強度データに基づいて前記ユーザのアイトラッキング特性を判定するプロセッサと、を備えるシステム。
【請求項１６】
前記複数の光源のうちの第１の光源が、前記周波数範囲において第１の位相オフセットで第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記周波数範囲において前記第１の位相オフセットとは異なる第２の位相オフセットで前記第１の周波数で変調される、請求項１５に記載のシステム。
【請求項１７】
前記複数の光源のうちの第１の光源が、前記周波数範囲において第１の周波数で変調され、前記複数の光源のうちの第２の光源が、前記周波数範囲において前記第１の周波数とは異なる第２の周波数で変調される、請求項１５に記載のシステム。
【請求項１８】
前記プロセッサが、強度の前記変調の前記周波数範囲の外側の光強度データをフィルタアウトして、標的周波数光強度データを生成することによって、前記強度の前記変調の前記周波数範囲にしたがって前記光強度データをフィルタリングし、前記プロセッサが、前記標的周波数光強度データに基づいて前記ユーザのグリントの位置を判定することによって、前記アイトラッキング特性を判定する、請求項１５から１７のいずれか一項に記載の方法。
【請求項１９】
前記プロセッサが、強度の前記変調の前記周波数範囲の内側の光強度データをフィルタアウトして、標的外周波数光強度データを生成することによって、前記強度の前記変調の前記周波数範囲にしたがって前記光強度データをフィルタリングし、前記プロセッサが、前記標的外周波数光強度データに基づいて前記ユーザの瞳孔場所の位置を判定することによって、前記アイトラッキング特性を判定する、請求項１５から１８のいずれか一項に記載の方法。
【請求項２０】
コード化された命令を有する、非一時的コンピュータ可読媒体であって、前記命令が、プロセッサによって実行されると、前記プロセッサに、
複数の光源からユーザの眼に向けて強度を変調した光を放射することと、
複数のグリントの形態で前記ユーザの前記眼によって反射された前記放射光の強度を示す光強度データを受信することと、
前記強度の前記変調の周波数範囲にしたがって前記光強度データをフィルタリングすることと、
前記フィルタリングされた光強度データに基づいて、前記ユーザのアイトラッキング特性を判定することと、
を含む動作を実行させる、非一時的コンピュータ可読媒体。
【国際調査報告】
2020536309.tif 000020
2020536309.tif 000021