(57)【特許請求の範囲】
【請求項１】
ストロボ発光時に撮影された画像データに基づいて第１のホワイトバランス補正値を算出するとともに、ストロボ非発光時に撮影された画像データに基づいて第２のホワイトバランス補正値を算出する補正値算出手段と、
前記第１のホワイトバランス補正値と前記第２のホワイトバランス補正値との色温度の差分を算出する差分算出手段と、
被写体及び撮像装置のうちの少なくも何れか一方の動き量を算出する動き量算出手段と、
前記色温度の差分及び前記動き量のうちの少なくとも何れか一方に基づいて、前記第１のホワイトバランス補正値及び前記第２のホワイトバランス補正値を補正する補正手段と、
前記補正手段により補正された前記第１のホワイトバランス補正値に基づいて、前記ストロボ発光時に撮影された画像データから第１の画像データを現像するとともに、前記補正手段により補正された前記第２のホワイトバランス補正値に基づいて、前記ストロボ非発光時に撮影された画像データから第２の画像データを現像する現像手段と、
前記ストロボ非発光時に撮影された画像データの輝度値と前記ストロボ発光時に撮影された画像データの輝度値とに基づいて、外光の輝度成分とストロボ光の輝度成分とを算出する成分算出手段と、
前記外光の輝度成分と前記ストロボ光の輝度成分とに基づいて、前記第１の画像データと前記第２の画像データとの合成比率を算出する合成比率算出手段と、
前記合成比率に従って、前記第１の画像データと前記第２の画像データとを合成する合成手段とを有することを特徴とする画像処理装置。
【請求項２】
前記合成比率算出手段は、ブロック毎の前記外光の輝度成分と前記ストロボ光の輝度成分とに基づいて、前記第１の画像データと前記第２の画像データとの合成比率をブロック毎に算出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記合成比率算出手段は、画素補間処理により、ブロック毎の合成比率から画素毎の合成比率を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記合成手段は、前記ストロボ発光時に撮影された画像データにおける各ブロックの輝度値に応じて、該当するブロックの合成処理を実行するか否かを制御することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記補正値算出手段は、光源に対して任意の色味を残すように前記第２のホワイトバランス補正値を算出することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
動き量算出手段は、慣性センサによる前記撮像装置の動きに関する検知結果と、前記ストロボ発光時に撮影された画像データ及び前記ストロボ非発光時に撮影された画像データに基づく前記被写体の動きに関する解析結果とのうちの少なくとも何れか一方に基づいて、前記撮像装置及び前記被写体のうちの少なくとも何れか一方の前記動き量を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記補正手段は、前記第１のホワイトバランス補正値と前記第２のホワイトバランス補正値とを近付ける方向に補正するか、又は、前記第１のホワイトバランス補正値と前記第２のホワイトバランス補正値とのうちの何れか一方のホワイトバランス補正値を固定し、当該ホワイトバランス補正値に対して他方のホワイトバランス補正値を近付ける方向に補正することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
画像処理装置によって実行される画像処理方法であって、
ストロボ発光時に撮影された画像データに基づいて第１のホワイトバランス補正値を算出するとともに、ストロボ非発光時に撮影された画像データに基づいて第２のホワイトバランス補正値を算出する補正値算出ステップと、
前記第１のホワイトバランス補正値と前記第２のホワイトバランス補正値との色温度の差分を算出する差分算出ステップと、
被写体及び撮像装置のうちの少なくも何れか一方の動き量を算出する動き量算出ステップと、
前記色温度の差分及び前記動き量のうちの少なくとも何れか一方に基づいて、前記第１のホワイトバランス補正値及び前記第２のホワイトバランス補正値を補正する補正ステップと、
前記補正ステップにより補正された前記第１のホワイトバランス補正値に基づいて、前記ストロボ発光時に撮影された画像データから第１の画像データを現像するとともに、前記補正ステップにより補正された前記第２のホワイトバランス補正値に基づいて、前記ストロボ非発光時に撮影された画像データから第２の画像データを現像する現像ステップと、
前記ストロボ非発光時に撮影された画像データの輝度値と前記ストロボ発光時に撮影された画像データの輝度値とに基づいて、外光の輝度成分とストロボ光の輝度成分とを算出する成分算出ステップと、
前記外光の輝度成分と前記ストロボ光の輝度成分とに基づいて、前記第１の画像データと前記第２の画像データとの合成比率を算出する合成比率算出ステップと、
前記合成比率に従って、前記第１の画像データと前記第２の画像データとを合成する合成ステップとを有することを特徴とする画像処理方法。
【請求項９】
ストロボ発光時に撮影された画像データに基づいて第１のホワイトバランス補正値を算出するとともに、ストロボ非発光時に撮影された画像データに基づいて第２のホワイトバランス補正値を算出する補正値算出ステップと、
前記第１のホワイトバランス補正値と前記第２のホワイトバランス補正値との色温度の差分を算出する差分算出ステップと、
被写体及び撮像装置のうちの少なくも何れか一方の動き量を算出する動き量算出ステップと、
前記色温度の差分及び前記動き量のうちの少なくとも何れか一方に基づいて、前記第１のホワイトバランス補正値及び前記第２のホワイトバランス補正値を補正する補正ステップと、
前記補正ステップにより補正された前記第１のホワイトバランス補正値に基づいて、前記ストロボ発光時に撮影された画像データから第１の画像データを現像するとともに、前記補正ステップにより補正された前記第２のホワイトバランス補正値に基づいて、前記ストロボ非発光時に撮影された画像データから第２の画像データを現像する現像ステップと、
前記ストロボ非発光時に撮影された画像データの輝度値と前記ストロボ発光時に撮影された画像データの輝度値とに基づいて、外光の輝度成分とストロボ光の輝度成分とを算出する成分算出ステップと、
前記外光の輝度成分と前記ストロボ光の輝度成分とに基づいて、前記第１の画像データと前記第２の画像データとの合成比率を算出する合成比率算出ステップと、
前記合成比率に従って、前記第１の画像データと前記第２の画像データとを合成する合成ステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに対するホワイトバランス制御技術に関するものである。
【背景技術】
【０００２】
デジタルカメラやデジタルビデオカメラ等の、撮像素子を用いる撮像装置においては、撮影によって得られた画像データの色調を調整するホワイトバランス制御機能を備えている。ホワイトバランス制御には、マニュアルホワイトバランス制御とオートホワイトバランス制御とがある。マニュアルホワイトバランス制御は、予め白色被写体を撮像してホワイトバランス係数を算出しておき、算出したホワイトバランス係数を画面全体に適用する。オートホワイトバランス制御は、撮影した画像データから白色と思われる部分を自動検出し、画面全体の各色成分の平均値からホワイトバランス係数を算出し、算出したホワイトバランス係数を画面全体に適用する。
【０００３】
従来のオートホワイトバランス制御においては、ストロボ発光シーンにおいて画像データ内にストロボ光とは異なる光源が存在する場合、上記のように算出されたホワイトバランス係数を画面全体に適用してホワイトバランス制御を行う。そのため、各光源をともに適正な色味とするホワイトバランス制御を行うことが困難であった。例えば、ストロボ発光シーンで環境光に電球色光源のような低色温度光源が存在する場合、ストロボ光が高色温度光源であるため、ストロボ光にホワイトバランスを合わせると低色温度光源にホワイトバランスが合わなくなってしまう。一方、低色温度光源にホワイトバランスを合わせた場合には、ストロボ光にホワイトバランスが合わなくなってしまう。また、両方の光源の中間にホワイトバランスを合わせてホワイトバランス制御を行ったとしても、両方の光源にホワイトバランスが合わず、ストロボ光で照射されている領域は青みを帯び、低色温度光源で照射されている領域は赤味を帯びるような色味となってしまう。
【０００４】
これに対し、特許文献１には次のような技術が開示されている。即ち、特許文献１に開示される技術は、ストロボ発光時に撮影された画像データとストロボ非発光時に撮影された画像データとを、任意の被写体領域毎に比較してデータの比を求め、その比の値によりストロボ光の寄与度を判定する。そして、判定した寄与度に応じてストロボ発光し、露光させたときの画像データに対して被写体領域毎にホワイトバランス制御値を選択して、ホワイトバランス制御を行う。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３５４０４８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示される技術は、ホワイトバランス制御値を各被写体領域で可変させた後に現像処理を行うため、色再現等のその他の制御がホワイトバランス制御値に対して適正に行われなくなってしまう場合があった。
【０００７】
さらに、ストロボ発光時に撮影された画像データとストロボ非発光時に撮影された画像データとの取得タイミングに時間差がある。そのため、特許文献１に開示される技術においては、被写体が動いている場合や撮像装置が動いている場合、ストロボ光の照射範囲及び照射量を誤検出してしまうため、物体の境界部分で色味ずれを生じてしまうという問題もあった。
【０００８】
そこで、本発明の目的は、境界部分の色味ずれを軽減することにある。
【課題を解決するための手段】
【０００９】
本発明の画像処理装置は、ストロボ発光時に撮影された画像データに基づいて第１のホワイトバランス補正値を算出するとともに、ストロボ非発光時に撮影された画像データに基づいて第２のホワイトバランス補正値を算出する補正値算出手段と、前記第１のホワイトバランス補正値と前記第２のホワイトバランス補正値との色温度の差分を算出する差分算出手段と、被写体及び撮像装置のうちの少なくも何れか一方の動き量を算出する動き量算出手段と、前記色温度の差分及び前記動き量のうちの少なくとも何れか一方に基づいて、前記第１のホワイトバランス補正値及び前記第２のホワイトバランス補正値を補正する補正手段と、前記補正手段により補正された前記第１のホワイトバランス補正値に基づいて、前記ストロボ発光時に撮影された画像データから第１の画像データを現像するとともに、前記補正手段により補正された前記第２のホワイトバランス補正値に基づいて、前記ストロボ非発光時に撮影された画像データから第２の画像データを現像する現像手段と、前記ストロボ非発光時に撮影された画像データの輝度値と前記ストロボ発光時に撮影された画像データの輝度値とに基づいて、外光の輝度成分とストロボ光の輝度成分とを算出する成分算出手段と、前記外光の輝度成分と前記ストロボ光の輝度成分とに基づいて、前記第１の画像データと前記第２の画像データとの合成比率を算出する合成比率算出手段と、前記合成比率に従って、前記第１の画像データと前記第２の画像データとを合成する合成手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、境界部分の色味ずれを軽減することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る撮像装置の構成を示す図である。
【図２】ストロボ発光時の第１のＷＢ補正値の算出処理を示すフローチャートである。
【図３】白検出の際に使用されるグラフを示す図である。
【図４】撮影制御を時系列に並べて示した図である。
【図５】静止画撮影駆動モードにおけるＷＢ補正値とＥＶＦ撮影駆動モードにおけるＷＢ補正値とを示す図である。
【図６】シーンの雰囲気を考慮して色味を残すように第２のＷＢ補正値を算出する方法を説明するための図である。
【図７】画像データの合成処理を示すフローチャートである。
【図８】ＷＢ補正値に対する補正の際に参照される２次元テーブルを示す図である。
【図９】照射比率を算出するための被写体領域の切り出しについて説明するための図である。
【発明を実施するための形態】
【００１２】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１３】
図１は、本発明の実施形態に係る撮像装置の構成を示す図である。図１において、１０１は、ＣＣＤやＣＭＯＳ等から構成される固体撮像素子であり、その表面は例えばベイヤー配列のようなＲＧＢカラーフィルタにより覆われ、カラー撮影が可能な構成となっている。なお、本実施形態に係る撮像装置は、画像処理装置の一例である。
【００１４】
ＣＰＵ１１４は、画像データ全体が明るくなるようなシャッタ速度、絞り値を計算するとともに、合焦領域内にある被写体に合焦するようにフォーカスレンズの駆動量を計算する。ＣＰＵ１１４によって計算された露出値（シャッタ速度、絞り値）及びフォーカスレンズの駆動量は制御回路１１３に出力され、各値に基づいてそれぞれ制御される。１０３はホワイトバランス（以下、ＷＢ）制御回路であり、メモリ１０２に記憶された画像データに基づいてＷＢ補正値を算出し、算出したＷＢ補正値を用いて、メモリ１０２に記憶された画像データに対してＷＢ補正を行う。なお、このＷＢ制御回路１０３によるＷＢ補正値の算出方法の詳細については後述する。
【００１５】
１０４は、ＷＢ制御回路１０３によりＷＢ補正された画像データが最適な色で再現されるように色ゲインをかけて色差信号Ｒ−Ｙ、Ｂ−Ｙに変換する色マトリックス回路である。１０５は、色差信号Ｒ−Ｙ、Ｂ−Ｙの帯域を制限するローパスフィルタ（以下、ＬＰＦ）回路である。１０６は、ＬＰＦ回路１０５で帯域制限された画像データのうち、飽和部分の偽色信号を抑圧するＣＳＵＰ（Chroma Supress）回路である。一方、ＷＢ制御回路１０３によりＷＢ補正された画像データは、輝度信号（Ｙ）生成回路１１１にも出力されて輝度信号Ｙが生成され、エッジ強調回路１１２は、生成された輝度信号Ｙに対してエッジ強調処理を施す。
【００１６】
ＣＳＵＰ回路１０６から出力される色差信号Ｒ−Ｙ、Ｂ−Ｙと、エッジ強調回路１１２から出力される輝度信号Ｙとは、ＲＧＢ変換回路１０７にてＲＧＢ信号に変換され、ガンマ（γ）補正回路１０８にて階調補正が施される。階調補正が施されたＲＧＢ信号は、色輝度変換回路１０９においてＹＵＶ信号に変換され、さらに圧縮回路１１０にて圧縮されて、外部記録媒体又は内部記録媒体に画像データとして記録される。
【００１７】
次に、ＷＢ制御回路１０３におけるＷＢ補正値の算出処理について詳細に説明する。先ず、図２のフローチャートを参照しながら、本露光時（ストロボ発光時）のＷＢ補正値である第１のＷＢ補正値（第１のホワイトバランス補正値）の算出処理について説明する。なお、第１のＷＢ補正値は、ストロボ発光時に撮影された画像データ（以下、ストロボ発光時画像データ）に基づいて算出される補正値である。
【００１８】
ステップＳ２０１において、ＷＢ制御回路１０３は、メモリ１０２に記憶されたストロボ発光時画像データを読み出し、当該ストロボ発光時画像データを任意のｍ個のブロックに分割する。ステップＳ２０２において、ＷＢ制御回路１０３は、ブロック（１〜ｍ）毎に、画素値を色毎に加算平均して色平均値（Ｒ［ｉ］，Ｇ［ｉ］，Ｂ［ｉ］）を算出し、次の式を用いて色評価値（Ｃｘ［ｉ］，Ｃｙ［ｉ］）を算出する。
Ｃｘ［ｉ］＝（Ｒ［ｉ］−Ｂ［ｉ］）／Ｙ［ｉ］×１０２４
Ｃｙ［ｉ］＝（Ｒ［ｉ］＋Ｂ［ｉ］−２Ｇ［ｉ］）／Ｙ［ｉ］×１０２４
但し、Ｙ［ｉ］＝（Ｒ［ｉ］＋２Ｇ［ｉ］＋Ｂ［ｉ］）／４
【００１９】
ＷＢ制御回路１０３は、図３に示すような座標軸を持つグラフを用いて白検出を行う。ｘ座標（Ｃｘ）の負方向が高色温度被写体の白を撮影したときの色評価値を表し、正方向が低色温度被写体の白を撮影したときの色評価値を表す。また、ｙ座標（Ｃｙ）は光源の緑成分の度合いを意味しており、負方向になるにつれＧｒｅｅｎ成分が大きくなり、つまり蛍光灯であることを示している。
【００２０】
ステップＳ２０３において、ＷＢ制御回路１０３は、ステップＳ２０２で算出したｉ番目のブロックの色評価値（Ｃｘ［ｉ］，Ｃｙ［ｉ］）が、図３に示す予め設定される白検出範囲３０１に含まれるか否かを判定する。白検出範囲３０１は、ストロボ光が既知の光源であるために検出範囲が限定されている。ｉ番目のブロックの色評価値（Ｃｘ［ｉ］，Ｃｙ［ｉ］）が予め設定される白検出範囲３０１に含まれる場合、処理はステップＳ２０４に移行する。一方、ｉ番目のブロックの色評価値（Ｃｘ［ｉ］，Ｃｙ［ｉ］）が予め設定される白検出範囲３０１に含まれない場合、処理はステップＳ２０４をスキップして、ステップＳ２０５に移行する。
【００２１】
ステップＳ２０４において、ＷＢ制御回路１０３は、ｉ番目のブロックが白色であると判定して、当該ブロックの色平均値（Ｒ［ｉ］，Ｇ［ｉ］，Ｂ［ｉ］）を積分する。なお、ステップＳ２０３、Ｓ２０４の処理は次の式によって表すことができる。
【００２２】
【数１】
0005743696.tif 000002
【００２３】
ここで、上記式において、色評価値（Ｃｘ［ｉ］，Ｃｙ［ｉ］）が白検出範囲３０１に含まれる場合にはＳｗ［ｉ］を１とし、色評価値（Ｃｘ［ｉ］，Ｃｙ［ｉ］）が白検出範囲３０１に含まれない場合にはＳｗ［ｉ］を０とする。これにより、ステップＳ２０３、Ｓ２０４において、色平均値（Ｒ［ｉ］，Ｇ［ｉ］，Ｂ［ｉ］）を積分するか、積分しないかを実質的に行っている。
【００２４】
ステップＳ２０５において、ＷＢ制御回路１０３は、全てのブロックについて上記処理を行ったか否かを判定する。未処理のブロックが存在する場合、処理はステップＳ２０２に戻って上記処理を繰り返す。一方、全てのブロックについて処理を行った場合、処理はステップＳ２０６に移行する。
【００２５】
ステップＳ２０６において、ＷＢ制御回路１０３は、得られた色平均値の積分値（ＳｕｍＲ１，ＳｕｍＧ１，ＳｕｍＢ１）から、次の式を用いて、第１のＷＢ補正値（ＷＢＣｏｌ＿Ｒ１，ＷＢＣｏｌ＿Ｇ１，ＷＢＣｏｌ＿Ｂ１）を算出する。
ＷＢＣｏｌ＿Ｒ１＝ＳｕｍＹ１×１０２４／ＳｕｍＲ１
ＷＢＣｏｌ＿Ｇ１＝ＳｕｍＹ１×１０２４／ＳｕｍＧ１
ＷＢＣｏｌ＿Ｂ１＝ＳｕｍＹ１×１０２４／ＳｕｍＢ１
但し、ＳｕｍＹ１＝（ＳｕｍＲ１＋２×ＳｕｍＧ１＋ＳｕｍＢ１）／４
なお、第１のＷＢ補正値としてストロボ光のＷＢ補正値を既知のものとして予め設定してもよい。
【００２６】
次に、ストロボ非発光時のＷＢ補正値である第２のＷＢ補正値（第２のホワイトバランス補正値）の算出処理について説明する。なお、第２のＷＢ補正値は、ストロボ非発光時に撮影された画像データ（以下、ストロボ非発光時画像データ）に基づいて算出される補正値である。図４は、撮影制御を時系列に並べて示した図である。図４に示すように、ＳＷ１の押下前には、ライブビュー画像データが定期的に撮影され、ＳＷ１の押下時には、ＡＦロックとＡＥロックとが行われる。ＳＷ２の押下後には、テスト発光と本露光とが行われるが、テスト発光前の「外光」と表記されている時間に露光され、撮影された画像データを、ここではストロボ非発光時画像データとする。なお、ストロボ非発光時画像データとしては、本露光後に露光され、撮影された画像データを用いてもよい。
【００２７】
第２のＷＢ補正値の算出処理は、上述した第１のＷＢ補正値の算出処理と同様の方法によって行われる。但し、第１のＷＢ補正値の算出処理とは、図３の３０２に示すような外光用の白検出範囲で処理する点で異なる。これはストロボ光が既知の光源であるのに対し、外光は既知の光源ではないため、ストロボ発光時の白検出範囲３０１のように限定できないからである。外光用の白検出範囲３０２は、予め異なる光源下で白を撮影し、算出した色評価値をプロットしたものである。この白検出範囲３０２は撮影駆動モードによって個別に設定できるものとする。第２のＷＢ補正値は、撮影駆動モードが異なる場合にも適応でき、例えば、過去に算出されたＥＶＦ（Electronic View Finder）撮影駆動モードのＷＢ補正値を使用することができる。但し、撮影駆動モードにより分光差分が生じる場合、ＷＢ制御回路１０３はＷＢ補正値を補正する。図５は、静止画撮影駆動モードにおけるＷＢ補正値とＥＶＦ撮影駆動モードにおけるＷＢ補正値とを示す図である。過去に撮影されたＥＶＦ撮影駆動モードのＷＢ補正値を用いて、静止画撮影駆動モードのＷＢ補正値を算出する場合、図５に示すように、ＷＢ制御回路１０３は、ＥＶＦ撮影駆動モードのＷＢ補正値（ＥｖｆＣｘ，ＥｖｆＣｙ）５０１をΔＣｘ、ΔＣｙだけ補正する。これにより、静止画撮影駆動モードのＷＢ補正値（ＣａｐＣｘ，ＣａｐＣｙ）５０２が算出される。
【００２８】
ここでは、背景が電球色光源のような低色温度光源の場合に、シーンの雰囲気を考慮して色味を残すように第２のＷＢ補正値を算出してもよい。例えば図６に示すように、第２のＷＢ補正値の色温度が低い場合（例えば、入力のＴ１）、色味を残すように制御することにより（例えば、出力のＴ´１）、電球色光源の赤味を残すような画像データを生成することができる。なお、上述した第１のＷＢ補正値の算出処理及び第２のＷＢ補正値の算出処理は、補正値算出手段の処理例である。
【００２９】
次に、図７のフローチャートを参照しながら、画像データの合成処理について説明する。ステップＳ７０１において、ＷＢ制御回路１０３は、色温度の差分を算出する。即ち、ＷＢ制御回路１０３は、ストロボ発光時のＷＢ補正値である第１のＷＢ補正値と、ストロボ非発光時のＷＢ補正値である第２のＷＢ補正値との色温度の差分を算出する。ステップＳ７０２において、ＷＢ制御回路１０３は、被写体及び撮像装置の動き量を算出する。撮像装置の動き量は、制御回路１１３に搭載されているジャイロセンサ（慣性センサ）から得られる角速度情報（動きの検知結果）に基づいて算出される。また、被写体の動き量は、上述した外光によって撮影された画像データと本露光によって撮影された画像データとの差分をとることで求められる。即ち、角速度情報は、本露光期間中に所定の周期で取得された角速度情報の平均をとることで算出される。このようにして角速度情報から得られる動き量は、撮像装置の動き量となる。また、外光によって撮影された画像データと本露光によって撮影された画像データとの差分については、本露光によって撮影された画像データは、ストロボ発光によって撮影された画像データである。従って、ＷＢ制御回路１０３は、外光によって撮影された画像データとストロボ発光によって撮影された画像データとに対して信号処理を行った後、それらの差分をとる。即ち、ＷＢ制御回路１０３は、外光によって撮影された画像データとストロボ発光によって撮影された画像データとから輝度エッジ信号を抽出し、各輝度エッジ信号の差分をとることにより、動き量を算出する。このようにして画像データの差分から算出された動き量は、被写体の動き量となる。ＷＢ制御回路１０３は、撮像装置の動き量と被写体の動き量との和を算出することにより最終的な動き量を取得する。なお、ステップＳ７０１は差分算出手段の処理例である。ステップＳ７０２は動き量算出手段の処理例である。
【００３０】
ステップＳ７０３において、ＷＢ制御回路１０３は、ステップＳ７０１で算出された色温度の差分とステップＳ７０２で算出された動き量とに基づいて、第１のＷＢ補正値と第２のＷＢ補正値とを補正する。これらのＷＢ補正値に対する補正の際には、図８に示す２次元テーブルが参照され、色温度の差分と動き量とに応じた合成緩和率が取得される。ＷＢ制御回路１０３は、取得した合成緩和率を用いて、第１のＷＢ補正値（ＷＢＣｏｌ＿Ｒ１，ＷＢＣｏｌ＿Ｇ１，ＷＢＣｏｌ＿Ｂ１）と第２のＷＢ補正値（ＷＢＣｏｌ＿Ｒ２，ＷＢＣｏｌ＿Ｇ２，ＷＢＣｏｌ＿Ｂ２）とを次のように補正する。
ＷＢＣｏｌ＿Ｒ１＝ＷＢＣｏｌ＿Ｒ１＋（ＷＢＣｏｌ＿Ｒ２−ＷＢＣｏｌ＿Ｒ１）×０．５×合成緩和率
ＷＢＣｏｌ＿Ｇ１＝ＷＢＣｏｌ＿Ｇ１＋（ＷＢＣｏｌ＿Ｇ２−ＷＢＣｏｌ＿Ｇ１）×０．５×合成緩和率
ＷＢＣｏｌ＿Ｂ１＝ＷＢＣｏｌ＿Ｂ１＋（ＷＢＣｏｌ＿Ｂ２−ＷＢＣｏｌ＿Ｂ１）×０．５×合成緩和率
ＷＢＣｏｌ＿Ｒ２＝ＷＢＣｏｌ＿Ｒ２＋（ＷＢＣｏｌ＿Ｒ１−ＷＢＣｏｌ＿Ｒ２）×０．５×合成緩和率
ＷＢＣｏｌ＿Ｇ２＝ＷＢＣｏｌ＿Ｇ２＋（ＷＢＣｏｌ＿Ｇ１−ＷＢＣｏｌ＿Ｇ２）×０．５×合成緩和率
ＷＢＣｏｌ＿Ｂ２＝ＷＢＣｏｌ＿Ｂ２＋（ＷＢＣｏｌ＿Ｂ１−ＷＢＣｏｌ＿Ｂ２）×０．５×合成緩和率
【００３１】
以上の補正により、合成緩和率が高くなるに従って、第１のＷＢ補正値と第２のＷＢ補正値とがＷＢ補正値を引き寄せる方向に補正される。その際、ＷＢ制御回路１０３は、第１のＷＢ補正値と第２のＷＢ補正値とを近付ける方向に補正するか、又は、第１のＷＢ補正値と第２のＷＢ補正値とのうちの何れか一方のＷＢ補正値を固定し、当該ＷＢ補正値に対して他方のＷＢ補正値を近付ける方向に補正する。
【００３２】
ステップＳ７０４において、ＷＢ制御回路１０３は、上記第１のＷＢ補正値を用いてストロボ発光時画像データから画像データＹｕｖ１を現像する。ステップＳ７０５において、ＷＢ制御回路１０３は、上記第２のＷＢ補正値を用いてストロボ非発光時画像データから画像データＹｕｖ２を現像する。ステップＳ７０６において、ＷＢ制御回路１０３は、ストロボ発光時画像データ、ストロボ非発光時画像データ、画像データＹｕｖ１、画像データＹｕｖ２をそれぞれｎ個のブロックに分割する。なお、画像データＹｕｖ１は第１の画像データ、画像データＹｕｖ２は第２の画像データの一例である。
【００３３】
ステップＳ７０７において、ＷＢ制御回路１０３は、ストロボ非発光時画像データのブロック（１〜ｎ）毎に、画素値を色毎に加算平均して色平均値（Ｒ２［ｉ］，Ｇ２［ｉ］，Ｂ２［ｉ］）を算出し、各ブロックの輝度値ａ［ｉ］を算出する。各ブロックの輝度値ａ［ｉ］の算出式は次の式に示す通りである。ここで、算出された各ブロックの輝度値ａ［ｉ］を、各ブロックの外光の輝度成分（以下、外光成分）とする。
【００３４】
【数２】
0005743696.tif 000003
【００３５】
ステップＳ７０８において、ＷＢ制御回路１０３は、ストロボ非発光時画像データから各ブロックの輝度値ａ［ｉ］を算出する処理と同様に、ストロボ発光時画像データのブロック（１〜ｎ）毎に、画素値を色毎に加算平均して色平均値（Ｒ１［ｉ］，Ｇ１［ｉ］，Ｂ１［ｉ］）を算出し、各ブロックの輝度値ｂ［ｉ］を算出する。ＷＢ制御回路１０３は、次の式に示すように、算出した各ブロックの輝度値ｂ［ｉ］から、対応するストロボ非発光時画像データの各ブロックの輝度値ａ［ｉ］を引くことにより、ブロック毎のストロボ光の輝度成分（以下、ストロボ成分）ｃ［ｉ］を算出する。
ｃ［ｉ］＝ｂ［ｉ］−ａ［ｉ］
なお、ステップＳ７０７、Ｓ７０８は、成分算出手段の処理例である。
【００３６】
ステップＳ７０９において、ＷＢ制御回路１０３は、次の式により、それぞれ対応するブロック毎のストロボ成分ｃ［ｉ］と外光成分ａ［ｉ］との比率を基に、画像データＹｕｖ１と画像データＹｕｖ２とを合成する際のブロック毎のＭｉｘ率α［ｉ］を算出する。
α［ｉ］＝ｃ［ｉ］／（ａ［ｉ］＋ｃ［ｉ］）
なお、ステップＳ７０９は、合成比率算出手段の処理例である。
【００３７】
ステップＳ７１０において、ＷＢ制御回路１０３は、ブロック毎のＭｉｘ率α［ｉ］を用いて画像データＹｕｖ１と画像データＹｕｖ２とを合成し、合成画像データＹｕｖ３を生成する。合成画像データＹｕｖ３における色評価値（Ｙ３［ｉ］，ｕ３［ｉ］，ｖ３［ｉ］）は、画像データＹｕｖ１における色評価値（Ｙ１［ｉ］，ｕ１［ｉ］，ｖ１［ｉ］）と、画像データＹｕｖ２における色評価値（Ｙ２［ｉ］，ｕ２［ｉ］，ｖ２［ｉ］）とを用いて、次の式のように算出される。
【００３８】
【数３】
0005743696.tif 000004
【００３９】
ここで、ブロック境界部分の色味ずれを緩和するため、ステップＳ７０９で画素補間処理を行うことによりブロック毎のＭｉｘ率α［ｉ］から画素毎のＭｉｘ率α´［ｊ］を算出してもよい。例えば、ＷＢ制御回路１０３は、画素補間処理としてバイリニア補間を用い、ブロック毎のＭｉｘ率α［ｊ］から画素毎のＭｉｘ率α´［ｊ］を算出する。このとき、ステップＳ７１０において、ＷＢ制御回路１０３は、画素毎のＭｉｘ率α´［ｊ］を用いて、画像データＹｕｖ１と画像データＹｕｖ２とを合成し、合成画像データＹｕｖ３を生成する。
【００４０】
合成画像データＹｕｖ３における色評価値（Ｙ３［ｊ］，ｕ３［ｊ］，ｖ３［ｊ］）は、画像データＹｕｖ１における色評価値（Ｙ１［ｊ］，ｕ１［ｊ］，ｖ１［ｊ］）と、画像データＹｕｖ２における色評価値（Ｙ２［ｊ］，ｕ２［ｊ］，ｖ２［ｊ］）とを用いて、次の式のように算出される。
【００４１】
【数４】
0005743696.tif 000005
【００４２】
また、ステップＳ７１０においては、ストロボ発光時画像データにおける各ブロックの輝度値に応じて、ブロック毎に画像合成処理を行うか行わないかを判定することにより、処理を可変にしてもよい。即ち、当該ブロックの輝度値が低い場合や高い場合、当該ブロックに対して画像データの合成処理を行わず、後述する通常のホワイトバランス制御によって算出されるＷＢ補正値を用いて画像データの現像処理が行われる。一方、当該ブロックの輝度値がそれ以外の場合、上述した画像データの合成処理と同様の処理が行われる。なお、画像データＹｕｖ１の信号成分と画像データＹｕｖ２の信号成分とを等比率で合成するようにしてもよい。
【００４３】
次に、通常のホワイトバランス制御方法について詳細に説明する。先ず、ＷＢ制御回路１０３は、上述したＷＢ補正値の算出処理と同様に、第１、第２のＷＢ補正値を算出する。次に、ＷＢ制御回路１０３は、第１、第２のＷＢ補正値のＭｉｘ（加重加算）処理を行う。Ｍｉｘ（加重加算）処理では、被写体に照射されている外光とストロボ光との照射比率によって加重加算が行われる。
【００４４】
ここで、図９を参照しながら、照射比率を算出するための被写体領域の切り出しについて説明する。ＷＢ制御回路１０３は、テスト発光する前に撮影された画像データ９０１を取得し、このテスト発光前に撮影された画像データ９０１からｍ×ｎのマトリックスで構成される輝度ブロックａ９０２を算出する。次に、テスト発光する前と同じ条件でストロボのテスト発光が行われることにより、ＷＢ制御回路１０３は、テスト発光時に撮影された画像データ９０３を取得し、同様にｍ×ｎのマトリックスで構成される輝度ブロックｂ９０４を取得する。これら、輝度ブロックａ９０２及び輝度ブロックｂ９０４は、撮像装置に備えられるＲＡＭ等に一時的に格納される。なお、テスト発光前に撮影された画像データ９０１の背景画像とテスト発光時に撮影された画像データ９０３の背景画像とは略変化がないものとする。従って、この２つの輝度ブロックａ９０２と輝度ブロックｂ９０４との差分データは、ストロボのテスト発光時における被写体領域の反射光となり、当該差分データより被写体位置情報ｃ９０５を取得することができる。
【００４５】
ＷＢ制御回路１０３は、このように算出された被写体位置情報ｃ９０５から値が１の被写体位置ブロックを取得し、取得した被写体位置ブロックにおけるストロボ発光時の輝度値Ｙ１とストロボ非発光時の輝度値Ｙ２とを算出する。ここでストロボ発光時とストロボ非発光時との露光条件が異なる場合、ＷＢ制御回路１０３は、露光条件を揃えてＹ１、Ｙ２を算出する。ＷＢ制御回路１０３は、このように算出したＹ１、Ｙ２の比を被写体に照射された光量比として、第１のＷＢ補正値、第２のＷＢ補正値を用いて光量比によるＭｉｘ処理（加重加算）を行う。そして、ＷＢ制御回路１０３は、Ｍｉｘ処理によって得られたＷＢ補正値をＷＢ処理に使用するＷＢ補正値として決定し、画像データを現像し、最終画像データとする。
【００４６】
上記実施形態においては、ストロボ発光時に撮影されたシーンにおいて被写体及び背景をともに適正な色味とする場合、被写体及び撮像装置が動いた場合の境界部分の色味ずれを軽減することができ、ユーザにとって好ましい画像を提供することが可能となる。また、本実施形態においては、被写体及び撮像装置が移動する場合に備えて、被写体及び背景に夫々適用するホワイトバランス補正値の差を所定の範囲内に収めるような制約を設ける必要がない。そのため、被写体及び撮像装置が静止している場合には、被写体及び背景に最も適正な色味とすることができる。
【００４７】
なお、本発明は、複数の機器（例えばホストコンピュータ、インターフェイス機器、カメラヘッドなど）から構成されるシステムを適用しても、一つの機器からなる装置（例えば、デジタルスチルカメラ、デジタルビデオカメラなど）に適用してもよい。
【００４８】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４９】
１０１：個体撮像素子、１０２：メモリ、１０３：ＷＢ制御回路、１０４：色マトリックス回路、１０５：ＬＰＦ回路、１０６：ＣＳＵＰ回路、１０７：ＲＧＢ変換回路、１０８：γ補正回路、１０９：色輝度変換回路、１１０：圧縮回路、１１１：Ｙ生成回路、１１２：エッジ強調回路、１１３：制御回路、１１４：ＣＰＵ
【図１】
0005743696.tif 000006
【図２】
0005743696.tif 000007
【図３】
0005743696.tif 000008
【図４】
0005743696.tif 000009
【図５】
0005743696.tif 000010
【図６】
0005743696.tif 000011
【図７】
0005743696.tif 000012
【図８】
0005743696.tif 000013
【図９】
0005743696.tif 000014