(57)【要約】【課題】  顔検出時に高色温度下の肌色を低色温度下の白色と誤認識することなく、正確なホワイトバランス処理を行うことを可能にする。【解決手段】  撮像装置が顔検出モードを備え、かつ顔が検出されたときには、顔領域と、輝度情報および色情報の値が顔領域のその値に対して所定の範囲内である体候補領域を検出し、これらの領域をＷＢ評価値の取得領域から除外する。【選択図】  図１
2007068146.tif 000002
【特許請求の範囲】
【請求項１】
画像データから顔領域を検出する顔検出手段と、
検出された顔領域に応じて、前記画像データから体が存在すると推定される体候補領域を抽出する領域抽出手段と、
前記顔検出手段による検出結果と前記領域抽出ユニットの抽出結果に基づいて、ホワイトバランスの評価値を算出する演算手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記領域抽出手段は前記顔領域から得られる色情報を用いて前記体候補領域を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記領域抽出手段は前記顔領域から得られる輝度情報を用いて前記体候補領域を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記領域抽出手段は前記顔領域から得られる距離情報を用いて前記体候補領域を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記演算手段は前記画像データから前記顔領域と前記体候補領域を除いた残りの領域を用いてホワイトバランスの評価値を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記演算手段は前記画像データから前記顔領域と前記体候補領域を除いた残りの領域を、前記顔領域と前記体候補領域よりも重み付けを大きくしてホワイトバランスの評価値を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記顔検出手段が複数の顔を検出した場合、前記領域抽出手段は前記画像データから検出されたそれぞれの顔に応じた体候補領域を抽出することを特徴とする請求項１から６に記載の画像処理装置。
【請求項８】
光電変換機能を有する撮像素子を備え、前記演算手段は該撮像素子にて得られる画像データに対してホワイトバランスの評価値を算出ことを特徴とする請求項１から７に記載の画像処理装置。
【請求項９】
画像データから顔領域を検出する顔検出工程と、
検出された顔領域に応じて、前記画像データから体が存在すると推定される体候補領域を抽出する領域抽出工程と、
前記顔検出工程による検出結果と前記領域工程ユニットの抽出結果に基づいて、ホワイトバランスの評価値を算出する演算工程と、
を備えることを特徴とする画像処理装置の制御方法。
【請求項１０】
前記領域抽出工程は、前記顔領域から得られる色情報を用いて前記体候補領域を抽出することを特徴とする請求項９に記載の画像処理装置の制御方法。
【請求項１１】
前記領域抽出工程は、前記顔領域から得られる輝度情報を用いて前記体候補領域を抽出することを特徴とする請求項９に記載の画像処理装置の制御方法。
【請求項１２】
前記領域抽出工程は、前記顔領域から得られる距離情報を用いて前記体候補領域を抽出することを特徴とする請求項９に記載の画像処理装置の制御方法。
【請求項１３】
請求項９に記載の制御方法をコンピュータに実行させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムをコンピュータ読み取り可能に記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された画像データに対して画像処理を施して出力画像データとする撮像装置において、顔検出時におけるホワイトバランス制御方法に関するものである。
【背景技術】
【０００２】
デジタルカメラやデジタルビデオカメラなどの撮像装置では、画像データの色バランスをとるために、以下に説明するようなホワイトバランス（これよりＷＢという）の調整が行われている。
【０００３】
撮像素子から色フィルタを通過して出力されたアナログ信号は、アナログ／デジタル（これよりＡ／Ｄという）変換器によってデジタル信号に変換され、図３（ａ）のようなブロックにそれぞれ分割される。
【０００４】
ただし各ブロックは、図３（ｂ）に示すように、色信号Ｒ（赤），Ｇ１（緑），Ｇ２（緑），Ｂ（青）を一つずつ含む単位で構成される。
【０００５】
これらのブロックそれぞれに対して、色評価値
Ｃｘ＝｛（Ｒ＋Ｇ２）−（Ｂ＋Ｇ１）｝／Ｙ
Ｃｙ＝｛（Ｒ＋Ｂ）／４−（Ｇ１−Ｇ２）／４｝／Ｙ
Ｙ＝（Ｒ＋Ｇ１＋Ｇ２＋Ｂ）／４
を算出する。
【０００６】
なお、Ｙは輝度信号である。
【０００７】
図４は色温度によって移り変わる白検出範囲の様子を示す図である。
【０００８】
また、図４には横軸をＣｘ＝（Ｒ−Ｂ）／Ｙ、縦軸をＣｙ＝（Ｒ＋Ｂ）／４Ｙとした色座標を示しており、あらかじめ白色を高色温度下から低色温度下まで撮像し、色評価値Ｃｘ、Ｃｙを座標上に示すことで定められた白軸を示している。
【０００９】
実際の光源において白色には若干のばらつきが存在するため、白軸を中心として幅を持たせた範囲を白検出範囲（白と判断すべき領域）とする。
【００１０】
すなわち、各ブロックについて求められた色評価値Ｃｘ、Ｃｙを図４の座標上に示している。
【００１１】
そして、これらのうち白検出範囲に含まれる色評価値のブロックを白色であると仮定する。さらに、白検出範囲に入った色画素の積分値ＳｕｍＲ、ＳｕｍＧ１、ＳｕｍＧ２、ＳｕｍＢを算出して、以下の式を用いることでＷＢゲインを算出する。
【００１２】
ただしｋＷＢ＿Ｒ、ｋＷＢ＿Ｇ１、ｋＷＢ＿Ｇ２、ｋＷＢ＿Ｂはそれぞれ色信号Ｒ、Ｇ１、Ｇ２、ＢのＷＢゲインである。
ｋＷＢ＿Ｒ＝１．０／ＳｕｍＲ
ｋＷＢ＿Ｇ１＝１．０／ＳｕｍＧ１
ｋＷＢ＿Ｇ２＝１．０／ＳｕｍＧ２
ｋＷＢ＿Ｂ＝１．０／ＳｕｍＢ
しかしながら、上記に示したＷＢ係数算出においては以下のような欠点があった。
【００１３】
高色温度下において、白色の色評価値は図４の領域Ａ付近に分布する。
【００１４】
しかしながら、高色温度光源下において、人の肌の色評価値Ｃｘ、Ｃｙを座標上に示すと、白検出範囲における低色温度側に分布してしまう。
【００１５】
従って、撮像画面に白色が少なくかつ人肌がアップのシーンでは画面の色評価値は図４の領域Ｂに分布することになってしまう。
【００１６】
つまり肌色を低色温度下の白色と誤判別し、人の肌を白色にしてしまうという問題があった。
【００１７】
そこで、特開２００３−１８９３２５号公報には、顔検出可能な撮像装置におけるＷＢ制御に関する技術が開示されている。上記文献には顔認識モードで顔を認識した場合、ＷＢ評価値の取得エリアを顔部分から移動して、顔部分のＷＢの演算を行わないようにするという技術が開示されている。
【００１８】
上記技術によって人物撮像を行ったときに、人物の顔の色と、無彩色部分に低色温度光源の光が照射されたときの色合いが非常に近いために誤認識してしまい、顔を白くしてしまうという問題を解決している。
【特許文献１】特開２００３−１８９３２５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかし、上記特許文献にて開示されている技術では顔部分のみをＷＢ評価値取得エリアから除外するため、例えば水着など、顔以外にも肌の露出の多い被写体においては、体の部分の肌色にＷＢ評価値が引っ張られてしまう。
【００２０】
そのため、正確なＷＢ制御が行えないという問題がある。
【課題を解決するための手段】
【００２１】
上記課題を解決し、目的を達成するために、本発明の画像処理装置は、画像データから顔領域を検出する顔検出手段と、検出された顔領域に応じて、前記画像データから体が存在すると推定される体候補領域を抽出する領域抽出手段と、前記顔検出手段による検出結果と前記領域抽出ユニットの抽出結果に基づいて、ホワイトバランスの評価値を算出する演算手段と、を備えることを特徴とする。
【００２２】
上記課題を解決し、目的を達成するために、本発明の画像処理装置の制御方法は、画像データから顔領域を検出する顔検出工程と、検出された顔領域に応じて、前記画像データから体が存在すると推定される体候補領域を抽出する領域抽出工程と、前記顔検出工程による検出結果と前記領域工程ユニットの抽出結果に基づいて、ホワイトバランスの評価値を算出する演算工程と、を備えることを特徴とする。
【発明の効果】
【００２３】
本発明によれば、シーンに応じてＷＢ評価値の取得領域を変えることで、精度の高いＷＢ処理を可能にする。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の好適な実施形態について、図面を参照して詳細に説明する。
【００２５】
（第１の実施形態）
図２に従来の顔検出機能を備えた撮像装置のブロック図を示す。
【００２６】
図２において、１はレンズ系、絞り、シャッター、ＣＣＤ等の光電変換機能を有する撮像素子、Ａ／Ｄ変換器等が含まれ、レンズ系により撮像素子に投影された像をデジタル信号として出力する撮像部である。
【００２７】
２は撮像部１の出力画像データの中に人物の顔が存在するか否かを公知の顔検出方法にて判定し、存在すれば顔領域を検出する顔検出処理部である。
【００２８】
代表的な顔検出方法としては、ニューラルネットワークに代表される学習を用いた手法、目や鼻や口といった形状に特徴のある部位を、画像領域からテンプレートマッチングを用いて探し出し、類似度が高ければ顔とみなす手法、がある。
【００２９】
他にも、肌の色や目の形といった画像特徴量を検出し統計的解析を用いた手法等、多数提案されており、これらの手法を複数組み合わせて顔認識するのが一般的である。
【００３０】
具体的には特開平２００２−２５１３８０号公報に記載のウェーブレット変換と画像特徴量を利用して顔検出する方法などが挙げられる。
【００３１】
３は、顔検出処理部２での情報を基に、絞りおよびシャッタースピードの設定等の露出にかかわる制御を行う露出制御部である。４は、顔検出処理部２での情報を基に顔検出エリアの合焦点位置を特定するオートフォーカス（これよりＡＦという）制御部である。５は、露出制御部３で決定された絞りおよびメカシャッターを制御する、本露出制御部である。露出制御部３と本露出制御部５は兼用されるのが一般的であるが、ここでは撮像フローの理解を容易にするために別々に記載している。６は本露出撮像されて得られた画像データに対して、ＷＢ処理を施すＷＢ制御部である。なお、このＷＢ制御回路６では、彩度調整や、エッジ強調なども行うことができる。７はＷＢ制御回路６にてＷＢ処理されたデータから色差信号Ｕ，Ｖを生成する色信号生成回路である。８はＷＢ制御回路６にてＷＢ処理されたデータから輝度信号Ｙを生成する輝度信号生成回路である。
【００３２】
次に、図１に示すフローチャートを用いて本発明の第１の実施形態の撮像装置における動作処理を説明する。
【００３３】
また、図５は顔検出モード時に顔が検出されたときのＷＢ評価値の取得領域を示した図である。図５（ａ）は、撮像画面全域をＷＢ評価値の取得領域とした場合の図である。図５（ｂ）は、顔検出の結果に基づき、顔領域とほぼ同一輝度情報、および、ほぼ同一色情報をもつ領域を被写体領域としてＷＢ評価値の取得領域から除外した様子を示す図である。ここでは上半身が裸である人を例にあげている。
【００３４】
撮像装置の電源がＯＮされると、撮像装置は、ステップＳ１０１から始まる撮影動作に備える。
【００３５】
ステップＳ１０１において、不図示のＣＰＵは、撮像装置が顔検出モードに設定されているか否かを判定する。
【００３６】
ステップＳ１０１にて、不図示のＣＰＵが、撮像装置が顔検出モードであると判定した場合には処理をステップＳ１０２に進めて、顔検出処理部２は撮像素子から得られた画像データに対して顔検出処理を行う。
【００３７】
ステップＳ１０１にて、不図示のＣＰＵが、撮像装置が顔検出モードでないと判定した場合は、処理をステップＳ１０５に進めて、図５（ａ）の色付き部分をＷＢ評価値の取得領域として設定する。
【００３８】
ステップＳ１０３にて、不図示のＣＰＵが、顔検出処理部２にて顔が検出されなかったと判断した場合には、処理をステップＳ１０５に進めて、図５（ａ）の色付き部分（画面全域）をＷＢ評価値の取得領域として設定する。
【００３９】
そしてステップＳ１０３にて、不図示のＣＰＵが、顔検出処理部２にて顔が検出されたと判断した場合には処理をステップＳ１０４に進める。
【００４０】
ステップＳ１０４では、不図示のＣＰＵは、輝度情報および色情報の値が、顔領域でのその値に対して所定の範囲内となる領域を検出し、この領域を体の一部である体候補領域とする。ここで、所定の範囲とは、実際に顔領域と体の素肌領域を多数比較し、その結果から統計的に求められた範囲のことである。そして、処理をステップＳ１０６へ進める。
【００４１】
ステップＳ１０２にて顔が複数検出された場合には、輝度情報および色情報の値が、それぞれの顔領域のその値に対して所定の範囲内である領域をすべて体候補領域として検出する。つまり、複数の顔が検出された場合には、それぞれの顔領域の輝度情報および色情報に基づく体候補領域がすべて検出されることになる。
【００４２】
ステップＳ１０６では、顔領域と体候補領域を除いた領域である図５（ｂ）の色付き部分をＷＢ評価値の取得領域として指定する。なお、上述したように、図５（ｂ）は上半身が裸である人の例である。この人物が半袖のシャツを着ていれば、肘から先の腕が露出している領域が体候補領域として検出される。
【００４３】
ステップＳ１０７では、不図示のＣＰＵは、ステップＳ１０５またはステップＳ１０６で指定したＷＢ評価値の取得領域からＷＢ評価値を求める。
【００４４】
ステップＳ１０８では、ステップＳ１０７での処理の結果に基づき最終的なＷＢ係数を算出する。
【００４５】
なお、本実施形態では輝度情報および色情報の値が、顔領域のその値に対して所定の範囲内である領域を体候補領域として抽出しているが、これに限られるものではない。例えば、輝度情報と色情報のどちらか一方の値が、顔領域に対して所定の範囲内である領域を抽出しても構わない。
【００４６】
また、体候補領域を検出する際には、検出された顔領域の近傍領域だけを検出対象とすることで、検出に要する時間を短縮できる。
【００４７】
さらに、検出された顔領域の肌色が最適になるようなＷＢ係数を、予め用意したＷＢ係数テーブル群より選択するようにしてもよい。
【００４８】
以上のように本実施形態では、顔が検出されたときには、顔領域と、輝度情報および色情報の値が顔領域のその値に対して所定の範囲内である体候補領域を検出し、これらの領域をＷＢ評価値の取得領域から除外する。
【００４９】
そうすることによって、例えば被写体が水着を着ているときのように、顔以外にも肌の露出が多いときでも、肌色を低色温度下の白色と誤認識することなく、より正確なＷＢ処理を行うことが可能となる。
【００５０】
（第２の実施形態）
本実施の形態の動作を図面を参照して詳細に説明する。第１の実施形態と同じ処理を行うステップには同じステップ番号が割り当てられる。
【００５１】
第１の実施形態では、輝度情報および色情報の値が、顔領域のその値に対して所定の範囲内である領域を体候補領域として検出し、顔領域と体候補領域をＷＢ評価値の取得領域から除外している。それに対して、本実施形態では、顔領域と体候補領域に対して、他の領域よりも小さな重み付けをしてＷＢ評価値を演算している点が第１の実施形態とは異なる。
【００５２】
図６は本発明の第２の実施形態における撮像処理のフローチャートを示している。
【００５３】
図６において、ステップＳ１０１〜ステップＳ１０４、そしてステップＳ１０８の処理は第１の実施形態と同じなので説明は省略する。
【００５４】
ステップＳ１０１にて、不図示のＣＰＵが、撮像装置が顔検出モードでないと判定した場合、または、ステップＳ１０３にて、不図示のＣＰＵが、顔検出処理部２にて顔が検出されなかったと判断した場合には、処理をステップＳ２０７に進める。
【００５５】
ステップＳ２０７では、不図示のＣＰＵは、撮像画面全体をＷＢ評価値の取得領域と設定し、ＷＢ評価値を得て、処理をステップＳ１０８へ進める。
【００５６】
ステップＳ１０４にて、不図示のＣＰＵは、顔領域と所定の範囲内の輝度情報および所定の範囲内の色情報を持つ体候補領域を検出したら、処理をステップＳ２０８へ進める。
【００５７】
ステップＳ２０８では、顔領域と体候補領域から求めたＷＢ評価値と、それ以外の領域から求めたＷＢ評価値とに重み付けを行い、撮像画面全体に対してのＷＢ評価値を求める。
【００５８】
ステップＳ２０８におけるＷＢ評価値の取得領域の重み付けの具体例を図７に示す。
【００５９】
ステップＳ２０８にて、顔領域と体候補領域から求めたＷＢ評価値と、それ以外の領域から求めたＷＢ評価値との比率を１：４になるように重み付けを行う。具体的には、領域と体候補領域から求めたＷＢ評価値に係数として０．２を掛け、それ以外の領域から求めたＷＢ評価値に係数として０．８を掛け、これらの和を求める。
【００６０】
このように、重み付けとしては小さいながらも、顔領域とその顔領域と体候補領域から求めたＷＢ評価値も考慮することにより、顔検出での顔の誤検出を行ってしまった場合でもＷＢ制御に与える影響を小さくすることができる。
【００６１】
以上のように、本実施形態では、顔領域と体候補領域から求めたＷＢ評価値の重みの比率を小さくすることによって、ＷＢ評価値が肌色に引っ張られて正確なＷＢ制御を行う妨げになることを防止する。
【００６２】
（第３の実施形態）
本実施の形態の動作を図面を参照して詳細に説明する。第１の実施形態と同じ処理を行うステップには同じステップ番号が割り当てられる。
【００６３】
本実施形態は、顔領域とほぼ同一距離にある領域を体候補領域として、ＷＢ評価値を求めるための演算に用いる領域から除外している点が第１の実施形態とは異なる。
【００６４】
図７は本発明の第３の実施形態における撮像処理のフローチャートを示している。
【００６５】
図７において、ステップＳ１０１〜ステップＳ１０３、そしてステップＳ１０５、ステップＳ１０７〜ステップＳ１０８の処理は第１の実施形態と同じなので説明は省略する。
【００６６】
ステップＳ３０６では、不図示のＣＰＵは、顔領域と所定の範囲内の距離にある領域を検出し、処理をステップＳ３０８へ進める。ここで、所定の範囲とは、実際に顔領域の距離情報と、手足あるいは胴体の領域の距離情報を多数比較し、その結果から統計的に求めれた値の範囲のことである。検出された顔領域の大きさに応じてこの所定の範囲の大きさを変更することも考えられる。
【００６７】
ステップＳ１０２にて顔が複数検出された場合には、距離情報の値がそれぞれの顔領域のその値に対して所定範囲内である領域をすべて検出する。つまり、複数の顔が検出された場合には、それぞれの顔領域の距離情報に基づく体候補領域がすべて検出されることになる。
【００６８】
ステップＳ３０８では、不図示のＣＰＵは、ステップＳ３０６までの処理で検出された顔領域と、その顔領域と所定の範囲内の距離にある領域以外の領域を、ＷＢ評価値の取得領域として指定し、処理をステップＳ１０７へ進める。
【００６９】
また、顔領域と所定の範囲内の距離にある領域を検出する際には、検出された顔領域を基準として所定の範囲内に位置する近傍の領域だけを体候補領域の検出対象とすることで、検出処理を高速化できる。
【００７０】
以上のように本実施形態では、通常は撮像画面全体がＷＢ評価値の取得領域であるが、顔が検出されたときには、距離情報が顔領域の所定の範囲内となる体候補領域を検出して、顔領域と体候補領域をＷＢ評価値の取得領域から除外する。
【００７１】
そうすることによって、例えば、逆光シーン等で輝度情報や色情報が正確に得にくいときにも精度良く被写体を検出しＷＢ評価値の取得領域から除外することで、正確なＷＢ処理を行うことを可能にしている。
【００７２】
なお、上述した各実施形態の機能を実現するように各種のデバイスを動作させるように、上記各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給する。
【００７３】
そして、そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【００７４】
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになる。
【００７５】
また、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。
【００７６】
かかるプログラムコードを記憶する記憶媒体としては、例えばフロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００７７】
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけではない。
【００７８】
例えば、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）あるいは他のアプリケーションソフト等の共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれる。
【００７９】
さらに、供給されたプログラムコードはコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納される。
【００８０】
そして、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれる。
【図面の簡単な説明】
【００８１】
【図１】本発明の第１の実施形態の撮像装置のＷＢ処理を示すフローチャートである。
【図２】本発明の撮像装置の概略構成を示す図である。
【図３】ＷＢ評価値検出ブロックを示す図である。
【図４】色温度によって移り変わる白検出範囲の様子を示す図である。
【図５】ＷＢ評価値の取得領域を示した図である。
【図６】本発明の第２の実施形態の撮像装置のＷＢ処理を示すフローチャートである。
【図７】ＷＢ評価値の取得領域の重み付けの具体例を示した図である。
【図８】本発明の第３の実施形態の撮像装置のＷＢ処理を示すフローチャートである。
【符号の説明】
【００８２】
１  撮像部
２  顔検出処理部
３  露出制御部
４  ＡＦ制御回路
５  本露出制御部
６  ＷＢ制御回路
７  色信号生成回路
８  輝度信号生成回路
【図１】
2007068146.tif 000003
【図２】
2007068146.tif 000004
【図３】
2007068146.tif 000005
【図４】
2007068146.tif 000006
【図５】
2007068146.tif 000007
【図６】
2007068146.tif 000008
【図７】
2007068146.tif 000009
【図８】
2007068146.tif 000010