(57)【要約】【課題】撮像装置の傾きを検出するための重力センサーなどを搭載することなく、適切な顔（対象物）の傾き角度を推定して、時間をかけることなく顔検出（対象物検出）を行う。【解決手段】決定されたいずれかの対象物検出条件をもとに、画像データにおいて対象物を検出し（Ｓ２０２）、対象物検出を行った結果の履歴を保持する（Ｓ２０３、Ｓ２０５）。そして、保持している履歴をもとに対象物が存在すると判断した場合は、直前に対象物が検出されたときの対象物検出条件を維持し、保持している履歴をもとに対象物が存在しないと判断した場合は、決定されている対象物検出条件と異なる対象物検出条件を決定する（Ｓ２０６〜Ｓ２１１）。【選択図】  図２
2010157969.tif 000002
【特許請求の範囲】
【請求項１】
画像データを取得する撮像手段と、
複数ある対象物検出条件のうちから決定されたいずれかの対象物検出条件をもとに、前記画像データにおいて対象物を検出する対象物検出手段と、
前記対象物検出手段により対象物検出を行った結果の履歴を保持する履歴保持手段と、
前記履歴保持手段により保持されている検出結果をもとに、前記対象物検出条件を決定する第一の検出条件決定手段と、を有することを特徴とする撮像装置。
【請求項２】
前記第一の検出条件決定手段は、前記履歴保持手段の保持している履歴をもとに対象物が存在すると判断した場合、直前に対象物が検出されたときの対象物検出条件を維持することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記第一の検出条件決定手段は、前記履歴保持手段の保持している履歴をもとに対象物が存在しないと判断した場合、決定されている対象物検出条件と異なる対象物検出条件を決定することを特徴とする請求項１又は２に記載の撮像装置。
【請求項４】
前記対象物検出手段は、連続的な周期で対象物を検出しており、
前記第一の検出条件決定手段は、前記履歴保持手段の保持している履歴から対象物の検出を所定の回数、連続して確認できない場合に、対象物が存在しないと判断とすることを特徴とする請求項３に記載の撮像装置。
【請求項５】
前記第一の検出条件決定手段で決定した対象物検出条件における対象物の検出の結果に応じて、さらに対象物検出条件を決定する第二の検出条件決定手段を有することを特徴とする請求項３又は４に記載の撮像装置。
【請求項６】
前記第二の検出条件決定手段は、前記第一の検出条件決定手段が前記履歴保持手段の保持している履歴をもとに対象物が存在しないと判断した際に決定した対象物検出条件で対象物が検出できない場合に、対象物検出条件を決定することを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記第二の検出条件決定手段は、前記画像データにおける輝度に応じて、対象物検出条件を決定することを特徴とする請求項５又は６に記載の撮像装置。
【請求項８】
前記第二の検出条件決定手段は、前記画像データにおいて空方向を判別し、その結果をもとに対象物検出条件を決定することを特徴とする請求項７に記載の撮像装置。
【請求項９】
前記対象物検出手段は、人物の顔を検出する手段であることを特徴とする請求項１〜８のいずれか１項に記載の撮像装置。
【請求項１０】
入力された画像データから対象物を検出する対象物検出方法であって、
複数ある対象物検出条件のうちから決定されたいずれかの対象物検出条件をもとに、前記画像データにおいて対象物を検出する対象物検出ステップと、
前記対象物検出ステップで対象物検出を行った結果の履歴を保持する履歴保持ステップと、
前記履歴保持ステップで保持されている検出結果をもとに、前記対象物検出条件を決定する検出条件決定ステップと、を有することを特徴とする対象物検出方法。
【請求項１１】
入力された画像データから対象物を検出する処理をコンピュータに実行させるためのプログラムであって、
複数ある対象物検出条件のうちから決定されたいずれかの対象物検出条件をもとに、前記画像データにおいて対象物を検出する対象物検出ステップと、
前記対象物検出ステップで対象物検出を行った結果の履歴を保持する履歴保持ステップと、
前記履歴保持ステップで保持されている検出結果をもとに、前記対象物検出条件を決定する検出条件決定ステップと、をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物を検出する撮像装置、対象物検出方法及びプログラムに関するものである。
【背景技術】
【０００２】
近年、被写体の一部である顔部分を検出する顔検出機能を備えた撮像装置が普及してきている。顔検出機能により顔が検出されると、ピント合わせや露出制御を顔にとって最適になるように処理し、撮影することが可能となる。
【０００３】
一般に、顔検出機能は直立正面の顔のみを検出することができるが、昨今、撮像装置を横に構えた場合と縦に構えた場合のどちらでも顔が検出できるようにしたものがある。この検出機能では、例えば画像データに対して時計方向を正方向として、「０度」方向、「＋９０度」方向、「−９０度」方向、「１８０度」方向といった複数の方向のいずれかを選択できるようにする。そして、選択された角度から所定範囲の角度（例えば、−４５度〜＋４５度）で検出を行うようにする。
【０００４】
また、毎回あらゆる傾き角度の顔も検出できるように構成することも可能であるが、顔検出に要する時間が長くなってしまい、顔検出の応答性が低下してしまうため、顔の傾き角度を限定し、その範囲内の顔を検出できるように構成する提案がなされている。具体的には、最も高い頻度で顔が検出できる方向を事前に判別してから、その方向に対して顔検出を行うよう設定する構成や、ユーザーが予め検出する顔の傾き方向を指定する構成を備えた撮像装置が知られている（特許文献１などを参照のこと）。
【０００５】
【特許文献１】特開２００７−００４３１３号公報
【特許文献２】特開２００２−２５１３８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述の特許文献１などに記載の方法では、予め判別した顔の傾き角度、あるいは、予めユーザーによって指定された顔の傾き角度に対して、顔検出を実行することになる。そうなると、例えば、しばらく顔が検出できている状態であった撮像装置を、途中で９０度横に傾けた場合に、指定された顔検出方向に基づいて顔検出を行うと、撮像装置を傾けた後の顔を検出することができなくなってしまう。
【０００７】
また、撮像装置に重力センサーなどを搭載し、この重力センサーで撮像装置に対する顔の傾き角度を推定できるようにすれば、途中で撮像装置を傾けたとしても顔を検出できる。しかし、この場合は重力センサーを搭載する分、撮像装置のコストが増加してしまう。
【０００８】
本発明はこのような問題に鑑みて、撮像装置の傾きを検出するための重力センサーなどを搭載することなく、適切な顔（対象物）の傾き角度を推定して、時間をかけることなく顔検出（対象物検出）を行うことのできる撮像装置などを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の撮像装置は、画像データを取得する撮像手段と、複数ある対象物検出条件のうちから決定されたいずれかの対象物検出条件をもとに、前記画像データにおいて対象物を検出する対象物検出手段と、前記対象物検出手段により対象物検出を行った結果の履歴を保持する履歴保持手段と、前記履歴保持手段により保持されている検出結果をもとに、前記対象物検出条件を決定する第一の検出条件決定手段と、を有することを特徴とする。
また、本発明の対象物検出方法は、入力された画像データから対象物を検出する対象物検出方法であって、複数ある対象物検出条件のうちから決定されたいずれかの対象物検出条件をもとに、前記画像データにおいて対象物を検出する対象物検出ステップと、前記対象物検出ステップで対象物検出を行った結果の履歴を保持する履歴保持ステップと、前記履歴保持ステップで保持されている検出結果をもとに、前記対象物検出条件を決定する検出条件決定ステップと、を有することを特徴とする。
また、本発明のプログラムは、入力された画像データから対象物を検出する処理をコンピュータに実行させるためのプログラムであって、複数ある対象物検出条件のうちから決定されたいずれかの対象物検出条件をもとに、前記画像データにおいて対象物を検出する対象物検出ステップと、前記対象物検出ステップで対象物検出を行った結果の履歴を保持する履歴保持ステップと、前記履歴保持ステップで保持されている検出結果をもとに、前記対象物検出条件を決定する検出条件決定ステップと、をコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１０】
本発明によれば、簡易構成で、顔などの対象物検出を実行するにあたり、複数の対象物検出条件を使い分けることで、より速いタイミングで、対象物を検出することが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を説明する。
＜撮像装置の構成＞
本実施の形態では、本発明を撮像装置の一例としてのデジタルカメラに適用した場合について説明する。図１は、本実施の形態に係るデジタルカメラの機能構成を示すブロック図である。
【００１２】
図１において、操作部１０１は、本デジタルカメラの操作者が本デジタルカメラに対して各種の指示を入力するために操作するスイッチやボタンなどにより構成されている。操作部１０１の中には、シャッタースイッチが含まれ、このシャッタースイッチが半押しの場合には信号ＳＷ１が操作部１０１から制御部１０２に対して通知される。また、シャッタースイッチが全押しされている場合には信号ＳＷ２が操作部１０１から制御部１０２に対して通知される。制御部１０２が信号ＳＷ１や信号ＳＷ２を受けた際の動作については、後述する。
【００１３】
制御部１０２は、同図に示す各部の動作を制御するものであり、操作部１０１からの指示に応じて各部を制御する。
【００１４】
ＣＣＤ部１０３は、レンズ１１８、露出機構１１９を介して入射される光を受け、その光量に応じた電荷を出力するものである。なお、被写体像を電気信号に変換する撮像素子であれば、ＣＣＤに限らず、ＣＭＯＳセンサであってもよい。
【００１５】
Ａ／Ｄ変換部１０４は、ＣＣＤ部１０３から出力されたアナログ画像信号に対して、サンプリング、ゲイン調整、Ａ／Ｄ変換などを行い、デジタル画像信号として出力する。
【００１６】
画像処理部１０５は、Ａ／Ｄ変換部１０４から出力されたデジタル画像信号に対して各種の画像処理を行い、処理済みのデジタル画像信号を出力する。例えば、Ａ／Ｄ変換部１０４から受けたデジタル画像信号を、ＹＵＶ画像信号に変換して出力する。
【００１７】
顔検出部１０６は、Ａ／Ｄ変換部１０４から受けたデジタル画像信号から、顔検出を実行し、この領域に係る情報を制御部１０２に通知する。人物の顔検出方法は、公知の技術を適用可能である。
【００１８】
公知の顔検出技術としては、ニューラルネットワークなどを利用した学習に基づく手法、テンプレートマッチングを用いて目、鼻、口などの形状に特徴のある部位を画像から探し出し、類似度が高ければ顔とみなす手法などがある。また、他にも、肌の色や目の形といった画像特徴量を検出し、統計的解析を用いた手法など、多数提案されている。一般的には、これらの手法を複数組み合わせ、顔検出の精度を向上させている。具体的な例としては特許文献２に記載されるような、ウエーブレット変換と画像特徴量を利用して顔検出する方法などが挙げられる。顔検出によって得られる情報には、ＣＣＤ画面内の遮光領域に現れる輝度から求められる、位置、範囲、信頼度（顔の形としての確からしさ）などがある。
【００１９】
顔検出可否判断部１０７は、顔検出を行った結果をもとに、顔が検出できたか否かを判断する。顔検出履歴保持部１０８は、顔検出可否の履歴を保持する。
【００２０】
空方向判別部１０９は、画像処理部１０５から出力された画像処理済みのデジタル画像信号について、空方向判別手段により判別された空（そら）方向を出力する。空方向とは、地面に対して輝度が高いと考えられる空の方向を言うものとする。
【００２１】
ＥＦ処理部１１３は、フラッシュオンの指示を受けると、フラッシュ部１１４を制御し、フラッシュ部１１４を発光させる。制御部１０２においてフラッシュが必要と判断された場合には、ＥＦ処理部１１３にフラッシュオンの指示が通知される。
【００２２】
背面モニター１１０は、小型液晶画面などにより構成されており、画像処理部１０５による処理済みの画像データに従った画像を表示する。
【００２３】
フォーマット変換部１１５は、画像処理部１０５から出力されたデジタル画像信号（画像データ）のフォーマットをＪＰＥＧなどのフォーマットに変換し、画像記録部１１６に出力するものである。画像記録部１１６は、フォーマット変換部１１５から受けたフォーマット変換済みの画像データを、本デジタルカメラ内の不図示のメモリや、本デジタルカメラに挿入されている外部メモリなどに記録する処理を行う。
【００２４】
外部接続部１１７は、本デジタルカメラをＰＣ（パーソナルコンピュータ）やプリンタといった外部装置に接続するためのインターフェースとして機能するものである。
【００２５】
レンズ１１８は、被写体像をＣＣＤ部１０３に取り込むためのレンズであり、例えば変倍レンズ群やフォーカスレンズ群などを含み構成される。露出機構１１９は、露出の調整を行う絞りやシャッターなどを含み構成される。
【００２６】
＜撮像動作＞
次に、本デジタルカメラを用いて撮像を行う場合の、本デジタルカメラの動作について説明する。
【００２７】
先ず、本デジタルカメラの操作者が、操作部１０１に含まれている電源スイッチをオンにすると、制御部１０２はこれを検知し、本デジタルカメラを構成する各部に電源を供給する。本デジタルカメラを構成する各部に電源が供給されるとシャッターが開くので、ＣＣＤ部１０３には、レンズ１１８、露出機構１１９を介して光が入光することになる。ＣＣＤ部１０３は、溜まった電荷を読み出し、Ａ／Ｄ変換部１０４にアナログ画像信号として出力する。
【００２８】
Ａ／Ｄ変換部１０４は、ＣＣＤ部１０３から出力されたアナログ画像信号に対して、サンプリング、ゲイン調整、Ａ／Ｄ変換などを行い、デジタル画像信号として出力する。
【００２９】
画像処理部１０５は、Ａ／Ｄ変換部１０４から出力されたデジタル画像信号に対して各種画像処理を行い、処理済みのデジタル画像信号を出力する。画像処理部１０５はまた、処理済みの画像データを背面モニター１１０に出力するので、背面モニター１１０は、この処理済みの画像データに従った画像を表示する。
【００３０】
また、顔検出部１０６は、Ａ／Ｄ変換部１０４から受けたデジタル画像信号が示す画像から、顔を検出し、検出した領域の位置、範囲、信頼度（顔の確からしさ）など、この領域に係る情報（顔情報）を制御部１０２に通知する。
【００３１】
画像処理部１０５によって取得された画像データをもってＡＦ処理部１１１が被写体にピントを合わせるべくレンズ１１８を動作させ、また、ＡＥ処理部１１２は、画面が最適な露出になるように露出機構１１９を制御する。
【００３２】
そして、制御部１０２は、操作部１０１に含まれるシャッタースイッチからＳＷ１なる信号の通知（即ち、シャッタースイッチの半押しの通知）を受けていない限りは、上記処理を繰り返す。
【００３３】
制御部１０２がＳＷ１なる信号の通知をシャッタースイッチから受けると、制御部１０２は、この時点における画像を用いＡＦ（オートフォーカス）、ＡＥ（自動露出）処理を行い、撮影に最適なピント及び露出設定条件を取得する。
【００３４】
そして、制御部１０２は、シャッタースイッチからＳＷ２なる信号の通知（即ち、シャッタースイッチの全押しの通知）を受けていない限りは、処理をＳＷ１前に戻し、上記処理を繰り返す。
【００３５】
また、制御部１０２がＳＷ２なる信号の通知をシャッタースイッチから受けると、制御部１０２は、先ずフラッシュを発光するか否かの判断を行う。フラッシュを発光するか否かは、操作部１０１を用いて予め設定しておき、その設定データを読み取ることで判断するようにしても良いし、また周囲の暗さを検知し自動的に判断するようにしても良い。
【００３６】
フラッシュを発光するか否かの判断の結果、フラッシュの発光を行う場合には、制御部１０２は、ＥＦ処理部１１３を制御し、フラッシュ部１１４にプリ発光を行わせ、発光量の算出、ＥＦ枠の重み付けなどの処理を行う。そして、プリ発光により計算された本発光量でフラッシュ部１１４を発光させ、画像撮影を行う。フラッシュ非発光の場合には上記調光制御無しに以下の処理に移行する。
【００３７】
撮影が行われると、外界からの光がレンズ１１８、露出機構１１９を介してＣＣＤ部１０３に入光するので、ＣＣＤ部１０３を構成する光電変換素子には、入光した光の光量に応じた電荷が溜まる。ＣＣＤに溜まった電荷を読み出し、Ａ／Ｄ変換部１０４にアナログ画像信号として出力する。
【００３８】
Ａ／Ｄ変換部１０４は、ＣＣＤ部１０３から出力されたアナログ画像信号に対して、サンプリング、ゲイン調整、Ａ／Ｄ変換等を行い、デジタル画像信号として出力する。そして、画像処理部１０５は、Ａ／Ｄ変換部１０４から出力されたデジタル画像信号に対して各種の画像処理を行い、処理済みのデジタル画像信号（画像データ）を出力する。
【００３９】
フォーマット変換部１１５は、画像処理部１０５から出力されたデジタル画像信号（画像データ）のフォーマットをＪＰＥＧなどのフォーマットに変換し、画像記録部１１６に出力する。そして、画像記録部１１６は、フォーマット変換された画像データを所定のメモリに記録する処理を行う。
【００４０】
以上説明した処理により、静止あるいは動作中の被写体に対しても撮影が可能であるが、最適に顔検出を行うことで、顔検出率が向上し、ライブ画・静止画ともに適正な検出を行うことが可能となり、ピント合わせや露出制御などが良好となる。以下、本実施の形態での顔検出機能の詳細を説明する。
【００４１】
＜顔検出＞
本実施の形態における顔検出機能では、画像データに対して時計方向を正方向として、「０度」方向、「＋９０度」方向、「−９０度」方向、「１８０度」方向といった角度の情報を入力することで、その方向を中心に、所定の範囲に入る顔を検出する。所定の範囲が例えば−４５度〜＋４５度の傾き範囲である場合は、この範囲内に入る顔を検出することが可能となる。ここでは、「０度」方向、「＋９０度」方向、「−９０度」方向、「１８０度」方向の４つの検出方向（対象物検出条件）のうち、どの方向で顔検出を実行するか判断する方法の一例を説明する。
【００４２】
図２は、本実施の形態において顔検出処理を実行する際の顔検出方向を決定する流れを示すフローチャートである。本フローチャートでは、複数の判断基準をもとに、顔検出方向を決定する。本実施の形態において顔検出処理は、ＣＣＤ部１０３にて生成された画像を用いて、被写体像をリアルタイムで背面モニター１１０に表示するモードに設定されると開始される。すなわち、係るモードが設定されている際、顔検出処理は、連続的な周期で実行される。なお、顔検出処理は、制御部１０２が顔検出部１０６などを制御し実行される。
【００４３】
先ずステップＳ２０１において制御部１０２は、顔検出部１０６を制御して、「０度」方向、「＋９０度」方向、「−９０度」方向、「１８０度」方向のうち、基準方向として設定されている１つの方向において、顔検出を行う。基準方向の初期設定は「０度」に設定されており、この方向から−４５度〜＋４５度の傾き範囲に入る顔を検出することができる。この基準方向は、後述するが、別の方向で顔が検出されるとその方向が基準方向として新たに設定される。
【００４４】
ステップＳ２０２において制御部１０２は、顔検出可否判断部１０７を制御し、ステップＳ２０１で顔が検出できたかを判定し、検出できていればステップＳ２０３へ、検出できていなければステップＳ２０４へ進む。
【００４５】
ステップＳ２０３においては、制御部１０２は、顔が検出できたと判定されたので、連続で顔が検出されなかった回数を表すＦａｃｅＬｏｓｔの値を０に設定し、このフローを抜ける。そして、被写体像をリアルタイムで背面モニター１１０に表示するモードが依然として設定されていれば、再びステップＳ２０１から処理を開始する。
【００４６】
ステップＳ２０４においては、制御部１０２は、顔が検出できなかったと判定されたので、連続で顔が検出されなかった回数を表すＦａｃｅＬｏｓｔが、閾値ＴＨ＿ＦａｃｅＬｏｓｔに到達したかを判定する。達していなければステップＳ２０５へ進み、達していればステップＳ２０６へ進む。
【００４７】
ステップＳ２０５においては、制御部１０２は、ＦａｃｅＬｏｓｔの値に１をプラスする。すなわち、顔が連続して検出（確認）できなければ、ステップＳ２０１、Ｓ２０２、Ｓ２０４、及びＳ２０５からなるステップを繰り返すため、ＦａｃｅＬｏｓｔの値が増加して閾値ＴＨ＿ＦａｃｅＬｏｓｔに近付いていく。なお、ＦａｃｅＬｏｓｔの値は、顔検出履歴保持部１０８により保持され、管理される。
【００４８】
人物の顔は、照明の状況の変化や不意に横を向いたりすることなどにより、短い期間だけ一時的に検出できなくなる可能性もある。その場合、被写体はすぐに顔検出できる状態に戻っても、顔検出を実行する方向が異なると、その被写体の顔を検出するまでに時間がかかってしまう。本実施の形態では、このような状態を防ぐ為に、閾値ＴＨ＿ＦａｃｅＬｏｓｔを設け、顔が検出されなくなっても一定期間は直前に顔が検出できた方向で顔検出を実行しつづけるようにしている。
【００４９】
一方、ステップＳ２０６においては、ＦａｃｅＬｏｓｔが閾値ＴＨ＿ＦａｃｅＬｏｓｔに達しているため、制御部１０２は、検出する顔の傾き範囲を拡大して、顔検出部１０６により顔検出を実行する。これは、顔が検出されなくなってからある期間以上経過しているため、本デジタルカメラに縦横姿勢の変化が生じ、これによって被写体の顔の傾きが基準方向で検出できる被写体が現れた可能性があると考えられるためである。
【００５０】
そこで、被写体が存在する可能性が高い一つの方向を重点的に検出しつつ、複数の方向で顔検出を実行するようにする。例えば、「０度」方向が基準方向に設定されている場合は、「０度」方向、「＋９０度」方向、「０度」方向、「−９０度」方向というように、４回の顔検出を１セットとして複数の方向について顔検出を行う。また、「９０度」方向が基準方向に設定されている場合は、「９０度」方向、「１８０度」方向、「９０度」方向、「０度」方向という４回の顔検出が１セットとなる。また、「−９０度」方向が基準方向に設定されている場合は、「−９０度」方向、「０度」方向、「−９０度」方向、「１８０度」方向という４回の顔検出が１セットとなる。
【００５１】
この顔検出の１セットの処理を完了すると、ステップＳ２０７へ進む。
【００５２】
ステップＳ２０７においては、制御部１０２は顔検出可否判断部１０７により、ステップＳ２０６で顔が検出できたかを判定し、検出できていればステップＳ２０８へ、検出できていなければステップＳ２０９へ進む。
【００５３】
ステップＳ２０８では、「０度」方向、「＋９０度」方向、「−９０度」方向、「１８０度」方向のうち、ステップＳ２０６で顔が検出できた方向を新たな基準方向として設定する。なお、顔が複数の方向で検出された場合には、もっとも多くの顔が検出された方向を基準方向とすればよい。また、同数の顔が複数の方向で検出された場合には、検出された顔のサイズや位置、あるいは、顔としての確からしさを基準に、最も主被写体らしい人物の顔が検出された方向を基準方向とすればよい。
【００５４】
そしてステップＳ２０８で新たな基準方向を設定した後は、このフローを抜け、被写体像をリアルタイムで背面モニター１１０に表示するモードが依然として設定されていれば、再びステップＳ２０１から処理を開始する。
【００５５】
一方、ステップＳ２０９においては、ステップＳ２０６で１セットの顔検出を実行し終わっても顔が検出されなかったので、制御部１０２は空方向判別部１０９を制御し、基準方向を決定し直すため、空方向を判別する。
【００５６】
ここで、空方向判別の方法について説明する。ここでは空方向を判別する一つの例として画面内の輝度分布を使用する方法について述べる。
【００５７】
図３は、本実施の形態において空方向を判別する方法を示すフローチャートである。
【００５８】
先ずステップＳ３０１において空方向判別部１０９は、最初に画面を複数のブロックに分けて、ブロック毎の輝度値を取得する。図４は、空方向判別で用いる画面内の領域の一例を示す図である。
【００５９】
ここでの説明では、図４に示すように、画面を横１２×縦８ブロックに分け、画面上部分４１、画面下部分４２、画面左部分４３、画面右部分４４として分割したものとする。
【００６０】
ステップＳ３０２においては、空方向判別部１０９は、画面内のブロック毎の輝度値をもとに、画面上部分の輝度値の平均Ｙｕｐ、画面下部分の輝度値の平均Ｙｄｏｗｎ、画面左部分の輝度値の平均Ｙｌｅｆｔ、画面右部分の輝度値の平均Ｙｒｉｇｈｔを算出する。なお、画面上部分、下部分を上下２段、左部分、右部分を左右３段ずつとしてもよい。
【００６１】
次にステップＳ３０３において空方向判別部１０９は、Ｙｕｐ、Ｙｄｏｗｎ、Ｙｌｅｆｔ、Ｙｒｉｇｈｔから、Ｄｉｖ０＝Ｙｕｐ／Ｙｄｏｗｎ、Ｄｉｖ１＝Ｙｌｅｆｔ／Ｙｒｉｇｈｔ，Ｄｉｖ２＝Ｙｒｉｇｈｔ／Ｙｌｅｆｔを算出する。
【００６２】
次にステップＳ３０４において空方向判別部１０９は、Ｄｉｖ０、Ｄｉｖ１、Ｄｉｖ２から、最大値ＤｉｖＭａｘを求める。
【００６３】
そして、ステップＳ３０５〜Ｓ３０９では、ＤｉｖＭａｘから空方向を判別する。
【００６４】
ここでは、ＤｉｖＭａｘ＝Ｄｉｖ１でかつ、ＤｉｖＭａｘが閾値ＴＨ＿Ｄｉｖ以上の場合、画面左部分が明るく画面右部分が暗い、つまり、画面左部分が空で画面右部分が地面である可能性があることから、画面左方向を空方向と判断する。同様に、ＤｉｖＭａｘ＝Ｄｉｖ２でかつ、ＤｉｖＭａｘが閾値ＴＨ＿Ｄｉｖ以上の場合、画面右方向を空方向と判断する。それ以外、つまりＤｉｖＭａｘ＝Ｄｉｖ０またはＤｉｖＭａｘ＜ＴＨ＿Ｄｉｖの場合、画面上方向を空方向と判断する。
【００６５】
以上説明した処理により、画面内の輝度分布から空方向を判別することが可能となる。
【００６６】
図２の説明に戻る。空方向の判別後（ステップＳ２０９）のステップＳ２１０においては、制御部１０２は、空方向判別部１０９により空方向が判別されたかどうか判断する。もし空方向が判別された場合はステップＳ２１１へ進み、判別されなかった場合は、基準方向を変えることなくステップＳ２０６に進んで、再び、基準方向に重点を置いた４回の顔検出を行う。なお、空方向が判別されない場合とは、不図示であるが、図３のステップＳ３０５〜Ｓ３０９の処理でいずれの条件にも当てはまらなかった場合をいう。
【００６７】
一方、ステップＳ２１１においては、空方向が判別されたため、制御部１０２は、空の位置が上側となるように、「０度」方向、「＋９０度」方向、「−９０度」方向、「１８０度」方向のいずれかを基準方向として設定（決定）する。そして、ステップＳ２０６に進んで、新たに設定された基準方向に重点を置いた４回の顔検出を行う。
【００６８】
以上説明した処理では、顔検出履歴保持部１０８により保持された検出結果をもとに顔が検出されている間は、その顔が検出できる方向を基準方向として維持し、その基準方向において顔検出を実行し続ける。そして、顔が検出されなくなってから一定期間後は、基準方向を中心として検出条件を変更、すなわち検出可能な傾き角度を拡大して顔検出を行う。そして検出可能な傾き角度を拡大しても顔が検出できなければ、空方向を判定し、その判定結果に応じて基準方向を新たに設定して顔検出を行うようにする。
【００６９】
このように構成することにより、本実施の形態では、顔が検出できている間は、なるべく限られた傾き範囲でのみ顔を検出することで顔検出に要する時間を短縮している。さらに、顔を見失った場合は、顔検出範囲を広げるとともに、検出に成功しそうな顔の傾き角度を推定することで、必要以上に時間をかけることなく顔を検出できるようにしている。すなわち、顔などの対象物検出を実行するにあたり、複数の対象物検出条件を使い分けることで、より速いタイミングで、対象物を検出することを可能としている。
【００７０】
また、本実施の形態で実行される顔検出では、重力センサーなどを用いる必要が無いため、安価で簡易な構成で良好な顔検出をすることができ、コスト減及び装置のコンパクト化が可能である。
【００７１】
なお、上述で説明した、顔が検出されている間は、その顔が検出できる方向を基準方向として維持し、顔が検出されなくなってからは、検出可能な傾き角度を拡大して顔検出を行う構成は、本発明でいう第一の検出条件決定手段の一処理例に対応するものである。また、検出可能な傾き角度を拡大しても顔が検出できなければ、空方向を判定し、その判定結果に応じて基準方向を新たなに設定して顔検出を行う構成は、本発明でいう第二の検出条件決定手段の一処理例に対応するものである。
【００７２】
また、本実施の形態では、はじめは基準方向についてのみ顔検出を行う例をあげて説明を行ったが、１つ目の顔が見つかるまでは、基準方向を中心として、検出可能な傾き角度を広げて顔検出を行うように構成しても構わない。
【００７３】
以上、この発明の実施の形態について図面を参照して詳述してきたが、具体的な構成はこの実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲で設計変更等が可能である。
【００７４】
なお、本発明を実現するために、上述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記憶媒体を用いても良い。この場合には記憶媒体をシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって本発明の目的が達成される。
【００７５】
この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７６】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００７７】
また、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）等が実際の処理の一部又は全部を行う場合も含まれることは言うまでもない。
【００７８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。この場合には、書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行ってもよい。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施の形態に係る撮像装置の一例であるデジタルカメラの機能構成を示すブロック図である。
【図２】本発明の実施の形態に係る顔検出処理を実行する際の顔検出方向を決定する流れを示すフローチャートである。
【図３】本発明の実施の形態に係る顔検出処理において、空方向を判別する方法を示すフローチャートである。
【図４】本発明の実施の形態に係る空方向判別で用いる画面内の領域の一例を示す図である。
【符号の説明】
【００８０】
１０１  操作部
１０２  制御部
１０３  ＣＣＤ部
１０４  Ａ／Ｄ変換部
１０５  画像処理部
１０６  顔検出部
１０７  顔検出可否判断部
１０８  顔検出履歴保持部
１０９  空方向判別部
１１０  背面モニター
１１１  ＡＦ処理部
１１２  ＡＥ処理部
１１３  ＥＦ処理部
１１４  フラッシュ部
１１５  フォーマット変換部
１１６  画像記録部
１１７  外部接続部
１１８  レンズ
１１９  露出機構
【図１】
2010157969.tif 000003
【図２】
2010157969.tif 000004
【図３】
2010157969.tif 000005
【図４】
2010157969.tif 000006