(57)【要約】【課題】  顔検出の結果に応じて、より安定したホワイトバランス（ＷＢ）補正を行えるようにすること。【解決手段】  被写体を撮像して得られた画像信号を処理する画像処理装置であって、画像信号にＷＢ補正を行うＷＢ補正手段（１０３、１１５）と、画像信号の内、白色と判定された画像信号に基づいて、ＷＢ補正に用いる第１のＷＢ補正値を算出する第１の算出手段（１０３、１１５）と、画像信号から顔領域を検出する顔検出部（１１４）と、複数の顔領域が検出された場合に、各顔領域毎に、第１のＷＢ補正値によりＷＢ補正した後に各顔領域に含まれる画像信号の平均色評価値を予め設定された色評価値にする第２のＷＢ補正値を算出する第２の算出手段（１０３、１１５）と、算出された第２のＷＢ補正値を、各顔領域の信頼度に応じて合成し、当該合成した第２のＷＢ補正値を第１のＷＢ補正値と更に合成する合成手段（１０３、１１５）とを有する。【選択図】  図１
2008167280.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像して得られた画像信号を処理する画像処理装置であって、
前記画像信号にホワイトバランス補正を行うホワイトバランス補正手段と、
前記画像信号の内、白色と判定された画像信号に基づいて、前記ホワイトバランス補正に用いる第１のホワイトバランス補正値を算出する第１の算出手段と、
前記画像信号から顔領域を検出する顔検出手段と、
前記顔検出手段により複数の顔領域が検出された場合に、該検出された各顔領域毎に、前記第１のホワイトバランス補正値によりホワイトバランス補正した後に前記各顔領域に含まれる画像信号の平均色評価値を予め設定された色評価値にする第２のホワイトバランス補正値を算出する第２の算出手段と、
前記各顔領域毎に算出された前記第２のホワイトバランス補正値を、前記各顔領域の信頼度に応じて合成し、当該合成した第２のホワイトバランス補正値を前記第１のホワイトバランス補正値と更に合成する合成手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記合成手段は、前記信頼度に応じて、前記各顔領域の第２のホワイトバランス補正値の使用率を決定し、前記第２のホワイトバランス補正値を加重平均することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記顔検出手段により検出された各顔領域について、前記第２のホワイトバランス補正値を算出するかどうかを、予め設定された条件に基づいて判断する判断手段を更に有し、
前記第２の算出手段は、前記判断手段により算出すると判断された顔領域について、前記第２のホワイトバランス補正値を算出することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記予め設定された条件は、前記顔領域の信頼度が予め設定されたレベルよりも低い場合、前記顔領域の輝度が予め設定された輝度範囲よりも高いまたは低い場合、前記顔領域の画像信号を前記第１のホワイトバランス補正値で補正した結果、補正した画像信号の色相角が予め設定された色相角の範囲内にあった場合の少なくともいずれかを含み、前記判断手段は、いずれかの条件が満たされた場合に、前記顔領域の第２のホワイトバランス補正値を算出しないと判断することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記顔検出手段により検出された複数の顔領域のうち、主被写体の顔領域を決定する決定手段を更に有し、
前記合成手段は、前記主被写体の顔領域の第２のホワイトバランス補正値の使用率を、他の顔領域よりも高くすることを特徴とする請求項２に記載の画像処理装置。
【請求項６】
前記合成手段は、前記主被写体以外の顔領域の第２のホワイトバランス補正値を使用しないことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記合成手段は、前記各顔領域の画像信号を前記第１のホワイトバランス補正値で補正して得られた平均色評価値が、予め設定された色評価値から離れるに従って、前記顔領域の第２のホワイトバランス補正値の使用率を下げることを特徴とする請求項２に記載の画像処理装置。
【請求項８】
前記顔検出手段により検出された複数の顔領域のうち、主被写体の顔領域を決定する決定手段を更に有し、
前記合成手段は、撮影時にフラッシュが発光されている場合に、前記主被写体の顔領域の第２のホワイトバランス補正値の使用率を、他の顔領域よりも高くすることを特徴とする請求項２に記載の画像処理装置。
【請求項９】
前記顔検出手段により検出された複数の顔領域のうち、主被写体の顔領域を決定する決定手段を更に有し、
前記判断手段が前記主被写体の顔領域の第２のホワイトバランス補正値を算出すると判断した場合に、前記第２の算出手段は、前記主被写体の顔領域の第２のホワイトバランス補正値を算出し、前記合成手段は、当該第２のホワイトバランス補正値と前記第１のホワイトバランス補正値とを合成することを特徴とする請求項３または４に記載の画像処理装置。
【請求項１０】
前記第２の算出手段は、更に、前記主被写体の顔領域の信頼度がそれ以外の顔領域の信頼度よりも予め設定されたレベル以上高い場合に、前記主被写体の顔領域の第２のホワイトバランス補正値を算出し、前記合成手段は、当該第２のホワイトバランス補正値と前記第１のホワイトバランス補正値とを合成することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記信頼度は、画像全体において、各顔領域が占める割合であることを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
請求項１乃至１１のいずれか１項に記載の画像処理装置を有することを特徴とする撮像装置。
【請求項１３】
被写体を撮像して得られた画像信号を処理する画像処理方法であって、
前記画像信号の内、白色と判定された画像信号に基づいて、ホワイトバランス補正に用いる第１のホワイトバランス補正値を算出する第１の算出ステップと、
前記画像信号から顔領域を検出する顔検出ステップと、
前記顔検出ステップで複数の顔領域が検出された場合に、該検出された各顔領域毎に、前記第１のホワイトバランス補正値によりホワイトバランス補正した後に前記各顔領域に含まれる画像信号の平均色評価値を予め設定された色評価値にする第２のホワイトバランス補正値を算出する第２の算出ステップと、
前記各顔領域毎に算出された前記第２のホワイトバランス補正値を、前記各顔領域の信頼度に応じて合成し、当該合成した第２のホワイトバランス補正値を前記第１のホワイトバランス補正値と更に合成する合成ステップと、
前記合成ステップで合成されたホワイトバランス補正値を用いて前記画像信号にホワイトバランス補正を行うホワイトバランス補正ステップと
を有することを特徴とする画像処理方法。
【請求項１４】
前記合成ステップでは、前記信頼度に応じて、前記各顔領域の第２のホワイトバランス補正値の使用率を決定し、前記第２のホワイトバランス補正値を加重平均することを特徴とする請求項１３に記載の画像処理方法。
【請求項１５】
前記顔検出ステップで検出された各顔領域について、前記第２のホワイトバランス補正値を算出するかどうかを、予め設定された条件に基づいて判断する判断ステップを更に有し、
前記第２の算出ステップでは、前記判断ステップで算出すると判断された顔領域について、前記第２のホワイトバランス補正値を算出することを特徴とする請求項１３または１４に記載の画像処理方法。
【請求項１６】
前記予め設定された条件は、前記顔領域の信頼度が予め設定されたレベルよりも低い場合、前記顔領域の輝度が予め設定された輝度範囲よりも高いまたは低い場合、前記顔領域の画像信号を前記第１のホワイトバランス補正値で補正した結果、補正した画像信号の色相角が予め設定された色相角の範囲内にあった場合の少なくともいずれかを含み、前記判断ステップでは、いずれかの条件が満たされた場合に、前記顔領域の第２のホワイトバランス補正値を算出しないと判断することを特徴とする請求項１５に記載の画像処理方法。
【請求項１７】
前記顔検出ステップで検出された複数の顔領域のうち、主被写体の顔領域を決定する決定ステップを更に有し、
前記合成ステップでは、前記主被写体の顔領域の第２のホワイトバランス補正値の使用率を、他の顔領域よりも高くすることを特徴とする請求項１４に記載の画像処理方法。
【請求項１８】
前記合成ステップでは、前記主被写体以外の顔領域の第２のホワイトバランス補正値を使用しないことを特徴とする請求項１７に記載の画像処理方法。
【請求項１９】
前記合成ステップでは、前記各顔領域の画像信号を前記第１のホワイトバランス補正値で補正して得られた平均色評価値が、予め設定された色評価値から離れるに従って、前記顔領域の第２のホワイトバランス補正値の使用率を下げることを特徴とする請求項１４に記載の画像処理方法。
【請求項２０】
前記顔検出ステップで検出された複数の顔領域のうち、主被写体の顔領域を決定する決定ステップを更に有し、
前記合成ステップでは、撮影時にフラッシュが発光されている場合に、前記主被写体の顔領域の第２のホワイトバランス補正値の使用率を、他の顔領域よりも高くすることを特徴とする請求項１４に記載の画像処理方法。
【請求項２１】
前記顔検出ステップで検出された複数の顔領域のうち、主被写体の顔領域を決定する決定ステップを更に有し、
前記判断ステップで前記主被写体の顔領域の第２のホワイトバランス補正値を算出すると判断した場合に、前記第２の算出ステップでは、前記主被写体の顔領域の第２のホワイトバランス補正値を算出し、前記合成ステップは、当該第２のホワイトバランス補正値と前記第１のホワイトバランス補正値とを合成することを特徴とする請求項１５または１６に記載の画像処理方法。
【請求項２２】
前記第２の算出ステップでは、更に、前記主被写体の顔領域の信頼度がそれ以外の顔領域の信頼度よりも予め設定されたレベル以上高い場合に、前記主被写体の顔領域の第２のホワイトバランス補正値を算出し、前記合成ステップでは、当該第２のホワイトバランス補正値と前記第１のホワイトバランス補正値とを合成することを特徴とする請求項２１に記載の画像処理方法。
【請求項２３】
前記信頼度は、画像全体において、各顔領域が占める割合であることを特徴とする請求項１３乃至２２のいずれか１項に記載の画像処理方法。
【請求項２４】
コンピュータに、請求項１３乃至２３のいずれか１項に記載の画像処理方法の各工程を実行させるためのプログラム。
【請求項２５】
請求項２４に記載のプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置及び方法、及び撮像装置に関し、更に詳しくは、顔検出結果を用いて画像処理を行う画像処理装置及び方法、及び撮像装置に関する。
【背景技術】
【０００２】
デジタルカメラ等に用いられている従来のホワイトバランスゲイン算出回路の動作を説明する。まず図１４に示すように、予め画面を任意の複数のブロック（ｍ個）に分割し、各ブロック（１〜ｍ）毎に、画素値を各色毎に加算平均して色平均値（R[i]、G[i]、B[i]）を算出する。そして、例えば以下の式（１）を用いて色評価値（Cx[i]、Cy[i]）を算出する。
Cx[i] = (R[i] - B[i]) / Y[i] × 1024
Cy[i] = (R[i] + B[i]) - 2G[i]/ Y[i] × 1024      …（１）
ただし、Y[i] = R[i] + 2G[i] + B[i]、[i]は各ブロックのインデックス番号
【０００３】
そして、予め様々な光源下で白色被写体を撮影し、色評価値を算出することで設定された図１５に示すような白検出範囲３０１に、各ブロック毎に算出された色評価値が含まれる場合、そのブロックは白であると判定する。そして、同様にして白と判定されたブロックの画素値を積分する。白検出範囲３０１は、予め異なる光源下で白を撮影し、算出した色評価値をプロットしたもので、図１５におけるｘ座標（Ｃｘ）の負方向が高色温度被写体の白を撮影したときの色評価値、正方向が低色温度被写体の白を撮影したときの色評価値である。またｙ座標（Ｃｙ）は光源の緑成分の度合いを意味しており、負方向になるにつれＧ成分が大きくなり、つまり光源が蛍光灯であることを示している。
【０００４】
そして、積分された画素値（sumR、sumG、sumB）より、以下の式（２）を用いてホワイトバランス係数（WBCo_R、WBCo_G、WBCo_B）を算出する。
WBCo_R = sumY × 1024 / sumR
WBCo_G = sumY × 1024 / sumG      …（２）
WBCo_B = sumY × 1024 / sumB
ただし、sumY = (sumR + 2 × sumG + sumB) / 4
【０００５】
しかしながら、従来のホワイトバランスゲイン算出方法では、以下のような問題があった。図１７のように被写体として人の顔が大きく写っている場合、太陽光下で撮影した人肌領域の色評価値（図１５の９０１）と、タングステン光下で撮影した白色被写体の色評価値（図１５の９０２）がほぼ同じ値となる。そのため、人肌をタングステン光下の白と誤判別し、肌色を白く補正してしまう場合があった。
【０００６】
そこで、特許文献１では、顔検出回路にて検出された顔領域を、白検出の対象から外す（図１６を参照）という提案がされている。
【０００７】
【特許文献１】特開２００３−１８９３２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来のホワイトバランスゲイン算出方法においては、顔検出回路において顔を誤認識した場合や検出できなかった場合の対策が考慮されていない。そのため顔検出回路において顔ではない領域を顔と誤検出した場合に、白検出対象領域が少なくなり、結果として出力される色温度情報の精度が低くなることがあった。また、顔であるにも関わらず顔と認識されない場合には、顔領域で白検出を実施してしまい、結果としてホワイトバランス補正精度が低くなることがあった。
【０００９】
また、図１７のように、顔がアップで撮影された場合、顔領域を白検出対象から除外すると、白検出を実施する被写体領域がほとんどなくなってしまい、結果としてホワイトバランス補正精度が低くなってしまっていた。
【００１０】
また、図１８に示すように顔が複数検出された場合における最適なホワイトバランス補正処理の対策がなされていなかった。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、被写体を撮像して得られた画像信号を処理する本発明の画像処理装置は、前記画像信号にホワイトバランス補正を行うホワイトバランス補正手段と、前記画像信号の内、白色と判定された画像信号に基づいて、前記ホワイトバランス補正に用いる第１のホワイトバランス補正値を算出する第１の算出手段と、前記画像信号から顔領域を検出する顔検出手段と、前記顔検出手段により複数の顔領域が検出された場合に、該検出された各顔領域毎に、前記第１のホワイトバランス補正値によりホワイトバランス補正した後に前記各顔領域に含まれる画像信号の平均色評価値を予め設定された色評価値にする第２のホワイトバランス補正値を算出する第２の算出手段と、前記各顔領域毎に算出された前記第２のホワイトバランス補正値を、前記各顔領域の信頼度に応じて合成し、当該合成した第２のホワイトバランス補正値を前記第１のホワイトバランス補正値と更に合成する合成手段とを有する。
【００１２】
また、本発明の撮像装置は、上記画像処理装置を有する。
【００１３】
また、被写体を撮像して得られた画像信号を処理する本発明の画像処理方法は、前記画像信号の内、白色と判定された画像信号に基づいて、ホワイトバランス補正に用いる第１のホワイトバランス補正値を算出する第１の算出ステップと、前記画像信号から顔領域を検出する顔検出ステップと、前記顔検出ステップで複数の顔領域が検出された場合に、該検出された各顔領域毎に、前記第１のホワイトバランス補正値によりホワイトバランス補正した後に前記各顔領域に含まれる画像信号の平均色評価値を予め設定された色評価値にする第２のホワイトバランス補正値を算出する第２の算出ステップと、前記各顔領域毎に算出された前記第２のホワイトバランス補正値を、前記各顔領域の信頼度に応じて合成し、当該合成した第２のホワイトバランス補正値を前記第１のホワイトバランス補正値と更に合成する合成ステップと、前記合成ステップで合成されたホワイトバランス補正値を用いて前記画像信号にホワイトバランス補正を行うホワイトバランス補正ステップとを有する。
【発明の効果】
【００１４】
本発明によれば、顔検出の結果に応じて、より安定したホワイトバランス補正を行うことができる。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。
【００１６】
＜第１の実施形態＞
図１は、画像処理装置の一例として、本発明の第１の実施形態における顔検出機能を備えた撮像装置の機能構成を示す概略ブロック図である。
【００１７】
図１において、１０１はＣＣＤやＣＭＯＳ等から成る固体撮像素子であり、その表面は、例えばベイヤー配列のＲＧＢカラーフィルタにより覆われ、カラー撮影が可能な構成となっている。１０２はメモリで、撮像素子１０１から得られた画像信号を一旦記憶する。
【００１８】
１１４は顔検出部であり、メモリ１０２に記憶された画像信号から、顔領域を検出する。なお、顔領域を検出する技術としては様々な手法が提案されており、顔の位置およびサイズ情報を取得できればどのような手法を用いてもよく、本願発明は、顔検出の手法により制限されるものではない。例えば、ニュートラルネットワークに代表される学習を用いた方法や、目や鼻と言った物理的形状に特徴のある部位を画像領域からテンプレートマッチングで抽出する手法が知られている。他にも、肌の色や目の形といった画像特徴量を検出し、統計的手法を用いて解析する手法が挙げられる（例えば、特開平１０−２３２９３４号公報、特開２０００−４８１８４号公報を参照）。他に、現在製品として提案されているものとしては、ウェーブレット変換と画像特徴量を利用して顔検出する方法等や、テンプレートマッチング等を組み合わせた方法などがある。
【００１９】
ここで、顔検出の手法として、パターン認識の一つであるテンプレートマッチングについて説明する。パターン認識とは、観測されたパターンをあらかじめ定められた概念（クラス）の一つに対応させる処理である。図２は、パターン認識処理のフローチャートであり、顔検出部１１４によって実行される。
【００２０】
先ず、メモリ１０２から画像データを読み出して前処理し（ステップＳ１）、前処理された画像データから特徴的部分のパターンを抽出する（ステップＳ２）。そして、抽出されたパターンをテンプレート（標準パターン）に対応させる（テンプレートマッチング）。例えば、図３に示すように特徴的部分のパターン６３が抽出された場合、テンプレート６１の中心点６２を取得したパターン６３のある座標点（ｉ，ｊ）に置く。そして、中心点６２のパターン６３における位置をずらしながら、テンプレート６１とパターン６３との重なり部分の類似度を計算して行き、類似度が最大になる位置を決定する。パターン６３を例えば目や耳等の形状を含むテンプレート６１にマッチングさせることにより、目の位置情報や顔領域（顔座標）を取得することができる。
【００２１】
このようにして、認識パターンを取得して（ステップＳ３）、取得した認識パターンを出力し（ステップＳ４）、パターン認識処理を終了する。
【００２２】
図１の説明に戻る。ＣＰＵ１１５では、顔検出部１１４から送られた信号に基づいて、顔が検出されていれば、顔が最適な明るさになるようなシャッタースピードＴｖ、絞り値Ａｖを計算し、また顔に合焦するようにフォーカスレンズ駆動量を計算する。一方、顔が検出されていなければ、ＣＰＵ１１５は画像全体が最適な明るさになるようなシャッタースピードＴｖ、絞り値Ａｖを計算すると共に、予め設定された合焦領域内にある被写体に合焦するようなフォーカスレンズ駆動量を計算する。ＣＰＵ１１５で計算された露出値（Ｔｖ、Ａｖ）及びフォーカスレンズ駆動量は制御回路１１３に送られ、各値に基づいて不図示のレンズや絞り、シャッター、撮像素子１０１がそれぞれ制御される。
【００２３】
１０３はホワイトバランス（ＷＢ）制御部であり、メモリ１０２に記憶された画像信号及び顔検出部１１４から得られる顔情報に基づいてＷＢ補正値を算出し、算出したＷＢ補正値を用いて、メモリ１０２に記憶された画像信号に対してＷＢ補正を行う。なお、このＷＢ制御部１０３で用いられるＷＢ補正値の算出方法については、詳細に後述する。
【００２４】
１０４は、ＷＢ制御部１０３によりＷＢ補正された画像信号が最適な色で再現されるように色ゲインをかけて色差信号Ｒ−Ｙ、Ｂ−Ｙに変換する色変換マトリックス（ＭＴＸ）回路である。１０５は色差信号Ｒ−Ｙ、Ｂ−Ｙの帯域を制限するローパスフィルタ（ＬＰＦ）回路、１０６はＬＰＦ回路１０５で帯域制限された画像信号の内、飽和部分の偽色信号を抑圧するＣＳＵＰ（Chroma Supress）回路である。
【００２５】
一方、ＷＢ制御部１０３によりＷＢ補正された画像信号は輝度信号（Ｙ）生成回路１１１にも出力されて輝度信号Ｙが生成され、生成された輝度信号Ｙに対してエッジ強調回路１１２にてエッジ強調処理が施される。
【００２６】
ＣＳＵＰ回路１０６から出力される色差信号Ｒ−Ｙ、Ｂ−Ｙと、エッジ強調回路１１２から出力される輝度信号Ｙは、ＲＧＢ変換回路１０７にてＲＧＢ信号に変換され、ガンマ補正回路１０８にて階調補正が施される。その後、色輝度変換回路１０９にてＹＵＶ信号に変換され、更に圧縮回路１１０にて例えばＪＰＥＧ圧縮されて、外部記録媒体または内部記録媒体に画像信号として記録される。
【００２７】
次に、本実施の形態におけるＷＢ補正値の算出方法について図４を参照して説明する。なお、ここで行われるＷＢ補正値の算出は、ＣＰＵ１１５が行うように構成しても、ＷＢ制御部１０３が行うように構成しても、更には、ＷＢ補正値算出用の専用の構成を追加するようにしても、何れでも構わない。
【００２８】
先ず、ステップＳ１１において、メモリ１０２に記憶された画像信号から白画素の検出を行って第１のＷＢ補正値を算出する。ここで、第１のＷＢ補正値の算出方法について、図５を参照して詳しく説明する。
【００２９】
まず、メモリ１０２に記憶された画像信号を読み出し、その画面を図１４のような任意のm個のブロックに分割する（ステップＳ１０１）。そして、各ブロック（１〜ｍ）毎に、画素値を各色毎に加算平均して色平均値（R[i]、G[i]、B[i]）を算出し、式（１）を用いて色評価値（Cx[i]、Cy[i]）を算出する（ステップＳ１０２）。
Cx[i] = (R[i] - B[i]) / Y[i] × 1024
Cy[i] = (R[i] + B[i]) - 2G[i]/ Y[i] × 1024      …（１）
ただし、Y[i] = R[i] + 2G[i] + B[i]、[i]は各ブロックのインデックス番号
【００３０】
次に、ステップＳ１０２で算出したｉ番目のブロックの色評価値（Cx[i]、Cy[i]）が、図１５に示す予め設定した白検出範囲３０１に含まれるかどうかを判断する（ステップＳ１０３）。白検出範囲３０１は、予め異なる光源下で白を撮影し、算出した色評価値をプロットしたものである。図１５におけるｘ座標（Ｃｘ）の負方向が高色温度被写体の白を撮影したときの色評価値、正方向が低色温度被写体の白を撮影したときの色評価値である。またｙ座標（Ｃｙ）は光源の緑成分の度合いを意味しており、負方向になるにつれＧ成分が大きくなり、つまり光源が蛍光灯であることを示している。
【００３１】
算出した色評価値（Cx[i]、Cy[i]）がこの白検出範囲３０１に含まれる場合には（ステップＳ１０３でＹＥＳ）そのブロックが白色であると判断する。そして、そのブロックの色平均値（R[i]、G[i]、B[i]）を積算していき（ステップＳ１０４）、含まれない場合には加算せずにステップＳ１０５に進む。このステップＳ１０３及びステップＳ１０４の処理は、式（３）により表すことができる。
【００３２】
2008167280.tif 000003
【００３３】
ここで、式（３）において、色評価値（Cx[i]、Cy[i]）が白検出範囲３０１に含まれる場合はSw[i]を１に、含まれない場合にはSw[i]を０とする。このようにして、ステップＳ１０３の判断により色平均値（R[i]、G[i]、B[i]）の加算を行うか、行わないかの処理を実質的に行っている。
ステップＳ１０５では、全てのブロックについて上記処理を行ったかどうかを判断し、未処理のブロックがあればステップＳ１０２に戻って上記処理を繰り返し、全てのブロックの処理が終了していればステップＳ１０６に進む。
【００３４】
ステップＳ１０６では、得られた色評価値の積分値（sumR、sumG、sumB）から、以下の式（４）を用いて、第１のＷＢ補正値（WBCo1_R、WBCo1_Ｇ、WBCo1_Ｂ）を算出する。
WBCo1_R = sumY × 1024 / sumR
WBCo1_G = sumY × 1024 / sumG      …（４）
WBCo1_B = sumY × 1024 / sumB
ただし、sumY = (sumR + 2 × sumG + sumB) / 4
【００３５】
上述したようにして第１のＷＢ補正値を算出すると、図４のステップＳ１２において、メモリ１０２に記憶された画像信号を用いて、例えば図２及び図３を参照して上述した方法により顔検出部１１４により顔検出を行う。なお、ステップＳ１１とステップＳ１２の処理は平行して行っても、逆の順番で行っても構わない。そして、ステップＳ１３において顔が検出されたかどうかを判断する。顔が検出されていなければ、ステップＳ１１で算出した第１のＷＢ補正値をＷＢ制御部１０３でＷＢ処理に使用するＷＢ補正値と決定して（ステップＳ２０）、処理を終了する。
【００３６】
顔が検出されていれば、検出された顔の信頼度の判定を行う（ステップＳ１４）。この時、複数の顔が検出されていれば、検出された全ての顔についてそれぞれ信頼度が所定レベルよりも高いかどうかを判定する。検出された全ての顔の信頼度が所定レベルよりも低い場合（例えば、顔の面積が小さい場合など）には、ステップＳ１１で算出した第１のＷＢ補正値をＷＢ制御部１０３でＷＢ処理に使用するＷＢ補正値と決定して（ステップＳ２０）、処理を終了する。
【００３７】
一方、信頼度が所定レベルよりも高い顔がある場合には、その顔の顔領域を図１４に示すようなブロックに分割し、画素値をＲ、Ｇ、Ｂの各色毎に加算平均して、顔領域の色平均値を算出する（ステップＳ１５）。例えば、図６に示すように５つの顔（顔１〜顔５）が検出された場合、検出された５つの顔の内、顔１の信頼度が所定レベルよりも低いので、ステップＳ１５では、顔２〜顔５の色平均値を算出し、顔１の色平均値は算出しない。または、顔１の色平均値を算出しても良いが、後段の処理には使用しない。
【００３８】
次に、算出した色平均値から、信頼度が所定レベルよりも高い各顔領域の輝度値を求め、後述する肌色色相角を判別することが可能な輝度範囲内に入っているかの判定を行う（ステップＳ１６）。これは人種によって肌の色相が異なることに起因するためで、顔領域の輝度値が低い黒人や輝度値が高い白人のような場合は色相角の判別が困難であるからである。また、顔に濃い影が写っていたり、強い光の照射を受けて白く写っている場合など、色相角の判別が難しい場合にも、肌色色相角を判別する対象から外すことができる。算出された顔領域の輝度値が全て所定輝度範囲内に無い場合には、ステップＳ１１で算出した第１のＷＢ補正値をＷＢ制御部１０３でＷＢ処理に使用するＷＢ補正値と決定して（ステップＳ２０）、処理を終了する。
【００３９】
いずれかの顔領域の輝度値が所定輝度範囲内にある場合、その顔領域の色相角が肌色色相角範囲に入っているか否かの判断を行う（ステップＳ１７）。図６に示す例では、輝度値を求めた顔領域（顔１〜顔４）の内、顔３が所定輝度範囲外であったため、顔２、顔４、顔５について判断を行う。ステップＳ１５では、まず、顔検出処理時に算出した顔領域の色平均値をステップＳ１１で算出した第１のＷＢ補正値により補正し、補正色平均値を算出する。そして、算出された補正色平均値から、式（５）により顔領域の色差値（R-Y、B-Y）を算出する。
R-Y = R - Y
B-Y = B - Y      …（５）
ただし、Y = 0.3×R + 0.59×G + 0.11×B
【００４０】
次に、式（５）により算出した顔領域色差値（R-Y、B-Y）から、式（６）により色相角値（Hue）を算出する（ステップＳ１１４）。
【００４１】
2008167280.tif 000004
【００４２】
そして、上述したようにして得られた各顔領域の色相角値が全て、所定の肌色を示す図７のような色相角範囲７１内に入っているかどうかを判定する（ステップＳ１７）。
【００４３】
この判断でＹＥＳの場合、第１のＷＢ補正値は適切であるので、ステップＳ１１で算出した第１のＷＢ補正値をＷＢ制御部１０３でＷＢ処理に使用するＷＢ補正値と決定して（ステップＳ２０）、処理を終了する。
【００４４】
一方、顔領域の色相角値が肌色色相角範囲７１内に無い顔領域がある場合、第１のＷＢ補正値を用いて補正を行うと、その顔領域の肌色が不適切にＷＢ補正されてしまう。そのため、ステップＳ１８へ進んで、その顔領域が適切にＷＢ補正されるような第２のＷＢ補正値を算出する。図６に示す例では、顔４及び顔５が肌色色相角範囲７１外にあるため、これらの顔領域について第２のＷＢ補正値を算出する。なお、肌色色相角範囲７１内にある顔２については、第１のＷＢ補正値が適切であったため、以下の第２のＷＢ補正値算出処理を行わない。
【００４５】
図８に第２のＷＢ補正値算出の概念図を示す。図８の４０１は、Ｃｘ（＝（Ｒ−Ｂ）／Ｙ）、Ｃｙ（＝（Ｒ＋Ｂ−２Ｇ）／Ｙ）の座標系における、最適肌色領域を示す。先ず、ステップＳ１７で算出した、第１のＷＢ補正値により補正した補正色平均値から（Ｃｘ（ｎ），Ｃｙ（ｎ））を求める。なお、ｎは顔領域の番号を示す。求めた（Ｃｘ（ｎ），Ｃｙ（ｎ））が図８に示す最適肌色領域４０１外にある場合、この位置から、最適肌色領域４０１の例えば中心までの差分値Δを演算し、第２のＷＢ補正値とする。
【００４６】
次にステップＳ１９において、ステップＳ１８で得られた第２のＷＢ補正値に基づいて、ＷＢ制御部１０３でＷＢ処理に使用する第３のＷＢ補正値を決定する。この第３のＷＢ補正値の決定方法としては、様々な方法が考えられる。
【００４７】
図９は、ステップＳ１９で行われるに第３のＷＢ補正値決定処理の一例を示すフローチャートである。
【００４８】
先ず、得られているのが１つの顔領域の第２のＷＢ補正値であるかどうかを判断し（ステップＳ２０１）、１つである場合には、当該顔領域の信頼度に応じて、第２のＷＢ補正値の使用率を決定する（ステップＳ２０２）。図１０は顔の信頼度に応じて第２のＷＢ補正値の使用率を示すグラフである。図１０に示すように、ある信頼度以下の場合には第２のＷＢ補正値を使用せず、ステップＳ１１で求めた第１のＷＢ補正値を使用する。ある閾値以上になると第２のＷＢ補正値を使用し始める。そして、第２のＷＢ補正値にステップＳ２０２で取得した使用率ｋ％を掛け、第１のＷＢ補正値に加算することにより、第３のＷＢ補正値を求める。こうして求めた第３のＷＢ補正値をＷＢ制御部１０３でＷＢ処理に使用するＷＢ補正値と決定する（ステップＳ２０３）。
【００４９】
一方、２つ以上の顔領域の第２のＷＢ補正値が得られた場合（ステップＳ２０１でＮＯ）、各顔領域毎に第２のＷＢ補正値の使用率を決定し（ステップＳ２０４）、加重平均する（ステップＳ２０５）。この時、図６の顔２のように第２のＷＢ補正値を求める必要が無かった場合、第２のＷＢ補正値を「０」とする。さらに、加重平均された第２のＷＢ補正値と第１のＷＢ補正値とを加算することで、第３のＷＢ補正値を決定する（ステップＳ２０５）。
【００５０】
上記の通り本第１の実施形態によれば、顔が画面内に複数検出された場合に、最適なホワイトバランス処理を施すことが可能になる。
【００５１】
＜変形例１＞
図１１は、図４のステップＳ１９で行われる第３のＷＢ補正値決定処理の別の例を示すフローチャートである。
【００５２】
先ず、得られている第２のＷＢ補正値に、主被写体の顔領域のものが含まれているかどうかを判断する（ステップＳ２１０）。含まれていなければ、図９で説明した処理と同様のステップＳ２０１〜Ｓ２０５の処理を行う。一方、含まれていれば、ステップＳ２０１の判定を行わずにステップＳ２０２に進み、主被写体の顔領域の信頼度に応じて、第２のＷＢ補正値の使用率を決定し、ステップＳ２０３で第３のＷＢ補正値を決定する。
【００５３】
上記変形例１によれば、主被写体の顔領域のＷＢ補正を最適化することができる。
【００５４】
なお、上述したように主被写体以外の顔領域の第２のＷＢ補正値を全く使用しないのではなく、主被写体の顔領域の使用率を他の顔領域の使用率よりも高くするように調整するようにしても良い。その場合、主被写体の顔領域のＷＢ補正を他の顔領域に比べてより最適化することができる。
【００５５】
＜変形例２＞
顔検出部１１４が誤検出した場合を考慮して、補正色評価値から得られる（Ｃｘ（ｎ），Ｃｙ（ｎ））と、最適肌色領域４０１の中心との差分値が大きい場合に、第２のＷＢ補正値にかける重みを減らすようにしても良い。この場合、図９のステップＳ２０２及びステップＳ２０４において、差分値が大きくなるほど、使用率ｋを小さくするように制御すればよい。
【００５６】
このように制御することで、顔検出部が顔を誤認識した場合にもＷＢ補正結果に不具合を引き起こしているかを判断できるため、最適なホワイトバランス処理を施すことが可能になる。
【００５７】
＜変形例３＞
顔が複数検出された場合であって、撮影にフラッシュが使用された場合、主被写体の顔以外にフラッシュ光が到達していない場合がある。従って、ステップＳ２０４において、フラッシュ発光したか否かに応じて、主被写体以外の第２のＷＢ補正値の使用率ｋを小さくするように制御しても良い。
【００５８】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第２の実施形態では、主被写体の顔領域のＷＢ補正を最適化する為の別の処理例について説明する。
【００５９】
図１２は、本第２の実施形態におけるＷＢ補正値の算出方法を示すフローチャートである。図１２に示す処理と、図４に示す処理では、以下の処理が異なる。
【００６０】
ステップＳ１３で顔が検出されると、検出された顔の中から主被写体を決定し、主被写体の信頼度が所定レベルより低いか（ステップＳ２１）及び輝度が所定範囲外か（ステップＳ２３）を判断する。そして、少なくともいずれかがＹＥＳであれば、ステップＳ１４に進んで、上記処理を行う。また、ステップＳ２１及びステップＳ２３で何れもＮＯの場合、主被写体の補正色平均値が肌色色相角範囲内にあれば（ステップＳ２４でＹＥＳ）、第１のＷＢ補正値をＷＢ制御部１０３でＷＢ処理に使用するＷＢ補正値と決定する（ステップＳ２０）。ステップＳ２４でＮＯであれば、主被写体の顔領域について、上述したステップＳ１８及びステップＳ１９の処理を行う。
【００６１】
上記以外に関しては、第１の実施形態で上述したものと同様であるので、説明を省略する。
【００６２】
上記の通り本第２の実施形態によれば、主被写体の顔領域のＷＢ補正を最適化することができると共に、処理量を削減することができる。
【００６３】
なお、図１２に示す例では、顔が検出された場合に、先ず主被写体を検出することでステップＳ２１〜Ｓ２４の処理を行うものとして説明したが、主被写体を検出するタイミングはこれに限るものではない。ステップＳ１４〜Ｓ１８のいずれかのタイミングで主被写体を検出し、検出できた場合に、主被写体の処理を優先的に行うようにすればよい。
【００６４】
＜第３の実施形態＞
次に、本発明の第３の実施形態について説明する。第３の実施形態では、主被写体の信頼度が他の顔の信頼度よりも所定レベル以上高い場合に、主被写体の顔領域のＷＢ補正を最適化する処理例について説明する。
【００６５】
図１３は、本第３の実施形態におけるＷＢ補正値の算出方法を示すフローチャートである。図１３に示す処理と、図１２に示す処理では、以下の処理が異なる。
【００６６】
ステップＳ１３で顔が検出されると、検出された顔の中から主被写体を決定し、主被写体の信頼度が、他の顔の信頼度よりも所定レベル以上高いかを判断する。高い場合には、主被写体について上述したステップＳ２２〜Ｓ２４の処理を行い、高くない場合には、ステップＳ１４に進んで上記処理を行う。
【００６７】
上記以外に関しては、第２の実施形態で上述したものと同様であるので、説明を省略する。
【００６８】
上記の通り本第３の実施形態によれば、主被写体の顔の信頼度が他の顔の信頼度よりも十分に高い場合に、主被写体の顔領域のＷＢ補正を最適化することができると共に、処理量を削減することができる。
【００６９】
＜他の実施形態＞
なお、本発明は、複数の機器（例えばホストコンピュータ、インターフェイス機器、カメラヘッドなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、デジタルスチルカメラ、デジタルビデオカメラなど）に適用してもよい。
【００７０】
また、本発明の目的は、以下の様にして達成することも可能である。まず、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７１】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、以下のようにして達成することも可能である。即ち、読み出したプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合である。ここでプログラムコードを記憶する記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、ＲＯＭ、ＲＡＭ、磁気テープ、不揮発性のメモリカード、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ、光ディスク、光磁気ディスク、ＭＯなどが考えられる。また、ＬＡＮ（ローカル・エリア・ネットワーク）やＷＡＮ（ワイド・エリア・ネットワーク）などのコンピュータネットワークを、プログラムコードを供給するために用いることができる。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施の形態における顔検出機能を備えた撮像装置の機能構成を示す概略ブロック図である。
【図２】テンプレートマッチングによるパターン認識処理を説明するフローチャートである。
【図３】テンプレートマッチングの概念を説明する図である。
【図４】本発明の第１の実施形態におけるＷＢ補正値の算出方法を示すフローチャートである。
【図５】本発明の第１の実施形態における第１のＷＢ補正値の算出処理を示すフローチャートである。
【図６】図５に示す算出処理の各段階における処理結果の一例を示す図である。
【図７】本発明の第１の実施形態における肌色色相角範囲を示す図である。
【図８】本発明の第１の実施形態における第２のＷＢ補正値算出の概念図である。
【図９】本発明の第１の実施形態における第３のＷＢ補正値の算出処理を示すフローチャートである。
【図１０】本発明の実施の形態における第２のＷＢ補正値の使用率を示すグラフを示す。
【図１１】本発明の第１の実施形態の変形例における第３のＷＢ補正値の算出処理を示すフローチャートである。
【図１２】本発明の第２の実施形態におけるＷＢ補正値の算出方法を示すフローチャートである。
【図１３】本発明の第３の実施形態におけるＷＢ補正値の算出方法を示すフローチャートである。
【図１４】画面を任意の複数ブロックに分割した例を示す図である。
【図１５】白検出範囲を示す図である。
【図１６】従来の顔領域を白検出の対象から外す例を説明する図である。
【図１７】被写体として顔のアップを撮影した例を示す図である。
【図１８】複数の顔が検出された場合の例を示す図である。
【符号の説明】
【００７３】
１０１  撮像素子
１０２  メモリ
１０３  ＷＢ制御部
１０４  色変換ＭＴＸ回路
１０５  ＬＰＦ回路
１０６  ＣＳＵＰ回路
１０７  ＲＧＢ変換回路
１０８  ガンマ補正回路
１０９  色輝度変換回路
１１０  圧縮回路
１１１  Ｙ生成回路
１１２  エッジ強調回路
１１３  制御回路
１１４  顔検出部
１１５  ＣＰＵ
【図１】
2008167280.tif 000005
【図２】
2008167280.tif 000006
【図３】
2008167280.tif 000007
【図４】
2008167280.tif 000008
【図５】
2008167280.tif 000009
【図６】
2008167280.tif 000010
【図７】
2008167280.tif 000011
【図８】
2008167280.tif 000012
【図９】
2008167280.tif 000013
【図１０】
2008167280.tif 000014
【図１１】
2008167280.tif 000015
【図１２】
2008167280.tif 000016
【図１３】
2008167280.tif 000017
【図１４】
2008167280.tif 000018
【図１５】
2008167280.tif 000019
【図１６】
2008167280.tif 000020
【図１７】
2008167280.tif 000021
【図１８】
2008167280.tif 000022