(57)【特許請求の範囲】
【請求項１】
撮像素子と、
前記撮像素子から出力される画像フレームを複数のブロックに分割し、分割した複数のブロックそれぞれについて、各ブロックの色の特徴を表す特徴量を算出する特徴量算出手段と、
前記特徴量に基づいて、前記複数のブロックのうちで、白色を映したブロックと推定される白ブロックを検出する白ブロック検出手段と、
前記画像フレームの中で、追尾する被写体を映した被写体エリアを検出する被写体エリア検出手段と、
前記画像フレームにおいて前記被写体エリア内から前記白ブロックが検出され、且つ、前記画像フレームよりも前に前記撮像素子から出力された画像フレームである先行フレームにおいて前記被写体エリア内から前記白ブロックが検出されていない場合に、前記画像フレームにおいて前記被写体エリア内から検出された白ブロック以外の前記白ブロックの前記特徴量に基づいて算出した制御値を用いて、前記画像フレームのホワイトバランスを制御するホワイトバランス制御手段と、を備えることを特徴とする撮像装置。
【請求項２】
前記被写体が人物の顔であるか否かを判定する顔判定手段をさらに備え、
前記ホワイトバランス制御手段は、前記被写体が人物の顔であると判定された場合は、前記先行フレームにおいて前記被写体エリア内から前記白ブロックが検出されたか否かに関わらず、前記画像フレームにおいて前記被写体エリア内から検出された白ブロック以外の前記白ブロックの前記特徴量に基づいて、前記制御値を算出することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記被写体が人物の顔であると判定された場合に、前記被写体エリアに含まれるブロックの前記特徴量を用いて、前記ホワイトバランス制御手段が算出した制御値を補正する補正手段をさらに備えることを特徴とする請求項２に記載の撮像装置。
【請求項４】
前記被写体エリアの大きさを判定する被写体エリア判定手段をさらに備え、
前記ホワイトバランス制御手段は、前記被写体エリアの大きさが基準値よりも小さいと判定された場合は、前記先行フレームにおいて前記被写体エリア内から前記白ブロックが検出されたか否かに関わらず、前記画像フレームにおいて前記被写体エリア内から検出された白ブロック以外の前記白ブロックの前記特徴量に基づいて、前記制御値を算出することを特徴とする請求項１に記載の撮像装置。
【請求項５】
前記撮像素子から連続的に出力される複数の前記画像フレーム間において、前記被写体の背景が変化しているか否かを判定する背景変化判定手段をさらに備え、
前記ホワイトバランス制御手段は、前記被写体の背景が変化していると判定された場合に、前記ホワイトバランスの制御を行わないことを特徴とする請求項１に記載の撮像装置。
【請求項６】
撮像素子から出力される画像フレームを複数のブロックに分割し、分割した複数のブロックそれぞれについて、各ブロックの色の特徴を表す特徴量を算出するステップと、
前記特徴量に基づいて、前記複数のブロックのうちで、白色を映したブロックと推定される白ブロックを検出するステップと、
前記画像フレームの中で、追尾する被写体を映した被写体エリアを検出するステップと、
前記画像フレームにおいて前記被写体エリア内から前記白ブロックが検出され、且つ、前記画像フレームよりも前に前記撮像素子から出力された画像フレームである先行フレームにおいて前記被写体エリア内から前記白ブロックが検出されていない場合に、前記画像フレームにおいて前記被写体エリア内から検出された白ブロック以外の前記白ブロックの前記特徴量に基づいて算出した制御値を用いて、前記画像フレームのホワイトバランスを制御するステップと、を含むことを特徴とするホワイトバランス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置およびホワイトバランス制御方法に関する。
【背景技術】
【０００２】
撮像素子を用いて画像を撮像するデジタルカメラなどの撮像装置においては、人間にとって白く見える部分を画像上で白く再現するためのオートホワイトバランスと呼ばれる処理が行われている。オートホワイトバランスは、例えば、撮像素子から出力される画像フレームの中で白色（無彩色）を映したと推定される領域を検出し、検出した領域の色情報に基づいて算出した制御値（以下、ＷＢ制御値という。）を用いて、画像フレームの各画素の信号を調整することで実現できる。
【０００３】
具体的には、例えば画像フレームを縦横１６×１６の２５６個のブロックに分割し、分割したブロックごとに、各ブロックに含まれる画素のＲＧＢそれぞれの信号の積算値を算出して、ブロックごとのＧ信号の積算値に対するＲ信号およびＢ信号の積算値の比（Ｇ／Ｒ，Ｇ／Ｂ）を、各ブロックの特徴量（以下、ＷＢ評価値という。）として求める。そして、求めた各ブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）を、Ｇ／Ｒ，Ｇ／Ｂを軸とした色空間（以下、ＷＢ色空間という。）にプロットする。
【０００４】
ＷＢ色空間上には、予め光源（昼光やタングステン光）の色温度を変化させた場合における黒体輻射の軌跡がリファレンスゲインとして用意されている。このＷＢ色空間上で、プロットされた各ブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）とリファレンスゲインとのマッチングをとることにより、画像フレームにおいて白色を映したと推定される領域を検出することができる。
【０００５】
以上のように検出された白色の領域は、光源の種類によってＲＧＢ積算比が異なっているが、この白色の領域におけるＲＧＢの積算比がＲ：Ｇ：Ｂ＝１：１：１となるようなゲイン（ＷＢ制御値）を各画素に乗算することで、オートホワイトバランスを実現することができる。これは人間の色順応のメカニズムに基づいており、人間は異なる光源下においても白いものが白く見えるように色順応が働くという仮説に基づいている。つまり、オートホワイトバランスとは、画面全体が白色となる基準被写体を撮影している状態で、撮影信号としてのＲ信号、Ｇ信号、Ｂ信号の出力レベルを等しくするホワイトバランス制御を、基準被写体を撮影せずに自動で行えるようにする処理ということができる。画面の中の白色を映した領域のＲ信号およびＢ信号の出力レベルをＧ信号と等しくするために、入力されたＲ信号およびＢ信号のそれぞれに対して乗算されるゲイン（係数）が、ＷＢ制御値となる。
【０００６】
ところで、上記のようなオートホワイトバランスの方式は、被写体に無彩色の部分がない場合や、被写体のほとんどを有彩色（物体色）が占める場合には、画像フレームから白色の領域を検出できない、もしくは白色の領域を検出する処理の精度が低下するため、結果的に誤ったホワイトバランス制御を行ってしまうという欠点がある。具体的な例を示すと、高色温度の光源下において人肌がアップのシーンで、人肌の肌色を映した領域を低色温度光源下の白色（無彩色）を映した領域として誤って検出し、人肌を青白く補正するようなホワイトバランス制御を行ってしてしまうという問題が指摘されている。また、森林のように緑が占める割合が大きい場合にも、物体色の領域を蛍光灯によって照明された白色の領域として誤って検出し、誤ったホワイトバランス制御を行ってしまうことがある。このような誤ったホワイトバランス制御はカラーフェイリアと呼ばれている。
【０００７】
以上のようなカラーフェイリアを改善する方法として、例えば、特許文献１や特許文献２に記載の技術が知られている。
【０００８】
特許文献１には、動画撮影におけるカラーフェイリアの軽減方法として、被写体追尾情報を用いた制御方法が開示されている。具体的には、主要な被写体の代表的な色を示す領域（例えば、人物の肌色）を基準領域として設定し、追尾手段により、この基準領域を画面内での被写体の移動に合わせて追従させ、この基準領域に含まれる色情報を取得し、各フレームにおいて被写体の同一の部分（例えば人物の頬の部分）を表す画像データに基づいて、露出およびホワイトバランスを適正に補正できるようにしている。すなわち、この特許文献１に記載の技術では、利用者が設定した基準領域を、その色情報から順次取得されるフレームに対して探索することで、たとえば被写体が撮像装置に急に近づいてきた場合でも肌色引き込みによるカラーフェイリアを防止できるようにしている。
【０００９】
また、特許文献２には、複数の撮像システムにより動画像を追尾しながら撮像するシステムにおいて、被写体の移動に伴い被写体を撮像していたカメラからとのカメラに切り替えて被写体の撮像を引き継ぐ際に、被写体を撮像していた撮像条件を、撮像を引き継いだカメラの撮像条件として継承することで、カメラ切換時の不自然な画像の変化を抑制することが記載されている。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１に記載の技術では、そもそもユーザが設定する被写体の代表的な色を示す基準領域が、光源色（無彩色）の領域なのか、物体色（有彩色）の領域なのか分からず、基準領域の色情報をどのようにホワイトバランス制御に用いるのか不明である。また、特許文献１に記載の技術では、被写体が動くことで異なる光源下に移動した場合、基準領域から得られる色情報は大きく変わってしまい、本来同一基準領域と判定しなければならないのに誤判定し、カラーフェイリアが発生してしまうという問題がある。
【００１１】
また、特許文献２に記載の技術においても、被写体が異なる光源下に移動した場合、カメラ切換時にホワイトバランス等の撮像条件を引き継いでしまうので、移動後の撮影環境に適したホワイトバランスが設定できず、カラーフェイリアが発生してしまうという問題がある。
【００１２】
本発明は、上記に鑑みてなされたものであって、オートホワイトバランスの精度を向上させて、カラーフェイリアの発生を有効に抑制することができる撮像装置およびホワイトバランス制御方法を提供することを目的としている。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、本発明に係る撮像装置は、撮像素子と、前記撮像素子から出力される画像フレームを複数のブロックに分割し、分割した複数のブロックそれぞれについて、各ブロックの色の特徴を表す特徴量を算出する特徴量算出手段と、前記特徴量に基づいて、前記複数のブロックのうちで、白色を映したブロックと推定される白ブロックを検出する白ブロック検出手段と、前記画像フレームの中で、追尾する被写体を映した被写体エリアを検出する被写体エリア検出手段と、前記画像フレームにおいて前記被写体エリア内から前記白ブロックが検出され、且つ、前記画像フレームよりも前に前記撮像素子から出力された画像フレームである先行フレームにおいて前記被写体エリア内から前記白ブロックが検出されていない場合に、前記画像フレームにおいて前記被写体エリア内から検出された白ブロック以外の前記白ブロックの前記特徴量に基づいて算出した制御値を用いて、前記画像フレームのホワイトバランスを制御するホワイトバランス制御手段と、を備えることを特徴とする。 
【００１４】
また、本発明に係るホワイトバランス制御方法は、撮像素子から出力される画像フレームを複数のブロックに分割し、分割した複数のブロックそれぞれについて、各ブロックの色の特徴を表す特徴量を算出するステップと、前記特徴量に基づいて、前記複数のブロックのうちで、白色を映したブロックと推定される白ブロックを検出するステップと、前記画像フレームの中で、追尾する被写体を映した被写体エリアを検出するステップと、前記画像フレームにおいて前記被写体エリア内から前記白ブロックが検出され、且つ、前記画像フレームよりも前に前記撮像素子から出力された画像フレームである先行フレームにおいて前記被写体エリア内から前記白ブロックが検出されていない場合に、前記画像フレームにおいて前記被写体エリア内から検出された白ブロック以外の前記白ブロックの前記特徴量に基づいて算出した制御値を用いて、前記画像フレームのホワイトバランスを制御するステップと、を含むことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、オートホワイトバランスの精度を向上させて、カラーフェイリアの発生を有効に抑制することができるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１−１】図１−１は、デジタルカメラの上面図である。
【図１−２】図１−２は、デジタルカメラの正面図である。
【図１−３】図１−３は、デジタルカメラの裏面図である。
【図２】図２は、デジタルカメラの制御系の構成を示すブロック図である。
【図３】図３は、第１の実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵの機能構成を示す機能ブロック図である。
【図４】図４は、各ブロックのＷＢ評価値をＷＢ色空間上にプロットした様子を示す図である。
【図５】図５は、追尾対象の被写体の動きと時系列で入力される画像フレームＡおよび画像フレームＢ内の被写体エリアの位置とを説明する図である。
【図６】図６は、図５の画像フレームＡおよび画像フレームＢから算出したＷＢ評価値をＷＢ色空間上にプロットした様子を示す図である。
【図７】図７は、追尾対象の被写体の動きと時系列で入力される画像フレームＣ、画像フレームＤおよび画像フレームＥ内の被写体エリアの位置とを説明する図である。
【図８】図８は、図７の画像フレームＣ、画像フレームＤおよび画像フレームＥから算出したＷＢ評価値をＷＢ色空間上にプロットした様子を示す図である。
【図９】図９は、第１の実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵにより実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。
【図１０】図１０は、第２の実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵの機能構成を示す機能ブロック図である。
【図１１】図１１は、第２の実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵにより実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。
【図１２】図１２は、第３の実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵの機能構成を示す機能ブロック図である。
【図１３】図１３は、第３の実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵにより実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。
【図１４】図１４は、第４の実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵの機能構成を示す機能ブロック図である。
【図１５】図１５は、第４の実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵにより実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下に添付図面を参照して、この発明に係る撮像装置およびホワイトバランス制御方法の最良な実施の形態を詳細に説明する。なお、以下ではイメージセンサとしてＣＭＯＳセンサを用いたデジタルカメラに本発明を適用した例について説明するが、本発明は、ＣＣＤセンサを用いたデジタルカメラに対しても有効に適用可能である。また本発明は、デジタルカメラに限らず、被写体追尾機能とオートホワイトバランス機能とを備えた撮像装置に対して広く適用できる。
【００１８】
（第１の実施の形態）
図１は、本実施の形態に係るデジタルカメラの外観を示す図であり、図１−１は同デジタルカメラの上面図、図１−２は同デジタルカメラの正面図、図１−３は同デジタルカメラの裏面図である。
【００１９】
本実施の形態に係るデジタルカメラは、図１−１に示すように、その上面に、静止画撮影が可能な枚数などを表示するサブＬＣＤ１と、静止画撮影の際に押圧操作されるレリーズシャッタボタン２と、画像を記録する記録（撮影）モードや記録された画像を再生する再生モード、カメラ設定のためのＳＥＴＵＰモードなどの各種モードの切替えの際に操作されるモードダイヤル３を有する。
【００２０】
また、本実施の形態に係るデジタルカメラは、図１−２に示すように、その正面に、ストロボを発光させるストロボ発光部４と、被写体までの距離を測定する測距ユニット５と、図示しないリモコン端末からの赤外線信号を受信するリモコン受光部６と、後述するズームレンズ２５やフォーカスレンズ２６、メカニカルシャッタ２７およびこれらを一体に支持する支持部材などから構成される鏡胴ユニット７と、光学ファインダ（正面）８を有する。また、本実施の形態に係るデジタルカメラの側面には、後述するメモリカード８０を挿入するメモリカードスロットルや電池を収容する電池収容部が設けられており、これらメモリカードスロットルや電池収容部は蓋体９により閉塞されている。
【００２１】
また、本実施の形態に係るデジタルカメラは、その裏面に、オートフォーカス作動時に点灯するオートフォーカスＬＥＤ（ＡＦＬＥＤ）１０と、ストロボ発光時に点灯するストロボＬＥＤ１１と、各種設定画面の表示や再生画像の表示および撮影時の電子ファインダとして用いられるＬＣＤモニタ１２と、光学ファインダ（裏面）１３と、広角側ズーム時に操作されるズームボタン（ＷＩＤＥ）１４および望遠側ズーム時に操作されるズームボタン（ＴＥＬＥ）１５と、電源スイッチ１６と、セルフタイマの作動時に操作されるセルフタイマ／削除スイッチ１７を有する。
【００２２】
さらに、本実施の形態に係るデジタルカメラは、その裏面に、メニュー選択の際に操作されるメニュースイッチ１８と、選択した事項を確定させる際に操作されるＯＫスイッチ１９と、ＬＣＤモニタ１２に表示する再生画像を切替える際に操作される画像確認スイッチ（左）２０および画像確認スイッチ（右）２１と、マクロ撮影を行う際に操作されるマクロスイッチ２２と、ストロボ発光モードの切替え時に操作されるストロボスイッチ２３と、ＬＣＤモニタ１２の表示の切替え時に操作されるディスプレイスイッチ２４を有する。
【００２３】
図２は、本実施の形態に係るデジタルカメラの制御系の構成を示すブロック図である。本実施の形態に係るデジタルカメラは、制御系の構成として、ズームレンズ２５やフォーカスレンズ２６、メカニカルシャッタ２７を駆動するためのモータドライバ２８と、イメージセンサであるＣＭＯＳセンサ３０と、ＣＭＯＳセンサ３０から出力されるアナログの画像信号を処理してデジタル画像データを生成するアナログフロントエンド（ＡＦＥ）４０と、ＣＭＯＳセンサ３０およびＡＦＥ４０に対して駆動タイミング信号を出力するタイミングジェネレータ（ＴＧ）５０と、ＡＦＥ４０から出力されたデジタル画像データに対して各種デジタル画像処理を実行するとともにデジタルカメラ全体の動作を制御する信号処理ＩＣ６０とを備えている。信号処理ＩＣ６０には、上述したＬＣＤモニタ１２のほか、ＳＤＲＡＭ７０やメモリカード８０、ＲＯＭ９０、操作部１００などが接続されている。
【００２４】
メカニカルシャッタ２７は、開状態によりＣＭＯＳセンサ３０に光を入射させ、閉状態によりＣＭＯＳセンサ３０への光の入射を遮断する機械的なシャッタである。このメカニカルシャッタ２７は、光学レンズであるズームレンズ２５やフォーカスレンズ２６とともに、モータドライバ２８により駆動される。モータドライバ２８によるズームレンズ２５、フォーカスレンズ２６およびメカニカルシャッタ２７の駆動は、信号処理ＩＣ６０の内部に含まれるＣＰＵ６１によって制御される。
【００２５】
ＣＭＯＳセンサ３０は、光電変換機能によって、光学レンズにより結像した光学像をその明るさに比例した電気信号に変換して出力する固体撮像素子である。ＣＭＯＳセンサ３０は、ＴＧ５０から出力される駆動タイミング信号に従って駆動され、各画素の露光や信号読み出しが制御される。ＣＭＯＳセンサ３０からの出力電気信号は、ＡＦＥ４０に入力される。
【００２６】
ＡＦＥ４０は、ＣＭＯＳセンサ３０の出力電気信号（アナログ画素信号）をサンプリングホールド（相関二重サンプリング）するＣＤＳ４１と、ＣＤＳ４１によりサンプリングされた信号のゲインを調整するＡＧＣ（Auto  Gain  Control）４２と、ＡＧＣ４２の出力をデジタル信号に変換するＡ／Ｄ変換機（Ａ／Ｄ）４３とを有する。これらＡＦＥ４０を構成する各部は、ＴＧ５０から出力される駆動タイミング信号に従ってＣＭＯＳセンサ３０と同期して駆動され、また、ＡＧＣ４２におけるゲインの設定などは、信号処理ＩＣ６０内部に含まれるＣＰＵ６１の命令に従って実施される。ＡＦＥ４０により出力されるデジタルデータ（デジタル画像データ）は、信号処理ＩＣ６０に入力される。
【００２７】
ＴＧ５０には、信号処理ＩＣ６０内部に含まれる同期信号生成部６９によって生成された垂直同期信号ＶＤおよび水平同期信号ＨＤが供給される。ＴＧ５０は、これら垂直同期信号ＶＤおよび水平同期信号ＨＤに基づいて、ＣＭＯＳセンサ３０およびＡＦＥ４０を同期して駆動させるための駆動タイミング信号を生成し、生成した駆動タイミング信号をＣＭＯＳセンサ３０およびＡＦＥ４０に供給する。
【００２８】
信号処理ＩＣ６０は、デジタルカメラ全体の動作を統括的に制御するＣＰＵ６１と、垂直同期信号ＶＤおよび水平同期信号ＨＤに合わせてＡＦＥ４０からデジタル画像データの取り込みを行うＣＭＯＳＩ／Ｆ部６２と、ＳＤＲＡＭ７０へのデータの書き込みや読み出しを制御するメモリコントローラ６３と、ＣＭＯＳＩ／Ｆ部６２から入力されたデジタル画像データを表示や記録が可能なＹＵＶのデータ形式に変換するＹＵＶ変換部６４と、画像データを所定のフォーマット（例えばＪＰＥＧ）に従って圧縮および伸張する圧縮伸張部６５と、ＬＣＤモニタ１２や外部表示装置への表示データの出力を制御する表示出力制御部６６と、表示や記録のサイズに合わせて画像サイズを変更するリサイズ処理部６７と、メモリカード８０へのデータの書き込みや読み出しを制御するメディアＩ／Ｆ部６８と、ＣＰＵ６１の命令により垂直同期信号ＶＤおよび水平同期信号ＨＤを生成する同期信号生成部６９とを有している。
【００２９】
ＡＦＥ４０から出力されるデジタル画像データは、ＣＭＯＳＩ／Ｆ部６２により画像フレームを一単位として信号処理ＩＣ６０内部に取り込まれ、信号処理ＩＣ６０内部で黒レベルの補正、欠損画素の補正、シェーディング補正などの画像処理が行われた上で、メモリコントローラ６３によりＳＤＲＡＭ７０に画像フレームごとのＲＧＢデータ（ＲＡＷ−ＲＧＢ画像データ）として一時保管される。
【００３０】
ＳＤＲＡＭ７０に保存された画像フレームごとのＲＡＷ−ＲＧＢ画像データは、メモリコントローラ６３によりＳＤＲＡＭ７０から読み出され、ホワイトバランスのゲイン乗算やガンマ補正、ＲＧＢ補間処理を経てＹＵＶ変換部６４に供給される。ＹＵＶ変換部６４は、この画像データに対してエッジ強調や色設定などの各種画像処理を行うとともに、輝度／色差信号であるＹＵＶ画像データへの変換を行う。ＹＵＶ変換部６４で生成されたＹＵＶ画像データは、メモリコントローラ６３により再度ＳＤＲＡＭ７０に格納される。
【００３１】
ＳＤＲＡＭ７０に保存されたＹＵＶ画像データは、メモリコントローラ６３によりＳＤＲＡＭ７０から読み出され、撮影モードアイコンなどを表示するためのＯＳＤ（オンスクリーンディスプレイ）データとともに表示出力制御部６６に供給される。表示出力制御部６６は、これらＹＵＶ画像データとＯＳＤデータを合成して表示用データを生成し、同期信号などの信号を付加してＬＣＤモニタ１２に出力する。なお、表示出力制御部６６は、生成した表示用データをＴＶビデオ信号として出力して外部表示装置に表示させることも可能であり、例えば外部表示装置がＮＴＳＣシステムのＴＶであれば、リサイズ処理部６７により、そのシステムに合わせた水平・垂直の変倍処理が施された上で、ＴＶに出力される。
【００３２】
また、メモリカード８０への記録時には、ＳＤＲＡＭ７０に保存されたＹＵＶ画像データが、ＣＰＵ６１の命令によりメモリコントローラ６３によってＳＤＲＡＭ７０から読み出されて圧縮伸張部６５に供給され、圧縮伸張部６５においてＪＰＥＧデータなどの圧縮データが生成される。ここで、ＳＤＲＡＭ７０に保存されたＹＵＶ画像データはフルサイズのデータであり、メモリカード８０に記録する画像サイズがＣＭＯＳセンサ３０の画像サイズよりも小さい場合は、リサイズ処理部６７にて記録用に画像が縮小された上で圧縮伸張部６５に供給される。圧縮伸張部６５で生成された圧縮データ（ＪＰＥＧデータ）は、メモリコントローラ６３により再度ＳＤＲＡＭ７０に格納され、その後、ヘッダ追加などの処理が行われた後に、メディアＩ／Ｆ部６８を介してメモリカード８０に記録される。
【００３３】
以上の信号処理ＩＣ６０内部における各部の動作は、ＣＰＵ６１の命令に従って実行される。ＣＰＵ６１は、例えばＲＯＭ９０に格納されたデジタルカメラの制御を行うための制御プログラムおよび制御データを、例えばＳＤＲＡＭ７０上にロードし、ロードした制御プログラムのプログラムコードに基づいて、デジタルカメラ全体の動作を統括的に制御する。すなわち、ＣＰＵ６１は、操作部１００の各種ボタンキーによる指示や図示しないリモコン端末からの動作指示等に基づいて、指示に応じた画像を適切に撮影、表示、記録できるように、モータドライバ２８やＡＦＥ４０、ＴＧ５０、信号処理ＩＣ６０内部の各処理部などを制御する。なお、操作部１００は、撮影者がデジタルカメラの動作指示を行うためのものであり、図１に示したレリーズシャッタボタン２やズームボタン１４，１５などの各種ボタンキーが該当する。
【００３４】
以下、レリーズシャッタボタン２の押下に応じて静止画を撮影する際のＣＰＵ６１による制御について、さらに詳しく説明する。
【００３５】
レリーズシャッタボタン２が押下されると、撮影に先立ちＡＦ（ＡＵＴＯ  ＦＯＣＵＳ）処理が行われる。ＡＦ処理としては、例えば、フォーカスレンズ２６を移動させながらコントラストの最大値を見つける山登りＡＦなどが行わる。これは、映像信号のＧ信号（または輝度値であるＹ信号）の高周波成分からＡＦ評価値を作成し、ＡＦ評価値が最大になるところのフォーカスレンズ２６の位置（フォーカス位置）を算出して、フォーカスレンズ２６を移動させる処理である。
【００３６】
ＡＦの評価値を取得するエリアについては、１つの画像フレームに対して複数のエリアを考慮するマルチエリアＡＦや、一部しか考慮しないスポットエリアＡＦなどがある。そして、ＡＦ評価値をもとに撮影シーンに適したフォーカス位置を算出し、そのポイントへフォーカスレンズ２６を移動させる。フォーカスレンズ２６は、ＣＰＵ６１の命令により、モータドライバ２８を介して移動させることができる。
【００３７】
次に、静止画撮影用の電子シャッタの設定や、ＡＧＣ４２の計算／設定、絞りの計算／設定が行われ（ＡＥ（ＡＵＴＯ  ＥＸＰＯＵＳＲＥ）処理）、記録用の露光が行われる。電子シャッタの設定は、ＣＰＵ６１の命令により、ＣＭＯＳセンサ３０の駆動を制御するＴＧ５０により実行することができる。また、ＡＧＣ４２の設定は、ＣＰＵ６１の命令により、ＡＦＥ４０により実行することができる。
【００３８】
その後、静止画用の露光が完了した時点でメカニカルシャッタ２７が閉じられ、ＣＭＯＳセンサ３０より静止画用のＲＧＢデータ（ＲＡＷ−ＲＧＢ画像データ）が出力される。レリーズ第１処理（半押し）およびレリーズ第２処理（全押し）を搭載しているカメラシステムでは、レリーズ第１処理を実行することでＡＦやＡＥ処理の計算を行い、レリーズ第２処理で記録用の露光が行われるような制御になっているのが一般的である。
【００３９】
静止画用のＲＡＷ−ＲＧＢ画像データは、ＣＭＯＳＩ／Ｆ部６２により信号処理ＩＣ６０内部に取り込まれ、信号処理ＩＣ６０内部で黒レベルの補正、欠損画素の補正、シェーディング補正などの画像処理が行われた上で、メモリコントローラ６３によりＳＤＲＡＭ７０に書き込まれる。インタレース転送であれば、複数回の転送によって、１つの画像フレームを構成する全てのデータが、ＲＡＷ−ＲＧＢ画像データとしてＳＤＲＡＭ７０に書き込まれる。
【００４０】
ＳＤＲＡＭ７０に書き込まれた静止画用のＲＡＷ−ＲＧＢ画像データは、上述したように、ＳＤＲＡＭ７０から読み出され、ホワイトバランスのゲイン乗算やガンマ補正、ＲＧＢ補間処理を経て、ＹＵＶ変換部６４でエッジ強調や色設定などの各種画像処理を行うとともに輝度／色差信号であるＹＵＶデータに変換され、ＳＤＲＡＭ７０に書き戻される。
【００４１】
その後、ＳＤＲＡＭ７０に書き込まれたＹＵＶ画像データが、再度、ＳＤＲＡＭ７０から読み出され、必要に応じてリサイズ処理部６７にて縮小処理が行われた上で、圧縮伸張部６５で例えばＪＰＥＧ圧縮などのデータ圧縮処理が行われる。そして、圧縮データ（ＪＰＥＧデータ）が再度ＳＤＲＡＭ７０に書き戻され、ヘッダ追加などの処理が行われた後に、メディアＩ／Ｆ部６８を介してメモリカード８０に記録される。
【００４２】
次に、本実施の形態に係るデジタルカメラにおいて実施されるホワイトバランス制御について、詳細に説明する。
【００４３】
本実施の形態に係るデジタルカメラによるホワイトバランス制御は、一例として、随時更新される画像フレームに対して連続的に実施される。すなわち、信号処理ＩＣ６０には、上述したように、撮像素子であるＣＭＯＳセンサ３０からの画像データが、ＡＦＥ４０を介して、フレーム画像を一単位として随時入力される。この信号処理ＩＣ６０に入力される各画像フレームに対して、信号処理ＩＣ６０内部のＣＰＵ６１による処理として、ホワイトバランス制御が行われる。なお、ホワイトバランス制御の対象となる画像フレームは、静止画撮影前にＬＣＤモニタ１２などに表示するモニタリング用の画像の画像フレームであってもよいし、例えば連写撮影などで得られる連続した静止画の画像フレームであってもよい。また、静止画撮影前にモニタリング用の画像の画像フレームに対する処理で得られた後述のホワイトバランス制御値を記憶しておき、静止画撮影時に得られる画像フレームに対して記憶したホワイトバランス制御値を適用してホワイトバランス制御を行うようにしてもよい。
【００４４】
図３は、ホワイトバランス制御を実施するためのＣＰＵ６１の機能構成を示す機能ブロック図である。ＣＰＵ６１は、例えば上述した制御プログラムの１つとしてＲＯＭ９０に格納され、メインメモリ（例えばＳＤＲＡＭ７０）上にロードされたホワイトバランス制御用のプログラムを実行することによって、図３に示すように、特徴量算出部１０１、白ブロック検出部１０２、被写体エリア検出部１０３、ホワイトバランス制御部１０４の各機能を実現する。
【００４５】
特徴量算出部１０１は、ＣＭＯＳセンサ３０から出力され、ＡＦＥ４０を介して信号処理ＩＣ６０に入力される画像フレームを複数のブロックに分割し、分割した複数のブロックそれぞれについてＷＢ評価値を算出する処理機能である。
【００４６】
白ブロック検出部１０２は、特徴量算出部１０１により算出されたＷＢ評価値に基づいて、複数に分割された画像フレームの各ブロックのうちで、白色を映したブロックと推定される白ブロックを検出する処理機能である。
【００４７】
被写体エリア検出部１０３は、処理の対象としている現在の画像フレームの中で、追尾する被写体を写した領域である被写体エリアを検出する処理機能である。
【００４８】
本実施の形態に係るデジタルカメラは被写体追尾機能を備えており、被写体追尾機能がオンの状態での動作時には、ＣＰＵ６１が、信号処理ＩＣ６０に時系列で連続的に入力される複数の画像フレームそれぞれに対して、例えばユーザにより追尾対象として指定された被写体が映っている領域（被写体エリア）を検出する処理を行う。この画像フレームから被写体エリアを検出する処理を行うのが、被写体エリア検出部１０３である。被写体追尾機能がオンの場合、画像フレームから検出された被写体エリアは、例えば、静止画撮影時における上述したＡＦの評価値を取得するエリアとして、また、ＡＥ処理のための測光エリアとして用いられる。なお、被写体追尾自体の手法に関しては様々な方式が提案されており、画像フレームから被写体エリアを検出する処理についても一般的な公知の技術を用いて行えばよいので、処理の詳細については説明を省略する。
【００４９】
ホワイトバランス制御部１０４は、白ブロック検出部１０２により検出された白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出し、算出したＷＢ制御値を用いて、画像フレームのホワイトバランスを制御する処理機能である。ここで、特に本実施の形態に係るデジタルカメラにおいては、このＣＰＵ６１のホワイトバランス制御部１０４が、被写体エリア検出部１０３により検出された被写体エリアについての情報を利用することによって、従来技術と比較してより適切なＷＢ制御値を算出し、高精度なホワイトバランス制御を行えるようにしている。
【００５０】
すなわち、このホワイトバランス制御部１０４は、処理の対象としている現在の画像フレームにおいて、被写体エリア検出部１０３が検出した被写体エリア内から白エリアが検出され、且つ、現在の画像フレームよりも前にＣＭＯＳセンサ３０から出力された画像フレーム（以下、先行フレームという。）において、被写体エリア検出部１０３が検出した被写体エリア（現在の画像フレームにおける追尾対象の被写体と同一の被写体を映したエリア）内から白ブロックが検出されていない場合には、現在の画像フレームにおいて被写体エリア内から検出された白ブロックを用いずに、それ以外の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出し、算出したＷＢ制御値を用いて画像フレームのホワイトバランスを制御するようにしている。なお、上記の先行フレームは、現在の画像フレームの直前に出力された画像フレームだけに限らず、現在の画像フレームと同一の被写体を追尾している状態で現在の画像フレームよりも前に出力された画像フレームすべてを含むものである。
【００５１】
以下、ＣＰＵ６１が上記の特徴量算出部１０１、白ブロック検出部１０２、被写体エリア検出部１０３およびホワイトバランス制御部１０４の各機能を持つことにより実現されるホワイトバランス制御の具体例について、さらに詳しく説明する。
【００５２】
ＣＭＯＳセンサ３０からＡＦＥ４０を介して出力される画像フレームは、信号処理ＩＣ６０のＣＭＯＳＩ／Ｆ部６２により信号処理ＩＣ６０内部に取り込まれ、メモリコントローラ６３によりＳＤＲＡＭ７０（フレームメモリ）に保管される。このとき、ＣＭＯＳＩ／Ｆ部６２は、信号処理ＩＣ６０内部に取り込んだ画像フレームにおける特定部分あるいは画像フレーム全体のＲ，Ｇ，Ｂの値を読み込み、ＣＰＵ６１に入力する。
【００５３】
ＣＰＵ６１の特徴量算出部１０１は、信号処理ＩＣ６０内部に取り込まれた画像フレームを予め定めた分割方法（例えば、縦横１６×１６の２５６分割）に従って複数のブロックに分割し、ＣＭＯＳＩ／Ｆ部６２が読み込んだＲ，Ｇ，Ｂの値を用いて、分割したブロックごとに、各ブロックに含まれる画素のＲＧＢそれぞれの信号の積算値を求める。そして、特徴量算出部１０１は、ブロックごとのＧ信号の積算値に対するＲ信号およびＢ信号の積算値の比（Ｇ／Ｒ，Ｇ／Ｂ）を算出する。算出した値は、各ブロックの色の特徴を表す特徴量であり、これをＷＢ評価値として用いる。
【００５４】
特徴量算出部１０１によって画像フレームにおける各ブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）が算出されると、白ブロック検出部１０２が、算出された各ブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）を、Ｇ／Ｒを横軸とし、Ｇ／Ｂを縦軸としたＷＢ色空間上にプロットし、ＷＢ色空間上における各ブロックのＷＢ評価値の分布から、白ブロックの検出を行う。
【００５５】
図４は、各ブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）をＷＢ色空間上にプロットした様子を示す図である。ＷＢ色空間上には、図４に示すように、予め光源の色温度を変化させた場合における黒体輻射の軌跡がリファレンスゲインとして用意されている。そして、このリファレンスゲイン上において実際の撮影環境下で想定される光源色を中心にある程度の幅を持たせた領域（図４において楕円で示した領域）が、白検出エリアとして設定されている。
【００５６】
白ブロック検出部１０２は、特徴量算出部１０１により算出された各ブロックのＷＢ評価値をＷＢ色空間上にプロットしたときに、プロットされたＷＢ評価値（図４中の黒色の点）が、ＷＢ色空間上に設定された白検出エリア内に位置するブロックを、画像フレームの中で白色を映したブロックと推定される白ブロックとして検出する。ＷＢ評価値が白検出エリア内に入っているか否かは、判定用のプログラムを用意してＣＰＵ６１で実行することにより簡単に実現できる。なお、ＣＭＯＳセンサ３０の分光感度の分布により同じ照明、被写体でも色の特徴が変化するので、ホワイトバランス色空間上のリファレンスゲインおよび白検出エリアは、デジタルカメラが搭載するＣＭＯＳセンサ３０の特性に合わせて決定しておくことが望ましい。
【００５７】
白ブロック検出部１０２により白ブロックが検出されると、ホワイトバランス制御部１０４は、検出された白ブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）に基づいて、ＷＢ制御値を算出する。このとき、ホワイトバランス制御部１０４は、処理の対象としている現在の画像フレームにおいて被写体エリア内から白エリアが検出されているが、先行フレームにおいては被写体エリア内から白ブロックが検出されていない場合は、現在の画像フレームにおいて被写体エリア内から検出された白ブロックを用いずに、それ以外の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出する。ＷＢ制御値は、検出された白ブロックを画像上で白く見せるための制御値であり、白ブロック内における各画素のＲＧＢの積算比がＲ：Ｇ：Ｂ＝１：１：１に近づくように、Ｒ信号やＢ信号に対して乗算するゲインの値である。
【００５８】
ここで、ＷＢ評価値は、上述したようにＧ信号の積算値に対するＲ信号およびＢ信号の積算値の比（Ｇ／Ｒ，Ｇ／Ｂ）であるので、１つの白ブロックのみに着目すれば、この白ブロックのＧ／Ｒの値をＲゲインとし、Ｇ／ＢをＢゲインとして、Ｒ信号に対してＲゲインを乗算するともにＢ信号に対してＢゲインを乗算することにより、ＲＧＢの積算比をＲ：Ｇ：Ｂ＝１：１：１とすることができる。ただし、実際には１つの画像フレームから複数の白ブロックが検出され、検出された複数の白ブロックのＷＢ評価値が異なる値を持つことが多い。そこで、ホワイトバランス制御部１０４は、例えば、検出された複数の白ブロックのＧ／Ｒの値の平均値をＲゲインとし、検出された複数の白ブロックのＧ／Ｂの値の平均値をＢゲインとして、ＷＢ制御値（Ｒゲイン，Ｂゲイン）を算出する。また、実際の撮影環境は複数の光源の影響を受ける場合も多く、図４に示す例のように、複数の白検出エリアにおいて白ブロックが検出される場合もある。このような場合には、ホワイトバランス制御部１０４は、例えば、複数の白検出エリアそれぞれで検出された白ブロックの数に応じて重みを付けた加重平均などによって、ＷＢ制御値を算出すればよい。また、各光源の影響が支配的な領域ごとに異なるＷＢ制御値を算出し、領域の境界付近ではＷＢ制御値を線形に変化させるようにしてもよい。なお、ホワイトバランス制御部１０４によるＷＢ制御値の算出方法は、上記に限定されるものではなく、例えばカラーフェイリアを低減するための工夫、あるいはユーザにとって好ましい色合いに仕上がるような工夫など、様々な工夫を行った上で最終的に得られる値をＷＢ制御値として決定するようにしてもよい。
【００５９】
ホワイトバランス制御部１０４は、以上のようにして算出したＷＢ制御値（Ｒゲイン，Ｂゲイン）を、フレーム画像を構成する各画素のＲ信号およびＢ信号に乗算することによって、画像フレームのホワイトバランスを制御する。具体的には、上述したように、ＹＵＶ変換部６４がＳＤＲＡＭ７０から読み出されたＲＡＷ−ＲＧＢ画像データをＹＵＶデータに変換する前処理としてホワイトバランスのゲイン乗算が行われるが、この際、ＣＰＵ６１のホワイトバランス制御部１０４がＹＵＶ変換部６４に対してＷＢ制御値を設定することにより、このＷＢ制御値に基づくホワイトバランス制御を実行する。
【００６０】
図５および図６は、本実施の形態におけるホワイトバランス制御の具体的な一例を説明する図であり、図５は追尾対象の被写体の動きと時系列で入力される画像フレームＡおよび画像フレームＢ内の被写体エリアの位置とを説明する図、図６は図５の画像フレームＡおよび画像フレームＢから算出したＷＢ評価値をＷＢ色空間上にプロットした様子を示す図である。
【００６１】
図５に示す例は、追尾対象の被写体が、図５（ａ）に示すように、ある光源の光が直接照射されない位置から直接照射される位置（光源下）へと移動した場合を想定している。追尾対象の被写体が光源下へ移動する前に撮影（入力）された画像フレームが、図５（ｂ）に示す画像フレームＡであり、追尾対象の被写体が光源下へ移動した後に撮影（入力）された画像フレームが、図５（ｃ）に示す画像フレームＢである。つまり、画像フレームＡは、画像フレームＢとの関係において先行フレームとなる。また、図５（ｄ）は、画像フレームＡにおいて検出された被写体エリアに対応する画像フレームＡ内のブロックの位置を示しており、図５（ｅ）は、画像フレームＢにおいて検出された被写体エリアに対応する画像フレームＢ内のブロックの位置を示している。なお、この例では、説明を簡単にするために、１つの画像フレームにおけるブロックの数は、縦横６×９の５４個であり、被写体エリアの大きさはブロック２個分に相当するものとしている。
【００６２】
本実施の形態におけるホワイトバランス制御は、上述したように、画像フレームから検出された被写体エリアについての情報を利用して、適切なＷＢ制御値を算出するようにしている。具体的には、画像フレームＡでは、図５（ｄ）の斜線で示す位置で被写体エリアが検出されるので、画像の左上を基準として（水平位置，垂直位置）＝（２，２）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、被写体エリアに対応するブロックとなる。一方、画像フレームＢでは、図５（ｅ）の斜線で示す位置で被写体エリアが検出されるので、画像の左上を基準として（水平位置，垂直位置）＝（４，４）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、被写体エリアに対応するブロックとなる。これら被写体エリアに対応するブロックの位置の情報を用い、白ブロックが被写体エリア内から検出されたか否かを判定する。
【００６３】
すなわち、画像フレームＡに対するホワイトバランス制御では、（水平位置，垂直位置）＝（２，２）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、白ブロックとして検出されたかどうかを判定する。ここで、画像フレームＡの（水平位置，垂直位置）＝（２，２）、（水平サイズ，垂直サイズ）＝（２，１）のブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）が、図６に示すように、（０．４，０．６）であったとすると、このＷＢ評価値は白検出エリアから外れているため、画像フレームＡにおいては、被写体エリア内から白ブロックは検出されていないと判定する。
【００６４】
一方、画像フレームＢに対するホワイトバランス制御では、（水平位置，垂直位置）＝（４，４）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、白ブロックとして検出されたかどうかを判定する。ここで、画像フレームＢの（水平位置，垂直位置）＝（４，４）、（水平サイズ，垂直サイズ）＝（２，１）のブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）が、図６に示すように、（０．５，０．９）であったとすると、このＷＢ評価値は白検出エリア内に入っているため、画像フレームＢにおいては、被写体エリア内から白ブロックが検出されたと判定する。
【００６５】
画像フレームＡと画像フレームＢとにおいて、被写体検出エリアに対応するブロックのＷＢ評価値が変化するのは、追尾対象の被写体が異なる光源下に移動した結果、追尾対象の被写体自体の色（物体色）は同じでも、光源が変化したことの影響により、ＣＭＯＳセンサ３０から出力される信号が変化するためである。従来技術では、このような場合でも、画像フレームＢに対するホワイトバランス制御を行う際に、被写体エリア内から検出された白ブロックも含め、全ての白ブロックのＷＢ評価値を用いてＷＢ制御値の算出を行うようにしていた。このため、追尾対象の被写体を白くする方向のＷＢ制御値が算出されてしまい、カラーフェイリアを生じさせてしまう場合があった。
【００６６】
これに対して、本実施の形態におけるホワイトバランス制御では、画像フレームＢに対するホワイトバランス制御を行う際に、先行フレームである画像フレームＡにおいて被写体エリア内から白ブロックが検出されていないため、被写体エリア内から検出された白ブロックのＷＢ評価値をＷＢ制御値の算出には用いず、被写体エリア内から検出された白ブロック以外の他の白ブロックのＷＢ評価値を用いて、ＷＢ制御値の算出を行う。その結果、適切なＷＢ制御値を算出することができ、ホワイトバランス制御を高精度に行って、カラーフェイリアの発生を有効に抑制することができる。
【００６７】
図７および図８は、本実施の形態におけるホワイトバランス制御の他の具体例を説明する図であり、図７は追尾対象の被写体の動きと時系列で入力される画像フレームＣ、画像フレームＤおよび画像フレームＥ内の被写体エリアの位置とを説明する図、図８は図７の画像フレームＣ、画像フレームＤおよび画像フレームＥから算出したＷＢ評価値をＷＢ色空間上にプロットした様子を示す図である。
【００６８】
図７に示す例は、図７（ａ）に示すように、ある光源下に位置している被写体が追尾対象として設定（ロックオン）された後、その追尾対象の被写体が、光源の光が直接照射されない位置へと移動し、さらにその後、光源下へと戻ってきた場合を想定している。追尾対象の被写体をロックオンしたときに撮影（入力）された画像フレームが、図７（ｂ）に示す画像フレームＣであり、追尾対象の被写体が光源下から移動した後に撮影（入力）された画像フレームが、図７（ｃ）に示す画像フレームＤであり、追尾対象の被写体が光源下へと戻ってきた後に撮影（入力）された画像フレームが、図７（ｄ）に示す画像フレームＥである。つまり、画像フレームＤは、画像フレームＥとの関係において先行フレームとなる。また、図７（ｅ）は、画像フレームＣにおいて検出された被写体エリアに対応する画像フレームＣ内のブロックの位置を示しており、図７（ｆ）は、画像フレームＤにおいて検出された被写体エリアに対応する画像フレームＤ内のブロックの位置を示しており、図７（ｇ）は、画像フレームＥにおいて検出された被写体エリアに対応する画像フレームＥ内のブロックの位置を示している。
【００６９】
画像フレームＣでは、図７（ｅ）の斜線で示す位置で被写体エリアが検出されるので、画像の左上を基準として（水平位置，垂直位置）＝（３，４）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、被写体エリアに対応するブロックとなる。また、画像フレームＤでは、図７（ｆ）の斜線で示す位置で被写体エリアが検出されるので、画像の左上を基準として（水平位置，垂直位置）＝（７，５）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、被写体エリアに対応するブロックとなる。また、画像フレームＥでは、図７（ｇ）の斜線で示す位置で被写体エリアが検出されるので、画像の左上を基準として（水平位置，垂直位置）＝（５，５）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、被写体エリアに対応するブロックとなる。
【００７０】
本例の場合、画像フレームＣの（水平位置，垂直位置）＝（３，４）、（水平サイズ，垂直サイズ）＝（２，１）のブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）が、図８に示すように、（０．５，０．９）であり、白検出エリア内に入っているとする。画像フレームＣは、追尾対象の被写体をロックオンしたときに撮影（入力）された画像フレームであるため、先行フレームとなる画像フレームは存在しない。このため、画像フレームＣに対するホワイトバランス制御では、被写体エリア内から検出された白ブロックも含め、全ての白ブロックのＷＢ評価値を用いてＷＢ制御値の算出が行われる。
【００７１】
次に、画像フレームＤに対するホワイトバランス制御では、画像フレームＤの（水平位置，垂直位置）＝（７，５）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、白ブロックとして検出されたかどうかを判定する。ここで、画像フレームＤの（水平位置，垂直位置）＝（７，５）、（水平サイズ，垂直サイズ）＝（２，１）のブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）が、図８に示すように、（０．４，０．６）であったとすると、このＷＢ評価値は白検出エリアから外れているため、画像フレームＤにおいては、被写体エリア内から白ブロックは検出されていないと判定する。
【００７２】
次に、画像フレームＥに対するホワイトバランス制御では、画像フレームＥの（水平位置，垂直位置）＝（５，５）、（水平サイズ，垂直サイズ）＝（２，１）のブロックが、白ブロックとして検出されたかどうかを判定する。ここで、画像フレームＥの（水平位置，垂直位置）＝（５，５）、（水平サイズ，垂直サイズ）＝（２，１）のブロックのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）が、図８に示すように、（０．５，０．９）であったとすると、このＷＢ評価値は白検出エリア内に入っているため、画像フレームＥにおいては、被写体エリア内から白ブロックが検出されたと判定する。
【００７３】
本例においては、画像フレームＥに対するホワイトバランス制御を行う際に、先行フレームである画像フレームＤにおいて被写体エリア内から白ブロックが検出されていないため、被写体エリア内から検出された白ブロックのＷＢ評価値をＷＢ制御値の算出には用いず、被写体エリア内から検出された白ブロック以外の他の白ブロックのＷＢ評価値を用いて、ＷＢ制御値の算出を行う。その結果、上述した例と同様に、適切なＷＢ制御値を算出することができ、ホワイトバランス制御を高精度に行って、カラーフェイリアの発生を有効に抑制することができる。
【００７４】
図９は、被写体追尾機能がオンのときにＣＰＵ６１により実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。この図９のフローチャートで示す一連の処理は、一例として、ＣＭＯＳセンサ３０からＡＦＥ４０を介して信号処理ＩＣ６０内部に画像フレームが入力されるたびに繰り返し行われる。
【００７５】
信号処理ＩＣ６０内部に画像フレームが入力されると（ステップＳ１０１）、ＣＰＵ６１の特徴量算出部１０１が、入力された画像フレームを複数のブロックに分割し、分割した複数のブロックそれぞれのＷＢ評価値（Ｇ／Ｒ，Ｇ／Ｂ）を算出する（ステップＳ１０２）。
【００７６】
次に、ＣＰＵ６１の白ブロック検出部１０２が、特徴量算出部１０１により算出されたＷＢ評価値に基づいて、複数に分割された画像フレームの各ブロックのうちで、白色を映したブロックと推定される白ブロックを検出する（ステップＳ１０３）。
【００７７】
次に、追尾対象の被写体が既に設定（ロックオン）されているか否かが判定され（ステップＳ１０４）、追尾対象の被写体が既に設定されていれば（ステップＳ１０４：ＹＥＳ）、ＣＰＵ６１の被写体エリア検出部１０３が、ステップＳ１０１で入力された画像フレームの中から、この追尾対象の被写体を映した被写体エリアを検出する（ステップＳ１０５）。一方、追尾対象の被写体が設定されていない場合には（ステップＳ１０４：ＮＯ）、被写体エリア検出部１０３は、例えばユーザからの指定に従って、ステップＳ１０１で入力された画像フレーム中の被写体を追尾対象として設定し（ステップＳ１０６）、その被写体の位置を被写体エリアとする。
【００７８】
次に、ＣＰＵ６１のホワイトバランス制御部１０４が、白ブロック検出部１０２により検出された白ブロックの位置と、被写体エリア検出部１０３により検出された被写体エリアの位置とに基づいて、被写体エリア内から白ブロックが検出されているか否かを判定する（ステップＳ１０７）。そして、被写体エリア内から白ブロックが検出されていない場合には（ステップＳ１０７：ＮＯ）、ホワイトバランス制御部１０４は、判定結果フラグに１をセットして（ステップＳ１０８）、ステップＳ１１１に処理を移行する。なお、判定結果フラグは、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かを示す１ビットの情報であり、判定結果フラグ＝０は被写体エリア内から白ブロックが検出されたことを示し、判定結果フラグ＝１は被写体エリア内から白ブロックが検出されていないことを示している。
【００７９】
一方、被写体エリア内から白ブロックが検出された場合には（ステップＳ１０７：ＹＥＳ）、ホワイトバランス制御部１０４は、判定結果フラグ＝１となっているか否か、つまり、先行フレームにおいて被写体エリア内から白ブロックが検出されていないかどうかを確認する（ステップＳ１０９）。そして、判定結果フラグ＝１となっている場合には（ステップＳ１０９：ＹＥＳ）、ホワイトバランス制御部１０４は、被写体エリア内から検出された白ブロックを除き、ステップＳ１０３で検出された白ブロックのＷＢ評価値に基づいてＷＢ制御値の算出を行う（ステップＳ１１０）。一方、判定結果フラグ＝０となっている場合（ステップＳ１０９：ＮＯ）、あるいは、被写体エリア内から白ブロックが検出されなかった場合（ステップＳ１０７：ＮＯ）は、ステップＳ１０３で検出されたすべての白ブロックのＷＢ評価値に基づいてＷＢ制御値の算出を行う（ステップＳ１１１）。
【００８０】
ステップＳ１１０またはステップＳ１１１で算出されたＷＢ制御値は、例えば、ＲゲインおよびＢゲインとしてＹＵＶ変換部６４に設定される。そして、画像フレームを一単位とするＲＡＷ−ＲＧＢ画像データのＲ信号に対してＲゲインを乗算し、Ｂ信号に対してＢゲインを乗算することで、オートホワイトバランスが行われる。
【００８１】
以上、具体的な例を挙げながら詳細に説明したように、本実施の形態に係るデジタルカメラでは、ＣＰＵ６１のホワイトバランス制御部１０４が、被写体エリア内から白ブロックが検出され、且つ、先行フレームにおいて被写体エリア内から白ブロックが検出されていない場合に、被写体エリア内から検出された白ブロック以外の白ブロックのＷＢ評価値を用いて算出したＷＢ制御値を用いて画像フレームのホワイトバランスを制御するようにしている。したがって、本実施の形態に係るデジタルカメラによれば、オートホワイトバランスの精度を向上させて、カラーフェイリアの発生を有効に抑制することができる。
【００８２】
（第２の実施の形態）
次に、第２の実施の形態に係るデジタルカメラついて説明する。本実施の形態に係るデジタルカメラは、追尾対象の被写体が人物の顔であるか否かを判定する機能を持ち、追尾対象の被写体が人物の顔である場合は、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かに関わらず、処理対象となる現在の画像フレームにおいて被写体エリア内から検出された白ブロックは用いずに、それ以外の他の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出するようにしたものである。なお、デジタルカメラの基本的な構成および処理の概要は上述した第１の実施の形態と同様であるため、以下、第１の実施の形態と同様の部分については同一の符号を付して重複した説明を省略する。
【００８３】
図１０は、本実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵ６１’の機能構成を示す機能ブロック図である。本実施の形態におけるＣＰＵ６１’は、図１０に示すように、第１の実施の形態におけるＣＰＵ６１の機能構成（図３参照）に加えて、顔判定部１０５および補正部１０６をさらに備えている。
【００８４】
顔判定部１０５は、追尾対象の被写体が人物の顔であるか否かを判定する処理機能である。この顔判定部１０５は、一例として、画像フレームに対するパターンマッチングなどによって人物の顔を検出する処理を行い、被写体エリア検出部１０３により検出された被写体エリア内で人物の顔が検出された場合に、追尾対象の被写体が人物の顔であると判定する。なお、画像から人物の顔を検出する手法としては従来様々な方式が提案されており、顔判定部１０５は、これら公知の技術を採用して人物の顔を検出すればよい。また、顔判定部１０５による判定は、必ずしもすべての画像フレームに対して行う必要はなく、同一の被写体を追尾している間に追尾対象の被写体が人物の顔であると判定したら、その情報を記憶しておくことで、後の画像フレームでの判定を省略することができる。
【００８５】
本実施の形態におけるホワイトバランス制御では、顔判定部１０５によって追尾対象の被写体が人物の顔であると判定された場合に、ホワイトバランス制御部１０４’が、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かの判定を行わず、処理対象となる現在の画像フレームにおいて被写体エリア内から検出された白ブロックを用いずに、白ブロック検出部１０２により検出された他の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出する。すなわち、追尾対象の被写体が人物の顔であると判定されていれば、被写体エリアから白ブロックが検出されたとしても、それは白色の領域ではなく、光源の光の影響によりＷＢ評価値が白検出エリアに入った領域であると判定できる。したがって、この場合には、ホワイトバランス制御部１０４’が被写体エリア内の白ブロックを除いた他の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出することで、より適切なホワイトバランス制御が可能になる。
【００８６】
補正部１０６は、顔判定部１０５によって追尾対象の被写体が人物の顔であると判定された場合に、被写体エリアに含まれるブロックのＷＢ評価値を用いて、ホワイトバランス制御部１０４’が算出したＷＢ制御値を補正する処理機能である。具体的には、補正部１０６は、顔判定部１０５によって追尾対象の被写体が人物の顔であると判定された場合に、被写体エリアに含まれるブロックのＷＢ評価値と、ホワイトバランス制御部１０４’が算出したＷＢ制御値とを比較する。そして、両者の間に予め定めた閾値以上の乖離がある場合に、ホワイトバランス制御部１０４’が算出したＷＢ制御値を、被写体エリアに含まれるブロックのＷＢ評価値に近づけるように補正する。つまり、補正部１０６は、ホワイトバランス制御部１０４’が算出するＷＢ制御値が、上述したＷＢ色空間上で、被写体エリアに含まれるブロック（人物の顔を映したブロック）のＷＢ評価値から一定の距離の範囲内におさまるようにフィードバック制御する。なお、補正部１０６による具体的な補正方法としては、本発明者が提案した特開２００８−２３６１０１号公報に開示された技術を適用することができる。
【００８７】
図１１は、本実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵ６１’により実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。この図１１のフローチャートで示す一連の処理は、一例として、ＣＭＯＳセンサ３０からＡＦＥ４０を介して信号処理ＩＣ６０内部に画像フレームが入力されるたびに繰り返し行われる。なお、図１１のフローチャートにおいて、ステップＳ２０１〜ステップＳ２０６の処理は、図９のフローチャートで示したステップＳ１０１〜ステップＳ１０６の処理と同様であり、ステップＳ２０８〜ステップＳ２１２の処理は、図９のフローチャートで示したステップＳ１０７〜ステップＳ２１１の処理と同様であるので、これらの処理の説明は省略する。
【００８８】
本実施の形態におけるホワイトバランス制御では、ＣＰＵ６１’のホワイトバランス制御部１０４’が、ステップＳ２０８において被写体エリア内から白ブロックが検出されているか否かを判定する前に、ＣＰＵ６１’の顔判定部１０５が、追尾対象の被写体が人物の顔か否かの判定を行う（ステップＳ２０７）。そして、追尾対象の被写体が人物の顔ではないと判定された場合に（ステップＳ２０７：ＮＯ）、ホワイトバランス制御部１０４’が、第１の実施形態と同様の処理（ステップＳ２０８〜ステップＳ２１２の処理）を実施する。一方、追尾対象の被写体が人物の顔であると判定された場合（ステップＳ２０７：ＹＥＳ）、ホワイトバランス制御部１０４’は、被写体エリア以外から検出された白ブロックのＷＢ評価値に基づいて、ＷＢ制御値の算出を行う（ステップＳ２１３）。
【００８９】
次に、ＣＰＵ６１’の補正部１０６が、ステップＳ２１３で算出されたＷＢ制御値と、被写体エリア内のブロックのＷＢ評価値とを比較し、両者の乖離が予め定めた閾値以上となっているか否かを判定する（ステップＳ２１４）。そして、両者の乖離が閾値以上となっている場合には（ステップＳ２１４：ＹＥＳ）、補正部１０６は、ステップＳ２１３で算出されたＷＢ制御値を、被写体エリア内のブロックのＷＢ評価値に近づけるように補正する（ステップＳ２１５）。
【００９０】
以上のように、本実施の形態に係るデジタルカメラでは、ＣＰＵ６１’の顔判定部１０５が、追尾対象の被写体が人物の顔であるか否かを判定し、追尾対象の被写体が人物の顔であると判定された場合は、ホワイトバランス制御部１０４’が、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かに関わらず、被写体エリア以外から検出された白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出するようにしている。したがって、上述した第１の実施の形態と比較して、さらにオートホワイトバランスの精度を向上させることができ、カラーフェイリアの発生をより有効に抑制することができる。
【００９１】
また、本実施の形態に係るデジタルカメラによれば、追尾対象の被写体が人物の顔であると判定された場合に、ＣＰＵ６１’の補正部１０６が、ホワイトバランス制御部１０４’  により算出されたＷＢ制御値を被写体エリア内のブロックのＷＢ評価値と比較し、両者の乖離が閾値以上となっている場合に、ホワイトバランス制御部１０４’により算出されたＷＢ制御値を被写体エリア内のブロックのＷＢ評価値に近づけるように補正するので、人物の顔を考慮したオートホワイトバランスを実施することができ、カラーフェイリアの発生をより有効に抑制することができる。
【００９２】
（第３の実施の形態）
次に、第３の実施の形態に係るデジタルカメラついて説明する。本実施の形態に係るデジタルカメラは、被写体エリアの大きさを判定する機能を持ち、被写体エリアの大きさが基準値よりも小さい場合は、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かに関わらず、処理対象となる現在の画像フレームにおいて被写体エリア内から検出された白ブロックは用いずに、それ以外の他の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出するようにしたものである。なお、デジタルカメラの基本的な構成および処理の概要は上述した第１の実施の形態と同様であるため、以下、第１の実施の形態と同様の部分については同一の符号を付して重複した説明を省略する。
【００９３】
図１２は、本実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵ６１’’の機能構成を示す機能ブロック図である。本実施の形態におけるＣＰＵ６１’’は、図１２に示すように、第１の実施の形態におけるＣＰＵ６１の機能構成（図３参照）に加えて、被写体エリア判定部１０７をさらに備えている。
【００９４】
被写体エリア判定部１０７は、被写体エリア検出部１０３により検出された被写体エリアの大きさを判定する処理機能である。画像フレーム全体の大きさに対して被写体エリアの大きさが十分に小さい場合は、被写体エリア内のブロックのＷＢ評価値がＷＢ制御値の算出に与える影響は小さくなる。例えば、画像フレーム全体を縦横１６×１６の２５６ブロックに分割した場合において、被写体エリアの大きさが１ブロック分にしか相当しないような場合には、被写体エリア内のブロックのＷＢ評価値は無視することができる。本実施の形態においては、この被写体エリアの大きさが予め定めた基準値よりも小さいか否かを判定するために、被写体エリア判定部１０７が設けられている。
【００９５】
本実施の形態におけるホワイトバランス制御では、被写体エリア判定部１０７によって被写体エリアの大きさが基準値よりも小さいと判定された場合に、ホワイトバランス制御部１０４’’が、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かの判定を行わず、処理対象となる現在の画像フレームにおいて被写体エリア以外から検出された他の白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出する。すなわち、被写体エリアの大きさが基準値よりも小さければ、被写体エリアを考慮せずにＷＢ制御値を算出することができ、これにより、被写体追尾の影響によりオートホワイトバランスが不安定になることを有効に防止し、また、ＣＰＵ６１’’の処理負荷を低減させて電力消費量の削減を図ることができる。
【００９６】
図１３は、本実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵ６１’’により実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。この図１３のフローチャートで示す一連の処理は、一例として、ＣＭＯＳセンサ３０からＡＦＥ４０を介して信号処理ＩＣ６０内部に画像フレームが入力されるたびに繰り返し行われる。なお、図１３のフローチャートにおいて、ステップＳ３０１〜ステップＳ３０８の処理は、図９のフローチャートで示したステップＳ１０１〜ステップＳ１０８の処理と同様であり、ステップＳ３１０〜ステップＳ３１２の処理は、図９のフローチャートで示したステップＳ１０９〜ステップＳ１１１の処理と同様であるので、これらの処理の説明は省略する。
【００９７】
本実施の形態におけるホワイトバランス制御では、被写体エリア内から白ブロックが検出されていると判定された場合に（ステップＳ３０７：Ｙｅｓ）、ＣＰＵ６１’’の被写体エリア判定部１０７が、被写体エリアの大きさが予め定めた基準値以上であるか否かを判定する（ステップＳ３０９）。そして、被写体エリアの大きさが基準値以上であると判定された場合に（ステップＳ３０９：ＹＥＳ）、ホワイトバランス制御部１０４’’が、第１の実施形態と同様に、判定結果フラグ＝１となっているか否か、つまり、先行フレームにおいて被写体エリア内から白ブロックが検出されていないかどうかを確認する（ステップＳ３１０）。一方、被写体エリアの大きさが基準値よりも小さいと判定された場合には（ステップＳ３０９：ＮＯ）、ホワイトバランス制御部１０４’’は、ステップＳ３１０の判定を行うことなくステップＳ３１１に処理を移行し、ステップＳ３１１において、被写体エリア以外から検出された白ブロックのＷＢ評価値に基づいて、ＷＢ制御値の算出を行う。
【００９８】
以上のように、本実施の形態に係るデジタルカメラでは、ＣＰＵ６１’’の被写体エリア判定部１０７が被写体エリアの大きさを判定し、被写体エリアの大きさが予め定めた基準値よりも小さい場合には、ホワイトバランス制御部１０４’’が、先行フレームにおいて被写体エリア内から白ブロックが検出されたか否かに関わらず、被写体エリア以外から検出された白ブロックのＷＢ評価値に基づいてＷＢ制御値を算出するようにしている。したがって、上述した第１の実施の形態と同様にオートホワイトバランスの精度を向上させて、カラーフェイリアの発生をより有効に抑制することができるとともに、被写体追尾の影響によりオートホワイトバランスが不安定になることを有効に防止することができ、さらに、ＣＰＵ６１’’の処理負荷を低減させて電力消費量の削減を図ることができる。
【００９９】
（第４の実施の形態）
次に、第４の実施の形態に係るデジタルカメラついて説明する。本実施の形態に係るデジタルカメラは、ＣＭＯＳセンサ３０から連続的に出力され信号処理ＩＣ６０内に入力される複数の画像フレーム間において、追尾対象の被写体の背景が変化しているか否かを判定する機能を持ち、追尾対象の被写体の背景が変化している場合は、処理対象となる画像フレームに対するホワイトバランス制御を行わないようにしたものである。なお、デジタルカメラの基本的な構成および処理の概要は上述した第１の実施の形態と同様であるため、以下、第１の実施の形態と同様の部分については同一の符号を付して重複した説明を省略する。
【０１００】
図１４は、本実施の形態に係るデジタルカメラにおいて、ホワイトバランス制御を実施するためのＣＰＵ６１’’’の機能構成を示す機能ブロック図である。本実施の形態におけるＣＰＵ６１’’’は、図１４に示すように、第１の実施の形態におけるＣＰＵ６１の機能構成（図３参照）に加えて、背景変化判定部１０８をさらに備えている。
【０１０１】
背景変化判定部１０８は、ＣＭＯＳセンサ３０から連続的に出力され信号処理ＩＣ６０内に入力される複数の画像フレーム間において、追尾対象の被写体の背景が変化しているか否かを判定する処理機能である。
【０１０２】
固定された背景の中で追尾対象の被写体が移動しているような撮影シーンにおいては、画像における光源が大きく変化することはないが、例えばカメラアングルを随時変えながら追尾対象の被写体を追っているような撮影シーンにおいては、連続する複数の画像フレーム間で光源が大きく変わる可能性がある。そして、このように連続する複数の画像フレーム間で被写体の背景が変化し、光源が大きく変わるような場合には、画像フレーム単位でホワイトバランス制御を実行するとオートホワイトバランスが不安定になる可能性がある。
【０１０３】
そこで、本実施の形態においては、ＣＰＵ６１’’’の背景変化判定部１０８が、連続する複数の画像フレーム間で被写体の背景が変化しているか否かを判定し、被写体の背景が変化していると判定された場合には、ホワイトバランス制御部１０４’’’が処理対象となる画像フレームに対するホワイトバランス制御を行わないようにしている。ホワイトバランス制御部１０４’’’がホワイトバランス制御を行わない場合は、現在の画像フレームに対応した新たなＷＢ制御値が算出されない。この場合、現在の画像フレームに対応するＲＡＷ−ＲＧＢ画像データのＲ信号およびＢ信号には、一例として、ＹＵＶ変換部６４に既に設定されているＲゲインやＢゲインが乗算されることになる。
【０１０４】
背景変化判定部１０８が、連続する複数の画像フレーム間で被写体の背景が変化しているか否かを判定する手法としては、様々な手法が考えられる。例えば、画像フレームの上下左右端のＡＥ評価値、ＷＢ評価値、ＡＦ評価値を、連続する画像フレーム間で比較することによって、背景が変化しているか否かを判定することができる。連続する複数の画像フレーム間で被写体の背景に変化がなければこれらの評価値の変化は小さい。一方、連続する複数の画像フレーム間で被写体の背景が変化していれば、これらの評価値が大きく変化する。したがって、背景変化判定部１０８は、連続する複数の画像フレーム間でこれらの評価値が予め定めた閾値以上変化している場合に、被写体の背景が変化していると判定することができる。
【０１０５】
図１５は、本実施の形態に係るデジタルカメラにおいて、被写体追尾機能がオンのときにＣＰＵ６１’’’により実行されるホワイトバランス制御に関わる一連の処理を示すフローチャートである。この図１５のフローチャートで示す一連の処理は、一例として、ＣＭＯＳセンサ３０からＡＦＥ４０を介して信号処理ＩＣ６０内部に画像フレームが入力されるたびに繰り返し行われる。なお、図１５のフローチャートにおいて、ステップＳ４０１〜ステップＳ４０６の処理は、図９のフローチャートで示したステップＳ１０１〜ステップＳ１０６の処理と同様であり、ステップＳ４０８〜ステップＳ４１２の処理は、図９のフローチャートで示したステップＳ１０７〜ステップＳ１１１の処理と同様であるので、これらの処理の説明は省略する。
【０１０６】
本実施の形態におけるホワイトバランス制御では、ＣＰＵ６１’’’のホワイトバランス制御部１０４’’’が、ステップＳ４０８において被写体エリア内から白ブロックが検出されているか否かを判定する前に、ＣＰＵ６１’’’の背景変化判定部１０８が、追尾対象の被写体の背景が変化しているか否かの判定を行う（ステップＳ４０７）。そして、追尾対象の被写体の背景に変化はないと判定された場合に（ステップＳ４０７：ＮＯ）、ホワイトバランス制御部１０４’’’が、第１の実施形態と同様の処理（ステップＳ４０８〜ステップＳ４１２の処理）を実施する。一方、追尾対象の被写体の背景が変化していると判定された場合には（ステップＳ４０７：ＹＥＳ）、ホワイトバランス制御部１０４’’’は、処理対象となる現在の画像フレームに対応するＷＢ制御値の算出は行わずに、処理を終了する。
【０１０７】
以上のように、本実施の形態に係るデジタルカメラでは、ＣＰＵ６１’’’の背景変化判定部１０８が連続する複数の画像フレーム間で追尾対象の被写体の背景が変化しているか否かを判定し、背景が変化していると判定された場合には、ホワイトバランス制御部１０４’’’が、処理対象となる現在の画像フレームに対するホワイトバランス制御を行わないようにしている。したがって、上述した第１の実施の形態と同様にオートホワイトバランスの精度を向上させて、カラーフェイリアの発生をより有効に抑制することができるとともに、光源が大きく変化することに起因してオートホワイトバランスが不安定になることを有効に防止することができる。
【０１０８】
以上、本発明の具体的な実施の形態として第１乃至第４の実施の形態について詳しく説明したが、本発明は上述した各実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上述した各実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、上述した各実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１０９】
３０  ＣＭＯＳセンサ
６０  信号処理ＩＣ
６１（６１’，６１’’，６１’’’）  ＣＰＵ
１０１  特徴量算出部
１０２  白ブロック検出部
１０３  被写体エリア検出部
１０４（１０４’，１０４’’，１０４’’’）  ホワイトバランス制御部
１０５  顔判定部
１０６  補正部
１０７  被写体エリア判定部
１０８  背景変化判定部
【先行技術文献】
【特許文献】
【０１１０】
【特許文献１】特開２００７−１０４２００号公報
【特許文献２】特開２００９−６５３８１号公報
【図１−１】
0005569361.tif 000002
【図１−２】
0005569361.tif 000003
【図１−３】
0005569361.tif 000004
【図２】
0005569361.tif 000005
【図３】
0005569361.tif 000006
【図４】
0005569361.tif 000007
【図５】
0005569361.tif 000008
【図６】
0005569361.tif 000009
【図７】
0005569361.tif 000010
【図８】
0005569361.tif 000011
【図９】
0005569361.tif 000012
【図１０】
0005569361.tif 000013
【図１１】
0005569361.tif 000014
【図１２】
0005569361.tif 000015
【図１３】
0005569361.tif 000016
【図１４】
0005569361.tif 000017
【図１５】
0005569361.tif 000018