Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020095708 - EYE INFORMATION ESTIMATION DEVICE, EYE INFORMATION ESTIMATION METHOD, AND PROGRAM

Document

明 細 書

発明の名称 眼情報推定装置、眼情報推定方法、プログラム

技術分野

0001  

背景技術

0002  

先行技術文献

非特許文献

0003  

発明の概要

発明が解決しようとする課題

0004   0005  

課題を解決するための手段

0006  

発明の効果

0007  

図面の簡単な説明

0008  

発明を実施するための形態

0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102  

請求の範囲

1   2   3   4   5   6  

図面

1   2   3   4   5   6   7  

明 細 書

発明の名称 : 眼情報推定装置、眼情報推定方法、プログラム

技術分野

[0001]
 本発明は、瞳孔や虹彩に関する位置/大きさの情報を推定する技術に関する。

背景技術

[0002]
 参考特許文献1では、対象者の眼の動的な変化に基づく特徴量を抽出し、抽出された特徴量に基づいて対象者の感じる音楽の好みをリアルタイムで推定することができる(参考特許文献1)。
(参考特許文献1:特開2015-131069号公報)
 参考特許文献1で用いた眼の動的な変化の推定には、例えば、眼球運動計測器と呼ばれる専用の装置(非特許文献1)を用いることができる。

先行技術文献

非特許文献

[0003]
非特許文献1 : tobii pro, [online], [平成30年6月6日検索], インターネット<URL:https://www.tobiipro.com/ja/?gclid=EAIaIQobChMI9dzRgfq92wIVlYePCh2l1ge6EAAYASAAEgLqy_D_BwE>

発明の概要

発明が解決しようとする課題

[0004]
 参考特許文献1によれば、人の眼の動的な変化に基づく特徴量を用いることで、音楽の好みをリアルタイムで推定することができる。しかしながら、参考特許文献1で用いるマイクロサッカードの減衰係数や固有角振動数といった眼の動的な変化に関する特徴量を計算するためには、ミリ秒オーダーでの細かい眼球位置変化を正確に捉える必要があるため、1000Hzのように非常に高いサンプリング周波数で画像を撮影可能な眼球運動計測器を用いる必要があった。そのため、例えば、スマートフォンやパソコンなどに組み込まれている比較的性能が低いカメラ(例えば、15~60Hzのように低いサンプリング周波数のカメラ)を用いた場合には、サンプリング周波数が十分でないためにミリ秒オーダーでの細かい眼球位置変化を正確に取得できず、マイクロサッカードの減衰係数や固有角振動数といった眼の動的な変化に関する特徴量を計算できないため、結果として音楽の好みを推定することができないという問題があった。
[0005]
 そこで本発明では、サンプリング周波数が低いカメラにより撮影された画像を用いて、実際のサンプリング周波数よりも非常に細かい時間単位で瞳孔や虹彩に関する位置/大きさの情報を推定する技術を提供することを目的とする。

課題を解決するための手段

[0006]
 本発明の一態様は、対象者の眼球を撮影した画像から、当該画像に含まれる所定の行の瞳孔または虹彩の外縁に対応する2つの点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、瞳孔または虹彩の形状を楕円であると仮定した場合の当該楕円の長軸の長さRと、瞳孔または虹彩が拘束される3次元眼球回転系の眼球回転中心座標(x e, y e)とを取得するプロファイル決定情報取得部と、θ 1, θ 2を点P1、点P2における前記楕円の接線の傾き、R eを前記3次元眼球回転系の眼球回転半径とし、前記点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、前記接線の傾きθ 1, θ 2と、前記長軸の長さRと、前記眼球回転中心座標(x e, y e)と、前記眼球回転半径R eとから、瞳孔または虹彩の位置を表す前記楕円の中心座標(x c, y c)と偏角ψと、瞳孔または虹彩の大きさを表す前記楕円の長軸の長さR aと短軸の長さR bとを含む楕円プロファイルを算出する眼情報算出部とを含む。

発明の効果

[0007]
 本発明によれば、サンプリング周波数が低いカメラにより撮影された画像を用いて、実際のサンプリング周波数よりも非常に細かい時間単位で瞳孔や虹彩に関する位置/大きさの情報を推定することが可能となる。

図面の簡単な説明

