(57)【特許請求の範囲】
【請求項１】
被写体の輝度を測定するための測光センサと、
前記測光センサで測定された被写体の輝度から、前記被写体を撮像するための露出量を算出する露出量算出手段と、
前記露出量算出手段により算出された露出量を基準にした露出低下量を算出する露出低下量算出手段と、
撮像素子を用い、前記露出量算出手段により算出された露出量よりも前記露出低下量分低い露出量で撮像を行う撮像手段と、
前記撮像手段が撮像した画像に対し、前記露出低下量を補うための第一の階調補正と、前記露出低下量を補った後の画像の輝度を補正するための第二の階調補正とを適用する補正手段とを有し、
前記露出低下量算出手段は、前記露出量算出手段により算出された露出量で撮像した場合に必要となる階調補正量を、前記測光センサで測定された被写体の輝度に基づいて算出し、該階調補正量と、予め定められた最大階調補正量と、の差分を最大露出低下量として、前記露出低下量を決定することを特徴とする撮像装置。
【請求項２】
前記露出低下量算出手段は、前記露出量算出手段により算出された露出量で撮像した場合に必要となる階調補正量を、前記測光センサが撮像した画像の輝度のヒストグラムを補正するための第一の階調補正量と、前記測光センサが撮像した画像で検出された顔の輝度を目標輝度値にするための第二の階調補正量とから算出することを特徴とする請求項１記載の撮像装置。
【請求項３】
前記露出低下量算出手段は、前記露出量算出手段により算出された露出量で撮像した場合に必要となる階調補正量を、前記第一の階調補正量と前記第二の階調補正量を重み付け平均して算出し、前記第二の階調補正量の重みが、前記測光センサが撮像した画像で検出された顔の信頼度が高いほど大きく、低いほど小さいことを特徴とする請求項２記載の撮像装置。
【請求項４】
前記補正手段は、前記第二の階調補正を、前記撮像素子で撮像された画像で検出された顔の輝度を目標輝度値にするための階調補正量と、前記測光センサで撮像された画像で検出された顔の輝度を目標輝度値にするための階調補正量とを、それぞれの顔の信頼度に応じた重みにより重み付け平均して得られる階調補正量で行い、
前記重みが、前記顔の信頼度が高いほど大きく、低いほど小さく、
前記測光センサで撮像された画像で検出された顔の輝度を目標輝度値にするための階調補正量に対する重みの最大値が、前記撮像素子で撮像された画像で検出された顔の輝度を目標輝度値にするための階調補正量に対する重みの最大値より小さいことを特徴とする請求項２又は請求項３記載の撮像装置。
【請求項５】
前記撮像装置がＥＶＦ表示機能を有し、
前記露出量算出手段及び前記露出低下量算出手段は、前記ＥＶＦ表示機能を実現するために前記撮像素子によって連続的に撮像されている画像を利用可能である場合には、前記測光センサで測定された被写体の輝度の代わりに、該画像から得られる被写体の輝度に基づいて階調補正量を算出することを特徴とする請求項１乃至請求項４のいずれか１項に記載の撮像装置。
【請求項６】
前記測光センサは、前記撮像素子よりも画素数の少ない撮像素子であることを特徴とする請求項１乃至請求項５のいずれか１項に記載の撮像装置。
【請求項７】
被写体の輝度を測定するための測光センサを有する撮像装置の制御方法であって、
露出量算出手段が、前記測光センサで測定された被写体の輝度から、前記被写体を撮像するための露出量を算出する露出量算出工程と、
露出低下量算出手段が、前記露出量算出工程で算出された露出量を基準にした露出低下量を算出する露出低下量算出工程と、
撮像手段が、前記撮像装置が有する撮像素子を用い、前記露出量算出工程で算出された露出量よりも前記露出低下量分低い露出量で撮像を行う撮像工程と、
補正手段が、前記撮像工程で撮像された画像に対し、前記露出低下量を補うための第一の階調補正と、前記露出低下量を補った後の画像の輝度を補正するための第二の階調補正とを適用する補正工程とを有し、
前記露出低下量算出工程で前記露出低下量算出手段は、前記露出量算出工程で算出された露出量で撮像した場合に必要となる階調補正量を、前記測光センサで測定された被写体の輝度に基づいて算出し、該階調補正量と、予め定められた最大階調補正量と、の差分を最大露出低下量として、前記露出低下量を決定することを特徴とする撮像装置の制御方法。
【請求項８】
被写体の輝度を測定するための測光センサを有する撮像装置が有するコンピュータに、前記撮像装置の制御方法であって、
前記測光センサで測定された被写体の輝度から、前記被写体を撮像するための露出量を算出する露出量算出工程と、
前記露出量算出工程で算出された露出量を基準にした露出低下量を算出する露出低下量算出工程と、
前記撮像装置が有する撮像素子を用い、前記露出量算出工程で算出された露出量よりも前記露出低下量分低い露出量で撮像を行う撮像工程と、
前記撮像工程で撮像された画像に対し、前記露出低下量を補うための第一の階調補正と、前記露出低下量を補った後の画像の輝度を補正するための第二の階調補正とを適用する補正工程とを有し、
前記露出低下量算出工程では、前記露出量算出工程で算出された露出量で撮像した場合に必要となる階調補正量を、前記測光センサで測定された被写体の輝度に基づいて算出し、該階調補正量と、予め定められた最大階調補正量と、の差分を最大露出低下量として、前記露出低下量を決定することを特徴とする制御方法、
を実行させるためのプログラム。
【請求項９】
請求項８記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は撮像装置及びその制御方法に関する。
【背景技術】
【０００２】
デジタルカメラなどで撮像した画像の輝度ヒストグラムや、顔情報などの被写体情報を解析し、好ましい明るさやコントラストの画像となるように階調補正を行うことが知られている。
【０００３】
例えば、背景が主被写体より著しく明るい、いわゆる逆光シーンは、撮像画像における主被写体の部分が暗くなりやすい。これは、背景の輝度値が飽和して階調性がなくなってしまう現象（白トビと呼ぶ）が発生しないような露出条件で撮像されると、主被写体については露出不足となるからである。このような撮像画像に対しては、主被写体部分の輝度を上げる階調補正が有効である。
【０００４】
代表的な階調補正の方法として特許文献１には、例えば入力輝度値と出力輝度値との関係を定めた補正テーブル（トーンカーブ）を用いて輝度値を変更する方法が記載されている。特許文献１には、逆光シーンで撮像された画像に対し、背景での白トビを抑制しながら主被写体部分の明るさを上昇させるような補正テーブルを用いて階調補正することが提案されている。
【０００５】
また、シーン全体の輝度に基づいて決定された撮像条件によって撮像された画像では、逆光シーンの背景に白トビした領域が発生してしまう場合がある。白トビしている領域からは本来の輝度情報を得ることができないため、階調補正の効果が十分得られない。そのため、露出アンダーとなる条件で撮像することで背景に有効な輝度情報を残しておき、その後階調補正することで背景の輝度が適切となるように補正する方法も知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１２４６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
階調補正は通常の（撮像装置が適正露出の得られる条件として設定した）撮像条件で撮像された画像に対しても、上述のように敢えて露出アンダーとなる撮像条件で撮像された画像に対しても適用可能である。しかし、暗い部分の輝度を上げる階調補正は、輝度値の増幅に相当するため、元の画像に含まれるノイズ成分も増加することになるため、露出アンダーとなる撮像条件で撮像された画像を階調補正する場合、補正後のノイズが目立ちやすいという問題がある。
【０００８】
本発明は、このような従来技術の課題に鑑みてなされたもので、階調補正の効果とノイズ量の増加とが適切にバランスした階調補正を実現する撮像装置及びその制御方法の提供を目的とする。
【課題を解決するための手段】
【０００９】
上述の目的は、被写体の輝度を測定するための測光センサと、測光センサで測定された被写体の輝度から、被写体を撮像するための露出量を算出する露出量算出手段と、露出量算出手段により算出された露出量を基準にした露出低下量を算出する露出低下量算出手段と、撮像素子を用い、露出量算出手段により算出された露出量よりも露出低下量分低い露出量で撮像を行う撮像手段と、撮像手段が撮像した画像に対し、露出低下量を補うための第一の階調補正と、露出低下量を補った後の画像の輝度を補正するための第二の階調補正とを適用する補正手段とを有し、露出低下量算出手段は、露出量算出手段により算出された露出量で撮像した場合に必要となる階調補正量を、測光センサで測定された被写体の輝度に基づいて算出し、階調補正量と、予め定められた最大階調補正量と、の差分を最大露出低下量として、露出低下量を決定することを特徴とする撮像装置によって達成される。
【発明の効果】
【００１０】
このような構成により、本発明によれば、階調補正の効果とノイズ量の増加とが適切にバランスした階調補正を実現することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る撮像装置の一例としてのデジタルカメラの機能ブロック図
【図２】図１の露出制御部の処理を説明するためのフローチャート
【図３】露出量算出部のＳ２０６における処理を説明するフローチャート
【図４】図１の補正制御部の処理を示すフローチャート
【図５】本発明の実施形態における顔輝度取得領域の例を示す図
【図６】本発明の実施形態における顔輝度代表値の算出処理の例を示すフローチャート
【図７】補正量算出部における顔補正特性の作成動作の例を説明するための図
【図８】顔が検出されなかった場合の、補正量算出部の動作の例を説明する図
【図９】測光画像及び撮像画像の顔検出結果による顔信頼度と、補正値（Ｃ）及び補正値（Ｂ）の重みの関係例を示す図
【図１０】適正露出量から低下させた露出量を補償する補正量の例を示す図
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して、本発明の例示的な実施形態について詳細に説明する。
図１は、本発明の実施形態に係る撮像装置の一例としてのデジタルカメラの機能ブロック図である。
【００１３】
不図示の撮像レンズを通過した被写体光学像は、測光センサ１０１上に結像する。測光センサ１０１は複数に分割された測光領域を有し、各測光領域の被写体輝度を測光する。測光センサは、画素数が少ないことを除き、表示や記録のための画像を撮像する撮像素子１０６（後述）と同じ構成を有する光電変換素子であってよい。この場合、各測光領域には複数の画素が含まれてよく、測光領域に含まれる画素の例えば平均輝度値を測光領域の輝度値として求めることができる。このように、測光センサが輝度測定のために撮像した画像を、本明細書では測光画像と呼ぶ。
【００１４】
例えばＣＰＵ１００ａによってソフトウェア的に実現される露出制御部１０２は、測光センサ１０１による各測光領域の被写体輝度から露出量を算出する。露出制御部１０２は、第１ヒストグラム検出部１０３、第１顔検出部１０４、及び露出量算出部１０５を有する。なお、ＣＰＵ１００ａがこれら各部の機能を実現するためのプログラムは不図示のメモリに予め記憶されていても、外部から供給されるものであってもよい。
【００１５】
図２は露出制御部１０２の処理を説明するためのフローチャートである。
Ｓ２０１で、露出量算出部１０５は、測光センサ１０１の出力する、各測光領域の被写体輝度を重み付け平均して撮像画面全体の輝度を算出し、全体輝度に基づく露出量を算出する。この露出量が所謂「通常の露出量」又は「適正露出量」に相当する。
【００１６】
Ｓ２０２で、第１ヒストグラム検出部１０３は、各測光領域の輝度値から撮像画面内の輝度分布を示すヒストグラムを検出する。ここでのヒストグラム検出は、後述するＳ４０２と同様に行うことが望ましいが、処理の簡略化のためにホワイトバランスゲインの算出、適用や、ガンマ処理を省いてもよい。第１ヒストグラム検出部１０３は、検出したヒストグラムを露出量算出部１０５に出力する。
【００１７】
Ｓ２０３は、第１顔検出部１０４が、顔検出前処理を行う。これは、各測光領域の輝度値からなる画像データに対してガンマ処理等を施して、顔を容易に検出しやすいようにする処理である。ただし、上述の通り、測光センサ１０１は撮像素子１０６よりも画素数が少ないので、縮小処理は不要であろう。
【００１８】
Ｓ２０４で第１顔検出部１０４は、前処理した画像データに対し、公知の方法を用いて顔検出処理を実行する。顔検出処理により、顔と思われる領域（顔領域）と、検出の信頼度（顔領域の顔らしさの指標）とが得られる。第１顔検出部１０４は、顔検出処理の結果を露出量算出部１０５及び補正量算出部１１３に出力する。
【００１９】
Ｓ２０４において顔が検出された場合、Ｓ２０５で露出量算出部１０５は、顔領域の輝度（例えば平均輝度や後述する顔輝度取得領域の輝度）が予め定められた目標値よりも低いかどうか判別する。顔領域の輝度が目標値より低い場合、露出量算出部１０５は、顔領域が目標輝度値となるように、Ｓ２０１で算出した露出量を補正する。また、露出量算出部１０５は、顔領域の輝度を補正量算出部１１３に出力する。
Ｓ２０６で、露出量算出部１０５は、階調補正を適用した後のノイズ量を考慮して、最大露出低下量を算出する。
【００２０】
図３は、露出量算出部１０５のＳ２０６における処理を説明するフローチャートである。
Ｓ３０１で露出量算出部１０５は、Ｓ２０２で検出されたヒストグラムの形状を適切に補正する（ヒストグラム特徴量に基づく輝度補正を行うための）第一の階調補正量を算出する。これは後述のＳ４１１〜Ｓ４１３と同様に行うことができる。
【００２１】
Ｓ３０２で露出量算出部１０５は、測光画像で顔が検出されているか確認し、検出されていればＳ３０３に、検出されていなければＳ３０４に処理を進める。なお、第１顔検出部１０４は、顔領域とその信頼度とを出力するだけであり、顔が検出されたかどうかの判断は行わない。そのため、露出量算出部１０５は、予め実験的に定めた値以上の信頼度が得られていれば、顔が検出されているとみなす。本明細書において顔の検出有無の判定は特に他の説明がない限り、このような信頼度の判定に基づいている。
【００２２】
Ｓ３０３で露出量算出部１０５は、顔領域の明るさを適切に補正するための、第二の階調補正量を算出する。これは後述の、Ｓ４０６〜Ｓ４１０及びＳ４１３と同様の方法を用いることができる。ただし、処理の簡略化を目的として、あるいは測光センサーの画素数が少ないことにより、顔領域全体の平均輝度値を取得し、平均輝度値が予め定めた目標輝度値となるような補正量を算出しても良い。
【００２３】
Ｓ３０４で露出量算出部１０５は、第一の階調補正量と、第二の階調補正量の重み付け平均を算出し、第三の階調補正量とする。ここで、第二の階調補正量の重みは、顔検出結果の信頼度が高いほど大きく、信頼度が低いほど小さくしたり、顔領域が大きいほど大きく、顔領域が小さいほど小さくするなど、一定でなくてもよい。なお、測光画像で顔が検出されておらず、第二の階調補正量が算出されていない場合、第二の階調補正量の重みはゼロとなる（すなわち、第一の階調補正量が第三の階調補正量となる）。
【００２４】
ここで、顔検出されていても第一の階調補正量を反映させるのは、測光画像での顔検出が誤る可能性や、測光画像と撮像画像の撮像タイミングのずれにより、測光画像でのみ顔が検出される可能性があるためである。
【００２５】
Ｓ３０５で露出量算出部１０５は、許容可能な最大露出低下量を算出する。例えば、階調補正後のノイズ量が許容可能な階調補正量の最大値を予め保持しておき、この最大値と第三の階調補正量の差分を、最大露出低下量として算出することができる。
【００２６】
例えば、適正露出で撮像した場合に顔領域の輝度が不足する場合に、階調補正後のノイズ量が許容可能な最大階調補正量（許容最大補正量）に等しい露出量を低下させて撮像したとする。この場合、撮像画像に対して許容最大補正量の階調補正を適用しても、顔領域の輝度は適正露出で撮像した状況に戻るだけで、輝度は不足したままである。さらに顔領域の輝度を上げるためには、ノイズ許容範囲を超える階調補正が必要となる。
【００２７】
これに対し、本実施形態では、測光画像から得られる全体の輝度情報及び顔の輝度情報を用いて、適正露出で撮像した場合でも必要となる階調補正量を求め、許容最大補正量の範囲内で確保して最大露出低下量を決定する。そのため、撮像画像に対して露出低下量を補償するための階調補正を適用して適正露出相当の画像とした後で、さらに全体の明るさ及び顔の輝度を調整するための階調補正を行っても、階調補正量の総計は許容最大補正量を超えることがない。
【００２８】
なお、露出低下量として何通りかのルックアップテーブルをシステムで定めておき、それを例えば「強」、「標準」、「弱」などの形でユーザーに識別可能なように提示し、それを選択させるように構成しても良い。
【００２９】
また、撮像感度が高いほど階調補正前の画像データに含まれるノイズ量が多くなるので、撮像感度が高いほど最大露出低下量が小さくなるように設定することが望ましい。具体的には、撮像感度が高いほど最大露出低下量が小さくなるルックアップテーブルや算出式を用意しておき、露出量算出部１０５は撮像感度に応じて補正量を決定する。
【００３０】
図２に戻り、Ｓ２０７で露出量算出部１０５は、各測光領域の被写体輝度値とＳ２０１で算出した露出量とを比較することにより、算出された露出量で撮像した場合に白トビが発生する領域があるか否かを判定する。また、露出量算出部１０５は、白トビが発生すると判定された領域については、発生する白トビの度合いも判定する。
【００３１】
そして、露出量算出部１０５は、白トビが発生する領域があると判定された場合、白トビを抑制するために必要な露出低下量を算出する。この低下量は、例えば、白トビの度合いと露出低下量との関係を規定したルックアップテーブルや算出式を予め用意しておくことで、白トビの度合いから求めることができる。複数の領域で白トビが発生すると判定された場合、最も高い白トビの度合や白トビの度合いの平均値に基づいて露出低下量を求めるなど、予め定めた方法を用いて露出低下量を求めることができる。
【００３２】
Ｓ２０８で露出低下量算出手段としての露出量算出部１０５は、Ｓ２０６で算出した許容可能な最大露出低下量と、Ｓ２０７で算出した白トビを抑制するために必要な露出低下量のうち小さい方を、最終的な露出低下量とする。
【００３３】
露出量算出部１０５は、適正露出量よりも露出低下量分低い露出量（例えばＥＶ値）に基づいて、撮像素子１０６を用いた撮像条件、すなわち電荷蓄積時間（シャッタ速度）と絞り値を規定のプログラム線図から決定する。なお、シャッタ速度または絞り値の一方が予め設定されている場合、露出量算出部１０５は、その設定値との組み合わせで露出量を実現するように他方の値を決定し、露出条件を設定する。
【００３４】
例えば上述の露出条件の設定は、図示しないシャッターボタンの半押しのような撮像準備指示に応答して行われる。そして、シャッターボタンが半押し状態から全押し状態になって撮像開始指示が与えられると、設定された撮像条件によって、撮像が行われる。すなわち、不図示の撮像レンズを通過した被写体光学像によって撮像素子１０６が露光され、撮像素子の各画素で、受光量に応じた電荷に変換される。撮像素子は例えばＲ（赤）、Ｇ（緑）、Ｂ（青）の領域が配列されたカラーフィルタを備える。各色領域はそれぞれの色の波長帯域周辺の分光感度を持ち、各領域に対応して設けられた画素（光電変換素子）は、各カラーフィルタを通過した帯域の光線をそれぞれ光電変換する。
【００３５】
各光電変換素子により変換された電荷は、撮像素子１０６から電気信号としてＡ／Ｄ変換部１０７に出力され、Ａ／Ｄ変換処理によりデジタル信号（画像データ）に変換される。Ａ／Ｄ変換部１０７から出力されたデジタル信号は、補正制御部１０８、ホワイトバランス（ＷＢ）処理部１０９のそれぞれに送られる。
【００３６】
例えばＣＰＵ１００ｂによってソフトウェア的に実現される補正制御部１０８は、撮像された画像データに適用する階調補正量を算出し、現像処理部１１４に出力する。補正制御部１０８は、ＷＢ検出部１１０、第二のヒストグラム検出部１１１、第二の顔検出部１１２、補正量算出部１１３を有する。なお、ＣＰＵ１００ｂがこれら各部の機能を実現するためのプログラムは不図示のメモリに予め記憶されていても、外部から供給されるものであってもよい。また、ＣＰＵ１００ａとＣＰＵ１００ｂは同一のＣＰＵであってもよい。
【００３７】
図４は補正制御部１０８の処理を示すフローチャートである。
Ｓ４０１では、ＷＢ検出部１１０がＷＢ検出を行う。具体的には、ＷＢ検出部１１０は、画像データから、公知の手法を用いて、撮像画像に適したホワイトバランスのゲイン値を算出する。ＷＢ処理部１０９ではＷＢ検出部１１０で得られたホワイトバランスのゲイン値を画像のＲＧＢの各画素値に積算する。
【００３８】
Ｓ４０２では、ヒストグラム検出部１１１がヒストグラム検出を行う。具体的には、ヒストグラム検出部１１１が、Ｓ４０１で得られたホワイトバランスのゲイン値を画像データ全体に適用し、さらにガンマ補正処理を行った画素値について、輝度情報としてヒストグラムを作成する。ガンマ補正処理は公知のルックアップテーブルを用いる方法で良いが、現像処理部１１４で用いるものと同じガンマ特性を用いることが好ましい。ただし、処理時間やメモリ量の節約のために、折れ線で近似したガンマ特性など、簡略化したガンマ特性を用いてもよい。なお、画像の端の部分は、一般に重要でないことが多く、また撮像レンズによっては周辺光量の低下の影響を受ける部分であるため、周縁部の画素を除いてヒストグラムを作成してもよい。
【００３９】
Ｓ４０３では、顔検出部１１２が顔検出前処理を行う。これは画像データに対して縮小処理、ガンマ処理等を施して、顔を容易に検出しやすいようにする処理である。
【００４０】
Ｓ４０４で、顔検出部１１２は、前処理した画像データに対し、公知の方法を用いて顔検出処理を実行する。顔検出処理により、顔を思われる領域（顔領域）と、検出の信頼度とが得られる。
【００４１】
Ｓ４０５で、補正量算出部１１３は、適正露出量から低下させた露出量を補償する補正量（補正量（Ａ）とよぶ）を算出する。具体的には、露出の低下量に対する、暗部（たとえば６４ＬＳＢ）と明部（たとえば２００ＬＳＢ）の補正量のテーブルを用意しておき、この２点の補正量を求める。そして、入力輝度を横軸、出力輝度を縦軸とした直交座標系における輝度の最低値（０ＬＳＢ）、６４ＬＳＢ、２００ＬＳＢ、最高値（２５５ＬＳＢ）の座標をスプライン補間する。これにより、０〜２５５ＬＳＢの入力輝度に対して補正量（Ａ）を適用した出力輝度を示す階調補正特性を得ることができる。この際、補正量算出部１１３は、画像の暗部については適正露出になるようにする一方、予め定めた輝度レベル以上の高輝度画素については補正されない（少なくとも、露出補正量を完全には補わない）ような入出力特性の階調補正量を算出する。これにより、階調補正後の明部が白トビすることをさらに抑制することができる。この階調補正量は、露出補正量に応じた複数の補正テーブルとして予め用意しておくことができる。
【００４２】
図１０に、補正量（Ａ）の例を示す。図１０において、ａは、適正露出で撮像されたのと同じ状態に補正するための階調補正特性を示す。一方、ｂは、本実施形態で補正量算出部１１３が算出する階調補正特性の例を示す。このように、輝度レベルの低い部分については適正露出相当に階調補正するが、輝度レベルの高い部分（この例では輝度レベル１９２を超える部分）については、階調補正が行われない。
【００４３】
Ｓ４０６で、顔検出部１１２は、Ｓ４０４の顔検出処理により検出された顔領域のうち、信頼度が予め設定した評価閾値より高い信頼度がある場合に、顔が検出されたと判定する。顔が検出されたと判定された場合にはＳ４０７に、顔が検出されなかったと判定された場合にはＳ４１１に移行する。
【００４４】
Ｓ４０７で、顔検出部１１２は、検出された顔領域の一部の領域を、顔輝度取得領域として算出する。たとえば、顔検出部１１２は、図５に示すように、画像データ５０１から検出された顔領域５０２の中の両眼の下の領域５０３，５０５及び、その中間の領域５０４の３箇所に位置する同じ大きさの正方形の領域を、顔輝度取得領域として算出する。個々の領域の大きさは、顔領域の大きさによって決定する。顔輝度取得領域は、顔の明るい部分の輝度を取得するための領域であり、その数や位置などに関して特に制限はない。
【００４５】
Ｓ４０８で、顔検出部１１２は、顔輝度取得領域５０３〜５０５の各々について、含まれるＲ画素、Ｇ画素、Ｂ画素の種類ごとに平均値を求める。さらに顔検出部１１２はＲＧＢ画素の各平均値に対し、ヒストグラム検出部１１１と同様にしてホワイトバランスのゲイン値を適用し、ガンマ補正を行った後、以下の式１により輝度値Ｙに変換する。
Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂ    式１
なお、式１の代わりに式２のような近似式を用いても良い。
Ｙ＝（３×Ｒ＋６×Ｇ＋Ｂ）／１０        式２
【００４６】
なお、ヒストグラム検出部１１１および顔検出部１１２において適用するホワイトバランスのゲイン値は、同一画像データに対してＷＢ検出部１１０が求めたゲイン値を用いることが好ましい。輝度ガンマも、理想的には現像処理部１１４と同じものを用いるのが好ましいが、処理時間やメモリ量の節約のために、折れ線で近似したガンマ特性など、簡略化したガンマ特性を用いてもよい。
【００４７】
Ｓ４０９で、顔検出部１１２は、Ｓ４０８で顔輝度取得領域５０３〜５０５の各々について求めた輝度値を、適正露出時を想定した値に変換する。これは、画像データが、適正露出よりも低い露出で撮像されていることから、適正露出で撮像した場合よりも顔の輝度が低く検出されることを補正する処理である。輝度値の変換は、Ｓ４０５で算出した補正量Ａを用いて行えばよい。
【００４８】
Ｓ４１０で、輝度算出手段としての顔検出部１１２は、検出された顔の代表輝度値を算出する。この処理の一例を図６のフローチャートを用いて説明する。
【００４９】
Ｓ６０１で、顔検出部１１２は、検出されている顔領域の顔輝度取得領域５０３〜５０５の輝度値の中から最大値を求める。なお、顔領域が複数検出されていれば、顔検出部１１２は個々の顔領域について最大値を求める。
【００５０】
Ｓ６０２で、顔検出部１１２は、顔領域が複数検出されているか判定し、複数検出されている場合はＳ６０３に処理を進める。検出されている顔領域が１つだけの場合、顔検出部１１２は、この顔領域についてＳ６０２で求めた輝度値の最大値を顔の代表輝度値とする（Ｓ６０８）。
【００５１】
Ｓ６０３で、顔検出部１１２は、検出されている全ての顔領域における輝度値の最大値Ｙａを求める。
Ｓ６０４で、顔検出部１１２は、Ｓ６０１で求めた各顔領域の輝度の最大値の平均値Ｙｂを求める。
【００５２】
Ｓ６０５で、顔検出部１１２は、顔領域で検出された最大輝度値Ｙａと顔領域で検出された平均輝度値Ｙｂに対して所定の重みをかけた重み平均輝度値Ｙｃを求める。
すなわち、Ｙｃ＝（α×Ｙａ＋β×Ｙｂ）
として求めることができる。ここで、α、βは所定の重みで、α＋β＝１である。
なお、重みの値は、一番明るい顔をどの程度重視するかに応じて経験的にαを定めることで決定することができる。一例として、α＝０．７、β＝０．３である。
【００５３】
Ｓ６０６で、顔検出部１１２は、顔領域の最大輝度値Ｙａと重み平均輝度値Ｙｃの差が、所定の閾値Ｙｔｈより小さいかどうかの判定を行う。
【００５４】
顔検出部１１２は、この差が閾値より小さい場合は重み平均輝度値Ｙｃを顔の代表輝度値とし（Ｓ６０７）、差が閾値以上である場合には最大輝度値Ｙａから閾値Ｙｔｈを引いた値を顔の代表輝度値とする（Ｓ６０８）。これは、差が閾値Ｙｔｈ以上ある場合に、重み平均輝度値Ｙｃを代表輝度値とすると、最大輝度値Ｙａに対応する顔領域が階調補正によって白トビする可能性が高くなると考えられるためである。従って、閾値Ｙｔｈにはこのような判定を行うために適切な値を経験的に定める。
【００５５】
図４に戻り、Ｓ４０６で顔領域が検出されなかったと判定された場合、Ｓ４１１でヒストグラム検出部１１１が、ヒストグラム特徴量を検出する。ヒストグラム特徴量は例えば、ヒストグラムで暗部側から累積度数が１０％である画素が属するレベル（ＳＤ）等であってよい。
【００５６】
Ｓ４１２でヒストグラム検出部１１１は、Ｓ４１１で算出したＳＤなどのヒストグラム特徴量を、適正露光時を想定した値に変換する。これは露出制御部で白トビ判定を行った結果、適正露出よりも露光量を下げて撮像された場合に、適正露出時に比べてヒストグラムの特徴量が低く検出されることを補償する処理に相当する。この特徴量の変換は、Ｓ４０５で算出した補正量（Ａ）に従って行えば良い。
【００５７】
Ｓ４１３で、補正量算出部１１３は、補正量を算出する。補正量算出部１１３は、顔が検出されている場合、顔の代表輝度値毎に、いくつかの入力輝度値に対する目標輝度を求め、目標輝度と画像の輝度の最小値と最大値からスプライン補間などにより各入力輝度に対する目標出力輝度を算出する。入力輝度と目標出力輝度の差が目標補正量であり、各輝度に対する目標出力輝度により形成されるトーンカーブが階調補正特性を表す。階調補正特性は、入力輝度と出力輝度の対応を示すルックアップテーブルによって表現することができる。
【００５８】
図７を参照して補正量算出部１１３の顔補正特性の作成動作の例を説明する。図７（ａ）は、顔の代表輝度値と、３つの入力輝度値（６４ＬＳＢ，１２８ＬＳＢ，２２４ＬＳＢ）に対する目標輝度との関係の例を示す。なお、ＬＳＢは分解能を意味し、本実施形態では輝度値のフルスケール（最小値〜最大値）を８ビットの分解能（０〜２５５ＬＳＢ）で表すものとする。
【００５９】
図７（ａ）において、「６４ＬＳＢの点」に対応する横方向の線は、入力輝度が６４ＬＳＢの画素の目標出力輝度と、顔の代表輝度値との関係を示している。例えば、撮像された画像から検出された顔の代表輝度値が２５５ＬＳＢ〜１８０ＬＳＢの範囲であれば、その画像のうち６４ＬＳＢの輝度を有する画素の目標出力輝度は６４ＬＳＢ（すなわち、変化無し）である。また、顔の代表輝度値が４５ＬＳＢ〜０ＬＳＢの範囲の画像においては、６４ＬＳＢの輝度を有する画素の目標出力輝度は１２８ＬＳＢである。そして、顔の代表輝度値が１８０〜４５の範囲では、６４ＬＳＢの輝度を有する画素の目標出力輝度は６４ＬＳＢから１２８ＬＳＢの間で線形に変化する。
【００６０】
顔の代表輝度値が１１０ＬＳＢである場合、６４ＬＳＢ、１２８ＬＳＢおよび２２４ＬＳＢの輝度を有する画素の目標出力輝度はそれぞれ図７（ａ）から９７ＬＳＢ，１５９ＬＳＢおよび２２８ＬＳＢである。従って、顔の代表輝度値が１１０ＬＳＢの画像に対する階調補正特性は、この３点の入出力関係を表す３点と輝度の最低値（０ＬＳＢ）および最高値（２５５ＬＳＢ）に対応する点とをスプライン補間することにより、図７（ｂ）の様に得られる。なお、図７（ａ）に示す、顔の代表輝度値に応じた代表的な輝度値の入出力関係を示す補正テーブルは、「弱め」、「標準」、「強め」など、設定可能な度合いごとに、予め補正量算出部１１３に用意しておくことができる。
【００６１】
また、顔が検出されなかった画像に対する階調補正特性の算出方法について図８を用いて説明する。図８は、図７（ａ）の階調補正特性における入力値を、顔の代表輝度から、ヒストグラムで暗部側から累積度数が１０％である画素が属するレベル（ＳＤ）の検出値に置き換えたものである。この階調補正特性を用い、顔が検出できたと判定した場合と同様に補正量を算出することができる。なお、この補正テーブルも、「弱め」、「標準」、「強め」など、設定可能な度合いごとに、予め補正量算出部１１３に用意しておくことができる。この補正量を便宜上、補正量（Ｂ）とする。
【００６２】
Ｓ４１４で補正量算出部１１３は、測光画像において、顔があると判定したかどうかの判定を行い、顔があったと判定された場合は、Ｓ４１５に移行し、顔がなかったと判定された場合はＳ４１７に移行する。
【００６３】
Ｓ４１５で、測光画像で検出した顔の輝度値に対する補正量を算出する。これは、図７（ａ）に示す、撮像画像から検出した顔の輝度値に対する補正量と同じテーブルでよい。この補正量を便宜上、補正量（Ｃ）とする。
【００６４】
Ｓ４１６で補正量算出部１１３は、補正量（Ｂ）と、補正量（Ｃ）の重み付け平均を算出する。具体的には、０〜２５５ＬＳＢの各入力輝度値に対して、補正量（Ｂ）と、補正量（Ｃ）の重み付け平均を算出すればよい。この重みの決め方は、各顔検出結果（信頼度、顔の大きさなど）によって適宜変更する。図９は、測光画像及び撮像画像の顔検出結果による顔信頼度と、補正値（Ｃ）の重み（Ｔｒｕｓｔ１）及び補正値（Ｂ）の重み（Ｔｒｕｓｔ２）との関係例を示す図である。このように、それぞれの画像における顔検出結果の顔信頼度に応じて、式３によって補正量（Ｂ）と補正量（Ｃ）の重みを算出する。
補正量（Ｂ）：補正量（Ｃ）＝  Ｔｒｕｓｔ２  ：  Ｔｒｕｓｔ１  （式３）
【００６５】
また、簡易的には重みを２：１などの固定値としてもよい。このようにして算出された、補正量（Ｂ）と補正量（Ｃ）の重み付け平均値を補正量（Ｄ）とする。
測光画像における顔検出の精度は、以下のような理由により、撮像画像における顔検出の精度よりも低いと考えられる。測光センサ１０１は撮像素子１０６よりも画素数が少ない。また、測光画像の撮像が開放絞りで行われる場合には被写界深度が低く、合焦距離にない顔の検出がしづらい。測光センサ１０１の撮像範囲（視野）が撮像素子１０６よりも狭い場合には周縁部に位置する顔を検出できない。
【００６６】
そのため、撮像画像に基づく補正量（Ｂ）の重みと、測光画像に基づく補正量（Ｃ）の重みとは、いずれも顔の信頼度が高いほど大きい値となる点で共通するが、以下のように重みを定める。
・撮像画像における顔の信頼度が、上述した点を考慮しても測光画像における顔の信頼度より低い場合と考えられる場合を除き、撮像画像に基づく補正量（Ｂ）の重みが測光画像に基づく補正量（Ｃ）の重みよりも大きくなるようにする。なお、測光画像における顔検出の信頼度と、測光画像における顔検出の信頼度とが同じ値であっても、その信頼度が表す「顔らしさ」の程度は、撮像画像の方が高く判断されうることに留意されたい。つまり、測光画像における顔検出の信頼度と、測光画像における顔検出の信頼度とが同じ値であっても、補正量（Ｃ）の重みより補正量（Ｂ）の重みが大きくなる場合がある。
・測光画像に基づく補正量（Ｃ）の重みは、１００％よりも小さい値に制限される。これは、撮像画像での検出結果を優先すべきことによる。図９に示す例では、測光画像に基づく補正量（Ｃ）の重みＴｒｕｓｔ１の最大値は５０％（０．５）、撮像画像に基づく補正量（Ｂ）の重みＴｒｕｓｔ２の最大値が１００％（１．０）である。
【００６７】
Ｓ４１７で補正量算出部１１３は、測光画像において顔が検出されたと判定された場合には、補正量（Ａ）と補正量（Ｄ）を、顔が検出なかったと判定された場合には、補正量（Ａ）と補正量（Ｂ）を合成する。具体的には、０〜２５５ＬＳＢの各入力輝度値に対して、補正量（Ａ）の補正を行った出力値を、さらに補正量（Ｄ）または補正量（Ｂ）の入力値として補正した値を算出すれば良い。
【００６８】
Ｓ４１８で補正量算出部１１３は、Ｓ４１７で求めた合成補正量の上限値を制限する処理（リミッター処理）を行う。補正量（Ａ）と、補正量（Ｂ）（又は補正量（Ｄ））を合成することで補正量が大きくなり、補正後の画像においてノイズ量が目立ちやすくなるため、全体の補正量に制限を設けている。リミッター処理は、各輝度値において許容する最大の補正量をテーブルとして用意しておき、最大補正量を超える場合には最大補正量に対応する出力レベルに置換することで実現できる。なお、最大補正量を規定するテーブルをＩＳＯ感度に応じて複数用意しておき、撮像時のＩＳＯ感度に対応するものを用いてリミッター処理を行うこともできる。
【００６９】
補正量算出部１１３は、このようにして作成した階調補正用のルックアップテーブル（あるいは補正特性を表す関数など、他の形式であってもよい）を、現像処理部１１４に供給する。
【００７０】
図１のＷＢ処理部１０９ではＷＢ検出部１１０で得られたホワイトバランスのゲイン値を画像データのＲＧＢの各画素値に積算する。
現像処理部１１４は、画像データをＲＧＢ形式からＹＵＶ形式に変換し、輝度成分（Ｙ）に対して、補正制御部１０８（補正量算出部１１３）から供給されたルックアップテーブルを用いた輝度補正（階調補正）を行う。また、現像処理部１１４は、色成分（ＵおよびＶ）に対し、輝度補正に応じた色調整処理を行う。色調整処理において現像処理部１１４は、補正処理後の画像データの色が補正処理前からできるだけ変化しないように、色成分を輝度成分の補正量にしたがって修正する。例えば、現像処理部１１４は、色成分（ＵおよびＶ）に、それぞれ輝度成分の変更後の値／変更前の値の比を乗算することにより、色調整処理を行う。
【００７１】
画像データ出力部１１５では、上述のように画像処理が行われた画像データをファイル化して出力する。例えば、ファイル形式をＪＰＥＧファイルに変換する場合には、画像データをＹＣｒＣｂ形式に３次元マトリックス変換して付属データを添付することでＪＰＥＧファイル形式に変換する。ＲＡＷ形式で記録する場合、画像データ出力部１１５は、ＲＡＷ画像データを含んだ画像ファイルを生成する。ＲＡＷ画像データを含んだ画像ファイルのヘッダにサムネイル用のＪＰＥＧ形式の画像を含めてもよい。画像データ出力部１１５は、画像ファイルをメモリカードのような記録媒体に記録したり、外部装置に出力したりすることができる。
【００７２】
以上説明したように、本実施形態によれば、測光画像から得られる全体の輝度情報及び顔の輝度情報を用いて、適正露出で撮像した場合でも必要となる階調補正量を求め、許容最大補正量の範囲内で確保して最大露出低下量を決定する。そのため、適正露出量より低い露出量での撮像した撮像画像に露出低下量を補償するための階調補正を適用して適正露出相当の画像とした後、全体の明るさ及び顔の輝度を調整するための階調補正を行っても、階調補正量の総計は許容最大補正量を超えることがない。そのため、白トビの抑制と、階調補正によるノイズ量の増加抑制とを両立させることが可能となる。
【００７３】
（他の実施形態）
上述の実施形態では、測光画像において検出された顔の信頼度が一定値（図９の例ではＴｈ１）を超えれば、測光画像で検出された顔に基づく補正値（Ｃ）の重みが０より大きくなり、補正値（Ｄ）に反映されるものであった。しかし、露出条件の設定に用いられた顔と、補正値（Ｂ）の算出に用いられた顔とが同一である可能性が高い場合には、測光画像において検出された顔の信頼度に関わらず、補正値（Ｂ）そのまま補正値（Ｄ）としてもよい。
【００７４】
例えば、撮像装置がＥＶＦ表示機能（ライブビュー機能などとも呼ばれる）を有する場合が考えられる。この場合、ＥＶＦ表示を行うために撮像素子によって連続的に画像が撮像される。そのため、補正量算出部１１３が露出量算出部１０５と同様の処理（露出低下量及び露出条件の決定）をＥＶＦ表示用の画像を用いて行うことができる。この場合、露出条件の設定に用いられた顔と、補正値（Ｂ）の算出に用いられた顔とが同一である可能性が高い。従って、ＥＶＦ表示用の画像を用いて露出低下量及び露出条件を決定した場合には、補正値（Ｂ）を補正値（Ｄ）としてもよい。
【００７５】
同様に、ＥＶＦ表示用の画像が利用可能な場合には、ＥＶＦ表示用の画像から、撮像画像に必要な階調補正量とほぼ等しいと考えられる階調補正量が算出できる。従って、測光画像の情報を用いることなく、必要な階調補正量と許容最大露出低下量のうち小さい方を露出低下量として決定することができる。
【００７６】
一方、例えばＴＴＬ光学ファインダーを用いる場合など、ＥＶＦ表示用の画像が利用できない状態で撮像した場合には、上述の通り、撮像準備動作において撮像条件を決定する際に測光画像の情報を用いて露出低下量を決定するように構成することができる。一般的な一眼レフカメラにおいては、ＥＶＦ表示機能を持たないか、光学ファインダーとＥＶＦ表示機能の併用はできない。そのため、光学ファインダーを用いている場合には撮像素子での撮像が行えない。従って、測光センサで得られる測光画像を利用した露出低下量の決定が特に有効である。
【００７７】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005782311.tif 000002
【図２】
0005782311.tif 000003
【図３】
0005782311.tif 000004
【図４】
0005782311.tif 000005
【図５】
0005782311.tif 000006
【図６】
0005782311.tif 000007
【図７】
0005782311.tif 000008
【図８】
0005782311.tif 000009
【図９】
0005782311.tif 000010
【図１０】
0005782311.tif 000011