画像処理装置、画像処理方法、及び画像処理プログラム
【課題】撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出する。
【解決手段】顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれについて、前記表情推定手段が前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段とを備える。
【解決手段】顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれについて、前記表情推定手段が前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、及び画像処理プログラムに関する。
【背景技術】
【0002】
近年、顔の表情、特に人物の顔の表情を検出する技術が開発されつつある。一般的に、カメラで人物を撮影する際には、被写体である人物の表情が笑顔などの良い表情のタイミングで撮影することが望まれることが多い。そのため、デジタルカメラへの表情検出技術の応用が検討されている。
【0003】
特許文献1に示された技術では、被写体の表情を検出するのに先立って、予め、その被写体の無表情の顔の画像信号をウェーブレット変換することにより得られる帯域ごとの周波数信号の平均電力を、基準となる平均電力として求めておく。そして、その被写体の表情を検出するための画像信号をウェーブレット変換して各帯域の周波数信号を生成し、その帯域ごとの周波数信号の平均電力を求める。この平均電力と基準となる平均電力との差分を演算することにより、その被写体の表情を検出している。特許文献1によれば、画像信号をウェーブレット変換しているので、画像内で被写体の顔が移動しても、その被写体の表情を精度良く検出することができるとされている。
【0004】
特許文献2に示された技術では、被写体の表情を検出するのに先立って、予め、その被写体の無表情の顔の画像データから所定の特徴点(眼元、口の端など)を抽出した後、特徴点間の距離などを基準となる情報として算出する。そして、その被写体の表情を検出するための画像データから所定の特徴点を抽出した後、特徴点間の距離などの情報を求める。この情報と基準となる情報との差分を演算することにより、その被写体の表情を検出している。さらに、その被写体の顔のサイズが変動したことに応じて、演算された差分を正規化している。特許文献2によれば、画像内で被写体の顔のサイズが変動した場合でも、その被写体の表情を精度良く検出することができるとされている。
【0005】
特許文献3に示された技術では、被写体の表情を検出するための画像データから左右目尻と口の両端点を検出した後、この4点から作成される矩形の長辺と短辺との比を求める。そして、この比が設定された範囲内に入っているか否かを判定することにより、その被写体の表情を検出している。この技術によれば、基準となる顔の情報を取得する必要がないので、その被写体の表情を簡便かつ迅速に検出することができる。
【0006】
特許文献4に示された技術では、各特徴部位から眉の動きなどの表情要素を抽出して、抽出された表情要素の濃淡パターンを示す表情要素情報を生成する。その表情要素情報に基づいて、表情要素とその変位方向とを示す表情要素コードを算出する。そして、表情要素コードを所定の変換式で演算して情緒の量を算出している。この技術によれば、その被写体の表情に加えて情緒を検出することができる。
【特許文献1】特許第02840816号公報
【特許文献2】特開2005−56388号公報
【特許文献3】特開2005−266984号公報
【特許文献4】特許第2573126号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
特許文献2、3に示された技術では、どの被写体に対しても同様な閾値を用いて、被写体の表情が、検出しようとする表情に達したか否かが判断されている。また、特許文献1、4には、被写体の表情が、検出しようとする表情に達したか否かを判断するための具体的な技術が開示されていない。しかし、笑顔などの人の表情には個人差があり、笑って表情が大きく変わる人もいれば、あまり変わらない人もいる。すなわち、無表情の顔に対して、検出しようとする顔における所定の特徴点(眼元、口の端など)間の距離の変化量が閾値を超えていなくても、被写体によっては検出しようとする表情(例えば笑顔)に達している場合がある。この場合、被写体の表情を精度良く検出することができない可能性がある。特に、撮影すべき画像における複数の被写体の間で表情の個人差が大きい場合に、各被写体の表情を精度良く検出することができない可能性がある。
【0008】
特許文献2に示された技術では、上述のように、被写体の顔のサイズが変動したことに応じて、被写体の表情の変化量として演算された差分を正規化している。また、特許文献1、3、4には、被写体の顔のサイズが変動したことに対応するための技術が開示されていない。ここで、演算された差分を正規化する際に画像の解像度を低減することがある。この場合、表情を推定する際に用いる顔の特徴点の抽出数が減少し、被写体の顔の表情を推定する精度が落ちる可能性がある。特に、撮影すべき画像における複数の被写体の間で顔のサイズが大きく異なる場合に、各被写体の表情を精度良く検出することができない可能性がある。
【0009】
本発明の第1の目的は、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することにある。
【0010】
本発明の第2の目的は、撮影すべき画像における複数の被写体の顔のサイズが大きく異なる場合でも各被写体の表情を精度良く検出することにある。
【課題を解決するための手段】
【0011】
本発明の第1側面に係る画像処理装置は、複数の被写体を含む画像データを処理するための画像処理装置であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段により抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれについて、前記表情推定手段が前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段とを備えたことを特徴とする。
【0012】
本発明の第2側面に係る画像処理装置は、複数の被写体を含む画像データを処理するための画像処理装置であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれについて、前記閾値を変更する変更手段とを備え、前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更することを特徴とする。
【0013】
本発明の第3側面に係る画像処理装置は、複数の被写体を含む画像データを処理するための画像処理装置であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれが発する音声を認識する音声認識手段と、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段とを備えたことを特徴とする。
【0014】
本発明の第4側面に係る画像処理方法は、複数の被写体を含む画像データを処理するための画像処理方法であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、前記複数の被写体のそれぞれについて、前記表情推定ステップで前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップとを備えたことを特徴とする。
【0015】
本発明の第5側面に係る画像処理方法は、複数の被写体を含む画像データを処理するための画像処理方法であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、前記複数の被写体のそれぞれについて、前記閾値を変更する変更ステップとを備え、前記顔領域検出ステップでは、前記顔情報選択ステップで前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、前記変更ステップでは、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更することを特徴とする。
【0016】
本発明の第6側面に係る画像処理方法は、複数の被写体を含む画像データを処理するための画像処理方法であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、前記複数の被写体のそれぞれが発する音声を認識する音声認識ステップと、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識ステップで認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップとを備えたことを特徴とする。
【0017】
本発明の第7側面に係る画像処理プログラムは、上記の画像処理方法の各工程を画像処理装置に実行させることを特徴とする。
【発明の効果】
【0018】
本発明によれば、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することができる。あるいは、本発明によれば、撮影すべき画像における複数の被写体の顔のサイズが大きく異なる場合でも各被写体の表情を精度良く検出することができる。
【発明を実施するための最良の形態】
【0019】
本発明の実施形態に係る画像処理装置100について、図1を参照して説明する。図1は、本発明の実施形態に係る画像処理装置100の構成図である。
【0020】
画像処理装置100は、複数の被写体を撮像して得られた画像データを処理するための装置である。画像処理装置100は、例えば、デジタルカメラ又はビデオカメラである。画像処理装置100は、以下の構成要素を備える。
【0021】
保護手段102は、例えばバリアである。保護部102は、外部と撮影レンズ10との間に配置され、撮影レンズ10を保護する。シャッター12は、撮影レンズ10と後述の光電変換部14との間に配置され、撮影レンズ10から光電変換部14へ導かれる光量を絞るための絞り機能を有する。
【0022】
取得部17は、光電変換部14、読み出し部15、及びA/D変換部16を含む。光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。
【0023】
ここで、取得部17は、異なる複数のタイミングで複数の被写体を撮像して、複数の画像データを取得する。すなわち、光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。これらの動作が異なる複数のタイミングで行われて、複数の画像データが取得される。
【0024】
タイミング発生部18は、メモリ制御部22及びシステム制御部50により制御されて、光電変換部14、読み出し部15、A/D変換部16、後述のD/A変換器26にクロック信号や制御信号を供給する。
【0025】
画像処理部20は、A/D変換部16からのデータ或いはメモリ制御部22からのデータに対して、所定の画素補間処理や色変換処理を行う。
【0026】
また、画像処理部20は、A/D変換部16等から受け取った画像データを用いて所定の演算処理を行い、得られた演算結果をシステム制御部50へ供給する。これにより、システム制御部50は、露光制御部40、測距制御部42に対して制御を行い、TTL(スルー・ザ・レンズ)方式のAF(オートフォーカス)処理、AE(自動露出)処理、EF(フラッシュプリ発光)処理を行っている。
【0027】
さらに、画像処理部20は、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてTTL方式のAWB(オートホワイトバランス)処理も行っている。
【0028】
また、画像処理部20は、顔領域検出部20a、顔情報抽出部20b、及び識別部20cを含む。
【0029】
顔領域検出部20aは、取得部17により取得された複数の画像データのそれぞれにおいて、各被写体の顔領域を検出する。顔領域検出部20aは、各被写体の顔のサイズに関する情報を生成する。ここで、また、各被写体の顔のサイズに関する情報のうち、顔情報選択部50aにより各被写体の基準顔情報が選択された後に顔領域検出部20aにより生成された情報を、特に、検出顔サイズ情報と呼ぶことにする。
【0030】
例えば、顔領域を検出する方法には、ニューラルネットワークやサポートベクターマシンに代表される学習を用いた方法がある。また、目や鼻といった物理的な形状の特徴のある部位を画像領域からテンプレートマッチングで抽出する方法がある。他にも、P.Viola and M.Jonesらの次の文献に開示された方法がある。”Rapid Object Detection Using a Boosted Cascade of Simple Features,”in Proc. Of CVPR, vol.1, pp.511-518, December, 2001。更に、特開平10−232934号公報や特開2000−48184号公報に示されるように、肌の色や目の形といった画像特徴量を検出し統計的手法を用いて解析する方法がある。本実施形態においては、顔画像と非顔画像を用いてニューラルネットワークで学習させることにより顔識別器を構築する方法を用いる。また、ニューラルネットワークで学習させた顔識別器を使用すると、顔が存在する付近のニューロンは発火状態となる。このため、ニューロンの発火数や発火強度を用いて顔領域を検出する画素位置に加えて顔検出信頼度などを算出するようにしても良い。顔検出信頼度とは、検出された顔領域の画素位置がどの程度信頼できるかという程度を表す値であり、顔検出信頼度が高い値であればあるほど、顔が存在する確立が高いことを示している。例えば、最大出力値のニューロン位置を、顔領域が検出された画素位置とする。そして、最大出力値に対して所定の関数を通すことによって所定の値(例えば、0〜1)に正規化し、最大出力値から得られる値(例えば、0〜1)をそのまま顔検出信頼度とする方法がある。
【0031】
なお、顔検出信頼度は、固定閾値以上のニューロン数が所定数N1以上であるならば顔検出信頼度を1、所定数N2以上であるならば顔検出信頼度を0.6、それ以外は0とするような方法もある。また、固定閾値以上のニューロン数を所定の関数を通すことによって顔検出信頼度を算出する方法でも良い。あるいは、ニューロン値の最大値から上位N3%のニューロン出力値の和を所定の関数を通すことによって顔検出信頼度を算出する方法など他の方法により、顔領域が検出された画素位置や顔検出信頼度が求められても良い。
【0032】
顔情報抽出部20bは、顔領域検出部20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。顔情報は、例えば、口や目や眉毛などの具体的な形状や座標に関する情報を含み、あるいは、例えば、鼻の端点、鼻穴の中心点、耳の端点などの形状や座標に関する情報を含む。ここで、顔情報は、それぞれの端点や中心点あるいは目の黒点などを入力された顔の画像から、例えばニューラルネットワークや空間フィルタを用いたエッジ検出などの方法を用いて算出することにより抽出することができる。顔領域検出部20aが顔領域を抽出する際には、口や目などの顔の構成要素としての条件を満たす形状が存在するか否かという判断を行っている。つまり、笑っているときの大きく開いた口でも、黙っているときの閉じた口でも、口という条件さえ満たせばその具体的な形状までは問わない。これに対し、顔情報抽出部20bが顔情報を抽出する際には、同じ口であっても、口角の位置や口の開き具合などの具体的な形状や顔領域における座標の情報までも含めて抽出される。
【0033】
また、識別部20cは、各被写体の大まかな特徴(顔の輪郭、顔全体における目や鼻などの相対的な位置関係など)の情報を顔領域検出部20aから受け取る。識別部20cは、各被写体の大まかな特徴の情報に基づいて、取得部17により取得された複数の画像データのそれぞれにおいて複数の被写体のそれぞれを識別する。また、識別部20cは、各被写体の大まかな特徴と各被写体のID(例えば、図19に示す「被写体A」など)とを対応付けて、各被写体を識別するための識別情報を生成する。識別部20cは、各被写体の識別情報を後述のメモリ52へ供給する。その後、識別部20cは、その識別情報に応じて、表情を推定するために取得された画像データにおいて、各被写体を識別する。
【0034】
メモリ制御回路22は、A/D変換部16、タイミング発生部18、画像処理部20、画像表示メモリ24、D/A変換器26、メモリ30、圧縮伸長部32を制御する。メモリ制御回路22は、A/D変換部16や画像処理部20から受け取ったデータを画像表示メモリ24或いはメモリ30に書き込む。
【0035】
画像表示メモリ24は、表示用の画像データを記憶する。D/A変換器26は、表示用の画像データをメモリ制御部22経由で画像表示メモリ24から受け取り、表示用の画像データをアナログ信号へD/A変換する。
【0036】
第1の報知部28は、D/A変換器26から受け取ったアナログ信号に応じた画像を表示する。第1の報知部28は、例えば、TFT−LCDを含む。第1の報知部28は、画像を逐次表示して、電子ファインダ機能を実現することが可能である。
【0037】
ここで、第1の報知部28は、システム制御部50の指示により任意に表示をON/OFFすることが可能であり、表示をOFFにした場合に画像処理装置100の電力消費を大幅に低減することが出来る。
【0038】
メモリ30は、撮影した静止画像や動画像を格納する。メモリ30は、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶量を備えている。これにより、複数枚の静止画像を連続して撮影する連射撮影やパノラマ撮影の場合にも、高速かつ大量の画像書き込みをメモリ30に対して行うことが可能となる。また、メモリ30はシステム制御部50の作業領域としても使用することが可能である。
【0039】
圧縮伸長部32は、適応離散コサイン変換(ADCT)等により画像データを圧縮伸長する。圧縮伸長部32は、メモリ30に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータをメモリ30に書き込む。
【0040】
露光制御部40は、絞り機能を備えるシャッター12を制御する。露光制御部40は、フラッシュ48と連携することにより、フラッシュ調光機能を実現することができる。
【0041】
測距制御部42は、撮影レンズ10のフォーカシングを制御する。ズーム制御部44は、撮影レンズ10のズーミングを制御する。バリア制御部46は、保護部102の動作を制御する。フラッシュ48は、AF補助光の投光機能、フラッシュ調光機能を有する。
【0042】
外部マイク130は、各被写体が発生する音声を検知して音声信号を生成する。外部マイク130は、指向性を有することができ、指向性制御信号に応じて特定の方向からの音声を検知する。
【0043】
音声認識部41は、予め取得された画像データから特定された被写体の方向に基づいて、検知すべき被写体の方向を示す指向性制御信号を生成して外部マイク130へ供給する。音声認識部41は、検知すべき被写体の方向から発せられた音声に対する音声信号を外部マイク130から受け取る。音声認識部41は、図示しない音声認識プログラムを用いて、音声信号が示す音声パターンと、検出しようとする表情(例えば、笑顔)に予め対応づけられた所定の音声パターンとが一致するか否かを判断する。音声認識部41は、音声信号が示す音声パターンと、所定の音声パターンとが一致すると判断する場合、その被写体が発する音声パターンが、検出しようとする表情に対応する音声(例えば、笑い声)の音声パターンであると認識する。音声認識部41は、各被写体について、検出しようとする表情に対応する音声(例えば、笑い声)の音声パターンを認識した旨の情報を後述の変更部50dへ供給する。
【0044】
なお、所定の音声パターンは、実験的に求めておけばよい。例えば、予め複数の人物の音声(例えば、笑い声)を検知してそれぞれの音声パターンを取得しておき、それらを統計的に解析することにより、所定の音声パターンを求めておけばよい。
【0045】
システム制御部50は、デジタルカメラ100全体を制御する。例えば、システム制御部50は、取得部17により取得された画像データに対して画像処理部20が演算した演算結果に基づき、露光制御部40や測距制御部42を制御する。
【0046】
また、システム制御部50は、顔情報選択部50a、表情推定部50b、制御部50c、及び変更部50dを含む。顔情報選択部50aは、顔情報抽出部20bにより抽出された各被写体の複数の顔情報から、各被写体の顔の表情を推定するための基準となる基準顔情報を選択する。基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。ここで、顔情報選択部50aは、例えば、所定の期間、口の形状等の変化量が所定の閾値を超えなかった場合に、無表情状態であると判定して、その判定結果に応じた顔情報を基準顔情報として選択する。
【0047】
なお、顔情報選択部50aは、無表情状態を判定する際に、口以外の構成要素の形状を使用しても構わない。例えば、顔情報選択部50aは、更に顔情報として眼の開閉度状態を用い、目の大きさの変化などを使用して眼開きの状態タイミングに基づいて基準顔情報を選択しても良い。また、顔情報選択部50aは、瞳画像をニューラルネットワークで学習させ、固定閾値以上の瞳ニューロン数から眼の開閉状態を判定するようにしても良い。
【0048】
表情推定部50bは、顔情報抽出部20bにより抽出された他の顔情報の、基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための変化量に対する閾値とを被写体ごとに比較して、各被写体の顔の表情を推定する。すなわち、表情推定部50bは、後述の第2の指示(撮影指示)を第2シャッタースイッチ(SW2)64から受け取る。表情推定部50bは、顔情報選択部50aから基準顔情報を受け取り、画像処理部20の顔情報抽出部20bから各被写体の他の顔情報を受け取る。表情推定部50bは、撮影指示に応じて、各被写体の表情を推定し始める。すなわち、表情推定部50bは、各被写体について、基準顔情報と他の顔情報との差分を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成する。また、表情推定部50bは、他の顔情報に対応した識別情報を識別部20cから受け取る。表情推定部50bは、識別情報が示す被写体について、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報を後述のメモリ52から受け取る。表情推定部50bは、変化量情報と閾値情報とに基づいて、変化量が閾値を超えたか否かを判定する。これにより、表情推定部50bは、各被写体の顔が、目標とする表情に達したか否かを判断する。
【0049】
制御部50cは、取得部17及びカードコントローラ(記録手段)90を制御する。制御部50cは、検出しようとする表情に達したと各被写体について判断した旨の情報を表情推定部50bから受け取る。この場合、制御部50cは、取得部17により取得された複数の被写体を含む画像データをカードコントローラ90が外部記録媒体120へ記録するように、取得部17及びカードコントローラ90などを制御する。すなわち、制御部50cは、撮影処理が行われるように各部を制御する。
【0050】
メモリ(記憶手段)52は、システム制御部50の動作用の定数、変数等を記憶する。また、メモリ52は、予め設定情報として後述の入力部75から受け取った閾値(デフォルト値)と基準時間(デフォルト値)と基準顔サイズ情報とを記憶する。基準顔サイズ情報は、被写体の顔のサイズを判断する際の基準となる顔のサイズを示すように予め定められた情報である。メモリ52は、各被写体の識別情報を識別部20cから受け取った際に、各被写体の識別情報と閾値(デフォルト値)と基準時間(デフォルト値)とを対応付けて閾値情報として記憶する。閾値情報は、各被写体の識別情報と閾値と基準時間とが対応付けられた情報である(図19参照)。
【0051】
第2の報知部54は、システム制御部50でのプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等を報知する。第2の報知部54は、デジタルカメラ100の後述の操作部70近辺の視認し易い位置に単数或いは複数個所設置される。第2の報知部54は、例えば、液晶表示装置(LCD)、LED、発音素子(スピーカ)等の組み合わせにより構成されている。
【0052】
また、第2の報知部54は、その一部の機能が光学ファインダ104内に設置されている。
【0053】
第2の報知部54は、例えば、シングルショット/連写撮影表示、セルフタイマー表示、圧縮率表示、記録画素数表示、記録枚数表示、残撮影可能枚数表示、シャッタースピード表示、絞り値表示、及び露出補正表示などをLCD等に表示する。あるいは、第2の報知部54は、例えば、フラッシュ表示、赤目緩和表示、マクロ撮影表示、ブザー設定表示、時計用電池残量表示、電池残量表示、エラー表示、及び複数桁の数字による情報表示などをLCD等に表示する。あるいは、第2の報知部54は、例えば、外部記録媒体120の着脱状態表示、通信I/F動作表示、及び日付け・時刻表示等をLCD等に表示する。
【0054】
また、第2の報知部54は、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、及び露出補正表示等を光学ファインダ104内に表示する。
【0055】
不揮発性メモリ56は、電気的に消去・記録可能なメモリであり、画像処理プログラムなどのプログラムを記憶する。不揮発性メモリ56は、例えば、EEPROM等が用いられる。
【0056】
入力部75は、システム制御部50の各種の動作指示を受け付ける。スイッチやダイアル、タッチパネル、視線検知によるポインティング、音声認識装置等の単数或いは複数の組み合わせを介して、所定の指示を受け付ける。この入力部75は、モードダイアルスイッチ60、シャッターボタン61、第1シャッタースイッチ62、第2シャッタースイッチ64、画像表示ON/OFFスイッチ66、及び操作部70を含む。
【0057】
モードダイアルスイッチ60は、電源オフ、自動撮影モード、撮影モード、パノラマ撮影モード、再生モード、マルチ画面再生・消去モード、PC接続モード等の各機能モードを切り替え設定するための指示を受け付ける。
【0058】
シャッターボタン61は、静止画撮影するための指示(撮影指示)などをユーザから受け付ける。例えば、シャッターボタン61は、半押しされることにより、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等するための第1の指示を受け付ける。例えば、シャッターボタン61は、全押しされることにより、静止画撮影等するための第2の指示を受け付ける。
【0059】
第1シャッタースイッチ(SW1)62は、第1の指示をシャッターボタン61から受け取るとON状態になり、ON状態である旨の情報をシステム制御部50へ供給する。システム制御部50は、第1シャッタースイッチ62がON状態であることに応じて、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作開始を各部へ指示する。
【0060】
第2シャッタースイッチ(SW2)64は、第2の指示をシャッターボタン61から受け取るとON状態になり、ON状態である旨の情報をシステム制御部50へ供給する。これにより、システム制御部50は、一連の撮影処理の動作開始を指示する。一連の撮影処理では、光電変換部14から読み出した信号をA/D変換部16、メモリ制御部22を介してメモリ30に画像データを書き込む露光処理、画像処理部20やメモリ制御部22での演算を用いた現像処理を行う。そして、一連の撮影処理では、メモリ30から画像データを読み出し、圧縮伸長部32で圧縮を行い、カードコントローラ90及びインタフェース91を介して外部記録媒体120へ画像データを書き込む記録処理を行う。
【0061】
画像表示ON/OFFスイッチ66は、第1の報知部28のON/OFFを設定するための指示を受け付ける。この指示により、システム制御部50は、光学ファインダー104を用いて撮影を行う際に、第1の報知部28への電流供給を遮断して、省電力化を図ることができる。
【0062】
クイックレビューON/OFFスイッチ68は、撮影直後に撮影した画像データを自動再生するクイックレビュー機能を設定するための指示を受け付ける。例えば、第1の報知部28をOFFとした場合におけるクイックレビュー機能の設定を受け付けることができるものとする。
【0063】
操作部70は、各種ボタンやタッチパネル等からなる。操作部70は、メニューボタン、マクロボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写/連写/セルフタイマー切り替えボタン、メニュー移動+(プラス)ボタン、メニュー移動−(マイナス)ボタンを含む。操作部70は、再生画像移動+(プラス)ボタン、再生画像−(マイナス)ボタン、撮影画質選択ボタン、露出補正ボタン、日付/時間設定ボタン、ブラケットモードの選択ボタン等を含む。
【0064】
電源制御部80は、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成されており、電池の装着の有無、電池の種類、電池残量の検出を行う。電源制御部80は、検出結果及びシステム制御部50の指示に基づいてDC-DCコンバータを制御し、必要な電圧を必要な期間、外部記録媒体120を含む各部へ供給する。
【0065】
コネクタ82は、電源制御部80に接続されている。コネクタ84は、電源86に接続されている。電源86は、例えば、アルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等である。
【0066】
カードコントローラ(記録手段)90は、インタフェース91を介して、メモリカード等の外部記録媒体120とデータの送受信を行う。例えば、カードコントローラ90は、画像データを外部記録媒体120へ記録する。インタフェース91は、メモリカード等の外部記録媒体120とカードコントローラ90とのインタフェースとして機能する。コネクタ92は、メモリカード等の外部記録媒体120が接続される。記録媒体着脱検知部98は、コネクタ92に外部記録媒体120が装着されているか否かを検知する。
【0067】
なお、記録媒体を取り付けるインタフェース及びコネクタは、2以上の系統数であってもよい。また、インタフェース及びコネクタは、異なる規格のものが組み合わせされていても構わない。インタフェース及びコネクタは、半導体メモリカード等の規格に準拠したものを用いて構成して構わない。この場合、各種通信カードを接続することにより、他のコンピュータやプリンタ等の周辺機器との間で画像データや画像データに付属した管理情報を転送し合うことができる。各種通信カードは、例えば、LANカードやモデムカード、USBカード、IEEE1394カード、P1284カード、SCSIカード、PHS等の通信カード等である。
【0068】
光学ファインダ104は、撮影を行う際に被写体を確認するために用いられる。光学ファインダー104を用いれば、第1の報知部28による電子ファインダー機能を使用すること無しに撮影を行うことが可能である。また、光学ファインダー104には、第2の報知部54により表示される情報の一部、例えば、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、露出補正表示などに関する情報が表示される。
【0069】
外部記録媒体120は、コネクタ92に着脱可能に接続される。外部記録媒体120は、例えば、メモリカード等である。
【0070】
次に、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを、図2に示すフローチャートを用いて説明する。図2は、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを示すフローチャートである。
【0071】
ステップS1では、入力部75が、笑顔撮影モードを選択するための指示を受け付ける。この笑顔撮影モードは、複数の被写体の笑顔を検出した際に自動的に撮影が行われる撮影モードである。取得部17は、異なる複数のタイミングで複数の被写体を撮像して得られた画像データを取得する。
【0072】
すなわち、光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。これらの動作が異なる複数のタイミングで行われて、複数の画像データが取得される。
【0073】
ステップS2では、入力部75が、顔領域検出を行うための指示をユーザから受け付け、その指示を顔領域検出部20aへ供給する。顔領域検出部20aは、その指示に応じて、取得部17により取得された複数の画像データのそれぞれにおいて、各被写体の顔領域を検出する。顔領域検出部20aは、検出された各被写体の顔領域に関する情報をシステム制御部50へ供給する。
【0074】
ステップS3では、準備処理が行われる。準備処理の詳細に関しては後述する。
【0075】
ステップS4では、システム制御部50が、表情を検出すべきであるか否かを判断する。
【0076】
例えば、システム制御部50は、撮影指示を入力部75から受け取った場合、表情を検出すべきであると判断する。システム制御部50は、撮影指示を入力部75から受け取らなかった場合、表情を検出すべきでないと判断する。すなわち、システム制御部50は、撮影指示に応じて、表情を検出すべきか否かを判断する。
【0077】
システム制御部50は、表情を検出すべきであると判断する場合、処理をステップS5へ進め、表情を検出すべきでないと判断する場合、処理をステップS1へ進める。
【0078】
ステップS5では、取得部17が、複数の被写体の顔の表情を推定するために、複数の被写体を撮像して得られた画像データを取得する。
【0079】
すなわち、光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。
【0080】
ステップS6では、顔領域検出部20aが、取得部17により取得された複数の画像データのそれぞれにおいて、各被写体の顔領域を検出する。顔領域検出部20aは、各被写体の顔のサイズに関する検出顔サイズ情報を生成する。顔領域検出部20aは、検出された各被写体の顔領域に関する情報と、検出顔サイズ情報とをシステム制御部50へ供給する。
【0081】
ステップS7では、検出処理が行われる。検出処理の詳細に関しては後述する。
【0082】
ステップS8では、システム制御部50が、撮影すべきであるか否かを判断する。
【0083】
例えば、システム制御部50は、表情フラグがONされた被写体の数が所定数以上である場合、撮影すべきであると判断し、表情フラグがONされた被写体の数が所定数未満である場合、撮影すべきでないと判断する。
【0084】
システム制御部50は、撮影すべきであると判断する場合、処理をステップS9へ進め、撮影すべきでないと判断する場合、処理をステップS10へ進める。
【0085】
ステップS9では、システム制御部50が、一連の撮影処理の動作開始を指示する。一連の撮影処理では、撮像素子14から読み出した信号をA/D変換器16、メモリ制御部22を介して記憶部30に画像データを書き込む露光処理、画像処理部20やメモリ制御部22での演算を用いた現像処理を行う。そして、一連の撮影処理では、メモリ30から画像データを読み出し、圧縮伸長部32で圧縮を行い、カードコントローラ90及びインタフェース91を介して外部記録媒体120へ画像データを書き込む記録処理を行う。
【0086】
ステップS10では、システム制御部50が、笑顔撮影モードの処理を終了すべきか否かを判断する。
【0087】
例えば、システム制御部50は、検出処理(ステップS7)において他の顔情報を抽出することに成功していないと判断する場合、笑顔撮影モードの処理を終了すべきでないと判断する。システム制御部50は、検出処理(ステップS7)において他の顔情報を抽出することに成功していると判断する場合、笑顔撮影モードの処理を終了すべきであると判断する。
【0088】
例えば、システム制御部50は、撮影モードを笑顔撮影モード以外の撮影モードへ変更するための指示を受け取った場合、笑顔撮影モードの処理を終了すべきであると判断する。システム制御部50は、撮影モードを笑顔撮影モード以外の撮影モードへ変更するための指示を受け取らなかった場合、笑顔撮影モードの処理を終了すべきでないと判断する。
【0089】
あるいは、例えば、システム制御部50は、笑顔撮影モードを終了すべき指示を受け取った場合、笑顔撮影モードの処理を終了すべきであると判断する。システム制御部50は、笑顔撮影モードを終了すべき指示を受け取らなかった場合、笑顔撮影モードの処理を終了すべきでないと判断する。
【0090】
次に、準備処理(ステップS3)の流れを、図3を用いて説明する。図3は、被写体ごとの準備処理の流れを示すフローチャートである。図3には、特定の被写体(例えば、図5に示す被写体O1)に着目した場合の処理が示されている。すなわち、準備処理は、個々の被写体ごとに独立して並行的に行われる。
【0091】
ステップS11では、識別部20cが、顔領域検出部20aにより検出された複数の被写体の大まかな特徴(顔の輪郭、顔全体における目や鼻などの相対的な位置関係など)の情報から、特定の被写体の大まかな特徴の情報を選択する。すなわち、識別部20cは、選択した被写体の大まかな特徴の情報を介して、取得部17により取得された複数の画像データのそれぞれにおいてその被写体を識別する。また、識別部20cは、選択した被写体の大まかな特徴とその被写体のID(例えば、図19に示す「被写体A」など)とを対応付けて、その被写体を識別するための識別情報を生成する。識別部20cは、その被写体の識別情報を後述のメモリ52へ供給する。
【0092】
メモリ52は、予め設定情報として後述の入力部75から受け取った閾値(デフォルト値)と基準時間(デフォルト値)と基準顔サイズ情報とを記憶する。基準顔サイズ情報は、被写体の顔のサイズを判断する際の基準となる顔のサイズを示すように予め定められた情報である。メモリ52は、その被写体の識別情報を識別部20cから受け取った際に、被写体の識別情報と閾値(デフォルト値)と基準時間(デフォルト値)とを対応付けて閾値情報として記憶する。閾値情報は、被写体の識別情報と閾値と基準時間とが対応付けられた情報である。
【0093】
例えば、メモリ52には、図19に示すように、識別情報「被写体A」,「被写体B」,・・・のいずれに対しても、デフォルト値である閾値「10」と基準時間「Td」とが対応付けられた閾値情報が記憶される。図19は、閾値情報のデータ構造を示す図である。
【0094】
ステップS12では、顔情報抽出部20bが、顔領域検出部20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。
【0095】
例えば、顔情報抽出部20bは、以降のステップでの計算精度を上げるため、選択された顔の向きを正規化する。顔情報抽出部20bは、顔の向きが所定の向きになるようにアフィン変換による正規化処理を行う。顔情報抽出部20bは、正規化された顔から口や目や眉毛などの端点の形状を代表する特徴点を検出する。そして、顔情報抽出部20bは、検出された各特徴点から特徴量を算出する。すなわち、顔情報抽出部20bは、複数の顔領域のそれぞれから、被写体の顔の特徴量を含む顔情報を抽出する。
【0096】
ここで、顔情報は、例えば、図5に示すように、口や目や眉毛などの特徴点500〜517の具体的な形状や座標に関する情報を、特徴量として含む。顔情報は、それぞれの端点や中心点あるいは目の黒点などを入力された顔の画像から、例えばニューラルネットワークや空間フィルタを用いたエッジ検出などの手法を用いて算出することにより抽出することができる。すなわち、顔情報抽出部20bは、各特徴点に対して所定の検出範囲を設定し、各検出範囲内で特徴量を検出するためのニューラルネットワークを用いることにより各特徴点を検出する。ニューラルネットワークには、顔検出同様に予め各特徴点画像データを用いて学習させた各ネットワークが使用される。
【0097】
各特徴点に対する検出範囲は、例えば次のように設定される。顔情報抽出部20bは、特徴点500、502(図5参照)に対して、例えば、図6に示すように、両眼間距離aと左眼位置400とを用いて検出範囲600、601を設定する。顔情報抽出部20bは、特徴点503、505(図5参照)に対しても、特徴点500、502と同様に、両眼間距離aと右眼位置401を用いて検出範囲を設定する。顔情報抽出部20bは、特徴点501(図5参照)に対して、図7に示すように、検出範囲602を設定する。顔情報抽出部20bは、特徴点504(図5参照)に対しても、特徴点501と同様に検出範囲を設定する。顔情報抽出部20bは、特徴点506、509(図5参照)に対して、図8に示すように、検出範囲603、604を設定する。顔情報抽出部20bは、特徴点510、513に対しても、特徴点506、509と同様に検出範囲を設定する。顔情報抽出部20bは、特徴点507、508(図5参照)に対して、図9に示すように、検出範囲605、606を設定する。顔情報抽出部20bは、特徴点511、512(図5参照)に対しても、特徴点507、508と同様に検出範囲を設定する。顔情報抽出部20bは、特徴点514、517(図5参照)に対して、図10に示すように検出範囲607、608を設定する。顔情報抽出部20bは、特徴点515、516(図5参照)に対して、図11に示すように検出範囲609、610を設定する。
【0098】
顔情報抽出部20bにより算出される特徴量は、例えば、次のような情報である。特徴量の一例として笑顔表情の特徴量について説明する。
【0099】
笑顔表情は、Facial Action Coding System(FACS)において、次のように提唱されている。(P.Ekman and W.V.Friesen, Facial Action Coding System(FACS) Manual, Palo Alto:Consulting Psychologists Press, 1978)。「FACSにおける笑顔表情の定義」として、「頬を持ち上げる」ことと、「唇の端を引っ張りあげる」こととが挙げられている。
【0100】
本実施形態では、顔情報抽出部20bが、笑顔表情の特徴量として、上記FACSの定義に従った図13に示す特徴量710〜712を算出する。すなわち、顔情報抽出部20bは、特徴点506と特徴点514と(図5参照)のy方向の距離710を算出する。顔情報抽出部20bは、特徴点513と特徴点517と(図5参照)のy方向の距離711を算出する。顔情報抽出部20bは、特徴点514と特徴点517と(図5参照)のx方向の距離712を算出する。なお、距離710〜712は、いずれも、基準となる距離(例えば、両眼間距離a)に対する相対的な距離である。
【0101】
なお、これらの距離を算出する際には、顔情報抽出部20bが、図14のように、所定の位置、例えば、顔領域が検出された画素位置402を基準として、画素位置402と特徴点514(図5参照)とのy方向の距離713を算出してもよい。また、顔情報抽出部20bは、画素位置402と特徴点517(図5参照)とのy方向の距離714を算出してもよい。
【0102】
ステップS13では、顔情報抽出部20bが、顔情報を抽出することに成功したか否かを判断する。顔情報抽出部20bは、顔情報を抽出することに成功したと判断した場合、処理をステップS14へ進め、顔情報を抽出することに成功していないと判断した場合、処理を終了する。
【0103】
ステップS14では、顔情報選択部50aが、顔情報抽出部20bにより抽出された複数の顔情報から、被写体の顔の表情を推定するための基準となる基準顔情報を選択する。基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。ここで、顔情報選択部50aは、例えば、所定の期間、目と口との距離の変化量が所定の値以下である場合に、無表情状態であると判定する。
【0104】
例えば、顔情報選択部50aは、図12に示すように、期間T1において、特徴点506と特徴点514とのy方向の距離710の変化量が所定の画素数L1以下である場合に、無表情状態であると判定する。一方、顔情報選択部50aは、期間T2において、特徴点506と特徴点514とのy方向の距離710の変化量が所定の画素数L1を超えた画素数L2である場合に、無表情状態でないと判定する。そこで、顔情報選択部50aは、期間T1において取得された画像データに対する顔情報を基準顔情報として選択する。ここで、図12は、本発明の実施形態における特徴量の時間的変化を示す図である。
【0105】
なお、顔情報選択部50aは、無表情状態を判定する際に、口以外の構成要素の形状を使用しても構わない。例えば、顔情報選択部50aは、更に顔情報として眼の開閉度状態を用い、目の大きさの変化などを使用して眼開きの状態タイミングに基づいて基準顔情報を選択しても良い。また、顔情報選択部50aは、瞳画像をニューラルネットワークで学習させ、固定閾値以上の瞳ニューロン数から眼の開閉状態を判定するようにしても良い。
【0106】
次に、検出処理(ステップS7)の流れを、図4を用いて説明する。図4は、被写体ごとの検出処理の流れを示すフローチャートである。すなわち、検出処理は、個々の被写体ごとに独立して並行的に行われる。図4には、特定の被写体の着目した場合の処理が示されている。
【0107】
ステップS21では、識別部20cが、メモリ52に記憶された閾値情報(図19参照)を参照して、ステップS11で生成した識別情報に予め対応付けられた閾値情報を選択する。ここで、識別情報は、被写体の大まかな特徴(顔の輪郭、顔全体における目や鼻などの相対的な位置関係など)と被写体のID(図19に示す「被写体A」など)とが対応付けられた情報であり、被写体を識別するための情報である。
【0108】
ステップS22では、変更部50dが、識別情報に対応した被写体の基準顔サイズ情報をメモリ52から受け取り、識別情報に対応した被写体の検出顔サイズ情報を顔領域検出部20aから受け取る。変更部50dは、基準となる顔のサイズに比べて、検出する対象となる顔のサイズが異なるか否か判断する。変更部50dは、検出する対象となる顔のサイズが、基準となる顔のサイズと異なる(差が所定の範囲を超えている)場合、処理をステップS23へ進め、基準となる顔のサイズと等しい(差が所定の範囲内である)場合、処理をステップS24へ進める。
【0109】
ステップS23では、変更部50dが、識別情報に対応した被写体について、検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、閾値及び基準時間を変更する。
【0110】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが大きい場合に、閾値を大きくするように、かつ、基準時間を長くする。
【0111】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが小さい場合に、閾値を小さくするように、かつ、基準時間を短くする(図20参照)。図20は、閾値情報のデータ構造を示す図である。
【0112】
変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値及び基準時間に変更した情報を反映させて更新する。
【0113】
ステップS24では、変更部50dが、識別情報に予め対応付けられた被写体の笑い声の音声パターンを認識したか否かを、音声認識部41へ問い合わせる。変更部50dは、被写体の笑い声の音声パターンを認識した旨の情報を音声認識部41から受け取った場合、検出しようとする表情に対応した音声パターンが音声認識部41により検知されたと判断して、処理をステップS25へ進める。変更部50dは、被写体の笑い声の音声パターンを認識した旨の情報を音声認識部41から受け取らなかった場合、検出しようとする表情に対応した音声パターンが音声認識部41により検知されなかったと判断して、処理をステップS26へ進める。
【0114】
ステップS25では、変更部50dが、識別情報に対応した被写体について、検出しようとする表情に達したと判断されやすくなるように、閾値及び基準時間を変更する。例えば、変更部50dは、識別情報に対応した被写体について、閾値を小さくするように、かつ、基準時間を短くする。変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値及び基準時間に変更した情報を反映させて更新する。
【0115】
ステップS26では、変更部50dが、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値及び基準時間の情報を取得する。また、変更部50dは、タイマ(図示せず)を参照して経過時間の情報を取得する。変更部50dは、経過時間と基準時間とを比較して、表情推定部50bが被写体の顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上であるか否かを判定する。すなわち、変更部50dは、経過時間が基準時間以上である(基準時間を経過した)と判定する場合、処理をステップS27へ進める。変更部50dは、経過時間が基準時間未満である(基準時間を経過していない)と判定する場合、処理をステップS28へ進める。
【0116】
ステップS27では、変更部50dが、識別情報に対応した被写体について、検出しようとする表情に達したと判断されやすくなるように、閾値を変更する。例えば、変更部50dは、識別情報に対応した被写体について、閾値を小さくする。変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値に変更した情報を反映させて更新する。また、変更部50dは、タイマ(図示せず)にアクセスして、経過時間をリセットするとともに新たにカウントさせ始める。
【0117】
ステップS28では、顔情報抽出部20bが、顔領域検出部20aにより検出された顔領域から、被写体の顔の構成要素の形状に関する他の顔情報を抽出する。すなわち、顔情報抽出部20bは、顔領域から、被写体の顔の特徴量を含む他の顔情報を抽出する。このステップS28の詳細は、上記のステップS12と同様である。
【0118】
ステップS29では、顔情報抽出部20bが、他の顔情報を抽出することに成功したか否かを判断する。
【0119】
例えば、顔情報抽出部20bは、取得された画像データの解像度不足により検出したい特徴点の全てが検出されていない場合であっても、例えば、2以上の特徴点が検出されていれば、他の顔情報を抽出することに成功したと判断する。
【0120】
顔情報抽出部20bは、他の顔情報を抽出することに成功したと判断した場合、処理をステップS31へ進め、他の顔情報を抽出することに成功していないと判断した場合、処理を終了する。
【0121】
ステップS31では、表情推定部50bが、顔情報選択部50aから基準顔情報を受け取り、画像処理部20の顔情報抽出部20bから他の顔情報を受け取る。表情推定部50bは、基準顔情報と他の顔情報との差分を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成する。
【0122】
例えば、表情推定部50bは、顔の個々の構成要素に対して基準顔情報に含まれる特徴量と他の顔情報に含まれる特徴量との差分を演算する。そして、表情推定部50bは、次の数式1を用いて、笑顔表情の度合い、すなわち、笑顔度を算出する。被写体の顔の個々の構成要素に対する基準顔情報と他の顔情報との差分をv1、v2、v3、・・・とするとき、表情推定部50bは、笑顔度を、
SumScore=ΣScorei
=Σg(wi、vi)・・・数式1
としてi=1〜Nについて合計して演算する。ここで、Nは顔の個々の構成要素を識別するための番号であり、wは各構成要素の重みであり、gは得点算出関数である。すなわち、表情推定部50bは、この笑顔度SumScoreを変化量情報として生成する。この笑顔度SumScoreは、例えば、0から100といった数値で表される。
【0123】
ここで、ユーザーのカメラ操作により特定シーン、つまり特定の表情だけを判定するのであれば上記所定得点による判定で良い。しかし、あらゆる表情から1つの表情を判定する場合は、例えば各表情毎の得点を算出して最も高い得点を算出した表情を、検出する対象の表情として判定する方法がある。また、他にも最終層を各表情としたニューラルネットワークを用いる方法や特登録02962549号公報のように隠れマルコフモデル(HMM)を用いて表情を判定する方法などがある。
【0124】
なお、表情推定部50bは、取得された画像データの解像度不足により検出したい特徴点の全てが検出されていない場合でも、算出された特徴量のみ用いて特徴量の変化量を算出し笑顔度を算出する。例えば笑顔の特徴量である距離710、711、712の内、距離710が算出できなかった場合は距離711、712のみ用いて笑顔度を算出する。また、表情推定部50bは、基準顔情報と他の顔情報との比を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成してもよい。
【0125】
ステップS32では、表情推定部50bが、基準顔情報と他の顔情報とを比較して、他の顔情報に対応した被写体の顔の表情を推定する。すなわち、表情推定部50bは、検出しようとする表情に達したか否かを判断する。ここで、表情推定部50bは、表情を推定し始めたことに応じて、タイマ(図示せず)を作動させ経過時間をカウントし始める。
【0126】
例えば、表情推定部50bは、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報を後述のメモリ52から受け取る。表情推定部50bは、変化量情報と閾値情報とに基づいて、変化量が閾値を超えたか否かを判定する。表情推定部50bは、変化量が閾値を超えたと判定した場合、対象とする被写体に対して、検出しようとする表情(例えば、笑顔)に達したと判断する。表情推定部50bは、変化量が閾値を超えていないと判定した場合、対象とする被写体に対して、検出しようとする表情に達していないと判断する。
【0127】
表情推定部50bは、検出しようとする表情に達したと判断する場合、処理をステップS33へ進め、検出しようとする表情に達していないと判断する場合、処理を終了する。
【0128】
ステップS33では、表情推定部50bが、メモリ52にアクセスして、目標とする表情に達した被写体の表情フラグをOFF状態からON状態へ書き換える。
【0129】
以上のように、表情推定部50bが被写体の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない時間が基準時間以上であるか否かを被写体ごとに判断している。これにより、笑って表情が大きく変わる人について迅速に笑顔の表情を検出することができる(図15参照)とともに、笑っても表情があまり変わらない人についても閾値が小さくなることにより笑顔の表情を検出することができる(図16参照)。この結果、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することができる。
【0130】
また、被写体の顔のサイズが変動したことに応じて、被写体の表情の変化量を正規化するのではなく、被写体の表情の変化を検出するための閾値を変更している。これにより、被写体の画像の解像度を低減する必要がなく、表情を推定する際に用いる顔の特徴点の抽出数が減少することを回避できるので、被写体の顔の表情を推定する精度が落ちることを抑制できる。そして、検出しようとする被写体の顔のサイズが、基準となる顔のサイズより大きければ閾値を大きくし、基準となる顔のサイズより小さければ閾値を小さくする(図17参照)。これにより、被写体の顔のサイズが変動したことに応じて、被写体の笑顔が誤検出されたり検出しそこなうことを防ぐことができるので、被写体の顔の表情を推定する精度を向上できる。すなわち、撮影すべき画像における複数の被写体の顔のサイズが大きく異なる場合でも各被写体の表情を精度良く検出することができる。
【0131】
さらに、検出しようとする被写体の顔のサイズが、基準となる顔のサイズより大きければ基準時間を長くし、基準となる顔のサイズより小さければ基準時間を短くするように、基準時間を変更する。これにより、被写体の顔のサイズが変動したことに応じて、必要以上に早く閾値を下げて被写体の笑顔が誤検出されたり、必要以上に遅く閾値を下げて被写体の笑顔が検出されるまでの時間が長くなることを抑制できる。
【0132】
また、検出しようとする表情に対応した音声パターンが音声認識部41により検知された場合、経過時間が基準時間に達していなくても閾値を小さくするように変更している(図18参照)。これにより、笑っても表情があまり変わらない人について閾値が小さくなることにより笑顔の表情を検出することができる。この結果、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することができる。
【0133】
さらに、検出しようとする表情に対応した音声パターンが音声認識部41により検知された場合、基準時間を短くするように基準時間を変更する。これにより、被写体が笑っている可能性が高い場合に、必要以上に遅く閾値を下げて被写体の笑顔が検出されるまでの時間が長くなることを抑制できる。
【0134】
次に、本発明の実施形態に係る画像処理装置100のにより、被写体の表情を検出するための閾値が変更される際の具体的な動作例を、図15〜図18を用いて説明する。
【0135】
図15は、笑って表情が大きく変わる人について表情を検出するケースを示す図である。被写体Aの笑顔の表情は、変化量が十分に大きいため、経過時間1の時点ですぐに笑顔の閾値に達し、自動的に撮影処理が開始された。
【0136】
図16は、笑っても表情があまり変わらない人について表情を検出するケースを示す図である。被写体Bの笑顔の表情は、変化量が小さいため、経過時間1ではまだ笑顔の閾値に達していない。そのため、閾値を2だけ減算し、8にした。次に、経過時間2で再度表情の評価を行ったが、まだ笑顔の閾値に達していない。そのため、閾値をさらに3だけ減算し、5にした。次に、経過時間3で再度表情の評価を行ったところ、変化量自体は変わっていないが、閾値が下がったことにより、笑顔の閾値に達することが出来た。これにより、自動的に撮影処理が開始された。
【0137】
図17は、撮影すべき画像における複数の被写体の顔のサイズが大きく異なるケースを示す図である。被写体Aの顔のサイズは、基準となる顔のサイズより小さいので、閾値を、デフォルトの値「10」から5だけ減算し5にした。被写体Bの顔のサイズは、基準となる顔のサイズに等しいので、閾値を、デフォルトの値「10」にした。被写体Bの顔のサイズは、基準となる顔のサイズより大きいので、閾値を、デフォルトの値「10」に5だけ加算し15にした。
【0138】
図17に示されるように、解像度が一定であれば、被写体の顔のサイズが小さくなるにしたがって、顔のサイズに対する表情の相対的な変化量が一定であっても、表情の絶対的な変化量(画素数)が小さくなる。これにより、被写体の顔のサイズが小さくなるしたがって、笑顔の閾値を小さくすることにより、被写体の笑顔を検出しそこなうことを防ぐことができる。また、解像度が一定であれば、被写体の顔のサイズが大きくなるにしたがって、顔のサイズに対する表情の相対的な変化量が一定であっても、表情の絶対的な変化量(画素数)が大きくなる。これにより、被写体の顔のサイズが大きくなるしたがって、笑顔の閾値を大きくすることにより、被写体の笑顔を誤検出することを防ぐことができる。 図18は、笑っても表情があまり変わらない人について表情を検出するケースを示す図である。被写体Dの笑顔の表情は、変化量が小さいため、経過時間1ではまだ笑顔の閾値に達していない。この時、カメラ付属の不図示のマイク介して笑い声を検出し、不図示の音声認識プログラムを使って、笑い声であることを認識し、笑顔の閾値を5だけ減算して5にする。次に、経過時間2で再度表情の評価を行ったところ、変化量自体は変わっていないが、閾値が下がったことにより、笑顔の閾値に達することが出来た。これにより、自動的に撮影処理が開始された。なお、本発明は、顔領域を検出することが前提となるため、音声だけでシャッターを切るシステムとは異なる。
【0139】
なお、変更部50dは、経過時間が基準時間以上であるかどうか判断せずに、被写体の顔のサイズの変化に応じて閾値を変更したり、被写体の笑い声等が認識されたことに応じて閾値を変更しても良い。この場合、図2に示す検出処理S7では、図4に示すステップS26,S27が省略されても良い。すなわち、図21に示すように、ステップS23,S24の代わりにステップS123,S125が行われる。
【0140】
ステップS123では、変更部50dが、識別情報に対応した被写体について、閾値を変更する。
【0141】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが大きい場合に、閾値を大きくする。
【0142】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが小さい場合に、閾値を小さくする。
【0143】
変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値に変更した情報を反映させて更新する。
【0144】
ステップS125では、変更部50dが、識別情報に対応した被写体について、閾値を変更する。例えば、変更部50dは、識別情報に対応した被写体について、閾値を小さくする。変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値に変更した情報を反映させて更新する。
【0145】
次に、上述した各実施形態の機能を実現するためのプログラムについて説明する。
【0146】
上述した各実施形態の機能を実現するように各種のデバイスを動作させ、その各種のデバイスと接続された装置あるいはシステム内のコンピュータに対して上述した各実施形態の機能を実現させるソフトウェアのプログラムコード(プログラム)を供給する。
【0147】
そして、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に(ソフトウェア的に又はハードウェア的に)格納されたプログラムにしたがって上記の各種のデバイスを動作させるようにしたものも、本発明の範疇に含まれる。
【0148】
また、この場合、上記のソフトウェアのプログラム自体が上述した実施形態の機能を実現することになる。
【0149】
また、そのプログラム自体、及びそのプログラムのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムを格納した記憶媒体も、本発明の範疇に含まれる。
【0150】
かかるプログラムを記憶する記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0151】
また、供給されたプログラムをコンピュータが実行することにより、上述の実施形態の機能が実現されるだけではない。
【0152】
例えば、そのプログラムがコンピュータにおいて稼動しているOS(オペレーティングシステム)あるいは他のアプリケーション等と協働して上述の実施形態の機能を実現させる場合にも、かかるプログラムは、本発明の範疇に含まれる。
【0153】
さらに、供給されたプログラムは、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納される。
【0154】
そして、そのプログラムの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合にも、かかるプログラムは、本発明の範疇に含まれる。
【図面の簡単な説明】
【0155】
【図1】本発明の実施形態に係る画像処理装置100の構成図。
【図2】画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを示すフローチャート。
【図3】被写体ごとの準備処理の流れを示すフローチャート。
【図4】被写体ごとの検出処理の流れを示すフローチャート。
【図5】本発明の実施形態における検出する特徴点を示す図。
【図6】本発明の実施形態における検出範囲を示す図。
【図7】本発明の実施形態における検出範囲を示す図。
【図8】本発明の実施形態における検出範囲を示す図。
【図9】本発明の実施形態における検出範囲を示す図。
【図10】本発明の実施形態における検出範囲を示す図。
【図11】本発明の実施形態における検出範囲を示す図。
【図12】本発明の実施形態における特徴量の時間的変化を示す図。
【図13】本発明の実施形態における特徴量を示す図。
【図14】本発明の実施形態における特徴量を示す図。
【図15】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図16】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図17】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図18】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図19】閾値情報のデータ構造を示す図。
【図20】閾値情報のデータ構造を示す図。
【図21】被写体ごとの検出処理の流れを示すフローチャート(変形例)。
【符号の説明】
【0156】
17 取得部
20a 顔領域検出部
20b 顔情報抽出部
20c 識別部
50a 顔情報選択部
50b 表情推定部
50c 制御部
50d 変更部
52 メモリ
100 画像処理装置
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、及び画像処理プログラムに関する。
【背景技術】
【0002】
近年、顔の表情、特に人物の顔の表情を検出する技術が開発されつつある。一般的に、カメラで人物を撮影する際には、被写体である人物の表情が笑顔などの良い表情のタイミングで撮影することが望まれることが多い。そのため、デジタルカメラへの表情検出技術の応用が検討されている。
【0003】
特許文献1に示された技術では、被写体の表情を検出するのに先立って、予め、その被写体の無表情の顔の画像信号をウェーブレット変換することにより得られる帯域ごとの周波数信号の平均電力を、基準となる平均電力として求めておく。そして、その被写体の表情を検出するための画像信号をウェーブレット変換して各帯域の周波数信号を生成し、その帯域ごとの周波数信号の平均電力を求める。この平均電力と基準となる平均電力との差分を演算することにより、その被写体の表情を検出している。特許文献1によれば、画像信号をウェーブレット変換しているので、画像内で被写体の顔が移動しても、その被写体の表情を精度良く検出することができるとされている。
【0004】
特許文献2に示された技術では、被写体の表情を検出するのに先立って、予め、その被写体の無表情の顔の画像データから所定の特徴点(眼元、口の端など)を抽出した後、特徴点間の距離などを基準となる情報として算出する。そして、その被写体の表情を検出するための画像データから所定の特徴点を抽出した後、特徴点間の距離などの情報を求める。この情報と基準となる情報との差分を演算することにより、その被写体の表情を検出している。さらに、その被写体の顔のサイズが変動したことに応じて、演算された差分を正規化している。特許文献2によれば、画像内で被写体の顔のサイズが変動した場合でも、その被写体の表情を精度良く検出することができるとされている。
【0005】
特許文献3に示された技術では、被写体の表情を検出するための画像データから左右目尻と口の両端点を検出した後、この4点から作成される矩形の長辺と短辺との比を求める。そして、この比が設定された範囲内に入っているか否かを判定することにより、その被写体の表情を検出している。この技術によれば、基準となる顔の情報を取得する必要がないので、その被写体の表情を簡便かつ迅速に検出することができる。
【0006】
特許文献4に示された技術では、各特徴部位から眉の動きなどの表情要素を抽出して、抽出された表情要素の濃淡パターンを示す表情要素情報を生成する。その表情要素情報に基づいて、表情要素とその変位方向とを示す表情要素コードを算出する。そして、表情要素コードを所定の変換式で演算して情緒の量を算出している。この技術によれば、その被写体の表情に加えて情緒を検出することができる。
【特許文献1】特許第02840816号公報
【特許文献2】特開2005−56388号公報
【特許文献3】特開2005−266984号公報
【特許文献4】特許第2573126号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
特許文献2、3に示された技術では、どの被写体に対しても同様な閾値を用いて、被写体の表情が、検出しようとする表情に達したか否かが判断されている。また、特許文献1、4には、被写体の表情が、検出しようとする表情に達したか否かを判断するための具体的な技術が開示されていない。しかし、笑顔などの人の表情には個人差があり、笑って表情が大きく変わる人もいれば、あまり変わらない人もいる。すなわち、無表情の顔に対して、検出しようとする顔における所定の特徴点(眼元、口の端など)間の距離の変化量が閾値を超えていなくても、被写体によっては検出しようとする表情(例えば笑顔)に達している場合がある。この場合、被写体の表情を精度良く検出することができない可能性がある。特に、撮影すべき画像における複数の被写体の間で表情の個人差が大きい場合に、各被写体の表情を精度良く検出することができない可能性がある。
【0008】
特許文献2に示された技術では、上述のように、被写体の顔のサイズが変動したことに応じて、被写体の表情の変化量として演算された差分を正規化している。また、特許文献1、3、4には、被写体の顔のサイズが変動したことに対応するための技術が開示されていない。ここで、演算された差分を正規化する際に画像の解像度を低減することがある。この場合、表情を推定する際に用いる顔の特徴点の抽出数が減少し、被写体の顔の表情を推定する精度が落ちる可能性がある。特に、撮影すべき画像における複数の被写体の間で顔のサイズが大きく異なる場合に、各被写体の表情を精度良く検出することができない可能性がある。
【0009】
本発明の第1の目的は、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することにある。
【0010】
本発明の第2の目的は、撮影すべき画像における複数の被写体の顔のサイズが大きく異なる場合でも各被写体の表情を精度良く検出することにある。
【課題を解決するための手段】
【0011】
本発明の第1側面に係る画像処理装置は、複数の被写体を含む画像データを処理するための画像処理装置であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段により抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれについて、前記表情推定手段が前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段とを備えたことを特徴とする。
【0012】
本発明の第2側面に係る画像処理装置は、複数の被写体を含む画像データを処理するための画像処理装置であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれについて、前記閾値を変更する変更手段とを備え、前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更することを特徴とする。
【0013】
本発明の第3側面に係る画像処理装置は、複数の被写体を含む画像データを処理するための画像処理装置であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、前記複数の被写体のそれぞれが発する音声を認識する音声認識手段と、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段とを備えたことを特徴とする。
【0014】
本発明の第4側面に係る画像処理方法は、複数の被写体を含む画像データを処理するための画像処理方法であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、前記複数の被写体のそれぞれについて、前記表情推定ステップで前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップとを備えたことを特徴とする。
【0015】
本発明の第5側面に係る画像処理方法は、複数の被写体を含む画像データを処理するための画像処理方法であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、前記複数の被写体のそれぞれについて、前記閾値を変更する変更ステップとを備え、前記顔領域検出ステップでは、前記顔情報選択ステップで前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、前記変更ステップでは、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更することを特徴とする。
【0016】
本発明の第6側面に係る画像処理方法は、複数の被写体を含む画像データを処理するための画像処理方法であって、異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、前記複数の被写体のそれぞれが発する音声を認識する音声認識ステップと、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識ステップで認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップとを備えたことを特徴とする。
【0017】
本発明の第7側面に係る画像処理プログラムは、上記の画像処理方法の各工程を画像処理装置に実行させることを特徴とする。
【発明の効果】
【0018】
本発明によれば、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することができる。あるいは、本発明によれば、撮影すべき画像における複数の被写体の顔のサイズが大きく異なる場合でも各被写体の表情を精度良く検出することができる。
【発明を実施するための最良の形態】
【0019】
本発明の実施形態に係る画像処理装置100について、図1を参照して説明する。図1は、本発明の実施形態に係る画像処理装置100の構成図である。
【0020】
画像処理装置100は、複数の被写体を撮像して得られた画像データを処理するための装置である。画像処理装置100は、例えば、デジタルカメラ又はビデオカメラである。画像処理装置100は、以下の構成要素を備える。
【0021】
保護手段102は、例えばバリアである。保護部102は、外部と撮影レンズ10との間に配置され、撮影レンズ10を保護する。シャッター12は、撮影レンズ10と後述の光電変換部14との間に配置され、撮影レンズ10から光電変換部14へ導かれる光量を絞るための絞り機能を有する。
【0022】
取得部17は、光電変換部14、読み出し部15、及びA/D変換部16を含む。光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。
【0023】
ここで、取得部17は、異なる複数のタイミングで複数の被写体を撮像して、複数の画像データを取得する。すなわち、光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。これらの動作が異なる複数のタイミングで行われて、複数の画像データが取得される。
【0024】
タイミング発生部18は、メモリ制御部22及びシステム制御部50により制御されて、光電変換部14、読み出し部15、A/D変換部16、後述のD/A変換器26にクロック信号や制御信号を供給する。
【0025】
画像処理部20は、A/D変換部16からのデータ或いはメモリ制御部22からのデータに対して、所定の画素補間処理や色変換処理を行う。
【0026】
また、画像処理部20は、A/D変換部16等から受け取った画像データを用いて所定の演算処理を行い、得られた演算結果をシステム制御部50へ供給する。これにより、システム制御部50は、露光制御部40、測距制御部42に対して制御を行い、TTL(スルー・ザ・レンズ)方式のAF(オートフォーカス)処理、AE(自動露出)処理、EF(フラッシュプリ発光)処理を行っている。
【0027】
さらに、画像処理部20は、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてTTL方式のAWB(オートホワイトバランス)処理も行っている。
【0028】
また、画像処理部20は、顔領域検出部20a、顔情報抽出部20b、及び識別部20cを含む。
【0029】
顔領域検出部20aは、取得部17により取得された複数の画像データのそれぞれにおいて、各被写体の顔領域を検出する。顔領域検出部20aは、各被写体の顔のサイズに関する情報を生成する。ここで、また、各被写体の顔のサイズに関する情報のうち、顔情報選択部50aにより各被写体の基準顔情報が選択された後に顔領域検出部20aにより生成された情報を、特に、検出顔サイズ情報と呼ぶことにする。
【0030】
例えば、顔領域を検出する方法には、ニューラルネットワークやサポートベクターマシンに代表される学習を用いた方法がある。また、目や鼻といった物理的な形状の特徴のある部位を画像領域からテンプレートマッチングで抽出する方法がある。他にも、P.Viola and M.Jonesらの次の文献に開示された方法がある。”Rapid Object Detection Using a Boosted Cascade of Simple Features,”in Proc. Of CVPR, vol.1, pp.511-518, December, 2001。更に、特開平10−232934号公報や特開2000−48184号公報に示されるように、肌の色や目の形といった画像特徴量を検出し統計的手法を用いて解析する方法がある。本実施形態においては、顔画像と非顔画像を用いてニューラルネットワークで学習させることにより顔識別器を構築する方法を用いる。また、ニューラルネットワークで学習させた顔識別器を使用すると、顔が存在する付近のニューロンは発火状態となる。このため、ニューロンの発火数や発火強度を用いて顔領域を検出する画素位置に加えて顔検出信頼度などを算出するようにしても良い。顔検出信頼度とは、検出された顔領域の画素位置がどの程度信頼できるかという程度を表す値であり、顔検出信頼度が高い値であればあるほど、顔が存在する確立が高いことを示している。例えば、最大出力値のニューロン位置を、顔領域が検出された画素位置とする。そして、最大出力値に対して所定の関数を通すことによって所定の値(例えば、0〜1)に正規化し、最大出力値から得られる値(例えば、0〜1)をそのまま顔検出信頼度とする方法がある。
【0031】
なお、顔検出信頼度は、固定閾値以上のニューロン数が所定数N1以上であるならば顔検出信頼度を1、所定数N2以上であるならば顔検出信頼度を0.6、それ以外は0とするような方法もある。また、固定閾値以上のニューロン数を所定の関数を通すことによって顔検出信頼度を算出する方法でも良い。あるいは、ニューロン値の最大値から上位N3%のニューロン出力値の和を所定の関数を通すことによって顔検出信頼度を算出する方法など他の方法により、顔領域が検出された画素位置や顔検出信頼度が求められても良い。
【0032】
顔情報抽出部20bは、顔領域検出部20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。顔情報は、例えば、口や目や眉毛などの具体的な形状や座標に関する情報を含み、あるいは、例えば、鼻の端点、鼻穴の中心点、耳の端点などの形状や座標に関する情報を含む。ここで、顔情報は、それぞれの端点や中心点あるいは目の黒点などを入力された顔の画像から、例えばニューラルネットワークや空間フィルタを用いたエッジ検出などの方法を用いて算出することにより抽出することができる。顔領域検出部20aが顔領域を抽出する際には、口や目などの顔の構成要素としての条件を満たす形状が存在するか否かという判断を行っている。つまり、笑っているときの大きく開いた口でも、黙っているときの閉じた口でも、口という条件さえ満たせばその具体的な形状までは問わない。これに対し、顔情報抽出部20bが顔情報を抽出する際には、同じ口であっても、口角の位置や口の開き具合などの具体的な形状や顔領域における座標の情報までも含めて抽出される。
【0033】
また、識別部20cは、各被写体の大まかな特徴(顔の輪郭、顔全体における目や鼻などの相対的な位置関係など)の情報を顔領域検出部20aから受け取る。識別部20cは、各被写体の大まかな特徴の情報に基づいて、取得部17により取得された複数の画像データのそれぞれにおいて複数の被写体のそれぞれを識別する。また、識別部20cは、各被写体の大まかな特徴と各被写体のID(例えば、図19に示す「被写体A」など)とを対応付けて、各被写体を識別するための識別情報を生成する。識別部20cは、各被写体の識別情報を後述のメモリ52へ供給する。その後、識別部20cは、その識別情報に応じて、表情を推定するために取得された画像データにおいて、各被写体を識別する。
【0034】
メモリ制御回路22は、A/D変換部16、タイミング発生部18、画像処理部20、画像表示メモリ24、D/A変換器26、メモリ30、圧縮伸長部32を制御する。メモリ制御回路22は、A/D変換部16や画像処理部20から受け取ったデータを画像表示メモリ24或いはメモリ30に書き込む。
【0035】
画像表示メモリ24は、表示用の画像データを記憶する。D/A変換器26は、表示用の画像データをメモリ制御部22経由で画像表示メモリ24から受け取り、表示用の画像データをアナログ信号へD/A変換する。
【0036】
第1の報知部28は、D/A変換器26から受け取ったアナログ信号に応じた画像を表示する。第1の報知部28は、例えば、TFT−LCDを含む。第1の報知部28は、画像を逐次表示して、電子ファインダ機能を実現することが可能である。
【0037】
ここで、第1の報知部28は、システム制御部50の指示により任意に表示をON/OFFすることが可能であり、表示をOFFにした場合に画像処理装置100の電力消費を大幅に低減することが出来る。
【0038】
メモリ30は、撮影した静止画像や動画像を格納する。メモリ30は、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶量を備えている。これにより、複数枚の静止画像を連続して撮影する連射撮影やパノラマ撮影の場合にも、高速かつ大量の画像書き込みをメモリ30に対して行うことが可能となる。また、メモリ30はシステム制御部50の作業領域としても使用することが可能である。
【0039】
圧縮伸長部32は、適応離散コサイン変換(ADCT)等により画像データを圧縮伸長する。圧縮伸長部32は、メモリ30に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータをメモリ30に書き込む。
【0040】
露光制御部40は、絞り機能を備えるシャッター12を制御する。露光制御部40は、フラッシュ48と連携することにより、フラッシュ調光機能を実現することができる。
【0041】
測距制御部42は、撮影レンズ10のフォーカシングを制御する。ズーム制御部44は、撮影レンズ10のズーミングを制御する。バリア制御部46は、保護部102の動作を制御する。フラッシュ48は、AF補助光の投光機能、フラッシュ調光機能を有する。
【0042】
外部マイク130は、各被写体が発生する音声を検知して音声信号を生成する。外部マイク130は、指向性を有することができ、指向性制御信号に応じて特定の方向からの音声を検知する。
【0043】
音声認識部41は、予め取得された画像データから特定された被写体の方向に基づいて、検知すべき被写体の方向を示す指向性制御信号を生成して外部マイク130へ供給する。音声認識部41は、検知すべき被写体の方向から発せられた音声に対する音声信号を外部マイク130から受け取る。音声認識部41は、図示しない音声認識プログラムを用いて、音声信号が示す音声パターンと、検出しようとする表情(例えば、笑顔)に予め対応づけられた所定の音声パターンとが一致するか否かを判断する。音声認識部41は、音声信号が示す音声パターンと、所定の音声パターンとが一致すると判断する場合、その被写体が発する音声パターンが、検出しようとする表情に対応する音声(例えば、笑い声)の音声パターンであると認識する。音声認識部41は、各被写体について、検出しようとする表情に対応する音声(例えば、笑い声)の音声パターンを認識した旨の情報を後述の変更部50dへ供給する。
【0044】
なお、所定の音声パターンは、実験的に求めておけばよい。例えば、予め複数の人物の音声(例えば、笑い声)を検知してそれぞれの音声パターンを取得しておき、それらを統計的に解析することにより、所定の音声パターンを求めておけばよい。
【0045】
システム制御部50は、デジタルカメラ100全体を制御する。例えば、システム制御部50は、取得部17により取得された画像データに対して画像処理部20が演算した演算結果に基づき、露光制御部40や測距制御部42を制御する。
【0046】
また、システム制御部50は、顔情報選択部50a、表情推定部50b、制御部50c、及び変更部50dを含む。顔情報選択部50aは、顔情報抽出部20bにより抽出された各被写体の複数の顔情報から、各被写体の顔の表情を推定するための基準となる基準顔情報を選択する。基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。ここで、顔情報選択部50aは、例えば、所定の期間、口の形状等の変化量が所定の閾値を超えなかった場合に、無表情状態であると判定して、その判定結果に応じた顔情報を基準顔情報として選択する。
【0047】
なお、顔情報選択部50aは、無表情状態を判定する際に、口以外の構成要素の形状を使用しても構わない。例えば、顔情報選択部50aは、更に顔情報として眼の開閉度状態を用い、目の大きさの変化などを使用して眼開きの状態タイミングに基づいて基準顔情報を選択しても良い。また、顔情報選択部50aは、瞳画像をニューラルネットワークで学習させ、固定閾値以上の瞳ニューロン数から眼の開閉状態を判定するようにしても良い。
【0048】
表情推定部50bは、顔情報抽出部20bにより抽出された他の顔情報の、基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための変化量に対する閾値とを被写体ごとに比較して、各被写体の顔の表情を推定する。すなわち、表情推定部50bは、後述の第2の指示(撮影指示)を第2シャッタースイッチ(SW2)64から受け取る。表情推定部50bは、顔情報選択部50aから基準顔情報を受け取り、画像処理部20の顔情報抽出部20bから各被写体の他の顔情報を受け取る。表情推定部50bは、撮影指示に応じて、各被写体の表情を推定し始める。すなわち、表情推定部50bは、各被写体について、基準顔情報と他の顔情報との差分を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成する。また、表情推定部50bは、他の顔情報に対応した識別情報を識別部20cから受け取る。表情推定部50bは、識別情報が示す被写体について、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報を後述のメモリ52から受け取る。表情推定部50bは、変化量情報と閾値情報とに基づいて、変化量が閾値を超えたか否かを判定する。これにより、表情推定部50bは、各被写体の顔が、目標とする表情に達したか否かを判断する。
【0049】
制御部50cは、取得部17及びカードコントローラ(記録手段)90を制御する。制御部50cは、検出しようとする表情に達したと各被写体について判断した旨の情報を表情推定部50bから受け取る。この場合、制御部50cは、取得部17により取得された複数の被写体を含む画像データをカードコントローラ90が外部記録媒体120へ記録するように、取得部17及びカードコントローラ90などを制御する。すなわち、制御部50cは、撮影処理が行われるように各部を制御する。
【0050】
メモリ(記憶手段)52は、システム制御部50の動作用の定数、変数等を記憶する。また、メモリ52は、予め設定情報として後述の入力部75から受け取った閾値(デフォルト値)と基準時間(デフォルト値)と基準顔サイズ情報とを記憶する。基準顔サイズ情報は、被写体の顔のサイズを判断する際の基準となる顔のサイズを示すように予め定められた情報である。メモリ52は、各被写体の識別情報を識別部20cから受け取った際に、各被写体の識別情報と閾値(デフォルト値)と基準時間(デフォルト値)とを対応付けて閾値情報として記憶する。閾値情報は、各被写体の識別情報と閾値と基準時間とが対応付けられた情報である(図19参照)。
【0051】
第2の報知部54は、システム制御部50でのプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等を報知する。第2の報知部54は、デジタルカメラ100の後述の操作部70近辺の視認し易い位置に単数或いは複数個所設置される。第2の報知部54は、例えば、液晶表示装置(LCD)、LED、発音素子(スピーカ)等の組み合わせにより構成されている。
【0052】
また、第2の報知部54は、その一部の機能が光学ファインダ104内に設置されている。
【0053】
第2の報知部54は、例えば、シングルショット/連写撮影表示、セルフタイマー表示、圧縮率表示、記録画素数表示、記録枚数表示、残撮影可能枚数表示、シャッタースピード表示、絞り値表示、及び露出補正表示などをLCD等に表示する。あるいは、第2の報知部54は、例えば、フラッシュ表示、赤目緩和表示、マクロ撮影表示、ブザー設定表示、時計用電池残量表示、電池残量表示、エラー表示、及び複数桁の数字による情報表示などをLCD等に表示する。あるいは、第2の報知部54は、例えば、外部記録媒体120の着脱状態表示、通信I/F動作表示、及び日付け・時刻表示等をLCD等に表示する。
【0054】
また、第2の報知部54は、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、及び露出補正表示等を光学ファインダ104内に表示する。
【0055】
不揮発性メモリ56は、電気的に消去・記録可能なメモリであり、画像処理プログラムなどのプログラムを記憶する。不揮発性メモリ56は、例えば、EEPROM等が用いられる。
【0056】
入力部75は、システム制御部50の各種の動作指示を受け付ける。スイッチやダイアル、タッチパネル、視線検知によるポインティング、音声認識装置等の単数或いは複数の組み合わせを介して、所定の指示を受け付ける。この入力部75は、モードダイアルスイッチ60、シャッターボタン61、第1シャッタースイッチ62、第2シャッタースイッチ64、画像表示ON/OFFスイッチ66、及び操作部70を含む。
【0057】
モードダイアルスイッチ60は、電源オフ、自動撮影モード、撮影モード、パノラマ撮影モード、再生モード、マルチ画面再生・消去モード、PC接続モード等の各機能モードを切り替え設定するための指示を受け付ける。
【0058】
シャッターボタン61は、静止画撮影するための指示(撮影指示)などをユーザから受け付ける。例えば、シャッターボタン61は、半押しされることにより、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等するための第1の指示を受け付ける。例えば、シャッターボタン61は、全押しされることにより、静止画撮影等するための第2の指示を受け付ける。
【0059】
第1シャッタースイッチ(SW1)62は、第1の指示をシャッターボタン61から受け取るとON状態になり、ON状態である旨の情報をシステム制御部50へ供給する。システム制御部50は、第1シャッタースイッチ62がON状態であることに応じて、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作開始を各部へ指示する。
【0060】
第2シャッタースイッチ(SW2)64は、第2の指示をシャッターボタン61から受け取るとON状態になり、ON状態である旨の情報をシステム制御部50へ供給する。これにより、システム制御部50は、一連の撮影処理の動作開始を指示する。一連の撮影処理では、光電変換部14から読み出した信号をA/D変換部16、メモリ制御部22を介してメモリ30に画像データを書き込む露光処理、画像処理部20やメモリ制御部22での演算を用いた現像処理を行う。そして、一連の撮影処理では、メモリ30から画像データを読み出し、圧縮伸長部32で圧縮を行い、カードコントローラ90及びインタフェース91を介して外部記録媒体120へ画像データを書き込む記録処理を行う。
【0061】
画像表示ON/OFFスイッチ66は、第1の報知部28のON/OFFを設定するための指示を受け付ける。この指示により、システム制御部50は、光学ファインダー104を用いて撮影を行う際に、第1の報知部28への電流供給を遮断して、省電力化を図ることができる。
【0062】
クイックレビューON/OFFスイッチ68は、撮影直後に撮影した画像データを自動再生するクイックレビュー機能を設定するための指示を受け付ける。例えば、第1の報知部28をOFFとした場合におけるクイックレビュー機能の設定を受け付けることができるものとする。
【0063】
操作部70は、各種ボタンやタッチパネル等からなる。操作部70は、メニューボタン、マクロボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写/連写/セルフタイマー切り替えボタン、メニュー移動+(プラス)ボタン、メニュー移動−(マイナス)ボタンを含む。操作部70は、再生画像移動+(プラス)ボタン、再生画像−(マイナス)ボタン、撮影画質選択ボタン、露出補正ボタン、日付/時間設定ボタン、ブラケットモードの選択ボタン等を含む。
【0064】
電源制御部80は、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成されており、電池の装着の有無、電池の種類、電池残量の検出を行う。電源制御部80は、検出結果及びシステム制御部50の指示に基づいてDC-DCコンバータを制御し、必要な電圧を必要な期間、外部記録媒体120を含む各部へ供給する。
【0065】
コネクタ82は、電源制御部80に接続されている。コネクタ84は、電源86に接続されている。電源86は、例えば、アルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等である。
【0066】
カードコントローラ(記録手段)90は、インタフェース91を介して、メモリカード等の外部記録媒体120とデータの送受信を行う。例えば、カードコントローラ90は、画像データを外部記録媒体120へ記録する。インタフェース91は、メモリカード等の外部記録媒体120とカードコントローラ90とのインタフェースとして機能する。コネクタ92は、メモリカード等の外部記録媒体120が接続される。記録媒体着脱検知部98は、コネクタ92に外部記録媒体120が装着されているか否かを検知する。
【0067】
なお、記録媒体を取り付けるインタフェース及びコネクタは、2以上の系統数であってもよい。また、インタフェース及びコネクタは、異なる規格のものが組み合わせされていても構わない。インタフェース及びコネクタは、半導体メモリカード等の規格に準拠したものを用いて構成して構わない。この場合、各種通信カードを接続することにより、他のコンピュータやプリンタ等の周辺機器との間で画像データや画像データに付属した管理情報を転送し合うことができる。各種通信カードは、例えば、LANカードやモデムカード、USBカード、IEEE1394カード、P1284カード、SCSIカード、PHS等の通信カード等である。
【0068】
光学ファインダ104は、撮影を行う際に被写体を確認するために用いられる。光学ファインダー104を用いれば、第1の報知部28による電子ファインダー機能を使用すること無しに撮影を行うことが可能である。また、光学ファインダー104には、第2の報知部54により表示される情報の一部、例えば、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、露出補正表示などに関する情報が表示される。
【0069】
外部記録媒体120は、コネクタ92に着脱可能に接続される。外部記録媒体120は、例えば、メモリカード等である。
【0070】
次に、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを、図2に示すフローチャートを用いて説明する。図2は、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを示すフローチャートである。
【0071】
ステップS1では、入力部75が、笑顔撮影モードを選択するための指示を受け付ける。この笑顔撮影モードは、複数の被写体の笑顔を検出した際に自動的に撮影が行われる撮影モードである。取得部17は、異なる複数のタイミングで複数の被写体を撮像して得られた画像データを取得する。
【0072】
すなわち、光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。これらの動作が異なる複数のタイミングで行われて、複数の画像データが取得される。
【0073】
ステップS2では、入力部75が、顔領域検出を行うための指示をユーザから受け付け、その指示を顔領域検出部20aへ供給する。顔領域検出部20aは、その指示に応じて、取得部17により取得された複数の画像データのそれぞれにおいて、各被写体の顔領域を検出する。顔領域検出部20aは、検出された各被写体の顔領域に関する情報をシステム制御部50へ供給する。
【0074】
ステップS3では、準備処理が行われる。準備処理の詳細に関しては後述する。
【0075】
ステップS4では、システム制御部50が、表情を検出すべきであるか否かを判断する。
【0076】
例えば、システム制御部50は、撮影指示を入力部75から受け取った場合、表情を検出すべきであると判断する。システム制御部50は、撮影指示を入力部75から受け取らなかった場合、表情を検出すべきでないと判断する。すなわち、システム制御部50は、撮影指示に応じて、表情を検出すべきか否かを判断する。
【0077】
システム制御部50は、表情を検出すべきであると判断する場合、処理をステップS5へ進め、表情を検出すべきでないと判断する場合、処理をステップS1へ進める。
【0078】
ステップS5では、取得部17が、複数の被写体の顔の表情を推定するために、複数の被写体を撮像して得られた画像データを取得する。
【0079】
すなわち、光電変換部14は、複数の被写体の光学像を光電変換して画像信号を生成する。読み出し部15は、光電変換部14から画像信号を読み出す。A/D変換部16は、読み出し部15により読み出された画像信号をA/D変換して画像データを生成する。
【0080】
ステップS6では、顔領域検出部20aが、取得部17により取得された複数の画像データのそれぞれにおいて、各被写体の顔領域を検出する。顔領域検出部20aは、各被写体の顔のサイズに関する検出顔サイズ情報を生成する。顔領域検出部20aは、検出された各被写体の顔領域に関する情報と、検出顔サイズ情報とをシステム制御部50へ供給する。
【0081】
ステップS7では、検出処理が行われる。検出処理の詳細に関しては後述する。
【0082】
ステップS8では、システム制御部50が、撮影すべきであるか否かを判断する。
【0083】
例えば、システム制御部50は、表情フラグがONされた被写体の数が所定数以上である場合、撮影すべきであると判断し、表情フラグがONされた被写体の数が所定数未満である場合、撮影すべきでないと判断する。
【0084】
システム制御部50は、撮影すべきであると判断する場合、処理をステップS9へ進め、撮影すべきでないと判断する場合、処理をステップS10へ進める。
【0085】
ステップS9では、システム制御部50が、一連の撮影処理の動作開始を指示する。一連の撮影処理では、撮像素子14から読み出した信号をA/D変換器16、メモリ制御部22を介して記憶部30に画像データを書き込む露光処理、画像処理部20やメモリ制御部22での演算を用いた現像処理を行う。そして、一連の撮影処理では、メモリ30から画像データを読み出し、圧縮伸長部32で圧縮を行い、カードコントローラ90及びインタフェース91を介して外部記録媒体120へ画像データを書き込む記録処理を行う。
【0086】
ステップS10では、システム制御部50が、笑顔撮影モードの処理を終了すべきか否かを判断する。
【0087】
例えば、システム制御部50は、検出処理(ステップS7)において他の顔情報を抽出することに成功していないと判断する場合、笑顔撮影モードの処理を終了すべきでないと判断する。システム制御部50は、検出処理(ステップS7)において他の顔情報を抽出することに成功していると判断する場合、笑顔撮影モードの処理を終了すべきであると判断する。
【0088】
例えば、システム制御部50は、撮影モードを笑顔撮影モード以外の撮影モードへ変更するための指示を受け取った場合、笑顔撮影モードの処理を終了すべきであると判断する。システム制御部50は、撮影モードを笑顔撮影モード以外の撮影モードへ変更するための指示を受け取らなかった場合、笑顔撮影モードの処理を終了すべきでないと判断する。
【0089】
あるいは、例えば、システム制御部50は、笑顔撮影モードを終了すべき指示を受け取った場合、笑顔撮影モードの処理を終了すべきであると判断する。システム制御部50は、笑顔撮影モードを終了すべき指示を受け取らなかった場合、笑顔撮影モードの処理を終了すべきでないと判断する。
【0090】
次に、準備処理(ステップS3)の流れを、図3を用いて説明する。図3は、被写体ごとの準備処理の流れを示すフローチャートである。図3には、特定の被写体(例えば、図5に示す被写体O1)に着目した場合の処理が示されている。すなわち、準備処理は、個々の被写体ごとに独立して並行的に行われる。
【0091】
ステップS11では、識別部20cが、顔領域検出部20aにより検出された複数の被写体の大まかな特徴(顔の輪郭、顔全体における目や鼻などの相対的な位置関係など)の情報から、特定の被写体の大まかな特徴の情報を選択する。すなわち、識別部20cは、選択した被写体の大まかな特徴の情報を介して、取得部17により取得された複数の画像データのそれぞれにおいてその被写体を識別する。また、識別部20cは、選択した被写体の大まかな特徴とその被写体のID(例えば、図19に示す「被写体A」など)とを対応付けて、その被写体を識別するための識別情報を生成する。識別部20cは、その被写体の識別情報を後述のメモリ52へ供給する。
【0092】
メモリ52は、予め設定情報として後述の入力部75から受け取った閾値(デフォルト値)と基準時間(デフォルト値)と基準顔サイズ情報とを記憶する。基準顔サイズ情報は、被写体の顔のサイズを判断する際の基準となる顔のサイズを示すように予め定められた情報である。メモリ52は、その被写体の識別情報を識別部20cから受け取った際に、被写体の識別情報と閾値(デフォルト値)と基準時間(デフォルト値)とを対応付けて閾値情報として記憶する。閾値情報は、被写体の識別情報と閾値と基準時間とが対応付けられた情報である。
【0093】
例えば、メモリ52には、図19に示すように、識別情報「被写体A」,「被写体B」,・・・のいずれに対しても、デフォルト値である閾値「10」と基準時間「Td」とが対応付けられた閾値情報が記憶される。図19は、閾値情報のデータ構造を示す図である。
【0094】
ステップS12では、顔情報抽出部20bが、顔領域検出部20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。
【0095】
例えば、顔情報抽出部20bは、以降のステップでの計算精度を上げるため、選択された顔の向きを正規化する。顔情報抽出部20bは、顔の向きが所定の向きになるようにアフィン変換による正規化処理を行う。顔情報抽出部20bは、正規化された顔から口や目や眉毛などの端点の形状を代表する特徴点を検出する。そして、顔情報抽出部20bは、検出された各特徴点から特徴量を算出する。すなわち、顔情報抽出部20bは、複数の顔領域のそれぞれから、被写体の顔の特徴量を含む顔情報を抽出する。
【0096】
ここで、顔情報は、例えば、図5に示すように、口や目や眉毛などの特徴点500〜517の具体的な形状や座標に関する情報を、特徴量として含む。顔情報は、それぞれの端点や中心点あるいは目の黒点などを入力された顔の画像から、例えばニューラルネットワークや空間フィルタを用いたエッジ検出などの手法を用いて算出することにより抽出することができる。すなわち、顔情報抽出部20bは、各特徴点に対して所定の検出範囲を設定し、各検出範囲内で特徴量を検出するためのニューラルネットワークを用いることにより各特徴点を検出する。ニューラルネットワークには、顔検出同様に予め各特徴点画像データを用いて学習させた各ネットワークが使用される。
【0097】
各特徴点に対する検出範囲は、例えば次のように設定される。顔情報抽出部20bは、特徴点500、502(図5参照)に対して、例えば、図6に示すように、両眼間距離aと左眼位置400とを用いて検出範囲600、601を設定する。顔情報抽出部20bは、特徴点503、505(図5参照)に対しても、特徴点500、502と同様に、両眼間距離aと右眼位置401を用いて検出範囲を設定する。顔情報抽出部20bは、特徴点501(図5参照)に対して、図7に示すように、検出範囲602を設定する。顔情報抽出部20bは、特徴点504(図5参照)に対しても、特徴点501と同様に検出範囲を設定する。顔情報抽出部20bは、特徴点506、509(図5参照)に対して、図8に示すように、検出範囲603、604を設定する。顔情報抽出部20bは、特徴点510、513に対しても、特徴点506、509と同様に検出範囲を設定する。顔情報抽出部20bは、特徴点507、508(図5参照)に対して、図9に示すように、検出範囲605、606を設定する。顔情報抽出部20bは、特徴点511、512(図5参照)に対しても、特徴点507、508と同様に検出範囲を設定する。顔情報抽出部20bは、特徴点514、517(図5参照)に対して、図10に示すように検出範囲607、608を設定する。顔情報抽出部20bは、特徴点515、516(図5参照)に対して、図11に示すように検出範囲609、610を設定する。
【0098】
顔情報抽出部20bにより算出される特徴量は、例えば、次のような情報である。特徴量の一例として笑顔表情の特徴量について説明する。
【0099】
笑顔表情は、Facial Action Coding System(FACS)において、次のように提唱されている。(P.Ekman and W.V.Friesen, Facial Action Coding System(FACS) Manual, Palo Alto:Consulting Psychologists Press, 1978)。「FACSにおける笑顔表情の定義」として、「頬を持ち上げる」ことと、「唇の端を引っ張りあげる」こととが挙げられている。
【0100】
本実施形態では、顔情報抽出部20bが、笑顔表情の特徴量として、上記FACSの定義に従った図13に示す特徴量710〜712を算出する。すなわち、顔情報抽出部20bは、特徴点506と特徴点514と(図5参照)のy方向の距離710を算出する。顔情報抽出部20bは、特徴点513と特徴点517と(図5参照)のy方向の距離711を算出する。顔情報抽出部20bは、特徴点514と特徴点517と(図5参照)のx方向の距離712を算出する。なお、距離710〜712は、いずれも、基準となる距離(例えば、両眼間距離a)に対する相対的な距離である。
【0101】
なお、これらの距離を算出する際には、顔情報抽出部20bが、図14のように、所定の位置、例えば、顔領域が検出された画素位置402を基準として、画素位置402と特徴点514(図5参照)とのy方向の距離713を算出してもよい。また、顔情報抽出部20bは、画素位置402と特徴点517(図5参照)とのy方向の距離714を算出してもよい。
【0102】
ステップS13では、顔情報抽出部20bが、顔情報を抽出することに成功したか否かを判断する。顔情報抽出部20bは、顔情報を抽出することに成功したと判断した場合、処理をステップS14へ進め、顔情報を抽出することに成功していないと判断した場合、処理を終了する。
【0103】
ステップS14では、顔情報選択部50aが、顔情報抽出部20bにより抽出された複数の顔情報から、被写体の顔の表情を推定するための基準となる基準顔情報を選択する。基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。ここで、顔情報選択部50aは、例えば、所定の期間、目と口との距離の変化量が所定の値以下である場合に、無表情状態であると判定する。
【0104】
例えば、顔情報選択部50aは、図12に示すように、期間T1において、特徴点506と特徴点514とのy方向の距離710の変化量が所定の画素数L1以下である場合に、無表情状態であると判定する。一方、顔情報選択部50aは、期間T2において、特徴点506と特徴点514とのy方向の距離710の変化量が所定の画素数L1を超えた画素数L2である場合に、無表情状態でないと判定する。そこで、顔情報選択部50aは、期間T1において取得された画像データに対する顔情報を基準顔情報として選択する。ここで、図12は、本発明の実施形態における特徴量の時間的変化を示す図である。
【0105】
なお、顔情報選択部50aは、無表情状態を判定する際に、口以外の構成要素の形状を使用しても構わない。例えば、顔情報選択部50aは、更に顔情報として眼の開閉度状態を用い、目の大きさの変化などを使用して眼開きの状態タイミングに基づいて基準顔情報を選択しても良い。また、顔情報選択部50aは、瞳画像をニューラルネットワークで学習させ、固定閾値以上の瞳ニューロン数から眼の開閉状態を判定するようにしても良い。
【0106】
次に、検出処理(ステップS7)の流れを、図4を用いて説明する。図4は、被写体ごとの検出処理の流れを示すフローチャートである。すなわち、検出処理は、個々の被写体ごとに独立して並行的に行われる。図4には、特定の被写体の着目した場合の処理が示されている。
【0107】
ステップS21では、識別部20cが、メモリ52に記憶された閾値情報(図19参照)を参照して、ステップS11で生成した識別情報に予め対応付けられた閾値情報を選択する。ここで、識別情報は、被写体の大まかな特徴(顔の輪郭、顔全体における目や鼻などの相対的な位置関係など)と被写体のID(図19に示す「被写体A」など)とが対応付けられた情報であり、被写体を識別するための情報である。
【0108】
ステップS22では、変更部50dが、識別情報に対応した被写体の基準顔サイズ情報をメモリ52から受け取り、識別情報に対応した被写体の検出顔サイズ情報を顔領域検出部20aから受け取る。変更部50dは、基準となる顔のサイズに比べて、検出する対象となる顔のサイズが異なるか否か判断する。変更部50dは、検出する対象となる顔のサイズが、基準となる顔のサイズと異なる(差が所定の範囲を超えている)場合、処理をステップS23へ進め、基準となる顔のサイズと等しい(差が所定の範囲内である)場合、処理をステップS24へ進める。
【0109】
ステップS23では、変更部50dが、識別情報に対応した被写体について、検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、閾値及び基準時間を変更する。
【0110】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが大きい場合に、閾値を大きくするように、かつ、基準時間を長くする。
【0111】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが小さい場合に、閾値を小さくするように、かつ、基準時間を短くする(図20参照)。図20は、閾値情報のデータ構造を示す図である。
【0112】
変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値及び基準時間に変更した情報を反映させて更新する。
【0113】
ステップS24では、変更部50dが、識別情報に予め対応付けられた被写体の笑い声の音声パターンを認識したか否かを、音声認識部41へ問い合わせる。変更部50dは、被写体の笑い声の音声パターンを認識した旨の情報を音声認識部41から受け取った場合、検出しようとする表情に対応した音声パターンが音声認識部41により検知されたと判断して、処理をステップS25へ進める。変更部50dは、被写体の笑い声の音声パターンを認識した旨の情報を音声認識部41から受け取らなかった場合、検出しようとする表情に対応した音声パターンが音声認識部41により検知されなかったと判断して、処理をステップS26へ進める。
【0114】
ステップS25では、変更部50dが、識別情報に対応した被写体について、検出しようとする表情に達したと判断されやすくなるように、閾値及び基準時間を変更する。例えば、変更部50dは、識別情報に対応した被写体について、閾値を小さくするように、かつ、基準時間を短くする。変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値及び基準時間に変更した情報を反映させて更新する。
【0115】
ステップS26では、変更部50dが、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値及び基準時間の情報を取得する。また、変更部50dは、タイマ(図示せず)を参照して経過時間の情報を取得する。変更部50dは、経過時間と基準時間とを比較して、表情推定部50bが被写体の顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上であるか否かを判定する。すなわち、変更部50dは、経過時間が基準時間以上である(基準時間を経過した)と判定する場合、処理をステップS27へ進める。変更部50dは、経過時間が基準時間未満である(基準時間を経過していない)と判定する場合、処理をステップS28へ進める。
【0116】
ステップS27では、変更部50dが、識別情報に対応した被写体について、検出しようとする表情に達したと判断されやすくなるように、閾値を変更する。例えば、変更部50dは、識別情報に対応した被写体について、閾値を小さくする。変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値に変更した情報を反映させて更新する。また、変更部50dは、タイマ(図示せず)にアクセスして、経過時間をリセットするとともに新たにカウントさせ始める。
【0117】
ステップS28では、顔情報抽出部20bが、顔領域検出部20aにより検出された顔領域から、被写体の顔の構成要素の形状に関する他の顔情報を抽出する。すなわち、顔情報抽出部20bは、顔領域から、被写体の顔の特徴量を含む他の顔情報を抽出する。このステップS28の詳細は、上記のステップS12と同様である。
【0118】
ステップS29では、顔情報抽出部20bが、他の顔情報を抽出することに成功したか否かを判断する。
【0119】
例えば、顔情報抽出部20bは、取得された画像データの解像度不足により検出したい特徴点の全てが検出されていない場合であっても、例えば、2以上の特徴点が検出されていれば、他の顔情報を抽出することに成功したと判断する。
【0120】
顔情報抽出部20bは、他の顔情報を抽出することに成功したと判断した場合、処理をステップS31へ進め、他の顔情報を抽出することに成功していないと判断した場合、処理を終了する。
【0121】
ステップS31では、表情推定部50bが、顔情報選択部50aから基準顔情報を受け取り、画像処理部20の顔情報抽出部20bから他の顔情報を受け取る。表情推定部50bは、基準顔情報と他の顔情報との差分を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成する。
【0122】
例えば、表情推定部50bは、顔の個々の構成要素に対して基準顔情報に含まれる特徴量と他の顔情報に含まれる特徴量との差分を演算する。そして、表情推定部50bは、次の数式1を用いて、笑顔表情の度合い、すなわち、笑顔度を算出する。被写体の顔の個々の構成要素に対する基準顔情報と他の顔情報との差分をv1、v2、v3、・・・とするとき、表情推定部50bは、笑顔度を、
SumScore=ΣScorei
=Σg(wi、vi)・・・数式1
としてi=1〜Nについて合計して演算する。ここで、Nは顔の個々の構成要素を識別するための番号であり、wは各構成要素の重みであり、gは得点算出関数である。すなわち、表情推定部50bは、この笑顔度SumScoreを変化量情報として生成する。この笑顔度SumScoreは、例えば、0から100といった数値で表される。
【0123】
ここで、ユーザーのカメラ操作により特定シーン、つまり特定の表情だけを判定するのであれば上記所定得点による判定で良い。しかし、あらゆる表情から1つの表情を判定する場合は、例えば各表情毎の得点を算出して最も高い得点を算出した表情を、検出する対象の表情として判定する方法がある。また、他にも最終層を各表情としたニューラルネットワークを用いる方法や特登録02962549号公報のように隠れマルコフモデル(HMM)を用いて表情を判定する方法などがある。
【0124】
なお、表情推定部50bは、取得された画像データの解像度不足により検出したい特徴点の全てが検出されていない場合でも、算出された特徴量のみ用いて特徴量の変化量を算出し笑顔度を算出する。例えば笑顔の特徴量である距離710、711、712の内、距離710が算出できなかった場合は距離711、712のみ用いて笑顔度を算出する。また、表情推定部50bは、基準顔情報と他の顔情報との比を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成してもよい。
【0125】
ステップS32では、表情推定部50bが、基準顔情報と他の顔情報とを比較して、他の顔情報に対応した被写体の顔の表情を推定する。すなわち、表情推定部50bは、検出しようとする表情に達したか否かを判断する。ここで、表情推定部50bは、表情を推定し始めたことに応じて、タイマ(図示せず)を作動させ経過時間をカウントし始める。
【0126】
例えば、表情推定部50bは、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報を後述のメモリ52から受け取る。表情推定部50bは、変化量情報と閾値情報とに基づいて、変化量が閾値を超えたか否かを判定する。表情推定部50bは、変化量が閾値を超えたと判定した場合、対象とする被写体に対して、検出しようとする表情(例えば、笑顔)に達したと判断する。表情推定部50bは、変化量が閾値を超えていないと判定した場合、対象とする被写体に対して、検出しようとする表情に達していないと判断する。
【0127】
表情推定部50bは、検出しようとする表情に達したと判断する場合、処理をステップS33へ進め、検出しようとする表情に達していないと判断する場合、処理を終了する。
【0128】
ステップS33では、表情推定部50bが、メモリ52にアクセスして、目標とする表情に達した被写体の表情フラグをOFF状態からON状態へ書き換える。
【0129】
以上のように、表情推定部50bが被写体の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない時間が基準時間以上であるか否かを被写体ごとに判断している。これにより、笑って表情が大きく変わる人について迅速に笑顔の表情を検出することができる(図15参照)とともに、笑っても表情があまり変わらない人についても閾値が小さくなることにより笑顔の表情を検出することができる(図16参照)。この結果、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することができる。
【0130】
また、被写体の顔のサイズが変動したことに応じて、被写体の表情の変化量を正規化するのではなく、被写体の表情の変化を検出するための閾値を変更している。これにより、被写体の画像の解像度を低減する必要がなく、表情を推定する際に用いる顔の特徴点の抽出数が減少することを回避できるので、被写体の顔の表情を推定する精度が落ちることを抑制できる。そして、検出しようとする被写体の顔のサイズが、基準となる顔のサイズより大きければ閾値を大きくし、基準となる顔のサイズより小さければ閾値を小さくする(図17参照)。これにより、被写体の顔のサイズが変動したことに応じて、被写体の笑顔が誤検出されたり検出しそこなうことを防ぐことができるので、被写体の顔の表情を推定する精度を向上できる。すなわち、撮影すべき画像における複数の被写体の顔のサイズが大きく異なる場合でも各被写体の表情を精度良く検出することができる。
【0131】
さらに、検出しようとする被写体の顔のサイズが、基準となる顔のサイズより大きければ基準時間を長くし、基準となる顔のサイズより小さければ基準時間を短くするように、基準時間を変更する。これにより、被写体の顔のサイズが変動したことに応じて、必要以上に早く閾値を下げて被写体の笑顔が誤検出されたり、必要以上に遅く閾値を下げて被写体の笑顔が検出されるまでの時間が長くなることを抑制できる。
【0132】
また、検出しようとする表情に対応した音声パターンが音声認識部41により検知された場合、経過時間が基準時間に達していなくても閾値を小さくするように変更している(図18参照)。これにより、笑っても表情があまり変わらない人について閾値が小さくなることにより笑顔の表情を検出することができる。この結果、撮影すべき画像における複数の被写体の表情の個人差が大きくても各被写体の表情を精度良く検出することができる。
【0133】
さらに、検出しようとする表情に対応した音声パターンが音声認識部41により検知された場合、基準時間を短くするように基準時間を変更する。これにより、被写体が笑っている可能性が高い場合に、必要以上に遅く閾値を下げて被写体の笑顔が検出されるまでの時間が長くなることを抑制できる。
【0134】
次に、本発明の実施形態に係る画像処理装置100のにより、被写体の表情を検出するための閾値が変更される際の具体的な動作例を、図15〜図18を用いて説明する。
【0135】
図15は、笑って表情が大きく変わる人について表情を検出するケースを示す図である。被写体Aの笑顔の表情は、変化量が十分に大きいため、経過時間1の時点ですぐに笑顔の閾値に達し、自動的に撮影処理が開始された。
【0136】
図16は、笑っても表情があまり変わらない人について表情を検出するケースを示す図である。被写体Bの笑顔の表情は、変化量が小さいため、経過時間1ではまだ笑顔の閾値に達していない。そのため、閾値を2だけ減算し、8にした。次に、経過時間2で再度表情の評価を行ったが、まだ笑顔の閾値に達していない。そのため、閾値をさらに3だけ減算し、5にした。次に、経過時間3で再度表情の評価を行ったところ、変化量自体は変わっていないが、閾値が下がったことにより、笑顔の閾値に達することが出来た。これにより、自動的に撮影処理が開始された。
【0137】
図17は、撮影すべき画像における複数の被写体の顔のサイズが大きく異なるケースを示す図である。被写体Aの顔のサイズは、基準となる顔のサイズより小さいので、閾値を、デフォルトの値「10」から5だけ減算し5にした。被写体Bの顔のサイズは、基準となる顔のサイズに等しいので、閾値を、デフォルトの値「10」にした。被写体Bの顔のサイズは、基準となる顔のサイズより大きいので、閾値を、デフォルトの値「10」に5だけ加算し15にした。
【0138】
図17に示されるように、解像度が一定であれば、被写体の顔のサイズが小さくなるにしたがって、顔のサイズに対する表情の相対的な変化量が一定であっても、表情の絶対的な変化量(画素数)が小さくなる。これにより、被写体の顔のサイズが小さくなるしたがって、笑顔の閾値を小さくすることにより、被写体の笑顔を検出しそこなうことを防ぐことができる。また、解像度が一定であれば、被写体の顔のサイズが大きくなるにしたがって、顔のサイズに対する表情の相対的な変化量が一定であっても、表情の絶対的な変化量(画素数)が大きくなる。これにより、被写体の顔のサイズが大きくなるしたがって、笑顔の閾値を大きくすることにより、被写体の笑顔を誤検出することを防ぐことができる。 図18は、笑っても表情があまり変わらない人について表情を検出するケースを示す図である。被写体Dの笑顔の表情は、変化量が小さいため、経過時間1ではまだ笑顔の閾値に達していない。この時、カメラ付属の不図示のマイク介して笑い声を検出し、不図示の音声認識プログラムを使って、笑い声であることを認識し、笑顔の閾値を5だけ減算して5にする。次に、経過時間2で再度表情の評価を行ったところ、変化量自体は変わっていないが、閾値が下がったことにより、笑顔の閾値に達することが出来た。これにより、自動的に撮影処理が開始された。なお、本発明は、顔領域を検出することが前提となるため、音声だけでシャッターを切るシステムとは異なる。
【0139】
なお、変更部50dは、経過時間が基準時間以上であるかどうか判断せずに、被写体の顔のサイズの変化に応じて閾値を変更したり、被写体の笑い声等が認識されたことに応じて閾値を変更しても良い。この場合、図2に示す検出処理S7では、図4に示すステップS26,S27が省略されても良い。すなわち、図21に示すように、ステップS23,S24の代わりにステップS123,S125が行われる。
【0140】
ステップS123では、変更部50dが、識別情報に対応した被写体について、閾値を変更する。
【0141】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが大きい場合に、閾値を大きくする。
【0142】
例えば、変更部50dは、識別情報に対応した被写体について、基準顔サイズ情報が示す顔のサイズに比べて、検出顔サイズ情報が示す顔のサイズが小さい場合に、閾値を小さくする。
【0143】
変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値に変更した情報を反映させて更新する。
【0144】
ステップS125では、変更部50dが、識別情報に対応した被写体について、閾値を変更する。例えば、変更部50dは、識別情報に対応した被写体について、閾値を小さくする。変更部50dは、メモリ52にアクセスして、識別情報に対応した閾値情報における閾値に変更した情報を反映させて更新する。
【0145】
次に、上述した各実施形態の機能を実現するためのプログラムについて説明する。
【0146】
上述した各実施形態の機能を実現するように各種のデバイスを動作させ、その各種のデバイスと接続された装置あるいはシステム内のコンピュータに対して上述した各実施形態の機能を実現させるソフトウェアのプログラムコード(プログラム)を供給する。
【0147】
そして、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に(ソフトウェア的に又はハードウェア的に)格納されたプログラムにしたがって上記の各種のデバイスを動作させるようにしたものも、本発明の範疇に含まれる。
【0148】
また、この場合、上記のソフトウェアのプログラム自体が上述した実施形態の機能を実現することになる。
【0149】
また、そのプログラム自体、及びそのプログラムのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムを格納した記憶媒体も、本発明の範疇に含まれる。
【0150】
かかるプログラムを記憶する記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0151】
また、供給されたプログラムをコンピュータが実行することにより、上述の実施形態の機能が実現されるだけではない。
【0152】
例えば、そのプログラムがコンピュータにおいて稼動しているOS(オペレーティングシステム)あるいは他のアプリケーション等と協働して上述の実施形態の機能を実現させる場合にも、かかるプログラムは、本発明の範疇に含まれる。
【0153】
さらに、供給されたプログラムは、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納される。
【0154】
そして、そのプログラムの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合にも、かかるプログラムは、本発明の範疇に含まれる。
【図面の簡単な説明】
【0155】
【図1】本発明の実施形態に係る画像処理装置100の構成図。
【図2】画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを示すフローチャート。
【図3】被写体ごとの準備処理の流れを示すフローチャート。
【図4】被写体ごとの検出処理の流れを示すフローチャート。
【図5】本発明の実施形態における検出する特徴点を示す図。
【図6】本発明の実施形態における検出範囲を示す図。
【図7】本発明の実施形態における検出範囲を示す図。
【図8】本発明の実施形態における検出範囲を示す図。
【図9】本発明の実施形態における検出範囲を示す図。
【図10】本発明の実施形態における検出範囲を示す図。
【図11】本発明の実施形態における検出範囲を示す図。
【図12】本発明の実施形態における特徴量の時間的変化を示す図。
【図13】本発明の実施形態における特徴量を示す図。
【図14】本発明の実施形態における特徴量を示す図。
【図15】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図16】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図17】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図18】被写体の表情を検出するための閾値が変更される際の具体的な動作例を示す図。
【図19】閾値情報のデータ構造を示す図。
【図20】閾値情報のデータ構造を示す図。
【図21】被写体ごとの検出処理の流れを示すフローチャート(変形例)。
【符号の説明】
【0156】
17 取得部
20a 顔領域検出部
20b 顔情報抽出部
20c 識別部
50a 顔情報選択部
50b 表情推定部
50c 制御部
50d 変更部
52 メモリ
100 画像処理装置
【特許請求の範囲】
【請求項1】
複数の被写体を含む画像データを処理するための画像処理装置であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、
前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、
前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、
前記顔情報抽出手段により抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、
前記複数の被写体のそれぞれについて、前記表情推定手段が前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段と、
を備えたことを特徴とする画像処理装置。
【請求項2】
前記取得手段により取得された複数の画像データのそれぞれにおいて前記複数の被写体のそれぞれを識別するための識別情報を生成する識別手段と、
前記複数の被写体のそれぞれの前記識別情報と前記閾値と前記基準時間とを対応付けて記憶する記憶手段と、
をさらに備え、
前記変更手段は、前記記憶手段に記憶された情報を参照することにより、前記識別手段により生成された前記識別情報に対応付けられた前記閾値と前記基準時間とを特定し、前記経過時間が、前記特定された前記基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記特定された前記閾値の値を変更する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記表情推定手段は、前記変化量が前記閾値を超えた場合に前記検出しようとする表情に達したと判断することにより、前記複数の被写体のそれぞれについて、顔の表情を推定し、
前記変更手段は、前記複数の被写体のそれぞれについて、前記経過時間が前記基準時間以上である場合、前記閾値の値を小さくする
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズに比べて、前記検出顔サイズ情報が示す顔のサイズが大きい場合に、前記閾値を大きくするように、かつ、前記基準時間を長くする
ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズに比べて、前記検出顔サイズ情報が示す顔のサイズが小さい場合に、前記閾値を小さくするように、かつ、前記基準時間を短くする
ことを特徴とする請求項3に記載の画像処理装置。
【請求項6】
前記複数の被写体のそれぞれが発する音声を認識する音声認識手段をさらに備え、
前記変更手段は、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記閾値を小さくするように、かつ、前記基準時間を短くする
ことを特徴とする請求項3から5のいずれか1項に記載の画像処理装置。
【請求項7】
複数の被写体を含む画像データを処理するための画像処理装置であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、
前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、
前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、
前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、
前記複数の被写体のそれぞれについて、前記閾値を変更する変更手段と、
を備え、
前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更する
ことを特徴とする画像処理装置。
【請求項8】
前記取得手段により取得された複数の画像データのそれぞれにおいて前記複数の被写体のそれぞれを識別するための識別情報を生成する識別手段と、
前記複数の被写体のそれぞれの前記識別情報と前記閾値とを対応付けて記憶する記憶手段と、
をさらに備え、
前記変更手段は、前記記憶手段に記憶された情報を参照することにより、前記識別手段により生成された前記識別情報に対応付けられた前記閾値を特定し、前記特定された前記閾値の値を変更する
ことを特徴とする請求項7に記載の画像処理装置。
【請求項9】
前記表情推定手段は、前記変化量が前記閾値を超えた場合に前記検出しようとする表情に達したと判断することにより、前記複数の被写体のそれぞれについて、顔の表情を推定し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズに比べて、前記検出顔サイズ情報が示す顔のサイズが大きい場合に前記閾値を大きくし、前記検出顔サイズ情報が示す顔のサイズが小さい場合に前記閾値を小さくする
ことを特徴とする請求項7又は8に記載の画像処理装置。
【請求項10】
複数の被写体を含む画像データを処理するための画像処理装置であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、
前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、
前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、
前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、
前記複数の被写体のそれぞれが発する音声を認識する音声認識手段と、
前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段と、
を備えたことを特徴とする画像処理装置。
【請求項11】
前記取得手段により取得された複数の画像データのそれぞれにおいて前記複数の被写体のそれぞれを識別するための識別情報を生成する識別手段と、
前記複数の被写体のそれぞれの前記識別情報と前記閾値とを対応付けて記憶する記憶手段と、
をさらに備え、
前記変更手段は、前記記憶手段に記憶された情報を参照することにより、前記識別手段により生成された前記識別情報に対応付けられた前記閾値を特定し、前記特定された前記閾値の値を変更する
ことを特徴とする請求項10に記載の画像処理装置。
【請求項12】
前記表情推定手段は、前記変化量が前記閾値を超えた場合に前記検出しようとする表情に達したと判断することにより、前記複数の被写体のそれぞれについて、顔の表情を推定し、
前記変更手段は、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記閾値を小さくする
ことを特徴とする請求項10又は11に記載の画像処理装置。
【請求項13】
撮影指示を受け付ける入力手段と、
画像データを記録媒体へ記録する記録手段と、
前記取得手段および前記記録手段を制御する制御手段と、
をさらに備え、
前記表情推定手段は、前記撮影指示に応じて、前記複数の被写体のそれぞれの顔の表情を推定し始め、
前記制御手段は、検出しようとする表情に達したと前記複数の被写体のそれぞれについて前記表情推定手段により判断された場合、前記取得手段により取得された前記複数の被写体を含む画像データを前記記録手段が前記記録媒体へ記録するように、前記取得手段及び前記記録手段を制御する
ことを特徴とする請求項1から12のいずれか1項に記載の画像処理装置。
【請求項14】
複数の被写体を含む画像データを処理するための画像処理方法であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、
前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、
前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、
前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、
前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、
前記複数の被写体のそれぞれについて、前記表情推定ステップで前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップと、
を備えたことを特徴とする画像処理方法。
【請求項15】
複数の被写体を含む画像データを処理するための画像処理方法であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、
前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、
前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、
前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、
前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、
前記複数の被写体のそれぞれについて、前記閾値を変更する変更ステップと、
を備え、
前記顔領域検出ステップでは、前記顔情報選択ステップで前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更ステップでは、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更する
ことを特徴とする画像処理方法。
【請求項16】
複数の被写体を含む画像データを処理するための画像処理方法であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、
前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、
前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、
前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、
前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、
前記複数の被写体のそれぞれが発する音声を認識する音声認識ステップと、
前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識ステップで認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップと、
を備えたことを特徴とする画像処理方法。
【請求項17】
請求項14から16のいずれか1項に記載の画像処理方法の各工程を画像処理装置に実行させることを特徴とする画像処理プログラム。
【請求項1】
複数の被写体を含む画像データを処理するための画像処理装置であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、
前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、
前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、
前記顔情報抽出手段により抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、
前記複数の被写体のそれぞれについて、前記表情推定手段が前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段と、
を備えたことを特徴とする画像処理装置。
【請求項2】
前記取得手段により取得された複数の画像データのそれぞれにおいて前記複数の被写体のそれぞれを識別するための識別情報を生成する識別手段と、
前記複数の被写体のそれぞれの前記識別情報と前記閾値と前記基準時間とを対応付けて記憶する記憶手段と、
をさらに備え、
前記変更手段は、前記記憶手段に記憶された情報を参照することにより、前記識別手段により生成された前記識別情報に対応付けられた前記閾値と前記基準時間とを特定し、前記経過時間が、前記特定された前記基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記特定された前記閾値の値を変更する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記表情推定手段は、前記変化量が前記閾値を超えた場合に前記検出しようとする表情に達したと判断することにより、前記複数の被写体のそれぞれについて、顔の表情を推定し、
前記変更手段は、前記複数の被写体のそれぞれについて、前記経過時間が前記基準時間以上である場合、前記閾値の値を小さくする
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズに比べて、前記検出顔サイズ情報が示す顔のサイズが大きい場合に、前記閾値を大きくするように、かつ、前記基準時間を長くする
ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズに比べて、前記検出顔サイズ情報が示す顔のサイズが小さい場合に、前記閾値を小さくするように、かつ、前記基準時間を短くする
ことを特徴とする請求項3に記載の画像処理装置。
【請求項6】
前記複数の被写体のそれぞれが発する音声を認識する音声認識手段をさらに備え、
前記変更手段は、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記閾値を小さくするように、かつ、前記基準時間を短くする
ことを特徴とする請求項3から5のいずれか1項に記載の画像処理装置。
【請求項7】
複数の被写体を含む画像データを処理するための画像処理装置であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、
前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、
前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、
前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、
前記複数の被写体のそれぞれについて、前記閾値を変更する変更手段と、
を備え、
前記顔領域検出手段は、前記顔情報選択手段により前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更する
ことを特徴とする画像処理装置。
【請求項8】
前記取得手段により取得された複数の画像データのそれぞれにおいて前記複数の被写体のそれぞれを識別するための識別情報を生成する識別手段と、
前記複数の被写体のそれぞれの前記識別情報と前記閾値とを対応付けて記憶する記憶手段と、
をさらに備え、
前記変更手段は、前記記憶手段に記憶された情報を参照することにより、前記識別手段により生成された前記識別情報に対応付けられた前記閾値を特定し、前記特定された前記閾値の値を変更する
ことを特徴とする請求項7に記載の画像処理装置。
【請求項9】
前記表情推定手段は、前記変化量が前記閾値を超えた場合に前記検出しようとする表情に達したと判断することにより、前記複数の被写体のそれぞれについて、顔の表情を推定し、
前記変更手段は、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズに比べて、前記検出顔サイズ情報が示す顔のサイズが大きい場合に前記閾値を大きくし、前記検出顔サイズ情報が示す顔のサイズが小さい場合に前記閾値を小さくする
ことを特徴とする請求項7又は8に記載の画像処理装置。
【請求項10】
複数の被写体を含む画像データを処理するための画像処理装置であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得手段と、
前記取得手段により取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出手段と、
前記顔領域検出手段により検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出手段と、
前記顔情報抽出手段により抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択手段と、
前記顔情報抽出手段が抽出する顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定手段と、
前記複数の被写体のそれぞれが発する音声を認識する音声認識手段と、
前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更手段と、
を備えたことを特徴とする画像処理装置。
【請求項11】
前記取得手段により取得された複数の画像データのそれぞれにおいて前記複数の被写体のそれぞれを識別するための識別情報を生成する識別手段と、
前記複数の被写体のそれぞれの前記識別情報と前記閾値とを対応付けて記憶する記憶手段と、
をさらに備え、
前記変更手段は、前記記憶手段に記憶された情報を参照することにより、前記識別手段により生成された前記識別情報に対応付けられた前記閾値を特定し、前記特定された前記閾値の値を変更する
ことを特徴とする請求項10に記載の画像処理装置。
【請求項12】
前記表情推定手段は、前記変化量が前記閾値を超えた場合に前記検出しようとする表情に達したと判断することにより、前記複数の被写体のそれぞれについて、顔の表情を推定し、
前記変更手段は、前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識手段により認識された場合、前記閾値を小さくする
ことを特徴とする請求項10又は11に記載の画像処理装置。
【請求項13】
撮影指示を受け付ける入力手段と、
画像データを記録媒体へ記録する記録手段と、
前記取得手段および前記記録手段を制御する制御手段と、
をさらに備え、
前記表情推定手段は、前記撮影指示に応じて、前記複数の被写体のそれぞれの顔の表情を推定し始め、
前記制御手段は、検出しようとする表情に達したと前記複数の被写体のそれぞれについて前記表情推定手段により判断された場合、前記取得手段により取得された前記複数の被写体を含む画像データを前記記録手段が前記記録媒体へ記録するように、前記取得手段及び前記記録手段を制御する
ことを特徴とする請求項1から12のいずれか1項に記載の画像処理装置。
【請求項14】
複数の被写体を含む画像データを処理するための画像処理方法であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、
前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、
前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、
前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、
前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、
前記複数の被写体のそれぞれについて、前記表情推定ステップで前記複数の被写体のそれぞれの顔の表情を推定し始めてから検出しようとする表情に達したと継続的に判断しない経過時間が基準時間以上である場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップと、
を備えたことを特徴とする画像処理方法。
【請求項15】
複数の被写体を含む画像データを処理するための画像処理方法であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、
前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、
前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、
前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、
前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、
前記複数の被写体のそれぞれについて、前記閾値を変更する変更ステップと、
を備え、
前記顔領域検出ステップでは、前記顔情報選択ステップで前記複数の被写体のそれぞれの前記基準顔情報が選択された後、前記複数の被写体のそれぞれの顔領域を検出する際に、前記複数の被写体のそれぞれの顔のサイズに関する検出顔サイズ情報を生成し、
前記変更ステップでは、前記複数の被写体のそれぞれについて、予め定められた基準となる顔のサイズと、前記検出顔サイズ情報が示す顔のサイズとを比較して、前記比較した結果に応じて、前記検出しようとする表情に達したと判断される際の判断されやすさが一定になるように、前記閾値の値を変更する
ことを特徴とする画像処理方法。
【請求項16】
複数の被写体を含む画像データを処理するための画像処理方法であって、
異なる複数のタイミングで得られた、前記複数の被写体を含む複数の画像データを取得する取得ステップと、
前記取得ステップで取得された複数の画像データのそれぞれにおいて、前記複数の被写体のそれぞれの顔領域を検出する顔領域検出ステップと、
前記顔領域検出ステップで検出された前記複数の顔領域のそれぞれから、顔の構成要素の形状に関する顔情報を抽出する顔情報抽出ステップと、
前記顔情報抽出ステップで抽出された前記複数の被写体についての複数の顔情報から、前記複数の被写体のそれぞれについて、顔の表情を推定するための基準となる基準顔情報を選択する顔情報選択ステップと、
前記顔情報抽出ステップで抽出された顔情報の、前記基準顔情報に対する変化量と、検出しようとする表情に達したと判断するための前記変化量に対する閾値とを前記被写体ごとに比較して、前記複数の被写体のそれぞれについて、顔の表情を推定する表情推定ステップと、
前記複数の被写体のそれぞれが発する音声を認識する音声認識ステップと、
前記複数の被写体のそれぞれについて、前記検出しようとする表情に予め対応づけられた音声が前記音声認識ステップで認識された場合、前記検出しようとする表情に達したと判断されやすくなるように、前記閾値の値を変更する変更ステップと、
を備えたことを特徴とする画像処理方法。
【請求項17】
請求項14から16のいずれか1項に記載の画像処理方法の各工程を画像処理装置に実行させることを特徴とする画像処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2009−163422(P2009−163422A)
【公開日】平成21年7月23日(2009.7.23)
【国際特許分類】
【出願番号】特願2007−341114(P2007−341114)
【出願日】平成19年12月28日(2007.12.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成21年7月23日(2009.7.23)
【国際特許分類】
【出願日】平成19年12月28日(2007.12.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]