[0008]
[図1] 隣接する2行の瞳孔(虹彩)の外縁に対応する4つの点の一例を示す図。
[図2] 3次元眼球回転系を示す図。
[図3] 眼球回転中心と楕円の中心の位置関係の一例を示す図。
[図4] 眼情報推定装置100の構成の一例を示すブロック図。
[図5] 眼情報推定装置100の動作の一例を示すフローチャート。
[図6] 眼情報算出部130の構成の一例を示すブロック図。
[図7] 眼情報算出部130の動作の一例を示すフローチャート。

発明を実施するための形態

[0009]
 以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
[0010]
<技術的背景>
 位置/大きさの情報を推定する対象は、瞳孔または虹彩とする。また、瞳孔や虹彩の位置/大きさの推定には、対象者の眼球を撮影した画像を用いる。推定に際して、撮影した画像中の瞳孔や虹彩の形状は楕円であると仮定する。したがって、瞳孔や虹彩の位置/大きさは、楕円の中心座標、偏角/長軸の長さ、短軸の長さとして推定されることになる。具体的には、対象者の眼球を撮影した画像に含まれる所定の行の瞳孔または虹彩の外縁に対応する2つの点P1、点P2の座標とこれらの点における楕円(つまり、推定対象である瞳孔または虹彩を表す楕円)の接線の傾きから、楕円のプロファイルである中心座標、偏角、長軸の長さ、短軸の長さを推定する。その際、所定のサンプリング周波数で画像を撮影している間、長軸の長さは変化しないものと仮定する。以下、その長さをRとする。
[0011]
 以上より、瞳孔や虹彩の位置/大きさを推定する問題は、楕円上の点P1、点P2の座標(x 1, y 0), (x 2, y 0)と当該2点における楕円の接線の傾きθ 1, θ 2と楕円の長軸の長さRから楕円の中心座標(x c, y c)、偏角ψ、長軸の長さR a、短軸の長さR bを求める問題に帰着する(ただし、R a=Rである)。
[0012]
 なお、対象者の眼球を撮影した画像から、点P1、点P2の座標(x 1, y 0), (x 2, y 0)、当該2点における楕円の接線の傾きθ 1, θ 2、楕円の長軸の長さRを求める方法については、後述する。
[0013]
 以下、上記問題を解く手順について説明する。一般に、2次元平面上の任意の位置にある楕円は、以下の方程式により表される。
[0014]
[数1]


[0015]
 ここでは、上記問題を解くために、任意の位置にある楕円を、x軸上の点(1, 0)、y軸上の点(0, 1)を通り、点(1, 0)においてx軸、点(0, 1)においてy軸に接する楕円に対応するように座標変換し、当該変換後の楕円が以下の式で表されることを用いて計算を行う。
[0016]
[数2]


[0017]
 ここで、αをハイパーパラメータという。
[0018]
 以下、詳しく説明する。点P1における楕円の接線と点P2における楕円の接線の交点Cの座標(x s, y s)は、点P1、点P2の座標(x 1, y 0), (x 2, y 0)、当該2点における楕円の接線の傾きθ 1, θ 2を用いて次式により表せる。
[0019]
[数3]


[0020]
 ここで、交点Cが点(0, 0)、点P1が点(1, 0)、点P2が点(0, 1)にそれぞれ対応するように座標系を変換して得られる楕円の方程式は、
[0021]
[数4]


[0022]
として、次式により表現できる。
[0023]
[数5]


[0024]
 すると、楕円のプロファイル、つまり、中心座標(x c, y c)、偏角ψ、長軸の長さR a、短軸の長さR bは、ハイパーパラメータαを用いて、以下のように表現できる。
[0025]
[数6]


[0026]
ただし、
[0027]
[数7]


[0028]
である。ここで、式(4)中のR a,b 2は、R a 2またはR b 2の意味であり、式(4)の右辺の値(つまり、±を用いて表される2つの値)のうち小さい方がR b 2、大きい方がR a 2であることを意味する。また、式(4)の右辺の平方根がR a, R bとなる。
[0029]
 なお、長軸の長さに対する短軸の長さの比r(=R b/R a)も、ハイパーパラメータαを用いて以下のように表現することができる。
[0030]
[数8]


[0031]
 以下、式(2a)と式(2b)をハイパーパラメータαを用いた中心座標(x c, y c)の表現という。同様に、式(3)をハイパーパラメータαを用いた偏角ψの表現、式(4)をハイパーパラメータαを用いた長軸の長さR aの表現、ハイパーパラメータαを用いた短軸の長さR bの表現、式(8)をハイパーパラメータαを用いた長軸の長さに対する短軸の長さの比rの表現という。また、ハイパーパラメータαのことを楕円プロファイルの表現に用いるハイパーパラメータともいう。
