(57)【特許請求の範囲】
【請求項１】
撮像された画像に適用するホワイトバランス係数を算出するホワイトバランス制御装置であって、
画像から顔領域を検出する顔検出手段と、
画像から、第１のホワイトバランス係数を算出する第１の係数算出手段と、
画像を複数のブロックに分割し、前記複数のブロックのうち、前記顔領域に含まれるブロックの画素値に対して前記第１のホワイトバランス係数を適用した後の色度を、予め定めた肌色に補正するための第２のホワイトバランス係数を算出する第２の係数算出手段と、
前記顔領域に含まれるブロックの画素から得られる、少なくとも前記顔領域の明るさを含むパラメータ値に基づいて決定される、前記顔領域が人の顔として誤っている度合いに基づいて、前記第２のホワイトバランス係数の重みを決定する決定手段と、
前記第１のホワイトバランス係数と、前記決定された重みで重み付けした前記第２のホワイトバランス係数とから、画像に対する最終的なホワイトバランス係数を算出する算出手段とを有し、
前記決定手段は、前記度合いが高いほど小さくなるように前記重みを決定することを特徴とするホワイトバランス制御装置。
【請求項２】
前記顔検出手段により、複数の顔領域が検出された場合、
前記第１の係数算出手段が前記第１のホワイトバランス係数を算出し、
前記第２の係数算出手段が、前記複数の顔領域の各々の画素値に対して前記第１のホワイトバランス係数を適用した後の色度の平均値を前記予め定めた肌色に補正するための第２のホワイトバランス係数を求め、
前記決定手段が、前記複数の顔領域の各々に含まれるブロックの画素から得られる、少なくとも顔領域の明るさの平均値を含むパラメータ値の平均値に基づいて決定される前記度合いが高いほど小さくなるように前記重みを決定し、
前記算出手段が、前記第１のホワイトバランス係数と、前記重みにより重み付けした第２のホワイトバランス係数とから、前記最終的なホワイトバランス係数を算出することを特徴とする請求項１記載のホワイトバランス制御装置。
【請求項３】
前記度合いが、顔領域の明るさを含む複数の異なるパラメータ値と、前記異なるパラメータ値に対する複数の条件とから決定され、
前記決定手段が、前記複数の条件のうち満たされる条件の数が多いほど、前記度合いが高いと判定して前記重みを決定することを特徴とする請求項１記載のホワイトバランス制御装置。
【請求項４】
前記度合いが、顔領域の明るさを含む複数の異なるパラメータ値と、前記異なるパラメータ値に対する複数の条件とから決定され、
前記異なるパラメータ値に対する複数の条件からなる条件群が複数存在し、
前記決定手段が、前記複数の顔領域の各々について、前記複数の異なるパラメータ値が満たす条件の数が最も多い条件群を判定し、当該判定された条件群に関連付けられた、前記複数の異なるパラメータ値が満たす条件の数と前記重みとの関係に基づいて求めた重みの平均値を、前記第２のホワイトバランス係数に乗じる重みとして決定することを特徴とする請求項１記載のホワイトバランス制御装置。
【請求項５】
前記パラメータ値が、さらに前記顔領域の色相を含むことを特徴とする請求項１乃至請求項４のいずれか１項に記載のホワイトバランス制御装置。
【請求項６】
前記パラメータ値が、さらに前記顔領域のコントラストを含むことを特徴とする請求項１乃至請求項５のいずれか１項に記載のホワイトバランス制御装置。
【請求項７】
前記パラメータ値が、さらに前記顔領域の輝度分布を含むことを特徴とする請求項１乃至請求項６のいずれか１項に記載のホワイトバランス制御装置。
【請求項８】
前記度合いによらず、前記顔検出手段の結果に基づき前記顔領域の枠を画像に重畳して表示する表示手段をさらに有することを特徴とする請求項１乃至７のいずれか１項に記載のホワイトバランス制御装置。
【請求項９】
請求項１乃至請求項８のいずれか１項に記載のホワイトバランス制御装置と、
前記最終的なホワイトバランス係数を用いて画像を補正する補正手段とを有することを特徴とする撮像装置。
【請求項１０】
撮像された画像に適用するホワイトバランス係数を算出するホワイトバランス制御装置の制御方法であって、
前記ホワイトバランス制御装置の顔検出手段が、画像から顔領域を検出する顔検出工程と、
前記ホワイトバランス制御装置の第１の係数算出手段が、画像から、第１のホワイトバランス係数を算出する第１の係数算出工程と、
前記ホワイトバランス制御装置の第２の係数算出手段が、画像を複数のブロックに分割し、前記複数のブロックのうち、前記顔領域に含まれるブロックの画素値に対して前記第１のホワイトバランス係数を適用した後の色度を予め定めた肌色に補正するための第２のホワイトバランス係数を算出する第２の係数算出工程と、
前記ホワイトバランス制御装置の決定手段が、前記顔領域に含まれるブロックの画素から得られる、少なくとも前記顔領域の明るさを含むパラメータ値に基づいて決定される、前記顔領域が人の顔として誤っている度合いに基づいて、前記第２のホワイトバランス係数の重みを決定する決定工程と、
前記ホワイトバランス制御装置の算出手段が、前記第１のホワイトバランス係数と、前記決定された重みで重み付けした前記第２のホワイトバランス係数とから、画像に対する最終的なホワイトバランス係数を算出する算出工程とを有し、
前記決定手段は、前記決定工程において、前記度合いが高いほど小さくなるように前記重みを決定することを特徴とするホワイトバランス制御装置の制御方法。
【請求項１１】
コンピュータを、請求項１乃至請求項８のいずれか１項に記載のホワイトバランス制御装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はホワイトバランス制御装置及び制御方法に関し、特に画像の輝度及び色差信号に基づいて画像のホワイトバランスを制御するホワイトバランス制御装置及びその制御方法に関する。
本発明はさらに、本発明のホワイトバランス制御装置を用いた撮像装置に関する。
【背景技術】
【０００２】
デジタルカメラやデジタルビデオカメラなどの、撮像素子を用いる撮像装置においては、撮像によって得られた画像の色調を調整するホワイトバランス制御機能を備えている。ホワイトバランス制御は、白い物体が白く撮像されるよう、ホワイトバランス補正値により画素値を補正する処理である。
【０００３】
ホワイトバランス制御には、白く撮影したい物体を撮像してホワイトバランス補正値を求めるマニュアルホワイトバランス制御と、撮像した画像から白色と思われる部分を自動検出してホワイトバランス補正値を求めるオートホワイトバランス制御とがある。
【０００４】
オートホワイトバランス制御を行うためには、予め様々な光源下で白色被写体を撮像し、得られた画像の色評価値を算出し、所定の色空間座標系にプロットすることにより、光源ごとの白検出範囲を定めておく。
【０００５】
図５は、白検出範囲の例を示す図である。Ｃｘ−Ｃｙ座標系におけるｘ座標（Ｃｘ）の負方向が高色温度光源下で白色物体を撮影したときの色評価値、正方向が低色温度光源下で白色物体を撮影したときの色評価値である。またｙ座標（Ｃｙ）は光源の緑（Ｇ）成分の度合いを意味しており、負方向になるにつれＧ成分が大きくなる。つまり、光源が蛍光灯である場合には、負の方向に色評価値が分布する。
【０００６】
オートホワイトバランス制御を行う場合、画像を複数のブロックに分割し、ブロックごとに色評価値を求める。そして、図５に示すような白検出範囲に含まれる色評価値を有するブロックは白であると判定する。画像を構成する複数のブロックのうち、同様にして白と判定されたブロックについて、画素値を積分する。そして、例えば積分値の各色（Ｒ，Ｇ，Ｂ）成分を同値にするようなホワイトバランス補正値を算出する。
【０００７】
しかしながら、太陽光下で撮影した人肌領域の色評価値と、タングステン光下で撮影した白色被写体の色評価値とはほぼ同じ領域に分布する。そのため、従来のオートホワイトバランス制御方法では、太陽光下で撮影した人肌をタングステン光下の白と誤判別し、肌色を白く補正してしまうことがあった。
【０００８】
一方、近年、顔検出技術を用い、人物の顔が適正露出になるように露出制御したり、人物の顔に合焦するように焦点検出制御を行う撮像装置が市販されている。このような背景から、顔検出技術をホワイトバランス制御にも用いることが提案されている。特許文献１では、顔検出回路にて検出された顔領域を白色画素の検出対象から外してホワイトバランス制御を行うことで、肌色を白と誤検出する問題を解決しようとしている。
【０００９】
【特許文献１】特開２００３−１８９３２５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１記載のホワイトバランス制御方法においては、顔領域を誤検出した場合の対策が考慮されていない。そのため、人顔でない領域を顔領域を誤検出した場合、白検出の対象領域が必要以上に少なくなり、得られる色温度情報の精度、ひいてはホワイトバランス制御の精度が低下するという問題がある。
【００１１】
本発明はこのような従来技術の問題点を軽減するためになされたもので、顔領域を誤検出した場合でも、精度の良いホワイトバランス係数を得ることが可能なホワイトバランス制御装置及びその制御方法を提供する。
【課題を解決するための手段】
【００１２】
上述の目的は、撮像された画像に適用するホワイトバランス係数を算出するホワイトバランス制御装置であって、画像から顔領域を検出する顔検出手段と、画像から、第１のホワイトバランス係数を算出する第１の係数算出手段と、画像を複数のブロックに分割し、複数のブロックのうち、顔領域に含まれるブロックの画素値に対して第１のホワイトバランス係数を適用した後の色度を、予め定めた肌色に補正するための第２のホワイトバランス係数を算出する第２の係数算出手段と、顔領域に含まれるブロックの画素から得られる、少なくとも顔領域の明るさを含むパラメータ値に基づいて決定される、顔領域が人の顔として誤っている度合いに基づいて、第２のホワイトバランス係数の重みを決定する決定手段と、第１のホワイトバランス係数と、決定された重みで重み付けした第２のホワイトバランス係数とから、画像に対する最終的なホワイトバランス係数を算出する算出手段とを有し、決定手段は、度合いが高いほど小さくなるように重みを決定することを特徴とするホワイトバランス制御装置によって達成される。
【００１３】
また、上述の目的は、撮像された画像に適用するホワイトバランス係数を算出するホワイトバランス制御装置の制御方法であって、ホワイトバランス制御装置の顔検出手段が、画像から顔領域を検出する顔検出工程と、ホワイトバランス制御装置の第１の係数算出手段が、画像から、第１のホワイトバランス係数を算出する第１の係数算出工程と、ホワイトバランス制御装置の第２の係数算出手段が、画像を複数のブロックに分割し、複数のブロックのうち、顔領域に含まれるブロックの画素値に対して第１のホワイトバランス係数を適用した後の色度を予め定めた肌色に補正するための第２のホワイトバランス係数を算出する第２の係数算出工程と、ホワイトバランス制御装置の決定手段が、顔領域に含まれるブロックの画素から得られる、少なくとも顔領域の明るさを含むパラメータ値に基づいて決定される、顔領域が人の顔として誤っている度合いに基づいて、第２のホワイトバランス係数の重みを決定する決定工程と、ホワイトバランス制御装置の算出手段が、第１のホワイトバランス係数と、決定された重みで重み付けした第２のホワイトバランス係数とから、画像に対する最終的なホワイトバランス係数を算出する算出工程とを有し、決定手段は、決定工程において、度合いが高いほど小さくなるように重みを決定することを特徴とするホワイトバランス制御装置の制御方法によっても達成される。
【発明の効果】
【００１４】
このような構成により、本発明によれば、顔領域を誤検出した場合でも、精度の良いホワイトバランス係数を得ることが可能である。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面を参照して、本発明の好適かつ例示的な実施形態について詳細に説明する。
（第１の実施形態）
図１は、本発明の第１の実施形態に係るホワイトバランス制御装置を適用可能な撮像装置の構成例を示すブロック図である。
【００１６】
図１において、光学系１０１はズームレンズやフォーカシングレンズなどを備え、システム制御部１０７の制御に従って被写体光学像を撮像素子１０３上に結像する。シャッター１０２は絞りを有するメカニカルシャッターである。撮像素子１０３はＣＣＤイメージセンサやＣＭＯＳイメージセンサ等の固体撮像素子であり、例えばベイヤー配列を有する原色カラーフィルタを備え、カラー画像の撮影が可能である。
【００１７】
Ａ／Ｄ変換器１０４は、撮像素子１０３のアナログ出力をデジタルデータに変換する。タイミング発生回路１０５は、撮像素子１０３、Ａ／Ｄ変換器１０４、Ｄ／Ａ変換器１１０にクロック信号や制御信号を供給する。タイミング発生回路１０５は、メモリ制御回路１０９およびシステム制御部１０７により制御される。
【００１８】
画像処理回路１０６は、Ａ／Ｄ変換器１０４あるいはメモリ制御回路１０９からの撮像データに対して所定の画素補間処理や色変換処理を行う。また、画像処理回路１０６は、システム制御部１０７がＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＥＦ（フラッシュプリ発光）処理、ＡＷＢ（オートホワイトバランス）処理を行うために必要な所定の演算処理を撮像データに適用する。
【００１９】
さらに、画像処理回路１０６は、画像に対する顔検出処理を行う。なお、顔検出処理には、ニューラルネットワークなどを利用した学習に基づく手法、テンプレートマッチングを用いて目、鼻、口等の形状に特徴のある部位を画像から探し出し、類似度が高ければ顔とみなす手法など、公知の顔検出技術を利用できる。また、他にも、肌の色や目の形といった画像特徴量を検出し、統計的解析を用いた手法等、多数提案されている。一般的にはこれらの手法を複数組み合わせ、顔検出の精度を向上させる。具体的な例としては特開２００２−２５１３８０号公報に記載のウェーブレット変換と画像特徴量の組み合わせにより、顔検出する方法などが挙げられる。
【００２０】
Ａ／Ｄ変換器１０４の出力する撮像データは、必要に応じて画像処理回路１０６を経由し、メモリ制御回路１０９を介して画像メモリ１０８あるいは画像表示メモリ１１１に書き込まれる。
【００２１】
画像メモリ１０８は、撮影した静止画像や動画像を格納するために用いる。本実施形態の撮像装置１は、高速な連射撮影やパノラマ撮影、動画撮影に対応できるような容量の画像メモリ１０８を備えている。また、画像メモリ１０８はシステム制御部１０７の作業領域としても使用可能である。
【００２２】
画像表示メモリ１１１に書き込まれた表示用の画像データは、Ｄ／Ａ変換器１１０を介して表示部１１２により表示される。
表示部１１２は、例えばＬＣＤや有機ＥＬディスプレイであり、システム制御部１０７の指示により表示をON/OFFすることが可能である。表示をOFFにした場合には撮像装置電力消費を低減することができる。
【００２３】
ユーザーインタフェース部１１３はボタン、スイッチ、レバー等、ユーザーが撮像装置１に対して指示を入力する入力デバイス群である。ユーザーインタフェース部１１３の操作は、システム制御部１０７に入力される。
【００２４】
図２は画像処理回路１０６における、色処理に関する機能構成例を示すブロック図である。また、図３は撮像素子１０３が備える原色カラーフィルタの構成例を示す図である。なお、画像処理回路１０６には、上述した顔検出処理を行うための処理ブロックも含まれるが、図２においては図示を省略している。
【００２５】
撮像素子１０３を構成する画素は、図３のようなブロックに分割される。タイミング発生回路１０５に従って撮像素子１０３から各ブロックのR、G１、G２、B各信号値を読み込み、Ａ／Ｄ変換器１０４でデジタル信号に変換した後、画像処理回路１０６へ入力される。
【００２６】
画像処理回路１０６ではまずホワイトバランス処理部３０１において、白色画素が白信号となるようなホワイトバラス係数および光源の色温度が求められる。
以降の説明においては、光源の色温度を色判定用の色評価値をCx、Cyとし、各色信号R、G１、G２、Bのホワイトバランス係数をそれぞれkWB_R、kWB_G１、kWB_G２、kWB_Bとする
【００２７】
まず、Cx、Cyをブロックごとに算出する。このCx、Cy値の算出式を式（１）に示す。
【００２８】
【数１】
0005398156.tif 000002
【００２９】
また、ホワイトバランス係数kWB_R、kWB_G１、kWB_G２、kWB_Bの算出方法を以下に示す。図５に示すように、あらかじめ白色を高色温度下から低色温度下まで撮影し、それぞれの色評価値Cx、Cyをプロットすることで白軸を設定する。実際の光源にて白色には若干ばらつきがあるために白を示す領域に幅をもたせている。この領域を白検出範囲と呼ぶ。このとき、図３に示す撮像素子の各ブロックのCx,Cyをプロットし、それが白検出範囲に含まれた場合はそのブロックが白色であるとする。さらに、白検出範囲に入った色画素の積分値Sum_R、Sum_G１、Sum_G２、Sum_Bを算出して以下の式にてホワイトバランス係数kWB_R、kWB_G１、kWB_G２、kWB_Bを算出する。
【００３０】
【数２】
0005398156.tif 000003
【００３１】
以上の算出結果を受け、第１の係数算出手段としてのホワイトバランス処理部３０１にてホワイトバランス係数がＡ／Ｄ変換器１０４の出力するデジタル信号に適用され、画像中の白が白信号になるように処理される。これが第１のWB係数である。
【００３２】
ホワイトバランス処理されたデジタルデータは、原色輝度信号作成処理部３０９及び補間処理部３０２へ供給される。補間処理部３０２では単板撮像素子の画素配列から、R,G1,G2,B(A,B,C,D)位置の画素それぞれを用いて、補間演算よりR,G1,G2,Bの面データを作成する。
【００３３】
マトリクス演算部３０３では式（３）を用いて画素ごとに色変換が行われる。
【数３】
0005398156.tif 000004
【００３４】
マトリクス演算処理されたデジタル信号は色差ゲイン演算処理部３０４において色差信号にゲインがかけられる。
【００３５】
式（４）によりRm、Gm、Bm信号はY、Cr、Cb信号へと変換され、さらに式（５）によりCr、Cb信号にゲインがかけられ、式（６）（式（２）の逆行列演算）により、Rg、Gg、Bg信号へと変換される。
【００３６】
【数４】
0005398156.tif 000005
【００３７】
色差ゲイン演算処理されたデジタル信号Rg, Gg, Bgは第１のガンマ処理部３０５へと送られる。第１のガンマ処理部３０５ではデジタル信号を以下の式を用いて変換する。ただし、式（７）〜式（９）におけるGammaTable[]は予め定めた１次元ルックアップテーブルの参照を示す。
【００３８】
Rt = GammaTable[Rg]            式（７）
Gt = GammaTable[Gg]            式（８）
Bt = GammaTable[Bg]            式（９）
【００３９】
ガンマ処理されたデジタル信号Rt,Gt,Btは色相補正演算処理部３０６へと送られる。
演算は式（１０）によりRt、Gt、Bt信号はY、Cr、Cb信号へと変換され、さらに式（１１）によりCr、Cb信号がCr', Cb'信号に補正され、式（１２）（式（１１）の逆行列演算）により、Rh、Gh、Bh信号へと変換される。
【００４０】
【数５】
0005398156.tif 000006
式（１１）におけるＨ１１〜Ｈ２２は係数である。
【００４１】
色相補正演算処理部３０６の出力するRh,Gh,Bh信号は、色差信号変換処理部３０７へ送られる。
色差信号変換処理部３０７は、式（１３）を用いて、Ｕ，Ｖ信号を生成する。
【００４２】
【数６】
0005398156.tif 000007
【００４３】
一方、原色輝度信号作成処理部３０９は、ホワイトバランス処理部３０１から送られたデジタル信号から、原色フィルタに対応した原色輝度信号を生成する。
【００４４】
原色輝度信号の生成方法について説明する。
本実施形態で用いている図３に示す原色フィルタの場合、Ｒ及びＢ画素の信号をすべて０にして、図４に示す係数を有する２次元フィルタ処理を施した結果を輝度信号として生成する。
【００４５】
原色輝度信号作成処理部３０９で生成された輝度信号は、高域強調処理部３１１でエッジ強調処理され、さらに第２のガンマ処理部３１２でガンマ変換処理されてＹ信号が作成される。
【００４６】
次に、本実施形態の撮像装置におけるホワイトバランス処理について、図６に示すフローチャートを用いて説明する。
図６に示す処理は、電源スイッチがＯＮとなった際に開始され、画像処理回路１０６内のホワイトバランス処理部３０１が実行する。
【００４７】
まず、Ｓ７０２において、ホワイトバランス処理部３０１は、撮像素子のホワイトバランスモードの設定がオートホワイトバランスモード（ＡＷＢモード）かどうか判別する。ＡＷＢモードは、シーンに応じて自動的にWB係数を決定するモードである。ＡＷＢモードでない場合、ホワイトバランス処理部３０１は処理をＳ７１０に移し、ＷＢモードに応じた第１のWB係数を算出する。ホワイトバランス処理部３０１は例えば画像全体を用い、各ブロックのCx,Cy値から白色ブロックを検出し、白色ブロックについて式（２）を用いて算出したWB係数kWB_R、kWB_G１、kWB_G２、kWB_Bを最終的なWB係数として算出する。
【００４８】
ＡＷＢモードの場合、ホワイトバランス処理部３０１は画像の全体を用い、各ブロックのCx、Cy値から白色ブロックを検出し、白色ブロックについて式（２）を用いて算出したWB係数kWB_R、kWB_G1、kWB_G2、kWB_Bを第１のWB係数として算出する（Ｓ７０３）。画像処理回路１０６の図示しない顔検出処理部は、電子ビューファインダ（ＥＶＦ）に表示するための表示用画像中に顔と思われる領域（顔領域）が存在するか否かを判別する（Ｓ７０４）。なお、表示部１１２をＥＶＦとして機能させる際に用いる表示用画像は撮像素子１０３で得られる撮像画像よりも画素数が少ないため、表示用画像に対して顔検出処理を行うことで処理負荷が少なくてすむという利点がある。ただし、表示用画像でなく、より画素数の多い撮像画像に対して顔検出処理を適用しても良い。
【００４９】
表示用画像中に顔が存在すると判別された場合、画像処理回路１０６は、例えば顔領域を示す枠（顔枠）の画像を画像表示メモリ１１１に書き込み、表示部１１２において、顔枠を表示用画像に重畳表示させ、顔が検出されたことを表示する。一方、表示用画像中に顔がないと判別された場合、Ｓ７０３にて算出された第１のWB係数を最終WB係数として記憶する（Ｓ７１１）。
【００５０】
Ｓ７０４において表示画像中に顔が存在すると判別された場合、ホワイトバランス処理部３０１は、顔として検出された領域（顔領域）に内接するブロックを取得する（Ｓ７０５）。顔領域は例えば顔として検出された領域そのものであってもよいし、顔として検出された領域に外接する特定形状（例えば方形）の領域であってもよい。
【００５１】
図７は、顔領域とＳ７０５で取得する内接ブロックとの関係の一例を示す図である。図７の例では、顔領域が顔として検出された領域に外接する方形領域であり、かつ、内接ブロックが、顔領域に全体が包含されるブロックである場合を示している。
【００５２】
また、ホワイトバランス処理部３０１は、Ｓ７０５で取得した内接ブロックごとに、各画素の信号値BL_R[i],BL_G１[i],BL_G２[i],BL_B[i]（ただし、iはブロックの番号を示す）を出力する。そして、ブロックの信号値にＳ７０３で算出した第１のWB係数kWB_R、kWB_G１、kWB_G２、kWB_Bを乗算し、信号値BL_WR[i],BL_WG１[i],BL_WG２[i],BL_WB[i]を算出する（Ｓ７０６）。この演算を式（１４）に示す。
【００５３】
【数７】
0005398156.tif 000008
ただし、式（１４）において、iはブロックの番号を示す。
【００５４】
次にホワイトバランス処理部３０１は、式（１４）に示す演算で算出された、信号値BL_WR[i],BL_WG１[i],BL_WG２[i],BL_WB[i]を全ての内接ブロックで積分した結果得られたCx、Cy値を算出する。このCx,Cy値は、第１のWB係数が乗じられた顔領域内ブロック全体のCx、Cy点である。
【００５５】
図８は、内接ブロック内の画素値を積分して得られたCx, Cy値（色度）と、目標の肌色を示すCx,Cy値との関係例をCx,Cy座標平面で示す図である。
図８において、顔領域に内接する全ブロックに対応する領域（検出領域）で得られたCx,Cy値に第１のWB係数を乗じた結果のCx,Cy値が９０１、肌色の目標色度のCx,Cy値が９０２であるとする。
【００５６】
この場合、第２の係数算出手段としてのホワイトバランス処理部３０１は、Ｓ７０７において、９０１の値を９０２の値に変換するWB係数を第２のWB係数として算出する。
なお、ここで、肌色の目標値は、肌色領域９０３と、検出領域に対応する点９０１との距離が最小になる点としてもよいし、また肌色領域９０３の中心点としてもよい。もちろん、肌色領域９０３内の他の位置としてもよい。
【００５７】
第１のWB係数による補正量を示すCx、Cy値をWCx１,WCy１とし、第２のWB係数による補正量を示すCx,Cy値をWCx２,WCy２とする。ここで、検出領域で得られるパラメータ値と、パラメータ値の少なくとも一部について予め定められた条件からなる条件群とから、顔領域の検出信頼度を判定する。そして、検出信頼度に応じて加算比を変化させて（Ｓ７０８）第１のWB係数と第２のWB係数とを合算することにより、最終的なWB係数を算出する（Ｓ７０９）。
【００５８】
本実施形態においては、検出信頼度が低い顔領域に対して第２のWB係数が適用されることによる誤補正を抑制するため、最終的なWB係数に占める第２のWB係数の重み又は影響を、顔領域の信頼度が低いほど小さくすることを特徴とする。
従って、顔領域の信頼度が低いほど第２のWB係数の大きさが小さくなるという関係を満たせば、信頼度と第２のWB係数の重みとの具体的な対応は任意に設定可能である。
【００５９】
ホワイトバランス処理部３０１は、Ｓ７０３、Ｓ７１０又はＳ７０９で算出された最終的なWB係数を、Ｓ７１１で記憶し、次にホワイトバラス係数を算出するまでの撮影画像に対するホワイトバランス補正処理に用いる。
なお、ホワイトバランス係数の算出頻度は適宜決定することができるが、例えば表示用画像（例えば３０フレーム／秒）のうち、３〜１０フレームごとに算出するように決定することができる。
【００６０】
次に、検出領域から得られるパラメータ値に応じて第１及び第２のWB係数の加算比を変化させる具体的な方法の例について説明する。
本実施形態では、検出領域から得られるパラメータ値の例として、輝度値、色相、彩度、コントラスト、ヒストグラムの値を用いる。そして、これらのパラメータ値について、例えば図９に示すような条件群（条件パターン）を予め用意し、撮像装置内の、画像処理回路１０６がアクセス可能な不揮発性記憶装置に予め記憶しておく。なお、パラメータ値全てに対して条件を用意することは必須でない。
【００６１】
ここで、コントラストＹgryは、検出領域内の無彩色画素の平均輝度値（０〜２５５）であり、ヒストグラムにおけるRatio(Y0-50)≧60[%]とは、検出領域内の全画素数における、輝度0-50の画素の割合が60%以上であることを意味する。
【００６２】
なお、図９に示した例は、いずれも、値が条件を満たす場合に検出領域の顔としての信頼度が低いと考えられる条件群である。もちろん、逆に、条件を満たす場合に検出領域の顔としての信頼度が高まる条件群を用いても良い。
【００６３】
ホワイトバランス処理部３０１は、Ｓ７０５で取得した内接ブロックから構成される検出領域から得られる各値が、これら条件群のいくつを満たすか判別し、その数に応じて第１のWB係数と第２のWB係数の加算比を決定する（Ｓ７０８）。すなわち、満たされる条件が多いほど顔領域の信頼度が低いことを示すので、第２のWB係数の重みを小さくする。
【００６４】
本実施形態においては、例えば図１０に示すような予め定めた関係に則り、満たされる条件の数と加算比γ（本実施形態では第２のWB係数の重み）を決定するものとする。図１０に示す関係は、例えば満たされる条件の数と加算比γとを対応づけたテーブルの形式や、満たされる条件の数を引数とする関数の形式でホワイトバランス処理部３０１内部に記憶しておくことができる。
【００６５】
なお、図１０においては、満たされる条件の数と加算比γとの関係を示す直線の傾きが途中で変化しているが、これは単なる一例であり、傾きが一定であってもよいし、両者の関係が曲線で表されても良い。
【００６６】
このようにして決定した加算比γを用い、ホワイトバランス処理部３０１は、例えば式（１５）に従って最終的なWB係数を算出する（Ｓ７０８）。
【００６７】
【数８】
0005398156.tif 000009
なお、ここでは、加算比γにより第１のWB係数の重みも変更する場合の例を示しているが、第２のWB係数にのみ加算比γを乗じるようにしても良い。
【００６８】
（変形例１）
なお、検出された顔領域が複数存在する場合には、Ｓ７０３において、顔領域ごとの検出領域に対して第１のWB係数を乗算する。そして、Ｓ７０６において、各顔領域の検出領域に第１のWB係数を適用した後のCx,Cy値の平均値を求め、Ｓ７０７にてこの平均値を肌色目標値に補正する係数を第２のWB係数として求める。また、Ｓ７０８においては、各顔領域検出領域から得られるパラメータ値の平均値が、条件群に含まれる条件を満たす数に応じて加算比γを決定する。
なお、これらの平均値を求める際に、大きい顔領域ほど高い重み付けを行うなどの加重平均値を求めても良い。
【００６９】
このように、本実施形態によれば、顔領域が検出された場合、第１のホワイトバランス係数と、第１のホワイトバランス係数の適用後の色を肌色目標値に補正する第２のホワイトバランス係数とから最終的なホワイトバランス係数を求める。この際、第２のホワイトバランス係数が最終的なホワイトバランス係数に与える影響を（重み）を、顔領域の検出信頼度が低いほど小さくすることにより、顔領域が誤検出された場合でも、誤検出された顔領域に対する誤補正を抑制することができる。
【００７０】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
本実施形態に係るホワイトバランス制御装置は、加算比γを決定する際に用いる条件群と、加算比γ−顔領域の信頼度（満たされる条件数）の関係とを複数組有する。そして、検出領域から得られるパラメータ値が満たす条件の最も多い条件群に対応する加算比γ−顔領域の信頼度の関係に基づいて加算比γを決定する。
【００７１】
次に、本実施形態の撮像装置において、顔を含むシーンを撮像する際のホワイトバランス処理について、図１１に示すフローチャートを用いて説明する。なお、図１１において、第１の実施形態で説明した工程と同一工程については、図６のフローチャートと同一の参照数字を付し、説明を省略する。
【００７２】
Ｓ７０２〜Ｓ７０７までの処理は第１の実施形態で説明したとおりである。Ｓ１２０７において、ホワイトバランス処理部３０１は、例えば図１２に示すような、予め内部の不揮発性メモリ等に記憶された複数の条件群（ここでは条件群１〜３）の各々に含まれる条件と、検出領域から得られるパラメータ値とを比較する。そして、ホワイトバランス処理部３０１は、満たされる条件の数が最も多い条件群を選択する。ここでは、同じパラメータについて、異なる範囲を有する条件からなる条件群を用意した例を示したが、条件群によってパラメータの種類や数が異なっても良い。
【００７３】
次にホワイトバランス処理部３０１は、Ｓ１２０７で選択した条件群に対応づけてやはり予め内部に記憶された加算比γ−顔領域の信頼度（満たされる条件数）の関係に基づいて加算比γを決定する（Ｓ１２０８）。
【００７４】
図１３（ａ）〜図１３（ｃ）は、条件群１〜条件群３に対応づけて予め用意された加算比γ−顔領域の信頼度の関係例を示す図である。第１の実施形態で説明したように、これらの関係はテーブルの形式や関数の形式で記憶しておくことができる。また、本実施形態においても、加算比γと顔領域の信頼度との関係は図１３に示したものに限らず、任意に設定可能である。
【００７５】
図１３に示すように、条件群に含まれる条件を考慮して、顔領域の信頼度（満たされる条件の数）と加算比γとの関係を変化させることにより、より適切な加算比γを決定することができる。
【００７６】
例えば、図１３（ｂ）と図１３（ｃ）とでは、図１３（ｂ）に対応する条件群に含まれる条件の方が、より信頼度が低い可能性の高い条件であるため、満たされる条件の数が少ないうちから加算比γが大きく低下する関係を有している。
その後、Ｓ７０９から第１の実施形態と同様に処理を行い、例えば式（１５）を用いて最終的なWB係数Cx(last)、Cy(last)を算出する。
【００７７】
（変形例１）
第１の実施形態の変形例と同様、検出された顔領域が複数存在する場合には、Ｓ７０６において、顔領域ごとの検出領域に対して第１のWB係数を乗算する。そして、Ｓ７０７において、各顔領域の検出領域に第１のWB係数を適用した後のCx,Cy値の平均値を求め、この平均値を肌色目標値に補正する係数を第２のWB係数として求める。また、顔領域の検出領域毎に、Ｓ１２０８及びＳ７０９により加算比γを決定する。そして、検出領域毎に求めた加算比γから、例えば式（１６）に基づいて最終的な加算比γを算出する。
【００７８】
【数９】
0005398156.tif 000010
ただし、iは顔として検出された領域の数、γ[i]は顔として検出された領域のi番目について算出された加算比γの値を示す。
そして、Ｓ７０９でこの加算比γを例えば式（１５）に適用して、最終的なWB係数Cx(last)、Cy(last)を求めればよい。
【００７９】
このように、本実施形態によれば、検出された顔領域内の画素から得られるパラメータ値が満たす条件数が最も多い条件群を複数の条件群から選択し、選択した条件群に対応づけられた関係に基づいて第１及び第２のWB係数の加算比を決定する。そのため、顔領域内の画素の特性に応じて、より適切な加算比を決定することが可能になり、顔領域として誤検出された領域に対する誤補正を第１の実施形態よりもさらに精度良く抑制することが可能になる。
【００８０】
（他の実施形態）
上述の実施形態は、システム或は装置のコンピュータ（或いはＣＰＵ、ＭＰＵ等）によりソフトウェア的に実現することも可能である。
従って、上述の実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
【００８１】
なお、上述の実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。
【００８２】
上述の実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線／無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、ＭＯ、ＣＤ、ＤＶＤ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどがある。
【００８３】
有線／無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムファイル）をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。
【００８４】
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
つまり、上述の実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
【００８５】
また、上述の実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザーに、暗号化を解く鍵情報を供給し、ユーザーの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
【００８６】
また、上述の実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するＯＳの機能を利用するものであってもよい。
さらに、上述の実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるＣＰＵで実行するようにしてもよい。
【図面の簡単な説明】
【００８７】
【図１】本発明の第１の実施形態に係るホワイトバランス制御装置を適用可能な撮像装置の構成例を示すブロック図である。
【図２】本発明の第１の実施形態における画像処理回路１０６の、色処理に関する機能構成例を示すブロック図である。
【図３】本発明の第１の実施形態における撮像素子１０３が備える原色カラーフィルタの構成例を示す図である。
【図４】輝度信号を生成する２次元フィルタの係数の例を示す図である。
【図５】白検出範囲の例を示す図である。
【図６】本発明の第１の実施形態におけるホワイトバランス処理の動作を説明するフローチャートである。
【図７】本発明の第１の実施形態における顔領域とその内接ブロックの例を示す図である。
【図８】本発明の第１の実施形態において、顔領域の内接ブロック内を積分して得られたCx, Cy値と、目標の肌色を示すCx,Cy値との関係例をCx,Cy座標平面で示す図である。
【図９】本発明の第１の実施形態において、検出領域から得られるパラメータ値に基づいて顔領域の信頼度を判定するための条件群の例を示す図である。
【図１０】本発明の第１の実施形態における、満たされる条件の数と加算比γとの関係例を示す図である。
【図１１】本発明の第２の実施形態におけるホワイトバランス処理の動作を説明するフローチャートである。
【図１２】本発明の第２の実施形態において、検出領域から得られるパラメータ値に基づいて顔領域の信頼度を判定するための複数の条件群の例を示す図である。
【図１３】本発明の第２の実施形態において、複数の条件群の各々に対応づけて用意される、条件の数と加算比γとの関係例を示す図である。
【図１】
0005398156.tif 000011
【図２】
0005398156.tif 000012
【図３】
0005398156.tif 000013
【図４】
0005398156.tif 000014
【図５】
0005398156.tif 000015
【図６】
0005398156.tif 000016
【図７】
0005398156.tif 000017
【図８】
0005398156.tif 000018
【図９】
0005398156.tif 000019
【図１０】
0005398156.tif 000020
【図１１】
0005398156.tif 000021
【図１２】
0005398156.tif 000022
【図１３】
0005398156.tif 000023