(57)【特許請求の範囲】
【請求項１】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、
前記視距離推定装置のコンピュータが、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、
前記第１画像から前記人の虹彩のサイズを検出し、
検出した前記虹彩のサイズの画素数を示す第１値を算出し、
前記第１画像の解像度を取得し、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、
推定した前記視距離を含む推定情報を出力し、
前記第１画像に基づいて前記顔の向きを検出し、検出した前記顔の向きに応じて前記視距離を補正する、
視距離推定方法。
【請求項２】
前記視距離の補正では、
前記顔の向きが正面の向きから離れた方向に向かうにつれて前記視距離を小さくするための補正係数を前記視距離に乗じることによって、前記視距離を補正する、
請求項１記載の視距離推定方法。
【請求項３】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、
前記視距離推定装置のコンピュータが、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、
前記第１画像から前記人の虹彩のサイズを検出し、
検出した前記虹彩のサイズの画素数を示す第１値を算出し、
前記第１画像の解像度を取得し、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、
推定した前記視距離を含む推定情報を出力し、
前記虹彩のサイズの検出では、
前記第１画像から前記人の目の領域を含む第２画像を生成し、
前記第２画像を二値化して、階調値が閾値より小さい画素が第１輝度値で表され、前記階調値が閾値以上の画素が第２輝度値で表された第３画像を生成し、
前記第３画像において、前記第１輝度値を有する第１輝度領域内に表れる前記第２輝度値の画素であって所定の条件を満たす前記第２輝度値の画素を、前記第１輝度値の画素に置き換えて第４画像を生成し、
前記第４画像を用いて前記虹彩を検出する、
視距離推定方法。
【請求項４】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、
前記視距離推定装置のコンピュータが、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、
前記第１画像から前記人の虹彩のサイズを検出し、
検出した前記虹彩のサイズの画素数を示す第１値を算出し、
前記第１画像の解像度を取得し、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、
推定した前記視距離を含む推定情報を出力し、
前記虹彩のサイズの検出では、前記人の左右の目の虹彩の中心位置を検出し、
さらに、検出した前記左右の目の前記虹彩の中心位置と推定した前記視距離とに基づいて、前記人の目の輻輳角を算出する、
視距離推定方法。
【請求項５】
前記輻輳角の算出では、前記第１画像に基づいて、前記人の目頭間の中心を示す目頭間の中点を検出し、前記目頭間の中点から左の目の前記虹彩の中心位置までの第１距離と前記目頭間の中点から右の目の前記虹彩の中心位置までの第２距離とを算出し、前記第１距離及び推定した前記視距離に基づいて第１輻輳半角を算出すると共に前記第２距離及び推定した前記視距離に基づいて第２輻輳半角を算出し、前記第１輻輳半角と前記第２輻輳半角との和を前記輻輳角として算出する、
請求項４記載の視距離推定方法。
【請求項６】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、
前記視距離推定装置のコンピュータが、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、
前記第１画像から前記人の虹彩のサイズを検出し、
検出した前記虹彩のサイズの画素数を示す第１値を算出し、
前記第１画像の解像度を取得し、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、
推定した前記視距離を含む推定情報を出力し、
前記第１画像に重畳表示される前記推定情報は、前記第１値及び前記第２値に基づいて生成された、前記第１画像内の物体の実寸を示すゲージオブジェクトを含む、
視距離推定方法。
【請求項７】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、
前記視距離推定装置のコンピュータが、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、
前記第１画像から前記人の虹彩のサイズを検出し、
検出した前記虹彩のサイズの画素数を示す第１値を算出し、
前記第１画像の解像度を取得し、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、
推定した前記視距離を含む推定情報を出力し、
前記虹彩のサイズの検出では、左右の目のそれぞれの虹彩のサイズを検出し、
前記視距離の推定では、前記左右の目のそれぞれについて、検出された前記虹彩のサイズに基づいて前記虹彩の検出結果が適正であるか否かを判定し、前記左右の目のうち適正と判定された目に対する前記第３値のみを用いて前記視距離を推定する、
視距離推定方法。
【請求項８】
前記視距離推定装置は、カメラ及びディスプレイを備える携帯端末装置であり、
前記対象物は、前記ディスプレイであり、
前記第１画像は、前記カメラにより撮像されたものである、
請求項１〜７のいずれかに記載の視距離推定方法。
【請求項９】
さらに、前記推定情報を前記第１画像に重畳表示させる、
請求項１〜８のいずれかに記載の視距離推定方法。
【請求項１０】
前記関係情報は、前記解像度及び前記第３値を説明変数、前記視距離を目的変数とする回帰式である、
請求項１〜９のいずれかに記載の視距離推定方法。
【請求項１１】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置であって、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得する画像取得部と、
前記第１画像から前記人の虹彩のサイズを検出する虹彩検出部と、
検出した前記虹彩のサイズの画素数を示す第１値を算出する画素数算出部と、
前記第１画像の解像度を取得する解像度取得部と、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出する実寸算出部と、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、前記解像度取得部により取得された前記解像度と、実寸算出部により算出された前記第３値とに対応する前記視距離を推定する推定部と、
前記推定部により推定された前記視距離を含む推定情報を出力する出力部とを備え、
前記第１画像に重畳表示される前記推定情報は、前記第１値及び前記第２値に基づいて生成された、前記第１画像内の物体の実寸を示すゲージオブジェクトを含む、
視距離推定装置。
【請求項１２】
対象物と人の目との間の距離を示す視距離を推定する視距離推定装置としてコンピュータを機能させる視距離推定プログラムであって、
撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得する画像取得部と、
前記第１画像から前記人の虹彩のサイズを検出する虹彩検出部と、
検出した前記虹彩のサイズの画素数を示す第１値を算出する画素数算出部と、
前記第１画像の解像度を取得する解像度取得部と、
前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出する実寸算出部と、
前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、前記解像度取得部により取得された前記解像度と、実寸算出部により算出された前記第３値とに対応する前記視距離を推定する推定部と、
前記推定部により推定された前記視距離を含む推定情報を出力する出力部としてコンピュータを機能させ、
前記第１画像に重畳表示される前記推定情報は、前記第１値及び前記第２値に基づいて生成された、前記第１画像内の物体の実寸を示すゲージオブジェクトを含む、
視距離推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、対象物と人の目との間の距離を示す視距離を検出する技術に関するものである。
【背景技術】
【０００２】
人が注視する対象物と人の目との間の距離（視距離）を推定する技術は、人の状態（例えば目の疲労度）の推定をはじめとする種々の処理における要素技術となる。視距離を推定する技術として、例えば、特許文献１が知られている。特許文献１には、ユーザとディスプレイとの間の距離を距離計で計測し、計測した距離が閾値を下回った場合は、ディスプレイに表示された画像を自動的に乱し、計測した距離が閾値以上の場合、ディスプレイに表示された画像を自動的に復元することによって、近視の進行を低減する技術が開示されている。
【０００３】
また、特許文献２には画像に含まれる虹彩直径の画素数と、人によらず一定である既知の虹彩の実寸とに基づいて、単位画素あたりの実寸を算出し、算出した単位画素あたりの実寸と画像に含まれる虹彩以外の対象物のピクセル数とに基づいて対象物の実寸を算出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１９−１６８６８７号公報
【特許文献２】特表２００４−５０１４６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では視距離を計測するための専用の距離計が必要である。また、特許文献２の技術では、視距離を計測することは行われていない。したがって、距離計を設けることなく簡易な構成により視距離を推定するには特許文献１及び２の技術に対してさらなる改善の必要がある。
【０００６】
本開示は、上記課題を解決するためになされたものであり、距離計を用いることなくより簡易な構成で視距離を推定することが可能な技術を提供することである。
【課題を解決するための手段】
【０００７】
本開示の一態様に係る視距離推定方法は、対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、前記視距離推定装置のコンピュータが、撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、前記第１画像から前記人の虹彩のサイズを検出し、検出した前記虹彩のサイズの画素数を示す第１値を算出し、前記第１画像の解像度を取得し、前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、推定した前記視距離を含む推定情報を出力する。
【発明の効果】
【０００８】
本開示によれば、距離計を用いることなくより簡易な構成で視距離を推定することができる。
【図面の簡単な説明】
【０００９】
【図１】本開示の実施の形態１における視距離推定システムの外観図である。
【図２】本開示の実施の形態１における視距離推定システムの全体構成の一例を示すブロック図である。
【図３】本開示の実施の形態１における視距離推定装置の処理の一例を示すフローチャートである。
【図４】虹彩検出処理の一例を示すフローチャートである。
【図５】虹彩直径の説明図である。
【図６】ディスプレイに表示される表示画面の一例を示す図である。
【図７】顔領域を示す図である。
【図８】目検出領域を示す図である。
【図９】二値画像の一例を示す図である。
【図１０】絞り込み処理が行われた二値画像の一例を示す図である。
【図１１】局所領域を示す図である。
【図１２】虹彩推定中心位置の説明図である。
【図１３】瞳領域内に黒の島領域が現れた二値画像を示す図である。
【図１４】塗りつぶし処理後の二値画像を示す図である。
【図１５】瞳領域の左端画素及び右端画素が検出された二値画像を示す図である。
【図１６】瞳領域の上端画素及び下端画素が検出された二値画像を示す図である。
【図１７】本開示の実施の形態２における視距離推定システムの全体構成の一例を示すブロック図である。
【図１８】実施の形態２における視距離推定装置の処理の一例を示すフローチャートである。
【図１９】顔向き度を検出する処理の説明図である。
【図２０】本開示の実施の形態３における視距離推定システムの全体構成の一例を示す図である。
【図２１】本開示の実施の形態３における視距離推定装置の処理の一例を示すフローチャートである。
【図２２】輻輳角が算出される処理の説明図である。
【発明を実施するための形態】
【００１０】
（本開示に至る経緯）
デジタル機器の普及により、人はスマートフォン及びタブレット端末等の携帯端末装置のディスプレイを近くで長時間視認する機会が増加している。このような機会の増加は眼精疲労を誘発する。例えば、ディスプレイと人の目との視距離を計測し、人の目がディスプレイに近づきすぎている場合、人に注意を促す機能を携帯端末装置に組み込めば、眼精疲労を未然に防ぐことができる。
【００１１】
しかしながら、上記の特許文献１では、赤外線距離計及び超音波トランデューサエミッタをはじめとする距離計を用いて視距離が計測されている。したがって、特許文献１では、距離計を携帯端末装置に予め組み込むこと、或いは、携帯端末装置に外付け可能な距離計を装着することが要求され、携帯端末装置の構成が大型化及び複雑化するという課題が生じる。
【００１２】
また、上記の特許文献２では、虹彩直径の実寸が一定であるとの知見は利用されているが、計測対象はあくまで画像内に含まれる対象物の実寸であり、視距離を計測することは行われていない。
【００１３】
ここで、既知の虹彩直径の実寸と人を撮像したときの画像内に現れる虹彩直径の画素数とに基づいて１画素あたりの実寸を計測し、計測した１画素あたりの実寸を利用して視距離を算出することについて検討する。
【００１４】
画像の解像度は撮像装置の種類又は撮像モードに応じて異なる。例えば、解像度が１００万画素の画像において虹彩の画素数がｎ画素で表されたとしても、解像度が２００万画素の画像において虹彩の画素数が２ｎ画素で表される。このように、既知の虹彩直径の実寸に対する１画素あたり重みは画像の解像度に応じて異なる。したがって、既知の虹彩直径の実寸と画像から検出された虹彩直径の画素数とに基づいて算出された１画素あたりの実寸を単に利用するだけでは、視距離を推定することはできない。
【００１５】
そこで、本発明者は、このような課題に対して詳細な検討を行った結果、既知の虹彩のサイズの実寸と画像から検出した虹彩のサイズの画素数と画像の解像度とを用いることで、距離計を設けることなく簡易な構成により視距離を推定しうるという知見を得て、本開示の下記に示す各態様を想到するに至った。
【００１６】
本開示の一態様に係る視距離推定方法は、対象物と人の目との間の距離を示す視距離を推定する視距離推定装置における視距離推定方法であって、前記視距離推定装置のコンピュータが、撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得し、前記第１画像から前記人の虹彩のサイズを検出し、検出した前記虹彩のサイズの画素数を示す第１値を算出し、前記第１画像の解像度を取得し、前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、取得した前記解像度と、算出した前記第３値とに対応する前記視距離を推定し、推定した前記視距離を含む推定情報を出力する。
【００１７】
本構成によれば、第１画像から検出された虹彩のサイズの画素数を示す第１値と人の虹彩のサイズの実寸を示す第２値とに基づき、１画素に対応する実寸を示す第３値が算出される。画像の解像度及び第３値と視距離との関係を示す関係情報に基づいて、取得した第１画像の解像度と算出した第３値とに対応する視距離が推定される。
【００１８】
このように、本構成では、１画素に対応する実寸を示す第３値と画像の解像度とを用いて視距離が推定されている。そのため、本構成は、距離計を設けることなく簡易な構成で視距離を推定できる。
【００１９】
上記視距離推定方法において、前記視距離推定装置は、カメラ及びディスプレイを備える携帯端末装置であり、前記対象物は、前記ディスプレイであり、前記第１画像は、前記カメラにより撮像されたものであってもよい。
【００２０】
本構成によれば、携帯端末装置のディスプレイを視認する人のディスプレイに対する視距離を推定することができる。そのため、例えば、人がディスプレイに近づき過ぎているような場合、人に注意を促すことが可能になる。それにより、人の眼精疲労を抑制できる。
【００２１】
上記視距離推定方法において、さらに、前記第１画像に基づいて前記顔の向きを検出し、検出した前記顔の向きに応じて前記視距離を補正してもよい。
【００２２】
顔の向きが正面の向きから離れた方向に向かうにつれて、第１画像に現れる虹彩のサイズの画素数（第１値）は小さくなり、それに伴って、推定される視距離は実際の視距離よりも大きくなる。これでは、正確に視距離を推定できない。本構成によれば、顔の向きに応じて視距離が補正されているため、視距離の推定精度を高めることができる。
【００２３】
上記視距離推定方法において、前記視距離の補正では、前記顔の向きが正面の向きから離れた方向に向かうにつれて前記視距離を小さくするための補正係数を前記視距離に乗じることによって、前記視距離を補正してもよい。
【００２４】
本構成によれば、顔の向きが正面の向きから離れた方向に向かうにつれて視距離を小さくするための補正係数が視距離に乗じられることによって、視距離が補正されている。そのため、顔の向きに関わらず視距離を正確に推定できる。
【００２５】
上記視距離推定方法において、前記虹彩のサイズの検出では、前記第１画像から前記人の目の領域を含む第２画像を生成し、前記第２画像を二値化して、階調値が閾値より小さい画素が第１輝度値で表され、前記階調値が閾値以上の画素が第２輝度値で表された第３画像を生成し、前記第３画像において、前記第１輝度値を有する第１輝度領域内に表れる前記第２輝度値の画素であって所定の条件を満たす前記第２輝度値の画素を、前記第１輝度値の画素に置き換えて第４画像を生成し、前記第４画像を用いて前記虹彩のサイズを検出してもよい。
【００２６】
本構成によれば、第３画像において、第１輝度領域内に表れる第２輝度値の画素であって所定の条件を満たす第２輝度値の画素が第１輝度値の画素に置き換えられて第４画像が生成される。これにより、第１輝度領域内の瞳に相当する領域内に現れる第２輝度値の島領域が第１輝度値で塗りつぶされる。そして、塗りつぶされた二値画像である第４画像を用いて虹彩のサイズが検出される。その結果、角膜に映り込んだ外光及び背景の影響が抑制され、虹彩を精度よく検出できる。
【００２７】
上記視距離推定方法において、前記虹彩のサイズの検出では、前記人の左右の目の虹彩の中心位置を検出し、さらに、検出した前記左右の目の前記虹彩の中心位置と推定した前記視距離とに基づいて、前記人の目の輻輳角を算出してもよい。
【００２８】
本構成によれば、左右の目の虹彩の中心位置と視距離とに基づいて目の輻輳角が算出されているため、人の目の疾患の判断材料を提示できる。
【００２９】
上記視距離推定方法において、前記輻輳角の算出では、前記第１画像に基づいて、前記人の目頭間の中心を示す目頭間の中点を検出し、前記目頭間の中点から左の目の前記虹彩の中心位置までの第１距離と前記目頭間の中点から右の目の前記虹彩の中心位置までの第２距離とを算出し、前記第１距離及び推定した前記視距離に基づいて第１輻輳半角を算出すると共に前記第２距離及び推定した前記視距離に基づいて第２輻輳半角を算出し、前記第１輻輳半角と前記第２輻輳半角との和を前記輻輳角として算出してもよい。
【００３０】
本構成によれば、第１画像に基づいて、人の目頭間の中点が検出され、目頭間の中点から左の目の虹彩の中心位置までの第１距離と目頭間の中点から右の目の虹彩の中心位置までの第２距離とが算出され、第１距離及び推定した視距離に基づいて第１輻輳半角が算出されると共に第２距離及び推定した視距離に基づいて第２輻輳半角が算出され、第１輻輳半角と第２輻輳半角との和が輻輳角として算出されている。そのため、輻輳角を正確に算出できる。
【００３１】
上記視距離推定方法において、さらに、前記推定情報を前記第１画像に重畳表示させてもよい。
【００３２】
本構成によれば、推定された視距離を含む推定情報が人の顔を含む第１画像に重畳表示されるため、推定情報を第１画像にリアルタイム表示できる。
【００３３】
上記視距離推定方法において、前記第１画像に重畳表示される前記推定情報には、前記第１値及び前記第２値に基づいて生成された、前記第１画像内の物体の実寸を示すゲージオブジェクトを含んでもよい。
【００３４】
本構成によれば、第１画像内にゲージオブジェクトが表示されるため、第１画像内の物体の実寸を示すことができる。
【００３５】
上記視距離推定方法において、前記虹彩のサイズの検出では、左右の目のそれぞれの虹彩のサイズを検出し、前記視距離の推定では、前記左右の目のそれぞれについて、検出された前記虹彩のサイズに基づいて前記虹彩の検出結果が適正であるか否かを判定し、前記左右の目のうち適正と判定された目に対する前記第３値のみを用いて前記視距離を推定してもよい。
【００３６】
人がまばたきをしていたり、外光及び背景が角膜へ映り込んでいたりするような場合、虹彩が想定されるサイズより小さなサイズで検出されることがある。この場合、視距離が実際の視距離よりも大きく推定され、視距離の推定精度が低下する。本構成によれば、左右の目のそれぞれの虹彩のサイズに基づいて、左右の目のそれぞれについて虹彩の検出結果が適正でるか否かが判定され、適正と判定された目の第３値のみを用いて視距離が推定される。そのため、虹彩のサイズが想定されるサイズよりも小さく検出されることを考慮に入れて適切な視距離を推定することができる。
【００３７】
上記視距離推定方法において、前記関係情報は、前記解像度及び前記第３値を説明変数、前記視距離を目的変数とする回帰式であってもよい。
【００３８】
この構成によれば、回帰式を用いて視距離を正確に推定できる。
【００３９】
本開示の別の一態様に係る視距離推定装置は、対象物と人の目との間の距離を示す視距離を推定する視距離推定装置であって、撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得する画像取得部と、前記第１画像から前記人の虹彩のサイズを検出する虹彩検出部と、検出した前記虹彩のサイズの画素数を示す第１値を算出する画素数算出部と、前記第１画像の解像度を取得する解像度取得部と、前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出する実寸算出部と、前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、前記解像度取得部により取得された前記解像度と、実寸算出部により算出された前記第３値とに対応する前記視距離を推定する推定部と、前記推定部により推定された前記視距離を含む推定情報を出力する出力部とを備える。
【００４０】
本開示のさらに別の一態様に係る視距離推定プログラムは、対象物と人の目との間の距離を示す視距離を推定する視距離推定装置としてコンピュータを機能させる視距離推定プログラムであって撮像装置により撮像された、前記対象物を見る前記人の顔を含む第１画像を取得する画像取得部と、前記第１画像から前記人の虹彩のサイズを検出する虹彩検出部と、検出した前記虹彩のサイズの画素数を示す第１値を算出する画素数算出部と、前記第１画像の解像度を取得する解像度取得部と、前記第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出する実寸算出部と、前記解像度及び前記第３値と前記視距離との関係を示す関係情報に基づいて、前記解像度取得部により取得された前記解像度と、実寸算出部により算出された前記第３値とに対応する前記視距離を推定する推定部と、前記推定部により推定された前記視距離を含む推定情報を出力する出力部としてコンピュータを機能させる。
【００４１】
これらの構成によれば、上記視距離推定方法と同様の作用効果が得られる。
【００４２】
本開示は、視距離検出プログラムによって動作する視距離推定方法システムとして実現することもできる。また、このようなコンピュータプログラムを、ＣＤ−ＲＯＭ等のコンピュータ読取可能な非一時的な記録媒体あるいはインターネット等の通信ネットワークを介して流通させることができるのは、言うまでもない。
【００４３】
なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることもできる。
【００４４】
（実施の形態１）
図１は、本開示の実施の形態１における視距離推定システム１００の外観図である。視距離推定システム１００は、スマートフォン又はタブレット端末等の携帯端末装置により構成されている。但し、これは一例であり、視距離推定システム１００は、据え置き型のコンピュータ又はクラウドサーバとカメラとディスプレイとを適宜組み合わせて構成されてもよい。
【００４５】
視距離推定システム１００は、視距離推定装置１、撮像装置２、及びディスプレイ３を含む。視距離推定装置１は、撮像装置２により撮像された人Ｕ１の目とディスプレイ３との距離である視距離を推定する。
【００４６】
撮像装置２は、携帯端末装置に実装されたカメラで構成されている。撮像装置２は、所定のフレームレートでカラーの可視光画像が撮像可能なカメラである。
【００４７】
ディスプレイ３は、携帯端末装置に実装された液晶表示装置又は有機ＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ）表示装置等の表示装置で構成されている。ディスプレイ３は、撮像装置２が撮像した人Ｕ１の顔の画像を表示する。さらに、ディスプレイ３は、人Ｕ１の顔の画像に視距離推定装置１が推定した視距離を含む推定情報を重畳表示させる。
【００４８】
図２は、本開示の実施の形態１における視距離推定システム１００の全体構成の一例を示すブロック図である。視距離推定装置１は、プロセッサ１０及びメモリ２０を含む。プロセッサ１０は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で構成されている。プロセッサ１０は、画像取得部１１、虹彩検出部１２、画素数算出部１３、解像度取得部１４、実寸算出部１５、推定部１６、及び出力部１７を含む。画像取得部１１〜出力部１７は例えばプロセッサ１０が視距離推定プログラムを実行することで実現される。
【００４９】
画像取得部１１は、撮像装置２により撮像された、対象物を見る人の顔を含む顔画像を取得する。対象物は、例えばディスプレイ３である。画像取得部１１は、所定のフレームレートで撮像される顔画像を順次に取得する。顔画像は対象物を見る人Ｕ１の顔を含む第１画像の一例である。
【００５０】
虹彩検出部１２は、画像取得部１１が取得した顔画像から人Ｕ１の虹彩のサイズを検出する。虹彩のサイズとしては、虹彩直径又は虹彩半径が採用できる。以下、虹彩のサイズは虹彩直径であるものとして説明する。
【００５１】
具体的には、虹彩検出部１２は、顔画像から人の顔の領域を含む顔領域を検出し、検出した顔領域から人Ｕ１の左右のそれぞれの目の領域を含む目検出領域（第２画像の一例）を生成する。目検出領域は例えば矩形状である。
【００５２】
次に、虹彩検出部１２は、目検出領域を二値化して、階調値が閾値より小さい画素が第１輝度値で表され、階調値が閾値以上の画素が第２輝度値で表された二値画像（第３画像の一例）を生成する。ここで、目検出領域がカラー画像で構成されている場合、虹彩検出部１２は、目検出領域を例えば０〜２５５の階調値を有するグレースケール画像に変換し、変換したグレースケール画像に対して二値化処理を実行すればよい。二値化処理としては、例えば大津の二値化処理が採用できる。第１輝度値は例えば白であり、第２輝度値は例えば黒である。すなわち、本実施の形態では、暗い箇所は白で表され、明るい箇所は黒で表された二値画像が生成される。白の輝度値は例えば２５５で表され、黒の輝度値は例えば０で表される。
【００５３】
次に、虹彩検出部１２は、二値画像において、白の画素からなる白領域（第１輝度領域）内に表れる黒の画素であって所定の条件を満たす黒の画素を、白画素に置き換える塗りつぶし処理を実行する。そして、虹彩検出部１２は、塗りつぶし処理が行われた二値画像を用いて虹彩のサイズを検出する。これにより、白領域内の瞳に相当する領域（以下、瞳領域）内に現れる黒の島領域が白画素で塗りつぶされた二値画像が生成される。塗りつぶし処理が行われた二値画像は、第４画像の一例である。塗りつぶし処理の詳細は後述する。
【００５４】
図８を参照する。本実施の形態では、目は、白目１０３と白目１０３に取り囲まれた正面から見て円形の瞳１１０とを含む。瞳１１０は、正面から見て円形の瞳孔１０１と、瞳孔１０１を取り囲むドーナツ状の虹彩１０２とを含む。本実施の形態では、虹彩中心位置と、瞳１１０の中心位置と、瞳孔１０１の中心位置とは同じとする。
【００５５】
図２を参照する。画素数算出部１３は、虹彩検出部１２により検出された虹彩直径の画素数を示す第１値を算出する。
【００５６】
解像度取得部１４は、顔画像の解像度を取得する。ここで、解像度取得部１４は、メモリ２０に予め記憶されたディスプレイ３の解像度を顔画像の解像度として取得してもよい。或いは、解像度取得部１４は、撮像装置２が顔画像を撮像したときの撮像モードに対応する解像度を撮像装置２から取得することによって、顔画像の解像度を取得してもよい。或いは、解像度取得部１４は、画像取得部１１が取得した顔画像の解像度をカウントすることによって顔画像の解像度を取得してもよい。取得される解像度には、例えば、水平解像度が含まれていてもよいし、水平解像度及び垂直解像度が含まれていてもよい。
【００５７】
実寸算出部１５は、画素数算出部１３が算出した第１値及び予め定められた虹彩直径の実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出する。虹彩直径の実寸とは、人Ｕ１によらず一定である虹彩直径の実際の寸法であり、既知の値である。第２値としては例えば１２ｍｍ程度の値が採用される。なお、虹彩のサイズとして虹彩半径が用いられる場合、虹彩半径の実寸が第２値として使用される。
【００５８】
推定部１６は、解像度及び第３値と視距離との関係を示す関係情報に基づいて、解像度取得部１４により取得された解像度と実寸算出部１５により算出された第３値とに対応する視距離を推定する。
【００５９】
関係情報としては、例えば解像度と第３値と視距離とが対応付けられた多数のデータセットを回帰分析することによって予め作成された、視距離を目的変数とし、解像度及び第３値を説明変数とする回帰式が採用される。或いは、関係情報としては、多数のデータセットをニューラルネットワークなどの機械学習を用いて学習された、視距離を出力とし、解像度及び第３値を入力とする機械学習モデルが採用されてもよい。
【００６０】
データセットは以下の実測により取得される。例えばある解像度の撮像装置２を用いて撮像装置２及び人Ｕ１間の距離を変えながら、各距離における虹彩直径の画素数が計測される。次に、計測された虹彩直径の画素数で虹彩直径の実寸（例えば１２ｍｍ）が割られ、第３値が求められる。このような第３値の算出が、解像度を変更されながら多数実施される。これにより、解像度と第３値と視距離とが対応付けられた多数のデータセットが得られる。
【００６１】
出力部１７は、推定部１６により推定された視距離を含む推定情報を出力する。
【００６２】
メモリ２０は、例えば不揮発性の記憶装置で構成され、関係情報を記憶する。
【００６３】
次に、視距離推定装置１の処理について説明する。図３は、本開示の実施の形態１における視距離推定装置１の処理の一例を示すフローチャートである。なお、図３に示すフローチャートは、所定のサンプリング周期で実行される。所定のサンプリング周期は例えば撮像装置２のフレーム周期である。
【００６４】
ステップＳ１において、画像取得部１１は撮像装置２から顔画像を取得する。ステップＳ２において、虹彩検出部１２は、虹彩検出処理を実行し、顔画像に含まれる人Ｕ１の虹彩直径を検出する。ここで、虹彩検出部１２は、人Ｕ１の左右のそれぞれの目の虹彩直径を検出する。但し、これは一例であり、虹彩検出部１２は、左右の目のうちいずれか一方の虹彩直径を検出してもよい。虹彩検出処理の詳細は図４のフローチャートを用いて後述する。
【００６５】
ステップＳ３において、画素数算出部１３は、虹彩検出部１２により検出された虹彩直径の画素数をカウントすることによって第１値を算出する。ここで、画素数算出部１３は、左右の目のそれぞれの虹彩直径の画素数をカウントすることによって第１値を算出すればよい。図５は、虹彩直径の説明図である。虹彩検出処理においては、虹彩の左端画素Ｐ６と虹彩の右端画素Ｐ７とが検出される。したがって、画素数算出部１３は、左端画素Ｐ６と右端画素Ｐ７との間にある顔画像の画素数をカウントし、得られた画素値を第１値として算出すればよい。例えば、画素数算出部１３は、左端画素Ｐ６のＸ座標と右端画素Ｐ７のＸ座標との間にあるＸ座標の画素数をカウントすることで第１値を算出してもよい。Ｘ座標とは、顔画像の横方向（水平方向）を示すＸ方向の座標である。Ｙ座標とは、顔画像の縦方向（垂直方向）を示すＹ方向の座標である。
【００６６】
この例では、Ｘ方向の虹彩の長さが虹彩直径として採用されている。これは、Ｘ方向の虹彩直径は上まぶたの覆い及びまばたきの影響を受けにくい点及び一般的に虹彩直径はＸ方向の虹彩の長さが採用される点を考慮したためである。本開示は、これに限定されず、虹彩直径は、Ｙ方向の虹彩の長さ（瞳領域の上端画素と下端画素との長さ）が採用されてもよい。或いは、虹彩中心位置Ｐ０を通る斜めの直線Ｌ０上における虹彩の左端画素Ｐ６´と虹彩の右端画素Ｐ７´との長さが虹彩直径として採用されてもよい。
【００６７】
ステップＳ４において、解像度取得部１４は、顔画像の解像度を取得する。ここでは、顔画像の水平解像度が取得されるものとする。
【００６８】
ステップＳ５において、実寸算出部１５は、第２値を第１値で割ることで第３値を算出する。これにより、顔画像内の１画素あたりの実寸を表す第３値が得られる。ここで、実寸算出部１５は、左右の目のそれぞれについて第３値を算出すればよい。
【００６９】
ステップＳ６において、推定部１６は、第３値と解像度とを関係情報に入力して視距離を推定する。ここで、推定部１６は、左右の目のそれぞれについての第３値の例えば平均値を関係情報に入力すればよい。
【００７０】
或いは、推定部１６は、虹彩検出処理により算出された左右の目のそれぞれの虹彩直径に基づいて、左右の目が適正な虹彩直径を示しているか否かを判定し、左右の目のうち適正と判定した目に対する第３値のみを用いて視距離を推定してもよい。具体的には、推定部１６は、両方の目が適正な虹彩直径を示していると判定した場合、左右の目のそれぞれの第３値の平均値を関係情報に入力して視距離を推定すればよい。一方、推定部１６は、片方の目のみが適正な虹彩直径を示している場合、適正な片方の目の第３値のみを関係情報に入力して視距離を推定すればよい。さらに、推定部１６は、両方の目が適正な虹彩直径を示していない場合、視距離の推定をしなくてもよい。この場合、推定部１６は、エラー信号を出力部１７に入力すればよい。
【００７１】
左右の目が適正な虹彩直径を示しているか否かは、例えば、以下のように判定される。まず、推定部１６は、顔画像に含まれる顔の所定の部位の横幅を算出する。顔の所定の部位としては、例えば顔の額が採用できる。例えば、推定部１６は、顔画像に対して特徴点を検出するランドマーク処理を実行して、顔の額の左端の特徴点と右端の特徴点とを検出する。そして、左右の特徴点の距離を額の横幅として算出する。次に、推定部１６は、額の横幅に対して所定の係数を乗じて直径基準値を算出する。そして、推定部１６は、虹彩検出処理により検出された虹彩直径が直径基準値以下であれば、その虹彩直径は適正でないと判定すればよい。
【００７２】
これにより、人がまばたきをしていたり、外光及び背景が角膜へ映り込んでいたりすることで、虹彩のサイズが想定されるサイズよりも小さく検出されても、適切に視距離を推定することができる。
【００７３】
ステップＳ７において、出力部１７は、推定された視距離を含む推定情報を生成し、推定情報を出力する。例えば、出力部１７は、推定情報が顔画像に重畳表示された表示画面を生成し、この表示画面をディスプレイ３に表示すればよい。
【００７４】
図６は、ディスプレイ３に表示される表示画面Ｇ１の一例を示す図である。表示画面Ｇ１においては、目の上部にゲージオブジェクトＭ１が表示されている。ゲージオブジェクトＭ１は、複数の目盛り線Ｍ１１を含む。ゲージオブジェクトＭ１は、顔画像内の物体の実寸を示す表示物である。ゲージオブジェクトＭ１は、例えば１０本の目盛り線Ｍ１１を含む。隣接する目盛り線Ｍ１１の間隔は実寸が対応付けられている。この例では、目盛り線Ｍ１１の間隔は１ｃｍが対応付けられている。したがって、表示画面Ｇ１を見た人Ｕ１は目盛り線Ｍ１１の間隔によって顔画像内の任意の部分の実寸を把握することができる。この例では、唇の横幅は目盛り線Ｍ１１の間隔の約４個分に相当するため、唇の横幅は約４ｃｍであることが把握される。
【００７５】
ゲージオブジェクトＭ１は下記のように算出される。まず、出力部１７は、第１画素を第２画素で割ることで、単位長さあたりの画素数を求める。次に、出力部１７は、単位長さあたりの画素数に目盛り線Ｍ１１の間隔の実寸値（この例では１ｃｍ）を乗じることで、顔画像における目盛り線Ｍ１１の間隔の画素数を算出する。そして、出力部１７は、算出した画素数ごとに目盛り線Ｍ１１を配列することでゲージオブジェクトＭ１を生成すればよい。
【００７６】
表示画面Ｇ１の上部には視距離を表示する表示欄Ｒ１が配置されている。この例では、表示欄Ｒ１には視距離として〇〇ｃｍと記載されている。これにより、携帯情報端末を操作する人Ｕ１はディスプレイ３までの視距離が〇〇ｃｍであることを把握できる。
【００７７】
ここで、出力部１７は、推定された視距離が所定の視距離基準値以下であるか否かを判定し、推定された視距離が視距離基準値以下の場合、注意を促すメッセージを表示画面Ｇ１に表示させてもよい。
【００７８】
その他、表示画面Ｇ１には、虹彩中心位置Ｐ０が瞳の中心に重畳表示されている。さらに、上まぶたの位置Ｐ１０と、下まぶたの位置Ｐ１１と、目尻の位置Ｐ１２と、目頭の位置Ｐ１３とが人Ｕ１の顔画像に重畳表示されている。さらに、虹彩外縁を示す円Ｌ４が顔画像に重畳表示されている。さらに、上まぶたの位置Ｐ１０と、目尻の位置Ｐ１２と、目頭の位置Ｐ１３と、下まぶたの位置Ｐ１１とを通る矩形Ｌ３が顔画像に重畳表示されている。これらの目に関する情報は後述する虹彩検出処理の処理結果が用いられる。
【００７９】
これにより、表示画面Ｇ１は、虹彩情報をはじめとする人Ｕ１の目に関する情報を撮像装置２が撮像した顔画像に対してリアルタイムで表示することができる。
【００８０】
次に、虹彩検出処理の詳細について説明する。図４は、虹彩検出処理の一例を示すフローチャートである。ステップＳ４１において、虹彩検出部１２は、顔領域を検出する分類器に顔画像を入力し、顔領域を検出する。図７は顔領域４０を示す図である。図７に示すように、虹彩検出部１２は、額の上部と顎の下部と、耳の生え際とを含む矩形状の領域を顔領域４０として検出している。ここでは、顔領域４０は髪の全体を含んでいないが、髪の全体を含む領域であってもよい。図７では、顔画像は人Ｕ１を正面から撮影した画像であるため、左目と右目とが含まれている。
【００８１】
ステップＳ４２において、虹彩検出部１２は、ステップＳ４１で検出した顔領域４０を、目検出領域を検出する分類器に入力して目検出領域を検出する。図８は、目検出領域５０を示す図である。図８に示すように、目検出領域５０は、目の全域を含み、目の大きさに多少のマージンが加えられた矩形状の領域であることが分かる。図８では、左右のそれぞれの目検出領域５０が抽出されている。
【００８２】
ステップＳ４３において、虹彩検出部１２は、ステップＳ４２で検出された目検出領域５０をグレースケール画像に変換する。グレースケール画像への変換処理としては、例えば目検出領域５０を構成する各画素の赤成分、緑成分、青成分のそれぞれの階調値の平均を算出する処理が採用できる。但し、これは一例であり、グレースケール画像への変換処理としては他の処理が採用されてもよい。
【００８３】
ステップＳ４４において、虹彩検出部１２は、グレースケール画像に変換された目検出領域５０を二値化して二値画像６０を生成する。図９は、二値画像６０の一例を示す図である。図９の例では、目検出領域５０において瞳及びまつ毛等の暗い部位が白で表され、白目及び肌等の明るい部位が黒で表された二値画像６０が生成されている。図９の例では、白の画素で構成された一塊の白領域Ｄ１によって目の情報が表されている。図９の例では、角膜への外光及び背景等の映り込みが少なかったため、白領域Ｄ１に黒の島領域が現れていない。角膜への映り込みがある場合、図１３に示すように黒の島領域Ｄ２が現れる。
【００８４】
ステップＳ４５において、虹彩検出部１２は、二値画像６０に対して、白領域Ｄ１の周囲の不要な黒の領域を除去する絞り込み処理を適用することによって二値画像７０を生成する。図１０は、絞り込み処理が行われた二値画像７０の一例を示す図である。図１０の例では、二値画像６０において白領域Ｄ１に外接矩形が設定され、この外接矩形の外側の黒の領域が除去されることにより二値画像７０が生成されている。これにより、二重まぶた、目の下のクマ、目の周囲にあるほくろ、及び目の周囲にあるめがねが除去され、以降の処理の精度を高めることができる。
【００８５】
ステップＳ４６において、虹彩検出部１２は、二値画像７０をＸ方向に所定画素ずつ分離して複数の局所領域に分割する。図１１は、局所領域７１を示す図である。図１１の例では、虹彩検出部１２は、二値画像７０を横方向に均等に１０分割する。これにより、二値画像７０は、Ｙ方向を長手方向とする短冊状の１０個の局所領域７１に分けられる。ここで、虹彩検出部１２は、二値画像７０を１０個の局所領域７１に分割したが、これは一例である。分割数は、２以上９以下の整数又は１１以上の整数であってもよい。
【００８６】
ステップＳ４７において、虹彩検出部１２は、１０個の局所領域７１のそれぞれの平均輝度値を算出する。ここでは、白の輝度値が２５５であり、黒の輝度値が０であるため、平均輝度値は例えば下記の式で算出される。
【００８７】
平均輝度値＝局所領域７１の白の画素数×２５５／局所領域７１の画素数
ステップＳ４８において、虹彩検出部１２は、虹彩推定中心位置のＸ座標を算出する。図１２は、虹彩推定中心位置Ｐ３の説明図である。虹彩推定中心位置Ｐ３は、虹彩中心位置の推定位置であり、最終的に算出される虹彩中心位置Ｐ０とは異なる。二重まぶた、まつ毛の濃さ、及びつけまつ毛等の影響によりこれらの部位が白領域Ｄ１として大きく表れることがある。この場合、白目１０３の部位が塗りつぶされる可能性がある。このような事態を回避するために、本実施の形態では虹彩推定中心位置Ｐ３を算出している。
【００８８】
図１２の例では、左から５番目の局所領域７１ａの平均輝度値が最大である。そのため、虹彩検出部１２は、局所領域７１ａのＸ方向の中点の座標を虹彩推定中心位置Ｐ３のＸ座標として算出する。なお、局所領域７１のＸ方向の幅によっては、局所領域７１のＸ方向の中点が虹彩推定中心位置Ｐ３のＸ座標として妥当でない場合もある。この場合、局所領域７１のＸ方向の左端又は右端が虹彩推定中心位置Ｐ３のＸ座標として算出されてもよい。
【００８９】
ステップＳ４９において、虹彩検出部１２は、虹彩推定中心位置Ｐ３のＹ座標を算出する。図１２を参照し、虹彩検出部１２は、局所領域７１ａにおいて、白画素の最上端点Ｐ１と、白画素の最下端点Ｐ２とを検出し、最上端点Ｐ１と最下端点Ｐ２との中点を虹彩推定中心位置Ｐ３のＹ座標として算出する。なお、まつ毛及び化粧の影響で最上端点Ｐ１及び最下端点Ｐ２が左に隣接する局所領域７１ｂ又は右に隣接する局所領域７１ｃに現れることもある。そこで、虹彩検出部１２は、局所領域７１ａ〜７１ｃのそれぞれの領域において最上端点及び最下端点を算出し、算出した３個の最上端点を平均して平均最上端点を求めるとともに、算出した３個の最下端点を平均して平均最下端点を算出し、平均最上端点と平均最下端点との中点を虹彩推定中心位置Ｐ３のＹ座標として算出してもよい。
【００９０】
ステップＳ５０において、虹彩検出部１２は、二値画像７０に対して塗りつぶし処理を実行する。可視光画像においては、周囲の明るさ等により、角膜に外光及び背景等が映り込むことがある。この映り込みが大きい場合、黒色又は茶色である瞳内に白などの明るい色の領域が現れる。この場合、目の画像を二値化すると、瞳領域内に黒の島領域が現れ、虹彩情報を高精度に検出できなくなる。そこで、本実施の形態では、塗りつぶし処理を実行する。
【００９１】
図１３は、瞳領域内に黒の島領域Ｄ２が現れた二値画像７０を示す図である。図１２において左図は左目の二値画像７０を示し、右図は右目の二値画像７０を示している。図１２に示すように、左右の二値画像７０の両方において、中央に現れる瞳に相当する白領域Ｄ１内に黒の島領域Ｄ２が点在して現れていることが分かる。この黒の島領域Ｄ２を塗りつぶすのが塗りつぶし処理である。本明細書では、人Ｕ１を正面から見て左にある目を左目、右にある目を右目とする。但し、これは一例であり、この関係は逆であってもよい。
【００９２】
塗りつぶし処理の詳細は下記の通りである。まず、虹彩検出部１２は、二値画像７０に対して虹彩推定中心位置Ｐ３のＸ座標にＹ方向と平行な縦ラインＬ１を設定する。次に、虹彩検出部１２は、縦ラインＬ１において二値画像７０の上端側から最初に現れる白画素を上端画素Ｐ４として検出する。次に、虹彩検出部１２は、縦ラインＬ１において二値画像７０の下端側から最初に現れる白画素を下端画素Ｐ５として検出する。次に、虹彩検出部１２は、上端画素Ｐ４と下端画素Ｐ５との間の距離が第１基準距離よりも大きいか否かを判定する。次に、虹彩検出部１２は、上端画素Ｐ４及び下端画素Ｐ５間の距離が第１基準距離よりも大きいと判定した場合、縦ラインＬ１において上端画素Ｐ４及び下端画素Ｐ５間にある黒画素を所定の条件を満たす黒画素として判定し、この黒画素を白画素に置換する。一方、虹彩検出部１２は、上端画素Ｐ４と下端画素Ｐ５間の距離が第１基準距離以下と判定した場合、縦ラインＬ１に対する前記置換は行わない。第１基準距離としては、例えば、想定される虹彩直径を基準に妥当な距離が採用される。
【００９３】
虹彩検出部１２は、このような塗りつぶし処理を虹彩推定中心位置Ｐ３からＸ方向の左側に向けて左基準距離の範囲内の各縦ラインＬ１について実行すると共に虹彩推定中心位置Ｐ３からＸ方向の右側に向けて右基準距離の範囲内の各縦ラインＬ１について実行する。左基準距離範囲と右基準距離範囲との和を第２基準距離とする。左基準距離範囲と右基準距離範囲とは例えば同じ範囲である。第２基準距離としては、例えば、想定される虹彩直径よりも多少大きな距離が採用される。これにより、瞳領域に位置する縦ラインＬ１に対して重点的に塗りつぶし処理を適用することができる。
【００９４】
図１４は、塗りつぶし処理後の二値画像８０を示す図である。図１４の左図は図１３の左図の二値画像７０に対して塗りつぶし処理が適用された二値画像８０を示し、図１４の右図は図１３の右図の二値画像７０に対して塗りつぶし処理が適用された二値画像８０を示している。図１４に示すように、図１３に存在していた黒の島領域Ｄ２が白画素で塗りつぶされ、一塊の白画素からなる白領域Ｄ３が生成されていることが分かる。一方、まつ毛の部位にあった黒の島領域は塗りつぶし処理が行われていないことが分かる。すなわち、瞳領域に位置する縦ラインＬ１が重点的に塗りつぶされていることが分かる。
【００９５】
ステップＳ５１において、虹彩検出部１２は、瞳領域の左端画素Ｐ６及び右端画素Ｐ７をそれぞれ検出する。図１５は、瞳領域の左端画素Ｐ６及び右端画素Ｐ７が検出された二値画像８０を示す図である。虹彩検出部１２は、二値画像８０の白領域Ｄ３において、虹彩推定中心位置Ｐ３を起点として、Ｘ方向を左右に１画素ずつ輝度値の変化を調べる。そして、虹彩検出部１２は、Ｘ方向の左側に最初に現れる黒画素を左端画素Ｐ６として検出すると共に、Ｘ方向の右側に最初に現れる黒画素を右端画素Ｐ７として検出する。
【００９６】
ステップＳ５２において、虹彩検出部１２は、左端画素Ｐ６及び右端画素Ｐ７の中間位置を虹彩中心位置Ｐ０のＸ座標として算出する。
【００９７】
ステップＳ５３において、虹彩検出部１２は、瞳領域の上端画素及び下端画素をそれぞれ検出する。図１６は、瞳領域の上端画素Ｐ８及び下端画素Ｐ９が検出された二値画像８０を示す図である。虹彩検出部１２は、二値画像８０の白領域Ｄ３において、虹彩中心位置Ｐ０のＸ座標を起点として、Ｙ方向を上下に１画素ずつ輝度値の変化を調べる。そして、虹彩検出部１２は、Ｙ方向の上側に最初に現れる黒画素を上端画素Ｐ８として検出すると共に、Ｙ方向の下側に最初に現れる黒画素を下端画素Ｐ９として検出する。
【００９８】
ステップＳ５４において、虹彩検出部１２は、上端画素Ｐ８及び下端画素Ｐ９の中間位置を虹彩中心位置Ｐ０のＹ座標として算出する。以上により虹彩中心位置Ｐ０が算出される。
【００９９】
ステップＳ５５において、虹彩検出部１２は、左端画素Ｐ６及び右端画素Ｐ７間の距離を虹彩直径として算出する。例えば、虹彩検出部１２は、左端画素Ｐ６のＸ座標と右端画素Ｐ７のＸ座標との差を虹彩直径として算出してもよい。
【０１００】
その他、虹彩検出部１２は、図６に示す上まぶたの位置Ｐ１０と、下まぶたの位置Ｐ１１と、目尻の位置Ｐ１２と、目頭の位置Ｐ１３と、円Ｌ４と、矩形Ｌ３とをそれぞれ算出してもよい。上まぶたの位置Ｐ１０は、二値画像８０に対してモルフォロジー勾配演算を行うことで得られた白領域のエッジの上端画素が採用される。下まぶたの位置Ｐ１１は、二値画像８０に対してモルフォロジー勾配演算を行うことで得られた白領域のエッジの下端画素が採用される。目尻の位置Ｐ１２は、左目においては左目の二値画像８０における白領域の左端画素が採用される。目頭の位置Ｐ１３は、左目においては左目の二値画像８０における、白領域の右端画素が採用される。円Ｌ４は、虹彩中心位置Ｐ０を中心とする虹彩直径を有する円が採用される。矩形Ｌ３は、上まぶたの位置Ｐ１０と下まぶたの位置Ｐ１１と目尻の位置Ｐ１２と目頭の位置Ｐ１３とを通る矩形が採用される。ステップＳ５５の処理が終了すると処理は図３のステップＳ３に進む。
【０１０１】
このように、本実施の形態では、第１画像から検出された虹彩直径の画素数である第１値と人の虹彩の実寸を示す第２値とに基づき、１画素に対応する実寸を示す第３値が算出される。画像の解像度及び第３値と視距離との関係を示す関係情報に基づいて、顔画像の解像度と算出した第３値とに対応する視距離が推定される。このように、本実施の形態では、１画素に対応する実寸を示す第３値と顔画像の解像度とを用いて視距離が推定されている。そのため、本実施の形態は、距離計を設けることなく簡易な構成で視距離を推定できる。
【０１０２】
（実施の形態２）
実施の形態２は、顔の向きに応じて視距離を補正するものである。図１７は、本開示の実施の形態２における視距離推定システム１００の全体構成の一例を示すブロック図である。なお、本実施の形態において実施の形態１と同一の構成要素は同一の符号を付して説明を省略する。実施の形態２における視距離推定システム１００は、視距離推定装置１Ａを含む。視距離推定装置１Ａのプロセッサ１０Ａは、視距離推定装置１のプロセッサ１０に対してさらに視距離補正部１８を含む。
【０１０３】
視距離補正部１８は、顔画像に基づいて横方向における顔の向きの度合いを示す顔向き度を検出し、検出した顔向き度に応じて推定部１６により推定された視距離を補正する。詳細には、視距離補正部１８は、顔向き度が正面の向きから離れた方向に向かうにつれて視距離を小さくするための補正係数を視距離に乗じることによって、視距離を補正する。
【０１０４】
図１８は、実施の形態２における視距離推定装置１Ａの処理の一例を示すフローチャートである。本フローチャートにおいて、図３と同じ処理には同じ処理番号を付している。
【０１０５】
ステップＳ６に続くステップＳ１８０１において、視距離補正部１８は、顔画像に基づいて人Ｕ１の顔向き度を検出する。図１９は、顔向き度を検出する処理の説明図である。
【０１０６】
まず、視距離補正部１８は、顔画像にランドマーク処理を適用することで顔の特徴点を検出する。特徴点は、ランドマークとも称され、鼻の頂点、唇の端、及びフェイスラインの屈曲点などの顔の特徴的な点を示す。
【０１０７】
次に、視距離補正部１８は、顔領域４０に設定された顔の特徴点９Ｘから縦方向の縦中心線１３１と横方向の横中心線１３２とを設定する。例えば、視距離補正部１８は、鼻筋の中心を示す特徴点１３３を通り、且つ顔領域４０の縦の辺と平行な直線を縦中心線１３１として設定すればよい。特徴点１３３は、例えば鼻筋を示す５個の特徴点９Ｘのうち、上から３番目の特徴点９Ｘである。次に、視距離補正部１８は、例えば特徴点１３３を通り、且つ顔領域４０の横の辺と平行な直線を横中心線１３２として設定する。なお、縦中心線１３１及び横中心線１３２は、鼻筋の中心の特徴点１３３を通るとして説明したが、例えば鼻筋の下端の特徴点１３４を通るように設定されてもよいし、鼻筋の上端の特徴点１３５を通るように設定されてもよい。
【０１０８】
次に、視距離補正部１８は、横中心線１３２を特徴点１３３で区画し、右区間Ｋ１と左区間Ｋ２との長さを求める。次に、視距離補正部１８は、横中心線１３２の長さを１００％としたときの右区間Ｋ１と左区間Ｋ２との割合を求め、この割合に基づいて顔向き度を求める。顔向き度は、右区間Ｋ１の割合をＫ１、左区間Ｋ２の割合をＫ２とすると、例えば、−（Ｋ１−Ｋ２）により算出できる。この式において先頭のマイナスは、右向きの場合に顔向き度を正にするための符号である。例えば、Ｋ１＝３０％、Ｋ２＝７０％とすると、顔向き度は−（３０−７０）＝４０となる。例えば、Ｋ１＝７０％、Ｋ２＝３０％とすると、顔向き度は−（７０−３０）＝−４０となる。例えば、Ｋ１＝５０％、Ｋ２＝５０％とすると、顔向き度は、−（５０−５０）＝０となる。
【０１０９】
したがって、顔向き度がプラスの方向に増大するにつれて、顔の向きはより右方を向いていることを示し、顔向き度がマイナスの方向に増大するにつれて、顔の向きはより左方を向いていることを示す。また、顔向き度が０の場合、顔の向きは正面方向であることを示す。
【０１１０】
ステップＳ１８０２において、視距離補正部１８は、予め作成された補正係数算出情報を参照し、算出した顔向き度の絶対値に対応する補正係数を決定し、決定した補正係数をステップＳ６で推定された視距離に乗じることで視距離を補正する。係数算出情報は、顔向き度の絶対値が増大するにつれて補正係数が０から１の範囲内で減少するように、顔向き度の絶対値と補正係数とが対応付けられた情報である。例えば、係数算出情報は、顔向き度が０に対して補正係数が最大値である１が対応付けられている。また、係数算出情報は、顔向き度の絶対値が最大値である５０に近づくにつれて補正係数が１未満の所定の下限値に近づくように、顔向き度の絶対値と補正係数とが対応付けられている。
【０１１１】
ステップＳ７では、補正された視距離を含む推定情報が出力される。
【０１１２】
顔の向きが正面の向きから離れた方向に向かうにつれて、顔画像に現れる虹彩直径の画素数（第１値）は小さくなり、それに伴って、推定される視距離は実際の視距離よりも大きくなる。これでは、正確に視距離を推定できない。本構成によれば、顔の向きに応じて視距離が補正されているため、視距離の推定精度を高めることができる。
【０１１３】
（実施の形態３）
実施の形態３は、輻輳角を算出するものである。輻輳角とは、両目の視線が注視する対象物の位置に収束してできる角度である。図２０は、本開示の実施の形態３における視距離推定システム１００の全体構成の一例を示す図である。なお、本実施の形態において、実施の形態１、２と同一の構成要素には同一の符号を付し、説明を省略する。実施の形態３における視距離推定システム１００は、視距離推定装置１Ｂを含む。視距離推定装置１Ｂのプロセッサ１０Ｂは、視距離推定装置１Ａのプロセッサ１０Ａに対してさらに輻輳角算出部１９を含む。
【０１１４】
輻輳角算出部１９は、虹彩検出部１２により検出された、人Ｕ１の左右の目の虹彩中心位置と、視距離補正部１８により補正された視距離とに基づいて、人Ｕ１の目の輻輳角を算出する。
【０１１５】
図２１は、本開示の実施の形態３における視距離推定装置１Ｂの処理の一例を示すフローチャートである。本フローチャートにおいて、図１８と同じ処理には同じ処理番号を付している。図２２は、輻輳角θが算出される処理の説明図である。ステップＳ１８０２に続くステップＳ１９０１において、輻輳角算出部１９は、左目の虹彩中心位置Ｐ０＿Ｌと右目の虹彩中心位置Ｐ０＿Ｒとの距離である、虹彩中心間距離を算出する。ここで、虹彩中心位置Ｐ０＿Ｌと虹彩中心位置Ｐ０＿Ｒとは虹彩検出処理で算出された虹彩中心位置Ｐ０が利用される。
【０１１６】
ステップＳ１９０２において、輻輳角算出部１９は、左目の目頭の位置Ｐ１３と右目の目頭の位置Ｐ１３との中点である目頭間中点Ｐ２２１を算出する。左目の目頭の位置Ｐ１３と右目の目頭の位置Ｐ１３とは虹彩検出処理で算出された目頭の位置Ｐ１３が利用される。例えば、輻輳角算出部１９は、左右の目のそれぞれの目頭の位置Ｐ１３のＸ座標の差を算出し、算出した差の中点を目頭間中点Ｐ２２１として算出すればよい。
【０１１７】
ステップＳ１９０３において、輻輳角算出部１９は、目頭間中点Ｐ２２１と虹彩中心位置Ｐ０＿Ｌとの距離Ｄ２２１（第１距離）を算出すると共に、目頭間中点Ｐ２２１と虹彩中心位置Ｐ０＿Ｒとの距離Ｄ２２２（第２距離）を算出する。例えば、輻輳角算出部１９は、目頭間中点Ｐ２２１のＸ座標と虹彩中心位置Ｐ０＿ＬのＸ座標との差を距離Ｄ２２１として算出し、目頭間中点Ｐ２２１のＸ座標と虹彩中心位置Ｐ０＿ＲのＸ座標との差を距離Ｄ２２２として算出すればよい。
【０１１８】
ステップＳ１９０４において、輻輳角算出部１９は、視距離Ｌ２２と距離Ｄ２２１とを用いて左目の輻輳半角θ１（第１輻輳半角）を算出すると共に、視距離Ｌ２２と距離Ｄ２２２とを用いて輻輳半角θ２（第２輻輳半角）を算出する。
【０１１９】
ここで、輻輳半角θ１は、ａｒｃｔａｎ（Ｄ２２１／Ｌ２２）により算出され、輻輳半角θ２は、ａｒｃｔａｎ（Ｄ２２２／Ｌ２２）により算出される。
【０１２０】
ステップＳ１９０５において、輻輳角算出部１９は、輻輳半角θ１と輻輳半角θ２との和を輻輳角θとして算出する。
【０１２１】
算出された輻輳角θは推定情報に含まれて出力される（ステップＳ７）。ここで、輻輳角θは例えば表示画面Ｇ１に表示されてもよい。これにより、輻輳角θが提示され、目の疾患の判断材料が提示される。
【０１２２】
本開示は以下の変形例が採用できる。
【０１２３】
（１）視距離推定装置１は、ディスプレイ３と撮像装置２とが別体で構成されていてもよい。この場合、関係情報を用いて推定された視距離は撮像装置２と人Ｕ１との視距離となってしまう。そこで、推定部１６は、関係情報により推定された視距離を、ディスプレイ３と撮像装置２との相対的な位置関係を示す情報で補正することにより、ディスプレイ３と人Ｕ１との視距離を算出すればよい。
【０１２４】
（２）実施の形態２において、顔向き度は画像処理により算出されていたが、本開示はこれに限定されず、ユーザが図略の操作装置（例えばタッチパネル）を用いて入力した値が採用されてもよい。
【０１２５】
（３）実施の形態１で説明した虹彩検出処理は一例であり、本開示は他の虹彩検出処理が採用されてもよい。他の虹彩検出処理の一例としては、例えばドーグマンアルゴリズムを利用した処理が挙げられる。
【０１２６】
（４）実施の形態１〜３では、二値画像６０、７０、８０は、第１輝度値が白、第２輝度値が黒であったが、本開示はこれに限定されず、第１輝度値が黒、第２輝度値が白であってもよい。
【０１２７】
（５）関係情報は、解像度及び第３値と、視距離との関係を示すルックアップテーブルで構成されてもよい。
【０１２８】
（６）実施の形態３は実施の形態１に適用されてもよい。この場合、輻輳角は補正された視距離ではなく補正されていない視距離を用いて算出される。
【産業上の利用可能性】
【０１２９】
本開示によれば、より簡易な構成で視距離を推定することができるため、視距離を推定する技術分野において有用である。
【符号の説明】
【０１３０】
１          ：視距離推定装置
２          ：撮像装置
３          ：ディスプレイ
１０        ：プロセッサ
１１        ：画像取得部
１２        ：虹彩検出部
１３        ：画素数算出部
１４        ：解像度取得部
１５        ：実寸算出部
１６        ：推定部
１７        ：出力部
１８        ：視距離補正部
１９        ：輻輳角算出部
２０        ：メモリ
１００      ：視距離推定システム
【要約】
【課題】視距離専用の距離計を用いることなくより簡易な構成で視距離を推定する。
【解決手段】視距離推定方法は、撮像装置により撮像された、対象物を見る人の顔を含む第１画像を取得し、第１画像から人の虹彩のサイズを検出し、検出した虹彩のサイズの画素数を示す第１値を算出し、第１画像の解像度を取得し、第１値及び予め定められた前記虹彩のサイズの実寸を示す第２値に基づき、１画素に対応する実寸を示す第３値を算出し、解像度及び第３値と視距離との関係を示す関係情報に基づいて、取得した解像度と、算出した第３値とに対応する視距離を推定し、推定した前記視距離を含む推定情報を出力する。
【選択図】図２【図１】
0006958828.tif 000002
【図２】
0006958828.tif 000003
【図３】
0006958828.tif 000004
【図４】
0006958828.tif 000005
【図５】
0006958828.tif 000006
【図６】
0006958828.tif 000007
【図７】
0006958828.tif 000008
【図８】
0006958828.tif 000009
【図９】
0006958828.tif 000010
【図１０】
0006958828.tif 000011
【図１１】
0006958828.tif 000012
【図１２】
0006958828.tif 000013
【図１３】
0006958828.tif 000014
【図１４】
0006958828.tif 000015
【図１５】
0006958828.tif 000016
【図１６】
0006958828.tif 000017
【図１７】
0006958828.tif 000018
【図１８】
0006958828.tif 000019
【図１９】
0006958828.tif 000020
【図２０】
0006958828.tif 000021
【図２１】
0006958828.tif 000022
【図２２】
0006958828.tif 000023