[0032]
 したがって、上記表現を用いれば、式(4)を用いてR a=Rとなるハイパーパラメータα(ただし、|α|≦1)を求めることにより、中心座標(x c, y c)、偏角ψ、短軸の長さR bを求めることができる。
[0033]
 ここで、対象者の眼球を撮影した画像から、点P1、点P2の座標(x 1, y 0), (x 2, y 0)、当該2点における楕円の接線の傾きθ 1, θ 2、楕円の長軸の長さRを求める方法について説明する。
[0034]
 点P1、点P2の座標(x 1, y 0), (x 2, y 0)は、例えば、参考非特許文献1に記載された方法を用いて瞳孔または虹彩の領域/境界を検出することにより、取得することができる。
(参考非特許文献1:Daugman, J, “Probing the uniqueness and randomness of IrisCodes: Results from 200 billion iris pair comparisons”, Proceedings of the IEEE, Vol.94, No.11, pp.1927-1935, 2006.)
[0035]
 また、点P1、点P2における楕円の接線の傾きθ 1, θ 2は、所定の行に隣接する行の瞳孔または虹彩の外縁に対応する点の座標と、点P1、点P2の座標(x 1, y 0), (x 2, y 0)とを用いて取得することができる。具体的には、以下のようにして求める。まず、所定の行に隣接する行のうち、画像中、上側に位置する行の瞳孔または虹彩の外縁に対応する2つの点P1’、点P2’の座標を(x 1’, y 0’), (x 2’, y 0’)とし、傾きθ 1’, θ 2’を次式により求める、(図1参照)。
[0036]
[数9]


[0037]
同様に、所定の行に隣接する行のうち、画像中、下側に位置する行の瞳孔または虹彩の外縁に対応する2つの点P1”、点P2”の座標を(x 1”, y 0”), (x 2”, y 0”)とし、傾きθ 1”, θ 2” を次式により求める。
[0038]
[数10]


[0039]
そして、傾きθ 1, θ 2を、傾きθ 1’, θ 2’, θ 1”, θ 2”を用いて次式により求める。
[0040]
[数11]


[0041]
つまり、傾きθ 1, θ 2は、所定の行に隣接する行のうち、画像中、上側に位置する行の瞳孔または虹彩の外縁に対応する2つの点の座標と点P1、点P2の座標(x 1, y 0), (x 2, y 0)とを用いて計算した傾きと、所定の行に隣接する行のうち、画像中、下側に位置する行の瞳孔または虹彩の外縁に対応する2つの点の座標と点P1、点P2の座標(x 1, y 0), (x 2, y 0)とを用いて計算した傾きの平均値として求められる。
[0042]
 楕円の長軸の長さRとして、例えば、画像に含まれる瞳孔または虹彩の外縁に対して楕円フィッティングを行った結果として得られる長軸の長さを用いればよい。
[0043]
 以上の説明から、上述の問題が解けることがわかる。しかし、点P1、点P2における楕円の接線の傾きθ 1, θ 2を求める方法として上述の方法を用いると、推定精度が下がってしまうことがある。これは、眼球の動きが非常に高速であるため、スマートフォンのカメラなどのようにサンプリング周波数が比較的低いカメラを用いて眼球を撮影すると、眼球が歪んで撮影されるためである。なお、高速で動いている被写体をサンプリング周波数が比較的低いカメラを用いて撮影した場合に、走査行ごとの露光タイミングがずれることにより図形歪が生じることをローリングシャッター効果という。
[0044]
 そこで、より精度よく、点P1、点P2における楕円の接線の傾きθ 1, θ 2を決定するために、以下説明する手法を用いてもよい。この手法では、新たな制約条件を課す。以下、この新たに課す制約条件と、当該制約条件のもと接線の傾きを未知として楕円プロファイルを算出するアルゴリズムについて説明する。
[0045]
(制約条件:3次元眼球回転系)
 瞳孔及び虹彩の形状は円盤、眼球の形状は真球であるとし、瞳孔及び虹彩は、眼球の表面に拘束されて動くものと仮定する(図2参照)。つまり、瞳孔や虹彩を撮影して得られる楕円は、真球上を円盤が回転した結果であるとする。なお、図2において、斜線を施した円が瞳孔又は虹彩を表し、半径がR eの球が眼球を表す。以下では、この瞳孔や虹彩が眼球の表面に拘束されて回転運動する系のことを3次元眼球回転系という。
