説明

撮像装置

【課題】 顔検出時に肌色を白と誤認識することなく、正確なホワイトバランス処理を行うこと。
【解決手段】 顔検出手段を用いて画像データに含まれる顔を検出し、顔領域の色評価値からホワイトバランスの不具合を演算し、通常ホワイトバランス演算との加重加算により所望なホワイトバランス補正係数を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はデジタルカメラやデジタルビデオカメラなどの撮像装置における画像処理方法に関し、特に顔検出を用いたホワイトバランス制御に関する。
【背景技術】
【0002】
撮像素子から出力された信号はAD変換によってデジタル化され図2のように複数のブロックに分割される。そのブロック信号はR、G、Bを含む色信号で構成されており、そのブロックの色評価値算出例として(1)式がある。
Cx[i] =(R[i]−B[i])/ Y[i] × 1024
Cy[i] =(R[i] + B[i]−G[i])/ Y[i] × 1024 …(1)
(ただし、Y[i] = R[i] + 2G[i] + B[i])
そして予め設定した白検出範囲に色評価値(Cx[i]、Cy[i])が含まれる場合は、そのブロックが白であると判定し、白検出範囲に入った色画素の積分値SumR、SumG、SumBを算出して、以下(2)式のようにホワイトバランス係数を算出する。
WBCoR = SumY × 1024 / sumR
WBCoG = SumY × 1024 / sumG ・・・ (2)
WBCoB = SumY × 1024 / sumB
ただし、SumY = (sumR + 2 × sumG + SumB) / 4
しかし、従来のホワイトバランス係数算出において以下のような欠点があった。太陽光のような光源下において、白の色評価値は図3の領域A付近に分布し、肌色の分布は領域B付近に分布する。太陽光源下における肌色の色評価値は低色光源下における白点の色評価値とほぼ同等に分布する。従って、画角に白色が少なくかつ人肌がアップのシーンでは画面の色評価値は図3の領域Bに分布する。つまり肌色を低色温度下の白色と誤判別し、人の肌を白色にしてしまうという問題があった。この問題に対する従来の対処法として被写体照度が明るい場合は外光と判断して、白検出範囲を狭めて肌色を白と誤判別しないような工夫を行っていた。しかし室内光源で低照度の高色温度蛍光灯や中色温度蛍光灯類での肌色分布は黒体放射軸の下方向にあり、肌色を白と誤判別するようなケースがあった。
【0003】
そこで、特許文献1では、顔検出回路にて検出された顔領域を、白検出の対象から外すという提案がなされている。
【特許文献1】特開2003−189325号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上述した従来のホワイトバランス補正値算出方法においては、顔検出回路において人顔を誤認識した場合や検出できなかった場合の対策が考慮されていない。そのため顔検出回路において人顔でない領域を人顔と誤検出した場合に、白検出対象領域が少なくなるため、結果として出力される色温度情報の精度が低くなるという欠点があった。また、人顔であるにも関わらず人顔と認識されない場合には、顔領域で白検出を実施してしまうため、結果としてホワイトバランス補正精度が低くなるという欠点があった。また、人顔がアップで撮影された場合、顔領域を白検出対象から除外すると、白検出を実施する被写体領域がほとんどなくなってしまい、結果としてホワイトバランス補正精度が低くなるという欠点があった。
【課題を解決するための手段】
【0005】
被写体を撮像し、得られた画像信号を処理する撮像装置であって、
撮像素子の各画素が白であるか否かを判定しホワイトバランス補正を行う第一のホワイトバランス補正手段と
前記画像信号から顔領域を検出する顔検出手段と、
撮影条件から光源を推定し前記顔検出手段の結果を用いるか否かの判別を行う判別手段を有し、
前記第一のホワイトバランス補正手段と前記顔検出手段によって出力された情報を基に、肌領域によるホワイトバランスの不具合を補正する第二のホワイトバランス補正手段を有することを特徴とする。
【発明の効果】
【0006】
本発明によれば、顔検出結果に応じて、より安定したホワイトバランス補正を行うことができる。
【発明を実施するための最良の形態】
【0007】
次に、本発明の詳細を実施例の記述に従って説明する。
【0008】
図1は、本実施例の概略図である。以下その図に従って実施形態を説明していく。
【0009】
図1において、101はCCDやCMOS等からなる固体撮像素子であり、その表面は例えばベイヤー配列のようなRGBカラーフィルタにより覆われ、カラー撮影が可能な構成となっている。114はメモリ102に記憶された画像信号を用いて顔を検出する顔検出部である。顔検出方法には多数あるが、一般的にニューラルネットワークに代表される学習を用いた方法、物理的な形状の特徴のある部位を画像領域から抽出する、パターン認識を用いた手法、肌の色や目の形といった画像特徴量を検出し統計的解析を用いた手法など、多数の手法がある。
【0010】
現在製品として提案されているものとしては、ウェーブレット変換と画像特徴量を利用して顔検出する方法などや、テンプレートマッチング等を組み合わせた方法などがある。
【0011】
ここではパターン認識の一つである、テンプレートマッチングについて説明する。パターン認識とは、観測されたパターンをあらかじめ定められた概念(クラス)の一つに対応させる処理である。図4は、図1における顔情報検出回路によって実行されるパターン認識処理のフローチャートである。本説明では、並行して図5を参照する。
【0012】
図4において、メモリ102から取得した画像データ603を前処理し(ステップS501)、前処理された顔の画像データから特徴的部分のパターンを抽出し(ステップS502)、抽出されたパターンをテンプレート(標準パターン)601に対応させる(テンプレートマッチング)ことにより、認識パターンを取得して(ステップS503)、取得された認識パターンを出力して(ステップS504)、パターン認識処理を終了する。
【0013】
上記テンプレートマッチングは、以下のように行われる。
【0014】
図5において、まず、テンプレート601の中心点602を取得した画像データ603のある座標点(i,j)に置き、この中心点602を走査しながら、テンプレート601と画像データ603との重なり部分の類似度を計算して、類似度が最大になる位置を決定する。顔の画像データ603から抽出されたパターンを、例えば目や耳等の形状を含むテンプレート601にマッチングさせることにより、目の位置情報や顔領域(顔座標)を取得することができる。
【0015】
CPU115では、顔検出部114から送られた画像信号に基づいて、顔が検出されていれば、顔が最適な明るさになるようなシャッター速度、絞り値を計算し、また顔に合焦するようにフォーカスレンズの駆動量を計算する。一方、顔が検出されていなければCPU115は画像全体が明るさになるようなシャッター速度、絞り値を計算する共に、合焦領域内にある被写体に合焦するようにフォーカスレンズの駆動量を計算する。CPU115で計算された露出値(シャッター速度、絞り値)およびフォーカスレンズの駆動量は制御回路113に送られ、各値に基づいてそれぞれ制御される。103はホワイトバランス制御部であり、メモリ102に記憶された画像信号および顔検出部114から得られる顔情報に基づいてWB補正値を算出し、算出したWB補正値を用いて、メモリ102に記憶された画像信号に対してWB補正を行う。なお、このホワイトバランス制御部103の詳細構成およびWB補正値の算出方法については、後述する。
【0016】
104はWB制御部103によりWB補正された画像信号が最適な色で再現されるように色ゲインをかけて色差信号R-Y、B-Yに変換する色マトリックス回路、105は色差信号R-Y、B-Yの帯域を制限するローパスフィルタ(LPF)回路、106はLPF回路105で帯域制限された画像信号の内、飽和部分の偽色信号を抑圧するCSUP(Chroma Supress)回路である。一方、WB制御部103によりWB補正された画像信号は輝度信号(Y)生成回路111にも出力されて輝度信号Yが生成され、生成された輝度信号Yに対してエッジ強調回路112にてエッジ強調処理が施される。
【0017】
CSUP回路106から出力される色差信号R-Y、B-Yと、エッジ強調回路112から出力される輝度信号Yは、RGB変換回路107にてRGB信号に変換され、ガンマ補正回路108にて階調補正が施される。その後、色輝度変換回路109にてYUV信号に変換され、さらに圧縮回路110にて圧縮されて、外部記録媒体または内部記録媒体に画像信号として記録される。
【0018】
まず、最初に第一のホワイトバランス補正手段の算出方法について図6を用いて説明する。まず、メモリ102に記憶された画像信号を読み出し、その画面を図2のような任意のm個のブロックに分割する(ステップS101)。そして、各ブロック(1〜m)毎に、画素値を各色に加算平均して色平均値(R[i]、G[i]、B[i]、)を算出し、式(1)を用いて色評価値(Cx[i]、Cy[i])を算出する(ステップS102)。
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]
次に、ステップS102で算出したi番目のブロックの色評価値(Cx[i]、Cy[i])が、図3に示す予め設定した白検出範囲301に含まれるかどうかを判断する(ステップS103)。
【0019】
白検出範囲301は、予め異なる光源下で白を撮影し、算出した色評価値をプロットしたものである。図3におけるx座標(Cx)の負方向が高色温度被写体の白を撮影したときの色評価値、正方向が低色温度被写体の白を撮影したときの色評価値である。またy座標(Cy)は光源の緑成分の度合いを意味しており、負方向になるにつれG成分が大きくなり、つまり蛍光灯であることを示している。算出した色評価値(Cx[i]、Cy[i])がこの白検出範囲301に含まれる場合には(ステップS103でYES)そのブロックが白色であると判断して、そのブロックの色平均値(R[i]、G[i]、B[i])を積算していき(ステップS104)、含まれない場合には加算せずにステップS105に進む。このステップS103及びステップS104の処理は、式(3)により表すことができる。
【0020】
【数1】

