(57)【要約】【課題】簡単な構成で、かつ眼球の角膜で生じる屈折により生じる影響を考慮して視線方向を推定する。【解決手段】撮影画像上の眼の特徴点を用いて眼球の中心位置及び見かけの瞳孔の中心位置を推定して見かけの視線ベクトルを導出し（Ｓ１００〜Ｓ１０８）、見かけの視線ベクトルと、眼球の中心位置からカメラへ向かうベクトルとの成す角度を導出し（Ｓ１１０）、対応する視線誤差ρをマップから抽出して角度補正量を導出し（Ｓ１１２）、角度補正量を用いてカメラ座標系における実際の視線方向（視線ベクトル）を導出する（Ｓ１１４、Ｓ１１６）。これによって、眼球の角膜における光の屈折を考慮せずに視線方向を導出する場合であっても、実際の視線方向を高精度で導出できる。【選択図】図９
2019168954.tif 000002
【特許請求の範囲】
【請求項１】
人物の眼球を含む頭部を撮影する撮影部と、
前記撮影部で撮影された撮影画像に基づいて、前記眼球の中心位置と瞳孔の中心位置に対応する前記眼球の表面における見かけの瞳孔の中心位置とを結ぶ見かけの視線方向を導出する見かけの視線方向導出部と、
予め定められた実際の視線方向と前記見かけの視線方向との対応関係と、前記視線方向導出部で導出された前記見かけの視線方向とに基づいて、前記人物の実際の視線方向を推定する視線方向推定部と、
を備えた視線方向推定装置。
【請求項２】
前記眼球の中心位置は、前記撮影画像における眼球周囲の顔の特徴点の位置に基づいて導出される
請求項１に記載の視線方向推定装置。
【請求項３】
前記眼球の中心位置は、光照射部から照射されて前記眼球の表面で反射された反射光の位置に基づいて導出される
請求項１に記載の視線方向推定装置。
【請求項４】
前記眼球の中心位置は、前記反射光の位置に基づいて、前記眼球の角膜の曲率の中心位置を導出する
請求項３に記載の視線方向推定装置。
【請求項５】
前記見かけの視線方向導出部は、
前記眼球の中心位置として、予め導出されて記憶部に記憶された眼球の中心位置を用いて前記見かけの視線方向を導出する
請求項１から請求項４の何れか１項に記載の視線方向推定装置。
【請求項６】
前記見かけの視線方向推定部は、
前記撮影画像に基づいて、前記眼球の中心位置を導出する眼球中心位置導出部と、
前記撮影画像に基づいて、前記眼球の瞳孔の中心位置に対応する眼球表面における見かけの瞳孔の中心位置を導出する見かけの瞳孔中心位置導出部と
を含む
請求項１から請求項５の何れか１項に記載の視線方向推定装置。
【請求項７】
コンピュータが、
人物の眼球を含む頭部を撮影された撮影画像に基づいて、前記眼球の中心位置と瞳孔の中心位置に対応する前記眼球の表面における見かけの瞳孔の中心位置とを結ぶ見かけの視線方向を導出し、
予め定められた実際の人物の視線方向と前記見かけの視線方向との対応関係と、導出された前記見かけの視線方向とに基づいて、前記人物の実際の視線方向を推定する
視線方向推定方法。
【請求項８】
コンピュータを、請求項１から請求項６の何れか１項に記載された視線方向推定装置として機能させるための視線方向推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、視線方向推定装置、視線方向推定方法、及び視線方向推定プログラムに関する。
【背景技術】
【０００２】
人物の頭部を撮影した撮影画像を用いて人物の視線方向を推定する技術が知られている。例えば、人物の頭部を撮影した撮影画像を用いて虹彩の位置及び眼球の位置を推定し、推定された虹彩の位置及び眼球の位置を用いて視線方向を推定する技術が提案されている（例えば、特許文献１参照）。この技術では、ユーザにカメラを注視させつつ、顔の姿勢を変化させて撮影した複数の撮影画像から眼球中心を推定し、推定された眼球中心と、現在の虹彩中心を用いて眼球中心から虹彩中心に向かう方向を視線方向として導出する。
【０００３】
また、人物の視線方向を推定する他の技術として、角膜表面における反射像の位置から得られる角膜曲率中心と瞳孔中心から視線を検出する場合に、個々のユーザに生じる視線の誤差を補正する技術も提案されている（例えば、特許文献２参照）。この技術では、角膜曲率中心から瞳孔中心に向かう視線を検出する視線検出装置、ユーザの眼を撮影する撮影装置、及び表示装置を備え、表示装置に表示された特徴的な領域の注視点に向う視線が実際の視線として推定し、個々のユーザに対する補正値を求めている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１０２９０２号公報
【特許文献２】特開２０１１−２１７７６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では、ユーザにカメラを注視させることが必要であり、運用上煩雑な処理が要求される。また、特許文献２の技術では、視線を検出する視線検出装置及びユーザの眼を撮影する撮影装置が必要であり、装置構成が複雑である。さらに、ユーザの眼を撮影した撮影画像を用いて視線方向を推定する場合、撮影画像から推定されるユーザの眼球前眼部の視線に関係する特徴部の位置そのものを補正する必要がある。すなわち、ユーザの視線方向は、眼球中心から虹彩中心及び瞳孔中心等の眼球前眼部の中心に向かう方向であるが、ユーザの視線方向から外れた方向に設けられた撮影装置で撮影した撮影画像は、眼球の角膜で屈折された光線を撮影している。従って、眼球の角膜で生じる屈折により生じる影響を考慮する必要もある。従って、人物の視線方向を高精度に推定するには改善の余地がある。
【０００６】
本発明は、上記事実を考慮してなされたもので、簡単な構成で、かつ眼球の角膜で生じる屈折により生じる影響を考慮して視線方向を推定することができる視線方向推定装置、視線方向推定方法、及び視線方向推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の視線方向推定装置は、
人物の眼球を含む頭部を撮影する撮影部と、
前記撮影部で撮影された撮影画像を用いて、前記眼球の中心位置を演算する眼球中心位置演算部と、
前記撮影部で撮影された撮影画像を用いて、前記眼球の瞳孔の中心位置に対応する眼球表面における見かけの瞳孔の中心位置を演算する瞳孔中心位置演算部と、
前記眼球中心の位置と、前記見かけの瞳孔中心の位置とを結ぶ方向の見かけの視線方向を導出する視線方向導出部と、
前記眼球中心の位置と前記瞳孔中心の位置とを結ぶ前記人物の視線方向と、前記見かけの視線方向と、が予め定められた対応関係を用いて、前記視線方向導出部で導出された前記見かけの視線方向に基づいて、前記人物の視線方向を推定する視線方向推定部と、
を備えている。
【０００８】
本発明の視線方向推定装置によれば、撮影部で撮影された撮影画像を用いて、眼球中心位置演算部が眼球の中心位置を演算し、瞳孔中心位置演算部が眼球の瞳孔の中心位置に対応する眼球表面における見かけの瞳孔の中心位置を演算する。視線方向導出部は、眼球中心の位置と、見かけの瞳孔中心の位置とを結ぶ方向の見かけの視線方向を導出する。視線方向推定部は、予め定められた対応関係を用いて、見かけの視線方向に対応する人物の視線方向を推定する。予め定められた対応関係は、眼球中心の位置と瞳孔中心の位置とを結ぶ人物の視線方向と、見かけの視線方向との対応を示す。このように、見かけの視線方向に対応する実際の視線方向が推定されるので、簡単な構成で、かつ眼球の角膜で生じる屈折により生じる影響を抑制して視線方向を推定することができる。
【０００９】
前記眼球中心位置演算部は、前記撮影画像における眼球周囲の顔の特徴点の位置に基づいて、前記眼球の中心位置を演算することができる。眼を含む顔を撮影した撮影画像には、目を特徴的に表す目尻及び目頭等の特徴部位が撮影される。目尻及び目頭の間隔は、眼球の大きさに対応すると想定される。そこで、目尻及び目頭等の眼球周囲の顔の特徴点を、標準的な眼球を示す予め定めた眼球モデルにフィッティングさせることで、眼球モデルの中心位置を眼球の中心位置として用いることができる。
【００１０】
光を照射する照射部を備え、前記眼球中心位置演算部は、前記眼球の表面で反射された前記照射部からの反射光の位置に基づいて、前記眼球の中心位置を演算することができる。すなわち、前記眼球中心位置演算部は、所謂角膜反射法によって、眼球の中心位置を演算することができる。角膜反射法は、角膜での反射光を検出し、検出した角膜の位置と、撮影画像に含まれる瞳孔の中心位置との位置関係から眼球の中心位置を演算する。
【００１１】
前記眼球中心位置演算部は、前記顔の特徴点の位置に基づいて演算された前記眼球の中心位置を記憶し、記憶された前記眼球の中心位置を用いることができる。角膜反射法による眼球の中心位置の演算は、常時実行することが困難な場合がある。そこで、演算された眼球の中心位置を記憶し、記憶された眼球の中心位置を用いることで、角膜反射法による演算を常時実行することなく、眼球の中心位置を用いることができるので、装置の演算負荷を抑制することができる。
【００１２】
前記視線方向推定部は、前記眼球中心の位置と前記瞳孔中心の位置とを結ぶ前記人物の視線方向と、前記見かけの視線方向とを対応させたマップを用いて前記人物の視線方向を推定することができる。このように、人物の視線方向と、見かけの視線方向とを対応させたマップを用いることで、短時間で人物の視線方向を推定することができる。
【００１３】
本発明の視線方向推定方法は、
コンピュータが、
人物の眼球を含む頭部が撮影された撮影画像を用いて、前記眼球の中心位置を演算し、
前記撮影画像を用いて、前記眼球の瞳孔の中心位置に対応する眼球表面における見かけの瞳孔の中心位置を演算し、
前記眼球中心の位置と、前記見かけの瞳孔中心の位置とを結ぶ方向の見かけの視線方向を導出し、
前記眼球中心の位置と前記瞳孔中心の位置とを結ぶ前記人物の視線方向と、前記見かけの視線方向と、が予め定められた対応関係を用いて、前記見かけの視線方向に基づいて、前記人物の視線方向を推定する。
【００１４】
本発明の視線方向推定プログラムは、コンピュータを、前記視線方向推定装置として機能させる。
【００１５】
このような、視線方向推定方法、及び視線方向推定プログラムによっても、眼球の角膜で生じる屈折により生じる影響を抑制して視線方向を推定することができる。
【発明の効果】
【００１６】
以上説明したように本発明によれば、簡単な構成で、かつ眼球の角膜で生じる屈折により生じる影響を考慮して視線方向を推定することができる、という効果が得られる。
【図面の簡単な説明】
【００１７】
【図１】第１実施形態に係る視線方向推定装置をコンピュータにより実現する構成の一例を示すブロック図である。
【図２】第１実施形態に係る視線方向推定装置の電子機器の配置の一例を示すイメージ図である。
【図３】第１実施形態に係る視線方向推定装置における座標系の一例を示すイメージ図でる。
【図４】第１実施形態に係る視線方向推定装置の装置本体を機能的に分類した構成の一例を示すブロック図である。
【図５】視線方向の第１導出方法を説明するための模式図の一例を示すイメージ図であり、（Ａ）はモデル化した眼球における視線、（Ｂ）は眼の撮影画像を示している。
【図６】視線方向の第２導出方法を説明するための模式図の一例を示すイメージ図であり、（Ａ）はモデル化した眼球における視線、（Ｂ）は眼の撮影画像を示している。
【図７】モデル化した眼球の視線に関する詳細な模式図の一例を示すイメージ図である。
【図８】視線誤差と、カメラに向かう方向に対する角度との対応関係を示すマップの一例を示すイメージ図である。
【図９】第１実施形態に係るコンピュータによる視線方向推定装置の処理の流れの一例を示すフローチャートである。
【図１０】第２実施形態に係る視線方向推定装置の装置本体を機能的に分類した構成の一例を示すブロック図である。
【図１１】第２実施形態に係るコンピュータによる視線方向推定装置の処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して開示の技術に係る実施形態を説明する。
【００１９】
（第１実施形態）
本実施形態は、人物の頭部を撮影した撮影画像を用いて人物の視線方向を推定する場合の一例を説明する。また、本実施形態では、人物の視線方向の一例として、移動体としての自動車等の車両の乗員の視線方向を、視線方向推定装置により推定する。
【００２０】
図１に、開示の技術の視線方向推定装置として動作する視線方向推定装置１０を、コンピュータにより実現する構成の一例を示す。
【００２１】
図１に示すように、視線方向推定装置１０として動作するコンピュータは、ＣＰＵ（Central Processing Unit）１２Ａ、ＲＡＭ（Random Access Memory）１２Ｂ、およびＲＯＭ（Read Only Memory）１２Ｃを備えた装置本体１２を含んで構成されている。ＲＯＭ１２Ｃは、視線誤差ρを抑制して視線方向を推定する各種機能を実現するための視線方向推定プログラム１２Ｐを含んでいる。装置本体１２は、入出力インタフェース（以下、Ｉ／Ｏという。）１２Ｄを備えており、ＣＰＵ１２Ａ、ＲＡＭ１２Ｂ、ＲＯＭ１２Ｃ、及びＩ／Ｏ１２Ｄは各々コマンド及びデータを授受可能なようにバス１２Ｅを介して接続されている。また、Ｉ／Ｏ１２Ｄには、キーボード及びマウス等の入力部１２Ｆ、ディスプレイ等の表示部１２Ｇ、及び外部装置と通信するための通信部１２Ｈが接続されている。さらに、Ｉ／Ｏ１２Ｄには、乗員の頭部を照明する近赤外ＬＥＤ（Light Emitting Diode）等の照明部１４、乗員の頭部を撮影するカメラ１６、及び乗員の頭部までの距離を計測する距離センサ１８が接続されている。なお、図示は省略したが、各種データを格納可能な不揮発性メモリをＩ／Ｏ１２Ｄに接続することができる。
【００２２】
装置本体１２は、視線方向推定プログラム１２ＰがＲＯＭ１２Ｃから読み出されてＲＡＭ１２Ｂに展開され、ＲＡＭ１２Ｂに展開された視線方向推定プログラム１２ＰがＣＰＵ１２Ａによって実行されることで、視線方向推定装置１０として動作する。なお、視線方向推定プログラム１２Ｐは、視線誤差ρを抑制して視線方向を推定する各種機能を実現するためのプロセスを含む（詳細は後述）。
【００２３】
なお、本実施形態では、眼を特徴的に表す特徴部位に関連した情報を用いて視線方向を導出する第１導出方法（詳細は後述）により実際の視線方向の導出が可能であるため、照明部１４は必須の構成ではなく、省略することが可能である。
【００２４】
図２に、視線方向推定装置１０として、車両に搭載された電子機器の配置の一例を示す。
図２に示すように、車両には、視線方向推定装置１０の装置本体１２、乗員を照明する照明部１４、乗員ＯＰの頭部を撮影するカメラ１６、及び距離センサ１８が搭載されている。本実施形態の配置例では、ステアリング４を保持するコラム５の上部に照明部１４及びカメラ１６を設置し、下部に距離センサ１８を設置した場合を示している。なお、図２には、乗員の視線方向を視線３として示している。
【００２５】
図３に、視線方向推定装置１０における座標系の一例を示す。
【００２６】
位置を特定する場合の座標系は、中心とする物品をどのように扱うかによって相違する。例えば、人物の顔を撮影するカメラを中心とした座標系、撮影画像を中心とした座標系、及び人物の顔を中心とした座標系が挙げられる。以下の説明では、カメラを中心とした座標系をカメラ座標系といい、顔を中心とした座標系を顔モデル座標系という。図３に示す例は、本実施形態に係る視線方向推定装置１０に用いるカメラ座標系、顔モデル座標系、及び画像座標系の関係の一例を示している。
【００２７】
カメラ座標系はカメラ１６から見て右方がＸ方向、下方がＹ方向、前方がＺ方向であり、原点はキャリブレーションにより導出される点である。カメラ座標系は、画像の左上を原点とする画像座標系とｘ軸とｙ軸の方向が一致するように定めてある。
【００２８】
顔モデル座標系は、顔の位置姿勢を求めたり、顔の中で目及び口の部位の位置を表現するための座標系である。例えば、顔画像処理では、目及び口などの顔の特徴的な部位の３次元位置が記述された顔モデルと呼ばれるデータを用い、このデータを画像に投影し、目及び口の位置を合わせることで顔の位置及び姿勢を推定する手法が一般的に用いられる。この顔モデルに設定されている座標系の一例が顔モデル座標系であり、顔から見て左方がＸｍ方向、下方がＹｍ方向、後方がＺｍ方向である。
【００２９】
なお、カメラ座標系、顔モデル座標系、及び画像座標系の相互関係は、予め定められており、カメラ座標系、顔モデル座標系、及び画像座標系の間で、座標変換が可能になっている。すなわち、乗員ＯＰの頭部とカメラ１６との距離は距離センサ１８で検出可能であるため（図２参照）、カメラ１６の焦点距離等のカメラ性能と頭部とカメラ１６との距離とを用いてカメラ座標系、顔モデル座標系、及び画像座標系の相互関係を特定可能である。また、以下の説明では、特に区別しない場合は、カメラ座標系を適用した場合を説明する。
【００３０】
図４に、本実施形態に係る視線方向推定装置１０の装置本体１２を機能的構成に分類したブロック構成の一例を示す。
【００３１】
図４に示すように、視線方向推定装置１０は、カメラ等の撮影部１０１、見かけの視線方向導出部１０２、マップ１０７が接続された補正量導出部１０６、視線方向導出部１０８、及び出力部１０９の各機能部を含む。
【００３２】
撮影部１０１は、撮影画像を取得し、見かけの視線方向導出部１０２へ出力する機能部である。本実施形態では、撮影部１０１の一例として撮影装置の一例であるカメラ１６を用いている。カメラ１６は、車両の乗員ＯＰの眼球の一部を含む頭部を撮影し、撮影画像を出力する。
【００３３】
見かけの視線方向導出部１０２は、見かけの視線方向を導出する機能部であり、撮影部１０１からの撮影画像を用いて、人物の見かけの視線方向を導出する。ここで、見かけの視線方向とは、２次元の撮影画像から推定される３次元の眼球の中心位置及び瞳孔の中心位置から導出される視線方向である。すわなち、人物の視線方向を特定する場合、眼球の中心位置及び瞳孔の中心位置を物理的に検出することは困難である。そこで、少なくとも眼球表面を撮影した２次元の撮影画像に基づいて、３次元の眼球の中心位置及び瞳孔の中心位置を推定し、推定された眼球の中心位置から、瞳孔の中心位置に向う方向を、見かけの視線方向として導出する。
【００３４】
この見かけの視線方向導出部１０２は、見かけの視線方向を導出するために、眼球中心演算部１０３、見かけの瞳孔中心演算部１０４、及び見かけの視線方向演算部１０５を含んでいる。撮影画像に含まれる眼球の瞳孔は、眼球表面、すなわち角膜表面を介した光の位置で撮影される。この角膜表面で観測された瞳孔の中心位置を、見かけの瞳孔の中心位置として説明する。
【００３５】
眼球中心演算部１０３は、撮影画像に基づいて眼球の中心位置を演算する機能部であり、撮影部１０１からの撮影画像を用いて、３次元の眼球中心の位置を推定する演算を実行する。見かけの瞳孔中心演算部１０４は、撮影画像に基づいて見かけの瞳孔の中心位置を演算する機能部であり、撮影部１０１からの撮影画像を用いて、３次元の見かけの瞳孔の中心位置を推定する演算を実行する。見かけの視線方向演算部１０５は、見かけの眼球の中心位置、及び見かけの瞳孔の中心位置を用いて、見かけの視線方向を演算する機能部である。この見かけの視線方向演算部１０５は、眼球中心演算部１０３で演算された眼球中心の位置と、見かけの瞳孔中心演算部１０４で演算された見かけの瞳孔中心の位置とを用いて、見かけの視線方向を演算する。
【００３６】
補正量導出部１０６は、見かけの視線方向から実際の視線方向への補正量を求める機能部であり、マップ１０７に格納された見かけの視線方向と、実際の視線方向への補正量との対応関係を用いて、補正量を導出する。マップ１０７には、見かけ視線方向に対する実際の人物の視線方向の誤差を補正量として予め求めておき、見かけ視線方向と補正量とを対応づけたマップが記憶される（詳細は後述）。
【００３７】
視線方向導出部１０８は、実際の視線方向を導出する機能部であり、見かけの視線方向導出部１０２で演算された見かけの視線方向を、補正量導出部１０６で導出された補正量で補正する演算を行うことにより、人物の視線方向を導出する処理を実行する。出力部１０９は、視線方向導出部１０８で演算された人物の視線方向を示す情報を出力する。
【００３８】
ここで、見かけの視線方向の導出には、眼を特徴的に表す特徴部位に関連した情報を用いて視線方向を導出する第１導出方法と、角膜に関連した情報を用いて視線方向を導出する、所謂角膜反射法による第２導出方法とが挙げられる。第１導出方法は、眼を特徴的に表す特徴部位の２次元位置（画像上の位置）を検出して、特徴部位を基に、３次元モデルでモデル化した眼球２をフィッティングすることで、眼球の中心位置を３次元で導出し、３次元の視線方向を導出する。第２導出方法は、眼球へ向けて照射した光の角膜表面の反射光の位置と、瞳孔の中心位置との２次元位置（画像上の位置）を用いて３次元の視線方向を導出する。
【００３９】
図５に、第１導出方法を説明するための模式図の一例を示す。図５（Ａ）はモデル化した眼球２における視線を示し、図５（Ｂ）は人物の顔における眼を撮影した撮影画像の一例を示している。
図５（Ｂ）に示すように、眼を撮影した撮影画像には、瞳孔２２、及び、眼を特徴的に表す目尻及び目頭の特徴部位２４が含まれている。第１導出方法では、撮影画像を用いて、角膜表面で観測された、見かけの瞳孔の中心位置Ｄを演算する。そして、特徴部位２４の各々を特徴点として各々の位置を演算し、目尻及び目頭の特徴点に対して予め定めた標準の３次元眼球モデルをフィッティングする。図５（Ａ）に示すように、フィッティングした３次元眼球モデルの中心位置を眼球２の中心位置Ｅとして推定し、眼球２の中心位置Ｅと見かけの瞳孔の中心位置Ｄを結ぶベクトルを視線ベクトルｇｅｂ、すなわち、見かけの視線方向とする。
【００４０】
図６に、第２導出方法を説明するための模式図の一例を示す。図６（Ａ）はモデル化した眼球２における視線を示し、図６（Ｂ）は人物の顔における眼を撮影した撮影画像の一例を示している。
図６（Ａ）に示すように、人物の眼を撮影するカメラ１６の近傍に配置されたＬＥＤ等の照明部１４から照射された近赤外光の反射光をカメラ１６で撮影する。カメラ１６では、角膜の曲率中心の位置Ａと照明部１４とを結ぶ直線と角膜との交点の位置Ｐに角膜における反射像が撮影される。すなわち、図６（Ｂ）に示すように、撮影画像には、瞳孔２２の周辺（図６（Ｂ）に示す例では瞳孔２２の右下方向の位置）に角膜における反射像が形成される。第２導出方法では、位置ｐとして角膜に映り込んだ角膜反射像と瞳孔２２の中心位置Ｄとの関係に基づいて、角膜の曲率中心の位置Ａから見かけの瞳孔の中心位置Ｄから求まる瞳孔の中心位置Ｂに向うベクトルを視線ベクトルｇｃｒ、として周知の方法により推定する。
【００４１】
ところで、眼球の角膜では光が屈折するので、角膜での光の屈折は見かけの視線方向の導出に影響する。例えば、上述の第１導出方法で導出された見かけの視線方向と、第２導出方法で導出された見かけの視線方向とは、角度差（以下、視線誤差という。）を有する場合がある。この見かけの視線方向の視線誤差について説明する。
【００４２】
図７に、モデル化した眼球２の視線に関する詳細な模式図の一例を示す。
図７では、モデル化した眼球２の実際の位置として、角膜の曲率の中心位置Ａ、瞳孔の中心位置Ｂ、及び眼球の中心位置Ｅが示されている。また、見かけの位置として、角膜表面上における照明による反射像の位置ｐ、及び角膜表面上で観測される見かけの瞳孔の中心位置Ｄが示されている。なお、位置Ｃはカメラの撮影素子の位置である。また、図７では、各位置を、位置Ａと位置Ｂとの距離をｓ、位置Ａと位置Ｅとの距離をｕ、位置Ａと位置ｐとの距離をｒで示している。また、位置Ａから位置Ｄに向うベクトルと、位置Ａから位置ｐに向うベクトルとの成す角度をθ、位置Ｅから位置Ｂに向うベクトルと、位置Ｅから位置Ｄに向うベクトルとの成す角度（視線誤差）をρ、位置Ｅから位置Ｄに向うベクトルと、位置Ｅから位置Ｃに向うベクトルとの成す角度をωで示している。
【００４３】
第２導出方法では、角膜反射法を用いて角膜の曲率中心の位置Ａを導出できるため、角膜に関連した情報として角膜反射像の位置ｐと角膜の曲率中心の位置Ａ、及び角膜表面上で観測される見かけの瞳孔の中心位置Ｄの情報を得ることができる。また、角膜に関連した情報を用いて、眼球２の中心位置Ｅも導出することができる。これにより、角膜での光の屈折を考慮した演算が可能となり、眼球２の中心位置Ｅから瞳孔の中心位置Ｂに向う視線ベクトルｇｃｒを導出することができる。
【００４４】
一方、第１導出方法では、モデル化された眼球２に観測された位置をフィッティングするので、角膜に関連した情報は見かけの瞳孔の中心位置Ｄのみであり、角膜における光の屈折を考慮することはできない。すなわち、第１導出方法では、見かけの瞳孔の中心位置と眼球の中心位置を結ぶベクトルが視線ベクトルとして演算される。従って、第２導出方法による視線ベクトルｇｃｒと、第１導出方法による視線ベクトルｇｅｂとが一致しない場合がある。また、視線誤差である視線ベクトルｇｃｒと、視線ベクトルｇｅｂの角度差の角度ρは一定ではなく、眼球２の位置及び向きによって変化する。従って、第２導出方法で演算される視線ベクトルｇｃｒに対して、視線誤差ρが大きくなるのに従って第１導出方法により導出した視線方向の推定精度が劣化する度合いが大きくなる。
【００４５】
ここで、視線ベクトルｇｃｒが、実際の視線ベクトルに近似していると仮定すると、実際の視線ベクトルがカメラの撮影素子の位置Ｃへ向かうベクトルである場合、実際の視線ベクトルと、視線ベクトルｇｅｂとは略一致する。一方、実際の視線ベクトルがカメラの撮影素子の位置Ｃへ向かうベクトルから角度が大きくなるのに従って、視線誤差ρが大きくなる。このことは、視線方向がカメラに向かう方向から外れるに従って視線誤差ρが大きくなることであり、視線誤差ρは、視線ベクトルｇｅｂと眼球２の中心位置Ｅからカメラの撮影素子の位置Ｃへ向かうベクトルとの成す角度ωと相関関係を有することを意味する。
【００４６】
従って、視線誤差ρと、角度ωと相関関係が既知であれば、見かけの視線ベクトルｇｅｂから実際の視線ベクトルを導出することができる。
【００４７】
図８に、視線誤差ρと、角度ωと相関関係の一例を示す。
図８は、実際に人物の視線方向を変化させた場合に生じる視線誤差ρと、角度ωと相関関係を実験により導出したものである。図８に示すように、人物の視線方向がカメラに向かう場合には、実際の視線ベクトルと、視線ベクトルｇｅｂとは略一致するので、視線誤差ρと、角度ωとは零になる。また、視線方向がカメラに向かう方向から外れるに従って視線誤差ρ（絶対値）が大きくなる。
【００４８】
そこで、本実施形態に係る視線方向推定装置１０は、視線誤差ρを抑制して視線方向を推定する。すなわち、本実施形態では、図８に示す相関関係を補正量として、すなわち、視線方向推定装置１０では、見かけ視線方向に対する実際の人物の視線方向の誤差を補正量として予め求めておき、見かけ視線方向と補正量とを対応づけてマップ１０７に記憶する。従って、見かけの視線方向導出部１０２で導出された見かけ視線方向を用いて、補正量導出部１０６はマップ１０７に記憶された補正量を見かけ視線方向に対する実際の人物の視線方向の誤差として導出する。そして、視線方向導出部１０８は、補正量導出部１０６で導出された補正量を用いて、実際の視線方向（視線ベクトル）を導出することができる。
【００４９】
次に、視線誤差ρを抑制して視線方向を推定する視線方向推定装置１０の動作を説明する。本実施形態では、視線方向推定装置１０は、コンピュータの装置本体１２によって動作される。
【００５０】
図９には、コンピュータにより実現した視線方向推定装置１０における視線方向推定プログラム１２Ｐによる処理の流れの一例が示されている。装置本体１２では、視線方向推定プログラム１２ＰがＲＯＭ１２Ｃから読み出されてＲＡＭ１２Ｂに展開され、ＲＡＭ１２Ｂに展開された視線方向推定プログラム１２ＰをＣＰＵ１２Ａが実行する。
【００５１】
まず、ステップＳ１００では、カメラ１６により撮影された撮影画像の取得処理が実行される。ステップＳ１００の処理は、図４に示す撮影部１０１から出力される撮影画像を取得する動作の一例である。
【００５２】
次のステップＳ１０２では、撮影画像上における目頭及び目尻等の眼の特徴点を用いて、カメラ座標系における３次元の眼球２の中心位置Ｅを推定する。ステップＳ１０２の処理は、図４に示す見かけの視線方向導出部１０２に含まれる眼球中心演算部１０３の動作の一例である。ステップＳ１０２では、上述の第１導出方法を用いて眼球２の中心位置を導出することで３次元の眼球２の中心位置を推定する。まず、撮影画像を画像処理して顔モデル座標系における目及び口の部位を示す顔の特徴位置を特定することで顔の位置姿勢を推定する。次に、目頭及び目尻等の眼の特徴点を特定し、推定した顔の位置姿勢及び眼の特徴点に、３次元モデルでモデル化した眼球２をフィッティングすることで、眼球２の中心位置を３次元で導出する。導出された顔モデル座標系の眼球２の中心位置をカメラ座標系の眼球２の中心位置に変換することで、眼球２の中心位置Ｅの座標ｅ＝（ｅｘ  ，ｅｙ  ，ｅｚ  ）ｔ  を求める。
【００５３】
次に、ステップＳ１０４では、撮影画像を画像処理して撮影画像上における見かけの瞳孔の中心位置Ｄを検出する。ここでは、ステップＳ１０４における、撮影画像上における画像座標系の２次元位置として検出される中心座標をＤ＝（Ｄｘ  ，Ｄｙ  ）とする。
【００５４】
次のステップＳ１０６では、画像座標系における見かけの瞳孔の中心位置Ｄに基づいて、カメラ座標系における３次元の見かけの瞳孔の中心位置Ｄを推定する。まず、カメラ座標系における見かけの瞳孔の中心位置ＤのＺ座標は、距離センサ１８で検出された測距結果を用いて、ｄｚ  とする。ここで、カメラ座標系における見かけの瞳孔の中心位置Ｄの３次元座標ｄ＝（Ｄｘ  ，Ｄｙ  ，Ｄｚ  ）はカメラ１６の焦点距離ｆをピクセル単位で表される焦点距離とすると次の（１）式で表すことができる。この（１）式を用いて、３次元の見かけの瞳孔の中心位置Ｄを推定する。
ｄ＝（（Ｄｘ  ，ｄｚ  ）／ｆ，（Ｄｙ  ，ｄｚ  ）／ｆ，ｄｚ  ）  ・・・（１）
【００５５】
なお、ステップＳ１０４とステップＳ１０６の処理は、図４に示す見かけの視線方向導出部１０２に含まれる見かけの瞳孔中心演算部１０４の動作の一例である。
【００５６】
次に、ステップＳ１０８では、ステップＳ１０２で推定した眼球２の中心位置Ｅと、ステップＳ１０６で推定した見かけの瞳孔の中心位置Ｄとを用いて、見かけの視線ベクトルを演算する。見かけの視線ベクトルは、眼球２の中心位置Ｅと、見かけの瞳孔の中心位置Ｄとを結ぶベクトルである。このベクトルを、見かけの視線ベクトルｇｅｂ＝（ｇｅｂ＿ｘ，ｇｅｂ＿ｙ，ｇｅｂ＿ｚ）とすると、見かけの視線ベクトルｇｅｂは、次の（２）式で表すことができる。
【数１】
2019168954.tif 000003
【００５７】
なお、ステップＳ１０８の処理は、図４に示す見かけの視線方向導出部１０２に含まれる見かけの視線方向演算部１０５の動作の一例である。
【００５８】
次のステップＳ１１０では、見かけの視線ベクトルｇｅｂと、眼球２の中心位置Ｅからカメラの撮影素子の位置Ｃへ向かうベクトルとの成す角度ωを導出する。
【００５９】
すなわち、ステップＳ１０２で推定した眼球２の中心位置Ｅと、ステップＳ１０６で推定した見かけの瞳孔の中心位置Ｄとを結ぶ視線ベクトルは、見かけの視線ベクトルｇｅｂ＝（ｇｅｂ＿ｘ，ｇｅｂ＿ｙ，ｇｅｂ＿ｚ）である。位置Ｃは、カメラ座標系の原点であるので、位置Ｅと位置Ｃとを結ぶベクトルは、ベクトルＥＣ（＝（−ｅ）＝(−ｅｘ  ，−ｅｙ  ，−ｅｚ  ）ｔ  ）となり、ベクトルの内積より角度ωは、次に示す（３）式で表すことができる。
【数２】
2019168954.tif 000004
【００６０】
そして、（３）式に（２）式を代入すると、次に示す（４）式で表され、角度ωを求めることができる。
【数３】
2019168954.tif 000005
【００６１】
この場合、（４）式では角度ωの符号（正負）を特定できないため、角度ωの正負は次の（５）式に示す外積ｇｅｂ×(−ｅ)のｘ成分である−((Ｄｙ  ｄｚ  )／ｆ)ｅｚ  ＋ｄｚ  ｅｙ  が正なら正、負なら負を取るようにする。
【数４】
2019168954.tif 000006
【００６２】
次に、ステップＳ１１２では、マップ１０７を参照して、ステップＳ１１０で導出した角度ωに対応する視線誤差ρを抽出し、角度補正量を導出する。なお、ステップＳ１１０及びステップＳ１１２の処理は、図４に示す補正量導出部１０６の動作の一例である。
【００６３】
そして、次のステップＳ１１４において、補正後の視線ベクトルとカメラに向かうベクトルとの成す角度を演算する。次に、ステップＳ１１６では、ステップＳ１０８で演算された見かけの視線ベクトルと、ステップＳ１１０で演算された角度と、ステップＳ１１４で演算された角度とを用いて、カメラ座標系における実際の視線方向（視線ベクトル）を導出する。そして、次のステップＳ１１８において、ステップＳ１１６で導出されたカメラ座標系における実際の視線方向（視線ベクトル）を出力し、本処理ルーチンを終了する。
【００６４】
なお、ステップＳ１１４及びステップＳ１１６の処理は、図４に示す視線方向導出部１０８の動作の一例である。また、ステップＳ１１８の処理は、図４に示す出力部１０９の動作の一例である。
【００６５】
上記のステップＳ１１６における、カメラ座標系における実際の視線方向（視線ベクトル）を導出する処理の一例を説明する。
まず、ステップＳ１１０及びステップＳ１１２の処理により推定される実際の角度はω＋ρになる。これらステップＳ１１０及びステップＳ１１２の処理により推定される実際の角度（ω＋ρ）と、ステップＳ１０８で演算された見かけの視線ベクトルの角度とを用いて、実際の視線ベクトルを導出する。ここでは、実際の視線ベクトルを、ｇ’ｅｂ＝（ｇ’ｅｂ＿ｘ，ｇ’ｅｂ＿ｙ，ｇ’ｅｂ＿ｚ）と表記する。ｇ’ｅｂは以下の計算で求められる。
【００６６】
なお、本実施形態では、ロドリゲスの回転公式（Ｒｏｄｒｉｇｕｅｓ’  ｒｏｔａｔｉｏｎ  ｆｏｒｍｕｌａ）を用いて式を導出する場合を一例として説明する。
ロドリゲスの回転公式は、「３次元単位ベクトルｋを回転軸として、３次元ベクトルｖを３次元単位ベクトルｋの周りで角度θだけ回転したベクトルをｖｒｏｔ  とすると、ベクトルｖｒｏｔ  は次に示す（６）式で与えられる」というものである。ここで、角度θは右手系で定めるものとする。
【数５】
2019168954.tif 000007
実際の視線ベクトルｇ’ｅｂは、ベクトルｇｅｂとベクトルＥＣを含む平面上でベクトルｇｅｂを角度ρだけ回転したベクトルであるので、（６）式において、ｖ＝ｇｅｂ、ｖｒｏｔ  ＝ｇ’ｅｂ、θ＝ρとし、回転軸ｋをベクトルｇｅｂとベクトルＥＣを含む平面の法線ベクトルとした場合になる。ｋは外積により次に示す（７）式で求められる（ｋは単位ベクトルである。）。
【数６】
2019168954.tif 000008
【００６７】
これらのｖ、ｖｒｏｔ  、θおよびｋを（６）式に代入し変形することで、次に示す（８）式が得られる。
【数７】
2019168954.tif 000009
【００６８】
このように、実際の視線ベクトルｇ’ｅｂは、ベクトルｇｅｂ、角度ωおよび角度ρから求めることができる。
【００６９】
以上説明したように、本実施形態の視線方向推定装置によれば、眼球の角膜における光の屈折を考慮せずに導出された見かけの視線方向が、実際の視線方向に補正される。すなわち、導出された見かけの視線方向と実際の視線方向との視線誤差を、抑制するように視線方向を導出する。これによって、眼球の角膜における光の屈折を考慮せずに視線方向を導出する場合であっても、実際の視線方向に高精度で導出することができる。
【００７０】
なお、本実施形態では、角度ωと視線誤差ρとの対応関係をマップ１０７に記憶し、マップ１０７を参照して実際の視線ベクトルを導出する一例を説明したが、開示の技術はマップ１０７に記憶する対応関係を角度ωと視線誤差ρとに限定するものではない。例えば、角度ωに代えて、角度ωに関連するベクトルをパラメータとして記憶し、記憶したパラメータに視線誤差ρを対応付けてマップ１０７に記憶してもよい。角度ωに関連するベクトルの一例には、見かけの視線ベクトルｇｅｂ及び眼球２の中心位置からカメラ１６に向うベクトルＥＣが挙げられる。
【００７１】
（第２実施形態）
次に、第２実施形態を説明する。第２実施形態は、視線方向の導出に関して、第１導出方法による視線方向の導出と、第２導出方法による視線方向の導出とを切り替え可能な視線方向推定装置に開示の技術を適用したものである。なお、第２実施形態は、第１実施形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【００７２】
なお、本実施形態では、眼球へ向けて照射した光の角膜表面の反射光の位置を用いて３次元の視線方向を導出するので（第２導出方法）、照明部１４は必須の構成である。
【００７３】
視線方向の導出は、角膜表面の反射光の位置を用いることで、高精度に３次元の視線方向を導出することができる。ところが、角膜表面の反射光の位置の検出を常時行うことが困難な、すなわち、角膜反射法で常時検出することが困難な場合がある。そこで、本実施形態では、第２導出方法による視線方向の導出が困難な場合には、第１導出方法によって視線方向を導出する。
【００７４】
図１０に、本実施形態に係る視線方向推定装置１０Ａの装置本体１２を機能的構成に分類したブロック構成の一例を示す。
【００７５】
図１０に示すように、視線方向推定装置１０Ａは、図４に示す視線方向推定装置１０に、角膜反射法による導出部１０２Ａをさらに備えた構成としている。以下の説明では、図４に示す見かけの視線方向導出部１０２を第１導出部１０２といい、角膜反射法による導出部１０２Ａを第２導出部１０２Ａという。
【００７６】
本実施形態の視線方向推定装置１０Ａに含まれる第２導出部１０２Ａは、眼球中心演算部１０３Ａ、瞳孔中心演算部１０４Ａ、及び視線方向演算部１０５Ａを含んでいる。この視線方向導出部１０２Ａは、角膜反射法により視線方向を導出する機能部であり、撮影部１０１からの撮影画像を用いて、角膜表面における光の屈折を考慮して人物の視線方向を導出する。
【００７７】
眼球中心演算部１０３Ａは、撮影画像に基づいて眼球の中心位置を演算する機能部であり、撮影部１０１からの撮影画像を用いて、３次元の眼球中心の位置を推定する演算を実行する。瞳孔中心演算部１０４Ａは、撮影画像に基づいて瞳孔の中心位置を演算する機能部であり、撮影部１０１からの撮影画像を用いて、３次元の見かけの瞳孔の中心位置を推定する演算を実行する。視線方向演算部１０５Ａは、眼球の中心位置、及び見かけの瞳孔の中心位置を用いて、視線方向を演算する機能部である。この視線方向演算部１０５Ａは、眼球中心演算部１０３Ａで演算された眼球中心の位置と、瞳孔中心演算部１０４Ａで演算された瞳孔中心の位置とを用いて、角膜表面における光の屈折が考慮された人物の視線方向を演算する。
【００７８】
第２導出部１０２Ａで導出された、角膜表面における光の屈折が考慮された人物の視線方向は、実際の視線方向とほぼ一致するため、出力部１０９へ出力され、出力部１０９から人物の視線方向を示す情報が出力される。
【００７９】
なお、本実施形態では、第１導出部１０２の眼球中心演算部１０３、及び第２導出部１０２Ａの眼球中心演算部１０３Ａの各々は、眼球２の中心位置を示す情報を記憶するメモリ（図１０では記号Ｍとして表記している。）を含んでいる。
【００８０】
次に、本実施形態に係る視線方向推定装置１０Ａで、視線誤差ρを抑制して視線方向を推定する動作を説明する。本実施形態では、視線方向推定装置１０Ａは、コンピュータの装置本体１２によって動作される。
【００８１】
図１１には、コンピュータにより実現した視線方向推定装置１０Ａにおける視線方向推定プログラム１２Ｐによる処理の流れの一例が示されている。
装置本体１２では、視線方向推定プログラム１２ＰがＲＯＭ１２Ｃから読み出されてＲＡＭ１２Ｂに展開され、ＲＡＭ１２Ｂに展開された視線方向推定プログラム１２ＰをＣＰＵ１２Ａが実行する。なお、図１１に示す処理の流れは、図９に示すステップＳ１０２の処理に代えて、ステップＳ１０１，Ｓ１０３，Ｓ１０５、Ｓ１０７，Ｓ１０９の処理を実行する。また、図９に示すステップＳ１０８の処理に代えてステップＳ１０８Ａの処理を実行する。
【００８２】
本実施形態では、ステップＳ１００で、カメラ１６により撮影された撮影画像が取得されると、ステップＳ１０１において、照明部１４から照射された光の反射像が撮影画像に含まれるか否かを判別することで、角膜反射がなしか否かが判断される。ステップＳ１０１の処理は、第２導出部による視線方向の導出処理が可能か否かを判断する処理の一例である。
【００８３】
すなわち、ステップＳ１０１で、肯定判断された場合は、第１導出部１０２により見かけの視線方向を導出するべく、ステップＳ１０３へ処理を移行する。一方、ステップＳ１０１で否定判断された場合は、第２導出部１０２Ａにより視線方向を導出するべく、ステップＳ１０５へ処理を移行する。
【００８４】
ステップＳ１０５では、角膜反射法による第２導出法を用いて、カメラ座標系における３次元の眼球２の中心位置Ｅを推定する。ステップＳ１０３の処理は、図１０に示す視線方向導出部１０２Ａに含まれる眼球中心演算部１０３Ａの動作の一例である。
【００８５】
図７に示すように、カメラ中心座標系における角膜の曲率の中心位置Ａの座標をａ＝（ａｘ  ，ａｙ  ，ａｚ  ）ｔ  とし、第２導出法で求める視線ベクトルをｇｃｒ＝（ｇｃｒ＿ｘ、ｇｃｒ＿ｙ、ｇｃｒ＿ｚ）ｔ  とし、角膜の曲率の中心位置Ａと眼球２の中心位置Ｅの距離をｕとすると、カメラ中心座標系における眼球２の中心位置Ｅの座標ｅ＝（ｅｘ  ，ｅｙ  ，ｅｚ  ）ｔ  は、次の（９）式で表わすことができる。なお、ベクトルａと視線ベクトルｇｃｒは角膜反射法により求めることができる。
【数８】
2019168954.tif 000010
【００８６】
このステップＳ１０５では、導出したカメラ中心座標系における眼球２の中心位置Ｅの座標ｅを、メモリに記憶する。また、ステップＳ１０５では、眼球２の中心位置Ｅの座標ｅを、第１導出部１０２の眼球中心演算部１０３、及び第２導出部１０２Ａの眼球中心演算部１０３Ａの各々のメモリに共通に記憶する処理を実行する。
【００８７】
次のステップＳ１０７では、角膜反射法の第２導出法による周知の方法を用いて、カメラ座標系における３次元の瞳孔の中心位置Ｂを推定する。次のステップＳ１０９では、ステップＳ１０５で推定した眼球２の中心位置Ｅと、ステップＳ１０７で推定した瞳孔の中心位置Ｂとを用いて、視線ベクトルｇｃｒを導出する。すなわち、視線ベクトルｇｃｒは、眼球２の中心位置Ｅと、瞳孔の中心位置Ｂとを結ぶベクトルである。そして、ステップＳ１１８へ処理を移行し、視線ベクトルｇｃｒを出力する。
【００８８】
なお、ステップＳ１０５の処理は、図１０に示す眼球中心演算部１０３Ａの動作の一例であり、ステップＳ１０７の処理は、瞳孔中心演算部１０４Ａの動作の一例であり、ステップＳ１０９の処理は、視線方向演算部１０５Ａの動作の一例である。
【００８９】
一方、ステップＳ１０１で、肯定判断された場合は、第１導出部１０２により見かけの視線方向を導出するべく、ステップＳ１０３へ処理を移行する。ステップＳ１０３では、メモリに記憶されているカメラ中心座標系における眼球２の中心位置Ｅの座標ｅ＝（ｅｘ  ，ｅｙ  ，ｅｚ  ）ｔ  を取得する。なお、上記ステップＳ１０５により眼球２の中心位置Ｅの座標ｅが記憶されていない場合は、図９に示すステップＳ１０２と同様に眼球２の中心位置Ｅを導出すればよい。
【００９０】
次に、上述したように、ステップＳ１０４で、見かけの瞳孔の中心位置Ｄ（２次元位置）を検出し、次のステップＳ１０６で、カメラ座標系における３次元の見かけの瞳孔の中心位置Ｄを推定する。
【００９１】
次に、ステップＳ１０８Ａでは、見かけの視線ベクトルを演算する。なお、上記ステップＳ１０５により眼球２の中心位置Ｅの座標ｅが記憶されていない場合は、ステップＳ１０２と同様にして推定した眼球２の中心位置Ｅと、ステップＳ１０６で推定した見かけの瞳孔の中心位置Ｄとを用いて、見かけの視線ベクトルｇｅｂを演算する（上記の（２）式参照）。
【００９２】
一方、上記ステップＳ１０５により眼球２の中心位置Ｅの座標ｅが記憶されている場合、ステップＳ１０８Ａでは、見かけの視線ベクトルｇｅｂを、上記（２）式に代えて、次に示す（１０）式を用いて演算する。
【数９】
2019168954.tif 000011
【００９３】
そして、上述したように、ステップＳ１１０で、角度ωを導出し、ステップＳ１１２で、マップ１０７を参照して、ステップＳ１１０で導出した角度ωに対応する視線誤差ρを抽出し、角度補正量を導出する。次に、ステップＳ１１４で、補正後の視線ベクトルとカメラに向かうベクトルとの成す角度を演算し、ステップＳ１１６で、カメラ座標系における実際の視線方向（視線ベクトル）を導出する。そして、ステップＳ１１８で、カメラ座標系における実際の視線方向（視線ベクトル）を出力し、本処理ルーチンを終了する。
【００９４】
以上説明したように、本実施形態の視線方向推定装置によれば、角膜での光の屈折を考慮して視線方向を導出することから角膜での光の屈折を考慮せずに視線方向を導出することに切り替えた場合であっても、視線誤差が抑制されるように視線方向が導出される。これによって、眼球の角膜における光の屈折を考慮せずに視線方向を導出する場合であっても、実際の視線方向に高精度で導出することができる。
【００９５】
また、角膜での光の屈折を考慮して視線方向を導出する際の眼球２の中心位置を記憶して視線方向を導出する際に用いているので、撮影画像上の眼の特徴点のみを用いて眼球の中心位置を導出する場合と比べて、高精度で実際の視線方向を導出することができる。
【００９６】
なお、上記各実施形態に係る視線方向推定装置に含まれる装置本体１２は、構成する各構成要素を、上記で説明した各機能を有する電子回路等のハードウェアにより構築してもよく、構成する各構成要素の少なくとも一部を、コンピュータにより当該機能を実現するように構築してもよい。
【００９７】
また、上記各実施形態では、説明を簡単にするために、１個の眼球２について視線方向を導出する場合を説明したが、複数の眼球２の各々について視線方向を導出してもよい。この場合、左右一対の眼球２により目視される一方向を特定することが好ましい。また、左右一対の眼球２のうち少なくとも一方の眼球２を視線方向の推定対象としてもよい。この場合、左右一対の眼球２のうち、第２導出法により視線方向を導出可能な眼球２を対象として選択してもよく、左右一対の眼球２の撮影画像を比べて高精細な撮影画像の眼球２を対象として選択してもよい。
【００９８】
さらに、上記各実施形態では、説明を簡単にするために、角度ωと視線誤差ρとの対応関係がマップ１０７に予め記憶された一例を説明したが、開示の技術は対応関係を予めマップ１０７に記憶されることに限定されるものではない。例えば、角度ωと視線誤差ρとの対応関係を学習するようにしてもよい。この場合、角度ωを特定可能な目視対象を予めておき、その目視対象を目視させて角度ωと視線誤差ρとの対応関係を導出し、導出された対応関係をマップ１０７に予め記憶するようにすればよい。
【００９９】
また、上記各実施形態では、乗員の頭部までの距離を計測する距離センサ１８を備えた視線方向推定装置の一例を説明したが、距離センサ１８を備えることに限定されるものではない。例えば、乗員の頭部とカメラ１６との距離が既知であり、距離の変動が、視線方向の推定に影響が少ないことが予測される予め定めた距離範囲内である場合には、視線方向推定装置に乗員の頭部とカメラ１６との予め定めた距離を記憶しておき、記憶された距離を読み出して用いてもよい。この場合、複数の異なる距離を段階的に選択可能に記憶しておき、記憶された複数の距離から選択した距離を用いることが好ましい。
【０１００】
なお、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施の形態に多様な変更または改良を加えることができ、当該変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【符号の説明】
【０１０１】
１０、１０Ａ    視線方向推定装置
１２      装置本体
１２Ｐ    視線方向推定プログラム
１４      照明部
１６      カメラ
１８      距離センサ
２２      瞳孔
２４      特徴部位
１０１    撮影部
１０２    見かけの視線方向導出部（第１導出部）
１０２Ａ  角膜反射法による導出部（第２導出部）
１０３    眼球中心演算部
１０３Ａ  眼球中心演算部
１０４    見かけの瞳孔中心演算部
１０４Ａ  瞳孔中心演算部
１０５    見かけの視線方向演算部
１０５Ａ  視線方向演算部
１０６    補正量導出部
１０７    マップ
１０８    視線方向導出部
１０９    出力部
【図１】
2019168954.tif 000012
【図２】
2019168954.tif 000013
【図３】
2019168954.tif 000014
【図４】
2019168954.tif 000015
【図５】
2019168954.tif 000016
【図６】
2019168954.tif 000017
【図７】
2019168954.tif 000018
【図８】
2019168954.tif 000019
【図９】
2019168954.tif 000020
【図１０】
2019168954.tif 000021
【図１１】
2019168954.tif 000022