[0046]
 対象者の眼球を撮影した画像における3次元眼球回転系の眼球回転中心座標を(x e, y e)、3次元眼球回転系の眼球回転半径をR e、瞳孔半径(虹彩半径)をR、瞳孔中心経度(虹彩中心経度)ω、瞳孔中心緯度(虹彩中心緯度)φとすると、楕円プロファイルである中心座標、偏角、長軸の長さ、短軸の長さ(つまり、瞳孔(虹彩)の位置や大きさ)は、次式により表される(図2、図3参照)。
[0047]
[数12]


[0048]
 また、3次元眼球回転系であるという仮定から、以下の2式を満たすべき関係式として導出することができる。
[0049]
[数13]


[0050]
ただし、
[0051]
[数14]


[0052]
である。
[0053]
(楕円プロファイル算出アルゴリズム)
 楕円プロファイル算出アルゴリズムでは、眼球回転中心座標(x e, y e)と眼球回転半径R eが事前に与えられているものとする。眼球回転中心座標(x e, y e)は、対象者の眼球を撮影する時点に決まるものであり、対象者の眼球を撮影した画像から求めることができる。その求め方(眼球回転中心座標算出アルゴリズム)は後述する。一方、眼球回転半径R eは、対象者の眼球を撮影する時点において決まるものではなく、撮影前一定期間において一定の値をとるものと考えられる。したがって、眼球の大きさ(すなわち、眼球回転半径R e)については、所定の計測器を用いて計測するなど別途の方法で撮影前に求めておけばよい。
[0054]
 以下、楕円プロファイル算出アルゴリズムについて説明する。
[0055]
≪楕円プロファイル算出アルゴリズム≫
ステップ1:2つの点P1、点P2における楕円の接線の傾きθ 1, θ 2として適当な初期値を与える。例えば、上述の方法で求めた接線の傾きθ 1, θ 2を初期値として用いることができる。
ステップ2:点P1における楕円の接線と点P2における楕円の接線の交点Cの座標(x s, y s)を求める。具体的には、式(1)により求める。
ステップ3:式(4)を用いてR a=Rとなるハイパーパラメータα(ただし、|α|≦1)を求める。
ステップ4:ステップ3で求めたハイパーパラメータαを用いて、式(3)と式(8)により、偏角ψと長軸の長さに対する短軸の長さの比rの2乗r 2を求める。また、式(2a)と式(2b)より、中心座標(x c, y c)を算出する。
ステップ5:ステップ4で求めた偏角ψと比rの2乗r 2と中心座標(x c, y c)を用いて、次式で定義される非負コスト関数Costを計算する。
[0056]
[数15]


[0057]
式(12a)、式(12b)は、それぞれ式(9a)、式(9b)から導出されるコスト関数である。接線の傾きθ 1, θ 2が正しい値となる場合、式(12a)のコスト関数C 1、式(12b)のコスト関数C 2の値は、いずれも0となる。したがって、この場合、式(11)のコスト関数Costの値は0になる。
ステップ6:所定の終了条件を満たすか否かを判定する。当該終了条件を満たすか否かは非負コスト関数Costの値が十分0に近いか(つまり、所定の定数ε(>0)に対して、εより小さくなるかまたはε以下となるか)否かに対応するものである。例えば、非負コスト関数Costの値が十分0に近い値になった場合に処理を終了するという終了条件にしてもよい。あるいは、非負コスト関数Costの値が十分0に近い値になるか、所定の繰り返し回数に達するかいずれかを満たした場合に処理を終了するという終了条件にしてもよい。終了条件を満たす場合は、ステップ3で求めたハイパーパラメータαを用いて、中心座標(x c, y c)と偏角ψ、及び/または、長軸の長さR a、短軸の長さR bを算出し、出力して処理を終了する。中心座標(x c, y c)、偏角ψ、長軸の長さR a、短軸の長さR bは、式(2a)、式(2b)、式(3)、式(4)により算出すればよい。終了条件を満たさない場合は、点P1、点P2における楕円の接線の傾きθ 1, θ 2を更新し、ステップ2~5を繰り返す。
[0058]
 ステップ1~6は、ニュートン法や勾配法を用いて実行することができる。ニュートン法は関数f(x)に対してf(x)=0となるxを求める方法であり、勾配法は関数f(x)に対してf(x)が最小値をとるxを求める方法である。したがって、ニュートン法や勾配法を用いると、非負コスト関数Costが十分0に近い値になる(あるいは、最小値をとる)点P1、点P2における楕円の接線の傾きθ 1, θ 2を最適値として求めることになる。
