【国等の委託研究の成果に係る記載事項】(出願人による申告)平成27年度、国立研究開発法人新エネルギー・産業技術総合開発機構「次世代人工知能・ロボット中核技術開発/次世代人工知能技術分野/人間と相互理解できる次世代人工知能技術の研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、図面を参照しながら、本実施形態に係る視線検出校正方法について説明する。なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示される。
【0013】
(視線検出校正システムの構成)
図1は、本実施形態に係る視線検出校正方法を実行する視線検出校正システムの構成の一例を示す図である。
図1に示される視線検出校正システム1は、視線検出の校正を行うための校正点を提示するディスプレイ10と、被験者50の眼球54に赤外線を照明する赤外線照明装置を兼ねた被験者50の眼球54の様子を撮影するカメラ20と、ディスプレイ10に校正点を表示するための表示データをディスプレイ10に出力する校正点提示用コンピュータ装置16と、カメラ20で撮影された被験者50の視線情報を取得する視線計測用コンピュータ装置18とを含んで構成される。
【0014】
校正点提示用コンピュータ装置16がディスプレイ10に校正点を表示するための表示データを出力すると、ディスプレイ10には校正点が表示される。また、被験者50は、ディスプレイ10の方向に向いた状態で頭部52が固定される。また、被験者50の瞳孔を暗く撮影するために赤外線照明装置(兼カメラ)20による照明が行われる。被験者50がディスプレイ10に表示される校正点を目(眼球)54で追うと、カメラ20が眼球(瞳孔)54の様子を撮影する。カメラ20の撮影情報は、視線計測用コンピュータ装置18に出力される。また、本実施形態においては、視線計測用コンピュータ装置18は、校正点の提示位置データをあらかじめ保持しておくこととする。また、これ以降で説明される本実施形態に係る視線検出校正方法は、例えば視線計測用コンピュータ装置18において実行されうる。
【0015】
(視線検出校正方法)
以下、本実施形態に係る視線検出校正方法について詳述する。
【0016】
図1に示されるような視線検出校正システム1においては、頭部52(眼球54)とカメラ20との位置関係により、カメラ20で計測(撮影)する視線位置と、実際に被験者50が見ている位置との間に、水平方向と垂直方向とにおいてズレが生じうる。本実施形態に係る視線検出校正方法は、このようなズレを校正するための方法である。
【0017】
従来の視線検出校正方法においては、校正のために被験者50の視線の計測を一時停止して校正を行う必要があった。これに対し、本実施形態に係る視線検出校正方法においては、15Hz程度の周期で、校正のためのパラメータを計算する。視線計測の開始以降のデータ(例えば10秒分)で被験者50の瞳孔中心が一定以上の範囲で動いた時(位置の分散が一定値を超えた場合)かつ、例えば校正点が1点以下の場合に、パラメータ計算を行う。視線計測開始直後は、カメラ20の調整や被験者50の位置合わせ等により撮影条件が変わる(確定していない)可能性があるため、直近のデータのみを用いるのが好ましい。
【0018】
図2は、本実施形態に係る視線検出校正方法において得られるパラメータを説明するための図である。本実施形態に係る視線検出校正方法において得られるパラメータは、以下の2種類である
・反射点から角膜曲率中心を求めるためのOffset
x,Offset
y
・角膜曲率中心から瞳孔中心までの距離:Rpc
当該パラメータについては、本願発明の発明者らによる論文“Matsuda K., Nagami T., Sugase Y., Takemura A., Kawano K. (2017) A Widely Applicable Real-Time Mono/Binocular Eye Tracking System Using a High Frame-Rate Digital Camera. In: Kurosu M. (eds) Human-Computer Interaction. User Interface Design, Development and Multimodality. HCI 2017. Lecture Notes in Computer Science, vol 10271. Springer, Cham”において詳述されている。より具体的には、被験者50に、カメラ20に向かって眼球54を動かすようにしてもらうことで上記パラメータOffset
x,Offset
y,Rpcを取得することができる(詳細は当該文献を参照)。本実施形態に係る視線検出校正方法では、このようにして取得された各パラメータOffset
x,Offset
y,Rpcを用いて、以下に説明するようにして視線検出校正を行う。
【0019】
本実施形態の視線検出校正方法においては、カメラ20の撮影面上の座標系であるカメラ座標系における視線ベクトルを得るために、
図2に示される眼球モデルを採用する。このモデルでは、瞳孔の中心を通る瞳孔面の法線ベクトル(Cx,Cy,Cz)の延長線は、角膜曲率中心およびが眼球回転中心を通る。ベクトル(Cx,Cy,Cz)は、カメラ座標系における視線ベクトルである。本実施形態においては、カメラ20の撮影画像における瞳孔の輪郭を楕円として近似する。
【0020】
ここで、瞳孔中心を(Xp,Yp)、短軸の長さをS、長軸の長さをL、短軸の傾きをaと定義する。また、角膜も球体(眼球)の一部であるので、この球体の中心を角膜曲率中心(Xc,Yc)とする。カメラ20と眼球54との間の距離が頭部52の動きよりも十分に長い場合、反射の中心と角膜曲率中心との間の関係は一定である。よって、反射点重心を(Xr、Yr)とすると、角膜曲率中心(Xc,Yc)は、(Xc,Yc)=(Xr−Offset
x,Yr−Offset
y)として記述することができる。
【0021】
以下の式(1)によって、瞳孔中心(Xp,Yp)と角膜曲率中心(Xc,Yc)とを結ぶベクトルから視線ベクトル(Cx,Cy,Cz)を算出する。視線ベクトル(Cx,Cy,Cz)は、瞳孔中心(Xp,Yp)と、眼の撮影画像中の反射点重心(Xr、Yr)とを測定した後に、式(1)を用いることによって算出されうる。
【0023】
そして、上述のように求められたカメラ座標系における視線ベクトル(Cx,Cy,Cz)から以下の式により、水平方向、垂直方向の視線角度(Ch,Cv)を求めることができる。
(Ch,Cv)=(arctan(Cx/Cz),arctan(Cy/Cz))
【0024】
ここで、視線計測とは、被験者がどこを見ているのかを知るための技術である。例えば
図1に示されるように被験者50がディスプレイ10を見ている場合、被験者50がディスプレイ上のどこを見ているのかを検出することが目的である。よって、カメラ座標系(カメラ20の撮影面上の座標系)で表現されている視線情報を、ディスプレイ上の座標系に変換する必要がある。本実施形態においては、このディスプレイ10上の座標系を「対象物座標系」という。
【0025】
ところで、カメラ20の配置によっては、ディスプレイ10の画面上の座標系である対象物座標系と異なる方向に、(撮影した)視線が移動する場合がある。これは、カメラ20の天地の設定や、本実施形態においては採用していないが眼球54を撮影する際に赤外線のみを反射するミラーを用いる場合には当該ミラーによる反転などに起因する。ここで、カメラ20の水平と視標座標系の水平とを合わせることを前提とすると、カメラ座標系と対象物座標系との方向の関係は、以下の4つのパターンに分類される。
(1)水平・垂直とも反対方向
(2)水平のみ反対方向
(3)垂直のみ反対方向
(4)水平・垂直とも同一方向
【0026】
カメラ20の配置等によって上記の4つのパターンのうち、いずれのパターンになるかはあらかじめ判断できるため、例えば、視線検出校正方法をコンピュータ装置にて実行するためのプログラムに水平反転スイッチおよび垂直反転スイッチの機能を付加しておくようになっていてもよい。そして、プログラムを実行させる際に各スイッチのいずれか、または両方が有効になるよう設定するようになっていてもよい。
【0027】
(校正例1)
以下、1つのみの校正点を用いる視線検出校正方法の一例について説明する。
図3〜
図5は、1つの校正点を用いる視線検出校正方法の一例を説明する図である。
【0028】
図3(a)は、被験者50がディスプレイ10に表示された各校正点を見た際の、カメラ20が撮影した被験者50の視線の位置をカメラ座標系(カメラ20の撮影面上の座標系)にて×マークのプロットで示したグラフである。また、
図3(b)は、ディスプレイ10に表示された各校正点(本例では25個の校正点)の対象物座標系(ディスプレイ10の画面上の座標系)における位置を●マークのプロットで示したグラフである。両方のグラフとも縦軸が垂直方向、横軸が水平方向を示す。
【0029】
ここで、
図4に、本例におけるディスプレイ10と、カメラ20と、被験者50(眼球54)との位置関係を示す。
図3(b)に示される対象物座標系はディスプレイ10の画面上の座標系である。また、
図3(a)に示されるカメラ座標系はカメラ20の撮影面上の座標系であり、カメラ20から被験者50の眼球(瞳孔)54を撮影するときの座標系である。カメラ座標系は、
図4に示されるように、垂直方向においては、上方向がマイナスであり下方向がプラスとなっている。すなわち、本例におけるカメラ座標系と対象物座標系との関係は、上述したパターンのうち、(1)水平・垂直とも反対方向のパターンとなる。
【0030】
図3に戻り、例えば被験者50がディスプレイ10の一番左上の校正点を見たとき、
図3(a)のカメラ座標系ではプロット101が、
図3(b)の対象物座標系ではプロット121が、被験者が当該校正点を見ているときの視線の位置となる。本例においては、一例として、この校正点を用いて視線検出校正を行うこととする。
【0031】
図5は、当該校正点を用いてカメラ座標系と対象物座標系との位置合わせを行なった状態を示す図である。
図5においては、両グラフの関係が(1)のパターンであるため、両座標系における視線の位置101と位置121とを重ねるために、カメラ座標系のグラフが左右と上下とを逆にして対象物座標系のグラフと重ねられている。このように、視線計測前にあらかじめカメラ座標系の水平と対象物座標系の水平とを合わせておき、かつ、1点の校正点について両座標系における視線の位置を合わせることで、両者のズレを検出し、視線検出の校正を行うことができる。
【0032】
なお、本例においては一番左上の校正点を校正のために使用したが、中央の校正点(
図5の位置105および位置125)を、両座標系を合わせるために使用すると、誤差の最大値がより小さくなる。
【0033】
以下、本例の校正方法ための数式について説明する。
【0034】
カメラ座標系における位置101を被験者50が注視しているときの水平角度および垂直角度を(Ch1,Cv1)とする。校正に用いる校正点の対象物座標系における位置121の水平角度および垂直角度を(Oh1,Ov1)とする。Ch1、Cv1は計測値を、Oh1、Ov1はディスプレイ10への出力時に設定した値を用いることで、下記の関係式におけるH_offset、V_offsetを求めることができる。
【0036】
また、上述したように、カメラ20の水平と視標座標系の水平とを合わせると、カメラ座標系と対象物座標系との関係は、(1)水平・垂直とも反対方向、(2)水平のみ反対方向、(3)垂直のみ反対方向、(4)水平・垂直とも同一方向、の4つのパターンに分類される。この(1)〜(4)のパターンによって、関係式はそれぞれ以下のように異なる。
【0038】
また、任意の校正点についての対象物座標系の角度(Oh,Ov)は、カメラ座標系における視線角度(Ch,Cv)から以下の式より求めることができる。
【0040】
なお、これについても、カメラ座標系と対象物座標系との関係のパターン(1)〜(4)によって、関係式はそれぞれ以下のように異なる。
【0042】
(校正例2)
次に、2つの校正点を用いる視線検出校正方法の一例について説明する。
図6および
図7は、2つの校正点を用いる視線検出校正方法の一例を説明する図である。
【0043】
図6(a)は、被験者50がディスプレイ10に表示された各校正点を見た際の、カメラ20が撮影した被験者50の視線の位置をカメラ座標系にて×マークのプロットで示したグラフである。また、
図6(b)は、ディスプレイ10に表示された各校正点(本例では25個の校正点)の対象物座標系における位置を●マークのプロットで示したグラフである。両方のグラフとも縦軸が垂直方向、横軸が水平方向を示す。なお、本例におけるディスプレイ10と、カメラ20と、被験者50(眼球54)との位置関係は、前述した1つの校正点を用いた視線検出校正方法の例と同様とする(
図4参照)。すなわち、本例においても、カメラ座標系と対象物座標系との関係は、上述したパターンのうち、(1)水平・垂直とも反対方向のパターンである。
【0044】
例えば被験者50がディスプレイ10の一番左上の校正点を見たとき、
図6(a)のカメラ座標系ではプロット101が、
図6(b)の対象物座標系ではプロット121が、被験者が当該校正点を見ているときの視線の位置となる。また、被験者50がディスプレイ10の一番上の列の左から2つ目の校正点を見たとき、
図6(a)のカメラ座標系ではプロット102が、
図6(b)の対象物座標系ではプロット122が、被験者が当該校正点を見ているときの視線の位置となる。本例においては、一例として、この2点の校正点を用いて視線検出校正を行うこととする。
【0045】
図7は、当該2つの校正点を用いてカメラ座標系と対象物座標系との位置合わせを行なった状態を示す図である。
図7においては、両座標系における視線の位置101と位置121、および位置102と位置122とを重ねるために、カメラ座標系のグラフが左右と上下とを逆にして、対象物座標系のグラフと重ねられている。このとき、位置101と位置102との間の距離が、位置121と位置122との間の距離と等しくなるように、カメラ座標系(または対象物座標系)を拡大あるいは縮小する(このときの拡大率または縮小率をαとする)。また、位置101と位置121、および位置102と位置122とが重なるようにカメラ座標系(または対象物座標系)を回転させる(このときの回転角をθとする)。このように、視線計測前にあらかじめカメラ座標系の水平と対象物座標系の水平とを合わせておき、かつ、2点の校正点について両座標系における2点の校正点についての視線の位置を合わせることで、両者のズレを検出し、視線検出の校正を行うことができる。また、この校正方法によれば、2つの校正点を用いているため、より精度の高い校正を行うことができる。
【0046】
なお、本例においては一番左上とその右隣の2つの校正点を校正のために使用したが、他の2点の校正点を用いて校正を行うことも可能である。
【0047】
以下、本例の校正方法ための数式について説明する。
【0048】
カメラ座標系における位置101および位置102を被験者50が注視しているときの水平角度および垂直角度をそれぞれ、(Ch1,Cv1)、(Ch2,Cv2)とする。また、校正に用いる対象物座標系における位置121および位置122の水平角度および垂直角度をそれぞれ、(Oh1,Ov1)、(Oh2,Ov2)とする。(Ch1,Cv1)および(Ch2,Cv2)は計測値を、(Oh1,Ov1)および(Oh2,Ov2)はディスプレイ10への出力時に設定した値を用いることで、下記の関係式におけるaおよびbを含む行列を求めることができる。
【0049】
なお、以下の式におけるaおよびbを含む行列は、回転角度シータに対応する回転行列と拡大率αを掛け合わせたものである。aおよびbを求めることで、カメラ座標系から対象物座標系への変換が可能になる。
【0051】
なお、上記の式におけるaおよびbを含む行列は、回転角度θの回転行列と拡大率αを掛け合わせたものである。aおよびbを求めることで、カメラ座標系から対象物座標系への変換が可能になる。
【0053】
また、上述したように、カメラ20の水平と視標座標系の水平とを合わせると、カメラ座標系と対象物座標系との関係は、(1)水平・垂直とも反対方向、(2)水平のみ反対方向、(3)垂直のみ反対方向、(4)水平・垂直とも同一方向、の4つのパターンに分類される。この(1)〜(4)のパターンによって、関係式はそれぞれ以下のように異なる。
【0055】
また、任意の校正点についての対象物座標系の角度(Oh,Ov)は、カメラ座標系における視線角度(Ch,Cv)から以下の式より求めることができる。
【0057】
なお、これについても、カメラ座標系と対象物座標系との関係のパターン(1)〜(4)によって、関係式はそれぞれ以下のように異なる。
【0059】
(処理フロー)
図8は、本実施形態に係る視線検出校正方法の処理フロー図の一例を示す図である。
【0060】
まず、校正点の提示位置データ(座標データ)を視線計測用コンピュータ装置18に登録しておく(ステップS102)。
【0061】
次に、被験者50の眼球運動を計測することで、カメラ座標系にて計測するための各パラメータOffset
x,Offset
y,Rpcを取得する(ステップS104)。具体的には、被験者50に、カメラ20に向かって眼球54を動かすようにしてもらうことで上記パラメータOffset
x,Offset
y,Rpcを取得する。
【0062】
次に、1点目の校正点を注視するように被験者50に指示し、この時の被験者50の眼球54の撮影情報(視線情報)を取得する(ステップS106)。取得された撮影情報はカメラ20から視線計測用コンピュータ装置18に出力される。なお、被験者50が校正点を注視しているときに、例えばキーボードやマウスにて入力操作を行うことで、校正点を注視していることを視線計測用コンピュータ装置18に通知するようになっていてもよい。
【0063】
1点の校正点のみで校正処理を実行する場合には(ステップS108:No)、視線計測用コンピュータ装置18において上記校正例1にて説明したように、1点の校正点を用いた視線検出校正を実行して対象物座標系で視線情報を出力して(ステップS110)、処理を終了する。
【0064】
さらなる校正点を用いて校正を続ける場合には(ステップS108:Yes)、2点目の校正点を注視するように被験者50に指示し、この時の被験者50の眼球54の撮影情報(視線情報)を取得する(ステップS112)。取得された撮影情報はカメラ20から視線計測用コンピュータ装置18に出力される。なお、この時、2点目の校正に1点の校正点を用いた校正処理の結果を利用することができる。すなわち、被験者が2点目の校正点付近を注視してるのかを1点の校正点を用いた校正処理結果を用いて確認することができる。また、1点目の校正点の場合と同様に、被験者50が校正点を注視しているときにキーボードやマウスにて入力操作を行うことで、校正点を注視しているタイミングを視線計測用コンピュータ装置18に通知するようになっていてもよい。
【0065】
当該2点の校正点のみで校正処理を実行する場合には(ステップS114:No)、1点目と2点目の校正点の撮影情報を用いて、視線計測用コンピュータ装置18において上記校正例2にて説明したように、2点の校正点を用いた視線検出校正を実行して対象物座標系で視線情報を出力する(ステップS116)。
【0066】
さらなる校正点を用いて校正を続ける場合には(ステップS114:Yes)、さらに3点目以降の各校正点を注視するように被験者50に指示して各校正点を注視している時の被験者50の眼球54の撮影情報(視線情報)を取得して(ステップS118、ステップS120)、従来の視線検出校正法を利用して対象物座標系で視線情報を出力する(ステップS122)ことが可能である。この時、n(n:3以上の整数)点目の校正にn−1点の校正点を用いた校正処理の結果を利用することができる。すなわち、被験者がn点目の校正点付近を注視してるのかをn−1の校正点を用いた校正処理結果を用いて確認することができる。
【0067】
(ハードウェア構成)
本実施形態に係る視線検出校正方法を実行するコンピュータ装置(例えば視線計測用コンピュータ装置18)は、一般的なコンピュータ装置と同様のハードウェア構成によって実現可能である。
図9は、本実施形態に係る視線検出校正方法を実行するコンピュータ装置のハードウェア構成の一例を示す図である。
図9に示されるコンピュータ装置3は、一例として、プロセッサ31と、RAM32と、ROM33と、内蔵のハードディスク装置34と、外付けハードディスク装置、CD、DVD、USBメモリ、メモリスティック、SDカード等のリムーバブルメモリ35と、他のコンピュータ装置と通信する通信インタフェース36と、ディスプレイ/タッチパネル37と、スピーカ38と、キーボード/キーパット39とを備える。上記説明された本実施形態の視線検出校正方法における各処理は、例えば、プロセッサ31が、ハードディスク装置34やROM33、リムーバブルメモリ35等にあらかじめ格納されたプログラムをRAM32等のメモリに読み出して実行することで実行されうる。なお、
図9に示されるハードウェア構成はあくまで一例であって、これに限定されるものではない。
【0068】
また、上記説明した本実施形態の視線検出校正システム1は、視線検出校正のための校正点を表示する表示部と、被験者の眼球を撮影することによって当該校正点の表示中における被験者の視線の動きを表す視線情報を取得する視線情報取得部と、を備え、表示部の画面上における座標系である対象物座標系の水平軸と、被験者の眼球を撮影する際の撮影面上における座標系であるカメラ座標系の水平軸と、を合致させておき、さらに、表示部に表示された第1の校正点のカメラ座標系の位置と、視線情報取得部にて取得された前記第1の校正点に対する被験者の視線の対象物座標系における位置と、を合致させることで、カメラ座標系における第1の校正点の位置と対象物座標系における第1の校正点の位置との水平方向および垂直方向における差分を算出する差分算出部と、差分算出部において算出された水平方向および垂直方向における当該差分に基づいて、視線情報を校正する校正部と、を備える視線検出校正システムであるとも言える。
【0069】
また、上記説明した本実施形態の視線検出校正システム1は、視線検出校正のための校正点を表示する表示部と、被験者の眼球を撮影することによって当該校正点の表示中における被験者の視線の動きを表す視線情報を取得する視線情報取得部と、を備え、表示部の画面上における座標系である対象物座標系の水平軸と、被験者の眼球を撮影する際の撮影面上における座標系であるカメラ座標系の水平軸と、を合致させておき、さらに、表示部に表示された第1の校正点のカメラ座標系の位置と、第1の校正点に対する被験者の視線の前記対象物座標系における位置と、を合致させ、かつ、表示部に表示された第2の校正点のカメラ座標系の位置と、第2の校正点に対する被験者の視線の対象物座標系における位置と、を合致させるためのカメラ座標系または対象物座標系の拡大率または縮小率と回転率とを算出する差分算出部と、算出された拡大率または縮小率と回転率とに基づいて、視線情報を校正する校正部と、を備える視線検出校正システムであるとも言える。
【0070】
ここまで、本発明の一実施形態について説明したが、本発明は上述の実施形態に限定されず、その技術的思想の範囲内において種々異なる形態にて実施されてよいことは言うまでもない。
【0071】
例えば、上述した実施形態においては、一例として、校正点提示用コンピュータ装置16に校正点を表示することとしたが、これに限定されるものではない。視線計測用コンピュータ装置18が校正点の提示位置データを保持することができれば、例えば、視線検出を行う部屋の壁にマグネット磁石のようなものを貼り付けてこれを校正点としてもよいし、紙に書かれた校正点を壁に貼り付ける等としてもよい。なお、この時の対象物座標系は、壁の表面上の座標系が該当する。
【0072】
本発明の範囲は、図示され記載された例示的な実施形態に限定されるものではなく、本発明が目的とするものと均等な効果をもたらすすべての実施形態をも含む。さらに、本発明の範囲は、各請求項により画される発明の特徴の組み合わせに限定されるものではなく、すべての開示されたそれぞれの特徴のうち特定の特徴のあらゆる所望する組み合わせによって画されうる。