(57)【特許請求の範囲】
【請求項１】
対象者の眼を撮像することで眼画像を取得する第１及び第２のカメラと、
前記第１のカメラに取り付けられ、前記対象者の眼を照明する第１の光源と、
前記第２のカメラに取り付けられ、前記対象者の眼を照明する第２の光源と、
前記第１及び第２のカメラのレンズの光軸から離れる位置に配置され、前記対象者の眼を照明する少なくとも２つの第３の光源と、
前記第１〜第３の光源の点灯を制御する点灯制御部と、
前記第１及び第２のカメラのそれぞれによって取得された前記眼画像を対象にして、瞳孔中心の位置及び角膜反射の位置を検出し、前記瞳孔中心の位置及び前記角膜反射の位置を基に前記対象者の視線方向を算出する算出部と、を備え、
前記算出部は、前記眼画像において前記第１又は第２の光源による角膜反射の位置が検出できなかった際には、前記眼画像において前記第３の光源による２つの角膜反射の位置を検出し、当該２つの角膜反射の位置を基に前記第１又は第２の光源による角膜反射の位置を推定し、推定した前記角膜反射の位置を用いて前記対象者の視線方向を算出する、
視線検出装置。
【請求項２】
前記算出部は、前記第１及び第２のカメラによって取得された２つの前記眼画像を基に、前記瞳孔中心の３次元位置を算出し、
前記第１又は２の光源の３次元位置と、第３の光源の３次元位置と、前記瞳孔中心の３次元位置とを用いて、前記眼画像における第１又は第２の光源による角膜反射の位置を推定する、
請求項１記載の視線検出装置。
【請求項３】
前記算出部は、前記第１又は前記第２の光源の３次元位置と第３の光源のうちの一方の光源の３次元位置と前記瞳孔中心の３次元位置とを通る第１の平面と、前記第１又は前記第２の光源の３次元位置と第３の光源のうちの他方の光源の３次元位置と前記瞳孔中心の３次元位置とを通る第２の平面と、の位置を特定し、
前記第１又は第２のカメラの画像面上における、前記第１の平面の傾きと、前記第２の平面の傾きとを算出し、
前記第１又は第２のカメラによって取得された２つの前記眼画像上で、前記一方の光源による角膜反射の位置を通り前記第１の平面の傾きに対応する傾きを有する直線と、前記他方の光源による角膜反射の位置を通り前記第２の平面の傾きに対応する傾きを有する直線との交点を、第１又は第２の光源による角膜反射の位置として算出する、
請求項１又は２記載の視線検出装置。
【請求項４】
前記算出部は、いったん前記瞳孔中心の３次元位置を用いて前記眼画像における第１又は第２の光源による角膜反射の位置を推定した後に、推定した前記角膜反射の位置を用いて前記対象者の視線方向を算出し、
さらに、前記視線方向と前記瞳孔中心の３次元位置とを基に前記対象者の角膜球中心の３次元位置を算出し、前記角膜球中心の３次元位置を用いて前記眼画像における第１又は第２の光源による角膜反射の位置を推定した後に、推定した前記角膜反射の位置を用いて前記対象者の視線方向を再度算出する、
請求項２記載の視線検出装置。
【請求項５】
前記第３の光源は、３つ以上で前記第１及び第２のカメラの周囲に配置されている、
請求項１〜４のいずれか１項に記載の視線検出装置。
【請求項６】
前記第３の光源は、第１及び第２のカメラの近傍から見て等角度間隔で前記第１及び第２のカメラの周囲に配置されている、
請求項５記載の視線検出装置。
【請求項７】
前記第３の光源は、第１及び第２のカメラの近傍から見て等角度間隔で前記第１及び第２のカメラの周囲に配置された光源群を複数有し、
前記点灯制御部は、前記複数の光源群ごとに点灯させるように制御する、
請求項６記載の視線検出装置。
【請求項８】
前記第３の光源は、前記第１及び第２のカメラの近傍からの距離が不均一となるように配置されている、
請求項６記載の視線検出装置。
【請求項９】
前記対象者の眼を照明する光源が取り付けられたカメラを前記第１及び第２のカメラを含めて３組以上備える、
請求項１〜８のいずれか１項に記載の視線検出装置。
【請求項１０】
第１及び第２のカメラを用いて対象者の眼を撮像することで眼画像を取得する眼画像取得ステップと、
前記第１のカメラに取り付けられた第１の光源と、前記第２のカメラに取り付けられた第２の光源とを用いて、前記対象者の眼を照明する照明ステップと、
記第１及び第２のカメラのレンズの光軸から離れる位置に配置された少なくとも２つの第３の光源を用いて、前記対象者の眼を照明する補助照明ステップと、
前記第１及び第２のカメラのそれぞれによって取得された前記眼画像を対象にして、瞳孔中心の位置及び角膜反射の位置を検出し、前記瞳孔中心の位置及び前記角膜反射の位置を基に前記対象者の視線方向を算出する算出ステップと、を備え、
前記算出ステップでは、前記眼画像において前記第１又は第２の光源による角膜反射の位置が検出できなかった際には、前記眼画像において前記第３の光源による２つの角膜反射の位置を検出し、当該２つの角膜反射の位置を基に前記第１又は第２の光源による角膜反射の位置を推定し、推定した前記角膜反射の位置を用いて前記対象者の視線方向を算出する、
視線検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人の画像から視線を検出する視線検出装置及び視線検出方法に関する。
【背景技術】
【０００２】
近年、近赤外光源等の光源とビデオカメラを使用した視線検出装置が普及しつつある。このような視線検出装置では、「瞳孔−角膜反射法」と呼ばれる検出方法が用いられている。「瞳孔−角膜反射法」とは、ビデオカメラに対する被験者の視線方向の角度の変化によりビデオカメラで得られる画像中の瞳孔と角膜反射との位置関係が変化することを用いて、視線方向を検出する方法である。この方法では、予め座標が既知の点を被験者に見させて、画像における瞳孔と角膜反射との位置関係と視線方向の角度との関係を予め求めておいた上で、その関係を利用して視線方向が検出される。瞳孔−角膜反射法は視線検出精度が高いという利点を持つ。
【０００３】
一方で、瞳孔−角膜反射法は視線方向の検出が可能な角度範囲が限られる傾向がある。すなわち、従来の視線検出装置では、カメラに光源が取り付けられていることが一般的なため、被験者がカメラに向かう方向から大きく外れた方向を見た場合に、角膜反射像が出現しないため、視線方向が検出できなくなる。
【０００４】
上記の問題を考慮した視線検出装置としては、下記特許文献１に記載の装置が知られている。この装置では、互いに異なる位置に配置された複数の光源を備え、第１の光源が被験者を照明している間に被験者の眼を撮影した第１の画像と、第２の光源が被験者を照明している間に被験者の眼を撮影した第２の画像とを得て、第１及び第２の画像のうちのどちらかで検出された瞳孔中心及び角膜反射像との位置関係に応じて視線方向を検出する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５６２１４５６号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来の装置では、被験者の視線方向を広い範囲で検出しようとすると複数の光源をカメラから離して配置する必要があるが、そのように配置するとその複数の光源の照明によって検出される角膜反射の位置の間にばらつきが生じてしまう。その結果、従来の装置では、視線方向を広い範囲で検出しながら視線方向の検出精度を保つことは困難である。
【０００７】
本発明は、上記課題に鑑みて為されたものであり、被験者の視線方向を広い範囲で検出しながら、その視線方向の検出精度を保つことが可能な視線検出装置及び視線検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明の一形態にかかる視線検出装置は、対象者の眼を撮像することで眼画像を取得する第１及び第２のカメラと、第１のカメラに取り付けられ、対象者の眼を照明する第１の光源と、第２のカメラに取り付けられ、対象者の眼を照明する第２の光源と、第１及び第２のカメラのレンズの光軸から離れる位置に配置され、対象者の眼を照明する少なくとも２つの第３の光源と、第１〜第３の光源の点灯を制御する点灯制御部と、第１及び第２のカメラのそれぞれによって取得された眼画像を対象にして、瞳孔中心の位置及び角膜反射の位置を検出し、瞳孔中心の位置及び角膜反射の位置を基に対象者の視線方向を算出する算出部と、を備え、算出部は、眼画像において第１又は第２の光源による角膜反射の位置が検出できなかった際には、眼画像において第３の光源による２つの角膜反射の位置を検出し、当該２つの角膜反射の位置を基に第１又は第２の光源による角膜反射の位置を推定し、推定した角膜反射の位置を用いて対象者の視線方向を算出する。
【０００９】
或いは、本発明の他の形態にかかる視線検出方法は、第１及び第２のカメラを用いて対象者の眼を撮像することで眼画像を取得する眼画像取得ステップと、第１のカメラに取り付けられた第１の光源と、第２のカメラに取り付けられた第２の光源とを用いて、対象者の眼を照明する照明ステップと、記第１及び第２のカメラのレンズの光軸から離れる位置に配置された少なくとも２つの第３の光源を用いて、対象者の眼を照明する補助照明ステップと、第１及び第２のカメラのそれぞれによって取得された眼画像を対象にして、瞳孔中心の位置及び角膜反射の位置を検出し、瞳孔中心の位置及び角膜反射の位置を基に対象者の視線方向を算出する算出ステップと、を備え、算出ステップでは、眼画像において第１又は第２の光源による角膜反射の位置が検出できなかった際には、眼画像において第３の光源による２つの角膜反射の位置を検出し、当該２つの角膜反射の位置を基に第１又は第２の光源による角膜反射の位置を推定し、推定した角膜反射の位置を用いて対象者の視線方向を算出する。
【００１０】
上記形態の視線検出装置或いは視線検出方法によれば、第１の光源が取り付けられた第１のカメラ及び第２の光源が取り付けられた第２のカメラによって、対象者の眼が照明された状態での眼画像が取得され、それぞれの眼画像における瞳孔中心の位置及び角膜反射の位置を基に対象者の視線方向が検出される。その際、第１又は第２の光源による角膜反射の位置が検出できなかった際には、第１及び第２のカメラのレンズの光軸から離れて配置された少なくとも２つの第３の光源による眼画像上の２つの角膜反射の位置が検出され、その２つ角膜反射の位置を用いて第１又は第２の光源による角膜反射の位置が推定され、それを用いて視線方向が検出される。これにより、常にカメラに近い第１又は第２の光源による角膜反射の位置が推定されて視線方向が検出されるので、被験者の視線方向を広い範囲で検出しながら、その視線方向の検出精度を保つことができる。
【００１１】
ここで、算出部は、第１及び第２のカメラによって取得された２つの眼画像を基に、瞳孔中心の３次元位置を算出し、第１又は２の光源の３次元位置と、第３の光源の３次元位置と、瞳孔中心の３次元位置とを用いて、眼画像における第１又は第２の光源による角膜反射の位置を推定する、こととしてもよい。この場合、第１及び第２の光源による角膜反射の位置を幾何学的に容易に推定できる。
【００１２】
また、算出部は、第１又は第２の光源の３次元位置と第３の光源のうちの一方の光源の３次元位置と瞳孔中心の３次元位置とを通る第１の平面と、第１又は第２の光源の３次元位置と第３の光源のうちの他方の光源の３次元位置と瞳孔中心の３次元位置とを通る第２の平面と、の位置を特定し、第１又は第２のカメラの画像面上における、第１の平面の傾きと、第２の平面の傾きとを算出し、第１又は第２のカメラによって取得された２つの眼画像上で、一方の光源による角膜反射の位置を通り第１の平面の傾きに対応する傾きを有する直線と、他方の光源による角膜反射の位置を通り第２の平面の傾きに対応する傾きを有する直線との交点を、第１又は第２の光源による角膜反射の位置として算出する、こととしてもよい。この場合には、第１及び第２の光源による角膜反射の位置を、２つの直線の交点を求めて算出することにより、幾何学的により単純かつ正しく推定できる。
【００１３】
また、算出部は、いったん瞳孔中心の３次元位置を用いて眼画像における第１又は第２の光源による角膜反射の位置を推定した後に、推定した角膜反射の位置を用いて対象者の視線方向を算出し、さらに、視線方向と瞳孔中心の３次元位置とを基に対象者の角膜球中心の３次元位置を算出し、角膜球中心の３次元位置を用いて眼画像における第１又は第２の光源による角膜反射の位置を推定した後に、推定した角膜反射の位置を用いて対象者の視線方向を再度算出する、こととしてもよい。この場合には、第１及び第２の光源による角膜反射の位置の推定の精度を確保することができ、その結果、視線方向の検出精度をより一層安定化することができる。
【００１４】
また、第３の光源は、３つ以上で第１及び第２のカメラの周囲に配置されていてもよい。この場合には、視線方向が検出できる範囲を第１及び第２のカメラの周囲に広げることができる。
【００１５】
また、第３の光源は、第１及び第２のカメラの近傍から見て等角度間隔で第１及び第２のカメラの周囲に配置されていてもよい。この場合、視線方向が検出できる範囲を第１及び第２のカメラの周囲に効率的に広げることができる。
【００１６】
また、  第３の光源は、第１及び第２のカメラの近傍から見て等角度間隔で第１及び第２のカメラの周囲に配置された光源群を複数有し、点灯制御部は、複数の光源群ごとに点灯させるように制御する、こととしてもよい。この場合は、光源群毎の点灯により生じる角膜反射の位置を容易に特定でき、それらの位置を基に眼画像上の第１及び第２の光源による角膜反射の位置を容易に推定できる。その結果、広い範囲での視線方向の検出を容易に実現できる。
【００１７】
さらに、第３の光源は、第１及び第２のカメラの近傍からの距離が不均一となるように配置されていてもよい。この場合は、複数の第３の光源毎の点灯により生じる角膜反射の位置を容易に特定でき、それらの位置を基に眼画像上の第１及び第２の光源による角膜反射の位置を容易に推定できる。その結果、広い範囲での視線方向の検出を容易に実現できる。
【００１８】
また、対象者の眼を照明する光源が取り付けられたカメラを第１及び第２のカメラを含めて３組以上備えていてもよい。かかる構成を採れば、対象者において生じる眼鏡反射や対象者の睫毛等によって視線方向が検出できなくなることを防止できる。
【発明の効果】
【００１９】
本発明によれば、被験者の視線方向を広い範囲で検出しながら、その視線方向の検出精度を保つことができる。
【図面の簡単な説明】
【００２０】
【図１】実施形態に係る視線検出装置を示す斜視図である。
【図２】カメラのレンズ部分を示す平面図である。
【図３】実施形態に係る画像処理装置のハードウェア構成を示す図である。
【図４】実施形態に係る視線検出装置の機能構成を示すブロック図である。
【図５】実施形態に係る視線検出装置の動作を示すフローチャートである。
【図６】視線の検出を説明するための図である。
【図７】本実施形態にかかる算出部が特定する、角膜球中心Ｃ、２つの補助光源の３次元座標、及びカメラの光源の３次元座標との位置関係を示す図である。
【図８】本実施形態にかかるカメラによって得られる差分前瞳孔画像の画像イメージを示す図である。
【図９】本実施形態にかかる補助光源の配置状態を示す図である。
【図１０】本実施形態にかかる視線検出装置によって計算される差分前瞳孔画像上の２つの直線のイメージを示す図である。
【図１１】人間の眼球の構造を簡略化して示す図である。
【図１２】本実施形態のカメラ１０に取り付けられた光源１３によって生じる角膜反射の検出状態を示す図である。
【図１３】本実施形態の補助光源４０によって生じる角膜反射の検出状態を示す図である。
【図１４】本実施形態の視線検出装置１によって取得されたカメラ画像とその解析画像を示す図である。
【図１５】変形例にかかる補助光源の配置状態を示す図である。
【図１６】変形例にかかる光源の点灯タイミング、及びカメラの撮影タイミングを示すタイミングチャートである。
【図１７】変形例にかかる光源の点灯タイミング、及びカメラの撮影タイミングを示すタイミングチャートである。
【図１８】別の変形例にかかる補助光源の配置状態を示す図である。
【図１９】別の変形例にかかる光源の点灯タイミング、及びカメラの撮影タイミングを示すタイミングチャートである。
【発明を実施するための形態】
【００２１】
以下、図面を参照しつつ本発明に係る視線検出装置及び視線検出方法の好適な実施形態について詳細に説明する。なお、図面の説明においては、同一又は相当部分には同一符号を付し、重複する説明を省略する。
【００２２】
［視線検出装置の構成］
まず、図１〜４を用いて、実施形態に係る視線検出装置１の構成を説明する。視線検出装置１は、対象者の眼を撮像することで対象者の視線方向を検出するコンピュータシステムであり、この装置により、本実施形態に係る視線検出方法が実施される。対象者とは、視線方向を検出する対象となる人であり、被験者ともいうことができる。視線検出装置１および視線検出方法の利用目的は何ら限定されず、例えば、よそ見運転の検出、運転者のサイドミラーやルームミラーの安全確認動作の確認、運転者の眠気の検出、商品の興味の度合いの調査、アミューズメント装置等に利用されるコンピュータへのデータ入力、乳幼児の自閉症診断等の診断用装置などに視線検出装置１を利用することができる。
【００２３】
図１に模式的に示すように、視線検出装置１は、ステレオカメラとして機能する一対のカメラ（第１のカメラおよび第２のカメラ）１０と画像処理装置２０と補助光源（第３の光源）４０とを備える。以下では、必要に応じて、一対のカメラ１０を、対象者Ａの左側にある左カメラ１０Ｌと、対象者Ａの右側にある右カメラ１０Ｒとに区別する。本実施形態では、視線検出装置１は、対象者Ａが見る対象であるディスプレイ装置３０をさらに備えるが、視線検出装置１の利用目的は上記のように限定されないので、対象者Ａの視線の先にある物はディスプレイ装置３０に限定されず、例えば自動車のフロントガラスでもあり得る。したがって、ディスプレイ装置３０は視線検出装置１における必須の要素ではない。それぞれのカメラ１０は画像処理装置２０と無線または有線により接続され、カメラ１０と画像処理装置２０との間で各種のデータまたは命令が送受信される。各カメラ１０に対しては予めカメラ較正が行われる。
【００２４】
カメラ１０は対象者Ａの瞳孔およびその周辺を含む眼を撮影するために用いられる。一対のカメラ１０は水平方向に沿って所定の間隔をおいて配され、かつ、対象者Ａが眼鏡をかけているときの顔画像における反射光の写り込みを防止する目的で対象者Ａの顔より低い位置に設けられる。水平方向に対するカメラ１０の仰角は、瞳孔の確実な検出と対象者Ａの視野範囲の妨げの回避との双方を考慮して、例えば２０〜３５度の範囲に設定される。個々のカメラ１０に対しては予めカメラ較正が行われる。
【００２５】
本実施形態では、カメラ１０は、インターレーススキャン方式の一つであるＮＴＳＣ方式のカメラである。ＮＴＳＣ方式では、１秒間に３０枚得られる１フレームの画像データは、奇数番目の水平画素ラインで構成される奇数フィールドと、偶数番目の水平画素ラインで構成される偶数フィールドから構成され、奇数フィールドの画像と偶数フィールドの画像とが１／６０秒の間隔で交互に撮影されることで生成される。したがって、一つのフレームは、一対の奇数フィールドおよび偶数フィールドに相当する。カメラ１０は、画像処理装置２０からの命令に応じて対象者Ａを撮像し、画像データを画像処理装置２０に出力する。
【００２６】
カメラ１０のレンズ部分を図２に模式的に示す。この図に示すように、カメラ１０では、対物レンズ１１が円形状の開口部１２に収容され、開口部１２の外側に光源（第１の光源又は第２の光源）１３が取り付けられている。光源１３は、対象者Ａの眼に向けて照明光を照射するための機器であり、複数の発光素子１３ａと複数の発光素子１３ｂとから成る。発光素子１３ａは、出力光の中心波長が８５０ｎｍの半導体発光素子（ＬＥＤ）であり、開口部１２の縁に沿って等間隔でリング状に配される。発光素子１３ｂは、出力光の中心波長が９４０ｎｍの半導体発光素子であり、発光素子１３ａの外側に等間隔でリング状に配される。したがって、カメラ１０の光軸から発光素子１３ｂまでの距離は、該光軸から発光素子１３ａまでの距離よりも大きい。それぞれの発光素子１３ａ，１３ｂは、カメラ１０の光軸に沿って照明光を出射するように設けられる。なお、光源１３の配置は図２に示す構成に限定されず、カメラをピンホールモデルとみなすことができれば他の配置であってもよい。光源１３は、画像処理装置２０からの命令に応じたタイミングで照明光を出射する。
【００２７】
図１に戻って、視線検出装置１には、カメラ１０Ｒの光源（第１の光源）１３及びカメラ１０Ｌの光源（第２の光源）１３の周囲に複数の補助光源４０が設けられている。この補助光源４０は、それぞれ、単一の半導体発光素子等の発光素子によって構成されていてもよいし、光源１３と同様にリング状に配置された複数の発光素子によって構成されていてもよいし、複数の発光素子がひとかたまりで配置されていてもよい。補助光源４０は、例えば近赤外波長等の予め設定された波長の出力光を出力して対象者Ａの眼を照明可能な光源であり、少なくとも２つ設けられている。それぞれの補助光源４０は、２つの光源１３の中心からカメラ１０Ｒ及びカメラ１０Ｌの対物レンズ１１の光軸に垂直な方向に離れる位置に配置される。従って、それぞれのカメラ１０の光軸から補助光源４０までの距離は、該光軸からそれぞれのカメラの光源１３までの距離よりも大きい。また、それぞれの補助光源４０は、画像処理装置２０と無線または有線により接続され、画像処理装置２０からの命令に応じたタイミングで照明光を出射する。
【００２８】
画像処理装置２０は、カメラ１０、光源１３、及び補助光源４０の制御と、対象者Ａの視線方向の検出とを実行するコンピュータである。画像処理装置２０は、据置型または携帯型のパーソナルコンピュータ（ＰＣ）により構築されてもよいし、ワークステーションにより構築されてもよいし、他の種類のコンピュータにより構築されてもよい。あるいは、画像処理装置２０は複数台の任意の種類のコンピュータを組み合わせて構築されてもよい。複数台のコンピュータを用いる場合には、これらのコンピュータはインターネットやイントラネットなどの通信ネットワークを介して接続される。
【００２９】
画像処理装置２０の一般的なハードウェア構成を図３に示す。画像処理装置２０は、オペレーティングシステムやアプリケーション・プログラムなどを実行するＣＰＵ（プロセッサ）１０１と、ＲＯＭおよびＲＡＭで構成される主記憶部１０２と、ハードディスクやフラッシュメモリなどで構成される補助記憶部１０３と、ネットワークカードあるいは無線通信モジュールで構成される通信制御部１０４と、キーボードやマウスなどの入力装置１０５と、ディスプレイやプリンタなどの出力装置１０６とを備える。
【００３０】
後述する画像処理装置２０の各機能要素は、ＣＰＵ１０１または主記憶部１０２の上に所定のソフトウェアを読み込ませ、ＣＰＵ１０１の制御の下で通信制御部１０４や入力装置１０５、出力装置１０６などを動作させ、主記憶部１０２または補助記憶部１０３におけるデータの読み出しおよび書き込みを行うことで実現される。処理に必要なデータやデータベースは主記憶部１０２または補助記憶部１０３内に格納される。
【００３１】
図４に示すように、画像処理装置２０は機能的構成要素として点灯制御部２１、画像取得部２２、及び算出部２３を備える。点灯制御部２１は、光源１３及び補助光源４０の点灯タイミングを制御する。画像取得部２２は、カメラ１０の撮影タイミングを光源１３及び補助光源４０の点灯タイミングに同期して制御することで、カメラ１０から画像データ（眼画像のデータ）を取得する機能要素である。算出部２３は、画像データから得られる視線ベクトルに基づいて視線方向を検出する機能要素である。視線とは、対象者の瞳孔中心と該対象者の注視点（対象者が見ている点）とを結ぶ線である。なお、「視線」という用語は、起点、終点、および方向の意味（概念）を含む。また、「視線ベクトル」とは、対象者の視線の方向をベクトルで表したもので、「視線方向」を表す一形態である。画像処理装置２０の検出結果の視線方向の出力先は何ら限定されない。例えば、画像処理装置２０は判定結果を画像、図形、またはテキストでモニタに表示してもよいし、メモリやデータベースなどの記憶装置に格納してもよいし、通信ネットワーク経由で他のコンピュータシステムに送信してもよい。
【００３２】
［視線検出方法］
次に、図５〜８を用いて、視線検出装置１の動作について説明するとともに、本実施形態に係る視線検出方法について説明する。
【００３３】
（処理の概要）
視線検出方法の概要を図５に示す。まず、点灯制御部２１が光源１３及び補助光源４０の点灯タイミングを制御し、そのタイミングに合わせて画像取得部２２がそれぞれのカメラ１０から明瞳孔画像（眼画像）および暗瞳孔画像（眼画像）を取得する（ステップＳ１１；照明ステップ、補助照明ステップ、眼画像取得ステップ）。続いて、算出部２３が、それぞれのカメラ１０からの明瞳孔画像及び暗瞳孔画像を対象にして、眼画像中の瞳孔中心の位置及び角膜反射の位置を検出する（ステップＳ１２）。そして、算出部２３は、眼画像中で光源１３による角膜反射の位置が検出されているか否かを検出し（ステップＳ１３）、角膜反射の位置が検出された場合には（ステップＳ１３；ＹＥＳ）、検出した角膜反射の位置及び瞳孔中心の位置を用いて視線ベクトルを算出する（ステップＳ１４）。一方、角膜反射の位置が検出されなかった場合には（ステップＳ１３；ＮＯ）、眼画像中で補助光源４０による角膜反射の位置を少なくとも２つ検出する（ステップＳ１５）。その後、検出した２つの補助光源４０による角膜反射の位置を用いて光源１３による角膜反射の位置を推定する（ステップＳ１６）。次に、推定した角膜反射の位置と瞳孔中心の位置とを用いて視線ベクトルを算出する（ステップＳ１７、以上算出ステップ）。以上の処理は、視線検出処理の終了の指示が受け付けられるまで、繰り返し実行される（ステップＳ１８）。
【００３４】
以下、各ステップの処理について詳細に説明する。
【００３５】
（眼画像の取得）
眼に入った光は網膜で乱反射し、反射光のうち瞳孔を通り抜けた光は強い指向性をもって光源へ戻る性質がある。カメラの開口部近くにある光源が発光した時にカメラを露光させると、網膜で反射した光の一部がその開口部に入るため、瞳孔が瞳孔周辺よりも明るく写った画像を取得することができる。この画像が明瞳孔画像である。これに対して、カメラの開口部から離れた位置にある光源が発光した時にカメラを露光させると、眼から戻ってきた光はカメラの開口部にほとんど戻らないため、瞳孔が暗く写った画像を取得することができる。この画像が暗瞳孔画像である。また、透過率が高い波長の光を眼に照射すると、網膜での光の反射が多くなるので瞳孔が明るく写り、透過率が低い波長の光を眼に照射すると、網膜での光の反射が少なくなるので瞳孔が暗く写る。
【００３６】
本実施形態では、透過率が高い波長の光（中心波長が８５０ｎｍ）を発する発光素子１３ａが開口部１２に隣接した位置に設けられ、眼の透過率が低い波長の光（中心波長が９４０ｎｍ）を発する発光素子１３ｂを開口部１２から離れた位置に設けられる。点灯制御部２１及び画像取得部２２は、カメラ１０の奇数フィールドに合わせて発光素子１３ａを点灯させて明瞳孔画像を撮影し、カメラ１０の偶数フィールドに合わせて発光素子１３ｂを点灯させて暗瞳孔画像を撮影する。さらに、画像取得部２２は２つのカメラ１０の間で作動タイミングをわずかにずらし、個々のカメラ１０の露光時間はそのずらし時間以下に設定される。点灯制御部２１は、各カメラ１０の露光時間中に、対応する発光素子１３ａおよび発光素子１３ｂを交互に発光させることで、一方のカメラ１０の光源１３からの光が他方のカメラ１０の画像に影響を与えないようにする（クロストークが起こらないようにする）。加えて、点灯制御部２１は、２つのカメラの作動タイミング中において継続的に全ての補助光源４０を点灯させるように制御する。
【００３７】
画像取得部２２は、これらの一連の制御により得られる明瞳孔画像および暗瞳孔画像を取得する。一方のカメラ１０から得られる明瞳孔画像または暗瞳孔画像は第１瞳孔画像に相当し、他方のカメラ１０から得られる明瞳孔画像または暗瞳孔画像は第２瞳孔画像に相当する。得られる画像データは、奇数フィールド又は偶数フィールドのみに有効画素を有しているため、画像取得部２２は、隣接する有効画素の画素ラインの輝度平均をそのライン間の画素値に埋め込むことによって、明瞳孔画像または暗瞳孔画像を生成する。画像取得部２２は２つのカメラ１０によって得られた明瞳孔画像および暗瞳孔画像を算出部２３に出力する。
【００３８】
（角膜反射の位置及び瞳孔中心の位置の検出）
算出部２３は、画像取得部２２から入力された明瞳孔画像および暗瞳孔画像のそれぞれから複数の角膜反射を検出する。具体的には、算出部２３は１枚の画像に対してＰタイル法による２値化とラベリングとを行い、形状や輝度平均などの情報に基づいてその画像から複数の角膜反射を選択する。このような処理により、算出部２３は明瞳孔画像および暗瞳孔画像のそれぞれから、複数の角膜反射を得る。
【００３９】
続いて、算出部２３は明瞳孔画像および暗瞳孔画像から検出された複数の角膜反射の中にカメラ１０の光源１３による角膜反射が存在するか否かを判定する。例えば、この判定は、角膜反射の形状又は大きさを判別したり、複数の角膜反射との位置関係を判定したりすることで行われる。判定の結果、複数の角膜反射の中に光源１３によるものが存在しない場合には、算出部２３は後述する角膜反射位置の推定処理を起動させる。一方で、判定の結果、光源１３による角膜反射が存在する場合には、それを基に明瞳孔画像及び暗瞳孔画像中の角膜反射の位置を算出する。
【００４０】
さらに、算出部２３は、推定又は算出された角膜反射の位置に基づいて明瞳孔画像と暗瞳孔画像との間での角膜反射の移動量を位置補正量として計算する。続いて、算出部２３はそれら二つの角膜反射の位置が一致するように、前フィールド（ｉ番目のフィールド）の画像を、次フィールド（（ｉ＋１）番目のフィールド）の画像に位置補正量だけずらした上で、これら２画像から差分画像を生成する。そして、算出部２３は一致させた角膜反射の画像上の座標（位置）を取得する。
【００４１】
続いて、算出部２３は差分画像から瞳孔位置を特定する。具体的には、算出部２３は、前フレームと輝度が大きく変化しないことを利用して、前フレームで検出された瞳孔の輝度平均を利用して、その平均輝度の半分の値を閾値として差分画像を２値化し、ラベリングを行う。続いて、算出部２３は、瞳孔らしい面積、サイズ、面積比、正方形度、および瞳孔特徴量等の形状パラメータに基づいて、ラベルづけされた画素の連結成分の中から瞳孔を選択し、瞳孔中心の座標（位置）を算出する。
【００４２】
続いて、算出部２３は瞳孔中心の３次元座標を求める。具体的には、算出部２３はステレオ法を用いて、２つのカメラ１０から取得した第１及び第２の瞳孔画像を用いて算出した瞳孔中心の座標から瞳孔中心の３次元位置を計算する。ステレオ法とは、カメラのレンズの焦点距離、画像中心、画素サイズなどの内部パラメータと、カメラの位置や姿勢等の外部パラメータとを予め計測しておき、複数台のステレオカメラで対象物を撮影したときに、画像中の点の座標を基に、内部パラメータおよび外部パラメータを用いてその点の空間上の位置を決定する方法である。具体的には、算出部２３は、２台のカメラ１０からの画像データを基に検出した画像座標系における瞳孔中心の座標と、３次元空間内の世界座標系における瞳孔中心の座標との関係式を、キャリブレーションデータを参照しながら取得する。次に、算出部２３は、関係式から世界座標系における対象者Ａの瞳孔中心の３次元座標を求める。
【００４３】
なお、算出部２３が明瞳孔画像および暗瞳孔画像から検出された複数の角膜反射からカメラ１０の光源１３による角膜反射を抽出する手法としては、下記の手法が採用されてもよい。すなわち、算出部２３は、２つのカメラ１０によって取得された瞳孔画像を基に抽出した１組の角膜反射の位置を利用して、ステレオマッチングを行うことにより、角膜球中心の３次元位置を算出する。そして、算出した角膜球中心の３次元位置と瞳孔中心の３次元座標とを結ぶ候補ベクトルを算出する。さらに、算出部２３は、算出した候補ベクトルが予め設定されたベクトル条件を満たすか否かを判定し、ベクトル条件を満たす候補ベクトルの算出に用いた１組の角膜反射の位置を、それぞれのカメラで取得された瞳孔画像における光源１３による角膜反射の位置として抽出する。このベクトル条件とは、候補ベクトルと基準線との角度が閾値以下であり、かつ、候補ベクトルの長さが所定の範囲内であるという条件である。例えば、基準線としては、２台のカメラ１０の間の中点と瞳孔中心とを結ぶ線が設定される。また、画面内を見ているということを条件とするならば、候補ベクトルではなく視線（視軸）を検出してから、視線と画面平面との交点(注視点)が画面上の所定範囲内にあれば、正しい瞳孔中心と角膜反射とが検出されていると判断してもよい。
【００４４】
（視線方向の検出）
算出部２３は、瞳孔中心の３次元座標、差分画像上における瞳孔中心の位置、及び差分画像上における角膜反射の位置に基づいて視線を検出する。図６に示すように、瞳孔中心の３次元位置Ｐに基づいて、カメラ１０の開口部１２の中心を原点Ｏとし、その原点Ｏと瞳孔中心Ｐを結ぶ基準線ＯＰを法線とする仮想視点平面Ｘ’−Ｙ’を考える。この仮想視点平面Ｘ’−Ｙ’は、カメラ１０で捉えられる画像の投影面（画像面）に対応する。ここで、Ｘ’軸は、世界座標系のＸＷ−ＺＷ平面と仮想視点平面との交線に相当する。
【００４５】
算出部２３は、画像面ＳＧにおける角膜反射Ｇから瞳孔中心ＰまでのベクトルｒＧを算出し、そのベクトルｒＧを、距離ＯＰから求められたカメラの拡大率を用いて実寸に換算したベクトルｒに変換する。このとき、各カメラ１０をピンホールモデルと考え、角膜反射Ｇと瞳孔中心Ｐとが、仮想視点平面Ｘ’−Ｙ’と平行な平面上にあると仮定する。つまり、算出部２３は、仮想視点平面と平行であって瞳孔中心Ｐの３次元座標を含む平面上において、瞳孔中心Ｐと角膜反射点Ｇの相対座標をベクトルｒとして算出し、このベクトルｒは角膜反射点Ｇから瞳孔中心Ｐまでの実距離を表す。
【００４６】
続いて、算出部２３は、対象者Ａの仮想視点平面上の注視点Ｔに関して、直線ＯＴの水平軸Ｘ’に対する傾きφが、ベクトルｒの画像面上の水平軸ＸＧに対する傾きφ’と等しいと仮定する。さらに、算出部２３は、対象者Ａの視線ベクトル、すなわち、瞳孔中心Ｐと注視点Ｔとを結ぶベクトルＰＴと、基準線ＯＰとの成す角θを、ゲイン値ｋを含むパラメータを使った下記式（１）により計算する。
θ＝ｆ１（ｒ）＝ｋ×｜ｒ｜    …（１）
【００４７】
このような角度φ，θの計算は、瞳孔中心Ｐの存在する平面上のベクトルｒを仮想視点平面上で拡大したものがそのまま対象者Ａの注視点に対応するとみなすことにより行われる。より詳しくは、対象者Ａの視線ＰＴの基準線ＯＰに対する角度θは、瞳孔中心と角膜反射の距離｜ｒ｜との間で線形関係を有すると仮定する。
【００４８】
角度θと距離｜ｒ｜とは線形近似できるという仮定、および二つの傾きφ，φ’が等しいという仮定を利用することで、（θ，φ）と（｜ｒ｜，φ’）とを１対１に対応させることができる。このとき、算出部２３は、カメラ１０の開口部１２の中心に設定された原点Ｏと、仮想視点平面上の注視点Ｔとを結ぶベクトルＯＴを次式（２）により得る。
【数１】
0006631951.tif 000002
【００４９】
最後に、算出部２３は視線ベクトルＰＴと視対象平面（ディスプレイ装置３０）との交点である注視点Ｑを次式（３）で求める。
Ｑ＝ｎＰＴ＋Ｐ    …（３）
【００５０】
しかし、一般的にヒトの視軸（瞳孔中心および中心窩を通る軸）と光軸（角膜からレンズの中心へと延びる法線）との間にはずれがあり、対象者Ａがカメラを注視した際にも角膜反射と瞳孔中心とは一致しない。そこで、これを補正する原点補正ベクトルｒ０を定義し、カメラ画像から実測した角膜反射−瞳孔中心ベクトルをｒ’とすると、ベクトルｒはｒ＝ｒ’−ｒ０で表されるので、式（１）は下記式（４）のように書き換えられる。
θ＝ｋ×｜ｒ’−ｒ０｜    …（４）
計測されたｒ’に対して原点補正を行うことで、（θ，φ）と（｜ｒ｜，φ’）とを１対１に対応させることができ、精度の高い注視点検出を行うことができる。
【００５１】
（角膜反射位置の推定処理）
ここで、算出部２３は、明瞳孔画像および暗瞳孔画像から検出された複数の角膜反射の中に光源１３による角膜反射が存在しない場合は、次のような明瞳孔画像及び暗瞳孔画像のそれぞれ（以下、単に「差分前瞳孔画像」ともいう）について角膜反射位置の推定処理を実行する。まず、算出部２３は、差分前瞳孔画像において検出された複数の角膜反射のうちから、２つの補助光源４０による角膜反射を抽出する。この抽出は、角膜反射の形状又は大きさを判別したり、複数の角膜反射との位置関係を判定したりすることで行われる。そして、算出部２３は、抽出した２つの角膜反射を生じさせている２つの補助光源４０の３次元座標Ｌ１，Ｌ２と、カメラ１０の光源１３の中心の３次元座標Ｌ０と、第１又は第２の瞳孔画像を用いて算出した瞳孔中心の３次元位置Ｐと、を特定する。３次元座標Ｌ０，Ｌ１，Ｌ２の３次元座標は、それぞれが既知であり、予め画像処理装置２０内のデータベースに格納され、算出部２３により読み出される。ここで、カメラ１０の位置とそれに取り付けられている光源１３の位置とは同じと近似され、瞳孔中心の３次元位置Ｐと角膜球中心の３次元位置とは同じであると近似される。
【００５２】
図７には、世界座標系における、角膜球中心Ｃと、２つの補助光源４０の３次元座標Ｌ１，Ｌ２と、カメラ１０の光源１３の中心の３次元座標Ｌ０との位置関係を示し、図８には、カメラ１０によって得られる差分前瞳孔画像の画像イメージを示している。
【００５３】
これらの図に示すように、光源１３とカメラ１０とが同じ位置であると近似した場合、角膜球ＣＮの中心Ｃがどこに存在していても、光源１３が点灯したときには、この光源１３による角膜反射は３次元座標Ｌ０と角膜球中心Ｃとを通る直線の方向に検出される。よって、差分前画像中においては角膜球ＧＣの輪郭の中心に光源１３による角膜反射ＧＲ０が必ず現れると考えられる（ここでは、差分前画像に角膜球の輪郭が現れるとして図示している）。また、上述したように２つのカメラ１０に対応した差分画像を用いてステレオマッチングにより瞳孔中心の３次元座標Ｐが求められており、それを角膜球中心Ｃの位置として近似する。その結果、算出部２３は、カメラ１０の中心である原点Ｏから角膜球中心Ｃに向かうベクトルＯＣを求めることができる。
【００５４】
続いて、算出部２３は、光源１３の３次元座標Ｌ０（原点Ｏ）と一方の補助光源４０の３次元座標Ｌ１と角膜球中心Ｃとを通る平面Ｌ０ＣＬ１の世界座標芸における位置と、光源１３の３次元座標Ｌ０（原点Ｏ）と他方の補助光源４０の３次元座標Ｌ２と角膜球中心Ｃとを通る平面Ｌ０ＣＬ２の世界座標系における位置とを、平面の式を求めることで特定する。平面Ｌ０ＣＬ１と平面Ｌ０ＣＬ２とは、ともに３次元空間内で角膜球中心Ｃを通るため、これらの平面Ｌ０ＣＬ１，Ｌ０ＣＬ２の仮想視点平面Ｘ’−Ｙ’に沿った断面が、それぞれ、差分前画像上における２つの直線ＳＬ１，ＳＬ２に相当する。角膜球ＧＮを球と近似するとこれらの２本の直線ＳＬ１，ＳＬ２は、角膜球ＧＮの中心を通る直線となり、両直線ＳＬ１，ＳＬ２の交点が角膜球の中心となると理解される。差分前画像中の角膜球ＧＣの中心は、角膜球中心を画像平面上に投影したものであり、カメラ１０の光源１３による角膜反射の位置ＧＲ０に一致する。さらに、それぞれの直線ＳＬ１，ＳＬ２は、差分前画像上で補助光源４０による角膜反射の位置ＧＲ１，ＧＲ２をそれぞれ通ると理解される。
【００５５】
上記の性質を使用して、算出部２３は、求めた２つの平面の式を利用して、差分前画像中の２本の直線ＳＬ１，ＳＬ２の位置を求めて、それらの２本の直線ＳＬ１，ＳＬ２の交点を求めることにより、差分前画像中の光源１３よる角膜反射の位置ＧＲ０を推定する。すなわち、図７において、仮想視点平面Ｘ’−Ｙ’の法線のうち原点Ｏを通る法線は角膜球中心Ｃを通る。従って、角膜球が移動すると仮想視点平面Ｘ’−Ｙ’も原点Ｏを中心に向きが変わることになる。算出部２３は、補助光源４０の３次元座標Ｌ１，Ｌ２のそれぞれと角膜球中心Ｃとを通る２つの直線と、仮想視点平面Ｘ’−Ｙ’との交点を計算し、それらの交点の３次元座標Ｌ１’，Ｌ２’とする。さらに、算出部２３は、求めた交点の３次元座標Ｌ１’，Ｌ２’を仮想視点平面Ｘ’−Ｙ’上の座標に変換し、仮想視点平面Ｘ’−Ｙ’上におけるＸ’軸に対する２つの直線（交線）ＯＬ１’，ＯＬ２’の傾き角ε１，ε２を計算する。
【００５６】
ここで、カメラ１０はカメラ較正が行われているので、カメラ１０の位置及び方向（外部カメラ較正値）と、焦点距離、画像中心座標等の内部カメラ較正値とが予め既知となっている。従って、算出部２３は、カメラ較正値を用いて世界座標系からカメラ座標系への変換を行った後にさらに画像座標系への変換を行うことで、世界座標系におけるＸ’軸の位置を、画像座標系における水平軸ＡＬの位置（図８）に変換する。続いて、算出部２３は、差分前画像上において角膜反射の位置ＧＲ１を通り水平軸ＡＬに対して傾き角ε１の直線の式を求め、同様にして、差分前画像上において角膜反射の位置ＧＲ２を通り水平軸ＡＬに対して傾き角ε２の直線の式を求める。その後、算出部２３は、求めた２つの直線の交点を求めることで、その交点を、角膜球中心の位置とするとともに光源１３による角膜反射の位置ＧＲ１と推定する。
【００５７】
さらに、算出部２３は、推定した明瞳孔画像及び暗瞳孔画像上での光源１３による角膜反射の位置ＧＲ１を利用して、上述した視線方向の検出方法を用いて視線ベクトルＰＴを算出する。この視線ベクトルＰＴは角膜球中心Ｃと瞳孔中心Ｐとを通るベクトルとなる。上記角膜反射位置の推定処理では、瞳孔中心の３次元位置Ｐを角膜球中心の３次元位置Ｃに近似して計算していたが、実際はカメラ１０から見た時は瞳孔中心の位置Ｐと角膜球中心の位置Ｃとは角度的にずれて観察される。このずれが傾き角ε１，ε２に誤差を生じさせる。そこで、算出部２３は、視線ベクトルＰＴを計算した後に、次のような処理を行って角膜反射位置の推定処理を再度繰り返してもよい。
【００５８】
すなわち、算出部２３は、求めた視線ベクトルＰＴを、瞳孔中心と角膜球中心を通る眼球の光軸の方向ベクトルｖとして用い、下記式（５）；
ｘ＝ｐ＋ｔｖ      …（５）
によって眼球の光軸上の点ｘを表現する。上記式（５）中、ベクトルｐは瞳孔中心の３次元位置を表す位置ベクトルを表し、ｔは正値又は負値を有するスカラー量である未定定数を表す。そして、算出部２３は、対象者Ａがカメラ１０の方向を向いたときに瞳孔中心と角膜球中心の間の距離（相対距離）を計測することができるので、その距離を基にスカラー量ｔを決定し、そのスカラー量ｔを上記式（５）に適用することで、真の角膜球中心の位置Ｃを算出する。上記相対距離の計測方法は、「遠隔注視点検出装置における真の瞳孔-角膜反射ペアーの決定法とその有効性，第20回画像センシングシンポジウム（SSII2014），IS2-33，8  pages（2014年6月）」に記載の方法が用いられる。最後に、算出部２３は、算出した真の角膜球中心の位置Ｃを用いて、角膜反射位置の推定処理、及び視線方向の検出処理を繰り返すことにより、視線ベクトルを再度算出する。ここで、瞳孔中心の位置ベクトルｐを利用して求めた光軸の方向ベクトルｖは多少誤差を持つが、ｔが正確であるので点ｘの位置に大きく影響しない。そのため、新たに求まった真の角膜球中心の位置を基に計算された傾き角ε１，ε２を利用して求められた視線方向は、格段に正確な値になり、瞳孔中心の位置Ｐをそのまま用いて計算された値に比較してより正確な値となる。
【００５９】
（補助光源の配置の実施例）
次に、視線検出装置１における補助光源４０の配置の実施例について説明する。図９は、対象者Ａ側から見た補助光源４０の配置状態を示す図である。同図に示すように、補助光源４０は、４つの補助光源４０ａ，４０ｂ，４０ｃ，４０ｄによって構成され、これらの補助光源４０ａ，４０ｂ，４０ｃ，４０ｄは、２つのカメラ１０の光源１３の周囲に配置されている。具体的には、２つの光源１３の中心から補助光源４０ａ，４０ｂ，４０ｃ，４０ｄまでの距離が不均一になるように配置されている。より詳細には、補助光源４０ａは、補助光源４０ｂよりも水平方向に光源１３側に寄って配置され、補助光源４０ｃよりも垂直方向に光源１３側に寄って配置されている。また、補助光源４０ｄは、補助光源４０ｂよりも垂直方向に下側に配置され、補助光源４０ｃよりも水平方向に光源１３から離れるように配置されている。このような配置により、算出部２３による差分前画像中の角膜反射がどの補助光源４０によるものかの判定が容易となる。すなわち、差分前画像中で検出された２つの角膜反射において２つの角膜反射を結ぶ線が水平線に対して反時計回りに傾いている場合にはその２つの角膜反射が補助光源４０ａ，４０ｃによるものと判定可能となり、２つの角膜反射を結ぶ線が水平線に対して時計回りに傾いている場合にはその２つの角膜反射が補助光源４０ｂ，４０ｄによるものと判定可能となる。さらに、差分前画像中で検出された２つの角膜反射において２つの角膜反射を結ぶ線が垂直線に対して時計回りに傾いている場合にはその２つの角膜反射が補助光源４０ａ，４０ｂによるものと判定可能となり、２つの角膜反射を結ぶ線が垂直線に対して反時計回りに傾いている場合にはその２つの角膜反射が補助光源４０ｃ，４０ｄによるものと判定可能となる。また、このように補助光源４０を配置することにより、検出可能な対象者Ａの視線範囲を上下左右に広くすることができる。ただし、補助光源４０は少なくとも３つで構成されていればよく、４つの補助光源４０ａ，４０ｂ，４０ｃ，４０ｄのうちの１つは省略されていてもよい。
【００６０】
なお、視線検出装置１における光源１３に対する補助光源４０の位置は、光源１３を中心にした複数の補助光源４０の位置の角度間隔が直角に近いことが好ましい。角度間隔が極端に小さかったり、角度間隔が極端に大きかったりすると、算出部２３による角膜反射位置の推定処理において、算出される２つの直線ＳＬ１，ＳＬ２の間の傾きε２−ε１の絶対値が、極端に小さくなったり大きくなったりすることとなる。その結果、推定される角膜反射の位置の１次元方向の誤差が大きくなってしまう（図１０（ａ），１０（ｂ））。これに対して、本実施形態によれば、補助光源４０の位置の角度間隔が直角に近いので、算出される２つの直線ＳＬ１，ＳＬ２の間の傾きε２−ε１の絶対値が、直角に近い値となり、推定される角膜反射の位置の誤差を２次元的に小さくすることができる（図１０（ｃ））。また、視線検出装置１の算出部２３は、角膜反射位置の推定処理において、差分前画像において検出された２以上の角膜反射から２つの角膜反射を抽出する際に、その２つの角膜反射の位置から算出される傾きε２−ε１の絶対値が直角に近くなるように２つの角膜反射を抽出することも好ましい。このようにしても、推定される角膜反射の位置の誤差を２次元的に小さくすることができる。
【００６１】
以上説明した視線検出装置１、及びそれを用いた視線検出方法によれば、カメラ１０によってカメラ１０に取り付けられた光源１３の角膜反射が観測できない場合であっても、カメラ１０の周囲に設けられた補助光源４０によって生じる角膜反射の位置を基に、カメラ１０に近い光源１３による角膜反射の位置が推定されて視線方向が検出されるので、対象者Ａの視線方向を広い範囲で検出しながら、その視線方向の検出精度を保つことができる。すなわち、視線検出に用いる角膜反射を生じさせる光源の位置とカメラ１０の位置とが対象者Ａから見て角度的に大きくずれている場合には、ベクトルｒから角度θを求める式の誤差が大きくなってしまう。その理由は、カメラ１０に対して光源の位置をずらすと角膜反射の位置もずれるが、そのずれ量が角膜球の曲率半径に依存するため、曲率半径が明らかにされなければ式の精度が得られないためである。その上、角膜球は角膜の周辺部（白目に近い部分）では球からずれた形状を有するため、角度θの精度が悪化する。これに対して、本実施形態では、視線検出に用いる角膜反射を生じさせる光源の位置とカメラ１０の位置とほぼ一致しているため、角度θを精度よく求めることができる。また、上述した角膜反射位置の推定処理を採用することで、光源１３による角膜反射の位置を２つの直線の交点を求めて算出することにより、光源１３による角膜反射の位置を幾何学的に単純かつ正しく推定できる。つまり、複数の角膜反射間の距離を利用して角膜反射の位置を推定する手法に比較すると、２つの直線の交点を求める手法のほうが、推定の精度が安定しやすい。さらに、視線検出装置１は２台のカメラ１０のみを有しており、光源を増やすだけでカメラの台数は増やす必要が無いので、簡易な構成で高精度の視線方向の検出が実現できる。
【００６２】
また、視線検出装置１の算出部２３は、いったん瞳孔中心の３次元位置を用いて求めた対象者Ａの視線方向を基に、真の角膜球中心の３次元位置を算出し、それを用いて光源１３による角膜反射の位置を推定した後に、推定した角膜反射の位置を用いて対象者Ａの視線方向を再度算出する。これにより、光源１３による角膜反射の位置の推定の精度を確保することができ、その結果、視線方向の検出精度をより一層安定化することができる。
【００６３】
さらに、視線検出装置１においては補助光源４０が光源１３の周囲に配置されているので、視線方向が検出できる範囲をカメラ１０の上下左右の周囲に広げることができる。
【００６４】
ここで、対象者Ａの視線方向の変化に応じた本実施形態の効果を、具体的に説明する。
【００６５】
図１１は人間の眼球の構造を簡略化して示している。眼球ＥＢの前面は白色の結膜に覆われ、その前面の中心部から透明な角膜ＣＮが突出している。角膜ＣＮがほぼ球状とみなされるために、角膜球とも言われる。眼球ＥＢはその中心ＣＥＢを中心にして眼窩の中で回転する。この眼球ＥＢにはその対称性から光学軸（光軸）ＶＡが存在する。光学軸と視線はおよそ一致する。瞳孔は光量を調整するための虹彩ＩＲによって遮られていない光が透過する部分であり、その瞳孔の中心が瞳孔中心Ｐである。
【００６６】
図１２には、本実施形態のカメラ１０に取り付けられた光源１３によって生じる角膜反射の検出状態を示しており、図１２（ａ）〜（ｃ）のそれぞれにおいて、下方に対象者Ａの眼球とカメラ１０及び光源１３との位置関係を示しており、上方にはカメラ１０によって取得された差分前画像のイメージを示している。また、図１３には、本実施形態の補助光源４０によって生じる角膜反射の検出状態を示しており、図１３（ａ）〜（ｃ）のそれぞれにおいて、下方に対象者Ａの眼球とカメラ１０及び補助光源４０との位置関係を示しており、上方にはカメラ１０によって取得された差分前画像のイメージを示している。
【００６７】
図１２（ａ）に示すように、対象者Ａがカメラ１０及び光源１３の方向を見ている場合には、眼球ＥＢの光軸ＶＡがちょうどカメラ１０及び光源１３の方向に向き、このとき得られる画像においては、角膜反射ＧＲ０の位置は瞳孔像ＧＰの中心の位置に一致する。これに対して、図１２（ｂ）に示すように、対象者Ａがカメラ１０の右側に外れた方向を見ている場合には、画像上での瞳孔像ＧＰの中心が角膜反射ＧＲ０よりも右側にずれるとともに、瞳孔像ＧＰの形状が楕円となる。図１２（ｃ）に示すように、対象者Ａがカメラ１０の右側にさらに大きく外れた方向を見ている場合には、角膜反射像が検出できなくなり角膜反射像よりも大きめの白目反射ＧＲ１０が現れる。この白目反射ＧＲ１０と瞳孔中心との位置関係から光軸を検出する方法では、検出精度が確保できない。このように、カメラ１０と光源１３とが一体化された位置関係のとき、カメラ１０から角度的に離れた方向を対象者Ａが見ていると、角膜反射の代わりに白目反射しか現れなかったり、角膜反射も白目反射も現れないことが多々ある。また、カメラ１０から見て上まつ毛が瞳孔や角膜反射に被さってしまうことを避けるために、ディスプレイ装置３０の下方にカメラ１０が配置されている。その結果、ディスプレイ装置３０の画面サイズを大きくした場合に、対象者Ａがディスプレイ装置３０の上部を見たときカメラ１０から角度的に大きく離れた位置を見ることになるので、注視点が検出できなくなったり、高精度な注視点検出ができなくなることがある。
【００６８】
図１３（ａ）に示すように、カメラ１０の位置からずらして設置された補助光源４０が点灯しているときには、対象者Ａがカメラ１０の方向を見ている場合に得られる画像においては、補助光源４０による角膜反射ＧＲ１が観測され、その位置は瞳孔像ＧＰの中心の位置からわずかにずれて検出される。図１３（ｂ）に示すように、対象者Ａがカメラ１０の右側に大きく外れた方向を見ている場合でも、画像上での白目反射は観測されず、角膜反射ＧＲ１が観測される。本実施形態では、カメラ１０からずらして配置された補助光源４０によって生じる角膜反射像を利用して光軸を決定することにより、視線検出が可能な角度範囲を拡張することができる。ただし、図１３（ｃ）に示すように、対象者Ａがカメラ１０の左側に外れる方向を見たときには、画像上で白目反射ＧＲ１１が観測されてしまっている。本実施形態では、カメラ１０を上下左右に取り囲む位置に４つの補助光源４０が設けられているので視線検出が可能な角度範囲を上下左右に拡張することができる。さらに、本実施形態によれば、眼鏡をかけた対象者Ａがディスプレイ装置３０の画面の上部方向を見た時に眼鏡反射が瞳孔や角膜反射に重なることで視線検出ができなくなることを防止できる。
【００６９】
本実施形態にかかる視線検出装置１による視線ベクトルの検出例について述べる。図１４において、（ａ）は、対象者Ａが上方向を見た時のカメラ画像とその解析画像を、（ｂ）は、対象者Ａが左方向を見た時のカメラ画像とその解析画像を、（ｃ）は、対象者Ａが右方向を見た時のカメラ画像とその解析画像を、それぞれ示している。図１４（ａ）に示すように、対象者Ａが上方向を見た際には、２つの補助光源４０ａ，４０ｃによる角膜反射が瞳孔の左右端に映っており、カメラ１０に取り付けた光源１３の角膜反射が映っていないことがわかる。解析画像における小さな正方形の中心が推定された光源１３による角膜反射の位置を示しており、光源１３による角膜反射の位置が正しく推定できている。また、左下の画像中の矢印は、検出された視線方向を示している。本来、白目反射が映っていてもよいのであるが、下まぶたに隠れているため映っていない。図１４（ｂ）に示すように、対象者Ａが左方向を見た際には、補助光源４０ａ，４０ｂによる２つの角膜反射が映っている。カメラ１０の光源１３による角膜反射、及び残りの補助光源４０による角膜反射は写っていないが、白目反射が映っている。図１４（ｃ）に示すように、対象者Ａが右方向を見た際には、補助光源４０ｃ，４０ｄによる２つの角膜反射が映っているが、他の光源による角膜反射、及び残りの補助光源４０による角膜反射は写っていない。図１４（ｂ），（ｃ）の両方の場合とも、光源１３による角膜反射の位置が表示されており、視線も検出されている。さらに、どの画像においても、２個の角膜反射が映っていて、それらの間隔が離れているために、それぞれの角膜反射の中心座標を容易かつ正確に検出できる。このことは、互いの補助光源４０の位置をさらに近づけることができることを意味している。これらの結果から、カメラ１０に取り付けた光源１３による角膜反射が検出できないような大きな視線角度θにおいても、カメラ１０から離れた補助光源４０を使用することで視線が検出できることがわかる。
【００７０】
本発明は、上述した実施形態に限定されるものではない。上記実施形態の補助光源４０の配置は他の配置に変更されてもよい。
【００７１】
例えば、複数の補助光源４０が２つのカメラ１０の近傍を中心として等角度間隔で２つのカメラ１０の周囲に配置されてもよい。図１５（ａ）に示す変形例においては、８個の補助光源４０１〜４０８が、２つのカメラ１０の間の中点ＣＣを中心とした円上に約４５度の等角度間隔で放射状に配置されている。８個の補助光源４０１〜４０８のうち、約９０度の角度間隔で配置された４個の補助光源４０１，４０３，４０５，４０７とで一方の光源群が構成され、約９０度の角度間隔で配置された４個の補助光源４０２，４０４，４０６，４０８とで他方の光源群が構成される。これらの２つの光源群はそれぞれ異なるタイミングで点灯可能とされる。これらの補助光源４０１〜４０８は、暗瞳孔画像を生じさせるための光源としても機能する。従って、カメラ１０に取り付けられる光源１３は明瞳孔画像を生じさせることができればよいため、発光素子１３ａ（図２）のみを有する単波長の１重リング光源であってもよい。
【００７２】
このような変形例においては、対象者Ａが補助光源４０３の方向を見た時、カメラ１０と瞳孔中心とを結ぶ直線と視線ベクトルとのなす角が大きい場合には、カメラ１０の画像には補助光源４０２，４０３，４０４による角膜反射のみが映る。しかし、このとき、補助光源４０３は眼鏡反射を生じやすく、その眼鏡反射が瞳孔や角膜反射に重なる場合がある。このような場合は、補助光源４０２，４０４のみで視線検出が可能なのであれば、補助光源４０３は補助光源４０２，４０４と同時に点灯させるべきではない。また、別の状況として、対象者Ａが補助光源４０２の方向を見た時には、補助光源４０１，４０２，４０３による角膜反射のみが映る。このような場合は、補助光源４０２による眼鏡反射が障害になる一方で、補助光源４０１，４０３による角膜反射によって視線検出が可能となる。さらに、別の状況として、対象者Ａが補助光源４０２と補助光源４０３との間のおよそ中間の方向を見たとすると、カメラ１０の方向に対する視線ベクトルの角度の大きさにもよるが、一般には、補助光源４０１〜４０４による角膜反射のみが映る。この場合には、補助光源４０２，４０４と補助光源４０１，４０３とが別のタイミングで点灯していれば、補助光源４０２又は補助光源４０３による眼鏡反射が瞳孔や角膜反射の検出を妨害しても、補助光源４０２，４０４による２つの角膜反射、もしくは補助光源４０１，４０３による２つの角膜反射のいずれかを用いて視線検出が可能となる。
【００７３】
また、図１５（ｂ）に示す変形例では、図１５（ａ）に示す変形例に比較して、補助光源４０１〜４０８のうちの一部の光源群４０２，４０４，４０６，４０８について、中心ＣＣからの距離が不均一となるように配置されている。このように配置することで、算出部２３が画像中で角膜反射を検出した際に、その角膜反射がどの補助光源４０によるものなのかの判定が容易となる。具体的には、図１５（ｂ）の配置においては、対象者Ａが補助光源４０１の近くの方向を見ているときには、補助光源４０２，４０８による角膜反射を視線検出に利用し、対象者Ａが補助光源４０５の近くの方向を見ているときには、補助光源４０４，４０６による角膜反射を視線検出に利用することになる。一般に、カメラの画像中の瞳孔中心位置と、画像中に現れる２個の角膜反射の位置との関係はほとんど変化しないので、何らかの判定情報が無ければ対象者Ａが補助光源４０１の方向を見ているのか補助光源４０５の方向を見ているのかは判別できない。この変形例の配置によれば、補助光源４０の配置の角度間隔は変えずに中心ＣＣからの距離だけが変えられているので、補助光源４０２と補助光源４０８とを結ぶ線の傾きと補助光源４０４と補助光源４０６とを結ぶ線の傾きとが異なることになる。同様に、補助光源４０２と補助光源４０４とを結ぶ線の傾きと補助光源４０８と補助光源４０６とを結ぶ線の傾きとが異なることになる。従って、検出した２個の角膜反射を結ぶ角度を利用することで、どの補助光源４０による角膜反射かを判定可能となる。
【００７４】
図１６には、図１５（ａ），（ｂ）に示す構成を有する変形例において、点灯制御部２１によって制御される光源の点灯タイミング、及び画像取得部２２によって制御されるカメラ１０の撮影タイミングを示している。図１６において、（ａ）は、カメラ１０による画像取得のタイミングを、（ｂ）は、光源１３の点灯タイミングを、（ｃ）は、補助光源４０のうちの一方の光源群の点灯タイミングを、（ｄ）は、補助光源４０のうちの他方の光源群の点灯タイミングを、それぞれ示している。本変形例においては、取得フレーム間隔が非常に短い（例えば、０．５μ秒）の高速度カメラをカメラ１０として用いる。また、本変形例では、基本的に２台のカメラ１０が使用されるが、説明の簡単化のため１台のカメラ１０を対象にした発光制御と画像取得制御の方法について説明する。図１６に示すように、連続した時間Ｔ１〜Ｔ５の５つのタイミングにおいて、「暗瞳孔画像１」、「無照明画像１」、「明瞳孔画像」、「無照明画像２」、「暗瞳孔画像２」の順に５枚の画像が取得される。そして、算出部２３は、特許第５１４５５５５号に記載された公知の手法を用いて、最初の３枚の画像を画像処理することによって、瞳孔中心と複数の角膜反射の中心座標を取得する。同様に、算出部２３は、最後の３枚の画像を画像処理することによって、瞳孔中心と複数の角膜反射の中心座標を取得する。算出部２３は、各３組の画像を用いて視線が検出できれば、それらの平均に関する情報を検出結果として出力し、眼鏡反射等の問題でどちらか一方の３枚の画像からしか視線が検出できない場合はその視線に関する情報を出力する。
【００７５】
図１７には、図１５（ａ），（ｂ）に示す構成を有する変形例において、点灯制御部２１によって制御される光源の点灯タイミング、及び画像取得部２２によって制御されるカメラ１０の撮影タイミングを示している。図１７において、（ａ）は、一方のカメラ１０による画像取得のタイミングを、（ｂ）は、他方のカメラ１０による画像取得のタイミングを、（ｃ）は、一方のカメラ１０に取り付けられた光源１３の点灯タイミングを、（ｄ）は、他方のカメラ１０に取り付けられた光源１３の点灯タイミングを、（ｅ）は、補助光源４０のうちの一方の光源群の点灯タイミングを、（ｆ）は、補助光源４０のうちの他方の光源群の点灯タイミングを、それぞれ示している。この場合は、２つのカメラ１０を用いて画像を取得する例が示されている。図１７に示す例では、一方のカメラ１０では、連続した時間Ｔ１〜Ｔ６の６つのタイミングのうちの１つのタイミングＴ４では、画像を取得しないか、取得しても算出部２３で使用されないように制御される。一方のカメラ１０は、タイミングＴ１〜Ｔ６の間で、「暗瞳孔画像１」、「無照明画像」、「明瞳孔画像」、「無照明画像」、「暗瞳孔画像２」の順で画像を取得する。他方のカメラ１０では、連続した時間Ｔ１〜Ｔ６の６つのタイミングのうちの１つのタイミングＴ３では、画像を取得しないか、取得しても算出部２３で使用されないように制御される。他方のカメラ１０は、タイミングＴ１〜Ｔ６の間で、「暗瞳孔画像１」、「無照明画像」、「明瞳孔画像」、「無照明画像」、「暗瞳孔画像２」の順で画像を取得する。
【００７６】
これまで述べてきた実施形態においては、角膜球中心とカメラ１０とを結ぶ線を基準として、対象者Ａの視線方向と頭部方向はほぼ同じ方向に変化することを前提としていた。しかしながら、車を運転中のドライバーの視線方向と頭部方向とは必ずしもそのような関係を持たない状況が容易に予測できる。また、ドライバーを対象とした視線検出以外も含んだ汎用性の高い視線検出を実現するためには、対象者Ａの視線方向と頭部方向にはずれがあることを前提とする必要がある。また、対象者Ａによっては瞳孔にまつ毛がかかりやすい場合が想定される。そのような場合、まつ毛の影響により、不規則に異なる補助光源４０による角膜反射が検出できない場合がある。これらのことを考慮すると、上記実施形態及び変形例における互いに約９０度の角度間隔で配置された補助光源４０の組み合わせ（光源群）は、可能な限り多いことが好ましい。
【００７７】
図１８には、光源群を４組有する変形例における補助光源４０の配置例を示している。同図に示す変形例は、互いに約９０度の角度間隔で配置された４つの補助光源４０１１によって構成された第１の光源群と、互いに約９０度の角度間隔で配置された４つの補助光源４０１２によって構成された第２の光源群と、互いに約９０度の角度間隔で配置された４つの補助光源４０１３によって構成された第３の光源群と、互いに約９０度の角度間隔で配置された４つの補助光源４０１４によって構成された第４の光源群とを含んでいる。
【００７８】
図１９には、図１８に示す構成を有する変形例において、点灯制御部２１によって制御される光源の点灯タイミング、及び画像取得部２２によって制御されるカメラの撮影タイミングを示している。図１９において、（ａ）は、一方のカメラ１０による画像取得のタイミングを、（ｂ）は、他方のカメラ１０による画像取得のタイミングを、（ｃ）は、一方のカメラ１０に取り付けられた光源１３の点灯タイミングを、（ｄ）は、他方のカメラ１０に取り付けられた光源１３の点灯タイミングを、（ｅ）は、補助光源４０のうちの第１の光源群の点灯タイミングを、（ｆ）は、補助光源４０のうちの第２の光源群の点灯タイミングを、（ｅ）は、補助光源４０のうちの第３の光源群の点灯タイミングを、（ｆ）は、補助光源４０のうちの第４の光源群の点灯タイミングを、それぞれ示している。このように、各カメラ１０で１度明瞳孔画像を取得する間に第１〜第４の光源群を全て点灯させるのではなく、第１及び第２の光源群と、第３及び第４の光源群とを時間的に分けて点灯させてもよい。これにより、視線が検出する間隔が不均一にはなるが、角膜反射と瞳孔中心の検出の時間差が小さいまま維持されるので、対象者Ａの頭部の動きによる検出誤差の低下の影響を受けにくい。
【００７９】
上述した実施形態においては、対象者Ａが眼鏡を装着していると、光源からの光が眼鏡のレンズの表面で反射し、カメラ画像中に眼鏡反射像が生じる場合がある。一般的にレンズの曲率半径は角膜に比較して大きいので、その結果、眼鏡反射は画像中において角膜反射に比べて大きく映る。また、角膜反射を確実に検出できるように光源の発光強度を上げると、眼鏡反射像は画像中において飽和しやすい。その結果、画像中で眼鏡反射が瞳孔や角膜反射に重なってしまい、それらの位置の検出が困難となる。このような問題を解決するためには、カメラ１０と光源１３の組み合わせを３組以上備えることも好ましい。このような構成を備えれば、最低１つのカメラ１０の画像中で眼鏡反射が瞳孔や角膜反射に重なることを防ぐことができ、視線検出ができないという問題を回避することができる。
【００８０】
また、上記実施形態では、算出部２３が、瞳孔中心の３次元位置Ｐを角膜球中心の３次元位置Ｃに近似して、瞳孔中心の３次元位置Ｐを用いて視線ベクトルＰＴを算出した後に、視線ベクトルＰＴを用いて角膜反射位置の推定処理を再度繰り返していた。このような処理に代えて、算出部２３は、２つのカメラ１０によって取得された瞳孔画像を対象にして、瞳孔中心の３次元位置Ｐを用いて角膜反射位置の推定処理を実行して２つのカメラ１０の画像上の光源１３による角膜反射の位置を推定し、推定した２つの角膜反射の位置をステレオマッチングすることで、角膜球中心の３次元位置Ｃを算出してもよい。さらに、算出部２３は、算出した角膜球中心の３次元位置Ｃを用いて角膜反射位置の推定処理を再度繰り返して視線ベクトルを算出してもよい。
【符号の説明】
【００８１】
Ａ…対象者、Ｃ…角膜球中心、Ｐ…瞳孔中心、ＰＴ…視線ベクトル、４０，４０１〜４０８，４０ａ〜４０ｂ，４０１１〜４０１４…補助光源、１…視線検出装置、１０，１０Ｌ，１０Ｒ，１３光源、２０…画像処理装置、２１…点灯制御部、２２…画像取得部、２３…算出部。
【図１】
0006631951.tif 000003
【図２】
0006631951.tif 000004
【図３】
0006631951.tif 000005
【図４】
0006631951.tif 000006
【図５】
0006631951.tif 000007
【図６】
0006631951.tif 000008
【図７】
0006631951.tif 000009
【図８】
0006631951.tif 000010
【図９】
0006631951.tif 000011
【図１０】
0006631951.tif 000012
【図１１】
0006631951.tif 000013
【図１２】
0006631951.tif 000014
【図１３】
0006631951.tif 000015
【図１４】
0006631951.tif 000016
【図１５】
0006631951.tif 000017
【図１６】
0006631951.tif 000018
【図１７】
0006631951.tif 000019
【図１８】
0006631951.tif 000020
【図１９】
0006631951.tif 000021