[0059]
 次に、眼球回転中心座標算出アルゴリズムについて説明する。
[0060]
≪眼球回転中心座標算出アルゴリズム≫
ステップ1:眼球回転中心座標(x e, y e)として適当な初期値を与える。
ステップ2:眼球回転中心座標は(x e, y e)であるとの仮定の下、楕円プロファイル算出アルゴリズムにより、虹彩を表す楕円の中心の位置を示す虹彩中心位置の時間変化P xy(t)を得る。具体的には、まず、撮像された各行の画像(画素列)について、楕円プロファイル算出アルゴリズムを適用し、各行についての楕円プロファイルを推定することで、各行についての虹彩中心位置を得る。これを、与えられた画像のすべての行(虹彩が映り込んでいるすべての行)について行うことで、各行についての虹彩中心位置の系列が得られる。これを虹彩中心位置の時間変化P xy(t)と呼ぶこととする。
ステップ3:ステップ2で求めた虹彩中心位置の時間変化P xy(t)に対して、パラメータセットを様々に変えて所定の関数P xy,model(t)でフィッティングする。この結果として得られるフィッティングコスト値をC sとする。具体的には、フィッティング処理は最適化手法(例えば、Ceres Solver)により行い、フィッティングコスト値C sは例えばP xy(t)と最適化された関数P xy,model(t)との二乗誤差として求める。なお、局所解に陥ることを避けるため、パラメータセットの初期値はいくつかのパターンで与えることが望ましい。
[0061]
 所定の関数P xy,model(t)は、眼球の動きをモデル化した関数であり、与えられた画像においてサッカードが発生している場合と発生していない場合で下記のように異なる。
[0062]
(a)サッカードが発生している画像の場合
 所定の関数P xy,model(t)は、t>t 0において
[0063]
[数16]


[0064]
と表され、t<t 0において
[0065]
[数17]


[0066]
と表される。上記の式は、サッカードが起きている時間区間の虹彩中心位置の時系列が位置制御系のステップ応答としてモデル化できることに基づく。最適化の対象となるパラメータセットは{A, ζ, ω n, t 0, y’ 0}である。ここで、y’ 0は虹彩中心位置の初期値、t 0はサッカードの開始時刻、Aはサッカードの振幅、ζはサッカードの減衰係数、ω nはサッカードの固有角振動数を表す。ただし、tは時刻を表すインデックスである。振幅Aはサッカードによる眼球の動きが収束したときの移動量である。固有角振動数ω nはサッカードの応答の速さを表す指標に相当し、減衰係数ζはサッカードの応答の収束性を表す指標に相当する。なお、ω dは、
[0067]
[数18]


[0068]
として、減衰係数および固有角振動数から定まる値である。
[0069]
(b)サッカードが発生していない画像の場合
 所定の関数P xy,model(t)は、
[0070]
[数19]


[0071]
と表される。ここで、y’ 0は虹彩中心位置の初期値、Vは虹彩中心位置の平均速度(トレンド)を表す。
[0072]
 ここで、与えられた画像においてサッカードが発生しているかどうかを判定するための方法は、下記の通りである。
[0073]
[サッカード判定方法]
 複数枚の画像について、ローリングシャッター効果を考慮せず、例えば、単純な楕円フィッティングにより、虹彩中心位置を計算する。ここで用いる複数枚の画像は、所定の画像を含むものであり、十分な数の画像の集合である。次に、複数枚の画像から得られた虹彩中心位置の時系列について1次階差系列を計算し、当該階差系列の平均値m s、標準偏差σ sを求める。所定の画像に対応する1次階差系列の値P s
[0074]
[数20]