ここで、式(3)において、色評価値(Cx[i]、Cy[i])が白検出範囲(図3の301)に含まれる場合はSw[i]を1に、含まれない場合にはSw[i]を0とすることにより、ステップS103の判断により色評価値(R[i]、G[i]、B[i])加算を行うか、行わないかの処理を実質的に行っている。
【0021】
ステップS105では、すべてのブロックについて上記処理を行ったかどうかを判断し、未処理のブロックがあればステップS102に戻って上記処理を繰り返し、すべてのブロックの処理が終了していればステップS106に進む。
【0022】
ステップ106では、得られた色評価値の積分値(sumR、SumG、SumB)から、以下の式(4)式を用いて、第1のWB補正値(WBCol_R、WBCol_G、WBCol_B)を算出する。
WBCol_R = sumY × 1024 / sumR
WBCol_G = sumY × 1024 / sumG …(4)
WBCol_B = sumY × 1024 / sumB
ただし、sumY = (sumR + 2 × sumG + sumB)/ 4
次に、第2のWB補正値の算出方法について図7を参照して説明する。本実施例における第2のWB補正値算出方法は、第1のWB補正値と検出された顔領域の色評価値を後述する条件によって加重加算し、顔領域によるWBの不具合を抑圧することである。
【0023】
まず、S111で明るさ判定を行い、明るさが閾値以上であるなら屋外光源であると判断して、顔検出部によって得られる検出結果を使用しないでWB演算を行う。屋外光源であると判断した場合は、顔領域を白として認識しないため最終WB補正係数は前述した第1のWB補正値を最終WB補正係数とする(S119)。明るさが閾値以下である場合は、顔検出部によって顔が検出されたか否かを判断し(S112)、顔が検出されない場合は第1のWB補正値を使用する(S119)。顔があると判断した場合は、S113で領域内の画素値をRGBの各色毎に加算平均して人顔領域の色平均値を算出する。S113で算出された肌領域の色平均値(Cx、Cy)が白検出範囲内でなければ第1のWB補正値を使用する。S114で肌領域が白検出範囲と判断された場合は、S115において顔領域のサイズとS116で求められた第1の補正値、肌領域の色評価値から不具合さを推定し、第1のWB補正値からの補正値を決定する(S117)。その補正量は、検出された顔のサイズによる重み付けと(α)、第1のWB補正値と肌領域の色評価値との距離情報による重み付け(β)(図8参照)によって決定される。
【0024】
つまり、顔領域によるホワイトバランスの不具合さを解消し得る補正量(ΔHosei)は、以下のように求められる(図9参照)。
ΔHosei=α×β×K
(なお、Kは補正量定数)
以上のことを実現することにより、顔が画面内に存在するときのホワイトバランス不具合を解消することが可能になる。また、顔検出回路において人顔を誤認識した場合においても、第1のWB補正結果と顔検出領域の色評価値から、ホワイトバランス補正結果に不具合を引き起こしているかを判断できるため、結果として所望なホワイトバランス補正係数を得ることが可能になる。
【図面の簡単な説明】
【0025】
【図1】本発明の実施形態における顔検出機能を備えた撮像装置のブロック図。
【図2】画面を複数ブロックに分割した例を示す図。
【図3】白検出範囲を示す図。
【図4】図1における顔検出部によって実行されるパターン認識処理のフローチャート。
【図5】図4のパターン認識処理におけるテンプレートマッチングの例。
【図6】第1のWB補正算出処理を示すフローチャート。
【図7】第2のWB補正算出処理を示すフローチャート。
【図8】第2のWB補正算出の際に用いるサイズ、距離と重みの関係を示した図。
【図9】第2のWB補正算出の際に補正量を加える概念図。
【符号の説明】
【0026】
101 CCD撮像素子
102 メモリ
103 WB回路
104 色変換MTX回路
105 LPF回路
106 CSUP回路
107 RGB変換回路
108 ガンマ補正回路
109 色輝度変換回路
110 圧縮回路
111 Y生成回路
112 エッジ強調回路
113 制御回路
114 顔検出部
115 CPU

