(57)【特許請求の範囲】
【請求項１】
眼を照明するように構成されたエミッタを含む照明システムと、
前記眼の１つまたは複数の画像を取得するように構成されたカメラと、
前記カメラおよび前記照明システムに動作可能に結合されたプロセッサおよび関連付けられたコンピューターメモリであって、前記コンピューターメモリは、前記プロセッサによって、
前記カメラから、第１のパワーレベルでの前記エミッタによる前記眼の照明下で前記眼の第１の画像を取得するように実行可能な命令と、
前記カメラから、前記エミッタによる前記眼の照明下で取得された前記眼の第２の画像を得るように実行可能な命令であって、前記エミッタは、第２の異なるパワーレベルで動作する、命令と、
前記第１の画像および前記第２の画像の対応するピクセルの明度を比較して、前記眼による前記照明の反射を、アイウェアによる前記照明の反射と区別するように実行可能な命令であって、前記眼からの不飽和の再帰性反射明瞳孔反応を明らかにするように、前記カメラによって取得された３つ以上の前記眼の画像のうちの前記第１の画像および第２の画像を、前記エミッタの互いに異なるパワーレベルで選択することを含む、命令と、
前記眼による前記照明の前記反射に基づいて、かつ前記アイウェアによる前記照明の前記反射から独立して、入力をコンピューターシステムに供給するように実行可能な命令と、
を保持する、コンピューターメモリと、
を備える、システム。
【請求項２】
前記眼の前記第１の画像および前記眼の前記第２の画像のうちの１つまたは複数を、複数の露出において捕捉するように実行可能な命令を更に含む、請求項１に記載のシステム。
【請求項３】
前記命令は、前記カメラから前記眼の前記第１の画像および前記眼の前記第２の画像を読み出す前に、前記眼の前記第１の画像および前記眼の前記第２の画像を連続して取得するように実行可能である、請求項１に記載のシステム。
【請求項４】
前記照明システムは、３０ミリ秒以下で、前記エミッタの前記第１のパワーレベルを提供することから、前記エミッタの前記第２のパワーレベルを提供することへ遷移するように構成される、請求項１に記載のシステム。
【請求項５】
視覚システムに動作可能に結合されたコンピューターシステムにおいて実施される、視線方向を表す入力を供給する方法であって、
前記視覚システムのカメラから、第１のパワーレベルで動作するエミッタによる眼の照明下で取得された前記眼の第１の画像を得ることと、
前記視覚システムの前記カメラから、前記エミッタによる前記眼の照明下で取得された前記眼の第２の画像を得ることであって、前記エミッタは、第２の異なるパワーレベルで動作する、ことと、
前記第１の画像および前記第２の画像の対応するピクセルの明度を比較して、前記眼による前記照明の反射を、アイウェアによる前記照明の反射と区別することであって、前記眼からの不飽和の再帰性反射明瞳孔反応を明らかにするように、前記カメラによって取得された３つ以上の前記眼の画像のうちの前記第１の画像および第２の画像を、前記エミッタの互いに異なるパワーレベルで選択することを含む、ことと、
前記眼による前記照明の前記反射に基づいて、前記入力を供給することと、
を含む、方法。
【請求項６】
前記眼による前記照明の前記反射は、前記眼の網膜からの反射を含み、前記反射は前記眼の瞳孔を通過して戻り、前記第１の画像において、前記瞳孔が周囲の虹彩に対して明るく見えるようにする、請求項５に記載の方法。
【請求項７】
前記眼による前記反射は、前記眼の虹彩による反射を含み、前記第１の画像において、前記眼の瞳孔が前記虹彩に対して暗く見えるようにする、請求項５に記載の方法。
【請求項８】
前記第１の画像において、前記アイウェアによる前記照明の前記反射に関連付けられたピクセルを除外しながら、前記眼の前記照明の前記反射のロケーションに基づいて前記入力を計算することを更に含む、請求項５に記載の方法。
【請求項９】
前記第１の画像を得ることと前記第２の画像を得ることとの間での前記眼の動きを補償するための運動モデルに基づいて前記入力を補正することを更に含む、請求項８に記載の方法。
【請求項１０】
前記眼の前記第２の画像を得ることは、前記第１の画像の各非飽和ピクセルの明るさを乗算係数と乗算して前記第２の画像の対応するピクセルを得ることを含む、請求項５に記載の方法。
【請求項１１】
前記供給された入力は、前記眼の視線方向を定義する方位角および仰角を含む、請求項５に記載の方法。
【請求項１２】
前記第１の画像および前記第２の画像の前記対応するピクセルを、そのようなピクセルの前記明度が閾値量を超えて異なる場合に、前記眼による前記照明の前記反射と関連付けることと、
前記第１の画像および前記第２の画像の前記対応するピクセルを、そのようなピクセルの前記明度が閾値未満で異なる場合に、前記アイウェアによる前記照明の前記反射と関連付けることと、
を更に含む、請求項５に記載の方法。
【請求項１３】
前記第１の画像および前記第２の画像の前記対応するピクセルを、前記第１および第２の画像の対応するピクセルが双方飽和している場合に、前記アイウェアによる前記照明の前記反射と関連付けることを更に含む、請求項５に記載の方法。
【請求項１４】
前記第１のパワーレベルは、前記眼から明瞳孔反応を刺激して区別する機能に基づいて選択される、請求項５に記載の方法。
【請求項１５】
前記第１のパワーレベルは、周囲光条件に基づいて選択される、請求項５に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  最近のハードウェアおよびソフトウェアの進歩は、コンピューターシステムのための新たな方式の自然なユーザー入力（NUI）を可能にした。ジェスチャー認識、音声認識、および視線追跡は、例示的なＮＵＩモードであり、ユーザーが、様々な目的で、様々な環境において、コンピューターシステムと直観的にインタラクトすることを可能にする。
【発明の概要】
【０００２】
[0002]  視線追跡システムにおいて、眼からの反射と、アイウェアからの反射とを区別することに関する実施形態が開示される。１つの開示される実施形態は、視覚システムに動作可能に結合されたコンピューターシステムにおける視線方向を表す入力を供給する方法を提供する。この実施形態では、第１のレベルの照明における眼の第１の画像が、視覚システムのカメラによって取得される。第１の画像はカメラから得られ、第２の異なるレベルの照明に対応する眼の第２の画像も得られる。第１の画像および第２の画像の対応するピクセルの明るさは、眼による照明の反射を、アイウェアによる照明の反射と区別するために比較される。次に、眼による照明の反射に基づいて入力が供給される。
【０００３】
[0003]  この発明の概要は、詳細な説明において以下で更に説明される概念の抜粋を単純化された形態で紹介するように提供される。この発明の概要は、特許請求される主題の主要な特徴または重要な特徴を特定するように意図されたものでもなければ、特許請求される主題の範囲を限定するように用いられることを意図されたものでもない。更に、特許請求される主題は、本開示の任意の部分におけるありとあらゆる不利な点を解決する実装形態に限定されない。
【図面の簡単な説明】
【０００４】
【図１】[0004]ユーザーの視線が追跡され、コンピューターシステムにおける入力として用いられる例示的な環境の態様を示す。
【図２】[0005]視覚システムに連動したＮＵＩシステムを有する例示的なコンピューターシステムの態様を示す。
【図３】[0006]視線検出のために構成された例示的な視覚システムの態様を示す。
【図４Ａ】[0007]高レベルの照明において得られるユーザーの眼の例示的な画像を示す。
【図４Ｂ】[0008]低レベルの照明において得られるユーザーの眼の例示的な画像を示す。
【図４Ｃ】[0009]図４Ａの画像から、ユーザーのアイウェアからの反射を除いた例示的な結果を示す。
【図５】[0010]ユーザーの視線が追跡され、コンピューターシステムにおける入力として用いられる更なる例示的な環境の態様を示す。
【図６】[0011]視線検出のために構成される別の例示的な視覚システムの態様を示す。
【図７】[0012]コンピューターシステムにおける視線方向に応答して入力を供給する例示的な方法を示す。
【発明を実施するための形態】
【０００５】
[0013]  視線追跡は、ユーザーの視線の方向に基づくＮＵＩの一形態である。この手法において、ユーザーの眼の画像はカメラによって取得される。取得された画像において、瞳孔または角膜輪部等の眼の特徴が位置特定され、そのような特徴のロケーションに基づいて視線方向が計算される。このように計算された視線方向を用いて、グラフィカルユーザーインターフェースをナビゲートし、プログラムを起動し、選択を行い、ゲーム内でキャラクターを移動させること等を行うことができる。所望の眼の特徴は、裸眼の画像において特定することができるが、アイウェアからの迷光反射が干渉源となる場合がある。そのような干渉は、アイウェアを装着したユーザーの視線追跡入力精度を低減させる場合がある。本明細書において用いられるとき、「アイウェア」という用語は、眼と、眼の視野の少なくとも一部分との間にシースルー構造を配置する、任意のタイプの装着される機器を含む。例は、限定ではないが、眼鏡、サングラス、バイザー、マスク、ゴーグル、コンタクトレンズシステム、および他の眼に装着するデバイス、装着者の視野内に仮想のイメージを投影する、眼の付近の表示システム等を含む。
【０００６】
[0014]  本明細書において、裸眼からの光の反射と、アイウェアからの光の反射とを区別するのに役立つことができ、このため、眼の追跡を容易にすることができる例が開示される。図１は、ユーザーの視線が追跡され、コンピューターシステムにおける入力として用いられる例示的な環境１０の態様を示す。示される環境は、個人の住宅のリビングルームまたはファミリールームである。一方、本明細書において開示されるシステムおよび方法は、職場、小売りおよびサービス環境等の他の環境に等しく適用可能である。環境１０は、ユーザー１４が享受するためのホームエンターテイメントシステム１２を備えている。ホームエンターテイメントシステムは、大きなフォーマットのディスプレイ１６およびラウドスピーカー１８を含み、これらは共に、コンピューターシステム２０に連動される。コンピューターシステム２０の特性は、様々な実施態様において異なる場合がある。いくつかの例において、コンピューターシステムは、ビデオゲームシステム、または音楽および／またはビデオを再生するように構成されたビデオゲームシステムまたはマルチメディアシステムとすることができる。他の例において、コンピューターシステムは、インターネットアクセスおよび生産性用途のための汎用コンピューターシステムとすることができる。コンピューターシステム２０は、本開示の範囲から逸脱することなく、上記の目的のうちの任意のものまたはすべてのために、および／または任意の他の適切な目的で構成することができる。
【０００７】
[0015]  コンピューターシステム２０は、１つまたは複数のユーザー１４から様々な形態の入力を受け取るように構成することができる。したがって、キーボード、マウス、タッチスクリーン、ゲームパッドまたはジョイスティックコントローラー等のユーザー入力デバイスを、コンピューターシステム２０に連動させることができる。コンピューターシステム２０は、１つまたは複数のユーザーから自然なユーザー入力（NUI）を受け取るように構成することもできる。ＮＵＩを仲介するために、示されるコンピューターシステムはＮＵＩシステム２２を含む。ＮＵＩシステムは、ＮＵＩの様々な態様を捕捉し、対応する実行可能な入力をコンピューターシステム内の他の構造体に提供するように構成される。このために、ＮＵＩシステムは、視覚システム２４および任意選択のリスニングシステム２６を含む、コンピューターシステムの様々なセンサーコンポーネントから低レベルの入力を受信する。
【０００８】
[0016]  リスニングシステム２６は、含まれる場合、ユーザー１４からの発声および他の可聴入力をピックアップするための１つまたは複数のマイクロフォンを含むことができる。視覚システム２４は、視線ベクトルＶおよび焦点Ｐ等の様々な形態のユーザー入力、ならびに手および身体のジェスチャー、顔面特徴等を検出するように構成することができる。示される例では、視覚システムおよびリスニングシステムは、共通のエンクロージャーを共有し、他の例では、それらは別個とすることができる。更に他の例では、視覚システム、リスニングシステムおよびＮＵＩシステムは、コンピューターシステム２０内に統合することができる。コンピューターシステムおよびその周辺コンポーネントは、図面に示すように、有線通信リンクを介して、または任意の他の適切な方式で結合することができる。
【０００９】
[0017]  図２は、コンピューターシステム２０、ＮＵＩシステム２２、視覚システム２４およびリスニングシステム２６の一例の態様を示す高レベルの概略図である。示されるコンピューターシステムは、ソフトウェアおよび／またはファームウェアにインスタンス化することができるオペレーティングシステム（OS）２８を含む。コンピューターシステムは、例えば、ビデオゲームアプリケーション、デジタルメディアプレーヤー、インターネットブラウザー、フォトエディター、ワードプロセッサ、および／またはスプレッドシートアプリケーション等の１つまたは複数のアプリケーション３０も含む。コンピューターシステム２０、ＮＵＩシステム２２、視覚システム２４、およびリスニングシステム２６は、以下で更に説明されるように、それぞれの機能をサポートするのに必要とされる適切なデータストレージ、命令ストレージ、および論理ハードウェアを含むことができる。
【００１０】
[0018]  図２の例において、視覚システム２４は、１つまたは複数のフラットイメージカメラ３２を含み、１つまたは複数の深度カメラ３４も含むことができる。各深度カメラは、含まれる場合、ユーザー１４の深度マップの時間分解シーケンスおよび環境１０の他の態様を取得するように構成することができる。視覚システムは、軸上のランプ３６Ａおよび軸外のランプ３６Ｂも含み、これらはユーザー１４および環境１０を照明して、フラットイメージカメラおよび／または深度カメラによる撮像をサポートする。視覚システムの各ランプおよびカメラは、マイクロコントローラー３８に連動される。マイクロコントローラーは、カメラによる画像取得を制御およびトリガーし、視覚システムの各ランプの照明出力を制御するように構成することができる。
【００１１】
[0019]  フラットイメージカメラ３２は、フィールド角度の範囲にわたって光を検出し、そのような角度を長方形のピクセルアレイ上にマッピングする。１つの例において、フラットイメージカメラは、アレイのピクセルのサブセットに関連付けられた、複数の波長のチャネル、例えば、赤、緑、青等の光を検出することができる。代替的に、モノクロのフラットイメージカメラを用いて、可視光、近赤外光（NIR）、赤外光（IR）および／または紫外光（UV）をグレースケールで撮像することができる。フラットイメージカメラにおいて露出されるピクセルのすべての色値または輝度値が、集合的にデジタルイメージを構成する。いくつかの例において、フラットイメージカメラのピクセルを、深度カメラのピクセルに登録することができる。
【００１２】
[0020]  上述したように、ＮＵＩシステム２２は、仮想システム２４および任意選択のリスニングシステム２６から低レベルの入力（すなわち、信号）を処理して、コンピューターシステム２０において動作可能な高レベルの入力を提供する。例えば、ＮＵＩシステムは、リスニングシステム２６からの音声信号に対しサウンド認識または音声認識を行うことができる。音声認識は、コンピューターシステムのＯＳ２８において受信される、対応するテキストベースのまたは他の高レベルのコマンドを生成することができる。図２に示される例において、センサーデータから特定の形態のＮＵＩを導き出すタスクが特定のＮＵＩエンジン、発話認識エンジン４０、ジェスチャー認識エンジン４２、顔認識エンジン４４および視線検出エンジン４６に割り当てられる。これらのエンジンの各々を、その関連付けられた形態の入力をコンピューターシステムのＯＳおよび／またはアプリケーションに供給するように構成することができる。
【００１３】
[0021]  ここで、図３を参照すると、視覚システム２４の各ランプ３６は、発光ダイオード（LED）、ダイオードレーザー、放電ランプ、および／または他の適切な光源を含むことができる。環境１０において、ランプ３６Ａは、眼４８の軸上の照明を提供し、ランプ３６Ｂは軸外の照明を提供する。「軸上」および「軸外」という用語は、フラットイメージカメラ３２の光軸Ａに対する照明の方向を指す。
【００１４】
[0022]  軸上および軸外の照明は、環境１０内の環境追跡に対して異なる目的を果たすことができる。図３に示されるように、軸外照明は、ユーザーの眼の角膜５２から反射する鏡面反射光（specular glint）５０を生成することができる。軸外照明は、「暗瞳孔」の効果のために眼を照明するように用いることもできる。ここで、瞳孔５４は、周囲の虹彩５６よりも暗く見える。対照的に、ＩＲまたはＮＩＲ源からの軸上照明を用いて、「明瞳孔」効果を生成することができ、ここで、瞳孔は周囲の虹彩よりも明るく見える。より詳細には、軸上ランプ３６ＡからのＩＲまたはＮＩＲ照明は、眼の網膜５８の再帰性反射組織を照明することができ、これは瞳孔を通じて照明を反射して戻し、フラットイメージカメラ３２によって撮像されるように、瞳孔の明るい画像６０を形成する。いくつかの例では、フラットイメージカメラは、強い周囲光の存在における明瞳孔のコントラストを改善するために、軸上ランプ３６ＡのＩＲ帯域またはＮＩＲ帯域の外側の伝送をブロックする波長フィルターを含むことができる。図３は、概略的に点光源として軸上ランプおよび軸外ランプを示しているが、これらのランプは任意の適切な形態をとることができることが理解されよう。例えば、いくつかの例では、軸上ランプ３６Ａは、フラットイメージカメラ３２の開口を取り囲む「ＬＥＤリング」の形態で構成することができる。換言すれば、軸上ランプは、フラットイメージカメラの光軸を取り囲む複数のＬＥＤを含むことができる。
【００１５】
[0023]  視線検出エンジン４６は、フラットイメージカメラからの画像データを処理して、瞳孔中心、瞳孔の輪郭、および／または角膜反射光等の特徴を位置特定するように構成することができる。画像データ内のそのような特徴のロケーションを、眼の視線ベクトルＶに特徴位置を関係付けるモデル、例えば多項式モデルにおける入力パラメーターとして用いることができる。眼が右眼および左眼の双方について同時に検出される例では、右視線ベクトルおよび左視線ベクトルの交点により、３次元におけるユーザーの焦点Ｐを定義することができる。
【００１６】
[0024]  図１に簡単に戻ると、図は、ユーザー１４が視線方向に基づいてディスプレイ１６上に提示されるＵＩをナビゲートしているシナリオを示す。このシナリオでは、視線検出エンジン４６は、ユーザーが注視している点Ｐに対応する表示スクリーン座標（X，Y）を計算した。視線を表示スクリーン上の他の点にシフトすることによって、ユーザーは、コンピューターシステム２０上で実行しているアプリケーションまたはＯＳの様々なＵＩエレメント６２間でナビゲートすることができる。
【００１７】
[0025]  上記で紹介した視線検出手法は、ユーザー１４が、サングラス、矯正レンズ、遠近両用レンズ、サングラス、バイザー、コンタクトレンズ、眼の付近の表示システムおよび／または他のアイウェア等のアイウェアを装着している場合がある事例における精度を改善するように更に精緻化することができる。眼の近くに位置するとき、そのようなアイウェアは、視覚システム２４のランプ３６Ａおよび３６Ｂからの照明を反射する場合がある。そのような反射は、視覚システムによって取得される画像データにおけるノイズを生成する。増大するノイズにより、視線検出エンジン４６が、瞳孔および／または角膜の反射光を明確に位置特定することが困難になる場合があり、これによって、決定された視線方向における誤差が増大する場合がある。より詳細には、アイウェアからの反射は、軸上照明により生成された明瞳孔画像に類似して見える場合があり、それによって、視線検出エンジンは、これらを明瞳孔と誤る。この影響が図４Ａに示されている。図４Ａにおいて、明瞳孔５４は、アイウェアによる多数の反射と共に現れる。同様の影響は、軸外ランプ３６Ｂからのより高い角度の照明が眼鏡によって反射され、角膜反射光と誤られるときに生じ得る。通常、ユーザーの眼鏡からの反射の直径が比較的小さくかつ明るいとき、それらは、視線検出エンジンに対する角膜の反射光と同様に見える場合がある。
【００１８】
[0026]  眼鏡の反射から所望の眼の反射を明確にする１つの手法は、取得された画像の後処理によって、眼鏡の反射を除去することである。妥当な識別判断基準は、候補反射の輝度、サイズ、幾何学形状（形状）を含む。一方、任意の後処理手法は、画像品質および他のノイズ問題に対し敏感である場合があり、過大な計算時間を必要とする場合がある。更に、ノイズ反射の幾何学的識別に基づくノイズ除去は、予期される使用シナリオ、例えば、様々なレンズ曲率、フレーム形状等を含み得る、ユーザーによって装着される様々なスタイルのアイウェア間で一般化するのに失敗する場合がある。
【００１９】
[0027]  このため、開示される例は、様々な照明レベル（すなわち、輝度、パワー）において得られるユーザーの眼の一連の画像を利用することによって、アイウェアの反射から所望の眼の反射を明確にすることができる。このために、以下で更に説明されるように、比較的短い時間間隔にわたって、視覚システム２４のうちの１つ、いくつか、またはすべてのランプ３６を、第１のレベルの照明を提供することから、第２の異なるレベルの照明を提供することまで遷移するように構成することができる。
【００２０】
[0028]  １つの例において、視覚システム２４のマイクロコントローラー３８は、パルス幅変調（PWM）を介して軸上ランプ３６Ａおよび／または軸外ランプ３６Ｂをストローブするように構成することができる。各フレームに異なるＰＷＭ値を割り当てることによって、様々な輝度レベルにおいて２つ以上の画像フレームが取得される。他の例において、マイクロコントローラーは、ランプに提供される電圧もしくは電流を変更するか、電力を受信するランプ要素（例えば、LED）の数を変更するか、または、光電気減衰器を変調して照明レベルを変更する。いくつかの例において、複数の明るさレベル（高＋低、高＋中＋低等）における眼の画像が、非常に短い間隔、例えば、６０ミリ秒（ms）以下、または３０ｍｓ以下の非常に短い間隔にわたって捕捉される。この間隔は、例えば、第１の画像および最後の画像を取得する間の眼の可能な動きによって生じる運動のぼやけの範囲を制限するように選択することができる。この間隔中、瞳孔および反射光等の、対象の眼の特徴からの反射は、照明の減少に起因して輝度に比例して減少する場合がある。一方、ユーザーの眼鏡からの鏡面反射または近鏡面反射は、低または中の明るさレベルであっても、フラットイメージカメラ３２の受信ピクセルを飽和させる場合がある。したがって、明るさにおける比例的減少は、高から中または低の明るさへの遷移時の眼鏡反射について観察されない場合がある。比例して暗くならないピクセルは、後続の視線追跡計算に対する影響を制限するために、任意の適した方式で検討から除くことができる。
【００２１】
[0029]  図４Ａおよび図４Ｂの横並びの比較は、上記の手法を更に示す。図４Ａは、高の明るさにおいて取得された画像を示し、図４Ｂは、低の明るさにおいて取得された画像を示す。ユーザーの明るい瞳孔５４からの反射は、図４Ａにおける反射よりも図４Ｂにおいて弱いが、ユーザーの眼鏡からの反射は同程度に強いことを見て取ることができる。
【００２２】
[0030]  視線検出エンジン４６は、いくつかの例において、６０ｍｓ以下等の適切に短い間隔にわたって捕捉された、異なる明るさレベルの２つ以上の画像のバッファを管理するように構成することができる。視線検出エンジンは、ピクセルごとに測定して、第１の（より明るい）画像および第２の（より暗い）画像の明るさをチェックする。画像が、同様の飽和した明るさを有し、例えば、閾値量未満で異なるか、または双方の画像において飽和したままである場合、ピクセルは、いくつかの例において、（それぞれ、図４Ａおよび図４Ｂの）画像全体にわたって明るさの平均値と交換することができる一方、残りのすべてのピクセル（眼鏡の反射によって影響を受けないピクセル）は、それらのオリジナルの値を保持することができる。他の例では、ピクセルは交換されない場合があるが、別の方式で追跡または補償することができる。
【００２３】
[0031]  図４Ａにおける画像がより明るいため、瞳孔は、虹彩に対しより良好なコントラストを有し、より容易に検出可能であることに留意されたい。対照的に、図４Ｂはより暗く、反射光は、瞳孔に対してより良好なコントラストを有し、より容易に検出可能である。眼鏡の反射を補償した後の図４Ａおよび図４Ｂの結果として処理された画像が、それぞれ、瞳孔検出および反射光検出のための入力として用いられる。図４Ｃは、図４Ａおよび図４Ｂの高および低の輝度にこの手順が適用された結果を示す。ここで、白い円は、瞳孔５４の検出された輪郭を示す。
【００２４】
[0032]  上記の図面および説明は、限定の意味で解釈されるべきではなく、多数の他の例および使用シナリオも考慮される。特に、図１のものに加えて、他の環境および形状因子が、本開示の趣旨および範囲内にある。例えば、図５に示すように、ディスプレイのベゼルの下に適切な視覚システム２４Ａが搭載された状態で、類似の視線追跡を、スマートフォン６６またはデスクトップコンピューター６８において成立させることができる。他の例において、統合された視覚システムを有するタブレットまたはラップトップコンピューターにおいて、類似の視線追跡を成立させることができる。
【００２５】
[0033]  更に他の例において、視覚システムは、ユーザーによって装着されているアクティブなヘッドウェアまたはアイウェアに統合されてもよい（ユーザーは、従来の眼鏡も装着している場合がある）。そのようなヘッドウェアまたはアイウェアは、眼の付近の立体表示システムを更にサポートすることができる。図６は、統合された視線追跡を有する、眼の付近の表示システムの光学システム７０を示す。この例において、ユーザーは、追加の補正レンズ７１を装着している。フラットイメージカメラ３２は、装着者の眼から反射された軸上ＩＲまたはＮＩＲランプ３６Ａからの光を撮像する。軸外ランプ３６Ｂは、眼の相対的に高い角度の照明を提供し、眼の角膜上の鏡面反射光の生成、暗瞳孔効果の刺激等を行う。光学システム７０に統合されるビーム転向光学は、光学システムの周辺部におけるそれらの配置にかかわらず、カメラおよび軸上ランプが共通の光軸Ａを共有することを可能にする。
【００２６】
[0034]  本明細書に説明される手法は、アイウェアからの反射以外のタイプの鏡面反射に拡張することができる。通常、仮想的に、ユーザーと視覚システムとの間に配置される任意の表面が、本明細書において説明される方式で区別可能な明るい鏡面反射を引き起こし得る。例えば、２つ以上の異なる照明レベルにおいて検出される不変の明るさに基づいて、例えば、保護ウィンドウ（ガラス、アクリル、またはポリカーボネートシート、危険物シールド等）からの視覚システム照明の鏡面反射は、眼の反射と区別することができる。
【００２７】
[0035]  上記で説明された構成は、視覚システムに動作可能に結合されたコンピューターシステムにおいて視線検出が行使されるための様々な方法を可能にする。次に、そのようないくつかの方法を、上記で説明した例示した構成を継続的に参照して説明する。一方、ここで説明される方法、および本開示の範囲内の他の方法も、異なる構成によって可能にされ得ることが理解されよう。
【００２８】
[0036]  図７は、視覚システムに動作可能に結合されたコンピューターシステムにおける視線方向に応答して入力を供給するための例示的な方法７４を示す。方法７４の７６において、例えば、上記で説明した方法のうちの１つまたは複数を用いて、眼の第１の画像を取得する前に、視覚システムの軸上ランプの出力が、第１のレベルの照明をユーザーの眼に提供するように調整される。１つの例において、第１のレベルの照明は、比較的高レベルの照明とすることができる。
【００２９】
[0037]  ７８において、眼の第１の画像が視覚システムのカメラから得られる。第１の画像は、第１のレベルの照明が眼に提供される間隔中にカメラによって取得される。８０において、第２の異なるレベルの照明に対応する眼の第２の画像が得られる。第２のレベルの照明は、第１のレベルの照明よりも低くするかまたは高くすることができ、第２の画像は、様々な例において様々な方法で得ることができる。
【００３０】
[0038]  １つの例において、軸上ランプの出力を、カメラによる第２の画像の取得のための第２のレベルの照明を提供するように再び調整することができる。次に、第２の画像がカメラから得られる。別の例において、第１の画像の各非飽和ピクセルの明るさを乗算係数と乗算して、第２の画像の対応するピクセルを得ることによって、眼の第２の画像が得られる。
【００３１】
[0039]  乗算係数は、より明るい第２の全体画像を構築するように２よりも大きくしてもよいし、またはより暗い第２の全体画像を構築するように１未満としてもよい。１つの変形形態では、第２の画像の乗算された明るさ値を、カメラによって用いられる画像符号化のタイプに有効な最大の明るさにクリップすることができる。更に、第１の画像において既に飽和したピクセルは、異なる係数（例えば、係数１）と乗算してもよいし、または他の形でマスキングしてもよい。このようにして、（ユーザーの眼鏡からの鏡面反射に対応し得る）飽和したピクセルは、視線方向を求めるための後続の計算から除外される。
【００３２】
[0040]  第１の画像および第２の画像は、異なる飽和していない明るさレベルにおける眼の反射（例えば、明瞳孔）を明らかにするように構成することができる。この特徴は、眼鏡反射から（およびいくつかのシナリオでは、通常、比較的低いレベルの照明においても飽和したままである軸外照明に起因した角膜の反射光から）眼の特徴を区別するために用いられる。一方、未知の使用シナリオの前に、適切な第１のレベルおよび第２のレベルの照明を予測することは常に可能であるわけではない。例えば、異なるタイプのアイウェアは異なる反射率の反射を呈する。更に、異なる個人の眼は、明瞳孔反応をもたらすために、異なるレベルの軸上照明を必要とする場合がある。図７における８２に示されるように、すべてのユーザーについて２つの同じ照明レベルを適用する代わりに、視線検出エンジン４６を、異なる照明レベルにおいて取得された一連の３つ以上の画像を解析するように、次に、第１のレベルおよび第２のレベルの照明を精緻化するために、適切な第１の画像および第２の画像を選択するように構成することができる。選択される画像は、例えば、飽和した眼鏡反射、および強力であるが飽和していない（例えば、例として、３０％を超える飽和強度、５０％を超える飽和強度）明瞳孔反射を呈する画像とすることができる。このようにして、方法７４における第１のレベルおよび第２のレベルの照明は、撮像される眼における明瞳孔効果を誘起して区別する機能に基づいて選択することができ、そのようなレベルは、異なるユーザーの眼毎に異なる。
【００３３】
[0041]  ３つ以上の取得された画像にわたってある範囲の照明レベルを提供する別の理由は、システムが軸上ランプの波長帯域における周囲光のレベルの変化に応答することを可能にすることであり得る。このようにして、第１のレベルおよび第２のレベルの照明を、周囲光条件に基づいて選択することができる。ある範囲の照明レベルを提供することは、明瞳孔反応を、軸外照明から導出された角膜の反射光と区別するのに役立つこともできる。２つ、３つ、４つ等の、眼の任意の適切な数の得られた画像および対応する照明レベルを得ることができる。この数は、利用されるフレームレート等の係数に依拠することができる。換言すれば、より高速な画像取得は、眼の動きに起因する運動のぼやけの負の影響を受けることなく、より多くの数の画像が取得されることを可能にすることができる。
【００３４】
[0042]  画像／照明レベル選択の代替的なモードを、方法のこの段階において用いることにより、上記で示した課題に対処することもできる。例えば、得られた画像の解析によって適切な照明レベルが明らかになると、この情報を、方法の前の段階にフィードバックして、第１の画像を取得し、第２の画像を得るときに（繰り返しの画像取得によってであっても、または第１の画像の処理によってであっても）、いずれの照明レベルが実際に用いられるかを制御することができる。このタイプのフィードバックを用いて、方法の各通過時に得られる冗長画像の数を低減することができ、これによって視線追跡レイテンシを減少させることができる。２つの画像が得られる場合であっても、得られた画像の解析に基づくフィードバックを用いて、後続の第１の画像および第２の画像のために用いられる高および低レベルの照明を精緻化することができる。
【００３５】
[0043]  図７において継続すると、方法７４の８４において、ユーザーの眼による照明の反射が、ユーザーのアイウェアによる照明の反射と区別される。上記で示したように、眼による照明の所望の反射は、明瞳孔反応、すなわち、ユーザーの眼の網膜からの再帰性反射を構成することができ、この反射は瞳孔を通って戻り、瞳孔が周囲の虹彩に対して明るく見えるようにする。代替的に、かつ等しく重要に、眼による反射は、虹彩自体の反射を含む場合があり、この反射により、瞳孔が虹彩に対して暗く見える。
【００３６】
[0044]  １つの例示的な実施形態において、眼の反射をアイウェアの反射から区別することは、第１の画像および第２の画像の対応するピクセルの明るさを比較することを含むことができる。１つの例において、第１の画像および第２の画像の対応するピクセルは、そのようなピクセルの明るさが閾値量を超えて（例えば、５％を超える、１０％を超える、飽和の１０％を超える、最大明るさの１０％を超える等で）異なる場合、眼による照明の反射に関連付けることができる。逆に、対応するピクセルは、それらの明るさが閾値量未満で（例えば、５％未満、１％未満等で）異なる場合、アイウェアによる照明の反射に関連付けることができる。そのようなピクセルは、後続の計算からマスキングすることができる。別の例において、第１の画像および第２の画像の対応するピクセルは、双方のピクセルが飽和している場合、アイウェアによる反射に関連付けることができる。また別の例では、機械学習アルゴリズムを用いて、眼による照明の反射を、アイウェアによる照明の反射と区別することができる。
【００３７】
[0045]  ８６において、アイウェアによる照明の反射に関連付けられたピクセルを除外しながら、第１の画像または第２の画像において、眼による照明の反射のロケーションに基づいて視線方向入力が計算される。１つの例において、計算された入力は、眼を通じた視線の方向を定義する方位角ＡＡ（図３）および仰角ＥＡを含む。任意の適切な参照フレームを、そのような角度を定義するために用いることができる。１つの例において、参照フレームは、フラットイメージカメラの３４の入力瞳孔に原点を有し、１つの軸が光軸Ａと位置合わせされている。当然ながら、方法７４の上記の動作は、適切に構成された視覚システムにおいて、ユーザーの眼の双方において行使することができる。視線ベクトルが双方の眼に利用可能であるとき、ユーザーの焦点Ｐの座標も決定し、入力として含めることができる。
【００３８】
[0046]  いくつかの例では、ユーザーのアイウェアの軸上または軸外照明は、第１の画像または第２の画像における所望の眼の特徴に重なる反射を生成する。これが生じるとき、アイウェアの反射に関連付けられたピクセルの除外により、眼の特徴、またはその何らかの部分がマスキングされる可能性があり、潜在的に、影響を受けた眼の視線検出の中断が生じる。一方、視線入力の可用性における長い中断であっても、誤った視線入力を送達するよりもユーザー体験に対する妨害を少なくすることができることが理解されよう。これは、視線が眼毎に独立して検出される例において特に真であり得る。
【００３９】
[0047]  任意選択のステップ８８において、計算された視線方向が、動きのぼやけ、すなわち、第１の画像および第２の画像を取得する間の短い時間間隔中の眼の動きを補償する運動モデルに基づいて補正される。運動モデルは、例えば、光フローモデルとすることができる。
【００４０】
[0048]  ９０において、検出された視線方向（および利用可能な場合、決定された焦点）を含む入力が、眼による視覚システム照明の反射に基づいて、コンピューターシステムにおける適切な消費者構造体、例えば、コンピューターシステムのＯＳまたはアプリケーションに供給される。開示される方法の反射識別効果を考慮すると、供給される入力は、ユーザーのアイウェアによる照明の反射と大きく独立することができる。本明細書に記載される例は、様々な異なる方法において実施することができることが理解されよう。例えば、ユーザーの眼の画像は、各画像における非ＨＤＲ技法よりも広い動的範囲の明度を達成するために、ハイダイナミックレンジ（HDR）撮像技法等を利用することによって、複数の露出を介して捕捉することができる。
【００４１】
[0049]  更に、いくつかの実施態様は、所望のフレームレートに影響を及ぼすことを回避するのに役立つ、あるフレーム間隔（例えば、３０ｍｓごと）で２つ以上の連続フレームを取得するように構成された画像検知システムを利用することができる。非限定的な例として、１つまたは複数のレーザーを含む照明システムを照明のために用いることができ、それによって、ある期間（例えば、２ｍｓ）にわたって第１の強度で照明が提供され、その後、別の期間（例えば、別の２ｍｓ）にわたって第２のより高い強度で照明が提供される。この照明プロセス中、第１のフレームを第１の期間に取得することができ、第２のフレームを第２の期間中に取得することができ、それによって、眼の双方の画像が、画像データが読み出される前に取得される。同様にして、任意の追加の連続フレームを取得することができる。照明プロセスの後、取得された２つ以上の画像フレームを、フレーム間隔の残りの持続時間にわたって読み出すことができる。このようにして、任意の適切なハードウェア構成を用いて画像を取得することができる。例えば、システムは、同じダイを共有するように内部的に構築されている場合もされていない場合もある２つの並置されたカメラの形態をとることができる。
【００４２】
[0050]  上記の説明から明らかとなるように、本明細書において説明される方法およびプロセスは、１つまたは複数のコンピューティングマシンのコンピューターシステムに関連することができる。そのような方法およびプロセスは、コンピューターアプリケーションプログラムもしくはサービス、アプリケーションプログラミングインターフェース（API）、ライブラリ、および／または他のコンピュータープログラム製品として実施することができる。読み手は再び図２を参照されたい。図２は、本明細書において記載される方法およびプロセスをサポートするのに用いられるコンピューターシステム２０の非限定的な例を示す。コンピューターシステムは、論理マシン９２および命令ストレージマシン９４を含む。コンピューターシステムは、ディスプレイ１６、通信システム９６、および図に示されていない様々なコンポーネントも含む。
【００４３】
[0051]  各論理マシン９２は、命令を実行するように構成される１つまたは複数の物理的論理デバイスを含む。論理マシンは、１つまたは複数のアプリケーション、サービス、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造または他の論理構造体の一部である命令を実行するように構成することができる。そのような命令は、タスクを実行し、データタイプを実装し、１つまたは複数のコンポーネントの状態を変形し、技術的効果を達成し、または他の形で所望の結果に到達するように実施することができる。
【００４４】
[0052]  各論理マシン９２は、ソフトウェア命令を実行するように構成された１つまたは複数のプロセッサを含むことができる。付加的にまたは代替的に、論理マシンは、ハードウェアまたはファームウェア命令を実行するように構成された１つまたは複数のハードウェアまたはファームウェア論理マシンを含むことができる。論理マシンのプロセッサは、シングルコアまたはマルチコアとすることができ、これらの上で実行される命令は、直列、並列、および／または分散処理のために構成することができる。論理マシンの個々のコンポーネントは、任意選択で、２つ以上の別個のデバイス間で分散させることができ、これらは、遠隔に位置し、および／または協調処理のために構成することができる。論理マシンの態様は、クラウドコンピューティング構成において構成される、リモートでアクセス可能なネットワーク化されたコンピューティングデバイスによって仮想化および実行することができる。
【００４５】
[0053]  各データストレージマシン９４は、本明細書において記載される方法およびプロセスを実施するように関連論理マシン９２によって実行可能な命令を保持するように構成された、１つまたは複数の物理的コンピューターメモリデバイスを含む。そのような方法およびプロセスが実施されるとき、データストレージマシンの状態は、例えば、異なるデータを保持するように変換することができる。データストレージマシンは、リムーバブルおよび／または内蔵デバイスを含むことができ、中でも、光メモリ（例えば、CD、DVD、HD-DVD、ブルーレイディスク等）、半導体メモリ（例えば、RAM、EPROM、EEPROM等）および／または磁気メモリ（例えば、ハードディスクドライブ、フロッピーディスクドライブ、テープドライブ、MRAM等）を含むことができる。データストレージマシンは、揮発性デバイス、不揮発性デバイス、ダイナミックデバイス、スタティックデバイス、リード／ライトデバイス、リードオンリーデバイス、ランダムアクセスデバイス、連続アクセスデバイス、ロケーションアドレス指定可能デバイス、ファイルアドレス指定可能デバイス、および／またはコンテンツアドレス指定可能デバイスを含むことができる。
【００４６】
[0054]  各データストレージマシン９４は、１つまたは複数の物理デバイスを含むことができることが理解されよう。一方、本明細書において記載される命令の態様は、代替的に、ストレージ媒体を介して記憶されるのとは対照的に、通信媒体（例えば、電磁信号、光信号等）によって伝播することができる。
【００４７】
[0055]  論理マシンおよびデータストレージマシンの態様は、共に、１つまたは複数のハードウェア論理コンポーネントに統合することができる。そのようなハードウェア論理コンポーネントは、例えば、フィールドプログラマブルゲートアレイ（FPGA）、特定プログラムおよび特定用途向け集積回路（PASIC/ASIC）、特定プログラムおよび特定用途向け標準製品（PSSP/ASSP）、システムオンチップ（SOC）、および複雑なプログラム可能論理デバイス（CPLD）を含むことができる。
【００４８】
[0056]  「エンジン」という用語は、特定の機能を実行するように実施されるコンピューターシステムの態様を説明するように用いることができる。いくつかの場合、エンジンは、データストレージマシンによって保持される命令を実行する論理マシンを介してインスタンス化することができる。異なるエンジンは、同じアプリケーション、サービス、コードブロック、オブジェクト、ライブラリ、ルーチン、ＡＰＩ、機能等からインスタンス化することができることが理解されよう。同様に、異なるアプリケーション、サービス、コードブロック、オブジェクト、ルーチン、ＡＰＩ、機能等によって同じエンジンをインスタンス化することができる。「エンジン」という用語は、個々の実行可能なファイル、データファイル、ライブラリ、ドライバー、スクリプト、データベースレコード等、またはそれらのグループを包含することができる。
【００４９】
[0057]  通信システム９６は、コンピューターシステムを１つまたは複数の他のマシンに通信可能に結合するように構成することができる。通信システムは、１つまたは複数の異なる通信プロトコルと互換性がある有線および／または無線通信デバイスを含むことができる。非限定的な例として、通信システムは、無線電話網、または有線もしくは無線のローカルエリアネットワークもしくは広域ネットワークを介した通信のために構成することができる。いくつかの例では、通信システムは、コンピューティングマシンが、インターネット等のネットワークを介して他のデバイスとの間でメッセージを送受信することを可能にすることができる。
【００５０】
[0058]  本明細書において説明される構成および／または手法は本質的に例示的なものであり、多数の変形が可能であるため、これらの特定の１つまたは複数の例は、限定の意味とみなされない。本明細書において説明された特定のルーチンまたは方法は、任意の数の処理戦略のうちの１つまたは複数を表すことができる。したがって、例示および／または説明される様々な動作は、例示および／または説明された順番で実行されてもよく、他のシーケンスで実行されてもよく、並列に実行されてもよく、または省かれてもよい。同様に上記で説明したプロセスの順序は変更することができる。
【００５１】
[0059]  本開示の主題は、様々なプロセス、システムおよび構成、ならびに本明細書において開示される他の特徴、機能、動作および／または特性のすべて、ならびにそのありとあらゆる等価物の新規のおよび非明示的組み合わせおよび部分的組み合わせを含む。
【図１】
0006560748.tif 000002
【図２】
0006560748.tif 000003
【図３】
0006560748.tif 000004
【図４Ａ】
0006560748.tif 000005
【図４Ｂ】
0006560748.tif 000006
【図４Ｃ】
0006560748.tif 000007
【図５】
0006560748.tif 000008
【図６】
0006560748.tif 000009
【図７】
0006560748.tif 000010