説明

ホワイトバランス制御方法、撮像装置、及びホワイトバランス制御プログラム

【課題】様々な画像に対して好適なホワイトバランス制御を行うことができるホワイトバランス制御方法、撮像装置、及びホワイトバランス制御プログラムを提供すること。
【解決手段】撮像素子を介して得られた画像データを複数のブロックに分割し、分割したブロック毎の色信号を表す色座標をホワイトバランス判定空間座標に変換する。その後にホワイトバランス判定空間内に特定光源毎の光源推定領域と色相毎の彩度判定領域とを設定し、光源推定領域内のホワイトバランス判定空間座標の分布から光源を推定し、彩度判定領域内のホワイトバランス判定空間座標の分布から実際に被写体を照明している光源を決定し、この光源決定結果に従ってホワイトバランス制御を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ホワイトバランス制御方法、ホワイトバランス制御を行うことが可能な撮像装置、及びホワイトバランス制御プログラムに関する。
【背景技術】
【0002】
画像の色信号を利用してホワイトバランス制御を行うホワイトバランス制御方法において、撮像素子において取得された色信号に基づいて光源を判定してホワイトバランス制御を行うホワイトバランス制御方法がある。このような色信号を用いたホワイトバランス制御方法においては、例えば色信号を輝度信号と色差信号に分離し、輝度信号に基づいて屋内外を判定することで光源を判定したり、色差信号に基づいて彩度を判定し、低彩度部分の色信号を利用してホワイトバランス制御を行ったりする手法がある。
【0003】
また、特許文献1においては、撮像素子において取得された色信号における低彩度部分の色信号を積算し、その積算結果に基づいてホワイトバランス制御を行うようにしている。
【0004】
ここで、ホワイトバランス制御に低彩度部分の色信号を利用するのは、被写体の低彩度部分は広い波長帯で光源からの光を反射しているため光源の特性(種類)を正しく推定しやすいのに対して、高彩度部分は狭い波長帯で光源からの光を反射しているため光源の特性(種類)を推定するのが困難なためである。
【特許文献1】特開2005−136854号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ここで、画面中に低彩度部分がない場合や中間的な彩度の色の部分等は、低彩度部分の色信号を的確に抽出することは必ずしも容易ではない。このような場合には、上述した手法では好適なホワイトバランス制御を行うことが困難である。
【0006】
本発明は、上記の事情に鑑みてなされたもので、様々な画像に対して好適なホワイトバランス制御を行うことができるホワイトバランス制御方法、このようなホワイトバランス制御を行うことが可能な撮像装置、及びホワイトバランス制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記の目的を達成するために、本発明の第1の態様によるホワイトバランス制御方法は、画面内を複数のブロックに分割した各ブロックの色信号を用いてホワイトバランス制御を行うホワイトバランス制御方法であって、上記分割した各ブロックの色信号を表す色空間座標を、上記画面内のホワイトバランスを判定するためのホワイトバランス判定空間座標に変換し、上記変換されたホワイトバランス判定空間座標が属するホワイトバランス判定空間内に、上記ホワイトバランス制御の際の光源の種類を推定するための光源推定領域と上記画面内の各ブロックの色信号が高彩度であるか否かを判定するための高彩度判定領域とをそれぞれ設定し、上記光源推定領域におけるホワイトバランス判定空間座標の分布に基づいて上記光源の種類を推定した後、該推定された光源の種類と上記高彩度判定領域におけるホワイトバランス判定空間座標の分布とに基づいて上記光源の種類を決定し、上記決定された光源の種類に基づいてホワイトバランス制御情報を算出し、上記算出されたホワイトバランス制御情報に基づいて画像信号に対してホワイトバランス制御を行うことを特徴とする。
【0008】
また、本発明の第2の態様による撮像装置は、被写体を撮像して色信号を得る撮像手段と、上記特定光源毎に設定されたホワイトバランス制御情報を記憶する記憶手段と、上記記憶された上記ホワイトバランス制御情報を読み出す読出手段と、上記読み出された上記ホワイトバランス制御情報と上記撮像手段から得られる色信号とに基づいて第1の態様に記載のホワイトバランス制御方法を行うホワイトバランス制御手段とを具備することを特徴とする。
【0009】
また、本発明の第3の態様による撮像装置は、被写体を撮像して色信号を得る撮像手段と、上記撮像手段の特性情報を記憶する第1の記憶手段と、当該撮像装置に対して着脱自在に構成された撮影レンズであって、該撮影レンズの特性情報を記憶する第2の記憶手段を有する撮影レンズと、上記特定光源毎の特性情報を記憶する第3の記憶手段と、上記第1の記憶手段から上記撮像手段の特性情報を、上記第2の記憶手段から上記撮影レンズの特性情報を、上記第3の記憶手段から上記特定光源毎の特性情報をそれぞれ読み出す読出手段と、上記それぞれ読み出された上記撮像手段の特性情報と、上記撮影レンズの特性情報と、上記特定光源毎の特性情報とから上記特定光源のそれぞれに対応したホワイトバランス制御情報を算出する算出手段と、上記算出された上記ホワイトバランス制御情報と上記撮像手段から得られる色信号とに基づいて第1の態様に記載のホワイトバランス制御方法を行うホワイトバランス制御手段とを具備することを特徴とする。
【0010】
また、本発明の第4の態様によるホワイトバランス制御プログラムは、画面内を複数のブロックに分割した各ブロックの色信号を用いてホワイトバランス制御を行うためのホワイトバランス制御プログラムであって、コンピュータに、上記分割した各ブロックの色信号を表す色空間座標を、上記画面内のホワイトバランスを判定するためのホワイトバランス判定空間座標に変換させ、上記変換されたホワイトバランス判定空間座標が属するホワイトバランス判定空間内に、上記ホワイトバランス制御の際の光源の種類を推定するための光源推定領域と上記画面内の各ブロックの色信号が高彩度であるか否かを判定するための高彩度判定領域とをそれぞれ設定させ、上記光源推定領域における上記ホワイトバランス判定空間座標の分布に基づいて上記光源の種類を推定した後、該推定された光源の種類と上記高彩度判定領域における上記ホワイトバランス判定空間座標の分布とに基づいて上記光源の種類を決定させ、上記決定した光源の種類に基づいてホワイトバランス制御情報を算出させ、上記算出したホワイトバランス制御情報に基づいて画像信号に対してホワイトバランス制御を行わせることを特徴とする。
【0011】
これら第1〜第4の態様によれば、画像の色信号に基づいて光源を推定した後、この推定結果が画面内の高彩度部分の影響を受けているか否かを判定し、この判定結果に基づいてホワイトバランス制御の際の光源を決定することにより、低彩度部分がないような画像に対しても適切に光源を決定することができ、正しいホワイトバランス制御を行うことが可能である。
【発明の効果】
【0012】
本発明によれば、様々な画像に対して好適なホワイトバランス制御を行うことができるホワイトバランス制御方法、このようなホワイトバランス制御を行うことが可能な撮像装置、及びホワイトバランス制御プログラムを提供することができる。
【発明を実施するための最良の形態】
【0013】
以下、図面を参照して本発明の実施形態を説明する。
図1は、本発明の一実施形態に係るホワイトバランス制御方法を実行するためのデジタルカメラの構成を示すブロック図である。図1のデジタルカメラは、撮影レンズ100と、該撮影レンズ100が着脱自在に構成されたカメラ本体200とから主に構成されている。
【0014】
撮影レンズ100は、レンズ系101と、レンズ駆動回路102と、レンズ側CPU103と、インターフェイス(I/F)104と、ROM105とから構成されている。
【0015】
レンズ系101は、複数のレンズと該レンズを駆動するレンズ駆動部とから構成され、図示しない被写体からの光をカメラ本体200内部の撮像素子201に集光する。レンズ駆動回路102は、レンズ系101のレンズ駆動部を駆動して、本デジタルカメラの焦点調節やズーミングを行う。
【0016】
レンズ側CPU103は、撮影レンズ100がカメラ本体200に装着されたときにデジタルカメラ内部のカメラ側CPU207と通信可能に接続され、カメラ本体200内部のカメラ側CPU207の制御の下、レンズ駆動回路102等の撮影レンズ100内の各部の制御を行う。I/F104は、レンズ側CPU103がROM105に記憶されているデータを読み出すための通信インターフェイスである。第2の記憶手段としてのROM105には、レンズ系101の分光透過率特性データや焦点距離データ等のレンズ系101に関する各種データが記憶されている。
【0017】
また、カメラ本体200は、撮像素子201と、撮像回路202と、A/D変換回路203と、データバス204と、RAM205と、ASIC206と、カメラ側CPU207と、ROM208と、インターフェイス(I/F)209と、記録メディア210とから構成されている。
【0018】
撮像素子201は、例えばベイヤ配列のカラーフィルタが設けられた撮像素子であり、撮影レンズ100を介して入射した被写体からの光を受光して電気信号(撮像信号)に変換する。撮像回路202は、撮像素子201からの撮像信号を前処理してA/D変換回路203に出力する。A/D変換回路203は、撮像回路202において前処理された撮像信号をデジタル変換し、画像データを得る。
【0019】
データバス204は、A/D変換回路203から出力された画像データ等の各種データを媒介する。RAM205は、A/D変換回路203において得られた画像データや後述するホワイトバランス制御情報等の各種データを一時記憶する。ホワイトバランス制御手段としてのASIC206は、A/D変換回路203において得られ、RAM205に記憶された画像データに対してホワイトバランス制御等の各種画像処理を施す。算出手段としてのカメラ側CPU207は、ASIC206におけるホワイトバランス制御に用いられるホワイトバランス制御情報等の各種データの算出や、本デジタルカメラの各回路の動作制御等を行う。
【0020】
第1及び第3の記憶手段としてのROM208は、ホワイトバランス制御情報(ホワイトバランスゲイン)を算出するためのホワイトバランス制御情報算出プログラムやホワイトバランス制御情報算出パラメータ、ホワイトバランス制御を行うためのホワイトバランス制御プログラムの他、本デジタルカメラの各種制御に係るプログラムやパラメータを記憶している。カメラ側CPU207は、ROM208に記憶されているプログラムやパラメータを、データバス204を介して読み出して各種処理を実行する。
【0021】
ここで、第1の実施形態においては、ホワイトバランス制御情報算出パラメータとして、撮像素子201の分光感度特性データ及び特定光源毎の分光放射輝度データがROM208に記憶されている。なお、特定光源とは、太陽光や電球等の、色温度が既知である特定の光源のことである。
【0022】
また、図1のデジタルカメラは、撮影レンズ100とカメラ本体200とが別体として構成されたレンズ着脱自在なデジタルカメラであるが、本一実施形態のホワイトバランス制御方法は、レンズ系101がカメラ内部に組み込まれている、所謂コンパクトタイプのデジタルカメラに適用することも可能である。この場合には、ROM208に特定光源毎のホワイトバランス制御情報(ホワイトバランスゲイン)を記憶させておいても良い。つまり、撮影レンズ100が組み込まれている場合には、予めホワイトバランス制御情報を算出しておくことが可能である。
【0023】
I/F209は、データバス204と記録メディア210との間の通信インターフェイスである。記録メディア210は、ASIC206によって処理された画像データを記録するためのメディアである。この記録メディア210は、種々のものを用いることが可能である。
【0024】
以下、本一実施形態に係るホワイトバランス制御方法を含むデジタルカメラの動作について説明する。
図示しない被写体からレンズ系101に入射した光はカメラ本体200内部の撮像素子201に集光される。そして、入射した光に応じた撮像信号が撮像素子201から出力され、撮像回路202においてノイズ除去や増幅等の各種の前処理が施される。撮像回路202において処理された撮像信号はA/D変換回路203においてデジタル信号(画像データ)に変換され、データバス204を介してRAM205に記憶される。
【0025】
RAM205に画像データが記憶された後、カメラ側CPU207においてホワイトバランス制御情報の算出が行われ、このホワイトバランス制御情報に基づいてASIC206においてRAM205から読み出された画像データに対してホワイトバランス制御が行われる。ASIC206においては、ホワイトバランス制御の他に、色変換や階調変換等の画像処理が施される。更に、画像データの記録の際には処理後の画像データが圧縮された後、RAM205に記憶される。その後、RAM205に記憶された圧縮画像データがI/F209を介して読み出されて記録メディア210に記録される。
【0026】
次に、本一実施形態の要部であるホワイトバランス制御方法について説明する。図2は、本一実施形態に係るホワイトバランス制御方法の処理の流れについて示すフローチャートである。なお、図2のフローチャートは、撮影レンズ100がカメラ本体200に組み込まれているデジタルカメラにおけるホワイトバランス制御にも適用可能な例を示している。
【0027】
まず、カメラ側CPU207は、本カメラが、撮影レンズ100が着脱自在に構成されているか否かを判定する(ステップS1)。ステップS1の判定において、撮影レンズ100が着脱自在に構成されている場合に、カメラ側CPU207は、ROM105からレンズ系101の分光透過率特性データを、ROM208から撮像素子201の分光感度特性データ及び特定光源毎の分光放射輝度データを読み出して特定光源毎のホワイトバランス制御情報を算出する(ステップS2)。ここで、ホワイトバランス制御情報は、従来周知の手法で算出すれば良く、例えば撮像素子201の分光感度特性データと、レンズ系101の分光透過率特性データと、特定光源の分光放射輝度特性データとを可視波長域で積算することにより、撮影レンズ100が装着された状態でのR、G、Bのそれぞれに対する分光感度を求め、これらR、G、Bそれぞれの分光感度から算出することができる。具体的には、G分光感度/R分光感度によりRに係るホワイトバランス制御情報を、G分光感度/B分光感度によりBに係るホワイトバランス制御情報を算出する。
【0028】
また、ステップS1の判定において、撮影レンズ100が着脱自在に構成されていない場合に、カメラ側CPU207は、ROM208に予め記憶されている特定光源毎のホワイトバランス制御情報を読み出す(ステップS3)。
【0029】
ステップS2又はステップS3の何れかにより、特定光源毎のホワイトバランス制御情報を取得した後、カメラ側CPU207は、特定光源毎のホワイトバランス制御情報を後述するホワイトバランス判定空間座標に変換する(ステップS4)。その後に、カメラ側CPU207は、RAM205に記憶された画像データを読み出して複数のブロックに分割し、分割したブロック毎の色信号を表すための色空間座標を求め、更にブロック毎に求めた色空間座標をホワイトバランス判定空間座標に変換する(ステップS5)。
【0030】
ここで、色空間座標とホワイトバランス判定空間との間の座標変換について説明する。図3は、画像データをn個のブロックに分割した際の概念図である。また、図4は、ホワイトバランス判定空間について示した図である。
【0031】
図3に示すm番目のブロックの色信号を表すための色空間座標(Rm,Gm,Bm)は、m番目のブロック内の各画素から得られる色信号を成分毎に平均したものとする。ただし、撮像素子201の画素配列がベイヤ配列の場合には1ブロック内にR、Gr、Gb、Bの4つの成分が存在するので、Gmに関してはGr信号の平均値とGb信号の平均値の和を1/2したものとする。
【0032】
このように定義された色座標空間からホワイトバランス判定空間への変換は、ブロック毎のGに対するR、Bの比(つまり、ブロック毎のホワイトバランス)とする。即ち、色空間座標(Rm,Gm,Bm)からホワイトバランス判定空間座標(i1m,i2m,i3m)への変換は、
i1m=Rm/Gm
i2m=Bm/Gm (式1)
i3m=Gm
の式に基づいて行われる。ここで、特定光源毎のホワイトバランス制御情報をホワイトバランス判定空間座標に変換する場合には、特定光源毎のホワイトバランス制御情報の逆数を求めれば良い。
【0033】
ステップS5において、(式1)に示す座標変換を、画面内の全てのブロックについて行った後、カメラ側CPU207は、ホワイトバランス判定空間内に光源推定領域を設定する(ステップS6)。
ステップS6の光源推定領域の設定について更に詳しく説明する。図5(a)〜図5(c)は光源推定領域について示した図である。ここで、図5(a)はホワイトバランス判定空間をR/G軸とB/G軸とからなる平面から見た図であり、図5(b)はホワイトバランス判定空間をR/G軸とG軸とからなる平面から見た図であり、図5(c)はホワイトバランス判定空間をB/G軸とG軸とからなる平面から見た図である。
【0034】
ステップS4の処理により、ホワイトバランス判定空間内に、特定光源に対応するホワイトバランス判定空間座標が設定されている。図5(a)の例では、3種類の特定光源に対応した座標PD75、PD55、PD30が設定されている。ここで、PD75(X_PD75,Y_PD75)は、色温度7500Kの光源(例えば、日陰における太陽光等の青みのある光源)に対応する座標であり、PD55(X_PD55,Y_PD55)は、色温度5500Kの光源(例えば、晴天時の太陽光)に対応する座標であり、PD30(X_PD30,Y_PD30)は、色温度3000Kの光源(例えば、電球等の赤みのある光源)に対応する座標である。
【0035】
このような特定光源毎のホワイトバランス判定空間座標が設定された状態で、R/G軸とB/G軸とからなる平面上に、光源推定領域を設定するための直線を設定する。図5(a)の例では、3種類の特定光源に対応した3つの光源推定領域を設定するために2本の直線Line1、Line2を設定する。ここで、Line1は一定の傾きを持ち、PD75とPD55の間を通る直線である。一方、Line2はLine1と同じ傾きを持ち、PD55とPD30の間を通る直線である。これらLine1及びLine2の設定手法の例について説明する。まず、Line1を、
Y=mX+c_7_5 (ただし、X=R/G,Y=B/G) (式2)
で示す直線式で表せるとする。このようにして定義したLine1のY切片c_7_5を、7500Kと5500Kの間である6000Kに対応する座標を目安として設定する。つまり、Line1が6000Kに対応するホワイトバランス判定空間座標(X_PBDR_7_5,Y_PBDR_7_5)を通るとすると、この点は、PD75とPD55とを3:1に分ける点であるから、
X_PBDR_7_5=(1×X_PD_75+3×X_PD_55)/4
Y_PBDR_7_5=(1×Y_PD_75+3×Y_PD_55)/4 (式3)
の関係が成り立つ。したがって、Y切片c_7_5は、
c_7_5=Y_PBDR_7_5−m×X_PBDR_7_5
=(Y_PD_75+3×Y_PD_55)/4−m×(X_PD_75+3×X_PD_55)/4 (式4)
となる。また、傾きmは例えば0.9とする。mを0.9とすることにより、Line1は図示しない黒体輻射軌跡を表す線分と略直交するようになる。
【0036】
次に、Line2を設定する。まず、Line2を、
Y=mX+c_5_3 (ただし、X=R/G,Y=B/G) (式5)
で示す直線式で表せるとする。このようにして定義したLine2のY切片c_5_3を、5500Kと3000Kの間である4000Kに対応する座標を目安として設定する。つまり、Line2が4000Kに対応するホワイトバランス判定空間座標(X_PBDR_5_3,Y_PBDR_5_3)を通るとすると、この点は、PD55とPD30とを3:2に分ける点であるから、
X_PBDR_5_3=(2×X_PD_55+3×X_PD_30)/5
Y_PBDR_5_3=(2×Y_PD_55+3×Y_PD_30)/5 (式6)
の関係が成り立つ。したがって、Y切片c_5_3は、
c_5_3=Y_PBDR_5_3−m×X_PBDR_5_3
=(Y_PD_55+3×Y_PD_30)/4−m×(X_PD_55+3×X_PD_30)/4 (式7)
となる。
【0037】
以上のようにしてR/G軸とB/G軸とからなる平面を3つの領域に分割した後、図5(b)及び図5(c)に示す輝度判定閾値th_light_gを設定する。このth_light_gは、色信号のうち、輝度情報を多く有しているG信号に基づいて設定する。ここでは、th_light_gを、
th_light_g=G_ave (式8)
とする。(式8)において、G_aveは、1画面分のホワイトバランス判定空間座標のi3の平均値である。なお、輝度判定閾値th_light_gは必ずしも設定しなくとも良いが、輝度判定閾値th_light_gを設定することにより、後述する光源の決定の際に撮影時の露出条件が変化しても、常に同一の光源決定結果を得ることが可能である。
【0038】
以上のようにしてLine1、Line2、及びth_light_gを設定した後、特定光源毎の光源推定領域を設定する。ここでは、図5(a)〜図5(c)に示すように、
Gがth_light_g以上かつR/G軸とB/G軸とからなる平面上でB/GがLine1以上の領域を光源推定領域1、
Gがth_light_g以上かつR/G軸とB/G軸とからなる平面上でB/GがLine1未満かつLine2以上の領域を光源推定領域2、
Gがth_light_g以上かつR/G軸とB/G軸とからなる平面上でB/GがLine2未満の領域を光源推定領域3、
とする。
【0039】
ステップS6において光源推定領域を設定した後、カメラ側CPU207は、ホワイトバランス制御を行うために、現在、被写体を照明している光源を推定する(ステップS7)。この光源の推定の際には、まず、図5(a)〜図5(c)に示す光源推定領域1、光源推定領域2、光源推定領域3の各光源推定領域に存在するホワイトバランス判定空間座標の平均位置(X_ave,Y_ave)を求め、この求めた平均座標(X_ave,Y_ave)の位置により光源の推定を行う。つまり、平均座標(X_ave,Y_ave)が光源推定領域1に属する場合には、撮像素子201において取得された画像データに青系色が多いので7500Kの光源と推定する。同様の考え方に基づき、平均座標(X_ave,Y_ave)が光源推定領域2に属する場合には5500Kの光源と推定し、平均座標(X_ave,Y_ave)が光源推定領域3に属する場合には3000Kの光源と推定する。
【0040】
ステップS7において光源を推定した後、カメラ側CPU207は、ホワイトバランス判定空間内に高彩度判定領域を設定する(ステップS8)。
ステップS8の高彩度判定領域の設定手法について説明する。図6(a)〜図6(c)は高彩度判定領域について示した図である。ここで、図6(a)はホワイトバランス判定空間をR/G軸とB/G軸とからなる平面から見た図であり、図6(b)はホワイトバランス判定空間をR/G軸とG軸とからなる平面から見た図であり、図6(c)はホワイトバランス判定空間をB/G軸とG軸とからなる平面から見た図である。
【0041】
高彩度判定領域は、色相毎に、かつ特定光源毎に設定した光源推定領域(図6(a)の破線で示すLine1及びLine2によって分けられる領域)の少なくとも何れか1つと重複するように設定される。このように高彩度判定領域を光源推定領域と重複するように設定することで、画面内の高彩度色が光源推定に与える影響を判定することが可能となる。
【0042】
高彩度判定領域の設定においては、R/G軸とB/G軸とからなる平面上に、
th_rsat1=0.7×X_PD30
th_rsat2=1.3×Y_PD30
th_gsat1=0.8×X_PD55 (式9)
th_gsat2=0.7×Y_PD55
th_bsat1=1.2×X_PD75
th_bsat2=0.8×Y_PD75
で定義される6本の直線を設定する。なお、(式9)の係数は一例である。更に、G軸上に閾値th_sat_gを設定する。th_sat_gは、1画面分のホワイトバランス判定空間座標のi3の最大値をG_maxとすると、
th_sat_g=(G_ave+G_max)/2 (式10)
とする。
【0043】
次に、以上設定した、th_rsat1、th_rsat2、th_gsat1、th_gsat2、th_bsat1、th_bsat2、及びth_sat_gから色相毎の高彩度判定領域を設定する。ここでは、図6(a)〜図6(c)に示すように、
Gがth_sat_g以下かつR/G軸とB/G軸とからなる平面上でR/Gがth_bsat1以下かつB/Gがth_bsat2以上の領域を高彩度判定領域1、
Gがth_sat_g以下かつR/G軸とB/G軸とからなる平面上でR/Gがth_gsat1以下かつB/Gがth_gsat2以下の領域を高彩度判定領域2、
Gがth_sat_g以下かつR/G軸とB/G軸とからなる平面上でR/Gがth_rsat1以上かつB/Gがth_rsat2以下の領域を高彩度判定領域3、
とする。
【0044】
ステップS8において高彩度判定領域を設定した後、カメラ側CPU207は、撮像された画像における高彩度の色を判定する(ステップS9)。この高彩度色の判定においては、まず、図6(a)〜図6(c)に示したようにして設定された高彩度判定領域1〜3内に存在するホワイトバランス判定空間座標の数を比較し、数の大きい順に高彩度判定領域の順位付けを行う。ここで、高彩度判定領域1におけるホワイトバランス判定空間座標の数をcnt_satarea1、高彩度判定領域2におけるホワイトバランス判定空間座標の数をcnt_satarea2、高彩度判定領域3におけるホワイトバランス判定空間座標の数をcnt_satarea3、1位の高彩度判定領域をsatarea_rank1、2位の高彩度判定領域をsatarea_rank2、3位の高彩度判定領域をsatarea_rank3としたとき、例えばcnt_satarea1=30、cnt_satarea2=0、cnt_satarea3=70であった場合には、
satarea_rank1=satearea3
satarea_rank2=satearea1
satarea_rank3=satearea2
となる。この場合には、画面内の高彩度色の中で赤系色の高彩度が最も多い。
【0045】
ステップS9において高彩度色の判定を行った後、カメラ側CPU207は、光源推定結果に対する高彩度色の影響度合いを算出する(ステップS10)。このために、まず各高彩度判定領域におけるホワイトバランス判定空間座標の数の、1画面の総ブロック数に対する比を求める。ここで、高彩度判定領域1における比率をratio_sat1、高彩度判定領域2における比率をratio_sat2、高彩度判定領域3における比率をratio_sat3、1画面の総ブロック数をcnt_blkallとすると、
ratio_sat1=cnt_satarea1/cnt_blkall
ratio_sat2=cnt_satarea2/cnt_blkall (式11)
ratio_sat3=cnt_satarea3/cnt_blkall
である。
【0046】
次に、光源推定領域と高彩度判定領域とが重複する領域におけるホワイトバランス判定空間座標の数を比較し、数の大きい順に各重複領域を順位付けする。ここで、図5(a)の例においては、重複領域1はth_light_g≦G≦th_sat_gかつR/G≦th_bsat1かつB/G≧th_bsat2の領域であり、重複領域2はth_light_g≦G≦th_sat_gかつR/G≦th_gsat1かつB/G≦th_gsat2の領域であり、重複領域3はth_light_g≦G≦th_sat_gかつR/G≧th_rsat1かつB/G≦th_rsat2の領域である。また、重複領域1におけるホワイトバランス判定空間座標の数をcnt_overlaparea1、重複領域2におけるホワイトバランス判定空間座標の数をcnt_overlaparea2、重複領域3におけるホワイトバランス判定空間座標の数をcnt_overlaparea3、1位の重複領域をoverlaparea_rank1、2位の重複領域をoverlaparea_rank2、3位の重複領域をoverlaparea_rank3としたとき、例えばcnt_overlaparea1=15、cnt_overlaparea2=0、cnt_overlaparea3=35であった場合には、
overlaparea_rank1=overlaparea3
overlaparea_rank2=overlaparea1
overlaparea_rank3=overlaparea2
となる。
【0047】
次に、重複領域内のホワイトバランス判定空間座標の数の1画面の総ブロック数に対する比率を求める。ここで、重複領域1内における比率をratio_overlap1、重複領域2内における比率をratio_overlap2、重複領域3内における比率をratio_overlap3、1画面の総ブロック数をcnt_blkallとすると、
ratio_overlap1=cnt_overlaparea1/cnt_blkall
ratio_overlap2=cnt_overlaparea2/cnt_blkall (式12)
ratio_overlap3=cnt_overlaparea3/cnt_blkall
である。この比率が大きいほど画面内において該当する色の影響が大きいことになる。
【0048】
ステップS10の後、カメラ側CPU207は、ステップS7における光源の推定結果を補正する(ステップS11)。その後にカメラ側CPU207は、実際に被写体を照明している光源の種類を決定し(ステップS12)、この光源の決定結果に応じてホワイトバランス制御情報を算出する(ステップS13)。
ここで、ステップS11〜ステップS13の処理について図7を参照して具体的に説明する。例えば、ステップS7において求めたホワイトバランス判定空間座標の平均位置(X_ave,Y_ave)が図7に示すものであった場合、この位置は光源推定領域2にあるので、光源は5500Kであると推定される。これに対し、ステップS10における処理の結果、satarea_rank1=satearea1、ratio_sat1=0.4、overlaparea_rank1=overlaparea1、ratio_overlap1=0.35であった場合、画面内の高彩度色の中で青系色の高彩度色が最も多い。つまり、青系色の被写体の占める面積が大きいと言える。したがって、実際の光源が5500K近辺の光源であるとすれば、ホワイトバランス判定空間座標の平均位置(X_ave,Y_ave)は、図7の位置よりも更に光源推定領域1寄りになるはずであるので、光源推定結果は被写体の青系色の影響を受けていると考え、実際の光源は推定した光源よりも低い色温度の光源(5500Kよりも赤みのある光源)となるように補正する。この補正としては、例えばratio_sat1及びratio_overlap1で示される比に基づいて5500Kと3000Kとを分ける点を算出し、この点の光源を補正後の光源とする方法がある。また、より簡単な方法としては単に5500Kと3000Kの間の真中の点を実際の光源としても良い。
【0049】
光源を決定した後は、この光源のホワイトバランス判定空間座標の逆数を求めることによりホワイトバランス制御情報(ホワイトバランスゲイン)を求める。
【0050】
以上のようにしてホワイトバランス制御情報を求めた後、カメラ側CPU207は、ホワイトバランス制御情報をASIC206に通信する。ASIC206は、色信号のR成分にR成分に係るホワイトバランス制御情報(ホワイトバランスRゲイン)を乗じ、色信号のB成分にB成分に係るホワイトバランス制御情報(ホワイトバランスBゲイン)を乗じることによりホワイトバランス制御を行い(ステップS14)、図2の処理が終了する。
【0051】
以上説明したように、本一実施形態によれば、ホワイトバランス判定空間内に光源推定領域と高彩度判定領域とを設定することにより、高彩度の色が光源推定に与える影響度合いを判定し、この判定結果に基づいて光源の推定結果を補正することにより、画面内に低彩度部分があるか否かにかかわらずに好適なホワイトバランス制御を行うことができる。
【0052】
以上実施形態に基づいて本発明を説明したが、本発明は上記した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。例えば、上述した例においては、ホワイトバランス制御はASIC206において行われるが、ホワイトバランス制御プログラムに従ってカメラ側CPU207が行うようにしても良い。
【0053】
更に、上記した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件の適当な組合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、上述したような課題を解決でき、上述したような効果が得られる場合には、この構成要件が削除された構成も発明として抽出され得る。
【図面の簡単な説明】
【0054】
【図1】本発明の一実施形態に係るホワイトバランス制御方法を実行するためのデジタルカメラの構成を示すブロック図である。
【図2】本発明の一実施形態に係るホワイトバランス制御方法の処理の流れについて示すフローチャートである。
【図3】画像データをn個のブロックに分割した際の概念図である。
【図4】ホワイトバランス判定空間について示した図である。
【図5】光源推定領域について示した図である。
【図6】高彩度判定領域について示した図である。
【図7】光源決定の例について説明するための図である。
【符号の説明】
【0055】
100…撮影レンズ、101…レンズ系、102…レンズ駆動回路、103…レンズ側CPU、104,209…インターフェイス(I/F)、105,208…ROM、200…カメラ本体、201…撮像素子、202…撮像回路、203…A/D変換回路、204…データバス、205…RAM、206…ASIC、207…カメラ側CPU、210…記録メディア

