(57)【特許請求の範囲】
【請求項１】
観測領域内において、人間の頭部領域を含む動画像を獲得するための複数の撮影手段を備え、各前記頭部領域には、予め複数の特徴点が規定されており、
視線方向の推定処理の対象となる現時刻以前の時点の画像フレームまでの動画像により、推定対象となる人間の３次元の眼球中心位置と画像フレーム中に投影された特徴点の２次元の位置との関係が予めモデル化されているときに、前記複数の撮影手段により同時刻に撮影された前記動画像中の複数の画像フレームのうちから、前記視線方向の推定処理の対象となる現時刻の画像フレームを選択し、前記選択された画像フレームに基づいて、当該モデルを用いて、前記眼球中心位置を推定するとともに、前記現時刻の画像フレームから抽出された虹彩の位置に基づいて、前記推定対象となる人間の視線の方向を推定する視線方向推定手段をさらに備え、
前記視線方向推定手段は、
前記複数の撮影手段において少なくとも２台により撮影された前記動画像の複数の画像フレームにより、前記視線方向の推定処理を実行する時点における特定の人物の頭部の位置を、各前記複数の特徴点と前記撮影手段とを結ぶ３次元直線の交わる点として取得することで、前記特定の人物の頭部の前記観測領域内での位置を追跡する頭部追跡手段と、
前記特定の人物について前記複数の撮影手段により撮影された前記複数の画像フレームにおいて、それぞれ特定される前記複数の特徴点により前記特定の人物の頭部の姿勢を推定する姿勢推定手段と、
前記推定された顔姿勢に基づいて、前記特定の人物が撮影された前記複数の画像フレームのうちから、前記視線方向の推定処理に使用するための画像フレームを選択する選択手段と、
前記選択された画像フレームにおいて、前記特定の人物の虹彩中心を抽出するための虹彩中心位置推定手段と、
前記選択された画像フレームに基づいて、前記特定の人物の眼球中心位置を推定するための眼球中心位置推定手段と、
前記抽出された前記虹彩中心および前記推定された眼球中心位置により、前記特定の人物の視線の方向を算出する視線方向算出手段とを含む、視線方向の推定装置。
【請求項２】
前記選択手段は、前記複数の撮影手段で撮影された画像フレームのうちから撮影された画像が最も顔正面に近い画像フレームを選択する、請求項１に記載の視線方向の推定装置。
【請求項３】
前記選択手段は、右眼と左眼について、それぞれ、撮影された画像における対応する顔半面の顔正面への近さが異なる場合は、右眼と左眼に対して、異なる前記撮影手段で撮影された画像フレームを選択する、請求項２に記載の視線方向の推定装置。
【請求項４】
前記姿勢推定手段は、前記頭部追跡手段における投影変換から弱透視変換に投影変換を変更して、前記頭部の姿勢の推定を実行する、請求項１に記載の視線方向の推定装置。
【請求項５】
観測領域内において、人間の頭部領域を含む動画像を獲得するための複数の撮影手段を備え、各前記頭部領域には、予め複数の特徴点が規定されており、
視線方向の推定処理の対象となる現時刻以前の時点の画像フレームまでの動画像により、推定対象となる人間の３次元の眼球中心位置と画像フレーム中に投影された特徴点の２次元の位置との関係が予めモデル化されているときに、前記複数の撮影手段により同時刻に撮影された前記動画像中の複数の画像フレームのうちから、前記視線方向の推定処理の対象となる現時刻の画像フレームを選択し、前記選択された画像フレームに基づいて、当該モデルを用いて、前記眼球中心位置を推定するとともに、前記現時刻の画像フレームから抽出された虹彩の位置に基づいて、前記推定対象となる人間の視線の方向を推定する視線方向推定手段をさらに備え、
前記視線方向推定手段は、
前記複数の撮影手段により撮影された画像において、前記視線方向の推定処理を実行する時点における特定の人物の顔の領域を検出し、前記複数の特徴点を特定するための顔特徴点特定手段と、
前記複数の撮影手段により撮影された前記動画像の複数の画像フレームにより、前記特定の人物の頭部の位置および姿勢を、前記複数の特徴点の再投影誤差が最小となるように特定する頭部方向の推定手段と、
前記特定された頭部方向に基づいて、前記特定の人物が撮影された前記複数の画像フレームのうちから、前記視線方向の推定処理に使用するための画像フレームを選択する選択手段と、
前記選択された画像フレームにおいて、各画素ごとに前記特定の人物の目領域内の虹彩領域をラベルづけするための虹彩抽出手段と、
仮定された視線方向ベクトルと前記頭部の位置および姿勢に基づいて、各選択された画像フレームの画像中のモデル虹彩領域を推定し、前記ラベルづけされた虹彩領域と前記モデル虹彩領域とが最もフィットするように視線方向ベクトルを決定することにより、前記特定の人物の視線の方向を算出する視線方向算出手段とを含む、視線方向の推定装置。
【請求項６】
観測領域内において、人間の頭部領域を含む動画像を複数の撮影手段により撮影するステップを備え、各前記頭部領域には、予め複数の特徴点が規定されており、
前記複数の撮影手段において少なくとも２台により撮影された前記動画像の複数の画像フレームにより、視線方向の推定処理を実行する時点における特定の人物の頭部の位置を、各前記複数の特徴点と前記撮影手段とを結ぶ３次元直線の交わる点として取得することで、前記特定の人物の頭部の前記観測領域内での位置を追跡するステップと、
前記特定の人物について前記複数の撮影手段により撮影された前記複数の画像フレームにおいて、それぞれ特定される前記複数の特徴点により前記特定の人物の頭部の姿勢を推定するステップと、
前記推定された顔姿勢に基づいて、前記特定の人物が撮影された前記複数の画像フレームのうちから、視線方向の推定に使用するための画像フレームを選択するステップと、
前記選択された画像フレームにおいて、前記特定の人物の虹彩中心を抽出するステップと、
前記選択された画像フレームに基づいて、前記特定の人物の眼球中心位置を推定するステップと、
前記抽出された前記虹彩中心および前記推定された眼球中心位置により、前記特定の人物の視線の方向を算出するステップとをさらに備える、視線方向の推定方法。
【請求項７】
演算処理手段を有するコンピュータに、視線方向の推定処理を実行させるためのプログラムであって、前記プログラムは、
観測領域内において、人間の頭部領域を含む動画像を複数の撮影手段により撮影するステップを備え、各前記頭部領域には、予め複数の特徴点が規定されており、
前記複数の撮影手段において少なくとも２台により撮影された前記動画像の複数の画像フレームにより、前記視線方向の推定処理を実行する時点における特定の人物の頭部の位置を、各前記複数の特徴点と前記撮影手段とを結ぶ３次元直線の交わる点として取得することで、前記特定の人物の頭部の前記観測領域内での位置を追跡するステップと、
前記特定の人物について前記複数の撮影手段により撮影された前記複数の画像フレームにおいて、それぞれ特定される前記複数の特徴点により前記特定の人物の頭部の姿勢を推定するステップと、
前記推定された顔姿勢に基づいて、前記特定の人物が撮影された前記複数の画像フレームのうちから、視線方向の推定に使用するための画像フレームを選択するステップと、
前記選択された画像フレームにおいて、前記特定の人物の虹彩中心を抽出するステップと、
前記選択された画像フレームに基づいて、前記特定の人物の眼球中心位置を推定するステップと、
前記抽出された前記虹彩中心および前記推定された眼球中心位置により、前記特定の人物の視線の方向を算出するステップとをコンピュータに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はカメラ等からの画像を処理する画像処理に関し、特に、画像中の人物の視線方向を推定および検出するための画像認識の分野に関する。
【背景技術】
【０００２】
人物の視線方向の推定は、たとえば、マンマシンインタフェースの１つの方法として従来研究されてきた。
【０００３】
視線計測について、従来のカメラを利用した手法では、カメラの設置位置によって「頭部装着型」と「非装着型」に分類できる。一般的に「頭部装着型」は精度は高いが、ユーザの負担が大きい。またカメラの座標系が頭部の動きに連動するため、注視対象を判別するためには、外界の座標系と結び付ける工夫が必要となる。
【０００４】
この点では、「非装着型」での視線方向の検出が行えることがのぞましい。
【０００５】
図２５は、従来の「非装着型」の視線検出方式を対比して説明するための概念図である。
【０００６】
「非装着型」の具体的な手法としては、近赤外の点光源（Light Emitting Diode：LED）を目に照射し、角膜で反射された光源像と瞳孔の位置から視線を推定する瞳孔角膜反射法が良く知られている。赤外照明によって瞳孔と虹彩のコントラストは可視光照明より高くなり、瞳孔を検出しやすくなるが、その直径は数ミリで、また赤外光源の反射像もごく小さなスポットとして映るため、解像度の高い画像が要求される。そのため、片目をできるだけ大きく撮像することになる。その結果、「非装着型」の場合、顔が少し動くと目がカメラ視界から外れるという問題がある。言い換えると、赤外線照射式では、視線を推定するためには、カメラと被測定対象者との距離に制約があることになる。
【０００７】
角膜反射を利用しない「非装着型」による視線推定手法については、ステレオカメラ方式と単眼カメラ方式の大きく２種類に分けられる。
【０００８】
ステレオカメラ方式では、まず顔の特徴点（人為的に貼付したマーカや目尻などの自然特徴点など）の３次元位置を２眼ステレオにより推定し、それをもとに眼球中心位置を推定する手法である。視線方向は、求まった眼球中心位置と画像中の瞳孔位置・虹彩位置を結ぶ直線として推定される。しかし、事前にカメラ間のキャリブレーションが必要であるため、カメラの観測範囲の変更は容易ではないという問題がある。したがって、ステレオカメラ方式では、視線を推定するためには、カメラと被測定対象者との距離およびカメラに対する被測定対象者の位置に制約があることになる。
【０００９】
一方、単眼カメラによる方式では、カメラと顔の距離が離れても、ズームなどにより必要な画像解像度が得られれば視線が推定できる。
【００１０】
単眼カメラによる方式では、眼の画像パターンから視線を推定するニューラルネットワークによる手法や、観測時の虹彩の楕円形状から視線方向（虹彩の法線方向）を推定する手法、ステレオカメラ方式と同じように特徴点を抽出して虹彩位置との幾何学的関係から視線を推定する手法がある。
【００１１】
これらのうち、顔の上の特徴点と虹彩との相対的位置関係から視線を推定する方法は直感的に理解しやすいことから、早くから検討されてきた。
【００１２】
青山らは顔の向きの変化にも対応するため、左右の目尻と口の両端（口角）から形成される台形を利用して顔の向きを推定すると同時に、両目尻の中点と左右の虹彩の中点の差から正面視からの目の片寄り量を推定し、両方合わせて視線方向を推定する原理を示した（たとえば、非特許文献１を参照）。
【００１３】
また、本願の発明者らは、顔の３次元モデルを用いて、単眼カメラで撮影された画像に対して、視線の推定を可能となる方法について提案している（たとえば、特許文献１）。
【００１４】
この点で、単眼カメラ方式では、赤外線照射方式やステレオカメラ方式に比べると、カメラと被測定対象者との距離およびカメラに対する被測定対象者の位置の制約は小さいことになる。
【００１５】
しかしながら、これらの方式では、いずれも、被測定対象者の特徴点がカメラから撮影できる範囲内に存在しなければならないとの制約、言い換えると、被測定対象者の頭部の方向に制約があることになる。
【００１６】
図２６は、従来の視線検出方式、たとえば、単眼式の技術をもちいて、観測領域内の任意の位置の被測定対象者の視線を検出するシステムを示す図である。
【００１７】
上述のとおり、単眼式などの従来の視線の検出方式（「赤外線照射方式」「ステレオ式」「単眼式」）では、被測定対象者の頭部の方向に制約があり、撮影される対象人物の顔（より詳しくは、特徴点の存在する（曲）面）の向きがカメラに対して一定の範囲に入っていることが必要とされる。
【００１８】
このため、カメラの観測範囲内の任意の位置における被測定対象者の視線を検出するためには、観測範囲の外周に沿って、非常に多くのカメラが配置されることが必要である。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２００８−１０２９０２号公報
【非特許文献】
【００２０】
【非特許文献１】青山宏、河越正弘：「顔の面対称性を利用した視線感知法」情処研報89−CV−61、pp.1-8（1989）
【発明の概要】
【発明が解決しようとする課題】
【００２１】
それゆえに本発明の目的は、顔の向きの制限を緩和して、比較的少数のカメラにより、観測範囲内の任意の位置における被測定対象者の視線方向のリアルタイムに推定し追跡する視線方向の推定装置、視線方向の推定方法およびコンピュータに当該視線方向の推定方法を実行させるためのプログラムを提供することである。
【課題を解決するための手段】
【００２２】
この発明のある局面に従うと、視線方向の推定装置であって、観測領域内において、人間の頭部領域を含む動画像を獲得するための複数の撮影手段を備え、各頭部領域には、予め複数の特徴点が規定されており、視線方向の推定処理の対象となる現時刻以前の時点の画像フレームまでの動画像により、推定対象となる人間の３次元の眼球中心位置と画像フレーム中に投影された特徴点の２次元の位置との関係が予めモデル化されているときに、複数の撮影手段により同時刻に撮影された動画像中の複数の画像フレームのうちから、視線方向の推定処理の対象となる現時刻の画像フレームを選択し、選択された画像フレームに基づいて、当該モデルを用いて、眼球中心位置を推定するとともに、現時刻の画像フレームから抽出された虹彩の位置に基づいて、推定対象となる人間の視線の方向を推定する視線方向推定手段をさらに備え、視線方向推定手段は、複数の撮影手段において少なくとも２台により撮影された動画像の複数の画像フレームにより、視線方向の推定処理を実行する時点における特定の人物の頭部の位置を、各複数の特徴点と撮影手段とを結ぶ３次元直線の交わる点として取得することで、特定の人物の頭部の観測領域内での位置を追跡する頭部追跡手段と、特定の人物について複数の撮影手段により撮影された複数の画像フレームにおいて、それぞれ特定される複数の特徴点により特定の人物の頭部の姿勢を推定する姿勢推定手段と、推定された顔姿勢に基づいて、特定の人物が撮影された複数の画像フレームのうちから、視線方向の推定処理に使用するための画像フレームを選択する選択手段と、選択された画像フレームにおいて、特定の人物の虹彩中心を抽出するための虹彩中心位置推定手段と、選択された画像フレームに基づいて、特定の人物の眼球中心位置を推定するための眼球中心位置推定手段と、抽出された虹彩中心および推定された眼球中心位置により、特定の人物の視線の方向を算出する視線方向算出手段とを含む。
【００２４】
好ましくは、選択手段は、複数の撮影手段で撮影された画像フレームのうちから撮影された画像が最も顔正面に近い画像フレームを選択する。
【００２５】
好ましくは、選択手段は、右眼と左眼について、それぞれ、撮影された画像における対応する顔半面の顔正面への近さが異なる場合は、右眼と左眼に対して、異なる撮影手段で撮影された画像フレームを選択する。
【００２６】
好ましくは、姿勢推定手段は、頭部追跡手段における投影変換から弱透視変換に投影変換を変更して、頭部の姿勢の推定を実行する。
【００２７】
この発明の他の局面に従うと、視線方向の推定装置であって、観測領域内において、人間の頭部領域を含む動画像を獲得するための複数の撮影手段を備え、各頭部領域には、予め複数の特徴点が規定されており、視線方向の推定処理の対象となる現時刻以前の時点の画像フレームまでの動画像により、推定対象となる人間の３次元の眼球中心位置と画像フレーム中に投影された特徴点の２次元の位置との関係が予めモデル化されているときに、複数の撮影手段により同時刻に撮影された動画像中の複数の画像フレームのうちから、視線方向の推定処理の対象となる現時刻の画像フレームを選択し、選択された画像フレームに基づいて、当該モデルを用いて、眼球中心位置を推定するとともに、現時刻の画像フレームから抽出された虹彩の位置に基づいて、推定対象となる人間の視線の方向を推定する視線方向推定手段をさらに備え、視線方向推定手段は、複数の撮影手段により撮影された画像において、視線方向の推定処理を実行する時点における特定の人物の顔の領域を検出し、複数の特徴点を特定するための顔特徴点特定手段と、複数の撮影手段により撮影された動画像の複数の画像フレームにより、特定の人物の頭部の位置および姿勢を、複数の特徴点の再投影誤差が最小となるように特定する頭部方向の推定手段と、特定された頭部方向に基づいて、特定の人物が撮影された複数の画像フレームのうちから、視線方向の推定処理に使用するための画像フレームを選択する選択手段と、選択された画像フレームにおいて、各画素ごとに特定の人物の目領域内の虹彩領域をラベルづけするための虹彩抽出手段と、仮定された視線方向ベクトルと頭部の位置および姿勢に基づいて、各選択された画像フレームの画像中のモデル虹彩領域を推定し、ラベルづけされた虹彩領域とモデル虹彩領域とが最もフィットするように視線方向ベクトルを決定することにより、特定の人物の視線の方向を算出する視線方向算出手段とを含む。
【００２９】
この発明のさらに他の局面にしたがうと、視線方向の推定方法であって、観測領域内において、人間の頭部領域を含む動画像を複数の撮影手段により撮影するステップを備え、各頭部領域には、予め複数の特徴点が規定されており、複数の撮影手段において少なくとも２台により撮影された動画像の複数の画像フレームにより、視線方向の推定処理を実行する時点における特定の人物の頭部の位置を、各複数の特徴点と撮影手段とを結ぶ３次元直線の交わる点として取得することで、特定の人物の頭部の観測領域内での位置を追跡するステップと、特定の人物について複数の撮影手段により撮影された複数の画像フレームにおいて、それぞれ特定される複数の特徴点により特定の人物の頭部の姿勢を推定するステップと、推定された顔姿勢に基づいて、特定の人物が撮影された複数の画像フレームのうちから、視線方向の推定に使用するための画像フレームを選択するステップと、選択された画像フレームにおいて、特定の人物の虹彩中心を抽出するステップと、選択された画像フレームに基づいて、特定の人物の眼球中心位置を推定するステップと、抽出された虹彩中心および推定された眼球中心位置により、特定の人物の視線の方向を算出するステップとをさらに備える。
【００３１】
この発明のさらに他の局面にしたがうと、演算処理手段を有するコンピュータに、視線方向の推定処理を実行させるためのプログラムであって、プログラムは、観測領域内において、人間の頭部領域を含む動画像を複数の撮影手段により撮影するステップを備え、各頭部領域には、予め複数の特徴点が規定されており、複数の撮影手段において少なくとも２台により撮影された動画像の複数の画像フレームにより、視線方向の推定処理を実行する時点における特定の人物の頭部の位置を、各複数の特徴点と撮影手段とを結ぶ３次元直線の交わる点として取得することで、特定の人物の頭部の観測領域内での位置を追跡するステップと、特定の人物について複数の撮影手段により撮影された複数の画像フレームにおいて、それぞれ特定される複数の特徴点により特定の人物の頭部の姿勢を推定するステップと、推定された顔姿勢に基づいて、特定の人物が撮影された複数の画像フレームのうちから、視線方向の推定に使用するための画像フレームを選択するステップと、選択された画像フレームにおいて、特定の人物の虹彩中心を抽出するステップと、選択された画像フレームに基づいて、特定の人物の眼球中心位置を推定するステップと、抽出された虹彩中心および推定された眼球中心位置により、特定の人物の視線の方向を算出するステップとをコンピュータに実行させる。
【発明の効果】
【００３２】
本発明の視線方向の推定装置、視線方向の推定方法およびコンピュータに当該視線方向の推定方法を実行させるためのプログラムによれば、顔の向きの制限を緩和して、比較的少数のカメラにより、観測範囲内の任意の位置における被測定対象者の視線方向のリアルタイムに推定し追跡することが可能である。
【図面の簡単な説明】
【００３３】
【図１】視線方向の推定装置の外観を示す図である。
【図２】システム２０のハードウェア構成を示すブロック図である。
【図３】視線方向の推定装置において、上述したＣＰＵ５６がソフトウェアを実行するにより実現する機能を示す機能ブロック図である。
【図４】ＣＰＵ５６により視線推定のソフトウェアを実行する処理フローを示すフローチャートである。
【図５】このような顔（頭部）の検出が実施された結果を示す図である。
【図６】このような顔（頭部）の対応付け処理の概念を説明するための概念図である。
【図７】「頭部の位置および頭部の姿勢の推定処理」の一例を示すフロー図である。
【図８】ガボール表現を用いた顔部品モデルを用いた特徴点の抽出処理を説明するための概念図である。
【図９】眼球モデルパラメータの推定処理を「逐次型眼球モデル推定」の処理として実行する場合の処理の流れを説明する概念図である。
【図１０】ラベリング処理例を示す図である。
【図１１】右目および左目の虹彩と眼球モデルとの照合処理の概念を示す図である。
【図１２】視線方向を決定するためのモデルを説明する概念図である。
【図１３】従来法の持つ観測時の制約について説明する図である。
【図１４】頭部姿勢が大きく変化する場合に必要となるシステムの概念を示す図である。
【図１５】実施の形態２よる視線計測の適用例を示す図である。
【図１６】実施の形態２の視線方向の推定装置の構成を示す機能ブロック図である。
【図１７】抽出された左右の各目領域画像を示す図である。
【図１８】虹彩・白目のラベル付けが行われた状態を示す図である。
【図１９】虹彩の画像上の観測形状を示す図である。
【図２０】実験環境を示す概念図である。
【図２１】頭部姿勢の追跡結果の例を示す図である。
【図２２】視線推定の処理結果の例を示す図である。
【図２３】視線推定精度を示す図である。
【図２４】視線計測を利用した案内システムの例を示す図である。
【図２５】従来の「非装着型」の視線検出方式を対比して説明するための概念図である。
【図２６】従来の視線検出方式、たとえば、単眼式の技術をもちいて、観測領域内の任意の位置の被測定対象者の視線を検出するシステムを示す図である。
【発明を実施するための形態】
【００３４】
［実施の形態１］
［ハードウェア構成］
以下、本発明の実施の形態１にかかる「視線方向の推定装置」について説明する。この視線方向の推定装置は、パーソナルコンピュータまたはワークステーション等、コンピュータ上で実行されるソフトウェアにより実現されるものであって、対象画像から人物の顔を抽出し、さらに人物の顔の映像に基づいて、視線方向を推定・検出するためのものである。図１は、この視線方向の推定装置の外観を示す図である。
【００３５】
ただし、以下に説明する「視線方向の推定装置」の各機能の一部または全部は、ハードウェアにより実現されてもよい。
【００３６】
図１を参照して、この視線方向の推定装置を構成するシステム２０は、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory ）またはＤＶＤ−ＲＯＭ（Digital Versatile Disc Read-Only Memory）ドライブ（以下、「光学ディスクドライブ」と呼ぶ）５０、メモリカードドライブ５２のような記録媒体からデータを読み取るためのドライブ装置を備えたコンピュータ本体４０と、コンピュータ本体４０に接続された表示装置としてのディスプレイ４２と、同じくコンピュータ本体４０に接続された入力装置としてのキーボード４６およびマウス４８と、コンピュータ本体４０に接続された、画像を取込むための複数のカメラ３０．１〜３０．ｎとを含む。この実施の形態の装置では、各カメラ３０．ｉ（１≦ｉ≦ｎ）としては、ＣＣＤ（Charge Coupled Device）またはＣＭＯＳ（Complementary Metal-Oxide Semiconductor）センサのような固体撮像素子を含む単眼カメラを用い、後に説明するように、各カメラ３０．ｉの観測範囲から得られる画像データを統合して使用することにより、観測領域内の人物の顔の位置および視線を推定・検出する処理を行なうものとする。
【００３７】
したがって、観測領域内の人物については、複数のカメラ３０．１〜３０．ｎのうちの望ましくは、少なくとも２つのカメラにより、当該人物の顔領域を含む画像であって対象となる画像領域内の各画素の値のデジタルデータが準備されるように、カメラ３０．１〜３０．ｎは、配置されているものとする。
【００３８】
なお、後に説明するように、当該人物の顔領域を含む画像を撮影可能なカメラが、複数のカメラ３０．１〜３０．ｎのうちの２つ以上であることは、必ずしも必須の条件ではなく、観測領域内の一部の領域では、カメラのうちの１つからの画像に基づいて、以下に説明するような視線方向の推定を行なうことも可能である。しかしながら、原則としては、以下の説明でも明らかとなるように、本実施の形態の視線方向の推定装置では、基本的には、複数カメラからの画像情報に基づいて、視線の推定を行なう構成である。
【００３９】
図２は、このシステム２０のハードウェア構成を示すブロック図である。
【００４０】
図２に示されるようにこのシステム２０を構成するコンピュータ本体４０は、光学ディスクドライブ５０およびメモリカードドライブ５２に加えて、それぞれバス６６に接続された中央演算装置（ＣＰＵ：Central Processing Unit）５６と、ＲＯＭ（Read Only Memory) ５８と、RAM （Random Access Memory）６０と、ハードディスク５４と、カメラ３０からの画像を取込むための画像取込装置６８とを含んでいる。光学ディスクドライブ５０にはＣＤ−ＲＯＭ（またはＤＶＤ−ＲＯＭ）６２が装着される。メモリカードドライブ５２にはメモリカード６４が装着される。メモリカードドライブ５２の機能を実現する装置は、フラッシュメモリなどの不揮発性の半導体メモリに記憶されたデータを読み出せる装置であれば、対象となる記憶媒体は、メモリカードに限定されない。また、ハードディスク５４の機能を実現する装置も、不揮発的にデータを記憶し、かつ、ランダムアクセスできる装置であれば、ハードディスクのような磁気記憶装置に限られず、フラッシュメモリなどの不揮発性半導体メモリを記憶装置として用いるソリッドステートドライブ（ＳＳＤ：Solid State Drive）を用いることができる。
【００４１】
既に述べたようにこの視線方向の推定装置の主要部は、コンピュータハードウェアと、ＣＰＵ５６により実行されるソフトウェアとにより実現される。一般的にこうしたソフトウェアはＣＤ−ＲＯＭ（またはＤＶＤ−ＲＯＭ）６２、メモリカード６４等の記憶媒体に格納されて流通し、光学ディスクドライブ５０またはメモリカードドライブ５２等により記憶媒体から読取られてハードディスク５４に一旦格納される。または、当該装置がネットワークに接続されている場合には、ネットワーク上のサーバから一旦ハードディスク５４にコピーされる。そうしてさらにハードディスク５４からＲＡＭ６０に読出されてＣＰＵ５６により実行される。なお、ネットワーク接続されている場合には、ハードディスク５４に格納することなくＲＡＭ６０に直接ロードして実行するようにしてもよい。
【００４２】
図１および図２に示したコンピュータのハードウェア自体およびその動作原理は一般的なものである。したがって、本発明の最も本質的な部分は、ＣＤ−ＲＯＭ（またはＤＶＤ−ＲＯＭ）６２、メモリカード６４、ハードディスク５４等の記憶媒体に記憶されたソフトウェアである。
【００４３】
なお、最近の一般的傾向として、コンピュータのオペレーティングシステムの一部として様々なプログラムモジュールを用意しておき、アプリケーションプログラムはこれらモジュールを所定の配列で必要な時に呼び出して処理を進める方式が一般的である。そうした場合、当該視線方向の推定装置を実現するためのソフトウェア自体にはそうしたモジュールは含まれず、当該コンピュータでオペレーティングシステムと協働してはじめて視線方向の推定装置が実現することになる。しかし、一般的なプラットフォームを使用する限り、そうしたモジュールを含ませたソフトウェアを流通させる必要はなく、それらモジュールを含まないソフトウェア自体およびそれらソフトウェアを記録した記録媒体（およびそれらソフトウェアがネットワーク上を流通する場合のデータ信号）が実施の形態を構成すると考えることができる。
【００４４】
［システムの機能ブロック］
以下に説明するとおり、本実施の形態の視線方向の推定装置では、顔特徴点を検出・追跡することにより、複数のカメラを使用して視線方向を推定する。
【００４５】
本実施の形態の視線方向の推定装置では、眼球中心と虹彩中心を結ぶ３次元直線を視線方向として推定する。眼球中心は画像からは直接観測することはできないものの、以下に説明するような３次元モデルにより、眼球中心と顔特徴点との相対関係をモデル化することにより、眼球中心の投影位置を推定する。
【００４６】
なお、以下では実施の形態の説明の便宜上、「虹彩中心」との用語を用いるが、この用語は、「虹彩の中心」または「瞳孔の中心」を意味するものとして使用するものとする。つまり、視線の推定処理において、以下の説明のような手続きにより求められるものを「虹彩中心」と呼ぶか「瞳孔中心」と呼ぶかは、その手続きが同様である限りにおいて、本実施の形態の態様において、本質的な相違を有するものではない。
【００４７】
図３は、本実施の形態の視線方向の推定装置において、上述したＣＰＵ５６がソフトウェアを実行するにより実現する機能を示す機能ブロック図である。
【００４８】
なお、図３に示した機能ブロックのうちのＣＰＵ５６が実現する機能ブロックとしては、ソフトウェアでの処理に限定されるものではなく、その一部または全部がハードウェアにより実現されてもよい。
【００４９】
図３を参照して、複数のカメラ３０．１〜３０．ｎにより撮像された動画に対応する映像信号は、フレームごとに画像キャプチャ処理部５６０２により制御されてデジタルデータとしてキャプチャされ、画像データ記録処理部５６０４により、たとえば、ハードディスク５４のような記憶装置に格納される。
【００５０】
顔（頭部）検出部５６０６は、キャプチャされたフレーム画像列に対して、周知の顔検出アルゴリズムにより、顔（頭部）候補探索を行う。なお、このような周知な顔（頭）検出アルゴリズムとしては、特に限定されないが、たとえば、上述した特許文献１（特開２００８−１０２９０２号公報明細書）に記載されるようなアルゴリズムや、後に説明するような公知文献に記載されるアルゴリズムを使用することが可能である。
【００５１】
続いて、顔（頭部）対応付け部５６０８は、処理が画像フレームごとに実施される場合は、前時刻の画像フレームにおいてすでに検出されている顔（頭部）と、処理対象となっている現時刻における画像フレームにおいて複数のカメラのそれぞれで検出された顔（頭部）とを対応づけることで、検出された顔（頭部）を特定人の顔（頭部）として追跡する。なお、複数のカメラによる撮影は、フレームについて同期して実施される構成とすることが可能である。あるいは、複数のカメラによる撮影がフレームについて同期されていない場合は、時間軸についてのフィルタ処理を行なうなどして、複数のカメラで撮影された画像フレームを「同時刻」とみなせるように補正処理を行うことも可能である。顔（頭部）対応付け部５６０８により特定された特定人物の頭部位置は、当該時刻における頭部位置として、次の処理タイミングで使用するためにハードディスク５４に格納される。
【００５２】
顔（頭部）対応付け部５６０８における対応付けの処理の結果、特定の人物については、その時刻において、複数のカメラのうち、１つのカメラのみで、顔の中の特徴点が撮影されたと判断されるときは、単眼カメラにより視線の検出を行うことと同等となる。したがって、この場合は、当該特定の人物については、第１の頭部位置・姿勢推定部５６１０が、たとえば、特許文献１（特開２００８−１０２９０２号公報明細書）に記載されたような単眼カメラによる視線方向の検出処理におけるのと同様の処理により、撮影できているカメラからの画像データにおいて、頭部の位置および頭部の姿勢の推定処理が実行される。
【００５３】
一方、顔（頭部）対応付け部５６０８における対応付けの処理の結果、特定の人物については、その時刻において、複数のカメラのうち、少なくとも２つ以上のカメラで、顔の中の特徴点が撮影されたと判断されるときは、第２の頭部位置・姿勢推定部５６１２において、たとえば、後に説明するような処理手順により、頭部（顔）の画像中の所定の特徴点が抽出され、抽出された特徴点に基づいて頭部の位置と頭部の姿勢を３次元的に推定する。つまり、第２の頭部位置・姿勢推定部５６１２は、撮影できている複数のカメラからの画像データを統合して処理することにより、頭部の位置および頭部の姿勢の推定処理を実行する。
【００５４】
頭部の位置および頭部の姿勢が推定されると、処理対象となっている画像フレーム以前に獲得されている眼球の３次元モデルに基づいて、眼球中心推定部５６１４は、処理対象の特定人物の眼球中心の３次元的な位置を推定する。
【００５５】
虹彩中心抽出部５６１６は、後に説明するようなアルゴリズムにより、虹彩の中心の投影位置を検出する。ここで、虹彩位置の推定においては、後に説明する非線形最適化処理により虹彩位置の推定を行ってもよいし、あるいは、これも特許文献１（特開２００８−１０２９０２号公報明細書）に記載されたような処理であって、目の周辺領域に対して、ラプラシアンにより虹彩のエッジ候補を抽出し、円のハフ変換を適用することにより、虹彩の中心の投影位置を検出する、というような処理を行ってもよい。
【００５６】
視線方向推定部５６１８は、抽出された虹彩の中心の投影位置である画像フレーム中の２次元的な位置と、推定された眼球の３次元的な中心位置とに基づいて、視線方向を推定する。推定された視線方向は、眼球中心位置等の推定処理に使用したパラメータとともに、ハードディスク５４に格納される。
【００５７】
また、表示制御部５６１３は、以上のようにして推定された視線の方向を、取得された画像フレーム上に表示するための処理を行なう。
【００５８】
図４は、本実施の形態において、ＣＰＵ５６により視線推定のソフトウェアを実行する処理フローを示すフローチャートである。
【００５９】
図４を参照して、処理が開始されると、まず、ＣＰＵ５６は、処理する画像フレームを時間軸上で特定するためのフレーム数Ｎｆを１に設定する（Ｓ１０２）。
【００６０】
続いて、ＣＰＵ５６は、画像キャプチャ処理部５６０２により、カメラ３０．１〜３０．ｎで観測される画像を、画像データとしてキャプチャする（Ｓ１０４．１〜Ｓ１０４．ｎ）。そして、ＣＰＵ５６は、顔（頭部）検出部５６０６により、キャプチャされた各カメラ３０．１〜３０．ｎからの画像フレームのデータにおいて、顔（頭部）の検出を実施する（Ｓ１０６．１〜Ｓ１０６．ｎ）。
【００６１】
ここで、図５は、このような顔（頭部）の検出が実施された結果を示す図である。このような顔（頭部）の検出処理としては、特に限定されないが、たとえば、以下の公知文献１に開示されたアルゴリズム（AdaBoostと呼ぶ）を使用することができる。
【００６２】
公知文献１：CVIM研究会 チュートリアルシリーズ(チュートリアル2)  情報処理学会研究報告. 2007-CVIM-159(32), [コンピュータビジョンとイメージメディア] , P.265-272, 2007-05-15.
顔（頭部）の画像フレームからの検出については、周知の他のアルゴリズムを利用することも可能である。
【００６３】
再び図４を参照して、顔（頭部）の検出が、それぞれのカメラ３０．１〜３０．ｎで終了すると、ＣＰＵ５６は、顔（頭部）対応付け部５６０８により、前の処理ステップのタイミングの前時刻の画像フレームにおいてすでに検出されている顔（頭部）と、現時刻における画像フレームにおいて複数のカメラのそれぞれで検出された顔（頭部）とを対応づける（Ｓ１０８）。
【００６４】
ここで、図６は、このような顔（頭部）の対応付け処理の概念を説明するための概念図である。
【００６５】
図６を参照して、１つ前の処理ステップでは、画像中で、人物Ｐ１と人物Ｐ２とが事前に検出されているものとする。
【００６６】
顔（頭部）対応付け部５６０８は、現時刻の画像フレームにおいて、カメラ３０．１で撮像された画像フレーム中では、２人の顔（頭部）の検出されたものとするとき、各顔（頭部）の画像フレーム中の位置と大きさから、図６に示されるような部屋（以下、その領域に存在する人物の視線推定を行う領域という意味で「観測領域」と呼ぶ）の２次元内での位置を推定する。一方、カメラ３０．２でも、撮像された画像フレーム中では、２人の顔（頭部）が検出され、この２人の顔（頭部）の画像フレーム中の位置と大きさから、観測領域の２次元内での位置が推定される。
【００６７】
たとえば、人物Ｐ１については、現時刻でカメラ３０．１およびカメラ３０．２で撮影された画像フレームから推定された顔（頭部）の２次元内での位置と、前時刻で推定された顔（頭部）の２次元内での位置とが、重なっていることから、現時刻における人物Ｐ１の２次元内での位置が、たとえば、現時刻において推定された顔（頭部）の２次元内での位置（複数）の平均として特定される。
【００６８】
同様に、人物Ｐ２については、現時刻でカメラ３０．１で撮影された画像フレームから推定された顔（頭部）の２次元内での位置と、前時刻で推定された顔（頭部）の２次元内での位置とが、重なっていることから、現時刻における人物Ｐ１の２次元内での位置が、現時刻において推定された顔（頭部）の２次元内での位置として特定される。
【００６９】
なお、人物Ｐ１とＰ２については、前時刻の顔（頭部）の２次元内での位置と現時刻の顔（頭部）の２次元内での位置とが重なっているものとして描かれているが、たとえば、現時刻と前時刻の位置が所定の距離範囲内であれば、同一人物であると特定することとしてもよい。
【００７０】
また、人物Ｐ３については、現時刻において、初めて顔（頭部）が検出されたものとする。このとき、顔（頭部）対応付け部５６０８は、カメラ３０．２とカメラ３０．３からの画像フレームから推定される顔（頭部）の２次元内での位置の位置が重なっていることにより、新たな人物Ｐ３が検出されたものとして、この人物をハードディスク５４に登録する。特に限定されないが、このようにして、複数のカメラから撮影された画像フレームにより、同一の２次元内での位置に顔（頭部）が初めて検出されたときに、新たな人物が特定されたものとして、登録する構成とすることができる。以後は、人物Ｐ３についても、上述した人物Ｐ１や人物Ｐ２と同様にして、その顔（頭部）の２次元内での位置を追跡する。
【００７１】
再び、図４にもどって、ＣＰＵ５６は、顔（頭部）対応付け部５６０８により、ｐ人の顔（頭部）が検出され対応付けが完了すると（Ｓ１０８）、１人目〜ｐ人目について、順次、以下の処理を実行する（Ｓ１１０）。
【００７２】
すなわち、ＣＰＵ５６は、１人目〜ｐ人目のうち、現在の処理対象であるｊ人目の人物について、まず、このｊ人目の人物を観測したカメラが２台以上であるかを判断する（Ｓ１１２）。
【００７３】
観測したカメラが１台である場合は、たとえば、当該特定の人物については、第１の頭部位置・姿勢推定部５６１０が、たとえば、特許文献１（特開２００８−１０２９０２号公報明細書）に記載されたような単眼カメラによる視線方向の検出処理におけるのと同様の処理により、撮影できているカメラからの画像データにおいて、頭部の位置および頭部の姿勢の推定処理が実行される（Ｓ１４０）。
【００７４】
一方、観測したカメラが２台以上である場合は、第２の頭部位置・姿勢推定部５６１２において、以下に説明するような処理手順により、頭部（顔）の画像中の所定の特徴点が抽出され、抽出された特徴点に基づいて頭部の位置と頭部の姿勢を３次元的に推定する。  （頭部の位置および頭部の姿勢の推定処理）
以下では、ステップＳ１１４において実行される頭部の位置および頭部の姿勢の推定処理について、さらに、詳しく説明する。
【００７５】
まず、このような「頭部の位置および頭部の姿勢の推定処理」を説明する前提を説明する。
【００７６】
Ｎ台のカメラで観測された顔特徴点群の２次元座標と、頭部モデルのモデル３次元座標とから頭部位置ＴＭ、頭部姿勢ＲＭを推定する場合の処理を以下説明する。
【００７７】
カメラｉの位置をＴｉとし、カメラ姿勢を以下の式Ｒｉとし、カメラの内部パラメータをＡｉとする。このとき、ｆｉはカメラｉの焦点距離であり、下記のｕｉは、カメラの中心座標である。
【００７８】
【数１】
0005828167.tif 000002
ここで、カメラｉの位置Ｔｉ、および姿勢Ｒｉ内のｒｉ，＊（＊は、１，２，３のいずれか）は、３×１の縦ベクトルである。
【００７９】
このとき、３次元点Ｘｊは透視投影変換により、以下のように２次元座標ｘｉ，ｊに投影される（ｉはカメラの番号、ｊは３次元の座標の番号）。
【００８０】
【数２】
0005828167.tif 000003
さらに、頭部モデル上の点ｊの３次元座標をＸＭ，ｊとする（ｊ＝１，…，Ｍ）と、以下の関係が成り立つ。
【００８１】
【数３】
0005828167.tif 000004
頭部の位置および姿勢をそれぞれ、ＴＭ，ＲＭとするとモデル上の点ｊの位置は、以下のように表現されるＸｊとなるので、このＸｊを式（１）に代入すると、以下の式（３）となる。
【００８２】
【数４】
0005828167.tif 000005
以上の前提の下に、以下、「頭部の位置および頭部の姿勢の推定処理」を説明する。
【００８３】
図７は、図４のステップＳ１１４の「頭部の位置および頭部の姿勢の推定処理」の一例を示すフロー図である。
【００８４】
（特徴点の抽出）
まず、ＣＰＵ５６は、各カメラからの画像フレーム上で顔部品モデルとのテンプレートマッチング処理により、特徴点の２次元座標を得る（Ｓ２００）。
【００８５】
特に限定されないが、顔部品モデルとしては、特徴点を含む部分画像を顔部品テンプレートとして事前に準備しおいてもよいし、あるいは、ガボール（Gabor）表現を用いたモデルを使用することも可能である。
【００８６】
図８は、このようなガボール表現を用いた顔部品モデルを用いた特徴点の抽出処理を説明するための概念図である。
【００８７】
ここで、「ガボール表現を用いた顔部品モデル」とは、顔画像領域内の各部分領域をガボール基底ベクトルとの積和演算により低次元ベクトル表現に変換し、あらかじめ変換してハードディスク５４に記録してあるモデルのことである。各カメラからの画像フレームは、たとえば、図８（ａ）の黒枠で示されるような黒四角の枠の大きさで部分画像に分割してあるものとする。ＣＰＵ５６は、このガボール表現を用いた顔部品モデルを顔部品テンプレートとして、各カメラからの画像フレームの各部分画像と比較し、類似度の高いものを特徴点として抽出する。
【００８８】
このような特徴点の抽出処理については、たとえば、以下の公知文献２に記載されている。
【００８９】
公知文献２：画像処理による顔検出と顔認識(サーベイ(2))情報処理学会研究報告. 2005-CVIM-149(37), [コンピュータビジョンとイメージメディア] , P.343-368, 2005-05-13.
（頭部位置の推定）
再び、図７にもどって、続いて、ＣＰＵ５６は、第２の頭部位置・姿勢推定部５６１２により、頭部位置の推定処理を実行する（Ｓ２０２）。
【００９０】
すなわち、第２の頭部位置・姿勢推定部５６１２は、各カメラで撮影された画像フレーム上で得られた各特徴点の２次元座標とその特徴点を観測したカメラの位置・姿勢、焦点距離等の投影パラメータから、特徴点（３次元）とカメラを結ぶ３次元直線を得る。さらに、第２の頭部位置・姿勢推定部５６１２は、顔特徴点間での位置の違いを無視し、同一人物について得られた直線群の交点を最小二乗法で求めて頭部位置とする。
【００９１】
より具体的には、第２の頭部位置・姿勢推定部５６１２は、以下のような処理を実行する。
【００９２】
頭部とカメラの距離に比べて頭部上の顔特徴点間の距離が十分に小さい（｜ＲＭＸＭ，Ｊ｜≪｜（ＴＭ−Ｔｉ）｜）と仮定する。すると、上記式（３）は、以下のように書き直せる。
【００９３】
【数５】
0005828167.tif 000006
上述の式（４）の第３行から、以下の式（５−１）が得られるので、これを第１、２行に代入して整理すると、式（５−２）が得られる。
【００９４】
【数６】
0005828167.tif 000007
ある時刻に合計Ｌ個の観測結果が得られた場合を考える。ここで、ｋ番目の観測では、モデル上の点ｊｋ（１≦ｊｋ≦Ｍ）が、カメラｉｋ（１≦ｉｋ≦Ｎ）で観測されたとする。このとき、式（５−２）により観測の数だけ以下のような方程式（６）が得られる。この式（７）をまとめて、式（８）のように記載することができる。
【００９５】
そのとき、頭部位置ＴＭの推定値ＴＭ（ハット）は、式（８）のように最小二乗法による推定値として求めることができる。ここで、「ハット」とは、変数の頭部に＾が付されたものをいう。
【００９６】
【数７】
0005828167.tif 000008
以上により、頭部位置の推定値が得られる。
【００９７】
なお、以上の説明では、処理の簡単のために「顔特徴点間での位置の違いを無視」することにより頭部位置を複数の特徴点についての平均値として推定するものとしたが、例えば、以下で説明するような後段の処理で推定された「顔姿勢」に基づいて、再度頭部位置を推定したり、さらに頭部位置推定と姿勢推定を繰り返して両者の最適化を図るといった処理を行なうことにより、頭部位置の推定を高精度化することも可能である。
【００９８】
（頭部姿勢推定処理）
再び、図７にもどって、続いて、ＣＰＵ５６は、第２の頭部位置・姿勢推定部５６１２により、頭部姿勢の推定処理を実行する（Ｓ２０４）。
【００９９】
すなわち、第２の頭部位置・姿勢推定部５６１２は、上で得られた頭部位置により弱透視変換におけるスケールパラメータを決定し、特徴点毎に頭部姿勢を未知数として特徴点（３次元）と特徴点（２次元）の関係を示す方程式を得る。これに基づいて方程式を満たす頭部姿勢が算出される。
【０１００】
すなわち、ここで、頭部姿勢推定処理においては、投影変換の仮定を弱透視変換に切り替える。つまり、頭部とカメラの距離比べて頭部上の顔特徴点間の距離がカメラから見て奥行き方向に関しては十分に小さい（｜ｒti,3ＲＭＸＭ，Ｊ｜≪｜ｒti,3（ＴＭ−Ｔｉ）｜）と仮定する。
【０１０１】
すると、上述した式（３）は、次のように書き換えられる。
【０１０２】
【数８】
0005828167.tif 000009
さらに、上記の式（９）は、次の式（１０）のように書き換えることができる。
【０１０３】
【数９】
0005828167.tif 000010
ここで、以下の式で表現されるＲＭの各要素を用いると、式（１０）の第１行、第２行はそれぞれｒ１，ｒ２，…，ｒ９およびδｘｉ，δｙｉを変数とする一次式（１２）および（１３）となる。
【０１０４】
【数１０】
0005828167.tif 000011
式（６）と同様に、Ｌ個の観測を考えると、式（１２）式（１３）からは次の２Ｌ個の方程式（１４）を得る。
【０１０５】
【数１１】
0005828167.tif 000012
そして、式（１４）は行列形式にまとめると、以下の式（１５）のようにまとめられる。
【０１０６】
【数１２】
0005828167.tif 000013
さらに、最小自乗法により各要素の値として、以下の式（１６）を得る。
【０１０７】
【数１３】
0005828167.tif 000014
最後に、ＲＭに基づき、式（１７）として表現されるＱＲ分解を利用して、頭部の姿勢を示す直行行列ＲＭ（ハット）を求める。
【０１０８】
【数１４】
0005828167.tif 000015
以上により、頭部の姿勢が推定される。
【０１０９】
再び、図４にもどって、続いて、このようにして推定した顔の姿勢により、現時刻において、視線を推定するのに適したカメラを選択、言い換えると、複数カメラで撮影された画像フレームのうちから視線推定を実行する画像フレームを選択する（ステップＳ１１６）。ここでは、利用可能な全ての画像フレームを利用するという方法もあり得るが、ＣＰＵ５６の処理負荷等の観点から、例えば「特徴点抽出時に左（右）眼の特徴点（目尻・目頭等）を抽出できた画像のうち、カメラ位置から撮影された画像が最も顔正面に近いものを左（右）眼の眼球中心位置の推定と虹彩位置検出に利用する」ということが可能である。なお、カメラと対象人物との位置関係によっては、左眼と右眼とで、視線推定に使用する画像フレームを、それぞれ異なるカメラで撮影された画像フレームとすることも可能である。すなわち、対象人物の位置関係によっては、右眼の存在する顔半面と左眼の存在する顔半面について、それぞれ、顔正面への近さ（たとえば、顔の方向とカメラの方向のなす角度の大きさ）がより近い画像フレームが、異なるカメラで撮影された画像フレームである場合がありうるので、この場合は、左眼と右眼とで、視線推定に使用する画像フレームを、それぞれ異なるカメラで撮影された画像フレームとする。
【０１１０】
そして、頭部の位置および頭部の姿勢の推定、推定に使用する画像フレームの選択の処理が終了すると、続いて、ＣＰＵ５６は、眼球中心推定部５６１４により、眼球の中心位置を推定する（Ｓ１１８）。
【０１１１】
すなわち、以下に説明するように、「眼球モデルパラメータの推定処理」を、「逐次型眼球モデル推定」として実行する処理を例にとって、眼球中心位置の推定処理および虹彩（または瞳孔）位置の検出処理について説明する。
【０１１２】
図９は、このような眼球モデルパラメータの推定処理を「逐次型眼球モデル推定」の処理として実行する場合の処理の流れを説明する概念図である。
【０１１３】
すなわち、実施の形態１の眼球モデルパラメータの推定処理については、平均的なモデルパラメータを初期値とした逐次型のアルゴリズムを用いる。
【０１１４】
図９を参照して、このアルゴリズムの実装例について説明している。まずアルゴリズムの開始時点では、事前の被験者実験により複数の対象人物について平均値を求めておく等の方法で得た眼球中心位置Ｘ０Ｌ（太字、太字はベクトルであることを表し、添え字Ｌは左目を表す）、Ｘ０Ｒ（太字、添え字Ｒは右目を表す）、眼球半径ｌ０、虹彩半径ｒ０を初期パラメータとして、眼球モデルパラメータが、たとえばハードディスク５４に保持されているものとする。ここで、眼球中心位置Ｘ０Ｌ、Ｘ０Ｒは、頭部モデルにおける座標系で表現されているものとする。
【０１１５】
ＣＰＵ５６は、ステップＳ１１６で選択された第１フレームに対する以下に説明するような目領域の画像に対するラベリング結果および頭部（顔）姿勢を入力として、上記初期パラメータを出発点として、非線形最適化処理によって眼球モデルパラメータである眼球中心位置Ｘ１Ｌ（太字）、Ｘ１Ｒ（太字）、大きさ眼球半径ｌ１、虹彩半径ｒ１および第１フレームにおける虹彩中心位置ｘＬ，１（太字），ｘＲ，１（太字）を得て、たとえば、ハードディスク５４に格納する（ステップＳ１１８，Ｓ１２０）。ここで、眼球中心位置Ｘ１Ｌ（太字）、Ｘ１Ｒ（太字）ならびに虹彩中心位置ｘＬ，１（太字），ｘＲ，１（太字）も、頭部モデルにおける座標系で表現されているものとする。
【０１１６】
より詳しく説明すると、以下のとおりである。
【０１１７】
（ＲＡＮＳＡＣ：Random sample consensus）
以下で説明するＲＡＮＳＡＣ処理は、外れ値を含むデータから安定にモデルパラメータを定めるための処理であり、これについては、たとえば、以下の文献に記載されているので、その処理の概略を説明するにとどめる。
【０１１８】
文献：M．A．Fischler and R．C．Bolles：”Random sample consensus：A paradigm for model fitting with applications to image analysis and automated cartography，”Comm．Of the ACM，Vol．24，pp．381-395，1981
文献：大江統子、佐藤智和、横矢直和：“画像徳著点によるランドマークデータベースに基づくカメラ位置・姿勢推定”、画像の認識・理解シンポジウム（MIRU2005）２００５年７月
上述のような眼球中心位置を初期値として、入力画像群に対して眼球モデルを当てはめ最適なモデルパラメータを推定する。ここで、入力画像から目の周辺領域を切り出し、色および輝度情報をもとに、以下の式（２２）に従って、虹彩（黒目）、白目、肌領域の３種類にラベル付けを行なう。
【０１１９】
【数１５】
0005828167.tif 000016
ここで、ｈｓ,ｋは、肌領域のｋ番目の画素の色相（hue）の値を表わす。ｈｉ，ｊは、入力画像中の画素（ｉ，ｊ）（第ｉ番目のフレームのｊ番目の画素）の色相の値を表わす。ｖｓ,ｋは、入力画像中の画素（ｉ，ｊ）の明度の値を表わす。
【０１２０】
図１０は、このようなラベリング処理例を示す図である。
【０１２１】
続いて各画素が虹彩モデルの内側にあるかどうかをチェックし、眼球モデルとの照合度を評価する（非線形最適化）。
【０１２２】
図１１は、このような右目および左目の虹彩と眼球モデルとの照合処理の概念を示す図である。
【０１２３】
ここで、このような非線形最適化処理を行なうにあたり、以下の式（２３）で表される距離ｄ｛LR｝,i,jを導入する。
【０１２４】
【数１６】
0005828167.tif 000017
一方、ｒ｛LR｝,i,jは、虹彩中心から画素（ｉ，ｊ）方向の虹彩半径を示すとすると、図１１に示すとおり、画素（ｉ，ｊ）が虹彩の外側にあれば、ｄ｛LR｝,i,jは、ｒ｛LR｝,i,jよりも大きな値を示す。
【０１２５】
ｒ｛LR｝,i,jは、以下の式（２４）に示すように、３次元の眼球中心位置Ｘi{LR}（太字）、対象画像フレーム内の画素位置（ｘｉ，ｊ，ｙｉ，ｊ）、眼球半径ｌｉ、虹彩半径ｒｉ、対象画像フレーム内の虹彩中心投影位置ｘ{LR}、ｉ（太字）の関数となる。なお、以下では、下付文字｛ＬＲ｝は、左を意味するＬ、右を意味するＲを総称するものとして使用する。また、添え字のｉは、第ｉ番目の画像フレームであることを示す。
【０１２６】
【数１７】
0005828167.tif 000018
なお、頭部の相対座標で考えているので、本来は、眼球中心位置は、フレームに拘わらず、一定の位置に存在するはずである。
【０１２７】
最後に、眼周辺の全画素についてｄ｛LR｝,i,jの評価を行ない、入力画像群に尤もよく当てはまる以下の式（２５）のモデルパラメータθを、式（２６）に従って決定する。
【０１２８】
【数１８】
0005828167.tif 000019
ここで、ｇi,j｛LR｝は、フレームi、画素jにおけるｄ｛LR｝,i,jの評価値であり、対象画素が虹彩領域か白目領域かによって、以下の式に従い、符合を反転させる。
【０１２９】
【数１９】
0005828167.tif 000020
ラベリングｕijが撮影された画像内の虹彩領域を反映し、関数Ｇi,j｛LR｝は、眼球モデルから算出される虹彩領域を反映している。
【０１３０】
そして、得られた虹彩中心投影位置および眼球中心位置の投影位置から第１フレームにおける視線方向を計算することができる（Ｓ１２２）。
【０１３１】
より具体的には、以上で求まった眼球中心位置と虹彩中心位置より視線方向を計算する。
【０１３２】
図１２は、視線方向を決定するためのモデルを説明する概念図である。
【０１３３】
図１２に示されるように、画像上での眼球半径をｌ、画像上での眼球中心と虹彩中心とのｘ軸方向、ｙ軸方向の距離をｄx、ｄyとすると、視線方向とカメラ光軸とのなす角、つまり、視線方向を向くベクトルがｘ軸およびｙ軸との成す角ψx、ψyは次式で表される。
【０１３４】
【数２０】
0005828167.tif 000021
なお、右目と左目のそれぞれで、視線が推定されるので、左右両眼について得られた視線方向の平均値を視線方向として出力する。ただし、たとえば、右目と左目とで、異なるカメラで撮影した画像フレームで視線を推定した場合などは、観測解像度、観測方向を考慮した重み付き平均としてもよい。
【０１３５】
また、以上の説明では、数１８では、３次元眼球中心位置と入力画像（２次元）に基づいて虹彩位置を求めて、これにより、実際に視線方向の推定（決定）をしている。そして、数２０は単に視線方向の表現を上で推定された（眼球中心−虹彩中心）表現から角度表現に変換しているものである。ただし、視線方向を得るための変換の方法としては、数２０のように、３次元の眼球中心を特定の画像上に投影した眼球中心投影位置と虹彩中心の位置関係から角度表現を得てもよいし、あるいは、逆に、画像上で観測された虹彩中心の位置を３次元の眼球モデル上に投影して、３次元の角度表現を得ることも可能である。
【０１３６】
さらに、ＣＰＵ５６は、顔（頭部）の対応付けができたｐ人のすべてについて、視線方向の推定が終了したかを判断する（Ｓ１２４）。
【０１３７】
終了していなければ、再び、処理はステップＳ１１２に復帰する。
【０１３８】
一方、ｐ人について処理が終了していれば（Ｓ１２４）、ＣＰＵ５６の視線方向推定部５６１８は、視線推定の結果を出力して、ハードディスク５４に格納する（Ｓ１２６）。表示制御部５６１３は、表示される画像上において、視線の方向を、たとえば、画像中の対象人物の虹彩の中心（瞳孔）から、視線方向に伸びる線分または矢印として表示する。
【０１３９】
続いて、ＣＰＵ５６は、この時刻（または対応するフレーム番号）ならびに人物を識別するための情報と関連付けて、頭部（顔）の観測領域内の２次元位置、頭部位置および頭部の姿勢推定結果をハードディスク５４に保存する（Ｓ１２８）。
【０１４０】
さらに、ＣＰＵ５６は、処理終了の指示があるかを判断し（Ｓ１３０）、指示がなければ、何番目のフレームが処理対象であるかを示す変数Ｎｆの値を１だけインクリメントし（Ｓ１５０）、次のフレームの処理のために現時刻（すなわち、次のフレームにとっては前時刻（または前フレーム））の推定結果をハードディスク５４から取得して（Ｓ１５２）、処理をステップＳ１０４．１〜Ｓ１０４．ｎに復帰させる。
【０１４１】
次フレーム以降の処理においては、前フレームで得られた眼球モデルパラメータを初期値と置き換え、新たに得られる入力画像フレームのデータに対して、非線形最適化処理を行なうことでモデルパラメータの更新および当該フレームにおける虹彩中心位置の推定、視線方向の推定を行なうことができる。
【０１４２】
ステップＳ１３０で処理の終了の指示がでていれば、ＣＰＵ５６は、処理を終了させる。
【０１４３】
このような処理を行なうと、複数のカメラの中から視線方向の推定に最も適したと考えられるカメラからの画像フレームを推定を実行する時刻ごとに選択することとなり、従来の視線方向の推定方式に比べて、カメラから対象人物までの距離やカメラの対象人物に対する方向の制約を緩和して、観測領域内の対象人物の視線の推定を行うことができ、複数のカメラによりいわゆるステレオ視を利用して、３次元空間での眼球中心や虹彩中心を導出する構成比べれば、より少ないカメラの台数で、観測領域内にいる対象人物の視線方向を推定することができる。また、たとえば、上述したように、左眼と右眼とで、視線推定に使用する画像フレームを、それぞれ異なるカメラで撮影された画像フレームとすることも可能であるから、この場合、従来のステレオカメラ方式とは異なり、虹彩（瞳孔）含めて、各特徴点を複数のカメラで同時に観測することを要求されず、この点で、顔の向きの制限を緩和して、比較的少数のカメラにより、観測範囲内における被測定対象者の視線方向のリアルタイムに推定し追跡することが可能となる。また、複数のカメラのうちから、視線推定を行う画像フレームを顔姿勢に応じて選択することになるので、より正確に視線の推定を行うことができる。しかも、視線方向の推定処理を短時間で開始できるという利点がある。
【０１４４】
（実施の形態１の変形例）
以上の説明では、視線方向の推定は、「眼球モデルパラメータの推定処理」を、「逐次型眼球モデル推定」として実行する場合を例にとって説明した。
【０１４５】
ただし、たとえば、最初の１〜Ｎフレームの間では、眼球モデルパラメータの推定処理にあてることとし、（Ｎ＋１）フレーム以後は、このようにして導出された眼球モデルパラメータを用いて、視線方向の推定を実行することとしてもよい。この場合は、視線方向の推定処理が開始されるまでにタイムラグが発生することになるものの、推定処理の最初から正確な視線方向の推定が可能となるとの利点がある。
【０１４６】
ところで、実施の形態１においては、ｉ）顔面上の複数の特徴点を別々のカメラで観測して顔姿勢を推定し、ｉｉ）推定された顔姿勢を用いて、眼球中心を推定し、ｉｉｉ）顔姿勢を推定したのと同じカメラで観測された虹彩（瞳孔）中心を抽出し、ｉｖ）眼球中心と虹彩中心とを組み合わせて視線方向を算出する、との手続きであった。
【０１４７】
これに対して、上述したような「実施の形態１の変形例」では、３次元の眼球中心位置と２次元の特徴点の関係が予めモデル化されているという前提の下に、顔面上の複数の特徴点を別々のカメラで観測し、観測された特徴点と上記モデルとを利用して眼球中心を推定するとともに、眼球中心が推定された画像フレームにおいて虹彩中心を抽出することで、視線の方向を推定するという構成とすることも可能である。
【０１４８】
さらに言えば、上述した実施の形態１においても、視線方向の推定を行なう対象となっている画像フレームよりも前の画像フレームにおいて、推定対象の画像フレームにおいて非線形最適化に使用される眼球モデルの最適化前のパラメータが予めもとまっているといえるので、実施の形態１についても、３次元の眼球中心位置と顔内の特徴点の関係が予めモデル化されていることを前提の下に、「顔面上の複数の特徴点を別々のカメラで観測し、観測された特徴点と上記モデルとを利用して眼球中心を推定するとともに、眼球中心が推定された画像フレームにおいて虹彩中心を抽出することで、視線の方向を推定する」という処理を行なっているといえる点では共通しているといえる。
【０１４９】
［実施の形態２］
以下では、複数カメラを利用した広域遠隔視線計測のための異なる実施の形態について説明する。
【０１５０】
実施の形態１で述べた通り、近年通常のカメラによる観測によって人の視線を計測する手法が提案され、視線計測時の観測距離の制約を大幅に緩和することが可能となった。しかしながら、一方で観測方向に関しては依然として大きな制約が残っており、現実場面における視線計測の利用を妨げている。
【０１５１】
図１３は、従来法の持つ観測時の制約について説明する図である。
【０１５２】
図１３（Ａ）に示す角膜反射に基づく手法では、赤外照明光の到達距離の制約のために近距離（通常１ｍ以下）での観測が必須となる。これに対して、図１３（Ｂ）に示す通常の画像観測を利用した手法では、観測距離の制約が大幅に緩和される。特に単眼カメラによる視線計測では一定以上の解像度で顔および目領域が観測できれば視線計測が可能であり、カメラとの距離に関わらず視線計測を行うことができる。
【０１５３】
図１４は、頭部姿勢が大きく変化する場合に必要となるシステムの概念を示す図である。
【０１５４】
図１３（Ｂ）の従来の手法では、視線計測に必要な画像特徴を観測するためにカメラに対するユーザの頭部姿勢の変化が比較的狭い範囲に限定されるため、図１４（Ｃ）に示すように頭部姿勢が大きく変化する場面で継続的に視線計測を行うためには、対象者を様々な方向から観測するために非常に多数のカメラを設置する必要がある。
【０１５５】
これに対して、図１４（Ｄ）に示すように、実施の形態２の手法では、視線計測に必要な画像特徴の観測を複数のカメラに分担させる。顔の特徴点および眼球領域がいずれかのカメラで観測できれば視線を計測することが可能であり、ユーザの広範囲の顔向き変化に対応することができる。
【０１５６】
図１５は、後に説明するような実施の形態２よる視線計測の適用例を示す図である。図１５では、２台のカメラによって対象人物を異なる方向から観測している。ここにみられるように、左の画像では被験者の顔の右側の特徴点および右目領域、右の画像では被験者の左側の特徴点および左目領域がそれぞれ観測されている。実施の形態２よる視線計測では、各カメラから計測した顔の特徴点を用いて頭部の位置・姿勢を推定し３次元の眼球中心位置を求める。また、各目領域画像から虹彩位置を検出し、眼球中心と虹彩中心を結ぶ方向として視線方向を推定している（図中、灰色の線分は推定された視線方向を示す）。これにより被験者の顔向き変化が大きい場合にも視線計測が可能となる。
（複数カメラによる視線計測処理）
以下では、実施の形態２の複数カメラを利用した視線計測手法の処理の詳細について述べる。
【０１５７】
図１６は、実施の形態２の視線方向の推定装置の構成を示す機能ブロック図である。
【０１５８】
特に限定されないが、実施の形態２の視線方向の推定装置も、実施の形態１の視線方向の推定装置と同様のハードウェアにより実現できる。したがって、図１６では、ソフトウェアにより実行される機能の主要な部分のみを記載している。図１６に明示的に記載されていない機能についても、実施の形態１と同様の構成が存在する。
【０１５９】
実施の形態２の視線方向の推定装置は、視線方向を眼球中心と虹彩中心を結ぶ３次元ベクトルとして推定する。ここで虹彩はカメラ３０．１〜３０．Ｎ（Ｎ：２以上の自然数）によって観測可能であるが、眼球中心は直接観測することができない。そこで各カメラで得られる観測画像から、顔検出部６６１０．１〜６６１０．Ｎが顔領域を検出し、顔特徴点検出部６６１２．１〜６６１２．Ｎが、ユーザの顔面上の特徴点を検出する。３次元頭部方向推定部６６２０が、顔形状の３次元モデルと顔特徴点の２次元観測座標から頭部の位置・姿勢を推定し、眼球中心推定部６６４０が、間接的に眼球中心の３次元座標を推定する。顔形状の３次元モデル(顔部品の３次元配置)と眼球中心位置の関係は、複数フレームの観測結果から、実施の形態１に示すのと同様の手法によりユーザに意識させることなく自動的にキャリブレーションすることができる。
【０１６０】
なお、このキャリブレーションの方法については、以下の文献にも開示がある。
【０１６１】
文献：山添大丈，内海章，米澤朋子，安部伸治：単眼カメラを用いた視線推定のための三次元眼球モデルの自動キャリブレーション．  電子情報通信学会論文誌．D，情報・システムJ94-D(6)，988-1006，2011-06-01
一方で、カメラ選択部６６３０は、頭部位置・姿勢の推定結果に基づいて、左右それぞれの目領域を観測可能なカメラを選択し、虹彩抽出部６６５０は、選択されたカメラからの画像に基づいて虹彩抽出を行う。すなわち、虹彩抽出部６６５０は、選択された各カメラで抽出された虹彩領域について楕円形上の当てはめにより３次元の虹彩中心位置を決定し、視線推定部６６６０は、眼球中心推定部６６４０の推定した眼球中心位置と虹彩抽出部６６５０の抽出した虹彩中心位置から視線方向を算出する。なお、ユーザの顔画像が１台のカメラのみによって観測される場合は、上記処理は単眼視線計測手法に一致する。
【０１６２】
図１６中、点線で囲まれた領域の機能は、図２に示したＣＰＵ５６がプログラムに基づいて実行する処理により達成される。
【０１６３】
上記の処理を実現するためには、以下に挙げる各項目についての検討が必要となる。
【０１６４】
・顔の３次元モデル
・顔、顔特徴点の決定
・頭部方向の推定
・虹彩の抽出
・視線方向の推定
以下では、これらの各項目について、順次、説明する。
（顔の３次元モデル）
顔面上の各特徴点の重心位置を原点として顔の正面方向をＺ軸の正方向とする座標系（Ｘ＝０に対して左右対称）を定義し、複数の被験者についての観測データに基づいて顔の３次元モデル(顔部品および眼球中心の配置) を生成することができる。
【０１６５】
以下の説明では、顔面上の特徴点として６点（両目尻、両目頭と口の両端点）を利用する。ここでp 番目の特徴点の３次元位置をＸｐ＝[Ｘｐ Ｙｐ Ｚｐ] Tとする（１≦ｐ≦６）。また、眼球中心の３次元位置をＸe,k＝[Ｘe,k  Ｙe,k  Ｚe,k]Tとする（ｋ∈｛left,right｝）。
（顔特徴点の決定）
顔検出および顔特徴点の検出については、それぞれ広く用いられているＨａａｒ−ｌｉｋｅ特徴量を用いた顔検出アルゴリズムおよび、Ｇａｂｏｒ特徴量を利用した顔特徴点抽出を利用することができる。
【０１６６】
Ｈａａｒ−ｌｉｋｅ特徴量を用いた顔検出アルゴリズムについては、以下の文献に開示がある。
【０１６７】
文献：Viola, P., and Jones, M. 2001. Rapid object detection using a boosted cascade of simple features. In Proc. CVPR2001, vol. 1, 511-518.
また、Ｇａｂｏｒ特徴量については、実施の形態１と同様である。
【０１６８】
なお、より広い範囲の頭部角度に対応させるために、顔特徴点モデルとして横顔データを含む複数の頭部姿勢における観測データを用いるものとする。
（頭部方向の推定）
上記の顔の３次元モデルを用いて顔の３次元位置、姿勢を決定する。
【０１６９】
カメラＣiの位置、姿勢をそれぞれＴci，Ｒciとし、焦点距離をｆci［pixel］、カメラ画像の中心座標を（ｕx,Ｃi，ｕy,Ｃi）とすると、透視投影変換により３次元点Ｘ＝［Ｘ，Ｙ，Ｚ］Tはカメラ上の座標ｘi＝［ｘi，ｙi］Tに、次式で投影される。
【０１７０】
【数２１】
0005828167.tif 000022
頭部の位置、姿勢をＲ，Ｔとすると、顔の特徴点ｐの３次元位置（Ｘｐ，Ｙｐ，Ｚｐ）は以下の式で画像上の点（ｘip，ｙip）に投影される。
【０１７１】
【数２２】
0005828167.tif 000023
ここで、Ａciは、カメラｉの内部パラメータ、ＲciとＴciはカメラｉの回転行列、並進ベクトルを表す。頭部の位置姿勢ＲとＴは次式で計算される再投影誤差を最小にすることで求めることができる。
【０１７２】
【数２３】
0005828167.tif 000024
（虹彩の抽出）
上記のようにして得られた頭部位置・姿勢に基づいて、目領域を観測可能なカメラが選択され、選択された各カメラにおける左右の各目領域画像が抽出される。
【０１７３】
図１７は、抽出された左右の各目領域画像を示す図である。
【０１７４】
目領域の抽出には、ベジェ曲線を用いてモデル化した瞼形状の当てはめ結果と眼球領域の境界を利用する。
【０１７５】
抽出後、各画素ごとの輝度値に基づいて虹彩・白目のラベル付けが行われる。
【０１７６】
図１８は、虹彩・白目のラベル付けが行われた状態を示す図である。
【０１７７】
図１８において、虹彩は、白の領域として示されている。最後に得られた虹彩領域に対して３次元虹彩モデルを当てはめることで虹彩位置が得られる。
（視線方向の推定）
実施の形態２よる視線計測では眼球の３次元モデルと虹彩中心を利用して視線方向を推定する。
【０１７８】
顔特徴点の画像上への投影と同様に、原点に対する顔の位置、姿勢をそれぞれＴ，Ｒとすると、左右の眼球中心位置Ｘe,kは、次式によりＸe,k（ハット）に移動する。
【０１７９】
【数２４】
0005828167.tif 000025
眼球半径をＬ、世界座標における視線方向ベクトルをＶｇとすると、世界座標における虹彩中心位置Ｘiris,kは次式で表わされる。
【０１８０】
【数２５】
0005828167.tif 000026
このときカメラＣiにおける虹彩中心の観測位置（ｘiiris,k，ｙiiris,k）は次式で計算される。
【０１８１】
【数２６】
0005828167.tif 000027
図１９は、虹彩の画像上の観測形状を示す図である。
【０１８２】
図１９に示されるとおり、虹彩が円形であり、またカメラと眼球との距離に対して眼球半径Ｌが十分に小さいと仮定すると、虹彩の画像上の観測形状は楕円で近似できる。
【０１８３】
虹彩半径をｒ
0005828167.tif 000028
とすると、カメラＣiの画像上での虹彩半径（長軸半径）ｒＣi,kは、以下の式で表される。
【０１８４】
【数２７】
0005828167.tif 000029
カメラＣiの画像上で視線方向Ｖgによって決まる眼球ｋに関する上記の楕円内に含まれる画素の集合をＧi,k（Ｖg）とし、ある画素Ｘが集合Ｇi,k（Ｖg）に含まれるか否かを示す関数ｆ（Ｖg，Ｘ）を次のように定義する。
【０１８５】
【数２８】
0005828167.tif 000030
虹彩へのラベル付けの結果として、カメラＣiの眼球ｋに関する目領域について虹彩領域に属する画素の集合をＨi,k、白目領域に属する画素の集合を／Ｈi,k （表記上は、Ｈi,kの上にバーが記載される）とすると、視線方向は以下の評価関数Ｅgを最大化する方向ベクトルＶｇとして求めることができる。
【０１８６】
【数２９】
0005828167.tif 000031
すなわち、眼球モデルに対して視線方向Ｖgを仮定し、評価関数Ｅgが最大となる、すなわち、もっとも画像上の虹彩の領域および白目の領域にフィットする視線方向Ｖgが、真の視線方向であるものと推定する。
【０１８７】
なお、以上の説明においては、虹彩領域と白目の領域の双方を考慮し、モデルと撮影された画像とをフィッティングするものとして説明したが、フィッティングにあたっては、虹彩領域のみを考慮することも可能である。
【０１８８】
また、眼球半径Ｌと眼球中心とは、複数の人間について事前に計測された平均的な値を用いることが可能である。さらに、このような眼球半径Ｌと眼球中心とは、実施の形態１または実施の形態１の変形例で説明したのと同様の方法により、このような平均的な値を初期値とし「眼球モデルパラメータの推定処理」を撮影の時間経過とともに実行して、これらの値を初期値から逐次更新する構成としてもよい。
［実験結果］
実施の形態２よる視線計測の有効性を確認するため、以下の実験を行った。
【０１８９】
図２０は、この実験の実験環境を示す概念図である。
【０１９０】
図２０を参照して、実験環境はカメラ（Pointgray GRAS-50S5M-C)）２台（被験者からみて右方向に設置したカメラをcam1、左方向をcam2 とする）を１．８ｍ間隔に配置し、１０２４×７６８の解像度で撮影した(以下の実験において典型的な顔のサイズは３２０×２４０程度である)。
【０１９１】
（頭部姿勢の推定の評価）
まず、実装したシステムを用いて頭部姿勢の推定について評価を行った。
【０１９２】
図２１は、頭部姿勢の追跡結果の例を示す図である。
【０１９３】
ここでは被験者が２台のカメラから等距離にあって両カメラの中点から１．５ｍ離れた位置に立ち、水平面上で左方向(−６０°）  から右方向（６０°) に顔を動かした。
【０１９４】
図２１上に見られるように、実施の形態２の視線方向の推定装置により連続的に頭部姿勢の追跡が行われていることがわかる。
【０１９５】
図２１の下は、このときの左右の眼領域に関する各カメラ画像上での計測可否についての判定結果を示している。この結果から，このときの被験者について頭部姿勢に依らず左右の目領域が，少なくともいずれか一方のカメラで取得できると判定されていることがわかる。実施の形態２では、この判定結果に基づいて虹彩抽出に利用する画像領域を決定する。
【０１９６】
図２２は、視線推定の処理結果の例を示す図である。
【０１９７】
ここでは、図２１と同様に被験者は水平方向に顔向きを変化させている。ここにみられるように、２台のカメラの観測を組み合わせることで適切に頭部姿勢および視線方向が推定されていることがわかる。特に、一方のカメラが完全に側方からの観測になったり(同図２段目および最下段)、２台のカメラで共通する観測が得られない場合(同４段目) でも視線推定が行われていることに注意されたい。
【０１９８】
図２３は、視線推定精度を示す図である。ここでは、環境中の方向既知の同一点を注視しながら顔向きを水平方向に変化させ、各顔向き条件についての視線推定誤差を算出した。３５°まで頭部向きを変化させた際の平均誤差は８° 未満であった。
（遠隔視線計測アプリケーション）
遠隔視線計測手法を利用すると、日常環境の中で人々の興味や注意に関する情報を獲得することができ、これまで困難だった様々なサービスが可能になる。
【０１９９】
例えば、遠隔視線計測システムとロボットとを連動させることでロボットと人が視線を介してコミュニケーションできるシステムが実現されうる。このシステムは、ロボットがユーザと一緒の物を見る行動(共同注視) やロボットをユーザの方向へ向かせ話しかける(働きかけ) をすることによりロボットとユーザ間でコミュニケーションを誘発させるシステムである。
【０２００】
このように、視線情報を日常環境で自然なかたちで利用するためには、ユーザの頭部位置・姿勢を限定せず、できるだけ広い範囲で視線情報を計測できることが望ましい。
【０２０１】
図２４は、視線計測を利用した案内システムの例を示す図である。
【０２０２】
ここでは、案内板の前にいるユーザの興味を視線によって計測し、ユーザの興味に合わせた情報を画像や音声により案内することを想定している。しかし、図２４（Ａ）に示すように、従来のシステムでは特に頭部姿勢に関する制約が大きいため、広い顔向き範囲で連続的に視線計測を行うためには、多数のカメラを利用する必要がある。
【０２０３】
一方、実施の形態２の視線方向の推定装置、視線方向の推定方法またはコンピュータに当該視線方向の推定方法を実行させるためのプログラムでは、比較的少数の複数カメラを利用し、広い顔向き範囲についてより少ないカメラで視線方向を計測できる。
【０２０４】
あるいは、運転中のドライバーの視線など、大きな顔向き変化を想定しなければならない場面は、他にも多く、実施の形態２よる視線計測によってこれまで適用の難しかった分野での視線情報の利用が可能になる。
【０２０５】
以上説明したように、実施の形態２の視線方向の推定装置、視線方向の推定方法またはコンピュータに当該視線方向の推定方法を実行させるためのプログラムによれば、複数のカメラの観測を組み合わせることで、従来の視線計測手法の持つ顔向きに関する制約を緩和し、広い頭部姿勢範囲について視線計測が可能な遠隔視線計測が提供される。実施の形態２よる視線計測では、顔面上の特徴点および左右の目領域画像の観測がそれぞれ異なるカメラで行われることを許容し、頭部の位置・姿勢および視線方向の推定を行う。そのため少数のカメラによって広い頭部姿勢範囲をカバーできる。実施の形態２よる視線計測により日常生活や公共の場における視線アプリケーションの適用範囲を大幅に拡大することができる。
【０２０６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０２０７】
２０  視線方向の推定装置、３０．１〜３０．ｎ  カメラ、４０  コンピュータ本体、４２  ディスプレイ、４６  キーボード、４８  マウス、５０  光学ディスクドライブ、５２  メモリカードドライブ、５４  ハードディスク、６０  ＲＡＭ、６４  メモリカード、６６  バス、６８  画像取込装置、５６０２  画像キャプチャ処理部、５６０４  画像データ記録処理部、５６０６  検出部、５６０８  部、５６１０  第１の頭部位置・姿勢推定部、５６１２  第２の頭部位置・姿勢推定部、５６１３  表示制御部、５６１４  眼球中心推定部、５６１８  視線方向推定部。
【図２】
0005828167.tif 000032
【図３】
0005828167.tif 000033
【図４】
0005828167.tif 000034
【図６】
0005828167.tif 000035
【図７】
0005828167.tif 000036
【図１１】
0005828167.tif 000037
【図１６】
0005828167.tif 000038
【図２０】
0005828167.tif 000039
【図２１】
0005828167.tif 000040
【図２５】
0005828167.tif 000041
【図２６】
0005828167.tif 000042
【図１】
0005828167.tif 000043
【図５】
0005828167.tif 000044
【図８】
0005828167.tif 000045
【図９】
0005828167.tif 000046
【図１０】
0005828167.tif 000047
【図１２】
0005828167.tif 000048
【図１３】
0005828167.tif 000049
【図１４】
0005828167.tif 000050
【図１５】
0005828167.tif 000051
【図１７】
0005828167.tif 000052
【図１８】
0005828167.tif 000053
【図１９】
0005828167.tif 000054
【図２２】
0005828167.tif 000055
【図２３】
0005828167.tif 000056
【図２４】
0005828167.tif 000057