以下、本発明の撮像装置の実施例であるデジタルカメラについて、図面を用いて詳細に説明する。
図1は、本実施例のデジタルカメラの主な構成要素を示すブロック図である。
図1において、101は撮影レンズ、102はIRカットフィルタ、103は撮像素子、104はアナログ回路、105はA/D変換回路を示している。また、106はRAM、107は画像処理部、108は制御部を示している。
本実施例のデジタルカメラにおいて、被写体から撮影レンズ101へ入射した光束は撮影レンズ101により撮像素子103の受光面に結像される。撮影レンズ101と撮像素子103の間にはIRカットフィルタ102が配置されており、これにより撮影レンズ101からの光束は撮像素子103の受光面に結像する前に赤外光の波長成分が除去される。
撮像素子103により受光された光は、光電変換により撮像素子103の各画素においてアナログ信号に変換され、アナログ回路104において増幅処理やフィルタ処理等がされた後、A/D変換回路105において画像信号(デジタル信号)に変換される。
各画素の画像信号(画素値)の行列は全体として撮影画像データを構成し、RAM106に一時保存され、画像処理部107により様々な画像処理が行われる。画像処理が完了した最終的な撮影画像データは不図示の外部メモリに保存されたり、不図示の表示装置に表示されたりする。
また、制御部108は、撮影画像データの取得の制御のみならず、絞り制御、オートフォーカス制御、シャッタ制御等を制御する。したがって、制御部108はシャッタ速度と絞り値から露出情報を取得することが可能である。
さらに、図1において、109は色シェーディング補正部、110は記憶部を示し、109aは色成分情報算出部、109bは光源環境判別部、109cは色シェーディング補正ゲイン算出部、109dは色シェーディング補正ゲイン修正部を示し、110aは光源環境判別基準、110bは色シェーディング補正ゲイン、110cはブレンド比αを示している。
色シェーディング補正部109は予め記憶部110に記憶された値に基づいて撮影画像データの色シェーディング補正を行う。色成分情報算出部109aは取得された撮影画像データの画像信号から光源環境の判別のための色成分情報を算出する。光源環境判別部109bは算出された色成分情報に基づいて光源環境判別基準110aを参照して撮影画像データの光源環境を判別する。色シェーディング補正ゲイン算出部109cは判別された光源環境に基づいて色シェーディング補正ゲイン110bを参照して光源環境に対応する色シェーディング補正ゲインを算出する。色シェーディング補正ゲイン算出部109dは算出された色シェーディング補正ゲインをさらに露出情報に基づいてブレンド比α110cを参照して修正する。本実施例の撮影画像データの色シェーディング補正については以下で詳しく説明する。
特に撮像素子を用いて撮影画像データを取得する撮像装置においては、一般的に被写体からの光束が撮影レンズ101により撮像素子103の受光面へ結像される途中において、IRカットフィルタ102が配置されている。IRカットフィルタ102は、撮像素子103に到達する光から赤外光に当たる波長成分を除去する役割を有している。
撮像素子は可視光線のみならず不可視光線である赤外光にも受光感度を有しているが、撮像素子が赤外光をも受光するような撮像装置のままでは不自然な撮影画像データが取得されてしまうことになる。そのため、撮像素子を用いて撮影画像データを取得する撮像装置では、撮像素子の受光面側に赤外光の波長成分を除去するためのIRカットフィルタが配置されているのが一般的である。
本実施例のような撮像素子の受光面側にIRカットフィルタが配置されている撮像装置では、撮影レンズからの光束の入射角に依存してIRカットフィルタや撮像素子により撮影画像データの色シェーディングが生じやすい。
IRカットフィルタの平面に対して大きな入射角で入射する光束については、IRカットフィルタの光の波長に対する透過率特性が変化してカットされる長波長側の波長が短波長側へシフトすることにより、IRカットフィルタの本来の目的以上に長波長側の波長の光がカットされてしまうという問題がある。
そのため、撮影レンズからの光束がIRカットフィルタの平面に対して大きな入射角で入射する傾向のある撮影画像データの周辺部においては、長波長側の波長の光から得られる画像信号が不足することにより、撮影画像データの色シェーディングが生じてしまう。
また、撮像素子の受光面に対して大きな入射角で入射する光束についても、撮像素子を構成するマイクロレンズの光の波長に対する屈折の変化により、長波長側の波長の光がマイクロレンズによりフォトダイオードに集光されにくくなってしまうという問題がある。これはマイクロレンズに入射する光の波長成分のうち、長波長側の波長成分ほど屈折されにくくフォトダイオードへ到達しにくくなるためである。
そのため、撮影レンズからの光束が撮像素子の受光面に対して大きな入射角で入射するような撮影画像データの周辺部においては長波長側の波長成分から得られる画像信号が不足するため、撮影画像データの色シェーディングが生じてしまう。
本発明は、これらの撮像装置の特性により生じる撮影画像データの色シェーディングを適切に補正して色ムラのない撮影画像データを得ることを目的とする。
次に、図2を用いて本実施例における撮影画像データの色シェーディング補正の処理フローについて説明する。
図2に示すように、本実施例における色シェーディング補正の処理フローの大まかな手順は以下のとおりである。
(手順#1)撮像装置により撮影画像データを取得する。
(手順#2)取得した撮影画像データの画像信号から色成分情報を算出する。また、撮像装置の撮影条件から露出情報を取得する。
(手順#3)色成分情報に基づいて光源環境を判別することにより色シェーディング補正ゲインを算出する。
(手順#4)算出した色シェーディング補正ゲインを露出情報に基づいて修正する。
(手順#5)最終的に修正された色シェーディング補正ゲインを用いて撮影画像データの色シェーディング補正を行う。
本実施例の色シェーディング補正の処理フローにより、様々な光源環境で取得された撮影画像データに対して適切な色シェーディング補正を行うことができる。図2のそれぞれの手順について以下に詳しく説明する。
まず、撮像装置により撮影画像データを取得する(手順#1)。
撮影画像データの取得については一般的な撮像装置の従来技術と同様である。本実施例の撮像装置において、撮影レンズ101からの光束を撮像素子103の受光面へ結像させ、撮像素子103において撮影レンズ101からの光を光電効果により各画素においてアナログ信号へ変換し、アナログ回路104においてアナログ信号を信号処理した後、A/D変換回路105においてA/D変換によりデジタル信号(画像信号)に変換し、各画素に対応する画像信号(画素値)の行列の全体を撮影画像データとして取得する。取得された撮影画像データはさらに画像処理等されるためRAM106に一時記憶される。
次に、手順#1で取得された撮影画像データから色成分情報を算出する。また、撮像装置から撮影画像データの露出情報を取得する(手順#2)。色成分情報は色シェーディング補正部109の色成分情報算出部109aで算出される。
ここで色成分情報について説明する。色成分情報は、撮影画像データを構成する画像信号から算出され、撮影画像データ全体の色の分布にどのような特徴があるのかを表す情報である。
色成分情報は撮影画像データを構成する画像信号から算出されるものであり、画像信号は撮影画像データの取得の際の光源環境により影響されるものであるから、色成分情報を分析することにより撮影画像データがどのような光源環境で取得されたものであるかを推測することができる。
特に、本実施例の色成分情報は、撮影画像データにおける白色の被写体に対応する画像信号に限定したものに基づいて算出されるものとし、撮影画像データのうち白色の被写体に影響する光源環境を推測するための情報であることとした。
また、露出情報は、色成分情報の算出とともに撮像装置から取得され、撮影画像データの取得の際の明るさを示す基準となる情報である。本実施例の露出情報は、撮影画像データの取得の際の撮影条件におけるシャッタ速度と絞り値から算出されるEV値とする。本発明の露出情報は撮影条件における明るさを示す基準となるものであればこれに限られない。
次に、本実施例における色成分情報の算出方法について詳しく説明する。
撮影画像データを構成する画像信号に基づいて色成分情報を算出するには、まず図3に示すように撮影画像データを分割数Nのエリアごとに分割する。
撮影画像データ全体を分割数Nのエリアごとに分割すると、撮影画像データの全画素数がMである場合、それぞれのエリアの画素数はm(m=M/N)で構成されることとなる。
次に、画素数mからなるN分割されたそれぞれのエリアにおいて、R値・G値・B値のそれぞれについて平均値Rave・Gave・Baveを算出する。撮影画像データの画素値は一組のR値・G値・B値からなるRGB値で構成されている。
n番目のエリアにおけるR値・G値・B値の各画素値の平均値をRave(n)・Gave(n)・Bave(n)と表し、n番目のエリアにおけるi番目の画素の画素値をそれぞれR(n,i)・G(n,i)・B(n,i)と表すと、Rave(n)・Gave(n)・Bave(n)はそれぞれ次のように計算される。
さらに、分割されたそれぞれのエリアにおいて、算出したRave(n)・Gave(n)・Bave(n)(n=1〜N)を用いてR/Gの値とB/Gの値をそれぞれ算出する。
本実施例において、n番目のエリアにおけるR/Gの値とB/Gの値をR/G(n)とB/G(n)で表すと、それぞれ次のように計算される。
本実施例において撮影画像データの分割されたエリアはNあるから、それぞれのエリアについてR/Gの値とB/Gの値を算出すると(R/G(n),B/G(n))がNだけ算出される。これらの撮影画像データのすべてのエリアでそれぞれ算出された(R/G(n),B/G(n))について、横軸をR/Gの値、縦軸をB/Gの値としてプロットすると図5のようになる。以下、図5のように(R/G(n),B/G(n))をプロットした分布図をR/G_B/G分布図と呼ぶ。
最終的に、R/G_B/G分布図にプロットされた(R/G(n),B/G(n))を用いて本実施例における撮影画像データの色成分情報を算出する。ただし、本実施例の色成分情報を算出する際には、撮影画像データについてR/G_B/G分布図にプロットされた(R/G(n),B/G(n))のすべてを常に用いることはしない。
上述のとおり、本実施例の色成分情報は、撮影画像データのうち白色の被写体に影響する光源環境を推測するため情報である。そのため、色成分情報は撮影画像データの白色の被写体に対応する画像信号に限定したものに基づいて算出されることとしているので、分割されたエリアの(R/G(n),B/G(n))のうち白色の被写体に対応するエリアの(R/G(n),B/G(n))のみを図5のR/G_B/G分布図から抽出する。
白色の被写体に対応するエリアの(R/G(n),B/G(n))を抽出する方法は、図5のR/G_B/G分布図において予め白色の画像信号に基づいて算出されたと推定される(R/G(n),B/G(n))の分布範囲を撮影装置ごとに設定しておき、この分布範囲に属する(R/G(n),B/G(n))のみを抽出することにより行われる。以下、本実施例において特にこの分布範囲をホワイトマップと呼ぶ。
本実施例のR/G_B/G分布図におけるホワイトマップは図6のように示される。R/G_B/G分布図にプロットされた(R/G(n),B/G(n))のうちホワイトマップの範囲にプロットされたものを(R/GW(l),B/GW(l))として抽出し、これらのみを用いて本実施例の色成分情報を算出する。ホワイトマップにより抽出される(R/GW(l),B/GW(l))の数をLとするとL≦Nとなる。
本実施例の色成分情報は、R/G_B/G分布図からホワイトマップにより抽出された(R/GW(l),B/GW(l))のみにより算出されることにより、撮影画像データにおける白色の被写体に対応する画像信号に撮影条件における光源環境がどのように影響しているかについて分析することができ、撮影条件における光源環境を推測するための情報とすることができる。
R/G_B/G分布図において予め設定されるホワイトマップは、撮像装置によりそれぞれ設定されるものであって、特に撮像装置に備えられた撮像素子の感度特性や撮像装置の画像処理等により異なり、撮像装置によるテスト撮影により予め設定されるものである。
本実施例の色成分情報は最終的に(R/G,B/G)として算出され、R/Gの値とB/Gの値はそれぞれ(R/GW(l),B/GW(l))の平均値として次のように計算される。
本実施例では、色成分情報を、RGG分布図のホワイトマップにより抽出された(R/GW(l),B/GW(l))の平均値として算出したが、さらに(R/GW(l),B/GW(l))に対してホワイトマップ内におけるプロット位置によりそれぞれ重み付けをして加重平均を行うことにより色成分情報を算出してもかまわない。
以上により撮影画像データの画像信号から算出された色成分情報(R/G,B/G)は、前述の分割されたエリアごとに算出された(R/G(n),B/G(n))と同様にR/G_B/G分布図にプロットされ、後述する撮影画像データの光源環境の判別に用いられる。
次に、撮影画像データから算出された色成分情報(R/G,B/G)を用いて撮影画像データの撮影条件における光源環境を判別し、判別された光源環境に基づいて色シェーディング補正ゲインを算出する(手順#3)。光源環境は算出された色成分情報に基づいて光源環境判別基準110aを参照して光源環境判別部109bで判別され、色シェーディング補正ゲインは判別された光源環境に基づいて色シェーディング補正ゲイン110bを参照して色シェーディング補正ゲイン算出部109cで算出される。色シェーディング補正ゲインについては後述する。
本実施例では、色シェーディング補正ゲインを算出するために、まず撮影画像データから算出された色成分情報(R/G,B/G)に基づいて光源環境判別基準を参照し、撮影画像データの撮影条件における光源環境の判別を行う。
本実施例の光源環境判別基準は、サンプル画像データ群についてR/G_B/G分布図における光源環境ごとの色成分情報(R/G,B/G)の分布の傾向を分析しておくことにより予め設定される。
ここで、サンプル画像データ群は、本実施例の撮像装置によるテスト撮影により取得される複数のサンプル画像データから構成される群を指す。本発明では、予めサンプル画像データ群について、サンプル画像データそれぞれの色成分情報を算出し、R/G_B/G分布図上で光源環境によってサンプル画像データの色成分情報がどのように分布する傾向があるのかを分析することにより、光源環境判別基準を設定する。光源環境判別基準を予め設定する際には、様々な光源環境においてできるだけ多くのサンプル画像データについて分析しておくことが好ましい。
本実施例の撮像装置によるテスト撮影により取得されたサンプル画像データ群について、サンプル画像データそれぞれの色成分情報(R/G,B/G)を算出し、これらを屋外・蛍光灯・白熱灯の光源環境ごとにR/G_B/G分布図へプロットすると図7のような分布が得られる。
本実施例の光源環境判別基準は、サンプル画像データそれぞれの色成分情報(R/G,B/G)を算出し、これらを屋外・蛍光灯・白熱灯の光源環境ごとにR/G_B/G分布図へプロットした図7のR/G_B/G分布図を分析することにより予め設定される。
図7のR/G_B/G分布図では、サンプル画像データそれぞれの色成分情報(R/G,B/G)と光源環境の情報が一体となってプロットされているので、サンプル画像データから算出された色成分情報(R/G,B/G)が光源環境ごとにR/G_B/G分布図上でどのような範囲に分布する傾向があるのかを予め分析しておくことができる。そして、光源環境判別基準はサンプル画像データ群のR/G_B/G分布図を分析することにより撮像装置ごとに予め設定される。
そして、本実施例では、撮像装置で取得された撮影画像データから算出される色成分情報に基づいて光源環境判別基準を参照することで、撮影画像データの光源環境の判別を行うことができる。
本実施例では図7のサンプル画像データ群のR/G_B/G分布図を分析することにより、光源環境の判別を行うための光源環境判別基準を次の(1)〜(4)のように予め設定することとした。
(1)色成分情報のR/Gの値がX1以下の場合
本実施例の撮像装置により実際に取得された撮影画像データについて、色成分情報(R/G,B/G)を算出してR/Gの値がX1以下の場合は、屋外の光源環境で取得されたものであると判別することとした。
(2)色成分情報のR/Gの値がX3より大きい場合
本実施例の撮像装置により実際に取得された撮影画像データについて、色成分情報(R/G,B/G)を算出してR/Gの値がX3より大きい場合は、白熱灯の光源環境で取得されたものであると判別することとした。
(3)色成分情報のR/Gの値がX1より大きくX2以下の場合
本実施例の撮像装置により実際に取得された撮影画像データについて、色成分情報(R/G,B/G)を算出してR/Gの値がX1より大きくX2以下の場合は、屋外と蛍光灯が混合した光源環境で取得されたものであると判別することとした。
(4)色成分情報のR/Gの値がX2より大きくX3以下の場合
本実施例の撮像装置により実際に取得された撮影画像データについて、色成分情報(R/G,B/G)を算出してR/Gの値がX2より大きくX3以下の場合は、蛍光灯と白熱灯が混合した光源環境で取得されたものであると判別することとした。
次に、本実施例では上記のように判別された光源環境に基づいて色シェーディング補正ゲインを算出する。
ここで、本実施例の色シェーディング補正ゲインとは、撮影画像データの色シェーディングを補正するためのゲインを指す。本実施例の色シェーディング補正ゲインは撮像装置の特性に対応して予め設定されている。
例えば、本実施例のR値に対する色シェーディング補正ゲインは、図8に示すように屋外・蛍光灯・白熱灯の光源環境ごとに撮影画像データにおける像高rに対応して設定される。以下、本実施例の説明では特に撮影画像データの画像信号のR値に対する色シェーディング補正処理及び色シェーディング補正ゲインについてのみ説明するが、他の色の画像信号に対しても処理の方法やゲインの役割はR値に対するものと同様であり、撮像装置の特性によっては、例えばR値・G値・B値の一部又は全部に対して色シェーディング補正処理及び色シェーディング補正ゲインを考慮することも想定される。また、本実施例において、撮影画像データの像高rにおけるR値に対する色シェーディング補正ゲインをCR(r)と示す。
図8に示すように、色シェーディング補正ゲインは、撮影画像データの中心(r=0)から周辺部(r>0)にかけて大きさが変化する傾向があり、さらに光源環境ごとにその特性は異なる。これは撮影画像データの像高rにより、撮影レンズからの光束のIRカットフィルタの平面や撮像素子の受光面への入射角が変化し、IRカットフィルタへの入射角依存性や撮像素子への入射角依存性の影響を受けるためである。
また、図8に示すように、本実施例の撮像装置では、R値に対する色シェーディング補正ゲインCR(r)は、撮影画像データの像高rにおいて光源環境が蛍光灯、屋外、白熱灯と変化するに従い大きくなるという特徴がある。これは光源環境により被写体からの光束を構成する波長成分が変化することによるものであり、それぞれの光源環境に対応する色シェーディング補正ゲインは、それぞれの光源環境においてサンプル画像データをテスト撮影し、サンプル画像データの色シェーディングを分析することで予め設定しておくことができる。
また、図8に示すような色シェーディング補正ゲインは撮像装置ごとによっても異なる。色シェーディング補正ゲインが補正の対象としている撮影画像データの色シェーディングの性質が、撮像装置のIRカットフィルタへの入射角依存性と撮像素子への入射角依存性によるものであるからである。したがって、撮像装置の特性に従って色シェーディング補正ゲインを予め設定しておくことで、撮像装置に適切な色シェーディング補正を行うことができる。
本実施例において、色シェーディング補正ゲインは判別された光源環境に基づいて次の(1)〜(4)のように算出されることとした。
(1)判別された光源環境が屋外である場合
判別された光源環境が屋外である場合は、色シェーディング補正ゲインを、図8のR値に対する色シェーディング補正ゲインCR(r)を参照して屋外の色シェーディング補正ゲインとして算出する。
(2)判別された光源環境が白熱灯である場合
判別された光源環境が白熱灯である場合は、色シェーディング補正ゲインを、図8のR値に対する色シェーディング補正ゲインCR(r)を参照して白熱灯の色シェーディング補正ゲインとして算出する。
(3)判別された光源環境が屋外と蛍光灯との混合である場合
判別された光源環境が屋外と蛍光灯との混合である場合は、色シェーディング補正ゲインを、図8のR値に対する色シェーディング補正ゲインCR(r)を参照して屋外と蛍光灯それぞれの色シェーディング補正ゲインの重み付けにより算出する。
屋外と蛍光灯それぞれの色シェーディング補正ゲインの重み付けは、より具体的には取得された撮影画像データの色成分情報のR/Gの値と、光源環境が屋外と蛍光灯との混合であると判別されるしきい値であるR/Gの値の上限と下限それぞれとの差分に応じて行う。
すなわち本実施例では、取得された撮影画像データの色成分情報のR/Gの値と上限との差分が小さいほど蛍光灯の色シェーディング補正ゲインに重み付けを行い、下限との差分が小さいほど屋外の色シェーディング補正ゲインに重み付けを行って、本実施例の色シェーディング補正ゲインを算出する。
ここで、特に、CR屋外(r)・CR蛍光灯(r)は、それぞれ撮影画像データの像高rにおけるR値に対する屋外・蛍光灯の色シェーディング補正ゲインを示し、本実施例において、光源環境が屋外と蛍光灯との混合であると判別されるしきい値である色成分情報のR/Gの値の上限はX2、下限はX1であることとする。そうすると色成分情報に基づいて判別された光源環境が屋外と蛍光灯の混合である場合の色シェーディング補正ゲインCR(r)は次のように計算される。なお、しきい値である色成分情報のR/Gの値の上限と下限は図7のサンプル画像データ群のR/G_B/G分布図を分析することにより予め撮像装置ごとに設定されている。
例えば、取得された撮影画像データの色成分情報のR/Gの値がXSであり、光源環境が屋外と蛍光灯の混合であると判別される場合、R値に対する色シェーディング補正ゲインCR(r)は次の式のように算出される。
(4)判別された光源環境が白熱灯と蛍光灯との混合である場合
判別された光源環境が白熱灯と蛍光灯との混合である場合は、色シェーディング補正ゲインを、図8のR値に対する色シェーディング補正ゲインCR(r)を参照して白熱灯と蛍光灯それぞれの色シェーディング補正ゲインの重み付けにより算出する。
白熱灯と蛍光灯それぞれの色シェーディング補正ゲインの重み付けは、より具体的には取得された撮影画像データの色成分情報のR/Gの値と、光源環境が白熱灯と蛍光灯との混合であると判別されるしきい値であるR/Gの値の上限と下限それぞれとの差分に応じて行う。
すなわち本実施例では、取得された撮影画像データの色成分情報のR/Gの値と下限との差分が小さいほど蛍光灯の色シェーディング補正ゲインに重み付けを行い、上限との差分が小さいほど白熱灯の色シェーディング補正ゲインに重み付けを行って、本実施例の色シェーディング補正ゲインを算出する。
ここで、特に、CR白熱灯(r)・CR蛍光灯(r)は、それぞれ撮影画像データの像高rにおけるR値に対する白熱灯・蛍光灯の色シェーディング補正ゲインを示し、本実施例において、光源環境が白熱灯と蛍光灯との混合であると判別されるしきい値である色成分情報のR/Gの値の上限はX3、下限はX2であることとする。そうすると色成分情報に基づいて判別された光源環境が白熱灯と蛍光灯の混合である場合の色シェーディング補正ゲインCR(r)は次のように計算される。なお、しきい値である色成分情報のR/Gの値の上限と下限は図7のサンプル画像データ群のR/G_B/G分布図を分析することにより予め撮像装置ごとに設定されている。
例えば、取得された撮影画像データの色成分情報のR/Gの値がXTであり、光源環境が白熱灯と蛍光灯の混合であると判別される場合、R値に対する色シェーディング補正ゲインCR(r)は次の式のように算出される。
本実施例では以上により、撮影画像データから算出された色成分情報に基づいて光源環境を判別し、判別された光源環境に基づいて色シェーディング補正ゲインを算出する。
次に、判別された光源環境に基づいて算出された色シェーディング補正ゲインを露出情報に基づいて修正する(手順#4)。色シェーディング補正ゲインは撮影装置で取得された露出情報に基づいてブレンド比α110cを参照して色シェーディング補正ゲイン修正部109dで修正される。
色シェーディング補正ゲインは、正確に判別された光源環境に基づいて算出されていなければ撮影画像データの色シェーディング補正を適切に行うことができない。ところが、実際に光源環境を色成分情報から常に正確に判別することは困難であり、撮影画像データの被写体の色の分布により光源環境の判別を誤った場合には色シェーディング補正ゲインを適切に算出することができず色シェーディング補正に失敗するおそれがある。
例えば、実際には屋外で取得された撮影画像データであっても蛍光灯や白熱灯の色に近づくような被写体が多く含まれている場合には、この撮影画像データから算出される色成分情報に基づいて光源環境の判別を行うと、光源環境が蛍光灯や白熱灯であると誤って判別されてしまうおそれがある。さらに、撮影画像データの光源環境が実際には屋外であるにもかかわらず、蛍光灯や白熱灯の光源環境に基づいて算出された色シェーディング補正ゲインにより撮影画像データの色シェーディング補正が行われると、撮影画像データの色シェーディング補正が不足したり過剰となったりして適切にこれを行うことができなくなってしまう。
撮影画像データの光源環境の判別を誤るおそれのある場合の具体例として、例えば、撮影画像データにおいて植物の葉の緑色が大きな割合を占めている場合が想定される。この場合に撮影画像データから色成分情報を算出して光源環境を判別すると、撮影画像データを構成する画像信号においてG値(緑)の割合が大きいがために蛍光灯の光源環境であると判別されてしまうおそれがある。しかしながら、G値(緑)の画像信号の割合が大きい撮影画像データであっても、実際には蛍光灯の光源環境の下で撮影されたものとは限らず屋外の光源環境で撮影されたものである場合もある。従来技術では光源環境の判別を誤った場合に、色シェーディング補正ゲインの算出も誤ることとなり、適切な色シェーディング補正が行われない問題があった。
そこで、本発明では、判別された光源環境に基づいて算出された色シェーディング補正ゲインに対して、さらに撮像装置から取得された露出情報に基づいて修正を行うことでより適切な色シェーディング補正ゲインを算出することとした。この色シェーディング補正ゲインを用いることにより撮影画像データの適切な色シェーディング補正を行うことができる。以下、露出情報に基づいて修正された色シェーディング補正ゲインを修正色シェーディング補正ゲインと呼ぶことがある。
本実施例では、判別された光源環境に基づいて算出された色シェーディング補正ゲインと屋外の光源環境に対応する色シェーディング補正ゲインとを、露出情報に対応して予め設定されているブレンド比によりブレンドすることで修正色シェーディング補正ゲインを算出し、この修正色シェーディング補正ゲインを撮影画像データの色シェーディング補正に用いることとした。
本実施例の修正色シェーディング補正ゲインを算出するためのブレンド比は、予め撮像装置に設定されている。本実施例のブレンド比は、撮像装置により取得されたサンプル画像データ群について、露出情報に対応する屋外の光源環境で取得されたサンプル画像データの占める割合の分析により設定される。
本実施例のブレンド比を予め設定する方法について以下に詳しく説明する。
まず、撮像装置により様々な撮影環境においてサンプル画像データ群を取得する。そして、サンプル画像データそれぞれを撮像装置から取得された露出情報に基づいてグループ分けする。本実施例では露出情報に基づいてグループ分けされたサンプル画像データにおいて屋外の光源環境において取得されたサンプル画像データの占める割合を分析し、これを修正色シェーディング補正ゲインを算出するためのブレンド比αとして設定した。
本実施例のブレンド比αについて、露出情報を横軸、ブレンド比αを縦軸とするとしてグラフに表すと図9のように表される。ブレンド比αは、本実施例の撮像装置で取得されるサンプル画像データ群について、露出情報ごとに屋外のサンプル画像データが現れる確率を実験的に求めたものである。
従来技術では所定の露出情報の値をしきい値として光源環境を判別し、その光源環境に基づき色シェーディング補正ゲインを決定して色シェーディング補正を行っていたが、取得された撮影画像データの露出情報の値が光源環境の判別のためのしきい値の近傍である場合には、露出情報の微小な変化によって急激に色シェーディング補正ゲインが変化してしまうことにより撮影画像データの色シェーディング補正を誤るおそれがあった。これに対し、本実施例では、露出情報に対応してブレンド比αを適切かつ連続的に設定することにより、露出情報により色シェーディング補正ゲインが急激に変化してしまうことを防止し、適切に撮影画像データの色シェーディング補正を行うことができるようにした。
図9に示すように、本実施例のブレンド比αは、露出情報の値が大きくなるに従って大きくなる傾向がある。すなわち、撮像装置により取得された撮影画像データは、その露出情報の値が大きいほど、屋外の光源環境で取得されたものである可能性が高い。
したがって、色成分情報により光源環境が蛍光灯や白熱灯であると判別された撮影画像データであっても、露出情報が比較的大きい場合には実際には屋外の光源環境の下で撮影されたものである可能性も十分に考えられるため、この場合には判別された光源環境に基づいて算出された色シェーディング補正ゲインを修正する必要がある。
そこで、本実施例では、撮像装置から取得された露出情報に基づいてブレンド比αを参照し、このブレンド比αを用いて判別された光源環境に基づいて算出された色シェーディング補正ゲインを修正することにより撮影画像データの色シェーディング補正の適切さを補完することができるようにした。
本実施例のブレンド比αを用いた色シェーディング補正ゲインの修正は、屋外の色シェーディング補正ゲインCR屋外(r)に対してαの重み付けをしたものと、判別された光源環境に基づいて算出された色シェーディング補正ゲインCR(r)に対して(1−α)の重み付けをしたものとを足し合わせることにより算出される。
修正色シェーディング補正ゲインは次の式のように算出される。ここで撮影画像データの像高rにおけるR値に対する修正色シェーディング補正ゲインをCR修正(r)と示す。
次に、修正色シェーディング補正ゲインCR修正(r)を用いて撮影画像データのR値について色シェーディング補正を行う(手順#5)。より具体的には、撮影画像データの像高rにおける各画素のR値に対して修正色シェーディング補正ゲインCR修正(r)をそれぞれかけることにより、色シェーディングにより不足した画像信号(R値)を補完する。
撮影画像データの色ムラは、撮像装置を構成するIRカットフィルタや撮像素子の特性により特に撮影レンズからの光束の入射角が大きくなる撮影画像データの周辺部で生じやすい。色シェーディングが生じた撮影画像データの周辺部ではRGB値のバランスが崩れ、特定の色の画素値が本来取得される画素値よりも不足する。そのため、色シェーディング補正を行うには各画素の画素値に対して不足している特定の色の画素値に適切なゲインをかけて画像信号を補完し本来取得される画素値に補正する必要がある。
本実施例において、撮影画像データの色シェーディング補正に際し、撮影画像データ全体のR値に対して修正色シェーディング補正ゲインCR(r)かける計算は以下のように行われる。
まず、ゲインをかける各画素の撮影画像データにおける像高rを算出する。図10は撮影画像データにおける各画素の像高rの算出方法を示した図である。図10に示すように、撮影画像データの中心にある画素の位置を原点(0,0)とする平面座標において、中心にある画素から横方向にx番目、縦方向にy番目に当たる画素の座標位置を(x,y)とする。また、(x,y)にある画素のR値をR(x,y)とする。また、撮影画像データの中心から(x,y)にある画素までの横方向・縦方向の距離をそれぞれrx・ryとする。
図10から(x,y)にある画素の像高rをr(x,y)とすると、像高rは次のように算出される。
そして、像高rに対応する修正色シェーディング補正ゲインCR(r)を撮影画像データ全体の各画素のR値にかけることで撮影画像データの色シェーディング補正を行う。撮影画像データにおいて(x,y)にある画素の補正後のR値をR'(x,y)とすると、撮影画像データ全体のR値の補正は次のように算出される。
ただし、
R(x,y):(x,y)にある画素で取得されるR値
R'(x,y):本実施例における色シェーディング補正後のR値
CR修正(r):像高rに対応するR値の修正色シェーディング補正ゲイン
r:撮影画像データにおいて(x,y)にある画素の像高
以上の本実施例における色シェーディング補正の処理フローにより、修正色シェーディング補正ゲインを用いた撮影画像データの適切な色シェーディング補正を行うことができる。
なお、本実施例では撮影画像データの各画素のR値に対する色シェーディング補正について説明したが、その他のG値やB値等が撮影画像データに生じる色シェーディングの原因となる場合には、これらに対してもR値に対して行った本実施例と同様の色シェーディング補正を行うことも容易に想到できる。
なお、本実施例では本発明の光源環境の判別にについて、撮影画像データを構成するRGB値から算出された色成分情報を用いた方法を説明したが、本発明の光源環境の判別はこの方法に限定されず、例えば撮像装置に別途設けられた光源環境を判別するためのセンサーを用いた方法等も当てはまる。
本発明によれば、撮影画像データに生じた色シェーディング補正を行うに際し、単に撮影画像データの光源環境の判別に基づく色シェーディング補正ゲインを用いるだけでなく、これを撮像装置から取得される露出情報に基づいてさらに修正した修正色シェーディング補正ゲインを用いることにより、様々な撮影条件において適切な色シェーディング補正を行うことができる。