以下、本発明の実施の形態につき、図面を参照して具体的に説明する。参照される各図において、同一の部分には同一の符号を付し、同一の部分に関する重複する説明を原則として省略する。後に第1〜第4実施例を説明するが、まず、各実施例に共通する事項又は各実施例にて参照される事項について説明する。
図1は、本発明の実施の形態に係る撮像装置1の全体ブロック図である。撮像装置1は、例えば、静止画及び動画を撮影可能なデジタルビデオカメラである。但し、撮像装置1は、静止画のみを撮影可能なデジタルスチルカメラであってもよい。
撮像装置1は、撮像部11と、AFE(Analog Front End)12と、映像信号処理部13と、マイク14と、音声信号処理部15と、圧縮処理部16と、内部メモリの一例としてのSDRAM(Synchronous Dynamic Random Access Memory)17と、メモリカード18と、伸張処理部19と、映像出力回路20と、音声出力回路21と、TG(タイミングジェネレータ)22と、CPU(Central Processing Unit)23と、バス24と、バス25と、操作部26と、表示部27と、スピーカ28と、を備えている。操作部26は、録画ボタン26a、シャッタボタン26b及び操作キー26c等を有している。撮像装置1内の各部位は、バス24又は25を介して、各部位間の信号(データ)のやり取りを行う。
まず、撮像装置1及び撮像装置1を構成する各部位の、基本的な機能について説明する。
TG22は、撮像装置1全体における各動作のタイミングを制御するためのタイミング制御信号を生成し、生成したタイミング制御信号を撮像装置1内の各部に与える。具体的には、タイミング制御信号は、撮像部11、映像信号処理部13、音声信号処理部15、圧縮処理部16、伸張処理部19及びCPU23に与えられる。タイミング制御信号は、垂直同期信号Vsyncと水平同期信号Hsyncを含む。
CPU23は、撮像装置1内の各部の動作を統括的に制御する。操作部26は、ユーザによる操作を受け付ける。操作部26に与えられた操作内容は、CPU23に伝達される。SDRAM17は、フレームメモリとして機能する。撮像装置1内の各部は、必要に応じ、信号処理時に一時的に各種のデータ(デジタル信号)をSDRAM17に記録する。
メモリカード18は、外部記録媒体であり、例えば、SD(Secure Digital)メモリカードである。尚、本実施形態では外部記録媒体としてメモリカード18を例示しているが、外部記録媒体を、1または複数のランダムアクセス可能な記録媒体(半導体メモリ、メモリカード、光ディスク、磁気ディスク等)で構成することができる。
図2は、図1の撮像部11の内部構成図である。撮像部11にカラーフィルタなどを用いることにより、撮像装置1は、撮影によってカラー画像を生成可能なように構成されている。
図2の撮像部11は、光学系35と、絞り32と、撮像素子33と、ドライバ34を有している。光学系35は、ズームレンズ30及びフォーカスレンズ31を含む複数枚のレンズを備えて構成される。ズームレンズ30及びフォーカスレンズ31は光軸方向に移動可能である。
ドライバ34は、CPU23からのレンズ制御信号に基づいて、ズームレンズ30及びフォーカスレンズ31の移動を制御し、光学系35のズーム倍率や焦点距離を制御する。また、ドライバ34は、CPU23からの絞り制御信号に基づいて絞り32の開度を制御する。
絞り32は、絞り32の開口部の大きさを制御することによって撮像素子33の受光量及び被写界深度を制御する開口絞りであり、絞り32の開度とは、その開口部の大きさを表す。絞り32の開度を表す値は「絞り値」と呼ばれる。絞り32の開度が小さくなるに従って、絞り値は大きくなると共に撮像素子33の受光量は減少し且つ被写界深度は深くなる。逆に、絞り32の開度が大きくなるに従って、絞り値は小さくなると共に撮像素子33の受光量は増加し且つ被写界深度は浅くなる。
被写体からの入射光は、光学系35を構成する各レンズ及び絞り32の開口部を介して、撮像素子33に入射する。光学系35を構成する各レンズは、被写体の光学像を撮像素子33上に結像させる。TG22は、上記タイミング制御信号に同期した、撮像素子33を駆動するための駆動パルスを生成し、該駆動パルスを撮像素子33に与える。
撮像素子33は、例えばCCD(Charge Coupled Devices)やCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等からなる。撮像素子33は、光学系35及び絞り32を介して入射した光学像を光電変換し、該光電変換によって得られた電気信号をAFE12に出力する。より具体的には、撮像素子33は、マトリクス状に二次元配列された複数の画素(受光画素;不図示)を備え、各撮影において、各画素は露光時間に応じた電荷量の信号電荷を蓄える。蓄えた信号電荷の電荷量に比例した大きさを有する各画素からの電気信号は、TG22からの駆動パルスに従って、後段のAFE12に順次出力される。
AFE12は、撮像部11(撮像素子33)から出力されるアナログ信号を増幅し、増幅されたアナログ信号をデジタル信号に変換する。AFE12は、このデジタル信号を、順次、映像信号処理部13に出力する。
映像信号処理部13は、AFE12の出力信号に基づいて、撮像部11によって撮影された画像(以下、「撮影画像」又は「フレーム画像」ともいう)を表す映像信号を生成する。映像信号は、撮影画像の輝度を表す輝度信号Yと、撮影画像の色を表す色差信号U及びVと、から構成される。映像信号処理部13にて生成された映像信号は、圧縮処理部16と映像出力回路20に送られる。
図1のマイク14は、外部から与えられた音声(音)を、アナログの電気信号に変換して出力する。音声信号処理部15は、マイク14から出力される電気信号(音声アナログ信号)をデジタル信号に変換する。この変換によって得られたデジタル信号は、マイク14に対して入力された音声を表す音声信号として圧縮処理部16に送られる。
圧縮処理部16は、映像信号処理部13からの映像信号を、所定の圧縮方式を用いて圧縮する。動画または静止画撮影時において、圧縮された映像信号はメモリカード18に送られる。また、圧縮処理部16は、音声信号処理部15からの音声信号を、所定の圧縮方式を用いて圧縮する。動画撮影時において、映像信号処理部13からの映像信号と音声信号処理部15からの音声信号は、圧縮処理部16にて時間的に互いに関連付けられつつ圧縮され、圧縮後のそれらはメモリカード18に送られる。
録画ボタン26aは、ユーザが動画(動画像)の撮影の開始及び終了を指示するための押しボタンスイッチであり、シャッタボタン26bは、ユーザが静止画(静止画像)の撮影を指示するための押しボタンスイッチである。
撮像装置1の動作モードには、動画及び静止画の撮影が可能な撮影モードと、メモリカード18に格納された動画または静止画を表示部27に再生表示する再生モードと、が含まれる。操作キー26cに対する操作に応じて、各モード間の遷移は実施される。
撮影モードでは、所定のフレーム周期(例えば、1/60秒)にて順次撮影が行われる。撮影モードにおいて、ユーザが録画ボタン26aを押下すると、CPU23の制御の下、その押下後の各フレームの映像信号及びそれに対応する音声信号が、順次、圧縮処理部16を介してメモリカード18に記録される。再度、録画ボタン26aを押下すると、動画撮影は終了する。つまり、映像信号及び音声信号のメモリカード18への記録は終了し、1つの動画の撮影は完了する。
また、撮影モードにおいて、ユーザがシャッタボタン26bを押下すると、静止画の撮影が行われる。具体的には、CPU23の制御の下、その押下後の1つのフレームの映像信号が、静止画を表す映像信号として、圧縮処理部16を介してメモリカード18に記録される。
再生モードにおいて、ユーザが操作キー26cに所定の操作を施すと、メモリカード18に記録された動画または静止画を表す圧縮された映像信号は、伸張処理部19に送られる。伸張処理部19は、受け取った映像信号を伸張して映像出力回路20に送る。また、撮影モードにおいては、通常、録画ボタン26a又はシャッタボタン26bの押下の有無に関わらず、撮像部11による撮影画像の取得及び映像信号処理13による映像信号の生成が逐次行われており、所謂プレビューを行うべく、その映像信号は映像出力回路20に送られる。
映像出力回路20は、与えられたデジタルの映像信号を表示部27で表示可能な形式の映像信号(例えば、アナログの映像信号)に変換して出力する。表示部27は、液晶ディスプレイなどの表示装置であり、映像出力回路20から出力された映像信号に応じた画像を表示する。
また、再生モードにおいて動画を再生する際、メモリカード18に記録された動画に対応する圧縮された音声信号も、伸張処理部19に送られる。伸張処理部19は、受け取った音声信号を伸張して音声出力回路21に送る。音声出力回路21は、与えられたデジタルの音声信号をスピーカ28にて出力可能な形式の音声信号(例えば、アナログの音声信号)に変換してスピーカ28に出力する。スピーカ28は、音声出力回路21からの音声信号を音声(音)として外部に出力する。
本実施形態に係る撮像装置1は、静止画撮影時に適用可能な特徴的な絞り制御機能或いはそれに関連する機能を備える。この種の機能を実現する具体例として、以下に第1〜第4実施例を説明する。或る実施例に記載した事項は、矛盾なき限り、他の実施例にも適用することが可能である。尚、以下の説明は、特に記述しない限り、撮影モードにおける動作を説明したものである。
<<第1実施例>>
まず、第1実施例について説明する。図3は、上述の絞り制御機能を実現する主要部位のブロック図である。顔検出部41、AE評価部42及びAF評価部43は、図1の映像信号処理部13にて実現される。
顔検出部41は、順次得られるフレーム画像の中から人物の顔を検出して、顔を含む顔領域を抽出する。画像中に含まれる顔を検出する手法として様々な手法が知られており、顔検出部41は何れの手法をも採用可能である。
図4に、顔検出部41の内部ブロック図の例を示す。図4の顔検出部41は、画像縮小部51、顔検出処理部52及び顔辞書メモリ53を有する。
画像縮小部51は、フレーム画像の画像サイズを一定の割合で縮小することによってフレーム画像の縮小画像を生成可能である。画像縮小部51は、フレーム画像そのもの又はフレーム画像の縮小画像を検出対象画像として顔検出処理部52に供給する。
顔検出処理部52は、検出対象画像内に存在する顔を検出する。図5を参照して、顔検出処理部52による顔検出の手法を説明する。
図5(a)において、符号100は検出対象画像を表し、符号110は顔検出用の判定領域を表す。顔検出を行う際、判定領域を検出対象画像の左上隅に配置した状態を初期状態とし、検出対象画像内において、判定領域を1画素ずつ左から右に水平方向に走査させる。判定領域が検出対象画像の右端に到達したら、判定領域を下方向に1画素ずらし、再度、水平方向の走査を行う。このように、判定領域を水平方向及び垂直方向に走査しながら、判定領域内に顔が存在しているかを逐次検出する。
1種類のサイズの判定領域にて大きさの異なる顔を検出することができるように、フレーム画像の画像サイズは適宜縮小される。具体的には、フレーム画像を縮小することによって検出対象画像を生成する際の縮小率を段階的に変更し、フレーム画像及び各縮小率にて生成された縮小画像を検出対象画像として顔検出処理部52に供給する。
図5(b)及び(c)における符号101及び102は、縮小によって得られた検出対象画像であり、図5(a)の検出対象画像100がフレーム画像であるとした場合、図5(b)及び(c)に示される検出対象画像101及び102は、フレーム画像の縮小画像に相当する。
判定領域110のサイズは、何れの検出対象画像(100、101及び102)に対しても同じである。具体的には例えば、判定領域110のサイズは、24×24画素に設定される。但し、以下、説明及び図示の簡略化上、判定領域110のサイズは、8×8画素であるものとする。
上述の如く判定領域は走査されるが、或る検出対象画像内において判定領域が或る特定の位置に存在する状態に着目し、その判定領域内に顔が存在しているか否かを判断する手法について説明する。図6は、この手法の動作手順を表すフローチャートである。図6におけるステップS1〜S5の各処理は、顔検出処理部52によって実行される。
ステップS1において、判定領域内の画像に対して4種類の微分フィルタの夫々を適用してエッジ強調処理を施すことにより、4つの第1エッジ強調画像(4方向の第1エッジ強調画像)を生成する。4種類の微分フィルタとして、例えば図7(a)〜(d)に示すような、水平方向、垂直方向、右斜め上方向及び左斜め上方向に対応する4方向のPrewitt型の微分フィルタ(エッジ検出オペレータ)を用いる。これらを適用して得られた各第1エッジ強調画像を、水平方向、垂直方向、右斜め上方向及び左斜め上方向の第1エッジ強調画像と呼ぶ。また、それらを総称して、4方向の第1エッジ強調画像と呼ぶ。
図8に、各第1エッジ強調画像の例を示す。符号121、122、123及び124は、夫々、水平方向、垂直方向、右斜め上方向及び左斜め上方向の第1エッジ強調画像を表しており、図8には、各第1エッジ強調画像を形成する各画素の画素値の一部が示されている。
次に、ステップS2において、4方向の第1エッジ強調画像間で対応する画素ごとに画素値が最大のものを特定し、最大の画素値のみをそのまま残すと共に最大以外の画素値をゼロとすることにより、4方向の第2エッジ強調画像を生成する。図8において、符号131、132、133及び134は、夫々、水平方向、垂直方向、右斜め上方向及び左斜め上方向の第2エッジ強調画像を表しており、図8には、各第2エッジ強調画像を形成する各画素の画素値の一部が示されている。
例えば、第1エッジ強調画像内の或る特定画素位置に対する、第1エッジ強調画像121、122、123及び124の画素値が夫々10、4、6及び3である場合、第2エッジ強調画像131、132、133及び134の該特定画素位置における画素値は、夫々、10、0、0及び0となる(図8参照)。
次に、ステップS3において、4方向の第2エッジ強調画像の夫々に対して平滑化処理を施し、平滑化処理後の4方向の第2エッジ強調画像を4方向の特徴画像とする。図9(a)〜(d)に、生成された4方向の特徴画像、即ち、水平方向、垂直方向、右斜め上方向及び左斜め上方向の特徴画像を示す(画素値の図示を省略)。尚、平滑化処理を行うことなく、4方向の第2エッジ強調画像そのものを4方向の特徴画像とするようにしてもよい。
4方向の特徴画像の夫々において、画素位置は特徴画像内の座標(x,y)にて特定される。x及びyは、各特徴画像における水平座標及び垂直座標を表し、今の例の場合、x及びyは、夫々、0以上且つ7以下の各整数をとる。また、特徴画像の種類を、qにて表現する。qは、0以上3以下の各整数をとり、q=0、1、2及び3の特徴画像は、夫々、水平方向、垂直方向、右斜め上方向及び左斜め上方向の特徴画像を意味する。各特徴画像における画素を、特徴画素と呼ぶ。
図4の顔辞書メモリ53には、特徴画像のサイズに適応した重みテーブル(換言すれば、判定領域のサイズに適応した重みテーブル)が格納されている。重みテーブルは、教師サンプルとしての大量の顔画像を元に予め作成され、顔辞書メモリ53に格納される。図10に、判定領域のサイズを8×8画素とした場合における重みテーブルの内容例を示す。重みテーブルには、特徴画素ごとに、特徴画素の画素値に対応した重みが格納されている。重みは、顔らしさを表す値であり、この重みをスコアと呼ぶことにする。
また、変数q、x及びyを、1つの変数nに集約して考える。4×8×8=256より、変数nは、0以上且つ255以下の各整数をとるものとする。変数nの値は、変数q、x及びyが定まれば一意に定まる。4方向の特徴画像における各特徴画素(全特徴画素数は256個)を、変数nを用いてF(n)で表し、特徴画素F(n)における画素値(図10の横方向に対応)をi(n)にて表す。スコアも変数nに依存して特定されるため、スコアをw(n)にて表すものとする。例えば、q=x=y=0がn=0に対応すると仮定した場合、水平方向の特徴画像(q=0に対応)の画素位置(0,0)の画素値は、特徴画素F(0)の画素値i(0)と合致する。スコアw(0)は、重みテーブルに基づき、画素値i(0)にて特定される。この画素値i(0)が3であるとしたとき、スコアw(0)は、図10の例では35となる。画素値i(n)は判定領域内の画像が顔画像(即ち、顔を表す画像)であるか否かを識別するために有効な特徴量と呼ぶことができる。
このような重みテーブルは、例えば、Adaboostと呼ばれる公知の学習方法を利用して作成することができる(Yoav Freund, Robert E. Schapire,"A decision-theoretic generalization of on-line learning and an application to boosting", European Conference on Computational Learning Theory, September 20,1995.)。
図4の顔辞書メモリ53には、図10に示されるような重みテーブルが複数個、格納されている。その複数の重みテーブルには、人物の顔を正面から見た正面顔に対応する第1の重みテーブルと、人物の顔を横から見た横顔に対応する第2の重みテーブルと、が含まれる。第1の重みテーブルは、学習処理を介して得た正面顔を表す基準顔画像をデータ化したものであり、第2の重みテーブルは、学習処理を介して得た横顔を表す基準顔画像をデータ化したものである。
図6のステップS3の処理に続くステップS4では、第1の重みテーブルによって表される基準顔画像と判定領域内の画像との類似度S1と、第2の重みテーブルによって表される基準顔画像と判定領域内の画像との類似度S2と、を算出する。
尚、横顔には、右向きの横顔と左向きの横顔が存在するが、右と左の差異は本実施例の処理にとって特に有意な差異ではないため、説明の簡略化上、横顔は1種類であるものとする。実際には、第2の重みテーブルとして右向き横顔用の重みテーブル及び左向き横顔用の重みテーブルを用意し、各重みテーブルに対する類似度、即ち右向き横顔に対応する類似度と左向き横顔に対応する類似度を算出する。そして、それらの2つの類似度の内、大きい方の類似度を類似度S2として取り扱えばよい。
類似度S1は、4方向の特徴画像における各画素値i(n)に対応する、第1の重みテーブルから抽出されたスコアw(n)の総和(スコアw(0)〜w(255)の総和)である。この総和は、第1の重みテーブルによって表される正面顔の基準顔画像と判定領域内の画像との類似度を表すことになる。
類似度S2は、4方向の特徴画像における各画素値i(n)に対応する、第2の重みテーブルから抽出されたスコアw(n)の総和(スコアw(0)〜w(255)の総和)である。この総和は、第2の重みテーブルによって表される横顔の基準顔画像と判定領域内の画像との類似度を表すことになる。
各重みテーブルは、判定領域内の画像から類似度を導出するための顔辞書データと呼ぶことができる。
そして、図6のステップS5において、類似度S1及びS2に基づき顔判定を行う。具体的には、S1>S2且つS1>STH、が成立する時、判定領域内に正面顔、即ち、正面向きの顔が含まれていると判断する。一方、S2>S1且つS2>STH、が成立する時、判定領域内に横顔、即ち、横向きの顔が含まれていると判断する。S1<STH且つS2<STH、が成立するときは判定領域に顔は含まれていないと判断する。
判定領域内の画像が正面顔の基準顔画像に類似しているほど類似度S1が比較的大きな値をとるように、上記の第1の重みテーブルは、学習処理を介して設定されている。同様に、判定領域内の画像が横顔の基準顔画像に類似しているほど類似度S2が比較的大きな値をとるように、上記の第2の重みテーブルは、学習処理を介して設定されている。このため、上述の処理によって、判定領域内に顔が含まれているか否かを検出することができると共に含まれている顔の向きをも検出することができる。
顔検出処理部52は、1つのフレーム画像内に1以上の顔が存在すると判断したとき、顔検出情報を作成する。作成された顔検出情報は、CPU23に伝達される(図3参照)。顔が存在していないと判断された場合は、その旨を表す情報がCPU23に伝達される。第1実施例では、1つのフレーム画像内に1つの顔が存在すると判断された場合を想定する。
図11は、顔検出情報の概要を示している。顔検出情報には、検出された顔の位置を特定する顔位置情報及び検出された顔の大きさを特定する顔サイズ情報が含まれる。判定領域内に顔が含まれていると判断されたとき、その判定領域に対応する領域が顔領域としてフレーム画像から抽出される。顔の位置及び大きさは、抽出された顔領域の位置及び大きさにて表される。従って、ここにおける顔の位置及び大きさは、フレーム画像上における顔の位置及び大きさである。
図12(a)の如く、フレーム画像と一致する検出対象画像100において、判定領域内に顔が存在すると判断された場合は、その顔を含む判定領域そのものが顔領域150とされる。一方、図12(b)の如く、フレーム画像の縮小画像に相当する検出対象画像102において、判定領域160内に顔が存在すると判断された場合は、図12(a)の如く、フレーム画像(検出対象画像100)上における該判定領域160の対応領域が顔領域151とされる。
今、図13に示す如く、1つのフレーム画像200から1つの顔領域201が抽出された場合を考える。顔領域201は矩形領域であり、フレーム画像200上における顔領域201の中心座標を(xc,yc)とする。そして、顔領域201の対角線上の2頂点の座標を(xl,yl)及び(xr,yr)とする。
この場合、顔検出情報にて特定される顔の位置は、中心座標(xc,yc)=((xr−xl)/2,(yr−yl)/2)にて表され、顔検出情報にて特定される顔の大きさは、顔領域201の面線(即ち、(xr−xl)×(yr−yl))にて表される。尚、顔の大きさを、顔領域201の対角線長(即ち、((xr−xl)2+(yr−yl)2)の平方根)、又は、顔領域201を形成する2辺の長さの合計(即ち、(xr−xl)+(yr−yl))にて表すようにしても良い。
図11に示す如く、顔検出情報には、更に、検出された顔の向きを特定する顔向き情報及び検出された顔についての類似度を特定する顔検出信頼度情報が含まれる。顔向き情報によって、顔領域201に含まれる顔の向きが正面向きであるのか横向きであるのかが特定される。顔検出信頼度情報は、顔検出の信頼度を表している。顔領域201に含まれる顔の向きが正面向きであると判断された場合、顔検出信頼度情報にて特定される類似度は正面顔に対応する上述の類似度S1とされ、顔領域201に含まれる顔の向きが横向きであると判断された場合、顔検出信頼度情報にて特定される類似度は横顔に対応する上述の類似度S2とされる。
顔検出部41による、上述の、顔を検出する処理及び顔検出情報を生成する処理をまとめて「顔検出処理」とよぶ。
次に、図3のAE評価部42の機能について説明する。AE評価部42は、フレーム画像の明るさに応じたAE評価値を算出する。AE評価値は、フレーム画像ごとに算出され、算出された各AE評価値は順次CPU23に伝達される。例えば、フレーム画像内の所定領域をAE評価領域とし、そのAE評価領域内の各画素の輝度値の平均値をAE評価値とする。
AF評価部43は、フレーム画像内に設けられたAF評価領域(焦点評価領域)内の画像のコントラスト量に応じたAF評価値(焦点評価値)を算出する。AF評価値は、フレーム画像ごとに算出され、算出された各AF評価値は順次CPU23に伝達される。
図14に、AF評価部43の内部ブロック図を示す。AF評価部43は、抽出部61、HPF(ハイパスフィルタ)62及び積算部63を含む。抽出部61は、フレーム画像内に定義されたAF評価領域内の輝度信号をフレーム画像の映像信号から抽出する。HPF62は、抽出部61によって抽出された輝度信号中の所定の高域周波数成分のみを抽出する。積算部63は、HPF62によって抽出された高域周波数成分の絶対値を積算することにより、AF評価領域内の画像のコントラスト量に応じたAF評価値を求める。AF評価値は、該コントラスト量に概ね比例し、該コントラスト量が増大するにつれて増大する。
次に、図15を参照して、図3の各部位の動作の流れを説明する。図15は、この動作の流れを表すフローチャートである。
まず、撮像装置1の撮影モードでは、ステップS10にて通常露出制御が行われる。通常露出制御では、例えば各フレーム画像の全体領域がAE評価領域とされ、AE評価値が一定値付近に保たれるように、CPU23が図2のドライバ34を介して絞り32の開度を調節することにより、受光量(画像の明るさ)を制御する。尚、絞り32の開度の他、必要に応じて、図2の撮像素子33の露光時間及び図1のAFE12における信号増幅の増幅度も制御される。
ステップS10に続くステップS11では、CPU23が、図1のシャッタボタン26bが半押しされたか否かを判断する。シャッタボタン26bは、半押し(ファーストレリーズ)と全押し(セカンドレリーズ)の2段階操作が可能となっている。ユーザがシャッタボタン26bに圧力を付加するとまず半押しの状態となり、更に圧力を付加すると全押しの状態となる。シャッタボタン26bが半押しされていない時はステップS10に戻って通常露出制御が繰り返される。一方、シャッタボタン26bが半押しされている場合は、ステップS12に移行して、顔検出部41が顔検出処理を行って、現在のフレーム画像内に顔が存在しているか否かを判断する。
そして、顔が存在していない場合は、その旨がCPU23に伝達されてステップS20に移行する。一方、顔が存在していると判断された場合は、ステップS13にて、上述の如くフレーム画像から顔領域が抽出されると共に顔検出情報(図11参照)が作成される。顔検出情報は、CPU23に伝達される。
ステップS13に続くステップS14では、CPU23が、与えられた顔検出情報に基づいて、目標の被写界深度を設定する。具体的には、顔だけでなく背景にもピントが合うように被写界深度を比較的深くするか、或いは、顔にピントを合わせつつ背景がぼけるように被写界深度を比較的浅くするかを選択設定する。
被写界深度の設定は、以下の指針に基づいて行われる。この指針を図16の表にまとめる。図16に、被写界深度の深さに対応する絞り値の大きさ及び開度の大きさも併せて示す。
顔の位置がフレーム画像の中央付近に位置している場合、撮影者は人物の顔に特に注目していると推定される。従って、その場合は、被写界深度が比較的浅くなるようにする。逆に、顔の位置がフレーム画像の端付近に位置している場合、撮影者は背景をも重視していると推定される。従って、その場合は、被写界深度が比較的深くなるようにする。
フレーム画像上の顔の大きさが比較的大きい場合、撮影者は人物の顔に特に注目していると推定される。従って、その場合は、被写界深度が比較的浅くなるようにする。逆に、フレーム画像上の顔の大きさが比較的小さい場合、撮影者は背景をも重視していると推定される。従って、その場合は、被写界深度が比較的深くなるようにする。
フレーム画像上の顔の向きが正面向きである場合、撮影者は人物の顔に特に注目していると推定される。従って、その場合は、被写界深度が比較的浅くなるようにする。逆に、フレーム画像上の顔の向きが横向きである場合、撮影者は背景をも重視していると推定される(撮影者が注意を向けているのは顔だけでないと推定される)。従って、その場合は、被写界深度が比較的深くなるようにする。
検出された顔についての類似度が比較的高い場合(即ち、顔検出の信頼性が比較的高い場合)、フレーム画像内に顔が存在している可能性が高い。一方、類似度が比較的低い場合は、顔検出が誤検出であって、実際にはフレーム画像内に顔が存在していない可能性も低くない。上述の如く、検出された顔の位置等に応じて撮影者の意図に合致した被写界深度設定を行うのであるが、顔検出が誤検出であったならば、そのような設定はかえって撮影者の意図に反しかねない。よって、類似度が比較的高い場合は被写界深度が比較的浅くなるようにし、類似度が比較的低い場合は被写界深度が比較的深くなるようにする。
上述の指針に従って被写界深度設定がなされたフレーム画像の例を図17(a)〜(c)に示す。図17(a)の例では、顔が画像の中央付近に位置している。また、顔の大きさが比較的大きい。従って、被写界深度が比較的浅くされ(絞り値が比較的小さくされ)、顔にピントがあう一方で背景がぼける。図17(c)の例では、顔が画像の端付近に位置している。また、顔の大きさが比較的小さい。従って、被写界深度が比較的深くされ(絞り値が比較的大きくされ)、顔にも背景にもピントがあわせられる。図17(b)は、図17(a)と(c)の中間状態に対応している。
実際には、顔の位置に対応する位置評価値PA、顔の大きさに対応する大きさ評価値SA、顔の向きに対応する向き評価値FA、及び、類似度に対応する信頼性評価値RAを導入し、それらを加重加算することによって得られる被写界深度評価値αに基づいて目標の被写界深度を決定する。PA、SA、FA及びRAは、顔検出情報に基づいて定められる。また、PA、SA、FA及びRAの夫々は、図18(a)〜(d)に示す如く、最大値として正の値をとり、最小値として負の値をとる。
位置評価値PAは、検出された顔の位置(即ち、顔領域の中心)とフレーム画像の中心との距離に応じた評価値である。図18(a)に示す如く、位置評価値PAは、その距離が短いほど大きな値をとり、その距離が長いほど小さな値をとる。その距離の可変範囲において、位置評価値PAは正の所定値から負の所定値までの間の値をとる。
大きさ評価値SAは、検出された顔の大きさに応じた評価値である。図18(b)に示す如く、大きさ評価値SAは、その顔の大きさが大きいほど大きな値をとり、小さいほど小さな値をとる。顔の大きさの可変範囲において、大きさ評価値SAは負の所定値から正の所定値までの間の値をとる。
向き評価値FAは、検出された顔の向きに応じた評価値である。図18(c)に示す如く、向き評価値FAは、検出された顔の向きが正面向きである場合に正の所定値をとり、横向きである場合に負の所定値をとる。
信頼性評価値RAは、検出された顔についての類似度に応じた評価値である。図18(d)に示す如く、信頼性評価値RAは、その類似度が高いほど大きな値をとり、低いほど小さな値をとる。顔検出情報にて特定される類似度の可変範囲において、信頼性評価値RAは負の所定値から正の所定値までの間の値をとる。
被写界深度評価値αは、下記式(1)に従って算出される。ここで、kA1〜kA4は、加重加算における重み係数である。kA1〜kA4は、夫々、0より大きな所定値をとる。但し、重み係数kA1〜kA4の内、1つ以上の任意の重み係数を0とすることも可能である。0の重み係数に対応する評価値は、被写界深度評価値αに反映されないことになる。被写界深度評価値αに対する寄与度は、PA、SA、FA、RAの順番で低くなるようにするとよい。従って、1つ以上の重み係数を0とする場合、重み係数を0にする優先順位は、kA4が最も高く、kA3が2番目に高く、kA2が3番目に高い。kA1は、常に0より大きくすることが望ましい(但し、kA1=0、とすることも可能ではある)。
α=kA1・PA+kA2・SA+kA3・FA+kA4・RA ・・・(1)
そして、図15のステップS14において、α≧0の場合は目標の被写界深度を比較的浅くすると決定し、α<0の場合は目標の被写界深度を比較的深くすると決定する。その後、ステップS15に移行する。
ステップS15では、ステップS14にて決定された目標の被写界深度に基づいて、設定されるべき目標の絞り値を算出する。上述したように、図2のフォーカスレンズ31は光軸方向に移動可能である。図2のフォーカスレンズ31の光軸方向の位置を、以下、「レンズ位置」という。尚、CPU23は、レンズ位置を検出する位置検出器(不図示)の検出結果に基づいて、レンズ位置を認識可能となっている。フォーカスレンズ31は、至近端から無限端まで移動可能である。至近端及び無限端は、フォーカスレンズ31の全移動範囲における両端を表し、レンズ位置が至近端から無限端に向かうにつれて、ピントの合う被写体と撮像装置1との距離が大きくなる。
ステップS15では、次々と得られる各フレーム画像に対して顔領域に対応するAF評価領域(以下、顔AF評価領域という)と背景領域に対応するAF評価領域(以下、背景AF評価領域という)を設定し、レンズ位置を所定間隔で光軸方向に移動させながら、顔AF評価領域に対するAF評価値(以下、顔AF評価値という)と背景AF評価領域に対するAF評価値(以下、背景AF評価値という)を次々と求める。図19に、これによって得られる、レンズ位置と顔AF評価値との関係を表す曲線300及びレンズ位置と背景AF評価値との関係を表す曲線301を示す。
図20に、顔AF評価値等の算出元となる1つのフレーム画像310を示す。符号311で付された矩形領域が顔AF評価領域であり、符号312で付された矩形領域が背景AF評価領域である。顔AF評価領域311は、ステップS13にて抽出された顔領域に内包される矩形領域、或いは、その顔領域と同じとされる。背景AF評価領域312は、その顔領域と重なり合わないフレーム画像310内の領域(例えば、所定矩形領域)とされる。顔AF評価領域311と背景AF評価領域312の画像サイズは例えば同じとされる。
図19の曲線300及び301に示す如く、或るレンズ位置において、顔AF評価値と背景AF評価値の夫々は最大値をとる。顔AF評価値に最大値を与えるレンズ位置をL1で表し、背景AF評価値に最大値を与えるレンズ位置をL2で表す。尚、AF評価値に関する最大値を極大値と読み替えることもできる。また、実空間において、顔AF評価領域に対応する顔と撮像装置1との間の距離D1(即ち、顔の被写体距離)は、背景AF評価領域に対応する背景と撮像装置1との間の距離D2(即ち、背景の被写体距離)よりも短い。レンズ位置をL1にすれば顔AF評価領域内に収まる被写体(顔)に完全にピントが合い、レンズ位置をL2にすれば背景AF評価領域内に収まる被写体(背景)に完全にピントが合う。
レンズ位置L1及びL2とレンズ位置に応じて定まる光学系35(図2)の焦点距離fから、距離D1及びD2は求まる。ステップS15において、CPU23は、曲線300及び301を描く顔AF評価値及び背景AF評価値から特定されるレンズ位置L1及びL2に基づいて、顔と背景の距離DFB(=D2−D1)を求める。そして、距離DFBに基づいて、目標の被写界深度を達成するための絞り値を算出する。
一般に、被写界深度は、以下の式(2a)及び(2b)にて求められる。また、式(2c)が成立する。DFは後端の被写界深度であり、DNは前端の被写界深度である。全体の被写界深度は、図21(a)に示す如く、後端の被写界深度DFと前端の被写界深度DNを合わせたものである。特定距離の被写体に完全にピントが合うようにレンズ位置を設定した状態において、後端の被写界深度DFは、その特定距離(合焦位置)を基準とした撮像装置1に遠い側の被写界深度に相当し、前端の被写界深度DNは、その特定距離(合焦位置)を基準とした撮像装置1に近い側の被写界深度に相当する。
DF=s・(H−f)/(H−s) ・・・(2a)
DN=s・(H−f)/(H+s−2f) ・・・(2b)
H=f2/F・c ・・・(2c)
上記の式において、sは被写体距離を表し、Hは過焦点距離を表し、Fは絞り値を表し、cは予め設定される許容錯乱円の直径(許容されるボケの直径)を表す。fは、上述したように焦点距離である。
具体的には、ステップS15において、顔にピントが合うようにしつつ、ステップS14にて設定された目標の被写界深度に応じて絞り値Fを求める。
つまり、図15のステップS14においてα≧0が成立し目標の被写界深度を比較的浅くすると決定された場合は、後端の被写界深度DFに「顔と背景までの距離DFBよりも短い距離」を代入して式(2a)に基づき過焦点距離Hを求め、求めたHを式(2c)に代入することにより絞り値Fを求める。即ち、図21(b)に示す如く、顔を基準としてピントを合わせた時の被写界深度内に背景が収まらないように絞り値Fを求める。
一方、ステップS14においてα<0が成立し目標の被写界深度を比較的深くすると決定された場合は、後端の被写界深度DFに「顔と背景までの距離DFBよりも長い距離」を代入して式(2a)に基づき過焦点距離Hを求め、求めたHを式(2c)に代入することにより絞り値Fを求める。即ち、図21(c)に示す如く、顔を基準としてピントを合わせた時の被写界深度内に背景が収まるように絞り値Fを求める。
過焦点距離H及び絞り値Fを求める際、レンズ位置をL1とすることを前提にして、顔までの距離D1を被写体距離sとして式(2a)に代入すると共にレンズ位置L1に対応する焦点距離をfとして式(2a)及び(2c)に代入する。
尚、絞り値Fを求める際、被写体距離sとして距離D1以外の距離を代入することも可能である。但し、この場合でも、ステップS14において目標の被写界深度を比較的浅くすると決定されている場合には被写界深度内に背景が収まらないように絞り値Fを求め、目標の被写界深度を比較的深くすると決定されている場合には被写界深度内に背景が収まるように絞り値Fを求める。勿論、双方の場合において、顔が被写界深度内に収まるように絞り値Fは求められる。この場合は、上記式(2a)及び(2c)に加え、式(2b)も利用して絞り値Fを求めればよい。
ステップS15にて絞り値(F)が求まった後、その絞り値(F)に従った開度になるようにCPU23は図2の絞り32の開度を制御する。そして、ステップS16に移行する。ステップS16では、求められた絞り値(F)に従った最適な露出制御を行う。
具体的には、図3のAE評価部42が、最新のフレーム画像の全体領域をAE評価領域とした場合におけるAE評価値WAEと、そのフレーム画像における顔領域(又は顔領域に内包される矩形領域)をAE評価領域とした場合におけるAE評価値FAEと、を求める。
更に、顔の位置に対応する位置評価値PB、顔の大きさに対応する大きさ評価値SB、顔の向きに対応する向き評価値FB、及び、類似度に対応する信頼性評価値RBを導入し、それらを加算することによって係数βを求める。PB、SB、FB及びRBは、夫々、顔検出情報に基づいて定められ、図22(a)〜(d)に示す如く、0以上の値をとる。
位置評価値PBは、検出された顔の位置(即ち、顔領域の中心)とフレーム画像の中心との距離に応じた評価値である。図22(a)に示す如く、位置評価値PBは、その距離が短いほど大きな値をとり、その距離が長いほど小さな値をとる。
大きさ評価値SBは、検出された顔の大きさに応じた評価値である。図22(b)に示す如く、大きさ評価値SBは、その顔の大きさが大きいほど大きな値をとり、小さいほど小さな値をとる。
向き評価値FBは、検出された顔の向きに応じた評価値である。図22(c)に示す如く、向き評価値FBは、検出された顔の向きが正面向きである場合に所定の第1の値をとり、横向きである場合に第1の値よりも小さな所定の第2の値をとる。
信頼性評価値RBは、検出された顔についての類似度に応じた評価値である。図22(d)に示す如く、信頼性評価値RBは、その類似度が高いほど大きな値をとり、低いほど小さな値をとる。
係数βは、下記式(3)に従って算出される。但し、0≦β≦1、が成立するように、各評価値PB、SB、FB及びRBは導出される。係数kB1〜kB4は、例えば、全て1とされる。但し、係数kB1〜kB4の内、1つ以上の任意の係数を0とすることも可能である。0の係数に対応する評価値は、係数βに反映されないことになる。係数βに対する寄与度は、例えば、PB、SB、FB、RBの順番で低くなるようにする。従って、係数kB1〜kB4の内、1つ以上の係数を0とする場合、係数を0にする優先順位は、kB4が最も高く、kB3が2番目に高く、kB2が3番目に高い。kB1≠0であることが望ましい(但し、kB1=0とすることも可能ではある)。
β=kB1・PB+kB2・SB+kB3・FB+kB4・RB ・・・(3)
ステップS16における露出制御では、絞り値がステップS15で定められているため、図2の撮像素子33の露光時間と図1のAFE12における増幅度が、制御対象となる。即ち、絞り値優先の露出制御が行われる。具体的には、式(3)で求めた係数βを用いたAE評価値WAEとFAEの加重加算値γが明るさ目標値に一致するように、それらの制御対象がCPU23によって制御される。加重加算値γは式(4)にて表され、明るさ目標値は、最適な画像明るさを得るために定められる所定値である。これにより、例えば顔が画像中央付近に位置していれば、γに対する顔のAE評価値FAEの寄与度が高まり、より顔に着目した露出制御が行われる。
γ=β×FAE+(1−β)×WAE ・・・(4)
ステップS16の露出制御の後、ステップS17にて、シャッタボタン26bが全押しされたかが確認される。全押しされていない場合はステップS17の処理が繰り返されるが、全押しされた場合はステップ18にて静止画の撮影が行われる。この静止画の露光を開始する前に、実際のレンズ位置がL1(図19参照)となり且つ実際の絞り値がステップS15で算出された絞り値(F)となるように、CPU23によって、フォーカスレンズ31の位置及び絞り32の開度が制御される。また、この静止画の撮影時における露光時間及びAFE12における増幅度は、ステップS16での露出制御に従う。得られた静止画を表す画像データは、図1の圧縮処理部16を介してメモリカード18に格納される。
一方、ステップS12にて顔が存在していないと判断された場合に移行するステップS20では、フレーム画像内の所定領域をAF評価領域とし、AF評価値が最大となるようにレンズ位置を駆動するオートフォーカス制御を行うと共に、通常露出制御を行う。通常露出制御では、絞り値、図2の撮像素子33の露光時間及び図1のAFE12における増幅度が制御対象となる。そして、フレーム画像の全体領域がAE評価領域とされ、最新のフレーム画像のAE評価値(即ち、画像全体の輝度平均)が上述の明るさ目標値と一致するように、制御対象(絞り値、露光時間及び増幅度)を制御する。ステップS20における通常露出制御の後、ステップS17に移行し、シャッタボタン26bが全押しされた場合はステップS18にて静止画の撮影が行われる。得られた静止画を表す画像データは、図1の圧縮処理部16を介してメモリカード18に格納される。
上述の如く、画像上の顔の位置等に基づいて、顔又は背景に対する撮影者の注目度合いを推定し、背景を被写界深度内に含めるか否かを決定する。そして、その決定内容に従って絞り値(絞り32の開度)を制御するようにする。これにより、撮影者の意図に合致した、被写界深度の制御による演出効果を特別な操作無しに得ることが可能となる。
尚、上述の説明からも明らかであるが、以下のことが言える。
顔検出情報にて特定される顔の位置以外の他の条件を固定した状態において、顔の位置が、フレーム画像上の第1位置にあるとき被写界深度評価値αは比較的大きくなり且つフレーム画像上の第2位置にあるとき被写界深度評価値αは比較的小さくなる。ここで、第1位置は、第2位置よりもフレーム画像の中心位置に近い。上述のステップS14及びS15の処理内容から理解されるように、顔の位置が相違しても他の条件に依存して結果的に目標の絞り値(目標の被写界深度)は変化しないこともあるが、顔の位置が第1位置にあることに由来する比較的大きなαは、絞り値を比較的小さくする(絞り32の開度を比較的大きくする)方向に作用し、顔の位置が第2位置にあることに由来する比較的小さなαは、絞り値を比較的大きくする(絞り32の開度を比較的小さくする)方向に作用する。
顔の大きさが相違した場合、顔の向きが相違した場合、顔検出における類似度が相違した場合についても、同様のことが言える。
<<第2実施例>>
上述の例では、上記式(2a)〜(2c)に基づき、制御されるべき目標の絞り値を導出して実際の絞り値を調整した。但し、この絞り値の調整手法として他の手法を用いることも可能である。この絞り値の調整手法法の変形例として、第2実施例を説明する。第2実施例における絞り値の調整手法を、第1実施例におけるステップS15(図15参照)にて実施することを想定して、第2実施例の以下の説明を行う。第1実施例に記載した内容は、矛盾なき限り、第2実施例にも適用される。第2実施例に係る絞り制御機能を実現する主要部位のブロック図は、図3のそれと同じである。
第2実施例に係る絞り値の調整手法の手順を、図23を参照して説明する。図23は、この手順を表すフローチャートである。この調整手法を第1実施例に適用する場合、図23のステップS31〜S34の各処理が図15のステップS14とS16の間に実施される。適宜、図14及び図20をも参照する。
図14のAF評価部43におけるHPF62のカットオフ周波数を、高カットオフ周波数と低カットオフ周波数との間で可変設定できるようにしておく。高カットオフ周波数の方が、低カットオフ周波数よりも周波数が高い。
そして、ステップS31において、HPF62のカットオフ周波数として高カットオフ周波数を採用した状態で、レンズ位置を所定間隔で光軸方向に移動させながら、図20の顔AF評価領域311に対する顔AF評価値と背景AF評価領域312に対する背景AF評価値を次々と求める。同様に、HPF62のカットオフ周波数として低カットオフ周波数を採用した状態で、レンズ位置を所定間隔で光軸方向に移動させながら、図20の顔AF評価領域311に対する顔AF評価値と背景AF評価領域312に対する背景AF評価値を次々と求める。
ステップS31にて求められた結果を図24に示す。図24において、曲線401、402、403及び404は、夫々、高カットオフ周波数に対応するレンズ位置と顔AF評価値との関係、低カットオフ周波数に対応するレンズ位置と顔AF評価値との関係、高カットオフ周波数に対応するレンズ位置と背景AF評価値との関係、及び、低カットオフ周波数に対応するレンズ位置と背景AF評価値との関係を表す。曲線401〜404は、実際の絞り値が或る特定の絞り値にある状態における各関係を表す。
各カットオフ周波数に関し、図24に示す如く、或るレンズ位置において顔AF評価値と背景AF評価値の夫々は最大値をとる。高カットオフ周波数の顔AF評価値に最大値を与えるレンズ位置はL1である。低カットオフ周波数におけるそれも、概ねL1となる。カットオフ周波数に関わらず、背景AF評価値に最大値を与えるレンズ位置は、レンズ位置L1よりも無限端側のL2に位置する。尚、図24に示す各曲線(401及び403)は、図19に示すそれら(300及び301)と随分相違しているが、その相違は、説明及び図示の便宜を図るために生じたものに過ぎない。尚、AF評価値に関する最大値を極大値と読み替えることもできる。
レンズ位置をL1とした場合における、高カットオフ周波数の顔AF評価値及び背景AF評価値を夫々QH1及びQH2とする。レンズ位置をL1とした場合における、低カットオフ周波数の顔AF評価値及び背景AF評価値を夫々QL1及びQL2とする。高カットオフ周波数の方が、低カットオフ周波数よりも周波数が高いため、必然的に、QL1≧QH1且つQL2≧QH2が成立する。
ステップS31に続くステップS32(図23参照)では、CPU23が、顔についての比QL1/QH1と背景についての比QL2/QH2を求める。そして、ステップS33において、CPU23は、QL1/QH1とQL2/QH2とを対比し、その対比結果が図15のステップS14で定められた目標の被写界深度に従ったものであるかを判断する。そして、その判断結果に応じて絞り値の調整が行われる(ステップS34)。
図15のステップS14にて目標の被写界深度を比較的浅くすると決定された場合は、顔にピントを合わせつつ背景をぼかしたい訳であるから、顔についての比QL1/QH1よりも背景についての比QL2/QH2が或る程度大きくなることを目指して絞り値を調整する。一方、図15のステップS14にて目標の被写界深度を比較的深くすると決定された場合は、顔にも背景にもピントを合わせたい訳であるから、顔についての比QL1/QH1と背景についての比QL2/QH2が概ね同等になることを目指して絞り値を調整する。
より具体的には例えば、図15のステップS14にて目標の被写界深度を比較的浅くすると決定された場合は、第1の不等式:「THR2≧(QL2/QH2−QL1/QH1)≧THR1」が成立するかを判断する。そして、第1の不等式が成立しない場合は、その第1の不等式が成立するように絞り値を調整してからステップS31に戻り、上述のステップS31以降の処理を繰り返す。例えば、(QL2/QH2−QL1/QH1)<THR1、である場合は、絞り値を所定量減少させてから(実際の絞り32の開度を所定量増加させてから)ステップS31に戻る。一方、第1の不等式が成立する場合は、目標の被写界深度が達成されたとして図23の処理を終え、その後、第1実施例で述べた図15のステップS16以降の各処理を行う。尚、THR1及びTHR2は、THR1<THR2を満たす所定の正の閾値である。また、第1の不等式を「(QL2/QH2−QL1/QH1)≧THR1」に置換しても良い。
他方、図15のステップS14にて目標の被写界深度を比較的深くすると決定された場合は、第2の不等式:「THR4≦(QL2/QH2−QL1/QH1)≦THR3」が成立するかを判断する。そして、第2の不等式が成立しない場合は、その第2の不等式が成立するように絞り値を調整してからステップS31に戻り、上述のステップS31以降の処理を繰り返す。例えば、(QL2/QH2−QL1/QH1)>THR3、である場合は、絞り値を所定量増加させてから(実際の絞り32の開度を所定量減少させてから)ステップS31に戻る。一方、第2の不等式が成立する場合は、目標の被写界深度が達成されたとして図23の処理を終え、その後、第1実施例で述べた図15のステップS16以降の各処理を行う。尚、THR3及びTHR4は、THR3>THR4を満たす所定の正の閾値である。また、第2の不等式を「(QL2/QH2−QL1/QH1)≦THR3」に置換しても良い。
レンズ位置をL1としている状態(即ち、顔にピントを合わせている状態)において、背景がぼけているとき、背景AF評価領域内の画像に高域周波数成分は殆ど存在しなくなるため、低カットオフ周波数の背景AF評価値はある程度の大きさを有する一方で高カットオフ周波数の背景AF評価値は随分小さくなる。一方、背景にもピントが合っているとき、低カットオフ周波数でも高カットオフ周波数でも背景AF評価値はある程度の大きさを有する。つまり、上述の比によって、背景のぼけ具合を推定可能である。このため、上述のような処理によって、第1実施例と同様の作用をもたらす目標の被写界深度を達成することが可能となる。
<<第3実施例>>
次に、第3実施例について説明する。上述の第1及び第2実施例では、1つのフレーム画像から1つの顔が検出される場合を想定した。第3実施例では、1つのフレーム画像から複数の顔が検出された場合を想定する。第3実施例に係る絞り制御機能を実現する主要部位のブロック図は、図3のそれと同じである。
図25を参照して、第3実施例に係る絞り制御機能の実現動作を説明する。図25は、この動作の流れを表すフローチャートである。本実施例(図25)におけるステップS10、S11及びS16〜S18の各処理は、第1実施例(図15)におけるそれらと同様である。
まず、撮像装置1の撮影モードにおいて、ステップS10にて通常露出制御が行われる。ステップS10に続くステップS11では、図1のシャッタボタン26bが半押しされたか否かが判断される。シャッタボタン26bが半押しされていない時はステップS10に戻って通常露出制御が繰り返される。シャッタボタン26bが半押しされている場合は、ステップS41に移行して、顔検出部41が顔検出処理を行って、現在のフレーム画像内に複数の顔が存在しているかを判断する。
そして、フレーム画像内に顔が1つしか存在していないと判断された時、或いは、顔が全く存在していないと判断された時の動作は、第1又は第2実施例に係るそれと同様である。以下、フレーム画像内に複数の顔が存在している場合の動作について説明する。この場合、ステップS42にて、フレーム画像から複数の顔に対応する複数の顔領域を抽出する。今、図26に示す如く、フレーム画像内に6つの顔が存在している場合を想定する。そして、6つの顔に対応して、6つの顔領域501〜506が抽出されたとする。顔検出部41は、各顔に対応する顔検出情報(図11参照)を作成してCPU23に伝達する。
その後、ステップS43に移行し、CPU23は、6つの顔領域501〜506の中から1つの顔領域を選択する。選択された1つの顔領域を選択顔領域とも呼ぶ。この選択の手法例として、以下に第1〜第6選択手法を例示する。
まず第1選択手法を説明する。第1選択手法並びに後述する第2及び第3選択手法では、6つの顔領域501〜506の夫々に対して個別に、第1実施例で説明した被写界深度評価値(α)が算出される。個々の被写界深度評価値の算出法は、第1実施例で述べたものと同様である。そして、顔領域501〜506に対応する6つの被写界深度評価値の内、最大の被写界深度評価値を特定し、その最大の被写界深度評価値に対応する顔領域を選択顔領域とする。
一方、第2選択手法では、顔領域501〜506に対応する6つの被写界深度評価値の内、最小の被写界深度評価値を特定し、その最小の被写界深度評価値に対応する顔領域を選択顔領域とする。
また、第3選択手法では、顔領域501〜506に対応する6つの被写界深度評価値の内、中間の値を有する被写界深度評価値を特定し、その中間の値を有する被写界深度評価値に対応する顔領域を選択顔領域とする。尚、偶数個の顔領域が抽出された場合、中間の値を略中間の値と読み替えればよい。即ち、本実施例の如く6つの顔領域501〜506が抽出された場合、6つの被写界深度評価値の内、3番目又は4番目に大きい被写界深度評価値に対応する顔領域を選択顔領域とすればよい。
次に第4選択手法を説明する。第4選択手法並びに後述する第5及び第6選択手法では、まず、図19の曲線300を描くようなレンズ位置と顔AF評価値との関係を各顔領域に対して求めて、各顔に対する被写体距離を求める。
即ち、次々と得られる各フレーム画像に対して6つの顔領域501〜506に対応する6つの顔AF評価領域を設定し、レンズ位置を所定間隔で光軸方向に移動させながら、各顔AF評価領域に対する顔AF評価値を次々と求める。図27に、これによって得られる、レンズ位置と顔AF評価値との関係を表す曲線511〜516を示す。曲線511〜516は、夫々、顔領域501〜506に対応する該関係である。
今、顔領域501の顔AF評価値に最大値を与えるレンズ位置をL11とする。同様に、顔領域502、503、504、505、506の顔AF評価値に最大値を与えるレンズ位置を、夫々、L12、L13、L14、L15、L16とする。そして、L11、L12、L13、L14、L15、L16の順番で、レンズ位置が至近端から無限端側に遷移すると仮定する。つまり、6つの顔の内、顔領域501に対応する顔の被写体距離が最も短く、顔領域506に対応する顔の被写体距離が最も長いと仮定する。
第4選択手法並びに後述する第5及び第6選択手法では、レンズ位置L11、L12、L13、L14、L15及びL16にて特定される各顔の被写体距離に基づいて、選択顔領域を設定する。第4選択手法では、6つの顔の内、最も被写体距離が短い顔についての顔領域を選択顔領域とする。上記の仮定の下では、顔領域501が選択顔領域とされる。
一方、第5選択手法では、6つの顔の内、最も被写体距離が長い顔についての顔領域を選択顔領域とする。上記の仮定の下では、顔領域506が選択顔領域とされる。
また、第6選択手法では、6つの顔の内、被写体距離が中間となる顔についての顔領域を選択顔領域とする。尚、偶数個の顔領域が抽出された場合、中間を略中間と読み替えればよい。即ち、本実施例の如く6つの顔領域501〜506が抽出された場合、上記の仮定の下では、顔領域503又は504が選択顔領域とされる。
ステップS43にて1つの顔領域が選択された後、ステップS44に移行する。以下、顔領域501が選択顔領域とされた場合を想定する。ステップS44以降の動作は、基本的に第1実施例におけるそれと同様である。但し、絞り値の調整手法として、第2実施例に記載の手法を適用しても良い。
即ち、ステップS44では、選択された顔領域についての顔検出情報に基づいて、第1実施例と同様に被写界深度評価値(α)が算出され、その被写界深度評価値(α)に基づいて目標の被写界深度が設定される。尚、ステップS43の処理の段階にて被写界深度評価値が既に算出されている場合は、ステップS44にて改めてそれを算出する必要はない。
そして、続くステップS45において、第1実施例と同様、目標の被写界深度に基づいて設定されるべき目標の絞り値を算出し、その目標の絞り値に従った開度になるようにCPU23は図2の絞り32の開度を制御する。但し、上記の第4選択手法の説明で述べたように顔領域501〜506の各被写体距離を算出し、各被写体距離に基づいて6つの顔の全てが被写界深度内に収まるように絞り値を設定するようにする。この際、レンズ位置は、選択顔領域としての顔領域501に最適な位置(即ち、L11)とする。
この後、ステップS16に移行し、求められた絞り値に従った最適な露出制御を行い、シャッタボタン26bが全押しされたならば(ステップS17)、ステップ18にて静止画の撮影が行われる。この際、この静止画の露光を開始する前に、実際のレンズ位置がL11となり且つ実際の絞り値がステップS45で算出された絞り値となるように、CPU23によって、フォーカスレンズ31の位置及び絞り32の開度が制御される。また、この静止画の撮影時における露光時間及びAFE12における増幅度は、ステップS16での露出制御に従う。得られた静止画を表す画像データは、図1の圧縮処理部16を介してメモリカード18に格納される。
尚、撮影モードには、人物の撮影に適したポートレートモードと、風景の撮影に適した風景モードと、それらのどちらにも属さないオートモードと、が含まれている。図1の操作部26に対する操作によって、ポートレートモード、風景モード及びオートモードの何れのモードにて撮影を行うかを設定することができる。
一方、ステップS43において、第1又は第4選択手法を採用した場合、顔により着目したピント合わせが実行されることになり、第2又は第5選択手法を採用した場合、背景により着目したピント合わせが実行されることになる。従って例えば、ポートレートモードが設定されている場合は上述の第1又は第4選択手法を採用し、風景モードが設定されている場合は上述の第2又は第5選択手法を採用し、オートモードが設定されている場合は上述の第3又は第6選択手法を採用して選択顔領域を定めるようにするとよい。
<<第4実施例>>
ところで、上述の第1〜第3実施例は、撮像装置1の周辺照度が或る程度確保されており、絞り32を絞ったとしても所望の画像明るさが得られる状態を想定している。仮に、周辺照度が低く、絞り32を絞ると映像信号のS/N比(信号対雑音比)が悪くなりすぎると判断される場合は、第1〜第3実施例にて述べた処理を行わず、以下に述べる処理を行うことも可能である。この処理を説明する実施例として第4実施例を説明する。
図28は、第4実施例に係る上記処理を実現する主要部位のブロック図である。図28におけるCPU23、顔検出部41、AE評価部42及びAF評価部43は、第1実施例(図3)に係るそれらと同様のものである。NR処理部44は、図1の映像信号処理部13に含まれている。
NR処理部44は、AFE12の出力信号に基づくフレーム画像の映像信号に対してノイズ低減処理(以下、NR処理という)を施し、NR処理後の映像信号を出力する。NR処理として、具体的には例えば平滑化処理を行う。そして、NR処理部44は、CPU23の制御の下、NR処理として比較的ノイズ低減効果が小さい弱NR処理と比較的ノイズ低減効果が大きい強NR処理とを実行可能となっている。
弱NR処理の実行時には、例えば、画像のぼけが生じにくいように、エッジ保存フィルタ等の非線形フィルタを用いた平滑化処理を、指定された画像の映像信号に対して施す。
一方、強NR処理の実行時には、例えば、画像を積極的にぼかすべく、図29(a)に示すような移動平均フィルタや図29(b)に示すような加重平均フィルタを用いた平滑化処理を、指定された画像の映像信号に対して施す。図示の簡略化上、図29(a)及び(b)に示されたフィルタのサイズは3×3となっているが、強NR処理に用いるフィルタのサイズは、3×3以外であっても良い。
今、撮影モードにおいて、シャッタボタン26bが半押しされ且つ半押し後のフレーム画像から1つの顔領域が抽出されたとする。そうすると、第1実施例と同様、その顔領域についての顔検出情報が生成され、その顔検出情報に基づき被写界深度評価値αが算出されて目標の被写界深度が決定される(図15のステップS10〜S14参照)。そして、この場合において、周辺照度が低く、絞り32を絞ると映像信号のS/N比が悪くなりすぎると判断されたとする。
この場合、CPU23は、目標の被写界深度の如何に関わらず、絞り32が開放されるように(絞り32の開度が最大となるように)図2のドライバ34を制御する。その上で、図2の撮像素子33の露光時間及び図1のAFE12における増幅度を制御対象として、露出制御を行う。即ち、最新のフレーム画像のAE評価値(即ち、画像全体の輝度平均)が所定の明るさ目標値になるように、制御対象(露光時間及び増幅度)を制御する。
この場合において、α≧0が成立して目標の被写界深度を比較的浅くすると決定された場合は、NR処理部44にて背景ぼかし処理が行われるように、CPU23はNR処理部44を制御する。背景ぼかし処理とは、顔領域を含む弱NR対象領域内の画像に対して弱NR処理を施す一方でそれ以外の強NR対象領域の画像に対して強NR処理を施す画像処理である。他方、α<0が成立して目標の被写界深度を比較的深くすると決定された場合は、背景ぼかし処理は行われない(例えば、フレーム画像の全体領域に対して弱NR処理が施される)。
図30(a)を参照して、1つのフレーム画像600の全体領域を弱NR対象領域と強NR対象領域に領域分割する手法を説明する。フレーム画像600内において、符号601が付された矩形領域は抽出された顔領域である。今、顔領域601の顔における両目間の中心から口の中心に向かう方向を下方向と定義する。顔検出ができるならば、必然的に、顔検出部41内で該下方向を特定可能である。そうすると、フレーム画像600において、通常、顔領域601の下方向には人物の胴体や腕などが描画されるはずである。そこで、CPU23は、顔検出部41からの上記下方向を特定する情報を参照しつつ、フレーム画像600内における顔領域601の位置から人物の胴体等の描画領域を推定する。図30(a)において、符号602が付された矩形領域は、この推定された描画領域を表している。この描画領域602と顔領域601の合成領域を弱NR対象領域とし、フレーム画像600の全体領域から弱NR対象領域を除いた領域を強NR対象領域とする。
そして、NR処理部44は、上述の背景ぼかし処理を実現すべく、フレーム画像の弱NR対象領域内の各画素の映像信号に対して例えばエッジ保存フィルタを用いた平滑化処理を行い、且つ、フレーム画像の強NR対象領域内の各画素の映像信号に対して例えば移動平均フィルタを用いた平滑化処理を行う。そして、各平滑化処理後の映像信号を出力する。そうすると、背景の画像部分がぼかされ、結果的に、図17(a)に示されるような画像が得られることになる。シャッタボタン26bが全押しされた場合は各平滑化処理後の映像信号が、静止画撮影指示に従って取得されるべき静止画の画像データとして、図1の圧縮処理部16を介してメモリカード18に格納される。
本実施例によれば、低照度時でも、撮影者の意図に合致した演出効果を特別な操作無しに得ることが可能となる。
尚、背景ぼかし処理において、弱NR対象領域内の画像に対して平滑化処理等のノイズ低減処理を全く行わず、強NR対象領域内の画像に対してのみ平滑化処理等のノイズ低減処理を行うようにしてもよい。また、強NR処理は、画像をぼかすための画像処理(信号処理)であり、その画像処理を行う際におけるNR処理部44はぼかし処理部として機能する。
また、半押し後のフレーム画像から複数の顔領域が抽出された場合は、第3実施例に記載の手法が適用される。即ち、第3実施例と同様、複数の顔領域から1つの顔領域を選択し、選択した顔領域の顔検出情報に基づいて被写界深度評価値αを算出して目標の被写界深度を決定する。そして、背景ぼかし処理を行う場合は、フレーム画像の全体領域において、その複数の顔領域を含む領域を弱NR対象領域とし、それ以外の領域を強NR対象対象領域とすればよい。この場合でも、各顔領域に対応する各人物の胴体等の描画領域も弱NR対象領域に含めると良い。
<<変形等>>
上述した説明文中に示した具体的な数値は、単なる例示であって、当然の如く、それらを様々な数値に変更することができる。上述の実施形態の変形例または注釈事項として、以下に、注釈1〜注釈2を記す。各注釈に記載した内容は、矛盾なき限り、任意に組み合わせることが可能である。
[注釈1]
図1の撮像装置1は、ハードウェア、或いは、ハードウェアとソフトウェアの組み合わせによって実現可能である。特に、図3又は図28に示される各部位の機能は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせによって実現可能である。ソフトウェアを用いて撮像装置1を構成する場合、ソフトウェアにて実現される部位についてのブロック図は、その部位の機能ブロック図を表すことになる。図3又は図28に示される各部位にて実現される機能の全部または一部を、プログラムとして記述し、該プログラムをプログラム実行装置(例えばコンピュータ)上で実行することによって、その機能の全部または一部を実現するようにしてもよい。
[注釈2]
例えば、図3に示される各部位によって絞り制御装置が形成される。この絞り制御装置に、図2のドライバ34が含まれていると考えても構わない。また例えば、図28に示される各部位によって画像処理装置が形成される。