説明

情報処理装置、その処理方法、プログラム及び撮像装置

【課題】
個人差の影響を受けずに、視線の向き(θ1、θ2)を高精度に検出できるようにした技術を提供する。
【解決手段】
情報処理装置は、画像から人物の顔を検出する顔検出手段と、各人物に対応して顔に関する情報と視線補正データとを保持する辞書データを予め記憶する記憶手段と、前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段と、前記顔検出手段により検出された顔から視線に関する情報を検出する視線検出手段と、前記顔認証手段により認証された顔に対応した前記辞書データ内の視線補正データを用いて、前記視線検出手段により検出された前記視線に関する情報を補正する視線補正手段とを具備する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、その処理方法、プログラム及び撮像装置に関する。
【背景技術】
【0002】
人物の視線を検出する技術が知られている。特許文献1に記載された技術では、エッジなどから顔の輪郭や目など複数の部位を検出し、その位置関係に基づいて顔の向きを検出する。更に、瞳の位置を検出することによって車両に設置されたカメラを基準とした運転者の視線を検出する。また、特許文献2に記載された技術では、エネルギーモデルを使用して目領域を検出し、この目領域と予め設けられた画像辞書とを比較することで、視線を検出している。
【0003】
ここで、特許文献3には、利き目という個人差の影響に対応した視線を検出する技術が記載されている。特許文献3に記載された技術では、運転者の顔の向きが正面を向いていることを前提として、左右いずれの目が利き目であるかを示す予め登録された情報に基づいて運転者の視線を検出している。この他、特許文献4には、これらの視線を検出する技術を利用した撮像装置に関する技術が記載されている。特許文献4に記載された技術では、被写体の視線がカメラ方向を向いた場合に撮像を行なう。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−210239号公報
【特許文献2】特開平09−081732号公報
【特許文献3】特開2006−293909号公報
【特許文献4】特開2001−051338号公報
【特許文献5】特開2004−118731号公報
【特許文献6】特開2007−265367号公報
【非特許文献】
【0005】
【非特許文献1】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
【非特許文献2】御手洗祐輔, 森克彦, 真継優和, “選択的モジュール起動を用いたConvolutionalNeuralNetworksによる変動にロバストな 顔検出システム", FIT (情報科学技術フォーラム), Ll-013, 2003
【非特許文献3】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
【非特許文献4】M. Turk and A. P. Pentland, “Face Recognition Using Eigenfaces", IEEE Conf. CVPR, 1991
【非特許文献5】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
【非特許文献6】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
【非特許文献7】V. Vapnik. “Statistical Learning Theory", John Wiley & Sons, 1998
【発明の概要】
【発明が解決しようとする課題】
【0006】
所定の方向を基準とした被写体の視線の方向(向き)は、図13(a)に示すように、視線方向(θ1、θ2)として表すことができる。また、被写体の視線の向き(θ1、θ2)は、図13(b)に示すように、顔の向き(α1、α2)と目の向き(β1、β2)とによっても表わすことができる。被写体の視線の向き(θ1、θ2)を検出するのに必要となる顔の向き(α1、α2)や目の向き(β1、β2)は、個人差の影響によりずれが生じる可能性がある。
【0007】
ここで、このような個人差について例を挙げると、1つ目の個人差としては、図14(a)に示すように、顔の骨格、目(瞳)や口など顔器官の大きさや、これら顔器官の相対位置関係の違いが挙げられる。顔の向き(α1、α2)や目の向き(β1、β2)は、目(瞳)や口など顔器官の平均的な相対位置関係、若しくは、モデルとなる平均的な辞書データを利用して検出する場合が多い。そのため、視線検出対象となる顔が顔器官の平均的な相対位置関係や平均的な辞書データから外れてしまうと、顔の向き(α1、α2)や目の向き(β1、β2)にずれが生じてしまう可能性がある。
【0008】
2つ目の個人差としては、利き目が挙げられる。人間は、片方の目から得られる視界を主の視界情報として使用していると言われており、この主の視界情報が得られる目を利き目と呼んでいる。そのため、人物が所定の対象物を見ている場合、利き目となる目は所定の対象物の方向を向いているが、一方の目は所定の対象物の方向とは少しずれた方向を向いていると言われている。例えば、図14(b)に示す2人の人物は、正面方向を見ているにも関わらず、図14(b)に示す左側の人物では、その右瞳は目領域の中央に存在しているが、その左瞳は目領域の中央から左側に存在している。これと同様に、図14(b)に示す右側の人物では、その左瞳は目領域の中央に存在しているが、その右瞳は目領域の中央から右側に存在している。更には、利き目が左右で入れ替わる交利目の人物も存在する。このような利き目の個人差により、目の向き(β1、β2)にずれが生じる。
【0009】
このような視線検出技術を各種装置に適用した場合、上述した個人差の影響を起因として、種々の問題が生じる場合がある。例えば、視線の向きがカメラ方向を向いた場合に自動的に撮像する撮像装置に適用した場合、被写体がカメラ方向を向いているにも関わらず、撮像されないなどの問題が生じる可能性がある。また、例えば、よそ見を検知して警報を発する車載装置に適用した場合、被写体が正面を向いているにも関わらず、よそ見をしていると誤検知し、継続的に警報が発せられる可能性がある。
【0010】
本発明は、上記課題に鑑みてなされたものであり、個人差の影響を受けずに、視線の向きを高精度に検出できるようにした技術を提供することを目的とする。
【課題を解決するための手段】
【0011】
上記課題を解決するため、本発明の一態様による情報処理装置は、画像から人物の顔を検出する顔検出手段と、各人物に対応して顔に関する情報と視線補正データとを保持する辞書データを予め記憶する記憶手段と、前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段と、前記顔検出手段により検出された顔から視線に関する情報を検出する視線検出手段と、前記顔認証手段により認証された顔に対応した前記辞書データ内の視線補正データを用いて、前記視線検出手段により検出された前記視線に関する情報を補正する視線補正手段とを具備する。
【発明の効果】
【0012】
本発明によれば、様々な要因によって生じる視線の向きのずれを解消するため、視線の向きを高精度に検出できる。
【図面の簡単な説明】
【0013】
【図1】本発明の一実施の形態に係わる情報処理装置10の機能的な構成の一例を示す図。
【図2】図1に示す情報処理装置30の処理の流れの一例を示すフローチャート。
【図3】視線検出処理の一例を説明するための図。
【図4】視線検出処理の一例を説明するための図。
【図5】図2のS108に示す視線補正処理の流れの一例を示すフローチャート。
【図6】辞書データの一例を示す図。
【図7】図2のS109に示す視線補正データ登録処理の流れの一例を示すフローチャート。
【図8】図7に示すS306及びS309の処理の条件の一例を説明するための図。
【図9】実施形態2に係わる撮像装置60の機能的な構成の一例を示す図。
【図10】実施形態2に係わる撮像装置60の処理の流れの一例を示すフローチャート。
【図11】図10のS410に示すカメラ視線検出処理の流れの一例を示すフローチャート。
【図12】実施形態2に係わるカメラ視線辞書データの一例を示す図。
【図13】従来技術を説明するための図。
【図14】従来技術を説明するための図。
【発明を実施するための形態】
【0014】
以下、本発明に係わる実施の形態について添付図面を参照して詳細に説明する。
【0015】
(実施形態1)
図1は、本発明の一実施の形態に係わる情報処理装置30における機能的な構成の一例を示す図である。
【0016】
情報処理装置30は、その機能的な構成として、画像取得部10と、顔検出部11と、正規化画像生成部12と、顔器官検出部13と、顔認証部14と、視線検出部15と、視線補正部16と、登録部17とを具備して構成される。
【0017】
画像取得部10は、画像を取得する。画像は、例えば、コンパクトデジタルカメラ、デジタル一眼レフカメラなどの撮像装置、若しくはハードディスクドライブやフラッシュメモリなどの不揮発性のメモリ媒体からインターフェイスを介して取得する。
【0018】
顔検出部11は、画像取得部10により取得された画像から人物の顔を検出する。正規化画像生成部12は、顔検出部11により検出された顔領域の切り出しを行なうとともに、顔の大きさが所定サイズ及び顔の向きが正立するようにアフィン変換を行なう。
【0019】
顔器官検出部13は、顔検出部11により検出された顔から、例えば、目尻、目頭、瞼、上唇などの複数の顔の器官(顔器官)を検出する。顔認証部14は、予め作成された辞書データ(辞書)を用いて、顔検出部11により検出された顔の認証を行なう。なお、辞書データは、例えば、記憶手段(不図示)に予め記憶されている。
【0020】
視線検出部15は、顔検出部11により検出された顔から、視線の向き(θ1、θ2)等の検出を行なう。視線補正部16は、視線検出部15により検出された視線の向きを補正する。登録部17は、視線補正部16により補正された視線の向きを登録するか否かを判定し、その判定結果に基づいて視線の向きを辞書データに登録する。
【0021】
以上が、情報処理装置30の構成の一例についての説明である。なお、情報処理装置30には、コンピュータが内蔵されている。コンピュータには、CPU等の主制御手段、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等の記憶手段が具備される。また、コンピュータにはその他、ボタンやディスプレイ又はタッチパネル等の入出力手段、ネットワークカード等の通信手段等も具備されていても良い。なお、これら各構成部は、バス等により接続され、主制御手段が記憶手段に記憶されたプログラムを実行することで制御される。
【0022】
次に、図2を用いて、図1に示す情報処理装置30における処理の流れの一例について説明する。
【0023】
[S100、S101]
情報処理装置30は、画像取得部10において、画像を取得する(S100)。そして、顔検出部11において、S100の処理で取得した画像に対して顔検出処理を行なう(S101)。顔検出においては、図3に示すように、顔の中心位置43に加えて、目の中心位置41及び42、口の中心位置44も検出される。
【0024】
[S102、S103]
ここで、情報処理装置30は、顔が検出されたか否かの判定を行なう。判定の結果、顔が検出されていなければ(S102でNO)、情報処理装置30は、この処理を終了する。顔が検出されていれば(S102でYES)、情報処理装置30は、顔検出部11において、S102の処理で検出された1又は複数の顔の内、1つの顔を選択する(S103)。顔を検出する技術は、ブースティングをベースとした非特許文献1や、ニューラルネットワークをベースとした非特許文献2などの技術を用いれば良い。顔検出の手法は、これに限られず、人物の顔を検出できるのであれば、その手法は特に問わない。なお、これらの顔検出の手法においては、基本的には、顔を構成する目や口などの部位を検出し、その位置関係から顔の存在有無を判定している。そのため、顔検出処理においては、図3に示すように、顔の中心位置43に加えて、目の中心位置41及び42、口の中心位置44も検出される。
【0025】
[S104]
情報処理装置30は、正規化画像生成部12において、図3に示す顔の中心位置43、目の中心位置41及び42等を用いて、顔領域の切り出しを行なうとともに、顔の大きさが所定サイズ及び顔の向きが正立するようにアフィン変換を行なう(S104)。例えば、図3に示すように、左目の中心位置41と右目の中心位置42との間の距離Lを顔の大きさ、左目の中心位置41と右目の中心位置42との2点から算出される傾きを顔の向きとして定義する。そして、左目の中心位置41と右目の中心位置42との間のL’と、実際の左目の中心位置41と右目の中心位置42との2点から算出される線分との傾きが0度となるように、アフィン変換を行なう。
【0026】
[S105]
情報処理装置30は、顔器官検出部13において、S101の処理で検出された顔の中心位置43、目の中心位置41及び42、口の中心位置44に加え、図4(a)に示すような更に細かな特徴点(目尻、目頭、瞼、上唇など)を検出する(S105)。目尻、目頭、瞼、上唇など更に細かな特徴点(すなわち、顔器官)の検出には、例えば、モデルベースの非特許文献3など種々の技術を用いれば良い。
【0027】
[S106]
情報処理装置30は、顔認証部14において、S101の処理で検出された顔の中心位置43、目の中心位置41及び42、口の中心位置44、S105の処理で検出された更に細かな特徴点(目尻、目頭、瞼、上唇など)を用いて顔認証を行なう(S106)。顔認証技術としては、非特許文献4のように固有顔と呼ばれる顔全体領域を使用する方法や、特許文献5のように複数のサンプル点における局所的な特徴を比較する方法などがある。
【0028】
ここで、顔認証処理を行なうには、個人を特定するために必要な辞書データ(辞書)を予め登録しておく必要がある。本実施形態においては、辞書データとして、顔画像そのものを含むデータを用いる場合について説明する。勿論、辞書データ(顔に関する情報)は、これに限られず、例えば、フィルタなど何らかの処理によって抽出された特徴量を含むデータで構成されていても良い。顔認証で使用する辞書データについての説明は後述するが、辞書データ内には、顔画像とともに、視線の向きを補正するデータが含まれる(図6(a)参照)。
【0029】
本実施形態においては、顔認証の結果として、図4(b)に示すように、登録した顔に対応した独自の顔IDが顔認証部14から出力される。例えば、登録されている顔であれば、正のIDが出力され、登録されていない顔であれば、負のIDが出力される。この顔IDも、視線の向きを補正するデータとともに辞書データ内に含まれる(図6(a)参照)。
【0030】
[S107]
情報処理装置30は、視線検出部15において、S101の処理で検出された顔の中心位置43、目の中心位置41及び42、口の中心位置44、S105の処理で検出された更に細かな特徴点(目尻、目頭、瞼、上唇など)を視線データとして抽出する。そして、この視線データを用いて、視線の向き(θ1、θ2)の他、顔の向き(α1、α2)や目の向き(β1、β2)を検出する(S107)。
【0031】
視線検出技術としては、例えば、特許文献6に示されるように、S105の処理で検出された更に細かな特徴点(目尻、目頭、瞼、上唇など)の相対的な位置関係を使用すれば良い。また、例えば、特許文献2に示されるように、S105の処理で検出された更に細かな特徴点(目尻、目頭、瞼、上唇など)を基準として複数の領域を設定し、予め作成された辞書画像と比較することで視線の向き(θ1、θ2)を検出するようにしても良い。なお、特許文献6においては、視線データとして位置や距離情報が得られ、特許文献2においては、視線データとして輝度やフィルタ処理によって抽出された特徴量が得られる。
【0032】
ここで、本実施形態においては、特許文献6に示されるように、S105の処理で検出された更に細かな特徴点(目尻、目頭、瞼、上唇など)の位置関係を視線データとして取得し、当該視線データを用いて視線の向き(θ1、θ2)等を検出する。勿論、視線の向き(θ1、θ2)等の検出は、このような手法に限られず、他の手法を用いても良い。
【0033】
なお、図13(a)及び図13(b)で説明した基準方向は、カメラなどの撮像装置やマーカーなど、様々な対象物に設定することができる。本実施形態においては、基準方向の視線の向きをθ1=θ2=0として定義する。つまり、θ1=θ2=0の場合に、被写体の視線が対象物を向いているものとする。
【0034】
また、基準方向から所定の対象物に対する視線の向き(すなわち、視線方向を表す角度)を検出するのではなく、視線に関する情報としてそれ以外の情報を検出するようにしても良い。例えば、所定の方向にある対象物に対して視線が向いている度合い(すなわち、視線方向が所定の方向と一致していることを示す尤度)として、所定視線方向の尤度を検出するようにしても良い。
【0035】
このようにして、S101における顔検出処理、S104における正規化画像生成処理、S105における顔器官検出処理、S106における顔認証処理、S107における視線検出処理が順次行なわれる。なお、顔検出処理、正規化画像生成処理、顔器官検出処理、顔認証処理、及び視線検出処理は、上述した技術や手法を必ずしも用いる必要はなく、他の技術を用いてそれぞれ実施するようにしても良い。
【0036】
ここで、S107に示す視線検出処理、すなわち、顔の向き(α1、α2)及び目の向き(β1、β2)を算出する処理は、大量の顔画像から平均的な特徴点(目尻、目頭、瞼、上唇など)の相対位置関係が予め求められており、この情報を用いて行なう。より具体的には、この平均的な相対位置関係と、S105の処理で検出された顔器官の相対位置関係とを用いて顔の向き及び目の向きを算出する。そのため、この処理で算出される顔の向き(α1、α2)及び目の向き(β1、β2)は、個人によってずれ(ずれ量)が生じる可能性がある。
【0037】
そこで、本実施形態においては、視線補正処理を実施することによりこのずれ量を補正する。これにより、個人差によらず、顔の向き(α1、α2)及び目の向き(β1、β2)をより高精度に算出する。
【0038】
[S108]
情報処理装置30は、視線補正部16において、視線補正処理を行なう(S108)。この処理の詳細については後述するが、簡単に説明すると、S106の顔認証結果に基づいてS107の処理で検出された視線の向きを補正する。この処理の結果、補正が必要であれば、視線補正部16は、補正後の視線の向き(θ1’、θ2’)を出力し、補正が必要なければ、視線補正部16は、(そのままの)視線の向き(θ1、θ2)を出力する。
【0039】
[S109、S110]
その後、情報処理装置30は、登録部17において、視線の向きを補正する視線補正データ(S108の処理で算出)を辞書データに登録するか否かを判定し、その判定結果に基づいて視線補正データの登録を行なう(S109)。なお、この処理の詳細については後述する。その後、S101の処理で検出された顔の中で、未だ上述したS103〜S109の処理が実施されていない顔があれば(S110でYES)、情報処理装置30は、再度、S103の処理に戻る。S101の処理で検出された顔全てについて上述した処理を実施していれば(S110でNO)、情報処理装置30は、この処理を終了する。
【0040】
次に、図5を用いて、上述した図2のS108に示す視線補正処理の詳細な流れの一例について説明する。
【0041】
[S201、S202、S206]
この処理が開始すると、情報処理装置30は、視線補正部16において、まず、S106の顔認証結果(顔ID)に基づいて、処理対象となる顔が既に辞書データに登録されているか否かを判定する。つまり、S106における顔認証結果において、正のIDが得られれば、既に登録されている顔であると判定し、負のIDが得られれば、登録されていない顔であると判定する。
【0042】
判定の結果、登録されていない顔(負のID)であれば(S201でNO)、人物が特定できないため、情報処理装置30は、視線補正部16において、(補正なし)視線の向き(θ1、θ2)を出力した後(S206)、この処理を終了する。
【0043】
一方、既に登録されている顔(正のID)であれば(S201でYES)、情報処理装置30は、視線補正部16において、視線補正が必要であるか否かを判定する。この処理では、例えば、図6(a)に示すような辞書データ(辞書)を用いる。辞書データには、顔IDと、視線を補正する必要があるか否かを示す視線補正フラグと、視線補正に使用する視線補正向きと、S106における顔認証に使用する顔画像とが対応付けて登録されている。この場合、例えば、顔ID=1は、視線補正が必要である旨示されており、また、例えば、顔ID=2は、視線補正の必要がない旨示されている。なお、辞書データの作成方法については後述する。
【0044】
[S203、S206]
ここで、視線補正が必要でない場合、つまり、視線補正フラグが0の場合には(S202でNO)、情報処理装置30は、視線補正部16において、(補正なし)視線の向き(θ1、θ2)を出力した後(S206)、この処理を終了する。
【0045】
一方、視線補正が必要である場合、つまり、視線補正フラグが1の場合には(S202でYES)、情報処理装置30は、S106の顔認証結果(顔ID)に基づいて、視線補正データ(a、b)を辞書データ(図6(a)参照)から読み込む(S203)。
【0046】
[S204、S205]
情報処理装置30は、S107の処理で検出された視線の向き(θ1、θ2)と、視線補正データ(a、b)とを使用して、以下の式に従って視線の向きを補正する(S204)。そして、当該補正後の視線の向き(θ1’、θ2’)を出力する(S205)。
【0047】
θ1’=θ1+a
θ2’=θ2+b
次に、図7を用いて、上述した図2のS109に示す視線補正データ登録処理の詳細な流れの一例について説明する。なお、本実施形態においては、視線補正データ登録モードなどを設け、このモードが選択された場合のみ視線補正データを登録する場合について説明する。但し、このモード以外の手段を使用して、視線補正データを登録する処理を実施するか否かを決めるようにしても良い。
【0048】
[S301]
情報処理装置30は、登録部17において、まず、視線補正データ登録モードであるか否かを判定する。視線補正データ登録モードでなければ(S301でNO)、情報処理装置30は、そのままこの処理を終了する。
【0049】
[S302]
視線補正データ登録モードであれば(S301でYES)、情報処理装置30は、登録部17において、上述した図5のS201と同様の処理を行ない、既に辞書データに登録されている顔であるか否かを判定する。
【0050】
[S303]
判定の結果、登録されていない顔であれば(S302でNO)、情報処理装置30は、登録部17において、図2のS106の顔認証処理で使用するための顔画像を辞書データに登録する(S303)。ここでは、例えば、図6(b)に示すように、顔画像51に対して新規の顔ID=3が割り当てられるとともに、顔画像51が辞書データに登録される。
【0051】
[S304]
情報処理装置30は、登録部17において、視線補正が必要な顔であるか否かを判定する。ここで、本実施形態においては、上述した通り、図13(a)及び図13(b)に示す基準方向(対象物が存在する方向)への視線の向き(θ1、θ2)をそれぞれ0度として定義する。また、視線補正データ登録モードが選択された場合の顔画像の視線の向き(θ1、θ2)は、基準方向、すなわち、対象物の方向に向いているものとする。
【0052】
このような条件下では、個人差が生じない顔の場合、S107の視線検出により出力される視線の向き(θ1、θ2)は、ほぼ0になる。これに対して、個人差が生じる顔の場合、S107の視線検出により出力される視線の向き(θ1、θ2)は、0でない値となり、S107の視線検出により出力される視線の向き(θ1、θ2)そのものが視線補正データ(a、b)となる。
【0053】
そのため、登録部17においては、視線検出部15から出力される視線の向き(θ1、θ2)がそれぞれ、θTh1≦θ1≦θTh2、θTh3≦θ2≦θTh4(θTh1、θTh2、θTh3、θTh4は閾値)の条件を満たす場合、視線補正が必要ないと判定する。それ以外の場合には、視線補正が必要であると判定する。
【0054】
[S305、S306、S308]
ここで、視線補正が必要ないと判定した場合(S304でNO)、情報処理装置30は、登録部17において、視線補正フラグに0を代入した後(S308)、この処理を終了する。一方、視線補正が必要と判定した場合(S304でYES)、情報処理装置30は、登録部17においては、視線補正フラグに1を代入する(S305)。そして、S107の処理で出力される視線の向き(θ1、θ2)を視線補正データ(a、b)として辞書データに登録した後(S306)、この処理を終了する。なお、視線補正データは、これ以外の種々の条件を満足した場合に辞書データに登録されても良く、その詳細な条件については、S309での更新登録処理で説明する。
【0055】
[S307、S308、S309]
S302の処理で登録済みの顔であると判定された場合(S302でYES)、情報処理装置30は、登録部17において、S107の処理で出力される視線の向き(θ1、θ2)を使用して視線補正が必要な顔であるか否かを判定する。この判定処理は、S304の処理と同様の手法で行なえば良い。なお、この場合、既に(以前に)視線補正データが登録されている。
【0056】
判定の結果、視線補正が必要ないと判定した場合(S307でNO)、情報処理装置30は、登録部17において、視線補正フラグに0を代入した後(S308)、この処理を終了する。
【0057】
一方、視線補正が必要と判定した場合(S307でYES)、情報処理装置30は、登録部17において、所定の条件を満たしているか否かを判定する。そして、所定の条件を満たしていれば、S107の処理で出力される視線の向き(θ1、θ2)を視線補正データ(a、b)として辞書データに更新登録する(S309)。
【0058】
ここで、視線補正データ(a、b)を辞書データに登録(又は更新登録)するか否かの判定に用いられる所定の条件について、いくつか例を挙げて説明する。この所定の条件は、上述した通り、S306やS309の登録(又は更新登録)処理を行なうか否かの判定基準となる。
【0059】
1.第1の登録方法
既に辞書データに登録されている視線補正データ(a、b)と、視線の向き(θ1、θ2)とが異なる値の場合、S107の視線検出で出力される視線の向き(θ1、θ2)を視線補正データ(a、b)として登録する。
【0060】
2.第2の登録方法
第2の登録方法は、第1の登録方法と同様に、既に辞書データに登録されている視線補正データ(a、b)と、視線の向き(θ1、θ2)とが異なる値の場合の登録方法である。ここで、第2の登録方法においては、S107の視線検出で出力される視線の向き(θ1、θ2)と、当該既に辞書データに登録されている視線補正データ(a、b)の重み付き平均値とを視線補正データ(a、b)として登録する。
【0061】
3.第3の登録方法
図8(a)に示すように、辞書データに登録される情報として、登録時の顔の向き(α1’、α2’)を追加する。そして、顔の向き(α1’、α2’)が所定の条件を満たしている場合に、視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として登録する。例えば、S103の処理で選択された顔の向き(α1、α2)が、既に辞書データに登録されている顔の向き(α1’、α2’)よりも基準方向に近い場合、当該顔の視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として登録する。
【0062】
4.第4の登録方法
図8(a)に示すように、辞書データに登録される情報として、顔の大きさL’(図3参照)を追加する。そして、顔の大きさL’が所定の条件を満たしている場合には、視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として登録する。例えば、顔の大きさL(図3参照)が、30[pixcel]以上の場合、視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として辞書データに登録する。また、S103の処理で選択された顔の顔幅Lが、既に辞書データに登録されている顔幅L’よりも大きい場合、視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として登録する。
【0063】
5.第5の登録方法
図8(b)に示すように、辞書データにおいては、顔の向き(α1、α2)の範囲で複数にグルーピングし、各グループ毎に視線補正データ(a、b)を保持するようにしても良い。例えば、顔の向きα1が(−10≦α1≦10)の範囲では視線補正データa1を使用し、顔の向きα1が(α1≧10)の範囲では視線補正データa2を使用し、顔の向きα1が(α1≦−10)の範囲では視線補正データa3を使用する。
【0064】
6.第6の登録方法
第6の登録方法では、S106の顔認証結果に基づいて、同一人物の視線の向き(θ1、θ2)の過去の履歴を参照する。そして、図8(c)に示すように、視線の向きが一定の値となる定常(安定)状態時における視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として辞書データに登録する。なお、視線の向きに限らず、表情、顔の大きさ、顔の向きが定常(安定)状態時に視線の向き(θ1、θ2)を新たな視線補正データ(a、b)として辞書データに登録するようにしても良い。
【0065】
7.第7の登録方法
上述した第1の登録方法から第6の登録方法の少なくともいずれかを組み合わせることにより得られた条件を満たした場合に辞書データを登録又は更新登録するようにしても良い。
【0066】
以上説明したように本実施形態によれば、個人毎に記憶した視線補正データ(a、b)を用いて、S107の視線検出結果として得られる視線の向き(θ1、θ2)の個人差に起因したずれ(ずれ量)を補正する。
【0067】
これにより、視線の向きの検出に際して、顔器官の大きさやそれら顔器官の相対位置関係、及び利き目によって生じる視線の向き(θ1、θ2)のずれに起因した問題を解消できる。そのため、個人差の影響を受けずに、視線の向き(θ1、θ2)を高精度に検出できる。
【0068】
(実施形態2)
次に、実施形態2について説明する。実施形態2においては、実施形態1で説明した情報処理装置30をデジタルカメラなどの撮像装置に適用し、当該適用した機能を用いて自動シャッター機能を実現する場合について説明する。
【0069】
実施形態2においては、図13(a)及び図13(b)に示す基準方向をカメラ方向として定義し、被写体の視線方向がカメラ方向であるか否かを判定する。以下の説明では、被写体の視線方向がカメラを向いていることをカメラ視線と呼び、カメラ視線を検出することをカメラ視線検出と呼ぶ。
【0070】
図9は、実施形態2に係わる撮像装置60における機能的な構成の一例を示す図である。
【0071】
撮像装置60は、その機能的な構成として、画像取得部10と、顔検出部11と、正規化画像生成部12と、顔器官検出部13と、顔認証部14と、カメラ視線判定部18と、登録部17と、撮像制御部19とを具備して構成される。
【0072】
ここで、カメラ視線判定部18は、処理対象となる顔(より具体的には、視線の向き)がカメラ方向を向いているか否かの判定を行なう。撮像制御部19は、カメラ視線判定部18の判定結果に基づいて撮像の実行を制御する。撮像制御部19においては、例えば、画像内で検出された人物の顔の視線が全てカメラ視線である場合に、撮像を実施する。なお、カメラ視線判定部18及び撮像制御部19以外の構成は、実施形態1で説明した図1における構成とそれぞれ同様の機能を果たすため、その説明については省略する。
【0073】
次に、図10を用いて、実施形態2に係わる撮像装置60における処理の流れの一例について説明する。
【0074】
[S400]
この処理では、まず、ユーザ等によりモードの選択が行なわれる。具体的には、後述するS411の処理でカメラ視線辞書を登録するカメラ視線辞書登録モードと、所定の撮像条件を満足した場合に自動撮像を行なう自動撮像モードとの2つがある。ここでは、自動撮像モードが選択されたものとする。なお、自動撮像モードでは、人物の視線がカメラ方向を向いた場合に自動的に撮像が行なわれる。
【0075】
[S401、S402]
S400の処理で選択されたモード(自動撮像モード)では、シャッターボタンが押下された場合に実行される。そのため、撮像装置60は、シャッターボタンが押下されたか否かを判定する。シャッターボタンが押下された場合(S401でYES)、撮像装置60は、画像取得部10において、レンズなどの光学系、CMOSやCCDなどの撮像素子、AD変換器などを介して画像を取得する(S402)。
【0076】
[S403]
撮像装置60は、顔検出部11において、S402の処理で取得した画像に対して顔検出処理を行なう。そして、顔が検出されたか否かを判定し、顔が検出されていない場合には(S404でNO)、再度、S402の処理に戻る。
【0077】
[S404〜S409]
S403の処理の結果、顔が検出された場合(S404でYES)、撮像装置60は、AE、AFを行なう(S405)。その後、実施形態1と同様に、顔選択〜顔認証等の処理を実施する(S406〜S409)。すなわち、1又は複数検出された顔のうち、1つを選択し、当該顔に対して画像正規化処理を実施し、正規化された画像に対して顔器官検出を行なう。その後、顔認証を行なう。
【0078】
[S410]
撮像装置60は、カメラ視線判定部18において、カメラ視線検出処理を行なう(S410)。この処理の詳細については後述するが、簡単に説明すると、S406の処理で選択された顔の視線が、カメラ方向を向いているか否かの判定を行なう。
【0079】
[S411、S412]
撮像装置60は、S400の処理でカメラ視線辞書登録モードが選択されていれば(S411でYES)、登録部17において、カメラ視線辞書の登録を行なう(S412)。実施形態2においては、詳細については後述するが、S409の顔認証結果(顔ID)に基づいて、人物毎に顔の向き(α1、α2)に関する辞書画像と目の向き(β1、β2)に関する辞書画像とを登録する。なお、1人の人物の顔について複数のカメラ視線辞書データを登録しても良い。
【0080】
[S413]
撮像装置60は、S403の処理で検出された顔の中で、未だ上述したS406〜S412の処理が実施されていない顔があれば(S413でYES)、再度、S406の処理に戻る。S403の処理で検出された顔全てについて上述した処理を実施していれば(S413でNO)、撮像装置60は、S414の処理に進む。
【0081】
[S414]
撮像装置60は、撮像制御部19において、所定の撮像条件を満たすか否かを判定する。この判定処理では、例えば、S403の処理で検出された全ての顔がカメラ視線であるか否かを判定する。なお、撮像条件については、S400におけるモード選択時に設定・変更可能である。
【0082】
判定の結果、所定の撮像条件を満たすと判定された場合(S414でYES)、撮像装置60は、撮像制御部19において、撮像部(不図示)を制御して撮像を行なう(S415)。この撮像は、例えば、S403の処理で検出された全ての顔がカメラ視線である場合に実施される。なお、撮像を実施する前に、再度、AE・AFを実施するようにしても良い。
【0083】
一方、S414の処理で所定の撮像条件を満たさないと判定した場合(S414でNO)、撮像装置60は、再度、S402の処理に戻り、次の画像を取得する。
【0084】
次に、図11を用いて、上述した図10のS410に示すカメラ視線検出処理の詳細な流れの一例について説明する。
【0085】
[S501]
撮像装置60は、カメラ視線判定部18において、S409の顔認証結果(顔ID)に基づいて、S406の処理で選択された顔が、既に登録されているか否かの判定を行なう。判定の結果、登録されていない顔であれば(S501でNO)、撮像装置60は、この処理を終了する。
【0086】
[S502]
一方、登録済みの顔であれば(S501でYES)、撮像装置60は、カメラ視線判定部18において、S409の顔認証結果(顔ID)に対応したカメラ視線辞書データの読み出しを行なう(S502)。なお、実施形態2においては、人物の視線がカメラ方向を向いた場合に自動撮像(自動撮像モード)を行なうため、辞書データに登録されている画像は、人物の視線がカメラ方向を向いた画像となる。
【0087】
図12は、ある人物の視線がカメラ方向を向いた場合のカメラ視線辞書画像の例を示している。カメラ視線辞書画像は、顔の向き(α1、α2)に関する辞書画像61と、目の向き(β1、β2)に関する辞書画像62との2つの辞書画像から構成される。顔の向き(α1、α2)に関する辞書画像61は、S407の処理で生成された正規化画像である。目の向き(β1、β2)に関する辞書画像62は、S408の処理の器官検出結果に基づいて正規化画像から切り出された目領域の画像である。実施形態2においては、このように各人物(個人ID)に対応して、カメラ視線辞書画像を設ける。
【0088】
[S503]
撮像装置60は、カメラ視線判定部18において、S406の処理で選択された顔画像と、S502の処理で読み出された顔の向きに関する辞書画像との各画素値の差を加算する。これにより、画像の差分を求め、当該差分の逆数を相関値S1として算出する(S503)。そのため、相関値S1が大きいほど、相関性が高いことを示している。
【0089】
[S504]
撮像装置60は、カメラ視線判定部18において、S406の処理で選択された顔画像と、S502の処理で読み出された目の向きに関する辞書画像との各画素値の差を加算する。これにより、画像の差分を求め、当該差分の逆数を相関値S2として算出する(S504)。
【0090】
なお、実施形態2においては、カメラ視線辞書データに輝度画像を用いているが、エッジ検出によるエッジ画像などを使用しても良いし、また、非特許文献5や非特許文献6のようなヒストグラムベースの特徴抽出し、それを使用するようにしても良い。また更に、辞書の数も各人物に対して、複数枚登録するように構成しても良い。その他、相関値を算出する方法についても、上記説明に限られず、カメラ視線とそうでない画像とを使用して、予め学習された非特許文献7のような識別器(Support Vector Machine)を使用しても良い。
【0091】
[S505]
撮像装置60は、カメラ視線判定部18において、S503の処理で算出された相関値S1とS504の処理で算出された相関値S2とが所定の条件を満たすか否かを判定する。具体的には、相関値S1が閾値S1th以上であり、且つ、相関値S2が閾値S2th以上であるか否かを判定する(S505)。
【0092】
[S506]
判定の結果、相関値S1が閾値S1th以上であり、且つ、相関値S2が閾値S2th以上であれば(S505でYES)、撮像装置60は、カメラ視線判定部18において、人物の視線がカメラ視線であると判定する(S506)。一方、そうでなければ(S505でNO)、撮像装置60は、カメラ視線判定部18において、人物の視線がカメラ視線でないと判定する(S507)。その後、撮像装置60は、この処理を終了する。
【0093】
以上説明したように実施形態2によれば、各個人に対応して視線がカメラ方向を向いた状態の画像が登録されているカメラ視線辞書データを保持する。そして、処理対象となる人物の顔と、当該カメラ視線辞書データに登録された画像(顔)との比較により、当該処理対象となる人物がカメラ視線であるか否かを判定し、その判定結果に基づいて撮像を行なう。これにより、個人差によらない高精度なカメラ視線の判定が可能となり、より良いタイミングで撮像を行なえる。
【0094】
このように実施形態1で説明した視線検出技術は、実施形態2で説明したようなデジタルカメラの自動シャッターに応用することができる。また、これ以外にも、例えば、自動車におけるよそ見検知や、画像検索など様々な形態に応用することができる。
【0095】
なお、実施形態2においても、視線に関する情報として、視線の方向ではなく、実施形態1で説明した所定視線方向の尤度を検出するようにしても良い。この場合、基準方向とカメラ方向とが一致した場合の尤度を算出するようにし、当該尤度が所定の閾値以上となる場合に撮像を行なえば良い。なお、実施形態2における相関値は、所定視線方向の尤度に相当する。
【0096】
以上が本発明の代表的な実施形態の一例であるが、本発明は、上記及び図面に示す実施形態に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【0097】
例えば、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施態様を採ることもできる。具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【0098】
(その他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
画像から人物の顔を検出する顔検出手段と、
各人物に対応して顔に関する情報と視線補正データとを保持する辞書データを予め記憶する記憶手段と、
前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段と、
前記顔検出手段により検出された顔から視線に関する情報を検出する視線検出手段と、
前記顔認証手段により認証された顔に対応した前記辞書データ内の視線補正データを用いて、前記視線検出手段により検出された前記視線に関する情報を補正する視線補正手段と
を具備することを特徴とする情報処理装置。
【請求項2】
前記顔検出手段により検出された顔から顔の器官を検出する顔器官検出手段
を更に具備し、
前記視線検出手段は、
前記顔器官検出手段により検出された前記顔の器官の位置関係と、予め保持された顔の器官の平均的な位置関係とを用いて前記視線に関する情報を検出する
ことを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記視線検出手段により検出された前記視線に関する情報に基づいて視線補正データを作成し、該作成した視線補正データを前記辞書データに登録又は更新登録する登録手段
を更に具備することを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記辞書データには、
各人物に対応して視線補正データの重み付き平均値が保持されており、
前記登録手段は、
前記視線検出手段により検出された前記視線に関する情報と、前記辞書データ内の前記視線補正データの重み付き平均値とを前記辞書データに登録又は更新登録する
ことを特徴とする請求項3記載の情報処理装置。
【請求項5】
前記登録手段は、
前記顔検出手段により検出された顔の状態、前記視線検出手段により検出された視線に関する情報の少なくともいずれかが所定の条件を満たした場合に前記登録又は前記更新登録を行なう
ことを特徴とする請求項3又は4記載の情報処理装置。
【請求項6】
前記顔の状態についての前記所定の条件は、
前記顔検出手段により検出された顔の向き、該顔の大きさ、該顔の表情の少なくとも1つに関する
ことを特徴とする請求項5記載の情報処理装置。
【請求項7】
前記視線検出手段は、
前記視線に関する情報として、視線の方向、又は所定の方向に対して視線の方向が一致することを示す尤度を検出する
ことを特徴とする請求項1から6のいずれか1項に記載の情報処理装置。
【請求項8】
請求項1から7のいずれか1項に記載の情報処理装置を具備する撮像装置であって、
前記視線補正手段から出力される前記視線に関する情報に基づいて、撮像の対象となる人物の視線が前記撮像装置に向いているか否かを判定する判定手段と、
前記判定手段による判定結果に基づいて撮像の実行を制御する撮像制御手段と
を具備することを特徴とする撮像装置。
【請求項9】
情報処理装置の処理方法であって、
顔検出手段が、画像から人物の顔を検出する工程と、
顔認証手段が、各人物に対応して顔に関する情報と視線補正データとを保持する辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する工程と、
視線検出手段が、前記顔検出手段により検出された顔から視線に関する情報を検出する工程と、
視線補正手段が、前記顔認証手段により認証された顔に対応した前記辞書データ内の視線補正データを用いて、前記視線検出手段により検出された前記視線に関する情報を補正する工程と
を含むことを特徴とする処理方法。
【請求項10】
コンピュータを、
画像から人物の顔を検出する顔検出手段、
各人物に対応して顔に関する情報と視線補正データとを保持する辞書データを予め記憶する記憶手段、
前記辞書データ内の前記顔に関する情報を用いて、前記顔検出手段により検出された顔を認証する顔認証手段、
前記顔検出手段により検出された顔から視線に関する情報を検出する視線検出手段、
前記顔認証手段により認証された顔に対応した前記辞書データ内の視線補正データを用いて、前記視線検出手段により検出された前記視線に関する情報を補正する視線補正手段
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−226665(P2012−226665A)
【公開日】平成24年11月15日(2012.11.15)
【国際特許分類】
【出願番号】特願2011−95283(P2011−95283)
【出願日】平成23年4月21日(2011.4.21)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】