(57)【要約】【課題】メガネを装着している被写体の視線を検出することを目的とする。【解決手段】光源と、前記光源から光が照射された被写体側から反射される反射光を検出する検出部と、前記光源から前記被写体に対して照射される前記光の照射面積を変化させる制御部と、前記光の前記照射面積を変化させたときの前記被写体側からの前記反射光の変化に基づき、前記被写体の視線位置を特定する特定部とを有することを特徴とする視線検出システム。【選択図】図１
2017079883.tif 000002
【特許請求の範囲】
【請求項１】
光源と、
前記光源から光が照射された被写体側から反射される反射光を検出する検出部と、
前記光源から前記被写体に対して照射される前記光の照射面積を変化させる制御部と、
前記光の前記照射面積を変化させたときの、前記被写体側からの前記反射光の変化に基づき、前記被写体の視線位置を特定する特定部と
を有することを特徴とする視線検出システム。
【請求項２】
前記検出部は、前記被写体側を撮影する撮影装置であることを特徴とする請求項１に記載の視線検出システム。
【請求項３】
前記特定部は、前記照射面積が第一の状態のときに撮影された第一の画像と、該照射面積が第二の状態のときに撮影された第二の画像とを利用して、前記視線位置を特定することを特徴とする請求項２に記載の視線検出システム。
【請求項４】
前記特定部は、前記第一の画像において、前記被写体が装着するメガネの表面上でメガネ反射が発生していることを判定した場合に、前記第二の状態における前記照射面積を決定し、
前記制御部は、前記特定部からの入力に基づき、前記光源の前記照射面積が前記第二の状態になるように制御することを特徴とする請求項３に記載の視線検出システム。
【請求項５】
前記特定部は、前記第一の画像における前記メガネ反射の大きさを取得し、前記被写体と前記検出部との距離および該メガネ反射の大きさに応じて、前記第二の状態における前記照射面積を決定することを特徴とする請求項４記載の視線検出システム。
【請求項６】
前記特定部は、前記第一の画像における前記メガネ反射の位置、および、該第一の画像における特徴点と前記第二の画像における対応する特徴点との動きベクトルから、該第二の画像における他のメガネ反射の位置を推定し、該第二の画像における、該他のメガネ反射の位置および周囲以外の領域から、前記被写体の角膜上での角膜反射を検出することを特徴とする請求項５記載の視線検出システム。
【請求項７】
前記光源は、複数の発光素子が配列した光源であって、
前記制御部は、前記複数の発光素子のうち、点灯させる発光素子を制御する事で、前記照射面積を制御することを特徴とする請求項１乃至請求項６のいずれか一項に記載の視線検出システム。
【請求項８】
前記制御部は、前記第一の状態と前記第二の状態とを、前記検出部の検出周期に応じて、切り替えることを特徴とする請求項３に記載の視線検出システム。
【請求項９】
コンピュータが、
光源から光が照射された被写体側から反射される反射光を検出し、
前記光源から前記被写体に対して照射される前記光の照射面積を変化させ、
前記光の前記照射面積を変化させたときの、前記被写体側からの前記反射光の変化に基づき、前記被写体の視線位置を特定する
処理を実行することを特徴とする視線検出方法。
【請求項１０】
コンピュータに、
光源から光が照射された被写体側から反射される反射光を検出し、
前記光源から前記被写体に対して照射される前記光の照射面積を変化させ、
前記光の前記照射面積を変化させたときの、前記被写体側からの前記反射光の変化に基づき、前記被写体の視線位置を特定する
処理を実行させることを特徴とする視線検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体の視線を検出する技術に関する。
【背景技術】
【０００２】
近赤外光源および近赤外カメラを利用して、角膜反射法により、被写体である人物の視線を検出する技術がある（例えば、非特許文献１）。角膜反射法は、近赤外線光源を用いて角膜上に反射を発生させ、角膜反射の中心位置と瞳孔の中心位置とを画像処理により求める。そして、角膜反射法は、反射の中心位置と瞳孔の中心位置との位置関係から、被写体の視線を検出する。
【０００３】
また、視線を検出する対象の被写体が、例えば、メガネをかけている人物である場合には、近赤外光源から照射された近赤外光が、メガネのレンズ表面で反射する。以下、メガネのレンズ表面で反射をメガネ反射と称する。メガネ反射を考慮した視線検出技術が、種々提案されている（例えば、特許文献１および特許文献２）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１６７２５６号公報
【特許文献２】特開２００３−３３９６４２号公報
【非特許文献】
【０００５】
【非特許文献１】大野健彦ら、眼球形状モデルに基づく視線測定システム―視線入力デバイスの実現に向けて―、情報処理学会研究報告２００１−ＨＩ−９３、２００１、ｐｐ４７−５４
【発明の概要】
【発明が解決しようとする課題】
【０００６】
メガネ反射が発生した状態で撮影された画像では、メガネ反射が角膜反射や瞳孔と重なり、画像から角膜反射や瞳孔が検出できなくなる場合がある。そこで、本実施例に開示の技術は、メガネを装着している被写体の視線を検出することを目的とする。
【課題を解決するための手段】
【０００７】
本実施例に開示の技術は、一つの側面では、光源と、前記光源から光が照射された被写体側から反射される反射光を検出する検出部と、前記光源から前記被写体に対して照射される前記光の照射面積を変化させる制御部と、前記光の前記照射面積を変化させたときの前記被写体側からの前記反射光の変化に基づき、前記被写体の視線位置を特定する特定部とを有することを特徴とする視線検出システムに関する。
【発明の効果】
【０００８】
本実施例に開示の技術は、メガネを装着している被写体の視線を検出することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施例に係る視線検出システムの構成を示す図である。
【図２】図２Ａおよび図２Ｂは、光源から照射される照射面積と、角膜反射およびメガネ反射の関係を説明するための図である。
【図３】図３は、特定部が有する機能を示す機能ブロック図である。
【図４】図４は、対応テーブルの構成例である。
【図５】図５は、学習処理のフローチャートである。
【図６】図６は、視線検出処理のフローチャート（その１）である。
【図７】図７は、視線検出処理のフローチャート（その２）である。
【図８】図８Ａおよび図８Ｂは、本実施例に係る視線検出の効果を説明するための図である。
【図９】図９は、視線検出装置を含む視線検出システムのハードウェア構成である。
【発明を実施するための形態】
【００１０】
以下に、本発明に関する視線検出技術の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【００１１】
図１は、本実施例に係る視線検出システムの構成を示す図である。図１に示すように、視線検出システム１００は、視線検出装置１、光源６、検出部７を含む。光源６は、所定の波長の光を、被写体へ向けて照射する。検出部７は、光源６から光が照射された被写体側から反射される光を検出する。
【００１２】
検出部７は、例えば、光源６が照射する所定の波長の光に感度を有するカメラである。よって、検出部７は、被写体を撮影する事で、光源６から光が照射された被写体側から、反射される光を検出する。なお、被写体は、視線を検出する対象の人物である。また、被写体側は、被写体およびその他の物体（メガネを含む）を意味する。
【００１３】
本実施例においては、所定の波長の光として、被写体には見えない近赤外光を利用する。よって、検出部７の一例であるカメラは、近赤外光カメラであり、光源６は、近赤外光を照射するＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）である。そして、検出部７が、検出結果として取得する画像は、近赤外画像である。近赤外画像には、光源６から照射された近赤外光の反射および、その他の光源から照射された近赤外光（例えば、自然光や蛍光灯の光）の反射の強さに応じた輝度で、被写体側の様子が撮影される。
【００１４】
視線検出装置１は、被写体の視線を検出する。なお、視線検出装置１は、例えば、各種処理を実行するプロセッサーや、情報を記憶するメモリを有するコンピュータである。
【００１５】
視線検出システム１００において、光源６および検出部７は視線検出装置１に接続される。ただし、その接続形態は、有線で接続される以外にも、無線通信で通信する形態であってもよい。例えば、視線検出処理が開始されると、視線検出装置１の制御の下、検出部７は一定の時間間隔で被写体側を撮影するとともに、撮影した画像を視線検出装置１に出力する。また、視線検出処理が開始されると、視線検出装置１により、光源６の点灯が制御される。
【００１６】
本実施例においては、視線検出装置１は、検出部７から取得した近赤外画像に対して視線検出処理を実行する事で、被写体の視線を検出する。例えば、視線検出装置１は、近赤外画像を用いて、光源６から照射された光の角膜反射の中心位置および、被写体の瞳孔の中心位置を検出することで、視線を検出する。
【００１７】
視線検出装置１による処理結果は、例えば、マーケティング分析に活用される。具体的には、店舗内の棚や商品のプレートに、検出部７および光源６が設置されている場合に、視線検出装置１は、店舗に来店した客（被写体）の視線を検出する。そして、マーケティング分析においては、視線検出結果から、客がどの商品に興味をいだいているかが推定される。例えば、視線検出装置１の出力（視線検出結果）から、多くの客が興味を抱いた商品を把握することができる。
【００１８】
また、視線検出装置１による処理結果は、例えば、危険運転検知に活用される。具体的には、運転席に座るドライバーを撮影可能な場所に検出部７が設置され、ドライバーに光を照射可能な場所に光源６が設置されている場合に、視線検出装置１は、ドライバー（被写体）の視線を検出する。そして、危険運転検知においては、視線検出結果から、ドライバーが様々な方向に注意を払っているか、居眠り運転の危険性がないか等が推定される。
【００１９】
さらに、図１に示す通り、視線検出装置１は、取得部２、制御部３、特定部４、記憶部５を有する。取得部２は、検出部７による検出結果を、順次取得するとともに、特定部４へ入力する。例えば、取得部２は、被写体の顔を撮影した近赤外画像の画像情報を、順次、検出部７から取得する。画像情報には、各画素における近赤外光の反射の強さを示す輝度情報が含まれる。なお、検出部７と視線検出装置１が無線通信により通信する場合には、取得部２は通信部として機能する。
【００２０】
制御部３は、光源６から照射される、被写体に対する光の照射面積を変化させる。例えば、制御部３は、光源６が複数の発光素子を含む光源の場合、各々の発光素子に対して、点灯または消灯を制御する事で、点灯させる発光素子の個数を制御する。点灯させる発光素子の個数を制御することによって光源６から被写体に照射される光の照射面積を変化させるようにしてもよい。また、制御部３は、視線検出システム１００が光源６と被写体間に配置された絞りを備える場合、当該絞りの孔の大きさを制御することによって光源６から被写体に照射される光の照射面積を変化させるようにしてもよい。
【００２１】
特定部４は、光の照射面積を変化させたときの、被写体側から反射される光の変化に基づき、被写体の視線位置を特定する。つまり、特定部４は、被写体の視線を検出する。例えば、特定部４は、照射面積が第一の状態のときに撮影された第一の画像と、照射面積が第二の状態のときに撮影された第二の画像を利用して、被写体の角膜反射および瞳孔を検出する事で、被写体の視線位置を特定する。
【００２２】
後述するように、第一の状態における照射面積は、第二の状態における照射面積よりも大きいものとする。例えば、光源６が複数の発光素子が配列した光源である場合、第一の状態は、全ての発光素子を点灯させた光源である。また、第二の状態は、一部の発光素子を点灯（他の発光素子は消灯）させた状態である。なお、第二の状態において点灯させる一部の発光素子は、互いに離散した位置関係になく、例えば隣接して存在するなど、かたまって存在する発光素子である。また、例えば、視線検出システム１００が絞りを備える場合、第一の状態は、絞りの孔を最大とした状態である。第二の状態は、絞りの孔を小さくさせた状態である。
【００２３】
ここで、本実施例は、光源６から被写体に照射される光の照射面積が変化した場合に、角膜反射の大きさの変化に対して、メガネ反射の大きさの変化が大きいことを利用する。図２Ａおよび図２Ｂは、光源から照射される照射面積と、角膜反射およびメガネ反射の関係を説明するための図である。
【００２４】
図２Ａおよび図２Ｂには、被写体の眼球１０と、メガネのレンズ表面１１と、光源６とが模式的に示されている。ただし、図２Ｂにおける光源６から照射される照射面積は、図２Ａにおける光源６から照射される照射面積よりも小さい。また、図２Ａおよび図２Ｂに示した面１２は、検出部７（カメラ）の投影面を模式的に示している。さらに、図２Ａおよび図２Ｂに示した面１３は、検出部７（カメラ）のレンズを模式的に示している。
【００２５】
ここで、光源６から照射された光は、メガネのレンズ表面１１の様々な場所で反射するが、検出部７（カメラ）により検出される反射光は、カメラレンズの中心位置と光源６の位置との中点と、メガネのレンズ表面１１の球面の中心とを結んだ直線が、メガネのレンズ表面１１と交わった点で反射した光である。つまり、光源６が図２Ａに示す照射面積を有する場合、光源６のもっとも右端から照射された光のうち、メガネのレンズ表面１１のＰ１で反射する光が検出部７に検出される。また、光源６のもっとも左端から照射された光のうち、メガネのレンズ表面１１のＰ２で反射した光が検出部７に検出される。以上から、図２Ａでは、メガネのレンズ表面１１におけるＰ１からＰ２に渡って、メガネ反射が発生する。
【００２６】
同様に、光源６から照射された光は、眼球１０の様々な場所で反射するが、検出部７（カメラ）により検出される反射光は、カメラレンズの中心位置と光源６の位置との中点と、眼球１０の球の中心とを結んだ直線が、眼球１０と交わった点で反射した光である。つまり、光源６が図２Ａに示す照射面積を有する場合、光源６のもっとも右端から照射された光のうち、眼球１０のＱ１で反射する光が検出部７に検出される。また、光源６のもっとも左端から照射された光のうち、眼球のＱ２で反射した光が検出部７に検出される。以上から、図２Ａでは、被写体の眼球１０におけるＱ１からＱ２に渡って、角膜反射が発生する。
【００２７】
さらに、図２Ａにおける投影面１２では、メガネ反射（Ｐ１’からＰ２’）の中に角膜反射（Ｑ１’からＱ２’）が含まれてしまっている。つまり、図２Ａの状態で撮影された画像では、目的の角膜反射がメガネ反射に隠れてしまい、角膜反射を検出することができない。
【００２８】
一方、図２Ｂでは、メガネのレンズ表面１１におけるＰ３からＰ４に渡って、メガネ反射が発生する。また、被写体の眼球１０におけるＱ３からＱ４に渡って、角膜反射が発生する。さらに、図２Ｂの投影面１２では、メガネ反射（Ｐ３’からＰ４’）と角膜反射（Ｑ３’からＱ４’）が分離している。図２Ｂの状態で撮影された画像においては、小さくなったメガネ反射と角膜反射とが重ならない状態で、撮影されることとなる。つまり、目的の角膜反射を検出することができる。
【００２９】
以上のように、メガネと眼球との間の曲率の違いや、メガネと眼球との間の半径の違いにより、メガネ反射は、照射面積が大きい図２Ａの状態よりも、照射面積が小さい図２Ｂの状態の方が、大幅に小さくなる。一方、角膜反射も、図２Ａの状態よりも、図２Ｂの状態の方が小さくなるものの、メガネ反射よりは照射面積の変化の影響は受けない。
【００３０】
図１に戻り、記憶部５は、本実施例に係る視線検出処理に必要な各種情報を記憶する。例えば、取得部２が取得した検出部７による検出結果（画像情報）や、後述の対応テーブルなどを記憶する。
【００３１】
次に、特定部４について、詳述する。図３は、特定部が有する機能を示す機能ブロック図である。特定部４は、認識部４１、メガネ反射検出部４２、抽出部４３、角膜反射検出部４４、瞳孔検出部４５、決定部４６、視線検出部４７を有する。
【００３２】
認識部４１は、画像から被写体や被写体の特定のパーツを認識する。例えば、認識部４１は、照射面積が第一の状態のときに撮影された第一の画像と、第二の状態のときに撮影された第二の画像との各々から、被写体の顔を認識する。なお、顔認識は、従来の顔認識技術が利用される。
【００３３】
さらに、認識部４１は、顔として認識された領域（顔領域）から、特定のパーツを認識してもよい。特定のパーツの認識においては、人間の顔のパーツを認識する従来の認識技術が利用される。本実施例においては、認識部４１は、顔領域を対象に、事前に学習された目の特徴に合致する領域を探索する事で、目の認識を行う。そして、認識部４１は、画像における目領域を示す目領域情報を生成し、記憶部５に格納する。なお、目領域の情報は、例えば、目領域の範囲を示す情報と、目領域の中心位置（または重心位置）を示す情報である。
【００３４】
メガネ反射検出部４２は、光源６から照射される照射面積がより広い状態で撮影された第一の画像から、後述の角膜反射検出部４４により角膜反射が検出できなかった場合、第一の画像からメガネ反射領域を検出する。例えば、メガネ反射検出部４２は、認識部４１から入力された目領域情報に基づき、第一の画像における目領域から、輝度値が所定値（例えば２４０）以上である画素の領域を特定するとともに、当該領域が所定数（例えば３０ピクセル）以上の画素を含む場合、当該領域をメガネ反射領域として検出する。
【００３５】
メガネ反射検出部４２は、検出したメガネ反射領域の情報を、記憶部５に格納する。なお、メガネ反射領域の情報は、例えば、メガネ反射領域の範囲を示す情報と、メガネ反射領域の中心位置（または重心位置）を示す情報である。
【００３６】
つぎに、抽出部４３は、第一の画像および第二の画像の各々から特徴点を抽出する。例えば、抽出部４３は、ＨａｒｒｉｓオペレーターやＦａｓｔオペレーターを利用して、第一の画像における目領域から、特徴点としてコーナーを抽出する。そして、抽出部４３は、抽出した特徴点の位置を、記憶部５に格納する。第二の画像に対しても同様である。なお、特徴点としては、例えば、メガネのフレームの角や、目頭等が抽出される。
【００３７】
角膜反射検出部４４は、光源６から照射される照射面積がより広い状態で撮影された第一の画像から、角膜反射を検出する。ただし、第一の画像から、角膜反射が検出できなかった場合、角膜反射検出部４４は、照射面積がより狭い状態で撮影された第二の画像から、角膜反射を検出する。
【００３８】
第二の画像から角膜反射を検出する際、角膜反射検出部４４は、抽出部４３により抽出された特徴点の情報を利用する。具体的には、角膜反射検出部４４は、第一の画像から抽出された特徴点と、第二の画像から抽出された特徴点とを対応付ける。そして、角膜反射検出部４４は、対応付けられた特徴点の移動ベクトルを算出する。この移動ベクトルには、被写体が第一の画像撮影時点から第二の画像撮影時点までに移動した場合の、移動量および移動方向が反映されている。
【００３９】
例えば、第一の画像における特徴点（ｘ，ｙ）と、第二の画像における特徴点（ｘ’，ｙ’）とが対応付けられた場合、その移動ベクトルＶは、以下の式１で表される。
【００４０】
Ｖ＝（ｘ’−ｘ，ｙ’−ｙ）  （式１）
そして、角膜反射検出部４４は、第一の画像から検出されたメガネ反射領域の中心位置と、移動ベクトルとに応じて、第二の画像におけるメガネ反射の中心位置を推測する。つまり、角膜反射検出部４４は、メガネ反射が発生するであろう位置を、被写体の移動を考慮して推定する。
【００４１】
具体的には、第一の画像におけるメガネ領域の位置（Ｐｘ，Ｐｙ）に移動ベクトルＶを反映させて、第二の画像におけるメガネ領域の位置（Ｐｘ’，Ｐｙ’）を推定する。
【００４２】
Ｐｘ’＝Ｐｘ＋（ｘ’−ｘ）、Ｐｙ’＝Ｐｙ＋（ｙ’−ｙ）      （式２）
そして、角膜反射検出部４４は、第二の画像から、メガネ反射の推定位置の周辺以外に存在する高輝度画素の集合を検出するとともに、当該集合を角膜反射として検出する。なお、メガネ反射の推定位置の周辺は、例えば、半径１０ピクセル以内を言う。
【００４３】
本実施例においては、第二の画像を撮影する際に、光源６から照射される光の被写体に対する照射面積を小さくすることで、メガネ反射が発生する面積を小さくし、角膜反射との分離を行う。角膜反射は、メガネ反射と同様、高輝度画素の集合であるため、角膜反射とメガネ反射を区別する必要がある。
【００４４】
しかし、メガネ反射検出部４２が第一の画像に対して実行するようなメガネ反射領域の検出方法を、第二の画像に対して行ったとしても有効性が低い。なぜなら、照射面積を小さくしたことで、第二の画像におけるメガネ反射自体も小さくなっており、メガネ反射検出部４２が実行するアルゴリズム（例えば３０ピクセル以上高輝度画素が集合している領域を検出する）では、第二の画像からメガネ反射を検出できない可能性が高い。
【００４５】
そこで、光源６から照射される照射面積を小さくした後は、角膜反射検出部４４は、移動ベクトルと第一の画像におけるメガネ反射位置を考慮して、第二の画像におけるメガネ反射の位置を推定する。そして、角膜反射検出部４４は、第二の画像からメガネ反射の推定位置周辺以外に存在する高輝度画素の集合を、角膜反射として検出する。
【００４６】
なお、角膜反射検出部４４は、メガネ反射領域の位置（中心位置や重心位置）だけでなく、照射面積に応じて、メガネ反射の領域を推定してもよい。例えば、照射面積を、第一の状態から第二の状態で４分の１にした場合には、第二の画像において、推定されたメガネ反射領域の位置に、第一の画像におけるメガネ反射領域の４分の１のメガネ反射が発生する事を推定する。そして、角膜反射検出部４４は、推定されたメガネ反射の領域以外に存在する、高輝度画素の集合を、角膜反射として検出する。
【００４７】
次に、瞳孔検出部４５は、第一の画像から角膜反射が検出された場合には、第一の画像から、瞳孔を検出する。また、瞳孔検出部４５は、第一の画像から角膜反射が検出されなかった場合で、かつ第二の画像から角膜反射が検出された場合には、第二の画像から、瞳孔を検出する。なお、瞳孔検出は、従来の瞳孔検出技術が適用される。例えば、瞳孔検出部４５は、瞳孔の形状に対応するテンプレートとのマッチングを行う。
【００４８】
次に、決定部４６は、第一の画像から角膜反射が検出できなかった場合、検出部７が第二の画像を撮影する前に、光源６から照射される照射面積を決定するとともに、決定した情報を制御部３へ入力する。制御部３は、決定部４６から入力された制御情報に基づき、照射面積を制御する。例えば、制御情報は、光源６が複数の発光素子を有する場合は点灯させる発光素子の個数や位置、視線検出システム１００が絞りを有する場合には絞りの孔の大きさである。
【００４９】
ここで、決定部４６による照射面積の決定方法について、説明する。まず、決定部４６は、被写体または被写体の一部（目）と検出部７との距離を取得する。距離は、距離センサ―により測定されてもよいし、以下の方法で第一の画像から推定されるとしてもよい。
【００５０】
例えば、決定部４６は、第一の画像における、右目の瞳孔と左目の瞳孔との距離（ピクセル）を取得する。例えば、ある検出部７の仕様においては、被写体と検出部７（カメラ）との距離が６０ｃｍのとき、両瞳孔の間の距離は３０ピクセルであることが分かっているとする。このとき、この対応関係と第一の画像から取得した両瞳孔間の距離とから、被写体と検出部７との距離が推定される。なお、被写体と検出部７との距離が近いほど、両瞳孔間の距離は大きくなるので、両者の関係は反比例となる。また、第一の画像から被写体と検出部７との距離を取得する場合には、瞳孔間の距離ではなく、両目の目頭間の距離を利用するなどしてもよい。
【００５１】
そして、決定部４６は、被写体と検出部７との距離から、角膜反射が検出できなかった第一の画像において、本来検出されるべき角膜反射の大きさを推定する。このとき、決定部４６は、被写体と検出部７との距離と、角膜反射の大きさとの対応関係を利用する。この対応関係は、事前に学習され、当該対応関係が記述された対応テーブルが記憶部５に格納される。
【００５２】
図４は、対応テーブルの構成例である。対応テーブルは、被写体と検出部７との距離と、当該距離で撮影された画像における角膜反射の大きさとを対応付けて記憶する。学習時には、検出部７から所定の距離に存在する被験者に対して光源６の光を照射し、検出部７が撮影した画像を用いる。この時、被験者は、検出部７との距離を変更しながら、検出部７は複数の画像を撮影する。そして、各画像が撮影されたときの距離と、各画像から検出された角膜反射の大きさとが、対応関係として、学習される。なお、学習時には、光源６から被写体に照射される光の照射面積は、第一の状態と一致していることが好ましい。
【００５３】
決定部４６は、対応テーブルを参照する事で、例えば、被写体と検出部７との距離が「５０（ｃｍ）」である場合には、本来検出されるべき角膜反射の大きさを「５（ピクセル）」と推定する。
【００５４】
次に、決定部４６は、メガネ反射が発生している第一の画像における、メガネ反射を、本来検出されるべき角膜反射相当の大きさまで縮小させるために、照射面積をどの程度小さくすればよいかを決定する。つまり、決定部４６は、第一の画像におけるメガネ反射の大きさと推定される角膜反射との比率に応じて、第一の画像撮影時の照射面積（第一の状態）を何分の一まで小さくすればよいかを決定する。ここで、決定された照射面積が、第二の状態となる。
【００５５】
例えば、第一の画像におけるメガネ反射の大きさが４０ピクセルであって、推定された角膜反射の大きさが５ピクセルである場合、決定部４６は、第二の画像撮影時の照射面積を、第一の画像撮影時の照射面積の８分の１に決定する。この場合、例えば、決定部４６は、光源６が複数の発光素子からなる場合には、点灯させる発光素子の個数を８分の１個に決定する。なお、記憶部５には、予め、光源６に含まれる発光素子の個数が記憶されているものとする。また、第一の画像におけるメガネ反射の大きさと推定される角膜反射との比率から決定される、点灯させるべき発光素子の個数が整数にならない場合には、決定部４６は、例えば、小数点以下を切り捨てる等して、点灯させるべき発光素子の個数を整数にすればよい。
【００５６】
次に、視線検出部４７は、第一の画像または第二の画像から検出された、角膜反射の中心位置および瞳孔の中心位置を用いて、被写体の視線位置を検出する。なお、角膜反射の中心位置および瞳孔の中心位置から、視線位置を決定する手法は、従来の角膜反射法が適用される。
【００５７】
次に、本発明に係る対応テーブル作成のための学習処理の流れについて、説明する。なお、学習処理は、視線検出システム１００が実行してもよいし、他のコンピュータにより実行されてもよい。
【００５８】
前者の場合には、視線検出システム１００がさらに学習部（図示せず）を備え、学習部が、他の処理部と協働しながら、学習処理を実行する。そして、学習部は、学習結果を対応テーブル（記憶部５）に格納する。なお、学習部は、学習処理を実行する処理部であって、視線検出システム１００における取得部２、制御部３、および特定部４に相当する機能を有する。
【００５９】
後者の場合には、他のコンピュータが学習処理を実行し、学習結果に対応する対応関係を視線検出システム１００に出力する。視線検出システム１００は入力された対応関係を、対応テーブル（記憶部５）に格納する。
【００６０】
図５は、学習処理のフローチャートである。ここでは、視線検出システム１００が学習処理を実行する例を説明する。まず、制御部３は、光源６を制御して、光源６を点灯させる（Ｏｐ．１）。望ましくは、制御部３は、光源６から照射される照射面積が十分大きい、第一の状態になるように点灯させる。例えば、学習部は、光源６が複数の発光素子を含む場合、全ての発光素子を点灯させる。
【００６１】
次に、学習部は、検出部７から、画像を取得する（Ｏｐ．２）。そして、学習部は、画像が撮影された時の、被験者と検出部７との距離を取得する（Ｏｐ．３）。なお、距離の取得方法は、角膜反射検出部４４による距離の取得方法と同様であってもよいし、被験者または管理者により入力されるとしてもよい。
【００６２】
そして、学習部は、被験者と検出部７との距離が所定範囲内かを判定する（Ｏｐ．４）なお、所定範囲は、例えば、４０ｃｍ乃至７０ｃｍであって、視線検出処理に適した距離が設定される。被験者と検出部７との距離が所定範囲内である場合（Ｏｐ．４ＹＥＳ）、学習部は、画像から顔領域および目領域を検出する（Ｏｐ．５）。さらに、学習部は、目領域にメガネ反射がないか判定する（Ｏｐ．６）。メガネ反射がない場合には（Ｏｐ．６ＹＥＳ）、学習部は、角膜反射を検出する（Ｏｐ．７）。さらに、学習部は、Ｏｐ．３で取得した距離と、Ｏｐ．７で検出した角膜反射の大きさとを、対応付けて記憶部５に記憶する（Ｏｐ．８）。
【００６３】
一方、被験者と検出部７との距離が所定範囲内でない場合（Ｏｐ．４ＮＯ）、メガネ反射がある場合（Ｏｐ．６ＮＯ）、または、Ｏｐ．８の処理が終了した後、学習部は、学習処理を終了するか判定する（Ｏｐ．９）。例えば、各距離における角膜反射の大きさが学習済みである場合や、学習処理を終了する旨の入力があった場合には、学習部は、学習処理を終了する（Ｏｐ．９ＹＥＳ）。一方、学習処理を終了しない場合には（Ｏｐ．９ＮＯ）、学習部は、新たな画像を取得する（Ｏｐ．２）。以上の学習処理により、図４に示すような対応関係（対応テーブル）が生成される。
【００６４】
次に、本実施例に係る視線検出処理の流れを説明する。図６および図７は、視線検出処理のフローチャートである。
【００６５】
まず、制御部３は、光源６から照射される照射面積を第一の状態に制御する（Ｏｐ．１１）。例えば、光源６が複数の発光素子が含む場合には、制御部３は、すべての発光素子が点灯するように制御する。また、視線検出システム１００が絞り（図示せず）を有する場合には、制御部３は、絞りの孔の大きさが最大になるように制御する。
【００６６】
そして、検出部７が光源６から照射される照射面積が第一の状態になった後に撮影した第一の画像を、取得部２は取得する（Ｏｐ．１２）。なお、Ｏｐ．１２に先駆けて、制御部３が光源６を制御した後に、さらに、制御部３は、検出部７に対して、第一の画像の撮影を命令するとしてもよい。
【００６７】
次に、認識部４１は、第一の画像から顔領域を検出するとともに、顔領域から、さらに、目領域を検出する（Ｏｐ．１３）。例えば、認識部４１は、第一の画像を対象に顔認識処理を実行するとともに、顔が認識された場合に、顔領域を対象に目の認識処理を実行する。
【００６８】
次に、角膜反射検出部４４は、第一の画像における目領域から角膜反射を検出したかを判定する（Ｏｐ．１４）。例えば、角膜反射検出部４４は、目領域から、輝度値が２４０以上である画素が３乃至１０ピクセル程度集合している領域が、検出されたか判定する。
【００６９】
角膜反射が検出された場合（Ｏｐ．１４ＹＥＳ）、さらに、瞳孔検出部４５が、第一の画像における目領域から瞳孔を検出する（Ｏｐ．２１）。そして、視線検出部４７が、角膜反射の中心位置と、瞳孔の中心位置とに基づき、第一の画像が撮影された時点の被写体の視線方向や位置を検出する（Ｏｐ．２２）。
【００７０】
そして、視線検出部４７は、一連の視線検出処理を終了するか判定する（Ｏｐ．２３）。視線検出処理を終了すると判定された場合（Ｏｐ．２３ＹＥＳ）、一連の処理を終了する。一方、視線検出処理を継続すると判定された場合（Ｏｐ．２３ＮＯ）、視線検出装置１は、Ｏｐ．１１から処理を繰り返す。
【００７１】
一方、角膜反射が検出されなかった場合（Ｏｐ．１４ＮＯ）、メガネ反射検出部４２は、目領域に、メガネ反射を検出したか判定する（Ｏｐ．１５）。例えば、メガネ反射検出部４２は、輝度値が２４０以上である画素が３０ピクセル以上集合している領域が、検出されたか判定する。
【００７２】
メガネ反射が検出されなかった場合（Ｏｐ．１５ＮＯ）、視線検出部４７はＯｐ．２３の処理を実行する。つまり、メガネ反射がない状態で、角膜反射が検出できなかったため、視線検出システム１００は、視線検出処理を終了するか、再度第一の画像の撮影を試みる。
【００７３】
一方、メガネ反射を検出した場合（Ｏｐ．１５ＹＥＳ）、メガネ反射検出部４２は、メガネ反射領域の位置や範囲を示す情報を記憶する（Ｏｐ．１６）。次に、抽出部４３は、第一の画像から前述のように特徴点を抽出し、特徴点の位置や特徴点に係る特徴情報を記憶部５に記憶する（Ｏｐ．１７）。なお、特徴点の抽出は、目領域を対象に実行されてもよいし、顔領域を対象に実行されてもよい。また、特徴点に係る特徴情報は、色情報や輝度情報、その他特徴点周辺の画像情報である。特徴点に係る特徴情報は、第一の画像と第二の画像との間の特徴点の対応付けに利用される。
【００７４】
次に、決定部４６は、被写体と検出部７との距離を取得する（Ｏｐ．１８）。そして、決定部４６は、光源６から照射される照射面積を決定する（Ｏｐ．１９）。例えば、記憶部５に記憶された対応テーブルを参照し、被写体と検出部７との距離に基づき、第一の画像において本来発生しているであろう角膜反射の大きさを推定する。さらに、そして、第一の画像から検出されたメガネ反射の大きさと推定した角膜反射の大きさとの比に基づき、光源６から照射される照射面積を第一の状態から、どの程度小さくすればよいかを決定する。なお、ここで決定された照射面積が第二の状態となる。
【００７５】
そして、制御部３は、決定部４６からの入力に応じて、光源６から照射される照射面積を第二の状態に制御する（Ｏｐ．２０）。次に、光源６から照射される照射面積が第二の状態になった後に検出部７が撮影した第二の画像を、取得部２は検出部７から取得する（Ｏｐ．３１）。なお、Ｏｐ．３１に先駆けて、制御部３が光源６を制御した後に、さらに、制御部３が検出部７に第二の画像の撮影を命令してもよい。
【００７６】
次に、認識部４１は、第二の画像から顔領域を検出するとともに、目領域を検出する（Ｏｐ．３２）。抽出部４３は、第二の画像から特徴点を抽出する（Ｏｐ．３３）。そして、角膜反射検出部４４は、移動ベクトルを算出する（Ｏｐ．３４）。例えば、角膜反射検出部４４は、第一の画像から抽出された特徴点の特徴情報と、第二の画像から特徴点の特徴情報との類似度に基づき、特徴点間の対応付けを行う。そして、角膜反射検出部４４は、対応付けられた特徴点の位置変化を用いて、先に示した式１により移動ベクトルＶを求める。
【００７７】
次に、角膜反射検出部４４は、メガネ反射領域の位置を推定する（Ｏｐ．３５）。例えば、角膜反射検出部４４は、先に示した式２のように、第一の画像から検出されたメガネ反射の位置（中心位置）に、移動ベクトルＶを反映させることで、第二の画像におけるメガネ反射の位置（中心位置）を推定する。
【００７８】
そして、角膜反射検出部４４は、角膜反射を検出したかを判定する（Ｏｐ．３６）。例えば、角膜反射検出部４４は、メガネ反射領域の推定位置の周辺以外に、高輝度画素の集合が検出されたかを判定する。角膜反射が検出された場合（Ｏｐ．３６Ｙｅｓ）、瞳孔検出部４５が、第二の画像から瞳孔を検出する（Ｏｐ．３７）。さらに、視線検出部４７は、第二の画像から検出された、角膜反射の中心位置と、瞳孔の中心位置とに基づき、被写体の視線の方向や位置を検出する（Ｏｐ．３８）。
【００７９】
そして、視線検出部４７は、Ｏｐ．２３以降の処理を実行する。また、角膜反射が検出されなかった場合（Ｏｐ．３６ＮＯ）についても、視線検出部４７は、Ｏｐ．２３以降の処理を実行する。
【００８０】
以上の処理によって、本実施例に係る視線検出システム１００は、メガネ反射が発生している場合に、光源６から照射される照射面積を小さくすることで、メガネ反射の面積を縮小させることができる。そして、メガネ反射の面積が小さくなった状態で撮影された第二の画像に対して、視線検出処理を実行する。よって、角膜反射とメガネ反射とが分離する可能性が高くなるため、第二の画像から角膜反射を検出できる可能性が高くなる。
【００８１】
さらに、本実施例に係る視線検出システム１００は、第一の画像において検出されたメガネ反射の位置と被写体の移動を示す移動ベクトルとから、第二の画像におけるメガネ反射の位置を推定する。したがって、視線検出システム１００は、第二の画像において、目的の角膜反射と小さくなったメガネ反射とを区別することができる。よって、視線検出システム１００は、誤ってメガネ反射を角膜反射と認識することによる視線の誤検出を抑止することができる。
【００８２】
図８Ａおよび図８Ｂは、本実施例に係る視線検出の効果を説明するための図である。図８Ａは、第一の画像における目領域部分の拡大画像２１である。図８Ｂは、第二の画像における目領域部分の拡大画像２２である。
【００８３】
図８Ａおよび図８Ｂでは、被写体がメガネ２３を着用している。図８Ａは光源６から照射される照射面積が第一の状態である場合を示しており、拡大画像２１には、メガネ反射２４が撮影されている。また、メガネ反射２４により角膜反射が検出できない状態になっている。一方、図８Ｂは光源６から照射される照射面積が第二の状態である場合を示しており、拡大画像２２には、小さくなったメガネ反射２５が撮影されている。そして、角膜反射２６が、メガネ反射２５と分離される。さらには、瞳孔２７もメガネ反射２５に隠れることなく、全体が認識可能となる。
【００８４】
また、小さくなったメガネ反射２５と角膜反射２６は、画像上、区別することは難しい。しかし、本実施例によれば、メガネ反射２５の位置を、第一の画像におけるメガネ反射２４と移動ベクトルＶから推定可能であるため、メガネ反射の位置を推定した上で、角膜反射を正確に検出することができる。
【００８５】
次に、視線検出装置を含む視線検出システムのハードウェア構成例について説明する。図９は、視線検出装置を含む視線検出システムのハードウェア構成である。視線検出システム１００は、実施例に係る視線検出処理を実行する。
【００８６】
視線検出システム１００に含まれる視線検出装置１は、ハードウェア構成として、プロセッサー１０１、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１０２、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１０３、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）１０４、通信装置１０５、入力装置１０８、表示装置１０９、媒体読取装置１１０を有する。さらに、視線検出システム１００は、視線検出装置１が備える各ハードウェア構成に加え、光源１０６、検出装置１０７を有する。そして、各部はバス１１１を介して相互に接続されている。そして、プロセッサー１０１による制御下で相互にデータの送受を行うことができる。
【００８７】
視線検出処理に係るプログラムは、視線検出システム１００が読み取り可能な記録媒体に記録される。視線検出システム１００が読み取り可能な記録媒体には、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ＨＤＤ、フレキシブルディスク（ＦＤ）、磁気テープ（ＭＴ）などがある。
【００８８】
光ディスクには、Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ（ＤＶＤ）、ＤＶＤ−ＲＡＭ、Ｃｏｍｐａｃｔ  Ｄｉｓｃ  −  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＣＤ−ＲＯＭ）、Ｃｏｍｐａｃｔ  Ｄｉｓｃ  −  Ｒｅｃｏｒｄａｂｌｅ／ＲｅＷｒｉｔａｂｌｅ（ＣＤ−Ｒ／ＲＷ）などがある。光磁気記録媒体には、Ｍａｇｎｅｔｏ  −  Ｏｐｔｉｃａｌ  ｄｉｓｋ（ＭＯ）などがある。各実施例に係る処理が記述されたプログラムを流通させる場合には、例えば、当該プログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売されることが考えられる。
【００８９】
そして本実施例に係るプログラムを実行する視線検出システム１００の媒体読取装置１１０が、当該プログラムを記録した記録媒体から、該プログラムを読み出す。プロセッサー１０１は、読み出されたプログラムをＨＤＤ１０４若しくはＲＯＭ１０２、ＲＡＭ１０３に格納する。
【００９０】
プロセッサー１０１は視線検出装置１全体の動作制御を司る。プロセッサーは、例えば、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）などの電子回路を含む。
【００９１】
そして、プロセッサー１０１が、本実施例に関わる処理が記述されたプログラムをＨＤＤ１０４から読み出して実行することで、プロセッサー１０１は、視線検出装置１における制御部３、特定部４として機能する。通信装置１０５は、プロセッサー１０１の制御の下、取得部２として機能する。ＨＤＤ１０４は、各種情報を記憶し、プロセッサー１０１の制御下で記憶部５として機能する。各種情報は、プログラム同様、プロセッサー１０１とアクセス可能なＲＯＭ１０２またはＲＡＭ１０３に格納されても良い。さらに、処理の過程で一時的に生成および保持される各種情報は、例えば、ＲＡＭ１０３に格納される。
【００９２】
入力装置１０８は、各種入力を受け付ける。入力装置１０８は、例えばキーボードやマウスである。表示装置１０９は、各種情報を表示する。表示装置１０９は、例えばディスプレイである。
【００９３】
このように、図１および図３に示した各機能部は、プロセッサー１０１およびメモリ（ＨＤＤ１０２、ＲＯＭ１０２、ＲＡＭ１０３）を含むハードウェアによって実現される。そして、プロセッサー１０１が、メモリに格納されたプログラムを読み出して、実行する事で、図６および図７に示す視線検出処理が実行される。
【００９４】
また、図６および図７に示した視線検出処理は、クラウド上で実行される場合もある。この場合、光源６および検出部７が、被写体が存在する空間に配置される。そして、検出部７から検出結果を受信した視線検出装置１（１つ以上のサーバ）が、図６および図７に示した視線検出処理を実行する。
［変型例］
【００９５】
ここで、本実施例の変型例について説明する。本実施例では、メガネ反射を検出した場合に、決定部４６が光源６から照射される照射面積を決定し、制御部３が、光源の照射面積が第二の状態になるように制御する。しかし、変型例のように、検出部７の検出間隔ごとに、第一の状態と第二の状態を切り替えるとしてもよい。例えば、変型例は、カメラのフレーム間隔ごとに、光源６から照射される照射面積を大きくしたり（第一の状態）、小さくしたり（第二の状態）にする。
【００９６】
（第一の変型例）
例えば、第一の状態で撮影された第一の画像においてメガネ反射が検出されていた場合には、先の実施例と同様に、制御部３が光源６から照射される照射面積を第二の状態に制御する。つまり、第一の状態で撮影された第一の画像においてメガネ反射が検出されていた場合には、先の実施例と同様に、Ｎ番目のフレームとＮ＋１番目のフレームとの間で、光源６からの照射面積を第一の状態と第二の状態との間で切り替える。
【００９７】
また、第一の変型例では、さらに、第一の状態で撮影された第一の画像においてメガネ反射が検出されていない場合には、制御部３が光源６から照射される照射面積を第三の状態に制御する。なお、第三の状態は、規定の状態であって、例えば、照射面積を第一の状態の半分にした状態である。そして、検出部７は、第三の状態で照射された光の反射光を撮影する（第三の画像）。つまり、Ｎ番目のフレームとＮ＋１番目のフレームとの間で、光源６からの照射面積を第一の状態と第三の状態との間で切り替える。
【００９８】
以上のように、変型例では、メガネ反射の有無によらず、Ｎ＋１フレームにおける光源から照射される照射面積を第一の状態よりも小さくする。ただし、メガネ反射がある場合には、照射面積は第二の状態となり、メガネ反射がない場合には、照射面積は第三の状態となる。
【００９９】
（第二の変型例）
さらに、メガネ反射の有無にかかわらず、光源６から照射される照射面積を、第一の状態と第二の状態との間で、フレームごとに切り替えるとしてもよい。ただし、第一の変型例とは異なり、第二の変型例の“第二の状態”とは、規定値（第一の変型例における第三の状態）である。例えば、第一の状態における照射面積は、最大の照射面積であって、第二の状態における照射面積は、規定の値（例えば、第一の状態の半分）である。
【０１００】
本変型例に係る視線検出システム１００は、フレームごとに、光源６から照射される照射面積を、第一の状態（最大の照射面積）と第二の状態（第一の状態の半分の照射面積）とを切り替える。先の実施例は、第二の画像におけるメガネ反射を、第一の画像に本来検出されるべき角膜反射の大きさまで縮小するとしていたが、本第二の変型例は、第一の画像におけるメガネ反射よりも第二の画像におけるメガネ反射を小さくすることを目的とする。
【０１０１】
（第三の変型例）
第二の変型例では、被写体と検出部７との距離に寄らず、第二の状態における照射面積を規定値に設定するとしたが、決定部４６は、被写体と検出部７との距離に応じて、第二の状態における照射面積を決定するとしてもよい。つまり、本第三の変型例では、実施例と同様に距離を用いて、照射面積を決定するが、実施例と異なり、第一の画像におけるメガネ反射の大きさは利用しない。
【０１０２】
具体的には、記憶部５が、被写体と検出部７との距離と、設定されるべき照射面積との対応関係を予め記憶する。そして、決定部４６は、当該対応関係を参照し、被写体と検出部７との距離に応じて、第二の状態における照射面積を決定する。つまり、本変型例に係る視線検出システム１００は、フレームごとに、光源６から照射される照射面積を、第一の状態と、予め設定された対応関係から決定された第二の状態とを切り替える。
【０１０３】
先の実施例は、第一の画像におけるメガネ反射の大きさを用いて、第二の画像におけるメガネ反射を、第一の画像に本来検出されるべき角膜反射の大きさまで縮小するための照射面積を決定していた。しかし、本第三の変型例は、第一の画像におけるメガネ反射よりも第二の画像におけるメガネ反射を小さくすることを目的とする。
【符号の説明】
【０１０４】
１００  視線検出システム
１      視線検出装置
２      取得部
３      制御部
４      特定部
５      記憶部
６、１０６  光源
７      検出部
１０１  プロセッサー
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  ＨＤＤ
１０５  通信装置
１０７  検出装置
１０８  入力装置
１０９  表示装置
１１０  媒体読取装置
１１１  バス
【図１】
2017079883.tif 000003
【図２】
2017079883.tif 000004
【図３】
2017079883.tif 000005
【図４】
2017079883.tif 000006
【図５】
2017079883.tif 000007
【図６】
2017079883.tif 000008
【図７】
2017079883.tif 000009
【図８】
2017079883.tif 000010
【図９】
2017079883.tif 000011