以下、図面を参照して本発明の好ましい実施形態について詳説する。
≪全体構成≫
図1、2は、本発明が適用されたデジタルカメラの一例を示す外観図である。
同図に示すように、このデジタルカメラ10は、いわゆるコンパクトタイプのデジタルカメラである。
前後方向の厚みの薄い矩形の箱状に形成されたカメラボディ12の正面には、撮影レンズ14、フラッシュ16等が配置されている。また、上面には、レリーズボタン18、ズームレバー20、電源ボタン22等が配置されており、背面には、モニタ24、メニュー/OKボタン26、十字ボタン28、Backボタン30、再生ボタン32等が配置されている。
撮影レンズ14は、沈胴式のズームレンズで構成され、デジタルカメラ10の電源をONすると、カメラボディ12から繰り出される。
フラッシュ16は、たとえば、キセノン管で構成され、必要に応じて発光される。
レリーズボタン18は、いわゆる「半押し」と「全押し」が可能な2段階式の押下ボタンで構成される。このレリーズボタン18が半押しされると、デジタルカメラ10に撮影準備の指示(S1)が入力され、全押しされると、本撮影の指示(S2)が入力される。
ズームレバー20は、レリーズボタン18の周りを左右に揺動可能に設けられている。このズームレバー20が、一方に操作されると、デジタルカメラ10にテレ方向のズーム指示が入力され、他向に操作されると、ワイド方向のズーム指示が入力される。
電源ボタン22は、押下ボタンで構成される。デジタルカメラ10の電源がOFFの状態で、この電源ボタン22が押下されると、デジタルカメラ10の電源がONになる。また、デジタルカメラ10の電源がONの状態で、この電源ボタン22が一定時間押下されると、デジタルカメラ10の電源がOFFになる。
モニタ24は、たとえば、液晶ディスプレイで構成される。本実施の形態のデジタルカメラ10は、光学ファインダを備えていないため、このモニタ24が電子ファインダ(ライブビューモニタ)として使用される。すなわち、撮影時には、このモニタ24に撮像素子で捉えた画像がリアルタイムに表示される。撮影者は、このモニタ24にリアルタイムに表示される画像(スルー画像)を見て、ピント状態や構図等を確認する。また、このモニタ24は、撮影された画像(撮影済み画像)の再生に使用されるほか、デジタルカメラ10の各種設定時には、設定画面として使用される。
メニュー/OKボタン26は、メニュー画面の呼び出しを指示する操作ボタンとして機能するとともに、確定を指示するボタンとして機能する。
十字ボタン28は、上下左右の4方向に押下操作可能に設けられており、そのときのデジタルカメラ10の状態に応じた機能が割り当てられる。たとえば、撮影モード時には、右ボタンにマクロ機能の切り替えが割り当てられ、左ボタンにストロボモードの切り替えの機能が割り当てられる。また、再生モード時には、右ボタンに1コマ送りの機能が割り当てられ、左ボタンに1コマ戻しの機能が割り当てられる。
Backボタン30は、入力した操作情報等のキャンセルを指示するボタンとして機能し、再生ボタン32は、再生モードへ切り替えを指示するボタンとして機能する。
図3は、デジタルカメラ10の機能構成を示すブロック図である。
同図に示すように、デジタルカメラ10は、撮影レンズ14、レンズ駆動部50、フラッシュ16、フラッシュ制御部52、撮像素子54、CCD制御部56、アナログ信号処理部58、タイミングジェネレータ60、画像入力コントローラ62、AF処理部64、AE/AWB処理部66、画像処理部68、顔検出部70、圧縮/伸張処理部72、フレームメモリ74、メディア制御部76、記録メディア78、表示制御部80、モニタ24、操作部(レリーズボタン18、ズームレバー20、電源ボタン22、メニュー/OKボタン26、十字ボタン28、Backボタン30、再生ボタン32等)82、操作系制御部84、主要被写体候補エリア検出部86、主要被写体検出部88、CPU90、EEPROM92等を備えて構成される。
撮影レンズ14は、フォーカスレンズ110、ズームレンズ112、絞り114、シャッタ116を備えて構成される。フォーカスレンズ110とズームレンズ112は、互いに光軸に沿って前後移動可能に設けられている。フォーカスレンズ110を移動させることにより焦点調節(フォーカシング)が行われ、ズームレンズ112を移動させることにより変倍調整(ズーミング)が行われる。
絞り114は、たとえば、光彩絞りで構成され、撮像素子54への入射光量を調整する。
シャッタ116は、メカニカルシャッタで構成され、撮像素子54への光の入射を遮光する。
レンズ駆動部50は、フォーカスレンズ110を駆動するフォーカスレンズ駆動部120、ズームレンズ112を駆動するズームレンズ駆動部122、絞り114を駆動する絞り駆動部124、シャッタ116を駆動するシャッタ駆動部126とで構成される。
フォーカスレンズ駆動部120は、モータとモータドライバからなり、CPU90からの指令に応じて、フォーカスレンズ110をステップ駆動し、フォーカスレンズ110を光軸に沿って前後移動させる。
ズームレンズ駆動部122は、モータとモータドライバからなり、CPU90からの指令に応じて、ズームレンズ112をステップ駆動し、ズームレンズ112を光軸に沿って前後移動させる。
絞り駆動部124は、モータとモータドライバとからなり、CPU90からの指令に応じて、絞り114をステップ駆動し、その絞り径を拡縮させる。
シャッタ駆動部126は、モータとモータドライバとからなり、CPU90からの指令に応じて、シャッタ116を開閉させる。
フラッシュ制御部52は、CPU90からの指令に応じて、フラッシュ16の発光動作を制御する。
撮像素子54は、撮影レンズ14の後方に配置され、撮影レンズ14で捉えた画像を撮像する。撮像素子54は、たとえば、所定のカラーフィルタ配列のカラーCCDで構成される(以下、CCDという)。CCD54は、CCD制御部56から供給される垂直転送クロック信号及び水平転送クロック信号に同期して、各画素に蓄積された電荷を1ラインずつシリアルのアナログ画像データとして出力する。
CCD制御部56は、CPU90からの指令に応じて、CCD54の駆動を制御する。
アナログ信号処理部58は、CCD54から出力されるアナログの画像データを取り込み、所要のアナログ信号処理(相関二重サンプリング処理、ゲイン調整等)を施したのち、デジタルの画像データ(画素ごとにRGBの濃度値を持つCCD−RAWデータ)に変換して出力する。
タイミングジェネレータ60は、CPU90からの指令に応じて、所定のタイミング信号を発生させ、シャッタ駆動部126、CCD制御部56、アナログ信号処理部58に出力する。各部は、このタイミングジェネレータ60から出力されるタイミング信号によって処理の同期が図られる。
画像入力コントローラ62は、アナログ信号処理部58から出力されたデジタルの画像データ(CCD−RAWデータ)を取り込み、フレームメモリ74に書き込む。
フレームメモリ74は、CCD54から取り込んだ画像データ(CCD−RAWデータ)の格納領域として使用されるほか、各種処理を行う際の作業領域として使用される。
AF処理部64は、CCD54で撮像された画像データ(CCD−RAWデータ)に基づいて、焦点位置を検出する。このAF処理部64については、のちに詳述する。
AE/AWB処理部66は、CCD54で撮像された画像データ(CCD−RAWデータ)に基づいて、被写体輝度を測定し、露出値(絞り値、シャッタ速度、ISO感度等)を決定する。また、CCD54で撮像された画像に基づいて、光源種を検出し、ホワイトバランス補正値を決定する。
画像処理部68は、CCD54で撮像された画像(CCD−RAWデータ)に対して、所要のデジタル信号処理を施し、輝度データと色差データとからなるYCrCbの画像データを生成する。生成されたYCrCbの画像データは、フレームメモリ74に格納される。
顔検出部70は、画像処理部68で生成されたYCrCbの画像データを解析して、人物の顔領域を検出する。
圧縮/伸張処理部72は、画像処理部68で生成されたYCrCbの画像データに対して、所定の圧縮処理(たとえば、JPEG方式による圧縮処理)を施し、圧縮画像データを生成する。また、圧縮画像データに対して所定の伸張処理を施して、非圧縮の画像データ(YCrCbの画像データ)を生成する。
メディア制御部76は、CPU90からの指令に応じて、記録メディア78に対してデータの読み出し、書き込みを行う。
記録メディア78は、たとえば、メモリカードで構成され、カメラボディ12に備えられたカードスロットに着脱自在に装着される。なお、記録メディア78は、カメラボディ12に内蔵することもできる。
表示制御部80は、CPU90からの指令に応じて、モニタ24への表示を制御する。上記のように、本実施の形態のデジタルカメラ10は、撮影時にモニタ24にスルー画像が表示される。表示制御部80は、CCD54から取り込まれ、所要の信号処理が施されて生成されたYCrCbの画像データを取り込み、表示用の信号形式に変換して、モニタ24に出力する。これにより、モニタ24にスルー画像が表示される。また、再生時には、記録メディア78から読み出され、所定の伸張処理が施された画像データを取り込み、表示用の信号形式に変換して、モニタ24に出力する。これにより、撮影済み画像がモニタ24に表示される。
操作系制御部84は、操作部(レリーズボタン18、ズームレバー20、電源ボタン22、メニュー/OKボタン26、十字ボタン28、Backボタン30、再生ボタン32等)82の操作内容に応じた操作信号をCPU90に出力する。
主要被写体候補エリア検出部86は、多点測距の結果に基づいて、主要被写体が属すると推定される測距エリアを主要被写体候補エリアとして検出する。具体的には、「画面の中心に近いほど主要被写体らしい」、「近距離であるほど主要被写体らしい」という2つの仮説をベースに、各測距エリアの被写体距離と画面内の位置に対して、それぞれ重み付け加算をし、主要被写体らしさを数値化する。そして、その数値が最大となるエリアを主要被写体が属するエリアと認識する。
主要被写体検出部88は、主要被写体候補エリアとして検出された測距エリアの位置を基準に詳細サーチ範囲を設定し、その詳細サーチ範囲内のCCD54から得られる画像を解析し、画像から主要被写体を検出する。具体的には、エッジ成分の多さや、同色系のかたまり大きさなどを主被写体らしさの評価の指標として、画像解析により主要被写体を検出する。
この主要被写体検出部88による主要被写体の検出処理の手順については、のちに詳述する。
CPU90は、デジタルカメラ10の動作を統括制御する制御手段であり、所定の制御プログラムに従って、デジタルカメラ10の各部を制御する。また、所定の演算処理プログラムに従って、所定の演算処理を実行する。
EEPROM92には、CPU90が実行する各種プログラムや制御に必要なデータ等が格納される。
≪基本動作≫
次に、デジタルカメラ10の基本的な撮影、再生動作について説明する。
デジタルカメラ10は、電源OFFの状態で電源ボタン22を押下すると、撮影モードの状態で起動する。また、電源OFFの状態で再生ボタン32を一定時間押下すると、再生モードの状態で起動する。
撮影モードの状態で起動したデジタルカメラ10は、撮影モード中に再生ボタン32を押下すると、再生モードに移行する。また、再生モード中にレリーズボタン18を半押しすると、撮影モードに移行する。
撮影モードに設定されると、スルー画像の表示処理が開始される。スルー画像の表示は、一定のフレームレートで連続的に画像を撮像することにより行われる。この連続的に撮像された画像を連続的に処理して、モニタ24に出力することにより、CCD54で捉えている画像がモニタ24にリアルタイムに表示される。撮影者は、このモニタ24にリアルタイムに表示されるスルー画像を見て、ピント状態や構図等を確認する。
本撮影(画像を記録メディア78に記録するための撮影)は、まず、レリーズボタン18を半押しし、その後、レリーズボタン18を全押しすることにより実行される。
レリーズボタン18を半押しすると、撮影準備が行われ、AE、AF、AWBの各処理が行われる。すなわち、被写体輝度が測定され、露出値(絞り値、シャッタ速度、ISO感度等)が決定されるとともに、光源種が検出され、ホワイトバランス補正値が決定される。また、主要被写体に合焦するように焦点調節が行われる。
この撮影準備後、レリーズボタン18を全押しすると、本撮影が実行される。すなわち、上記のAE処理にて決定した露出値で記録用の撮影が行われる。得られた画像データは、所要の信号処理が施されて、記録メディア78に記録される。
記録メディア78に記録された画像データは、デジタルカメラ10のモードを再生モードに設定することにより、モニタ24に再生表示することができる。
再生モードに設定されると、記録メディア78に最後に記録された画像データが読み出され、所要の信号処理が施されて、モニタ24に再生表示される。この後、操作部82において、コマ送り/コマ戻しの操作が行われると、その操作に応じて、順に撮影済み画像が再生表示される。
≪AF処理部の構成≫
AF処理部64は、画像入力コントローラ62から取り込まれた画像データ(CCD−RAWデータ)に所要の信号処理を施して、焦点評価値を算出する。
図4は、AF処理部の機能構成を示すブロック図である。同図に示すように、AF処理部64は、ハイパスフィルタ(HPF)64A、ゲート64B、加算器64Cを備えて構成される。
ハイパスフィルタ64Aは、画像データに含まれる高周波成分を抽出する。画像の高周波成分は、画像の鮮鋭度(コントラスト)が高いほど、輝度信号に多く含まれる。したがって、この高周波成分を積分することによって、その範囲での平均的な画像の鮮鋭度の高低を数値化することができる。この画像の鮮鋭度を数値化したものを焦点評価値という。
ハイパスフィルタ64Aで高周波成分が抽出された画像データは、ゲート64Bに入力される。ゲート64Bは、画像データを縦横n×mに分割して、加算器64Cに出力する。本例では、図5に示すように、縦横5×7に分割して、加算器64Cに出力する。
加算器64Cは、分割されたエリアごとに画像データの高周波成分を積算し、エリアごとの焦点評価値を算出する。
算出されたエリアごとの焦点評価値の情報は、CPU90に出力される。CPU90は、このエリアごとの焦点評価値の情報に基づいて、焦点調節、及び、主要被写体の認識処理を実行する。
≪焦点調節≫
まず、焦点調節動作について説明する。
焦点調節の方式には、ワンショットAFとコンティニュアスAFとがある。ワンショットAFは、特定のフォーカスエリア内の被写体に合焦するように、1度だけサーチ動作を行って合焦位置を検出し、焦点合わせを行う。一方、コンティニュアスAFは、特定のフォーカスエリア内の被写体に合焦し続けるように、焦点調節を繰り返し行う。
〈ワンショットAF〉
まず、ワンショットAFについて説明する。
上記のように、ワンショットAFは、特定のフォーカスエリア内の被写体に合焦するように、1度だけサーチ動作を行って合焦位置を検出する。
フォーカシング指令(たとえば、レリーズボタンの半押し)が入力されると、CPU90は、フォーカスレンズ110を至近端から無限遠端に移動させる。このフォーカスレンズ110が至近端から無限遠端まで移動する過程で順次画像の取り込みが行われ、AF処理部64で順次焦点評価値が算出される。
CPU90は、AF処理部64で順次算出される焦点評価値の情報を取得する。
ここで、AF処理部64から取得される焦点評価値の情報は、エリアごとの焦点評価値の情報であるので、CPU90は、得られたエリアごとの焦点評価値の情報から、あらかじめ設定されたフォーカスエリアに相当するエリアの焦点評価値の情報を抽出する。そして、抽出したフォーカスエリアの焦点評価値が極大(ピーク)となる位置を検出する。
上記のように、焦点評価値は、画像の鮮鋭度(コントラスト)を数値化したものであるので、その値が極大となる位置は、被写体像が最も鮮鋭に撮影される位置であり、合焦位置とみなすことができる。したがって、CPU90は、至近端から無限遠端の範囲(焦点評価値サーチ範囲)で焦点評価値が極大となる位置を検出して、これを合焦位置とする。
CPU90は、合焦位置として検出された位置にフォーカスレンズ110を移動させて、焦点調節処理を終了する。
このように、ワンショットAFでは、1回のサーチで焦点評価値が極大となる位置を検出し、検出した位置にフォーカスレンズ110を移動させて、焦点合わせを行う。
〈コンティニュアスAF〉
コンティニュアスAFでは、特定のフォーカスエリア内の被写体に合焦し続けるように、焦点調節を繰り返し行う。
CPU90は、フォーカシング指令が入力されると、山登り制御でフォーカスレンズ110を合焦位置に設定する。すなわち、図6に示すように、フォーカスレンズ110を微小に前後移動(ウォブリング)させて、特定のフォーカスエリアの焦点評価値の増減方向をチェックし、焦点評価値が極大となる位置までフォーカスレンズ110を徐々に移動させる。焦点評価値が極大となる位置が検出された後も継続してフォーカスレンズ110をウォブリングさせ、焦点評価値の増減をチェックして、焦点評価値が極大となる位置を検出し、その位置にフォーカスレンズ110を移動させる。
このように、コンティニュアスAFでは、合焦位置の検出後も焦点評価値の増減を常にチェックすることにより、合焦状態が維持されるようにする。
≪主要被写体の検出≫
〈第1の方法〉
図7は、第1の方法による主要被写体の検出処理の概念図である。
本例では、まず、多点測距を行い、その測定結果を利用して、主要被写体が属すると推定される測距エリアを主要被写体候補エリアとして特定する(同図(a))。次に、その主要被写体候補エリアの中心位置を主要被写体ラフ位置に設定する(同図(a))。次に、その主要被写体ラフ位置を中心にした所定範囲を詳細サーチエリアに設定する(同図(b))。次に、詳細サーチ範囲内で画像解析を実施し、主要被写体を検出する(同図(c))。
このように、本実施の形態では、まず、多点測距の結果から主要被写体のラフな位置を検出し、検出されたラフな位置を基準にして、画像解析により主要被写体の位置を詳細に検出する。
これにより、正確な主要被写体の位置を効率よく検出することができる。
図8は、本方法(第1の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS10)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS11)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合(あらかじめ設定された閾値以上のピークが検出されない場合を含む)は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS12)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリア検出部86は、多点測距の結果を取得し、所定の演算処理を行って、主要被写体候補エリアを決定する。具体的には、「画面の中心に近いほど主要被写体らしい」、「近距離であるほど主要被写体らしい」という2つの仮説をベースに、各測距エリアの被写体距離と画面内の位置に対して、それぞれ重み付け加算をし、主要被写体らしさを数値化する。そして、その数値が最大となる測距エリアを主要被写体候補エリアに選定する。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS13)。
そして、その主要被写体ラフ位置を中心に一定の範囲で詳細サーチ範囲を設定する(ステップS14)。この詳細サーチ範囲は、画像解析によって主要被写体を詳細に検出するための範囲であり、図7(b)に示す例では、主要被写体ラフ位置を中心に一定の矩形領域を詳細サーチ範囲に設定している。
詳細サーチ範囲を設定すると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS15)。このとき、エッジ成分の多さや、同色系の塊の大きさなどを主要被写体らしさの評価の指標として、画像から主要被写体を検出する。
そして、検出された主要被写体の位置を主要被写体詳細位置に決定する(ステップS16)。
このように、本方法では、多点測距の結果から主要被写体のラフな位置を決定し、決定した主要被写体のラフな位置を基準に主要被写体を画像解析により詳細に検出する。これにより、主要被写体の位置を正確に検出することができる。
なお、詳細サーチ範囲内で最終的に主要被写体の位置を決定する方法は、大きく分けて以下の2つの方法がある。
(i)最大値優先:主要被写体詳細サーチ範囲内で、主要被写体らしさの最も大きいところを主要被写体の位置とする方法
(ii)中央優先:主要被写体詳細サーチ範囲内を中央から外側に向かってサーチし、主要被写体らしさの評価値が基準値(閾値)を超えた時点の位置を主要被写体の位置とする方法
最大値優先を使用するか中央優先を使用するかは、設計者が選択できるようにすることが好ましい。
なお、本例では、いわゆるコントラスト方式で多点測距を実行しているが、測距の方式は、これに限定されるものではない。この他、たとえば、位相差方式や赤外線方式で測距する構成とすることもできる。
また、測距により求める被写体距離の情報は、必ずしも距離情報そのものである必要はなく、画面内に存在する被写体の光軸方向の前後の位置関係が分かる情報、すなわち、被写体距離に相当する量であればよい。したがって、たとえば、本例のようにコントラスト方式で測距した場合には、コントラストが極大になったとき(焦点評価値が極大(ピーク)になったとき)のフォーカスレンズの位置情報や、コントラストが極大になったときのフォーカスレンズの基準点からの移動量(パルス駆動時にはパルス数)等を被写体距離の情報(被写体距離に相当する量の情報)として利用することができる。
〈第2の方法〉
図9は、第2の方法により主要被写体を検出する処理の手順を示すフローチャートである。
本方法では、まず、CCD54から得られる画像から顔の検出が行われる(ステップS1)。そして、画面内の顔の有無が判定され(ステップS2)、画面内に顔がない場合についてのみ、上記第1の方法で説明した主要被写体の検出処理が行われる(ステップS10〜S16)。すなわち、顔が検出された場合は、検出された顔を主要被写体とし(ステップS3)、検出された顔を主要被写体詳細位置に設定する。
一般に画面内に人物が写されている場合、その人物が主要被写体と考えられるので、顔を優先して主要被写体に設定する。これにより、無駄なく主要被写体を検出することができる。
〈第3の方法〉
画像解析によって主要被写体を詳細に検出する場合において、エッジ成分の多さを指標として主要被写体を決定すると、背景のエッジ成分につられて、背景のオブジェクトの位置を主要被写体と認識してしまう場合がある(図10参照)。
そこで、多点測距の結果を利用して、主要被写体候補エリアの被写体距離を基準とした距離マップを作成する。詳細サーチ範囲を設定する際、主要被写体候補エリアの被写体距離と近いエリアは、詳細サーチ範囲の対象とするが、遠いエリアは対象外として、詳細サーチ範囲を限定する。
これにより、画像解析により主要被写体を検出する際、より正確に検出することができる。また、詳細サーチ範囲が限定されることにより、より効率よく検出することができる。
図11は、本方法(第3の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS20)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS21)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS22)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS23)(図12(a)参照)。
次に、多点測距の結果に基づき、主要被写体検出部88において、主要被写体候補エリアの被写体距離を基準とした距離マップ(主要被写体候補エリアの被写体距離を基準(0)とした各測距エリアの距離のマップ)が作成される(ステップS24)。
図12では、色の濃淡で主要被写体候補エリアの被写体からの遠近を表している(焦点評価値がピークとなる位置が、無限遠側に離れるほど色が濃くなり、至近側に離れるほど色が薄くなるように表している)。
距離マップが作成されると、その距離マップと主要被写体ラフ位置とに基づいて、主要被写体検出部88で詳細サーチ範囲が決定される(ステップS25)。
主要被写体検出部88は、まず、主要被写体ラフ位置を中心に一定の範囲で仮の詳細サーチ範囲(仮詳細サーチ範囲)を設定する(図12(b)参照)。そして、その仮詳細サーチ範囲内で主要被写体候補エリアの被写体距離と大きく離れた被写体距離を有するエリアを除外して、詳細サーチ範囲を設定する。すなわち、主要被写体候補エリアの被写体距離との差(絶対値)が、あらかじめ設定された閾値を超える領域を除外して、詳細サーチ範囲を設定する(図12(c)参照)。
詳細サーチ範囲が設定されると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS26)。このとき、エッジ成分の多さや、同色系の塊の大きさなどを主要被写体らしさの評価の指標として、画像から主要被写体を検出する。
そして、検出された主要被写体の位置を主要被写体詳細位置に決定する(ステップS27)(図12(d)参照)。
このように、本方法では、詳細サーチ範囲を設定する際、主要被写体候補エリアの被写体距離と大きく離れた被写体距離を有するエリアを除外して、詳細サーチ範囲を設定する。これにより、背景のエッジ成分につられて、背景のオブジェクトを主要被写体と認識してしまうのを防止でき、より正確に主要被写体を検出することができる。また、サーチ範囲を限定することにより、より効率よく主要被写体を検出することができる。
なお、本方法についても、まず、顔の検出を行い、顔が検出されない場合に限って、本方法で主要被写体の検出を行うようにすることができる(第2の方法参照)。
また、本例では、いわゆるコントラスト方式で多点測距を実行しているが、測距の方式は、これに限定されるものではない。この他、たとえば、位相差方式や赤外線方式で測距する構成とすることもできる。
〈第4の方法〉
上記のように、コントラスト方式の多点測距を行うことにより、各測距エリアの距離情報を得ることができる。この際、焦点評価値が距離情報に対して二重のピークを持つ場合(図13参照)、詳細サーチをした副作用で背景につられてしまうおそれがある。
そこで、本方法では、詳細サーチ範囲を設定する際、二重ピークとなったエリアと、その付近を詳細サーチ範囲の対象から除外することのより、画像解析によって主要被写体を詳細に検出する際の副作用を抑制する。
図14は、本方法(第4の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS30)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS31)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS32)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS33)(図15(a)参照)。
次に、多点測距の結果に基づき、主要被写体検出部88において、2以上の位置で焦点評価値が極大(ピーク)となった測距エリア(二重ピークの測距エリア)が検出される(ステップS34)。
図15では、二重ピークの測距エリアを塗りつぶして表している。
次に、検出された二重ピークの測距エリアの情報と、主要被写体ラフ位置の情報とに基づいて、主要被写体検出部88で詳細サーチ範囲が決定される(ステップS35)。
主要被写体検出部88は、まず、主要被写体ラフ位置を中心に一定の範囲で仮の詳細サーチ範囲(仮詳細サーチ範囲)を設定する(図15(b)参照)。そして、その仮詳細サーチ範囲内で二重ピークの測距エリアの領域を除外して、詳細サーチ範囲を設定する(図15(c)参照)。
詳細サーチ範囲が設定されると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS36)。このとき、エッジ成分の多さや、同色系の塊の大きさなどを主要被写体らしさの評価の指標として、画像から主要被写体を検出する。
そして、検出された主要被写体の位置を主要被写体詳細位置に決定する(ステップS37)(図15(d)参照)。
このように、本方法では、詳細サーチ範囲を設定する際、二重ピークの領域を除外して、詳細サーチ範囲を設定する。これにより、背景のエッジ成分につられて、背景のオブジェクトを主要被写体と認識してしまうのを防止でき、より正確に主要被写体を検出することができる。また、サーチ範囲を限定することにより、より効率よく主要被写体を検出することができる。
なお、本方法についても、まず、顔の検出を行い、顔が検出されない場合に限って、本方法で主要被写体の検出を行うようにすることができる(第2の方法参照)。
〈第5の方法〉
本方法では、主要被写体候補エリアの被写体距離と大きく離れた被写体距離を有するエリアを詳細サーチの対象から除外するとともに、二重ピークを有するエリアを詳細サーチの対象から除外する。
図16は、本方法(第5の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS40)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS41)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS42)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS43)(図17(a)参照)。
次に、多点測距の結果に基づき、主要被写体検出部88において、主要被写体候補エリアの被写体距離を基準とした距離マップ(主要被写体候補エリアの被写体距離を基準(0)とした各測距エリアの距離のマップ)が作成される(ステップS44)。
次に、多点測距の結果に基づき、主要被写体検出部88において、2以上の位置で焦点評価値が極大(ピーク)となった測距エリア(二重ピークの測距エリア)が検出される(ステップS45)。
次に、距離マップの情報と、二重ピークの測距エリアの情報と、主要被写体ラフ位置の情報とに基づいて、主要被写体検出部88で詳細サーチ範囲が決定される(ステップS46)。
主要被写体検出部88は、まず、主要被写体ラフ位置を中心に一定の範囲で仮の詳細サーチ範囲(仮詳細サーチ範囲)を設定する(図17(b)参照)。そして、その仮詳細サーチ範囲内で主要被写体候補エリアの被写体距離と大きく離れた被写体距離を有するエリア(詳細サーチ範囲を設定する。すなわち、主要被写体候補エリアの被写体距離との差(絶対値)が、あらかじめ設定された閾値を超えるエリア)を除外するとともに、二重ピークの測距エリアを除外して、詳細サーチ範囲を設定する(図17(c)参照)。
なお、図17(c)では、二重ピークが検出されたエリアを斜格子で表し、主要被写体ラフ位置から遠いエリアを格子で表している。
詳細サーチ範囲が設定されると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS46)。このとき、エッジ成分の多さや、同色系の塊の大きさなどを主要被写体らしさの評価の指標として、画像から主要被写体を検出する。
そして、検出された主要被写体の位置を主要被写体詳細位置に決定する(ステップS47)(図17(d)参照)。
このように、本方法では、詳細サーチ範囲を設定する際、主要被写体候補エリアの被写体距離から遠いエリア、及び、二重ピークのエリアを除外して、詳細サーチ範囲を設定し、詳細サーチを実施する。これにより、背景のエッジ成分につられて、背景のオブジェクトを主要被写体と認識してしまうのを防止でき、より正確に主要被写体を検出することができる。また、サーチ範囲を限定することにより、より効率よく主要被写体を検出することができる。
なお、本方法についても、まず、顔の検出を行い、顔が検出されない場合に限って、本方法で主要被写体の検出を行うようにすることができる(第2の方法参照)。
〈第6の方法〉
画像解析によって主要被写体を検出する際、画面内の主要被写体の大きさに応じて詳細サーチ範囲を設定することにより、正確で無駄のない検出を行うことができる。
一般に、主要被写体は、近距離(焦点評価値のピーク位置が至近側)に存在しているほど、画面内に大きく写されていると考えられる。
そこで、図18に示すように、主要被写体候補エリアの被写体距離に応じて、詳細サーチ範囲の大きさを調整する。すなわち、主要被写体候補エリアの被写体距離が近距離であるほど詳細サーチ範囲を大きく設定し(同図(a))、遠距離である詳細サーチ範囲を小さく設定する(同図(b))。
ここで、画面内における主要被写体詳細サーチ範囲の調整の方法としては、以下の2通りの方法が考えられる。
(i) 画像全体の大きさは変化させず、主要被写体詳細サーチ範囲を大きくする。
(ii) 画面全体の大きさを変化させ、主要被写体詳細サーチ範囲は固定にする。
すなわち、相対的な大きさが調整される。いずれの方法を採用しても、同様の効果を得ることができる。
図19は、本方法(第6の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS50)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS51)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS52)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS53)。
次に、主要被写体候補エリアの被写体距離の情報と、主要被写体ラフ位置の情報とに基づいて、主要被写体検出部88で詳細サーチ範囲が決定される(ステップS54)。主要被写体検出部88は、まず、主要被写体候補エリアの被写体距離に基づいて、詳細サーチ範囲の大きさを決定する。この際、上記のように、主要被写体候補エリアの被写体距離が近距離であるほど大きくなるように、詳細サーチ範囲の大きさが設定される。そして、決定した大きさに調整して、所定形状の詳細サーチ範囲を主要被写体ラフ位置を中心に設定する。図18に示す例では、詳細サーチ範囲を矩形状に設定している。
詳細サーチ範囲が設定されると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS55)。このとき、エッジ成分の多さや、同色系の塊の大きさなどを主要被写体らしさの評価の指標として、画像から主要被写体を検出する。
そして、検出された主要被写体の位置を主要被写体詳細位置に決定する(ステップS56)。
このように、本方法では、主要被写体候補エリアの被写体距離に応じて、詳細サーチ範囲の大きさが拡縮されて設定される。これにより、画面に写されている主要被写体の大きさに応じて、適切に詳細サーチ範囲を設定でき、無駄なく正確に主要被写体を検出することができる。
なお、本方法についても、まず、顔の検出を行い、顔が検出されない場合に限って、本方法で主要被写体の検出を行うようにすることができる(第2の方法参照)。
また、さらに主要被写体候補エリアの被写体距離から遠いエリア、及び/又は、二重ピークのエリアを除外して、詳細サーチ範囲を設定し、詳細サーチを実施するようにしてもよい(第3〜第5の方法参照)。
〈第7の方法〉
上記第6の方法で述べたように、詳細サーチする際、画面に写されている主要被写体の大きさに応じて詳細サーチ範囲の大きさを調整することにより、無駄なく正確に主要被写体を検出することができる。
ズームして撮影している場合、一般にズームがテレ側(望遠側)に設定されているほど、主要被写体は画面内に大きく写されていると考えられる。
そこで、図20に示すように、ズーム位置(焦点距離)に応じて、主要被写体詳細サーチ範囲を調整する。すなわち、ズーム位置がテレ側(望遠側)であるほど詳細サーチ範囲が大きくなるように設定する(同図(a))(ズーム位置が、ワイド側(広角側)であるほど詳細サーチ範囲が小さくなるように設定する(同図(b))。
ここで、画面内における主要被写体詳細サーチ範囲の調整の方法としては、以下の2通りの方法が考えられる。
(i) 画像全体の大きさは変化させず、主要被写体詳細サーチ範囲を大きくする。
(ii) 画面全体の大きさを変化させ、主要被写体詳細サーチ範囲は固定にする。
すなわち、相対的な大きさを調整する。いずれの方法を採用しても、同様の効果を得ることができる。
図21は、本方法(第7の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS60)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS61)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS62)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS63)。
次に、ズームの位置情報と、主要被写体ラフ位置の情報とに基づいて、主要被写体検出部88で詳細サーチ範囲が決定される(ステップS64)。主要被写体検出部88は、まず、現在のズームの位置の情報を取得し、取得したズームの位置に応じて、詳細サーチ範囲の大きさを決定する。この際、上記のように、ズームの位置がテレ側であるほど大きくなるように、詳細サーチ範囲の大きさが設定される。そして、決定した大きさに調整して、所定形状の詳細サーチ範囲を主要被写体ラフ位置を中心に設定する。図20に示す例では、詳細サーチ範囲を矩形状に設定している。
詳細サーチ範囲が設定されると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS65)。このとき、エッジ成分の多さや、同色系の塊の大きさなどを主要被写体らしさの評価の指標として、画像から主要被写体を検出する。
そして、検出された主要被写体の位置を主要被写体詳細位置に決定する(ステップS66)。
このように、本方法では、ズーム位置に応じて、詳細サーチ範囲の大きさが拡縮されて設定される。これにより、画面に写されている主要被写体の大きさに応じて、適切に詳細サーチ範囲を設定でき、無駄なく正確に主要被写体を検出することができる。
なお、本方法についても、まず、顔の検出を行い、顔が検出されない場合に限って、本方法で主要被写体の検出を行うようにすることができる(第2の方法参照)。
また、さらに主要被写体候補エリアの被写体距離から遠いエリア、及び/又は、二重ピークのエリアを除外して、詳細サーチ範囲を設定し、詳細サーチを実施するようにしてもよい(第3〜第5の方法参照)。
〈第8の方法〉
本方法では、画像解析によって検出された主要被写体の位置(主要被写体詳細位置)が主要被写体ラフ位置からずれた場合に、主要被写体の位置を大外しするのを防止する。
図22は、本方法(第8の方法)により主要被写体を検出する処理の手順を示すフローチャートである。
まず、多点測距が行われる(ステップS70)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS71)。
焦点評価値が極大となる位置が検出された測距エリアが、まったく存在しない場合は、主要被写体候補の検出処理を行うことができないので、処理を終了する。
一方、焦点評価値が極大となる位置が検出された測距エリアがある場合は、多点測距の検出結果に基づいて、主要被写体候補エリアの検出処理が行われる(ステップS72)。この処理は、主要被写体候補エリア検出部86で行われる。
主要被写体候補エリアが検出されると、その情報が主要被写体検出部88に出力される。主要被写体検出部88は、得られた主要被写体候補エリアの中心を主要被写体ラフ位置に設定する(ステップS73)。
次に、主要被写体検出部88で詳細サーチ範囲が決定される(ステップS74)。詳細サーチ範囲が設定されると、主要被写体検出部88は、その設定した詳細サーチ範囲内でCCD54から得られた画像を解析し、主要被写体を検出する(ステップS75)。そして、検出された主要被写体の位置を主要被写体仮詳細位置に決定する(ステップS76)。
次に、主要被写体仮詳細位置を中心に所定の大きさでフォーカスエリアに設定する。そして、所定範囲でフォーカスレンズ110を移動させて、設定したフォーカスエリアの焦点評価値を取得する(ステップS77)。
ここで、フォーカスレンズ110を移動させる範囲(焦点評価値サーチ範囲)は、多点測距の結果、主要被写体候補エリアの焦点評価値が極大となる位置(主要被写体候補エリアの合焦位置)を基準として、その前後所定範囲に設定される(図23参照)。
次に、取得した焦点評価値に極大点(ピーク)があるか否かを判定する(ステップS78)。この判定の結果、図23(a)に示すように、極大点(ピーク)がないと判定すると、主要被写体ラフ位置を主要被写体詳細位置に決定する(ステップS81)。
一方、極大点がある場合は、その極大点の位置が許容範囲内か否かを判定する(ステップS79)。
ここで、許容範囲は、多点測距の結果、主要被写体候補エリアの焦点評価値が極大となる位置(主要被写体候補エリアの合焦位置)を基準として、その前後所定範囲に設定される(図23参照)。
極大点の位置が、許容範囲内にあるか否かは、取得した焦点評価値が極大となる位置と、主要被写体候補エリアの焦点評価値が極大となる位置(主要被写体候補エリアの合焦位置)との差(絶対値)を求め、その差が、あらかじめ設定された閾値内であるか否かを判定することにより行われる。
この判定の結果、図23(b)に示すように、差が閾値を超えている判定すると、主要被写体ラフ位置を主要被写体詳細位置に決定する(ステップS81)。
一方、差が閾値以内であると判定すると、主要被写体仮詳細位置を主要被写体詳細位置に設定する(ステップS80)。
このように、画像解析によって検出された主要被写体の位置(主要被写体仮詳細位置)を基準に一定のサーチ範囲(焦点評価値サーチ範囲)で再度測距し、多点測距により求めた主要被写体候補エリアの主要被写体の位置とのズレ(光軸方向)を比較することにより、主要被写体の位置を大外しするのを防止することができる。
≪主要被写体の検出処理を伴う撮影前処理≫
次に、上記の主要被写体の検出技術を利用した本撮影前の処理について説明する。
上記の主要被写体の検出技術を使用することにより、画面に写されている主要被写体の位置を検出することができる。
そこで、ライブビュー中のスルー画像を利用して、主要被写体の検出を行い、その検出結果を利用して各種処理を行う。
〈第1の実施の形態〉
本実施の形態では、ライブビュー中に主要被写体の検出処理を行い、検出した主要被写体にフォーカスエリアを設定して、コンティニュアスAFを実行する。
図24は、本撮影前に行われるコンティニュアスAFの状態遷移図である。
同図に示すように、スルー画像中に顔が検出された場合は、顔コンティニュアスAFに移行し、検出された顔にフォーカスエリアを設定して、顔コンティニュアスAFを行う。
一方、顔が検出されない場合は、中央コンティニュアスAFに移行する。そして、中央コンティニュアスAFで合焦し(あるいは、合焦に近い状態になり)、かつ、撮影シーンが変動すると、多点測距に移行する。
多点測距の結果、ピークが検出された測距エリアが存在しない場合は、中央コンティニュアスAFに移行する。この場合、顔が検出されている場合は、顔コンティニュアスAFに移行する。
一方、多点測距の結果、ピークが検出された測距エリアが存在する場合は、その多点測距の結果に基づいて、主要被写体の検出処理が行われる。そして、検出した主要被写体にフォーカスエリアを設定し、コンティニュアスAF(主要被写体コンティニュアス)を行う。この後、顔検出された場合は、検出された顔にフォーカスエリアを設定して、顔コンティニュアスAFを行う。また、シーンが変動した場合は、中央コンティニュアスAFに移行する。
図25は、本撮影前に行われるコンティニュアスAFの処理の手順を示すフローチャートである。
まず、顔検出の処理が行われ(ステップS111)、顔が検出されたか否かが判定される(ステップS112)。
顔が検出された場合は、検出された顔の位置にフォーカスエリアが設定され、顔コンティニュアスAFが行われる(ステップS113)。顔コンティニュアスAFは、顔が検出されなくなるまで行われる。
一方、顔が検出されない場合は、画面中央にフォーカスエリアが設定され、中央コンティニュアスAFが行われる(ステップS120)。その後、中央コンティニュアスAFが合焦したか否か(あるいは、合焦に近い状態になったか否か)が判定される(ステップS121)。
コンティニュアスAFが合焦していない場合は、ステップS111に戻り、再度、顔検出が行われる。
一方、コンティニュアスAFが合焦した場合(あるいは、合焦に近い状態になった場合)は、撮影シーンが変動したか否かが判定される(ステップS122)。
ここでのシーン変動の検出は、あらかじめ登録された画像と現在撮影されている画像とを比較し、シーンに変動が生じているか否かが判定される。
なお、比較対象とする画像は、本例では主要被写体を検出した際の画像である。したがって、初回はシーン変動の有無は判別せずに多点測距が実行される。
シーン変動がない場合は、ステップS111に戻り、再度、顔検出が行われる。
一方、シーンが変動した場合は、中央コンティニュアスAFを停止し、多点測距が行われる(ステップS123)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS124)。
この判定の結果、ピークが検出された測距エリアがないと判定されると、ステップS111に戻り、再度、顔検出が行われる。
一方、ピークが検出された測距エリアがあると判定されると、画像の取り込みが行われる。そして、その取り込まれた画像が、比較用の基準画像として登録される(ステップS125)。この処理は、たとえば、比較用の基準画像をフレームメモリ74に記録することにより行われる。
比較用の基準画像の登録後、上記の主要被写体の検出技術を利用して、主要被写体の検出処理が行われる(ステップS126)。そして、検出された主要被写体にフォーカスエリアが設定され、主要被写体コンティニュアスAFが行われる(ステップS127)。
この後、撮影シーンが変動したか否かが判定される(ステップS128)。撮影シーンに変動がない場合は、引き続き主要被写体コンティニュアスAFが行われる。一方、撮影シーンに変動がある場合は、ステップS111に戻り、再度、顔検出が行われる。
このように、本実施の形態では、スルー画像中に顔が検出された場合は、顔にフォーカスエリアを設定して顔コンティニュアスAFを行い、顔が検出されない場合は、主要被写体の検出処理を行って、主要被写体コンティニュアスAFを行う。これにより、画面中に顔がない場合であっても、その主要被写体にピントがあったスルー画像を表示することができる。
また、主要被写体の検出処理を行う際は、まず、中央コンティニュアスAFを行い、その中央コンティニュアスAFが合焦し、かつ、撮影シーンが変動した場合に限って、多点測距を行う。これにより、多点測距の実行回数を抑制でき、モニタ24に表示されるスルー画像の画角変動を抑えることができる。これにより、スルー画像表示中も見やすい画面とすることができる。
なお、主要被写体が検出されると、図26(a)に示すように、モニタ24の画面には、主要被写体に設定したフォーカスエリアの位置を示す枠が表示される。同図(b)に示すように、顔が検出された場合も同様に、モニタ24の画面には、顔に設定したフォーカスエリアの位置を示す枠が表示される。
なお、本例では、主要被写体の検出処理を行う際、中央コンティニュアスAFが合焦し、かつ、撮影シーンに変動があった場合に限って多点測距を実行しているが、中央コンティニュアスAFが合焦した場合に限って多点測距を実行する構成や、撮影シーンが変動した場合に限って多点測距を実行する構成、前回の多点測距から一定時間が経過した場合に限って多点測距を実行する構成とすることもできる。あるいは、これらを適宜組み合わせて、全ての条件を満足した場合に限って多点測距を実行する構成とすることもできる。
また、本例では、撮影シーンが変動したか否かを判定する際、主要被写体を検出した際の画像を基準画像として登録し、この基準画像との比較で撮影シーンが変動したか否かを判定しているが、一定間隔(一定フレーム間隔)で撮影シーンの変動を検出する構成とすることもできる(たとえば、Nフレーム前の画像を基準画像として登録し、その基準画像と比較して、撮影シーンの変動を検出する。)。
また、比較用の情報は、必ずしも画像データそのものである必要はなく、比較用の特徴点を抽出し、その特徴点の情報を基準情報として登録するようにしてもよい。この場合、シーン変動も現在の画像から特徴点を抽出し、抽出した特徴点の比較により行われる。
また、本例では、顔検出を行い、顔が検出されない場合に限って、主要被写体の検出処理を行っているが、顔検出については、必ずしも行う必要はない。また、顔が検出された場合であっても、多点測距による主要被写体の検出処理を実行するようにしてもよい。
〈第2の実施の形態〉
本実施の形態では、ライブビュー中に主要被写体の検出処理を行い、検出した主要被写体をレリーズボタン18の半押し時(フォーカシング指示時(S1))のフォーカスエリアに設定する。
図27は、ライブビュー中に検出した主要被写体にフォーカスエリアを設定する処理の手順を示すフローチャートである。
まず、顔検出が行われ(ステップS131)、顔が検出されたか否かが判定される(ステップS132)。
顔が検出された場合は、検出された顔の位置にフォーカスエリアが設定され、顔コンティニュアスAFが行われる(ステップS133)。顔コンティニュアスAFは、顔が検出されなくなるまで行われる。
一方、顔が検出されない場合は、画面中央にフォーカスエリアが設定されて、中央コンティニュアスAFが行われる(ステップS140)。この後、中央コンティニュアスAFが合焦したか否か(あるいは、合焦に近い状態になったか否か)が判定される(ステップS141)。
コンティニュアスAFが合焦していない場合は、ステップS131に戻り、再度、顔検出が行われる。
一方、コンティニュアスAFが合焦した場合(あるいは、合焦に近い状態になった場合)は、撮影シーンが変動したか否かが判定される(ステップS142)。
ここでのシーン変動の検出は、あらかじめ登録された画像と現在撮影されている画像とを比較し、シーンに変動が生じているか否かを判定する。比較対象とする画像は、主要被写体を検出した際の画像である。したがって、初回はシーン変動の有無は判別せずに多点測距が実行される。
シーン変動がない場合は、ステップS131に戻り、再度、顔検出が行われる。
一方、シーンが変動した場合は、中央コンティニュアスAFが停止され、多点測距が行われる(ステップS143)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS144)。
この判定の結果、ピークが検出された測距エリアがないと判定されると、ステップS131に戻り、再度、顔検出が行われる。
一方、ピークが検出された測距エリアがあると判定されると、画像の取り込みが行われる。そして、取り込まれた画像が、比較用の基準画像として登録される(ステップS145)。この処理は、たとえば、比較用の基準画像をフレームメモリ74に記録することにより行われる。
比較用の基準画像の登録後、上記の主要被写体の検出処理の技術を利用して、主要被写体の検出が行われる(ステップS146)。そして、検出された主要被写体の位置にS1時のフォーカスエリアが設定される(ステップS147)。
このように、本実施の形態では、スルー画像の表示中に主要被写体の検出処理を行い、検出した主要被写体にS1時のフォーカスエリアを設定する。
図28は、本撮影までの処理の手順を示すフローチャートである。
撮影モードに設定されると、本撮影前の処理が実行される(ステップS151)。すなわち、モニタ24にスルー画像の表示が行われるとともに、上記の主要被写体の検出処理が行われる。
CPU90は、操作系制御部84からの入力に基づいて、レリーズボタン18が半押されたか否かを判定する(ステップS152)。なお、レリーズボタン18が半押しされると、撮影準備指示信号として、S1ON信号がCPU90に入力される(半押しが解除されていると、S1OFF)。CPU90は、このS1ON信号の入力の有無に基づいて、レリーズボタン18が半押しされているか否かを判定する。
レリーズボタン18が半押しされると、CPU90は撮影準備処理を実行する。
まず、本撮影用のAE処理を実行し、本撮影時の露出条件を決定する(ステップS153)。すなわち、AE用の画像を取り込み、被写体の明るさを検出し、適正露出となるような露出条件(シャッタスピード、絞り値、ISO感度等)を決定する。
次に、AF処理を実行する(ステップS154)。すなわち、フォーカスレンズ110を至近端から無限遠端に移動させて、あらかじめ設定されたフォーカスエリアの焦点評価値が極大となる位置を検出する。そして、検出した位置にフォーカスレンズを移動させる。
この際、主要被写体が検出されている場合には、検出した主要被写体にフォーカスエリアが設定され、焦点合わせが行われる。
この後、CPU90は、操作系制御部84からの入力に基づいて、レリーズボタン18が全押されたか否かを判定する(ステップS155)。なお、レリーズボタン18が全押しされると、本撮影指示信号として、S2ON信号がCPU90に入力される(全押しが解除されていると、S2OFF)。CPU90は、このS2ON信号の入力の有無に基づいて、レリーズボタン18が全押しされているか否かを判定する。
ここで、レリーズボタン18が全押しされていないと判定すると、CPU90は、操作系制御部84からの入力に基づいて、レリーズボタン18の半押しが解除されたか否かを判定する(ステップS158)。そして、レリーズボタン18の半押しが解除されていると判定すると、ステップS151に戻り、再度、撮影前処理を実行する。
一方、レリーズボタン18が全押しされていると判定すると、CPU90は、本撮影の処理を実行する(ステップS156)。すなわち、上記のAE処理により求めた露出条件でCCD54を露光し、記録用の画像の取り込みを行う。そして、得られた画像を記録メディア78に記録する(ステップS157)。
このように、本撮影前に主要被写体の検出処理を行い、本撮影時は、検出した主要被写体にピントを合わせて撮影することにより、中央以外の領域に主要被写体が存在している場合であっても、主要被写体にピントがあった画像を撮影することができる。
なお、上記の例では、本撮影前に主要被写体の検出処理を行い、検出された主要被写体にS1時のフォーカスエリアを設定しているが、顔が検出された場合は、検出した顔にS1時のフォーカスエリアを設定する構成としてもよい。
また、上記の例では、S1後のAF処理時にフォーカスレンズを至近端から無限遠端まで移動させて、焦点評価値が極大となる位置を検出しているが、主要被写体を検出している場合は、その主要被写体を検出した時のフォーカスレンズの位置を基準とし、その前後所定範囲に焦点評価値サーチ範囲を限定して、AF処理を行うようにしてもよい。これにより、より迅速にピント合わせを行うことができる。
〈第3の実施の形態〉
コンティニュアスAFの一形態として、自動追尾機能が知られている。自動追尾機能は、図29に示すように、ピントを合わせたい被写体を指定すると、その被写体の移動に合わせてフォーカスエリアを自動的に移動させ、指定した被写体にピントを合わせ続けるものである。
本実施の形態では、ライブビュー中に主要被写体の検出処理を行い、検出した主要被写体を自動追尾の対象に自動的に設定する。
図30は、ライブビュー中に検出した主要被写体の位置を自動追尾の対象に設定する処理の手順を示すフローチャートである。
まず、顔検出が行われ(ステップS171)、顔が検出されたか否かが判定される(ステップS172)。
顔が検出された場合は、検出された顔の位置にフォーカスエリアが設定され、顔コンティニュアスAFが行われる(ステップS173)。顔コンティニュアスAFは、顔が検出されなくなるまで行われる。
一方、顔が検出されない場合は、画面中央にフォーカスエリアが設定され、中央コンティニュアスAFが行われる(ステップS180)。この後、中央コンティニュアスAFが合焦したか否か(あるいは、合焦に近い状態になったか否か)が判定される(ステップS181)。
中央コンティニュアスAFが合焦していない場合は、ステップS171に戻り、再度、顔検出が行われる。
一方、コンティニュアスAFが合焦した場合(あるいは、合焦に近い状態になった場合)は、撮影シーンが変動したか否かが判定される(ステップS182)。
ここでのシーン変動の検出は、あらかじめ登録された画像と現在撮影されている画像とを比較し、シーンに変動が生じているか否かを判定する。比較対象とする画像は、主要被写体を検出した際の画像である。したがって、初回はシーン変動の有無は判別せずに多点測距が実行される。
シーン変動がない場合は、ステップS171に戻り、再度、顔検出が行われる。
一方、シーンが変動した場合は、中央コンティニュアスAFが停止され、多点測距が行われる(ステップS183)。そして、その多点測距の結果に基づいて、焦点評価値が極大(ピーク)となる位置が検出された測距エリアの有無が判定される(ステップS184)。
この判定の結果、ピークが検出された測距エリアがないと判定されると、ステップS171に戻り、再度、顔検出が行われる。
一方、ピークが検出された測距エリアがあると判定されると、画像の取り込みが行われる。そして、取り込まれた画像が、比較用の基準画像として登録される(ステップS185)。この処理は、たとえば、比較用の基準画像をフレームメモリ74に記録することにより行われる。
比較用の基準画像の登録後、上記の主要被写体の検出処理の技術を利用して、主要被写体の検出が行われる(ステップS186)。そして、検出された主要被写体の位置が自動追尾の初期位置に設定される(ステップS187)。
このように、本実施の形態では、ライブビュー中に主要被写体の検出処理を行い、検出した主要被写体の位置を自動追尾の初期位置に自動的に設定する。これにより、自動追尾を行う際、撮影者が初期位置の指定処理を行う必要がなくなり、デジタルカメラの使い勝手を向上させることができる。