(57)【特許請求の範囲】
【請求項１】
画像から人物の顔を検出する顔検出手段と、
各人物に対応して顔に関する情報と視線補正の要否と視線補正が要である場合の視線補正値とを保持する辞書データを予め記憶する記憶手段と、
前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段と、
前記顔検出手段により検出された顔から視線方向を検出する視線検出手段と、
前記顔認証手段により認証された顔に対応した前記辞書データにおいて、視線補正が否とされていれば、検出された前記視線方向をそのまま出力し、視線補正が要とされていれば、対応する視線補正値を用いた演算により、検出された前記視線方向を補正して出力する視線補正手段と
を具備することを特徴とする情報処理装置。
【請求項２】
前記顔検出手段により検出された顔から顔の器官を検出する顔器官検出手段
を更に具備し、
前記視線検出手段は、
前記顔器官検出手段により検出された前記顔の器官の位置関係と、予め保持された顔の器官の平均的な位置関係とを用いて前記視線方向を検出する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記視線検出手段により検出された前記視線方向に基づいて視線補正値を作成し、該作成した視線補正値を前記辞書データに登録又は更新登録する登録手段
を更に具備することを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記辞書データには、
各人物に対応して視線補正値の重み付き平均値が保持されており、
前記登録手段は、
前記視線検出手段により検出された前記視線方向と、前記辞書データ内の前記視線補正値の重み付き平均値とを前記辞書データに登録又は更新登録する
ことを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記登録手段は、
前記顔検出手段により検出された顔の状態、前記視線検出手段により検出された視線方向の少なくともいずれかが所定の条件を満たした場合に前記登録又は前記更新登録を行なう
ことを特徴とする請求項３又は４記載の情報処理装置。
【請求項６】
前記顔の状態についての前記所定の条件は、
前記顔検出手段により検出された顔の向き、該顔の大きさ、該顔の表情の少なくとも１つに関する
ことを特徴とする請求項５記載の情報処理装置。
【請求項７】
前記視線検出手段は、
前記視線方向として、視線の方向、又は所定の方向に対して視線の方向が一致することを示す尤度を検出する
ことを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
請求項１から７のいずれか１項に記載の情報処理装置を具備する撮像装置であって、
前記視線補正手段から出力される前記視線方向に基づいて、撮像の対象となる人物の視線が前記撮像装置に向いているか否かを判定する判定手段と、
前記判定手段による判定結果に基づいて撮像の実行を制御する撮像制御手段と
を具備することを特徴とする撮像装置。
【請求項９】
情報処理装置の処理方法であって、
顔検出手段が、画像から人物の顔を検出する工程と、
顔認証手段が、各人物に対応して顔に関する情報と視線補正の要否と視線補正が要である場合の視線補正値とを保持する辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する工程と、
視線検出手段が、前記顔検出手段により検出された顔から視線方向を検出する工程と、
視線補正手段が、前記顔認証手段により認証された顔に対応した前記辞書データにおいて、視線補正が否とされていれば、検出された前記視線方向をそのまま出力し、視線補正が要とされていれば、対応する視線補正値を用いた演算により、検出された前記視線方向を補正して出力する工程と
を含むことを特徴とする処理方法。
【請求項１０】
コンピュータを、
画像から人物の顔を検出する顔検出手段、
各人物に対応して顔に関する情報と視線補正の要否と視線補正が要である場合の視線補正値とを保持する辞書データを予め記憶する記憶手段、
前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段、
前記顔検出手段により検出された顔から視線方向を検出する視線検出手段、
前記顔認証手段により認証された顔に対応した前記辞書データにおいて、視線補正が否とされていれば、検出された前記視線方向をそのまま出力し、視線補正が要とされていれば、対応する視線補正値を用いた演算により、検出された前記視線方向を補正して出力する視線補正手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、その処理方法、プログラム及び撮像装置に関する。
【背景技術】
【０００２】
人物の視線を検出する技術が知られている。特許文献１に記載された技術では、エッジなどから顔の輪郭や目など複数の部位を検出し、その位置関係に基づいて顔の向きを検出する。更に、瞳の位置を検出することによって車両に設置されたカメラを基準とした運転者の視線を検出する。また、特許文献２に記載された技術では、エネルギーモデルを使用して目領域を検出し、この目領域と予め設けられた画像辞書とを比較することで、視線を検出している。
【０００３】
ここで、特許文献３には、利き目という個人差の影響に対応した視線を検出する技術が記載されている。特許文献３に記載された技術では、運転者の顔の向きが正面を向いていることを前提として、左右いずれの目が利き目であるかを示す予め登録された情報に基づいて運転者の視線を検出している。この他、特許文献４には、これらの視線を検出する技術を利用した撮像装置に関する技術が記載されている。特許文献４に記載された技術では、被写体の視線がカメラ方向を向いた場合に撮像を行なう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２１０２３９号公報
【特許文献２】特開平０９−０８１７３２号公報
【特許文献３】特開２００６−２９３９０９号公報
【特許文献４】特開２００１−０５１３３８号公報
【特許文献５】特開２００４−１１８７３１号公報
【特許文献６】特開２００７−２６５３６７号公報
【非特許文献】
【０００５】
【非特許文献１】P. Viola, M. Jones, “Rapid Object Detection using a Boosted Cascade of Simple Features", in Proc. Of CVPR, vol.1, pp.511-518, December, 2001
【非特許文献２】御手洗祐輔, 森克彦, 真継優和, “選択的モジュール起動を用いたConvolutionalNeuralNetworksによる変動にロバストな 顔検出システム", FIT (情報科学技術フォーラム), Ll-013, 2003
【非特許文献３】Timothy F. Cootes, Gareth J. Edwards, and Christopher J. Taylor, “Active Appearance Models", IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 23, No.6, JUNE 2001
【非特許文献４】M. Turk and A. P. Pentland, “Face Recognition Using Eigenfaces", IEEE Conf. CVPR, 1991
【非特許文献５】Chi-Ho Chan, Josef Kittler, and Kieron Messer, “Muitl-scale local binary pattern histograms for face recognition", In Seong-Whan Lee and Stan Z. Li, editors, ICB, volume 4642 of Lecture Notes in Computer Science, pages 809-818. Springer, 2007
【非特許文献６】M. Bertozzi, A. Broggi, M. Del Rose, M. Felisa, A. Rakotomamonjy and F. Suard, “A Pedestrian Detector Using Histograms of Oriented Gradients and a Support Vector Machine Classifier", IEEE Intelligent Transportation Systems Conference, 2007
【非特許文献７】V. Vapnik. “Statistical Learning Theory", John Wiley & Sons, 1998
【発明の概要】
【発明が解決しようとする課題】
【０００６】
所定の方向を基準とした被写体の視線の方向（向き）は、図１３（ａ）に示すように、視線方向（θ１、θ２）として表すことができる。また、被写体の視線の向き（θ１、θ２）は、図１３（ｂ）に示すように、顔の向き（α１、α２）と目の向き（β１、β２）とによっても表わすことができる。被写体の視線の向き（θ１、θ２）を検出するのに必要となる顔の向き（α１、α２）や目の向き（β１、β２）は、個人差の影響によりずれが生じる可能性がある。
【０００７】
ここで、このような個人差について例を挙げると、１つ目の個人差としては、図１４（ａ）に示すように、顔の骨格、目（瞳）や口など顔器官の大きさや、これら顔器官の相対位置関係の違いが挙げられる。顔の向き（α１、α２）や目の向き（β１、β２）は、目（瞳）や口など顔器官の平均的な相対位置関係、若しくは、モデルとなる平均的な辞書データを利用して検出する場合が多い。そのため、視線検出対象となる顔が顔器官の平均的な相対位置関係や平均的な辞書データから外れてしまうと、顔の向き（α１、α２）や目の向き（β１、β２）にずれが生じてしまう可能性がある。
【０００８】
２つ目の個人差としては、利き目が挙げられる。人間は、片方の目から得られる視界を主の視界情報として使用していると言われており、この主の視界情報が得られる目を利き目と呼んでいる。そのため、人物が所定の対象物を見ている場合、利き目となる目は所定の対象物の方向を向いているが、一方の目は所定の対象物の方向とは少しずれた方向を向いていると言われている。例えば、図１４（ｂ）に示す２人の人物は、正面方向を見ているにも関わらず、図１４（ｂ）に示す左側の人物では、その右瞳は目領域の中央に存在しているが、その左瞳は目領域の中央から左側に存在している。これと同様に、図１４（ｂ）に示す右側の人物では、その左瞳は目領域の中央に存在しているが、その右瞳は目領域の中央から右側に存在している。更には、利き目が左右で入れ替わる交利目の人物も存在する。このような利き目の個人差により、目の向き（β１、β２）にずれが生じる。
【０００９】
このような視線検出技術を各種装置に適用した場合、上述した個人差の影響を起因として、種々の問題が生じる場合がある。例えば、視線の向きがカメラ方向を向いた場合に自動的に撮像する撮像装置に適用した場合、被写体がカメラ方向を向いているにも関わらず、撮像されないなどの問題が生じる可能性がある。また、例えば、よそ見を検知して警報を発する車載装置に適用した場合、被写体が正面を向いているにも関わらず、よそ見をしていると誤検知し、継続的に警報が発せられる可能性がある。
【００１０】
本発明は、上記課題に鑑みてなされたものであり、個人差の影響を受けずに、視線の向きを高精度に検出できるようにした技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明の一態様による情報処理装置は、
画像から人物の顔を検出する顔検出手段と、
各人物に対応して顔に関する情報と視線補正の要否と視線補正が要である場合の視線補正値とを保持する辞書データを予め記憶する記憶手段と、
前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段と、
前記顔検出手段により検出された顔から視線方向を検出する視線検出手段と、
前記顔認証手段により認証された顔に対応した前記辞書データにおいて、視線補正が否とされていれば、検出された前記視線方向をそのまま出力し、視線補正が要とされていれば、対応する視線補正値を用いた演算により、検出された前記視線方向を補正して出力する視線補正手段と
を具備することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、様々な要因によって生じる視線の向きのずれを解消するため、視線の向きを高精度に検出できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施の形態に係わる情報処理装置１０の機能的な構成の一例を示す図。
【図２】図１に示す情報処理装置３０の処理の流れの一例を示すフローチャート。
【図３】視線検出処理の一例を説明するための図。
【図４】視線検出処理の一例を説明するための図。
【図５】図２のＳ１０８に示す視線補正処理の流れの一例を示すフローチャート。
【図６】辞書データの一例を示す図。
【図７】図２のＳ１０９に示す視線補正データ登録処理の流れの一例を示すフローチャート。
【図８】図７に示すＳ３０６及びＳ３０９の処理の条件の一例を説明するための図。
【図９】実施形態２に係わる撮像装置６０の機能的な構成の一例を示す図。
【図１０】実施形態２に係わる撮像装置６０の処理の流れの一例を示すフローチャート。
【図１１】図１０のＳ４１０に示すカメラ視線検出処理の流れの一例を示すフローチャート。
【図１２】実施形態２に係わるカメラ視線辞書データの一例を示す図。
【図１３】従来技術を説明するための図。
【図１４】従来技術を説明するための図。
【発明を実施するための形態】
【００１４】
以下、本発明に係わる実施の形態について添付図面を参照して詳細に説明する。
【００１５】
（実施形態１）
図１は、本発明の一実施の形態に係わる情報処理装置３０における機能的な構成の一例を示す図である。
【００１６】
情報処理装置３０は、その機能的な構成として、画像取得部１０と、顔検出部１１と、正規化画像生成部１２と、顔器官検出部１３と、顔認証部１４と、視線検出部１５と、視線補正部１６と、登録部１７とを具備して構成される。
【００１７】
画像取得部１０は、画像を取得する。画像は、例えば、コンパクトデジタルカメラ、デジタル一眼レフカメラなどの撮像装置、若しくはハードディスクドライブやフラッシュメモリなどの不揮発性のメモリ媒体からインターフェイスを介して取得する。
【００１８】
顔検出部１１は、画像取得部１０により取得された画像から人物の顔を検出する。正規化画像生成部１２は、顔検出部１１により検出された顔領域の切り出しを行なうとともに、顔の大きさが所定サイズ及び顔の向きが正立するようにアフィン変換を行なう。
【００１９】
顔器官検出部１３は、顔検出部１１により検出された顔から、例えば、目尻、目頭、瞼、上唇などの複数の顔の器官（顔器官）を検出する。顔認証部１４は、予め作成された辞書データ（辞書）を用いて、顔検出部１１により検出された顔の認証を行なう。なお、辞書データは、例えば、記憶手段（不図示）に予め記憶されている。
【００２０】
視線検出部１５は、顔検出部１１により検出された顔から、視線の向き（θ１、θ２）等の検出を行なう。視線補正部１６は、視線検出部１５により検出された視線の向きを補正する。登録部１７は、視線補正部１６により補正された視線の向きを登録するか否かを判定し、その判定結果に基づいて視線の向きを辞書データに登録する。
【００２１】
以上が、情報処理装置３０の構成の一例についての説明である。なお、情報処理装置３０には、コンピュータが内蔵されている。コンピュータには、ＣＰＵ等の主制御手段、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ＨＤＤ（Hard Disk Drive）等の記憶手段が具備される。また、コンピュータにはその他、ボタンやディスプレイ又はタッチパネル等の入出力手段、ネットワークカード等の通信手段等も具備されていても良い。なお、これら各構成部は、バス等により接続され、主制御手段が記憶手段に記憶されたプログラムを実行することで制御される。
【００２２】
次に、図２を用いて、図１に示す情報処理装置３０における処理の流れの一例について説明する。
【００２３】
［Ｓ１００、Ｓ１０１］
情報処理装置３０は、画像取得部１０において、画像を取得する（Ｓ１００）。そして、顔検出部１１において、Ｓ１００の処理で取得した画像に対して顔検出処理を行なう（Ｓ１０１）。顔検出においては、図３に示すように、顔の中心位置４３に加えて、目の中心位置４１及び４２、口の中心位置４４も検出される。
【００２４】
［Ｓ１０２、Ｓ１０３］
ここで、情報処理装置３０は、顔が検出されたか否かの判定を行なう。判定の結果、顔が検出されていなければ（Ｓ１０２でＮＯ）、情報処理装置３０は、この処理を終了する。顔が検出されていれば（Ｓ１０２でＹＥＳ）、情報処理装置３０は、顔検出部１１において、Ｓ１０２の処理で検出された１又は複数の顔の内、１つの顔を選択する（Ｓ１０３）。顔を検出する技術は、ブースティングをベースとした非特許文献１や、ニューラルネットワークをベースとした非特許文献２などの技術を用いれば良い。顔検出の手法は、これに限られず、人物の顔を検出できるのであれば、その手法は特に問わない。なお、これらの顔検出の手法においては、基本的には、顔を構成する目や口などの部位を検出し、その位置関係から顔の存在有無を判定している。そのため、顔検出処理においては、図３に示すように、顔の中心位置４３に加えて、目の中心位置４１及び４２、口の中心位置４４も検出される。
【００２５】
［Ｓ１０４］
情報処理装置３０は、正規化画像生成部１２において、図３に示す顔の中心位置４３、目の中心位置４１及び４２等を用いて、顔領域の切り出しを行なうとともに、顔の大きさが所定サイズ及び顔の向きが正立するようにアフィン変換を行なう（Ｓ１０４）。例えば、図３に示すように、左目の中心位置４１と右目の中心位置４２との間の距離Ｌを顔の大きさ、左目の中心位置４１と右目の中心位置４２との２点から算出される傾きを顔の向きとして定義する。そして、左目の中心位置４１と右目の中心位置４２との間のＬ’と、実際の左目の中心位置４１と右目の中心位置４２との２点から算出される線分との傾きが０度となるように、アフィン変換を行なう。
【００２６】
［Ｓ１０５］
情報処理装置３０は、顔器官検出部１３において、Ｓ１０１の処理で検出された顔の中心位置４３、目の中心位置４１及び４２、口の中心位置４４に加え、図４（ａ）に示すような更に細かな特徴点（目尻、目頭、瞼、上唇など）を検出する（Ｓ１０５）。目尻、目頭、瞼、上唇など更に細かな特徴点（すなわち、顔器官）の検出には、例えば、モデルベースの非特許文献３など種々の技術を用いれば良い。
【００２７】
［Ｓ１０６］
情報処理装置３０は、顔認証部１４において、Ｓ１０１の処理で検出された顔の中心位置４３、目の中心位置４１及び４２、口の中心位置４４、Ｓ１０５の処理で検出された更に細かな特徴点（目尻、目頭、瞼、上唇など）を用いて顔認証を行なう（Ｓ１０６）。顔認証技術としては、非特許文献４のように固有顔と呼ばれる顔全体領域を使用する方法や、特許文献５のように複数のサンプル点における局所的な特徴を比較する方法などがある。
【００２８】
ここで、顔認証処理を行なうには、個人を特定するために必要な辞書データ（辞書）を予め登録しておく必要がある。本実施形態においては、辞書データとして、顔画像そのものを含むデータを用いる場合について説明する。勿論、辞書データ（顔に関する情報）は、これに限られず、例えば、フィルタなど何らかの処理によって抽出された特徴量を含むデータで構成されていても良い。顔認証で使用する辞書データについての説明は後述するが、辞書データ内には、顔画像とともに、視線の向きを補正するデータが含まれる（図６（ａ）参照）。
【００２９】
本実施形態においては、顔認証の結果として、図４（ｂ）に示すように、登録した顔に対応した独自の顔ＩＤが顔認証部１４から出力される。例えば、登録されている顔であれば、正のＩＤが出力され、登録されていない顔であれば、負のＩＤが出力される。この顔ＩＤも、視線の向きを補正するデータとともに辞書データ内に含まれる（図６（ａ）参照）。
【００３０】
［Ｓ１０７］
情報処理装置３０は、視線検出部１５において、Ｓ１０１の処理で検出された顔の中心位置４３、目の中心位置４１及び４２、口の中心位置４４、Ｓ１０５の処理で検出された更に細かな特徴点（目尻、目頭、瞼、上唇など）を視線データとして抽出する。そして、この視線データを用いて、視線の向き（θ１、θ２）の他、顔の向き（α１、α２）や目の向き（β１、β２）を検出する（Ｓ１０７）。
【００３１】
視線検出技術としては、例えば、特許文献６に示されるように、Ｓ１０５の処理で検出された更に細かな特徴点（目尻、目頭、瞼、上唇など）の相対的な位置関係を使用すれば良い。また、例えば、特許文献２に示されるように、Ｓ１０５の処理で検出された更に細かな特徴点（目尻、目頭、瞼、上唇など）を基準として複数の領域を設定し、予め作成された辞書画像と比較することで視線の向き（θ１、θ２）を検出するようにしても良い。なお、特許文献６においては、視線データとして位置や距離情報が得られ、特許文献２においては、視線データとして輝度やフィルタ処理によって抽出された特徴量が得られる。
【００３２】
ここで、本実施形態においては、特許文献６に示されるように、Ｓ１０５の処理で検出された更に細かな特徴点（目尻、目頭、瞼、上唇など）の位置関係を視線データとして取得し、当該視線データを用いて視線の向き（θ１、θ２）等を検出する。勿論、視線の向き（θ１、θ２）等の検出は、このような手法に限られず、他の手法を用いても良い。
【００３３】
なお、図１３（ａ）及び図１３（ｂ）で説明した基準方向は、カメラなどの撮像装置やマーカーなど、様々な対象物に設定することができる。本実施形態においては、基準方向の視線の向きをθ１＝θ２＝０として定義する。つまり、θ１＝θ２＝０の場合に、被写体の視線が対象物を向いているものとする。
【００３４】
また、基準方向から所定の対象物に対する視線の向き（すなわち、視線方向を表す角度）を検出するのではなく、視線に関する情報としてそれ以外の情報を検出するようにしても良い。例えば、所定の方向にある対象物に対して視線が向いている度合い（すなわち、視線方向が所定の方向と一致していることを示す尤度）として、所定視線方向の尤度を検出するようにしても良い。
【００３５】
このようにして、Ｓ１０１における顔検出処理、Ｓ１０４における正規化画像生成処理、Ｓ１０５における顔器官検出処理、Ｓ１０６における顔認証処理、Ｓ１０７における視線検出処理が順次行なわれる。なお、顔検出処理、正規化画像生成処理、顔器官検出処理、顔認証処理、及び視線検出処理は、上述した技術や手法を必ずしも用いる必要はなく、他の技術を用いてそれぞれ実施するようにしても良い。
【００３６】
ここで、Ｓ１０７に示す視線検出処理、すなわち、顔の向き（α１、α２）及び目の向き（β１、β２）を算出する処理は、大量の顔画像から平均的な特徴点（目尻、目頭、瞼、上唇など）の相対位置関係が予め求められており、この情報を用いて行なう。より具体的には、この平均的な相対位置関係と、Ｓ１０５の処理で検出された顔器官の相対位置関係とを用いて顔の向き及び目の向きを算出する。そのため、この処理で算出される顔の向き（α１、α２）及び目の向き（β１、β２）は、個人によってずれ（ずれ量）が生じる可能性がある。
【００３７】
そこで、本実施形態においては、視線補正処理を実施することによりこのずれ量を補正する。これにより、個人差によらず、顔の向き（α１、α２）及び目の向き（β１、β２）をより高精度に算出する。
【００３８】
［Ｓ１０８］
情報処理装置３０は、視線補正部１６において、視線補正処理を行なう（Ｓ１０８）。この処理の詳細については後述するが、簡単に説明すると、Ｓ１０６の顔認証結果に基づいてＳ１０７の処理で検出された視線の向きを補正する。この処理の結果、補正が必要であれば、視線補正部１６は、補正後の視線の向き（θ１’、θ２’）を出力し、補正が必要なければ、視線補正部１６は、（そのままの）視線の向き（θ１、θ２）を出力する。
【００３９】
［Ｓ１０９、Ｓ１１０］
その後、情報処理装置３０は、登録部１７において、視線の向きを補正する視線補正データ（Ｓ１０８の処理で算出）を辞書データに登録するか否かを判定し、その判定結果に基づいて視線補正データの登録を行なう（Ｓ１０９）。なお、この処理の詳細については後述する。その後、Ｓ１０１の処理で検出された顔の中で、未だ上述したＳ１０３〜Ｓ１０９の処理が実施されていない顔があれば（Ｓ１１０でＹＥＳ）、情報処理装置３０は、再度、Ｓ１０３の処理に戻る。Ｓ１０１の処理で検出された顔全てについて上述した処理を実施していれば（Ｓ１１０でＮＯ）、情報処理装置３０は、この処理を終了する。
【００４０】
次に、図５を用いて、上述した図２のＳ１０８に示す視線補正処理の詳細な流れの一例について説明する。
【００４１】
［Ｓ２０１、Ｓ２０２、Ｓ２０６］
この処理が開始すると、情報処理装置３０は、視線補正部１６において、まず、Ｓ１０６の顔認証結果（顔ＩＤ）に基づいて、処理対象となる顔が既に辞書データに登録されているか否かを判定する。つまり、Ｓ１０６における顔認証結果において、正のＩＤが得られれば、既に登録されている顔であると判定し、負のＩＤが得られれば、登録されていない顔であると判定する。
【００４２】
判定の結果、登録されていない顔（負のＩＤ）であれば（Ｓ２０１でＮＯ）、人物が特定できないため、情報処理装置３０は、視線補正部１６において、（補正なし）視線の向き（θ１、θ２）を出力した後（Ｓ２０６）、この処理を終了する。
【００４３】
一方、既に登録されている顔（正のＩＤ）であれば（Ｓ２０１でＹＥＳ）、情報処理装置３０は、視線補正部１６において、視線補正が必要であるか否かを判定する。この処理では、例えば、図６（ａ）に示すような辞書データ（辞書）を用いる。辞書データには、顔ＩＤと、視線を補正する必要があるか否かを示す視線補正フラグと、視線補正に使用する視線補正向きと、Ｓ１０６における顔認証に使用する顔画像とが対応付けて登録されている。この場合、例えば、顔ＩＤ＝１は、視線補正が必要である旨示されており、また、例えば、顔ＩＤ＝２は、視線補正の必要がない旨示されている。なお、辞書データの作成方法については後述する。
【００４４】
［Ｓ２０３、Ｓ２０６］
ここで、視線補正が必要でない場合、つまり、視線補正フラグが０の場合には（Ｓ２０２でＮＯ）、情報処理装置３０は、視線補正部１６において、（補正なし）視線の向き（θ１、θ２）を出力した後（Ｓ２０６）、この処理を終了する。
【００４５】
一方、視線補正が必要である場合、つまり、視線補正フラグが１の場合には（Ｓ２０２でＹＥＳ）、情報処理装置３０は、Ｓ１０６の顔認証結果（顔ＩＤ）に基づいて、視線補正データ（ａ、ｂ）を辞書データ（図６（ａ）参照）から読み込む（Ｓ２０３）。
【００４６】
［Ｓ２０４、Ｓ２０５］
情報処理装置３０は、Ｓ１０７の処理で検出された視線の向き（θ１、θ２）と、視線補正データ（ａ、ｂ）とを使用して、以下の式に従って視線の向きを補正する（Ｓ２０４）。そして、当該補正後の視線の向き（θ１’、θ２’）を出力する（Ｓ２０５）。
【００４７】
θ１’＝θ１＋ａ
θ２’＝θ２＋ｂ
次に、図７を用いて、上述した図２のＳ１０９に示す視線補正データ登録処理の詳細な流れの一例について説明する。なお、本実施形態においては、視線補正データ登録モードなどを設け、このモードが選択された場合のみ視線補正データを登録する場合について説明する。但し、このモード以外の手段を使用して、視線補正データを登録する処理を実施するか否かを決めるようにしても良い。
【００４８】
［Ｓ３０１］
情報処理装置３０は、登録部１７において、まず、視線補正データ登録モードであるか否かを判定する。視線補正データ登録モードでなければ（Ｓ３０１でＮＯ）、情報処理装置３０は、そのままこの処理を終了する。
【００４９】
［Ｓ３０２］
視線補正データ登録モードであれば（Ｓ３０１でＹＥＳ）、情報処理装置３０は、登録部１７において、上述した図５のＳ２０１と同様の処理を行ない、既に辞書データに登録されている顔であるか否かを判定する。
【００５０】
［Ｓ３０３］
判定の結果、登録されていない顔であれば（Ｓ３０２でＮＯ）、情報処理装置３０は、登録部１７において、図２のＳ１０６の顔認証処理で使用するための顔画像を辞書データに登録する（Ｓ３０３）。ここでは、例えば、図６（ｂ）に示すように、顔画像５１に対して新規の顔ＩＤ＝３が割り当てられるとともに、顔画像５１が辞書データに登録される。
【００５１】
［Ｓ３０４］
情報処理装置３０は、登録部１７において、視線補正が必要な顔であるか否かを判定する。ここで、本実施形態においては、上述した通り、図１３（ａ）及び図１３（ｂ）に示す基準方向（対象物が存在する方向）への視線の向き（θ１、θ２）をそれぞれ０度として定義する。また、視線補正データ登録モードが選択された場合の顔画像の視線の向き（θ１、θ２）は、基準方向、すなわち、対象物の方向に向いているものとする。
【００５２】
このような条件下では、個人差が生じない顔の場合、Ｓ１０７の視線検出により出力される視線の向き（θ１、θ２）は、ほぼ０になる。これに対して、個人差が生じる顔の場合、Ｓ１０７の視線検出により出力される視線の向き（θ１、θ２）は、０でない値となり、Ｓ１０７の視線検出により出力される視線の向き（θ１、θ２）そのものが視線補正データ（ａ、ｂ）となる。
【００５３】
そのため、登録部１７においては、視線検出部１５から出力される視線の向き（θ１、θ２）がそれぞれ、θＴｈ１≦θ１≦θＴｈ２、θＴｈ３≦θ２≦θＴｈ４（θＴｈ１、θＴｈ２、θＴｈ３、θＴｈ４は閾値）の条件を満たす場合、視線補正が必要ないと判定する。それ以外の場合には、視線補正が必要であると判定する。
【００５４】
［Ｓ３０５、Ｓ３０６、Ｓ３０８］
ここで、視線補正が必要ないと判定した場合（Ｓ３０４でＮＯ）、情報処理装置３０は、登録部１７において、視線補正フラグに０を代入した後（Ｓ３０８）、この処理を終了する。一方、視線補正が必要と判定した場合（Ｓ３０４でＹＥＳ）、情報処理装置３０は、登録部１７においては、視線補正フラグに１を代入する（Ｓ３０５）。そして、Ｓ１０７の処理で出力される視線の向き（θ１、θ２）を視線補正データ（ａ、ｂ）として辞書データに登録した後（Ｓ３０６）、この処理を終了する。なお、視線補正データは、これ以外の種々の条件を満足した場合に辞書データに登録されても良く、その詳細な条件については、Ｓ３０９での更新登録処理で説明する。
【００５５】
［Ｓ３０７、Ｓ３０８、Ｓ３０９］
Ｓ３０２の処理で登録済みの顔であると判定された場合（Ｓ３０２でＹＥＳ）、情報処理装置３０は、登録部１７において、Ｓ１０７の処理で出力される視線の向き（θ１、θ２）を使用して視線補正が必要な顔であるか否かを判定する。この判定処理は、Ｓ３０４の処理と同様の手法で行なえば良い。なお、この場合、既に（以前に）視線補正データが登録されている。
【００５６】
判定の結果、視線補正が必要ないと判定した場合（Ｓ３０７でＮＯ）、情報処理装置３０は、登録部１７において、視線補正フラグに０を代入した後（Ｓ３０８）、この処理を終了する。
【００５７】
一方、視線補正が必要と判定した場合（Ｓ３０７でＹＥＳ）、情報処理装置３０は、登録部１７において、所定の条件を満たしているか否かを判定する。そして、所定の条件を満たしていれば、Ｓ１０７の処理で出力される視線の向き（θ１、θ２）を視線補正データ（ａ、ｂ）として辞書データに更新登録する（Ｓ３０９）。
【００５８】
ここで、視線補正データ（ａ、ｂ）を辞書データに登録（又は更新登録）するか否かの判定に用いられる所定の条件について、いくつか例を挙げて説明する。この所定の条件は、上述した通り、Ｓ３０６やＳ３０９の登録（又は更新登録）処理を行なうか否かの判定基準となる。
【００５９】
１．第１の登録方法
既に辞書データに登録されている視線補正データ（ａ、ｂ）と、視線の向き（θ１、θ２）とが異なる値の場合、Ｓ１０７の視線検出で出力される視線の向き（θ１、θ２）を視線補正データ（ａ、ｂ）として登録する。
【００６０】
２．第２の登録方法
第２の登録方法は、第１の登録方法と同様に、既に辞書データに登録されている視線補正データ（ａ、ｂ）と、視線の向き（θ１、θ２）とが異なる値の場合の登録方法である。ここで、第２の登録方法においては、Ｓ１０７の視線検出で出力される視線の向き（θ１、θ２）と、当該既に辞書データに登録されている視線補正データ（ａ、ｂ）の重み付き平均値とを視線補正データ（ａ、ｂ）として登録する。
【００６１】
３．第３の登録方法
図８（ａ）に示すように、辞書データに登録される情報として、登録時の顔の向き（α１’、α２’）を追加する。そして、顔の向き（α１’、α２’）が所定の条件を満たしている場合に、視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として登録する。例えば、Ｓ１０３の処理で選択された顔の向き（α１、α２）が、既に辞書データに登録されている顔の向き（α１’、α２’）よりも基準方向に近い場合、当該顔の視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として登録する。
【００６２】
４．第４の登録方法
図８（ａ）に示すように、辞書データに登録される情報として、顔の大きさＬ’（図３参照）を追加する。そして、顔の大きさＬ’が所定の条件を満たしている場合には、視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として登録する。例えば、顔の大きさＬ（図３参照）が、３０［ｐｉｘｃｅｌ］以上の場合、視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として辞書データに登録する。また、Ｓ１０３の処理で選択された顔の顔幅Ｌが、既に辞書データに登録されている顔幅Ｌ’よりも大きい場合、視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として登録する。
【００６３】
５．第５の登録方法
図８（ｂ）に示すように、辞書データにおいては、顔の向き（α１、α２）の範囲で複数にグルーピングし、各グループ毎に視線補正データ（ａ、ｂ）を保持するようにしても良い。例えば、顔の向きα１が（−１０≦α１≦１０）の範囲では視線補正データａ１を使用し、顔の向きα１が（α１≧１０）の範囲では視線補正データａ２を使用し、顔の向きα１が（α１≦−１０）の範囲では視線補正データａ３を使用する。
【００６４】
６．第６の登録方法
第６の登録方法では、Ｓ１０６の顔認証結果に基づいて、同一人物の視線の向き（θ１、θ２）の過去の履歴を参照する。そして、図８（ｃ）に示すように、視線の向きが一定の値となる定常（安定）状態時における視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として辞書データに登録する。なお、視線の向きに限らず、表情、顔の大きさ、顔の向きが定常（安定）状態時に視線の向き（θ１、θ２）を新たな視線補正データ（ａ、ｂ）として辞書データに登録するようにしても良い。
【００６５】
７．第７の登録方法
上述した第１の登録方法から第６の登録方法の少なくともいずれかを組み合わせることにより得られた条件を満たした場合に辞書データを登録又は更新登録するようにしても良い。
【００６６】
以上説明したように本実施形態によれば、個人毎に記憶した視線補正データ（ａ、ｂ）を用いて、Ｓ１０７の視線検出結果として得られる視線の向き（θ１、θ２）の個人差に起因したずれ（ずれ量）を補正する。
【００６７】
これにより、視線の向きの検出に際して、顔器官の大きさやそれら顔器官の相対位置関係、及び利き目によって生じる視線の向き（θ１、θ２）のずれに起因した問題を解消できる。そのため、個人差の影響を受けずに、視線の向き（θ１、θ２）を高精度に検出できる。
【００６８】
（実施形態２）
次に、実施形態２について説明する。実施形態２においては、実施形態１で説明した情報処理装置３０をデジタルカメラなどの撮像装置に適用し、当該適用した機能を用いて自動シャッター機能を実現する場合について説明する。
【００６９】
実施形態２においては、図１３（ａ）及び図１３（ｂ）に示す基準方向をカメラ方向として定義し、被写体の視線方向がカメラ方向であるか否かを判定する。以下の説明では、被写体の視線方向がカメラを向いていることをカメラ視線と呼び、カメラ視線を検出することをカメラ視線検出と呼ぶ。
【００７０】
図９は、実施形態２に係わる撮像装置６０における機能的な構成の一例を示す図である。
【００７１】
撮像装置６０は、その機能的な構成として、画像取得部１０と、顔検出部１１と、正規化画像生成部１２と、顔器官検出部１３と、顔認証部１４と、カメラ視線判定部１８と、登録部１７と、撮像制御部１９とを具備して構成される。
【００７２】
ここで、カメラ視線判定部１８は、処理対象となる顔（より具体的には、視線の向き）がカメラ方向を向いているか否かの判定を行なう。撮像制御部１９は、カメラ視線判定部１８の判定結果に基づいて撮像の実行を制御する。撮像制御部１９においては、例えば、画像内で検出された人物の顔の視線が全てカメラ視線である場合に、撮像を実施する。なお、カメラ視線判定部１８及び撮像制御部１９以外の構成は、実施形態１で説明した図１における構成とそれぞれ同様の機能を果たすため、その説明については省略する。
【００７３】
次に、図１０を用いて、実施形態２に係わる撮像装置６０における処理の流れの一例について説明する。
【００７４】
［Ｓ４００］
この処理では、まず、ユーザ等によりモードの選択が行なわれる。具体的には、後述するＳ４１１の処理でカメラ視線辞書を登録するカメラ視線辞書登録モードと、所定の撮像条件を満足した場合に自動撮像を行なう自動撮像モードとの２つがある。ここでは、自動撮像モードが選択されたものとする。なお、自動撮像モードでは、人物の視線がカメラ方向を向いた場合に自動的に撮像が行なわれる。
【００７５】
［Ｓ４０１、Ｓ４０２］
Ｓ４００の処理で選択されたモード（自動撮像モード）では、シャッターボタンが押下された場合に実行される。そのため、撮像装置６０は、シャッターボタンが押下されたか否かを判定する。シャッターボタンが押下された場合（Ｓ４０１でＹＥＳ）、撮像装置６０は、画像取得部１０において、レンズなどの光学系、ＣＭＯＳやＣＣＤなどの撮像素子、ＡＤ変換器などを介して画像を取得する（Ｓ４０２）。
【００７６】
［Ｓ４０３］
撮像装置６０は、顔検出部１１において、Ｓ４０２の処理で取得した画像に対して顔検出処理を行なう。そして、顔が検出されたか否かを判定し、顔が検出されていない場合には（Ｓ４０４でＮＯ）、再度、Ｓ４０２の処理に戻る。
【００７７】
［Ｓ４０４〜Ｓ４０９］
Ｓ４０３の処理の結果、顔が検出された場合（Ｓ４０４でＹＥＳ）、撮像装置６０は、ＡＥ、ＡＦを行なう（Ｓ４０５）。その後、実施形態１と同様に、顔選択〜顔認証等の処理を実施する（Ｓ４０６〜Ｓ４０９）。すなわち、１又は複数検出された顔のうち、１つを選択し、当該顔に対して画像正規化処理を実施し、正規化された画像に対して顔器官検出を行なう。その後、顔認証を行なう。
【００７８】
［Ｓ４１０］
撮像装置６０は、カメラ視線判定部１８において、カメラ視線検出処理を行なう（Ｓ４１０）。この処理の詳細については後述するが、簡単に説明すると、Ｓ４０６の処理で選択された顔の視線が、カメラ方向を向いているか否かの判定を行なう。
【００７９】
［Ｓ４１１、Ｓ４１２］
撮像装置６０は、Ｓ４００の処理でカメラ視線辞書登録モードが選択されていれば（Ｓ４１１でＹＥＳ）、登録部１７において、カメラ視線辞書の登録を行なう（Ｓ４１２）。実施形態２においては、詳細については後述するが、Ｓ４０９の顔認証結果（顔ＩＤ）に基づいて、人物毎に顔の向き（α１、α２）に関する辞書画像と目の向き（β１、β２）に関する辞書画像とを登録する。なお、１人の人物の顔について複数のカメラ視線辞書データを登録しても良い。
【００８０】
［Ｓ４１３］
撮像装置６０は、Ｓ４０３の処理で検出された顔の中で、未だ上述したＳ４０６〜Ｓ４１２の処理が実施されていない顔があれば（Ｓ４１３でＹＥＳ）、再度、Ｓ４０６の処理に戻る。Ｓ４０３の処理で検出された顔全てについて上述した処理を実施していれば（Ｓ４１３でＮＯ）、撮像装置６０は、Ｓ４１４の処理に進む。
【００８１】
［Ｓ４１４］
撮像装置６０は、撮像制御部１９において、所定の撮像条件を満たすか否かを判定する。この判定処理では、例えば、Ｓ４０３の処理で検出された全ての顔がカメラ視線であるか否かを判定する。なお、撮像条件については、Ｓ４００におけるモード選択時に設定・変更可能である。
【００８２】
判定の結果、所定の撮像条件を満たすと判定された場合（Ｓ４１４でＹＥＳ）、撮像装置６０は、撮像制御部１９において、撮像部（不図示）を制御して撮像を行なう（Ｓ４１５）。この撮像は、例えば、Ｓ４０３の処理で検出された全ての顔がカメラ視線である場合に実施される。なお、撮像を実施する前に、再度、ＡＥ・ＡＦを実施するようにしても良い。
【００８３】
一方、Ｓ４１４の処理で所定の撮像条件を満たさないと判定した場合（Ｓ４１４でＮＯ）、撮像装置６０は、再度、Ｓ４０２の処理に戻り、次の画像を取得する。
【００８４】
次に、図１１を用いて、上述した図１０のＳ４１０に示すカメラ視線検出処理の詳細な流れの一例について説明する。
【００８５】
［Ｓ５０１］
撮像装置６０は、カメラ視線判定部１８において、Ｓ４０９の顔認証結果（顔ＩＤ）に基づいて、Ｓ４０６の処理で選択された顔が、既に登録されているか否かの判定を行なう。判定の結果、登録されていない顔であれば（Ｓ５０１でＮＯ）、撮像装置６０は、この処理を終了する。
【００８６】
［Ｓ５０２］
一方、登録済みの顔であれば（Ｓ５０１でＹＥＳ）、撮像装置６０は、カメラ視線判定部１８において、Ｓ４０９の顔認証結果（顔ＩＤ）に対応したカメラ視線辞書データの読み出しを行なう（Ｓ５０２）。なお、実施形態２においては、人物の視線がカメラ方向を向いた場合に自動撮像（自動撮像モード）を行なうため、辞書データに登録されている画像は、人物の視線がカメラ方向を向いた画像となる。
【００８７】
図１２は、ある人物の視線がカメラ方向を向いた場合のカメラ視線辞書画像の例を示している。カメラ視線辞書画像は、顔の向き（α１、α２）に関する辞書画像６１と、目の向き（β１、β２）に関する辞書画像６２との２つの辞書画像から構成される。顔の向き（α１、α２）に関する辞書画像６１は、Ｓ４０７の処理で生成された正規化画像である。目の向き（β１、β２）に関する辞書画像６２は、Ｓ４０８の処理の器官検出結果に基づいて正規化画像から切り出された目領域の画像である。実施形態２においては、このように各人物（個人ＩＤ）に対応して、カメラ視線辞書画像を設ける。
【００８８】
［Ｓ５０３］
撮像装置６０は、カメラ視線判定部１８において、Ｓ４０６の処理で選択された顔画像と、Ｓ５０２の処理で読み出された顔の向きに関する辞書画像との各画素値の差を加算する。これにより、画像の差分を求め、当該差分の逆数を相関値Ｓ１として算出する（Ｓ５０３）。そのため、相関値Ｓ１が大きいほど、相関性が高いことを示している。
【００８９】
［Ｓ５０４］
撮像装置６０は、カメラ視線判定部１８において、Ｓ４０６の処理で選択された顔画像と、Ｓ５０２の処理で読み出された目の向きに関する辞書画像との各画素値の差を加算する。これにより、画像の差分を求め、当該差分の逆数を相関値Ｓ２として算出する（Ｓ５０４）。
【００９０】
なお、実施形態２においては、カメラ視線辞書データに輝度画像を用いているが、エッジ検出によるエッジ画像などを使用しても良いし、また、非特許文献５や非特許文献６のようなヒストグラムベースの特徴抽出し、それを使用するようにしても良い。また更に、辞書の数も各人物に対して、複数枚登録するように構成しても良い。その他、相関値を算出する方法についても、上記説明に限られず、カメラ視線とそうでない画像とを使用して、予め学習された非特許文献７のような識別器（Support Vector Machine）を使用しても良い。
【００９１】
［Ｓ５０５］
撮像装置６０は、カメラ視線判定部１８において、Ｓ５０３の処理で算出された相関値Ｓ１とＳ５０４の処理で算出された相関値Ｓ２とが所定の条件を満たすか否かを判定する。具体的には、相関値Ｓ１が閾値Ｓ１ｔｈ以上であり、且つ、相関値Ｓ２が閾値Ｓ２ｔｈ以上であるか否かを判定する（Ｓ５０５）。
【００９２】
［Ｓ５０６］
判定の結果、相関値Ｓ１が閾値Ｓ１ｔｈ以上であり、且つ、相関値Ｓ２が閾値Ｓ２ｔｈ以上であれば（Ｓ５０５でＹＥＳ）、撮像装置６０は、カメラ視線判定部１８において、人物の視線がカメラ視線であると判定する（Ｓ５０６）。一方、そうでなければ（Ｓ５０５でＮＯ）、撮像装置６０は、カメラ視線判定部１８において、人物の視線がカメラ視線でないと判定する（Ｓ５０７）。その後、撮像装置６０は、この処理を終了する。
【００９３】
以上説明したように実施形態２によれば、各個人に対応して視線がカメラ方向を向いた状態の画像が登録されているカメラ視線辞書データを保持する。そして、処理対象となる人物の顔と、当該カメラ視線辞書データに登録された画像（顔）との比較により、当該処理対象となる人物がカメラ視線であるか否かを判定し、その判定結果に基づいて撮像を行なう。これにより、個人差によらない高精度なカメラ視線の判定が可能となり、より良いタイミングで撮像を行なえる。
【００９４】
このように実施形態１で説明した視線検出技術は、実施形態２で説明したようなデジタルカメラの自動シャッターに応用することができる。また、これ以外にも、例えば、自動車におけるよそ見検知や、画像検索など様々な形態に応用することができる。
【００９５】
なお、実施形態２においても、視線に関する情報として、視線の方向ではなく、実施形態１で説明した所定視線方向の尤度を検出するようにしても良い。この場合、基準方向とカメラ方向とが一致した場合の尤度を算出するようにし、当該尤度が所定の閾値以上となる場合に撮像を行なえば良い。なお、実施形態２における相関値は、所定視線方向の尤度に相当する。
【００９６】
以上が本発明の代表的な実施形態の一例であるが、本発明は、上記及び図面に示す実施形態に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【００９７】
例えば、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施態様を採ることもできる。具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００９８】
（その他の実施形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005755012.tif 000002
【図２】
0005755012.tif 000003
【図３】
0005755012.tif 000004
【図４】
0005755012.tif 000005
【図５】
0005755012.tif 000006
【図６】
0005755012.tif 000007
【図７】
0005755012.tif 000008
【図８】
0005755012.tif 000009
【図９】
0005755012.tif 000010
【図１０】
0005755012.tif 000011
【図１１】
0005755012.tif 000012
【図１２】
0005755012.tif 000013
【図１３】
0005755012.tif 000014
【図１４】
0005755012.tif 000015