【特許請求の範囲】
【請求項1】
画面内を複数のブロックに分割した各ブロックの色信号を用いてホワイトバランス制御を行うホワイトバランス制御方法であって、
上記分割した各ブロックの色信号を表す色空間座標を、上記画面内のホワイトバランスを判定するためのホワイトバランス判定空間座標に変換し、
上記変換されたホワイトバランス判定空間座標が属するホワイトバランス判定空間内に、上記ホワイトバランス制御の際の光源の種類を推定するための光源推定領域と上記画面内の各ブロックの色信号が高彩度であるか否かを判定するための高彩度判定領域とをそれぞれ設定し、
上記光源推定領域におけるホワイトバランス判定空間座標の分布に基づいて上記光源の種類を推定した後、該推定された光源の種類と上記高彩度判定領域におけるホワイトバランス判定空間座標の分布とに基づいて上記光源の種類を決定し、
上記決定された光源の種類に基づいてホワイトバランス制御情報を算出し、
上記算出されたホワイトバランス制御情報に基づいて画像信号に対してホワイトバランス制御を行う、
ことを特徴とするホワイトバランス制御方法。
【請求項2】
上記光源推定領域と上記高彩度判定領域とは相互に重複する領域を持つように設定され、
上記光源の種類は、上記光源推定領域におけるホワイトバランス判定空間座標の分布と、上記高彩度判定領域におけるホワイトバランス判定空間座標の分布と、上記光源推定領域と上記高彩度判定領域とが相互に重複する領域におけるホワイトバランス判定空間座標の分布とに基づいて決定されることを特徴とする請求項1に記載のホワイトバランス制御方法。
【請求項3】
上記光源推定領域は特定光源に対応した1つ以上の領域が設定されると共に、上記高彩度判定領域は色相に対応した1つ以上の領域が設定され、
上記設定された光源推定領域のそれぞれが、1つ以上の高彩度判定領域と相互に重複する領域を有することを特徴とする請求項2に記載のホワイトバランス制御方法。
【請求項4】
上記特定光源に対応した光源推定領域と上記色相に対応した高彩度判定領域とはそれぞれ上記特定光源毎に設定されたホワイトバランス制御情報に基づいて設定されることを特徴とする請求項3に記載のホワイトバランス制御方法。
【請求項5】
上記ホワイトバランス判定空間座標は上記画面内の輝度に関する情報を含み、
上記光源推定領域と上記高彩度判定領域とは、上記輝度に関する情報の分布に基づいて設定されることを特徴とする請求項1に記載のホワイトバランス制御方法。
【請求項6】
被写体を撮像して色信号を得る撮像手段と、
上記特定光源毎に設定されたホワイトバランス制御情報を記憶する記憶手段と、
上記記憶された上記ホワイトバランス制御情報を読み出す読出手段と、
上記読み出された上記ホワイトバランス制御情報と上記撮像手段から得られる色信号とに基づいて請求項4に記載のホワイトバランス制御方法を行うホワイトバランス制御手段と、
を具備することを特徴とする撮像装置。
【請求項7】
被写体を撮像して色信号を得る撮像手段と、
上記撮像手段の特性情報を記憶する第1の記憶手段と、
当該撮像装置に対して着脱自在に構成された撮影レンズであって、該撮影レンズの特性情報を記憶する第2の記憶手段を有する撮影レンズと、
上記特定光源毎の特性情報を記憶する第3の記憶手段と、
上記第1の記憶手段から上記撮像手段の特性情報を、上記第2の記憶手段から上記撮影レンズの特性情報を、上記第3の記憶手段から上記特定光源毎の特性情報をそれぞれ読み出す読出手段と、
上記それぞれ読み出された上記撮像手段の特性情報と、上記撮影レンズの特性情報と、上記特定光源毎の特性情報とから上記特定光源のそれぞれに対応したホワイトバランス制御情報を算出する算出手段と、
上記算出された上記ホワイトバランス制御情報と上記撮像手段から得られる色信号とに基づいて請求項4に記載のホワイトバランス制御方法を行うホワイトバランス制御手段と、
を具備することを特徴とする撮像装置。
【請求項8】
上記撮像手段の特性情報は該撮像手段の分光感度特性を含み、上記撮影レンズの特性情報は該撮影レンズの分光透過率特性を含み、上記特定光源毎の特性情報は上記特定光源毎の分光放射輝度特性を含むことを特徴とする請求項7に記載の撮像装置。
【請求項9】
画面内を複数のブロックに分割した各ブロックの色信号を用いてホワイトバランス制御を行うためのホワイトバランス制御プログラムであって、コンピュータに、
上記分割した各ブロックの色信号を表す色空間座標を、上記画面内のホワイトバランスを判定するためのホワイトバランス判定空間座標に変換させ、
上記変換されたホワイトバランス判定空間座標が属するホワイトバランス判定空間内に、上記ホワイトバランス制御の際の光源の種類を推定するための光源推定領域と上記画面内の各ブロックの色信号が高彩度であるか否かを判定するための高彩度判定領域とをそれぞれ設定させ、
上記光源推定領域における上記ホワイトバランス判定空間座標の分布に基づいて上記光源の種類を推定した後、該推定された光源の種類と上記高彩度判定領域における上記ホワイトバランス判定空間座標の分布とに基づいて上記光源の種類を決定させ、
上記決定した光源の種類に基づいてホワイトバランス制御情報を算出させ、
上記算出したホワイトバランス制御情報に基づいて画像信号に対してホワイトバランス制御を行わせる、
ことを特徴とするホワイトバランス制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2007−306320(P2007−306320A)
【公開日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2006−132855(P2006−132855)
【出願日】平成18年5月11日(2006.5.11)
【出願人】(504371974)オリンパスイメージング株式会社 (2,647)
【Fターム(参考)】