[0075]
を満たす場合には、所定の画像の撮像中にサッカードが発生していたものと判定する。ここで、n sは定数で、取得された1次階差系列のノイズの程度に応じて、およそ6から8の値を用いることが望ましい。なお、取得された虹彩中心位置の情報にノイズが多く含まれると判定した場合などには、1次階差系列の計算にあたって適当な範囲での移動平均値を用いてもよい。
ステップ4:フィッティングコスト値C sが所定の閾値より小さくなる又は当該閾値以下となる場合は、現時点の眼球回転中心座標(x e, y e)を出力して処理を終了する。それ以外の場合は、眼球回転中心座標(x e, y e)を更新し、ステップ2以降の処理を繰り返す。
[0076]
 本発明では、ローリンシャッター方式を前提とするので、画像の行ごとに撮影時刻が異なる。つまり、ある行を撮影した時刻と次の行を撮影した時刻が異なり、その間に虹彩の位置が変動するので、各行について求めた虹彩中心位置の時系列データは、虹彩中心の時間的な変化(動き)を表すといえる。ステップ3では、ステップ2で求めた虹彩中心位置の時系列データを所定の関数でフィッティングする。したがって、ステップ4は、虹彩中心位置の時系列データ(つまり、楕円プロファイルの推定結果)の信頼性を判定する処理と言える。眼球(虹彩)の動きをモデル化した関数を所定の関数としてフィッティングを行ったときに、フィッティングの精度がよくない(フィッティングコスト値が所定の閾値より大きい場合)場合は、虹彩中心位置の時系列データの推定結果の信頼性が低い(眼球の動きとして妥当ではない)と考えられる。そこで、この場合は再度ステップ2に戻り、虹彩中心位置の推定からやり直しを行うのである。一方、フィッティング精度が高い(フィッティングコスト値が所定の閾値より小さい)場合は、虹彩中心位置の時系列データの推定結果の信頼性が高い(眼球の動きとして妥当である)と考えられるので、推定した眼球回転中心座標(x e, y e)を最終的な推定結果として出力する。
[0077]
<第1実施形態>
 以下、図4~図5を参照して、眼情報推定装置100を説明する。図4は、眼情報推定装置100の構成を示すブロック図である。図5は、眼情報推定装置100の動作を示すフローチャートである。図4に示すように眼情報推定装置100は、画像取得部110と、プロファイル決定情報取得部120と、眼情報算出部130と、記録部190を含む。記録部190は、眼情報推定装置100の処理に必要な情報を適宜記録する構成部である。例えば、記録部190は、事前に取得した眼球回転半径R eを記録しておく。
[0078]
 図5に従い眼情報推定装置100の動作について説明する。
[0079]
[画像取得部110]
 S110において、画像取得部110は、対象者の眼球を撮影した画像を取得し、出力する。ここで、画像撮影に用いるカメラは、スマートフォンのカメラのようなサンプリング周波数が比較的低いカメラを想定しているが、サンプリング周波数が高いカメラを用いてもよい。なお、カメラは、左右両方の眼球を撮影するように設定してもよいし、いずれか一方の眼球のみを撮影するように設定してもよい。以下では、一方の眼球のみを撮影するように設定しているものとする。
[0080]
[プロファイル決定情報取得部120]
 S120において、プロファイル決定情報取得部120は、S110で取得した画像を入力とし、当該画像に含まれる所定の行にある瞳孔または虹彩の外縁に対応する2つの点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、瞳孔または虹彩の形状を楕円であると仮定した場合の当該楕円の長軸の長さRと、瞳孔または虹彩が拘束される3次元眼球回転系の眼球回転中心座標(x e, y e)とを取得し、出力する。なお、点P1、点P2の座標(x 1, y 0), (x 2, y 0)、長軸の長さR、眼球回転中心座標(x e, y e)の取得方法は、<技術的背景>で説明した方法を用いればよい。この場合、プロファイル決定情報取得部120は、眼球回転中心座標の値を仮定してS110で取得した画像の各行ごとに得られる虹彩中心位置の系列が、眼球の動きをモデル化した所定の関数により所定の精度でフィッティング可能となるときの眼球回転中心座標の値を、眼球回転中心座標(x e, y e)として取得することになる。
[0081]
[眼情報算出部130]
 S130において、眼情報算出部130は、S120で取得した点P1、点P2の座標(x 1, y 0), (x 2, y 0)、長軸の長さR、眼球回転中心座標(x e, y e)と、点P1、点P2における楕円の接線の傾きθ 1, θ 2と、眼球回転半径R eとを入力とし、瞳孔または虹彩の位置を表す楕円の中心座標(x c, y c)と偏角ψと、瞳孔または虹彩の大きさを表す楕円の長軸の長さR aと短軸の長さR bとを含む楕円プロファイルを算出し、当該楕円プロファイルのうち、少なくとも1つのプロファイルを出力する。ここで、点P1、点P2における楕円の接線の傾きθ 1, θ 2は、例えば、<技術的背景>で説明した方法により、S110で取得した画像から取得すればよく、接線の傾きθ 1, θ 2は、所定の行に隣接する行にある瞳孔または虹彩の外縁に対応する点の座標と、点P1、点P2の座標(x 1, y 0), (x 2, y 0)とから計算される値となる。この場合、S120において、プロファイル決定情報取得部120が、S110で取得した画像から接線の傾きθ 1, θ 2をあわせて取得するものとすればよい。
