(58)【調査した分野】(Int.Cl.,DB名)
対象者の顔に検知光を与える複数の光源と、対象者の顔の画像を取得するカメラと、前記カメラで取得された画像から視線方向を算出する制御部とが設けられた視線検出装置において、
前記制御部では、前記カメラで取得した画像から、顔の異なる部位の部分画像を抽出する抽出ステップと、
それぞれの部分画像に基づいて視線方向を算出する算出ステップと、
視線方向の角度範囲の大小に応じて、異なる部分画像から得られた複数種類の視線方向の算出値のいずれかを選択する選択ステップと、が行われ、
前記部分画像は、瞳孔画像と角膜反射光画像であり、前記瞳孔画像と前記角膜反射光画像とから視線方向の第1の算出値が求められ、
前記部分画像は、瞳孔画像または黒目画像であり、前記瞳孔画像または前記黒目画像の形状から、視線方向の第2の算出値が求められ、
前記部分画像は、顔画像と黒目画像または顔画像と瞳孔画像であり、前記顔画像から顔の向きが算出され、前記黒目画像または前記瞳孔画像から目の中での黒目の位置または瞳孔の位置が算出され、顔の向きと黒目の位置または顔の向きと瞳孔の位置とから視線方向の第3の算出値が求められ、
視線方向が基準値から第1の角度範囲までは、前記第1の算出値を真の視線方向の算出値として選択し、視線方向が第1の角度範囲を超えたときに、前記第2の算出値を真の視線方向の算出値として選択し、視線方向が前記第1の角度範囲よりも大きい角度である第2の角度範囲を超えたら、前記第3の算出値を真の視線方向の算出値として選択することを特徴とする視線検出装置。
対象者の顔に検知光を与える複数の光源と、対象者の顔の画像を取得するカメラと、前記カメラで取得された画像から視線方向を算出する制御部とが設けられた視線検出装置において、
前記制御部では、前記カメラで取得した画像から、顔の異なる部位の部分画像を抽出する抽出ステップと、
それぞれの部分画像に基づいて視線方向を算出する算出ステップと、
異なる部分画像から得られた複数種類の視線方向の算出値のうちの、ばらつきの小さい算出値を真の視線方向の算出値として選択する選択ステップと、が行われ、
前記部分画像は、瞳孔画像と角膜反射光画像であり、前記瞳孔画像と前記角膜反射光画像とから視線方向の第1の算出値が求められ、
前記部分画像は、瞳孔画像または黒目画像であり、前記瞳孔画像または前記黒目画像の形状から、視線方向の第2の算出値が求められ、
前記第1の算出値と前記第2の算出値のうちの、ばらつきの小さい算出値を真の視線方向の算出値として選択することを特徴とする視線検出装置。
【発明を実施するための形態】
【0026】
以下、本発明の実施形態に係る視線検出装置について図面を参照しつつ詳しく説明する。
【0027】
<視線検出装置の構造>
図1に示すように、本発明の実施の形態の視線検出装置1は、ケース2を有している。ケース2は左右方向に細長い立方体形状であり、前方に開口部3が形成されている。開口部3の形状は長方形であり、この開口部が1枚のカバー板4で覆われている。カバー板4は、赤外光を透過することができるが可視光の波長帯域については光線透過率が低下するように着色されている。あるいは、カバー板4が透光性であり、前記光線透過率を低下させる着色シートが積層されて構成されている。したがって、
図1(B)において、実際は、ケース2の内部構造はカバー板4を透過して目視することはできない。
ケース2の内部に第1受像装置10と第2受像装置20が収納されている。
【0028】
図1に示すように、第1受像装置10に設けられた第1カメラ13の光軸O1と、第2受像装置20に設けられた第2カメラ23の光軸O2は、所定距離L1だけ離間するように配置されている。カメラ13、23は、CMOS(相補型金属酸化膜半導体)やCCD(電荷結合素子)などの撮像素子を有しており、運転者の目を含む顔の画像を取得する。撮像素子では、二次元的に配列された複数の画素で光が検出される。
【0029】
図1に示すように、第1受像装置10は、第1カメラ13と、第1光源11ならびに第2光源12を有している。第1光源11は、第1カメラ13を左右方向(X方向)で挟むように、それぞれ複数(2個)設けられている。第2光源12も、第1カメラ13を左右方向で挟むように、それぞれ複数(2個)設けられている。第1カメラ13の光軸O1と、左右両側の第1光源11の光軸までの左右方向(X方向)の距離はL11であり、第1カメラ13の光軸O1と、左右両側の第2光源12の光軸までの左右方向(X方向)の距離はL12である。
【0030】
第2受像装置20は、第2カメラ23と、第1光源21ならびに第2光源22を有している。第1光源21は、第2カメラ23を左右で挟むように、複数(2個)設けられ、第2カメラ23の光軸O2から左右両側の第1光源21の光軸までの距離がL11である。第2光源22は、第2カメラ23を左右で挟むように複数(2個)設けられ、第2カメラ23の光軸O2から左右両側の第2光源22の光軸までの距離がL12である。
【0031】
第1受像装置10では、第1光源11と第1カメラ13の光軸O1までの距離L11が、第2光源12と第1カメラ13の光軸O1までの距離L12よりも短い。同様に、第2受像装置20では、第1光源21と第2カメラ23の光軸O2までの距離L11が、第2光源22と第2カメラ23の光軸O2までの距離L12よりも短い。
【0032】
ここで、第1カメラ13と第1光源11との光軸間距離L11、及び、第1カメラ13と第2光源12との光軸間距離L12は、視線検出装置1と対象者としての運転者との距離を考慮して、第1カメラ13と第2カメラ23の光軸間距離L1に対して十分に短いため、第1光源11と第2光源12は、第1カメラ13に対して互いの光軸が実質的に同軸であるとみなすことができる。同様に、第2カメラ23と第1光源21の光軸間距離L11、及び、第2カメラ23と第2光源22の光軸間距離L12は、第1カメラ13と第2カメラ23の光軸間距離L1に対して十分に短いため、第1光源21と第2光源22は、第2カメラ23に対して互いの光軸が実質的に同軸であるとみなすことができる。
【0033】
これに対して、第1カメラ13と第2カメラ23の光軸間距離L1が十分に長いため、第1受像装置10における第1光源11と第2光源12ならびに第1カメラ13の各光軸と、第2受像装置20における第1光源21と第2光源22ならびに第2カメラ23の各光軸とは、実質的に同軸ではない。
【0034】
第1光源11,21は、LED光源であり、検知光として波長が850nm(第1波長)の赤外光を出射し、この検知光を対象者の目に与えることができるように配置されている。第2光源12,22もLED光源であり、検知光として波長が940nm(第2波長)の赤外光を出射し、この検知光を対象者の目に与えることができるように配置されている。
【0035】
850nmは、人の目の眼球内での吸収率が低く、その結果網膜で反射されやすい波長であり、940nmは、人の目の眼球内での吸収率が高く、網膜で反射されにくい波長である。
【0036】
図2(A)(B)に示すように、第1受像装置10の第1カメラ13の光軸O1および第1光源11と第2光源12の光軸と、第2受像装置20の第2カメラ23の光軸O2および第1光源21と第2光源22の光軸とが、人の顔ならびに目に向けられている。
【0037】
図6に示す演算制御部CCは、コンピュータのCPUやメモリで構成されており、各ブロックの機能は、予めインストールされたソフトウエアを実行することで演算が行われる。
【0038】
演算制御部CCには、画像取得部44、45が設けられている。第1カメラ13と第2カメラ23の画像はフレーム毎に画像取得部44,45に与えられ、ステレオ方式で人の顔の画像が取得される。画像取得部44,45で取得された顔の画像は、フレームごとに瞳孔画像抽出部50と、黒目画像抽出部46ならびに顔画像抽出部47で抽出される。
【0039】
瞳孔画像抽出部50では、明瞳孔画像検出部51で明瞳孔画像が検出され、暗瞳孔画像検出部52で暗瞳孔画像が検出され、明瞳孔画像と暗瞳孔画像とから瞳孔画像が取得される。瞳孔画像は瞳孔中心算出部53に与えられて瞳孔中心が算出される。暗瞳孔画像は角膜反射光中心算出部53に与えられて、角膜反射中心が算出される。さらに、瞳孔画像は瞳孔形状算出部55に与えられ、瞳孔の形状(楕円の長軸・短軸比など)が算出される。
【0040】
黒目画像抽出部46では、黒目画像が抽出される。この黒目画像が黒目形状算出部48に与えられて黒目画像の形状(楕円の長軸・短軸比など)が算出される。顔画像抽出部47では、顔の各部位の位置が検出される。そして顔向き算出部49において、顔の向きが計算される。瞳孔中心算出部53、角膜反射光中心算出部54、瞳孔形状算出部55、黒目形状算出部48、顔向き算出部49で算出されたそれぞれの算出値は視線方向算出部56に与えられる。
【0041】
視線方向算出部56では、各算出値から視線方向が算出されるともに、複数種類の視線方向の算出値のうちのどれを使用するかの選択判断が行われる。
【0042】
<第1の算出値(瞳孔画像と角膜反射光)>
図2は、対象者の目60の視線の向きとカメラ13,23の光軸O1,O2との関係を模式的に示す説明図である。第1受像装置10の第1カメラ13の光軸O1と各光源の光軸がカバー板4に対して斜めに向けられ、第2受像装置20においても、第2カメラ23の光軸O2と各光源の光軸がカバー板4に対して斜めに向けられている。そのため、第1カメラ13の光軸O1と第2カメラ23の光軸O2の双方が、視線検出装置1から所定距離離れている対象者の目60に向けられている。
【0043】
図3は、瞳孔中心と角膜反射光の中心とから視線の向きを算出するための説明図である。
図2(A)と
図3(A)では、対象者の視線方向VLが第1カメラ13の光軸O1と第2カメラ23の光軸O2との中間に向けられており、
図2(B)と
図3(B)は視線方向VLが第2カメラ23の光軸O1方向へ向けられている。
【0044】
目60は前方に角膜61を有し、その後方に瞳孔62と水晶体63が位置している。そして最後部に網膜64が存在している。
【0045】
カメラ13,23で撮像された顔の画像が画像取得部44,45で取得され、瞳孔画像検出部50では、目の部位の画像が部分画像として取得される。このとき、点灯させる光源を選択することで、瞳孔62の明るさが相違する部分画像を得ることができる。部分画像内の瞳孔62の明るさの違いを相対的に表した概念が明瞳孔画像と暗瞳孔画像である。2つの画像を比較したときに瞳孔62が明るい方の画像が明瞳孔画像であり、瞳孔62が暗い方の画像が暗瞳孔画像である。
【0046】
暗瞳孔画像と明瞳孔画像は、第1光源11,21の発光と、第2光源12,22の発光とを切換えることにより行われる。
【0047】
第1光源11,21の波長850nmは、眼球での吸収率が低く網膜で反射されやすい。そのため、第1受像装置10の第1光源11が点灯したときに、第1光源11と略同軸の第1カメラ13で取得される画像では、網膜64で反射された赤外光が瞳孔62を通じて検出され、瞳孔62が明るく見える。この画像が明瞳孔画像として明瞳孔画像検出部51で抽出される。これは、第2受像装置20において、第1光源21が点灯したときに、これと略同軸の第2カメラ23で取得される画像についても同様である。
【0048】
第2光源12,22の波長940nmは、眼球での吸収率が高く網膜で反射されにくい。そのため、第1受像装置10の第2光源12が点灯したときに、第2光源12と略同軸の第1カメラ13で取得される画像では、網膜64から赤外光がほとんど反射されず、瞳孔62が暗く見える。この画像が暗瞳孔画像として、暗瞳孔画像検出部52で抽出される。これは、第2受像装置20において、第2光源22が点灯したときに、これと略同軸のカメラ23で取得される画像についても同様である。
【0049】
第1受像装置10と第2受像装置20とで、撮像動作を交互に繰り返すことで、2つのカメラ13,23で明瞳孔画像と暗瞳孔画像を別々に取得でき、瞳孔の位置を三次元的に測定することが可能になる。
【0050】
または、次のように点灯する光源を切換えることで、明瞳孔画像と暗瞳孔画像とを取得することも可能である。
【0051】
図2(A)に示すように、受像装置10の光軸O1と受像装置の光軸O2は、異なる角度で対象者の目60に与えられる。
【0052】
第1受像装置10に搭載されている第1光源11を点灯したときに、第1光源11と実質的に同軸の第1カメラ13で取得した画像では、網膜64で反射された赤外光がカメラ13に入射しやすいため、瞳孔62が明るく見える明瞳孔画像となる。この画像は明瞳孔画像として、明瞳孔画像検出部51で抽出される。これに対し、受像装置20に設けられた第2カメラ23の光軸O2は、第1受像装置10の第1光源11の光軸と非同軸となるため、第1光源11を点灯したときに、網膜64で光が反射されたとしてもその光は第2カメラ23で検知されにくい。そのため、第2カメラ23で取得した画像は、瞳孔62が比較的暗い暗瞳孔画像となる。この画像は暗瞳孔画像として、暗瞳孔画像検出部52で抽出される。
【0053】
逆に、第2受像装置20の第1光源21を点灯したときは、網膜64で反射された光が瞳孔62を通過し、光軸O2に沿って第2カメラ23で検知されやすく、第2カメラ23で取得された画像が明瞳孔画像となる。このとき、網膜64で反射された光は、斜め前方に位置する第1カメラ13で検知されにくく、第1カメラ13で取得された画像が暗瞳孔画像となる。
【0054】
つまり、同じ波長の検知光が発せられたときに、その光源に近接する一方のカメラから取得された画像が明瞳孔画像となり、その光源から離れた位置のカメラから取得された画像が暗瞳孔画像となる。
【0055】
これは、第1受像装置10の第2光源12および第2受像装置の第2光源22と、カメラ13,23との組み合わせにおいても同じである。
【0056】
図6に示す瞳孔画像抽出部50では、明瞳孔画像検出部51で検出された明瞳孔画像から暗瞳孔画像検出部52で検出された暗瞳孔画像がマイナスされる。この計算により明瞳孔画像に明るく現れている瞳孔62の画像が残り、それ以外の画像は相殺されてほぼ見えなくなる。
【0057】
瞳孔62の形状を示す瞳孔画像信号は、瞳孔中心算出部53に与えられる。瞳孔中心算出部53では、瞳孔画像信号が画像処理されて二値化され、瞳孔62の形状と面積に対応する部分のエリア画像が算出される。さらに、このエリア画像を含む楕円が抽出され、楕円の長軸と短軸との交点が瞳孔62の中心位置として算出される。
【0058】
次に、いずれかの光源が点灯しているときには、その光源からの光が、角膜61の表面で反射されて、その光が第1カメラ13と第2カメラ23の双方で取得され、明瞳孔画像検出部51と暗瞳孔画像検出部52で検出される。特に、暗瞳孔画像検出部52では、瞳孔62の画像が比較的暗いため、角膜61の反射点65から反射された反射光が明るくスポット画像として検出しやすくなる。
【0059】
暗瞳孔画像検出部52で検出された暗瞳孔画像信号は、角膜反射光中心算出部54に与えられる。暗瞳孔画像信号には、角膜61の反射点65から反射された反射光による輝度信号が含まれている。角膜61の反射点65からの反射光はプルキニエ像を結像するものであり、
図3に示すように、カメラ13、23の撮像素子には、きわめて小さい面積のスポット画像として取得される。角膜反射光中心算出部54では、スポット画像が画像処理されて、角膜61の反射点65からの反射光の中心が求められる。
【0060】
瞳孔中心算出部53で算出された瞳孔中心算出値と角膜反射光中心算出部54で算出された角膜反射光中心算出値は、視線方向算出部56に与えられる。視線方向算出部56では、瞳孔中心算出値と角膜反射光中心算出値とから視線の向きが検出される。
【0061】
図2(A)では、人の目60の視線方向VLが、第1カメラ13の光軸O1と第2カメラ23の光軸O2との中間方向に向けられている。このとき、
図2(A)に示すように、角膜61からの反射点65の中心が瞳孔62の中心と一致している。これに対して、
図2(B)では、人の目60の視線方向VLが、かなり左側へ向けられている。このとき、
図3(B)に示すように、瞳孔62の中心と角膜61からの反射点65の中心とが位置ずれする。
【0062】
視線方向算出部56では、瞳孔62の中心と、角膜61からの反射点65の中心との直線距離αが算出される(
図3(B))。また瞳孔62の中心を原点とするX−Y座標が設定され、瞳孔62の中心と反射点65の中心とを結ぶ線とX軸との傾き角度βが算出される。2つのカメラ13,23で取得された画像に基づいて前記直線距離αと前記傾き角度βが算出されることで、視線方向VLが算出される。このように、瞳孔62の中心と角膜61からの反射点65の中心とから算出される視線方向の算出値が第1の算出値である。
【0063】
<第2の算出値(瞳孔または黒目の形状)>
図6に示す演算制御部CCでは、黒目画像抽出部46で、画像取得部44,45で取得された画像から部分画像として黒目(虹彩)の画像が抽出されて、黒目形状算出部48に与えられる。あるいは、明瞳孔画像検出部51で検出された明瞳孔画像、または暗瞳孔画像検出部52で検出された暗瞳孔画像から黒目の画像が抽出されて黒目形状算出部48に与えられてもよい。黒目形状算出部48では、黒目画像に対応するエリア画像が生成され、エリア画像の楕円の長軸寸法と短軸寸法とが算出される。この長軸寸法と短軸寸法との比が視線方向算出部56に与えられて、黒目がどのような楕円形状になっているかが算出される。さらに、長軸または短軸の傾きにより、空間内での黒目の上下方向への傾き角度も算出することができる。
【0064】
図4(A)に示す目の画像は、
図3(A)と同じであり、視線方向VLが、第1カメラ13の光軸O1と第2カメラ23の光軸O2との中間に向けられている。黒目66の画像の縦軸(Y軸)の寸法を長軸寸法Y1とし、横軸(X軸)の短軸寸法X1とすると、長軸寸法Y1と短軸寸法X1との比がもっとも小さいとき(1に近いとき)、視線方向VLがほぼ正面に向けられていると判断される。
【0065】
図4(B)では、視線方向VLが、
図2(B)の向きよりもさらに左方向(光軸O1を超える方向)へ向けられている。このときの、視線方向VLの角度は、黒目画像の長軸寸法Y1と短軸寸法X1との比から求めることができる。
図4(B)では、第1の算出値に使用された角膜61からの反射点65が、黒目66を外れているため、反射点65を暗瞳孔画像から抽出するのは困難な状態であり、瞳孔62の中心と角膜61からの反射点65の中心とから算出される視線方向の第1の算出値が得られず、または第1の算出値が得られたとしてもその値のばらつきが大きくなっている。
【0066】
これに対し、黒目66の長軸寸法Y1と短軸寸法X1は比較的安定して抽出される。黒目形状算出部48で、長軸寸法Y1と短軸寸法X1との比が求められ、長軸寸法Y1と短軸寸法X1が視線方向算出部56に与えられることにより、視線方向算出部56において、視線方向の角度を比較的安定して算出することができる。
【0067】
図4(C)は、視線方向VLが
図4(B)と同じ方向へ向けられ且つ上方へ向けられており、
図4(D)では、視線方向VLが
図4(B)と同じ方向へ向けられ且つ下方へ向けられている。黒目形状算出部48では、長軸Yが垂直軸と成す角度α1,α2が算出され、その角度算出値が視線方向算出部56に与えられる。視線方向算出値56では、角度α1,α2を知ることで視線方向の上下方向への向きも算出することができる。
【0068】
また、
図6に示す瞳孔画像抽出部50で抽出された瞳孔画像は瞳孔形状算出部55に与えられる。瞳孔形状算出部55では、黒目形状算出部48と同様の演算が行われ、瞳孔62の長軸寸法と短軸寸法の比が求められ、さらに長軸寸法の垂直軸に対する傾き角度が算出される。長軸寸法と短軸寸法の比と傾き角度は視線方向算出部56に与えられて、視線方向が算出される。
【0069】
視線方向算出部56では、黒目の形状から算出された視線方向の算出値と瞳孔の形状から算出された視線方向の算出値のいずれか一方のみを第2の算出値として使用してもよいし、黒目の形状から得られた視線方向の算出値と瞳孔形状から得られた視線方向の算出値のうちのばらつきの小さい方を視線方向の第2の算出値としてもよい。
<第3の算出値(顔の向きと黒目の位置)>
図5(A)は、正面を向いたときの、顔の向きと、黒目66の位置または瞳孔62の位置を示す画像であり、
図5(B)は、視線を正面方向から大きくそらしたときの、顔の向きと、黒目66の位置または瞳孔62の位置を示す画像である。
【0070】
図6に示すように、顔画像抽出部47では、画像取得部44,45で取得された顔画像から、顔の各部位の部分画像が抽出される。例えば
図5に示す、唇72の両端部や鼻71の両側部が検出される。この検出は、画像の輝度の変化度が高い場所を検索することなどで行われる。顔向き算出部44では、唇72の位置、鼻71の位置、目60の位置など、いずれかの部位の画像の位置の相対関係を計算し、その計算値に基づいて顔の向きが算出される。
【0071】
顔の向きを算出する他の方法としては、瞳孔画像抽出部50で2つの瞳孔62の画像を取得できているので、視線方向算出部56において、2つの瞳孔62,62の距離Leを測定し、その距離Leの変化から、顔の向きを算出することができる。瞳孔間の距離Leの値で顔の向きを算出する算出方法では、瞳孔中心算出部53からの出力をそのまま利用できるので、複雑な画像処理を行うことなく、顔の向きを算出することができる。
【0072】
次に、顔画像抽出部47において、目頭67と目じり68が検出される。この検出は、画像処理により輝度変化が所定値以上となる場所を探すことなどで行われる。黒目画像抽出部46により黒目66が検出されるため、目頭67から黒目66の中心までの距離Laと、目じり68から黒目66の中心までの距離Lbを比較することにより、目60における黒目66の位置を算出することができる。
【0073】
または、瞳孔画像抽出部50において瞳孔62の画像が検出できているので、目頭67から瞳孔62の中心までの距離Laと、目じり68から瞳孔62の中心までの距離Lbを比較することによっても、目60における黒目66の中心位置(瞳孔中心位置)を算出することができる。
【0074】
視線方向算出部56では、顔の向きに関する算出値と、目60における黒目66の中心(瞳孔中心)の相対位置とから、正面に対して視線を横方向へ大きくそらせたときにも、視線方向を算出することができる。この算出値が視線方向の第3の算出値である。
【0075】
図5に示す顔の各部位の配置や瞳孔62の間隔Leなどは、個々の対象者によって相違する。したがって、例えば、最初に顔と視線を正面方向(光軸O1と光軸O2の中間方向)へ向けて、操作釦を操作することなどにより、顔の基本画像を取得し、その基本画像における顔の各部位の配置位置を基準とし、その後に、基本画像の各部位の配置を基にして、顔の各部位の画像の位置を抽出し、顔の向きを算出することが好ましい。
【0076】
顔の向きと黒目(または瞳孔)の位置から視線を求める方向では、角膜反射光の反射点65が検出できないような視線の向き、すなわち第1の検出値が得られないような視線の向きであっても、視線方向を示す第3の算出値として求めることが可能である。
【0077】
<算出値の選択>
図7は、視線方向算出部56での算出値の選択プロセスを示している。視線方向算出値56では、
図3に示す瞳孔62の中心と角膜反射光の反射点65とから視線方向の第1の算出値D1が得られ、
図4に示す黒目66または瞳孔62の楕円形状を算出することで視線方向の第2の算出値D2が得られ、
図5に示す顔の向きと目60における黒目66または瞳孔62の相対位置とで視線方向の第3の算出値D3が得られる。
算出値の第1の選択方法としては、算出された角度範囲によって算出値を選択する。
【0078】
第1の算出値D1による視線方向の角度が、正面方向(光軸O1と光軸O2の中間方向)に対して第1の角度範囲(例えば±30度)までは、第1の算出値D1を真の視線方向の算出値として選択する。第1の算出値D1が第1の角度範囲に至ったら、第2の算出値D2を真の視線方向の算出値として選択する。その後、第2の算出値D2が、第1の角度範囲よりも大きい第2の角度範囲(例えば±60度)を超えるまでは、第2の算出値D2を選択し続ける。そして、第2の算出値D2が、第2の角度範囲に至ったら、その後は第3の算出値D3を選択する。
【0079】
上記のように、算出値をD1,D2,D3の順に切換えていくことにより、視線方向が正面向きから大きくそれて±60度を超え、ほぼ±90度程度に至るまで、視線方向の角度を算出することができる。したがって、自動車の運転者を被測定者としたときに、視線を左右のドアミラーを見る位置までそらしても、視線方向を算出することが可能になる。
算出値の第2の選択方法は、第1の選択方法を補完する方法である。
【0080】
第2の選択方法は、視線が正面方向から第1の角度範囲(例えば±30度)に近い角度範囲までは第1の算出値D1を選択し、第1の角度範囲を超えたら第2の算出値D2を選択する。ただし、第1の角度範囲の境界部、例えば視線方向の角度が25度〜35度の範囲では、視線方向算出部56において、
図7のST1(ステップ1)に移行し、第1の算出値D1の値のばらつきと、第2の算出値D2の値のばらつきを比較する。この比較は、単位時間当たりのばらつきの最大値どうしを比較してもよいし、単位時間当たりのばらつきの平均値どうしを比較してもよい。そして、ST2では、視線方向の角度が例えば25度〜35度の範囲において、第1の算出値D1と第2の算出値D2のうちのばらつきの小さい値を、真の視線方向の算出値とする。この選択は所定時間の周期で行われる。よって、25度〜35度の範囲では、第1の算出値D1と第2の算出値D2が所定の周期で入れ替わることもある。
【0081】
視線の角度が35度を超えたら、第2の算出値D2を真の視線方向の算出値とする。そして、視線方向の角度が第2の角度範囲の境界部、例えば視線方向の角度が55度〜65度の範囲のときに、
図7に示すST3に移行し、第2の算出値D2と第3の算出値D3の値のばらつきを比較する。そして、ST4では、55度〜65度の範囲で、第2の算出値D2と第3の算出値D3のうちのばらつきの小さい方を真の視線方向の算出値として選択する。そして、65を超えたら第3の算出値D3を真の視線方向の検出値とする。なお、55度〜65度の間では、所定の周期で前記比較が行われる。
【0082】
この第2の選択方法では、第1の角度範囲の境界部ならびに第2の角度範囲の境界部においても、常に視線方向の角度を精度良く求めることができる。
【0083】
次に、第3の選択方法を説明する。
第3の選択方法では、
図3に示すように、角膜61の反射点65が検出されて角膜反射光中心算出部54からの検知出力が得られているとき、あるいは第1の算出値D1が得られているときは、
図7に示すST1において、第1の算出値D1と第2の算出値D2のうちのばらつきを比較し、ST2においてばらつきの小さい方向の値を真の視線方向の算出値とする。
【0084】
その後、角膜反射光中心算出部54からの検知出力が得られなくなったとき、あるいは第1の算出値D1が得られなくなったときに、ST3に移行する。ST3では、第2の算出値D2と第3の算出値D3のばらつきを比較し、ST4においてばらつきの小さい方を真の視線方向の検出値とする。
【0085】
このように、常にいずれかの算出値のうちのばらつきの小さい値を選択することで、高精度に視線方向を算出できるようになる。