(57)【特許請求の範囲】
【請求項１】
アイウェア端末のキャリブレーション時に、前記アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させるマーカ制御部と、
前記アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に前記注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算する演算処理部と、
複数の前記キャリブレーション点について演算された光軸ベクトルのばらつきを評価する評価部と、
を備える、情報処理装置。
【請求項２】
前記マーカ制御部は、前記注視点マーカを表示した状態で、予め設定された前記キャリブレーション点に順に移動させる、請求項１に記載の情報処理装置。
【請求項３】
前記マーカ制御部は、移動先の前記キャリブレーション点に近づくほど移動速度が遅くなるように前記注視点マーカを移動させる、請求項２に記載の情報処理装置。
【請求項４】
前記演算処理部は、
演算した現在の光軸ベクトルと、光軸ベクトルの履歴に基づき算出された光軸ベクトルの平均とのなす角が、所定の角度より大きいか否かを判定し、
前記なす角が所定の角度より大きい場合、演算した現在の前記光軸ベクトルを採用しない、請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記演算処理部は、
演算した現在の光軸ベクトルと、ユーザの瞳孔中心から前記注視点マーカが表示されているキャリブレーション点へのマーカベクトルとのなす角が所定の角度以下であるか否かに基づいて、演算した現在の光軸ベクトルのばらつきを判定し、
前記なす角が所定の角度より大きい場合、演算した現在の前記光軸ベクトルを採用しない、請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記演算処理部は、ユーザの左右の瞳孔の大きさの比が所定の値以上であるとき、演算した前記光軸ベクトルを採用しない、請求項５に記載の情報処理装置。
【請求項７】
前記マーカ制御部は、前記演算処理部により演算した前記光軸ベクトルが採用されないとき、前記注視点マーカの表示位置を表示領域の中央側へ移動させる、請求項４〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記評価部は、ユーザの瞳孔中心から前記注視点マーカが表示されているキャリブレーション点へのマーカベクトルと、演算された光軸ベクトルとの相関関係に基づいて、すべての前記キャリブレーション点において演算された光軸ベクトルのばらつきを判定する、請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記評価部により前記光軸ベクトルと前記マーカベクトルとの相関関係を表す相関係数が所定の閾値を下回ったとき、
前記マーカ制御部は、前記キャリブレーション点を表示領域の中央に寄せた位置に設定し、再度キャリブレーションを実行する、請求項８に記載の情報処理装置。
【請求項１０】
前記演算処理部は、対となる複数の光源から照射された光による輝点を検出する、請求項１〜９のいずれか１項に記載の情報処理装置。
【請求項１１】
情報処理装置により、
アイウェア端末のキャリブレーション時に、前記アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させること、
前記アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に前記注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算すること、
複数の前記キャリブレーション点について演算された光軸ベクトルのばらつきを評価すること、
とを含む、情報処理方法。
【請求項１２】
コンピュータを、
アイウェア端末のキャリブレーション時に、前記アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させるマーカ制御部と、
前記アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に前記注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算する演算処理部と、
複数の前記キャリブレーション点について演算された光軸ベクトルのばらつきを評価する評価部と、
を備える、情報処理装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
多様なコンテンツが表示される表示面に対するユーザの視線を検出し、検出された視線を各種の動作に利用する技術が提案されている。例えば、特許文献１には、ファインダーを覗き込むユーザの眼球に赤外帯域の光（赤外光）を照射し、その眼球からの反射光を検出器によって捉えることによりスルー画が表示される表示面に対するユーザの視線を検出するとともに、検出された視線を自動焦点調節（ＡＦ：Ａｕｔｏ  Ｆｏｃｕｓ）に利用する撮像装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−３３３２５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、ヘッドマウントディスプレイやメガネ型端末等のウェアラブル端末の開発が急速に進んでいる。このようなユーザが装着してディスプレイを見るようなウェアラブル端末においてもユーザの視線を検出する技術は重要であり、検出された視線は、例えば、端末の操作情報として利用されたり、自動焦点調節の情報として用いられたりする。特に、ウェアラブル端末においては、ユーザがストレスを感じることなく、視線検出の精度を向上させるためのキャリブレーションが行われることが望ましい。【０００５】
そこで、本開示では、ユーザがストレスを感じることなく、視線検出の精度を向上させるためのキャリブレーションを実行させることが可能な、新規かつ改良された情報処理装置、情報処理方法及びプログラムを提案する。
【課題を解決するための手段】
【０００６】
本開示によれば、アイウェア端末のキャリブレーション時に、アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させるマーカ制御部と、アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算する演算処理部と、複数のキャリブレーション点について演算された光軸ベクトルのばらつきを評価する評価部と、を備える、情報処理装置が提供される。【０００７】
また、本開示によれば、情報処理装置により、アイウェア端末のキャリブレーション時に、アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させること、アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算すること、複数のキャリブレーション点について演算された光軸ベクトルのばらつきを評価すること、とを含む、情報処理方法が提供される。【０００８】
さらに、本開示によれば、コンピュータを、アイウェア端末のキャリブレーション時に、アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させるマーカ制御部と、アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算する演算処理部と、複数のキャリブレーション点について演算された光軸ベクトルのばらつきを評価する評価部と、を備える、情報処理装置として機能させるプログラムが提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、ユーザがストレスを感じることなく、視線検出の精度を向上させるためのキャリブレーションを実行させることができる。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１０】
【図１】眼球の構造を示す説明図である。
【図２】本開示の一実施形態に係るアイウェア端末の、ユーザの眼と対向する側の構成を示す説明図である。
【図３】同実施形態に係るアイウェア端末が装着されたときの、ユーザの眼球とアイウェア端末との位置関係を示す概略側面図である。
【図４】同実施形態に係るアイウェア端末及び情報処理装置の機能構成を示す機能ブロック図である。
【図５】本実施形態に係る情報処理装置によるアイウェア端末のキャリブレーション処理を示すフローチャートである。
【図６】移動して表示される注視点マーカの一表示例を示す説明図である。
【図７】瞳孔角膜反射法を用いた光軸ベクトルの算出処理について説明するための説明図である。
【図８】マーカベクトルと光軸ベクトルとの関係を示す説明図である。
【図９】視線データを取得するキャリブレーション点の一例を示す説明図である。
【図１０】視線データを取得するキャリブレーション点の他の例を示す説明図である。
【図１１】光軸のばらつきの評価結果の一例を示すグラフである。
【図１２】マーカベクトル及び光軸ベクトルの座標を示す説明図である。
【図１３】キャリブレーション点の位置を変更を説明するための説明図である。
【図１４】光源から光が照射されたときに眼に現れる輝点の例を示す説明図である。
【図１５】同実施形態に係る情報処理装置のハードウェア構成を示すハードウェア構成図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１２】
なお、説明は以下の順序で行うものとする。
１．概要
２．アイウェア端末のハードウェア構成
３．機能構成
４．キャリブレーション処理
（１）注視点マーカ表示（Ｓ１００）
（２）視線データ取得（Ｓ１１０〜Ｓ１４０）
（３）評価（Ｓ１５０〜Ｓ１８０）
５．検出精度向上への対応
５．１．輝点のペアリング
５．２．注視点マーカ表示位置の動的変更
６．ハードウェア構成
【００１３】
＜１．概要＞
まず、図１を参照して、本開示の一実施形態に係る情報処理装置の概要について説明する。なお、図１は、眼球の構造を示す説明図である。
【００１４】
本実施形態に係る情報処理装置は、ディスプレイに対するユーザの視線を検出する際に、視線検出精度を向上させるために実行されるキャリブレーションを行う装置である。本実施形態では、瞳孔角膜反射法を用いてユーザの視線を検出する。瞳孔角膜反射法は、ユーザの眼球に対して光源から光を照射し、その光の角膜表面での反射光と瞳孔の位置とを検出して視線方向を推定する手法である。
【００１５】
ここで、ユーザの視線は、図１に示すように、眼球１０の水晶体１２の中央後面にある節点１２ａと中心窩１６ａとを結ぶ視軸ＡＳ上にある。一方、上述の瞳孔角膜反射法で推定される視線方向は、瞳孔１７の中心を通る角膜１４の法線上の光軸ＡＯにある。視軸ＡＳと光軸ＡＯとにはずれがあり、個人差にもよるが、一般には４〜８°程度傾向いている。このずれが大きくなると視線検出精度が低下するため、キャリブレーションを行い、ずれを補正する。
【００１６】
キャリブレーションは、以下の手順で行われる。
（手順１）視野内のある点（以下、「注視点」ともいう。）を見たときの光軸を推定
（手順２）角膜曲率中心から注視点への注視点ベクトルと推定された光軸のベクトルとの差分を測定
（手順３）（手順２）で測定した差分に基づき、任意の点を見たときの光軸より、そのときの視軸を推定
【００１７】
なお、眼球１０は筋肉の引っ張りにより回転するため、見る方向によってロール回転が加わる。このため、キャリブレーションのパラメータは、眼球１０の向きによって異なる。そこで、通常、視野内の複数（例えば、５点〜９点）の注視点においてパラメータは取得される。
【００１８】
このようなキャリブレーションにおいては、瞳孔表面での反射光の検出や光軸の推定に誤差がある。この誤差のばらつきを抑えることで、視線検出の精度を高めることが可能になる。そこで、本実施形態に係る情報処理装置では、誤差のばらつきを抑えるようにキャリブレーションを行う。この際、ユーザがストレスを感じることなく、キャリブレーションが実行されるように各種処理が行われる。以下、本実施形態に係る情報処理装置の構成とその機能について、詳細に説明する。
【００１９】
＜２．アイウェア端末のハードウェア構成＞
本実施形態に係る情報処理装置の説明に先立ち、図２及び図３に基づいて、本実施形態に係る情報処理装置によるキャリブレーションが行われるアイウェア端末１００のハードウェア構成を説明する。なお、図２は、アイウェア端末１００の、ユーザの眼と対向する側の構成を示す説明図である。図３は、アイウェア端末１００が装着されたときの、ユーザの眼球１０とアイウェア端末１００との位置関係を示す概略側面図である。
【００２０】
アイウェア端末１００は、ユーザが頭部に装着し、眼と表示部とを対向させた状態で使用される装置である。アイウェア端末１００は、例えば、ヘッドマウントディスプレイやメガネ型端末等である。本実施形態に係るアイウェア端末１００の、ユーザの眼と対向する側の面には、図２に示すように、右眼及び左眼に対応する位置に、それぞれ表示部１０２Ｒ、１０２Ｌが設けられている。本実施形態に係る表示部１０２Ｒ、１０２Ｌは、略長方形に形成されている。なお、筐体１０１には、表示部１０２Ｒ、１０２Ｌの間に、ユーザの鼻が位置する凹部１０１ａが形成されていてもよい。
【００２１】
表示部１０２Ｒの周囲には、４つの光源１０３Ｒａ、１０３Ｒｂ、１０３Ｒｃ、１０３Ｒｄが、表示部１０２Ｒの４つの辺の略中央にそれぞれ設けられている。同様に、表示部１０２Ｌの周囲には、４つの光源１０３Ｌａ、１０３Ｌｂ、１０３Ｌｃ、１０３Ｌｄが、表示部１０２Ｌの４つの辺の略中央にそれぞれ設けられている。これらの光源１０３Ｒａ〜１０３Ｒｄ、１０３Ｌａ〜１０３Ｌｄは、赤外光を発する光源からなる。各光源１０３Ｒａ〜１０３Ｒｄ、１０３Ｌａ〜１０３Ｌｄは、これらが設けられている表示部１０２Ｒ、１０２Ｌに対向しているユーザの眼球１０に対して、光を照射する。
【００２２】
また、表示部１０２Ｒ、１０２Ｌの周囲には、それぞれ、眼球１０を撮影する撮像部１０４Ｒ、１０４Ｌが設けられている。各撮像部１０４Ｒ、１０４Ｌは、例えば、図２に示すように、各表示部１０２Ｒ、１０２Ｌの下部（各表示部１０２Ｒ、１０２Ｌの下部に設けられた光源１０３Ｒｃ、１０３Ｌｃよりも下部側）に設けられる。撮像部１０４Ｒ、１０４Ｌは、図３に示すように、少なくとも撮影する眼球１０の瞳孔１７が撮影範囲に含まれるように配置される。例えば、撮像部１０４Ｒ、１０４Ｌは、所定の仰角θを有するように配置される。仰角θは、例えば約３０°としてもよい。
【００２３】
なお、アイウェア端末１００は、ユーザに装着されたとき、表示部１０２Ｒ、１０２Ｌがユーザの眼球１０から所定の距離だけ離れるように構成される。これにより、アイウェア端末１００を装着したユーザは、不快なく、表示部１０２Ｒ、１０２Ｌの表示領域を視野内に収めることができる。このとき、ユーザが眼鏡Ｇを装着している場合にも、その上から重ねてアイウェア端末１００を装着可能なように、表示部１０２Ｒ、１０２Ｌとユーザの眼球１０との距離を決定してもよい。撮像部１０４Ｒ、１０４Ｌは、この状態で、ユーザの眼球１０の瞳孔１７が撮影範囲に含まれるように配置される。
【００２４】
＜３．機能構成＞
次に、図４に基づいて、上述したアイウェア端末１００と、当該アイウェア端末１００のキャリブレーションを行う情報処理装置２００との機能構成を説明する。なお、図４は、アイウェア端末１００及び情報処理装置２００の機能構成を示す機能ブロック図である。
【００２５】
[３．１．アイウェア端末]
アイウェア端末１００は、図４に示すように、光源１１０と、撮像部１２０と、表示部１３０と、制御部１４０と、送受信部１５０とを備える。
【００２６】
光源１１０は、アイウェア端末１００を装着したユーザの眼球１０に対して光を照射する。光源１１０は、例えば赤外光を出射する光源であって、図２の光源１０３Ｒａ〜１０３Ｒｄ、１０３Ｌａ〜１０３Ｌｄに相当する。光源１１０は、制御部１４０の指示に基づき、光を出射する。
【００２７】
撮像部１２０は、アイウェア端末１００を装着したユーザの眼球１０を撮影する。撮像部１２０は、図２の撮像部１０４Ｒ、１０４Ｌに対応する。撮像部１２０は、制御部１４０の指示に基づき撮影を行い、撮影した撮像画像を制御部１４０に出力する。
【００２８】
表示部１３０は、情報を表示する出力部である。表示部１３０は、図２の表示部１０２Ｒ、１０２Ｌに相当する。表示部１３０は、例えば液晶ディスプレイや有機ＥＬディスプレイ、あるいは、投影装置により情報が表示されるレンズであってもよい。表示部１３０には、制御部１４０の指示により、情報が表示される。
【００２９】
制御部１４０は、アイウェア端末１００の機能全般を制御する。制御部１４０は、例えば光源１１０の点灯制御を行ったり、撮像部１２０の撮影制御を行ったり、表示部１３０に情報を表示させたりする。また、制御部１４０は、送受信部１５０を介して、情報処理装置２００との情報の送受信制御を行う。
【００３０】
送受信部１５０は、外部機器と情報の送受信を行うインタフェースである。本実施形態では、アイウェア端末１００は、情報処理装置２００と情報の送受信を行うことで、キャリブレーションが行われる。この際、アイウェア端末１００からは、撮像部１２０により撮影された撮像画像が送受信部１５０を介して情報処理装置２００へ送信される。また、情報処理装置２００から送信される、キャリブレーション時の光源１１０の点灯制御情報や、撮像部１２０に撮影を行わせる撮影制御情報、表示部１３０に表示させる表示情報等は、送受信部１５０を介して受信される。
【００３１】
[３．２．情報処理装置]
次に、情報処理装置２００は、図４に示すように、送受信部２１０と、マーカ制御部２２０と、演算処理部２３０と、記憶部２４０と、評価部２５０とを備える。
【００３２】
送受信部２１０は、外部機器と情報の送受信を行うインタフェースである。本実施形態において、送受信部２１０は、アイウェア端末１００と、キャリブレーションを実行させるための情報の送受信を行う。この際、送受信部２１０は、キャリブレーション時の光源１１０の点灯制御情報や、撮像部１２０に撮影を行わせる撮影制御情報、表示部１３０に表示させる表示情報等を、アイウェア端末１００へ送信する。また、送受信部２１０は、アイウェア端末１００から、撮像部１２０により撮影された撮像画像等を受信する。
【００３３】
マーカ制御部２２０は、キャリブレーション時にアイウェア端末１００の表示部１３０に表示される注視点マーカの表示制御を行う。注視点マーカは、ユーザの光軸と視軸とのずれを測定するために表示領域に表示されるオブジェクトである。表示された注視点マーカにユーザの視線を向けさせることで、ユーザの瞳孔中心から注視点マーカへのベクトル（以下、「マーカベクトル」ともいう。）を得ることができ、また、そのときのユーザの光軸も推定される。
【００３４】
マーカ制御部２２０は、表示領域内の複数の位置においてユーザの視線データが取得されるように、注視点マーカを所定の位置（以下、「キャリブレーション点」ともいう。）に順次表示させる。マーカ制御部２２０は、注視点マーカが表示されているキャリブレーション点において所定数の視線データが取得されると、当該注視点マーカを次のキャリブレーション点に移動させるという処理を繰り返し、すべてのキャリブレーション点においてユーザの視線データを取得させる。
【００３５】
このとき、マーカ制御部２２０は、注視点マーカを表示させた状態で、各キャリブレーション点間で注視点マーカを移動させる。これにより、ユーザは注視点マーカを追うように視線を移動させるので、断続的に注視点マーカを表示させる場合と比較して、キャリブレーション点に表示された注視点マーカを探す時間も不要となり、注視点マーカに向けられる視線の動きも安定させることができる。
【００３６】
また、マーカ制御部２２０は、キャリブレーション点間を移動する注視点マーカの移動速度を制御してもよい。注視点マーカを一定の速度で移動させると、注視点マーカが移動先のキャリブレーション点に表示されたときの視線が定まりにくいという傾向がある。そこで、マーカ制御部２２０は、キャリブレーション点間を移動する注視点マーカの移動速度を、移動先のキャリブレーション点に近づくほど遅くするように制御してもよい。これにより、注視点マーカは、移動開始直後は早く移動するが、移動先のキャリブレーション点に近づくにつれて動きが遅くなる。ユーザの視線は注視点マーカの移動速度に伴って動くので、注視点マーカが移動先のキャリブレーション点に近づくとユーザの視線の動きも緩やかになり、注視点マーカがキャリブレーション点に表示されたときに視線を定めやすくすることができる。
【００３７】
演算処理部２３０は、各キャリブレーション点に注視点マーカを表示させたときの、ユーザの光軸及びマーカベクトルをそれぞれ演算する。演算処理部２３０は、アイウェア端末１００から、ユーザの眼球に対して光源から光が照射された状態で、注視点マーカを注視するユーザの眼を撮影した撮影画像を取得し、ユーザの光軸及びマーカベクトルを演算する。演算された光軸及びマーカベクトルは、キャリブレーション点毎に記憶部２４０に記憶される。
【００３８】
記憶部２４０は、アイウェア端末１００のキャリブレーション時に必要な各種情報を記憶する。記憶部２４０は、例えば、注視点マーカを表示させるキャリブレーション点の位置や注視点マーカをどのように移動させるかを規定した移動情報、各キャリブレーション点において取得する視線データの数、キャリブレーションの終了判定に用いる閾値等の設定情報が記憶される。また、記憶部２４０は、演算処理部２３０により演算された視線データが記憶される。
【００３９】
評価部２５０は、アイウェア端末１００のキャリブレーションの終了判定を行う。評価部２５０は、各キャリブレーション点において推定されたユーザの光軸のばらつきが許容範囲内であるか否かを判定することで、正しくキャリブレーションできたか否かを判定する。この判定処理の詳細については後述する。評価部２５０の判定結果より、ユーザの光軸のばらつきが所定範囲内に収まっていないと判定された場合には、キャリブレーションの条件を変更して、再度キャリブレーションが実行される。
【００４０】
以上、アイウェア端末１００及び情報処理装置２００の機能構成について説明した。なお、図４では、キャリブレーション処理を行う情報処理装置２００はアイウェア端末１００とは別体として示したが、本開示はかかる例に限定されない。例えば、図３に示した情報処理装置２００の機能の一部または全部をアイウェア端末１００に搭載させてもよい。
【００４１】
＜４．キャリブレーション処理＞
次に、図５〜図１４に基づいて、本実施形態に係る情報処理装置２００によるアイウェア端末１００のキャリブレーション処理について説明する。なお、図５は、本実施形態に係る情報処理装置２００によるアイウェア端末１００のキャリブレーション処理を示すフローチャートである。図６は、移動して表示される注視点マーカの一表示例を示す説明図である。図７は、瞳孔角膜反射法を用いた光軸ベクトルの算出処理について説明するための説明図である。図８は、マーカベクトルと光軸ベクトルとの関係を示す説明図である。図９は、視線データを取得するキャリブレーション点の一例を示す説明図である。図１０は、視線データを取得するキャリブレーション点の他の例を示す説明図である。図１１は、光軸のばらつきの評価結果の一例を示すグラフである。図１２は、マーカベクトル及び光軸ベクトルの座標を示す説明図である。図１３は、キャリブレーション点の位置を変更を説明するための説明図である。図１４は、光源から光が照射されたときに眼に現れる輝点の例を示す説明図である。
【００４２】
（１）注視点マーカ表示（Ｓ１００）
本実施形態に係る情報処理装置２００によるアイウェア端末１００のキャリブレーション処理は、表示部１３０に注視点マーカを表示し、ユーザの視線を注視点マーカに向けさせることから開始する（Ｓ１００）。注視点マーカの表示制御は、情報処理装置２００のマーカ制御部２２０の指示を受けて、制御部１４０により行われる。キャリブレーションでは、表示部１３０の表示領域内の複数位置においてユーザの視線データを取得する。視線データを取得する位置であるキャリブレーション点に注視点マーカを表示させることで、ユーザに意図的に視線を注視点マーカに向けさせ、視線データを取得することが可能となる。
【００４３】
注視点マーカは、表示部１３０の表示領域３００内に予め設定された複数のキャリブレーション点に順に表示される。注視点マーカＭは、例えば図６に示すように、まず、表示領域３００中央のキャリブレーション点ＣＰ１に表示される。注視点マーカＭがキャリブレーション点ＣＰ１に表示されると、ユーザは視線を注視点マーカＭに向ける。注視点マーカＭを表示させた状態とすることでユーザの視線をキャリブレーション点ＣＰ１に固定することができ、この状態で視線データが取得される。
【００４４】
キャリブレーション点ＣＰ１での視線データが取得されると、注視点マーカＭは、表示されたまま次の視線データの取得位置である表示領域３００左上のキャリブレーション点ＣＰ２に移動される。そして、キャリブレーション点ＣＰ２での視線データが取得される。その後、表示領域３００右上のキャリブレーション点ＣＰ３、表示領域３００左下のキャリブレーション点ＣＰ４、表示領域３００右下のキャリブレーション点ＣＰ５にて、視線データの取得と移動とが繰り返し行われる。
【００４５】
ステップＳ１００では、最初のキャリブレーション点に注視点マーカＭを表示させ、キャリブレーション処理を開始させる。
【００４６】
（２）視線データ取得（Ｓ１１０〜Ｓ１４０）
ステップＳ１００にて最初のキャリブレーション点に注視点マーカＭが表示されると、そのキャリブレーション点におけるユーザの視線データが取得される（Ｓ１１０）。視線データは、推定されたユーザの視線方向を表す光軸ベクトルと、ユーザの瞳孔中心から注視点マーカへのマーカベクトルとを含む。
【００４７】
（光軸ベクトルの演算）
光軸ベクトルは、例えば瞳孔角膜反射法を用いて推定される。ここで、図７に基づいて、瞳孔角膜反射法を用いた光軸の推定処理について説明する。瞳孔角膜反射法では、表示部の表示面２３を観察するユーザの眼球１０に対して光源２１から光を照射し、撮像部２２により光が照射された眼球１０を撮影する。そして、撮像部２２により撮影された撮影画像３０に基づき、光軸が推定される。ここでは説明を簡単にするため、１つの光源２１により眼球１０を照射した場合を説明する。
【００４８】
図７に示すように、ユーザは、表示面２３に表示されている注視点マーカＭを注視しているとする。このとき、光源２１により眼球１０に対して光を照射し、撮像部２２により眼球１０を撮影する。取得された眼球１０の撮影画像３０には、図７に示すように、ユーザの眼球１０の角膜１４、虹彩１３及び瞳孔１７が撮影されている。また、撮影画像３０では、光源２１から眼球１０に照射された照射光の輝点であるプルキニエ像（Ｐｕｒｋｉｎｊｅ  Ｉｍａｇｅ）Ｐが撮影されている。
【００４９】
撮影画像３０が取得されると、光軸の算出処理が行われる。光軸の算出処理は、演算処理部２３０により行われる。このため、まず、撮影画像３０から瞳孔中心Ｓ及びプルキニエ像Ｐが検出される。これらの検出処理は、公知の画像認識技術により行うことができる。
【００５０】
例えば、瞳孔１７の像の検出処理においては、撮影画像３０に対する各種の画像処理（例えば歪みや黒レベル、ホワイトバランス等の調整処理）、撮影画像３０内の輝度分布を取得する処理等が行われる。また、取得された輝度分布に基づいて瞳孔１７の像の輪郭（エッジ）を検出する処理や、検出された瞳孔１７の像の輪郭を円又は楕円等の図形で近似する処理等が行われてもよい。検出された瞳孔１７の像より、瞳孔中心Ｓを求めることができる。
【００５１】
また、プルキニエ像Ｐの検出処理においては、撮影画像３０に対する各種の画像処理、撮影画像３０内の輝度分布を取得する処理、当該輝度分布に基づいて周囲の画素との輝度値の差が比較的大きい画素を検出する処理等の一連の処理が行われてもよい。また、検出されたプルキニエ像Ｐから、プルキニエ像Ｐの中心を検出してもよい。
【００５２】
次いで、瞳孔中心Ｓ及び角膜１４の曲率中心点Ｃの３次元座標が算出される。角膜１４の曲率中心点Ｃは、角膜１４を球の一部とみなした場合の当該球の中心である。瞳孔中心Ｓの３次元座標は、撮影画像３０から検出された瞳孔１７の像に基づいて算出される。具体的には、撮像部２２と眼球１０との位置関係、角膜１４表面における光の屈折、角膜１４の曲率中心点Ｃと瞳孔中心Ｓとの距離等に基づき、撮影画像３０における瞳孔１７の像の輪郭上の各点の３次元座標が算出される。これらの座標の中心点が、瞳孔中心Ｓの３次元座標とされる。
【００５３】
また、角膜１４の曲率中心点Ｃは、撮影画像３０から検出されたプルキニエ像Ｐ及びその中心に基づいて算出される。具体的には、光源２１と撮像部２２と眼球１０との位置関係、角膜１４の曲率半径等に基づき、撮像部２２とプルキニエ像Ｐの中心とを結ぶ直線上において、角膜１４の表面から眼球１０の内部に向かって角膜１４の曲率半径だけ進んだ位置が、角膜１４の曲率中心点Ｃの３次元座標として算出される。
【００５４】
このように算出された角膜１４の曲率中心点Ｃと瞳孔中心Ｓとを結ぶ直線が、推定された光軸となる。すなわち、光軸と表示面２３とが交差する位置の座標が、推定されたユーザの視線位置となる。なお、角膜１４の曲率中心点Ｃから瞳孔中心Ｓに向かうベクトルを光軸ベクトルｖｏとする。
【００５５】
（マーカベクトルの演算）
一方、ユーザの瞳孔中心Ｓから注視点マーカＭへのマーカベクトルは、上述のように撮影画像３０から特定された瞳孔中心Ｓから、現在注視点マーカＭが表示されている表示面２３上の位置に向かうベクトルとして算出することができる。
【００５６】
このように、ステップＳ１１０では、光軸ベクトル及びマーカベクトルが視線データとして演算処理部２３０により演算され、取得される。取得した視線データは、記憶部２４０に記憶される。
【００５７】
（検出結果のばらつき抑制）
ここで、演算処理部２３０は、演算した光軸ベクトルｖｏがキャリブレーションの検出結果として使用可能な情報であるか否かを判定してもよい。
【００５８】
具体的には、例えば、光軸ベクトルｖｏのぶれが所定の範囲内にあるか否かを判定し、演算した光軸ベクトルｖｏがこれまで取得された光軸ベクトルｖｏから大きく外れたものでないことを確認してもよい。演算処理部２３０により演算された光軸ベクトルｖｏは、記憶部２４０に履歴として記憶されている。これを用いて、演算処理部２３０は、例えば、今回演算分を含めた過去Ｎ回に取得した光軸ベクトルの平均ｖｏ＿ａｖｅと今回の光軸ベクトルｖｏとのなす角が所定値以内にあることを確認する。そして、光軸ベクトルの平均ｖｏ＿ａｖｅと今回の光軸ベクトルｖｏとのなす角が所定の閾値を超えたとき、今回演算された光軸ベクトルｖｏはぶれが大きいとして、キャリブレーションの検出結果として用いないようにする。これにより、光軸ベクトルの精度を高めることができる。
【００５９】
光軸ベクトルの平均ｖｏ＿ａｖｅは、例えば過去３回の光軸ベクトルｖｏを用いて算出してもよい。また、光軸ベクトルの平均ｖｏ＿ａｖｅと今回の光軸ベクトルｖｏとのなす角を判定するための閾値は、例えば３°程度としてもよい。この閾値は、検出のぶれを加味して決定される。かかる判定により、例えば図８に示すように、推定されたユーザの視線位置ｍ１、ｍ２、ｍ３があったとき、視線位置ｍ３のように他のものから外れているものを検出結果から除外することができる。また、ユーザが注視点マーカＭを見ていないときに撮影された撮影画像から光軸ベクトルｖｏが演算された場合にも、演算された光軸ベクトルｖｏは、光軸ベクトルの平均ｖｏ＿ａｖｅから大きく外れるものとなる。このようなものも、当該判定により検出結果から除外することができる。
【００６０】
また、演算処理部２３０は、例えば、演算したマーカベクトルｖｍと光軸ベクトルｖｏとのなす角ωが所定値以下であるか否かを判定してもよい。かかる判定により、推定された光軸ベクトルｖｏが、実際の視線方向から大きくずれていないかを確認することができる。ここで用いる閾値の値は、光軸と視軸とのずれや光軸の検出誤差等を考慮して決定される。
【００６１】
例えば、推定されたユーザの視線方向（すなわち、光軸）と、実際にユーザが見ている方向（すなわち、視軸）とは必ずしも一致しない。これは、眼球の形状や大きさ、眼球における網膜や視神経の配置等に起因する。個人差もあるが、光軸と視軸とは通常４〜８°ずれている。また、光軸の検出誤差は数°、例えば±３°ほど存在すると考えられる。これらの誤差にその他の蓄積誤差±１°を加味すると、０〜１２°程度の誤差の発生が想定される。この場合、演算したマーカベクトルと光軸ベクトルとのなす角ωが０〜１２°の範囲内にあれば、演算した光軸ベクトルｖｏの精度は許容できるものとして、キャリブレーションの検出結果として用いるようにしてもよい。
【００６２】
このような判定処理を行うことで、検出結果のばらつきを抑制することができ、光軸ベクトルの精度を高めることができる。
【００６３】
（誤検出判定）
さらに、上述した検出結果のばらつきを抑制するための判定をクリアした場合であっても、瞳孔や輝点が誤った場所を検出し続けることもある。誤った検出結果を用いると、正しくキャリブレーション処理を行うことができない。そこで、演算処理部２３０は、このような誤った検出結果をキャリブレーションの検出結果として用いないようにする誤検出判定処理を行ってもよい。例えば、演算された左右の瞳孔の大きさが極端に異なる場合には、瞳孔として誤った場所を認識している可能性が高い。このような場合に取得された視線データは検出結果として用いないようにする。具体的には、例えば左右の瞳孔のサイズ比が所定の値（例えば１．２）を超えた場合には、左右の瞳孔の大きさが極端に異なるとして、取得された視線データは検出結果として用いないようにしてもよい。
【００６４】
以上の処理が行われると、演算処理部２３０は、現在注視点マーカＭが表示されているキャリブレーション点における視線データが取得されたか否かを判定する（Ｓ１２０）。例えば、過去のデータから光軸ベクトルｖｏにぶれがあると判定した場合や、マーカベクトルｖｍと光軸ベクトルｖｏとのなす角ωが許容範囲内にない場合等、正しい結果が得られなかった場合には、再度眼球１０を撮影し、視線データを取得する。
【００６５】
一方、現在注視点マーカＭが表示されているキャリブレーション点における視線データが取得された場合には、演算処理部２３０は、すべてのキャリブレーション点について視線データが取得されたか否かを判定する（Ｓ１３０）。視線データを取得するキャリブレーション点は、記憶部２４０に予め記憶されている。演算処理部２３０は、視線データが取得されていないキャリブレーション点がある場合には、マーカ制御部２２０に対して、注視点マーカＭを次のキャリブレーション点へ移動させるよう指示する（Ｓ１４０）。マーカ制御部２２０は、予め設定されている次のキャリブレーション点へ注視点マーカＭを移動させる指示を、送受信部２１０を介してアイウェア端末１００へ出力する。
【００６６】
（注視点マーカの移動処理）
注視点マーカＭは、ユーザの視線を向けさせるために表示させるものである。ここで、ユーザの視線データを短時間で正しく取得できるように、注視点マーカＭの表示制御が行われる。
【００６７】
まず、注視点マーカＭは、表示された状態で、各キャリブレーション点間を移動する。これにより、ユーザは注視点マーカを追うように視線を移動させるので、断続的に注視点マーカＭを表示させる場合と比較して、キャリブレーション点に表示された注視点マーカＭを探す時間も不要となり、注視点マーカに向けられる視線の動きも安定させることができる。
【００６８】
そして、キャリブレーション点間を移動する注視点マーカＭの移動速度を変化させる。注視点マーカＭを一定の速度で移動させると、注視点マーカＭが移動先のキャリブレーション点に表示されたときの視線が定まりにくいという傾向がある。そこで、マーカ制御部２２０は、キャリブレーション点間を移動する注視点マーカＭの移動速度を、移動先のキャリブレーション点に近づくほど遅くするように制御する。これにより、注視点マーカＭは、移動開始直後は早く移動するが、移動先のキャリブレーション点に近づくにつれて動きが遅くなる。ユーザの視線は注視点マーカの移動速度に伴って動くので、注視点マーカＭが移動先のキャリブレーション点に近づくとユーザの視線の動きも緩やかになり、注視点マーカＭがキャリブレーション点に表示されたときに視線を定めやすくすることができる。
【００６９】
また、表示領域３００において視線データを取得するキャリブレーション点は、通常、ユーザが正面を向いたときに見る位置である表示領域３００の中央と、視軸と光軸とのずれが大きくなり易い表示領域３００の周縁部近辺に設定される。キャリブレーション点は、通常、視野内に複数点（例えば、５〜９点）設定される。これらの位置でキャリブレーションを行うことで、表示領域３００全体として見え方が均一となるように補正処理を行うことができる。具体的には、例えば図９に示すように、矩形の表示領域３００の中央（キャリブレーション点ＣＰ１）と、四隅（キャリブレーション点ＣＰ２〜ＣＰ５）とにおいて、キャリブレーションを行ってもよい。あるいは、図１０に示すように、矩形の表示領域３００の中央（キャリブレーション点ＣＰ１）と、各辺の中心近辺（キャリブレーション点ＣＰ２〜ＣＰ５）とにおいて、キャリブレーションを行ってもよい。
【００７０】
ここで、注視点マーカＭを各キャリブレーション点に移動させるとき、なるべく移動距離が大きくなるように注視点マーカＭの移動順序を決定してもよい。ユーザは、注視点マーカＭの動きに伴い視線を移動させるが、注視点マーカＭの移動距離が小さいと、次のキャリブレーション点に表示された注視点マーカＭに視線を合わせにくく、視軸と光軸とのずれが大きくなる。また、注視点マーカＭを表示領域３００の水平方向に移動させた場合にも視軸と光軸とのずれが大きくなりやすいので、上下や斜め等、上下方向への移動も含むように注視点マーカＭを移動させてもよい。
【００７１】
例えば、図９に示した表示領域３００の中央及び四隅に設定された５つのキャリブレーション点ＣＰ１〜ＣＰ５において視線データを取得するときには、中央のキャリブレーション点ＣＰ１を表示した後、四隅のキャリブレーション点ＣＰ２〜ＣＰ５をジクザグに移動させてもよい。また、図１０に示した表示領域３００の中央及び各辺の中心近辺に設定された５つのキャリブレーション点ＣＰ１〜ＣＰ５において視線データを取得するときには、例えば、まず、各辺の中心近辺のキャリブレーション点ＣＰ１〜ＣＰ４をひし形の軌跡を描くように順に表示させる。その後、中央のキャリブレーション点ＣＰ１を表示させるようにしてもよい。
【００７２】
図５の説明に戻り、ステップＳ１４０にて注視点マーカＭが次のキャリブレーション点へ移動されると、移動先のキャリブレーション点での視線データの取得が行われる（Ｓ１１０）。その後、すべてのキャリブレーション点において視線データの取得が完了するまで、ステップＳ１１０〜Ｓ１４０の処理が繰り返し実行される。
【００７３】
（３）評価（Ｓ１５０〜Ｓ１８０）
すべてのキャリブレーション点において視線データが取得されると、評価部２５０により、キャリブレーションの完了判定が行われる。本実施形態では、キャリブレーションの完了判定は、推定された光軸ベクトルｖｏの全体としてのばらつきが許容範囲内か否かを判定することにより行われる。
【００７４】
ステップＳ１１０にて演算された各キャリブレーション点における光軸ベクトルｖｏは、正しくキャリブレーションが行われると、表示領域３００でのキャリブレーション点の表示位置に対応した値となる。ここで、図９に示したキャリブレーション点ＣＰ１〜ＣＰ５でキャリブレーションを行った時の光軸ベクトルｖｏの検出結果の一例を図１１に示す。図１１は、光軸ベクトルｖｏの上下方向の角度θと、光軸ベクトルｖｏの水平方向の角度ωとの関係を表している。なお、本実施形態において、光軸ベクトルｖｏは、図１２に示す座標軸に基づき規定している。図１２の座標軸において、ｘ軸は表示領域３００の水平方向、ｙ軸は表示領域３００の上下方向、ｚ軸は表示領域３００の奥行き方向を表している。角度θは光軸ベクトルｖｏとｚｘ平面とのなす角であり、角度ωは光軸ベクトルｖｏとｘｙ平面とのなす角となる。
【００７５】
図１１上側には、キャリブレーションが正しく行われたときの光軸ベクトルｖｏの分布を示し、図１１下側には、キャリブレーションが正しく行われなかったときの光軸ベクトルｖｏの分布を示している。図１１上側より、キャリブレーションが正しく行われたときには、表示領域３００の中央及び四隅に設定された各キャリブレーション点の位置に対応して、光軸ベクトルｖｏはきれいに分かれて分布する。
【００７６】
一方、図１１下側に示すように、キャリブレーションが正しく行われなかったときには、表示領域３００の右上、左上、及び中央のキャリブレーション点に対応する光軸ベクトルｖｏの上下方向の角度θが略同一になる等、きれいに分布しない。このような分布は、特に、ハードコンタクトレンズの装着者や、薄目、細目のユーザで発生しやすい。
【００７７】
そこで、本実施形態では、評価部２５０により、全体としての光軸ベクトルｖｏのばらつきを評価するための評価値として、マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数を算出し（Ｓ１５０）、相関係数の値からキャリブレーションの完了判定を行う。マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数ｒｘｙは、例えば下記式（１）により求めることができる。
【００７８】
【数１】
0006601417.tif 000002
【００７９】
なお、ｉは各キャリブレーション点に付された番号であり、１〜ｎの値を取る。キャリブレーション点が５つ設定されている場合には、ｎは５となる。また、ｘｉ、ｙｉは光軸ベクトルｖｏのｘ座標およびｙ座標であり、ｘ￣、ｙ￣はマーカベクトルｖｍのｘ座標およびｙ座標である。なお、ｘ￣、ｙ￣は、ｘ、ｙの上に￣が添えられているものとする。
【００８０】
上記式（１）では、すべてのキャリブレーション点におけるマーカベクトルｖｍと光軸ベクトルｖｏとの、上下方向の角度θと水平方向の角度ωとの差を評価している。１または複数のキャリブレーション点においてマーカベクトルｖｍと光軸ベクトルｖｏとが一致せず、これらの角度のずれが大きくなると、式（１）により算出される相関係数ｒｘｙは小さくなる。評価部２５０は、このようなマーカベクトルｖｍと光軸ベクトルｖｏとの相関関係を表す相関係数ｒｘｙを用いて、キャリブレーションの完了判定を行う（Ｓ１６０）。
【００８１】
キャリブレーションの完了判定は、ステップＳ１５０にて算出されたマーカベクトルｖｍと光軸ベクトルｖｏとの相関係数ｒｘｙが所定の閾値ｒｔｈを下回ったか否かにより行ってもよい。閾値ｒｔｈは、例えば０．９０としてもよい。ステップＳ１６０にて、マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数ｒｘｙが閾値ｒｔｈ以上であった場合、評価部２５０は、全体としての光軸ベクトルｖｏのばらつきは許容範囲内であるとして、キャリブレーション処理を完了する（Ｓ１７０）。
【００８２】
一方、マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数ｒｘｙが閾値ｒｔｈを下回った場合には、キャリブレーションの設定情報を変更してキャリブレーションの仕方を変更し（Ｓ１８０）、再度キャリブレーションを実施する。キャリブレーションの設定情報とは、例えば注視点マーカＭの表示位置等である。例えば、注視点マーカＭの表示位置を表示領域の中央に寄せる等、キャリブレーション点の設定を変更し、再度キャリブレーションを実行してもよい。
【００８３】
例えば、図１３に示すように、表示領域３００に対して、表示領域３００を所定の割合αだけ縮小した領域に基づき、キャリブレーション点が設定されるとする。このとき、キャリブレーション点の位置のデフォルト値を、例えば、表示領域３００の中央と、表示領域の９０％の大きさの領域の四隅としたとする。キャリブレーション点をデフォルトの位置に設定してキャリブレーションを実行したときに、マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数ｒｘｙが閾値ｒｔｈを下回った場合には、キャリブレーション点の位置を表示領域の中央に寄せる。例えば、四隅のキャリブレーション点の位置を、表示領域の８０％の大きさの領域の四隅に設定する。このようにキャリブレーション点の位置を表示領域の中央に寄せることで、ユーザが注視点マーカを見やすくなり、正しい視線データを取得しやすくすることができる。
【００８４】
以上、本実施形態に係る情報処理装置２００によるアイウェア端末１００のキャリブレーション処理について説明した。本実施形態によれば、複数のキャリブレーション点において視線データを取得する際に、ユーザの視線を向けさせるために表示される注視点マーカＭを、表示したまま、各キャリブレーション点を移動させる。このとき、注視点マーカＭの移動速度を、次のキャリブレーション点の位置に近づくにつれて遅くすることで、ユーザの視線を注視点マーカＭに精度よく追従させることができる。
【００８５】
また、本実施形態に係るキャリブレーション処理では、各キャリブレーション点における光軸ベクトルｖｏを取得する際に、過去に取得された光軸ベクトルに基づき光軸のぶれの有無を判定したり、マーカベクトルｖｍと光軸ベクトルｖｏとのずれを判定したりする。これにより、ユーザが注視点マーカＭを見ていないときに取得された視線データを、キャリブレーションの検出結果として利用しないようにすることができ、視線検出処理の精度を低下させないようにすることができる。
【００８６】
さらに、本実施形態に係るキャリブレーション処理では、各キャリブレーション点において取得された光軸ベクトルｖｏから、全体としての光軸ベクトルｖｏのばらつきを評価するための評価値として、マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数を算出する。この相関係数が所定の閾値以上であるか否かを判定することで、視野内全体として視線検出処理を精度よく行うことができるか否かを評価することができる。これにより、ユーザが表示領域のどの位置を見ても、検出される光軸ベクトルｖｏの精度を安定して維持することができる。
【００８７】
このような処理により、ユーザは注視点マーカＭに視線を向けるだけでキャリブレーション処理を完了させることができる。注視点マーカＭは、ユーザが視線を向けやすいように表示、移動される。また、光軸ベクトルｖｏが取得されない場合にも、自動的に光軸ベクトルｖｏが取得できるようにキャリブレーション点が調整されるため、ユーザは、ストレスを感じることなく、キャリブレーション処理を完了させることができる。
【００８８】
＜５．検出精度向上への対応＞
キャリブレーション処理においては、ユーザがハードコンタクトレンズを装着している場合や、ユーザの眼が細い場合等において、検出された光軸ベクトルｖｏにばらつきが生じやすい傾向がある。ユーザがハードコンタクトレンズを装着していると、瞳孔が歪んだり、光源から照射された光による眼球上の輝点が光源の数以上に検出されたり、コンタクトレンズが角膜上で動いたりするためである。また、ユーザの眼が細い場合には、撮影画像から特定される瞳孔が欠けていたり、光源の数と同数だけ検出されるはずの輝点が光源の数だけ検出されなかったりする。そこで、ユーザの光軸ベクトルｖｏを正しく検出するために、さらに以下のような処理を行ってもよい。
【００８９】
［５．１．輝点のペアリング］
ユーザの光軸ベクトルｖｏを正しく検出するために、例えば、撮影画像から特定された輝点についてペアリング処理を行ってもよい。本実施形態に係るアイウェア端末１００には、図２に示したように、表示部１０２Ｒ、１０２Ｌの周囲には、それぞれ４つの光源１０３Ｒａ〜１０３Ｒｄ、１０３Ｌａ〜１０３Ｌｄが設けられている。これらの光源１０３Ｒａ〜１０３Ｒｄ、１０３Ｌａ〜１０３Ｌｄから左右の眼球１０に光がそれぞれ照射されると、各眼には図１４に示すように４つの輝点Ｐａ、Ｐｂ、Ｐｃ、Ｐｄがそれぞれ現れる。
【００９０】
図２に示すように光源１０３Ｒａ〜１０３Ｒｄ、１０３Ｌａ〜１０３Ｌｄが配置されていると、これらの光源から出射された光により、眼球１０には、その配置に対応して輝点Ｐａ、Ｐｂ、Ｐｃ、Ｐｄが検出される。しかし、上述したように、ユーザがハードコンタクトレンズを装着している場合や、ユーザの眼が細い場合には、４つの輝点Ｐａ、Ｐｂ、Ｐｃ、Ｐｄ以上の輝点が検出されたり、４つの輝点が検出されなかったりする。
【００９１】
そこで、上下方向に対向する輝点Ｐａ、Ｐｃと、水平方向に対向する輝点Ｐｂ、Ｐｄとを、それぞれペアとする。そして、ペアとした輝点に対応する光源の位置関係に基づき、１つの輝点を検出したときに、もう１つの輝点の位置を推定することが可能となる。例えば、輝点Ｐａが検出されれば、輝点Ｐｃが検出できなくとも、輝点Ｐａの下方の所定の位置に輝点Ｐｃがあることを推定することができる。また、光源の数よりも輝点が多く検出された場合にも、輝点に対応する光源の位置関係に基づき、多数検出された輝点からペアとなる輝点を特定することが可能である。
【００９２】
このように、光源の配置により輝点のペアを設定することで、撮影画像から正しく輝点が検出できない場合にも、おおよその輝点の位置を推定することが可能となり、光軸ベクトルｖｏの検出精度を向上させることができる。
【００９３】
［５．２．注視点マーカ表示位置の動的変更］
また、ユーザの光軸ベクトルｖｏを正しく検出するために、注視点マーカＭを動的に移動させるようにしてもよい。表示領域３００においてユーザが視線を向けることが難しい位置に注視点マーカＭが表示されたとき、検出された光軸ベクトルｖｏはマーカベクトルｖｍからのずれが大きくなることが想定される。このような場合、同一のキャリブレーション点に注視点マーカＭを表示させ続けても、光軸ベクトルｖｏとマーカベクトルｖｍとのずれは小さくなることはない。
【００９４】
そこで、例えば所定時間内にそのキャリブレーション点における光軸ベクトルｖｏを取得できなかった場合には、注視点マーカＭの表示位置を表示領域３００の中央に寄せて、再度光軸ベクトルｖｏを取得する処理を実行させる。注視点マーカＭを移動させる時間は、例えばキャリブレーション点に注視点マーカＭが表示されてから数秒（例えば３秒）経過後、等としてもよい。
【００９５】
注視点マーカＭの移動は、例えば表示領域３００の中心に向かって、表示領域３００の中心から現在のキャリブレーション点までの距離に対して所定の割合だけ近づけてもよい。あるいは、水平方向において、表示領域３００の中央に向かって、表示領域３００の水平方向中央から現在のキャリブレーション点までの水平方向距離に対して所定の割合だけ近づけてもよい。注視点マーカＭを近づける所定の割合は、例えば１０％程度としてもよい。これにより、ユーザが正面を向いた状態から視線を移動させる距離は小さくなり、ユーザは視線を注視点マーカＭに向けやすくなるので、光軸ベクトルｖｏとマーカベクトルｖｍとのずれが小さくなることが期待できる。
【００９６】
注視点マーカＭの移動は、例えば光軸ベクトルｖｏが取得されるまで行うようにしてもよい。例えば、所定時間光軸ベクトルｖｏの取得を行い、時間内に取得されなかった場合には、所定の割合だけさらに注視点マーカＭを移動させ、再度光軸ベクトルｖｏの取得を行う、という処理を繰り返す。そして、光軸ベクトルｖｏが取得されたときには、例えば、それ以降のキャリブレーション点での光軸ベクトルｖｏの取得時には、今回光軸ベクトルｖｏが取得されたときの割合だけキャリブレーション点の位置を移動させた位置に注視点マーカＭを表示させるようにしてもよい。もちろん、それ以降のキャリブレーション点での光軸ベクトルｖｏの取得時には、デフォルトのキャリブレーション点の位置に注視点マーカＭを表示させるようにしてもよい。
【００９７】
このように、光軸ベクトルｖｏの取得が成功しない場合には、光軸ベクトルｖｏが正しく取得される位置まで注視点マーカＭを動的に移動させることで、正しい光軸ベクトルｖｏを取得できるようにすることができる。
【００９８】
＜６．ハードウェア構成＞
最後に、本実施形態に係る情報処理装置２００のハードウェア構成例について説明する。図１５は、本実施形態に係る情報処理装置２００のハードウェア構成を示すハードウェア構成図である。
【００９９】
本実施形態に係る情報処理装置２００は、上述したように、コンピュータ等の処理装置により実現することができる。情報処理装置２００は、図１５に示すように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３と、ホストバス９０４ａとを備える。また、情報処理装置２００は、ブリッジ９０４と、外部バス９０４ｂと、インタフェース９０５と、入力装置９０６と、出力装置９０７と、ストレージ装置９０８と、ドライブ９０９と、接続ポート９１１と、通信装置９１３とを備える。
【０１００】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置２００内の動作全般を制御する。また、ＣＰＵ９０１は、マイクロプロセッサであってもよい。ＲＯＭ９０２は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０３は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはＣＰＵバスなどから構成されるホストバス９０４ａにより相互に接続されている。
【０１０１】
ホストバス９０４ａは、ブリッジ９０４を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９０４ｂに接続されている。なお、必ずしもホストバス９０４ａ、ブリッジ９０４および外部バス９０４ｂを分離構成する必要はなく、１つのバスにこれらの機能を実装してもよい。
【０１０２】
入力装置９０６は、マウス、キーボード、タッチパネル、ボタン、マイク、スイッチおよびレバーなどユーザが情報を入力するための入力手段と、ユーザによる入力に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などから構成されている。出力装置９０７は、例えば、液晶ディスプレイ（ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置およびランプなどの表示装置や、スピーカなどの音声出力装置を含む。
【０１０３】
ストレージ装置９０８は、情報処理装置２００の記憶部の一例であり、データ格納用の装置である。ストレージ装置９０８は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。このストレージ装置９０８は、ハードディスクを駆動し、ＣＰＵ９０１が実行するプログラムや各種データを格納する。
【０１０４】
ドライブ９０９は、記憶媒体用リーダライタであり、情報処理装置２００に内蔵、あるいは外付けされる。ドライブ９０９は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体に記録されている情報を読み出して、ＲＡＭ９０３に出力する。
【０１０５】
接続ポート９１１は、外部機器と接続されるインタフェースであって、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などによりデータ伝送可能な外部機器との接続口である。また、通信装置９１３は、例えば、通信網５に接続するための通信デバイス等で構成された通信インタフェースである。また、通信装置９１３は、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）対応通信装置であっても、ワイヤレスＵＳＢ対応通信装置であっても、有線による通信を行うワイヤー通信装置であってもよい。
【０１０６】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１０７】
例えば、上記実施形態では、マーカベクトルｖｍと光軸ベクトルｖｏとの相関係数ｒｘｙが閾値ｒｔｈを下回った場合には、キャリブレーションの仕方を変更して再度キャリブレーションを実施したが、本技術はかかる例に限定されない。例えば、キャリブレーションの仕方を変更する前に、閾値ｒｔｈを下げて、再度キャリブレーションの完了判定を行ってもよい。変更後の閾値ｒｔｈとしては、例えば、前回の閾値ｒｔｈより一定値下げた値としてもよく、相関係数ｒｘｙと前回の閾値ｒｔｈとの間の値に下げるようにしてもよい。また、キャリブレーションを終了し、過去最も閾値ｒｔｈが高かったときのキャリブレーション情報を用いて再度キャリブレーションを行うようにしてもよい。
【０１０８】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【０１０９】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
アイウェア端末のキャリブレーション時に、前記アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させるマーカ制御部と、
前記アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に前記注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算する演算処理部と、
複数の前記キャリブレーション点について演算された光軸ベクトルのばらつきを評価する評価部と、
を備える、情報処理装置。
（２）
前記マーカ制御部は、前記注視点マーカを表示した状態で、予め設定された前記キャリブレーション点に順に移動させる、前記（１）に記載の情報処理装置。
（３）
前記マーカ制御部は、移動先の前記キャリブレーション点に近づくほど移動速度が遅くなるように前記注視点マーカを移動させる、前記（２）に記載の情報処理装置。
（４）
前記演算処理部は、
演算した現在の光軸ベクトルと、光軸ベクトルの履歴に基づき算出された光軸ベクトルの平均とのなす角が、所定の角度より大きいか否かを判定し、
前記なす角が所定の角度より大きい場合、演算した現在の前記光軸ベクトルを採用しない、前記（１）〜（３）のいずれか１項に記載の情報処理装置。
（５）
前記演算処理部は、
演算した現在の光軸ベクトルと、ユーザの瞳孔中心から前記注視点マーカが表示されているキャリブレーション点へのマーカベクトルとのなす角が所定の角度以下であるか否かに基づいて、演算した現在の光軸ベクトルのばらつきを判定し、
前記なす角が所定の角度より大きい場合、演算した現在の前記光軸ベクトルを採用しない、前記（１）〜（４）のいずれか１項に記載の情報処理装置。
（６）
前記演算処理部は、ユーザの左右の瞳孔の大きさの比が所定の値以上であるとき、演算した前記光軸ベクトルを採用しない、前記（５）に記載の情報処理装置。
（７）
前記マーカ制御部は、前記演算処理部により演算した前記光軸ベクトルが採用されないとき、前記注視点マーカの表示位置を表示領域の中央側へ移動させる、前記（４）〜（６）のいずれか１項に記載の情報処理装置。
（８）
前記評価部は、ユーザの瞳孔中心から前記注視点マーカが表示されているキャリブレーション点へのマーカベクトルと、演算された光軸ベクトルとの相関関係に基づいて、すべての前記キャリブレーション点において演算された光軸ベクトルのばらつきを判定する、前記（１）〜（７）のいずれか１項に記載の情報処理装置。
（９）
前記評価部により前記光軸ベクトルと前記マーカベクトルとの相関関係を表す相関係数が所定の閾値を下回ったとき、
前記マーカ制御部は、前記キャリブレーション点を表示領域の中央に寄せた位置に設定し、再度キャリブレーションを実行する、前記（８）に記載の情報処理装置。
（１０）
前記演算処理部は、対となる複数の光源から照射された光による輝点を検出する、前記（１）〜（９）のいずれか１項に記載の情報処理装置。
（１１）
情報処理装置により、
アイウェア端末のキャリブレーション時に、前記アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させること、
前記アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に前記注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算すること、
複数の前記キャリブレーション点について演算された光軸ベクトルのばらつきを評価すること、
とを含む、情報処理方法。
（１２）
コンピュータを、
アイウェア端末のキャリブレーション時に、前記アイウェア端末の表示部に表示される注視点マーカの表示位置を変化させるマーカ制御部と、
前記アイウェア端末を装着するユーザの眼に光源から光が照射され、キャリブレーション点に前記注視点マーカが表示されているときに撮影されたユーザの眼を含む撮影画像に基づいて、瞳孔角膜反射法により、ユーザの視線方向を表す光軸ベクトルを演算する演算処理部と、
複数の前記キャリブレーション点について演算された光軸ベクトルのばらつきを評価する評価部と、
を備える、情報処理装置として機能させるプログラム。
【符号の説明】
【０１１０】
１０      眼球
１４      角膜
１７      瞳孔
１００    アイウェア端末
１１０    光源
１２０    撮像部
１３０    表示部
１４０    制御部
１５０    送受信部
２００    情報処理装置
２１０    送受信部
２２０    マーカ制御部
２３０    演算処理部
２４０    記憶部
２５０    評価部
３００    表示領域
【図１】
0006601417.tif 000003
【図２】
0006601417.tif 000004
【図３】
0006601417.tif 000005
【図４】
0006601417.tif 000006
【図５】
0006601417.tif 000007
【図６】
0006601417.tif 000008
【図７】
0006601417.tif 000009
【図８】
0006601417.tif 000010
【図９】
0006601417.tif 000011
【図１０】
0006601417.tif 000012
【図１１】
0006601417.tif 000013
【図１２】
0006601417.tif 000014
【図１３】
0006601417.tif 000015
【図１４】
0006601417.tif 000016
【図１５】
0006601417.tif 000017