【文献】
Li Sun, et al.,Real-Time Gaze Estimation with Online Calibration,IEEE MultiMedia,2014年,Vol. 21, Issue 4,28-37
(58)【調査した分野】(Int.Cl.,DB名)
被観察者の顔を撮像する撮像手段によって、前記被観察者の目に対して光照射手段から光を照射したときに撮像された前記顔を表す顔画像の時系列から、前記顔画像上の前記顔の目の角膜反射像と、前記顔画像上の前記顔の目の瞳孔中心位置と、予め定められた3次元眼球モデルとに基づいて、カメラ座標系における3次元の視線ベクトルの時系列を計算する第1視線ベクトル計算手段と、
前記顔画像の時系列と、予め定められた3次元顔形状モデルとに基づいて、前記顔の3次元の位置姿勢の時系列を推定する顔位置姿勢推定手段と、
前記顔位置姿勢推定手段によって推定された前記顔の3次元の位置姿勢の時系列と、前記第1視線ベクトル計算手段によって計算された前記視線ベクトルの時系列とに基づいて、前記3次元顔形状モデルの座標系における眼球中心の3次元位置の時系列を計算する眼球中心位置計算手段と、
前記眼球中心位置計算手段によって計算された前記3次元顔形状モデルの座標系における前記眼球中心の3次元位置の時系列に基づいて、前記3次元顔形状モデルの座標系における前記眼球中心の3次元位置を、固定パラメータとして計算する固定パラメータ計算手段と、
前記撮像手段によって撮像された前記顔を表す顔画像上の前記顔の目の瞳孔中心位置と、前記固定パラメータ計算手段によって計算された前記眼球中心の3次元位置と、前記顔位置姿勢推定手段によって推定された前記顔の3次元の位置姿勢とに基づいて、前記カメラ座標系において、前記眼球中心の3次元位置から瞳孔中心の3次元位置へ向かう3次元の視線ベクトルを計算する第2視線ベクトル計算手段と、
を含む視線計測装置。
前記眼球中心位置計算手段によって計算された前記3次元顔形状モデルの座標系における前記眼球中心の3次元位置の時系列に基づいて、前記3次元顔形状モデルの座標系における前記眼球中心の3次元位置が変化しないことを利用して、眼球構造パラメータを固定パラメータとして計算する眼球構造パラメータ計算手段を更に含む請求項1記載の視線計測装置。
前記第2視線ベクトル計算手段は、前記撮像手段によって撮像された前記顔を表す顔画像上の前記顔の目の瞳孔中心位置と、前記撮像手段に関するパラメータとに基づいて、前記瞳孔中心位置の3次元位置を計算し、
前記顔位置姿勢推定手段によって推定された前記顔の3次元の位置姿勢に基づいて、前記固定パラメータ計算手段によって計算された前記眼球中心の3次元位置を、前記カメラ座標系における前記眼球中心の3次元位置に変換し、
前記カメラ座標系において、前記眼球中心の3次元位置から前記瞳孔中心の3次元位置へ向かう3次元の視線ベクトルを計算する請求項1〜請求項4の何れか1項記載の視線計測装置。
【発明を実施するための形態】
【0019】
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、撮像された顔画像から、視線ベクトルを推定する視線計測装置に本発明を適用した場合を例に説明する。
【0020】
<本発明の実施の形態の概要>
本発明の実施の形態では、単眼カメラ方式のドライバーモニターで視線検出を実現する。ここで、3次元眼球モデルを用いた代表的な視線検出に関する従来技術は以下のものがある。
【0021】
(方式1)目じりと目頭から推測した眼球中心と瞳孔中心を使って視線を計算する(
図10(A))。
【0022】
(方式2)角膜反射像から計算した角膜曲率中心と瞳孔中心を使って視線を計算する(
図10(B))。
【0023】
(方式3)上記の(方式1)と(方式2)とを切り替えて視線を計算する。
【0024】
上記の(方式1)では、ロバストだが眼球中心推定法に問題があり視線精度が低い。
【0025】
上記の(方式2)では、視線精度は高いが、角膜反射像が得られる場面に限られるため、計測できる範囲が狭くロバスト性が低い。
【0026】
上記の(方式3)では、(方式2)を使う場面では視線精度が上がるが、(方式1)を使う場面では視線精度は変わらない。
【0027】
そこで、本発明の実施の形態では、上記の(方式2)で計算した視線を用いて、顔形状モデルの座標系における眼球中心パラメータを固定パラメータとして求め、上記の(方式1)で、顔形状モデルの座標系における眼球中心パラメータを用いて、視線精度を向上させる。これにより、眼球中心位置精度が向上するので、上記の(方式3)における、(方式1)を使う場面でも視線精度が向上する。また、上記の(方式2)でキャリブレーション不要な方式が提案されているが複数カメラと複数光源が必要となる一方、本発明の実施の形態では、1つのカメラと1つの光源でキャリブレーションを不要にできる。
【0028】
<第1の実施の形態>
<視線計測装置の構成>
図1に示すように、第1の実施の形態に係る視線計測装置10は、対象とする被験者の顔を含む画像を撮像するCCDカメラ等からなる画像撮像部12と、被験者の目に対して光を照射する照射部13と、画像処理を行うコンピュータ14と、CRT等で構成された出力部16とを備えている。
【0029】
画像撮像部12は、1つのカメラであり、照射部13は、例えば、1つの近赤外LEDである。本実施の形態では、画像撮像部12の撮像方向と照射部13の照射方向とが同軸となるように配置されている場合を例に説明する。なお、画像撮像部12の撮像方向と照射部13の照射方向とが同軸となるように配置する方法としては、例えば、ハーフミラーを用いる方法などが考えられる。
【0030】
コンピュータ14は、CPU、後述する眼球中心計算処理ルーチン及び視線計測処理ルーチンのプログラムを記憶したROM、データ等を記憶するRAM、及びこれらを接続するバスを含んで構成されている。このコンピュータ14をハードウエアとソフトウエアとに基づいて定まる機能実現手段毎に分割した機能ブロックで説明すると、
図1に示すように、コンピュータ14は、画像撮像部12から出力される濃淡画像である顔画像を入力する画像入力部20と、3次元の顔形状モデルを記憶している顔形状モデル記憶部22と、画像入力部20の出力である顔画像から、顔の3次元の位置姿勢を推定する顔位置姿勢推定部24と、画像入力部20の出力である顔画像の時系列から、角膜反射法(
図10(B)参照)を用いて、カメラ座標系における視線ベクトルの時系列を計算する角膜反射法視線検出部28と、角膜反射法視線検出部28によって計算された視線ベクトルの時系列に基づいて、カメラ座標系における眼球中心座標の時系列を計算するカメラ座標系眼球中心座標計算部30と、カメラ座標系における眼球中心座標の時系列と、顔の3次元の位置姿勢の時系列とに基づいて、顔形状モデル座標系における眼球中心座標の時系列に変換する眼球中心座標変換部32と、顔形状モデル座標系における眼球中心座標の時系列に基づいて、顔形状モデル座標系における眼球中心座標を固定パラメータとして計算する固定パラメータ計算部33と、固定パラメータ計算部33によって得られた顔形状モデル座標系における眼球中心座標を記憶する固定パラメータ記憶部34と、画像入力部20の出力である顔画像と、固定パラメータ記憶部34に記憶されている顔形状モデル座標系における眼球中心座標とに基づいて、瞳孔中心と眼球中心とを用いて、カメラ座標系における視線ベクトルを計算する眼球中心方式視線検出部36とを備えている。なお、角膜反射法視線検出部28が、第1視線ベクトル計算手段の一例であり、眼球中心方式視線検出部36が、第2視線ベクトル計算手段の一例である。カメラ座標系眼球中心座標計算部30、及び眼球中心座標変換部32が、眼球中心位置計算手段の一例である。
【0031】
画像入力部20は、例えば、A/Dコンバータや1画面の画像データを記憶する画像メモリ等で構成される。
【0032】
顔形状モデル記憶部22には、予め求められた3次元の顔形状モデルに関する情報(例えば、各顔特徴点の3次元座標)が記憶されている。
【0033】
顔位置姿勢推定部24は、顔画像から、3次元の顔形状モデルの各顔特徴点に対応する特徴点を抽出する。
【0034】
例えば、予め求められた全ての顔特徴点のそれぞれに対応する、顔画像上の特徴点の位置を、画像パターンを用いて求める。
【0035】
顔位置姿勢推定部24は、抽出された顔特徴点に対応する特徴点に基づいて、以下に説明するように、顔の3次元の位置姿勢として、カメラ座標系(
図2参照)での顔の回転(ψc, θc, φc)と顔形状モデルの原点位置(Xc, Yc, Zc)とを推定する。
【0036】
まず、顔形状モデル座標系(
図2参照)での(Xmi, Ymi, Zmi)とカメラ座標系での同じ点(Xci, Yci, Zci)の関係は以下の(1)式で表わされる。
【0038】
画像の透視投影の式から、ピクセル単位で表わされる焦点距離をfとして、以下の(2)式が得られる。
【0039】
(xi, yi)=(f Xci/Zci, f Yci/Zci) ・・・(2)
【0040】
また、求めたい位置姿勢の変数は(ψc, θc, φc)と(Xc, Yc, Zc)であり、顔形状モデル座標系(
図2参照)での(Xmi, Ymi, Zmi)は固定値である。従って、最初の(ψc, θc, φc)と(Xc, Yc, Zc)として適切な初期値を使い、以降は前回フレームでの推定値を使うことにすれば、(xi, yi)は(ψc, θc, φc)と(Xc, Yc, Zc)を使って数値計算可能である。
【0041】
従って、2乗誤差値e=Σ
i=0〜N-1((x
i-xo
i)
2+ ((y
i -yo
i)
2)が計算可能になり、eを最小化する非線形最適化問題として、今回フレームにおける(ψc, θc, φc)と(Xc, Yc, Zc)を求め、カメラ座標系での顔の回転(ψc, θc, φc)及び顔形状モデルの原点位置(Xc, Yc, Zc)の推定結果とする。
【0042】
なお、非線形最適化の具体的な手法は、拡張カルマンフィルタ、最急降下法、Newton法、Gauss−Newton法、Levenberg-Marquardt法などが適用可能である。
【0043】
また、3次元の顔形状モデルの原点位置は、計算上は任意に設定可能だが、合理的な設計指針として人体の左右首振り・上下首振り動作時の回転中心に近い場所を、原点位置として使うことが好ましい。
【0044】
この場合には、顔形状モデルのデータ収集時に各人の首振り回転中心の眼からの上下距離(y)・奥行き距離(z)を測定しておき、それらの平均値として設定する。左右方向(x)は3次元の顔形状モデルの左右対称面上に載るようにすればよい。
【0045】
顔位置姿勢推定部24は、推定されたカメラ座標系での顔の回転(ψc, θc, φc)を、カメラ座標系を顔形状モデルの座標系へ変換するための回転成分Rとし、顔形状モデル原点位置(Xc, Yc, Zc)を、カメラ座標系を顔形状モデルの座標系へ変換するための並進成分tとする。
【0046】
角膜反射法視線検出部28は、
図3に示すように、眼球モデル記憶部40と、角膜反射像位置推定部42と、角膜曲率中心計算部44と、視線ベクトル計算部46とを備えている。
【0047】
眼球モデル記憶部40には、顔形状モデル座標系における仮の眼球中心座標E´と、角膜曲率に応じた球体及び眼球を表す球体の位置関係及びサイズと、瞳孔中心座標と角膜曲率中心座標との距離s、角膜曲率中心座標と眼球中心座標との距離t、角膜反射像中心座標と角膜曲率中心座標との距離rとが記憶されている(
図4参照)。
【0048】
角膜反射像位置推定部42は、顔画像から、顔画像上の角膜反射像中心の2次元座標を計算し、顔画像上の角膜反射像中心の2次元座標と、顔形状モデル座標系における仮の眼球中心座標E´とから、カメラ位置Cから角膜反射像中心Pへ向かう3次元ベクトルpを推定する。
【0049】
角膜曲率中心計算部44は、3次元ベクトルpと、角膜反射像中心Pと角膜曲率中心Aとの距離rとを用いて、以下の式に従って、カメラ位置Cから角膜曲率中心Aへ向かう3次元ベクトルaを推定する。
【0051】
視線ベクトル計算部46は、顔画像から、顔画像上の瞳孔中心(見かけの瞳孔中心)Bの2次元座標を計算し、顔画像上の瞳孔中心(見かけの瞳孔中心)Bの2次元座標と、3次元ベクトルaと、角膜反射像中心Pと角膜曲率中心Aとの距離rと用いて、カメラ位置Cから見かけの瞳孔中心Bへ向かう3次元ベクトルbを求める。ここで、
図5に示すように、見かけの瞳孔中心Bの候補は2か所存在するため、Zがカメラ側になる方(=小さい方)を、見かけの瞳孔中心Bとして選べばよい。
【0052】
そして、視線ベクトル計算部46は、3次元ベクトルbと、3次元ベクトルpとを用いて、角膜反射像中心Pと見かけの瞳孔中心Bとの距離uを計算する。視線ベクトル計算部46は、3次元ベクトルpと、3次元ベクトルbとを用いて、以下の式に従って、3次元ベクトルpと、3次元ベクトルbとの角度εを計算する。
【0054】
視線ベクトル計算部46は、角膜反射像中心Pと角膜曲率中心Aとの距離rと、角膜反射像中心Pと見かけの瞳孔中心Bとの距離u(=||b−p||)とを用いて、以下の式に従って、3次元ベクトルpと、見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルとの角度θを計算する。
【0056】
視線ベクトル計算部46は、3次元ベクトルpと3次元ベクトルbとの角度εの計算結果と、3次元ベクトルpと見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルとの角度θの計算結果とを用いて、以下の式に従って、見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルと、真の瞳孔中心B´から眼球中心Eへ向かう3次元ベクトルとの角度ψを計算する。以下の式で、rは角膜曲率半径、sはAB’間の距離、n
1は、空気の屈折率、n
2は角膜の内側にある水晶体の屈折率である。
【0058】
視線ベクトル計算部46は、3次元ベクトルpと見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルとの角度θと、見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルと真の瞳孔中心B´から眼球中心Eへ向かう3次元ベクトルとの角度ψとの和により、視線ベクトルの角度(=θ+ψ)を計算する。
【0059】
視線ベクトル計算部46は、視線ベクトルの角度(=θ+ψ)と、カメラ位置Cから角膜反射像中心Pへ向かう3次元ベクトルpと、カメラ位置Cから見かけの瞳孔中心Bへ向かう3次元ベクトルbとに基づいて、視線ベクトルdを求める。ただし、-(θ+ψ)でも式が成立するため、視線ベクトルdのy成分が3次元ベクトルpのy成分よりも大きくなる方を選ぶか、rdがBに近い方を選べばよい。
【0060】
カメラ座標系眼球中心座標計算部30は、視線ベクトルdと、カメラ位置Cから角膜曲率中心Aへ向かう3次元ベクトルaと、角膜曲率中心Aと眼球中心Eとの距離tとに基づいて、以下の式に従って、カメラ座標系における眼球中心座標eを計算する。
【0062】
眼球中心座標変換部32は、カメラ座標系における眼球中心座標eと、カメラ座標系を顔形状モデルの座標系に変換するための回転成分R及び並進成分tとに基づいて、顔形状モデル座標系における眼球中心座標e´に変換する。
【0064】
固定パラメータ計算部33は、顔画像の時系列に対して眼球中心座標変換部32によって得られた顔形状モデル座標系における眼球中心座標e´の時系列に基づいて、顔形状モデル座標系における眼球中心座標e´を固定パラメータとして計算し、固定パラメータ記憶部34に格納する。
【0065】
例えば、顔形状モデル座標系における眼球中心座標e´の時系列の平均を計算して、固定パラメータとする。あるいは、顔形状モデル座標系における眼球中心座標e´の時系列に基づいて、眼球中心座標e´の分散を最小化する最適化問題を解くことにより、顔形状モデル座標系における眼球中心座標e´を固定パラメータとして計算してもよい。
【0066】
眼球中心方式視線検出部36は、顔画像から、パターンマッチングにより、目の瞳孔を表わす領域を抽出し、抽出された瞳孔を表わす領域の中心を、顔画像上の目の瞳孔中心の2次元座標として検出する。
【0067】
眼球中心方式視線検出部36は、固定パラメータ記憶部34に記憶されている顔形状モデル座標系における眼球中心座標と、カメラ座標系を顔形状モデルの座標系に変換するための回転成分R及び並進成分tとに基づいて、カメラ座標系における眼球中心の3次元位置に変換する。
【0068】
具体的には、顔位置姿勢推定部24によって推定された、カメラ座標系を顔形状モデルの座標系に変換するための回転成分R及び並進成分tを用いて、顔形状モデル座標系の目の眼球中心座標を、カメラ座標系での目の眼球中心座標に変換する。
【0069】
また、顔画像上の目の瞳孔中心の2次元座標と、カメラの焦点距離パラメータとに基づいて、カメラ座標系での目の瞳孔中心の3次元位置を推定する。
【0070】
眼球中心方式視線検出部36は、カメラ座標系における眼球中心の3次元位置から、カメラ座標系での目の瞳孔中心の3次元位置へ向かう視線ベクトルを計算して、出力部16により出力する。
【0071】
<視線計測装置の動作>
次に、視線計測装置10の動作について説明する。まず、照射部13により近赤外の光を被験者の目に照射しているときに、画像撮像部12で被験者の顔画像を連続的に撮像する。
【0072】
そして、コンピュータ14において、
図6に示す眼球中心計算処理ルーチンを実行する。まず、ステップS100において、画像撮像部12で撮像された顔画像を取得する。
【0073】
そして、ステップS102において、顔画像から顔上の特徴点を抽出し、カメラ座標系における顔の3次元の位置姿勢として、カメラ座標系(
図2参照)での顔の回転(ψc, θc, φc)と顔形状モデル原点位置(Xc, Yc, Zc)とを推定し、カメラ座標系を顔形状モデルの座標系へ変換するための回転成分R及び並進成分tとする。
【0074】
そして、ステップS106では、上記ステップS100で取得した顔画像から、角膜反射法を用いて、カメラ座標系における視線ベクトルdを計算する。
【0075】
ステップS108では、視線ベクトルdと、カメラ位置Cから角膜曲率中心Aへ向かう3次元ベクトルaと、角膜曲率中心Aと眼球中心Eとの距離tとに基づいて、カメラ座標系における眼球中心座標eを計算する。
【0076】
ステップS110では、カメラ座標系における眼球中心座標eと、上記ステップS102で推定された、カメラ座標系を顔形状モデルの座標系へ変換するための回転成分R及び並進成分tとに基づいて、顔形状モデル座標系における眼球中心座標e´に変換する。
【0077】
ステップS111では、所定数のフレーム画像について上記ステップS100〜S110の処理を繰り返し実行したか否かを判定する。所定数のフレーム画像について上記ステップS100〜S110の処理を繰り返し実行していない場合には、上記ステップS100へ戻る。一方、所定数のフレーム画像について上記ステップS100〜S110の処理を繰り返し実行した場合には、ステップS112へ移行する。
【0078】
ステップS112では、上記ステップS110で繰り返し得られた顔形状モデル座標系における眼球中心座標e´に基づいて、顔形状モデル座標系における眼球中心座標e´を固定パラメータとして計算して固定パラメータ記憶部34に格納し、眼球中心計算処理ルーチンを終了する。また、照射部13による光の照射も停止させる。
【0079】
上記ステップS106は、
図7に示す処理ルーチンによって実現される。
【0080】
まず、ステップS120において、顔画像から、顔画像上の角膜反射像中心の2次元座標を計算し、顔画像上の角膜反射像中心の2次元座標と、顔形状モデル座標系における仮の眼球中心座標E´とから、カメラ位置Cから角膜反射像中心Pへ向かう3次元ベクトルpを推定する。
【0081】
ステップS122では、上記ステップS120で推定された3次元ベクトルpと、角膜反射像中心Pと角膜曲率中心Aとの距離rとを用いて、カメラ位置Cから角膜曲率中心Aへ向かう3次元ベクトルaを推定する。
【0082】
ステップS124では、顔画像から、顔画像上の瞳孔中心(見かけの瞳孔中心)Bの2次元座標を計算する。そして、ステップS126では、顔画像上の瞳孔中心(見かけの瞳孔中心)Bの2次元座標と、上記ステップS122で推定された3次元ベクトルaと、角膜反射像中心Pと眼球中心Eとの距離rと用いて、カメラ位置Cから見かけの瞳孔中心Bへ向かう3次元ベクトルbを求める。
【0083】
そして、ステップS128では、上記ステップS124で求めた3次元ベクトルbと、上記ステップS120で推定された3次元ベクトルpとを用いて、角膜反射像中心Pと見かけの瞳孔中心Bとの距離uを計算する。また、3次元ベクトルpと、3次元ベクトルbとを用いて、3次元ベクトルpと、3次元ベクトルbとの角度εを計算する。また、角膜反射像中心Pと角膜曲率中心Aとの距離rと、角膜反射像中心Pと見かけの瞳孔中心Bとの距離u(=|b−p|)とを用いて、3次元ベクトルpと、見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルとの角度θを計算する。また、3次元ベクトルpと3次元ベクトルbとの角度εの計算結果と、3次元ベクトルpと見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルとの角度θの計算結果とを用いて、見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルと、真の瞳孔中心B´から眼球中心Eへ向かう3次元ベクトルとの角度ψを計算する。
【0084】
そして、上記で計算された、3次元ベクトルpと見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルとの角度θと、見かけの瞳孔中心Bから角膜曲率中心Aへ向かう3次元ベクトルと真の瞳孔中心B´から眼球中心Eへ向かう3次元ベクトルとの角度ψとの和により、視線ベクトルの角度を計算する。
【0085】
そして、ステップS130では、上記ステップS128で計算された、視線ベクトルの角度と、カメラ位置Cから角膜反射像中心Pへ向かう3次元ベクトルpと、カメラ位置Cから見かけの瞳孔中心Bへ向かう3次元ベクトルbとに基づいて、視線ベクトルdを求め、当該処理ルーチンを終了する。
【0086】
そして、画像撮像部12で被験者の顔画像を連続的に撮像しているときに、撮像された顔画像毎に、コンピュータ14において、
図8に示す視線計測処理ルーチンを実行する。まず、ステップS140において、画像撮像部12で撮像された顔画像を取得する。
【0087】
ステップS142では、顔画像から顔上の特徴点を抽出し、カメラ座標系における顔の3次元の位置姿勢として、カメラ座標系(
図2参照)での顔の回転(ψc, θc, φc)と顔形状モデル原点位置(Xc, Yc, Zc)とを推定し、カメラ座標系を顔形状モデルの座標系へ変換するための回転成分R及び並進成分tとする。
【0088】
ステップS144では、上記ステップS142で推定された、カメラ座標系を顔形状モデルの座標系へ変換するための回転成分R及び並進成分tを用いて、固定パラメータ記憶部34に記憶されている顔形状モデル座標系の目の眼球中心座標を、カメラ座標系での目の眼球中心座標に変換する。
【0089】
また、ステップS146では、上記ステップS140で得られた顔画像から、パターンマッチングにより、目の瞳孔を表わす領域を抽出し、抽出された瞳孔を表わす領域の中心を、顔画像上の目の瞳孔中心の2次元座標として検出する。そして、顔画像上の目の瞳孔中心の2次元座標と、カメラの焦点距離パラメータとに基づいて、カメラ座標系での目の瞳孔中心の3次元位置を推定する。
【0090】
ステップS148では、上記ステップS144で得られた、カメラ座標系での目の眼球中心の3次元位置と、上記ステップS146で得られた、カメラ座標系での目の瞳孔中心の3次元位置とに基づいて、カメラ座標系における眼球中心の3次元位置から、カメラ座標系での目の瞳孔中心の3次元位置へ向かう視線ベクトルを計算して、出力部16により出力し、視線計測処理ルーチンを終了する。
【0091】
以上説明したように、第1の実施の形態に係る視線計測装置によれば、角膜反射像を用いて計算された視線ベクトルから、3次元顔形状モデルの座標系における眼球中心の3次元位置を固定パラメータとして計算し、眼球中心の3次元位置から瞳孔中心の3次元位置へ向かう3次元の視線ベクトルを計算することにより、簡易な構成で、キャリブレーションを行うことなく、精度よく視線計測を行うことができる。
【0092】
また、眼球中心は顔モデル座標系において時間的に変化しないため、固定パラメータとして記憶しておくことにより、視線検出で通常行われるキャリブレーションを行うことなしに精度の高い視線計測を実現する。また、キャリブレーションが不要なため、ユーザの使い勝手がよくなる。
【0093】
<第2の実施の形態>
次に、第2の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【0094】
第2の実施の形態では、固定パラメータとして、顔形状モデル座標系における眼球中心座標だけでなく、顔形状モデルの構造パラメータを推定している点が、第1の実施の形態と異なっている。
【0095】
<第2の実施の形態の概要>
第2の実施の形態では、顔形状モデル座標系における眼球中心座標eが不動点(座標値が変化しない)になることを利用して、顔形状モデルの構造パラメータ(真の瞳孔中心B´と角膜曲率中心Aとの距離s、角膜曲率中心Aと眼球中心Eとの距離t、角膜反射像中心Pと角膜曲率中心Aとの距離r)を推定する。
【0096】
<視線計測装置の構成>
第2の実施の形態に係る視線計測装置210のコンピュータ214は、画像入力部20と、顔形状モデル記憶部22と、顔位置姿勢推定部24と、角膜反射法視線検出部28と、カメラ座標系眼球中心座標計算部30と、眼球中心座標変換部32と、固定パラメータ計算部33と、眼球構造パラメータ計算部232と、固定パラメータ記憶部34と、眼球中心方式視線検出部36とを備えている。
【0097】
眼球構造パラメータ計算部232は、顔画像の時系列に対して眼球中心座標変換部32により得られた、顔形状モデル座標系の目の眼球中心座標の時系列に基づいて、以下の式に示す目的関数を最適化するように、顔形状モデルの構造パラメータ(真の瞳孔中心B´と角膜曲率中心Aとの距離s、角膜曲率中心Aと眼球中心Eとの距離t、角膜反射像中心Pと角膜曲率中心Aとの距離r)を計算する。
【0100】
具体的には、上記の目的関数をs、t、rで偏微分して0になるパラメータを求めればよい。
【0101】
固定パラメータ記憶部34は、眼球中心座標変換部32によって得られた顔形状モデル座標系における眼球中心座標を、固定パラメータとして記憶すると共に、眼球構造パラメータ計算部232によって計算された、真の瞳孔中心B´と角膜曲率中心Aとの距離s、角膜曲率中心Aと眼球中心Eとの距離t、角膜反射像中心Pと角膜曲率中心Aとの距離rを、固定パラメータとして記憶する。
【0102】
固定パラメータ記憶部34に、真の瞳孔中心B´と角膜曲率中心Aとの距離s、角膜曲率中心Aと眼球中心Eとの距離t、角膜反射像中心Pと角膜曲率中心Aとの距離rが記憶された後、再度、角膜反射法視線検出部28は、角膜反射法を用いて、カメラ座標系における視線ベクトルを計算し、カメラ座標系眼球中心座標計算部30は、カメラ座標系における眼球中心座標eを計算する。このとき、角膜曲率中心計算部44、視線ベクトル計算部46、カメラ座標系眼球中心座標計算部30では、眼球構造パラメータ計算部232によって計算された、真の瞳孔中心B´と角膜曲率中心Aとの距離s、角膜曲率中心Aと眼球中心Eとの距離t、角膜反射像中心Pと角膜曲率中心Aとの距離rが用いられる。
【0103】
なお、第2の実施の形態に係る視線計測装置の他の構成及び作用について、第1の実施の形態と同様であるため、説明を省略する。
【0104】
このように、眼球中心は顔モデル座標系において時間的に変化しないため、同じく時間変化しない眼球構造パラメータと画像観測量を使って眼球中心を求める式を立てて、眼球中心が時間変動しないことを表現する評価関数を用いることで、眼球構造パラメータを求めることができる。
【0105】
なお、上記の実施の形態では、画像撮像部12の撮像方向と照射部13の照射方向とが同軸となるように配置されている場合を例に説明したが、これに限定されるものではない。画像撮像部12の撮像方向と照射部13の照射方向とが同軸となるように配置されていない場合には、画像撮像部12の撮像方向と照射部13の照射方向との違いに応じた近似計算を行うようにすればよい。