(57)【特許請求の範囲】
【請求項１】
画像に対してホワイトバランス処理を行う画像処理装置であって、
第１の画像において得られた赤外線量に応じて前記ホワイトバランス処理を行うための第１のホワイトバランス補正値を求める第１の算出手段と、
前記第１の画像において得られた無彩色と推定される画素に応じて前記第１のホワイトバランス補正値と異なる第２のホワイトバランス補正値を求める第２の算出手段と、
前記第１のホワイトバランス補正値および前記第２のホワイトバランス補正値を加算処理して第３のホワイトバランス補正値を求める第３の算出手段と、
前記第３のホワイトバランス補正値を基準ホワイトバランス補正値として記憶する記憶手段と、
前記第１の画像よりも後の撮影で得られた第２の画像について前記ホワイトバランス処理を行う際、当該第２の画像において赤外線が検出され、かつ前記第２の画像から得られた前記無彩色と推定される画素の信頼度が所定の閾値未満であると、前記第２の画像に対して前記記憶手段に記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行う制御手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記第２の画像において前記赤外線が検出されず、かつ前記無彩色と推定される画素の信頼度が所定の閾値以上であると、前記制御手段は、前記第２の画像について求められた第３のホワイトバランス補正値で前記記憶手段に記憶された基準ホワイトバランス補正値を更新することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記第２の画像における赤外線量が予め定められた閾値未満であると、前記記憶手段を初期化することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記制御手段は、前記第２の画像において前記無彩色と推定される画素の数が前記記憶手段に記憶された基準ホワイトバランス補正値の算出に用いられた画像において前記無彩色と推定される画素の数よりも多いと、前記第２の画像を用いて得られた第３のホワイトバランス補正値を用いてホワイトバランス処理を行って、前記第２の画像を用いて得られた第３のホワイトバランス補正値で前記記憶手段に記憶された基準ホワイトバランス補正値を更新することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記制御手段は、前記第２の画像において前記無彩色と推定される画素の数が前記記憶手段に記憶された基準ホワイトバランス補正値の算出に用いられた画像において前記無彩色と推定される画素の数よりも少ないと、前記記憶手段に記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記第２の画像に応じて求められた第３のホワイトバランス補正値と前記記憶手段に記憶された基準ホワイトバランス補正値との差分が所定の差分閾値以上であると、前記制御手段は、前記記憶手段に記憶された基準ホワイトバランス補正値を前記第２の画像に応じて求められた第３のホワイトバランス補正値の方向に所定のシフト閾値だけシフトさせて得たシフトホワイトバランス補正値を用いて前記ホワイトバランス処理を行って、前記シフトホワイトバランス補正値で前記記憶手段に記憶された基準ホワイトバランス補正値を更新することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記第２の画像に応じて求められた第３のホワイトバランス補正値と前記記憶手段に記憶された基準ホワイトバランス補正値との差分が所定の差分閾値未満であると、前記制御手段は、前記第２の画像に応じて求められた第３のホワイトバランス補正値を用いてホワイトバランス処理を行って、前記第２の画像に応じて求められた第３のホワイトバランス補正値で前記記憶手段に記憶された基準ホワイトバランス補正値を更新することを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記制御手段は、前記第１の画像が得られた時刻から所定の時間が経過していると、前記記憶手段に記憶された基準ホワイトバランス補正値を初期化することを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記制御手段は、前記第２の画像における光源の色温度と前記記憶手段に記憶された基準ホワイトバランス補正値を得た画像における光源の色温度との差が所定の温度以上であると、前記第２の画像に応じて求められた第３のホワイトバランス補正値を用いてホワイトバランス処理を行って、前記第２の画像に応じて求められた第３のホワイトバランス補正値で前記記憶手段に記憶された基準ホワイトバランス補正値を更新することを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
画像に対してホワイトバランス処理を行う画像処理装置の制御方法であって、
第１の画像において得られた赤外線量に応じて前記ホワイトバランス処理を行うための第１のホワイトバランス補正値を求める第１の算出ステップと、
前記第１の画像において得られた無彩色と推定される画素に応じて前記第１のホワイトバランス補正値と異なる第２のホワイトバランス補正値を求める第２の算出ステップと、
前記第１のホワイトバランス補正値および前記第２のホワイトバランス補正値を加算処理して第３のホワイトバランス補正値を求める第３の算出ステップと、
前記第３のホワイトバランス補正値を基準ホワイトバランス補正値としてメモリに記憶する記憶ステップと、
前記第１の画像よりも後の撮影で得られた第２の画像について前記ホワイトバランス処理を行う際、当該第２の画像において赤外線が検出され、かつ前記第２の画像から得られた前記無彩色と推定される画素の信頼度が所定の閾値未満であると、前記第２の画像に対して前記メモリに記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行う制御ステップと、
を有することを特徴とする制御方法。
【請求項１１】
画像に対してホワイトバランス処理を行う画像処理装置で用いられる制御プログラムであって、
前記画像処理装置が備えるコンピュータに、
第１の画像において得られた赤外線量に応じて前記ホワイトバランス処理を行うための第１のホワイトバランス補正値を求める第１の算出ステップと、
前記第１の画像において得られた無彩色と推定される画素に応じて前記第１のホワイトバランス補正値と異なる第２のホワイトバランス補正値を求める第２の算出ステップと、
前記第１のホワイトバランス補正値および前記第２のホワイトバランス補正値を加算処理して第３のホワイトバランス補正値を求める第３の算出ステップと、
前記第３のホワイトバランス補正値を基準ホワイトバランス補正値としてメモリに記憶する記憶ステップと、
前記第１の画像よりも後の撮影で得られた第２の画像について前記ホワイトバランス処理を行う際、当該第２の画像において赤外線が検出され、かつ前記第２の画像から得られた前記無彩色と推定される画素の信頼度が所定の閾値未満であると、前記第２の画像に対して前記メモリに記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行う制御ステップと、
を実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、その制御方法、および制御プログラムに関し、特に、画像処理装置において行われるホワイトバランス処理に関する。
【背景技術】
【０００２】
近年、撮像装置などの画像処理装置において行われるオートホワイトバランス処理では、所謂ＴＴＬ（Ｔｈｒｏｕｇｈ  Ｔｈｅ  Ｌｅｎｓ）方式が広く用いられている。ＴＴＬ方式によるオートホワイトバランス処理においては、撮影の結果得られた画像に応じて光源の色を推定している。そして、ホワイトバランス（以下ＷＢという）補正値を算出するため、画像において光源色と被写体色とを精度よく区別する必要がある。
【０００３】
例えば、画像を複数のエリア（ブロック領域）に分割して、当該エリア毎に求めた色情報を、光源種に対応する色分布の範囲を示す検出枠に当てはめるようにした撮像装置がある（特許文献１参照）。ここでは、検出枠毎に当てはまるエリア数、被写体の輝度レベル、および赤外線光量に応じて光源を判別して、当該判別結果に基づいてホワイトバランス制御を行っている。
【０００４】
さらに、白抽出範囲に含まれ無彩色にする作用が働く緑の被写体（例えば、日陰などの暗い場所で緑の草木又は芝を撮影する場合）について適切なホワイトバランス制御を行うようにした撮像装置がある（特許文献２参照）。ここでは、照度、緑の量、Ｒゲインを座標軸とする３次元座標系の分布に応じて、屋内の蛍光灯であるか又は屋外の日向／日陰であるかを判定して、ホワイトバランス制御を行うようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１６３９４４号公報
【特許文献２】特開２００６−１７４２８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、上述の特許文献１および２に記載の撮像装置では、同一の光源下であっても画像における被写体の色が変化してしまうと、同一のＷＢ補正値を用いてホワイトバランス制御を行うことが困難となる。
【０００７】
例えば、特許文献１に記載の撮像装置においては、光源の評価値に応じてゲイン値を変化させて光源の各々に対応するＷＢ補正値の中間値を用いることが考慮されている。ところが、特許文献１においては色分布を前提として光源の検出を行っている関係上、画像における被写体の色が変化すると、安定的にＷＢ補正値の適用を継続することが難しい。
【０００８】
さらに、特許文献２に記載の撮像装置においては、光源を識別する境界からの距離に応じて、段階的にホワイトバランス制御を変更することが考慮されている。ところが、特許文献２においても、特許文献１と同様に被写体の色が変化すると、安定的にＷＢ補正値の適用を継続することが難しい。
【０００９】
そこで、本発明の目的は、被写体の色の変化に左右されことが少なく、安定的にホワイトバランス制御を行うことができる画像処理装置、その制御方法、および制御プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記の目的を達成するため、本発明による画像処理装置は、画像に対してホワイトバランス処理を行う画像処理装置であって、第１の画像において得られた赤外線量に応じて前記ホワイトバランス処理を行うための第１のホワイトバランス補正値を求める第１の算出手段と、前記第１の画像において得られた無彩色と推定される画素に応じて前記第１のホワイトバランス補正値と異なる第２のホワイトバランス補正値を求める第２の算出手段と、前記第１のホワイトバランス補正値および前記第２のホワイトバランス補正値を加算処理して第３のホワイトバランス補正値を求める第３の算出手段と、前記第３のホワイトバランス補正値を基準ホワイトバランス補正値として記憶する記憶手段と、前記第１の画像よりも後の撮影で得られた第２の画像について前記ホワイトバランス処理を行う際、当該第２の画像において赤外線が検出され、かつ前記第２の画像から得られた前記無彩色と推定される画素の信頼度が所定の閾値未満であると、前記第２の画像に対して前記記憶手段に記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行う制御手段と、を有することを特徴とする。
【００１１】
本発明による制御方法は、画像に対してホワイトバランス処理を行う画像処理装置の制御方法であって、第１の画像において得られた赤外線量に応じて前記ホワイトバランス処理を行うための第１のホワイトバランス補正値を求める第１の算出ステップと、前記第１の画像において得られた無彩色と推定される画素に応じて前記第１のホワイトバランス補正値と異なる第２のホワイトバランス補正値を求める第２の算出ステップと、前記第１のホワイトバランス補正値および前記第２のホワイトバランス補正値を加算処理して第３のホワイトバランス補正値を求める第３の算出ステップと、前記第３のホワイトバランス補正値を基準ホワイトバランス補正値としてメモリに記憶する記憶ステップと、前記第１の画像よりも後の撮影で得られた第２の画像について前記ホワイトバランス処理を行う際、当該第２の画像において赤外線が検出され、かつ前記第２の画像から得られた前記無彩色と推定される画素の信頼度が所定の閾値未満であると、前記第２の画像に対して前記メモリに記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行う制御ステップと、を有することを特徴とする。
【００１２】
本発明による制御プログラムは、画像に対してホワイトバランス処理を行う画像処理装置で用いられる制御プログラムであって、前記画像処理装置が備えるコンピュータに、第１の画像において得られた赤外線量に応じて前記ホワイトバランス処理を行うための第１のホワイトバランス補正値を求める第１の算出ステップと、前記第１の画像において得られた無彩色と推定される画素に応じて前記第１のホワイトバランス補正値と異なる第２のホワイトバランス補正値を求める第２の算出ステップと、前記第１のホワイトバランス補正値および前記第２のホワイトバランス補正値を加算処理して第３のホワイトバランス補正値を求める第３の算出ステップと、前記第３のホワイトバランス補正値を基準ホワイトバランス補正値としてメモリに記憶する記憶ステップと、前記第１の画像よりも後の撮影で得られた第２の画像について前記ホワイトバランス処理を行う際、当該第２の画像において赤外線が検出され、かつ前記第２の画像から得られた前記無彩色と推定される画素の信頼度が所定の閾値未満であると、前記第２の画像に対して前記メモリに記憶された基準ホワイトバランス補正値を用いてホワイトバランス処理を行う制御ステップと、を実行させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、被写体の色の変化に左右されることが少なく、安定的にホワイトバランス制御を行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態による画像処理装置を備える撮像装置の一例についてその構成を示すブロック図である。
【図２】図１に示す画像処理装置に備えられたホワイトバランス制御部の一例についてその構成を示すブロック図である。
【図３】図１に示すカメラで行われる撮影処理を説明するためのフローチャートである。
【図４】図３に示すＷＢ補正値の演算処理を説明するためのフローチャートである。
【図５】図２に示す白判定部で行われる判定処理を説明するための図である。
【図６】図４に示す白ＷＢ補正値の信頼度算出を説明するためのフローチャートである。
【図７】図２に示すＷＢ制御部で行われる信頼度算出に用いられるテーブルを説明するための図であり、（Ａ）は割合信頼度の算出に用いられるテーブルを示す図、（Ｂ）は距離信頼度の算出に用いられるテーブルを示す図、（Ｃ）は色信頼度の算出に用いられるテーブルを示す図、（Ｄ）は輝度信頼度の算出に用いられるテーブルを示す図、（Ｅ）は赤外線信頼度の算出に用いられるテーブルの一例を示す図、（Ｆ）は赤外線信頼度の算出に用いられるテーブルの他の例を示す図、（Ｇ）は緑信頼度の算出に用いられるテーブルを示す図、（Ｈ）は夕景信頼度の算出に用いられるテーブルを示す図である。
【図８】図４に示す緑検出の一例を説明するための図であり、（Ａ）はＲＡＷデータが示す画像の一例を示す図、（Ｂ）は（Ａ）に示す画像を所定の数のブロックに分割した状態を示す図である。
【図９】図４に示す赤外線判定による緑検出処理の一例を説明するためのフローチャートである。
【図１０】図２に示すＷＢ制御部で行われるＷＢ補正値の算出を説明するための図であり、（Ａ）は赤外線判定に応じた緑検出に関する処理を示す図、（Ｂ）は緑検出に応じた色温度推定処理を示す図、（Ｃ）は色温度推定に応じたＷＢ補正値の算出処理を示す図、（Ｄ）は白ＷＢ補正値および赤外線ＷＢ補正値に応じて最終的なＷＢ補正値の算出処理を示す図である。
【図１１】図４に示す緑検出に基づいた色温度推定を説明するためのフローチャートである。
【図１２】図４に示す白ＷＢ補正値と赤外線ＷＢ補正値との加算処理を説明するためのフローチャートである。
【図１３】図４に示す引き継ぎ処理を説明するためのフローチャートである。
【図１４Ａ】本発明の第２の実施形態による画像処理装置を備えるカメラで行われる引き継ぎ処理を説明するためのフローチャートである（その１）。
【図１４Ｂ】本発明の第２の実施形態による画像処理装置を備えるカメラで行われる引き継ぎ処理を説明するためのフローチャートである（その２）。
【図１５】図１４Ａおよび図１４Ｂに示す混合ＷＢ補正値と基準ＷＢ補正値の差分と差分閾値との判定結果に応じた処理を説明するための図である。
【発明を実施するための形態】
【００１５】
以下に、本発明の実施の形態による画像処理装置の一例について図面を参照して説明する。
【００１６】
［第１の実施形態］
図１は、本発明の第１の実施形態による画像処理装置を備える撮像装置の一例についてその構成を示すブロック図である。
【００１７】
撮像装置１００は、例えば、デジタルカメラ（以下単にカメラと呼ぶ）であるが、例えば、デジタルビデオカメラであってもよい。さらに、撮像装置１００はカメラ機能付き携帯電話機又はカメラ付きコンピュータなどカメラ機能を備える電子機器であってもよい。
【００１８】
図示のカメラ１００は光学系１０１を有しており、光学系１０１はレンズ、シャッター、および絞りを備えている。光学系１０１を介して被写体像（光学像）が撮像素子１０２に結像する。この際、光学系１０１から焦点距離、シャッター速度、および絞り値などの光学系情報が中央演算装置（以下ＣＰＵと呼ぶ）１０３に送られる。
【００１９】
撮像素子１０２は、例えば、ＣＣＤイメージセンサ又はＣＭＯＳイメージセンサであり、複数の画素が２次元マトリックス状に配列されている。そして、これら画素にはＲ（赤）、Ｇ（緑）、Ｂ（青）のカラーフィルタが、例えば、ベイヤー配列で配列されている。そして、撮像素子１０２は光学像を画素毎の輝度情報を示すアナログ信号に変換する。
【００２０】
撮像素子１０２の出力であるアナログ信号はＡ／Ｄ変換器（図示せず）によってデジタル画像信号に変換される。このデジタル画像信号は現像処理前のＲＡＷデータであり、ＣＰＵ１０３によって一次記憶装置１０４に記憶される。なお、撮像素子１０２の電気的利得（以下ＩＳＯ感度という）はＣＰＵ１０３によって設定される。
【００２１】
測光センサ１０５は複数の測光領域を備えており（例えば、水平方向に１２、垂直方向に８の合計９６個の測光領域）、光学系１０１を介して入射した光量に応じて測光領域毎に被写体輝度を検出する。そして、これら被写体輝度はＡ／Ｄ変換器（図示せず）によってデジタル輝度信号に変換されてＣＰＵ１０３に送られる。
【００２２】
なお、測光センサ１０５の測光領域の数については正数であればよく、上記の例には限定されない。
【００２３】
赤外線センサ１０６は、測光センサ１０５と同一の数の領域に分割されており、光学系１０１を介して入射した光量に応じで領域毎に赤外線量を検出する。そして、これら赤外線量はＡ／Ｄ変換器（図示せず）によってデジタル赤外線信号に変換されて、ＣＰＵ１０３に送られる。
【００２４】
ＣＰＵ１０３はカメラ１００全体の制御を司り、予め記憶されたプログラムに応じてカメラ１００を制御する。なお、以下の説明において、ＣＰＵ１０３がプログラムを実行して実現する機能の少なくとも一部はＡＳＩＣなどの専用ハードウェアによって実現するようにしてもよい。
【００２５】
一次記憶装置１０４は、例えば、ＲＡＭなどの揮発性記憶装置であり、ＣＰＵ１０３の作業用エリアとして用いられる。また、一次記憶装置１０４に記憶されたデータおよび情報は、画像処理装置１０７で利用され、さらには記録媒体１０８に記録される。
【００２６】
二次記憶装置１０９は、例えば、ＥＥＰＲＯＭなどの不揮発性記憶装置である。二次記憶装置１０９には、カメラ１００を制御するためのプログラム（ファームウェア）および各種の設定情報が記憶されて、ＣＰＵ１０３によって用いられる。
【００２７】
記録媒体１０８には、一次記憶装置１０４に記憶された画像データなどが記録される。なお、記録媒体１０８は、例えば、半導体メモリカードなどのようにカメラ１００に対して着脱可能である。そして、記録媒体に記録された画像データなどは、パーソナルコンピュータなど他の機器で読み出すことができる。つまり、カメラ１００は、記録媒体１０８の着脱機構および読み書き機能を有している。
【００２８】
表示部１１０には、撮影の際にビューファインダー画像が表示されるとともに、撮影の結果得られた撮影画像が表示される。さらには、表示部１１０には対話的な操作のためのＧＵＩ画像などが表示される。
【００２９】
操作部１１１は、ユーザ操作を受け付けてＣＰＵ１０３に入力情報を送る入力デバイス群である。操作部１１１には、例えば、ボタン、レバー、およびタッチパネルなどが備えられる。さらには、操作部１１１は、音声および視線などを用いた入力機器であってもよい。そして、操作部１１１には撮影開始を行うレリーズボタンが備えられている。
【００３０】
図示のカメラ１００には、画像処理装置１０７によって行われる画像処理のパターンが複数備えられ、これら画像処理パターンを撮像モードとして操作部１１１で設定することができる。
【００３１】
画像処理装置１０７は、撮影の結果得られた画像データに対して、所定の画像処理を行う。例えば、画像処理装置１０７はホワイトバランス処理、ＲＧＢベイヤー配列の信号をＲＧＢ３プレーン信号に変換するための色補間処理、ガンマ補正処理、彩度補正、および色相補正などの現像処理と呼ばれる画像処理を行う。
【００３２】
なお、図示の例では、後述するように、画像処理装置１０７がホワイトバランスに係る演算を行うが、画像処理装置１０７の機能の少なくとも一部を、ＣＰＵ１０３がソフトウェア的に実現するようにしてもよい。
【００３３】
図２は、図１に示す画像処理装置１０７に備えられたホワイトバランス制御部２００の一例についてその構成を示すブロック図である。
【００３４】
なお、図示のホワイトバランス（ＷＢ）制御部２００はホワイトバランス処理を行うための制御部である。そして、ＷＢ制御部２００においては、白と推定される画素に係るホワイトバランス補正値（ＷＢ補正値：以下白ＷＢ補正値という）と赤外線量に係るＷＢ補正値（以下赤外線ＷＢ補正値という）とに応じて混合ＷＢ補正値を算出する。
【００３５】
図示のように、ＷＢ制御部２００は、ブロック分割部２０１、白判定部２０２、白ＷＢ補正値算出部２０３、白ＷＢ補正値信頼度算出部２０４、色判定部２０５、輝度判定部２０６、赤外線量判定部２０７、ＲＧＢ値加算部２０８、および光源色推定部２０９を備えている。さらに、ＷＢ制御部２００は赤外線ＷＢ補正値算出部２１０、赤外線ＷＢ補正値信頼度算出部２１１、ＷＢ補正値加算比率算出部２１２、および混合ＷＢ補正値算出部２１３を備えるとともに、ＷＢ補正値判定部２１４、ＷＢ補正値設定部２１５、および基準ＷＢ補正値記憶部２１６を備えている。なお、各ブロックで行われる処理については後述する。
【００３６】
図３は、図１に示すカメラ１００で行われる撮影処理を説明するためのフローチャートである。
【００３７】
なお、前述のレリーズボタンは２段階で操作され、以下の説明において、操作部１１１におけるＳＷ１はレリーズボタンの半押しをいい、操作部１１１におけるＳＷ２はレリーズボタンの全押しをいう。また、図示のフローチャートに係る処理は、ＣＰＵ１０３の制御下で行われる。
【００３８】
撮影処理を開始すると、ＣＰＵ１０３は、操作部１１０からユーザ入力を受け付ける（ステップＳ３０１：操作部の制御）。そして、ＣＰＵ１０３は、ユーザ入力に応じて光学系１０１の焦点距離、シャッター速度、および絞り値などの設定を調節する（ステップＳ３０２：光学系の制御）。
【００３９】
続いて、ＣＰＵ１０３は、ユーザ入力に応じて測光センサ１０５における測光領域を調節する（ステップＳ３０３：測光センサの制御）。さらに、ＣＰＵ１０３は、ユーザ入力に基づいて赤外線センサ１０６における測光領域を調節する（ステップＳ３０４：赤外線センサの制御）。そして、ＣＰＵ１０３は、ユーザ入力に応じて撮像素子１０２のＩＳＯ感度などの設定を調節する（ステップＳ３０５：撮像素子の制御）。
【００４０】
続いて、ＣＰＵ１０３は、ステップＳ３０２〜Ｓ３０５において変更された設定に係る変更情報を表示部１０９に表示する（ステップＳ３０６：表示部の制御）。なお、ステップＳ３０２〜Ｓ３０５の処理順は、図示の例に限らず処理順を変更するようにしてもよい。
【００４１】
次に、ＣＰＵ１０３は操作部１１１においてＳＷ１がオン又はオフのいずれかであるかを判定する（ステップＳ３０７）。ＳＷ１がオフであると（ステップＳ３０７において、ＯＦＦ）、ＣＰＵ１０３はステップＳ３０１の処理に戻る。一方、ＳＷ１がオンであると（ステップＳ３０７において、ＯＮ）、ＣＰＵ１０３は測光センサ１０５によって被写体の明るさを計測する（ステップＳ３０８）。さらに、ＣＰＵ１０３は自動露出（ＡＥ）モードの際には、シャッター速度、絞り値、およびＩＳＯ感度に応じて露出の調節を行う。
【００４２】
続いて、ＣＰＵ１０３は、赤外線センサ１０６によって測光センサと同一の領域について領域毎の赤外線量を検出する（ステップＳ３０９）。そして、ＣＰＵ１０３は、自動フォーカス（ＡＦ）モードが設定されている場合には、測距センサ（図示せず）によってピントの調節を行う（ステップＳ３１０）。なお、ステップＳ３０８〜Ｓ３１０の処理順は、図示の例に限らず処理順を変更するようにしてもよい。
【００４３】
次に、ＣＰＵ１０３は操作部１１１のＳＷ２がオン又はオフのいずれであるかを判定する（ステップＳ３１１）。ＳＷ２がオフであると（ステップＳ３１１において、ＯＦＦ）、ＣＰＵ１０３はステップＳ３０１の処理に戻る。一方、ＳＷ２がオンであると（ステップＳ３１１において、ＯＮ）、ＣＰＵ１０３はシャッターを制御して撮像素子１０２を露光し、一次記憶装置１０４にＲＡＷデータを記憶する（ステップＳ３１２）。
【００４４】
続いて、ＣＰＵ１０３は、画像処理装置１０７を制御して、後述すようにして一次記憶装置１０４に記憶されたＲＡＷデータに係るＷＢ補正値を求める（ステップＳ３１３）。そして、ＣＰＵ１０３は、一次記憶装置１０４に記憶されたＲＡＷデータを、ＷＢ補正値によって補正して（つまり、現像して）画像データを得る（ステップＳ３１４）。
【００４５】
その後、ＣＰＵ１０３は、現像後の画像データに応じた画像を表示部１１０に表示する（ステップＳ３１５）。ＣＰＵ１０３は、記録媒体１０８に現像後の画像データを記録して（ステップＳ３１６）、撮影処理を終了する。なお、ステップＳ３１５およびＳ３１６の処理順は、図示の例に限らず処理順を変更するようにしてもよい。
【００４６】
図４は、図３に示すＷＢ補正値の演算処理を説明するためのフローチャートである。
【００４７】
図２および図４を参照して、ブロック分割部２０１は、一次記憶装置１０４に記憶されたＲＡＷデータ(つまり、第１の画像)を受けて、ＲＡＷデータが示す画像を水平方向および垂直方向に所定の数（例えば、水平方向に１２、垂直方向に８の合計９６個）のブロック領域（以下単にブロックと呼ぶ）に分割する。そして、ブロック分割部２０１はブロック毎のＲ、Ｇ、およびＢの積分値を求める。
【００４８】
なお、ブロックの分割数は上述の例に限らず、ブロック分割数は正数であればよい。また、ここでは、ブロックの分割数およびその領域は、測光センサ１０５および赤外線センサ１０６における領域の分割数および領域に対応している。
【００４９】
続いて、ブロック分割部２０１はブロック毎にそのＲ、Ｇ、およびＢの積分値に応じてＲ／ＧおよびＢ／Ｇを求める。そして、白判定部２０２は、後述するようにして、Ｒ／ＧおよびＢ／Ｇ座標に設定した白色領域に含まれるブロックについてそのＲ、Ｇ、およびＢを積分して、積分値Ｒｉｎｔｅｇ、Ｇｉｎｔｅｇ、およびＢｉｎｔｅｇを得る（ステップＳ４０１：白検出）。
【００５０】
図５は、図２に示す白判定部２０２で行われる判定処理を説明するための図である。
【００５１】
図５において、横軸はＲ／Ｇを示し、縦軸はＧ／Ｂを示す。ここでは、黒体輻射軌跡が参照番号５０１で示されている。カメラ１００において日向、日陰、タングステン光、水銀灯、蛍光灯、又はフラッシュ光などの様々な光源で無彩色被写体を撮影した際のＲ／Ｇ、Ｂ／Ｇ値がその領域内に存在するように白色領域５０２が設定される。
【００５２】
なお、図５においては、Ｒ／ＧおよびＢ／Ｇ座標を用いて被写体から無彩色らしい画素を抽出して光源色を推定することによってＷＢ補正値の演算を行うようにしたが、他の手法で被写体から無彩色らしい画素を抽出してＷＢ補正値の演算を行うようにしてもよい。
【００５３】
再び図２および図４を参照して、白ＷＢ補正値算出部２０３は、白色領域５０２内のブロックにおいて算出したＲ、Ｇ、およびＢ積分値Ｒｉｎｔｅｇ、Ｇｉｎｔｅｇ、およびＢｉｎｔｅｇに応じて、式（１）を用いてＷＢ補正値（白ＷＢ補正値）を算出する（ステップＳ４０２）。
【００５４】
白ＷＢ補正値のＲゲインＷ＿ＷＢ＿Ｒｇａｉｎ＝Ｇｉｎｔｅｇ／Ｒｉｎｔｅｇ
白ＷＢ補正値のＧゲインＷ＿ＷＢ＿Ｇｇａｉｎ＝Ｇｉｎｔｅｇ／Ｇｉｎｔｅｇ
白ＷＢ補正値のＢゲインＷ＿ＷＢ＿Ｂｇａｉｎ＝Ｇｉｎｔｅｇ／Ｂｉｎｔｅｇ
（１）
続いて、白ＷＢ補正値信頼度算出部２０４は、後述するようにして、白ＷＢ補正値の信頼度を算出する（ステップＳ４０３）。
【００５５】
図６は、図４に示す白ＷＢ補正値の信頼度算出を説明するためのフローチャートである。
【００５６】
白ＷＢ補正値信頼度算出部２０４は、ステップＳ４０１において抽出された白ブロックのブロック全体（つまり、画像全体）に対する割合に応じて割合信頼度Ｔｒａｔｉｏを算出する（ステップＳ６０１）。
【００５７】
図７は、図２に示すＷＢ制御部２００で行われる信頼度算出に用いられるテーブルを説明するための図である。そして、図７（Ａ）は割合信頼度の算出に用いられるテーブルを示す図であり、図７（Ｂ）は距離信頼度の算出に用いられるテーブルを示す図である。また、図７（Ｃ）は色信頼度の算出に用いられるテーブルを示す図であり、図７（Ｄ）は輝度信頼度の算出に用いられるテーブルを示す図である。さらに、図７（Ｅ）は赤外線信頼度の算出に用いられるテーブルの一例を示す図であり、図７（Ｆ）は赤外線信頼度の算出に用いられるテーブルの他の例を示す図である。加えて、図７（Ｇ）は緑信頼度の算出に用いられるテーブルを示す図であり、図７（Ｈ）は夕景信頼度の算出に用いられるテーブルを示す図である。
【００５８】
割合信頼度Ｔｒａｔｉｏを算出する際には、白ＷＢ補正値信頼度算出部２０４は図７（Ａ）に示すテーブル（割合信頼度テーブル）を参照して、割合信頼度Ｔｒａｔｉｏ（％）を算出する。
【００５９】
図７（Ａ）において、横軸は白ブロックの数、縦軸は割合信頼度Ｔｒａｔｉｏ（％）を示す。なお、ここでは、ブロック全体の数は９６個である。図７（Ａ）に示すブロック全体の数は一例であり、図示の例に限定するものではない。つまり、白ブロックの割合が多い程、割合信頼度Ｔｒａｔｉｏが高くなるようにテーブルを設定するようにすればよい。
【００６０】
続いて、白ＷＢ補正値信頼度算出部２０４は、ステップＳ４０２で求められた白ＷＢ補正値Ｗ＿ＷＢ＿ＲｇａｉｎおよびＷ＿ＷＢ＿Ｂｇａｉｎに応じて、式（２）を用いて、図５に示すＲ／Ｇ，Ｂ／Ｇ座標における座標５０３を求める。
【００６１】
白ＷＢ補正値に対応するＲ／Ｇ＝１／Ｗ＿ＷＢ＿Ｒｇａｉｎ
白ＷＢ補正値に対応するＢ／Ｇ＝１／Ｗ＿ＷＢ＿Ｂｇａｉｎ      （２）
そして、白ＷＢ補正値信頼度算出部２０４は、白ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標５０３と黒体輻射軌跡５０１との最短距離５０４に応じて、図７（Ｂ）に示すテーブル（距離信頼度テーブル）から距離信頼度Ｔｄｉｓｔ（％）を算出する（ステップＳ６０２）。
【００６２】
図７（Ｂ）において、横軸は白ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標５０３と黒体輻射軌跡５０１との最短距離５０４を示し、縦軸は黒体輻射軌跡５０１からの距離信頼度Ｔｄｉｓｔを示す。なお、距離信頼度Ｔｄｉｓｔは、白ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標５０３と黒体輻射軌跡５０１との最短距離が近い程、高くなるように設定すればよい。図７（Ｂ）における最小距離Ｄｍｉｎと最大距離Ｄｍａｘは任意に設定する。そして、黒体輻射軌跡５０１に近い程、水銀灯ではなく自然光下の無彩色が検出された可能性が高いことを示す。
【００６３】
次に、白ＷＢ補正値信頼度算出部２０４は、式（３）によって割合信頼度Ｔｒａｔｉｏと距離信頼度Ｔｄｉｓｔとを乗算して、白ＷＢ補正値の信頼度Ｔｗｈｉｔｅを算出する（ステップＳ６０３）。そして、白ＷＢ補正値信頼度算出部２０４は、白ＷＢ補正値の信頼度算出を終了して、図４に示す処理に戻る。
【００６４】
Ｔｗｈｉｔｅ＝Ｔｒａｔｉｏ×Ｔｄｉｓｔ／１００      （３）
次に、ＣＰＵ１０３は白ＷＢ補正値の信頼度Ｔｗｈｉｔｅの判定を行う（ステップＳ４０４）。ここでは、ＣＰＵ１０３は白ＷＢ補正値の信頼度Ｔｗｈｉｔｅが所定の閾値以上であると、自然光下で無彩色が検出されているとして、信頼度Ｔｗｈｉｔｅは高信頼度であるとする。一方、ＣＰＵ１０３は白ＷＢ補正値の信頼度Ｔｗｈｉｔｅが所定の閾値未満であると、信頼度Ｔｗｈｉｔｅは低信頼度であるとする。
【００６５】
信頼度Ｔｗｈｉｔｅが高信頼度であると（ステップＳ４０４において、高信頼度）、ＣＰＵ１０３はＷＢ補正値演算を終了して、図３に示すステップＳ３１４の処理に進む。そして、ＣＰＵ１０３は、画像処理装置１０７を制御して白ＷＢ補正値に応じて、一次記憶装置１０４に記憶されたＲＡＷデータを画像データに変換する。
【００６６】
一方、信頼度Ｔｗｈｉｔｅが低信頼度であると（ステップＳ４０４において、低信頼度）、ＣＰＵ１０３は、色判定部２０５、輝度判定部２０６、赤外線量判定部２０７、ＲＧＢ値加算部２０８、および赤外線ＷＢ補正値信頼度算出部２１１を制御して以下の処理を行う。
【００６７】
ここでは、まず、ＣＰＵ１０３の制御下で、赤外線判定に応じた緑の検出が行われる（ステップＳ４０５）。つまり、一次記憶装置１０４に記憶されたＲＡＷデータが示す画像が、ブロック分割部２０１の処理と同様にして所定のブロックに分割される。次に、赤外線センサ１０６において同一の領域（つまり、ブロック）で検出された赤外線量に基づいて緑と判定されたブロックが水銀灯などの光源の影響による色か又は被写体の色かが判別される。そして、被写体の色であると判別された緑のみが積分される。
【００６８】
図８は、図４に示す緑検出の一例を説明するための図である。そして、図８（Ａ）はＲＡＷデータが示す画像の一例を示す図であり、図８（Ｂ）は図８（Ａ）に示す画像を所定の数のブロックに分割した状態を示す図である。
【００６９】
図８（Ｂ）において、緑の芝のブロックを参照番号８０１で示し、青い空のブロックを参照番号８０２で示す。また、白い看板のブロックを参照番号８０３で示す。いま、図８（Ａ）に示す画像が自然光下の撮影で得られたとすると、太陽光は赤外線を含むので、緑の芝のブロック８０１は赤外線を反射する結果被写体の色と判別されて、積分対象となる。なお、青い空のブロック８０２および白い看板のブロック８０３は、緑ではないため積分対象外となる。
【００７０】
一方、図８（Ａ）に示す画像が夜間に水銀灯下の撮影で得られたとすると、水銀灯の色の影響を受けて、白い看板のブロック８０３が緑と判別されることがある。また、緑の芝のブロック８０１も水銀灯の色の影響を受けるので、本来の緑と異なる色になる。この場合、水銀灯は赤外線成分を含まないので、緑の芝のブロック８０１および白い看板のブロック８０３は水銀灯の影響による色であると判別される。この結果、緑ではあるが積分対象外となる。
【００７１】
図９は、図４に示す赤外線判定による緑検出処理の一例を説明するためのフローチャートである。
【００７２】
色判定部２０５は、予め設定された緑検出領域（色検出枠）に含まれる色を抽出して、図７（Ｃ）に示すテーブル（色信頼度テーブル）を参照して色信頼度Ｔｃｏｌｏｒを算出する（ステップＳ９０１）。
【００７３】
図７（Ｃ）において、横軸はブロック毎の色に対応するＲ／Ｇ，Ｂ／Ｇ）座標を示し、縦軸は色信頼度Ｔｃｏｌｏｒを示す。ここでは、後述するように、緑検出領域の内側に色信頼度が１００％となる領域が設けられ、緑検出領域にブロックが含まれない場合には色信頼度は０％とされる。また、緑検出領域にブロックが含まれ、かつ色信頼度１００％となる領域にもブロックが含まれる場合には色信頼度は１００％とされる。そして、緑検出領域１００１にのみブロックが含まれる場合には、線形補間によって、赤外線量に応じて徐々に色信頼度Ｔｃｏｌｏｒが変化するようにする。
【００７４】
なお、緑検出領域の内側に色信頼度１００％となる領域を設定することは一例であって、これに限定されるものではない。つまり、色信頼度Ｔｃｏｌｏｒは、緑検出領域の中心部に近い程、高くなるように設定すればよい。このように、色信頼度Ｔｃｏｌｏｒを考慮することによって、色のバラツキによるＷＢ補正値の極端な差を抑制することができる。
【００７５】
次に、輝度判定部２０６は、測光センサ１０５で検出された被写体輝度に基づいて、色信頼度Ｔｃｏｌｏｒを算出するために十分な明るさであるかについて、図７（Ｄ）に示すテーブル（輝度信頼度テーブル）を参照して輝度信頼度Ｔｌｕｍｉを算出する（ステップＳ９０２）。
【００７６】
図７（Ｄ）において、横軸はブロック毎の被写体輝度に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標を示し、縦軸は輝度信頼度Ｔｌｕｍｉを示す。ここでは、輝度信頼度Ｔｌｕｍｉは、被写体輝度が高い程、高くなるように設定される。このように、輝度信頼度Ｔｌｕｍｉを考慮することによって、極端に暗い夜景シーンなどにおいて自然光判定を確実に行わないようにすることができる。
【００７７】
続いて、赤外線量判定部２０７は、赤外線センサ１０６で検出された赤外線量に基づいて、図７（Ｅ）に示すテーブル（赤外線信頼度テーブル）を参照して赤外線信頼度Ｔｉｒを算出する（ステップＳ９０３）。赤外線信頼度Ｔｉｒは、例えば、無彩色の被写体が水銀灯などの緑色の光源下で撮影されたか又は草木の緑が自然光下で撮影されたかのいずれの可能性が高いかを表す信頼度である。
【００７８】
なお、赤外線量は測光センサ１０５における被写体輝度で正規化して、被写体輝度における赤外線量の比率を用いるようにすれば、明るさ変化によるバラツキを抑えることができる。
【００７９】
図７（Ｅ）を参照すると、最小値Ｉｍｉｎよりも赤外線量が少ない場合には、光源の影響による色とされ、最大値Ｉｍａｘよりも赤外線量が多い場合には、被写体の色とされる。そして、最小値Ｉｍｉｎと最大値Ｉｍａｘとの間においては、線形補間によって、赤外線量に応じて徐々に赤外線信頼度Ｔｉｒが変化するようにする。
【００８０】
次に、ＲＧＢ値加算部２０８は、処理対象ブロックのＲ、Ｇ、およびＢの各々ついて、色信頼度Ｔｃｏｌｏｒ、輝度信頼度Ｔｌｕｍｉ、および赤外線信頼度Ｔｉｒに応じて、式（４）によって重み付け積分を行う（ステップＳ９０４）。以下、当該重み付け積分によって得られた積分値（つまり、加算値）をそれぞれ緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡとする。なお、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡは最初のブロックを処理する前に１度だけ０で初期化される。
【００８１】
ＲｉｎｔｅｇＡ＝ＲｉｎｔｅｇＡ＋Ｒｉｊ×（Ｔｃｏｌｏｒ／１００×Ｔｌｕｍｉ／１００×Ｔｉｒ／１００）
ＧｉｎｔｅｇＡ＝ＧｉｎｔｅｇＡ＋Ｇｉｊ×（Ｔｃｏｌｏｒ／１００×Ｔｌｕｍｉ／１００×Ｔｉｒ／１００）
ＢｉｎｔｅｇＡ＝ＢｉｎｔｅｇＡ＋Ｂｉｊ×（Ｔｃｏｌｏｒ／１００×Ｔｌｕｍｉ／１００×Ｔｉｒ／１００）
（４）
但し、Ｒｉｊは、ｉおよびｊ番目のブロック内のＲの積分値、Ｇｉｊは、ｉおよびｊ番目のブロック内のＧの積分値であり、Ｂｉｊは、ｉおよびｊ番目のブロック内のＢの積分値である。また、ｉは水平方向のブロック数（０〜１１）であり、ｊは垂直方向のブロック数（０〜７）である。
【００８２】
図１０は、図２に示すＷＢ制御部２００で行われるＷＢ補正値の算出を説明するための図である。そして、図１０（Ａ）は赤外線判定に応じた緑検出に関する処理を示す図であり、図１０（Ｂ）は緑検出に応じた色温度推定処理を示す図である。また、図１０（Ｃ）は色温度推定に応じたＷＢ補正値の算出処理を示す図であり、図１０（Ｄ）は白ＷＢ補正値および赤外線ＷＢ補正値に応じて最終的なＷＢ補正値の算出処理を示す図である。
【００８３】
図１０（Ａ）を参照すると、ここでは、横軸をＲ／Ｇ、縦軸をＢ／Ｇとして、位置関係を把握しやすくするため黒体輻射軌跡５０１が図示されている。全信頼度が高い色１００３。緑検出領域１００１には含まれているが、色信頼度が１００％となる領域１００２には含まれない、色信頼度Ｔｃｏｌｏｒが低い色１００４とする。また、輝度信頼度Ｔｌｕｍｉ又は赤外線信頼度Ｔｉｒが低い色を参照番号１００５で示し、緑検出領域１００１に含まれない色を参照番号１００６で示す。そして、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡに対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標（ＲｉｎｔｅｇＡ／ＧｉｎｔｅｇＡ，ＢｉｎｔｅｇＡ／ＧｉｎｔｅｇＡ）を参照番号１００７で示す。
【００８４】
まず、全信頼度が高い色１００３は、全ての条件を満たしているので、そのまま加算される。一方、色信頼度Ｔｃｏｌｏｒが低い色１００４は、例えば、その５割で加算される。なお、加算される割合は、緑検出領域１００１と緑検出領域１００１の内側の色信頼度１００％となる領域１００２との間においていずれの割合の位置に存在するかに応じて決定される。
【００８５】
次に、輝度信頼度Ｔｌｕｍｉ又は赤外線信頼度Ｔｉｒが低い色１００５は、両信頼度ともに所定の閾値以上であれば、所定の割合で加算されるが、一方でも所定の閾値未満であれば、たとえ緑検出領域１００１に含まれていても加算されない。最後に、緑検出領域１００１に含まれない色１００６については、輝度信頼度Ｔｌｕｍｉおよび赤外線信頼度Ｔｉｒの双方が高くても積分されない。
【００８６】
再び図９を参照して、ＣＰＵ１０３は、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡが更新されているか否かを判定する（ステップＳ９０５）。緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡが更新されていると（ステップＳ９０５において、ＹＥＳ）、ＣＰＵ１０３は被写体の色であるとする。そして、赤外線ＷＢ補正値信頼度算出部２１１は被写体の色を検出したブロックにおける平均赤外線量を算出するため、該当ブロックに対応する輝度で正規化した後の赤外線量ＩＲｉｊを、式（５）によって累計赤外線量ＩＲｔｏｔａｌに加算する（ステップＳ９０６）。なお、ここで行われる正規化処理は、ブロックの赤外線量を該当ブロックに対応する測光センサ１０５の輝度値で除算する処理である。また、累計赤外線量ＩＲｔｏｔａｌは最初のブロックを処理する前に１度だけ０で初期化される。
【００８７】
ＩＲｔｏｔａｌ＝ＩＲｔｏｔａｌ＋ＩＲｉｊ      （５）
但し、ＩＲｉｊはｉおよびｊ番目のブロック内の輝度値で正規化した後の赤外線量であり、ｉは水平方向のブロック数（０〜１１）、ｊは垂直方向のブロック数（０〜７）である。
【００８８】
次に、赤外線ＷＢ補正値信頼度算出部２１１は、被写体の色を検出したブロックの画像全体に対する割合を算出するため、式（６）によって累計緑ブロック数Ｎｔｏｔａｌをカウントする（ステップＳ９０７）。なお、累計緑ブロック数Ｎｔｏｔａｌは最初のブロックを処理する前に１度だけ０で初期化される。
【００８９】
Ｎｔｏｔａｌ＝Ｎｔｏｔａｌ＋１      （６）
続いて、ＣＰＵ１０３は、分割された全ブロックについて確認を行ったか否かを判定する（ステップＳ９０８）。なお、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡの少なくとも一つが更新されていないと（ステップＳ９０５において、ＮＯ）、ＣＰＵ１０３は被写体の色を検出できていないとして、ステップＳ９０８の処理に進む。
【００９０】
全ブロックについて確認していないと（ステップＳ９０８において、ＮＯ）、ＣＰＵ１０３は次のブロックに処理を移動して（ステップＳ９０９）、ステップＳ９０１の処理に戻る。一方、ＣＰＵ１０３が全ブロックについて確認すると（ステップＳ９０８において、ＹＥＳ）、赤外線ＷＢ補正値信頼度算出部２１１は累計赤外線量ＩＲｔｏｔａｌと累計緑ブロック数Ｎｔｏｔａｌとに応じて、式（７）によって被写体の色を検出したブロックの平均赤外線量ＩＲａｖｅを算出する（ステップＳ９１０）。その後、ＣＰＵ１０３は図５に示す処理に戻る。
【００９１】
ＩＲａｖｅ＝ＩＲｔｏｔａｌ／Ｎｔｏｔａｌ      （７）
上述の処理によって算出された被写体の色であると判別されたブロックのＲ、Ｇ、およびＢ積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡ、次の式（８）で算出される被写体の色であると判別されたブロックの画像全体に対する割合Ｎｒａｔｉｏ、そして、被写体の色であると判別されたブロックの平均赤外線量ＩＲａｖｅを用いて、後述するようにして次の処理が行われる。
【００９２】
Ｎｒａｔｉｏ＝Ｎｔｏｔａｌ／合計ブロック数×１００      （８）
但し、ここでは、合計ブロック数は１２×８＝９６である。
【００９３】
再び図４を参照して、光源色推定部２０９は、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡに対応する座標１００７に基づいて、撮影の際の光源、つまり、自然光の色温度を推定する（ステップＳ４０６）。
【００９４】
図１１は、図４に示す緑検出に基づいた色温度推定を説明するためのフローチャートである。
【００９５】
図１０（Ｂ）および図１１を参照して、図１０（Ｂ）においては、横軸をＲ／Ｇ、縦軸をＢ／Ｇとして、位置関係を把握しやすくするため黒体輻射軌跡５０１が図示されている。なお、緑検出領域１００１の角の点１００８〜１０１１は、光源の逆色温度を保持するものとする。そして、点１００８は低色温度側の点、点１００９は高色温度側の点、点１０１０は低色温度側の点、点１０１１は高色温度側の点である。
【００９６】
色温度推定処理を開始すると、光源色推定部２０９は低色温度側の点１００８に対応する光源の逆色温度と高色温度側の点１００９に対応する光源の逆色温度とを線形補間する。これによって、光源色推定部２０９は、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡのＲ／Ｇ成分に対応する点１０１２における光源の逆色温度を算出する（ステップＳ１１０１）。
【００９７】
続いて、光源色推定部２０９は、低色温度側の点１０１０に対応する光源の逆色温度と高色温度側の点１０１１に対応する光源の逆色温度とを線形補間する。これによって、光源色推定部２０９は、緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡのＲ／Ｇ成分に対応する点１０１３における光源の逆色温度を算出する（ステップＳ１１０２）。
【００９８】
光源色推定部２０９は点１０１２に対応する光源の逆色温度と点１０１３に対応する光源の逆色温度とを線形補間する。これによって、光源色推定部２０９は緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡのＢ／Ｇ成分に対応する光源の逆色温度を算出する（ステップＳ１１０３）。
【００９９】
続いて、光源色推定部２０９は、ステップＳ１１０３で算出した光源の逆色温度を色温度に変換する（ステップＳ１１０４）。そして、光源色推定部２０９は色温度推定処理を終了して、図４に示すフローチャートの処理に戻る。
【０１００】
上述の色温度推定処理によって得られた緑検出積分値ＲｉｎｔｅｇＡ、ＧｉｎｔｅｇＡ、およびＢｉｎｔｅｇＡに対応する座標１００７の光源色温度を用いて、次の処理が行われる。
【０１０１】
図４および図１０（Ｃ）を参照して、赤外線ＷＢ補正値算出部２１０は、ステップＳ４０６において推定された光源色温度に対応するＷＢ補正値（赤外線ＷＢ補正値）を算出する（ステップＳ４０７）。
【０１０２】
図１０（Ｃ）においては、横軸をＲ／Ｇ、縦軸をＢ／Ｇとして、位置関係を把握しやすくするため黒体輻射軌跡５０１が図示されている。ここでは、赤外線を含む緑の被写体が検出されているので、自然光下における撮影と判定することができる。このため、赤外線ＷＢ補正値算出部２１０は、黒体輻射軌跡５０１上の色温度に対応する点の座標（ＲＧｇ，ＢＧｇ）を算出する。そして、赤外線ＷＢ補正値算出部２１０は、式（９）を用いて当該座標に対応する赤外線ＷＢ補正値１０１４を算出する。
【０１０３】
赤外線ＷＢ補正値のＲゲインＩＲ＿ＷＢ＿Ｒｇａｉｎ＝１／ＲＧｇ
赤外線ＷＢ補正値のＧゲインＩＲ＿ＷＢ＿Ｇｇａｉｎ＝１
赤外線ＷＢ補正値のＢゲインＩＲ＿ＷＢ＿Ｂｇａｉｎ＝１／ＢＧｇ          （９）
上述のようにして求められた赤外線ＷＢ補正値１０１４と白ＷＢ補正値とを用いて、次の処理が行われる。ここでは、ＷＢ補正値加算比率算出部２１２および混合ＷＢ補正値算出部２１３によって、白ＷＢ補正値と赤外線ＷＢ補正値とを所定の割合で加算してＷＢ補正値（混合ＷＢ補正値）が算出される（ステップＳ４０８）。
【０１０４】
図１２は、図４に示す白ＷＢ補正値と赤外線ＷＢ補正値との加算処理を説明するためのフローチャートである。
【０１０５】
図１０（Ｄ）および図１２を参照して、図１０（Ｄ）においては、横軸をＲ／Ｇ、縦軸をＢ／Ｇとして、位置関係を把握しやすくするため黒体輻射軌跡５０１が図示されている。加算処理を開始すると、ＷＢ補正値加算比率算出部２１２は、ステップＳ４０５において被写体の色であると判定されたブロックの平均赤外線量ＩＲａｖｅに基づいて、赤外線信頼度Ｔｉｒ２を算出する（ステップＳ１２０１）。
【０１０６】
なお、赤外線信頼度Ｔｉｒ２は、図７（Ｆ）に示すテーブル（赤外線信頼度テーブル）を参照して算出されるが、当該テーブルは図７（Ｅ）に示すテーブルと同様であるので、ここでは説明を省略する。
【０１０７】
続いて、ＷＢ補正値加算比率算出部２１２は、ステップＳ４０５において被写体の色であると判定されたブロックの全ブロックに対する割合Ｎｒａｔｉｏに基づいて、緑信頼度Ｔｇｒｅｅｎを算出する（ステップＳ１２０２）。
【０１０８】
なお、緑信頼度Ｔｇｒｅｅｎは、図７（Ｇ）に示すテーブル（緑信頼度テーブル）を参照して算出されるが、当該テーブルは図７（Ａ）に示すテーブルと同様であるので、ここでは説明を省略する。また、図７（Ｇ）に示すテーブルにおいて、横軸の数値は一例であって、これに限定するものではない。つまり、緑ブロックの割合が多い程、緑信頼度Ｔｇｒｅｅｎが高くなるように設定するようにすればよい。
【０１０９】
次に、ＷＢ補正値加算比率算出部２１２は、赤外線信頼度Ｔｉｒ２と緑信頼度Ｔｇｒｅｅｎとに基づいて、式（１０）によって白ＷＢ補正値と赤外線ＷＢ補正値との加算比率Ｒａｔｉｏ＿Ｗ＿ＩＲを算出する（ステップＳ１２０３）。なお、前述のステップＳ４０３で算出された白ＷＢ補正値の信頼度を加味するようにしてもよい。また、信頼度によっては、白ＷＢ補正値および赤外線ＷＢ補正値の一方を用いるように加算比率Ｒａｔｉｏ＿Ｗ＿ＩＲを設定してもよい。
【０１１０】
Ｒａｔｉｏ＿Ｗ＿ＩＲ＝Ｔｉｒ２×Ｔｇｒｅｅｎ／１００      （１０）
次に、混合ＷＢ補正値算出部２１３は、加算比率Ｒａｔｉｏ＿Ｗ＿ＩＲに基づいて、式（１１）によって白ＷＢ補正値と赤外線ＷＢ補正値を加算したＷＢ補正値（混合ＷＢ補正値）ＷＢ＿Ｒｍｉｘを算出する（ステップＳ１２０４）。そして、処理は図４に示すフローチャートの処理に戻る。
【０１１１】
ＷＢ＿Ｒｍｉｘ＝（ＷＢ＿Ｒｗ×（１００−Ｒａｔｉｏ＿Ｗ＿ＩＲ）＋ＷＢ＿Ｒｉｒ×Ｒａｔｉｏ＿Ｗ＿ＩＲ）／１００      （１１）
但し、白ＷＢ補正値のＲゲインをＷＢ＿Ｒｗで示し、赤外線ＷＢ補正値のＲゲインをＷＢ＿Ｒｉｒで示す。また、混合ＷＢ補正値のＲゲインをＷＢ＿Ｒｍｉｘで示す。なお、混合ＷＢ補正値のＧゲインおよびＢゲインについてもＲゲインを算出する際の式と同様の式を用いて算出する。
【０１１２】
図１０（Ｄ）において、赤外線ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標を参照番号１０１４で示し、白ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標を参照番号１０１５で示す。また、混合ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標を参照番号１０１６で示す。
【０１１３】
（Ｒ／Ｇ，Ｂ／Ｇ）座標１０１４と（Ｒ／Ｇ，Ｂ／Ｇ）座標１０１５とを繋ぐ直線を、加算比率Ｒａｔｉｏ＿Ｗ＿ＩＲに応じて分割した座標を、混合ＷＢ補正値に対応する（Ｒ／Ｇ，Ｂ／Ｇ）座標１０１６とする。この処理によって、白ＷＢ補正値と赤外線ＷＢ補正値との遷移を滑らかにすることができる。
【０１１４】
再び図４を参照して、ＣＰＵ１０３は、ＷＢ補正値判定部２１４、ＷＢ補正値設定部２１５、および基準ＷＢ補正値記憶部２１６を制御してＷＢ補正値の引き継ぎ処理を行う（ステップＳ４０９）。ステップＳ４０９の処理では、ＣＰＵ１０３は、前回以前の撮影において得られたＷＢ補正値（以下基準ホワイトバランス補正値（基準ＷＢ補正値）という）と混合ＷＢ補正値を求める際に用いた白ブロック数および赤外線量に応じて、今回の撮影で得られた画像データ(つまり、第１の画像よりも後の撮影で得られた第２の画像)に対して用いるＷＢ補正値を求める。
【０１１５】
図１３は、図４に示す引き継ぎ処理を説明するためのフローチャートである。
【０１１６】
ＷＢ補正値の引き継ぎ処理を開始すると、ＷＢ補正値判定部２１４は、前述のステップＳ９１０の処理で求められた平均赤外線量が所定の赤外線閾値以上であるか否かを判定する（ステップＳ１３０１）。なお、この赤外線閾値は、混合ＷＢ補正値において赤外線ＷＢ補正値が十分用いられるだけの赤外線量が検出されているかを判定するための閾値である。
【０１１７】
平均赤外線量が赤外線閾値未満であると（ステップＳ１３０１において、ＮＯ）、ＷＢ補正値設定部２１５は画像データに適用するＷＢ補正値として、前述のステップＳ４０３の処理で求められた白ＷＢ補正値を設定する（ステップＳ１３０２）。なお、ステップＳ４０８の処理で求められる混合ＷＢ補正値を用いるようにしてもよく、この際には、赤外線ＷＢ補正値の加算比率を低くする。
【０１１８】
ステップＳ１３０２の処理は、常に平均赤外線量が赤外線閾値未満の場合に行われる。さらに、ステップＳ１３０２の処理は、前回以前の撮影においては平均赤外線量が赤外線閾値以であったが、赤外線閾値未満となった場合にも行われる。平均赤外線量が変化した場合には、被写体条件が変化しているので、基準ＷＢ補正値を引き継がないようにする。後述するように、基準ＷＢ補正値は、赤外線ＷＢ補正値の加算比率が極端に変化した場合に生じるＷＢ補正値のバラツキを抑制するために用いる。よって、基準ＷＢ補正値は平均赤外線量が赤外線閾値以上でないと登録されない。
【０１１９】
続いて、基準ＷＢ補正値記憶部２１６は、基準ＷＢ補正値をクリア（初期化）して、白画素検出フラグをＦａｌｓｅに設定する（ステップＳ１３０３）。ここでは、次に平均赤外線量が赤外線閾値以上となった際に以前の基準ＷＢ補正値を引き継がないようにする。そして、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１２０】
平均赤外線量が赤外線閾値以上であると（ステップＳ１３０１において、ＹＥＳ）、ＷＢ補正値判定部２１４は基準ＷＢ補正値が登録されているか否かを確認する（ステップＳ１３０４）。基準ＷＢ補正値が登録されていないと（ステップＳ１３０４において、ＮＯ）、つまり、初めて平均赤外線量が赤外線閾値以上となると、ＷＢ補正値判定部２１４はステップＳ６０１の処理で求められた白ブロックの割合信頼度が所定の白信頼度閾値以上であるか否かを判定する（ステップＳ１３０５）。
【０１２１】
白ブロックの割合信頼度が白信頼度閾値未満であると（ステップＳ１３０５において、ＮＯ）、ＷＢ補正値設定部２１５は画像データに適用するＷＢ補正値として、ステップＳ４０８の処理で得られた混合ＷＢ補正値を設定する（ステップＳ１３０６）。そして、基準ＷＢ補正値記憶部２１６は基準ＷＢ補正値として混合ＷＢ補正値を登録して、白画素検出フラグをＦａｌｓｅに設定する（ステップＳ１３０７）。その後、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１２２】
白ブロックの割合信頼度が白信頼度閾値以上であると（ステップＳ１３０５において、ＹＥＳ）、ＷＢ補正値設定部２１５は、画像データに適用するＷＢ補正値として、ステップＳ４０８の処理で得られた混合ＷＢ補正値を設定する（ステップＳ１３０８）。そして、基準ＷＢ補正値記憶部２１６は、基準ＷＢ補正値として当該混合ＷＢ補正値を登録して、白画素検出フラグをＴｒｕｅに設定する（ステップＳ１３０９）。その後、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１２３】
この白画素検出フラグは信頼性が高く、かつある程度白画素が得られた場合にＷＢ補正値を引き継ぐために用いられる。
【０１２４】
基準ＷＢ補正値が登録されていると（ステップＳ１３０４において、ＹＥＳ）、ＷＢ補正値判定部２１４はステップＳ６０１の処理で求められた白ブロックの割合信頼度が所定の白信頼度閾値以上であるか否かを判定する（ステップＳ１３１０）。
【０１２５】
白ブロックの割合信頼度が白信頼度閾値未満であると（ステップＳ１３１０において、ＮＯ）、ＷＢ補正値設定部２１５は画像データに適用するＷＢ補正値として基準ＷＢ補正値を設定する（ステップＳ１３１１）。そして、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１２６】
白ブロックの割合信頼度が白信頼度閾値以上であると（ステップＳ１３１０において、ＹＥＳ）、ＷＢ補正値判定部２１４は、基準ＷＢ補正値として登録されているＷＢ補正値を算出した際に白画素が得られたか否かを判定する。つまり、ここでは、ＷＢ補正値判定部２１４は白画素検出フラグがＴｒｕｅであるか否かを判定する（ステップＳ１３１２）。
【０１２７】
白画素検出フラグがＴｒｕｅであると（ステップＳ１３１２において、ＹＥＳ）、ＷＢ補正値設定部２１５はステップＳ１３１１の処理を行う。一方、白画素検出フラグがＦａｌｓｅであると（ステップＳ１３１２において、ＮＯ）、ＷＢ補正値設定部２１５は画像データに適用するＷＢ補正値としてステップＳ４０８の処理で得られた混合ＷＢ補正値を設定する（ステップＳ１３１３）。
【０１２８】
続いて、基準ＷＢ補正値記憶部２１６は、当該混合ＷＢ補正値を基準ＷＢ補正値として登録して、白画素検出フラグをＴｒｕｅに設定する（ステップＳ１３１４）。そして、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１２９】
このようにして、基準ＷＢ補正値が得られた際に白画素が得られていないと、次の撮影の際に白画素が得られた場合に基準ＷＢ補正値が更新されることになる。そして、こりように基準ＷＢ補正値を変更することによって、最終的には高信頼度のＷＢ補正値を引き継ぐことができる。
【０１３０】
なお、ステップＳ１３１２の処理においては、ステップＳ４０８で得られた混合ＷＢ補正値よりも基準ＷＢ補正値の方が白ブロックの割合信頼度が高いか否かを判定するようにしてもよい。さらには、ステップＳ１２０３で得られた白ＷＢ補正値と赤外線ＷＢ補正値との加算比率Ｒａｔｉｏ＿Ｗ＿ＩＲを用いて、赤外線ＷＢ補正値の影響度が高いか否かを判定するようにしてもよい。
【０１３１】
また、ステップＳ１３０３の処理において、基準ＷＢ補正値を初期化する条件として撮影時刻を用いるようにしてもよい。例えば、基準ＷＢ補正値に係る画像が撮影された時刻から所定の時間が経過すると（日の傾きが大きく変化するほどの時間の経過）、基準ＷＢ補正値を初期化する。これによって、明らかに光源の色温度が変化すると予測することができる場合には、基準ＷＢ補正値は引き継がないようにする。
【０１３２】
同様にして、ステップＳ１３１３およびＳ１３１４の処理において、基準ＷＢ補正値を更新する条件として撮影時刻を用いるようにしてもよい。ここでは、今回撮影が行われた時刻から予測されるＷＢ補正値に係る色温度と基準ＷＢ補正値に係る色温度との差が所定の温度以上の場合には、混合ＷＢ補正値を用いてＷＢ制御を行う。これによって、明らかに撮影条件が変化している場合にはＷＢ補正値は引き継がないようにする。
【０１３３】
このように、本発明の第１の実施形態では、光源を特定することができた場合には、特定以降に撮影された画像における被写体の色が変化しても、光源が特定された際に得られたＷＢ補正値を用いてＷＢ制御を行う。これによって、被写体の色の変化に左右されることが少なく、安定的にホワイトバランス制御を行うことができる。
【０１３４】
［第２の実施形態］
次に、本発明の第２の実施形態による画像処理装置を備えるカメラの一例について説明する。
【０１３５】
なお、第２の実施形態に係るカメラの構成は図１に示すカメラと同様であり、また、第２の実施形態による画像処理装置に備えられたホワイトバランス制御部の構成は図２に示す例と同様である。さらに、第２の実施形態に係るカメラで行われる撮影処理は、ＷＢ補正値演算処理を除いて、図３に示す撮影処理と同様である。そして、第２の実施形態によるカメラでは、図４に示すＷＢ補正値演算処理において、ＷＢ補正値の引き継ぎ処理が異なる。
【０１３６】
図１４Ａおよび図１４Ｂは、本発明の第２の実施形態による画像処理装置を備えるカメラで行われる引き継ぎ処理を説明するためのフローチャートである。なお、図示のフローチャートにおいて、図１３に示すフローチャートのステップと同一のステップについては同一の参照符号を付して、説明を省略する。
【０１３７】
ステップＳ１３１０において、白ブロックの割合信頼度が白信頼度閾値未満であると（ステップＳ１３１０において、ＮＯ）、ＷＢ補正値判定部２１４は基準ＷＢ補正値として登録されているＷＢ補正値を算出した際に、白画素（つまり、白ブロック又は白コマ）が得られたか否かを判定する。つまり、ＷＢ補正値判定部２１４は白画素検出フラグがＴｒｕｅであるか否かを判定する（ステップＳ１４１１）。
【０１３８】
白画素検出フラグがＴｒｕｅであると（ステップＳ１４１１において、ＹＥＳ）、ＷＢ補正値設定部２１５は、ステップＳ１３１１の処理に進み、画像データに適用するＷＢ補正値として基準ＷＢ補正値を設定する。そして、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１３９】
白画素検出フラグがＦａｌｓｅであると（ステップＳ１４１１において、ＮＯ）、ＷＢ補正値判定部２１４は混合ＷＢ補正値と基準ＷＢ補正値との差分を求める。そして、ＷＢ補正値判定部２１４は当該差分が所定の差分閾値未満であるか否かを判定する（ステップＳ１４１３）。
【０１４０】
差分が差分閾値以上であると（ステップＳ１４１３において、ＮＯ）、ＷＢ補正値設定部２１５は画像データに適用するＷＢ補正値として、基準ＷＢ補正値を混合ＷＢ補正値の方向に所定のシフト閾値だけシフトして新たな基準ＷＢ補正値を設定する（ステップＳ１４１４）。そして、基準ＷＢ補正値記憶部２１６は、新たな基準ＷＢ補正値を基準ＷＢ補正値として登録して、白画素検出フラグをＦａｌｓｅに設定する（ステップＳ１４１５）。その後、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１４１】
差分が差分閾値未満であると（ステップＳ１４１３において、ＹＥＳ）、ＷＢ補正値設定部２１５は画像データに適用するＷＢ補正値として混合ＷＢ補正値に設定する（ステップＳ１４１６）。そして、基準ＷＢ補正値記憶部２１６は基準ＷＢ補正値として、混合ＷＢ補正値を登録して、白画素検出フラグをＦａｌｓｅに設定する（ステップＳ１４１７）。その後、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１４２】
ステップＳ１３１２において、白画素検出フラグがＴｒｕｅであると（ステップＳ１３１２において、ＹＥＳ）、ＷＢ補正値判定部２１４は混合ＷＢ補正値と基準ＷＢ補正値の差分を算出する。そして、ＷＢ補正値判定部２１４は当該差分が差分閾値未満であるか否かを判定する（ステップＳ１４１９）。
【０１４３】
差分が差分閾値以上であると（ステップＳ１４１９において、ＮＯ）、ＷＢ補正値設定部２１５は、画像データに適用するＷＢ補正値として、基準ＷＢ補正値を混合ＷＢ補正値の方向に所定のシフト閾値だけシフトして新たな基準ＷＢ補正値（シフトホワイトバランス補正値）を設定する（ステップＳ１４２０）。そして、基準ＷＢ補正値記憶部２１６は新たな基準ＷＢ補正値を基準ＷＢ補正値として登録して、白画素検出フラグをＴｒｕｅに設定する（ステップＳ１４２１）。その後、ＣＰＵ１０３は図３に示すステップＳ３１４の処理に進む。
【０１４４】
差分が差分閾値未満であると（ステップＳ１４１９において、ＹＥＳ）、ＷＢ補正値設定部２１５は、ステップＳ１３１３の処理に進んで、画像データに適用するＷＢ補正値としてステップＳ４０８の処理で得られた混合ＷＢ補正値を設定する。
【０１４５】
図１５は、図１４Ａおよび図１４Ｂに示す混合ＷＢ補正値と基準ＷＢ補正値の差分と差分閾値との判定結果に応じた処理を説明するための図である。
【０１４６】
図１５において、横軸はＲ／Ｇを示し、縦軸はＢ／Ｇを示す。また、基準ＷＢ補正値を参照番号１５０１で示し、基準ＷＢ補正値１５０１を中心とする差分閾値の範囲を参照番号１５０２で示す。さらに、ここでは、混合ＷＢ補正値として第１の混合ＷＢ補正値１５０３および第２の混合ＷＢ補正値１５０４が示され、基準ＷＢ補正値１５０１を第２の混合ＷＢ補正値１５０４の方向に所定のシフト閾値だけシフトして得られた基準ＷＢ補正値を参照番号１５０５で示す。
【０１４７】
いま、図１５に示す第１の混合ＷＢ補正値１５０３が得られたとすると、この第１の混合ＷＢ補正値１５０３は基準ＷＢ補正値１５０１を中心とする所定の閾値の範囲１５０２内に含まれている。よって、ここでは、第１の混合ＷＢ補正値１５０３が画像データに適用するＷＢ補正値として設定されることになる。
【０１４８】
一方、第２の混合ＷＢ補正値１５０４が得られたとすると、この第２の混合ＷＢ補正値１５０４は基準ＷＢ補正値１５０１を中心とする所定の閾値の範囲１５０２内に含まれない。よって、ここでは、基準ＷＢ補正値１５０１と第２の混合ＷＢ補正値１５０４とを結ぶ直線が基準ＷＢ補正値１５０１を中心とする所定の閾値の範囲１５０２の境界と交差する点に対応する基準ＷＢ補正値１５０５が画像データに適用するＷＢ補正値として設定されることになる。
【０１４９】
なお、基準ＷＢ補正値１５０１を中心とした所定の閾値の範囲１５０２は、例えば、ＷＢ補正値の変化が気にならない程度の範囲に設定される。
【０１５０】
このように、本発明の第２の実施形態では、単に基準ＷＢ補正値を引き継ぐことなく、撮影の結果得られた画像データに応じて算出されたＷＢ補正値を考慮して基準ＷＢ補正値を引き継ぐようにしたので、撮影の結果得られた画像データに応じて算出されたＷＢ補正値を用いたＷＢ制御による雰囲気を残すことができる。さらに、白画素検出フラグと組み合わせて基準ＷＢ補正値の影響度を制御するようにしたので、適切にＷＢ制御を行うことができる。
【０１５１】
上述の説明から明らかなように、図１および図２に示す例では、ＣＰＵ１０３、ブロック分割部２０１、色判定部２０５、輝度判定部２０６、赤外線量判定部２０７、ＲＧＢ値加算部２０８、光源色推定部２０９、および赤外線ＷＢ補正値算出部２１０が第１の算出手段として機能する。また、ＣＰＵ１０３、ブロック分割部２０１、白判定部２０２、および白ＷＢ補正値判定部２０３が第２の算出手段として機能する。
【０１５２】
さらに、ＣＰＵ１０３、白ＷＢ補正値信頼度算出部２０４、赤外線ＷＢ補正値信頼度算出部２１１、ＷＢ補正値加算比率算出部２１２、および混合ＷＢ補正値算出部２１３が第３の算出手段として機能する。そして、ＣＰＵ１０３、ＷＢ補正値設定部２１５、および基準ＷＢ補正値記憶部２１６が記憶手段として機能し、ＣＰＵ１０３およびＷＢ補正値判定部２１４が制御手段として機能する。
【０１５３】
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【０１５４】
例えば、上記の実施の形態の機能を制御方法として、この制御方法を画像処理装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムを画像処理装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【０１５５】
上記の制御方法および制御プログラムの各々は、少なくとも第１の算出ステップ、第２の算出ステップ、第３の算出ステップ、記憶ステップ、および制御ステップを有している。
【０１５６】
また、本発明は、以下の処理を実行することによっても実現される。つまり、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種の記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵなど）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１５７】
２０２  白判定部
２０３  白ＷＢ補正値算出部
２０５  色判定部
２０６  輝度判定部
２０７  赤外線量判定部
２１０  赤外線ＷＢ補正値算出部
２１３  混合ＷＢ補正値算出部
２１４  ＷＢ補正値判定部
２１５  ＷＢ補正値設定部
２１６  基準ＷＢ補正値記憶部
【図１】
0006508890.tif 000002
【図２】
0006508890.tif 000003
【図３】
0006508890.tif 000004
【図４】
0006508890.tif 000005
【図５】
0006508890.tif 000006
【図６】
0006508890.tif 000007
【図７】
0006508890.tif 000008
【図８】
0006508890.tif 000009
【図９】
0006508890.tif 000010
【図１０】
0006508890.tif 000011
【図１１】
0006508890.tif 000012
【図１２】
0006508890.tif 000013
【図１３】
0006508890.tif 000014
【図１４Ａ】
0006508890.tif 000015
【図１４Ｂ】
0006508890.tif 000016
【図１５】
0006508890.tif 000017