(57)【特許請求の範囲】
【請求項１】
画像処理装置における瞳情報を検出する画像処理方法であって、
画像データを取得し、
前記画像データから、人物の顔の少なくとも一部を含む顔領域を検出し、
検出した前記顔領域において、前記人物の目の検出に用いられる第１領域を設定し、
前記第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定し、
前記第２領域において、前記瞳孔又は前記虹彩を示す瞳情報を検出し、
検出した前記瞳情報を出力し、
前記所定の基準は、前記第１領域において、前記第１領域の境界側から所定量の面積を除去するという基準である、
画像処理方法。
【請求項２】
さらに、検出した前記顔領域から目尻及び目頭を検出し、
前記目尻及び前記目頭を検出できた場合、
前記第１領域の設定では、前記目尻及び前記目頭を取り囲み、且つ前記目尻及び前記目頭を検出できなかった場合に設定される第１領域よりも小さな領域を前記第１領域として設定し、
前記瞳情報の検出では、前記第１領域において、前記瞳情報を検出する、
請求項１に記載の画像処理方法。
【請求項３】
さらに、検出した前記顔領域から顔の特徴点を検出し、
さらに、前記顔の特徴点に基づき前記人物の顔の向きを示す顔向き情報を検出し、
さらに、検出した前記瞳情報と前記顔向き情報とに基づいて前記人物の視線を示す視線情報を検出し、
さらに、検出した前記視線情報を出力する、
請求項１又は２に記載の画像処理方法。
【請求項４】
さらに、検出した前記顔領域からまゆげ及び口角の少なくとも一方を検出し、
さらに、前記視線情報と、検出した前記まゆげの位置及び前記口角の位置の少なくとも一方に基づいて前記人物の関心度を推定する、
請求項３記載の画像処理方法。
【請求項５】
検出した前記まゆげの位置及び前記口角の位置の少なくとも一方に基づいて前記人物の表情を推定し、
前記視線情報と、前記推定された表情を示す情報とに基づいて前記人物の関心度を推定する、
請求項４記載の画像処理方法。
【請求項６】
前記視線情報は、所定の対象面における前記人物の注視点を基準とする所定範囲の領域である注視面を示す情報を含む、
請求項３〜５のいずれかに記載の画像処理方法。
【請求項７】
前記画像データは、可視光カメラにより撮影されたものであり、
前記瞳情報は、前記虹彩の中心位置と前記虹彩の大きさとを示す情報を含む、
請求項１記載の画像処理方法。
【請求項８】
前記画像データは、赤外光カメラにより撮影されたものであり、
前記瞳情報は、前記瞳孔の中心位置と前記瞳孔の大きさとを示す情報、及び、前記虹彩の中心位置と前記虹彩の大きさとを示す情報、の少なくとも一方を含む、
請求項１記載の画像処理方法。
【請求項９】
前記画像データは、太陽光のスペクトル強度が所定の第１波長よりも減衰した所定の第２波長の帯域の赤外光を用いる赤外光カメラで撮影された画像データである、
請求項８に記載の画像処理方法。
【請求項１０】
さらに、前記顔領域から前記人物の顔の向きを示す顔向き情報を検出し、
前記第２領域の設定では、
前記顔向き情報が示す顔の右向き度合いが大きくなるにつれて、前記第１領域における右方の境界からの除外幅を狭くし、且つ、前記第１領域における左方の境界からの除外幅を広くし、
前記顔向き情報が示す顔の左向き度合いが大きくなるにつれて、前記第１領域における左方の境界からの除外幅を狭くし、且つ、前記第１領域における右方の境界からの除外幅を広くする、
請求項１記載の画像処理方法。
【請求項１１】
画像データを取得する取得部と、
前記画像データから、人物の顔の全部または一部を含む顔領域を検出する顔検出部と、
検出した前記顔領域において、前記人物の目の検出に用いられる第１領域を設定する第１設定部と、
前記第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定する第２設定部と、
前記第２領域において、前記瞳孔又は前記虹彩を示す瞳情報を検出し、前記瞳情報を出力する瞳情報検出部とを備え、
前記所定の基準は、前記第１領域において、前記第１領域の境界側から所定量の面積を除去するという基準である、
画像処理装置。
【請求項１２】
画像データを取得する取得部と、
前記画像データから、人物の顔の全部または一部を含む顔領域を検出する顔検出部と、
検出した前記顔領域において、前記人物の目の検出に用いられる第１領域を設定する第１設定部と、
前記第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定する第２設定部と、
前記第２領域において、前記瞳孔又は前記虹彩を示す瞳情報を検出し、前記瞳情報を出力する瞳情報検出部としてコンピュータを機能させ、
前記所定の基準は、前記第１領域において、前記第１領域の境界側から所定量の面積を除去するという基準である、
画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、瞳孔又は虹彩を示す瞳情報を検出する技術に関するものである。
【背景技術】
【０００２】
視線検出技術は、人物の興味対象の推定、眠気などの人物の状態の推定、及び視線による機器への入力を行うユーザインターフェースといった種々の用途で用いられている。視線検出技術は、頭部装着型と非接触型とに大別される。頭部装着型の視線検出技術は、ヘッドマウントディスプレイなどの装置を人物の頭部に装着して視線を検出する技術である。非接触型の視線検出技術は人物に装置を装着することなく視線を検出する技術である。非接触型の視線検出技術は、頭部装着型の視線検出技術のように頭部に装置を装着する必要がないため、人物に煩わしさを与えない、人物の視界を遮らないといった利点がある。そこで、本開示では、非接触型の視線検出技術に着目している。
【０００３】
ここで、非接触型の視線検出技術は、瞳孔角膜反射法と三次元眼球モデルによる方法との２つに大別される。瞳孔角膜反射法とは、発光ダイオード（ＬＥＤ）で人間の目を照射し、目に投影された反射像の位置と、ＬＥＤの照射角度と、反射像の位置の移動量などによって視線を検知する方法である。
【０００４】
三次元眼球モデルによる方法は、例えば顔画像を解析することにより得られた眼球中心位置と虹彩中心位置とを結ぶ三次元ベクトルを視線方向と推定したり、瞳孔中心位置の接平面に対する法線を視線方向と推定したりする方法である。
【０００５】
ここで、非接触型の視線検出技術においては、眼鏡を装着している人物の視線検出が困難という課題がある。この課題を解決するために、特許文献１には人物が眼鏡を装着しているか否かを判定し、人物が眼鏡を装着していない場合は瞳孔角膜反射法により視線を検出し、人物が眼鏡を装着している場合は三次元眼球モデルを用いた方法により視線を検出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−２９６３８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１では、三次元眼球モデルを用いて視線を検出するにあたり、可視光画像の画像データから運転者の顔又は眼球を検知対象物とした特徴量算出及び形状判別等の認識処理が行われているに過ぎず（段落００１４）、眼鏡の存在を考慮した認識処理は行われていない。そのため、特許文献１では、眼鏡が瞳孔又は虹彩として検出される可能性があり、瞳孔又は虹彩など、視線検出をするうえで必要となる瞳情報を精度よく検出するためにはさらなる改善の必要がある。
【０００８】
本開示は、このような課題を解決するためになされたものであり、瞳情報の検出精度のさらなる向上を図ることを目的とする。
【課題を解決するための手段】
【０００９】
本開示の一態様は、画像処理装置が瞳情報を検出する画像処理方法であって、画像データを取得し、前記画像データから、人物の顔の少なくとも一部を含む顔領域を検出し、検出した前記顔領域において、前記人物の目の検出に用いられる第１領域を設定し、前記第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定し、前記第２領域において、前記瞳孔又は前記虹彩を示す瞳情報を検出し、検出した前記瞳情報を出力する。
【発明の効果】
【００１０】
本開示によれば、瞳情報の検出精度のさらなる向上を図ることができる。
【図面の簡単な説明】
【００１１】
【図１】本開示の実施の形態１に係る画像処理システムの全体構成の一例を示す図である。
【図２】実施の形態１に係る画像処理システムの詳細な構成の一例を示すブロック図である。
【図３】実施の形態１に係る画像処理装置の動作の一例を示すフローチャートである。
【図４】顔領域を示す図である。
【図５】第１領域を示す図である。
【図６】第１基準により設定された第２領域を示す図である。
【図７】第２基準により設定された第２領域を示す図である。
【図８】第３基準により設定された第２領域を示す図である。
【図９】二値化された第２領域を示す図である。
【図１０】本開示の比較例を示す図であり、二値化された第１領域を示す図である。
【図１１】第１領域の他の例を示す図である。
【図１２】虹彩外縁検出処理を説明する図である。
【図１３】顔領域に対して設定された顔の特徴点を示す図である。
【図１４】顔向き情報を検出する処理の説明図である。
【図１５】実施の形態２に係る画像処理システムの詳細な構成の一例を示すブロック図である。
【図１６】実施の形態２に係る画像処理装置の動作の一例を示すフローチャートである。
【図１７】実施の形態３に係る画像処理システムの詳細な構成を示すブロック図である。
【発明を実施するための形態】
【００１２】
（本開示の基礎となる知見）
三次元眼球モデルにより視線を検出する方法においては、瞳孔又は虹彩の中心位置に基づいて視線が検出される。瞳孔又は虹彩の中心位置は、例えば、顔を含む画像の画像データから人物の顔を含む顔領域を検出し、検出した顔領域から目を検出するための目検出領域を設定し、目検出領域を解析することにより得られる。ここで、目検出領域とは、目そのものを切り出した領域ではなく、目を含む例えば矩形状の領域である。
【００１３】
顔領域から目検出領域を設定する場合、例えば目検出領域を検出するために予め作成された分類器が用いられる。このような分類器を用いて目検出領域を検出する場合、分類器の性能に応じて検出される目検出領域の大きさに差が発生することがあるため、検出された目検出領域において、瞳孔又は虹彩を検出するために必要な特徴量が欠落する可能性がある。そのため、目検出領域は、目の大きさに比べて一定の余裕を持たせた大きさに設定される必要がある。
【００１４】
しかしながら、目検出領域を大きく設定した場合、例えば眼鏡のフレームといった、目の周辺に存在する、瞳孔又は虹彩に類似する物体が目検出領域に含まれることとなり、これら類似する物体が瞳孔又は虹彩と誤検出される可能性が高まるため、瞳孔又は虹彩を精度よく検出できないとの課題を本発明者は見いだした。
【００１５】
そこで、本発明者は、このような課題に対して詳細な検討を行った結果、目検出領域に対してそのまま瞳孔又は虹彩を検出する処理を実行するのではなく、目検出領域を所定の基準に基づいて絞り込み、絞り込んだ領域に対して瞳孔又は虹彩を検出する処理を実行すれば、瞳孔又は虹彩の検出精度を向上させ、ひいては視線検出の精度を向上できるとの知見を得て、下記に示す各態様を想到するに至った。
【００１６】
本開示の一態様に係る画像処理方法は、画像処理装置が瞳情報を検出する画像処理方法であって、画像データを取得し、前記画像データから、人物の顔の少なくとも一部を含む顔領域を検出し、検出した前記顔領域において、前記人物の目の検出に用いられる第１領域を設定し、前記第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定し、前記第２領域において、前記瞳孔又は前記虹彩を示す瞳情報を検出し、検出した前記瞳情報を出力する。
【００１７】
本構成によれば、第１領域を所定の基準に基づいて絞り込むことによって、瞳孔又は虹彩が含まれると推定される第２領域が設定され、第２領域において、瞳孔又は虹彩を示す瞳情報が検出される。これにより、眼鏡のフレームのような、瞳孔又は虹彩として誤検出される可能性の高い情報が第１領域に含まれていたとしても、このような情報が第１領域から省かれた領域が第２領域として設定される可能性が高まるため、本構成は、瞳孔又は虹彩の検出精度を向上させることができる。その結果、本構成は、瞳孔又は虹彩の中心位置を正確に特定でき、ひいては視線の検出精度を向上させることができる。
【００１８】
また、本構成によれば、瞳情報の検出処理を、目検出領域から所定の基準で絞り込まれた領域に対して行うため、目検出領域全体に対して瞳情報の検出処理を行う場合と比較して処理負荷の軽減を実現することができる。
【００１９】
上記態様において、前記所定の基準は、前記第１領域において、前記第１領域の境界側から所定量の面積を除去するという基準であってもよい。
【００２０】
本構成によれば、第１領域の境界側から所定量の面積を除去することによって第２領域が設定される。そのため、本構成は、画像認識処理のような高負荷の処理を実行しなくても、眼鏡のフレームのような瞳孔又は虹彩として誤検出される可能性の高い情報を第１領域から省いた領域を第２領域として設定できる。
【００２１】
上記態様において、前記所定の基準は、前記第１領域の一部を除去することによって、前記第１領域の中心を含む所定形状の領域を前記第２領域として設定するという基準であってもよい。
【００２２】
本構成によれば、第１領域の中心を含む所定形状の領域が第２領域として設定される。そのため、本構成は、瞳情報を検出するうえで必要な情報を残存しつつ、不要な情報が省かれるように第２領域を設定できる。
【００２３】
上記態様において、さらに、検出した前記顔領域から目尻及び目頭を検出し、前記目尻及び前記目頭を検出できた場合、前記所定の基準は、前記第１領域の一部を除去することによって、前記目尻及び前記目頭を取り囲む領域を前記第２領域として設定してもよい。
【００２４】
本構成によれば、第１領域の一部を除去することによって得られる目尻及び目頭を取り囲む領域が第２領域として設定される。このように、第２領域は少なくとも目頭及び目尻を含んでいるため、本構成は、瞳情報を検出するうえで可能な限り不要な情報を省きつつ必要な情報が残存されるように第２領域を設定できる。
【００２５】
上記態様において、さらに、検出した前記顔領域から目尻及び目頭を検出し、前記目尻及び前記目頭を検出できた場合、前記第１領域の設定では、前記目尻及び前記目頭を取り囲み、且つ前記目尻及び前記目頭を検出できなかった場合に設定される第１領域よりも小さな領域を前記第１領域として設定し、前記瞳情報の検出では、前記第１領域において、前記瞳情報を検出してもよい。
【００２６】
本構成によれば、顔領域から目尻及び目頭が検出できた場合、第１領域に対して瞳情報を検出する処理が実行される。そのため、本構成は、第２領域を設定することなく、第１領域に対して瞳情報を検出する処理を実行できる。また、第１領域は、目尻及び前記目頭を取り囲み、且つ目尻及び目頭を検出できなかった場合に設定される第１領域よりも小さな領域である。このように、第１領域は、少なくとも目頭及び目尻を含んでいるため、本構成は、瞳情報を検出するうえで可能な限り不要な情報を省きつつ必要な情報が残存されるように第１領域を設定できる。
【００２７】
上記態様において、さらに、検出した前記顔領域から顔の特徴点を検出し、さらに、前記顔の特徴点に基づき前記顔向き情報を検出し、さらに、検出した前記瞳情報と前記顔向き情報とに基づいて前記人物の視線を示す視線情報を検出し、さらに、検出した前記視線情報を出力してもよい。
【００２８】
本構成によれば、上述の処理を経て検出された瞳情報と、顔の特徴点から検出された顔向き情報とに基づいて人物の視線情報が検出されるため、視線情報を精度よく検出できる。
【００２９】
上記態様において、さらに、検出した前記顔領域からまゆげ及び口角の少なくとも一方を検出し、さらに、前記視線情報と、検出した前記まゆげの位置及び前記口角の位置の少なくとも一方に基づいて前記人物の関心度を推定してもよい。
【００３０】
本構成によれば、視線情報のみに基づいて関心度を推定する場合に比べて、より高精度に関心度を推定できる。
【００３１】
上記態様において、検出した前記まゆげの位置及び前記口角の位置の少なくとも一方に基づいて前記人物の表情を推定し、前記視線情報と、前記推定された表情を示す情報とに基づいて前記人物の関心度を推定してもよい。
【００３２】
本構成によれば、まゆげの位置及び口角の位置の少なくとも一方に基づいて推定された人物の表情を示す情報と視線情報とを用いて関心度が推定されているため、人物の関心度をさらに高精度に推定できる。
【００３３】
上記態様において、前記視線情報は、所定の対象面における前記人物の注視点を基準とする所定範囲の領域である注視面を示す情報を含んでもよい。
【００３４】
本構成によれば、人物及び注視対象物間の距離又は注視対象物の大きさに依存することなく注視対象物を適切に判定できる。
【００３５】
上記態様において、前記画像データは、可視光カメラにより撮影されたものであり、前記瞳情報は、前記虹彩の中心位置と前記虹彩の大きさとを示す情報を含んでもよい。
【００３６】
可視光カメラで撮影された画像データにおいては、瞳孔の外縁の輝度変化が明確に表れず、虹彩の外縁の輝度変化が明確に表れる傾向がある。本構成では、画像データは可視光カメラにより撮影されたものであるため、虹彩の外縁を正確に検出でき、それによって、虹彩の大きさを示す情報と虹彩の中心位置を示す情報とを瞳情報として正確に検出できる。
【００３７】
上記態様において、前記画像データは、赤外光カメラにより撮影されたものであり、前記瞳情報は、前記瞳孔の中心位置と前記瞳孔の大きさとを示す情報、及び、前記虹彩の中心位置と前記虹彩の大きさとを示す情報、の少なくとも一方を含んでもよい。
【００３８】
赤外光カメラで撮影された画像データにおいては、瞳孔及び虹彩のそれぞれの外縁の輝度変化が明確に表れる傾向がある。本構成では、画像データは赤外光カメラにより撮影されたものであるため、瞳孔及び虹彩のそれぞれの外縁を正確に検出でき、それによって瞳孔及び虹彩のそれぞれの大きさを示す情報と瞳孔及び虹彩のそれぞれの中心位置を示す情報とを瞳情報として正確に検出できる。
【００３９】
上記態様において、前記画像データは、太陽光のスペクトル強度が所定の第１波長よりも減衰した所定の第２波長の帯域の赤外光を用いる赤外光カメラで撮影された画像データであってもよい。
【００４０】
本構成によれば、太陽光のスペクトル強度が強い屋外においても精度よく視線検出を行うことができる。
【００４１】
上記態様において、さらに、前記顔領域から前記人物の顔の向きを示す顔向き情報を検出し、前記第２領域の設定では、前記顔向き情報が示す顔の右向き度合いが大きくなるにつれて、前記第１領域における右方の境界からの除外幅を狭くし、且つ、前記第１領域における左方の境界からの除外幅を広くし、前記顔向き情報が示す顔の左向き度合いが大きくなるにつれて、前記第１領域における左方の境界からの除外幅を狭くし、且つ、前記第１領域における右方の境界からの除外幅を広くしてもよい。
【００４２】
本構成によれば、例えば眼鏡のフレームのような物体を第１領域から正確に取り除き、且つ、瞳情報の検出に必要となる情報が欠落しないように第２領域を設定できる。
【００４３】
本開示は、このような画像処理方法に含まれる特徴的な各構成をコンピュータに実行させる画像処理プログラム、或いはこの画像処理プログラムによって動作する画像処理システムとして実現することもできる。また、このようなコンピュータプログラムを、ＣＤ−ＲＯＭ等のコンピュータ読取可能な非一時的な記録媒体あるいはインターネット等の通信ネットワークを介して流通させることができるのは、言うまでもない。
【００４４】
なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、全ての実施の形態において、各々の内容を組み合わせることもできる。
【００４５】
（実施の形態１）
図１は、本開示の実施の形態１に係る画像処理システム１の全体構成の一例を示す図である。画像処理システム１は、人物４００を撮影し、得られた人物の画像データから人物の視線を示す視線情報を検出するシステムである。図１の例では、画像処理システム１は、表示装置３００に表示された複数のオブジェクト３０１のうち、どのオブジェクト３０１を人物が注視しているかを特定している。但し、これは一例であり、画像処理システム１は、表示装置３００の表示画面上に表示されたオブジェクト３０１のみならず、実空間内において人物４００が注視するオブジェクト３０１を特定してもよい。
【００４６】
図１の例では、画像処理システム１はデジタルサイネージシステムに適用されている。したがって、表示装置３００に表示されるオブジェクト３０１は、広告などのサイネージの画像となる。
【００４７】
画像処理システム１は、画像処理装置１００、カメラ２００、及び表示装置３００を含む。画像処理装置１００は、カメラ２００及び表示装置３００と所定の通信路を介して接続されている。所定の通信路は、例えば、有線ＬＡＮなどの有線の通信路、又は無線ＬＡＮ及びブルートゥース（登録商標）などの無線の通信路である。画像処理装置１００は、例えば表示装置３００の周囲に設置されたコンピュータで構成されている。但し、これは一例であり、画像処理装置１００は、クラウドサーバで構成されてもよい。この場合、画像処理装置１００は、カメラ２００及び表示装置３００とインターネットを介して接続される。画像処理装置１００は、カメラ２００で撮像された人物４００の画像データから、人物４００の視線情報を検出し、表示装置３００に出力する。また、画像処理装置１００は、カメラ２００又は表示装置３００にハードウェアとして組み込まれてもよい。また、カメラ２００又は表示装置３００がプロセッサを備え、画像処理装置１００がソフトウェアとして組み込まれていてもよい。
【００４８】
カメラ２００は、例えば所定のフレームレートで表示装置３００の周囲の環境を撮影することにより、表示装置３００の周囲に位置する人物４００の画像データを取得する。カメラ２００は、取得した画像データを所定のフレームレートで順次に画像処理装置１００に出力する。カメラ２００は、可視光カメラであってもよいし、赤外光カメラであってもよい。
【００４９】
表示装置３００は、例えば液晶パネル又は有機ＥＬパネルなどの表示装置で構成されている。図１の例では、表示装置３００は、サイネージディスプレイである。なお、図１の例では、画像処理システム１は、表示装置３００を含むとして説明したが、これは一例であり、表示装置３００に代えて、別の機器が採用されてもよい。例えば、画像処理システム１が視線により機器への入力を受け付けるユーザインターフェースとして利用されるのであれば、画像処理システム１は例えば表示装置３００に代えて、冷蔵庫、テレビ、及び洗濯機などの家電機器が採用されてもよい。例えば、画像処理システム１が車両に搭載されるのであれば、表示装置３００に代えて、自動車などの車両が採用されてもよい。さらに、表示装置３００に代えてハードディスクドライブ、ソリッドステートドライブなどの記憶装置が採用されてもよい。
【００５０】
図２は、実施の形態１に係る画像処理システム１の詳細な構成の一例を示すブロック図である。画像処理装置１００は、プロセッサ１１０を含む。プロセッサ１１０は、ＣＰＵ、ＦＰＧＡなどの電気回路である。プロセッサ１１０は、瞳情報検出装置１２０、顔向き検出部１３０、及び視線情報検出部１４０を含む。
【００５１】
瞳情報検出装置１２０は、画像取得部１２１（取得部の一例）、顔検出部１２２、第１設定部１２３、第２設定部１２４、瞳情報検出部１２５、及び特徴点検出部１２６を含む。なお、プロセッサ１１０が備える各ブロックは、プロセッサ１１０がコンピュータを画像処理装置として機能させる画像処理プログラムを実行することで実現されてもよいし、専用の電気回路で構成されてもよい。
【００５２】
画像取得部１２１は、カメラ２００が撮像した画像データを取得する。ここで、取得される画像データには、表示装置３００の周囲の人物４００の顔が含まれる。なお、画像取得部１２１が取得する画像データは、例えばウェブサイトに掲載された画像データであってもよいし、外部の記憶装置が記憶する画像データであってもよい。
【００５３】
顔検出部１２２は、画像取得部１２１が取得した画像データから人物４００の顔の少なくとも一部を含む顔領域を検出する。詳細には、顔検出部１２２は、顔領域を検出するために予め作成された分類器を用いて顔領域を検出すればよい。ここで用いられる分類器は、例えばオープンソースによる画像処理ライブラリにおいて顔領域を検出するために予め作成されたハール（Ｈａａｒ）状のカスケード分類器である。顔領域は、例えば顔の全体を含む程度のサイズを持つ矩形状の領域である。但し、これは一例であり、顔領域の形状は矩形以外の例えば、３角形、５角形、６角形、又は８角形などであってもよい。なお、顔検出部１２２は、パターンマッチングにより顔領域を検出してもよい。
【００５４】
第１設定部１２３は、顔検出部１２２により検出された顔領域において、人物４００の目の検出に用いられる第１領域を設定する。第１設定部１２３が第１領域を設定する手法としては、例えば、目検出領域を検出するために予め作成された分類器を用いる手法が考えられる。ここで用いられる分類器は、例えばオープンソースによる画像処理ライブラリにおいて目検出領域を検出するために予め作成されたハール状のカスケード分類器である。第１領域（目検出領域）は、目の大きさに所定のマージンを加えた程度のサイズを持つ矩形状の領域である。但し、これは一例であり、第１領域の形状は矩形以外の、例えば、３角形、５角形、６角形、又は８角形などであってもよい。顔領域に人物４００の２つの目が含まれている場合、第１設定部１２３は２つの目のそれぞれに対応する２つの第１領域を設定する。なお、第１設定部１２３はパターンマッチングにより第１領域を設定してもよい。本実施の形態において、目とは、図５に示すように上瞼の境界５３と下瞼の境界５４とによって取り囲まれる、白目と、黒目などの有色の部分とを含む領域を指す。
【００５５】
第２設定部１２４は、第１設定部１２３が設定した第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定する。第２領域は、第１領域よりも小さい例えば矩形状の領域である。但し、これは一例であり、第２領域の形状は、矩形以外の、例えば、３角形、５角形、６角形、又は８角形などであってもよい。
【００５６】
本実施の形態では、所定の基準は下記に示す３つの基準のうちいずれか１つの基準が採用される。なお、所定の基準が下記３つの例に限らないことは言うまでもない。
【００５７】
第１基準は、第１領域において、第１領域の境界側から所定量の面積を除去するという基準である。第２基準は、第１領域の一部を除去することによって、第１領域の中心を含む所定形状の領域を第２領域として設定するという基準である。第３基準は、第１領域の一部を除去することによって、目尻及び目頭取り囲む領域を第２領域として設定するという基準である。なお、第３基準は、顔領域から目尻及び目頭が検出できた場合に適用される。顔領域から目尻及び目頭が検出できなかった場合、第２設定部１２４は、第３基準に代えて第１基準又は第２基準を用いて第２領域を設定すればよい。
【００５８】
なお、第２設定部１２４は、特徴点検出部１２６が検出した顔の特徴点に基づいて目尻及び目頭を検出すればよい。詳細には、第２設定部１２４は、特徴点検出部１２６が検出した顔の特徴点において、目尻及び目頭のそれぞれに対応する予め定められたランドマーク点番号を持つ特徴点がある場合、目尻及び目頭が検出できたと判定すればよい。なお、目尻及び目頭の検出処理の具体例については後述する。
【００５９】
瞳情報検出部１２５は、第２設定部１２４により設定された第２領域において、瞳孔又は虹彩を示す瞳情報を検出する。
【００６０】
本実施の形態において、瞳とは、図５に示すように、瞳孔５５と、瞳孔５５を取り囲むドーナツ状の虹彩５６とを含む有色の部分を指す。
【００６１】
瞳情報検出部１２５が瞳孔を検出する場合、瞳情報には、例えば瞳孔の外縁を示す座標データ又は瞳孔の外縁の半径若しくは直径などの長さ（例えば、ピクセル）示す情報と、瞳孔の中心の座標データとが含まれる。瞳情報検出部１２５が虹彩を検出する場合、瞳情報には、例えば虹彩の外縁を示す座標データ又は虹彩の半径若しくは直径などの長さ（例えばピクセル）を示す情報と、虹彩の中心の座標データとが含まれる。ここで、座標データとは、画像取得部１２１が取得した画像データにおける２次元の座標データを指す。なお、瞳孔又は虹彩の外縁を示す座標データ又は半径若しくは直径などの長さを示す情報は、瞳孔又は虹彩の大きさを示す情報の一例である。
【００６２】
カメラ２００として可視光カメラが採用された場合、瞳孔と虹彩との輝度変化が明確に表れない場合もあるため、瞳情報検出部１２５は、瞳孔と虹彩とを区別することが困難となる。したがって、カメラ２００として可視光カメラが採用された場合、瞳情報検出部１２５は、虹彩を検出する。一方、カメラ２００として赤外光カメラが採用された場合、瞳孔と虹彩との輝度変化が明確に表れるため、瞳情報検出部１２５は、瞳孔を検出できる。したがって、カメラ２００として赤外光カメラが採用された場合、瞳情報検出部１２５は、瞳孔を検出する。
【００６３】
なお、カメラ２００として赤外光カメラが採用された場合、瞳情報検出部１２５は、虹彩も検出できる。したがって、カメラ２００として赤外光カメラが採用された場合、瞳情報検出部１２５は瞳孔に加えて虹彩を検出してもよい。この場合、瞳情報には、例えば瞳孔の外縁を示す座標データ及び瞳孔の中心の座標データ又は瞳孔の外縁の半径若しくは直径を示す情報に加えて、虹彩の外縁を示す座標データ又は虹彩の外縁の半径若しくは直径を示す情報が含まれてもよい。また、この場合、瞳情報には、例えば瞳孔の中心の座標データに代えて又は加えて虹彩の中心の座標データが含まれてもよい。ここで、座標データとは、画像取得部１２１が取得した画像データにおける２次元の座標データを指す。
【００６４】
特徴点検出部１２６は、顔検出部１２２が検出した顔領域から顔の特徴点を検出する。顔の特徴点とは、例えば目尻、目頭、顔の輪郭、鼻筋、口角、及び眉毛などの顔を構成する複数の部品のそれぞれにおいて、特徴的な位置にある１又は複数の点である。特徴点はランドマークとも呼ばれる。特徴点検出部１２６は、例えば機械学習のフレームワークのモデルファイルを利用したランドマーク検出処理を実行することで顔の特徴点を検出すればよい。
【００６５】
顔向き検出部１３０は、顔検出部１２２が検出した顔領域から顔の特徴点を検出し、検出した特徴点の配置パターンから人物４００の顔の向きを示す顔向き情報を検出する。なお、顔向き検出部１３０は、特徴点検出部１２６が検出した顔の特徴点を利用して顔向き情報を検出してもよい。なお、顔向き情報の検出処理の具体例は後述する。
【００６６】
視線情報検出部１４０は、瞳情報検出部１２５によって検出された瞳情報と、顔向き検出部１３０によって検出された顔向き情報とに基づいて、人物４００の視線を示す視線情報を検出し、表示装置３００に出力する。視線情報検出部１４０は、瞳情報と顔向き情報とに対して、例えば３次元眼球モデルにより視線を検出する公知の視線検出処理を適用することにより視線情報を検出すればよい。ここで、視線情報には、人物４００の視線の方向を３次元的に示すベクトルが含まれてもよいし、所定の対象面（例えば表示装置３００）における注視点の座標データが含まれてもよい。注視点は、例えば対象面と視線を示すベクトルとが交差する位置である。
【００６７】
視線情報検出部１４０は、表示装置３００で表示されているオブジェクト３０１の情報を取得し、取得した情報と注視点の座標データとから人物４００が注視するオブジェクト３０１（注視オブジェクト）を特定し、特定結果を表示装置３００に出力してもよい。
【００６８】
例えば、表示装置３００に対して、視線情報として注視点の座標データが出力された場合、表示装置３００は、座標データに対応する位置に、視線位置を示すマーカーを表示中の画像に重畳して表示させるといった処理を行う。例えば、表示装置３００に対して、注視オブジェクトの特定結果が出力された場合、表示装置３００は、注視オブジェクトを示すマーカーを表示中の画面に重畳して表示させるといった処理を行ってもよい。
【００６９】
カメラ２００は、図１で説明したため、ここでは説明を省略する。
【００７０】
表示装置３００は、例えば視線情報検出部１４０から出力された視線情報を示すマーカーを表示する。表示装置３００は、例えば視線情報検出部１４０から出力された人物４００が注視するオブジェクト３０１を示すマーカーを表示してもよい。
【００７１】
なお、画像処理システム１が、表示装置３００に代えて家電機器で構成される場合、家電機器は視線情報から人物４００の入力を受け付ける。また、画像処理システム１が、表示装置３００に代えて記憶装置で構成される場合、記憶装置は、視線情報を記憶する。この場合、記憶装置は視線情報にタイムスタンプを対応付けて記憶してもよい。
【００７２】
次に、画像処理装置１００の動作について説明する。図３は、実施の形態１に係る画像処理装置１００の動作の一例を示すフローチャートである。
【００７３】
ステップＳ１では、画像取得部１２１は、カメラ２００から画像データを取得する。ステップＳ２では、顔検出部１２２は、顔領域を検出するための分類器に画像データを入力することにより、画像データから顔領域を検出する。図４は、顔領域４０を示す図である。図４に示すように、顔検出部１２２は、額の上部と顎の下部と、耳の生え際とを含む矩形状の領域を顔領域４０として検出している。ここでは、顔領域４０は髪の全体を含んでいないが、髪の全体を含む領域であってもよい。図４では、画像データは人物４００を正面から撮影した画像データであるため、左目と右目とが含まれている。本実施の形態では、説明の便宜上、右目とは人物４００を正面から見て右側にある目のことを指し、左目とは人物４００を正面から見て左側にある目のことを指す。但し、これは一例であり、人物４００から見て右側にある目を右目、人物４００から見て左側にある目を左目としてもよい。また、本実施の形態では、紙面の右側の方向を右方、紙面の左側の方向を左方とする。
【００７４】
図３に戻る。ステップＳ３では、第１設定部１２３は、第１領域を検出するための分類器にステップＳ２で検出された顔領域を入力し、第１領域を設定する。図５は、第１領域５０を示す図である。図５に示すように、第１領域５０は、目の全域を含み、目の大きさに多少のマージンが加えられた矩形状の領域であることが分かる。なお、第１領域５０の境界を目に対してどの位置に設定するかは、分類器の性能に依存する。したがって、分類器の性能に応じて第１領域５０のサイズは相違する。例えば、第１領域５０の上側の境界が上瞼の眉毛付近にまで及ぶこともあり得る。また、第１領域５０の鼻側の境界が鼻付近にまで及び、第１領域５０の耳側の境界がこめかみ付近にまで及ぶこともあり得る。
【００７５】
図５の例では、顔領域４０に左右の目が含まれていたため、第１設定部１２３は、右目及び左目のそれぞれに対応する２つの第１領域５０を設定している。
【００７６】
図３に参照を戻す。ステップＳ４では、第２設定部１２４は、上述した第１基準〜第３基準のいずれかを用いて第１領域５０を絞り込むことで第１領域５０から第２領域を設定する。目に対して大きめのサイズに第１領域５０が設定された場合、人物４００が眼鏡を装着していると、その眼鏡が第１領域５０に含まれる可能性がある。図１１は、第１領域５０の他の例を示す図である。図１１の例では、人物４００が眼鏡を装着しており、第１領域５０の境界が眼鏡にまで及んでいることが分かる。このような場合、眼鏡のフレームが瞳情報であると誤検出され、瞳情報の検出精度が低下する可能性がある。
【００７７】
そこで、本実施の形態では、第１領域５０を絞り込むことによって第２領域を設定する。図６は、第１基準により設定された第２領域７０を示す図である。図６に示すように第２領域７０は、第１領域５０を、第１領域５０の境界５１０側から第１領域５０の所定量の面積を除去することによって設定される。所定量の面積は、第１領域５０の面積の例えば５％、１０％、２０％などの適宜の値が採用できる。所定量の面積は、第１設定部１２３が設定する第１領域５０のサイズの傾向に応じて予め定められた値が採用される。例えば、第１設定部１２３が設定する第１領域５０のサイズが目に対して大きくなる傾向を示す場合、その傾向に応じて所定量の面積は大きな値が採用される。
【００７８】
図６の例では、第２設定部１２４は、第２領域７０が第１領域５０と相似形を保つように、境界５１０の４辺に接する矩形状の枠領域５２０であって所定量の面積を持つ枠領域５２０を設定し、枠領域５２０を第１領域５０から除去することによって第２領域７０を設定する。これにより、第１領域５０が境界５１０の４辺側から第１領域５０の中心に向けて狭められるようにして第２領域７０が設定される。そのため、第２設定部１２４は、例えば第１領域５０の境界５１０に沿って現れる傾向がある眼鏡のフレームを第２領域７０から省くことができる。
【００７９】
なお、人物４００の顔が右方を向いているか、左方を向いているかに応じて、第１領域５０において眼鏡のフレームが現れる位置が相違することがある。例えば、顔が右方を向いている場合、第１領域５０の境界５１０の左辺側に現れる眼鏡のフレームは、境界５１０の右辺側に現れる眼鏡のフレームよりも横幅が広く表れる傾向がある。一方、顔が左方を向いている場合、第１領域５０の境界５１０の右辺側に現れる眼鏡のフレームは、境界５１０の左辺側に現れる眼鏡のフレームよりも横幅が広く表れる傾向がある。
【００８０】
そこで、第２設定部１２４は、顔向き検出部１３０が検出した顔向き情報が示す顔の向きに応じて枠領域５２０の形状を変更してもよい。詳細には、第２設定部１２４は、顔の向きが右向きの場合、枠領域５２０の右側部の幅Ｈ１を、顔の向きを考慮しない場合の幅Ｈ１に比べて狭く設定し、枠領域５２０の左側部の幅Ｈ２を顔の向きを考慮しない場合の幅Ｈ２に比べて広く設定してもよい。この場合、第２設定部１２４は、顔向き情報が示す顔の右向き度合いが大きくなるにつれて、幅Ｈ１を狭く設定し、且つ、幅Ｈ２を広く設定すればよい。なお、顔の右向き度合いの算出方法については後述する。
【００８１】
一方、第２設定部１２４は、顔の向きが左向きの場合、枠領域５２０の左側部の幅Ｈ２を、顔の向きを考慮しない場合の幅Ｈ２に比べて狭く設定し、枠領域５２０の右側部の幅Ｈ１を、顔の向きを考慮しない場合の幅Ｈ１に比べて広く設定すればよい。この場合、第２設定部１２４は、顔向き情報が示す顔の左向きの度合いが大きくなるにつれて、幅Ｈ２を狭く設定し、且つ、幅Ｈ１を広く設定すればよい。なお、顔の左向き度合いの算出方法については後述する。
【００８２】
このように、顔の向きに応じて枠領域５２０の幅Ｈ１，Ｈ２を変更することで、眼鏡のフレームがより正確に取り除かれ、且つ、瞳情報の検出に必要となる情報が欠落しないように第２領域７０を設定できる。
【００８３】
次に、第２基準について説明する。図７は、第２基準により設定された第２領域８０を示す図である。図７に示すように第２領域８０は、第１領域５０の中心５３０を含み、目の形状を近似した横長円形状（例えば楕円形状）を有している。第２設定部１２４は、例えば第１領域５０の境界５１０の縦辺Ｈ３を所定の割合α（０＜α＜１）で縮小することで第２領域８０の縦幅を設定とともに、境界５１０の横辺Ｈ４を所定の割合β（０＜β＜１）で縮小することで第２領域８０の横幅を設定する。そして、第２設定部１２４は、設定した縦幅を短軸とし、横幅を長軸とする楕円であって、楕円の中心が第１領域５０の中心５３０に位置し、長軸が横辺Ｈ４と平行な楕円を第２領域８０として設定すればよい。
【００８４】
或いは、第２設定部１２４は、第１領域５０の面積よりも所定量の面積だけ小さな面積を持ち、且つ予め定められた目を近似する横長円形状を持つ図形を第２領域８０として設定してもよい。所定量の面積は、第１基準で説明したものを採用できる。この場合も、第２設定部１２４は、横長円形状を持つ図形の中心が中心５３０に位置するように第２領域８０を設定してもよい。第２基準では、第２領域８０は目を近似する形状を持つため、瞳情報を検出するうえで必要な情報を残存しつつ、不要な情報が省かれるように第２領域８０を設定できる。
【００８５】
次に、第３基準について説明する。図８は、第３基準により設定された第２領域９０を示す図である。図８に示すように、第２領域９０は、目頭９２及び目尻９３を取り囲む領域であって、第１領域５０よりもサイズの小さな領域である。図８の例では、第２領域９０は矩形であるが、これは一例であり、三角形、五角形などの矩形以外の多角形であってもよい。或いは、第２領域９０は、目頭９２及び目尻９３を通る楕円などの長円であってもよい。図８の例では、第２領域９０の目頭９２側の縦辺Ｊ１は目頭９２を通り、目尻９３側の縦辺Ｊ２は目尻９３を通っている。但し、これは一例であり、縦辺Ｊ１は目頭９２に対して多少鼻側に設定されてもよいし、縦辺Ｊ２は目尻９３に対して多少耳側に設定されてもよい。
【００８６】
第２設定部１２４は、第２領域９０の上側の横辺Ｊ３を第１領域５０の上側の横辺Ｈ４に対して下側に所定距離離れた位置に設定し、第２領域９０の下側の横辺Ｊ４を第１領域５０の下側の横辺Ｈ５に対して上側に所定距離離れた位置に設定すればよい。
【００８７】
第３基準では、第２領域９０は少なくとも目頭９２及び目尻９３を含んでいるため、瞳情報を検出するうえで可能な限り不要な情報を省きつつ必要な情報が残存されるように第２領域９０を設定できる。以下、第２領域７０、８０、９０を総称して第２領域６０と記述する。
【００８８】
図３に参照を戻す。ステップＳ５では、瞳情報検出部１２５は、第２領域６０から瞳情報を検出する。以下、瞳情報が検出される処理の詳細について説明する。まず、瞳情報検出部１２５は、第２領域６０を二値化する。図９は、二値化された第２領域６０を示す図である。ここでは、例えば大津の二値化と呼ばれる手法が採用されている。また、輝度が閾値より低い箇所が白、輝度が閾値以上の箇所が黒で表されている。
【００８９】
次に、瞳情報検出部１２５は、二値化された第２領域６０に現れる白の島にラベリング番号を付与するラベリング処理を行う。図９の例では、上睫毛の左側が１つの島６１とみなされ、島６１に「１」のラベリング番号が付与されている。また、上睫毛の右側が１つの島６２とみなされ、島６２に「２」のラベリング番号が付与されている。また、瞳孔が１つの島６３とみなされ、島６３に「３」のラベリング番号が付与されている。また、下睫毛が一つの島６４とみなされ、島６４に「４」のラベリング番号が付与されている。
【００９０】
次に、瞳情報検出部１２５は、ラベリングした島６１〜６４のそれぞれに対して、所定の判定条件を満たすか否かを判定し、判定条件を満たす島を瞳孔として判定する。判定条件としては、所定の瞳孔最小面積以上、所定の瞳孔最大面積以下という条件が採用できる。瞳孔最小面積とは、画像データにおいて想定される瞳孔の最小面積であり、瞳孔最大面積とは、画像データにおいて想定される瞳孔の最大面積である。なお、判定条件を満たす島が複数ある場合、瞳情報検出部１２５は、例えば面積が最大の島を瞳孔と判定してもよい。ここでは、島６３が瞳孔と判定される。
【００９１】
次に、瞳情報検出部１２５は、瞳孔の中心を検出する。ここでは、瞳孔の島６３の例えば重心が瞳孔の中心として検出される。
【００９２】
図９に示す画像は、赤外光カメラによって撮影された画像である。赤外光カメラで撮影された画像データでは、瞳孔と虹彩との間に大きな輝度変化が現れる。そのため、図９の例では、二値化によって瞳孔の島６３が検出されている。一方、可視光カメラで撮影された画像データでは、瞳孔と虹彩との間に大きな輝度変化が現れず、虹彩と白眼との境界で大きな輝度変化が現れる。
【００９３】
そこで、瞳情報検出部１２５は、例えばカメラ２００が赤外光カメラである場合、二値化した第２領域６０から瞳孔を検出する。一方、瞳情報検出部１２５は、例えばカメラ２００が可視光カメラである場合、二値化した第２領域６０から虹彩を検出する。この場合、瞳情報検出部１２５は、判定条件として、所定の虹彩最小面積以上、所定の虹彩最大面積以下という条件を採用すればよい。なお、ここで言う、虹彩最小面積及び虹彩最大面積とは、ドーナツ状である虹彩そのものの面積を指すのではなく、虹彩に瞳孔を含めた領域、すなわち瞳の最大面積及び最小面積のことを指す。この場合、瞳情報検出部１２５は、虹彩の中心を検出すればよい。虹彩の中心としては、虹彩を示す島の例えば重心が採用できる。
【００９４】
図１０は、本開示の比較例を示す図であり、二値化された第１領域５０を示す図である。図１０に示すように、第１領域５０に対してそのまま二値化処理を行うと、人物４００が眼鏡を装着している場合、第１領域５０内に眼鏡のフレームを示す島６５が現れる可能性がある。さらに、人物４００によっては、第１領域５０内にホクロ（又は痣）を示す島６６が現れる可能性もある。このような場合、眼鏡のフレーム又はホクロの大きさによっては、眼鏡のフレームの島６５又はホクロの島６６が瞳孔又は虹彩と誤検出される可能性がある。
【００９５】
これに対して、第２領域６０は第１領域５０を絞り込むことによって設定された領域であるため、図９に示すように眼鏡のフレームの島６５及びホクロの島６６が含まれていない可能性が高まる。そのため、本実施の形態では、瞳情報を精度よく検出できるのである。
【００９６】
次に、瞳情報検出部１２５は、瞳孔の外縁を検出する瞳孔外縁検出処理を実行する。瞳孔外縁検出処理としては、Ｊｏｈｎ  Ｇ．  Ｄａｕｇｍａｎの提唱する手法（以下、「ドーグマンアルゴリズム」と呼ぶ。）の一部を利用した瞳孔外縁検出処理を採用すればよい。ドーグマンアルゴリズムは、「Ｈｉｇｈ  Ｃｏｎｆｉｄｅｎｃｅ  Ｖｉｓｕａｌ  Ｒｅｃｏｇｎｉｔｉｏｎ  ｏｆ  Ｐｅｒｓｏｎｓ  ｂｙ  ａ  Ｔｅｓｔ  ｏｆ  Ｓｔａｔｉｓｔｉｃａｌ  Ｉｎｄｅｐｅｎｄｅｎｃｅ：  Ｊｏｈｎ  Ｇ．  Ｄａｕｇｍａｎ（１９９３）」の文献にて開示されている。
【００９７】
具体的には、瞳孔外縁検出処理において、まず、瞳情報検出部１２５は、二値化した第２領域６０から検出した瞳孔の中心を円の中心として、所定の瞳孔最小半径を持つ円を設定する。次に、瞳情報検出部１２５は、設定した円の円周上の輝度の合計値を周回積分により求める。次に、瞳情報検出部１２５は、直前に設定した円の半径を１ピクセル分、径方向に広げた円に対して周回積分を行うことにより輝度の合計値を求める。次に、瞳情報検出部１２５は、この処理を、所定の瞳孔最大半径まで繰り返し実行する。これにより、複数の半径と、複数の半径のそれぞれに対応する輝度の合計値との関係を示す関数が得られる。次に、瞳情報検出部１２５は、この関数を半径について偏微分して、隣り合う半径同士の輝度の合計値の最大変化量を求め、この最大変化量が検出された位置の半径の円を瞳孔外縁として検出する。
【００９８】
なお、画像データが可視光カメラで撮影された画像データである場合、瞳情報検出部１２５は、二値化された第２領域６０に対して瞳孔外縁検出処理を適用することによって虹彩外縁を検出する。したがって、画像データが可視光カメラで撮影された画像データである場合、ステップＳ５に示す瞳情報を検出する処理はここで終了となる。この場合、瞳情報には、虹彩外縁の座標データと、虹彩の中心の座標データとが含まれることになる。
【００９９】
一方、画像データが赤外光カメラで撮影された画像データである場合、以下に示す虹彩外縁を検出する虹彩外縁検出処理が実行されてもよい。虹彩外縁検出処理としては、ドーグマンアルゴリズムの一部を利用した虹彩外縁検出処理が採用できる。
【０１００】
図１２は、虹彩外縁検出処理を説明する図である。具体的には、虹彩外縁検出処理において、瞳情報検出部１２５は、二値化される前の第２領域６０を用いる。まず、瞳情報検出部１２５は、瞳孔検出処理によって検出した瞳孔外縁６２１と瞳孔の中心６２２とを第２領域６０に設定する。次に、瞳情報検出部１２５は、中心６２２を通る水平線６２３を基準に探索範囲を設定する。探索範囲は、例えば、瞳孔外縁６２１から所定の虹彩最大半径の円までの領域であって、水平線６２３の上下２２．５度の範囲内の領域である。
【０１０１】
次に、瞳情報検出部１２５は、探索範囲内において、瞳孔外縁６２１を中心に径方向に微小幅の領域を設定する。次に、瞳情報検出部１２５は、設定した微小幅の領域の輝度の合計値を重積分によって求める。次に、瞳情報検出部１２５は、直前に設定した微小幅の領域を１ピクセル分、径方向に広げて微小幅の領域を設定し、この微小幅の領域の輝度の合計値を重積分により求める。次に、瞳情報検出部１２５は、この処理を、所定の虹彩最大半径まで繰り返し実行する。これにより、複数の半径と、複数の半径のそれぞれに対応する輝度の合計値との関係を示す関数が得られる。次に、瞳情報検出部１２５は、この関数を半径について偏微分して、隣り合う半径同士の輝度の合計値の最大変化量を求め、この最大変化量が検出された位置の半径の円を虹彩外縁６２４として検出する。以上により、画像データが赤外光カメラで撮影された画像データである場合における、ステップＳ５に示す瞳情報を検出する処理は終了となる。この場合、瞳情報には、例えば虹彩外縁検出処理によって検出された虹彩外縁の座標データ及び虹彩の中心の座標データと、瞳孔検出処理によって検出された瞳孔外縁の座標データとが含まれてもよいし、これらのデータに加えてさらに瞳孔の中心の座標データが含まれてもよい。
【０１０２】
従来、瞳孔外縁検出処理としてはハフ（Ｈａｕｇｈ）円検出処理が広く用いられている。しかし、画像データに含まれる人物４００の瞳孔は正円ばかりではなく、いびつに変形しているケースもある。また、画像データに含まれる人物４００が細目のケース及び顔を横に向けているケースもある。これらのケースでは瞳孔が正円ではなくなるため、ハフ円検出処理では瞳孔外縁を正確に検出できない可能性がある。このことは、虹彩外縁検出処理においてハフ円検出処理を適用した場合についても同様である。
【０１０３】
そこで、本実施の形態では、ドーグマンアルゴリズムの一部を利用した瞳孔外縁検出処理及び虹彩外縁検出処理を採用する。これにより、本実施の形態では、瞳孔が正円からいびつに変形したケース、細目のケース、及び顔の向きが横向きのケースというような様々なケースにおいて、瞳孔外縁検出処理及び虹彩外縁検出処理に対するロバスト性が高められている。
【０１０４】
しかしながら、ドーグマンアルゴリズムを利用した瞳孔外縁検出処理及び虹彩外縁検出処理の弊害として、眼鏡のフレームのような瞳孔又は虹彩に類似する物体が瞳孔外縁又は虹彩外縁と誤検出されることがある。そこで、本実施の形態は、第１領域５０を絞り込むことによって設定された第２領域６０に対して、瞳情報を検出する処理を実行する。これにより、本実施の形態では上記の弊害の克服が図られている。
【０１０５】
図３に参照を戻す。ステップＳ６では、視線情報検出部１４０は、ステップＳ５で検出した瞳情報を出力する。ここでは、瞳情報は、視線情報検出部１４０に出力される。但し、これは一例であり、瞳情報は、表示装置３００に出力されてもよい。
【０１０６】
ステップＳ７では、視線情報検出部１４０は、瞳情報と、ステップＳ９で検出された顔向き情報が示す顔の向きとに基づいて視線情報を検出する。視線情報の検出処理の具体例は前述の通りである。ステップＳ８では、視線情報検出部１４０は、視線情報を表示装置３００に出力する。
【０１０７】
ステップＳ９では、顔向き検出部１３０は、顔向き情報を検出する。顔向き検出部１３０は以下の処理により顔向き情報を検出する。なお、ステップＳ９はステップＳ３〜Ｓ６の処理と並列に行われる。特に、第２領域の設定に第３基準を用いる場合、ステップＳ９は、ステップＳ３の処理と並列に行うようにしてもよい。図１３は、顔領域に対して設定された顔の特徴点９Ｘを示す図である。図１３に示すように、顔領域に対してランドマーク検出処理が適用されることにより、複数の特徴点９Ｘが顔領域から検出されている。図１３の例では、ランドマーク検出処理によって検出される特徴点９Ｘのうち、視線情報の検出に必要となる特徴点９Ｘが示されている。図１３の例では、鼻筋上に位置する例えば５個の特徴点９Ｘと、鼻の下側に位置する例えば２個の特徴点９Ｘと、顔の輪郭上に位置する例えば１７個の特徴点９Ｘとが検出されている。さらに、図１３の例では、左右の目頭９２に位置する２個の特徴点９Ｘと、左右の目尻９３に位置する２個の特徴点９Ｘとが検出されている。なお、特徴点９Ｘは、それぞれランドマーク点番号が付与されており、どのランドマーク点番号の特徴点が顔のどの部位を示すかは予め定められている。例えば、ランドマーク点番号が「２」の特徴点９Ｘは左の目尻９３を示し、ランドマーク点番号が「０」の特徴点は左の目頭９２を示すというように、各特徴点９Ｘにはランドマーク点番号が設定されている。そのため、顔向き検出部１３０は、ランドマーク点番号から特徴点９Ｘが顔のどの部位を示しているのかを特定できる。
【０１０８】
次に、顔向き検出部１３０は、顔の特徴点９Ｘの配列パターンから下記の処理を実行して顔向き情報を検出する。図１４は、顔向き情報を検出する処理の説明図である。まず、顔向き検出部１３０は、顔領域４０に設定された顔の特徴点９Ｘから縦方向の縦中心線１３１と横方向の横中心線１３２とを設定する。例えば、顔向き検出部１３０は、鼻筋の中心を示す特徴点１３３を通り、且つ顔領域４０の縦の辺と平行な直線を縦中心線１３１として設定すればよい。特徴点１３３は、例えば鼻筋を示す５個の特徴点９Ｘのうち、上から３番目の特徴点９Ｘである。また、顔向き検出部１３０は、例えば特徴点１３３を通り、且つ顔領域４０の横の辺と平行な直線を横中心線１３２として設定すればよい。なお、縦中心線１３１及び横中心線１３２は、鼻筋の中心の特徴点１３３を通るとして説明したが、例えば鼻筋の下端の特徴点１３４を通るように設定されてもよいし、鼻筋の上端の特徴点１３５を通るように設定されてもよい。
【０１０９】
次に、顔向き検出部１３０は、横中心線１３２を特徴点１３３で区画し、右区間Ｋ１と左区間Ｋ２との長さを求める。次に、顔向き検出部１３０は、横中心線１３２の長さを１００％としたときの右区間Ｋ１と左区間Ｋ２との割合を求め、この割合に基づいて顔向き度合いを求める。顔向き度合いは、右区間Ｋ１の割合をＫ１、左区間Ｋ２の割合をＫ２とすると、例えば、−（Ｋ１−Ｋ２）により算出できる。この式において先頭のマイナスは、右向きの場合に顔向き度合いを正にするための符号である。例えば、Ｋ１＝３０％、Ｋ２＝７０％とすると、顔向き度合いは−（３０−７０）＝４０となる。例えば、Ｋ１＝７０％、Ｋ２＝３０％とすると、顔向き度合いは−（７０−３０）＝−４０となる。例えば、Ｋ１＝５０％、Ｋ２＝５０％とすると、顔向き度合いは、−（５０−５０）＝０となる。
【０１１０】
したがって、顔向き度合いの値がプラスの方向に増大するにつれて、顔の向きはより右方を向いていることを示し、顔向き度合いの値がマイナスの方向に増大するにつれて、顔の向きはより左方を向いていることを示す。また、顔向き度合いが０の場合、顔の向きは正面方向であることを示す。
【０１１１】
顔向き検出部１３０は、このようにして得られた顔向き度合いの値を顔向き情報として検出する。なお、ここでは、−（Ｋ１−Ｋ２）により顔向き度合いは算出されたが、これは一例にすぎず、他の数式が採用されてもよい。例えば、左向きを正にするべく、−（Ｋ２−Ｋ１）によって顔向き度合いは算出されてもよい。このように顔向き度合いの演算式は顔の向きの程度を示すことができる式であれば、どのような式が採用されてもよい。
【０１１２】
以上説明したように、本実施の形態によれば、第１領域５０を第１〜第３の基準に基づいて絞り込むことによって、瞳孔又は虹彩が含まれると推定される第２領域６０が設定され、第２領域６０において、瞳情報が検出される。これにより、眼鏡のフレームのような、瞳孔又は虹彩として誤検出される可能性の高い情報が第１領域５０に含まれていたとしても、このような情報が第１領域５０から省かれた領域が第２領域６０として設定される可能性が高まる。そのため、本実施の形態は、瞳孔又は虹彩の検出精度を向上させることができる。その結果、本実施の形態は、瞳孔又は虹彩の中心位置を正確に特定でき、ひいては、これらの情報を用いて行われる視線の検出精度を向上させることができる。
【０１１３】
（実施の形態２）
実施の形態２は、顔領域４０から目尻及び目頭が検出できた場合、目尻及び目頭を取り囲む囲み、且つ目尻及び目頭が検出されなかった場合に設定される第１領域５０よりも小さな領域を第１領域５０として設定するものである。本実施の形態２おいて、実施の形態１と同一の構成要素については同一の符号を付し、説明を省略する。図１５は、実施の形態２に係る画像処理システム１Ａの詳細な構成の一例を示すブロック図である。なお、図１５において、図２と同一名称であるが、機能が異なるブロックには末尾にＡの符号が付されている。
【０１１４】
瞳情報検出装置１２０Ａは、画像処理装置１００Ａのプロセッサ１１０Ａに設けられている。瞳情報検出装置１２０Ａにおいて、図２との相違点は、第１設定部１２３Ａ及び瞳情報検出部１２５Ａにある。第１設定部１２３Ａは、特徴点検出部１２６が顔領域において検出した特徴点の中に目尻及び目頭を示す特徴点が含まれているか否かを判定する。ここで、第１設定部１２３Ａは、特徴点検出部１２６が検出した特徴点において目尻及び目頭のそれぞれに対応するランドマーク点番号を持つ特徴点がある場合、目尻及び目頭が検出できたと判定すればよい。そして、第１設定部１２３Ａは、目尻及び目頭を検出できた場合、顔領域４０において目尻及び目頭を取り囲む領域を第１領域５０として設定すればよい。ここで、設定される第１領域５０は、目尻及び目頭が検出されなかった場合に設定される第１領域５０よりも小さい。
【０１１５】
目尻及び目頭が検出できた場合の第１領域５０の設定手法は、第３基準による第２領域９０の設定手法に準じた手法が採用できる。図８を参照する。例えば、第１設定部１２３Ａは、縦辺Ｊ１が目頭９２を通り、縦辺Ｊ２が目尻９３を通るように第１領域５０を設定すればよい。このとき、第１設定部１２３Ａは、横辺Ｊ３を横辺Ｈ４に対して下側に所定距離離れた位置に設定してもよいし、横辺Ｊ３を横辺Ｈ４上に設定してもよい。さらに、第１設定部１２３Ａは、横辺Ｊ４を横辺Ｈ５に対して上側に所定距離離れた位置に設定してもよいし、横辺Ｊ４を横辺Ｈ５上に設定してもよい。或いは、第１設定部１２３Ａは、縦辺Ｊ１を目頭９２に対して多少鼻側に設定してもよいし、縦辺Ｊ２を目尻９３に対して多少耳側に設定してもよい。
【０１１６】
瞳情報検出部１２５は、第１設定部１２３Ａにおいて目尻及び目頭が検出された場合、その検出結果に基づいて設定された第１領域５０に対して瞳情報を検出する処理を実行する。一方、第１設定部１２３Ａにおいて目尻及び目頭が検出されなかった場合、実施の形態１と同様、第２領域６０に対して瞳情報を検出する処理を実行する。
【０１１７】
次に、画像処理装置１００Ａの動作について説明する。図１６は、実施の形態２に係る画像処理装置１００Ａの動作の一例を示すフローチャートである。ステップＳ２１及びＳ２２の処理は、図３のステップＳ１及びＳ２と同じである。
【０１１８】
ステップＳ２３では、第１設定部１２３Ａは、特徴点検出部１２６により検出された特徴点を用いて、顔領域４０から目尻及び目頭を検出する。
【０１１９】
ステップＳ２４では、第１設定部１２３Ａは、目尻及び目頭を検出できたか否かを判定する。目尻及び目頭が検出できた場合（ステップＳ２４でＹＥＳ）、第１設定部１２３Ａは、目尻及び目頭を取り囲む領域を第１領域５０として設定する（ステップＳ２５）。
【０１２０】
ステップＳ２６において、瞳情報検出部１２５Ａは、ステップＳ５で設定された第１領域５０から瞳情報を検出する。
【０１２１】
一方、ステップＳ２４において目尻及び目頭が検出されなかった場合（ステップＳ２４でＮＯ）、第１設定部１２３Ａは、処理をステップＳ３０に進める。ステップＳ３０〜Ｓ３２の処理は、図３のステップＳ３〜Ｓ５と同じである。ステップＳ２７〜Ｓ２９、Ｓ３３の処理は、図３のステップＳ６〜Ｓ８、Ｓ９と同じである。
【０１２２】
以上説明したように、実施の形態２によれば、顔領域４０から目尻及び目頭が検出できた場合、第１領域５０に対して瞳情報を検出する処理が実行される。そのため、本実施の形態は、第２領域６０を設定することなく、第１領域５０に対して瞳情報を検出する処理を実行できる。また、第１領域５０は、目尻及び目頭を取り囲む領域である。そのため、本実施の形態は、眼鏡のフレームのような瞳孔又は虹彩として誤検出される可能性の高い情報が省かれた領域を第１領域５０として設定でき、瞳情報を精度よく検出できる。さらに、目尻及び目頭が検出される場合には実施の形態２の手法により瞳情報の検出を行い、目尻及び目頭が検出されない場合は、実施の形態１の手法により瞳情報の検出を行うといったように、目尻及び目頭が検出されたか否かに応じて瞳情報の検出手法を適応的に切り替え、瞳情報を精度よく検出することができる。
【０１２３】
（実施の形態３）
実施の形態３は、人物４００の関心度を推定するものである。図１７は、実施の形態３に係る画像処理システム１Ｂの詳細な構成を示すブロック図である。なお、本実施の形態において実施の形態１、２と同一の構成要素には同一の符号を付し、説明を省略する。また、図１７において、図２と名称が同一であるが機能が異なるブロックには末尾にＢの符号が付されている。
【０１２４】
プロセッサ１１０Ｂは、さらに関心度推定部１５０を含む。関心度推定部１５０は、以下の処理により人物４００の関心度を推定する。まず、関心度推定部１５０は、特徴点検出部１２６により検出された顔の特徴点９Ｘを用いて、顔領域４０からまゆげ及び口角を検出する。ここで、関心度推定部１５０は、特徴点検出部１２６により検出された顔の特徴点９Ｘにおいて、まゆげ及び口角のそれぞれに対応するランドマーク点番号が付された特徴点９Ｘを特定することで、まゆげ及び口角を検出すればよい。
【０１２５】
次に、関心度推定部１５０は、視線情報検出部１４０により検出された視線情報と、検出したまゆげの位置及び口角の位置とに基づいて人物４００の関心度を推定し、表示装置３００に出力する。具体的には、関心度推定部１５０は、例えば、人が喜び、驚き、怒り、悲しみ、及び無表情等の各種表情をしている際のまゆげ及び口角の標準的な位置が予め記述されたパターンデータを例えばメモリ（図略）から取得する。そして、関心度推定部１５０は、検出した人物４００のまゆげ及び口角の位置と、パターンデータとを照合し、人物４００の表情を推定する。そして、関心度推定部１５０は、推定した人物４００の表情と視線情報が示す視線とを用いて、人物４００の視線がどの方向にある、又は人物４００の注視点がどの位置にあるときに人物４００がどのような表情を行ったかを特定する。すなわち、関心度推定部１５０は、人物４００視線情報と人物４００の表情とを対応付けたデータを人物４００の関心度として特定する。なお、ここでは、関心度推定部１５０は、まゆげ及び口角に基づいて関心度を推定するとして説明したが、これは一例であり、まゆげ及び口角の一方に基づいて関心度を推定してもよい。
【０１２６】
以上説明したように、本実施の形態によれば、視線情報に加えてまゆげ及び口角をさらに用いて人物４００の関心度が推定されているため、視線情報のみに基づく関心度推定に比べてより高精度に関心度を推定できる。
【０１２７】
（変形例）
（１）カメラ２００として赤外光カメラが採用された場合、赤外光カメラは、太陽光のスペクトル強度が所定の第１波長よりも減衰した所定の第２波長の帯域の赤外光を用いる赤外光カメラで構成すればよい。所定の第１波長は、例えば８５０ｎｍである。所定の第２波長は、例えば９４０ｎｍである。第２波長の帯域は、例えば８５０ｎｍを含まず、且つ９４０ｎｍを基準（例えば中心）とする所定幅の帯域である。近赤外光を撮影する赤外光カメラとして、８５０ｎｍの赤外光を用いるものが知られている。しかし、８５０ｎｍでは太陽光のスペクトル強度が十分に減衰していないため、太陽光のスペクトル強度が強い屋外において高精度な視線検出ができない可能性がある。そこで、本開示は、赤外光カメラとして例えば９４０ｎｍの帯域の赤外光を用いるカメラを採用する。これにより、太陽光のスペクトル強度が強い屋外においても高精度な視線検出を行うことができる。ここでは、所定の第２波長は９４０ｎｍとしたが、これは一例であり、９４０ｎｍから多少ずれた波長であってもよい。なお、第２波長の赤外光を用いる赤外光カメラは、例えば第２波長の赤外光を照射する投光器を備えるカメラである。
【０１２８】
（２）上記実施の形態では、視線情報は注視点を示す座標データを含むとして説明したが、本開示はこれに限定されない。例えば、視線情報は、注視点を基準（例えば中心）とする所定サイズの所定形状（例えば円、四角形など）の領域である注視面を示す座標データを含んでいてもよい。これにより、人物及び注視対象物間の距離又は注視対象物の大きさに依存することなく注視対象物を適切に判定できる。
【０１２９】
（３）実施の形態１において、第３基準を用いて第２領域９０を設定する場合、第２設定部１２４は、左右の目のうち一方の目において目尻及び目頭が検出でき、他方の目において目尻及び目頭が検出できないこともある。この場合、第２設定部１２４は、目尻及び目頭が検出できなかったと判定してもよい。或いは、第２設定部１２４は、一方の目に対してのみ第３基準で第２領域９０を設定し、他方の目に対しては第１基準又は第２基準で第２領域６０を設定すればよい。
【０１３０】
（４）実施の形態２において、目尻及び目頭を取り囲むように第１領域５０を設定する場合、左右の目のうち一方の目において目尻及び目頭が検出でき、他方の目において目尻及び目頭が検出できないこともある。この場合、第１設定部１２３Ａは、目尻及び目頭が検出できなかったと判定してもよい。或いは、第１設定部１２３Ａは、一方の目に対してのみ実施の形態２で説明した手法で第１領域５０を設定し、他方の目に対しては実施の形態１で説明した手法を用いて第１領域５０を設定すればよい。
【産業上の利用可能性】
【０１３１】
本開示は、瞳情報及び視線情報を高精度に検出できるため、瞳情報を用いた虹彩認証、視線情報を用いた人物の興味対象の推定、人物の状態推定、及び視線を用いたユーザインターフェースなどにおいて有用である。
【符号の説明】
【０１３２】
１        ：画像処理システム
１００    ：画像処理装置
１１０    ：プロセッサ
１２０    ：瞳情報検出装置
１２１    ：画像取得部
１２２    ：顔検出部
１２３    ：第１設定部
１２４    ：第２設定部
１２５    ：瞳情報検出部
１２６    ：特徴点検出部
１３０    ：顔向き検出部
１４０    ：視線情報検出部
１５０    ：関心度推定部
２００    ：カメラ
３００    ：表示装置
３０１    ：オブジェクト
４００    ：人物
【要約】
【課題】瞳情報の検出精度のさらなる向上を図る。
【解決手段】画像データを取得し、画像データから、人物の顔の少なくとも一部を含む顔領域を検出し、検出した顔領域において、人物の目の検出に用いられる第１領域を設定し、第１領域を所定の基準に基づいて絞りこむことにより、瞳孔又は虹彩が含まれると推定される第２領域を設定し、第２領域において、瞳孔又は前記虹彩を示す瞳情報を検出し、検出した前記瞳情報を出力する。
【選択図】図２【図１】
0006717477.tif 000002
【図２】
0006717477.tif 000003
【図３】
0006717477.tif 000004
【図４】
0006717477.tif 000005
【図５】
0006717477.tif 000006
【図６】
0006717477.tif 000007
【図７】
0006717477.tif 000008
【図８】
0006717477.tif 000009
【図９】
0006717477.tif 000010
【図１０】
0006717477.tif 000011
【図１１】
0006717477.tif 000012
【図１２】
0006717477.tif 000013
【図１３】
0006717477.tif 000014
【図１４】
0006717477.tif 000015
【図１５】
0006717477.tif 000016
【図１６】
0006717477.tif 000017
【図１７】
0006717477.tif 000018