IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ イリスボンド クラウドボンディング, エス.エレ.の特許一覧

<>
  • 特許-視線追跡のための方法 図1
  • 特許-視線追跡のための方法 図2
  • 特許-視線追跡のための方法 図3a
  • 特許-視線追跡のための方法 図3b
  • 特許-視線追跡のための方法 図3c
  • 特許-視線追跡のための方法 図4a
  • 特許-視線追跡のための方法 図4b
  • 特許-視線追跡のための方法 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-25
(45)【発行日】2025-05-08
(54)【発明の名称】視線追跡のための方法
(51)【国際特許分類】
   G06F 3/038 20130101AFI20250428BHJP
   G06F 3/01 20060101ALI20250428BHJP
【FI】
G06F3/038 310A
G06F3/01 510
【請求項の数】 15
(21)【出願番号】P 2022559517
(86)(22)【出願日】2021-02-17
(65)【公表番号】
(43)【公表日】2023-05-25
(86)【国際出願番号】 EP2021053919
(87)【国際公開番号】W WO2021204449
(87)【国際公開日】2021-10-14
【審査請求日】2023-12-28
(31)【優先権主張番号】20169015.3
(32)【優先日】2020-04-09
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】522382989
【氏名又は名称】イリスボンド クラウドボンディング, エス.エレ.
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】マルティネス, アルベルト カロ
【審査官】井上 香緒梨
(56)【参考文献】
【文献】国際公開第2005/006251(WO,A1)
【文献】米国特許出願公開第2019/0212815(US,A1)
【文献】韓国公開特許第10-2019-0085466(KR,A)
【文献】LEARNING TO FIND EYE REGION LANDMARKS FOR REMOTE GAZE ESTIMATION IN UNCONSTRAINED SETTINGS,EYE TRACKING RESEARCH & APPLICATIONS,2018年06月14日
【文献】MPIIGAZE: REAL-WORLD DATASET AND DEEP APPEARANCE-BASED GAZE ESTIMATION,IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE,2017年11月24日
【文献】視線変化の観測に基づく監視者の意図推定 Estimation of Human Observer's Intention Based on Gaze Detection,第17回日本ロボット学会学術講演会予稿集 第1分冊 1999年 Proceedings of the 17th Annual Conference of the Robotics Society of Japan Volume1,1999年09月09日,p.409~410
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/01
G06F3/033-3/039
G06F3/048-3/04895
G06T7/00-7/90
G06T1/00
(57)【特許請求の範囲】
【請求項1】
コンピュータデバイスによりスクリーン(151)の上の第1の視点の位置を特定するための方法であって、前記方法は、
●少なくとも第1の画像(300)の取得(210)を開始することと、
●前記第1の画像(300)中の第1の顔ランドマークの第1の顔ランドマークロケーション(301)の位置特定(220)を開始することと、
●前記第1の画像(300)中の第2の顔ランドマークの第2の顔ランドマークロケーション(302)の位置特定(230)を開始することと、
●前記第1の画像(300)中の第1の関心領域(310)の選択(240)を開始することであって、前記第1の関心領域(310)の前記選択が、少なくとも前記第1の顔ランドマークロケーション(301)および前記第2の顔ランドマークロケーション(302)を使用することによって実施される、第1の関心領域(310)の選択(240)を開始することと、
●第1の視線ベクトルの構築(250)を開始することであって、前記第1の視線ベクトルの前記構築が、少なくとも人工ニューラルネットワークを用いて実施され、前記人工ニューラルネットワークが、入力として少なくとも前記第1の関心領域(310)を使用する、第1の視線ベクトルの構築(250)を開始することと、
●前記スクリーン(151)の上の前記第1の視点の位置特定(250)を開始することであって、前記第1の視点の前記位置特定が、少なくとも前記第1の視線ベクトルを用いて実施され、前記スクリーン(151)の上の前記第1の視点の前記位置特定が、カルマンフィルタを用いて実施される、前記第1の視点の位置特定(250)を開始することと
を行うステップを少なくとも含む、方法。
【請求項2】
前記人工ニューラルネットワークが、前記第1の関心領域(310)において、少なくとも第1の眼ランドマークの第1の眼ランドマークロケーション(403)および第2の眼ランドマークの第2の眼ランドマークロケーション(404)を検出する、請求項1に記載の方法。
【請求項3】
前記視線ベクトルの前記構築が、サポートベクトル回帰アルゴリズムを用いて実施され、前記サポートベクトル回帰アルゴリズムが、入力として少なくとも前記第1の眼ランドマークロケーション(403)および前記第2の眼ランドマークロケーション(404)を使用する、請求項2に記載の方法。
【請求項4】
前記人工ニューラルネットワークが、砂時計ニューラルネットワークである、請求項1から3のいずれか一項に記載の方法。
【請求項5】
●頭姿勢推定ベクトルの構築を開始することであって、前記頭姿勢推定ベクトルの前記構築が、少なくとも前記第1の顔ランドマークロケーション(301)および前記第2の顔ランドマークロケーション(302)を使用することによって実施される、頭姿勢推定ベクトルの構築を開始すること
を行うステップをさらにみ、
前記スクリーン(151)の上の前記第1の視点の前記位置特定が、前記頭姿勢推定ベクトルに基づく、
請求項1から4のいずれか一項に記載の方法。
【請求項6】
前記頭姿勢推定ベクトルの前記構築が、少なくとも3次元顔モデルを用いて実施され、前記3次元顔モデルが、入力として少なくとも前記第1の顔ランドマークロケーション(301)および前記第2の顔ランドマークロケーション(302)を使用する、請求項5に記載の方法。
【請求項7】
●少なくとも第2の画像の取得を開始することと、
●前記第2の画像中の前記第1の顔ランドマークの第3の顔ランドマークロケーションの位置特定を開始することと、
●前記第1の画像(300)中の前記第1の顔ランドマークの第4の顔ランドマークロケーションの推定を開始することであって、前記第4の顔ランドマークロケーションの前記推定が、オプティカルフロー式、および前記第3の顔ランドマークロケーションを用いて実施される、第4の顔ランドマークロケーションの推定を開始することと、
●前記第1の画像(300)中の前記第1の顔ランドマークの第5の顔ランドマークロケーションの検出を開始することと
を行うステップをさらにみ、
前記第1の画像(300)中の前記第1の顔ランドマークロケーション(301)の前記位置特定が、前記第4の顔ランドマークロケーション、および前記第5の顔ランドマークロケーションに基づく、
請求項1から6のいずれか一項に記載の方法。
【請求項8】
前記第1の画像(300)中の前記第1の顔ランドマークロケーション(301)の前記位置特定が、ランドマーク距離に基づき、前記ランドマーク距離が、前記第3の顔ランドマークロケーションと前記第4の顔ランドマークロケーションとの間の距離である、請求項7に記載の方法。
【請求項9】
前記第1の顔ランドマークロケーション(301)が、前記第4の顔ランドマークロケーションと前記第5の顔ランドマークロケーションとの間の重み付き平均に等しい、請求項7または8に記載の方法。
【請求項10】
●前記スクリーン(151)の上の第2の視点の位置特定を開始することであって、前記第2の視点の前記位置特定が、少なくとも前記第1の視線ベクトルを用いて実施される、第2の視点の位置特定を開始すること
を行うステップをさらにみ、
前記スクリーン(151)の上の前記第1の視点の前記位置特定が、前記第2の視点を用いて実施される、
請求項1から9のいずれか一項に記載の方法。
【請求項11】
前記スクリーン(151)の上の前記第2の視点の前記位置特定が、較正関数を用いて実施され、前記較正関数が、少なくとも較正視点のロケーション、および前記較正視点の前記ロケーションの推定値に依存する、請求項10に記載の方法。
【請求項12】
前記スクリーン(151)の上の前記第1の視点の前記位置特定が、第3の視点およびプロセスノイズの共分散行列を用いて実施され、前記プロセスノイズの前記共分散行列が、複数のエントリを備え、前記エントリが、前記第1の視点と前記第3の視点との間の距離の単調増加関数である、請求項10に記載の方法。
【請求項13】
請求項1から12のいずれか一項に記載の方法を実施するように構成されたプロセッサ(110)を少なくとも備える、データ処理システム(100)。
【請求項14】
ンピューデバイスによって実行されたとき、前記コンピューデバイス請求項1から12のいずれか一項に記載の方法を実行させる命令を備える、コンピュータプログラム。
【請求項15】
コンピュータデバイスによって実行されたとき、前記コンピュータデバイス請求項1から12のいずれか一項に記載の方法を実行させる命令を備える、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、スクリーンの上の、たとえば、コンピューティングデバイスのディスプレイユニットの上の視点の位置を特定するための視線追跡方法および視線追跡デバイスの分野に言及する。本発明によれば、コンピューティングデバイスは、たとえば、パーソナルコンピュータ、タブレット、ラップトップ、スマートフォン、ビデオゲームコンソール、カメラ、ヘッドマウントディスプレイ(HMD)、スマートテレビなどであり得る。
【背景技術】
【0002】
視線追跡方法は、人間コンピュータ対話において広く使用されている。上記方法を実装するコンピュータプログラムは、ユーザの視点を追跡することが可能であり、したがって、コンピューティングデバイスのディスプレイユニットの上の特定のロケーションを単に見ることによって、従来の入力デバイス(キーボード、マウスデバイス、タッチパッドなど)を使用することなしにコンピューティングデバイスに入力を提供することが可能になる。たとえば、ユーザは、手を使用する必要なしにコンピュータのグラフィカルユーザインターフェース(GUI)に入力を提供し得、それにより、たとえば、運動障害をもつユーザがコンピュータとうまく対話することができるようにする。
【0003】
視線追跡のための方法はまた、複雑なシステムの組立または保守において使用される。そのような組立または保守タスクを実施するオペレータは、しばしば、HMD、特に、コンピュータグラフィックス技術を用いてオペレータの自然視を拡張する拡張現実HMDを使用する。視線追跡方法を実装するHMDは、オペレータによってハンズフリー制御され得、したがって、両手をタスクのために利用可能にする。
【0004】
視線追跡方法は、自動車産業においても重要である。たとえば、これらの方法は、運転支援システムにおいて実装され得、これにより、ドライバが道路に注意を支払っているかどうか、たとえば、彼/彼女が車のフロントガラスを通して見ているかどうかを確かめるために、彼/彼女の視線を追跡することが可能になる。たとえば、視線追跡方法を実装する運転支援システムは、ドライバが車両リアビューカメラのスクリーンを見ているかどうかを検出し、必要とされるときのみ、換言すれば、ドライバがスクリーンを見ているときのみ、上記カメラをアクティベートすることが可能である。
【0005】
視線追跡のための方法はまた、ドライバと車両のソフトウェアとの間のハンズフリー対話を可能にし得、そのため、ドライバは、ハンドルから彼女/彼の手を離すことなしに車両のソフトウェアに命令を与え得る。ドライバは、これにより、単に特定の方向を見ることによって、ソフトウェアに、車両ライトの強さを調節すること、ドアをロック/アンロックすること、車両速度を制御することなど、特定のアクティビティを実施するように命令し得る。
【0006】
スクリーンの上の視点の位置を特定するための視線追跡方法が、当技術分野で知られている。知られている視線追跡方法は、視線追跡方法が、赤外線(IR)カメラ、着用可能なハードウェア構成要素および眼追跡眼鏡など、専用のハードウェア構成要素に、またはユーザに依存する較正手順に依拠する場合のみ、相対的に高い精度を達成し得る。たとえば、IRカメラを使用する方法は、0.5°程度の精度に達し得る。しかしながら、そのような専用のハードウェア構成要素は、比較的高価であり、ラップトップおよびスマートフォンなど、主流のコンピューティングデバイスには存在しない。その上、着用可能なハードウェア構成要素は、使用するのが不快で、ユーザの易動度を妨げ得る。代わりに、較正手順は、時間がかかり、視線追跡のための知られている方法を実装するデバイスの有用性、ひいては、デバイスの実用性を制限する。
【0007】
一般に、知られている視線追跡方法は、実世界動作条件下での、たとえば、専用のハードウェア構成要素の不在下での、および/または眼外観、照明、頭姿勢、カメラの技術仕様、画像品質などの相対的に広い変動性によって特徴づけられる状況下での限られた精度という欠点がある。
【発明の概要】
【0008】
これらの問題は、本出願の本発明によって少なくとも部分的に解決され、本出願の本発明は、請求項1に記載のコンピュータ実装方法に、請求項14に記載のデバイスに、請求項15に記載のコンピュータプログラム製品に、および請求項16に記載のコンピュータ可読記憶媒体に関する。本発明の実施形態は、従属請求項の主題である。
【0009】
本発明は、スクリーンの上の第1の視点の位置を特定するためのコンピュータ実装方法であって、方法は、
●少なくとも第1の画像の取得を開始することと、
●第1の画像中の第1の顔ランドマークの第1の顔ランドマークロケーションの位置特定を開始することと、
●第1の画像中の第2の顔ランドマークの第2の顔ランドマークロケーションの位置特定を開始することと、
●第1の画像中の第1の関心領域の選択を開始することであって、第1の関心領域の選択が、少なくとも第1の顔ランドマークロケーションおよび第2の顔ランドマークロケーションを使用することによって実施される、第1の関心領域の選択を開始することと、
●第1の視線ベクトルの構築を開始することであって、第1の視線ベクトルの構築が、少なくとも人工ニューラルネットワークを用いて実施され、人工ニューラルネットワークが、入力として少なくとも第1の関心領域を使用する、第1の視線ベクトルの構築を開始することと、
●スクリーンの上の第1の視点の位置を特定することを開始することであって、第1の視点の位置特定が、少なくとも第1の視線ベクトルを用いて実施される、第1の視点の位置を特定することを開始することと
を行うステップを少なくともふくむ、コンピュータ実装方法に関係する。
【0010】
スクリーンは、凹表面または凸表面であり得る。特に、スクリーンは、実質的に平坦な表面、たとえば、キャンバス、ガラスパネルおよび/または車両のフロントガラスなど、パネルであり得る。スクリーンは、コンピューティングデバイスのディスプレイユニットであり得る。たとえば、スクリーンは、コンピューティングデバイスのモニタまたはスクリーン、たとえば、GUIおよび/またはデータ、特に、画像の形態のデータがその上に表示される、コンピューティングデバイスの実質的に平坦なエリアであり得る。スクリーン上の点は、スクリーンの上に定義された2次元参照フレーム中の2次元スクリーン座標によって表現され得る。スクリーン座標は、特に、デカルト座標または極座標であり得る。たとえば、スクリーンの点のスクリーンロケーションは、スクリーン上の点を、たとえば、スクリーンの左上隅を中心とするスクリーン参照フレームに関する2次元スクリーン座標(a,b)によって表される。
【0011】
本発明によれば、画像は、ベクトル画像またはピクセルの2次元格子、たとえば、ピクセルの矩形格子であり得る。特に、画像中のピクセルのロケーションは、画像中のロケーションの2次元画像座標によって一義的に決定され得、上記座標は、ピクセルの2次元格子中の上記ピクセルのロケーションを表す。2次元画像座標は、画像の面中の、たとえば、ピクセルの格子を備える面中の2次元参照フレームに関するデカルト座標または極座標であり得る。たとえば、ピクセルの2次元画像座標は、第1の画像の画像面参照フレーム中のピクセルの座標である。
【0012】
特に、第1の画像は、ピクセルの第1の2次元格子、たとえば、ピクセルの第1の矩形格子である。第1の2次元格子のエントリは、列および行中に配列され得、各列および各行がそれぞれ列番号および行番号に関連付けられるというやり方で、昇順で列挙され得る。特に、第1の画像中の各ピクセルのロケーションは、ピクセルが属する行の行番号
に、およびピクセルが属する列の列番号
によって一義的に決定され得る。これにより、第1の画像中の上記ピクセルの2次元画像座標は、2次元ベクトル
であり得る。たとえば、第1の画像のピクセルの2次元画像座標は、第1の画像の画像面参照フレーム中のピクセルの座標である。
【0013】
画像、たとえば、第1の画像は、少なくともビットマップによって符号化され得る。画像または画像の一部分を符号化するビットマップは、上記画像または上記画像の部分の各ピクセルの色を指定するビットのアレイを備える、たとえば、ビットのアレイからなり得る。ビットマップは、アレイのエントリがカラーテーブル上にインデックス付けされるように、パレットインデックス付けされ得る。アレイのエントリは、ピクセルの色を符号化するビットを記憶し得る。特に、ビットマップは、ピクセルの2次元格子を表すドットマトリックスデータ構造を備える、たとえば、ドットマトリックスデータ構造からなり得る。ビットマップは、ピクセル当たりのビットの数、ピクセルの2次元格子の行当たりのピクセルの数および/または上記矩形格子の列当たりのピクセルの数に関係する情報をさらに備え得る。画像ビューアは、コンピューティングデバイスの、たとえば、本発明の方法を行うコンピューティングデバイスのスクリーン上に画像または画像の部分をレンダリングするために、ビットマップで符号化された情報を使用し得る。
【0014】
画像、たとえば、第1の画像は、コンピューティングデバイスの、たとえば、本発明の方法を行うコンピューティングデバイスの1次メモリにおよび/または2次メモリに記憶され、特に、一時的に記憶され得る。本発明によれば、画像は、上記画像が記憶されたメモリにアクセスすることによって取得され得る。代替的に、または上記と併せて、画像の取得は、記録デバイス、たとえば、フォトまたはビデオカメラなど、フォトおよび/またはビデオ記録デバイスを用いて上記画像をキャプチャすることによって実施され得る。フォト記録デバイスおよび/またはビデオ記録デバイスは、コンピューティングデバイスに、特に、本発明の方法を行うコンピューティングデバイスに統合され得る。次いで、キャプチャされた画像は、コンピューティングデバイスの1次メモリおよび/または2次メモリに記憶され得、顔ランドマークの位置を特定するために、および/または関心領域を選択するためにアクセスされ得る。
【0015】
顔ランドマークは、特に、一般的に人間の顔の形状の特徴的な解剖学的領域をマーキングする人間の顔の形状中の点である。たとえば、顔ランドマークは、鼻の先端、口の右端または口の左端であり得る。類似的に、顔ランドマークは、他のランドマークとともにそれぞれ眉および口唇をマーキングする、上記眉のまたは上記口唇の点であり得る。
【0016】
顔ランドマークは、たとえば、眼ランドマークであり得る。眼ランドマークは、特に、他の眼ランドマークとともに眼の形状をマーキングする、上記眼の点である。たとえば、眼ランドマークは、眼の左端または右端、眼瞼の点あるいは眼球の中心であり得る。眼ランドマークは、虹彩ランドマークであり得る。特に、虹彩ランドマークは、他の虹彩ランドマークとともに虹彩の形状をマーキングする、上記虹彩の点である。たとえば、虹彩ランドマークは、虹彩の中心である。
【0017】
顔ランドマークの画像中のロケーション、たとえば、第1の顔ランドマークロケーションおよび/または第2の顔ランドマークロケーションは、特に、画像中の上記ランドマークの表現の画像中のロケーションである。たとえば、画像中で、顔ランドマークがピクセルのセットによって表される場合、顔ランドマークロケーションは、ピクセルの上記セットの参照ピクセルの、画像中のロケーションであり得る。このようにして、顔ランドマークロケーションは、この参照ピクセルの、たとえば、参照ピクセルの2次元画像座標のロケーションによって一義的に表現される。
【0018】
第1の画像中の第1の顔ランドマークのおよび/または第2の顔ランドマークの位置特定は、以下で「第1のロケーションアルゴリズム」と呼ばれる、V. Kazemi et alを著者とする論文「One Millisecond Face Alignment with an Ensemble of Regression Trees」、DOI:10.1109/cvpr.2014.241に開示されているアルゴリズムを用いて実施され得る。上記アルゴリズムは、回帰ツリーの集合を備える。
【0019】
特に、第1のロケーションアルゴリズムは、n個の顔ランドマークのセットの位置を特定することを可能にし、上記セットは、第1のランドマークおよび第2のランドマークを少なくとも備える。たとえば、nは、2から194の間に、特に、30から130の間にある。その上、nは、50から100の間にあり得、より詳細には、6または68のいずれかに等しい。
【0020】
顔ランドマークの、たとえば、眼球中心または虹彩中心の3次元ロケーションは、3次元空間中の上記ランドマークの位置である。たとえば、顔ランドマークの3次元ロケーションは、カメラ参照フレーム中のこのランドマークの3次元座標を表す3次元ベクトルによって表される。特に、上記3次元座標は、第1の画像を取得するカメラに関連するカメラマトリックスの逆数を介して、第1の画像の画像面参照フレーム中のランドマークの2次元画像座標から得られ得る。
【0021】
第1の関心領域(ROI)は、第1の眼または第1の眼の一部分を少なくとも備え得る。第1のROIは、第1の画像のピクセルのセットによって表される。特に、第1のROIは、第1の画像のピクセルの2次元格子、より詳細には、第1の画像のピクセルの矩形格子である。第1のROIは、少なくとも第1のビットマップによって符号化され得る。
【0022】
たとえば、第1の顔ランドマークが鼻の先端であり、第2のランドマークが左眉の点である場合、第1のROIは、第2のランドマークの行から第1のランドマークの行の間にある行のピクセルからなり得る。その上、第1の顔ランドマークおよび第2の顔ランドマークが、それぞれ、左眼の左端および右端である場合、第1のROIは、整数C=CFL1-Eから整数C=CFL2+Eの間の範囲にある列番号をもつピクセルからなり得、CFL1およびCFL2は、それぞれ、第1の顔ランドマークの列番号および第2の顔ランドマークの列番号である。たとえば、Eは、5から15の間の範囲に、特に、8から12の間の範囲にある数である。より詳細には、整数Eは、10に等しいことがある。
【0023】
第1のROI中のピクセルのロケーションは、第1のROIを表すピクセルの2次元格子中の上記ピクセルのロケーションを表す2次元座標によって一義的に決定され得る。その上、第1の2次元格子中のピクセルのロケーションは、第1の画像の面中の2次元参照フレームに関するデカルト座標または極座標によって表現され得る。
【0024】
第1のROIの選択は、第1のROIについての情報を記憶することを備え得る。第1のROIについての情報は、第1のROIのピクセルの色および第1のROI中の上記ピクセルのロケーションについての情報を備え得る。第1のROIについての情報は、特に、第1のビットマップ中にある。第1のROIの選択は、第1のROIについての情報を記憶するビットのメモリアドレスを備えるデータを記憶することをふくみ得る。たとえば、上記ビットは、第1の画像を符号化するビットマップ中に配列され得る。上記データおよび/または第1のROIについての情報は、コンピューティングデバイスの、たとえば、本発明の方法を行うコンピューティングデバイスの1次メモリおよび/または2次メモリに記憶され、たとえば、一時的に記憶され得る。
【0025】
第1のROIについての情報が、検索され、正しく解釈され得る限り、任意の構造フォーマットが、上記情報を符号化するために使用され得る。たとえば、第1のROIのピクセルのロケーションについての情報は、上記情報が、第1のROIのピクセルの各々のロケーションを正しく得るのに十分である限り、第1のROI中にあるピクセルのうちのいくつかのロケーションを指定し得る。たとえば、第1のROIが、第1の画像の矩形格子である場合、上記格子の頂点のロケーションについての情報は、第1のROIのピクセルの各々のロケーションを得るのに十分である。
【0026】
特に、第1の視線ベクトルは、第1のROI中に含まれている眼が見ている3次元方向を推定する。第1の視線ベクトルは、デカルト座標、球面座標または円筒形座標で表現され得る3次元単位ベクトルであり得る。たとえば、第1の視線ベクトルは、第1のROI中に含まれている眼の眼球中心のまたは虹彩中心の3次元ロケーションに関する球面座標で表現され得る。この場合、第1の視線ベクトルは、極角および方位角によって表現され得る。
【0027】
特に、人工ニューラルネットワーク(ANN)は、ANN入力をANN出力にマッピングする、および各ノードが入力を出力にマッピングする複数の相互接続されたノードを備える、計算モデルである。特に、ANNのノードは、各ノードについて、上記各ノードの入力が別のノードの出力を備え、および/または上記各ノードの出力が別のノードの入力の一部であるように、互いに相互接続される。たとえば、ANNの汎用ノードの出力は、ANN出力の、および/または別のノードの入力の一部である。特に、ANNの汎用ノードのノード入力は、1つまたは複数のデータ項目を備え、各データ項目は、別のノードの出力またはANN入力のデータ項目のいずれかである。
【0028】
たとえば、ANNの各ノードは、ノードに依存し得るアクティブ化関数を用いてノードの入力をノードの出力にマッピングし得る。一般的には、ノードのアクティブ化関数は、上記ノードの入力のデータ項目を重み付けする1つまたは複数の重みに依存し得る。
【0029】
特に、ANNのノードの出力は、しきい値に依存し得る。たとえば、ノードの出力は、上記ノードの入力において評価されたアクティブ化関数の値が、しきい値よりも大きいのか、しきい値に等しいのか、しきい値未満であるのかに依存する。
【0030】
たとえば、ANNは、VGG-16ニューラルネットワークまたはMnistNetニューラルネットワークであり得る。ANNは、AlexNetなど、畳み込みニューラルネットワークであり得る。たとえば、ANNは、敵対的生成ネットワークの一部であり得る。
【0031】
ANNの重みの値は、少なくとも訓練データセットを用いてANNを訓練することによって得られ得る。訓練中、重みの値は、一般的に、ANN、ANN入力、ANN出力、および/またはバイアスの重みに依存するコスト関数の値を最小にするように、反復的に調整される。たとえば、訓練データセットは、SynthesEyesデータセットまたはUnityEyesデータセットなど、MPIIGazeまたは視線キャプチャデータセットまたは合成データセットであり得る。
【0032】
ANNの性能は、訓練中にデータ拡張を使用することによって改善され得る。たとえば、訓練データセットは、訓練データセットのデータの少なくとも一部を拡張することによって拡大され得る。データ拡張は、訓練データセット中にある画像のうちの少なくともいくつかを平行移動および/または回転させることによって実施され得る。訓練データセットの画像のうちの少なくともいくつかは、画像の強さを変化させることによって、および/または画像に線または障害物を追加することによって拡張され得る。
【0033】
ANN入力は、入力画像または入力画像の一部分の複数のピクセルについての情報を含み得る。たとえば、ANN入力は、上記ピクセルの位置および色についての情報を含む。特に、ピクセルの位置についての情報は、入力画像の面中の2次元参照フレームに関するピクセルの2次元座標で符号化され得る。
【0034】
第1の視線ベクトルの構築時、ANNは、入力として第1のROIを使用する。この場合、特に、ANN入力は、第1のROIのピクセルの位置および色についての情報を備え、より詳細には、ANN入力は、第1のビットマップを備えるか、または第1のビットマップからなり得る。ANN出力は、第1の視線ベクトルを特徴づける情報、たとえば、第1の視線ベクトルの球面座標、円筒座標またはデカルト座標を備え得る。この場合、ANNは、第1の視線ベクトルを構築する。
【0035】
第1の視点の3次元ロケーションは、特に、スクリーンと第1の視線ラインとの間の交点である。第1の視線ラインは、特に、第1のROI中に含まれている眼の眼球中心のまたは虹彩中心の3次元ロケーションと交差する、および第1の視線ベクトルに平行であるラインである。スクリーンの上の第1の視点の位置特定は、(以下で「スクリーン面」とも呼ばれる)面に関してスクリーンをモデル化することによって、および上記面と第1の視線ラインとの間の交点として第1の視点を構築することによって得られ得る。たとえば、所与の参照フレーム(たとえば、カメラ参照フレーム)中の第1の視点のロケーションの3次元座標
は、
によって与えられ、
は第1の視線ベクトルであり、
は、第1のROI中に含まれている眼の眼球中心のまたは虹彩中心の3次元ロケーションの3次元座標である。単位ベクトル
は、スクリーン面に直交し、
は、スクリーン面の基準点の3次元ロケーションの3次元座標である。たとえば、この基準点は、スクリーンの左上隅であり得る。
【0036】
スクリーン面の基準点を中心とする3次元参照フレームに関する第1の視点の3次元座標
は、
によって与えられる。スクリーンの基準点に関するスクリーン座標は、さらなる3次元参照フレームを得るために、基準点を中心として参照フレームを適切に回転させることによって得られ得る。さらなる3次元参照フレームでは、第1の視点の3次元座標は、
によって与えられ、ここで、
は、スクリーンの基準点を中心とするスクリーン参照フレームに関する第1の視点の2次元スクリーン座標である。
【0037】
スクリーン座標は、一般的に、センチメートルなど、長さの単位で表現され、以下のようにピクセルの単位にコンバートされてもよい。
【0038】
第1のROIの選択は、ANNのための入力の選択を改善し、それにより、より正確な視線ベクトル構築をもたらし、ANNの処理負荷を低減する。第1のROIの選択、およびANNを用いた第1の視線ベクトルの構築は、実世界動作条件下で、特に、専用のハードウェア構成要素の不在下で方法の精度を改善するために、互いと相乗的に対話する。本発明の方法は、動作条件の広い範囲下で1°を下回る精度を実現し得る。
【0039】
本発明の方法の実施形態によれば、人工ニューラルネットワークは、第1のROI中で、少なくとも第1の眼ランドマークの第1の眼ランドマークロケーションおよび第2の眼ランドマークの第2の眼ランドマークロケーションを検出する。特に、第1の視線ベクトルを構築するステップにおいてANNによって検出された眼ランドマークは、第1のROI中に描かれた眼を再構築することを可能にする。
【0040】
特に、第1の眼ランドマークおよび第2の眼ランドマークは、それぞれ、第1のROI中に含まれている眼の眼球中心および虹彩中心である。(以下で「眼球座標」とも呼ばれる)カメラ参照フレーム中の眼球中心の3次元座標は、第1の画像を取得するカメラのカメラマトリックスを用いて第1のROI中の第1の眼ランドマークロケーションの2次元画像座標から構築され得る。類似的に、(以下で「虹彩座標」とも呼ばれる)カメラ参照フレーム中の虹彩中心の3次元座標は、上述のカメラマトリックスを用いて第1のROI中の第2の眼ランドマークロケーションの2次元画像座標から構築され得る。特に、第1の視線ベクトルは、虹彩座標と眼球座標との間の差異として構築され得る。
【0041】
この場合、第1の視線ベクトルは、2つのランドマークロケーションを操作する基本代数的演算を使用することによって構築され得る。このようにして、ANNの複雑さは低減され得、方法の計算負荷は減少される。
【0042】
たとえば、この実施形態では、ANN出力は、第1の画像中のおよび/または第1のROI中の第1の眼ランドマークおよび第2の眼ランドマークについての情報を備える。特に、ANN出力は、第1の画像および/または第1のROI中の第1の眼ランドマークのおよび第2の眼ランドマークの2次元画像座標を備える。
【0043】
ANN出力は、眼ランドマークに関連するヒートマップを少なくとも備え得る。特に、眼ランドマークに関連するヒートマップは、眼ランドマークのピクセルの色を使用することによって上記ランドマークのロケーションのピクセルごとの信頼度を表す画像である。特に、ヒートマップのピクセルは、第1のROIおよび/または第1の画像のピクセルと対応している。たとえば、この対応は、ヒートマップの各ピクセルを第1のROIおよび/または第1の画像のピクセルの上にマッピングするマッピング関数、たとえば、同形写像を使用することによって実装され得る。
【0044】
ヒートマップのピクセルの色は、ヒートマップに関連する眼ランドマークが、ヒートマップの上記ピクセルに対応する第1のROIのピクセルに位置する確率についての情報を符号化する。
【0045】
特に、眼ランドマークに関連するヒートマップのピクセルは、上記ランドマークが、ヒートマップの上記ピクセルに関連する第1のROIのピクセルに位置する、ピクセルごとの信頼度、たとえば、尤度または確率を符号化する。たとえば、ヒートマップのピクセルがより暗いほど、眼ランドマークが、ヒートマップの上記ピクセルに対応する第1のROIのピクセルに位置する可能性が高い。
【0046】
たとえば、眼ランドマークの第1のROI中のロケーションは、眼ランドマークに関連するヒートマップの第1の領域中のピクセルに対応する、第1のROIのピクセルのロケーションであり得る。特に、第1の領域は、眼ランドマークがその中に位置する可能性が最も高い、たとえば、ピクセルごとの信頼度がその中で最も大きい値をとる、ヒートマップの領域である。この場合、特に、上記眼ランドマークの第1のROI中のロケーションは、ランドマークに関連するヒートマップの第1の領域中のピクセル、および上記で説明されたマッピング関数を使用することによって検出される。
【0047】
本発明の一実施形態では、ANNは、第1のROI中で、第1の眼境界ランドマークロケーションから第8の眼境界ランドマークロケーションに及ぶ少なくとも8つの眼境界ランドマークロケーションをさらに検出する。特に、眼境界ランドマークは、眼の、たとえば、眼瞼のまたは眼の端の外部境界の点である。
【0048】
本発明の方法のさらなる実施形態では、ANNは、第1のROI中で、第1の虹彩境界ランドマークロケーションから第8の虹彩境界ランドマークロケーションに及ぶ少なくとも8つの虹彩境界ランドマークロケーションを検出する。たとえば、虹彩境界ランドマークは、眼の角膜縁の、換言すれば、虹彩強膜境界の点である。
【0049】
たとえば、ANN出力は、第1のヒートマップ、第2のヒートマップ、および第3から第18に及ぶ16個のさらなるヒートマップを備える。特に、第3のヒートマップから第10のヒートマップの各々は、異なる眼境界ランドマークが、異なるヒートマップに関連するというやり方で、第1の眼境界ランドマークから第8の眼境界ランドマークのうちの1つのロケーションのピクセルごとの信頼度を符号化する。その上、第11のヒートマップから第18のヒートマップの各々は、異なる虹彩境界ランドマークが、異なるヒートマップに関連するというやり方で、第1の虹彩境界ランドマークから第8の虹彩境界ランドマークのうちの1つのロケーションのピクセルごとの信頼度を符号化し得る。
【0050】
虹彩中心の、眼球中心の、8つの眼境界ランドマークの、および8つの虹彩境界ランドマークの、第1のROI中のロケーションは、soft-argmax層を用いて上述の18個のヒートマップを処理することによって得られ得る。
【0051】
たとえば、ANNは、以下のコスト関数、すなわち、
を使用することによって訓練され得、M(s)は、入力として訓練データセットの訓練ANN入力INを使用することによってANNによって計算された、第jのヒートマップのピクセルsにおける値である。
は、訓練ANN入力INに関連するグランドトゥルースの第jのヒートマップの値である。スケールファクタλは、0.1から10の間に、特に0.5から5の間にある。より詳細には、ファクタλは、1に等しい。たとえば、Nは、1から20の間にあり得、より詳細には、2または18に等しいことがある。
【0052】
本発明の別の実施形態によれば、視線ベクトルの構築は、サポートベクトル回帰(SVR)アルゴリズムを用いて実施され、SVRアルゴリズムは、入力として少なくとも第1の眼ランドマークロケーションおよび第2の眼ランドマークロケーションを使用する。これは、特に、眼の眼球のモデルに依拠する必要なしに、視点ロケーションの精度を改善することを可能にする。
【0053】
SVRアルゴリズムは、眼球ピッチおよびヨーならびに/または第1の視線ベクトルの球面座標の極角および方位角を推定することによって第1の視線ベクトルを構成することを可能にし得る。特に、SVRアルゴリズムは、入力として、第1の眼ランドマークロケーションおよび第2の眼ランドマークロケーションを備える特徴ベクトルを使用する。特徴ベクトルは、8つの虹彩境界ランドマークロケーションおよび8つの眼境界ランドマークロケーションをさらに備え得る。
【0054】
特徴ベクトルは、第1の画像または第1のROI中の眼球中心ロケーションを第1の画像または第1のROI中の虹彩中心ロケーションに接続するベクトルであり得、後者のロケーションのほうへ向けられた、前の2次元視線ベクトルをも備え得る。前の視線ベクトルの存在は、特に、上記アルゴリズムが、相対的に少数の訓練サンプル、たとえば、約20個の訓練サンプルを使用することによって訓練される場合、SVRアルゴリズムの精度を著しく増加する。
【0055】
視線推定の精度を改善するために、特徴ベクトルの少なくとも一成分、たとえば、特徴ベクトルの成分の各々が、眼の幅に、換言すれば、第1の画像または第1のROI中に含まれている眼の左端ロケーションと右端ロケーションとの間の距離に正規化され得る。その上、特徴ベクトル中にある顔ランドマークロケーションおよび、存在する場合、前の2次元視線ベクトルは、第1の画像の面中の2次元参照フレームに関してデカルト座標または極座標で表現され得、上記参照フレームの原点は、眼球中心ロケーションである。
【0056】
SVRアルゴリズムは、異なる人物を含んでいる画像から得られた訓練特徴ベクトルの相対的に大きいセットを使用することによって、ユーザに依存しないやり方で訓練され得る。SVRアルゴリズムは、特定のユーザを含んでいる訓練画像から得られた訓練特徴ベクトルの相対的に小さいセットを使用することによって、ユーザに依存するやり方で訓練されてもよい。たとえば、訓練画像および対応する訓練特徴ベクトルは、ユーザにスクリーン上の所定のロケーションを見るように求めることによって、およびユーザがこれらのロケーションを見ている間に、ユーザの顔を描く画像を取得する(たとえば、キャプチャする)ことによって得られ得る。
【0057】
本発明による方法の一実施形態では、人工ニューラルネットワークは、砂時計ニューラルネットワーク(HANN)である。
【0058】
HANNは、入力画像のまたは入力画像の部分の異なるスケールにわたって情報を集めることを可能にする。特に、HANNは、入力特徴を出力特徴にマッピングする1つまたは複数の砂時計モジュールを備える。特に、砂時計モジュールは、砂時計モジュールの出力特徴が、別の砂時計モジュールの入力特徴をなすように、直列に積み重ねられる。砂時計モジュールのノードは、層中に配列され、畳み込み層および最大プーリング層が、解像度を減少させることによって入力特徴を変更するというやり方で構成される。各最大プーリングステップにおいて、モジュールは、分岐し、元の予めプールされた解像度においてさらなる畳み込みを適用する。最小解像度に達した後、砂時計モジュールは、アップサンプリングによっておよびスケールにわたる特徴を組み合わせることによって解像度を増加させる。
【0059】
一般的に人間姿勢推定のために確保される、視線ベクトル構築における砂時計人工ニューラルネットワークの使用は、スクリーンの上の第1の視点のロケーションの精度の驚くべき改善をもたらす。
【0060】
本発明のさらなる実施形態によれば、第1の顔ランドマークは第3の眼ランドマークであり、および/または第2の顔ランドマークは第4の眼ランドマークである。この場合、第1の顔ランドマークロケーションおよび第2の顔ランドマークロケーションは、それぞれ、第3の眼ランドマークロケーションおよび第4の眼ランドマークロケーションである。
【0061】
2つの眼ランドマークの検出は、第1のROIの選択の精度を改善することを可能にし、それにより、ANNの入力に供給される入力の品質、および最終的に、第1の視線ベクトルの構築の精度を改善する。
【0062】
本発明の方法のさらなる実施形態は、第1の画像中での、第5の眼ランドマークの第5の眼ランドマークロケーションの、第6の眼ランドマークの第6の眼ランドマークロケーションの、第7の眼ランドマークの第7の眼ランドマークロケーションの、および第8の眼ランドマークの第8の眼ランドマークロケーションの位置特定を開始するステップをふくむ。この実施形態では、第1のROIの選択は、第3の眼ランドマークロケーション、第4の眼ランドマークロケーション、第5の眼ランドマークロケーション、第6の眼ランドマークロケーション、第7の眼ランドマークロケーション、および第8の眼ランドマークロケーションを使用することによって実施される。
【0063】
この場合、たとえば、第1のROIは、整数CからCの間にある列番号をもち、整数RからRの間にある行番号をもつピクセルからなり得、C、C、RおよびRは、以下の関係、すなわち、
=min(Se,x)-E、C=max(Se,x)+E、R=min(Se,y)-E、R=max(Se,y)+E (4)
を満たし、Se,x={xe,3,xe,4,xe,5,xe,6,xe,7,xe,8}およびSe,y={ye,3,ye,4,ye,5,ye,6,ye,7,ye,8}である。座標(xe,3,ye,3)、(xe,4,ye,4)、(xe,5,ye,5)、(xe,6,ye,6)、(xe,7,ye,7)、および(xe,8,ye,8)は、第1のROIを選択するために使用される6つの眼ランドマークロケーションの2次元画像座標を意味する。表現式min(S)およびmax(S)は、それぞれ、汎用セットSの最小値および最大値を意味する。
【0064】
驚くべきことに、6つの眼ランドマークロケーションを用いた第1のROIの選択は、ANNを用いた第1の視線ベクトルの構築の精度の改善をもたらす。
【0065】
本発明の方法の一実施形態は、
●頭姿勢推定ベクトルの構築を開始することであって、頭姿勢推定ベクトルの構築が、少なくとも第1の顔ランドマークロケーションおよび第2の顔ランドマークロケーションを使用することによって実施される、頭姿勢推定ベクトルの構築を開始すること
を行うステップをさらにふくみ、
スクリーンの上の第1の視点の位置特定が、頭姿勢推定ベクトルに基づく。
【0066】
頭姿勢推定ベクトルは、特に、基準顔位置に関して第1の画像中に含まれている顔のヨー、ピッチおよびロールを計算するために必要とされる情報を少なくとも備えるベクトルである。
【0067】
第1のROI中に含まれている眼の眼球中心のまたは虹彩中心の3次元ロケーション
は、頭姿勢推定ベクトル
に等しいことがある。特に、頭姿勢推定ベクトルは、以下、すなわち、
のように書かれ、ここで、
および
は、それぞれ、3次元世界参照フレーム中の3次元座標を3次元カメラ参照フレーム中の3次元座標に変換する、3×3回転行列および平行移動ベクトルである。たとえば、第1の画像中の第1の眼の眼中心のまたは虹彩中心のロケーションが、2次元画像座標(x,y)によって表される場合、3次元ベクトル
は、カメラマトリックスCの逆数に関して、以下、すなわち、
のように書かれる。fおよびfは、それぞれ、x方向およびy方向における焦点距離であり、(c,c)は光心である。定数sは、全体的なスケールである。回転行列
平行移動ベクトル
および/または全体的なスケールsは、特に、パースペクティブnポイント(PnP)問題を解くことによって計算され得る。PnP問題は、世界参照フレーム中の3次元座標、および上記顔のn個の顔ランドマークのセットの各顔ランドマークの2次元画像座標を仮定すれば、第1の画像中に含まれている顔の姿勢を推定する問題として公式化され得る。
【0068】
個の顔ランドマークのセットは、第1の顔ランドマークおよび第2の顔ランドマークを備える。たとえば、nは、2から80の間に、特に、3から75の間にある。その上、nは、4から70の間にあり得、より詳細には、6または68のいずれかに等しい。たとえば、n個の顔ランドマークのセットは、n個の顔ランドマークのセットのサブセットであり、特に、n個の顔ランドマークのセットは、n個の顔ランドマークのセットと一致する。
【0069】
PnP問題の解は、P3P法、efficient PnP(EPnP)法、直接最小二乗(DLS)法を使用することによって得られ得る。これらの方法、特にP3P法は、外れ値を含んでいるデータのセットからのパラメータ推定を改善するための反復法であるランダムサンプルコンセンサス(RANSAC)アルゴリズムによって補完され得る。
【0070】
特に、回転行列
平行移動ベクトル
および/または全体スケールsは、直接線形変換および/またはLevenberg-Marquardt最適化を使用することによって計算され得る。
【0071】
頭姿勢推定ベクトルの構築は、たとえば、ユーザにスクリーンおよび/または記録デバイスに関して所与の所定の位置をとることを強いることなしに、実世界の制約がない動作条件下で第1の視点のロケーションの精度を改善することを可能にする。
【0072】
本発明による方法の別の実施形態では、頭姿勢推定ベクトルの構築は、少なくとも3次元顔モデルを用いて実施される。3次元顔モデルは、入力として少なくとも第1の顔ランドマークロケーションおよび第2の顔ランドマークロケーションを使用する。
【0073】
特に、3次元顔モデルは、入力としてn個の顔ランドマークのセットの各顔ランドマークの、第1の画像中のロケーションを使用し得、n個の顔ランドマークのセットは、第1の顔ランドマークおよび第2の顔ランドマークを備える。たとえば、nは、2から80の間に、特に3から75の間にある。その上、nは、4から70の間にあり得、より詳細には、6または68のいずれかに等しい。たとえば、n個の顔ランドマークのセットは、n個の顔ランドマークのセットのサブセットであり、特に、n個の顔ランドマークのセットは、n個の顔ランドマークのセットと一致する。
【0074】
3次元モデルは、特に、入力として少なくともn個の顔ランドマークのセットの要素の顔ランドマークロケーション、特に2次元画像座標を使用することによってn個の顔ランドマークのセットの各要素の3次元座標を計算することを可能にするアルゴリズムである。3次元顔ランドマークモデルは、特に、Surrey顔モデルまたはCandide顔モデルであり得る。
【0075】
特に、3次元顔モデルは、回転行列
および平行移動ベクトル
を推定することを可能にし、最終的に、たとえば、式(5)および(6)を使用することによって頭姿勢推定ベクトルを計算することを可能にする。
【0076】
たとえば、n個の顔ランドマークのセットの汎用的な第jの要素の、第1の画像中のロケーションが、座標(xf,j,yf,j)によって表される場合、3次元モデルは、3次元世界参照フレーム中の上記汎用要素の3次元ロケーション
を推定することを可能にする。この場合、特に、回転行列
平行移動ベクトル
および/または全体的なスケールsは、方程式、すなわち、
を解くことによって計算される。
【0077】
3次元モデルの使用は、相対的に少ない量のランドマークロケーションからの頭姿勢推定ベクトルの信頼できる構築を可能にし、それにより、本発明の方法の処理負荷を低減する。
【0078】
本発明による方法の実施形態は、
●少なくとも第2画像の取得を開始することと、
●第2の画像中の第1の顔ランドマークの第3の顔ランドマークロケーションの位置特定を開始することと、
●第1の画像中の第1の顔ランドマークの第4の顔ランドマークロケーションの推定を開始することであって、第4の顔ランドマークロケーションの推定が、オプティカルフロー式、および第3の顔ランドマークロケーションを用いて実施される、第4の顔ランドマークロケーションの推定を開始することと、
●第1の画像中の第1の顔ランドマークの第5の顔ランドマークロケーションの検出を開始することと
を行うステップをふくむ。
【0079】
第1の画像中の第1の顔ランドマークロケーションの位置特定は、第4の顔ランドマークロケーションに、および第5の顔ランドマークロケーションに基づく。
【0080】
第1の画像中の第1の顔ランドマークロケーションの位置特定は、第4の顔ランドマークロケーションと第5の顔ランドマークロケーションとを接続するセグメントの中間点を計算することをふくみ得る。特に、第1の顔ランドマークロケーションは、第4の顔ランドマークロケーションと第5の顔ランドマークロケーションとを接続するセグメントの中間点に実質的に対応する。
【0081】
たとえば、第2の画像は、ベクトル画像またはピクセルの第2の2次元格子、たとえば、ピクセルの矩形格子である。その上、第2の画像は、少なくともビットマップによって符号化され得る。
【0082】
第2の2次元格子のエントリは、列および行中に配列され得、各列および各行がそれぞれ列番号および行番号に関連付けられるというやり方で、昇順で列挙され得る。特に、第2の画像のピクセルのロケーションは、ピクセルが属する行の行番号
に、およびピクセルが属する列の列番号
によって一義的に決定され得る。これにより、第2の画像中の上記ピクセルの2次元画像座標は、2次元ベクトル
であり得る。たとえば、第2の画像のピクセルの2次元画像座標は、第2の画像の画像面参照フレーム中のピクセルの座標である。
【0083】
第1の画像および第2の画像は、特に、異なる時刻においてキャプチャされた同じ顔を備える画像である。特に、第1の画像および第2の画像は、たとえば、記録デバイスによって取得されたビデオの2つのフレームであり得る。
【0084】
特に、第1の画像がキャプチャされた時刻t、および第2の画像がキャプチャされた時刻t、は、式(t-t)=Δを満たす。たとえば、Δは、0.02秒から0.07秒の間の範囲にあり、特に、0.025秒から0.06秒の間の範囲に、より詳細には、0.03秒から0.05秒の間の範囲にある。たとえば、Δは、0.04秒に等しいことがある。
【0085】
その上、記録デバイスが、周波数υで画像をキャプチャするために動作させられる場合、Δは、式Δ=N/υを満たす。整数Nは、1から5の間の範囲に、特に、1から3の間の範囲にあり得る。より詳細には、整数Nは、1に等しいことがあり、換言すれば、第1の画像は、第2の画像に直ちに連続する。周波数υは、15Hzから40Hzの間の範囲に、特に、20Hzから35Hzの間の範囲に、より詳細には、25Hzから30Hzの間の範囲にあり得る。たとえば、周波数υは、27Hzに等しいことがある。
【0086】
第2の画像の面中の2次元参照フレームおよび第1の画像の平面における2次元参照フレームは、第1の画像および第2の画像が、ボクセル、たとえば、第1の層および第2の層を備えるピクセルの3次元格子を形成するというやり方で定義され得る。この場合、ピクセルの第1の層および第2の層は、それぞれ、第1の矩形格子および第2の矩形格子である。
【0087】
ボクセル中のピクセルのロケーションは、3次元ボクセル座標(x,y,t)によって表現され得、座標(x,y)は、ピクセルが属する層の2次元参照フレーム中のピクセルの2次元座標である。時間座標tは、ピクセルが属する層を指定する。特に、t=tまたはt=tである場合、ピクセルは、それぞれ、第1の層または第2の層に属する。
【0088】
第1の画像中のおよび/または第2の画像中の顔ランドマークのロケーションは、ボクセル中の対応する参照ピクセルのロケーションによって表現され得る。特に、上記顔ランドマークのロケーションは、参照ピクセルの3次元ボクセル座標(x,y,t)によって表現され得る。特に、第1の画像中の顔ランドマークロケーションの時間座標はtであり、第2の画像中の顔ランドマークロケーションの時間座標はtである。
【0089】
たとえば、スクリーンの上に視点を構築するための方法は、本発明の方法を実装するデバイスの動作時間間隔中に数回実施される。特に、動作時間間隔は、視点の構築が、たとえば、ハンズフリー人間機械対話を可能にするためにその間重要と考えられる間隔である。この場合、特に、第2の画像は、時刻tにおいて取得され、本発明の方法を用いて、第3の顔ランドマークロケーションの位置を特定し、最終的に、スクリーンの上の視点を計算するために使用される。次いで、第3の顔ランドマークロケーションの情報は、オプティカルフロー式を用いて第1の画像中の第1のランドマークロケーションを得るために使用され得る。
【0090】
特に、第1の画像中の第4の顔ランドマークロケーションのボクセル座標(x,y,t)は、以下の式、すなわち、
を満たし、(x,y,t)は、第2の画像中の第3の顔ランドマークのロケーションのボクセル座標である。速度ベクトル(vx,3,vy,3)は、第2の画像中の第3の顔ランドマークロケーションの速度を表す。速度ベクトルは、オプティカルフロー式を使用することによって得られ得、オプティカルフロー式に従って、ボクセルロケーション(x,y,t)にあり、速度(v,v)で移動するピクセルは、以下の制約、すなわち、
(x,y,t)v+I(x,y,t)v=-I(x,y,t) (9)
を満たす。
【0091】
I(x,y,t)は、ボクセル位置(x,y,t)における強さである。I、IおよびIは、それぞれ、x、yおよびtに関する強さの微分である。上記微分は、特に、ボクセルロケーション(x,y,t)において評価される。特に、第2の画像中の第3の顔ランドマークのロケーションにおけるオプティカルフロー式は、以下、すなわち、
(x,y,t)vx,3+I(x,y,t)vy,3=-I(x,y,t) (10)
のように書かれる。
【0092】
特に、オプティカルフロー式は、時刻tから時刻tまでの時間間隔中のシーン中の第1の顔ランドマークのロケーションの変化を予測することを可能にする。これにより、第4の顔ランドマークロケーションは、第2の画像中の第1の顔ランドマークのロケーションに基づく、第1の画像中の第1の顔ランドマークのロケーションの推定値である。
【0093】
式(9)および式(10)は、Lucas-Kanade法を使用することによって速度ベクトル(vx,3,vy,3)を計算するために使用され得る。特に、本発明による方法は、第2の画像中の複数のピクセルロケーションの位置特定を開始するステップをふくみ得る。特に、第2の画像中の複数のピクセルロケーションの各々と第3の顔ランドマークのロケーションとの間の距離、たとえば、ユークリッド距離は、上限距離(d)よりも小さいかまたは上限距離(d)に等しい。方法が、ボクセル座標(xp,1,yp,1,t)、(xp,2,yp,2,t)、...、(xp,P),yp,P),t)を用いてP個のピクセルロケーションの位置を特定する場合、速度ベクトル(vx,3,vy,3)は、以下の方程式、すなわち、
を解くことによって計算され得る。
【0094】
連立方程式(11)は、最小二乗手法を使用することによって解かれ得る。その上、以下の関係、すなわち、
が、満たされ得る。
【0095】
上限距離は、ピクセルの単位で表現され得、1ピクセルから10ピクセルの間の範囲に、特に、2ピクセルから8ピクセルの間の範囲にあり得る。たとえば、上限距離は、3ピクセルから6ピクセルの間の範囲にあり得、特に、3ピクセルまたは4ピクセルに等しいことがある。
【0096】
本発明は、第2の画像中の第1のピクセルロケーションの位置特定を開始するステップをふくみ得る。特に、第2の画像中の第1のピクセルロケーションと第3の顔ランドマークロケーションとの間の距離、たとえば、ユークリッド距離は、上限距離よりも小さいかまたは上限距離に等しい。Lucas-Kanade法に従って、速度ベクトル(vx,3,vy,3)は、P=1として式(11)を使用することによって計算され得、(xp,1,yp,1,t)は、第1のピクセルロケーションのボクセル座標である。
【0097】
たとえば、第2の画像中の第3の顔ランドマークロケーションの位置特定は、第1のロケーションアルゴリズムを用いて得られ得る。その上、第1の画像中の第1の顔ランドマークの第5の顔ランドマークロケーションの検出は、たとえば、第1のロケーションアルゴリズムを用いて第1の画像中の上記ランドマークロケーションの位置を特定することによって実施され得る。
【0098】
この実施形態では、第1の画像中の第1の顔ランドマークのロケーションは、第1の顔ランドマークの以前のロケーションについての、換言すれば、第2の画像中の上記ランドマークのロケーションについての情報を一貫して含めることによって改善される。このようにして、デバイスの動作時間間隔中に集められた情報の使用は、少なくとも部分的に最適化される。
【0099】
本発明の別の実施形態では、第1の顔ランドマークロケーションは、第4の顔ランドマークロケーションと第5の顔ランドマークロケーションとの間の重み付き平均に等しい。
【0100】
特に、重み付き平均は、第1の重みwおよび第2の重みwを備え、第1の重みおよび第2の重みは、それぞれ、第4の顔ランドマークロケーションおよび第5の顔ランドマークロケーションを乗算する。重み付き平均は、以下、すなわち、
のようにボクセル座標によって表現され得、(x,y,t)および(x,y,t)は、それぞれ、第1の画像中の第1の顔ランドマークロケーションおよび第5の顔ランドマークロケーションのボクセル座標である。特に、第1の顔ランドマークロケーションは、第4の顔ランドマークロケーションと第5の顔ランドマークロケーションとの間の中間点であり、これにより、第1の顔ランドマークロケーションの座標は、w=w=1/2として式(13)を使用することによって得られ得る。
【0101】
特に、この実施形態では、第1の画像中の第1の顔ランドマークロケーションの位置特定の精度は、重みwおよびwの値が、第3の顔ランドマークロケーションおよび第5の顔ランドマークロケーションの位置特定の精度に基づく場合、改善され得る。たとえば、第2の画像中の第3の顔ランドマークロケーションの位置特定が、第1の画像中の第5の顔ランドマークロケーションの位置特定よりも正確である場合、第1の重みは、第2の重みよりも大きいことがある。代わりに、第2の画像中の第3の顔ランドマークロケーションの位置特定が、第1の画像中の第5の顔ランドマークロケーションの位置特定よりも正確でない場合、第1の重みは、第2の重みよりも小さいことがある。画像中の顔ランドマークロケーションの位置特定の精度は、特に、画像中に描かれた顔のピッチ、ヨーおよびロールに依存し得る。
【0102】
本発明の実施形態によれば、第1の画像中の第1の顔ランドマークロケーションの位置特定は、ランドマーク距離に基づき、ランドマーク距離は、第3の顔ランドマークロケーションと第4の顔ランドマークロケーションとの間の距離である。
【0103】
特に、ランドマーク距離dは、第3の顔ランドマークロケーションと第4の顔ランドマークロケーションとの間のユークリッド距離である。ランドマーク距離は、ピクセルの単位で表現され得、および/または以下、すなわち、
のように書かれ得る。
【0104】
本発明のさらなる実施形態では、第1の重みは、ランドマーク距離の単調減少関数であり、第2の重みは、ランドマーク距離の単調増加関数である。
【0105】
この実施形態によれば、重み付き和に対する第4の顔ランドマークロケーションの寄与は、ランドマーク距離が増加するにつれてよりマージナルになる。このようにして、第1の画像中の第1の顔ランドマークロケーションの位置特定の精度は、ランドマーク距離が減少するにつれて、第3の顔ランドマークロケーションを使用することによって得られた第1の顔ランドマークのロケーションの推定値である第4の顔ランドマークのロケーションの精度が減少するので、改善される。
【0106】
本発明によれば、距離の、たとえば、ランドマーク距離の単調増加関数は、特に、上記距離が増加するにつれて減少しない関数である。代わりに、距離の、たとえば、ランドマーク距離の単調減少関数は、特に、距離が減少するにつれて増加しない関数である。
【0107】
たとえば、第1の重みおよび第2の重みは、以下、すなわち、
のように書かれ、min(dL,0,d)は、dL,0とdとの間の最小値を意味する。dL,0は、ピクセルの単位で表現され得、および/または1ピクセルから10ピクセルの間の範囲にあり得る。特に、dL,0は、3ピクセルから7ピクセルの間の範囲にあり、より詳細には、dL,0は、5ピクセルに等しい。
【0108】
本発明の方法の実施形態は、
●スクリーンの上の第2の視点の位置特定を開始することであって、第2の視点の位置特定が、少なくとも第1の視線ベクトルを用いて実施される、第2の視点の位置特定を開始すること
を行うステップをふくむ。
【0109】
この実施形態では、スクリーンの上の第1の視点の位置特定は、第2の視点を用いて実施される。
【0110】
第2の視点は、特に、スクリーンと第1の視線ラインとの間の交点である。スクリーンの上の第2の視点の位置特定は、面に関してスクリーンをモデル化することによって、および上記面と第1の視線ラインとの間の交点として第2の視点を構築することによって得られ得る。
【0111】
この場合、特に、スクリーンの上の第1の視点のロケーションは、第1の視線ベクトルのみに間接的に依存し得、第1の視線ベクトルに対する第2の視点のロケーションの依存性のみによる。
【0112】
本発明の実施形態では、スクリーンの上の第2の視点の位置特定は、較正関数を用いて実施される。較正関数は、少なくとも第1の較正視点のロケーション、および第1の較正視点のロケーションの推定値に依存する。
【0113】
特に、較正関数φは、以下のように、スクリーンの上の第2の視点の2次元スクリーン座標
からスクリーンの上の第1の視点の2次元スクリーン座標
を計算することを可能にする。
【0114】
たとえば、本発明の方法は、
●少なくとも第1の較正画像の取得を開始することと、
●第1の較正画像中の顔ランドマークの顔ランドマークロケーションの位置特定を開始することと、
●第1の較正画像中のさらなる顔ランドマークのさらなる顔ランドマークロケーションの位置特定を開始することと、
●第1の較正画像中の第1のROIの選択を開始することであって、第1の較正画像中の第1のROIの選択が、少なくとも第1の較正画像中の顔ランドマークロケーションおよび第1の較正画像中のさらなる顔ランドマークロケーションを使用することによって実施される、第1のROIの選択を開始することと、
●第1の較正視線ベクトルの構築を開始することであって、第1の較正視線ベクトルの構築が、少なくともANNを用いて実施され、ANNが、入力として少なくとも第1の較正画像の第1のROIを使用する、第1の較正視線ベクトルの構築を開始することと、
●スクリーンの上の第1の較正視点のロケーションの推定値の構築を開始することであって、上記構築が、少なくとも第1の較正視線ベクトルを用いて実施される、第1の較正視点のロケーションの推定値の構築を開始することと
を行うステップを少なくともふくみ得る。
【0115】
第1の較正点のロケーションの推定値は、特に、スクリーンと較正ラインとの間の交点である。較正ラインは、特に、第1の較正画像の第1のROI中に含まれている眼の眼球中心または虹彩中心と交差し、第1の較正視線ベクトルに平行であるラインである。スクリーンの上の第1の較正点のロケーションの推定値の構築は、面に関してスクリーンをモデル化することによって、および上記面と較正ラインとの間の交点として上記推定値を構築することによって得られ得る。
【0116】
本発明の方法は、ユーザにスクリーンの較正点を見るように促すことを開始するステップをさらにふくみ得る。特に、上記促すことは、第1の較正画像の取得の前に実施され得る。その上、方法は、第1の較正頭姿勢推定ベクトルの構築を開始するステップであって、上記ベクトルの構築が、少なくとも第1の較正画像中の顔ランドマークロケーションおよびさらなる顔ランドマークロケーションを使用することによって実施され得る、第1の較正頭姿勢推定ベクトルの構築を開始するステップをもふくみ得る。この場合、スクリーンの上の第1の較正視点の位置特定の推定値は、第1の較正頭姿勢推定ベクトルに基づき得る。較正関数はまた、第1の較正視線ベクトルに、および/または第1の較正頭姿勢推定ベクトルに依存し得る。
【0117】
特に、較正関数は、n個の較正視点のセットの各要素のロケーションに、およびn個の較正視点のセットの各要素の上記ロケーションの推定値に依存する。たとえば、nは、2から20の間に、特に、3から15の間にある。その上、nは、4から10の間にあり得、より詳細には、5に等しい。
【0118】
たとえば、n個の較正視点のセットの各要素のロケーションの推定値は、第1の較正視点のロケーションの推定値の構築をもたらすステップを使用することによって得られ得る。特に、n個の較正視点のセットの各要素のロケーションの推定値は、対応する較正視線ベクトルを、および随意に、対応する較正頭姿勢推定ベクトルを用いて構築される。たとえば、較正関数は、複数の較正視線ベクトルに、および/または複数の較正頭姿勢推定ベクトルに依存し得る。
【0119】
較正は、ユーザがスクリーンを見ている実際の状況を考慮に入れることによって第1の視点を構築することを可能にし、それにより、現実のセットアップ状況下での第1の視点のロケーションの精度を改善する。実際の状況は、たとえば、スクリーンに対するスクリーンの位置、ユーザが眼鏡を装着しているという、またはユーザが斜視の影響を受けているという事実をふくみ得る。
【0120】
たとえば、較正関数は、放射基底関数を備えるか、または放射基底関数からなり得る。特に、放射基底関数は、線形関数、または1に等しい指数をもつ多重調和スプラインであり得る。放射基底関数は、較正が相対的に低い量の較正点に基づくときでも、第1の視点のロケーションの精度の改善を可能にする。第1の入力データは、スクリーンの上の第2の視点の位置を特定するための情報を備え得る。特に、上記情報は、第2の視点の2次元スクリーン座標を備えるか、または第2の視点の2次元スクリーン座標からなり得る。代替的に、または上記と併せて、第1の入力データは、第1の視線ベクトルおよび/または頭姿勢推定ベクトルを特徴づけるための情報を備え得る。3次元ベクトル、たとえば、第1の視線ベクトルおよび頭姿勢推定ベクトルを特徴づけるための情報は、上記ベクトルの3次元座標を備えるか、または上記ベクトルの3次元座標からなり得る。
【0121】
本発明の実施形態によれば、較正関数は、少なくとも第1の較正視点のロケーションと第1の較正視点のロケーションの推定値との間の距離、たとえば、ユークリッド距離に依存する。
【0122】
第1の較正視点のロケーションと第1の較正視点のロケーションの推定値との間の距離に対する依存性は、較正が、相対的に低い量の較正点に、たとえば、10よりも少ない、特に、6よりも少ない較正点に基づくときでも、第1の視点のロケーションの精度の改善を可能にする。
【0123】
たとえば、n個の較正点のセットの汎用的な第jの要素の、スクリーンの上のロケーションが、2次元スクリーン座標(ac,j,bc,j)によって表され、上記汎用要素のロケーションの推定値が、2次元スクリーン座標(ae,j,be,j)によって表される場合、較正関数は、以下、すなわち、
のように書かれ得、
は、

