(57)【特許請求の範囲】
【請求項１】
カラーの撮影画像を入力する入力手段と、
前記画像上の複数の領域の各々から、その領域の色が光源色を示している可能性の高さを示す評価値を抽出する抽出手段と、
前記複数の領域の一部である特定領域に写っている被写体の照明方向を推測する推測手段と、
抽出された複数の前記評価値の前記画像上の分布を、前記照明方向に応じた重み分布で重み付けする重み付け手段と、
重み付け後に高い値を示した評価値の抽出元領域の色を前記被写体の照明色とみなして前記特定領域へ適用すべきホワイトバランス調整量を算出する算出手段と、
を備え、
前記特定領域に写っている被写体が人物か否かに応じて、前記照明方向を推測する領域の選択基準が異なることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記推測手段は、
前記特定領域内の明部から暗部へ向かう明暗方向を前記照明方向とみなす
ことを特徴とする画像処理装置。
【請求項３】
請求項２に記載の画像処理装置において、
前記推測手段は、
前記照明方向に拘わらず、前記特定領域内の明部と暗部との明暗差が閾値未満の場合は、前記画像の手前から奥へ向かう順光方向を前記照明方向とみなす
ことを特徴とする画像処理装置。
【請求項４】
請求項３に記載の画像処理装置において、
前記推測手段は、
前記特定領域内の明部と暗部との明暗差が閾値未満であったとしても、前記画像の撮影が逆光撮影であった場合は、前記画像の奥から手前へ向かう逆光方向を前記照明方向とみなす
ことを特徴とする画像処理装置。
【請求項５】
請求項１〜請求項４の何れか一項に記載の画像処理装置において、
前記重み付け手段は、
前記照明方向の下流側の重みよりも前記照明方向の上流側の重みを高く設定する
ことを特徴とする画像処理装置。
【請求項６】
カラーの撮影画像を取得する撮像手段と、
前記撮像手段が取得した画像の特定領域へ適用すべきホワイトバランス調整量を算出する、請求項１〜請求項５の何れか一項に記載の画像処理装置と、
を備えたことを特徴とする撮像装置。
【請求項７】
カラーの撮影画像を入力する入力手順と、
前記画像上の複数の領域の各々から、その領域の色が光源色を示している可能性の高さを示す評価値を抽出する抽出手順と、
前記複数の領域の一部である特定領域に写っている被写体の照明方向を推測する推測手順と、
抽出された複数の前記評価値の前記画像上の分布を、前記照明方向に応じた重み分布で重み付けする重み付け手順と、
重み付け後に高い値を示した評価値の抽出元領域の色を前記被写体の照明色とみなして前記特定領域へ適用すべきホワイトバランス調整量を算出する算出手順と、
前記特定領域に写っている被写体が人物か否かに応じて、前記照明方向を推測する領域の選択基準を変える手順と、
をコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮像装置、画像処理プログラムに関する。
【背景技術】
【０００２】
特許文献１に開示のホワイトバランス調整では、撮影画像から主要被写体領域を抽出し、その主要被写体領域から抽出された測色値の頻度を、他の領域から抽出された測色値の頻度よりも高めに見積もる（大きな重み係数を乗算する）ことで、主要被写体に対するホワイトバランス調整の精度向上を図っている。
【０００３】
特許文献２に開示のホワイトバランス調整では、主要被写体領域に対するホワイトバランス調整量を、他の領域に対するホワイトバランス調整量とは別に設定することにより、主要被写体に対するホワイトバランス調整の精度向上を図っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２１１４１６号公報
【特許文献２】特開２００８−２１９４１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら何れの場合も、主要被写体領域の色から主要被写体の照明色を推定することが困難な場合（例えば、主要被写体の本来の色が何らかの光源の色と偶然似ていた場合など）には、主要被写体領域のホワイトバランス調整に失敗する（カラーフェリアを起こす）虞がある。
【０００６】
本発明は、撮影画像中の特定領域に対するホワイトバランス調整のカラーフェリアを高確率で抑えることのできる画像処理装置、撮像装置、及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の画像処理装置は、カラーの撮影画像を入力する入力手段と、前記画像上の複数の領域の各々から、その領域の色が光源色を示している可能性の高さを示す評価値を抽出する抽出手段と、前記複数の領域の一部である特定領域に写っている被写体の照明方向を推測する推測手段と、抽出された複数の前記評価値の前記画像上の分布を、前記照明方向に応じた重み分布で重み付けする重み付け手段と、重み付け後に高い値を示した評価値の抽出元領域の色を前記被写体の照明色とみなして前記特定領域へ適用すべきホワイトバランス調整量を算出する算出手段と、を備え、前記特定領域に写っている被写体が人物か否かに応じて、前記照明方向を推測する領域の選択基準が異なることを特徴とする。
【０００８】
本発明の撮像装置は、カラーの撮影画像を取得する撮像手段と、前記撮像手段が取得した画像の特定領域へ適用すべきホワイトバランス調整量を算出する、本発明の画像処理装置とを備える。
【０００９】
本発明の画像処理プログラムは、カラーの撮影画像を入力する入力手順と、前記画像上の複数の領域の各々から、その領域の色が光源色を示している可能性の高さを示す評価値を抽出する抽出手順と、前記複数の領域の一部である特定領域に写っている被写体の照明方向を推測する推測手順と、抽出された複数の前記評価値の前記画像上の分布を、前記照明方向に応じた重み分布で重み付けする重み付け手順と、重み付け後に高い値を示した評価値の抽出元領域の色を前記被写体の照明色とみなして前記特定領域へ適用すべきホワイトバランス調整量を算出する算出手順と、前記特定領域に写っている被写体が人物か否かに応じて、前記照明方向を推測する領域の選択基準を変える手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、カラー画像中の特定領域に対するホワイトバランス調整のカラーフェリアを高確率で抑えることのできる画像処理装置、撮像装置、及び画像処理プログラムが実現する。
【図面の簡単な説明】
【００１１】
【図１】電子カメラの構成図。
【図２】撮影モードにおけるＣＰＵ２１の動作フローチャート。
【図３】ホワイトバランス調整回路１５によるホワイトバランス調整処理の動作フローチャート。
【図４】詳細画像の例（斜光撮影の場合）。
【図５】詳細画像を分割してできた領域の模式図。
【図６】光源らしさ度マップを説明する図。
【図７】主要被写体領域（ここでは人物領域ｏ）を説明する図。
【図８】参照領域（ここでは顔領域ｏｆ）を説明する図。
【図９】二値化後の参照領域（ここでは顔領域ｏｆ’）を説明する図。
【図１０】分割曲線Ｃｓを説明する図。
【図１１】明るさ重心ｇｈ、暗さ重心ｇｓを説明する図。
【図１２】明暗ベクトルを説明する図。
【図１３】階調変換特性を説明する図。
【図１４】階調変換特性の効果を説明する図。
【図１５】重みマップを説明する図。
【図１６】ステップＳ１６−６〜Ｓ１６−９を説明する図（斜光撮影の場合）。
【図１７】ステップＳ１６−１２〜Ｓ１６−９を説明する図（順光撮影の場合）。
【図１８】ステップＳ１６−１５〜Ｓ１６−９を説明する図（逆光撮影の場合）。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態として電子カメラを説明する。
【００１３】
図１は、電子カメラの構成図である。図１に示すとおり電子カメラ１には、撮像素子１１、信号処理回路１２、バッファメモリ１３、画像処理回路１４、ホワイトバランス調整回路１５、表示制御回路１６、内部モニタ１７、圧縮・伸張回路１８、カードインタフェース１９、ＣＰＵ２１、撮像回路２２、入力器２３、外部接続端子２４、ストロボ装置３０などが備えられる。このうちバッファメモリ１３、画像処理回路１４、ホワイトバランス調整回路１５、表示制御回路１６、圧縮・伸張回路１８、カードインタフェース１９、ＣＰＵ２１は、共通のバスに接続されている。
【００１４】
撮像素子１１は、撮影レンズ２が形成した被写界像を撮像するカラー撮像素子（例えば単板式カラー撮像素子）である。
【００１５】
信号処理回路１２は、撮像素子１１が撮像で取得したアナログ画像信号に対してアナログ信号処理及びＡ／Ｄ変換処理を順次に施し、ディジタル画像信号に変換する。
【００１６】
バッファメモリ１３は、信号処理回路１２から出力されるディジタル画像信号を順次に蓄積する。撮像素子１１の１フレーム分の電荷読み出し期間に亘ってこの蓄積が行われると、バッファメモリ１３には１フレーム分のディジタル画像データが蓄積されることになる。以下、１フレーム分のディジタル画像データを単に「画像」と称し、特に、撮像直後にバッファメモリ１３に蓄積された画像（画像処理回路１４による画像処理が施される前の画像）を「ＲＡＷ画像」と称す。
【００１７】
ホワイトバランス調整回路１５は、バッファメモリ１３に格納されたＲＡＷ画像に対してホワイトバランス調整処理を施す。ホワイトバランス調整処理の詳細は後述する。
【００１８】
画像処理回路１４は、ホワイトバランス調整後の画像に対して、デベイヤ処理（色補間処理）を含む所定の画像処理（色補間処理、階調変換処理、エッジ強調処理、コントラスト強調処理など）を施す。なお、画像処理回路１４は、必要に応じて、バッファメモリ１３上の画像に対して表示用の間引き処理（サイズ縮小処理）を施すこともできる。
【００１９】
表示制御回路１６は、表示用メモリを有しており、その表示用メモリに書き込まれた画像を内部モニタ１７へ送出することにより、その内部モニタ１７上へ画像を表示する。なお、外部接続端子２４に外部モニタが接続されている期間には、表示制御回路１６による画像の送出先は、内部モニタ１７ではなく外部モニタとなる。但し、以下では簡単のため、外部接続端子２４に外部モニタは接続されていないものと仮定する。
【００２０】
内部モニタ１７は、電子カメラ１の背面などに設けられ、電子カメラ１で取得された画像をユーザが確認する際などに使用されるモニタである。このモニタは、例えばＬＣＤパネルなどで構成される。
【００２１】
外部接続端子２４は、外部モニタへ表示制御回路１６を接続するための端子である。外部接続端子２４は、例えば、ＵＳＢポートなどで構成される。
【００２２】
圧縮・伸張回路１８は、前述した所定の画像処理後の画像に対し、所定方式のデータ圧縮処理を施す。また、圧縮・伸張回路１８は、データ圧縮済みの画像に対し、同じ方式のデータ伸張処理を施すこともできる。以下、圧縮／伸張方式として周知のＪＰＥＧ方式が適用されるものと仮定する。
【００２３】
カードインタフェース１９は、データ圧縮済みの画像（ＪＰＥＧファイル）又はデータ圧縮されていないＲＡＷ画像（ＲＡＷ画像ファイル）を、電子カメラ１のカードスロットに装着中のカードメモリ２０へ書き込んだり、そのカードメモリ２０に書き込まれているＪＰＥＧファイル又はＲＡＷ画像ファイルを読み込んだりする。なお、カードメモリ２０は、可搬の記憶媒体である。
【００２４】
撮像回路２２は、撮影レンズ２に対して駆動信号を与えることにより、撮影レンズ２の焦点距離（ズーム位置）、撮影レンズ２の合焦距離、撮影レンズ２の絞り値などを調節する。また、撮像回路２２は、撮像素子１１及び信号処理回路１２に対して駆動信号を与えることにより、両者の駆動タイミングを制御する。また、撮像回路２２は、撮像素子１１の１フレーム当たりの電荷蓄積時間を制御する。なお、電子カメラ１のシャッター速度は、撮像素子１１の電荷蓄積時間と不図示のメカシャッタの開放期間との組み合わせによって設定できるが、ここでは簡単のため、撮像素子１１の電荷蓄積時間のみによって設定されるものと仮定する。
【００２５】
ＣＰＵ２１は、入力器２３を介して入力されるユーザの指示と、ＣＰＵ２１の内部メモリ（ＲＯＭ）に予め書き込まれたファームウエアとに従い、以上の各部を制御する。なお、ＣＰＵ２１のファームウエアは、電子カメラ１に搭載された不図示の通信回路（公知のネットワーク端子など）を介して適宜に更新される。
【００２６】
入力器２３は、電子カメラ１の上部に設けられたレリーズボタンや、電子カメラ１の背面に設けられたマルチセレクターなどの操作部材である。例えばユーザは、この入力器２３を介して電子カメラ１のモードを撮影モードと再生モードの間で切り替えることができる。また、ユーザは、入力器２３を介して電子カメラ１のモードを閃光発光禁止モードに設定することもできる。
【００２７】
ストロボ装置３０は、撮影レンズ２の被写界に向けて閃光を発光する装置である。ストロボ装置３０による閃光の発光タイミングは、撮像素子１１の駆動タイミングなどと共に撮像回路２２によって制御される。また、ストロボ装置３０による閃光発光の必要性は、撮影毎にＣＰＵ２１によって判別される。
【００２８】
図２は、撮影モードにおけるＣＰＵ２１の動作フローチャートである。以下、図２の各ステップを順に説明する。なお、ここでは説明を簡単にするため、電子カメラ１のＲＡＷ記録機能（ＲＡＷ画像ファイルをＪＰＥＧファイルと共に記録する機能）は、オフされているものと仮定する。
【００２９】
ステップＳ１０：ＣＰＵ２１は、撮像回路２２を介して撮像素子１１をドラフトモードで連続駆動し始める。これによって撮像素子１１は、スルー画像の取得を開始する。ＣＰＵ２１は、このときに信号処理回路１２から出力されるスルー画像からＡＥ評価値を抽出し、そのＡＥ評価値が適正となるよう、撮像回路２２を介して電子カメラ１のシャッター速度と撮影レンズ２２の絞り値との組み合わせを制御する（ＡＥ制御）。それと並行して、ＣＰＵ２１は、信号処理回路１２から出力されるスルー画像からＡＦ評価値を抽出し、そのＡＦ評価値が適正となるよう、撮像回路２２を介して撮影レンズ２２の合焦距離を制御する（ＡＦ制御）。なお、ＣＰＵ２１は、スルー画像の取得期間中に入力器２３からズーム調整指示が入力されると、その指示に応じて撮影レンズ２のズーム位置を調整する。
【００３０】
ステップＳ１１：ＣＰＵ２１は、レリーズボタンが半押しされたか否かを判別し、半押しされた場合は、ステップＳ１２へ移行する。
【００３１】
ステップＳ１２：ＣＰＵ２１は、現時点における絞り値及びシャッター速度を固定すると共に（ＡＥロック）、現時点における合焦距離を固定し（ＡＦロック）、現時点におけるズーム位置も固定する（ズームロック）。但し、ＣＰＵ２１は、電子カメラ１が閃光禁止モードに設定中でなかった場合には、この時点で露出不足となる可能性の有無を検知し、その可能性があった場合には、ストロボ装置３０に対して発光の準備をさせると共に、絞り値及びシャッター速度を閃光撮影に適した値に調整する。その後、ＣＰＵ２１は、電子カメラ１に設定中の絞り値、シャッター速度、合焦距離、ズーム位置、閃光発光の準備の有無（閃光発光の有無）などのデータを、撮影条件データとして読み込む。
【００３２】
ステップＳ１３ＣＰＵ２１は、レリーズボタンが全押しされたか否かを判別し、全押しされていない場合はステップＳ１４へ移行し、全押しされた場合はステップＳ１５へ移行する。
【００３３】
ステップＳ１４：ＣＰＵ２１は、レリーズボタンの半押しが解除されたか否かを判別し、解除されていない場合はステップＳ１３へ移行し、解除された場合は、ＡＥロック、ＡＦロック、ズームロック、閃光発光準備の各々を解除してからステップＳ１１へ移行する。
【００３４】
ステップＳ１５：ＣＰＵ２１は、撮像回路２２を介して撮像素子１１をフレームモードで１フレーム分駆動する。なお、先のステップで閃光発光の必要があると判断した場合、ＣＰＵ２１は、撮像回路２２を介してストロボ装置３０を駆動し、撮像素子１１の駆動と共に閃光発光を行う。これによって保存用の詳細画像が取得される。この詳細画像は、信号処理回路１２を介してバッファメモリ１３へ蓄積される。
【００３５】
ステップＳ１６：ＣＰＵ２１は、ステップＳ１２で読み込んだ撮影条件データ（少なくとも閃光発光の有無を示すデータ）をホワイトバランス調整回路１５へ与えると共に、詳細画像に対してホワイトバランス調整処理を施すようホワイトバランス調整回路１５へ指示を与え、その後ホワイトバランス調整回路１５から完了通知を受け取ると、ＣＰＵ２１は、ステップＳ１７へ移行する。
【００３６】
ステップＳ１７：ＣＰＵ２１は、ホワイトバランス調整後の詳細画像に対して画像処理回路１４による所定の画像処理（色補間処理、階調変換処理、エッジ強調処理、コントラスト強調処理など）を施す。
【００３７】
ステップＳ１８：ＣＰＵ２１は、画像処理後の詳細画像に対して表示用の間引き処理（画像処理回路１４によるサイズ縮小処理）を施してから、表示制御回路１６の表示用メモリへ書き込み、内部モニタ１７上に所定期間だけ確認表示する。これによってユーザは、撮影で取得された詳細画像を確認することができる。
【００３８】
また、本ステップのＣＰＵ２１は、圧縮・伸張回路１８によるデータ圧縮処理をホワイトバランス調整後の詳細画像（間引き処理前の詳細画像）へ施すことでＪＰＥＧファイルを作成し、ステップＳ１２で読み込んだ撮影条件データをそのＪＰＥＧファイルに付与してから、カードインタフェース１９を介してカードメモリ２０へ書き込み、フローを終了する。これによって、詳細画像が保存されたことになる。
【００３９】
図３は、ホワイトバランス調整回路１５によるホワイトバランス調整処理（図２のステップＳ１６）の動作フローチャートである。以下、図３の各ステップを順に説明する。
【００４０】
ステップＳ１６−１：ホワイトバランス調整回路１５は、バッファメモリ１３上の詳細画像（画像処理前の詳細画像である。）を読み込む。
【００４１】
ステップＳ１６−２：ホワイトバランス調整回路１５は、読み込んだ詳細画像に対してパターン認識処理を施すことにより、その詳細画像中に存在する複数のオブジェクト領域を検出する。そして、ホワイトバランス調整回路１５は、それらオブジェクト領域の輪郭により、詳細画像の全体を複数の領域に分割する。例えば、詳細画像中に、図４に示すとおり室内用の照明器具（シェード、ランプ、アーム）と、人物（髪、顔、体）と、山・太陽・空の見える窓と、壁と、床とが写っていたと仮定すると、詳細画像は、本ステップにおいて図５に示すような領域ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈ、ｉ、ｊ、ｋ、ｏに分割される。
【００４２】
ステップＳ１６−３：ホワイトバランス調整回路１５は、詳細画像上の領域ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈ、ｉ、ｊ、ｋ、ｏの各々から、色評価値の一種である「光源らしさ度」を抽出する。
【００４３】
ここで、或る領域の光源らしさ度は、その領域の色が何らかの光源色を示している可能性の高さを示す評価値である。例えば、或る領域の輝度分布及び色度分布が蛍光灯のそれに類似していた場合には、その領域の光源らしさ度は高い値となる。また、別の或る領域の輝度分布及び色度分布が電球のそれに類似していた場合にも、その領域の光源らしさ度は高い値となる。また、別の或る領域の色度のみが電球の色度に近かった場合には、その領域の光源らしさ度は、中程度の値となる。また、別の或る領域の輝度分布及び色度分布の何れもが光源のそれに類似していなかった場合には、その領域の光源らしさ度は低い値となる。
【００４４】
よって、図４の領域ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈ、ｉ、ｊ、ｋ、ｏの各々の光源らしさ度は、例えば図６に示すとおりとなる。図６に示す例では、ランプ領域ｆの光源らしさ度は＋４、シェード領域ｇの光源らしさ度は＋３、太陽領域ａの光源らしさ度は＋５となっており、それ以外の領域ｃ、ｄ、ｅ、ｈ、ｉ、ｊ、ｋ、ｏの光源らしさ度は＋１となっている。以下、図６に示すような光源らしさ度の詳細画像上の分布を、「光源らしさ度マップ」と称す。
【００４５】
なお、光源らしさ度の算出は、各オブジェクト領域に対するオブジェクト認識結果、すなわち各オブジェクト領域が光源オブジェクト（例えば、照明、太陽、火など）であるか否かに基づき行われてもよい。或いは、メインの撮像素子１１とは別に設けられたサブの撮像素子（測光センサ）に対する入力信号のパワー分布に基づき行われてもよい。或いは、オブジェクト認識結果とパワー分布との組み合わせに基づき行われてもよい。
【００４６】
続いて、ホワイトバランス調整回路１５は、詳細画像上の領域ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈ、ｉ、ｊ、ｋ、ｏを、領域の絵柄及び面積によって互いに比較し、それら領域ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈ、ｉ、ｊ、ｋ、ｏの何れか１つを主要被写体領域に選出する。例えば、ホワイトバランス調整回路１５は、領域ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｇ、ｈ、ｉ、ｊ、ｋ、ｏの中から面積が閾値未満であるものを排除し、残った複数の領域の中で最もコントラストの高かった領域を主要被写体領域とする。なお、主要被写体領域の選出は、前述したＡＦ制御の情報（ＡＦ評価値の抽出元となったＡＦエリアの位置など）に基づき行われてもよい。
【００４７】
更に、ホワイトバランス調整回路１５は、選出した主要被写体領域を、色度の異なる複数の小領域に分割し、それら小領域から面積が閾値未満であるものを排除し、残った領域の中で最もコントラストが高かった小領域を、参照領域に設定する。
【００４８】
但し、ホワイトバランス調整回路１５は、選出した主要被写体領域が人物領域ｏであった場合には、面積及びコントラストに拘わらず、人物領域ｏの肌色領域（すなわち顔領域ｏｆ）を参照領域に設定する（図７）。因みに、図７の符号ｏｈは髪領域であり、符号ｏｂは身体領域である。以下、人物領域ｏが主要被写体領域に選出され、顔領域ｏｆが参照領域に設定されたと仮定する。
【００４９】
ステップＳ１６−４： ホワイトバランス調整回路１５は、詳細画像上の参照領域（ここでは顔領域ｏｆ）から次の手順（ａ）〜（ｆ）により明暗差及び明暗ベクトルを抽出する。
【００５０】
（ａ）詳細画像上の参照領域（ここでは顔領域ｏｆ）（図８）を、所定の輝度閾値で二値化する。二値化後の参照領域（ここでは顔領域ｏｆ’）の各画素は、黒画素と白画素との何れかとなる（図９）。
【００５１】
（ｂ）二値化後の参照領域（ここでは顔領域ｏｆ’）上で黒画素群と白画素群とを空間的に分離する所定次数の分離曲線Ｃｓを算出する。この分離曲線Ｃｓは、例えば、黒画素から分離曲線Ｃｓまでのユークリッド距離と、白画素から分離曲線Ｃｓまでのユークリッド距離とのトータルが最大となるような曲線である。このような分離曲線Ｃｓの算出には、例えば、サポートベクターマシンにおける分離超平面の算出と同様の方法が適用できる。なお、演算量を抑えるため、ここでは分離曲線Ｃｓの次数は、例えば２程度に設定されるものと仮定する。この場合、分離曲線Ｃｓの黒画素群側にも白画素（飛び地）が存在している可能性があり、分離曲線Ｃｓの白画素群側にも黒画素（飛び地）が存在している可能性がある。
【００５２】
（ｃ）二値化前の参照領域（ここでは顔領域ｏｆ）を分離曲線Ｃｓで分割する（図１０）。これによって、参照領域（ここでは顔領域ｏｆ）は、明るい画素を多く含む明部ＡＨと、暗い画素を多く含む暗部ＡＳとに分割される。なお、以下の計算では、明部ＡＨ及び暗部ＡＳのうち、上述した飛び地に対応する各画素を、それぞれ無効画素（計算に使用されない画素）として扱う。
【００５３】
（ｄ）明部ＡＨの平均輝度ＩＨと、暗部ＡＳの平均輝度ＩＳとの差（ＩＨ−ＩＳ）を、参照領域（ここでは顔領域ｏｆ）の明暗差として算出する。
【００５４】
（ｅ）明部ＡＨにおける明るさ重心ｇｈと、暗部ＡＳにおける暗さ重心ｇｓとを算出する（図１１）。なお、明るさ重心とは、輝度の高い画素ほど大きな重みが付される重み付け平均座標のことであり、暗さ重心とは、輝度の低い画素ほど大きな重みが付される重み付け平均座標のことである。
【００５５】
（ｆ）明るさ重心ｇｈから暗さ重心ｇｓに向かう方向の単位ベクトルを、参照領域（ここでは顔領域ｏｆ）の明暗ベクトルとして算出する（図１２）。
【００５６】
ステップＳ１６−５：ホワイトバランス調整回路１５は、参照領域（ここでは顔領域ｏｆ）の明暗差が所定の閾値を超過しているか否かを判別し、超過していた場合は、詳細画像の撮影が斜光撮影であったとみなしてステップＳ１６−６へ移行し、超過していなかった場合は、詳細画像の撮影が順光撮影又は逆光撮影あったとみなしてステップＳ１６−１１へ移行する。
【００５７】
よって、例えば図４に示すとおり主要被写体（ここでは人物）がランプで主に斜め方向から照明されていた場合は、参照領域（ここでは顔領域ｏｆ）の一部のみに影が発生するので明暗差は大きくなり、詳細画像の撮影は斜光撮影であったとみなされる。
【００５８】
一方、例えば図１７（Ａ）（詳細は後述）に示すとおり主要被写体（ここでは人物）が閃光で主に正面から照明されていた場合は、参照領域（ここでは顔領域ｏｆ）に影が発生しないので明暗差は小さくなり、詳細画像の撮影は順光撮影又は逆光撮影であったとみなされる。
【００５９】
また、例えば図１８（Ａ）（後詳細は後述）に示すとおり主要被写体（ここでは人物）が自然光で主に背後から照明されていた場合は、参照領域（ここでは顔領域ｏｆ）のほぼ全体が影となるので明暗差は小さくなり、詳細画像の撮影は順光撮影又は逆光撮影であったとみなされる。
【００６０】
ステップＳ１６−６：ホワイトバランス調整回路１５は、主要被写体領域（ここでは人物領域ｏ）に存在する物体（ここでは人物）の照明方向を、参照領域（ここでは顔領域ｏｆ）の明暗ベクトルの方向と同じとみなす。
【００６１】
ステップＳ１６−７：ホワイトバランス調整回路１５は、主要被写体領域（ここでは人物領域ｏ）の明るさ調整に必要な情報をＣＰＵ２１へ出力する。それを受けたＣＰＵ２１は、その情報に基づき階調変換パラメータ（階調変換領域及び階調変換特性）を作成し、画像処理回路１４の階調変換処理部へ設定する。なお、この階調変換特性は、例えば図１３に示したような変換特性であって、主要被写体領域（ここでは人物領域ｏ）のうち明るい輝度範囲に属する画素の輝度を維持したまま、主要被写体領域（ここでは人物領域ｏ）のうち暗い輝度範囲に属する画素の輝度を明るい輝度範囲へと持ち上げるような特性である。
【００６２】
よって、詳細画像の撮影が遮光撮影であった場合は、後に実行される階調変換処理（ステップＳ１７）により、主要被写体領域（ここでは人物領域ｏ）のうち影となっていた部分が図１４に示すとおり明るく補正される。なお、ここでは明るさ調整の対象を主要被写体領域（ここでは人物領域ｏ）の全域としたが、参照領域（ここでは顔領域ｏｆ）のみに制限してもよい。
【００６３】
ステップＳ１６−８：ホワイトバランス調整回路１５は、以下の手順（ｇ）〜（ｈ）により斜光撮影用の重みマップ（図１５）を作成する。なお、ここでいう重みマップ（図１５）は、光源らしさ度マップ（図６）を重み付けするためのマップである。
【００６４】
（ｇ）主要被写体領域（ここでは人物領域ｏ）の中心点Ｐｏから放射状に延びる複数の分割線によりマップ全域を複数の扇状領域に分割する（図１５参照）。但し、主要被写体領域（ここでは人物領域ｏ）については、それらの分割線で分割せずに１領域のままとする。また、それら分割線の配置関係は、中心点Ｐｏに向かう明暗ベクトルＢｏに関して対称であり、また、それら分割線の全ては、その明暗ベクトルＢｏ上に重ならないよう配置される。
【００６５】
（ｈ）マップ上の複数の扇状領域及び主要被写体領域（ここでは人物領域ｏ）の各々に対して重み値を割り当てる。この際、中心点Ｐｏから見て照明方向の上流側（図の左上半分）に位置する複数の扇状領域には、比較的大きな重み値（＋０．３〜＋１）が割り当てられ、中心点Ｐｏから見て照明方向の下流側（図の右下半分）に位置する複数の扇状領域には、比較的小さな重み値（０）が割り当てられる。また、特に、中心点Ｐｏから見て照明方向の直上流に位置する特定の扇状領域（左上の扇状領域）に対しては、最大の重み値（＋１）が割り当てられ、特定の扇状領域（左上の扇状領域）の近くに位置する扇状領域（周方向の位置が近い扇状領域）ほど大きな重み値が割り当てられる。また、マップ上の主要被写体領域（ここでは人物領域ｏ）には、最大の重み値（＋１）が割り当てられる。
【００６６】
なお、ここでは、中心点Ｐｏから見て照明方向の下流側（図の右下半分）に位置する５つの扇状領域に対して共通の重み値（０）を割り当てたが、個別の重み値を割り当ててもよい。その場合は、特定の扇状領域（左上の扇状領域）の近くに位置する扇状領域ほど大きな重み値が割り当てられる。
【００６７】
ステップＳ１６−９：ホワイトバランス調整回路１５は、光源らしさ度マップ（図６）を重みマップ（図１５）により重み付けし、重み付け後の光源らしさ度マップを取得する。この際、光源らしさ度マップの各領域の光源らしさ度へ乗算される重み値は、例えば、重みマップ上でその領域の中心座標の属する領域（扇状領域又は主要被写体領域）に割り当てられた重み値と同じに設定される。
【００６８】
なお、本ステップで使用される重みマップの働きを可視化したのが、図１６（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）である。図１６（Ａ）が詳細画像（斜光撮影の場合）であり、図１６（Ｂ）が重み付け前の光源らしさ度マップであり、図１６（Ｃ）が重みマップであり、図１６（Ｄ）が重み付け後の光源らしさ度マップである。
【００６９】
すなわち、（詳細画像の撮影が斜光撮影であった場合に）本ステップで使用される重みマップ（図１６（Ｃ））には、主要被写体領域（ここでは人物領域ｏ）から見て照明方向の下流側（右下半分）に位置する領域（例えば太陽領域ａ）の光源らしさ度を抑え、かつ、主要被写体領域（ここでは人物領域ｏ）から見て照明方向の上流側（左上半分）に位置する領域（例えばランプ領域ｇ、シェード領域ｇ）の光源らしさ度を相対的に向上させるような働きがある。
【００７０】
ステップＳ１６−１０：ホワイトバランス調整回路１５は、重み付け後の光源らしさ度マップから、光源らしさ度が最高である１又は複数の領域を見出し、その領域を、主要被写体（ここでは人物）を照明した光源の存在領域と判断する（以下、この領域を「光源領域」と称す。）。続いてホワイトバランス調整回路１５は、その光源領域の平均色度を無彩色に近づけるためのホワイトバランスゲイン（又は無彩色化するためのホワイトバランスゲイン）を、主要被写体領域（ここでは人物領域ｏ）にとって最適なホワイトバランスゲインとして算出する。
【００７１】
なお、図１６（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）に示す例（斜光撮影）では、重み付け後の光源らしさ度が最高値となるのはランプ領域ｆなので、ランプ領域ｆの平均色度を無彩色に近づけるためのホワイトバランスゲイン（又は無彩色化するためのホワイトバランスゲイン）が、主要被写体領域（ここでは人物領域ｏ）にとって最適なホワイトバランスゲインとして算出される。
【００７２】
但し、ホワイトバランス調整回路１５は、重み付け後の光源らしさ度の最高値が閾値未満（例えば＋２未満）であった場合には、最高値の属する１又は複数の領域の中から、更に、特定色の物体（例えば無彩色物体や人物の顔）が存在していると推定される部分領域を抽出し、その部分領域の平均色度をその物体の本来の色に近づけるためのホワイトバランスゲイン（又は本来の色にするためのホワイトバランスゲイン）を、主要被写体領域（ここでは人物領域ｏ）にとって最適なホワイトバランスゲインとして算出する。
【００７３】
そして、ホワイトバランス制御回路１５は、算出したホワイトバランスゲインを詳細画像の各画素へ乗算することにより、ホワイトバランス調整後の詳細画像を取得し、ＣＰＵ２１へ完了通知を与え、図３のフローを終了する（なお、詳細画像に対して画像処理が施されるのは、図３のフローの終了後である。）。
【００７４】
ステップＳ１６−１１：ホワイトバランス調整回路１５は、ＣＰＵ２１から与えられた撮影条件データに基づき、詳細画像の撮影が閃光撮影であったか否かを判別し、閃光撮影であった場合には、詳細画像の撮影が順光撮影であったとみなしてステップＳ１６−１２へ移行し、閃光撮影でなかった場合には、詳細画像の撮影が逆光撮影であったとみなしてステップＳ１６−１４へ移行する。
【００７５】
よって、例えば図１７（Ａ）に示すとおり主要被写体（ここでは人物）が閃光で主に正面から照明されていた場合は、詳細画像の撮影は順光撮影であったとみなされ、例えば図１８（Ａ）に示すとおり主要被写体（ここでは人物）が自然光で主に背後から照明されていた場合は、詳細画像の撮影は逆光撮影であったとみなされる。
【００７６】
ステップＳ１６−１２：ホワイトバランス調整回路１５は、主要被写体領域（ここでは人物領域ｏ）に存在する物体（ここでは人物）の照明方向を、参照領域（ここでは顔領域ｏｆ）の明暗ベクトルに拘わらず、順方向（手前から奥へ向かう方向）とみなす。
【００７７】
ステップＳ１６−１３：ホワイトバランス調整回路１５は、以下の手順（ｇ）〜（ｈ）により順光撮影用の重みマップを作成し、ステップＳ１６−９へ移行する。
【００７８】
（ｇ）マップ全域を、主要被写体領域（ここでは人物領域ｏ）と、それ以外の背景領域とに分割する。
【００７９】
（ｈ）マップ上の主要被写体領域（ここでは人物領域ｏ）に対して比較的高い重み値（＋１）を割り当て、マップ上の背景領域に対して比較的低い重み値（０）を割り当てる。
【００８０】
なお、図１７（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）には、本ステップで作成される重みマップの働きを示した。図１７（Ａ）が詳細画像（順光撮影の場合）であり、図１７（Ｂ）が重み付け前の光源らしさ度マップであり、図１７（Ｃ）が重みマップであり、図１７（Ｄ）が重み付け後の光源らしさ度マップである。
【００８１】
すなわち、本ステップで作成される重みマップ（図１７（Ｃ））には、背景領域の光源らしさ度を抑え、主要被写体領域（ここでは人物領域ｏ）の光源らしさ度を相対的に向上させるような働きがある。
【００８２】
ステップＳ１６−１４：ホワイトバランス調整回路１５は、詳細画像の主要被写体領域（ここでは人物領域ｏ）の絵柄又は参照領域（ここでは顔領域ｏｆ）の絵柄が逆光撮影の特徴を有しているか否かを判別し、有していた場合には、詳細画像の撮影が逆光撮影であったとみなしてステップＳ１６−１５へ移行し、有していなかった場合には、詳細画像の撮影が順光撮影であったとみなして前述したステップＳ１６−１２へ移行する。
【００８３】
ステップＳ１６−１５：ホワイトバランス調整回路１５は、主要被写体領域（ここでは人物領域ｏ）に存在する物体（ここでは人物）の照明方向を、参照領域（ここでは顔領域ｏｆ）の明暗ベクトルに拘わらず、逆光方向（奧から手前へ向かう方向）とみなす。
【００８４】
ステップＳ１６−１６：ホワイトバランス調整回路１５は、主要被写体領域（ここでは人物領域ｏ）の明るさ調整に必要な情報をＣＰＵ２１へ出力する。それを受けたＣＰＵ２１は、その情報に基づき階調変換パラメータ（階調変換領域及び階調変換特性）を作成し、画像処理回路１４の階調変換処理部へ設定する。なお、この階調変換特性は、例えば図１３に示した変換特性であって、主要被写体領域（ここでは人物領域ｏ）のうち明るい輝度範囲に属する画素の輝度を維持したまま、主要被写体領域（ここでは人物領域ｏ）のうち暗い輝度範囲に属する画素の輝度を明るい輝度範囲へと持ち上げるような特性である。
【００８５】
よって、詳細画像の撮影が逆光撮影であった場合は、後に実行される階調変換処理（ステップＳ１７）により、主要被写体領域（ここでは人物領域ｏ）のうち影となっていた部分（逆光撮影の場合は人物の大部分）が明るく補正される。なお、ここでは明るさ調整の対象を主要被写体領域（ここでは人物領域ｏ）の全域としたが、参照領域（ここでは顔領域ｏｆ）のみに制限してもよい。
【００８６】
ステップＳ１６−１７：ホワイトバランス調整回路１５は、以下の手順（ｇ）〜（ｈ）により逆光撮影用の重みマップを作成し、ステップＳ１６−９へ移行する。
【００８７】
（ｇ）マップ全体を、主要被写体領域（ここでは人物領域ｏ）と、それ以外の背景領域とに分割する。
【００８８】
（ｈ）マップ上の主要被写体領域（ここでは人物領域ｏ）に対して比較的低い重み値（０）を割り当て、マップ上の背景領域に対して比較的高い重み値（＋１）を割り当てる。
【００８９】
なお、図１８（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）には、本ステップで作成される重みマップの働きを示した。図１８（Ａ）が詳細画像（逆光撮影の場合）であり、図１８（Ｂ）が重み付け前の光源らしさ度マップであり、図１８（Ｃ）が重みマップであり、図１８（Ｄ）が重み付け後の光源らしさ度マップである。
【００９０】
すなわち、本ステップで作成される重みマップ（図１８（Ｃ））には、主要被写体領域（ここでは人物領域ｏ）の光源らしさ度を抑え、背景領域の光源らしさ度を相対的に向上させるような働きがある（以上、ステップＳ１６−１７の説明。）。
【００９１】
以上、本実施形態のホワイトバランス調整回路１５は、主要被写体（ここでは人物）の照明方向を反映した重みマップ（図１６（Ｃ）、図１７（Ｃ）、図１８（Ｃ））により、光源らしさ度マップ（図１６（Ｂ）、図１７（Ｂ）、図１８（Ｂ））を重み付けしてから、ホワイトバランスゲインを算出する。
【００９２】
これらの重みマップ（図１６（Ｃ）、図１７（Ｃ）、図１８（Ｃ））は何れも、主要被写体領域（ここでは人物領域ｏ）から見て照明方向の上流側に位置する領域の光源らしさ度を相対的に向上させ、下流側に位置する領域の光源らしさ度を相対的に抑える働きがある。
【００９３】
したがって、本実施形態のホワイトバランス調整回路１５は、主要被写体（ここでは人物）を照明した光源が、主要被写体領域（ここでは人物領域ｏ）から見て何れの方向に存在していたとしても、主要被写体領域（ここでは人物領域ｏ）に最適なホワイトバランスゲインを確実に算出することができる。
【００９４】
また、本実施形態のホワイトバランス調整回路１５は、主要被写体（ここでは人物）の照明方向を推測する際に、詳細画像の撮影が斜光撮影、逆光撮影、順光撮影の何れであるかを考慮し、更に、詳細画像の撮影が斜光撮影であった場合には、主要被写体領域（ここでは人物領域ｏ）の中の参照領域（ここでは顔領域ｏｆ）の明暗ベクトルを考慮する。したがって、本実施形態のホワイトバランス調整回路１５は、照明方向の異なる様々な撮影シーンに対応することができる。
【００９５】
なお、本実施形態のホワイトバランス調整回路１５は、ステップＳ１６−１０で算出したホワイトバランスゲインの適用先を詳細画像の全域としたが、主要被写体領域（ここでは人物領域ｏ）のみとしてもよい。但し、その場合は、背景領域に適用されるホワイトバランスゲインについては、別途算出する必要がある。なお、その場合は、背景領域に適用されるホワイトバランスゲインを、主要被写体領域（ここでは人物領域ｏ）に適用されるホワイトバランスゲインと同様に算出してもよい。つまり、上述したホワイトバランスゲインの算出手順は、主要被写体領域以外の領域に対しても、適用可能である。
【００９６】
また、上述した図１５（重みマップ）では、周方向における分割線の配置ピッチを３０°としたが、周方向における分割線の配置ピッチを３０°以外の値に設定してもよい。例えば、演算を簡単にするため、９０°、１８０°などと粗く設定してもよい。
【００９７】
また、上述した図１５（斜光撮影用の重みマップ）では、周方向における分割線の配置ピッチを均等としたが、不均等でもよい。例えば、照明方向の上流側（図の左上半分）の配置ピッチを細かく設定し、照明方向の下流側（図の右下半分）の配置ピッチを粗く設定してもよい（因みに、図１５の例では、配置ピッチは均等であったが、下流側の複数の扇状領域へ共通の重み値を割り当てたため、下流側の配置ピッチを粗くしたのと同じ効果が得られる。）。
【００９８】
また、上述した図１５（斜光撮影用の重みマップ）は、重み値を領域毎に割り当てているので、重み値の分布は階段状になるが、重み値を位置毎（例えば周位置毎）に割り当てることにより、重み値の分布を滑らかにしてもよい。但し、重み値を領域毎に割り当てた方が、重み付けに要する演算を簡略化することができるので、望ましい。
【００９９】
また、ステップＳ１６−２におけるホワイトバランス調整回路１５は、詳細画像を、サイズ及び形状が互いに異なる複数の領域に分割したが、詳細画像を、サイズ及び形状が共通の複数の領域（例えば複数の矩形領域）に分割してもよい。
【０１００】
また、本実施形態のホワイトバランス調整回路１５は、ホワイトバランスゲインの算出に使用する画像を、詳細画像それ自体としたが、算出に要する演算量を軽減するため、詳細画像の代わりに、詳細画像のサイズ縮小版としてもよい。また、メインの撮像素子１１とは別に、被写界の色度分布（及び輝度分布）を監視するサブの撮像素子（測光センサ）が電子カメラ１に備えられていた場合には、ホワイトバランスゲインの算出に使用する画像を、サブの撮像素子が取得した画像としてもよい。
【０１０１】
また、本実施形態の電子カメラ１は、ホワイトバランス調整を撮影時に行ったが、同様のホワイトバランス調整をＲＡＷ画像の再生時に（ＲＡＷ画像の現像処理の１種として）行ってもよい。その場合、ステップＳ１６−１１における判別は、ＲＡＷ画像ファイルに付加された撮影条件データに基づき行えばよい。
【０１０２】
また、本実施形態は、電子カメラの実施形態であったが、ホワイトバランス調整に拘わる電子カメラの動作を、電子カメラとは別体で設けられた画像処理装置、例えば、電子フォトフレーム、プリンタ、コンピュータなどに実行させてもよい。また、その動作を汎用コンピュータに実行させる場合は、その動作のコンピュータプログラムが通信網又は記憶媒体を介してコンピュータへインストールされることになる。
【符号の説明】
【０１０３】
１１…撮像素子、１２…信号処理回路、１３…バッファメモリ、１４…画像処理回路、１５…ホワイトバランス調整回路、１６…表示制御回路、１７…内部モニタ、１８…圧縮・伸張回路、１９…カードインタフェース、２１…ＣＰＵ、２２…撮像回路、２３…入力器、２４…外部接続端子、３０…ストロボ装置
【図１】
0005732799.tif 000002
【図２】
0005732799.tif 000003
【図３】
0005732799.tif 000004
【図４】
0005732799.tif 000005
【図５】
0005732799.tif 000006
【図６】
0005732799.tif 000007
【図７】
0005732799.tif 000008
【図８】
0005732799.tif 000009
【図９】
0005732799.tif 000010
【図１０】
0005732799.tif 000011
【図１１】
0005732799.tif 000012
【図１２】
0005732799.tif 000013
【図１３】
0005732799.tif 000014
【図１４】
0005732799.tif 000015
【図１５】
0005732799.tif 000016
【図１６】
0005732799.tif 000017
【図１７】
0005732799.tif 000018
【図１８】
0005732799.tif 000019