(57)【要約】【課題】  通常光源に加えて演色性の悪い光源下においてもホワイトバランスを適切に調整できる。【解決手段】  撮像手段と、前記撮像手段が被写体を撮像する際に、当該被写体を照射可能な発光手段による発光を測光する測光手段と、撮像手段で取得した画像データの色味を評価する色評価手段と、前記色評価手段により、前記発光手段に対応する白候補画素を抽出する白検出領域を、前記測光手段による測光結果に基づいて可変させて白検出を行う白検出手段と、  前記白検出領域による白検出の結果に応じて、ホワイトバランス補正を行うホワイトバランス補正手段と、を有することを特徴とする撮像装置。【選択図】  図４
2014123902.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段と、
前記撮像手段が被写体を撮像する際に、当該被写体を照射可能な発光手段による発光を測光する測光手段と、
撮像手段で取得した画像データの色味を評価する色評価手段と、
前記色評価手段による色評価結果から、前記発光手段に対応する白候補画素を抽出する白検出領域を、前記測光手段による測光結果に基づいて可変させて白検出を行う白検出手段と、
前記白検出領域による白検出の結果に応じて、ホワイトバランス補正を行うホワイトバランス補正手段と、
を有することを特徴とする撮像装置。
【請求項２】
前記測光手段は、前記発光手段が発光している状態で撮影される発光画像と前記発光手段が発光していない状態で撮影される非発光画像それぞれの明るさを算出し、
前記白検出手段は、当該発光画像及び非発光画像の明るさの比率から前記白検出領域を設定することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記測光手段は、前記発光画像および前記非発光画像の明るさを、それぞれの画像を複数の領域に分割し、領域ごとに輝度を重み付け加算することで得ることを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記白検出領域は色空間上に定義され、あらかじめ取得されている発光手段による発光に対応した第１のホワイトバランス制御値と、前記ホワイトバランス制御値と異なる光源に対応する第２のホワイトバランス制御値から算出され、前記第２のホワイトバランス制御値は、前記非発光画像から算出されるホワイトバランス制御値であることを特徴とする請求項１乃至３のいずれか１つに記載の撮像装置。
【請求項５】
前記白検出手段は、前記当該発光画像及び非発光画像の明るさの比率が所定の値より小さい場合には、外光用の白検出領域を設定し、所定の値よりも大きい場合は前記白検出領域を設定することを特徴とする請求項３に記載の撮像装置。
【請求項６】
撮像手段と、前記撮像手段が被写体を撮像する際に、当該被写体を照射可能な発光手段による発光を測光する測光手段と、を有する撮像装置の制御方法であって、
撮像手段で取得した画像データの色味を評価する色評価ステップと、
前記色評価ステップによる色評価結果から、前記発光手段に対応する白候補画素を抽出する白検出領域を、前記測光手段による測光結果に基づいて可変させて白検出を行う白検出ステップと、
前記白検出領域による白検出の結果に応じて、ホワイトバランス補正を行うホワイトバランス補正ステップと、
を有することを特徴とする撮像装置の制御方法。
【請求項７】
請求項６に記載の撮像装置の制御方法の手順が記述されたコンピュータで実行可能なプログラム。
【請求項８】
コンピュータに、請求項６に記載の撮像装置の制御方法の各工程を実行させるためのプログラムが記憶されたコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はストロボ撮影時におけるホワイトバランス制御技術に関する。
【背景技術】
【０００２】
ストロボなどの発光手段を用いた撮影におけるホワイトバランス係数を算出するために、特許文献１のような手法が提案されている。特許文献１では、ストロボ光と外光との光量比率を算出し、それぞれの光源に適したＷＢ係数を前記光量比率に応じて混合させている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３０８０６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながらＬＥＤ光源のような演色性の悪い光源は、黒体放射軸から色度が遠い場所にあるため、通常の黒体放射軸に合わせた白検出範囲に入らない場合が少なくない。通常光の環境下に演色性の悪いＬＥＤ光源がある場合、黒体放射軸上の色度とＬＥＤ光源の色度のその両方を満たすような白検出範囲を設定することが難しい。またＬＥＤストロボ光の色度近辺に白検出範囲を設定しても、ＬＥＤストロボはキセノン管と比較してその光量が少なく、外光と混合されてしまう。そのために、ＬＥＤストロボ光の色味のエリアに被写体の白が抽出されにくく、白検出できずに適切なホワイトバランス制御ができず、良好な画像を得ることが難しいという問題がある。
【０００５】
本発明は上述した課題に鑑みてなされたものであり、その目的は、通常光源に加えて演色性の悪い光源下においてもホワイトバランスを適切に調整できるようにすることである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明に係わる撮像装置は、撮像手段と、前記撮像手段が被写体を撮像する際に、当該被写体を照射可能な発光手段による発光を測光する測光手段と、色度図上で、前記発光手段に対応する白候補画素を抽出する白検出領域を、前記測光手段による測光結果に基づいて可変させて白検出を行う白検出手段と、前記白検出領域による白検出の結果に応じて、ホワイトバランス補正を行うホワイトバランス補正手段と、を有することを特徴とする。
【０００７】
また、本発明に係わる撮像装置の制御方法は、撮像手段と、前記撮像手段が被写体を撮像する際に、当該被写体を照射可能な発光手段による発光を測光する測光手段と、を有する撮像装置の制御方法であって、色度図上で、前記発光手段に対応する白候補画素を抽出する白検出領域を、前記測光手段による測光結果に基づいて可変させて白検出を行う白検出ステップと、前記白検出領域による白検出の結果に応じて、ホワイトバランス補正を行うホワイトバランス補正ステップと、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、通常光源に加えて演色性の悪い光源下においてもホワイトバランスを適切に調整できる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係わるカメラの構成を示すブロック図
【図２】本発明のＷＢ制御値算出処理を示すフローチャート
【図３】白検出範囲とストロボ光の白点を示す図
【図４】本発明における静止画撮影するフローを示したフローチャート
【図５】ストロボ白検出枠設定方法を説明したフローチャート
【図６】外光・ストロボ光量比率算出処理を詳細に説明したフローチャート
【図７】ストロボと外光光量比率に応じて白検出範囲を可変させる様子を示した概念図
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
【００１１】
（第１の実施形態）
図１に本実施形態に係る撮像装置の構成を示す。
【００１２】
撮像部１００は光学系に入射される光束を受光し、Ａ／Ｄ（アナログ／デジタル）変換によってデジタル化された画像信号を出力する。撮像部１００は光学系を構成するものとしてフォーカスレンズを含むレンズ群、シャッター、絞り、そして撮像センサを有し、シャッター、絞りおよびフォーカスレンズは撮像制御回路１１３によってそれぞれ制御することが可能である。撮像センサとしては、本実施形態ではＸ−Ｙアドレス型、ＲＧＢ画素のＢａｙｅｒ配列のＣＭＯＳセンサであるものとするが、これに限らない。例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）であってもよいし、補色の画素を配列したセンサなどであってもよい。
【００１３】
発光部１０１は、撮像部１００による撮影の際に補助光として被写体を照射可能なストロボである。本実施形態では、黒体放射軸から比較的離れた色度にあるＬＥＤストロボとする。
【００１４】
撮像部１００から出力された画像データは画像処理部２００へ入力すると同時に、メモリ１０２に記憶することができる。メモリ１０２に記憶した画像データは再度読み出すことができ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１４が画像データを参照したり、読み出した画像データを画像処理部２００に入力することが可能である。本実施形態では、ＣＰＵ１１４が、撮像部１００によって発光部１０１が発光している状態で撮影された発光画像と発光部１０１が発光していない状態で撮影された非発光画像の明るさを測定することで測光を行う測光手段を担う。この測光結果に基づいて、後段の画像処理部２００内でホワイトバランス補正処理が行われる。
【００１５】
画像処理部２００で画像処理された画像データは、メモリ１０２に書き戻したり、ＣＰＵ１１４から任意のデータを書き込んだりすることも可能である。
【００１６】
表示部１１６は画像処理部２００で画像処理されメモリ１０２に記憶されたデジタル画像データをＤ／Ａ変換して、液晶ディスプレイのような表示媒体に画像を表示することができる。また、画像データだけでなく任意の情報を単独、もしくは画像と共に表示することが可能であり、撮影時の露出情報を表示したり、検出された顔領域に枠を表示したりすることも可能である。
【００１７】
記録部１１５は撮影した画像データをＲＯＭ、ＳＤカード等の記録媒体に記憶することができる。
【００１８】
画像処理部２００内の処理について、本実施形態に関連する箇所を説明する。１０３はＷＢ（ホワイトバランス）制御部であり、メモリ１０２に記憶された画像信号からの情報に基づいてホワイトバランス補正値（ＷＢ補正値）を算出し、メモリ１０２に記憶された画像信号に対してＷＢ補正を行う。なお、このＷＢ制御部１０３の詳細構成およびＷＢ補正値の算出方法については後述する。
【００１９】
１０４は、ＷＢ制御部１０３によりＷＢ補正された画像信号が最適な色で再現されるように色ゲインをかけて色差信号Ｒ−Ｙ、Ｂ−Ｙに変換する色変換ＭＴＸ（色変換マトリックス）回路である。１０５は色差信号Ｒ−Ｙ、Ｂ−Ｙの帯域を制限するＬＰＦ（ローパスフィルタ）回路、１０６はＬＰＦ回路１０５で帯域制限された画像信号の内、飽和部分の偽色信号を抑圧するＣＳＵＰ（Ｃｈｒｏｍａ  Ｓｕｐｒｅｓｓ）回路である。一方、ＷＢ制御部１０３によりＷＢ補正された画像信号はＹ（輝度信号）生成回路１１１にも出力されて輝度信号Ｙが生成され、生成された輝度信号Ｙに対してエッジ強調回路１１２にてエッジ強調処理が施される。
【００２０】
ＣＳＵＰ回路１０６から出力される色差信号Ｒ−Ｙ、Ｂ−Ｙと、エッジ強調回路１１２から出力される輝度信号Ｙは、ＲＧＢ変換回路１０７にてＲＧＢ信号に変換され、ガンマ補正回路１０８にて階調補正が施される。その後、色輝度変換回路１０９にてＹＵＶ信号に変換され、さらにＪＰＥＧ圧縮回路１１０にて圧縮されてメモリ１０２に書き込まれ、外部記録媒体または内部記録媒体に画像信号として記録される。あるいは表示部１１６にて表示媒体に表示される。あるいは不図示の外部出力に出力されるなどしても良い。
【００２１】
ここで、上述した各構成はその一部あるいは全てをソフトウェアモジュールとして構成していても良いものとする。
【００２２】
次に、図１のＷＢ制御部１０３におけるＷＢ補正値の算出方法について詳細に説明する。図２はＷＢ補正値算出処理のフローチャートである。この処理は主にＣＰＵ１１４およびＷＢ制御部１０３によって行われる。
【００２３】
まず、メモリ１０２に記憶された画像信号を読み出し、その画面を任意のｍ個のブロックに分割する（ステップＳ１０１）。そして、各ブロック（１〜ｍ）毎に、画素値を各色ごとに加算平均して色平均値（Ｒ［ｉ］、Ｇ［ｉ］、Ｂ［ｉ］）を算出し、以下の式（１）を用いて色評価値（Ｃｘ［ｉ］、Ｃｙ［ｉ］）を算出する（ステップＳ１０２）ことで画像データの色味を評価する。
Ｃｘ［ｉ］＝（Ｒ［ｉ］−Ｂ［ｉ］）／Ｙ［ｉ］×１０２４
Ｃｙ［ｉ］＝（Ｒ［ｉ］＋Ｂ［ｉ］−２Ｇ［ｉ］）／Ｙ［ｉ］×１０２４ ・・・（１）
ただし、Ｙ［ｉ］＝Ｒ［ｉ］＋２Ｇ［ｉ］＋Ｂ［ｉ］
【００２４】
次に、ステップＳ１０２で算出したｉ番目のブロックの色評価値（Ｃｘ［ｉ］、Ｃｙ［ｉ］）が、図３に示す予め設定した白検出範囲３０１に含まれるかどうかを判断する（ステップＳ１０３）。
【００２５】
白検出範囲３０１は、予め異なる光源下で白を撮影し、算出した色評価値を色度図上にプロットしたものであり、すなわち各光源下で白候補となる画素が存在する領域に対応する。この白検出範囲は撮影モードによって別設定できるものとする。図３におけるｘ座標（Ｃｘ）の負方向が高色温度被写体の白を撮影したときの色評価値、正方向が低色温度被写体の白を撮影したときの色評価値である。またｙ座標（Ｃｙ）は光源の緑成分の度合いを意味しており、負方向になるにつれＧｒｅｅｎ（緑）成分が大きくなり、つまり蛍光灯であることを示している。図３（ａ）に示すように、キセノン管のストロボの場合、黒体放射に近い高色温度の部分に色度が位置していた。しかし、ＬＥＤストロボの光源は、色度がＬＥＤの種類によってさまざまであり、図３のａに示したように強く緑味が強い場所に位置するものも少なくない。
【００２６】
そのようなＬＥＤストロボであって、外光を含まない環境下においては、ＬＥＤストロボのみにおける白色分布はＧｒｅｅｎ方向に偏って分布するので、白検出範囲はＧｒｅｅｎ方向を検出するような範囲に設定することになる（図３（ｂ）の３０２）。外光をほとんど含まずＬＥＤストロボのみで被写体が撮影されたと判断された場合においては、このように白検出エリアを移動させてホワイトバランス制御を行ってもよい。
【００２７】
算出した色評価値（Ｃｘ［ｉ］、Ｃｙ［ｉ］）がこの白検出範囲３０２に含まれる場合には（ステップＳ１０３でＹＥＳ）そのブロックが白色であると判断する。そして、そのブロックの色平均値（Ｒ［ｉ］、Ｇ［ｉ］、Ｂ［ｉ］）を積算していく（ステップＳ１０４）。算出した色評価値（Ｃｘ［ｉ］、Ｃｙ［ｉ］）がこの白検出範囲３０２に含まれない場合には加算せずにステップＳ１０５に進む。このステップＳ１０３及びステップＳ１０４の処理は、式（２）により表すことができる。
【００２８】
【数１】
2014123902.tif 000003
【００２９】
ここで、式（２）において、色評価値（Ｃｘ［ｉ］、Ｃｙ［ｉ］）が白検出範囲（図３（ｂ）の３０２）に含まれる場合はＳｗ［ｉ］を１に、含まれない場合にはＳｗ［ｉ］を０とする。これにより、ステップＳ１０３の判断により色評価値（Ｒ［ｉ］、Ｇ［ｉ］、Ｂ［ｉ］）の加算を行うか、行わないかの処理を実質的に行っている。
【００３０】
ステップＳ１０５では、すべてのブロックについて上記処理を行ったかどうかを判断し、未処理のブロックがあればステップＳ１０２に戻って上記処理を繰り返し、すべてのブロックの処理が終了していればステップＳ１０６に進む。
【００３１】
ステップ１０６では、得られた色評価値の積分値（ｓｕｍＲ、ｓｕｍＧ、ｓｕｍＢ）から、以下の式（３）を用いて、第１のＷＢ補正値（ＷＢＣｏ１＿Ｒ、ＷＢＣｏ１＿Ｇ、ＷＢＣｏ１＿Ｂ）を算出する。
ＷＢＣｏ１＿Ｒ＝ｓｕｍＹ×１０２４／ｓｕｍＲ
ＷＢＣｏ１＿Ｇ＝ｓｕｍＹ×１０２４／ｓｕｍＧ          ・・・（３）
ＷＢＣｏ１＿Ｂ＝ｓｕｍＹ×１０２４／ｓｕｍＢ
ただし、ｓｕｍＹ＝（ｓｕｍＲ＋２×ｓｕｍＧ＋ｓｕｍＢ）／４
【００３２】
図４は本実施例における静止画撮影するフローを示したフローチャートである。
【００３３】
ステップＳ２０１では表示部１１６が、撮像部１００から周期的に出力される画像をライブ画像として表示するライブビューモードであり、ライブ画像が表示されている。ステップＳ２０２で撮影指示がなされるとステップＳ２０３で静止画撮影用の露出計算を行う。（ＡｕｔｏＥｘｐｏｓｕｒｅ，ＡＥ）。ステップＳ２０４では、ステップＳ２０３でＡＥを行った結果、被写体が暗い場合にストロボの発光判定がなされる。ステップＳ２０５でストロボ発光がされると判定された場合、ステップＳ２０６ではストロボ非発光画像を取得する。
【００３４】
ステップＳ２０７では本露光静止画撮影がなされ、ステップＳ２０８にてストロボ用白検出枠の設定がなされる。ステップＳ２０８での処理の詳細は後述する。一方ステップＳ２０５にてストロボ発光されない場合には、ステップＳ２１０にて本露光静止画撮影がなされ、Ｓ２１１にて通常の外光用の白検出枠が設定させる。ステップＳ２０９では実際の検出回路に白検出枠が設定がなされ、ステップＳ２１２にて白検出動作が行われる。ステップＳ２１３にて前述したホワイトバランス係数算出処理がなされ、ステップＳ２１４にて現像処理がなされる。
【００３５】
図５は図４のステップＳ２０８のストロボ白検出枠設定方法を説明したフローチャートである。
【００３６】
図５において、ステップＳ３０１では外光とストロボの光量比率の算出を行う。詳細は後述する。ステップＳ３０２ではライブ画像表示時のストロボ非発光状態でのＷＢ係数に対応するＣｘＣｙ値を取得する。ステップＳ３０３ではあらかじめ測定してあるＬＥＤストロボのＷＢ係数に対応するＣｘＣｙ値を取得する。Ｓ３０４ではストロボ用の白検出枠の移動量を算出する。図７はステップＳ３０４でのストロボ用の白検出枠の移動する様子を示した概念図である。
【００３７】
その移動方法は、ステップＳ３０１で算出されたストロボと外光の光量比率に基づいて行われ、それにより適切なホワイトバランスの検出が可能となる。
本実施例ではその１例としてストロボ光量比率に応じて線形的に変化させる例を記載する。
図７は本実施例における、ストロボと外光の光量比率に応じて白検出範囲を可変させる様子を示した概念図である。
【００３８】
ＬＥＤストロボ用のＷＢ係数および制御値（第１のホワイトバランス制御値）をＣｘ＿ｓｗｂ＿ｌｅｄ、Ｃｙ＿ｓｗｂ＿ｌｅｄとし、ストロボ用の白検出範囲幅をＳｅｒｃｈＡｒｅａＣｘ、ＳｅｒｃｈＡｒｅａＣｙとする。このとき、ストロボ用白サーチエリア（白検出領域）、Ｃｘ＿ｌｅｄｓｅｒｃｈＡｒｅａ、Ｃｙ＿ｌｅｄｓｅｒｃｈＡｒｅａは下記の式（４）のように記載できる。
Ｃｘ＿ｌｅｄｓｅｒｃｈＡｒｅａ＝［Ｃｘ＿ｓｗｂ＿ｌｅｄ−ＳｅｒｃｈＡｒｅａＣｘ：Ｃｘ＿ｓｗｂ＿ｌｅｄ＋ＳｅｒｃｈＡｒｅａＣｘ］
Ｃｙ＿ｌｅｄｓｅｒｃｈＡｒｅａ＝［Ｃｙ＿ｓｗｂ＿ｌｅｄ−ＳｅｒｃｈＡｒｅａＣｙ：Ｃｙ＿ｓｗｂ＿ｌｅｄ＋ＳｅｒｃｈＡｒｅａＣｙ］
（４）
【００３９】
また、外光としてライブビュー時のＷＢ制御係数を（第２のホワイトバランス制御値）Ｃｘ＿ｌｖ、Ｃｙ＿ｌｖ、白検出枠の移動量をＯｆｆｓｅｔ＿Ｃｘ、Ｏｆｆｓｅｔ＿Ｃｙ、ストロボ・外光の光量比率をＦｌａｓｈ＿Ｒａｔｉｏとすると、下記の式（５）のように記載できる。
ｏｆｆｓｅｔＣｘ＝（Ｃｘ＿ｌｖ−Ｃｘ＿ｓｗｂ＿ｌｅｄ）＊（１−Ｆｌａｓｈ＿Ｒａｔｉｏ）
ｏｆｆｓｅｔＣｙ＝（Ｃｙ＿ｌｖ−Ｃｙ＿ｓｗｂ＿ｌｅｄ）＊（１−Ｆｌａｓｈ＿Ｒａｔｉｏ）
（５）
【００４０】
その場合、ストロボ用の白検出範囲（白検出領域）は下記の式（６）のように記載できる。
Ｃｘ＿ｌｅｄｓｅｒｃｈＡｒｅａ＝［Ｃｘ＿ｓｗｂ＿ｌｅｄ−ＳｅｒｃｈＡｒｅａＣｘ＋ｏｆｆｓｅｔＣｘ：Ｃｘ＿ｓｗｂ＿ｌｅｄ＋ＳｅｒｃｈＡｒｅａＣｘ＋ｏｆｆｓｅｔＣｘ］
Ｃｙ＿ｌｅｄｓｅｒｃｈＡｒｅａ＝［Ｃｙ＿ｓｗｂ＿ｌｅｄ−ＳｅｒｃｈＡｒｅａＣｙ＋ｏｆｆｓｅｔＣｙ：Ｃｙ＿ｓｗｂ＿ｌｅｄ＋ＳｅｒｃｈＡｒｅａＣｙ＋ｏｆｆｓｅｔＣｙ］
（６）
【００４１】
このようにすることで、ストロボ光と外光の光量比率に応じてストロボの白検出枠を動的に可変させることができ、適切なホワイトバランス制御が可能となる。
【００４２】
一般的に光および色は光の加法性を有するので、ホワイトバランス係数や白検出範囲を外光とストロボ光の光量比に応じて線形補間することは、有効な白検出範囲の移動方法といえる。
【００４３】
本実施例では、光量比率に対して線形的に移動量を制御したが、閾値を持ち所定閾値以上のストロボ光量比率の場合にはストロボ用の白検出範囲に設定し、閾値以下の場合には外光用の白検出範囲に設定してもよい。ストロボ光量比率に応じて白検出範囲の移動量をルックアップテーブル形式などの非線形性を持たせてもよいことは言うまでもない。
【００４４】
もちろんストロボ発光量の制御情報を用いて、一定以上に発光量が小さい時に外光の白検出範囲としてもよい。また、それに追加して自動焦点制御装置（ＡｕｔｏＦｏｕｃｕｓ、ＡＦ）の結果からえられる被写体距離とストロボの発光量からストロボ照射量およびストロボ外光比率を推定してもよいことは言うまでもない。
【００４５】
図６は、図５のＳ３０１の外光・ストロボ光量比率算出処理を詳細に説明したフローチャートである。図６において、Ｓ４０１ではＳ２０６で取得された非発光画像より複数のブロックに領域分割したときのブロック積分値の取得を行う。ステップＳ４０２はＳ２０７で取得された本露光画像から複数のブロックに領域分割したときのブロック積分値の取得を行う。
【００４６】
ステップＳ４０３では本露光画像におけるブロック毎のストロボ照射量（ＦｌａｓｈＹ［ｉ］）と外光照射量（ＰｒｅＹ［ｉ］）の算出を行う。
非発光画像の感度（Ｓｖ＿ｐｒｅ）・Ｆ値（Ａｖ＿  ｐｒｅ）、露出時間（Ｔｖ＿  ｐｒｅ）とブロック積分値（Ｐｒｅ  ＿Ｙ），本露光画像の感度（Ｓｖ＿ｃａｐ）・Ｆ値（Ａｖ＿ｃａｐ）、露出時間（Ｔｖ＿ｃａｐ）とブロック積分値ＣａｐＹ（ｘ，ｙ）の関係から、式（７）によって非発光画像の輝度値を本露光撮影条件に換算処理を行った輝度値（ＰｒｅＹ´［ｉ］）の算出を行う。ただしＳｖ＿ｐｒｅなどの値は下記のＡｐｅｘで表現されたものである。
【００４７】
【数２】
2014123902.tif 000004
【００４８】
ここで、ＰｒｅＹ´［ｉ］がブロック毎の本露光時の外光光量に相当し、ＦｌａｓｈＹ［ｉ］はブロック毎の本露光時のストロボ照射量に相当している。Ｓ４０４では、ブロック毎に算出されたＦｌａｓｈＹに中央重点の重みテーブル（ＣｅｎｔｅｒＷｗｉｇｈｔ［ｉ］）の乗算を行う（ＦｌａｓｈＹ＿ｗｇｔ［ｉ］）。
【００４９】
同様に非発光画像の発光量も同様にして中央重点の重みの乗算を行う（あわせて式（８））。
【００５０】
【数３】
2014123902.tif 000005
【００５１】
これで発光画像、非発光画像それぞれにおいて、明るさが算出された。
【００５２】
ステップＳ４０５では被写体領域特定処理を行う。より具体的には、ＦｌａｓｈＹ＿ｗｇｔ［ｉ］値から、輝度の高い順にソートして上位５０％の領域を有効領域として値を残し、下位５０％のブロック値を無効領域として、ＦｌａｓｈＹ＿ｗｇｔ［ｉ］値を０にする。さらにメディアンフィルタを適用し、ノイズや微小なストロボ反射領域といったごみ領域の判定を行う。ごみ領域と判定された部分は同様にしてＦｌａｓｈＹ＿ｗｇｔ［ｉ］値を０にする。こうして算出されたブロックデータは、中央領域かつストロボの照射が強い、一定以上の面積を持つ領域の抽出ができ、この領域を主被写体領域と判定できる。（Ｍａｉｎ＿ＴｇｔＴｂｌ［ｉ］）
【００５３】
ステップＳ４０６では、ステップＳ４０５で算出された主被写体領域に対して、ＦｌａｓｈＹ［ｉ］値の積分値（ＦｌａｓｈＬｉｇｈｔＶａｌ）とＰｒｅＹ‘［ｉ］の積分値（ＤａｙＬｉｇｈｔＶａｌ）を算出する。そして、下記の式（９）にて外光とストロボの光量比（Ｆｌａｓｈ＿Ｒａｔｉｏ）を算出できる。
【００５４】
【数４】
2014123902.tif 000006
【００５５】
本実施例ではメイン被写体領域を、なるべく中央に近くてかつストロボの照射された領域と判断した。しかし、もちろんこれだけではなく、顔判別する手法や、色や明るさなどの情報から画像領域を分割して、さらにその中からメイン被写体領域を特定するなどの方法でもよい。また、画像のパターンマッチング方法などを応用した被写体認識などの手法を用いて、被写体領域を特定してもよい。これらの方法においても被写体領域の特定ができれば、前述したＭａｉｎ＿ＴｇｔＴｂｌ［ｉ］の算出方法が変わるだけであり、そのメイン領域におけるストロボと外光の光量比の算出は同様にして可能である。
【００５６】
以上のように、本実施形態では、演色性の劣るストロボ光と蛍光灯などの外光との光量比率を算出し、この光量比率に基づいて白検出枠を移動させる。これにより、通常光源に加えて演色性の悪い光源下においてもホワイトバランスを適切に調整できる。
【００５７】
（他の実施形態）
本発明の目的は以下のようにしても達成できる。すなわち、前述した各実施形態の機能を実現するための手順が記述されたソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給する。そしてそのシステムまたは装置のコンピュータ（またはＣＰＵ、ＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行するのである。
【００５８】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体およびプログラムは本発明を構成することになる。
【００５９】
また、プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスクなどが挙げられる。また、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等も用いることができる。
【００６０】
また、コンピュータが読み出したプログラムコードを実行可能とすることにより、前述した各実施形態の機能が実現される。さらに、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した各実施形態の機能が実現される場合も含まれる。
【００６１】
更に、以下の場合も含まれる。まず記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う。
【００６２】
また、本発明はデジタルカメラのような撮影を主目的とした機器にかぎらず、携帯電話、パーソナルコンピュータ（ラップトップ型、デスクトップ型、タブレット型など）、ゲーム機など、撮像装置を内蔵もしくは外部接続する任意の機器に適用可能である。従って、本明細書における「撮像装置」は、撮像機能を備えた任意の電子機器を包含することが意図されている。
【図１】
2014123902.tif 000007
【図２】
2014123902.tif 000008
【図３】
2014123902.tif 000009
【図４】
2014123902.tif 000010
【図５】
2014123902.tif 000011
【図６】
2014123902.tif 000012
【図７】
2014123902.tif 000013