(57)【要約】      （修正有）【課題】色シェーディングの現象に対して適切な補正を行う。【解決手段】２色以上のカラーフィルタを有する撮像素子と、カラーフィルタの色ごとのシェーディングの中心座標を算出する各色中心座標算出手段と、前記各色中心座標算出手段で算出した各色の中心座標から各色の画面周囲まで放射方向のシェーディング補正係数を算出する放射方向シェーディング補正係数算出手段と、を有し、前記各色中心座標算出手段で算出した各色中心座標と、前記放射方向シェーディング補正係数算出手段で算出した放射方向シェーディング補正係数から、撮影画像をシェーディング補正する。【選択図】図１
2012156882.tif 000002
【特許請求の範囲】
【請求項１】
２色以上のカラーフィルタを有する撮像素子と、
カラーフィルタの色ごとのシェーディングの中心座標を算出する各色中心座標算出手段と、前記各色中心座標算出手段で算出した各色の中心座標から各色の画面周囲まで放射方向のシェーディング補正係数を算出する放射方向シェーディング補正係数算出手段と、を有し、
前記各色中心座標算出手段で算出した各色中心座標と、前記放射方向シェーディング補正係数算出手段で算出した放射方向シェーディング補正係数から、撮影画像をシェーディング補正することを特徴とする固体撮像装置。
【請求項２】
カラーフィルタの色ごと中心座標は、カラーフィルタの色ごとの最大出力値座標であることを特徴とする請求項１に記載の固体撮像装置。
【請求項３】
カラーフィルタの色ごと中心座標は、光学的中心座標を含まない、3か所以上の領域の出力値から算出することを特徴とする請求項１に記載の固体撮像装置。
【請求項４】
カラーフィルタの色ごと放射方向のシェーディング補正係数は、色ごとの中心座標から１本以上の放射方向の出力分布から算出することを特徴とする請求項１に記載の固体撮像装置。
【請求項５】
鏡筒部を有し、絞り量に応じて、カラーフィルタの色ごとのシェーディングの中心座標と、カラーフィルタの色ごと中心座標から画面周囲まで放射方向のシェーディング補正係数を変更することを特徴とする請求項１に記載の固体撮像装置。
【請求項６】
鏡筒部を有し、焦点距離に応じて、カラーフィルタの色ごとのシェーディングの中心座標と、カラーフィルタの色ごと中心座標から画面周囲まで放射方向のシェーディング補正係数を変更することを特徴とする請求項１に記載の固体撮像装置。
【請求項７】
被写体の色温度を算出する色温度算出部を有し、被写体の色温度に応じて、カラーフィルタの色ごとのシェーディングの中心座標と、カラーフィルタの色ごと中心座標から画面周囲まで放射方向のシェーディング補正係数を変更することを変更することを特徴とする請求項１に記載の固体撮像装置。
【請求項８】
色毎のシェーディングの形状を判定する手段を有し、シェーディングの形状が真円出ない場合は、楕円形状か否かを判定し、シェーディングが楕円形状の場合は、楕円形状の補正を行うことを特徴とする請求項１に記載の個体撮像装置。
【請求項９】
２色以上のカラーフィルタを有する撮像素子と、
カラーフィルタの色ごとのシェーディングの中心座標を算出する各色中心座標算出手段と、前記各色中心座標算出手段で算出した各色の中心座標から各色の画面周囲まで放射方向のシェーディング補正係数を算出する放射方向シェーディング補正係数算出手段と、を有し、
前記各色中心座標算出手段で算出した各色中心座標と、前記放射方向シェーディング補正係数算出手段で算出した放射方向シェーディング補正係数から、撮影画像をシェーディング補正した後に、
任意の座標を中心に、
上記中心座標から放射方向へ、像高に応じて輝度信号を下げる補正を行うことを特徴とする固体撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＣＤ型イメージセンサやＣＭＯＳ型イメージセンサなどの固体撮像素子を用いたデジタルカメラや携帯型電子情報機器用カメラなどの固体撮像装置において、固体撮像装置による撮像画像データに対して色シェーディング補正を行うための固体撮像装置の色シェーディング補正装置、このシェーディング補正装置を備えた固体撮像装置、およびこの固体撮像装置の色シェーディング補正方法に関する。
【背景技術】
【０００２】
デジタルカメラの小型化に伴って、それに搭載されるカメラモジュールの小型化および低背化が進んでいる。カメラモジュールの低背化を実現するために、カメラモジュールのレンズ（光学系）とイメージセンサ（固体撮像素子）が近接して配置されることによって、色シェーディングと呼ばれる現象が顕著に見られるようになってきている。
【０００３】
この問題を解決するために、特許文献１では予め各色の色シェーディングの補正値を、画素毎に2次元直行配列で補正テーブルで記憶しておき、撮影時に記録しておいた補正値を読み出して撮影画像の色シェーディング補正を行う。
【０００４】
また、特許文献２では予め色毎に標準的とされる補正曲線を記憶しておき、工程などで均一輝度面を撮影した際に、補正の強さや補正位置などの補正係数を求める。
【０００５】
実際の撮影時には、予め記録した標準補正曲線と、工程などで求めた補正係数を用いて補正を行う。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開2005-341033号公報
【特許文献２】特開2008-177794号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら従来例の方法には、以下の課題がある。
【０００８】
特許文献１では、１画素毎の補正値を保持しなければならず、多くのメモリが必要になるという課題がある。さらに、色シェーディングは撮影条件によっても発生量が変化するため、各撮影条件毎に適切な補正を行うと、更に多くのメモリが必要となる。
【０００９】
特許文献２では、予め記録してある補正係数に対して、補正の強さや、撮影画像内の補正開始座標を変化させて色シェーディングの補正を行っている。しかしながら、レンズや撮像素子の製造バラつき、組立てバラつき等によって色シェーディングの形状もばらつくため、予め記録した補正係数の補正の強さや補正開始座標を変化させるだけでは、色シェーディングのバラつきを十分補正できないという課題がある。
【課題を解決するための手段】
【００１０】
本発明に係る固体撮像装置は、
２色以上のカラーフィルタを有する撮像素子と、
カラーフィルタの色ごとのシェーディングの中心座標を算出する各色中心座標算出手段と、前記各色中心座標算出手段で算出した各色の中心座標から各色の画面周囲まで放射方向のシェーディング補正係数を算出する放射方向シェーディング補正係数算出手段と、を有し、
前記各色中心座標算出手段で算出した各色中心座標と、前記放射方向シェーディング補正係数算出手段で算出した放射方向シェーディング補正係数から、撮影画像をシェーディング補正することを特徴とする。
【発明の効果】
【００１１】
本発明によると、予め均一輝度面を撮影し、その撮影画像から、カラーフィルタの色毎に色シェーディングの補正中心座標と像高０割から１０割までの色シェーディングの補正曲線を算出する。
【００１２】
色ごとの補正中心座標と補正曲線のデータを保持しておけば良くデータ量は少量に抑えることができる。
【００１３】
また、レンズや撮像素子、くみたて等に起因するバラつきが含まれた撮影画像から色シェーディングの補正中心や補正曲線を求めるため、撮像装置毎の色シェーディングのバラつきにも対応できる。
【図面の簡単な説明】
【００１４】
【図１】実施例１の構成図である。
【図２】色シェーディングの現象の説明図である。
【図３】画素内の、色シェーディングの現象の説明図である。
【図４】マイクロレンズがずれた際の、色シェーディングの現象の説明図である。
【図５】カラーフィルタがずれた際の、色シェーディングの現象の説明図である。
【図６】実施例１の色シェーディングの補正方法の説明図である。
【図７】実施例１の補正中心算出方法の説明図である。
【図８】実施例１の補正曲線の説明図である。
【図９】実施例１の補正アルゴリズムである。
【図１０】補正中心と補正曲線を用いた補正方法の説明図である。
【図１１】実施例２の光線入射角度の違いによる色シェーディングの説明図である。
【図１２】実施例２の波長の違いによる色シェーディングの説明図である。
【図１３】実施例２の撮影条件毎の補正値の格納方法である。
【図１４】実施例２の補正アルゴリズムである。
【図１５】実施例２の光源推定方法の説明図である。
【図１６】実施例３の補正中心の求め方の説明図である。
【図１７】実施例３の補正中心の求め方のアルゴリズムである。
【図１８】実施例４の楕円形状の色シェーディング発生のメカニズムである。
【図１９】実施例４の楕円形状の色シェーディング補正値算出の説明図である。
【図２０】実施例５の光量落ち補正の説明図である。
【発明を実施するための形態】
【００１５】
［実施例１］
図１は、本発明の一実施形態に係る固体撮像装置を表す回路図である。鏡筒１０１は、レンズ群１０２、１０４や絞り１０３など、光学撮像素子１０５に結像するための光学素子で構成された、光学ユニットである。撮像素子１０５は２色以上のカラーフィルタを有する撮像素子であり、本発明ではＲＧＢ３色のカラーフィルタを有する撮像素子を想定する。ＡＤ変換部１０６は撮像素子１０５から出力されたアナログ電気信号をデジタル信号へ変換する変換部である。シェーディング補正部１０７はAD変換された画像データに対し、色シェーディングの補正を行う補正ブロックである。画像処理部１０８は色シェーディング補正された画像データに対し、各種補正を行ったり、保存する形式に変換したりするブルックである。ＲＡＭ１０９は処理された画像データを保存したり、シェーディング補正部で使用するシェーディング補正値を保持したりする記憶部である。ＣＰＵ１１０はズーム制御部１１１、露出演算部１１２、フォーカス制御部１１３、色温度推定部１１４などを有する制御ブロックである。レンズ駆動部１１５はＣＰＵ１１０からの制御信号を入力することで、鏡筒１０１を制御する制御部である。
【００１６】
次に、本発明で補正する色シェーディングの現象について説明する。図２は、色シェーディングの現象の説明図である。色シェーディングは画面の位置に応じて、色毎に感度が異なる現象である。例えば、色シェーディングの発生しない理想的な撮像装置で均一輝度面を撮影すると、 各領域でＲＧＢの色比は常に一定になる（２０１）。それに対して、色シェーディングが発生する撮像装置で均一輝度面を撮影すると、画面内の上下や左右の領域で色比が異なったり（２０２）、像高毎に色比が異なったりして（２０３）、画面内の一部が着色することがある。２０１〜２０３において、図上の破線のＲＧＢの出力値を比較すると２０４〜２０６のようになる。２０４は画像２０１の水平出力分布である。横軸が画素の位置で縦軸はその画素の出力値である。画面中央にＲＧＢの出力最大値が揃っている。また、２０４によると、画面中央から画面周辺に向かってＲＧＢの出力が低下しているが、このときのＲＧＢの出力比率、つまり色比は一定である。それに対して、画像２０２の水平出力分布２０５は画面内でＲＧＢの出力最大値が別の位置に存在している。また、ＲＧＢの出力比率も画面の場所によって異なっている。同様に、画像２０３の水平出力分布２０６はＲＧＢの出力最大値は同じ位置にあるが、画面中央と画面周辺でＲＧＢの出力比率が異なっている。このように、画面内の色毎の感度が異なることで、均一輝度面を撮影しても画面内の色毎の出力比率が異なり、画面内の領域ごとに着色が発生する。また、２０４〜２０６では現象の説明のため、水平出力分布を比較したが、実際には２０７に示すように色毎の出力最大値は画面内の２次元平面内に発生するため、画面中央付近の水平出力分布だけでは各色の出力最大値を求めることはできない。 
【００１７】
次に、色シェーディングの発生メカニズムについて説明する。図３は波長の異なる光が画素へ入射したときの、光の経路を示している。ａ）はＣＣＤ、ｂ）は表面照射型ＣＭＯＳ、ｃ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が垂直に入射したときの光の経路を模式的に示している。また、ｄ）はＣＣＤ、ｅ）は表面照射型ＣＭＯＳ、ｆ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が斜めに入射したときの光の経路を模式的に示している。また、３０１はマイクロレンズ、３０２は長波長の光を透過するカラーフィルタ、３０３は短波長の光を透過するカラーフィルタ、３０４はＰＤ（フォトダイオード）、３０５は転送トランジスタ、３０６は配線槽、３０７は遮光膜である。 
【００１８】
一般的に、撮像装置の構成上、像高間で光線入射角度が大きく変化する場合は、ＰＤ３０４を受光しやすくする目的で、像高毎に応じて、ＰＤとマイクロレンズの相対位置を変化させる。ｄ）〜ｆ）でも光線入射角度が変化した場合を想定して、ａ）〜ｃ）よりもマイクロレンズ３０１とカラーフィルタ３０２、３０３の位置を移動している。ここで、ａ）〜ｃ）に示すように、所望の位置にマイクロレンズ３０１やカラーフィルタ３０２、３０３が配置された場合、画素に対して垂直方向から光線を入射すると、波長に関係なくＰＤが光を受光できる。それに対して斜め方向から光線が入射するときは、ＣＣＤではｄ）より波長の長い光は転送トランジスタ３０５にケラレることがわかる。また、表面照射型ＣＭＯＳではｅ）より波長の長い光が配線層３０６にケラレることがわかる。また、裏面照射型ＣＭＯＳではｆ）より波長の長い光が遮光膜３０６にケラレることがわかる。 
【００１９】
以上に示すように、光線の入射角度が変化した際の、画素の構造物によるケラレの発生量は光の波長によって異なる。これは、光線入射角度に応じて、波長ごとの感度が異なることを示している。実際には、像高に応じて光線入射角度が異なるため、画面中央部と比較して、周辺部では波長の長い光は、画素内の構造物によってケラれることが多くなり、感度が低下する。そのため、像高によって色比が異なる色シェーディングが発生する。 
【００２０】
色シェーディングの発生は、マイクロレンズやカラーフィルタの位置ずれによっても発生する。ここでは、マイクロレンズの位置ずれによる色シェーディングの発生について説明する。 
【００２１】
図４は図３の構成でマイクロレンズの位置が所望の位置より左にずれた場合の光の経路の模式図である。ａ）はＣＣＤ、ｂ）は表面照射型ＣＭＯＳ、ｃ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が垂直に入射したときの光の経路を模式的に示している。また、ｄ）はＣＣＤ、ｅ）は表面照射型ＣＭＯＳ、ｆ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が左斜めから入射したときの光の経路を模式的に示している。同様に、ｇ）はＣＣＤ、ｈ）は表面照射型ＣＭＯＳ、ｉ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が右斜めから入射したときの光の経路を模式的に示している。破線部４０１は画素の構造物によってケラレた光で、実線部４０２はＰＤが感光した光である。ａ）〜ｃ）、ｄ）〜ｆ）、ｇ）〜ｉ）をそれぞれ比較すると、光線入射方向とマイクロレンズのずれた方向によって、ＰＤが受光する光の量が色毎に異なる。このため、マイクロレンズの位置が所望の位置と異なる場合、マイクロレンズの変位量と光線入射角度の影響で色比が位置によって異なり、色シェーディングが発生する。 
【００２２】
次に、カラーフィルタの位置ずれによる色シェーディングの発生について説明する。図５は図３の構成でカラーフィルタの位置が所望の位置より左にずれた場合の光の経路の模式図である。ａ）はＣＣＤ、ｂ）は表面照射型ＣＭＯＳ、ｃ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が垂直に入射したときの光の経路を模式的に示している。また、ｄ）はＣＣＤ、ｅ）は表面照射型ＣＭＯＳ、ｆ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が左斜めから入射したときの光の経路を模式的に示している。同様に、ｇ）はＣＣＤ、ｈ）は表面照射型ＣＭＯＳ、ｉ）は裏面照射型ＣＭＯＳセンサの画素に対して、波長の異なる光が右斜めから入射したときの光の経路を模式的に示している。ｄ）〜ｆ）では、長波長側のマイクロレンズを透過した光の一部が、隣接する短波長側のカラーフィルタを透過して、再び長波長側の画素に入射している。これは異なる色の光が同じ画素へ入射したことになり、光学的な混色を発生する。ｇ）〜ｉ）では、2色のカラーフィルタを通過する経路が発生する。このため、カラーフィルタの位置が所望の位置と異なると、カラーフィルタの変位方向と光入射方向の差により画面の位置によって混色量が異なり、色シェーディングが発生する。前述のように、色シェーディングの代表例として、主光線入射角度の変化によるケラレ量が波長ごとに異なる現象と、画素内のマイクロレンズやカラーフィルタが所望の位置からずれ、ケラレ量が異なる現象の2通りが挙げられる。これらの要因によって発生した色シェーディングは、図２に示すように、色ごと最大出力位置が異なり、最大出力位置から周辺にかけての色の低下量も異なる。
【００２３】
次に本発明である、これらシェーディングを補正する方法を説明する。本発明の補正方法は、色毎の中心出力位置を補正中心として、図６は本発明で提案した色シェーディングの補正方法を示している。６０１は均一輝度面を撮影した際に、色シェーディングが発生した画像である。６０１の破線上における、色毎の出力分布は６０２のとおりである。６０２は水平方向の位置が変化するとＲＧＢの色比が異なっており、この分布からも色シェーディングが発生していることが解る。ここで、画面全ての位置で色比が一定値であれば色シェーディングは発生しない。そこで、入力された画像の画素毎の出力値を色毎に最大出力位置の出力値になるようにゲインをかけて補正を行うと、６０３に示すように、位置に関係なく一定の出力が得られる。均一輝度面の各色の出力値が位置に関係なく一定になっているため、位置によって色比の変化も無くなり、発生していた色シェーディングも補正される。 
【００２４】
次に具体的な補正中心の算出方法を示す。図７は補正中心の求め方の手順である。本実施例では、任意の閾値以上の出力値の画素の重心を求めて、その重心位置を補正中心とする。まず、出力の閾値を決定する。均一輝度面を撮影した際に、ある色の出力分布が図７ａ）のようになっていたとする。この図７ａ）の、画面周囲の出力値から最も高い値を求め、その値を閾値とする。ここでは、図７ａ）の画面周囲は破線で示した位置である。この画面周囲７０１上画素の出力値のうち、最も高い出力値を閾値Ｔに設定する。この図７ａ）の場合は、７０１上で最も高い出力値は、７０２の位置だったため、７０２の出力値を閾値Ｔに設定する。次に画面内の出力座標より、閾値Ｔを超える画素の座標の座標平均値を求める。ここで、図７ａ）で求めた閾値Ｔ以上の出力の画素分布が図７ｂ）７０３の領域となったとすると、領域７０３内の画素がｎ個のとき、式（１）、（２）で求められたｎ個の座標の平均値である、座標（ｃｘ、ｃｙ）を補正中心とする。 
【００２５】
cx=1/n*Σxi…（１） 
cy=1/n*Σyi…（２） 
次に具体的な補正曲線の算出方法を示す。図８はある色のシェーディング画像から補正曲線を求める方法を示している。ａ）は色シェーディングの発生した画像である。ａ）のAがシェーディングの最大出力位置、A'が最大出力位置からの像高１０割の位置である。ここで像高１０割の位置は、画面内で最大出力位置から最も離れた位置のことである。そのため、A-A'の出力分布から補正曲線を求めて、Aを中心に像高毎に補正を行えば画面内全てにおいて出力最大値と等しい出力が得られる。これを色毎に行うことで、色毎に画面内の出力が等しくなる。これは見掛け上、色毎に画面内の感度が等しくなったことと同じであり、画面内の色比も等しくなり、色シェーディングは除去される。次に補正曲線を求める。補正曲線は最大出力値と出力分布の商であり、像高毎に求められる。また、同じ像高の出力値と補正値の積は出力最大値となる。 
【００２６】
補正曲線は式（１）で求められる。 
【００２７】
y(x)=a/f(x)‥‥‥‥‥‥‥（１） 
x:像高 
f(x):出力分布 
a:最大出力値 
y:補正曲線 
出力分布ｂ）の補正曲線はｃ）のようになる。 
【００２８】
以上により、補正曲線ｃ）が求められ。出力分布ｂ）との積は、補正出力ｄ）のように一定値となる。この手順で補正曲線を色毎に算出する。また、上記例ではA-A'間の出力値のみで補正曲線を求めたが、ノイズなどによる誤差も考慮して、複数の評価領域から補正曲線を導出する例をｅ）〜ｈ）に示す。ｅ）は補正中心Bから像高１０割のB''''のほかに、B'、B''、B'''も補正曲線の評価領域としている。補正中心BからB'〜B''''への出力分布をｆ）に示す。ここで、各出力分布はノイズも含んだ誤差があるため、それらの平均を求めると、ｇ）のようになる。ｇ）に示すように、B'やB''などは像高値が１０割に満たない。つまり、ｇ）のB-B'間では、e)のB-B'〜B-B''''の４本の出力分布の平均となっているが、ｇ）のB'-B''では、B-B''〜B-B''''の３本の出力分布の平均になる。同様にｇ）のB''-B'''では、B-B'''〜B-B''''の２本の出力分布の平均になり、ｇ）のB'''-B''''間では、B-B''''の出力分布のみになる。そのため、出力分布の平均値を求める際に、対象となる出力分布曲線の本数が変わる箇所で段差が発生する。そこで切り替わりの箇所で、近似曲線を求めたり、重みを変えたりするなど、曲線を滑らかにする処理をしたものがｈ）である。この出力分布の平均曲線より、前述の例と同様にｉ）に示すような補正曲線を求めこれを実画像に対して補正することで、ｊ）に示すように補正が行われる。 
【００２９】
次に撮像装置が画像を撮影した際の、撮影から補正終了までのアルゴリズムを図９に示す。
【００３０】
まず、撮影を行った後（９０１）、撮像素子１０５の信号値がＡＤ変換部１０６に変換されてシェーディング補正部１０７に入力される（９０２）。
【００３１】
次に、予め記録しておいた色シェーディングの色毎の中心座標と色毎の補正曲線を読み出し（９０３）、色毎に色シェーディング補正を行う（９０４）。
【００３２】
次に、色毎の補正中心と補正曲線を用いた補正方法について説明する。ここでは、図９の９０４で行っている補正について図１０を用いて説明する。ａ）は画面の左右で色比の異なる色シェーディングの発生した画像である。ここでは、ａ）の画像を補正する方法を説明する。この画像はＲ、Ｇｒ、Ｇｂ、Ｂの４色のカラーフィルタをもつ撮像素子で撮影されたとすると、色毎の画像が４つあり、それぞれｂ）〜ｅ）のようになる。これら４色の画像には、それぞれ予め求められ補正中心と補正曲線がある。ｂ）〜ｅ）の補正中心を１００１〜１００４とする。これら補正中心を中心として、出力値に対して像高に応じてゲインをかける補正を行う。なお、このときのゲイン量は、予め像高毎のゲイン値を記録した補正曲線を用いる。補正中心１００１〜１００４を中心に、補正曲線に基づいて像高毎に補正を行うと、ｆ）〜ｉ）に示すように各色のシェーディングが補正される。それらシェーディングの補正された画像をａ）と同様に合成することで、ｊ）のような色シェーディングの補正された画像になる。以上に示す通り、実施例１では色シェーディングの発生メカニズムと色シェーディングの補正方法を説明した。 
【００３３】
実施例１で紹介した方法によると、画面内の色毎の感度差を補正し、色シェーディングの発生を抑制できる。 
【００３４】
［実施例２］
実施例２では、撮影条件の変化によって発生する色シェーディングの補正について説明する。色シェーディングは画面内の位置に応じて、色毎の感度が変わる現象である。感度ばらつきの要因として、光線入射角度と光線の波長によって、画面内のケラレ量が異なることを説明した。この光線入射角度は、レンズ群１０２や１０４の間隔を変更するズーム動作や、絞り１０３を変化する絞り動作によって、状態によって変化する。 
【００３５】
図１１は焦点距離や、絞りを変更したときの光線入射角度の変化を示した模式図である。ａ）は焦点距離最短で絞り開放動作の光線経路を示しており、ｂ）はａ）から絞りを絞った状態、ｃ）はａ）の焦点距離を長くした状態を示している。また、１１０１は光線経路、１１０２と１１０４はレンズ、１１０３は絞り、１１０５は撮像素子を示している。ａ）、ｂ）、ｃ）を比較すると、焦点距離や絞りの状態に応じて、光線入射角度が変化していることがわかる。よって、焦点距離や絞りに応じて、色シェーディングの補正中心や補正曲線を変更する必要がある。また、光の波長に関しても、カラーフィルタの透過率分光特性の範囲内で波長ごとに分別されるが、透過率分光も幅があるため、その中でケラれやすい波長とケラレにくい波長がある。そのため、補正中心と補正曲線を求める際に使用した光源の分光特性と、実際の撮影時の光源の分光特性が異なると、所望の補正ができないことがある。 
【００３６】
図１２は異なる波長の光が入射したＣＣＤの画素の断面図を示している。１２０１はカラーフィルタ、１２０２は転送トランジスタ、１２０３は波長の短い入射光、１２０４は波長の長い入射光、１２０５はマイクロレンズ、１２０６はＰＤである。カラーフィルタ１１０１の透過率分光特性は一定の幅を持つため、カラーフィルタ１２０１の透過率分光範囲内であれば、波長の異なる入射光１２０３と１２０４は両方ともカラーフィルタ１２０１を透過し、ＰＤ１２０６が受光する。このとき、遮光物となっている転送トランジスタ１２０２と、入射光１２０３、１２０４の間隔を比較すると、波長の短い入射光１２０３の方が遮光物との間隔が広く、ケラレにくいことが解る。実施例１でも説明したが、波長によって構造物によるケラレ易さが異なるため、同じカラーフィルタを透過した光でも、波長によってはケラレ易さが異なる。つまり、入射光１２０３と入射光１２０４では、ａ）のような撮像面に垂直に入射した場合にはケラレることはないが、光線入射角度が変化した場合、入射光１２０３ではｂ）に示すようにケラレることはないが、入射光１２０４ではｃ）に示すように一部の入射光がケラレる。これは、入射光の分光特性によって、同色画素の画面中央付近で同じ出力を示していても、画面周辺での出力低下量が異なることを示している。それに伴い、入射光の分光特性によって補正中心や補正曲線を変更する必要がある。そこで、本実施例では、色シェーディングの補正中心と補正曲線を焦点距離、絞り、光源毎に求めておき、記憶しておく。そして、実際の撮影時には予め求めた補正パラメータを用いて補正を行う。
【００３７】
図１３にある色の補正値の所持の方法の例を示す。ここでは、絞り値がＡｖ３〜７まで、焦点距離は３５〜３５０mmまで設定でき、色温度は蛍光灯と白熱灯を推定できる撮像装置を考える。 
【００３８】
ａ）は蛍光灯環境下の補正中心のテーブルである。絞り値と焦点距離ごとに、補正中心座標をテーブルに記録している。 
【００３９】
ｂ）は蛍光灯環境下の補正曲線のテーブルである。絞り値と焦点距離ごとに、補正曲線をテーブルを記録している。 
【００４０】
ｃ）は白熱灯環境下の補正中心のテーブルである。絞り値と焦点距離ごとに、補正中心座標をテーブルに記録している。 
【００４１】
ｄ）は白熱灯環境下の補正曲線のテーブルである。絞り値と焦点距離ごとに、補正曲線をテーブルを記録している。 
【００４２】
また、補正テーブルは光源ごとに作成する。実際に補正を行う際には、ホワイトバランスの導出に使用する、色温度推定部１１４の推定結果より、ａ）ｂ）とｃ）ｄ）のどちらのテーブルを使用するかを選択する。 
【００４３】
なお、色温度推定部１１４の動作については
なお、ａ）〜ｄ）の補正値は実施例１の方法で各撮影条件毎に求める。 
【００４４】
また、図１３では、絞り値がAv４、５、６を閾値として、焦点距離が50、100、200mmを閾値として、補正値を切り替えている。これは一例であり、例えば、絞り値がAv４．３のように、閾値Ａｖ４と５の中間値のときは、前後の閾値にある補正値の中間値を用いてもよい。 
【００４５】
実施例２の色シェーディングの補正フローを図１４に示す。
【００４６】
撮影前に焦点距離を決定する（１４０１）。ズーム制御部１１１で任意の焦点距離を設定し、ＣＰＵ１１０からレンズ制御部１１５へ焦点距離情報を送信する。レンズ制御部１１５は焦点距離情報に従い、鏡筒１０１を制御する。
【００４７】
次に、絞り値を決定する（１４０２）。絞り値は任意の値を入力しても、露出演算部１１２より算出された露出条件を入力しても、どちらでもよい。決定した露出条件の絞り値を、ＣＰＵ１１０からレンズ制御部１１５へ送信する。レンズ制御部１１５は焦点距離情報に従い、鏡筒１０１を制御する。
【００４８】
次に、光源の色温度を推定する（１４０３）。光源は色温度推定部１１４より推定する。ここで、光源の推定方法について図１５を用いて説明する。撮影画像をａ）とする。撮影画像ａ）はＲＧＢの色信号で構成されていて、複数の色信号の集まりをブロックとしている。次に以下の算出式（１）、（2）を用いて、撮影画像ａ）内のブロック毎に色評価値（Cx[i]、Cy[i]）を求める。
【００４９】
Cx[i] =（R[i]−B[i]）/ Y[i] × 1024・・・・・・・・・（1） 
Cy[i] =（R[i] + B[i]−2G[i]）/ Y[i] × 1024 ・・・（2）
（ただし、iはブロックの番号、R[i],G[i],B[i]はブロックiに含まれるＲＧＢ画素の平値、Y[i] = R[i] + 2G[i] + B[i]）
次に、求めた色評価値Ｃｘ、Ｃｙ値をブロック毎にｂ）のグラフにプロットする。そして、１５０１の枠より内側にプロットされたものに関してＣｘ座標、Ｃｙ座標の平均値を求める。求められた平均値の座標から光源の種類を推定する。例えば、ｂ）のＡの領域では日陰、Ｂの領域では白熱灯、Ｃの領域では蛍光灯、といったようになる。 
【００５０】
次に、撮影を行い（１５０４）、撮影画像を色シェーディング補正部へ入力する（１５０５）。
【００５１】
次に１５０１〜１５０３で求めた撮影条件より、補正係数を決定する（１５０６）。
【００５２】
次に、決定した補正係数を読み出し（１５０７）、色毎に色シェーディングを補正し（１３０８）、次の補正ブロックへ補正した画像を出力する。補正方法については実施例１で図１０を用いて説明したとおりである。
【００５３】
以上に示す通り、実施例２では撮影条件が変化したときの色シェーディングの発生メカニズムと色シェーディングの補正方法を説明した。
【００５４】
実施例２で紹介した方法によると、撮影条件を変更した場合でも、シェーディングを補正できる。
【００５５】
［実施例３］
実施例１では、色シェーディングの補正中心は均一輝度面を撮影した際に、色ごとの出力値が最も高い領域であると定義した。一方、補正中心はその位置の精度は高いことが望ましいが、鏡筒の構成によっては、ノイズなどの影響で補正中心が正確に求められないことがある。また、補正中心の座標の誤差が大きいと、補正曲線が正確に求まらなかったり、補正中心座標の誤差が大きい状態で補正することによって新たな色ムラが発生したりする懸念がある。そこで実施例３では、実施例１、実施例２で説明した色シェーディング補正中心算出方法よりも、より精度の高い色シェーディングの補正中心の求め方について示す。 
【００５６】
図１６は本実施例の説明図である。まず、撮影した被写体を１６０１とした場合、被写体１６０１から４つの領域１６０２〜１６０５の出力値を求める。ここで領域１６０２〜１６０５は、領域中心１４０６からそれぞれ等間隔の位置ある。また、１６０２と１６０５を結ぶ軸を１６０７とし、同様に１６０３と１６０４を結ぶ軸を１６０８とする。領域中心１６０６は、軸１６０７と軸１６０８の交点である。
【００５７】
次に、領域ごとの出力値を比較する。同じ軸１６０７上の２領域と、軸１６０８上の２領域の出力値を比較する。図１６の場合は、１６０２と１６０５、１６０３と１６０４を比較する。そして、出力値の大きい方向へ領域中心１６０６を移動する。移動方向は、領域１６０２と１６０５を比較したときには軸１６０７上を移動する。
【００５８】
同様に、領域１６０３と１６０４を比較したときには軸１６０８上を移動する。例えば、軸１６０７上の領域１６０２と１６０５を比較して、領域１６０５のほうが出力値が大きかった場合、領域中心１６０６を領域１４０５の方向へ移動する。このとき、図１６ｂ）に示すように、領域１６０２〜１６０５も領域中心１６０６と同じ量移動する。 
【００５９】
同様に、軸１６０８上の領域に対しても同様の処理を行う。このとき、領域１６０２〜１６０５や、補正中心１６０６、軸１６０７、１６０８の適切な移動量は任意の値でよい。 
【００６０】
図１７に本実施例の補正中心の求め方のフローを示す。なお、ここで領域１６０２〜１６０５と軸１６０７、１６０８は領域中心１６０６の位置によって相対的に決まっている。 
【００６１】
つまり、領域１６０６が移動すると、領域１６０２〜１６０５と軸１６０７、１６０８も連動して移動するものとする。
【００６２】
最初に均一輝度面の撮影画像を取得し（１７０１）、画面内の任意の位置に領域中心１６０６を設定する（１７０２）。
【００６３】
次に、領域１６０２と１６０５の出力値を取得し（１７０３）、出力値を比較する（１７０４）。
【００６４】
そして、領域１６０２の出力値が大きければ、軸１６０７上の領域１６０２方向に、領域中心１６０６を任意の距離移動する（１７０５）。 
【００６５】
また、領域１６０５の出力値が大きければ、軸１６０７上の領域１６０５方向に、領域中心１６０６を任意の距離移動する（１７０６）。 
【００６６】
また、領域１６０２と１６０５の出力値が等しければ、移動はしない（１７０７）。 
次に、領域１６０３と１６０４の出力値を取得し（１７０８）、出力値を比較する（１７０９）。 
【００６７】
そして、領域１６０３の出力値が大きければ、軸１６０８上の領域１６０３方向に、領域中心１６０６を任意の距離移動する（１７１０）。 
【００６８】
また、領域１４０４の出力値が大きければ、軸１６０８上の領域１６０４方向に、領域中心１６０６を任意の距離移動する（１７１１）。 
【００６９】
また、領域１６０３と１６０４の出力値が等しければ、移動はしない（１７１２）。 
【００７０】
次に、領域１６０２と１６０５、領域１６０３と１６０４の出力値を取得し（１７１３）、出力値を比較する（１７１４）。 
【００７１】
ここで、比較した領域の出力値が等しければ、領域中心１６０６の座標を補正中心座標とする。 
【００７２】
また、比較した領域の出力値が等しくなければ、フロー１７０３からの処理をくりかえす。 
【００７３】
以上に示す通り、実施例３では色シェーディングの補正中心の求め方について説明した。 
【００７４】
実施例３で紹介した方法によると、最大出力位置付近にノイズが多い場合でも、精度よく補正中心を求めることができる。 
【００７５】
［実施例４］
実施例４では、楕円形状の色シェーディングの補正について説明する。
【００７６】
色シェーディングの変化をカラーフィルタの色毎に分けると、各色の最大出力位置を中心に、出力が同心円状に変化する。このとき、同心円の形状は真円ではなく、楕円形状になることがある。この現象は画素の開口部や遮光物の形状に依存しており、開口部の形状が上下方向と左右方向で異なる場合や、画素周囲の遮光物が上下左右に均等に配置されていない場合に発生する。
【００７７】
この現象について図１８を用いて説明する。ａ）は開口部１８０１の縦横の長さが異なる画素の平面図である。開口部１８０１には転送トランジスタ１８０２が隣接している。また、このＰＤ１８０１に対して、光線が垂直に入射した場合のA-A'の断面図をｂ）、B-B'の断面図をｃ）に示す。また、光線が斜めに入射した場合の断面図Ａ−Ａ’をｄ）、断面図Ｂ−Ｂ’をｅ）に示す。ここで、ｂ）とｃ）は入射光がケラれることなくＰＤに入射しているが、それに対して、光線が斜めに入射したｄ）とｅ）を比較したところ、ｄ）は一部の光がケラれており、ｅ）はケラれていない。つまり、同じ角度で光が入射しても、画素の構造によって、水平方向と垂直方向でケラレ量が異なるため、光線の入射方向によって色毎に感度が変化することがある。そのため、光線入射方向によって色シェーディング量も変化し、楕円形状の色シェーディングが発生する。図１８で説明した画素構造の色シェーディングが発生した場合、そのシェーディングは最大出力位置を中心とした同心円で、円の形状が楕円になることが分かっている。
【００７８】
図１９ａ）に同心円状に発生したシェーディングを、ｂ）にａ）の出力を等高線で結んだ図を示す。図１９ｂ）のような楕円形状のシェーディングに対して真円形状の色シェーディング補正を行うと、適切な補正が行われないため、このような楕円形状のシェーディングに対しては楕円形状の補正を行う必要がある。
【００７９】
次に本実施例で扱う楕円形状のシェーディング補正の方法を示す。まず、実施例１の方法で補正中心と、補正曲線を求める。ここで、今回扱うシェーディングの形状が楕円であるため、シェーディングの出力曲線が最大出力位置からの方向によって異なる。ｃ）はｂ）の等高線上に出力中心位置を中心とした円を一点鎖線で描いたものである。シェーディングの形状が真円であれば、ｃ）の一点鎖線上の出力値は全て等しいが、シェーディングの形状が楕円であるため、ｃ）の一点鎖線上の出力値は位置によって異なり、その変化は光線の入射方向に依存する。ここで、補正中心から任意の出力等高線までの距離のうち、最も短い距離と最も長い距離を求め、それぞれを、最短半径、最長半径と呼ぶ。楕円の最短半径と最長半径は、補正中心を起点に９０°の差があり、０から９０°までの範囲内では、半径は最短半径と最長半径の間の長さを推移している。そこで、最短半径と最長半径の比率から角度に応じて補正値を変更することで、楕円形状の色シェーディングを補正する。まず、ａ）の画像に対して、ｄ）に示すように補正中心１９０１、評価領域１９０２、１９０３を指定する。このとき、評価領域１９０２、１９０３はそれぞれ補正中心から等距離離れていて、評価領域１９０２、１９０３は一定の角度の差がある。この補正中心と評価領域との間隔を間隔１９０４、評価領域１９０２と１９０３の間隔角度を角度１９０５とする。そして、評価領域１９０２と１９０３の出力値を比較して、出力値の大きい方向へ補正中心１９０１を中心とした、回転移動をする。ｅ）は評価領域１９０２、１９０３を回転した後の状態である。この評価領域の比較と回転を何度か繰り返すと、評価領域１９０２と１９０３の値が等しい箇所で安定する。
【００８０】
次に楕円の最長半径と最短半径を求める。まず、角度１９０５の2等分線と、補正中心１９０１を通る2等分線の垂線を求める。このとき、2等分線を軸１９０６、垂線を軸１９０７とする。ここで求まった軸１９０６、軸１９０７上に最長半径と最短半径が存在する。次に補正中心１９０１から等距離で軸１９０６と軸１９０７上の領域１９０８、１９０９の出力を比較する。ここで、領域１９０８のほうが出力値が大きい場合は、軸１９０７上に最長半径があり、軸１９０６上に最短半径がある。また、領域１９０９のほうが、出力値が大きい場合は、軸１９０６上に最長半径があり、軸１９０７上に最短半径がある。ｆ）の例では、領域１９０９のほうが、出力値が大きいため、軸１９０６上に最長半径があり、軸１９０７上に最短半径がある。ここで、補正中心１９０１と領域１９０９の距離を最長半径としたときの、最短半径を求める。領域１９０８の出力を領域１９０９の出力と比較する。領域１９０８のほうが、出力が小さい場合は、軸１９０６上で補正中心の有る方向へ領域１９０８を移動する。また、領域１９０８のほうが、出力が大きい場合は、軸１９０６上で補正中心の無い方向へ領域１９０８を移動する。これを繰り返して、領域１９０８と１９０９の出力が等しくなった位置と、補正中心の位置との距離が最短半径となる。 
【００８１】
次に、補正曲線にかける重み値を算出する。シェーディングの形状が楕円であるため、同じ像高でも補正中心からの角度が異なると、補正中心からの距離が異なる。まず、補正中心と像高１０割の点が通る軸１９１０と軸１９１０上の領域１９１１をｇ）のように求める。
【００８２】
次に、最短半径を求めた方法と同様に、領域１９１１を領域１９０９と比較して、領域１９０９と等しい出力となる位置を軸１７１０上で走査する。領域１９１１の出力が領域１９０９と等しくなった位置と、補正中心との距離を基準半径とする。 
【００８３】
次に楕円の式を用いて、補正曲線の像高を変換する。 
【００８４】
r^2=(x-cx)^2/a^2+(y-cy)^2/b^2
r:像高 
cx:補正中心x座標 
cy:補正中心y座標 
a:楕円比（最短半径/基準半径） 
b:楕円比（最長半径/基準半径） 
上記の式に求める座標x,yを代入すると像高rが算出できる。 
【００８５】
像高rを算出したら、補正曲線から求める座標の補正値を得て補正を行う。 
【００８６】
本実施例では、楕円形状の補正について説明を行った。 
【００８７】
本実施例の方法によると、楕円形状の色シェーディングも補正可能である。 
【００８８】
［実施例５］
実施例１では、色シェーディングの発生原理とその補正方法を説明した。補正後は、図Ｅに示すように、均一輝度面を撮影した場合に出力も均一な画像に補正される。しかしながら、周辺光量落ちのない画像になるため、実際の画像と比較して不自然になる。また、像高値が大きいほど補正量も大きくなり、それに伴いノイズも目立つ。 
【００８９】
そこで、本実施例では、実施例１の補正後に周辺の出力値を下げて自然な周辺光量落ちの画像を撮影し、像高値の高い領域のノイズも目立たなくする。この処理を光量落ち補正という。光量落ち補正は実施例１の補正と同様に補正中心と補正曲線を用いて行う。補正中心は光学中心や実画像の中心など、任意の場所に設定する。また、補正曲線は周辺が暗くならない値を設定する。 
【００９０】
次に、具体的な処理の方法を、図１８を用いて説明する。図２０ａ）は補正前の画面、ｂ）は実施例１の補正を行った画面、ｃ）は本実施例の光量落ち補正を行った画面である。 
【００９１】
ａ）−１の画面の破線上の色毎の出力分布はａ）−２に示している。また、ａ）−３〜ａ）−５は色毎のシェーディングを示している。ａ）の画像が入力されると、実施例１の補正を行い、ｂ）の画像が出力される。 
【００９２】
次に、光量落ち補正を行う。まず、光量落ち補正の補正値を求める。光量落ち補正の補正値は、光量落ち補正の補正中心と補正曲線で、それぞれ、光量落ち補正中心、光量落ち補正曲線という。まず、光量落ち補正中心を求める。ここでは、光量落ち補正中心を実画像中心座標とする。 
【００９３】
次に、光量落ち補正曲線を求める。光量落ち補正曲線はどのような方法で求めてもよいが、ここでは実施例１で補正したＧの補正曲線から導くことにする。実施例１の補正曲線は光学特性によって低下した出力に対して、ゲインを掛けることで、入力された画像の出力値を補正していた。したがって、補正曲線の逆数を掛ければ、実画像中心から光量落ちしたときの画像となる。また、そのまま光量落ち補正を行うと、像高値の大きい領域は光量落ちが大きくなる場合がある。そのため、必要に応じて光量落ち補正曲線の補正量を小さくしてもよい。また、補正曲線はＧの出力値から求めたが、ＲとＢの補正曲線はＧの補正曲線に定数を掛けて求める。これは、色比を一定にした補正曲線を用いることで、光量落ち補正を行うことによる色シェーディングの発生を防ぐためである。 
【００９４】
以上、実施例５で説明した方法によると、実施例１の補正によって周辺光量落ちの不自然になった画像に対して、自然に周辺光量落ちした画像になるよう補正できる。 
【００９５】
また、実施例５の補正を行うことで、実施例１の補正によって強調された像高の高い領域のノイズも見かけ上軽減できる。 
【符号の説明】
【００９６】
１０１  鏡筒
１０２  レンズ群
【図１】
2012156882.tif 000003
【図２】
2012156882.tif 000004
【図３】
2012156882.tif 000005
【図４】
2012156882.tif 000006
【図５】
2012156882.tif 000007
【図６】
2012156882.tif 000008
【図７】
2012156882.tif 000009
【図８】
2012156882.tif 000010
【図９】
2012156882.tif 000011
【図１０】
2012156882.tif 000012
【図１１】
2012156882.tif 000013
【図１２】
2012156882.tif 000014
【図１３】
2012156882.tif 000015
【図１４】
2012156882.tif 000016
【図１５】
2012156882.tif 000017
【図１６】
2012156882.tif 000018
【図１７】
2012156882.tif 000019
【図１８】
2012156882.tif 000020
【図１９】
2012156882.tif 000021
【図２０】
2012156882.tif 000022