説明

画像処理装置、撮像装置及び画像処理方法

【課題】人物撮影において背景が単一の有彩色等の場合であっても、正確なホワイトバランス調整が行えるようにする。
【解決手段】画像処理装置は、画像データに含まれる顔内の特定部分の位置を検出する検出手段1010と、画像データのうち指定領域の色データを積分して該指定領域での第1の色比を求める第1の積分手段1012と、画像データを複数の領域に分割し、各分割領域の色データを積分して該各分割領域の第2の色比を求める第2の積分手段1011とを有する。ホワイトバランス評価手段1011は、該指定領域を、該特定部分の位置に基づいて決定し、複数の分割領域のうち第1の色比と第2の色比との差が第1の値以下となる分割領域を肌領域と判定する。さらに、肌領域と判定された分割領域の第2の色比に基づいてホワイトバランス評価値を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人物が撮影されたカラー画像データのホワイトバランス処理を行う画像処理装置及びこれを備えたデジタルカメラ等の撮像装置に関する。
【背景技術】
【0002】
複数の色フィルタを持つ撮像素子を用いて撮像されたカラー画像データを出力する場合には、該画像データに対してホワイトバランス調整を行うことが多い。ホワイトバランス調整は、画像中の光源の色温度を判別し、光源が無彩色となるように画像データの色を調整することで、被写体の本来の色(白色)を忠実に再現した画像を得るための処理である。
【0003】
ホワイトバランス調整において光源の色温度を判別する方法としては、測色用素子を用いて光源の色温度を判別する方法や、撮影画像中の無彩色部分を探索してその部分の色温度を判別する方法などがある。ただし、人物を撮影した場合は、人物の顔の色と、無彩色部分に低色温度の光源からの光が当たった場合に検出される色温度とが非常に近いために、人物の顔の色から光源の色温度が誤検出されてしまうという問題がある。
【0004】
このため、特許文献1では、画像中における人物の顔の領域を検出して、該顔領域をホワイトバランス評価値の取得エリアから除外し、他の領域で取得したホワイトバランス評価値からホワイトバランス調整値を演算する方法が開示されている。これにより、顔の色に影響されない正確なホワイトバランス調整を行うことができる。
【0005】
顔検出の方法には、ニューラルネットワークに代表される学習を用いた手法がある。また、目、鼻及び口といった特徴的な形状を有する部位を画像領域からテンプレートマッチングを用いて探し出し、類似度が高ければ顔とみなす方法もある。
【特許文献1】特開2003−189325号公報(段落0009〜0011、図2〜5等)
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上記特許文献1にて開示されたホワイトバランス調整方法では、人物撮影において、背景が単一の有彩色である場合等の一定の条件下では、正確なホワイトバランス調整が行われない可能性がある。
【0007】
本発明は、人物撮影において背景が単一の有彩色等の場合であっても、正確なホワイトバランス調整が行えるようにした画像処理装置、撮像装置及び画像処理方法を提供することを目的の1つとしている。
【課題を解決するための手段】
【0008】
本発明の一側面としての画像処理装置は、カラー画像データに対してホワイトバランス評価を行うホワイトバランス評価手段と、画像データに含まれる顔内の特定部分の位置を検出する検出手段と、画像データのうち指定領域の色データを積分して該指定領域での第1の色比を求める第1の積分手段と、画像データを複数の領域に分割し、各分割領域の色データを積分して該各分割領域の第2の色比を求める第2の積分手段とを有する。そして、ホワイトバランス評価手段は、該指定領域を、検出手段により検出された特定部分の位置に基づいて決定し、複数の分割領域のうち第1の色比と第2の色比との差が第1の値以下となる分割領域を肌領域と判定する。さらに、肌領域と判定された分割領域の第2の色比に基づいてホワイトバランス評価値を算出することを特徴とする。
【0009】
なお、上記画像処理装置を備えた撮像装置も、本発明の他の側面を構成する。
【0010】
また、本発明の他の側面としての画像処理方法は、カラー画像データに対してホワイトバランス評価を行うホワイトバランス評価ステップと、画像データに含まれる顔内の特定部分の位置を検出する検出ステップと、画像データのうち指定領域の色データを積分して該指定領域の第1の色比を求める第1の積分ステップと、画像データを複数の領域に分割し、各分割領域の色データを積分して該各分割領域の第2の色比を求める第2の積分ステップとを有する。そして、ホワイトバランス評価ステップにおいて、該指定領域を、検出手段により検出された特定部分の位置に基づいて決定し、複数の分割領域のうち第1の色比と第2の色比との差が第1の値以下となる分割領域を肌領域と判定する。さらに、肌領域と判定された分割領域の第2の色比に基づいてホワイトバランス評価値を算出することを特徴とする。
【発明の効果】
【0011】
本発明によれば、人物撮影において背景が単一の有彩色等の場合であっても、顔検出技術を利用した正確なホワイトバランス調整を行うことができる。
【発明を実施するための最良の形態】
【0012】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例1】
【0013】
図1には、本発明の実施例1であるデジタルスチルカメラ又はビデオカメラ等の撮像装置の構成を示す。
【0014】
図1において、1030は撮影レンズであり、撮像装置に一体に設けられていてもよいし、交換レンズであってもよい。1001は、CCDセンサ又はCMOSセンサ等の撮像素子1001aとその駆動回路やゲイン回路等を含む撮像部である。撮像素子1001aは、撮影レンズ1030によって形成された光学像を電気信号に変換する。撮像素子1001aの各画素は、図4に示すようにベイヤー(Bayer)方式に配列されたR,G1,G2,Bのカラーフィルタを有する。
【0015】
撮像部1001から出力されたアナログ出力信号は、A/D変換器1002によってデジタル信号に変換され、カラー画像データ(撮像データ)として出力される。
【0016】
タイミング発生回路1003は、撮像部1001、A/D変換器1002及びD/A変換器1008にクロック制御信号や制御信号を供給する。該タイミング発生回路1003は、メモリコントローラ1004により制御される。
【0017】
メモリコントローラ1004は、A/D変換器1002、タイミング発生回路1003、バッファメモリ1005、D/A変換器1008、顔検出処理部1010、ホワイトバランス評価部1011、現像処理部1012及び撮像データ積分部1013を制御する。
【0018】
A/D変換器1002でデジタル信号に変換された画像データは、メモリコントローラ1004を介して、バッファメモリ1005に書き込まれる。
【0019】
顔検出処理部1010は、バッファメモリ1005(又はメモリコントローラ1004)からの画像データに対して、人物の顔が存在するか否かを公知の顔検出方法にて判定し、顔が存在すれば顔領域を検出する。
【0020】
代表的な顔検出方法としては、ニューラルネットワークに代表される学習を用いた手法や、目、鼻及び口等の特徴的な形状を有する部位を画像領域からテンプレートマッチングを用いて探し出し、類似度が高ければ顔とみなす手法等、多数ある。本実施例では、これらの手法を単独で又は組み合わせて顔領域を検出する。
【0021】
ホワイトバランス評価部1011は、バッファメモリ1005(又はメモリコントローラ1004)からの1画面に相当する画像データを、図3に示すように縦16分割、横16分割の計256領域に分割する。そして、各分割領域における色毎に色データ(画素値)の積分を行う。ただし、本実施例にいう色毎とは、R,G1,G2,Bのカラーフィルタ毎のという意味である。このように、ホワイトバランス評価部1011は、第2の積分手段である領域積分手段としても機能する。
【0022】
現像処理部1012は、バッファメモリ1005からの画像データに対して、公知のホワイトバランス調整処理、画素補間処理、階調処理及び色変換処理などを施す。
【0023】
第1の積分手段である撮像データ積分部1013は、バッファメモリ1005(又はメモリコントローラ1004)からの1画面に相当する画像データのうち指定された領域について色毎(カラーフィルタ毎)に色データの積分を行う。
【0024】
外部記録媒体1007は、半導体メモリ、光ディスク、磁気テープ等により構成されている。バッファメモリ1005に蓄えられた画像データは、メモリコントローラ1004及びインターフェース1006を介して外部記録媒体1007に書き込まれる。
【0025】
画像表示部1009は、LCD等により構成され、メモリコントローラ1004からD/A変換器118を介して送られてきた画像データを表示する。
【0026】
システム制御回路1020は、本実施例の撮像装置全体の制御を司る。具体的には、上述したメモリコントローラ1004、フラッシュ調光制御を行う調光制御回路1021、撮影レンズ1030のオートフォーカス制御を行うAF制御回路1022に制御信号を出力する。さらに、撮像部1001におけるメカニカルシャッタや電子シャッタ及び撮影レンズ1030内の絞りを制御する露出制御回路1023にも制御信号を出力する。
【0027】
本実施例の撮像装置は、システム制御回路1020、顔検出処理部1010、ホワイトバランス評価部1011、現像処理部1012及び撮像データ積分部1013等により構成される画像処理装置が内蔵された撮像装置ということができる。
【0028】
図2には、本実施例の顔検出を用いたホワイトバランス評価処理のフローチャートを示す。この処理は、システム制御回路1020、顔検出処理部1010、ホワイトバランス評価部1011及び撮像データ積分部1013により、システム制御回路1020の内部メモリ(図示せず)に格納されたコンピュータプログラムに従って実行される。
【0029】
ステップS101では、システム制御回路1020は、バッファメモリ1005からホワイトバランス評価部1011に画像データを転送させる。そして、ホワイトバランス評価部1011に、ホワイトバランス評価値を取得させる。
【0030】
ホワイトバランス評価値の演算は、以下のように行われる。図3Aに示すように、本実施例では、画像データを縦16、横16の計256領域に分割し(以下、各領域を分割ホワイトバランス評価領域という)、各分割ホワイトバランス評価領域における色毎の色データの積分結果を得る。各分割ホワイトバランス評価領域(i,j)でのデータ積分結果は、
(SumR(i,j)、SumG1(i,j)、SumG2(i,j)、SumB(i,j)) ただし、i,j= 0〜15
の形で表現される。これが各分割ホワイトバランス評価領域(i,j)でのホワイトバランス評価値となる。
【0031】
また、バッファメモリ1005からから出力された画像データは、顔検出処理部1010にも送られ、ここで公知の顔検出処理が行われる。
【0032】
次にステップS102では、システム制御回路1020は、顔検出処理部1010において顔が検出されか否かを判断する。顔が検出された場合は、ステップS103に進み、顔が検出されない場合はステップS105に進む。
【0033】
ここで、図3A及び図3Bを用いて、ステップS103及び104においてホワイトバランス評価部1011で行われる、顔が検出された場合の処理について説明する。顔が検出された場合には、ステップS103において、顔検出処理部1010は、その顔内の両目の位置に対応する座標(図3A中のA1,A2)を判別する。そして、この両目の座標から確実に肌の領域であると推定できる顔内の領域(以下、中心肌領域という)、例えば目と目の間の領域(図3A中のA3)の位置(座標)を求め、該領域の座標を撮像データ積分部1013に出力する。ただし、顔内の両目以外の特定部分の位置を求め、その位置から中心肌領域を設定してもよい。
【0034】
撮像データ積分部1013は、中心肌領域の座標を中心又は重心とした指定領域において、バッファメモリ1005に保存されている画像データに対して色毎に色データを積分する。これにより、得られた積分データを、以下、肌RAWデータという。
【0035】
ここで撮像データ積分部1013で積分により肌RAWデータを得る指定領域は、例えば20x20画素程度の領域とするのがよい。これにより、バッファメモリ1005の全データをロードして演算する場合に比べて、大幅に演算時間を短縮することができる。
【0036】
撮像データ積分部1013により得られた肌RAWデータ(Rraw、G1raw、G2raw、Braw)から得られる肌RAWデータ色比、すなわち第1の色比(Rgain,Bgain)は、
Rgain = Rraw / (( G1raw + G2raw) / 2)
Bgain = Braw / (( G1raw + G2raw) / 2)
となる。この肌RAWデータ色比(Rgain,Bgain)は、上記式から分かるように、肌RAWデータにおけるR及びBデータ積分値に対するGデータ積分値(G1及びG2データ積分値の平均値)の比を示す。
【0037】
また、各分割ホワイトバランス評価領域(i,j)の色比、すなわち第2の色比としての分割領域色比(SumRgain(i,j)、SumBgain(i,j))は、
SumRgain(i,j) = SumR(i,j) / (( SumG1(i,j) + SumG2(i,j)) / 2)
SumBgain(i,j) = SumB(i,j) / (( SumG1(i,j) + SumG2(i,j)) / 2)
となる。この分割領域色比(SumRgain(i,j)、SumBgain(i,j))は、上記式から分かるように、各分割ホワイトバランス評価領域におけるR及びBデータ積分値に対するGデータ積分値(G1及びG2データ積分値の平均値)の比を示す。
【0038】
次に、肌RAWデータ色比(Rgain,Bgain)と、各分割領域色比(SumRgain(i,j)、SumBgain(i,j))との差分値(絶対値)を以下のように算出する。
【0039】
ΔRGain(i,j) = | Rgain - SumRgain(i,j) |
ΔBGain(i,j) = | Bgain - SumBgain(i,j) |。
【0040】
そして、上記色比の差分値が第1の所定値(ΔRmax、ΔBmax)以下の場合、つまり、
ΔRGain(i,j) ≦ΔRmax
で、かつ、
ΔBGain(i,j) ≦ΔBmax
を満たす領域(i,j) を肌領域とみなすことができる。図3Bに、肌領域として検出された領域をグレーで示す。
【0041】
最後に、肌領域として検出された領域における分割ホワイトバランス評価領域のホワイトバランス評価値(SumR(i,j)、SumG1(i,j)、SumG2(i,j)、SumB(i,j))の平均値を演算することで肌領域のホワイトバランス評価値が求まる。このとき、影が生じやすい鼻の真下の部位や、赤味がかりやすい頬に相当する部位の重み付けを小さくして平均値を求めるようにしてもよい。また、ホワイトバランス評価値の代わりに肌領域として検出された領域における分割領域色比(SumRgain(i,j)、SumBgain(i,j))の平均値を演算してもよい。
【0042】
このように、本実施例では、256の分割ホワイトバランス評価領域の中から肌領域のみを抽出し、該肌領域のホワイトバランス評価値を求める。これにより、肌RAWデータ色比(Rgain,Bgain)のみ用いてホワイトバランス評価値を演算する場合に比較して、より幅広い領域で肌色検出を行うことができる。したがって、演算のばらつきを減らして安定した肌色検出を行うことができる。
【0043】
また、前述したように肌RAWデータの演算のためにバッファメモリ1005からロードされる画像データを20x20画素等に相当する小さなデータとすることで、画像データ全体をロードして演算する場合に比べて、演算時間を大幅に短縮することができる。したがって、短い演算時間で、精度の高い肌色検出を行うことができる。
【0044】
次にステップS105では、ホワイトバランス評価部1011は、ステップS101で求めたホワイトバランス評価値とステップS104で求めた肌領域のホワイトバランス評価値とに基づいて、ホワイトバランス調整値としてのホワイトバランス係数を演算する。ここでは、例えば、肌領域内の画像部分が所定の肌色に対応した色相及び彩度となるよう画像データを補正するためのホワイトバランス係数を設定する。
【0045】
ホワイトバランス係数の演算方法の一例を挙げる。ステップS104で求めた肌領域のホワイトバランス評価値から求められる色比の逆数をそのままホワイトバランス係数として設定すると、肌色が白くなってしまう。そこで、補正後の肌領域の色比が所定の肌色に対応した色相及び彩度となるようなゲインを予め設定しておく。つまり、肌領域のホワイトバランス評価値から求められる色比(SkinRGain、SkinBGain)、予め設定されたゲイン(ConstRGain、ConstBGain)、および、補正後の肌領域の色比(AfterSkinRGain、AfterSkinBGain)の関係は次式となる。
【0046】
AfterSkinRGain = SkinRGain x ConstRGain
AfterSkinBGain = SkinBGain x ConstBGain
この補正後の肌領域の色比(AfterSkinRGain,AfterSkinBGain)の逆数をホワイトバランス係数として設定する。
【0047】
またホワイトバランス係数の演算方法は上記に限られるものではなく、例えば肌領域が小さい場合には、ステップS101で得られた各分割ホワイトバランス評価領域(i,j)でのホワイトバランス評価値を加味して演算してもよい。
【0048】
こうして算出されたホワイトバランス係数は、現像処理部1012に送られる。現像処理部1012は、ホワイトバランス係数を用いて、バッファメモリ1005からの画像データに対してホワイトバランス調整処理を行う。
【0049】
上記説明したように、本実施例によれば、顔検出技術を利用して、オートホワイトバランス処理の精度を向上させることができる。
【0050】
なお、本実施例では、画像データを256分割してホワイトバランス評価値の演算を行う場合について説明したが、分割数はこれに限られない。また、本実施例では、撮像データ積分部1013において肌RAWデータを求めるために積分処理を行う指定領域を20x20画素に設定したが、本発明にいう指定領域はこれに限られない。演算を高速で行えるのであれば、指定領域を20x20画素の領域より大きい領域に設定してもよい。また、本実施例では、肌RAWデータ色比(Rgain,Bgain)と分割領域色比(SumRgain(i,j)、SumBgain(i,j))との比較を256領域について行う場合について説明したが、本発明はこれら限られない。すなわち、顔検出処理部1010から出力される顔領域の大きさや顔領域の位置に応じて、その顔領域の周辺のブロックのみを比較対象としてもよい。この場合、比較演算に要する時間を短縮することができる。
【0051】
さらに、本実施例では、指定領域と分割ホワイトバランス評価領域とで色比の比較のみを行う場合について説明したが、色比の比較に加えて、輝度の比較を追加してもよい。
【実施例2】
【0052】
実施例1では撮像装置について説明したが、本発明におけるホワイトバランス評価処理は、画像処理装置としてのパーソナルコンピュータにインストールされたコンピュータプログラムによって行ってもよい。
【0053】
図5には、本実施例の画像処理装置を示している。図5において、2001は画像処理装置(パーソナルコンピュータ)である。2002はデジタルスチルカメラ又はビデオカメラ等の撮像装置である。この撮像装置2002の撮影により生成された画像データ(実施例1におけるバッファメモリ1005からの画像データに相当する)は、半導体メモリや光ディスク等の記録媒体2003を介しては画像処理装置2001に入力される。また、撮像装置2002から有線又は無線通信Cによって画像処理装置2001に画像データを転送してもよい。
【0054】
画像処理装置2001は、コンピュータプログラムによって、少なくとも実施例1で説明したシステム制御回路1020、顔検出処理部1010、ホワイトバランス評価部1011及び撮像データ積分部1013として機能する。すなわち、画像処理装置2001は、図2に示したホワイトバランス評価処理を実行し、少なくともホワイトバランス係数を算出する。
【0055】
画像処理装置2001は、このホワイトバランス係数を用いて、入力された画像データに対するホワイトバランス調整処理を行ってもよい。すなわち、実施例1で説明した現像処理部1012として機能してもよい。また、ホワイトバランス係数を記録媒体2003や通信Cを介して画像データに対応付けて撮像装置に返送し、撮像装置での画像データのホワイトバランス調整処理に用いられるようにしてもよい。
【図面の簡単な説明】
【0056】
【図1】本発明の実施例1である撮像装置の構成を示すブロック図。
【図2】実施例1の撮像装置で行われるホワイトバランス評価処理の手順を示すフローチャート。
【図3A】実施例1で行われる肌領域の検出方法を説明する図。
【図3B】実施例1で検出された肌領域の例を示す図。
【図4】実施例1の撮像装置で用いられる撮像素子のカラーフィルタ配置を説明する図。
【図5】本発明の実施例2である画像処理装置の構成を示すブロック図。
【符号の説明】
【0057】
1001 撮像部
1004 メモリコントローラ
1005 バッファメモリ
1010 顔検出処理部
1011 ホワイトバランス評価部
1012 現像処理部
1013 撮像データ積分部
2001 画像処理装置