[0082]
 以下、図6~図7を参照して眼情報算出部130について説明する。図6は、眼情報算出部130の構成を示すブロック図である。図7は、眼情報算出部130の動作を示すフローチャートである。図6に示すように眼情報算出部130は、交点座標計算部131と、プロファイル算出部132、終了条件判定部133を含む。
[0083]
[交点座標計算部131]
 S131において、交点座標計算部131は、点P1、点P2の座標(x 1, y 0), (x 2, y 0)と点P1、点P2における楕円の接線の傾きθ 1, θ 2とから、これらの接線の交点Cの座標(x s, y s)を計算する。具体的には、式(1)により交点Cの座標(x s, y s)を計算する。
[0084]
[プロファイル算出部132]
 S132において、プロファイル算出部132は、点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、S131で計算した交点Cの座標(x s, y s)と、長軸の長さRとから、ハイパーパラメータα(ただし、|α|≦1)を求めることにより、楕円の偏角ψと長軸の長さに対する短軸の長さの比rの2乗r 2と楕円の中心座標(x c, y c)を算出する。以下、具体的に説明する。
[0085]
 まず、プロファイル算出部132は、点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、交点Cの座標(x s, y s)とを用いて、ハイパーパラメータαを用いた長軸の長さR aの表現(つまり、式(4))を求める。
[0086]
 次に、プロファイル算出部132は、式(4)の長軸の長さR aの表現と長軸の長さRを用いて、ハイパーパラメータαを決定する。具体的には、式(4)の値がRとなるα(|α|≦1)を求めることになる。
[0087]
 そして、プロファイル算出部132は、上記決定したαを用いて、式(3)、式(8)より、偏角ψと比rの2乗r 2をそれぞれ算出する。また、プロファイル算出部132は、上記決定したαを用いて、式(2a)、式(2b)より、中心座標(x c, y c)を算出する。
[0088]
[終了条件判定部133]
 S133において、終了条件判定部133は、S132で算出した楕円の偏角ψと比rの2乗r 2と楕円の中心座標(x c, y c)と、眼球回転中心座標(x e, y e)と、眼球回転半径R eとから、所定の終了条件が満たされるか否かを判定する。終了条件が満たされる場合には、S132で決定したハイパーパラメータαを用いて算出される、楕円の中心座標(x c, y c)と偏角ψと楕円の長軸の長さR aと短軸の長さR bとを含む楕円プロファイルのうち、少なくとも1つのプロファイルを出力し、それ以外の場合は、点P1、点P2における楕円の接線の傾きθ 1, θ 2を所定の方法(例えば、ニュートン法)により更新し、当該更新した接線の傾きθ 1, θ 2を用いて、眼情報算出部130による処理を再帰的に実行する。つまり、眼情報算出部130は、S131以降の処理を繰り返す。その際、点P1、点P2の座標(x 1, y 0), (x 2, y 0)、長軸の長さR、眼球回転中心座標(x e, y e)についてはS120で取得した値を用い、眼球回転半径R eについては記録部190に記録されている値を用いる。
[0089]
 ここで、上記終了条件は、S132で算出した楕円の偏角ψと長軸の長さに対する短軸の長さの比rの2乗r 2と楕円の中心座標(x c, y c)を用いて式(11)により計算される非負コスト関数Costの値が、所定の定数ε(>0)に対して、εより小さくなるまたはε以下となるという条件であり、3次元眼球回転系に関する仮定から導出される条件である。なお、非負コスト関数Costの値は、詳しくは、偏角ψと、比rの2乗r 2と、中心座標(x c, y c)と、眼球回転中心座標(x e, y e)と、眼球回転半径R eとを用いて、式(11)により、計算することができる。
[0090]
 終了条件判定部133は、上記決定したハイパーパラメータαを用いて、式(2a)、式(2b)、式(3)より、楕円の中心座標(x c, y c)と偏角ψを算出すればよい。また、終了条件判定部133は、上記決定したハイパーパラメータαを用いて、式(4)より、楕円の長軸の長さR aと短軸の長さR bを算出すればよい。
[0091]
 以上より、眼情報算出部130は、眼球回転中心座標(x e, y e)と、眼球回転半径R eと、楕円プロファイルとを用いて当該楕円プロファイルの妥当性を表す非負コスト関数Costの値を計算し、当該非負コスト関数Costの値が所定の条件を満たすときの楕円プロファイルを出力対象となる楕円プロファイルとして算出する。