との間の距離である。特に、
である。
【0124】
次元マトリックス
は、マトリックス
の逆数である。特に、後者のマトリックスの汎用エントリ
は、
によって与えられる。
【0125】
式(15)において定義されている較正関数は、驚くべき正確な較正をもたらす。
【0126】
本発明のさらなる実施形態によれば、スクリーンの上の第1の視点の位置特定は、カルマンフィルタを用いて実施される。
【0127】
特に、カルマンフィルタは、第1の視点の位置特定の精度を改善するためにスクリーン上の視点の一連の推定を使用するアルゴリズムである。たとえば、上記フィルタの第kの反復は、以下のように、第(k-1)の推定視点の2次元スクリーン座標(ak-1,bk-1)および速度(va,k-1,vb,k-1)によって、および第kの中間視点の2次元スクリーン座標
によって第kの推定視点の2次元スクリーン座標(a,b)および速度(va,k,vb,k)を計算することを可能にする。
【0128】
マトリックスKは、
以下のマトリックス
=R+H[Fk-1|k-1(F+Q](H (18)
に関して、以下、すなわち、
=[Fk-1|k-1(F+Q](H(S-1 (17)
のように表現され得る。
【0129】
特に、kの各値について、マトリックスPk|kは、以下、すなわち、
k|k=[(1-K)[Fk-1|k-1(F+Q](1-K+K(K] (19)
のように書かれ、1は、4×4単位行列である。マトリックスRおよびQは、それぞれ、第kの反復における観測ノイズの共分散、および第kの反復におけるプロセスノイズの共分散である。マトリックスFおよびHは、それぞれ、第kの反復における状態遷移モデルマトリックス、および第kの反復における観測モデルマトリックスである。特に、以下の関係、すなわち、
のうちの少なくとも1つが成り立つ。
【0130】
特に、δは、上記で説明された周波数υに関してδ=1υと記述され得る。マトリックスR、Q、Fおよび/またはHは、反復に依存しないことがある。以下の関係、すなわち、
のうちの少なくとも1つが成り立ち得、0は、ヌルマトリックスである。たとえば、第1の視点および第2の視点は、1回の反復をもつカルマンフィルタを使用することによって、たとえば、置換k→1をして式(16)~(21)を使用することによって計算され得る。この場合、第1の視点および第2の視点は、それぞれ、第1の推定視点および第1の中間視点である。この場合、特に、第0の推定視点は、式(21)において指定されているように、2次元スクリーン座標(a,b)をもち、速度(va,0,vb,o)をもつスクリーンの点であり得る。
【0131】
第1の視点は、P0|0およびVから始めてM回の反復をもってカルマンフィルタを使用することによって反復的に計算され得る。この場合、特に、第1の視点および第2の視点は、それぞれ、第Mの推定視点および第Mの中間視点である。たとえば、Mは、所与の整数である。代替的に、Mは、停止条件を満たすために必要とされる反復の最も少ない回数であり得る。たとえば、停止条件は、第Mの推定視点と第Mの中間視点との間の距離が、第1のしきい値未満であるという要件、および/または第Mの推定視点と第(M-1)の推定視点との間の距離が、第2のしきい値未満であるという要件を備え得る。特に、第1のしきい値は、第2のしきい値に等しいことがある。
【0132】
本発明の方法の実施形態によれば、スクリーンの上の第1の視点の位置特定は、第3の視点およびプロセスノイズの共分散行列を用いて実施され、プロセスノイズの共分散行列が、複数のエントリを備え、上記エントリが、第2の視点と第3の視点との間の距離の単調増加関数である。特に、上記共分散行列のエントリの各々は、第2の視点と第3の視点との間の距離の単調増加関数であり得る。
【0133】
たとえば、第1の視点と第3の視点との間の距離は、ピクセルの単位で表現され得る。特に、第2の視点と第3の視点との間の距離は、上記視点の間のユークリッド距離である。特に、第1の視点が、第Mの中間視点である場合、第3の視点は、第(M-1)の推定視点であり得、第1の視点と第3の視点との間の距離dM,M-1は、以下のように書かれる。
【0134】
プロセスノイズの共分散行列は、第kの反復におけるプロセスノイズの共分散行列Qであり得、以下の関係、すなわち、
のうちの少なくとも1つが成り立ち得る。
【0135】
たとえば、qは、距離dk,k-1の関数であり、以下、すなわち、
のように書かれ得、dk,k-1は、置換M→kをして式(23)を使用することによって得られ得る。特に、qは、10-35から10-25の間の範囲に、より詳細には、10-32から10-28の間の範囲にあり得る。その上、qは、10-25から10-15の間の範囲に、特に、10-22から10-18の間の範囲にあり得る。たとえば、qは、10-15から10-5の間の範囲に、より詳細には、10-12から10-8の間の範囲にある。たとえば、qは、10-5から10-1の間の範囲に、特に、10-3から0.5の間の範囲にある。その上、q、q、q、および/またはqは、それぞれ、10-30、10-20、10-10、および10-2に等しいことがある。さらに、dは、50ピクセルから220ピクセルの間の範囲に、より詳細には、100ピクセルから200ピクセルの間の範囲にあり得る。特に、dは、200ピクセルから400ピクセルの間の範囲に、より詳細には、220ピクセルから300ピクセルの間の範囲にある。さらに、dは、300ピクセルから600ピクセルの間の範囲に、より詳細には、400ピクセルから550ピクセルの間の範囲にある。その上、d、dおよび/またはdは、それぞれ、128ピクセル、256ピクセルおよび512ピクセルに等しいことがある。
【0136】
この実施形態では、プロセスノイズの共分散行列の数値重要性は、第kの反復の中間視点と第(k-1)の反復の推定視点との間の距離が減少するとき、低減される。このようにして、Lukas-Kanadeフィルタは、相対的に少ない回数の反復を使用することによって第1の視点の位置特定の相対的に高い精度を達成することを可能にする。
【0137】
本発明の方法のさらなる実施形態では、スクリーンの上の第1の視点の位置特定は、第3の視点および観測ノイズの共分散行列を用いて実施される。観測ノイズの共分散行列は、複数のエントリを備え、上記エントリは、第2の視点と第3の視点との間の距離の単調増加関数である。たとえば、上記共分散行列のエントリの各々は、第2の視点と第3の視点との間の距離の単調増加関数であり得る。
【0138】
観測ノイズの共分散行列は、第kの反復における観測ノイズの共分散Rであり得、以下の関係、すなわち、
のうちの少なくとも1つが成り立ち得る。
【0139】
たとえば、rは、距離dk,k-1の関数であり、以下、すなわち、
のように書かれ得る。
【0140】
特に、rは、10-35から10-25の間の範囲に、より詳細には、10-32から10-28の間の範囲にあり得る。その上、rは、10-5から10-1の間の範囲に、特に、10-3から0.5の間の範囲にあり得る。その上、rおよび/またはrは、それぞれ、10-30および10-2に等しいことがある。さらに、dは、50ピクセルから220ピクセルの間の範囲に、より詳細には、100ピクセルから200ピクセルの間の範囲にあり得る。特に、dは、128ピクセルに等しい。
【0141】
方法の実施形態は、
●第1の画像中の第6の顔ランドマークの第6の顔ランドマークロケーションの位置特定を開始することと、
●第1の画像中の第7の顔ランドマークの第7の顔ランドマークロケーションの位置特定を開始することと、
●第1の画像中の第2の関心領域の選択を開始することであって、第2の関心領域の選択が、少なくとも第6の顔ランドマークロケーションおよび第7の顔ランドマークロケーションを使用することによって実施される、第2の関心領域の選択を開始することと、
●少なくとも人工ニューラルネットワークを用いて第2の視線ベクトルの構築を開始することであって、人工ニューラルネットワークが、入力として少なくとも第2の関心領域を使用する、第2の視線ベクトルの構築を開始することと
を行うステップをふくむ。
【0142】
特に、この実施形態によれば、スクリーンの上の第1の視点の位置を特定することは、第1の視線ベクトルを、および第2の視線ベクトルを用いて実施される。たとえば、第2のROIは、第2の眼または第2の眼の一部分を少なくとも備える。特に、第2の眼は、第1の眼とは異なる。第2のROIは、第2のビットマップによって符号化され得る。この実施形態では、第1の視点のロケーションは、両方の眼の視線ベクトルについての情報を使用することによって得られる。上記ロケーションの精度は、それにより改善される。
【0143】
第2の視線ベクトルを構築するとき、ANNは、入力として第2のROIを使用する。この場合、特に、ANN入力は、第2のROIのピクセルの位置および色についての情報を備え、より詳細には、ANN入力は、第2のビットマップを備えるか、または第2のビットマップからなり得る。
【0144】
本発明による方法は、第4の視点および第5の視点の位置特定を開始するステップであって、第4の視点および第5の視点の位置特定が、それぞれ、第1の視線ベクトルおよび第2の視線ベクトルを用いて実施される、第4の視点および第5の視点の位置特定を開始するステップをふくみ得る。特に、第1の視点または第2の視点のスクリーン座標
は、以下のように、第4の視点のスクリーン座標
の、および第5の視点のスクリーン座標
の重み付き和によって得られ得る。
【0145】
たとえば、第1の視点または第2の視点は、第4の視点のロケーションと第5の視点のロケーションとの間の中間点と実質的に一致し得、すなわち、
は、u=u=1/2を設定することによって上記の式から得られ得る。重みuおよびuは、頭姿勢推定ベクトルに依存し得る。特に、これらの重みの依存性は、以下のような、すなわち、
-ユーザの頭姿勢により、第4の視点の構築が、第5の視点の構築よりも正確でない場合、uがu未満であり、
-ユーザの頭姿勢により、第4の視点の再構築が、第5の視点の構築よりも正確である場合、uがuよりも大きい、
ようなものである。
【0146】
たとえば、第4の視点の構築は、それぞれ、第1の眼の再構築が、第2の眼の再構築よりも正確である場合、第5の視点の構築よりも正確であり、第1の眼の再構築が、第2の眼の再構築よりも正確でない場合、第5の視点の構築よりも正確でない。たとえば、ユーザの顔の一方の眼の再構築は、他方の眼の再構築よりも正確であり得、これは、第1の画像中で、後者の眼が、たとえば、ユーザの鼻によって少なくとも部分的にじゃまされるというやり方で、ユーザの頭が回転している場合である。
【0147】
本発明の方法は、スクリーンの上の第1の視点のロケーションを受け取るステップ、および/またはスクリーンの上の第1の視点のロケーションの表示を開始するステップをさらにふくみ得る。
【0148】
本発明によれば、画像の取得、ランドマークまたは視点の位置特定、関心領域の選択、ベクトルの構築、および/または顔ランドマークの推定など、アクションを開始するステップは、特に、上記アクションを実施することによって実施され得る。たとえば、画像の、たとえば、第1の画像または第2の画像の取得を開始するステップは、上記画像を取得することによって実施され得る。類似的に、画像中の顔ランドマークロケーションの位置特定を開始するステップは、上記画像中の上記顔ランドマークロケーションの位置を特定することによって実施され得る。たとえば、第1の視線ベクトルまたは頭姿勢推定ベクトルなど、ベクトルの構築を開始するステップは、上記ベクトルを構築することによって実施され得る。
【0149】
画像の取得、ランドマークまたは視点の位置特定、ROIの選択、ベクトルの構築、および/または顔ランドマークの推定など、アクションを開始するステップは、特に、専用のデバイスに上記アクションを実施するように命令することによって実施され得る。たとえば、画像の、たとえば、第1の画像または第2の画像の取得を開始するステップは、記録デバイスに上記画像を取得するように命令することによって実施され得る。類似的に、画像中の顔ランドマークロケーションの位置特定を開始するステップは、専用のコンピューティングデバイスに上記画像中の上記顔ランドマークロケーションの位置を特定するように命令することによって実施され得る。
【0150】
本発明によれば、第1のアクションを開始するステップは、1つまたは複数の他のアクションを開始するステップとともに実施され得る。たとえば、第1のランドマークの位置特定を開始するステップ、および第2のランドマークの位置特定を開始するステップは、複数の顔ランドマークの位置特定を開始することによって一緒に実施され得、上記複数は、第1のランドマークおよび第2のランドマークを含む。
【0151】
その上、第1のROIの選択を開始するステップは、第1の顔ランドマークおよび第2の顔ランドマークの位置特定を開始するステップとともに実施され得る。たとえば、本発明を行うコンピューティングデバイスは、別のコンピューティングデバイスに第1の顔ランドマークおよび第2の顔ランドマークの位置を特定するように命令し得る。後者のデバイスは、後者のデバイスがこの位置特定を実施した後、後者のデバイスが第1のROIの選択を実施するというやり方で構成され得る。この場合、本発明によれば、第1の顔ランドマークおよび第2の顔ランドマークの位置特定を開始するステップは、第1のROIの選択をも開始する。
【0152】
一実施形態では、本発明による方法のすべてのステップは、一緒に実施され得る。たとえば、本発明を行うコンピューティングデバイスは、別のコンピューティングデバイスに第1の画像を取得するように命令し得る。後者のデバイスが、上記画像を取得した後、後者のデバイスは、第1のランドマークおよび第2のランドマークの位置を特定し、第1のROIを選択し、第1の視線ベクトルを構築し、次いで、スクリーンの上の第1の視点の位置を特定する。この場合、本発明によれば、第1の画像の取得を開始するステップは、第1の顔ランドマークロケーションおよび第2の顔ランドマークロケーションの位置特定、第1のROIの選択、第1の視線ベクトルの構築、およびスクリーンの上の第1の視点の位置特定をも開始する。
【0153】
本明細書を通して、本発明の方法のステップは、所与の順序に従って開示される。しかしながら、この所与の順序は、本発明のステップがそれに従って実施される発生順を必ずしも反映するとは限らない。
【0154】
本発明は、本発明による方法を実施するように構成されたプロセッサを少なくとも備えるデータ処理システムにも言及する。
【0155】
その上、本発明は、コンピュータプログラム製品であって、コンピュータプログラム製品がコンピューティングデバイスによって実行されたとき、コンピューティングデバイスが本発明による方法を行うことを引き起こす命令を備える、コンピュータプログラム製品に言及する。
【0156】
本発明は、コンピュータデバイスによって実行されたとき、コンピュータデバイスが本発明による方法を行うことを引き起こす命令を備える、コンピュータ可読記憶媒体にも関係する。コンピュータ可読媒体は、特に、非一時的である。
【0157】
本発明の例示的な実施形態が、添付図に関して以下で説明される。図および対応する発明を実施するための形態は、本発明のより良い理解を提供するように働くにすぎず、特許請求の範囲において定義されている本発明の範囲のいかなる限定をもなさない。
【図面の簡単な説明】
【0158】
図1】本発明による、データ処理システムの第1の実施形態の概略図である。
図2】本発明による方法の第1の実施形態の動作のフロー図である。
図3a】本発明による方法の第1の実施形態を実施することによって取得された第1の画像の概略表現である。
図3b】本発明による方法の第1の実施形態を実施することによって位置を特定された顔ランドマークの概略表現である。
図3c】本発明による方法の第1の実施形態を実施することによって選択された第1のROIの概略表現である。
図4a】本発明による方法の第1の実施形態を実施することによって得られたヒートマップの概略表現である。
図4b】本発明による方法の第1の実施形態を実施することによって得られたヒートマップの概略表現である。
図5】本発明による方法の第2の実施形態の動作のフロー図である。
【発明を実施するための形態】
【0159】
図1は、本発明による、データ処理システム100の第1の実施形態の概略図である。上記データ処理システム100は、コンピューティングデバイスまたはコンピューティングデバイスのクラスタであり得る。データ処理システム100は、互いとデータ通信している、処理要素110および記憶手段120を備える。
【0160】
処理要素110は、CPUおよび/またはGPUからなるか、あるいはCPUおよび/またはGPUを備え得る。その上、処理要素110は、本発明による方法のステップを実施するように構成された数個のモジュール111~116を備える。第1の開始モジュール111は、少なくとも第1の画像を取得することを開始するように構成される。たとえば、第1の開始モジュール111は、第1の画像を取得、たとえば、キャプチャするように構成された取得モジュールであり得る。
【0161】
第2の開始モジュール112は、第1の画像中の第1の顔ランドマークの第1の顔ランドマークロケーションの位置特定を開始するように構成される。第2の開始モジュール112は、第1の画像中で第1の顔ランドマークの第1の顔ランドマークロケーションの位置を特定するように構成された第1の位置特定モジュールであり得る。第3の開始モジュール113は、第1の画像中の第2の顔ランドマークの第2の顔ランドマークロケーションの位置特定を開始するように構成される。特に、第2の開始モジュール112は、第2の顔ランドマークの第2のランドマークロケーションの位置を特定するように構成された第2の位置特定モジュールであり得る。
【0162】
第3の開始モジュール113および第2の開始モジュール112は、同じ開始モジュールであり得、たとえば、第1の画像中での複数の顔ランドマークロケーションの位置特定を開始するように構成され得、上記複数は、第1の顔ランドマークの第1の顔ランドマークロケーションおよび第2の顔ランドマークの第2の顔ランドマークロケーションを含む。
【0163】
第4の開始モジュール114は、第1のROIの選択を開始するように構成され、特に、少なくとも第1の顔ランドマークロケーションおよび第2の顔ランドマークロケーションを使用することによって第1のROIを選択するように構成された選択モジュールである。第5の開始モジュール115は、第1の視線ベクトルの構築を開始するように構成される。たとえば、第5の開始モジュール115は、ANNを用いて上記視線ベクトルを構築するように構成された構築モジュールである。
【0164】
第6の開始モジュール116は、代わりに、スクリーンの上の第1の視点の位置特定を開始するように構成される。たとえば、第6の開始モジュール116は、少なくとも第1の視線ベクトルを用いてスクリーンの上の第1の視点の位置を特定するように構成された第3の位置特定モジュールである。
【0165】
記憶手段120は、揮発性1次メモリ121および/または不揮発性1次メモリ122を備え得る。記憶手段120は、オペレーティングシステムおよび/またはANNを記憶し得る2次メモリ123をさらに備え得る。その上、2次メモリ123は、コンピュータプログラム製品であって、コンピュータプログラム製品が処理要素110によって実行されたとき、データ処理システム100が本発明による方法を行うことを引き起こす命令を備える、コンピュータプログラム製品を記憶し得る。2次メモリ123は、第1の画像および/または第1のROIについての情報を記憶し得る。
【0166】
2次メモリ123、1次メモリ121、122、および処理要素110は、同じハウジング内に物理的に収容される必要はなく、代わりに、互いから空間的に分離され得る。特に、2次メモリ123、1次メモリ121、122、および処理要素110は、互いから空間的に分離され得、ワイヤードおよび/またはワイヤレス媒体(図示せず)を介して互いにデータを交換し得る。
【0167】
データ処理システム100は、上記システム100が入力/出力デバイス(たとえば、ディスプレイ、キーボード、タッチスクリーン、プリンタ、マウスなど)と通信することを可能にする入力/出力(I/O)インターフェース140をさらに備え得る。
【0168】
データ処理システム100は、システム100を好適なネットワーク(図示せず)と接続するように構成されたネットワークインターフェースコントローラ(NIC)130をさらに備え得る。本発明によれば、好適なネットワークは、たとえばイントラネット、インターネットまたはセルラーネットワークであり得る。たとえば、NIC130は、データ処理システム100が、たとえば、顔ランドマークの位置特定、第1のROIの選択、第1の視線ベクトルの構築、および/または第1の視点の位置特定を実施する別のコンピューティングデバイス(図示せず)とデータを交換することを可能にし得る。
【0169】
特に、データ処理システム100は、少なくとも第1の画像をキャプチャするように構成された記録デバイス160を備える。たとえば、記録デバイスは、フォトカメラおよび/またはビデオカメラであり得る。図1中に示されているように、記録デバイス160は、I/Oインターフェース140を介して処理要素110に接続され得る。たとえば、記録デバイス160は、NIC130を介してI/Oインターフェースにワイヤレスに接続され得る。データ処理システム100は、スクリーン151を備え、I/Oインターフェース140を介して処理要素110に接続された、ディスプレイユニット150を備え得る。特に、上記ユニット140は、NIC130を介してI/Oインターフェースにワイヤレスに接続され得る。記録デバイス160および/またはディスプレイユニット150は、I/Oインターフェース140または周辺デバイスとともに使用するための、関連する命令およびデータを記憶するためのそれら自体のメモリをもつインテリジェントデバイスであり得る。
【0170】
図2は、本発明による方法の第1の実施形態の動作のフロー図200である。特に、本発明による方法の第1の実施形態は、たとえば、上記で説明され、図1中に概略的に描かれているデータ処理システム100であり得る、第1のコンピューティングデバイス(図示せず)によって実施され得る。ステップ210において、第1のコンピューティングデバイスは、図3a中に概略的に表されている、第1の画像300の取得を開始する。特に、第1の画像300は、記録デバイス160を使用することによって取得される。
【0171】
ステップ220および230において、第1のコンピューティングデバイスは、第1の画像300中の第1の顔ランドマークの第1の顔ランドマークロケーション301の位置特定、および第1の画像300中の第2の顔ランドマークの第2の顔ランドマークロケーション302の位置特定を開始する。特に、上記ステップは、それらのロケーションが交差ドットによって図3b中に表されている68個の顔ランドマークの、第1の画像中での位置特定を開始することによって一緒に実施され得る。たとえば、上記顔ランドマークの位置特定は、第1のロケーションアルゴリズムを用いて実施される。特に、第1の顔ランドマークおよび第2の顔ランドマークは、それぞれ、第3の眼ランドマーク301および第4の眼ランドマーク302である。その上、68個の顔ランドマークのセットは、第5の眼ランドマーク303、第6の眼ランドマーク304、第7の眼ランドマーク305、および第8の眼ランドマーク306を備える。
【0172】
ステップ240において、第1のコンピューティングデバイスは、図3c中に概略的に表されている第1のROI310の選択を開始する。第1のROI310の選択は、上述の6つの眼ランドマーク301~306を使用することによって実施される。特に、第1のROI310は、整数CからCの間にある列番号をもち、整数RからRの間にある行番号をもつピクセルからなり、C、C、RおよびRは、式(4)を満たす。
【0173】
ステップ250において、第1のコンピューティングデバイスは、第1の視線ベクトルの構築を開始する。この視線ベクトルの構築は、ANNによって実施される。特に、ANN出力は、第1から第18に及ぶ、18個のヒートマップ401~418を備える。これらのヒートマップは、図4aおよび図4b中に概略的に描かれている。より具体的には、ヒートマップ401および402は、それぞれ、虹彩中心および眼球中心のピクセルごとの信頼度を符号化する。ヒートマップ403~410の各々は、異なる眼境界ランドマークが、異なるヒートマップに関連するというやり方で、第1の眼境界ランドマークから第8の眼境界ランドマークのうちの1つのロケーションのピクセルごとの信頼度を符号化する。その上、ヒートマップ411~418の各々は、異なる虹彩境界ランドマークが、異なるヒートマップに関連するというやり方で、第1の虹彩境界ランドマークから第8の虹彩境界ランドマークのうちの1つのロケーションのピクセルごとの信頼度を符号化する。
【0174】
図4aおよび図4b中に概略的に描かれているヒートマップ401~418において、ピクセルごとの信頼度が最も大きい値をとる領域は、シェーディングされているか、または黒でハイライトされている。その上、ピクセルごとの信頼度の値は、シェーディングされている領域中よりも暗色領域中で大きい。ヒートマップ401~418の各々に関連する眼ランドマークのロケーションは、ヒートマップ401~418の上記各々の暗色領域中の点のロケーションと一致し得る。特に、虹彩中心の、眼球中心の、8つの眼境界ランドマークの、および8つの虹彩境界ランドマークのロケーションは、soft-argmax層を用いて上述の18個のヒートマップ401~418を処理することによって得られる。
【0175】
視線ベクトルの構築は、SVRアルゴリズムを用いて実施される。特に、SVRアルゴリズムは、入力として、18個のヒートマップ401~418を使用することによって得られた、眼球中心ロケーション、虹彩中心ロケーション、8つの虹彩境界ランドマークロケーションおよび8つの眼境界ランドマークロケーションを使用する。
【0176】
ステップ260において、第1のコンピューティングデバイスは、スクリーンの上の第1の視点の位置特定を開始する。第1の視点は、特に、スクリーン151と第1の視線ラインとの間の交点である。たとえば、スクリーン151の上の第1の視点の位置特定は、面に関してスクリーンをモデル化することによって、および上記面と第1の視線ラインとの間の交点として第1の視点を構築することによって得られ得る。
【0177】
図5は、本発明による方法の第2の実施形態の動作のフロー図500である。特に、上記実施形態は、たとえば、上記で説明され、図1中に概略的に描かれているデータ処理システム100であり得る、第2のコンピューティングデバイス(図示せず)によって実施され得る。この実施形態によれば、第1の視点は、式(21)において定義されているP0|0およびVから始めてカルマンフィルタを使用することによって反復的に計算される。
【0178】
カルマンフィルタの汎用反復は、ステップ505において値0に初期化されるカウンタmによって表される。m番目の反復中に、第2のコンピューティングデバイスは、特に、記録デバイス160を使用することによって取得され得るm番目の中間画像の取得を開始する(ステップ515)。特に、第1の画像およびm番目の中間画像は、同じ対象を備え、異なる時刻においてキャプチャされる。たとえば、第1の画像およびm番目の中間画像は、たとえば、本発明のコンピューティングデバイスの記録デバイス160によってキャプチャされたビデオの2つのフレームである。
【0179】
m番目の反復のステップ520および525において、第2のコンピューティングデバイスは、顔ランドマークの顔ランドマークロケーションの、およびさらなる顔ランドマークのさらなる顔ランドマークロケーションの、m番目の中間画像中での位置特定を開始する。上記ステップは、第1のロケーションアルゴリズムを用いて68個の顔ランドマークの位置特定を開始することによって一緒に実施され得る。
【0180】
特に、m番目の中間画像中の68個の顔ランドマークの分布は、図3a中に概略的に描かれている、68個の顔ランドマークの分布に類似している。特に、m番目の中間画像中に位置する68個の顔ランドマークのセットは、左眼について6つの眼ランドマークを、および右眼について6つの眼ランドマークを備える。
【0181】
m番目の反復のステップ530において、第2のコンピューティングデバイスは、m番目の中間ROIの選択を開始する。特に、m番目の中間ROIは、眼、たとえば、左眼を備え、左眼の6つの眼ランドマークを使用することによって選択される。特に、m番目の中間ROIは、整数CからCの間にある列番号をもち、整数RからRの間にある行番号をもつピクセルからなる。整数C、C、RおよびRは、式(4)および左眼の6つの眼ランドマークの、m番目の中間画像中の座標を使用することによって計算され得る。m番目の中間画像中のm番目の中間ROIの位置は、図3b中に概略的に描かれている第1のROIの位置に類似する。
【0182】
ステップ535において、第2のコンピューティングデバイスは、ANNを使用することによってm番目の中間視線ベクトルの構築を開始する。第2の実施形態のANNは、本発明による方法の第1の実施形態によって使用されたANNと同等である。特に、ANNは、入力としてm番目の中間ROIのピクセルを使用し、出力として18個のヒートマップを提供する。上記ヒートマップは、図4aおよび図4b中に概略的に描かれているヒートマップに類似し、左眼の虹彩中心の、左眼の眼球中心の、左眼の8つの眼境界ランドマークの、および左眼の8つの虹彩境界ランドマークの、m番目の中間画像中のロケーションを見つけるために使用される。たとえば、上記ランドマークは、soft-argmax層を用いて18個のヒートマップを処理することによって得られ得る。
【0183】
次いで、左眼の虹彩中心の、左眼の眼球中心の、左眼の8つの眼境界ランドマークの、および左眼の8つの虹彩境界ランドマークのロケーションは、m番目の中間視線ベクトルを構築するSVRアルゴリズムの入力として使用される。
【0184】
m番目の反復のステップ540において、第2のコンピューティングデバイスは、スクリーンの上のm番目の中間視点の位置特定を開始する。上記視点は、特に、スクリーンとm番目の中間視線ラインとの間の交点である。たとえば、スクリーンの上の第1の視点の位置特定は、面に関してスクリーンをモデル化することによって、および上記面とm番目の中間視線ラインとの間の交点として第1の視点を構築することによって得られ得る。特に、m番目の中間視線ラインは、m番目の中間ROI中に含まれている眼の眼球中心と交差する、およびm番目の中間視線ベクトルに平行であるラインである。
【0185】
m番目の反復のステップ545において、第2のコンピューティングデバイスは、スクリーンの上のm番目の推定視点の計算を開始する。この視点の計算は、特に、m番目の中間視点、第(m-1)の反復中に計算された第(m-1)の推定視点、および置換k→mをして式(16)~(26)を使用することによって実施される。
【0186】
m番目の反復のステップ550において、第2のコンピューティングデバイスは、m番目の推定視点が停止条件を満たすかどうかをチェックする。特に、停止条件は、m番目の推定視点とm番目の中間視点との間のユークリッド距離が、第1のしきい値未満であるという要件、および/またはm番目の推定視点と第(m-1)の推定視点との間の距離が、第2のしきい値未満であるという要件を備える。
【0187】
停止条件が満たされない場合、第2のコンピューティングデバイスは、1だけカウンタの値を増分し(ステップ510を参照)、第(m+1)の反復を実施する。停止条件が満たされた場合、ステップ555において、第2のコンピューティングデバイスは、第1の視点の位置特定を開始し、上記位置特定は、m番目の反復において構築されたm番目の推定視点に等しくなるように上記視点を設定することによって実施される。
図1
図2
図3a
図3b
図3c
図4a
図4b
図5