【特許請求の範囲】
【請求項1】
カラー画像データに対してホワイトバランス評価を行うホワイトバランス評価手段と、
前記画像データに含まれる顔内の特定部分の位置を検出する検出手段と、
前記画像データのうち指定領域の色データを積分して該指定領域での第1の色比を求める第1の積分手段と、
前記画像データを複数の領域に分割し、各分割領域の色データを積分して該各分割領域の第2の色比を求める第2の積分手段とを有し、
前記ホワイトバランス評価手段は、
前記指定領域を、前記検出手段により検出された前記特定部分の位置に基づいて決定し、
前記複数の分割領域のうち、前記第1の色比と前記第2の色比との差が第1の値以下となる分割領域を肌領域と判定し、
前記肌領域と判定された分割領域の前記第2の色比に基づいてホワイトバランス評価値を算出することを特徴とする画像処理装置。
【請求項2】
前記特定部分は、両目であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記ホワイトバランス評価値に基づいて、前記画像データに対するホワイトバランス調整を行うホワイトバランス調整手段を有することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記第1の色比は、前記指定領域における赤データの積分値及び青データの積分値のそれぞれに対する緑データの積分値の比であることを特徴とする請求項1から3のいずれか1つに記載の画像処理装置。
【請求項5】
前記第2の色比は、前記分割領域における赤データの積分値及び青データの積分値のそれぞれに対する緑データの積分値の比であることを特徴とする請求項1から4のいずれか1つに記載の画像処理装置。
【請求項6】
前記第2の積分手段は、前記第2の色比を求める分割領域の数を、前記検出手段によって得られる顔の大きさ及び顔の位置のうち少なくとも1つに基づいて決定することを特徴とする請求項1から5のいずれか1つに記載の画像処理装置。
【請求項7】
被写体像を光電変換する撮像素子と、
該撮像素子からの出力に基づいてカラー画像データを生成する画像生成手段と、
請求項1から6のいずれか1つに記載の画像処理装置とを有することを特徴とする撮像装置。
【請求項8】
カラー画像データに対してホワイトバランス評価を行うホワイトバランス評価ステップと、
前記画像データに含まれる顔内の特定部分の位置を検出する検出ステップと、
前記画像データのうち指定領域の色データを積分して該指定領域の第1の色比を求める第1の積分ステップと、
前記画像データを複数の領域に分割し、各分割領域の色データを積分して該各分割領域の第2の色比を求める第2の積分ステップとを有し、
前記ホワイトバランス評価ステップにおいて、
前記指定領域を、前記検出手段により検出された前記特定部分の位置に基づいて決定し、
前記複数の分割領域のうち、前記第1の色比と前記第2の色比との差が第1の値以下となる分割領域を肌領域と判定し、
前記肌領域と判定された分割領域の前記第2の色比に基づいてホワイトバランス評価値を算出することを特徴とする画像処理方法。


【図3A】
image rotate

【図3B】
image rotate

【図4】
image rotate

【図1】
image rotate

【図2】
image rotate

【図5】
image rotate


【公開番号】特開2008−42694(P2008−42694A)
【公開日】平成20年2月21日(2008.2.21)
【国際特許分類】
【出願番号】特願2006−216373(P2006−216373)
【出願日】平成18年8月9日(2006.8.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】