【特許請求の範囲】
【請求項1】
被写体を撮像し、得られた画像信号を処理する撮像装置であって、
撮像素子の各画素が白であるか否かを判定しホワイトバランス補正を行う第一のホワイトバランス補正手段と
前記画像信号から顔領域を検出する顔検出手段と、
撮影条件から光源を推定し前記顔検出手段の結果を用いるか否かの判別を行う判別手段を有し、
前記第一のホワイトバランス補正手段と前記顔検出手段によって出力された情報を基に、肌領域によるホワイトバランスの不具合を補正する第二のホワイトバランス補正手段を有することを特徴とする撮像装置。
【請求項2】
前記顔検出手段は被写体の目の位置情報を検出することを特徴とする請求項1に記載の撮像装置。
【請求項3】
前記顔検出手段では顔領域内の画素値を加算平均して色評価値を出力することを特徴とする請求項1に記載の撮像装置。
【請求項4】
前記推測手段は撮影時の明るさと前記白検出手段によって得られたホワイトバランス補正係数情報を基に推測することを特徴とする請求項1に記載の撮像装置。
【請求項5】
前記第二のホワイトバランス補正手段では、前記第一のホワイトバランス補正手段と顔領域の色評価値をもとにホワイトバランスの不具合を推測し加重加算することによってホワイトバランス補正する請求項1に記載の撮像装置。
【請求項6】
前記第二のホワイトバランス補正では顔の大きさによって補正量が可変になることを特徴とする請求項5に記載の撮像装置。
【請求項7】
前記第二のホワイトバランス補正では前記第一のホワイトバランス補正結果と前記顔領域の特徴量の差分値によって補正量が可変になることを特徴とする請求項5に記載の撮像装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2007−312099(P2007−312099A)
【公開日】平成19年11月29日(2007.11.29)
【国際特許分類】
【出願番号】特願2006−139082(P2006−139082)
【出願日】平成18年5月18日(2006.5.18)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】