(57)【要約】【課題】少ない演算処理を追加するだけで、あらゆる撮影条件及び被写体に対しても適切なホワイトバランス調整処理を実行でき、以て殆どの被写体に対して良好な静止画像データの撮影を実現する、画像処理装置、撮影方法、撮影プログラム、画像処理方法及び画像処理プログラムを提供する。【解決手段】撮影画像データの各ピクセルの明るさに応じて最適なホワイトバランスを設定するホワイトバランスマップと、撮影画像データ全体に均一なホワイトバランスを設定するホワイトバランス値を混合して修正ホワイトバランスマップを作成する際、被写体の動きと被写体の背景の明るさに応じて混合する比率を変える、混合係数算出部を設けた。混合係数が変化することで、色ずれを防ぎつつ、被写体の動きと被写体の背景の明るさに応じて適切なホワイトバランスの修正処理を遂行することができる。【選択図】図４
2012019293.tif 000002
【特許請求の範囲】
【請求項１】
所定の撮影指令を受けて撮像素子が出力する信号に基づくデータを処理して撮影画像データを出力するデータ処理部と、
前記データ処理部により出力された第一の撮影画像データに基づいて前記第一の撮影画像データの全体に均一なホワイトバランス値を算出するホワイトバランス作成部と、
前記第一の撮影画像データと前記第一の撮影画像データと露光条件の異なる第二の撮影画像データに基づいて前記第一の撮影画像データのピクセル毎に異なり得るホワイトバランスマップを算出するホワイトバランスマップ作成部と、
前記第一の撮影画像データと前記第二の撮影画像データに基づいて前記ホワイトバランス値と前記ホワイトバランスマップを混合する際の係数を算出する混合係数算出部と、
前記ホワイトバランス値と前記ホワイトバランスマップを前記混合係数を伴って加算して修正ホワイトバランスマップを出力する加算器と、
前記修正ホワイトバランスマップと前記撮影画像データを加算する乗算器と
を具備する画像処理装置。
【請求項２】
前記混合係数算出部は、
被写体の移動量を検出して移動量を出力する動き検出部と、
前記被写体の輝度と前記被写体の周囲の輝度の比率を算出して平均輝度比を出力する高輝度チェック部と、
前記移動量と前記平均輝度比に基づいて混合係数を算出する混合係数導出部と
を具備する、請求項１記載の画像処理装置。
【請求項３】
前記混合係数算出部は更に、
被写体を識別して前記被写体を囲む被写体識別枠の情報を出力する被写体認識部と
を具備し、
前記動き検出部は、前記被写体識別枠の情報に基づいて前記被写体の撮影直前の移動量を検出する、請求項２記載の画像処理装置。
【請求項４】
前記混合係数算出部は更に、
前記被写体識別枠の情報から前記被写体識別枠を囲む高輝度枠の情報を出力する高輝度枠算出部と、
を具備し、
前記高輝度チェック部は、
前記被写体識別枠の情報と前記高輝度枠の情報に基づいて、前記撮影画像データのうち、前記被写体識別枠に囲まれる顔枠領域に属するピクセルの平均輝度である顔枠領域内平均輝度と、前記撮影画像データのうち、前記被写体識別枠と前記高輝度枠との間に囲まれる高輝度チェック領域に属するピクセルの平均輝度である高輝度チェック領域内平均輝度を算出し、前記高輝度チェック領域内平均輝度を前記顔枠領域内平均輝度で除算した平均輝度比を出力する、請求項２又は３記載の画像処理装置。
【請求項５】
所定の撮影指令を受けて撮像素子が出力する信号に基づくデータを処理して撮影画像データを得る撮影画像データ取得ステップと、
前記撮像素子が出力する信号に基づくデータをモニタ用に処理してモニタ画像データを得るモニタ画像データ取得ステップと、
前記撮影画像データに基づいて前記撮影画像データの全体に均一なホワイトバランス値を算出するホワイトバランス作成ステップと、
前記撮影画像データと前記モニタ画像データに基づいて前記撮影画像データのピクセル毎に異なり得るホワイトバランスマップを算出するホワイトバランスマップ作成ステップと、
前記撮影画像データと前記モニタ画像データに基づいて前記ホワイトバランス値と前記ホワイトバランスマップを混合する際の係数を算出する混合係数算出ステップと、
前記ホワイトバランス値と前記ホワイトバランスマップを前記混合係数を伴って加算して修正ホワイトバランスマップを出力する加算ステップと、
前記修正ホワイトバランスマップと前記撮影画像データを乗算する乗算ステップと
を有する撮影方法。
【請求項６】
撮像素子を有するコンピュータを、
所定の撮影指令を受けて前記撮像素子が出力する信号に基づくデータを処理して撮影画像データを出力するデータ処理部と、
前記撮像素子が出力する信号に基づくデータをモニタ用に処理してモニタ画像データを出力するモニタ処理部と、
前記撮影画像データに基づいて前記撮影画像データの全体に均一なホワイトバランス値を算出するホワイトバランス作成部と、
前記撮影画像データと前記モニタ画像データに基づいて前記撮影画像データのピクセル毎に異なり得るホワイトバランスマップを算出するホワイトバランスマップ作成部と、
前記撮影画像データと前記モニタ画像データに基づいて前記ホワイトバランス値と前記ホワイトバランスマップを混合する際の係数を算出する混合係数算出部と、
前記ホワイトバランス値と前記ホワイトバランスマップを前記混合係数を伴って加算して修正ホワイトバランスマップを出力する加算器と、
前記修正ホワイトバランスマップと前記撮影画像データを加算する乗算器と
を具備する撮像装置として機能させる撮影プログラム。
【請求項７】
第一の画像データと、前記第一の画像と露光条件が異なる第二の画像データと、に基づき第三の画像データを生成する画像生成部と、
前記前記第一の画像データに基づき、所定の被写体を認識する被写体認識部と、
前記第一の画像データにおける、前記被写体認識部により認識された前記被写体の周辺領域の輝度値の状態を検出する輝度値状態検出部とを備え、
前記画像生成部は前記輝度値状態検出部の検出結果に応じて前記生成を行う
画像処理装置。
【請求項８】
前記輝度値状態検出部は、前記被写体の周辺領域において所定の値よりも輝度値が大きい領域の割合に応じて、混合係数を算出し、
前記画像生成部は、前記第一の画像データと前記第二の画像データに基づいて前記撮影画像データの領域毎に異なるホワイトバランスマップを算出し、前記ホワイトバランスマップと、前記第一の画像または前記第二の画像に基づき、前記混合係数に応じて第三の画像を生成する
請求項７記載の画像処理装置。
【請求項９】
所定の撮影指令を受けて撮像素子が出力する信号に基づくデータを処理することで得られる撮影画像データに基づいて前記撮影画像データの全体に均一なホワイトバランス値を算出するホワイトバランス作成ステップと、
前記撮像素子が出力する信号に基づくデータをモニタ用に処理することで得られるモニタ画像データと前記撮影画像データに基づいて前記撮影画像データのピクセル毎に異なり得るホワイトバランスマップを算出するホワイトバランスマップ作成ステップと、
前記撮影画像データと前記モニタ画像データに基づいて前記ホワイトバランス値と前記ホワイトバランスマップを混合する際の係数を算出する混合係数算出ステップと、
前記ホワイトバランス値と前記ホワイトバランスマップを前記混合係数を伴って加算して修正ホワイトバランスマップを出力する加算ステップと、
前記修正ホワイトバランスマップと前記撮影画像データを乗算する乗算ステップと
を有する画像処理方法。
【請求項１０】
コンピュータを、
所定の撮影指令を受けて前記撮像素子が出力する信号に基づくデータを処理することで得られる撮影画像データに基づいて前記撮影画像データの全体に均一なホワイトバランス値を算出するホワイトバランス作成部と、
前記撮像素子が出力する信号に基づくデータをモニタ用に処理することで得られるモニタ画像データと前記撮影画像データに基づいて前記撮影画像データのピクセル毎に異なり得るホワイトバランスマップを算出するホワイトバランスマップ作成部と、
前記撮影画像データと前記モニタ画像データに基づいて前記ホワイトバランス値と前記ホワイトバランスマップを混合する際の係数を算出する混合係数算出部と、
前記ホワイトバランス値と前記ホワイトバランスマップを前記混合係数を伴って加算して修正ホワイトバランスマップを出力する加算器と、
前記修正ホワイトバランスマップと前記撮影画像データを乗算する乗算器と
を具備する画像処理装置として機能させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮影方法、撮影プログラム、画像処理方法及び画像処理プログラムに関する。
より詳細には、被写体の動きに対して的確なホワイトバランス調整処理を実行する、画像処理装置、撮影方法、撮影プログラム、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【０００２】
周知のように、デジタルカメラは広く一般に浸透している。そして、デジタルカメラの撮像能力に対する市場の要求は極めて高い。市場では常に、従来より鮮明で美しい画像が撮影できるデジタルカメラが求められている。
デジタルカメラが鮮明で美しい画像を撮影するためには、大別して二つのアプローチがある。一つは、撮像素子自体の技術革新である。もう一つは、撮像した画像データを加工する技術である。
【０００３】
一般的に、デジタルカメラを用いて、暗い場所でストロボを用いて何らかの被写体を撮影すると、ストロボによって明るく照らされた箇所（主に被写体が該当する。）と、ストロボの発光が及ばない箇所（主に被写体の周囲の空間が該当する。）との間で、発色のバランスが崩れる、という現象がしばしば起きることが知られている。この問題は、ストロボのホワイトバランスと、周囲を照らす光源のホワイトバランスが異なることに起因する。
銀塩フィルムを用いたかつてのカメラの場合、このホワイトバランスの問題に対し、根本的な解決策はなかった。しかし、デジタルカメラの場合、撮像素子から取得した画像データを適切に加工することで、局所的なホワイトバランスの調整も自由にできる。したがって、撮像した画像データを適切に加工する技術を発達させることで、かつての銀塩カメラでは実現できなかった、劣悪な撮影条件の下で自然且つ鮮明で美しい画像を得ることができる。
【０００４】
特許文献１には、ストロボによって明るく照らされた箇所と、ストロボの発光が及ばない箇所との間で発色のバランスが崩れる現象に対し、ストロボを発光させずに撮影した非発光画像と、ストロボを発光させて撮影した発光画像を用いて、適切な演算処理を行うことで、ストロボによって明るく照らされた箇所とストロボの発光が及ばない箇所とのそれぞれに適切なホワイトバランス調整を自動的に行う技術内容が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２１０４８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の技術は、実際のデジタルカメラの場合、発光画像はシャッターボタンを押した時点の画像データであり、これに対する非発光画像は、シャッターボタンを押す直前の、モニタ用の画像データを用いる。非発光画像と発光画像との間にできるだけ差が生じないようにするために、非発光画像は、フレームバッファに格納されて常時更新され続けるモニタ画面用の画像データの、撮影直前の最新の画像データを用いる。
しかしながら、特許文献１の技術では、被写体或は撮影環境によっては適切なホワイトバランス処理が達成されず、局所的に発色のムラ（色ずれ）を引き起こす場合があった。
一つは、被写体が動いている場合である。この場合、発光画像と非発光画像との間で被写体が動いているために、被写体が動いている箇所で色ずれを引き起こす。
図１６（ａ）、（ｂ）及び（ｃ）は、被写体が動くことによって生じる色ずれの現象を説明する概略図である。特許文献１の技術を用いた場合、非発光画像と発光画像との間に被写体が動くと、該当箇所のホワイトバランスが狂い、結果として色ずれが発生する。
もう一つは、被写体の背景が部分的に明るく照らされている場合である。非発光画像に局所的なホワイトバランスのずれが生じるために、被写体の背景が部分的に明るくなっている箇所で色ずれを引き起こす。
【０００７】
本発明はかかる課題を解決し、少ない演算処理を追加するだけで、あらゆる撮影条件及び被写体に対しても適切なホワイトバランス調整処理を実行でき、以て殆どの被写体に対して良好な静止画像データの撮影を実現する、画像処理装置、撮影方法、撮影プログラム、画像処理方法及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の画像処理装置は、所定の撮影指令を受けて撮像素子が出力する信号に基づくデータを処理して撮影画像データを出力するデータ処理部と、撮像素子が出力する信号に基づくデータをモニタ用に処理してモニタ画像データを出力するモニタ処理部と、撮影画像データに基づいて撮影画像データの全体に均一なホワイトバランス値を算出するホワイトバランス作成部と、撮影画像データとモニタ画像データに基づいて撮影画像データのピクセル毎に異なり得るホワイトバランスマップを算出するホワイトバランスマップ作成部と、撮影画像データとモニタ画像データに基づいてホワイトバランス値とホワイトバランスマップを混合する際の係数を算出する混合係数算出部と、ホワイトバランス値とホワイトバランスマップを混合係数を伴って加算して修正ホワイトバランスマップを出力する加算器と、修正ホワイトバランスマップと撮影画像データを加算する乗算器とを具備する。
【０００９】
撮影画像データの各ピクセルの明るさに応じて最適なホワイトバランスを設定するホワイトバランスマップと、撮影画像データ全体に均一なホワイトバランスを設定するホワイトバランス値を混合して修正ホワイトバランスマップを作成する際、被写体の動きと被写体の背景の明るさに応じて混合する比率を変える、混合係数算出部を設けた。混合係数が変化することで、色ずれを防ぎつつ、被写体の動きと被写体の背景の明るさに応じて適切なホワイトバランスの修正処理を遂行することができる。
【発明の効果】
【００１０】
本発明により、少ない演算処理を追加するだけで、あらゆる撮影条件及び被写体に対しても適切なホワイトバランス調整処理を実行でき、以て殆どの被写体に対して良好な静止画像データの撮影を実現する、画像処理装置、撮影方法、撮影プログラム、画像処理方法及び画像処理プログラムを提供できる。
【図面の簡単な説明】
【００１１】
【図１】デジタルカメラの正面の外観図と、デジタルカメラの背面の外観図である。
【図２】デジタルカメラのハードウェアのブロック図である。
【図３】デジタルカメラの機能ブロック図である。
【図４】ホワイトバランス処理部の機能ブロック図である。
【図５】ホワイトバランスマップ作成部の機能ブロック図である。
【図６】混合係数算出部の機能ブロック図である。
【図７】動き検出用フレームバッファに格納されているモニタ画像データと顔枠の関係を示す概略図と、モニタ画像フレームバッファに格納されているモニタ画像データと顔枠の関係を示す概略図と、撮影画像データと顔枠と高輝度枠の関係を示す概略図である。
【図８】高輝度チェック部の機能ブロック図である。
【図９】補正値変換部の入出力の関係を示すグラフである。
【図１０】混合係数算出部が実行する、混合係数「ｋ」及び「１−ｋ」を算出する処理の流れを示すフローチャートである。
【図１１】被写体と被写体識別枠と高輝度枠の関係を示す概略図である。
【図１２】デジタルカメラの機能ブロック図である。
【図１３】画像処理装置の機能ブロック図である。
【図１４】混合係数算出部の一部を改変した機能ブロック図である。
【図１５】補正値変換部の入出力の関係を示すグラフである。
【図１６】従来技術による、被写体が動くことによって生じる色ずれの現象を説明する概略図である。
【発明を実施するための形態】
【００１２】
［外観］
図１（ａ）はデジタルカメラの正面の外観図であり、図１（ｂ）はデジタルカメラの背面の外観図である。
デジタルカメラ１０１は筐体１０２の正面に図示しないズーム機構及びフォーカス調整機構を内蔵する鏡筒１０３が設けられており、鏡筒１０３の中にはレンズ１０４が組み付けられている。また、鏡筒１０３の側にはストロボ１０５が設けられている。
筐体１０２の上側にはシャッターボタン１０６が設けられている。
筐体１０２の裏面にはファインダーを兼用する液晶ディスプレイモニタ１０７が設けられている。液晶ディスプレイモニタ１０７の右側には操作ボタン１０８が複数設けられている。
図示しない筐体１０２の下側には不揮発性ストレージであるフラッシュメモリを格納する蓋が設けられている。
【００１３】
本実施形態に係るデジタルカメラ１０１は、いわゆるデジタルスチルカメラであり、被写体を撮影して静止画像データを作成し、不揮発性ストレージに記録する。なお、デジタルカメラ１０１は動画撮影機能も備えているが、本実施形態では説明を割愛する。
【００１４】
［ハードウェア］
図２は、デジタルカメラ１０１のハードウェアのブロック図である。
デジタルカメラ１０１は、一般的なマイクロコンピュータを構成する。
バス２０１には、デジタルカメラ１０１全体の制御に必要な、周知のＣＰＵ２０２、ＲＯＭ２０３、ＲＡＭ２０４が接続されている他、ＤＳＰ２０５が接続されている。ＤＳＰ２０５は、本実施形態で説明するホワイトバランス調整処理を実現するために必要な、デジタル画像データという大量のデータに対する、大量の演算処理を担当する。
【００１５】
撮像素子２０６は、レンズ１０４によって結像される被写体が発する光を電気信号に変換する。撮像素子２０６が出力するアナログ信号は、Ａ／Ｄ変換器２０７によってＲＧＢのデジタル信号に変換される。
モータドライバ２０８によって駆動されるモータ２０９は、鏡筒１０３を通じてレンズ１０４を駆動し、ピントとズームの制御を行う。
ストロボ１０５はストロボドライバ２１０によって発光駆動される。
撮影されたデジタル画像データは、ファイルとして不揮発性ストレージ２１１に記録される。
パソコン等の外部機器と不揮発性ストレージ２１１に格納されているファイルの送受信を行うために、ＵＳＢインターフェース２１２が設けられている。
表示部２１３は液晶ディスプレイモニタ１０７である。
操作部２１４はシャッターボタン１０６及び操作ボタン１０８である。
【００１６】
［ソフトウェアの全体構成］
図３は、デジタルカメラ１０１の機能ブロック図である。
被写体から発される光はレンズ１０４によって撮像素子２０６上に結像して、電気信号に変換される。
変換された信号はＡ／Ｄ変換器２０７によってＲＧＢのデジタル信号に変換される。
データ処理部３０３は、操作部２１４の一部であるシャッターボタン１０６が操作されたことに呼応する制御部３０７の制御によって、Ａ／Ｄ変換器２０７からデータを受け取り、データの並べ替えや欠陥補正、サイズ変更等の各種処理を行い、画像生成部とも言えるホワイトバランス処理部３０１に送る。
以上、レンズ１０４、撮像素子２０６、Ａ／Ｄ変換器２０７及びデータ処理部３０３は、撮影時のデジタル画像データ（以下「撮影画像データ」）を形成してホワイトバランス処理部３０１に送る、撮影処理部であるとも言える。
【００１７】
一方、Ａ／Ｄ変換器２０７の出力データは、モニタ処理部３０２にも送られる。モニタ処理部３０２は、表示部２１３に表示するために適切なサイズ変更処理を施して、モニタ画像データを形成し、ホワイトバランス処理部３０１と制御部３０７に送る。
【００１８】
ホワイトバランス処理部３０１は、データ処理部３０３が出力する撮影画像データと、モニタ処理部３０２が出力するモニタ画像データを受け取り、撮影画像データに対してホワイトバランス調整処理を行う。
ホワイトバランス処理部３０１によってホワイトバランス調整処理が施された撮影画像データは、エンコーダ３０４によってＪＰＥＧ等の所定の画像データフォーマットに変換された後、画像ファイルとしてフラッシュメモリ等の不揮発性ストレージ２１１に記憶される。
【００１９】
制御部３０７は、操作部２１４の操作等に応じて、撮像素子２０６、Ａ／Ｄ変換器２０７、データ処理部３０３、ホワイトバランス処理部３０１、エンコーダ３０４及び不揮発性ストレージ２１１を制御する。特に、操作部２１４からシャッターボタン１０６の操作を検出すると、撮像素子２０６、Ａ／Ｄ変換器２０７及びデータ処理部３０３にトリガ信号を与えて、撮影画像データを生成させる。
また、制御部３０７はモニタ処理部３０２からモニタ画像データを受け取って、撮像素子２０６に結像している画像を表示部２１３を通じて表示させると共に、操作部２１４の操作に応じて種々の設定画面を表示させる。
【００２０】
［ホワイトバランス処理部］
図４は、ホワイトバランス処理部３０１の機能ブロック図である。
データ処理部３０３が出力する撮影画像データは、一旦撮影画像フレームバッファ４０１に蓄積される。
一方、モニタ処理部３０２が出力するモニタ画像データも、一旦モニタ画像フレームバッファ４０２に蓄積される。
更に、モニタ画像フレームバッファ４０２が出力するモニタ画像データは、遅延素子４０３を通じて動き検出用フレームバッファ４０４に蓄積される。つまり、モニタ画像フレームバッファ４０２に格納されているモニタ画像データと、動き検出用フレームバッファ４０４に格納されているモニタ画像データは、１フレーム分の時間差を有する。
【００２１】
モニタ画像フレームバッファ４０２の中は、常時最新のモニタ画像データで更新され続けるが、撮影画像フレームバッファ４０１に撮影画像データが蓄積された時点で、制御部３０７の制御によってモニタ画像フレームバッファ４０２の更新は一旦中断され、ホワイトバランス処理部３０１全体の処理が終わるまで、モニタ画像フレームバッファ４０２の更新は中断される。
同様に、動き検出用フレームバッファ４０４の中も、常時、モニタ画像フレームバッファ４０２より１フレーム分遅れたモニタ画像データで更新され続けるが、撮影画像フレームバッファ４０１に撮影画像データが蓄積された時点で、制御部３０７の制御によって動き検出用フレームバッファ４０４の更新は一旦中断され、ホワイトバランス処理部３０１全体の処理が終わるまで、動き検出用フレームバッファ４０４の更新は中断される。
【００２２】
撮影画像フレームバッファ４０１に蓄積された撮影画像データは、ホワイトバランス作成部４０５ａと、ホワイトバランスマップ作成部４０６と、混合係数算出部４０７に供給される。
【００２３】
ホワイトバランス作成部４０５ａは、撮影画像データを読み込み、周知のホワイトバランス値の算出処理を行う。具体的には、撮影画像データの平均輝度値を求めた後、平均輝度値を閾値として、撮影画像データを、ストロボが照射されて明るくなっているピクセルの領域と、ストロボの照射が及ばず暗いままのピクセルの領域とに分類する。そして、明るいピクセルの領域に対して、予めＲＯＭ２０３に格納されているストロボの色温度情報と、制御部３０７から得られる撮影条件の情報を参照して、撮影画像データ全体に対して均一なホワイトバランス値を算出する。ホワイトバランス値は、ピクセルを構成する赤（Ｒ）、緑（Ｇ）及び青（Ｂ）のデータに対し、一律に乗算する三つの乗算値である。
ホワイトバランス値は、一旦ＲＡＭ２０４に形成されたホワイトバランス値メモリ４０８に記憶される。
【００２４】
ホワイトバランスマップ作成部４０６には、撮影画像フレームバッファ４０１に蓄積された撮影画像データの他、モニタ画像フレームバッファ４０２に蓄積されたモニタ画像データも入力される。
ホワイトバランスマップ作成部４０６は、撮影画像データとモニタ画像データを読み込み、ホワイトバランスマップの算出処理を行う。ホワイトバランスマップとは、撮影画像データの中で、ストロボが照射されて明るくなっているピクセルの領域と、ストロボの照射が及ばず暗いままのピクセルの領域のそれぞれに対して適切なホワイトバランスの調整を行うためのデータである。つまり、明るいピクセルの領域に対応する値と、暗いピクセルの領域に対応する値は異なる。したがって、ホワイトバランスマップは、ピクセルを構成する赤（Ｒ）、緑（Ｇ）及び青（Ｂ）のデータに対し、ピクセル毎に加算する加算値或は減算値の集合体であり、その要素数は撮影画像データの要素数と等しい。
ホワイトバランスマップは、一旦ＲＡＭ２０４に形成されたホワイトバランスマップメモリ４０９に記憶される。
ホワイトバランスマップ作成部４０６の詳細は図５で後述する。
【００２５】
混合係数算出部４０７には、撮影画像フレームバッファ４０１に蓄積された撮影画像データの他、モニタ画像フレームバッファ４０２に蓄積されたモニタ画像データと、動き検出用フレームバッファ４０４に蓄積されたモニタ画像データも入力される。
混合係数算出部４０７は、撮影画像データと２フレーム分のモニタ画像データを読み込み、混合係数「ｋ」と混合係数「１−ｋ」を算出する処理を行う。
混合係数「ｋ」はＲＡＭ２０４に形成された混合係数「ｋ」メモリ４１０に記憶される。混合係数「ｋ」メモリ４１０に記憶されている混合係数「ｋ」は、乗算器４１１によってホワイトバランスマップメモリ４０９に格納されているホワイトバランスマップに対して乗算処理される。
一方、混合係数「１−ｋ」はＲＡＭ２０４に形成された混合係数「１−ｋ」メモリ４１２に記憶される。混合係数「１−ｋ」メモリ４１２に記憶されている混合係数「１−ｋ」は、乗算器４１３によってホワイトバランス値メモリ４０８に格納されているホワイトバランス値に対して乗算処理される。
【００２６】
乗算器４１１が出力する修正されたホワイトバランスマップと、乗算器４１３が出力する修正されたホワイトバランス値は、加算器４１４によって加算処理される。具体的には、修正されたホワイトバランスマップを構成する、全てのピクセル毎の赤のデータに対し、修正されたホワイトバランス値の赤のデータを加算し、修正されたホワイトバランスマップを構成する、全てのピクセル毎の緑のデータに対し、修正されたホワイトバランス値の緑のデータを加算し、修正されたホワイトバランスマップを構成する、全てのピクセル毎の青のデータに対し、修正されたホワイトバランス値の青のデータを加算する。こうして、加算器４１４は修正ホワイトバランスマップを出力する。修正ホワイトバランスマップは、一旦修正ホワイトバランスマップメモリ４１５に蓄積される。
【００２７】
修正ホワイトバランスマップメモリ４１５に蓄積されている修正ホワイトバランスマップは、乗算器４１６によって撮影画像データに乗算される。こうして、撮影画像データのホワイトバランスが調整される。
【００２８】
［ホワイトバランスマップ作成部４０６］
図５は、ホワイトバランスマップ作成部４０６の機能ブロック図である。
モニタ画像フレームバッファ４０２に格納されているモニタ画像データは、ホワイトバランス作成部４０５ｂに入力される。ホワイトバランス作成部４０５ｂは、図４のホワイトバランス作成部４０５ａと全く同じ処理を行う。そして、ホワイトバランス作成部４０５ｂは非発光ホワイトバランス値を出力する。非発光ホワイトバランス値は、一旦非発光ホワイトバランス値メモリ５０１に記憶される。
【００２９】
一方、除算器５０２は、撮影画像フレームバッファ４０１に格納されている撮影画像データに対し、モニタ画像フレームバッファ４０２に格納されているモニタ画像データで除算する。なお、除算の際、撮影画像データのピクセル数とモニタ画像データのピクセル数が異なる場合は、モニタ画像データに対して適切な拡大・縮小処理を施して、ピクセル数（演算対象となる要素数）を合わせ込む。
除算器５０２は除算の結果、ストロボバランスマップを出力する。ストロボバランスマップは、一旦ストロボバランスマップメモリ５０３に蓄積される。
【００３０】
除算器５０４は、数値「１」５０５ａをストロボバランスマップメモリ５０３に格納されているストロボバランスマップの各要素で除算する。つまり、除算器５０４の出力データはストロボバランスマップの逆数になる。
乗算器５０６は、非発光ホワイトバランス値メモリ５０１に格納されている非発光ホワイトバランス値に、除算器５０４の出力データを乗算し、ホワイトバランスマップを出力する。ホワイトバランスマップは、ホワイトバランスマップメモリ４０９に蓄積される。
【００３１】
［混合係数算出部４０７］
図６は、混合係数算出部４０７の機能ブロック図である。
モニタ画像フレームバッファ４０２に蓄積されたモニタ画像データは、被写体を認識する被写体認識部とも言える顔認識部６０１ａに供給される。顔認識部６０１ａは、モニタ画像データに含まれている、被写体である人物の顔の位置及び大きさを認識し、顔を覆う長方形の座標データを出力する。これ以降、この「顔を覆う長方形」を、顔枠と呼ぶ。また、顔認識部６０１ａが出力する座標データを顔枠座標データと呼ぶ。
【００３２】
動き検出用フレームバッファ４０４に蓄積された、モニタ画像フレームバッファ４０２のモニタ画像データより１フレーム前のモニタ画像データは、顔認識部６０１ｂに供給される。顔認識部６０１ｂは、モニタ画像データに含まれている、被写体である人物の顔の位置及び大きさを認識し、顔枠座標データを出力する。
【００３３】
顔認識部６０１ｂが出力する顔枠座標データと、顔認識部６０１ｂが出力する顔枠座標データは、動き検出部６０２に入力される。動き検出部６０２は、それぞれの顔枠座標データの中心点座標を算出した後、中心点同士の距離を算出し、補正値変換部６０３ａへ出力する。これ以降、動き検出部６０２が出力する中心点同士の距離を顔枠移動量と呼ぶ。
【００３４】
一方、顔認識部６０１ｂが動き検出部６０２へ出力する、モニタ画像データに対する顔枠座標データは、高輝度枠算出部６０４と高輝度チェック部６０５にも出力される。
高輝度枠算出部６０４は、顔枠座標データによって形成される顔枠を、一定の面積比率で覆う、顔枠と相似関係である長方形の座標データを出力する。面積比率は、一例としては１．２５倍である。これ以降、この、顔枠に対して一定の面積比率であり、且つ顔枠と相似関係の長方形を、高輝度枠と呼ぶ。また、高輝度枠算出部６０４が出力する座標データを高輝度枠座標データと呼ぶ。
【００３５】
輝度値状態検出部とも言える高輝度チェック部６０５は、顔認識部６０１ｂが出力する、モニタ画像データに対する顔枠座標データと、高輝度枠算出部６０４が出力する高輝度枠座標データと、撮影画像フレームバッファ４０１に蓄積された撮影画像データを読み込む。そして、撮影画像データのうち、高輝度枠に囲まれ、且つ顔枠に囲まれる範囲を除外した範囲のピクセルの平均輝度と、顔枠に囲まれる範囲のピクセルの平均輝度との比を算出する。これ以降、高輝度チェック部６０５が出力する、高輝度枠に囲まれ、且つ顔枠に囲まれる範囲を除外した範囲のピクセルの平均輝度と、顔枠に囲まれる範囲のピクセルの平均輝度との比を平均輝度比と呼ぶ。
【００３６】
［顔枠と高輝度枠］
以上説明した、顔枠、顔枠座標データ、高輝度枠、そして高輝度枠座標データについて、図解で説明する。
図７（ａ）は、動き検出用フレームバッファ４０４に格納されているモニタ画像データと顔枠の関係を示す概略図であり、図７（ｂ）は、モニタ画像フレームバッファ４０２に格納されているモニタ画像データと顔枠の関係を示す概略図であり、図７（ｃ）は、撮影画像データと顔枠と高輝度枠の関係を示す概略図である。
【００３７】
図７（ａ）は、動き検出用フレームバッファ４０４に格納されているモニタ画像データを画面上に展開した状態を示す。
顔認識部６０１ｂは、モニタ画像データに含まれている人物の顔の部分を認識し、顔を覆う長方形の顔枠７０１を算出する。顔枠７０１はその左上と右下の座標データで表現できる。これが顔枠座標データである。顔枠座標データは、顔枠座標７０１ａ及び７０１ｂよりなる。
【００３８】
図７（ｂ）も、図７（ａ）と同様、モニタ画像フレームバッファ４０２に格納されているモニタ画像データを画面上に展開した状態を示す。
顔認識部６０１ｂは、撮影画像データに含まれている人物の顔の部分を認識し、顔を覆う長方形の顔枠７０３を算出し、顔枠７０３の左上と右下の座標データ、つまり顔枠座標データを出力する。
図７（ａ）と図７（ｂ）を見比べると、被写体である人物の顔が移動している。このため、顔枠の中心点は、顔枠７０１の中心点７０２から顔枠７０３の中心点７０４へ移動している。動き検出部６０２は、この中心点間の距離を算出する。
これ以降、顔枠７０３に囲まれる範囲を、顔枠領域７０５と呼ぶ。
【００３９】
図７（ｃ）も、図７（ａ）及び（ｂ）と同様、撮影画像データを画面上に展開した状態を示す。
高輝度枠算出部６０４は、顔枠７０３の面積に所定の定数（本実施形態では１．２５）を乗算し、顔枠７０３と中心が共通であり、アスペクト比が等しい、つまり相似形の長方形を算出する。これが高輝度枠７０６である。
これ以降、高輝度枠７０６に囲まれ、且つ顔枠７０３に囲まれる範囲を除外した範囲を、高輝度チェック領域７０７と呼ぶ。
高輝度チェック領域７０７は、被写体である人物の顔の後ろ側から光が照射されることによって、ストロボが照射する被写体の領域と混同してしまう可能性を検出するための領域である。つまり、顔の後ろから何らかの光で照らされているか否かを検出するための、輝度チェックの対象となる領域である。
【００４０】
［高輝度チェック部６０５］
図８は、高輝度チェック部６０５の機能ブロック図である。
顔枠内平均輝度算出部８０１は、顔枠座標データに基づいて、撮影画像データから顔枠領域７０５に含まれるピクセルの平均輝度（顔枠領域内平均輝度）を算出する。
高輝度枠内平均輝度算出部８０２は、顔枠座標データと高輝度枠座標データに基づいて、撮影画像データから高輝度チェック領域７０７に含まれるピクセルの平均輝度（高輝度チェック領域内平均輝度）を算出する。
除算器８０３は、高輝度チェック領域内平均輝度を顔枠領域内平均輝度で除算した値、すなわち平均輝度比を出力する。
【００４１】
図６に戻って、混合係数算出部４０７の説明を続ける。
動き検出部６０２が出力する顔枠移動量は、補正値変換部６０３ａに入力される。
補正値変換部６０３ａは、動き上限値６０６ａと動き下限値６０６ｂを参照して、顔枠移動量を０以上１以下の数値に変換する。
【００４２】
高輝度チェック部６０５が出力する平均輝度比は、補正値変換部６０３ｂに入力される。
補正値変換部６０３ｂは、輝度比上限値６０７ａと輝度比下限値６０７ｂを参照して、平均輝度比を０以上１以下の数値に変換する。
【００４３】
［補正値変換部］
図９（ａ）及び（ｂ）は、補正値変換部６０３ａ及び補正値変換部６０３ｂの入出力の関係を示すグラフである。
図９（ａ）は、顔枠移動量を入力されて補正値ｘを出力する補正値変換部６０３ａのグラフである。
補正値変換部６０３ｂは、以下の関数で表現することができる。
【００４４】
ｘ＝０  （ｓ≧ｓｕ）
ｘ＝１  （ｓ≦ｓｌ）
ｘ＝（−ｓ＋ｓｕ）／（ｓｕ−ｓｌ）  （１＜ｓ＜ｓｌ）
【００４５】
つまり、
・顔枠移動量ｓが動き上限値ｓｕ以上の場合、補正値ｘは０であり、
・顔枠移動量ｓが動き下限値ｓｌ以下の場合、補正値ｘは１であり、
・顔枠移動量ｓが動き下限値ｓｌより大きく且つ動き上限値ｓｕ未満の場合、補正値ｘは傾きが−１／（ｓｕ−ｓｌ）、ｙ切片がｓｕ／（ｓｕ−ｓｌ）の一次関数である。
【００４６】
図９（ｂ）は、平均輝度比を入力されて補正値ｙを出力する補正値変換部６０３ｂのグラフである。
補正値変換部６０３ｂは、以下の関数で表現することができる。
【００４７】
ｙ＝０  （ｆ≧ｆｕ）
ｙ＝１  （ｆ≦ｆｌ）
ｙ＝（−ｆ＋ｆｕ）／（ｆｕ−ｆｌ）  （１＜ｆ＜ｆｌ）
【００４８】
つまり、
・平均輝度比ｆが輝度比上限値ｆｕ以上の場合、補正値ｙは０であり、
・平均輝度比ｆが輝度比下限値ｆｌ以下の場合、補正値ｙは１であり、
・平均輝度比ｆが輝度比下限値ｆｌより大きく且つ輝度比上限値ｆｕ未満の場合、補正値ｙは傾きが−１／（ｆｕ−ｆｌ）、ｙ切片がｆｕ／（ｆｕ−ｆｌ）の一次関数である。
【００４９】
こうして、補正値変換部６０３ｂによって０以上１以下の数値に丸められた、顔枠移動量に基づく補正値ｘと、補正値変換部６０３ｂによって０以上１以下の数値に丸められた、平均輝度比に基づく補正値ｙは、乗算器６０８で乗算される。乗算器６０８の演算出力は、混合係数ｋとして混合係数「ｋ」メモリ４１０に出力される。また、乗算器６０８の演算出力は、減算器６０９によって数値「１」５０５ｂから減算され、混合係数１−ｋとして混合係数「１−ｋ」メモリ４１２に出力される。
【００５０】
補正値変換部６０３ａ、動き上限値６０６ａ、動き下限値６０６ｂ、補正値変換部６０３ｂ、輝度比上限値６０７ａ、輝度比下限値６０７ｂ、そして乗算器６０８は、顔枠移動量と平均輝度比に基づいて混合係数ｋを導き出す、混合係数導出部であるとも言える。
【００５１】
［動作］
図１０は、混合係数算出部４０７が実行する、混合係数「ｋ」及び「１−ｋ」を算出する処理の流れを示すフローチャートである。
処理を開始すると（Ｓ１００１）、最初に顔認識部６０１ａが、モニタ画像フレームバッファ４０２に格納されているモニタ画像データから、顔認識処理を行い、顔枠座標データを出力する（Ｓ１００２）。
【００５２】
ステップＳ１００２で出力される顔枠座標データは、顔枠移動量を算出して補正値ｘを得る処理（ステップＳ１００３、Ｓ１００４及びＳ１００５）と、平均輝度比を算出して補正値ｙを得る処理（ステップＳ１００６、Ｓ１００７、Ｓ１００８、Ｓ１００９及びＳ１０１０）に、それぞれ供給される。以下、混合係数算出部４０７がマルチスレッド或はマルチプロセスのプログラムであり、顔枠移動量を算出して補正値ｘを得る処理と、平均輝度比を算出して補正値ｙを得る処理が同時に並行して遂行されることとして説明する。
【００５３】
顔認識部６０１ｂは、動き検出用フレームバッファ４０４に格納されているモニタ画像データから、顔認識処理を行い、顔枠座標データを出力する（Ｓ１００３）。
動き検出部６０２は、ステップＳ１００２で出力される顔枠座標データと、ステップＳ１００３で出力される顔枠座標データから、それぞれ中心点を算出し、中心点同士の距離、すなわち顔枠移動量を算出する（Ｓ１００４）。
動き検出部６０２が算出した顔枠移動量は、補正値変換部６０３ａによって補正値ｘに変換される（Ｓ１００５）。
【００５４】
一方、高輝度枠算出部６０４は、顔認識部６０１ａが出力する顔枠座標データを基に、高輝度枠座標データを算出する（Ｓ１００６）。
高輝度チェック部６０５内の顔枠内平均輝度算出部８０１は、顔認識部６０１ａが出力する顔枠座標データと、撮影画像フレームバッファ内の撮影画像データを読み込み、顔枠領域７０５内のピクセルの輝度の平均値（顔枠領域内平均輝度）を算出する（Ｓ１００７）。
高輝度チェック部６０５内の高輝度枠内平均輝度算出部８０２は、顔認識部６０１ａが出力する顔枠座標データと、高輝度枠算出部６０４が出力する高輝度枠座標データと、撮影画像フレームバッファ内の撮影画像データを読み込み、高輝度チェック領域７０７内のピクセルの輝度の平均値（高輝度チェック領域内平均輝度）を算出する（Ｓ１００７）。
除算器８０３は、高輝度チェック領域内平均輝度を顔枠領域内平均輝度で除算した値、すなわち平均輝度比を出力する（Ｓ１００９）。
高輝度チェック部６０５が算出した平均輝度比は、補正値変換部６０３ｂによって補正値ｙに変換される（Ｓ１０１０）。
【００５５】
ステップＳ１００５で補正値変換部６０３ａによって算出された補正値ｘと、ステップＳ１０１０で補正値変換部６０３ａによって算出された補正値ｙは、乗算器６０８で乗算され、混合係数「ｋ」が出力される（Ｓ１０１１）。そして、混合係数「ｋ」は減算器６０９によって数値「１」５０５ｂから減算され、混合係数「１−ｋ」が出力され（Ｓ１０１２）、一連の処理が終了する（Ｓ１０１３）。
【００５６】
以上説明したように、図１０の処理を行う混合係数算出部４０７は、被写体の動きと被写体の背景の明るさを反映した、混合係数「ｋ」を作成する。この混合係数「ｋ」が被写体の状態に応じて変化するので、被写体が動いている、又は被写体の背景が明るい、或はその両方の条件を満たしている場合、修正ホワイトバランスマップは、色ずれを引き起こし難いホワイトバランス値に近い値となる。
【００５７】
本実施形態では、以下のような応用例が可能である。
（１）顔認識部６０１ａ及び６０１ｂは、被写体の種類に応じて変更できるように構成するとなお良い。
図１１（ａ）、（ｂ）、（ｃ）、（ｄ）、（ｅ）及び（ｆ）は、被写体と被写体識別枠と高輝度枠の関係を示す概略図である。
予めＲＯＭ２０３に設定値として複数種類記憶されている撮影モードに応じて、被写体を区別し、その被写体に適切に対応する被写体識別枠を定義する。
顔認識部６０１ａ及び６０１ｂは、撮影モードに応じて被写体を識別するアルゴリズムを適宜変更して、被写体識別枠を設定する。この場合、顔認識部６０１ａ及び６０１ｂは、指定された被写体を認識する被写体認識部となる。
【００５８】
（２）上述の実施形態における補正値変換部６０３ａ及び６０３ｂは、入力される値に対して一次関数の変換処理を行っていた。
より最適な変換処理を実現するために、学習アルゴリズムを用いて、動き上限値６０６ａ、動き下限値６０６ｂ、輝度比上限値６０７ａ、輝度比下限値６０７ｂ、そして変換関数のカーブ等を設定するとよい。予めサンプルの被写体を様々な発光条件で撮影し、得られる画像データに対し、最適な補正係数「ｋ」を指定する。こうして得られる撮影条件と補正係数「ｋ」との組み合わせを多数用意し、学習アルゴリズムを用いて補正値変換部６０３ａ及び６０３ｂを構成する。
【００５９】
（３）上述の実施形態における補正値変換部６０３ａ及び６０３ｂは、入力される値に対して一次関数の変換処理を行っていた。
より簡素な変換処理を実現するために、テーブルを用いて離散的な変換処理を行ってもよい。
【００６０】
（４）顔枠を始めとする被写体識別枠は、必ずしも長方形である必要はない。顔を対象とするなら、楕円形が理想的であるだろうし、被写体の形状を正確に識別できる枠であり、被写体と識別枠との間に存在する無駄なスペースが少なければ少ないほど優れた識別枠と言えよう。このような、長方形でない識別枠を適用する場合、識別枠の中心点の代わりに重心を求めることが望ましい。
【００６１】
（５）高輝度枠は、必ずしも被写体識別枠と相似形である必要はない。被写体識別枠から等間隔の幅で被写体識別枠を取り囲む枠であってもよい。
【００６２】
（６）図８に示す、高輝度チェック部６０５の処理内容は、より簡素な方法として、高輝度チェック領域内のピクセルの輝度を所定の閾値と比較して、閾値より明るいピクセルの、高輝度チェック領域内の面積比率として出力する方法でもよい。
【００６３】
（７）前述の本実施形態に係るデジタルカメラ１０１で実現される発明は、ホワイトバランス処理の改良である。図３乃至図１０を参照すると、撮影処理部の処理以外の、撮影後の画像処理の改良である。そして、このことは図２を参照すると、マイコンの制御プログラムとＤＳＰの演算処理プログラム、つまりソフトウェアの改良である。
そこで、近年大容量化の傾向にあるフラッシュメモリの特性を生かし、デジタルカメラ自身はホワイトバランス処理の画像処理部分を行わず、撮影のみを実行し、画像処理部分をパソコン等の外部の情報処理装置に任せる、というシステム構築も考えられる。
【００６４】
図１２はデジタルカメラの機能ブロック図である。図３のデジタルカメラ１０１と比べると、ホワイトバランス処理部３０１の代わりに、フレームバッファ１２０２が設けられている。
【００６５】
図１２に示すデジタルカメラ１２０１は、シャッターボタン１０６を押した時の撮影画像データの生成、シャッターボタン１０６を押した時点から直前のモニタ画像データの生成、そしてシャッターボタン１０６を押した時点の直前から更に１フレーム分前のモニタ画像データの生成のみを実行し、エンコーダ１２０４は画像の劣化を防ぐために可逆圧縮アルゴリズムを用いたエンコード処理を行う。つまり、現在周知の非可逆圧縮方式であるＪＰＥＧではなく、可逆圧縮アルゴリズムを採用するＪＰＥＧ  ＥＸやＰＮＧ、ＴＩＦＦ等のフォーマットで、不揮発性ストレージ２１１に、シャッターボタン１０６を押した時の撮影画像データを可逆エンコードした撮影画像データファイル１２０７、シャッターボタン１０６を押した時点から直前のモニタ画像データを可逆エンコードしたモニタ画像データファイル１２０５、シャッターボタン１０６を押した時点の直前から更に１フレーム分前のモニタ画像データを可逆エンコードした動き検出用画像データファイル１２０６の、三つの画像データファイルと、撮影情報ファイル１２０８を記録する。
なお、この時の撮影情報として、最低限、フォーカス距離の情報を別途記憶しておく必要がある。そこで、撮影情報ファイル１２０８に撮影情報を記述して、不揮発性ストレージ２１１に記録する。
【００６６】
図１３は画像処理装置の機能ブロック図である。パソコンにホワイトバランス処理に係るプログラムを読み込ませて実行することで、パソコンは画像処理装置１３０１の機能を実現する。
【００６７】
デジタルカメラ１２０１から取り出したフラッシュメモリ等の不揮発性ストレージ２１１を図示しないインターフェースを通じてパソコンに接続するか、デジタルカメラ１２０１をＵＳＢインターフェース２１２を通じてパソコンに接続することで、不揮発性ストレージ２１１をパソコン内のデコーダ１００２に接続する。
デコーダ１３０２は不揮発性ストレージ２１１内に記録されている撮影画像データファイル１２０７、モニタ画像データファイル１２０５及び動き検出用画像データファイル１２０６の、三つの画像データファイルを読み込み、生の画像データに変換した後、選択スイッチ１３０３を介してホワイトバランス処理部３０１に供給する。また、不揮発性ストレージ２１１には撮影情報ファイル１２０８も存在するので、制御部１００３は撮影情報ファイル１２０８を読み込み、ホワイトバランス処理部３０１を制御する際の参考情報として活用する。
ホワイトバランス処理部３０１の処理以降の動作は、図３のデジタルカメラ１０１と同等である。
【００６８】
このようにデジタルカメラ１２０１及び画像処理装置１３０１を構成すると、演算処理能力が十分でない旧世代のデジタルカメラに対し、撮影画像データファイル１２０７、モニタ画像データファイル１２０５及び動き検出用画像データファイル１２０６の、三つの画像データファイルを生成する処理と、撮影情報ファイル１２０８を生成する処理を搭載するファームウェアの更新作業だけで、旧世代のデジタルカメラのユーザが本実施形態で説明したホワイトバランス処理の機能を実質的に享受できる、という利点がある。
【００６９】
なお、図１０の画像処理装置１３０１は撮影画像データファイル１２０７、モニタ画像データファイル１２０５及び動き検出用画像データファイル１２０６の、三つの画像データファイルと撮影情報ファイル１２０８を用いて、後処理を実施する装置である。したがって、設定される撮影シーンを切り替えて顔認識部６０１ａ及び６０１ｂ等の挙動を変更して、何度でもホワイトバランス処理をやり直すことが可能である。また、一般的にパソコンはデジタルカメラ１２０１よりも演算能力が高いので、このように後処理の部分をデジタルカメラ１２０１から分離してパソコンに任せる設計にすると、デジタルカメラ１２０１は大容量の不揮発性ストレージ２１１と可逆圧縮アルゴリズムのエンコーダ１２０４さえあればよいこととなる。つまり、デジタルカメラ１２０１は必ずしも大規模な演算能力が必要ではなくなるので、デジタルカメラ１２０１自体の更なる小型化及び低消費電力化に貢献できる。
【００７０】
（８）例えば、広大な風景の中に人物がとても小さく写っている場合、仮に顔枠と高輝度枠を適用できたとしても、そこから生じる色ずれは無視できる（気にならない）現象として、見る側には認識される。つまり、顔（主要被写体）の面積が小さい場合は、仮にホワイトバランスの計算に失敗しても、見る側に対する印象が小さくなるので、顔の動きや高輝度の影響を無視しても問題ないと考えられる。
そこで、画像全体の面積に対する顔検出枠の面積の比率を求め、面積比が大きい（顔面積が大きい）ほど混合係数ｋをそのまま使用し、顔が小さいほど混合係数ｋの値を１に近づけ、非発光画と発光画から計算したピクセル単位のホワイトバランスを使用するような補正式を用いて、顔の面積に応じた最適な補正量計算を実現させることができる。
【００７１】
図１４は、混合係数算出部４０７の一部を改変した機能ブロック図である。
面積比算出部１４０１は、顔認識部６０１ａが出力する顔枠座標データと、制御部３０７から得られる解像度の情報を入力され、画像データの全体の面積に対する、顔枠の面積の比を出力する。
面積比算出部１４０１が出力する面積比は、補正値変換部６０３ｃに入力される。
補正値変換部６０３ｃは、面積比上限値１４０２ａと面積比下限値１４０２ｂを参照して、面積比を０以上１以下の数値に変換する。
【００７２】
図６の、乗算器６０８の出力である混合係数ｋは、更に乗算器１４０３に入力される。
乗算器１４０３は、補正値変換部６０３ｃから出力される補正値αを入力され、混合係数ｋの代わりの混合係数ｋ’を、混合係数「ｋ」メモリ４１０に出力する。また、乗算器１４０３の演算出力は、減算器６０９によって数値「１」５０５ｂから減算され、混合係数１−ｋの代わりの混合係数１−ｋ’として、混合係数「１−ｋ」メモリ４１２に出力される。
【００７３】
図１５は、補正値変換部６０３ｃの入出力の関係を示すグラフである。
補正値変換部６０３ｃは、以下の関数で表現することができる。
【００７４】
α＝０  （Ｒ≧Ｒｕ）
α＝１  （Ｒ≦Ｒｌ）
α＝（−Ｒ＋Ｒｕ）／（Ｒｕ−Ｒｌ）  （１＜Ｒ＜Ｒｌ）
【００７５】
つまり、
・面積比Ｒが面積比上限値Ｒｕ以上の場合、補正値αは０であり、
・面積比Ｒが面積比下限値Ｒｌ以下の場合、補正値αは１であり、
・面積比Ｒが面積比下限値Ｒｌより大きく且つ面積比上限値Ｒｕ未満の場合、補正値αは傾きが−１／（Ｒｕ−Ｒｌ）、ｙ切片がＲｕ／（Ｒｕ−Ｒｌ）の一次関数である。
こうして、補正値変換部６０３ｃによって０以上１以下の数値に丸められた、面積比に基づく補正値αは、乗算器１４０３で混合係数ｋに乗算される。
【００７６】
本実施形態ではデジタルカメラ及び画像処理装置を開示した。
撮影画像データの各ピクセルの明るさに応じて最適なホワイトバランスを設定するホワイトバランスマップと、撮影画像データ全体に均一なホワイトバランスを設定するホワイトバランス値を混合して修正ホワイトバランスマップを作成する際、被写体の動きと被写体の背景の明るさに応じて混合する比率を変える、混合係数算出部を設けた。混合係数が変化することで、色ずれを防ぎつつ、被写体の動きと被写体の背景の明るさに応じて適切なホワイトバランスの修正処理を遂行することができる。
【００７７】
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含む。
【符号の説明】
【００７８】
１０１…デジタルカメラ、１０２…筐体、１０３…鏡筒、１０４…レンズ、１０５…ストロボ、１０６…シャッターボタン、１０７…液晶ディスプレイモニタ、１０８…操作ボタン、２０１…バス、２０２…ＣＰＵ、２０３…ＲＯＭ、２０４…ＲＡＭ、２０５…ＤＳＰ、２０６…撮像素子、２０７…Ａ／Ｄ変換器、２０８…モータドライバ、２０９…モータ、２１０…ストロボドライバ、２１１…不揮発性ストレージ、２１２…ＵＳＢインターフェース、２１３…表示部、２１４…操作部、３０１…ホワイトバランス処理部、３０２…モニタ処理部、３０３…データ処理部、３０４…エンコーダ、３０７…制御部、４０１…撮影画像フレームバッファ、４０２…モニタ画像フレームバッファ、４０３…遅延素子、４０４…動き検出用フレームバッファ、４０５ａ…ホワイトバランス作成部、４０５ｂ…ホワイトバランス作成部、４０６…ホワイトバランスマップ作成部、４０７…混合係数算出部、４０８…ホワイトバランス値メモリ、４０９…ホワイトバランスマップメモリ、４１０…メモリ、４１１…乗算器、４１２…メモリ、４１３…乗算器、４１４…加算器、４１５…修正ホワイトバランスマップメモリ、４１６…乗算器、５０１…非発光ホワイトバランス値メモリ、５０２…除算器、５０３…ストロボバランスマップメモリ、５０４…除算器、５０６…乗算器、６０１ａ…顔認識部、６０１ｂ…顔認識部、６０２…動き検出部、６０３ａ…補正値変換部、６０３ｂ…補正値変換部、６０４…高輝度枠算出部、６０５…高輝度チェック部、６０６ａ…動き上限値、６０６ｂ…動き下限値、６０７ａ…輝度比上限値、６０７ｂ…輝度比下限値、６０８…乗算器、６０９…減算器、７０１…顔枠、７０１ａ…顔枠座標、７０２…中心点、７０３…顔枠、７０４…中心点、７０５…顔枠領域、７０６…高輝度枠、７０７…高輝度チェック領域、８０１…顔枠内平均輝度算出部、８０２…高輝度枠内平均輝度算出部、８０３…除算器、１２０１…デジタルカメラ、１２０２…フレームバッファ、１２０４…エンコーダ、１２０５…モニタ画像データファイル、１２０６…動き検出用画像データファイル、１２０７…撮影画像データファイル、１２０８…撮影情報ファイル、１３０１…画像処理装置、１３０２…デコーダ、１３０３…選択スイッチ、１４０１…面積比算出部、１４０２ａ…面積比上限値、１４０２ｂ…面積比下限値、１４０３…乗算器
【図１】
2012019293.tif 000003
【図２】
2012019293.tif 000004
【図３】
2012019293.tif 000005
【図４】
2012019293.tif 000006
【図５】
2012019293.tif 000007
【図６】
2012019293.tif 000008
【図７】
2012019293.tif 000009
【図８】
2012019293.tif 000010
【図９】
2012019293.tif 000011
【図１０】
2012019293.tif 000012
【図１１】
2012019293.tif 000013
【図１２】
2012019293.tif 000014
【図１３】
2012019293.tif 000015
【図１４】
2012019293.tif 000016
【図１５】
2012019293.tif 000017
【図１６】
2012019293.tif 000018