[0092]
 なお、左右両方の眼球を撮影した画像を用いる場合は、S120~S130までの処理を各眼球に対して実行するようにすればよい。
[0093]
 本実施形態の発明によれば、サンプリング周波数が低いカメラにより撮影された画像を用いて、実際のサンプリング周波数よりも細かい時間単位で瞳孔や虹彩に関する位置/大きさの情報を推定することが可能となる。
[0094]
<補記>
 本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD-ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
[0095]
 ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。
[0096]
 ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成要件)を実現する。
[0097]
 本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
[0098]
 既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
[0099]
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD-RAM(Random Access Memory)、CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP-ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
[0100]
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
[0101]
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
[0102]
 また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

請求の範囲

[請求項1]
 対象者の眼球を撮影した画像から、当該画像に含まれる所定の行の瞳孔または虹彩の外縁に対応する2つの点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、瞳孔または虹彩の形状を楕円であると仮定した場合の当該楕円の長軸の長さRと、瞳孔または虹彩が拘束される3次元眼球回転系の眼球回転中心座標(x e, y e)とを取得するプロファイル決定情報取得部と、
 θ 1, θ 2を点P1、点P2における前記楕円の接線の傾き、R eを前記3次元眼球回転系の眼球回転半径とし、
 前記点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、前記接線の傾きθ 1, θ 2と、前記長軸の長さRと、前記眼球回転中心座標(x e, y e)と、前記眼球回転半径R eとから、瞳孔または虹彩の位置を表す前記楕円の中心座標(x c, y c)と偏角ψと、瞳孔または虹彩の大きさを表す前記楕円の長軸の長さR aと短軸の長さR bとを含む楕円プロファイルを算出する眼情報算出部と
 を含む眼情報推定装置。
[請求項2]
 請求項1に記載の眼情報推定装置であって、
 前記眼情報算出部は、
 前記眼球回転中心座標(x e, y e)と、前記眼球回転半径R eと、楕円プロファイルとを用いて当該楕円プロファイルの妥当性を表す非負コスト関数Costの値を計算し、当該非負コスト関数Costの値が所定の条件を満たすときの楕円プロファイルを前記楕円プロファイルとして算出する
 ことを特徴とする眼情報推定装置。
[請求項3]
 請求項2に記載の眼情報推定装置であって、
 前記プロファイル決定情報取得部は、
 眼球回転中心座標の値を仮定して前記画像の各行ごとに得られる虹彩中心位置の系列が、眼球の動きをモデル化した所定の関数により所定の精度でフィッティング可能となるときの眼球回転中心座標の値を、前記眼球回転中心座標(x e, y e)として取得する
 ことを特徴とする眼情報推定装置。
[請求項4]
 請求項1に記載の眼情報推定装置であって、
 前記接線の傾きθ 1, θ 2は、前記所定の行に隣接する行の瞳孔または虹彩の外縁に対応する点の座標と、前記点P1、点P2の座標(x 1, y 0), (x 2, y 0)とから計算される値である
 ことを特徴とする眼情報推定装置。
[請求項5]
 眼情報推定装置が、対象者の眼球を撮影した画像から、当該画像に含まれる所定の行の瞳孔または虹彩の外縁に対応する2つの点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、瞳孔または虹彩の形状を楕円であると仮定した場合の当該楕円の長軸の長さRと、瞳孔または虹彩が拘束される3次元眼球回転系の眼球回転中心座標(x e, y e)とを取得するプロファイル決定情報取得ステップと、
 θ 1, θ 2を点P1、点P2における前記楕円の接線の傾き、R eを前記3次元眼球回転系の眼球回転半径とし、
 前記眼情報推定装置が、前記点P1、点P2の座標(x 1, y 0), (x 2, y 0)と、前記接線の傾きθ 1, θ 2と、前記長軸の長さRと、前記眼球回転中心座標(x e, y e)と、前記眼球回転半径R eとから、瞳孔または虹彩の位置を表す前記楕円の中心座標(x c, y c)と偏角ψと、瞳孔または虹彩の大きさを表す前記楕円の長軸の長さR aと短軸の長さR bとを含む楕円プロファイルを算出する眼情報算出ステップと
 を含む眼情報推定方法。
[請求項6]
 請求項1ないし4のいずれか1項に記載の眼情報推定装置としてコンピュータを機能させるためのプログラム。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]

[ 図 7]