(57)【特許請求の範囲】
【請求項１】
水中での撮影を目的とした水中モードを、複数の撮影モードの１つとして有する画像処理装置であって、前記水中モードが設定されている場合に、
被写体を撮像して得られた画像の画像データから、白を表すと予測される画像データの色評価値を算出する算出手段と、
被写体を撮像して得られた前記画像の色分布情報から、前記撮像した被写体が位置する水深を推定する推定手段と、
前記推定された前記水深に応じて、前記水深において白点軌跡を表す軸を、前記色評価値を表す座標平面において設定する設定手段と、
前記算出手段で求めた前記色評価値を、前記設定手段により設定された前記軸に写像する写像手段と、
前記写像された色評価値を調整するための指定値を一次元空間で指定するための指定手段と、
前記指定手段により指定された指定値に応じて、前記写像手段により写像された前記色評価値を、前記色評価値を表す座標平面を定義している２つの軸のそれぞれの方向に調整する色評価値調整手段と、
前記色評価値調整手段により調整された色評価値からホワイトバランス補正値を算出し、該算出した前記ホワイトバランス補正値により、被写体を撮影して得られた画像の画像データをホワイトバランス補正するホワイトバランス補正手段と、を有し、
前記色評価値を表す座標平面を定義している２つの軸は、色温度方向を表す軸と、緑−マゼンタ方向を表す軸であって、前記色評価値調整手段は、前記指定値に応じて、高色温度方向の調整と緑方向の調整、または、低色温度方向の調整と緑方向の調整を同時に行うことを特徴とする画像処理装置。
【請求項２】
前記指定手段は、青とアンバーとの間の一次元空間の値を指定することができ
前記色評価値調整手段は、前記指定手段により、より青に近い値が指定された場合、前記白点軌跡を表す軸上、またはその延長線上の値に前記色評価値を補正することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記色評価値調整手段は、前記写像手段により写像された前記色評価値に、前記指定手段により指定された指定値が示す補正値を加算することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記指定手段により指定することができる指定値の刻み幅は、色温度方向、または、緑−マゼンタ方向の少なくともどちらか一方が一定であることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記推定手段は、撮像された画像の色分布情報について直線近似を行って相関係数を求め、該相関係数から前記水深を推定することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記算出手段は、前記画像データの内、予め設定された白を表すデータの領域に含まれる画像データの色評価値と、前記画像データの全ての色評価値とを、前記推定された水深に応じて加重加算して、前記白を表すと予測される画像データの色評価値を算出することを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記画像データの全ての色評価値は、前記色評価値を表す座標平面における黒体放射軸上の所定の光源を示す値からの距離が離れるほど、前記画像データの重み付けを小さくした加重加算を行って求めることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記ホワイトバランス補正手段によりホワイトバランスされた画像を表示する表示手段を更に有することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記指定手段により指定される指定値と、前記写像手段により写像された前記色評価値を補正する補正値とを関連付けて記憶する記憶手段を更に有し、
前記色評価値調整手段は、前記指定手段により指定された指定値に対応する補正値を、前記記憶手段から取得することを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
水中での撮影を目的とした水中モードを、複数の撮影モードの１つとして有する画像処理装置において、前記水中モードが設定されている場合の画像処理方法であって、
算出手段が、被写体を撮像して得られた画像の画像データから、白を表すと予測される画像データの色評価値を算出する算出工程と、
推定手段が、被写体を撮像して得られた前記画像の色分布情報から、前記撮像した被写体が位置する水深を推定する推定工程と、
設定手段が、前記推定工程で推定された前記水深に応じて、前記水深において白点軌跡を表す軸を、前記色評価値を表す座標平面において設定する設定工程と、
写像手段が、前記算出工程で求めた前記色評価値を、前記設定工程で設定された前記軸に写像する写像工程と、
取得手段が、指定手段によりユーザが一次元空間で指定した、前記写像された色評価値を調整するための指定値を取得する取得工程と、
色評価値調整手段が、前記取得工程で取得した指定値に応じて、前記写像工程で写像された前記色評価値を、前記色評価値を表す座標平面を定義している２つの軸のそれぞれの方向に調整する色評価値調整工程と、
前記色評価値調整工程で調整された色評価値からホワイトバランス補正値を算出し、該算出した前記ホワイトバランス補正値により、被写体を撮影して得られた画像の画像データをホワイトバランス補正するホワイトバランス補正工程と、を有し、
前記色評価値を表す座標平面を定義している２つの軸は、色温度方向を表す軸と、緑−マゼンタ方向を表す軸であって、前記色評価値調整工程では、前記指定値に応じて、高色温度方向の調整と緑方向の調整、または、低色温度方向の調整と緑方向の調整を同時に行うことを特徴とする画像処理方法。
【請求項１１】
コンピュータに、請求項１０に記載の画像処理方法の各工程を実行させるためのプログラム。
【請求項１２】
画像データをホワイトバランス補正する画像処理装置であって、
前記画像データのうちで所定の白検出範囲に含まれる画像データに基づいて算出された色評価値を、色温度方向を表す軸と緑−マゼンタ方向を表す軸の２つの軸で定義される座標平面において白点軌跡を表す軸に写像する写像手段と、
前記写像された色評価値を調整するための指定値を一次元空間で指定する指定手段と、
前記指定手段によって指定された指定値に基づいて、前記写像された色評価値を、高色温度方向の調整と緑方向の調整、または、低色温度方向の調整と緑方向の調整を同時に行う色評価値調整手段と、
前記色評価値調整手段により調整された色評価値からホワイトバランス補正値を算出し、該算出した前記ホワイトバランス補正値により、前記画像データをホワイトバランス補正するホワイトバランス補正手段と、を有することを特徴とする画像処理装置。
【請求項１３】
被写体が位置する水深を推定する推定手段と、
前記推定された水深に応じて、前記白点軌跡を表す軸を設定する設定手段と、
を有することを特徴とする請求項１２に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法に関し、更に詳しくは、デジタルカメラやデジタルビデオカメラの画像処理装置で水中モードが設定された場合に行われるホワイトバランス補正技術に関する。
【背景技術】
【０００２】
従来、撮像素子から出力された信号に基づいて、ホワイトバランスを調節する方法が知られている。一例として、次のようにしてオートホワイトバランス処理を行う方法がある。撮像素子がＲ（赤）、Ｇ（緑）、Ｂ（青）のカラーフィルタに覆われている場合、撮像素子から出力されてＡ／Ｄ変換された画像信号を複数のブロックに分割する。そして、ブロック毎に各色毎に加算平均して色平均値R[i]、G[i]、B[i]を求め、以下の式（１）により、各ブロックｉの色評価値Cx[i]、Cy[i]を算出する。
Cx[i] =（R[i]−B[i]）/ Y[i] × 1024
Cy[i] =（R[i] + B[i]−2G[i]）/ Y[i] × 1024      …（１）
ただし、Y[i] = R[i] + 2G[i] + B[i]
【０００３】
そして、上記式（１）により算出した各ブロックｉの色評価値Cx[i]、Cy[i]を、予め設定した白検出範囲と比較する。色評価値（Cx[i]、Cy[i]）が白検出範囲に含まれる場合は、そのブロックが白であると判定し、白と判定されたブロックのそれぞれの色評価値の積分値SumR、SumG、SumBを算出する。そして、算出した積分値から、以下式（２）によりホワイトバランス係数WBCo_R、WBCo_G、WBCo_Bを算出する。
WBCo_R = SumY × 1024 / sumR
WBCo_G = SumY × 1024 / sumG      …（２）
WBCo_B = SumY × 1024 / sumB
ただし、SumY = （sumR + 2 × sumG + SumB） / 4）
【０００４】
上述したようにして算出したホワイトバランス係数WBCo_R、WBCo_G、WBCo_Bを画像信号にかけることで、ホワイトバランス補正を行うことができる。
【０００５】
しかしながら、上記のオートホワイトバランス処理は万能ではなく、特に水中のような特殊環境下では光源に対応できず、本来、白で表現されるべきであるところ、色残りが生じてしまう場合があった。これは水の分光透過率の影響で光の長波長域が減衰しやすくなり、Ｒ色光の比率がＧ色光やＢ色光に比べて大きく減少するため、元々の画像が青みを帯びた画像になることが原因の１つに挙げられる。さらに水中では、水面からカメラ（被写体）までの距離（水面からの深さ）が長くなるほど、水の外から到達する自然光のＲ色成分が減少するため、ホワイトバランスの追従性を保持するのが困難である。一方、たとえ光源に対応できたとしても、水中の独特な撮影環境の雰囲気を残したい場合等、ユーザが意図したホワイトバランス処理を行うことができないこともあった。
【０００６】
特許文献１には以下の技術が開示されている。すなわち、手動設定可能な２種類のホワイトバランスゲインの可変範囲を示すレベルゲージを各々直交させた座標を表示させると共に、座標上における２種類のホワイトバランスゲイン現設定値を指示する現設定値マークを表示させる。この表示により、ユーザは手動でホワイトバランスを微調整することが開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第４０２８３５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に開示された従来技術では、上下左右の操作部材を使用することでホワイトバランスを微調整できるが、水中のような部材操作が困難な環境下では操作が煩わしく感じられ、自由度が高いのが逆にデメリットとなり得る。
【０００９】
また、水中において光源に追従するためには水深に応じたホワイトバランス制御が望ましいが、水深計等をカメラに搭載するとカメラのコストが高くなるという問題がある。
【００１０】
本発明は上記問題点を鑑みてなされたものであり、水中のように複雑な操作が困難な環境下においても、少ない部材操作で簡単にユーザの意図したホワイトバランス補正を行得るようにすることを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、水中での撮影を目的とした水中モードを、複数の撮影モードの１つとして有する本発明の画像処理装置は、前記水中モードが設定されている場合に、被写体を撮像して得られた画像の画像データから、白を表すと予測される画像データの色評価値を算出する算出手段と、被写体を撮像して得られた前記画像の色分布情報から、前記撮像した被写体が位置する水深を推定する推定手段と、前記推定された前記水深に応じて、前記水深において白点軌跡を表す軸を、前記色評価値を表す座標平面において設定する設定手段と、前記算出手段で求めた前記色評価値を、前記設定手段により設定された前記軸に写像する写像手段と、前記写像された色評価値を調整するための指定値を一次元空間で指定するための指定手段と、前記指定手段により指定された指定値に応じて、前記写像手段により写像された前記色評価値を、前記色評価値を表す座標平面を定義している２つの軸のそれぞれの方向に調整する色評価値調整手段と、前記色評価値調整手段により調整された色評価値からホワイトバランス補正値を算出し、該算出した前記ホワイトバランス補正値により、被写体を撮影して得られた画像の画像データをホワイトバランス補正するホワイトバランス補正手段と、を有し、前記色評価値を表す座標平面を定義している２つの軸は、色温度方向を表す軸と、緑−マゼンタ方向を表す軸であって、前記色評価値調整手段は、前記指定値に応じて、高色温度方向の調整と緑方向の調整、または、低色温度方向の調整と緑方向の調整を同時に行う。
【発明の効果】
【００１２】
本発明によれば、水中のように複雑な操作が困難な環境下においても、少ない部材操作で簡単にユーザの意図したホワイトバランス補正を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態における画像処理装置の構成を示すブロック図。
【図２】第１の実施形態における第１の色評価値の算出処理を示すフローチャート。
【図３】白検出範囲の例を示す図。
【図４】第１の実施形態におけるＷＢ補正値の算出処理を示すフローチャート。
【図５】水中時の色評価値の分布を示す図。
【図６】水中軸及び色評価値の水中軸への写像の概念を示す図。
【図７】推定深度に応じた水中軸を示すテーブルを表す図。
【図８】推定深度に応じて第１の色評価値と第２の色評価値とを混合する比率を示す図。
【図９】画像表示部の表示されるユーザ指定値を設定するためのＧＵＩを示す図。
【図１０】第１の実施形態におけるユーザ指定による色評価値の変更を説明するための図。
【図１１】第２の実施形態に係わるユーザ指定値と色評価値の補正値との関係を示すテーブルを示す図。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。なお、以下に説明する実施の形態は、本発明の実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
【００１５】
図１は、本発明の一実施形態における画像処理装置の構成を示すブロック図である。
【００１６】
図１において、１００は画像処理装置である。１０は撮影レンズ、１２は絞り機能を備えるシャッター、１４は光学像を電気信号に変換する撮像素子、１６は撮像素子１４のアナログ信号出力をディジタル信号に変換するＡ／Ｄ変換器である。
【００１７】
１８は撮像素子１４、Ａ／Ｄ変換器１６、Ｄ／Ａ変換器２６にそれぞれクロック信号や制御信号を供給するタイミング発生回路であり、メモリ制御回路２２及びシステム制御回路５０により制御される。
【００１８】
２０は画像処理回路であり、Ａ／Ｄ変換器１６からのデータ或いはメモリ制御回路２２からのデータに対して所定の画素補間処理や色変換処理を行う。また、画像処理回路２０は、Ａ／Ｄ変換器１６から出力される画像データを用いて所定の演算処理を行う。そして、得られた演算結果に基づいてシステム制御回路５０が露光制御部４０、焦点調節部４２に対して、ＴＴＬ（スルー・ザ・レンズ）方式のオートフォーカス（ＡＦ）処理、自動露出（ＡＥ）処理、フラッシュプリ発光（ＥＦ）処理を行っている。さらに、画像処理回路２０は、Ａ／Ｄ変換器１６から出力される画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてＴＴＬ方式のオートホワイトバランス（ＡＷＢ）処理も行っている。
【００１９】
２２はメモリ制御回路であり、Ａ／Ｄ変換器１６、タイミング発生回路１８、画像処理回路２０、画像表示メモリ２４、Ｄ／Ａ変換器２６、メモリ３０、圧縮・伸長回路３２を制御する。Ａ／Ｄ変換器１６から出力される画像データは、画像処理回路２０、メモリ制御回路２２を介して、或いはメモリ制御回路２２のみを介して、画像表示メモリ２４或いはメモリ３０に書き込まれる。
【００２０】
２４は画像表示メモリ、２６はＤ／Ａ変換器、２８はＴＦＴ  ＬＣＤ等から成る画像表示部であり、画像表示メモリ２４に書き込まれた表示用の画像データはＤ／Ａ変換器２６を介して画像表示部２８により表示される。画像表示部２８を用いて、撮像した画像データを逐次表示することで、電子ビューファインダー（ＥＶＦ）機能を実現することができる。また、画像表示部２８は、システム制御回路５０の指示により任意に表示をＯＮ／ＯＦＦすることが可能であり、表示をＯＦＦにした場合には画像処理装置１００の電力消費を大幅に低減することができる。
【００２１】
３０は撮影した静止画像や動画像を格納するためのメモリであり、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶容量を備えている。これにより、複数枚の静止画像を連続して撮影する連写撮影やパノラマ撮影の場合にも、高速かつ大量の画像書き込みをメモリ３０に対して行うことが可能となる。また、メモリ３０はシステム制御回路５０の作業領域としても使用することが可能である。
【００２２】
３２は適応離散コサイン変換（ＡＤＣＴ）等、公知の圧縮方法を用いて画像データを圧縮・伸長する圧縮・伸長回路である。圧縮・伸長回路３２は、メモリ３０に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータを再びメモリ３０に書き込む。
【００２３】
４０は露光制御部であり、絞り機能を備えるシャッター１２を制御する。露光制御部４０は、フラッシュ４８と連携することによりフラッシュ調光機能も有する。４２は撮影レンズ１０のフォーカシングを制御する焦点調節部、４４は撮影レンズ１０のズーミングを制御するズーム制御部、４６はバリア１０２の動作を制御するバリア制御部である。４８はフラッシュであり、ＡＦ補助光の投光機能、フラッシュ調光機能も有する。フラッシュ４８は１つでもよいし、閃光発光用にXe管、微小長秒発光用にLEDなどのように複数個用意してもよい。露光制御部４０及び焦点調節部４２はＴＴＬ方式を用いて制御されている。上述の通り、Ａ／Ｄ変換器１６からの画像データを画像処理回路２０によって演算した演算結果に基づき、システム制御回路５０が露光制御部４０及び焦点調節部４２を制御する。
【００２４】
５０は画像処理装置１００全体を制御するシステム制御回路、５２はシステム制御回路５０の動作用の定数、変数、プログラム等を記憶するメモリである。
【００２５】
５４はシステム制御回路５０でのプログラムの実行に応じて、文字、画像、音声などを用いて動作状態やメッセージなどを外部に通知するための通知部である。通知部５４としては、例えばＬＣＤやＬＥＤなどによる視覚的な表示を行う表示部や音声による通知を行う発音素子などが用いられるが、これらのうち１つ以上の組み合わせにより構成される。特に、表示部の場合には、画像処理装置１００の操作部７０近辺の、視認しやすい、単数あるいは複数箇所に設置されている。また、通知部５４は、その一部の機能が光学ファインダー１０４内に設置されている。
【００２６】
通知部５４の表示内容の内、ＬＣＤなどに表示するものとしては以下のものがある。まず、シングルショット／連写撮影表示、セルフタイマー表示等、撮影モードに関する表示がある。また、圧縮率表示、記録画素数表示、記録枚数表示、残撮影可能枚数表示等の記録に関する表示がある。また、シャッタースピード表示、絞り値表示、露出補正表示、フラッシュ表示、赤目緩和表示等の撮影条件に関する表示がある。その他に、マクロ撮影表示、ブザー設定表示、時計用電池残量表示、電池残量表示、エラー表示、複数桁の数字による情報表示、記録媒体２００及び２１０の着脱状態表示、通信Ｉ／Ｆ動作表示、日付・時刻表示なども行われる。
【００２７】
また、通知部５４の表示内容の内、光学ファインダー１０４内に表示するものとしては、合焦表示、手ぶれ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、露出補正表示などがある。
【００２８】
５６は電気的に消去・記録可能な不揮発性メモリであり、例えばＥＥＰＲＯＭ等が用いられる。
【００２９】
６０、６２、６４及び６６は、システム制御回路５０の各種の動作指示を入力するための操作手段であり、スイッチやダイアル、タッチパネル、視線検知によるポインティング、音声認識装置等の単数或いは複数の組み合わせで構成される。
【００３０】
ここで、これらの操作手段の具体的な説明を行う。
【００３１】
６０はモードダイアルスイッチで、電源オフ、自動撮影モード、プログラム撮影モード、パノラマ撮影モード、再生モード、マルチ画面再生・消去モード、ＰＣ接続モード等の各機能モードを切り替え設定することができる。
【００３２】
６２はシャッタースイッチＳＷ１で、不図示のシャッターボタンの操作途中（例えば半押し）でＯＮとなり、ＡＦ処理、ＡＥ処理、ＡＷＢ処理、ＥＦ処理等の動作開始を指示する。
【００３３】
６４はシャッタースイッチＳＷ２で、不図示のシャッターボタンの操作完了（例えば全押し）でＯＮとなり、露光処理、現像処理、及び記録処理からなる一連の処理の動作開始を指示する。まず、露光処理では、撮像素子１４から読み出した信号をＡ／Ｄ変換器１６、メモリ制御回路２２を介して画像データをメモリ３０に書き込み、更に、画像処理回路２０やメモリ制御回路２２での演算を用いた現像処理が行われる。更に、メモリ３０から画像データを読み出し、圧縮・伸長回路３２で圧縮を行い、記録媒体２００あるいは２１０に画像データを書き込む記録処理が行われる。
【００３４】
６６は各種ボタンやタッチパネルなどから成る操作部である。一例として、メニューボタン、セットボタン、画像表示ＯＮ／ＯＦＦボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写／連写／セルフタイマー切り換えボタン、メニュー移動＋（プラス）ボタン、メニュー移動−（マイナス）ボタンを含む。更に、再生画像移動＋（プラス）ボタン、再生画像移動−（マイナス）ボタン、撮影画質選択ボタン、露出補正ボタン、日付／時間設定ボタンなども含む。
【００３５】
８０は電源制御部で、電池検出回路、ＤＣ−ＤＣコンバータ、通電するブロックを切り替えるスイッチ回路等により構成されている。電池の装着の有無、電池の種類、電池残量の検出を行い、検出結果及びシステム制御回路５０の指示に基づいてＤＣ−ＤＣコンバータを制御し、必要な電圧を必要な期間、記録媒体を含む各部へ供給する。
【００３６】
８２、８４はコネクタ、８６はアルカリ電池やリチウム電池等の一次電池やＮｉＣｄ電池やＮｉＭＨ電池、Ｌｉ−ｉｏｎ電池、Ｌｉポリマー電池等の二次電池、ＡＣアダプター等からなる電源部である。
【００３７】
９０及び９４はメモリカードやハードディスク等の記録媒体とのインタフェース、９２及び９６はメモリカードやハードディスク等の記録媒体と接続を行うコネクタである。９８はコネクタ９２及び／或いは９６に記録媒体２００或いは２１０が装着されているか否かを検知する記録媒体着脱検知回路である。
【００３８】
なお、本実施の形態では記録媒体を取り付けるインタフェース及びコネクタを２系統持つものとして説明しているが、記録媒体を取り付けるインタフェース及びコネクタは、単数或いは複数、いずれの系統数を備える構成としても構わない。また、異なる規格のインタフェース及びコネクタを組み合わせて備える構成としても構わない。
【００３９】
インタフェース及びコネクタとしては、ＰＣＭＣＩＡ（Personal Computer Memory Card International Association）カードやＣＦ（コンパクトフラッシュ（登録商標））カード、ＳＤカード等の種々の記憶媒体の規格に準拠したものを用いて構成することが可能である。インタフェース９０及び９４、そしてコネクタ９２及び９６をＰＣＭＣＩＡカードやＣＦ（登録商標）カード等の規格に準拠したものを用いて構成した場合、各種通信カードを接続することができる。通信カードとしては、ＬＡＮカードやモデムカード、ＵＳＢ（Universal Serial Bus）カード、ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４カードがある。他にも、Ｐ１２８４カード、ＳＣＳＩ（Small Computer System Interface）カード、ＰＨＳ等がある。これら各種通信カードを接続することにより、他のコンピュータやプリンタ等の周辺機器との間で画像データや画像データに付属した管理情報を転送し合うことができる。
【００４０】
１０２は、画像処理装置１００のレンズ１０を含む撮像部を覆う事により、撮像部の汚れや破損を防止する保護装置であるバリアである。
【００４１】
１０４は光学ファインダであり、画像表示部２８による電子ファインダー機能を使用すること無しに、光学ファインダーのみを用いて撮影を行うことが可能である。また、光学ファインダー１０４内には、通知部５４の一部の機能、例えば、合焦状態、手振れ警告、フラッシュ充電、シャッタースピード、絞り値、露出補正などが表示される。
【００４２】
１１０は通信回路で、ＲＳ２３２ＣやＵＳＢ、ＩＥＥＥ１３９４、Ｐ１２８４、ＳＣＳＩ、モデム、ＬＡＮ、無線通信、等の各種通信機能を有する。
【００４３】
１１２は通信回路１１０により画像処理装置１００を他の機器と接続するコネクタ或いは無線通信の場合はアンテナである。
【００４４】
２００及び２１０はメモリカードやハードディスク等の記録媒体である。この記録媒体２００及び２１０は、それぞれ、半導体メモリや磁気ディスク等から構成される記録部２０２及び２１２、画像処理装置１００とのインタフェース２０４及び２１４、画像処理装置１００と接続を行うコネクタ２０６及び２１６を備えている。
【００４５】
次に、本実施の形態におけるホワイトバランス補正値（ＷＢ補正値）の算出方法について説明する。なお、このＷＢ補正値の算出処理は、画像処理回路２０により行われる。まず、本第１の実施形態において、撮影モードが水中での撮影を目的とした水中モードの時にＷＢ補正値を求めるために用いる、白を表すと予測される画像データの第１の色評価値の算出方法について、図２を参照しながら詳しく説明する。
【００４６】
Ｓ１０１において、画像処理装置１００に現在設定されている撮影モードを判別し、Ｓ１０２において、判別した撮影モードに応じた白検出範囲を設定する。ここでは、撮影モードとして水中モードとその他の撮影モードとを有するものとする。図３は、Cx軸、Cy軸により定義されるCx-Cy座標平面において、異なる白検出範囲の例を示す図であり、ｘ座標（Cx）の負方向が高色温度被写体の白を撮影したときの色評価値、正方向が低色温度被写体の白を撮影したときの色評価値である。またｙ座標（Cy）は光源のマゼンタ（Ｍｇ）成分と緑（Ｇ）成分の度合いを意味しており、正方向になるにつれてＭｇ成分が大きくなることを示している（マゼンタ方向）。逆に負方向になるにつれＧ成分が大きくなることを示しており、つまり、光源が蛍光灯である可能性が高いことを示している（緑方向）。図３（ａ）の白検出範囲３０１は、通常撮影時に予め異なる光源下で白を撮影し、算出した色評価値をプロットしたものである。一方、水中における白色分布は青（Ｂ）方向と緑（Ｇ）方向に偏って分布するので、水中モードの場合には、図３（ｂ）に示すように、Ｂ方向とＧ方向を検出するような白検出範囲３０２に設定する。なお、図３では、水中モードとその他の撮影モードに対応する２つの白検出範囲３０１及び３０２のみを示した。しかしながら、その他の撮影モードが複数の異なる撮影モードである場合には、それぞれの撮影モードに適した白検出範囲を撮影モードに対応付けて予め設定しておいても良く、その他の撮影モードにおける白検出範囲により本発明が制限されるものではない。
【００４７】
次に、メモリ３０に記憶された画像信号を読み出し、その画面を任意のｍ個のブロックに分割する（Ｓ１０３）。そして、ブロック（ｉ＝１〜ｍ）毎に、画素値を各色毎に加算平均して色平均値（R[i]、G[i]、B[i]、）を算出し、上述した式（１）を用いて色評価値（Cx[i]、Cy[i]）を算出する（Ｓ１０４）。
【００４８】
次に、Ｓ１０４で算出したｉ番目のブロックの色評価値（Cx[i]、Cy[i]）が、Ｓ１０２で設定した白検出範囲３０１または３０２に含まれるかどうかを判断する（Ｓ１０５）。白検出範囲３０１または３０２に含まれる場合には（Ｓ１０５でＹＥＳ）、そのブロックが白色であると判断して、そのブロックの色平均値（R[i]、G[i]、B[i]）を積算し（Ｓ１０６）、含まれない場合には加算せずにＳ１０７に進む。このＳ１０５及びＳ１０６の処理は、次の式（３）により表すことができる。
【００４９】
0005775318.tif 000002
【００５０】
式（３）において、色評価値（Cx[i]、Cy[i]）が白検出範囲３０１または３０２に含まれる場合はSw[i]を1に、含まれない場合にはSw[i]を０とする。これにより、Ｓ１０５の判断により、ｉ番目のブロックの色平均値（R[i]、G[i]、B[i]）の加算を行うか、行わないかの処理を実質的に行っている。
Ｓ１０７では、すべてのブロックについて上記処理を行ったかどうかを判断し、未処理のブロックがあればＳ１０４に戻って上記処理を繰り返し、すべてのブロックの処理が終了していれば、Ｓ１０８に進む。Ｓ１０８では、得られた色平均値の積分値（sumR、SumG、SumB）から式（２）を用いて、第１のＷＢ補正値（WBCol_R、WBCol_G、WBCol_B）を算出する。更に、同じく得られた色平均値の積分値（sumR、SumG、SumB）から式（１）を用いて、第１の色評価値WBCo1（Cx1, Cy1）を算出する。
【００５１】
続いて第１の色評価値及び第１のＷＢ補正値の算出後の処理について、図４のフローチャートを参照しながら説明する。
【００５２】
Ｓ２０１において、図２のフローチャートを参照して上述したようにして第１のＷＢ補正値（WBCol_R、WBCol_G、WBCol_B）及び第１の色評価値WBCo1（Cx1, Cy1）を算出すると、Ｓ２０２に進む。Ｓ２０２では撮影モードが水中モードかどうかを判断し、水中モードでなければＳ２１３に進み、第１のＷＢ補正値（WBCol_R、WBCol_G、WBCol_B）を最終的なＷＢ補正値として決定する。
【００５３】
一方、撮影モードが水中モードの場合は、Ｓ２０３で撮影画像をｎブロックに分割し、ブロック（ｉ＝１〜ｎ）毎に、画素値を各色毎に加算平均して色平均値（R[i]、G[i]、B[i]、）を算出する。そして、式（１）により、色評価値（Cx[i]、Cy[i]）を算出する。
【００５４】
色評価値は、図５に示すように深度（水深）が浅いときは５０１のように分布し、深度が深いときは５０２のように分布する。水中では、水面から被写体の位置（被写体までの距離が近ければカメラの位置ともみなせる）までの距離（水面からの深さ）が長くなるほど、水の外から到達する自然光のＲ色成分が減少するので、図５に示すような分布になる。そこで深度を推定する手段として撮影画像の色分布情報から直線近似式の相関を演算し、その相関から深度を推定する。その相関計算式（４）は以下のようになる。
【００５５】
0005775318.tif 000003
【００５６】
ここでｍはCx[i]の平均値であり、ｎはCy[i]の平均値である。上記の式により算出したｒ2を相関係数とし、その情報を基に以下に説明するようにＷＢ制御を行う。この相関係数は０〜１の値をとり、１に近い値だと相関がある、つまり深度が深いと推定し、０に近い値だと相関が無い、つまり深度が浅いと推定する。これは深度が深くなるにつれ、赤（Ｒ）成分が極端に減衰していくため、図５の５０２で示すような色分布形状になるためである。つまり色分布を直線近似した場合の相関係数によって深度を推定することとする。
【００５７】
一方、水中における白色評価値の軌跡（白点軌跡であり、以下、「水中軸」と呼ぶ。）は図６に示すように、黒体放射軸とは離れたところに存在する。さらに水中の白点は深度によって変化するため、Ｓ２０４で式（４）により得られた相関係数（推定深度情報）をもとに、W1とW2に基づいて水中軸を設定する。設定方法としては、相関係数ｒ2（＝Co1〜Co5）に応じたW1（Cx1, Cy1）、W2（Cx2, Cy2）を、図７に示すようなテーブルを参照して取得する。本テーブルに示す推定深度と軸との関係は、例えば、実際の水中での撮影画像を用いて実験的に求めておくことができ、例えば、工場出荷時に予め不揮発性メモリ５６などに格納しておく。なお、相関係数が上記テーブルにおいてCo1〜Co5の値の間の中間値をとる場合は、W1（Cx1, Cy1）、W2（Cx2, Cy2）を線形補間して算出する。
【００５８】
深度が深い場合、本来白ブロックであるブロックの色評価値が図３（ｂ）の白検出範囲３０２に含まれない場合がある。そこで、画面の色分布を参照するために撮影画像のブロック（ｉ＝1〜ｎ）毎に、画素値を各色毎に加算平均して色平均値（R[i]、G[i]、B[i]）を算出し、色評価値（Cx[i], Cy[i]）を算出する。そして算出した値を以下の式（５）のように積分していく。
【００５９】
0005775318.tif 000004
【００６０】
しかしながら、式（５）では、明らかに白ではないブロックの色平均値をも加算してしまう場合があるので、図６に示す黒体放射軸の軌跡からかけ離れた色評価値を有するブロックの色平均値は加算しないように重みをかけて加重加算してもよい。その場合の積分は以下の式（６）を用いて行う。
0005775318.tif 000005
【００６１】
ここでGain1及びGain2は、黒体放射軸上の所定の光源を示す点（例えば、日向の点）からの距離により求められるものであり、距離が離れるほど値が小さくなるようにする。本実施形態では、Gain1及びGain2のそれぞれを個別に求める。不揮発性メモリ５６はCx軸方向について５つの代表的なCx座標に対するGain1の値と、同じくCy軸方向について５つの代表的なCy座標に対するGain2の値を記憶する。システム制御回路５０は、それらの値を用いて線形補間することにより、ｉ＝１〜ｎまでのCx[i]及びCy[i]の座標に対応するGain1とGain2の値を求める。
上記式（５）または（６）により算出したCx、Cyを第２の色評価値WBCo2（Cx2, Cy2)とする（Ｓ２０５）。なお、本実施形態ではCxとCyの両方でGainによる重み付けを行ったが、一方のみについて重み付けを行っても良い。
【００６２】
Ｓ２０６では、算出した第１の色評価値WBCo1と第２の色評価値WBCo2とを、推定深度、つまり相関係数に応じて混合することにより、画像において白を表すと予測される画像データの色評価値を予測する。その際の混合比率αを図８に示す。そして、
WBCo1：WBCo2＝（１−α）：α
【００６３】
という比率で混合処理をする。混合処理して得られた色評価値をWBCo（Cx, Cy）とする。
Ｓ２０７ではＳ２０６でで混合処理した色評価値WBCo（Cx, Cy）を、Ｓ２０４で設定した図６で示すようなW1、W2により定義される水中軸に写像し、この写像した点をWBCoW（CxW, CyW）とする。ここでは、色評価値WBCo（Cx, Cy）から水中軸に垂線を下ろすことで、写像する。
【００６４】
そして、Ｓ２０８において、後述するようにしてユーザ指定値を取得し、Ｓ２０９で取得したユーザ指定値が０かどうかを判断する。０のときはＳ２１２に進み、色評価値WBCoW（CxW, CyW）に基づいて、最終的なＷＢ補正値を算出する。一方、ユーザ指定値がゼロ以外のときは、ユーザ指定値に基づいて、ユーザ指定補正値を算出する（Ｓ２１０）。
【００６５】
図９は、ユーザがユーザ指定値を指定するためのＧＵＩ（Graphical User Interface）を示す図である。ユーザ指定値とは、水中軸に写像されたWBCoW（CxW, CyW）を、ユーザが所望する方向へシフトさせるための値である。
【００６６】
図９において、指定値表示部９０２において、白丸９０３はＳ２０７で算出した色評価値WBCoWを表し、黒丸９０４は現在の補正状況を表している。ユーザは、現在のＷＢ補正状況を、例えば、十字キー９０５の左右のキーを操作することで、容易に変更することができる。このとき、ユーザは図９で示すようなＥＶＦ（Electronic View Finder）９０１内に表示された、ホワイトバランス用に算出された現在の色評価値Cx、Cyに基づいてＷＢ補正された画像を見ながら設定することができる。
【００６７】
また、図９の例では、ユーザは青（Ｂ）−アンバー（Ａ）（Blue-Amber）の一次元空間で、水中軸に写像された色評価値WBCoW（CxW, CyW）のシフト量を指定することができる。このようにすることで水中においてユーザは二次元空間における複数の指定値の組み合わせを考える必要なく、Ｂ−Ａ間の値を容易に指定することができる。そして、図９ではＢ−Ａの一次元空間でシフト量を指定するが、本願発明では、指定されたシフト量に対応した、二次元空間のCx、Cy座標系におけるCx方向とCy方向それぞれの方向に色評価値をシフトする。なお、シフトされるCx方向とCy方向により表される実際の補正方向は、例えば、色評価値WBCoW（CxW, CyW）から水中軸上及びその延長線上の方向と、水中軸に直交する方向としてもよい。また、図１０に示すように、水中軸上及びその延長線上の方向１００１及び、色評価値WBCoWを通り、Cy軸に平行な軸（対称軸）に対して、水中軸と線対称な方向１００２としてもよい。つまり、Ｂ−Ａの一次元空間でのシフトを指定するだけで、Ｂ方向にシフトした場合には、高色温度方向の調整とＧ方向の調整とを同時に行う方向に調整される。また、Ａ方向にシフトした場合には、低色温度方向の調整とＧ方向の調整を同時に行う方向に調整される。指定値の刻み幅は色温度方向、またはCy軸方向の少なくともどちらか一方が一定となるようにしてもよいし、推定深度に応じて適応的に変化させてもよい。
【００６８】
また、図９ではＢ−Ａとしたが、水深が浅いとＲ色成分が補正されずに残り、深いとＢ色成分が補正され過ぎてしまう傾向から、ユーザにより理解しやすくするために浅い−深いなどとしてもよい。
【００６９】
上述したＳ２１０では、このようにしてユーザが一次元空間で指定したユーザ指定値から、二次元空間における色評価値WBCoWの実際のシフト量（ユーザ指定補正値）を算出する。そして、Ｓ２１１で色評価値WBCoW（CxW, CyW）にユーザ指定補正値を加算することで、ユーザの好みを反映させた色評価値WBCo’（Cx’,Cy’）を算出して、色評価値調整を行う。そして、この算出した色評価値WBCo’（Cx’,Cy’）から、最終的なＷＢ補正値を求める。
【００７０】
次に、Ｓ２１４において、Ｓ２１１、Ｓ２１２、Ｓ２１３のいずれかにより決定されたＷＢ補正値により画像をＷＢ補正し、Ｓ２１５において、ＷＢ補正した画像をＥＶＦ９０１に表示する。これにより、ユーザは、ＷＢ補正の結果を確認することができる。
【００７１】
上記の通り本第１の実施形態によれば、水中のように複雑な操作が困難な環境下においても、少ない部材操作で簡単にユーザの意図したホワイトバランス補正を行うことができる。
【００７２】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第２の実施形態ではユーザにより補正値を指定された場合の色評価値の補正値の求め方が第１の実施形態と異なる。それ以外の部分は第１の実施形態と同様なので詳細な説明は省略する。
【００７３】
第１の実施形態と同様に、図９のような表示を見ながらユーザが補正値を指定したときのユーザ指定値と色評価値の補正値との関係の例を図１１に示す。
【００７４】
図１１の例では、ユーザが何も指定しなかった時のユーザ指定値を０として、プラス方向とマイナス方向に５段階で指定できる場合を示している。プラス方向は図９の指定値表示部９０２でアンバー方向の調整、マイナス方向は青方向の調整を表しており、ユーザ指定値に対応したCx、Cy補正値が予め設定され、指定値と関連付けて保持されている。このようにすることで、水中軸方向及びそれに直交する方向、または水中軸方向及び図１０の対称軸に対して線対称な軸の方向に添って補正する方法と違い、詳細なチューニングが可能となる。
【００７５】
もちろん保持しておく点を増やしたり、減らしたりすることが可能である。減らし方として、少なくとも最大のユーザ指定補正値を保持しておき、間の補正値は直線補間等で補う方法がある。
【００７６】
なお、本発明は、上述した第１及び第２の実施形態の機能を実現するように各種のデバイスを動作させるように、上記各種デバイスと接続された装置であってもよい。あるいはシステム内のコンピュータに対し、上記実施形態の手順を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータに格納されたプログラムに従って上記各種デバイスを動作させることによって実施してもよい。これらも、本発明の範疇に含まれる。
【００７７】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005775318.tif 000006
【図２】
0005775318.tif 000007
【図３】
0005775318.tif 000008
【図４】
0005775318.tif 000009
【図５】
0005775318.tif 000010
【図６】
0005775318.tif 000011
【図７】
0005775318.tif 000012
【図８】
0005775318.tif 000013
【図９】
0005775318.tif 000014
【図１０】
0005775318.tif 000015
【図１１】
0005775318.tif 000016