以下、本発明の実施形態を、図面を参照しながら説明する。図1は、本発明の実施形態に適用可能なデジタルビデオカメラ100の一例の構成を示す。このデジタルビデオカメラ100は、本発明による自動合焦を行う自動焦点調節機能を搭載している。
図1において、第1固定レンズ群101、変倍レンズ102、絞り103、第2固定レンズ群104およびフォーカスコンペンセータレンズ(以下、フォーカスレンズ)105により撮像光学系が構成される。変倍レンズ102は、光軸方向に移動してズーム倍率を変更する。フォーカスレンズ105は、変倍レンズ102によるズーム倍率の変更に伴う焦点面の移動を補正する機能と、フォーカシングの機能とを兼ね備える。
撮像手段としての撮像素子106は、CCDセンサやCMOSセンサといった素子により、入射された光を光電変換により電気信号である撮像信号に変換して出力する。撮像素子106は、図示されないタイミングジェネレータから供給される各種タイミング信号に応じて、画素からの電荷の読み出しやシャッタ制御が行われる。撮像素子106からの電荷の読み出しを所定間隔、例えばフィールドまたはフレーム周期で連続的に行うことで、フィールドまたはフレーム周期毎に更新される撮像信号を得ることができ、動画の撮影が可能となる。
撮像信号処理部107は、撮像素子106の出力をサンプリングするCDS部、ゲイン調整を行うAGCおよびアナログ信号の撮像信号をデジタル信号に変換するA/D変換部を備える。カメラ信号処理部108は、撮像信号処理部107の出力信号に対して各種の画像処理を施し、映像信号を生成する。また、カメラ信号処理部108は、生成された映像信号に対して、MPEG2方式やH.264|AVC方式といった所定の圧縮符号化方式で圧縮符号化を施し、圧縮映像信号を生成する。
モニタ109は、カメラ信号処理部108で生成された映像信号を表示する。記録手段としての記録再生部115は、カメラ信号処理部108から出力された圧縮映像信号の、磁気テープ、光ディスク、半導体メモリといった記録媒体への記録と、記録媒体に記録された圧縮映像信号の再生を行う。
設定手段としてのAFゲート112は、後述する制御部114から供給される情報に基づき、撮像信号処理部107から供給された、撮像素子106の全画素による出力信号のうち、焦点検出に用いられる領域の信号のみを選択的に通過させる。以下では、焦点検出に用いられる領域(AF信号取得領域)を、AF枠と呼ぶ。すなわち、AF枠は、焦点検出の際に用いる信号の評価を行う評価枠である。
取得手段としてのAF信号処理部113は、AFゲート112を通過した信号、すなわちAF信号取得領域の中の信号からバンドパスフィルタ処理により高周波成分を抽出する。AF信号処理部113は、抽出した高周波信号から、AFゲート112を通過した信号の輝度レベルの最大値と最小値の差分である輝度差成分を生成する。そして、この輝度差成分から焦点信号を生成する。ここで、焦点信号は、実際には、撮像素子106からの出力信号に基づいて生成される映像の鮮鋭度(コントラスト状態)を表す信号である。この鮮鋭度は、撮像光学系の焦点状態によって変化するので、精鋭度を表す信号は、撮像光学系の焦点状態を評価するAF評価値として用いられる。
検出手段としての顔検出処理部116は、カメラ信号処理部108から供給される映像信号に対して公知の顔認識処理を施し、撮像画面内の人物の顔領域(顔)を検出する。顔検出処理部116は、例えば1フレーム周期あるいは数フレーム周期など、所定の周期で顔認識処理を行う。顔検出処理部116による顔領域の検出結果は、後述する制御部114に供給される。
なお、顔検出処理部116に適用可能な公知の顔検認識処理としては、例えば、画像データで表される各画素の階調色から肌色領域を抽出し、予め用意する顔の輪郭プレートとのマッチング度で顔を検出する方法が知られている。また、周知のパターン認識技術を用いて、目、鼻、口等の顔の特徴点を抽出することで顔検出を行う方法なども周知である。さらに、本発明に適用可能な顔認識処理の手法については、これらの手法に限るものではなく、他の手法を用いてもよい。
ズーム駆動部110は、変倍レンズ102を移動させるためのアクチュエータおよびそのドライバを含む。フォーカシング駆動部111は、フォーカスレンズ105を移動させるためのアクチュエータおよびそのドライバを含む。ズーム駆動部110およびフォーカシング駆動部111は、ステッピングモータ、DCモータ、振動型モータおよびボイスコイルモータなどのアクチュエータにより構成される。
制御部114は、例えばCPU、ROMおよびRAMを有し、CPUが、ROMに予め記憶されたプログラムに従い、RAMをワークメモリとして用いてこのデジタルビデオカメラ100の全体の動作を制御する。制御部114は、不揮発性メモリをさらに有し、後述する操作部117に対する操作や、他の処理により設定された設定値などを不揮発性メモリに記憶する。
合焦制御手段としての制御部114は、顔検出処理部116による顔領域の検出結果に基づき、撮像画面内の顔領域を含む位置に焦点検出に用いられる領域を追加するように、AFゲート112へ情報を送信する。また、制御部114は、AF信号処理部113の出力信号に基づいて、フォーカシング駆動部111を制御しフォーカスレンズ105を駆動し、合焦制御を行う。
さらに、制御部114は、撮像素子106のシャッタスピードを設定することができる。例えば、制御部114は、撮像素子106から出力された撮像信号や絞り103の状態などに基づきシャッタスピードを設定し、設定されたシャッタスピードに対応するタイミング信号を出力するように、図示されないタイミングジェネレータを制御する。さらにまた、制御部114は、時間を計測するタイマ機能を有する。
操作部117は、ユーザ操作を受け付ける複数の操作子が設けられ、操作子に対する操作に応じた制御信号を、制御部114に対して出力する。例えば、操作部117に対する操作により、このデジタルビデオカメラ100における電源のON/OFF、撮影の開始および終了、ズームなどの指示を行うことができる。
<第1の実施形態>
次に、本発明の第1の実施形態によるTV−AF制御の例について、図2のフローチャートを用いて説明する。この図2のフローチャートにおける各処理は、制御部114において、ROM予め記憶されたプログラムに従ったCPUにより実行される。
ステップS201で、制御部114が処理を開始する。この図2に例示されるフローチャートによる処理は、例えば1フィールド画像を生成するための撮像素子106からの撮像信号の読み出し周期で、ステップS202〜ステップS218の処理が繰り返し実行される。
ステップS202で、制御部114は、顔検出処理部116で最新の撮影画像に対して顔認識処理が実行された結果、認識された顔の有無を取得する。そして、次のステップS203で、ステップS202で取得された顔の有無に基づき顔認識ができたか否かが判断される。若し、顔認識できたと判断されたら、処理はステップS204に移行される。
ステップS204で、制御部114は、顔検出処理部116での顔認識処理により顔が認識された画面上の位置情報を基に、顔領域を含む被写体に追従して移動する所定のAF枠と被写体に追従しない所定のAF枠とを、AFゲート112に設定する。位置情報としては、顔が認識された領域の中心位置や、目、鼻、口などの顔の特徴点の位置を示す情報を用いてもよい。
なお、以下では、「顔領域を含む被写体に追従して移動する所定のAF枠」を「顔枠」と呼び、「被写体に追従しない所定のAF枠」を「通常枠」と呼ぶ。
ここで、ステップS204での通常枠(第2の評価枠)の設定方法の例として、顔枠(第1の評価枠)を含む画面上の中央を中心とした固定枠を設定する。また、通常枠は、画面上に1つに限るものではなく、複数存在しても構わない。その場合、少なくとも1つの通常枠が顔枠を含むような大きさに設定する。
次のステップS205で、制御部114は、AF信号処理部113から、顔枠および通常枠のそれぞれによるAF評価値を取得し、次のステップS206で、顔が検出された状態を示すフラグをレジスタなどにセットする。以下では、「顔が検出された状態を示すフラグ」を、「顔検出中フラグ」と呼ぶ。顔検出中フラグがセットされると、処理はステップS216に移行される。
ステップS216では、各AF枠から取得されたAF評価値の履歴を残しておく。一例として、制御部114は、ステップS201で処理が開始されると、上述したような、ステップS202〜ステップS218で繰り返される処理の繰り返し数をカウントする。そして、このカウントによるカウンタ値と、AF枠を識別するための識別情報と、当該AF枠から取得されたAF評価値とを関連付けて、制御部114が有するRAMなどに記憶する。
そして、次のステップS217で、設定されている各AF枠からそれぞれ取得されたAF評価値を加算し、TV−AF処理で合焦制御を行う場合に主として用いるAF評価値を生成する。
ところで、、特に動画撮影時には、撮影中に、人物に限らず、主被写体とは異なる被写体が画面内に入ってくることが多く発生することが考えられる。ここで、顔枠のAF評価値と、通常枠のAF評価値とを同等に扱って合焦制御を行う場合について考える。この場合、例えば偶然に画面上の端部にある意図しない人物被写体が顔認識されてしまうと、撮影者が意図しない被写体に対して合焦制御が行われてしまい、一時的に合焦状態が不安定になることが起こり得る。
このような事態を避けるために、設定されている各AF枠から取得されたAF評価値の加算の仕方として、顔枠から取得したAF評価値に重み付けをして加算することが考えられる。顔枠から取得したAF評価値に重み付けを行うことにより、撮影者が意図する主人物被写体に対する合焦を、より容易に行うことが可能となる。
これに限らず、上述した顔検出処理部116での顔認識処理により顔が認識された画面上の位置情報によって、顔枠の重み付け比率を変更してもよい。例えば、顔が画面中央付近に検出された場合には、重み付けを大きくし、画面の端付近に検出された場合には、重み付けを小さくする。撮影者は、主人物被写体を画面中央付近に配置しながら撮影することが多いと考えられるため、画面上の顔位置に応じて重み付けを行うことで、撮影者が意図する主人物被写体に対する合焦を、より容易に行うことが可能となる。
ステップS218では、ステップS217で生成されたAF評価値を用いてTV−AF処理が実行される。このTV−AF処理は、公知の技術を用いることができ、例えば、AF評価値が最大になるように、AF評価値をモニタしつつフォーカスレンズ105を駆動して合焦を得る。換言すれば、フォーカスレンズ105を駆動してAF評価値のピーク値を探索することで、合焦を得る。また、TV−AF処理には、合焦が得られている状態において、フォーカスレンズ再駆動の必要性の有無を判断するために、AF評価値の低下があったか否かを判定する等、合焦を維持するための処理も含まれる。
上述のステップS203で、顔認識に失敗したと判断されたら、処理はステップS207に移行される。ステップS207では、制御部114により、顔検出中フラグがセットされているか否かが判定される。
若し、顔検出中フラグがセットされていないと判定されたら、処理はステップS213に移行される。ステップS213で、制御部114は、通常枠のみをAF枠としてAFゲート112に対して設定する。すなわち、顔認識に失敗し、且つ、顔検出中フラグがセットされていない場合には、現在の撮影シーンにおいては、主人物被写体が認識できない、若しくは、撮像画面内に存在しないシーンである可能性が大きいと判断することができる。
ステップS213で通常枠がAF枠として設定されると、処理はステップS214に移行され、当該通常枠からAF評価値が取得され、次のステップS215で。顔検出中フラグがクリアされる。そして、処理はステップS216に移行され、通常枠から取得したAF評価値を上述したように履歴として記憶し、次のステップS217でAF枠として設定された通常枠から取得したAF評価値が加算され、ステップS218でTV−AF制御がなされる。
一方、上述のステップS207で顔検出中フラグがセットされていると判定されたら、処理はステップS208に移行される。ステップS208では、上述したステップS205と同様にして、顔枠と通常枠とでAF評価値を取得する。
次のステップS209では、AF評価値の変動量を比較する閾値th(変動量閾値)を設定する。閾値thは、予め設定された固定値を用いることもできるし、所定の条件に基づき適応的に設定してもよい。ここでは、閾値thが予め設定された固定値を用いるものとして説明する。適応的に閾値thを設定する方法については、後述する。閾値thが設定されると、処理はステップS210に移行される。
ステップS210では、顔が認識されなくなったときのAF評価値の変動量を算出する。すなわち、ステップS208で取得した、顔枠を含む領域に設定された通常枠のAF評価値と、ステップS216で記憶された、顔枠を含む領域に設定された通常枠のAF評価値の履歴とから、AF評価値の変動量を算出する。例えば、ステップS208で取得した通常枠のAF評価値と、ステップS216で記憶された履歴における当該AF評価値の直前に取得されたAF評価値との差分が、顔が認識されなくなったときのAF評価値の変動量として求められる。そして、算出された変動量と、ステップS209で設定された閾値thとを比較する。
比較の結果、若し、AF評価値の変動量が閾値thよりも大きいと判断されたら、処理をステップSステップS213に移行させて、通常枠で取得されたAF評価値のみでTV−AF制御を行う。すなわち、この場合は、主人物被写体が撮像画面内に存在しなくなったと判断することができる。
一方、ステップS210での比較の結果、AF評価値の変動量が閾値thよりも小さいと判断されたら、処理はステップS211に移行される。すなわち、この場合は、撮像画面内に主人物被写体は存在しているが、当該人物が横を向いたり、目を閉じてしまったりなどして、顔が認識できなくなっている、若しくは、顔認識結果の信頼性が低下している状態であると判断することができる。
なお、以下では、撮像画面内に主人物被写体が存在しなくなった場合や、主人物被写体の顔が撮像画面内で認識できなくなった場合を、適宜、「撮像画面内に主人物被写体が存在しなくなった」などと記述する。
ステップS211では、前回と同じ位置に顔枠と通常枠とを設定し、次のステップS212で、上述したステップS205と同様にして、顔枠および通常枠の各枠のAF評価値を取得する。そして、処理はステップS216に移行され、上述したように各枠から取得されたAF評価値を履歴として記憶し、次のステップS217で、各AF枠から取得されたAF評価値を加算する。このとき、上述したように、顔枠から取得されたAF評価値に対して所定の重み付けを行うことができる。AF評価値が加算されると、ステップS218で、加算されたAF評価値に基づきTV−AF制御が行われる。
上述した図2のフローチャートのステップS203での判定において、顔認識に失敗した際の処理の意味について説明する。例えば、主人物被写体に合焦している場合、AF評価値のレベルが最大となっている。一方、主人物被写体が撮像画面内に存在しなくなった場合、主人物被写体の背景が撮像画面上に存在することになる。このときには、背景には合焦していないので、AF評価値が合焦時に比べて小さくなってしまう。同様に、パンニングなどにより撮影被写体を変えた場合にも、パンニングすることで合焦していない状態となってしまい、AF評価値が合焦時に比べて小さくなってしまうことが起こり得る。
したがって、主人物被写体に合焦している状態から当該主人物被写体が撮像画面内に存在しなくなった状態へと遷移すると、AF評価値の変動量が大きくなる。これに対して、主人物被写体が撮像画面内に継続的に存在している場合は、合焦状態が維持されることになり、AF評価値が大きいままで、AF評価値の変動量は、比較的小さい。
このように、顔認識の結果に基づき撮像画面内で主人物被写体が認識できなくても、撮像画面内に主人物被写体が継続的に存在しているか、既に存在していないかを、AF評価値の変動量に基づき判断することができる。
また、上述では、通常枠として顔枠を含む領域を確保しているため、当該通常枠に対して主人物被写体が大きく捉えられることになり、当該通常枠で取得されたAF評価値も、主人物被写体に対するAF評価値を強く反映している。そのため、撮像画面内に主人物被写体が存在しているにも関わらず、その人物が横を向いたり目を閉じたりして顔を認識できなくなった場合でも、通常枠AF評価値は、大きく変動しないと考えられる。
したがって、当該主人物被写体の顔状態の変化などにより、前回に対して顔枠内に存在するコントラストや顔画像のエッジ部分が一部異なってしまうことによるAF評価値の変動によって、主人物被写体が存在しなくなったと判断する誤判断が軽減される。
なお、上述では、顔枠を含む通常枠のAF評価値で変動量を比較するように説明したが、これはこの例に限定されない。すなわち、基本的に、主被写体人物が存在している場合には顔枠のAF評価値は変動しないと考えられる。そのため、顔枠のAF評価値で変動量を比較してもよいし、顔枠のAF評価値と顔枠を含む通常枠のAF評価値の両方の変動量を比較してもよい。
<AF評価値の変動量を比較する閾値の設定について>
上述した、ステップS209でAF評価値の変動量を比較する閾値thを適応的に設定する方法について説明する。先ず、第1の例として、閾値thをAF評価値のピーク値に応じて設定する場合について説明する。図3は、AF評価値とフォーカスレンズ位置との関係の例を示す。縦軸がAF評価値、横軸がフォーカスレンズ位置を示す。AF評価値がピーク値を示すフォーカスレンズ位置が合焦点となる。この図3に例示されるように、AF評価値は、コントラストが高い被写体の場合には、ピーク値に対する値の増減が急峻な特性を示し、コントラストが低い被写体の場合には、ピーク値に対する値の増減が緩慢な特性を示す。
ここで、フォーカスレンズを合焦点から距離aだけずらしてデフォーカスした場合の、合焦点に対するAF評価値の変動量について考える。この場合、高コントラストおよび低コントラストの被写体におけるAF評価値の変動量を、それぞれ変動量Aおよび変動量Bとすると、変動量A>変動量Bとなり、高コントラストの被写体の方が変動量が大きくなる。これにより、低コントラストの被写体と高コントラストの被写体とで同じ変動量を得ようとすると、低コントラストの被写体では、高コントラストの被写体の場合に比べてより大きくデフォーカスする必要があることが分かる。したがって、主人物被写体が低コントラストの場合、主人物被写体が存在していないことを判断するのが難しく、実際に主人物被写体が存在しなくなった場合に、合焦制御の応答性が低下してしまう。
そこで、上述のステップS209において、AF評価値の変動量を比較する閾値thを、AF評価値のピーク値に応じて設定することも考えられる。図4のフローチャートを用いて、この場合の閾値thの設定方法について説明する。ステップS401で、制御部114は、例えば図2のステップS218におけるTV−AF制御の結果に基づき、AF評価値のピーク値を取得し、次のステップS402で当該ピーク値が基準値よりも大きいか否かを判断する。若し、当該ピーク値が基準値よりも大きいと判断されたら、処理はステップS403に移行され、高コントラストの被写体に適用する閾値を、閾値thとして設定する。一方、当該ピーク値が基準値よりも小さいと判断されたら、処理はステップS404に移行され、低コントラストの被写体に適用する閾値を、閾値thとして設定する。なお、高コントラストおよび低コントラストにそれぞれ適用する閾値や、ステップS402で用いる基準値は、予め決められているものとする。なお、図3でも説明したように、低コントラストに適用する閾値は、高コントラストに適用する閾値よりも小さい値とする。
このように閾値thを設定することにより、被写体のコントラストの高低によるAF評価値の変動量判断に対する影響を軽減できる。そのため、所望するAF評価値の変動量の比較が可能となり、主人物被写体がまだ存在しているか否かの判断をより安定的に行うことができる。
なお、上述では、1の基準値を用意し、AF評価値のピーク値の大小を当該基準値と比較することで決定したが、これはこの例に限定されない。例えば、複数の異なる基準値を予め用意し、AF評価値のピーク値に応じて適当な基準値を選択するようにしてもよい。この場合、AF評価値の変動量を比較するための閾値thも、基準値の数に応じて予め用意する。
次に、第2の例として、ステップS209で用いる閾値thをシャッタスピードに応じて設定する場合について説明する。ここで、シャッタスピードが遅くなるほど、手振れの影響が大きくなる。AF評価値は、撮像素子106で撮像されて得られた撮像信号に基づき生成しているため、手振れによって撮像画面が流れてしまっている場合には、AF評価値が小さくなってしまう。したがって、シャッタスピードが遅いほど、AF評価値の変動量を比較するための閾値thの値を大きくする必要がある。
シャッタスピードに応じてAF評価値の変動量を比較するための閾値thの値を設定する一例の処理を、図5に示すフローチャートを用いて説明する。制御部114は、ステップS501で現在のシャッタスピードを取得し、次のステップS502で、取得されたシャッタスピードがスローシャッタか否かを判断する。例えば、シャッタスピードを所定値と比較して、当該シャッタスピードがスローシャッタか否かを判断することが考えられる。若し、スローシャッタであると判断されたら、処理はステップS503に移行され、スローシャッタに適用する閾値を、閾値thとして設定する。一方、スローシャッタではないと判断されたら、処理はステップS504に移行され、スローシャッタに適用する閾値より小さい値である閾値を、閾値thとして設定する。なお、ステップS503およびステップS504で設定する閾値は、それぞれ予め決められているものとする。
このように、シャッタスピードに応じて閾値thを設定することにより、AF評価値の変動量判断に対するシャッタスピードの影響を軽減できる。そのため、所望するAF評価値の変動量の比較が可能となり、主人物被写体がまだ存在しているか否かの判断をより安定的に行うことができる。
なお、上述では、シャッタスピードがスローシャッタか否かの判断により閾値thを決定したが、これはこの例に限られない。例えば、シャッタスピードを複数の異なるシャッタスピードと比較してもよい。この場合、AF評価値の変動量を比較するための閾値thも、比較を行うシャッタスピードの数に応じて予め用意する。
<AF枠の設定例>
ここで、顔枠および通常枠の設定例について、図6を用いて説明する。図6(a)は、撮像画面内に顔枠Aと通常枠Bとを設定した例を示す。通常枠Bが撮像画面の中央を中心として設定されると共に、顔認識がなされた位置に対して顔枠Aが設定される。
図6(b)は、通常枠のみでTV−AF制御を行う場合の例である。ここで、撮像画面内に通常枠のみを設定する場合、図6(a)に例示される状態から単純に顔枠Aを削除して、通常枠BのみでAF評価値を検出しTV−AF制御を行うことができる。これに限らず、撮影者が撮像画面の中央に被写体を配置する場合が多いことを考慮し、通常枠Bよりも小さい通常枠Cを、画面中央を中心としてさらに設定するようにしてもよい。この場合、通常枠Bおよび通常枠Cそれぞれから取得されたAF評価値を加算してTV−AF制御を行う。
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。本第2の実施形態では、上述した第1の実施形態に対し、顔認識に失敗し且つ顔検出中フラグがセットされている場合に、所定時間だけ顔枠を保持するようにしている。より詳細には、顔認識に失敗した場合に、その時点からの経過時間を計測し、所定時間の間、顔枠を保持して顔枠と通常枠とでTV−AF制御を行う。また、経過時間の計測開始後、所定時間が経過しても顔が認識されない場合、通常枠のみでTV−AF制御を行う。
図7は、本第2の実施形態によるTV−AF制御の一例を示すフローチャートである。なお、図7のフローチャートにおいて、上述した図2のフローチャートと共通する部分には同一の符号を付し、詳細な説明を省略する。また、この図7のフローチャートによる処理は、上述した図2のフローチャートと同様に、例えば1フィールド画像を生成するための撮像素子106からの撮像信号の読み出し周期で繰り返される。
ステップS201で制御部114により処理が開始された後、ステップS202の顔認識処理の結果に基づきステップS203で顔認識できたと判断されたら、処理はステップS204に移行される。ステップS204では、上述と同様にして顔枠および通常枠が設定され、これら顔枠および通常枠のそれぞれからAF評価値が取得され(ステップS205)、次のステップS206で、顔検出中フラグがセットされる。
そして、次のステップS220で、後述する顔認識NGカウント時間がクリアされる。すなわち、ステップS203で顔認識できた場合には、このステップS220で顔認識NGカウント時間が常にクリアされ、時間経過の観察を行わない。
処理はステップS216に移行され、各AF枠から取得されたAF評価値の履歴が記憶され、次のステップS217で各AF枠からそれぞれ取得されたAF評価値を加算する。そして、ステップS218で、この加算されたAF評価値を用いてTV−AF制御を行う。
一方、上述のステップS203で顔認識に失敗したと判断されたら、処理はステップS207に移行されて顔検出中フラグがセットされているか否かが判定される。若し、セットされていないと判定されたら、処理はステップS213に移行される。一方、セットされていると判定されたら、処理はステップS221に移行される。
ステップS221では、顔枠を保持する顔枠保持時間(第1の時間閾値)が設定される。この時間は、例えばこの図7のフローチャートの繰り返し周期でカウントアップされるカウンタのカウント値を単位として設定される。そして、処理はステップS222に移行され、後述するステップS223でカウントアップされる顔認識NGカウント時間と、ステップS221で設定された顔枠保持時間とが比較される。
ステップS222による比較の結果、顔認識NGカウント時間が顔枠保持時間を越えていると判断されたら、処理はステップS213に移行される。ステップS213では、通常枠のみがAF枠として設定され、次のステップS214で、当該通常枠からAF評価値が取得される。次のステップS215で顔検出中フラグがクリアされ、さらに次のステップS224で顔認識NGカウント時間がクリアされる。そして、処理がステップS216に移行される。この場合には、通常枠から取得されたAF評価値に基づきTV−AF制御が行われることになる。
一方、ステップS222による比較の結果、顔認識NGカウント時間が顔枠保持時間を越えていないと判断されたら、処理はステップS211に移行され、顔枠を保持し、顔枠と通常枠とからそれぞれAF評価値を取得する(ステップS212)。そして、次のステップS223で顔認識NGカウント時間がカウントアップされ、処理がステップS216に移行される。この場合には、顔枠および通常枠からそれぞれ取得されたAF評価値に基づきTV−AF制御が行われることになる。
上述のように、本第2の実施形態では、顔認識に失敗してから所定時間の間、顔枠を保持したままTV−AF制御を行うようにしている。これにより、主人物被写体の顔状態の変化や、主人物被写体の前を別の被写体が覆ってしまったり、手振れの影響などにより、AF枠が頻繁に切り替わってしまうことが防がれる。そのため、TV−AF制御をより安定的に行うことができる。
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。本第3の実施形態は、上述した第1および第2の実施形態によるTV−AF制御を組み合わせた例である。すなわち、本第3の実施形態では、図2のフローチャートを用いて説明した、顔認識に失敗した際に顔枠を保持するか否かを、顔認識NGカウント時間による判断と、AF評価値の変動量に基づく判断とを用いて判断する。
図8は、本第3の実施形態によるTV−AF制御の一例を示すフローチャートである。なお、図8のフローチャートにおいて、上述した図2および図7のフローチャートと共通する部分には同一の符号を付し、詳細な説明を省略する。また、この図8のフローチャートによる処理は、上述した図2のフローチャートと同様に、例えば1フィールド画像を生成するための撮像素子106からの撮像信号の読み出し周期で繰り返される。
図8のフローチャートにおいて、ステップS203で顔認識できたと判断されると、処理がステップS204に移行され顔枠と通常枠とが設定され、それぞれAF評価値が取得され(ステップS205)、顔検出中フラグがセットされる(ステップS206)。次に、ステップS220で顔認識NGカウント時間がクリアされ、ステップS216で各AF枠から取得されたAF評価値が履歴として記憶される。そして、取得された各AF評価値がステップS217で加算され、加算されたAF評価値に基づきTV−AF制御がなされる(ステップS218)。
一方、ステップS203で顔認識に失敗したと判断されたら、処理はステップS207に移行されて顔検出中フラグがセットされているか否かが判定される。若し、セットされていないと判定されたら、処理はステップS213に移行され、通常枠のみがAF枠として設定され、次のステップS214で通常枠のAF評価値が取得される。そして、次のステップS215で顔検出中フラグがクリアされ、さらに次のステップS224で顔認識NGカウント時間がクリアされ、処理がステップS216に移行される。この場合には、通常枠から取得されたAF評価値に基づきTV−AF制御が行われることになる。
上述のステップS207で顔検出中フラグがセットされていると判定されたら、処理はステップS221に移行され、顔枠を保持する顔枠保持時間が設定され、次のステップS222で、顔認識NGカウント時間と顔枠保持時間とが比較される。若し、顔認識NGカウント時間が顔枠保持時間を越えていると判断されたら、処理はステップS213に移行される。一方、顔認識NGカウント時間が顔枠保持時間を越えていないと判断されたら、処理はステップS208に移行される。
ステップS208では、顔枠と通常枠とからAF評価値が取得され、次のステップS209で、AF評価値の変動量を比較する閾値thを設定する。次のステップS210で、ステップS208で取得した通常枠のAF評価値と、ステップS216で記憶されたAF評価値の履歴とから、顔が認識されなくなったときのAF評価値の変動量を算出する。そして、算出された変動量と、ステップS209で設定された閾値th(変動量閾値)とを比較する。若し、変動量が閾値thよりも大きいと判断されたら、処理はステップS213に移行される。この場合には、通常枠から取得されたAF評価値に基づきTV−AF制御が行われることになる。
一方、変動量が閾値thよりも小さいと判定されたら、次のステップS211およびステップS212で、顔枠を保持したまま、顔枠と通常枠とでAF評価値を取得する。そして、ステップS223で顔認識NGカウント時間をカウントアップして、処理がステップS216に移行される。この場合には、顔枠および通常枠からそれぞれ取得されたAF評価値に基づきTV−AF制御が行われることになる。
顔認識に失敗し、且つ、顔検出中フラグがセットされているような場合、AF評価値の変動量が閾値thよりも大きかった場合は、合焦していた主人物被写体が存在しなくなった、パンニングなどにより撮影シーンが変わったなどと判断できる。この場合、通常枠をAF枠に設定するため、現在の主被写体への合焦制御を即座に行うことができる。
また、AF評価値の変動量が閾値thよりも小さい場合においては、主人物被写体は依然存在していることが考えられる。その一方で、例えば焦点距離がワイド側にあるなどの理由により、主人物被写体と背景とが存在したとしても、大きく合焦位置が変わらない場合も考えられる。その場合、主人物被写体が存在しなくてもAF評価値の変動が小さくなるため、顔枠を保持したまま顔枠と通常枠とからAF評価値を取得してTV−AF制御を行うことになる。
さらに、直前の処理において、顔枠が撮像画面の中央ではなく、画面の端側にあった場合も考えられる。その場合、撮影者は、例えば主人物被写体が存在しないシーンに切り替えて撮影を行い、画面中央に次の主被写体を合わせようとしているのに、画面中央の主被写体に対して合焦しない、あるいは、合焦が遅いといったことが起こりうる。
そのため、本第3の実施形態では、AF評価値の変動量が小さい場合でも顔検出NGカウント時間をカウントする。そして、所定時間の間、顔認識がなされない場合には、AF評価値の変動量に関わらず、通常の、画面中央を中心とした固定枠(すなわち通常枠)でTV−AF制御を行うように制御する。これにより、撮影者の意図した主被写体に対する合焦制御を安定的に行うことができる。
<顔枠保持時間の設定について>
なお、上述した第2および第3の実施形態で図7および図8のフローチャートを用いて説明した、ステップS221において設定される、顔枠を保持する顔枠保持時間は、顔検出処理部116での顔認識処理の周期に応じて適応的に設定することができる。
顔認識処理は、上述したようにパターン認識を利用して行っている。そのため、認識させる顔の数などにより、撮像信号に対する走査の回数も異なり、1回の認識処理時間も変わってくる。そのため、例えば認識させる顔の数が少ない場合と多い場合とで顔認識処理に要する時間が異なり、所定時間の間に処理可能な顔認識処理の回数も異なってくる。したがって、認識すべき顔が多ければ顔認識処理の信頼性が低くなり、誤って、主人物被写体が存在しないと判断されてしまう事態も起こり得る。
図9は、顔枠保持時間を顔認識処理の周期に応じて設定する一例の処理を示すフローチャートである。制御部114は、最初のステップS901で、顔検出処理部116による顔認識処理の検出周期を取得する。例えば、制御部114は、顔認識処理の認識周期を、顔検出処理部116から顔検出の位置、サイズ、信頼性などの情報と同様に取得する。次のステップS902で、取得された検出周期が基準周期よりも長いか否かを判定する。若し、長いと判定された場合には、処理はステップS903に移行され、監視時間の長い顔枠保持時間が設定される。一方、短いと判定された場合には、処理はステップS904に移行され、ステップS903で設定されたよりも監視時間の短い顔枠保持時間が設定される。これらステップS903またはステップS904で設定された顔枠保持時間を、ステップS221において設定する。なお、ステップS902で用いる基準周期は、予め決められているものとする。
このように顔枠保持時間を設定することで、顔認識処理に要する時間に関わらず、一定の回数だけ顔認識処理を行った結果から顔が認識されない状態であると判定することができ、安定的に判定結果を得ることができる。
顔枠保持時間は、顔認識処理の周期に応じて設定する方法に限られない。例えば、デジタルビデオカメラ100の撮影モードに応じて顔枠保持時間を設定するようにしてもよい。これは、例えば静止画撮影の場合、動画撮影と比較して、一瞬のシャッタチャンスを確実に捉える必要性があるためである。
すなわち、静止画撮影を行うモードにおいて、動画撮影モードと共通の顔枠保持時間を設定した場合、撮影者の所望する一瞬のシーンが撮影できない、あるいは、主被写体に合焦しないなどにより、撮影者に不快感を与えてしまう。そのため、静止画撮影時には、顔枠保持時間の設定を短くしAF枠の切り替わりを速くする必要がある。さらに、静止画撮影時には、主人物被写体も安定した位置にあり、構図も決まっていることが多いため、顔が認識されたり、認識されなかったりすることが頻繁には発生しないと考えられる。
図10は、顔枠保持時間を撮影モードに応じて設定する一例の処理を示すフローチャートである。制御部114は、最初のステップS1001で、現在の撮影モードを取得し、次のステップS1002で、現在の撮影モードが動画撮影モードであるか否かを判定する。若し、動画撮影モードであると判定された場合には、処理はステップS1003に移行され、監視時間の長い顔枠保持時間を設定する。一方、静止画撮影モードであると判定された場合には、処理はステップS1004に移行され、ステップS1003で設定されたよりも監視時間の短い顔枠保持時間を設定する。これらステップS1003またはステップS1004で設定された顔枠保持時間を、ステップS221において設定する。
なお、上述では、デジタルビデオカメラ100の撮影モードが動画撮影モードおよび静止画撮影モードの何れであるかでステップS1002の判定を行っているが、これはこの例に限られない。例えば、ある特定の撮影モード、例えば、人物を撮影する場合に用いるポートレートモードか否かで判断してもよい。これにより、撮影者の撮影するシーンや条件に応じて、安定的に合焦制御を行うことができる。
<第4の実施形態>
次に、本発明の第4の実施形態について説明する。本第4の実施形態は、上述した第3の実施形態によるTV−AF制御に対し、AF評価値の変動量が閾値thよりも大きい場合にも、所定時間の間、AF枠を顔枠に設定し、当該所定時間の経過後に、AF枠を通常枠のみとしてTV−AF制御を行う。
図11は、本発明の第4の実施形態によるTV−AF制御の一例を示すフローチャートである。なお、図11のフローチャートにおいて、上述した図2、図7および図8のフローチャートと共通する部分には同一の符号を付し、詳細な説明を省略する。また、この図11のフローチャートによる処理は、上述した図2のフローチャートと同様に、例えば1フィールド画像を生成するための撮像素子106からの撮像信号の読み出し周期で繰り返される。
図11のフローチャートにおいて、ステップS203で顔認識できたと判断されると、処理がステップS204に移行され顔枠と通常枠とが設定され、それぞれAF評価値が取得され(ステップS205)、顔検出中フラグがセットされる(ステップS206)。次に、ステップS220で顔認識NGカウント時間がクリアされ、ステップS240で後述するAF評価値変動有りフラグがクリアされる。
そして、ステップS216で各AF枠から取得されたAF評価値が履歴として記憶される。そして、取得された各AF評価値がステップS217で加算され、加算されたAF評価値に基づきTV−AF制御がなされる(ステップS218)。
一方、ステップS203で顔認識に失敗したと判断されたら、処理はステップS207に移行されて顔検出中フラグがセットされているか否かが判定される。若し、セットされていないと判定されたら、処理はステップS213に移行され、通常枠のみがAF枠として設定され、次のステップS214で通常枠のAF評価値が取得される。そして、ステップS215で顔検出中フラグがクリアされ、次のステップS224で顔認識NGカウント時間がクリアされ、さらに次のステップS246でAF評価値変動有りフラグがクリアされ、処理がステップS216に移行される。この場合には、通常枠から取得されたAF評価値に基づきTV−AF制御が行われることになる。
上述のステップS207で顔検出中フラグがセットされていると判定されたら、処理はステップS241に移行され、AF評価値変動有りフラグがセットされているか否かが判定される。若し、セットされていないと判定されたら、処理はステップS221に移行され、顔枠を保持する第1の顔枠保持時間が設定され、次のステップS222で、顔認識NGカウント時間と第1の顔枠保持時間とが比較される。若し、顔認識NGカウント時間が第1の顔枠保持時間を越えていると判断されたら、処理はステップS213に移行される。一方、顔認識NGカウント時間が第1の顔枠保持時間を越えていないと判断されたら、処理はステップS208に移行される。
ステップS208では、顔枠と通常枠とからAF評価値が取得され、次のステップS209で、AF評価値の変動量を比較する閾値thを設定する。次のステップS210で、ステップS208で取得した通常枠のAF評価値と、ステップS216で記憶されたAF評価値の履歴とから、顔が認識されなくなったときのAF評価値の変動量を算出する。そして、算出された変動量と、ステップS209で設定された閾値thとを比較する。
若し、ステップS210で変動量が閾値thよりも大きいと判断されたら、処理はステップS242に移行され、AF評価値変動有りフラグがセットされる。一方、変動量が閾値thよりも小さいと判断されたら、処理はステップS243に移行され、AF評価値変動有りフラグがクリアされる。ステップS242またはステップS243の処理が完了すると、処理はステップS211に移行される。
次のステップS211およびその次のステップS212で、顔枠を保持したまま、顔枠と通常枠とでAF評価値を取得する。そして、ステップS223で顔認識NGカウント時間をカウントアップして、処理がステップS216に移行される。この場合には、顔枠および通常枠からそれぞれ取得されたAF評価値に基づきTV−AF制御が行われることになる。
上述のステップS241で、AF評価値変動有りフラグがセットされていると判定されたら、処理はステップS244に移行される。ステップS244では、顔枠を保持する第2の顔枠保持時間(第2の時間閾値)が設定される。そして、次のステップS245で、顔認識NGカウント時間と第2の顔枠保持時間とが比較される。若し、顔認識NGカウント時間が第2の顔枠保持時間を越えていると判断されたら、主人物被写体が存在しなくなったと判定し、処理はステップS213に移行される。この場合には、AF枠が通常枠のみとされ、TV−AF制御は、通常枠から取得されたAF評価値に基づき行われることになる。
一方、顔認識NGカウント時間が第2の顔枠保持時間を越えていないと判断されたら、処理はステップS211に移行される。この場合には、顔枠および通常枠とからそれぞれ取得されたAF評価値に基づきTV−AF制御が行われることになる。
なお、上述のステップS244で設定される第2の顔枠保持時間は、第1の顔枠保持時間よりも短い時間に設定する。換言すれば、第1の顔枠保持時間による監視時間を、第2の顔枠保持時間による監視時間よりも長く設定する。すなわち、第2の顔枠保持時間は、既にAF評価値の変動量が閾値thよりも大きいと判断された場合に設定される時間である。そのため、第2の顔枠保持時間を第1の顔枠保持時間よりも短く設定することで、主人物被写体に対する合焦制御を安定的に行うことが可能となる。
ここで、ステップS210においてAF評価値の変動量が閾値thよりも大きいと判断された場合に、AF枠を即座に通常枠に設定するのではなく、顔枠を所定時間保持してからAF枠を通常枠に設定するのは、以下の理由による。
第1に、AF評価値の変動量が閾値thを越えた場合であっても、再度、極めて短時間で再び顔が検出されてしまう可能性があるからである。このような場合の例としては、合焦制御の応答性が高速である場合に、一時的に主人物被写体が撮像画面内から消失した、あるいは、手振れなどの影響で撮影映像が一時的にデフォーカスしてしまったような場合が挙げられる。
このような場合に、AF枠を固定的な通常枠に切り換えた後、短時間で顔が検出され、再度、顔枠を用いる設定に切り換えてしまうと、合焦制御が不安定な状態になってしまうおそれがある。そのため、AF評価値が大きく変動した場合でも、所定時間の間、顔枠を監視し、顔枠に対して顔が認識されないことが安定的に確認されてから、AF枠を通常枠に切り換える。これにより、合焦制御を安定的に行うことができる。
第2に、主人物被写体が横を向いたなど、被写体としての状態が一時的に変化した際に、顔枠に存在していたコントラストやエッジ部分が状態変化前後で異なることにより、AF評価値が大きく変動することが有り得る。このような場合、AF評価値の変動に応じて即座にAF枠を切り換えると、主人物被写体が撮像画面の中央部分にいない場合、合焦状態が主人物被写体からずれていってしまう可能性がある。このような場合に、顔枠を所定時間の間保持した状態で、再度、顔枠内に顔が認識されるか否かを見極めることで、撮影者が意図しない被写体に合焦してしまう事態を軽減することができる。
なお、上述の図11のフローチャートにおいて、ステップS244で設定される、顔枠を保持する第2の顔枠保持時間を、第3の実施形態において図9を用いて説明したように、顔認識処理の検出周期に応じて設定するようにしてもよい。この場合、本第4の実施形態においては、ステップS221で設定される第1の顔枠保持時間の方がステップS244で設定される第2の顔枠保持時間よりも長くなるように設定する。
以上説明したように、本発明は、顔認識処理により主人物被写体の顔が認識された場合、例えば顔認識された領域を含む主人物被写体に追従する顔枠と、主人物被写体に追従しない通常枠とを設定する。顔枠から取得されたAF評価値と、通常枠から取得されたAF評価値とを加算して生成したAF評価値を用いて、合焦制御を行う。
そして、上述の第1、第3および第4の実施形態では、顔認識処理により顔が認識されなくなった場合に、撮像画面内に主人物被写体が依然として存在しているか否かを、AF評価値の変動量に基づき判断している。そのため、合焦制御を安定的に行うことができる。
また、上述では、AF評価値の変動量を比較する閾値thを、AF評価値のピーク値やシャッタスピードに応じて変更するようにしている。これにより、被写体のコントラストやスローシャッタ時の手振れの影響によるAF評価値の変動を軽減し、AF評価値の変動の監視をを安定的に行うことができる。
さらに、上述の第2〜第4の実施形態では、顔が認識されなくなった場合に、顔が認識されないことを所定時間の間、監視するようにしている。これにより、一時的に主人物被写体が認識できなくなった場合、すなわち、主人物被写体が直ちに再認識されてしまう状態でも、AF枠を即座に通常枠のみに切り換える動作が抑制され、合焦制御を安定的に行うことができる。
このように、本発明の各実施形態により、顔認識結果に応じた頻繁なAF枠の切り替えが抑制され、顔が認識されなくなった場合にも、合焦制御を安定的に行うことができる。それに伴い、撮影者が意図しない被写体への合焦動作を軽減することができ、意図する主人物被写体に対する合焦制御が安定的に行われることにより、撮影者の不快感を軽減することが実現可能となる。