以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
まず、図1Aおよび図1Bを参照して、本実施形態における画像処理装置および画像処理方法について説明する。図1Aは、本実施形態における画像処理装置100のブロック図である。図1Bは、本実施形態における画像処理方法(画像処理プログラム)のフローチャートである。図1Bの各ステップは、画像処理装置100の指令に基づいて、すなわち画像処理装置100の各手段により実行される。
図1Aに示されるように、画像処理装置100は、入力手段101、補正手段102(倍率色収差補正部)、検出手段103、判定手段104、修正手段105(色にじみ補正部)、出力手段106、および、記憶手段107を備えて構成される。まず、図1BのステップS1において、画像処理装置100(入力手段101)は、撮影画像を入力画像として取得する。入力画像は、撮影光学系を介して撮像素子で受光することにより得られたデジタル画像(撮影画像)であり、レンズと各種の光学フィルタ類を含む撮影光学系の収差により劣化している。撮影光学系は、レンズだけでなく曲率を有するミラー(反射面)を用いて構成することもできる。
入力画像の色成分は、例えばRGB色成分の情報を有する。色成分としては、これ以外にもLCHで表現される明度、色相、彩度や、YCbCrで表現される輝度、色差信号など一般に用いられている色空間を選択して用いることができる。その他の色空間として、XYZ、Lab、Yuv、JChを用いることが可能である。また、色温度を用いてもよい。撮影画像は、撮像装置と画像処理装置とを有線または無線で接続して取得することができる。また撮影画像は、記憶媒体を介して取得することもできる。
続いてステップS2において、画像処理装置100(補正手段102)は、入力手段101を介して取得した入力画像(撮影画像)の倍率色収差(色ずれ)を補正する(倍率色収差補正工程)。本実施形態において、補正手段102は、倍率色収差の補正処理として、2つの処理(第1の補正処理および第2の補正処理)を実行する。第1の補正処理は、撮影光学系の色ごとの倍率(像の大きさ)の違いを補正する処理であり、設計値上で残存している倍率色収差(第1の倍率色収差)の補正処理である。本実施形態において単に倍率色収差という場合、第1の倍率色収差を意味する。第2の補正処理は、撮影光学系の製造工程で生じる設計値からのずれ分に相当する収差(第2の倍率色収差)を補正する処理である。本実施形態において、第2の倍率色収差を、便宜上、非対称な倍率色収差という。
(倍率色収差の検出と補正)
まず、図27を参照して、設計値上で残存している倍率色収差(第1の倍率色収差)の補正について説明する。図27は、第1の倍率色収差の説明図である。図27(a)は倍率色収差が残存した入力画像の模擬図であり、図27(b)は図27(a)の水平方向(x方向)に沿った断面図である。図27(a)において、x軸は水平方向の位置、y軸は垂直方向の位置、x軸とy軸との交点は画像(入力画像)の中心をそれぞれ示している。図27(a)、(b)中の実線はGプレーン、点線はRプレーン、一点鎖線はBプレーンをそれぞれ表している。
図27(a)、(b)において、光学系は共軸系で倍率色収差以外の収差は補正されており、元の像の強度の形状はRGBで一致して倍率色収差の分だけずれているとする。この場合、図27(b)に示されるように低像高側(x軸とy軸との交点側)では、RプレーンやGプレーンよりもBプレーンの画素値が高い。このため、低像高側の領域では、画像が青くにじんで見える(色にじみが発生しているように見える)。一方、高像高側(x軸とy軸との交点の反対側)では、GプレーンやBプレーンよりもRプレーンの画素値が高い。このため、高像高側の領域では、画像が赤くにじんで見える(色にじみが発生しているように見える)。
このような状態で色にじみ補正を行うと、図27(a)、(b)に示されるように倍率色収差の影響により各色のプレーンがずれている状態であっても色にじみが発生しているものとして処理されてしまう。このため、色にじみ補正を正しく行うことができず、入力画像の色を本来の色に戻す(補正する)ことができない可能性がある。例えば、図27(a)、(b)の場合、RGBの形状がそろうまで色にじみ補正を行おうとすると、RGBが重なっている部分は内側の一部であるため、元の像の形状よりもエッジ部が削られてしまう場合がある。または、エッジ部が削れないようにRGBの形状をGプレーンに合わせようとすると、低像高側ではRプレーンの画素値が低くなり、一方、高像高側ではBプレーンの画素値が低くなる。この結果、色抜けが発生するなどの問題が生じうる。そこで本実施形態では、倍率色収差の補正処理後に、後述の色にじみ補正処理を行う。これにより、光学系により生じる被写体の色にじみを高精度かつ適切に補正することが可能となる。
次に、図23および図24を参照して、入力画像から倍率色収差を検出して補正する方法について説明する。図23は、倍率色収差(第1の倍率色収差)の補正処理(第1の補正処理)を示すフローチャートである。図23の各ステップは、図1BのステップS2の一部を構成する。図24は、倍率色収差の補正処理の説明図である。
まず図23のステップS11において、画像処理装置100(補正手段102)は、入力画像から、倍率色収差による色ずれが顕著に現れるエッジ(エッジ領域)を検出する。本実施形態において、補正手段102は、Y(輝度)プレーンを用いてエッジを検出する。好ましくは、検出対象のエッジは、光学中心からの動径方向に大きく画素値の変化するエッジに限定される。これにより、高精度の色ずれ量を取得することができる。また、Yプレーンにおいて、倍率色収差による色ずれは、一つに混じり合って現れる。このため、画素値が単調増加または単調減少が複数画素続くような、ある程度の幅のあるエッジを検出対象とすることが好ましい。
続いてステップS12において、補正手段102は、ステップS11にて検出された各エッジ(エッジ領域)における色ずれ量を取得する。ここで、色ずれの方向として、光学中心と各エッジとの位置関係により、上/下方向、左/右方向、右斜め上/左斜め下方向、左斜め上/右斜め下方向のいずれかを適用することで、処理の簡略化を図ることができる。
各エッジにおける色ずれ量の取得には、色成分間の相関が用いられる。例えば、色成分間の差分絶対値の和を判定して色ずれ量を取得することができる。Gプレーンに対してRプレーン(またはBプレーン)を色ずれ方向に移動させながら、検出されたエッジ付近の画素において、色成分間の差分絶対値和が最小となる場所を探索する。ここで検出された差分絶対値和が最小となった位置から、Gプレーンに対するRプレーン(またはBプレーン)の色ずれ量を求めることが可能である。ステップS12により求められる色ずれ量の符号は、Gプレーンに対してRプレーン(またはBプレーン)が光学中心方向へずれている場合には負とし、Gプレーンに対してRプレーン(またはBプレーン)が光学中心とは逆方向へずれている場合には正とする。
続いてステップS13において、補正手段102は、ステップS11にて検出された各エッジの像高、および、ステップS12にて取得された各エッジの色ずれ量に基づいて、像高と色ずれ量との関係を求め、補正データを作成する。ここで、像高とは、光学中心に相当する画素(光学中心)からの距離である。補正データは、以下の手順により作成される。
まず、ステップS11にて検出されたエッジの像高をL、ステップS13にて取得された色ずれ量をDとすると、以下の式(1)で表されるように、像高Lに対する色ずれ率Mが求められる。
M=L/(L+D) … (1)
続いて図24(a)に示されるように、補正手段102は、入力画像を像高ごとに8つの領域(h1〜h8)に分割し、検出されたエッジが属する領域を判定する。そして補正手段102は、入力画像内で検出された複数のエッジついて、前述の色ずれ率Mの算出、および、エッジが属する領域の判定を行う。また補正手段102は、像高ごとに分割した8つの領域ごとに色ずれ率Mを集計し、領域ごとに色ずれ率Mの平均値を求め、各領域の色ずれ率を決定する。
続いて図26(b)に示されるように、補正手段102は、像高、および求めた色ずれ率に基づいて、像高と色ずれ率との関係を表す高次の多項近似式F(L)を求め、これを補正データとする。図26(b)は、三次の多項式により補正データを算出した例を示している。
なお、エッジの検出および色ずれ量の取得は、画面内の全てのエッジに対して行ってもよい。ただし、像高ごとに分割した8つの領域で、所定の閾値以上の数の色ずれ率が集計された段階で、エッジの検出および色ずれ量の取得を終了することにより、信頼度を保ちつつ処理の効率化を図ることができる。また、像高ごとに分割した8つの領域のうち、該当するエッジが見つかった領域のみを高次の多項近似式の算出に使用することで、該当するエッジが見つからない領域があった場合でも補正データの作成が可能となる。
続いて、図23のステップS14において、補正手段102は、ステップS13にて作成された補正データを用いて色ずれ(倍率色収差)を補正する。まず補正手段102は、補正対象のプレーン(Rプレーン、Bプレーン)の画素(X,Y)において、以下の式(2)で表されるように、画素(X,Y)の像高Lから色ずれ率Mを求める。ここで、光学中心が(0,0)の座標系であるとする。
M=F(L) … (2)
続いて補正手段102は、以下の式(3−1)、(3−2)で表されるように、色ずれ補正により生成する画素の座標(X1,Y1)を求める。
X1=M×X … (3−1)
Y1=M×Y … (3−2)
補正手段102は、補正対象のプレーンにおいて、座標(X1,Y1)に相当する画素値を、一般的な補間処理により生成し、画素(X,Y)の画素値として設定する。これらの処理を全画素について行うことで、色ずれ補正が行われる。そしてステップS15において、補正手段102は、補正画像を出力する。
(非対称な倍率色収差の検出と補正)
次に、図28を参照して、撮影光学系の製造工程で生じる非対称な倍率色収差(第2の倍率色収差)の補正について説明する。図28は、本実施形態における非対称な倍率色収差(第2の倍率色収差)の説明図である。図28(a)は非対称な倍率色収差が残存した入力画像の模擬図、図28(b)は図28(a)の水平方向(x方向)に沿った断面図である。図28(a)において、x軸は水平方向の位置、y軸は垂直方向の位置、x軸とy軸との交点は画像(入力画像)の中心をそれぞれ示している。図28(a)、(b)中の実線はGプレーン、点線はRプレーン、一点鎖線はBプレーンをそれぞれ表している。
図28(a)、(b)において、光学系は、製造時の形状誤差、または、レンズのチルトやシフトの影響により、完全な回転対称系から崩れた状態であると想定されている。また、図27(a)、(b)の場合と同様に、倍率色収差以外の収差が補正されており、元の像の強度の形状はRGBの間で互いに一致し、倍率色収差の分だけずれているものとする。図28のように非対称な倍率色収差の影響を受けた場合、色のにじみ方が画像の中心に対して対称である図27の場合とは異なり、画像の中心に対して対称な位置に同じ強度および同じ色の物体があっても色のにじみ方は異なる。
図28(a)、(b)において、y軸に対して左側の物体は、低像高側ではRプレーンやGプレーンもよりBプレーンの画素値が高く、高像高側ではGプレーンやBプレーンよりもRプレーンの画素値が高い。逆に、y軸に対して右側の物体は、低像高側ではGプレーンやBプレーンよりもRプレーンの画素値が高く、高像高側ではRプレーンやGプレーンよりもBプレーンの画素値が高い。このように、非対称な倍率色収差により画像の中心に対して非対称に色にじみが発生する場合、図27を参照して説明した前述の補正処理(第1の補正処理)のみでは、このような非対称な色にじみを補正することはできない。また、このような状態で後述の色にじみ補正を行うと、非対称な倍率色収差による色ずれを色にじみが発生しているとして処理され、正しく補正することができず、本来の色に戻すことができないということが生じ得る。
図28のような場合、RGBの形状がそろうまで補正しようとすると、RGBが重なっている部分は内側の一部であるため、元の像の形状よりもエッジ部が削られてしまう。または、図28の場合においてエッジ部が削れないようにGプレーンに合わせようとすると、y軸に対して左側の物体では低像高側でRプレーン、高像高側でBプレーンの画素値がGプレーンの画素値よりも低くなり、色抜けなどが生じ得る。一方、図28の場合において、右側の物体では低像高側でBプレーン、高像高側ではRプレーンの画素値がGプレーンの画素値よりも低くなる。このため、前述のようにy軸に対して左側と対称な位置に同じ強度、同じ色の物体があったとしても、左側とは色のにじみ方や色抜けする色も異なる。また、非対称な倍率色収差の出方によっては、y軸に対して片側が適切な補正ができていても、反対側が補正不足または補正過剰となることもある。
そこで本実施形態では、設計値上で残存している倍率色収差(第1の倍率色収差)、および、非対称な倍率色収差(第2の倍率色収差)を補正した後に、後述の色にじみ補正処理を行う。これにより、光学系により生じる被写体の色にじみを高精度かつ適切に補正することができる。
次に、図25および図26を参照して、入力画像から非対称な倍率色収差を検出して補正する方法について説明する。図25は、非対称な倍率色収差(第2の倍率色収差)の補正処理(第2の補正処理)を示すフローチャートである。図25の各ステップは、図1BのステップS2の一部を構成する。図26は、非対称な倍率色収差の補正処理の説明図である。
まず図25のステップS21において、画像処理装置100(補正手段102)は、入力画像から、倍率色収差による色ずれが顕著に現れるエッジ(エッジ領域)を検出する。エッジの検出には、Y(輝度)プレーンが用いられる。
続いてステップS22において、補正手段102は、ステップS21にて検出された各エッジ(エッジ領域)に関して色ずれ量を取得し、補正量(撮影画像の複数の分割領域のそれぞれに対する補正量)を算出する。ここで、色ずれの方向として、光学中心と各エッジとの位置関係により、上/下方向、左/右方向、右斜め上/左斜め下方向、左斜め上/右斜め下方向のいずれかを適用して処理を簡略化する。各エッジにおける色ずれ量の取得については前述のとおりであるため、その説明は省略する。そしてステップS23において、補正手段102は、ステップS22にて算出した補正量を用いて、非対称な倍率色収差(倍率色収差の非対称性)を補正する。以下、ステップS22、S23の補正データの作成手順および補正の流れについて具体的に説明する。
まずステップS22において、補正手段102は、図26に示されるように画像を円周方向に4つの領域(A〜D)に分割し、前述のエッジが属する領域を判定する。そして補正手段102は、画像内で検出された複数のエッジに関して分割された領域ごとに色ずれ量Dを集計し、領域ごとに色ずれ量Dの平均値を求め、各領域の色ずれ量を決定する。続いて補正手段102は、算出した領域ごとの色ずれ量Dを比較し、補正対象のプレーン(Rプレーン、Bプレーン)の補正量を決定する。
領域A、領域B、領域C、領域Dの補正量(第1の補正量)をそれぞれDa、Db、Dc、Ddとすると、水平方向の補正量DH、垂直方向の補正量DV(第2の補正量)は、以下の式(4−1)、(4−2)のようにそれぞれ表される。
DH=(Dc−Da)/2 … (4−1)
DV=(Db−Dd)/2 … (4−2)
本実施形態において、水平方向の補正量DHは、領域Aと領域Cの色ずれ量から算出され、垂直方向の補正量DVは、領域Bと領域Dの色ずれ量から算出される。また本実施形態において、画像を円周方向に分割しているが、像高方向にも分割することで像高ごとに補正量を変化させて補正対象のプレーンを非線形にシフトすることが可能となる。
撮影光学系201が完全に回転対称な状態である場合、倍率色収差も画面の中心に対して回転対称に発生するため、DH=0、DV=0となる。一方、製造誤差などの影響により撮影光学系201の対称性が崩れると、倍率色収差も回転非対称となり、Dc>Da(DH>0)の場合、補正対象のプレーンを領域C側へシフトすることで補正を行う。一方、Dc<Da(DH<0)の場合、領域A側へシフトすることで補正を行う。同様に垂直方向に関しても、Db>Dd(DV>0)の場合、補正対象のプレーンを領域B側へシフトすることで補正を行い、Dc<Dd(DH<0)の場合、領域A側へシフトすることで補正を行う。
続いてステップS23において、補正手段102は、水平方向の補正量DH、および、垂直方向の補正量DVを、製造誤差などにより発生する非対称な倍率色収差の補正データとして用い、色ずれを補正する。ここで、補正対象のプレーン(Rプレーン、Bプレーン)の画素を画素(X,Y) とする。このとき、水平方向の補正量DH、および、垂直方向の補正量DVを用いて、色ずれ補正により生成される画素の座標(X2,Y2)は、以下の式(5−1)、(5−2)のように表すことができる。
X2=X+DH … (5−1)
Y2=Y+DV … (5−2)
なお、式(5−1)、(5−2)は、光学中心が(0,0)の座標系である。
補正手段102は、補正対象のプレーンにおいて座標(X2,Y2)に相当する画素値を、一般的な補間処理により生成し、画素(X,Y)の画素値とする。これらの処理を全画素について行うことで、色ずれ補正が行われる。本実施形態において、図26に示されるように画像を4分割にして補正量を算出しているが、画像を8分割にして領域ごとの色ずれ量を取得し、その色ずれ量から補正量を算出して補正処理を行ってもよい。このようにステップS23では、ステップS22の補正量に基づいて算出された、撮影画像の中心(光軸中心、補正中心)に対する放射方向とは異なる方向の補正量(第2の補正量)を用いて、第2の倍率色収差を補正する。より好ましくは、放射方向とは異なる方向の補正量として、撮影画像の水平方向の補正量および垂直方向の補正量を用いて第2の倍率色収差を補正する。また本実施形態において、第1の補正量および第2の補正量は、撮影画像の中心に対して対称な第1の位置と第2の位置との間で互いに異なる。
画像から倍率色収差(第1の倍率色収差)および非対称な倍率色収差(第2の倍率色収差)を検出して補正する方法は、前述のとおりであるが、光学系の倍率色収差に関する設計値の情報を併用して補正処理を行ってもよい。設計値の情報を利用することで誤検出の低減または設計値を基準にした設計値からのずれ量として倍率色収差を取り扱うことができる。
続いてステップS3において、画像処理装置100(検出手段103)は、カラー画像を構成する複数の色プレーンのうちいずれかの色プレーンの画素値(信号レベル)が単調増加または単調減少している領域を検出する。そして検出手段103は、検出した領域を色にじみ発生領域と仮判定する(単調増減検出工程)。単調増減検出工程において色にじみ発生領域を判定する方法としては、いくつかの方法が考えられる。本実施形態では、一定の画素区間(所定の区間)の色にじみの画素値の変化特性に基づいて判定を行う。
色にじみは、結像位置が波長により光軸に沿う方向にずれることで発生するため、例えば青色のにじみの場合、青色プレーン(Bプレーン)の焦点が合わない(ピンボケしている)ことになる。ピンボケによる色にじみは、一定の画素区間に渡って存在し、その際の色にじみの画素値変化は、画像のハイライト部からシャドウ部にかけて緩やかに減少する特性を有する。従って、一定の画素区間の色にじみの画素値変化が単調増加または単調減少の特性を有する場合、色にじみが発生している可能性があるため、色にじみ発生領域として仮判定する。
このように本実施形態において、撮像素子は、複数のカラーフィルタを備えている。そして検出手段103は、撮像素子から得られた画像の少なくとも一つのカラーフィルタに対応する色プレーンの信号レベル(画素値)が、所定の区間においていずれかの方向(第1の方向)に単調増加または単調減少している領域(第1の領域)を検出する。ただし本実施形態はこれに限定されるものではなく、色プレーンの信号レベルに代えて、例えば、撮像素子から得られた画像から生成される輝度プレーン(Yプレーン)の信号レベルが単調増加または単調減少している領域を検出するように構成してもよい。すなわち検出手段103は、倍率色収差を補正した撮影画像(収差補正画像)の色信号または輝度信号のレベル(色プレーンまたは輝度プレーンの信号レベル)が所定の区間において第1の方向に単調増加または単調減少している第1の領域を検出する。
ところで、実際には、撮影光学系がコマ収差などの非対称な収差を有する場合、撮影光学系により発生する色にじみは、被写体に対して発生する方向と発生しない方向が存在する。このため、単調増減のみから色にじみ発生領域を判定すると、被写体が色にじみと同系色である場合、被写体の色を色にじみと誤判定する可能性がある。従って、単調増減検出のみでは色にじみ発生領域を正しく判定することができない。
本実施形態において、単調増加または単調減少を検出する領域は、カラー画像の注目画素を中心とした水平方向、垂直方向、または、斜め方向の画素区間、注目画素を端の点とした水平方向、垂直方向、または、斜め方向の画素区間、のいずれかを含む。
単調増減の検出は、まず、色プレーンの画素値傾斜を計算することにより行われる。入力画像が、例えば、Gプレーン、Bプレーン、Rプレーンの3色の色プレーンで構成されている場合、Bプレーンを色にじみ除去対象とし、基準プレーンとしてGプレーンを用いる。Bプレーン、Gプレーンに対するそれぞれの輝度傾斜Blea、Gleaは、以下の式(6)で表されるように算出される。
式(6)において、G(x+1,y)、B(x+1,y)は、それぞれ、Gプレーン、Bプレーンにおける注目画素の右隣の画素値である。G(x−1,y)、B(x−1,y)は、それぞれ、Gプレーン、Bプレーンにおける注目画素の左隣の画素値である。G(x,y+1)、B(x,y+1)は、それぞれ、Gプレーン、Bプレーンにおける注目画素の下隣の画素値である。G(x,y−1)、B(x,y−1)は、それぞれ、Gプレーン、Bプレーンにおける注目画素の上隣の画素値である。本実施形態は、3色の色プレーンで説明するが、画像を構成する色プレーン数により任意の色プレーンで処理を行うことが可能である。
次に、図2乃至図4を参照して、単調増減検出工程の色にじみ発生領域の判定方法について説明する。図2は、本実施形態における単調増減判定処理(単調増減検出工程:ステップS3)を示すフローチャートである。図2の各ステップは、主に、画像処理装置100(検出手段103)により実行される。まずステップS1520において、画像処理装置100は、ISO感度が高いか否か(ISO感度が所定の感度よりも高いか否か)を判定する。ISO感度が高い場合、ステップS1521に移行する。一方、ISO感度が高くない場合、ステップS1522に移行する。
ステップS1522において、画像処理装置100は、入力画像の注目画素を中心とした時の縦・横・斜めの画素区間(所定の区間)に対して、入力信号の画素値変化を解析する。そしてステップS1523において、画像処理装置100は、上記画素区間の入力信号の画素値変化が単調増減の特性を有するか否かを判定(検出)する。その判定の結果、上記の画素区間の入力信号の画素値変化が単調増減の特性を有さない場合、ステップS1524において、画像処理装置100は、注目画素を端の点とした時の縦・横・斜めの画素区間に対して入力信号の画素値変化を解析する。そしてステップS1525において、画像処理装置100は、上記の画素区間の入力信号の画素値変化が単調増減の特性を有するか否かを判定する。
図3は、単調増減判定対象の画素区間が単調増減特性を有する場合の一例を示す図であり、縦軸は画素値、横軸は距離をそれぞれ示している。図4は、単調増減判定対象の画素区間が単調増減特性を有しない場合の一例を示す図であり、縦軸は画素値、横軸は距離をそれぞれ示している。図3および図4に示されるような画素値変化を有する入力信号に対して、画像処理装置100は単調増減判定を行う。図3および図4のそれぞれ示される白い四角は注目画素である。
図3に示されるように、入力信号の画素値変化が単調増減の特性を有する画像は、単調増減判定を行う画素区間内において単調増減の特性を有する。このためステップS1522またはS1524の解析の結果、ステップS1523またはS1525において、画像処理装置100は、画素区間内において単調増減の特性を有すると判定する。一方、図4に示されるような入力信号の画素値変化の特性を有する画像に対しては、単調増減の特性を有さないと判定する。
上記の画素区間の入力信号の画素値変化が単調増減の特性(単調増加の特性または単調減少の特性)を有している場合、ステップS1527において、画像処理装置100は単調増減フラグを立てる。一方、上記の画素区間の入力信号の画素値変化が単調増減の特性(単調増加の特性または単調減少の特性)を有していない場合、ステップS1526において、画像処理装置100は単調増減フラグを立てない。
上述した単調増減判定を、Bプレーンの各画素に対して適用する。その結果、各画素において単調増減フラグが立っていれば「1」、単調増減フラグが立っていなければ「0」をそれぞれ対応させ、単調増減判定結果プレーンとして生成して保持し、後述の色にじみ判定(図1のステップS4)で利用する。単調増減判定結果プレーンの利用方法の詳細については後述する。
次に、図5および図6を参照して、注目画素に対する単調増減判定を行う画素区間の設定方法について説明する。図5(a)〜(d)は、注目画素を中心とした単調増減判定用の画素区間を示す図である。図6(a)〜(h)は、注目画素を端の点とした単調増減判定用の画素区間を示す図である。注目画素を中心とした画素区間の設定方法および注目画素を端の点とした画素区間の設定方法のうち、注目画素を中心とした画素区間の設定方法としては、図5(a)、(b)のように注目画素を中心として水平方向および垂直方向に設定する方法が考えられる。
また、注目画素を中心とした画素区間の設定方法としては、図5(c)、(d)に示されるように注目画素を中心として斜め方向に設定する方法が考えられる。すなわち、斜め方向についても水平方向または垂直方向と同程度の距離の画素区間を設定すれば、等方性を持たせることができる。この場合、斜め方向の角度は、図5(c)、(d)に示されるように水平方向または垂直方向に対して45度の設定に限定される。ただし本実施形態はこれに限定されるものではなく、45度以外の任意の角度を設定することができる。その際の画素区間の距離dは、以下の式(7)を用いて算出される。
式(7)において、xは水平方向、θは水平からの角度をそれぞれ示す。
一方、画像におけるハイライト部周辺の色にじみやシャドウ部周辺の色にじみは、それぞれ、飽和やノイズの影響を受けることにより、色にじみが存在するにも関わらず、判定対象の画素区間内では単調増減の特性を持たず正しく判定できない場合がある。その場合、図6に示されるように、注目画素を端の点として画素区間を設定する方法が効果的である。以上のような方法で単調増減判定を行い、図5および図6に示される画素区間のいずれか1つでも単調増減の特性を有する画素区間が存在する場合、注目画素は単調増減の特性を有する画素であると判定される。
本実施形態では、単調増減判定を行う対象として入力信号の画素値を利用しているが、輝度傾斜を利用しても構わない。その場合、一定の画素区間において輝度傾斜の変化が1回だけ反転する特性を有する場合が色にじみであると判定することが好ましい。画素区間の画素数の適正値は、撮像装置のある撮影条件にて発生する色にじみのうち、最小の色にじみのにじみ幅に合わせるのが効果的である。
色にじみのにじみ幅は、撮像装置の撮影条件(絞り値、焦点距離、フォーカシング精度、画像面内におけるフォーカス位置、撮像素子上の座標等)により様々である。そのため、画素区間の画素数の適正値を、各種の撮影条件により発生する様々な色にじみの最小幅の色にじみに合わせることで、最小幅の色にじみを検出することが可能となる。最大幅の色にじみに関しては、最小幅の色にじみ用に合わせた画素区間を利用しても検出は可能である。
以上のように単調増減判定を行うことにより、検出したい色にじみを抽出することが可能となる。ただし、高いISO感度などの撮影条件によっては、入力信号にノイズが含まれることによりS/N比が低下し、その結果、色にじみが単調増減の特性を有しなくなることが考えられる。その場合、図2のステップS1521において、入力信号に対してデジタルフィルタによるフィルタリング処理を行うことが有効である。本実施形態では、デジタルフィルタをローパスフィルタとした場合について説明するが、これに限定されるものではない。
入力信号にローパスフィルタを適用する方法としては、幾つかの方法が考えられる。例えば、注目画素の重み係数を隣接する画素の2倍の係数とする[1 2 1]のローパスフィルタを適用する場合について説明する。図7は、画像内の3×3画素の領域を示す図である。図7に示されるように画像内の3×3画素のある領域においてpを注目画素としたとき、まず、[1 2 1]のローパスフィルタを水平方向に適用する。このとき、注目画素は以下の式(8)のように表される。
P=(d・1+p・2+e・1)/4 … (8)
隣接する画素も同様に計算すると、図8に示されるようになる。図8は、画像内の3×3画素の領域の各画素に対してローパスフィルタを適用した結果を示す図である。続いて、[1 2 1]のローパスフィルタを垂直方向に適用すると、注目画素は以下の式(9)のように表される。
PP=(B・1+P・2+G・1)/4 … (9)
図9を参照して、ローパスフィルタを適用したときの入力信号の変化の一例について説明する。図9は、各画素に対してローパスフィルタを適用した場合の入力信号の変化の例を示す図である。図9において、横軸は距離(画像上の断面、すなわち注目画素からの画素区間)、縦軸はプレーンの画素値をそれぞれ示している。
図9中の実線はローパスフィルタを適用しない場合、細かい破線は[1 2 1]のローパスフィルタを適用した場合、粗い破線は[1 4 6 4 1]のローパスフィルタを適用した場合をそれぞれ示している。ここで、[1 4 6 4 1]は、注目画素と隣接する画素と更にもう1画素分離れた画素にも重み係数をかけてローパスフィルタを適用することを意味する。このようにローパスフィルタを適用して入力信号を滑らかにすることで、色にじみが本来持つ単調増減の特性を際立たせることが可能となる。なお本実施形態では、ローパスフィルタを水平方向、垂直方向の順番で適用しているが、これに限定されるものではない。ローパスフィルタを逆の順番、すなわち垂直方向、水平方向の順番で適用しても構わない。また、2次元のローパスフィルタ係数を算出してローパスフィルタを水平方向および垂直方向に同時に適用することもできる。
図1Bに戻り、ステップS4において、画像処理装置100(判定手段104)は、ステップS3にて検出手段103により色にじみ発生領域と仮判定された領域(第1の領域)が、色にじみ発生領域(第2の領域)であるか否かを判定する(色にじみ判定工程)。すなわち判定手段104は、撮影光学系の色にじみに関する光学情報および第1の領域に関する情報に基づいて、色にじみが発生している領域(第2の領域)を判定する。光学情報は、例えば、撮影光学系の色にじみが発生する第2の方向に関する情報(色にじみ発生方向の光学情報)である。本実施形態において、色にじみ発生領域は、入力画像を撮影した撮影光学系の色にじみ発生方向の光学情報を用いて判定される。
このように判定手段104は、第1の方向(信号レベルが単調増加または単調減少する方向)と第2の方向(撮影光学系の色にじみが発生する方向)とを比較することにより第2の領域を判定する。判定手段104は、例えば第1の方向と第2の方向とが互いに一致する場合、第1の領域(ステップS3にて検出された領域)が第2の領域(色にじみが発生している領域)であると判定する。
ここで、図10および図11を参照して、単調増減検出工程のみから、色にじみ領域を判定した場合の弊害について説明する。デジタルカメラなどの撮像装置により被写体を撮像して得られた画像には、撮影光学系の球面収差、コマ収差、像面湾曲、非点収差などに起因する画像劣化成分としてのぼけ成分が含まれる。このようなぼけ成分は、無収差で回折の影響もない場合に被写体の一点から出た光束が撮像面上で再度一点に集まるべきものが、ある広がりをもって像を結ぶことで発生する。
ぼけ成分は、光学的には、点像分布関数(Point Spread Function:PSF)により表され、ピントのずれによるぼけとは異なる。また、カラー画像での色にじみも、光学系の軸上色収差、色の球面収差、色のコマ収差が原因であるものに関しては、光の波長ごとのぼけ方の相違と言うことができる。さらに、横方向の色ずれも、光学系の倍率色収差が原因であるものに関しては、光の波長ごとの撮像倍率の相違による位置ずれ又は位相ずれと言うことができる。
点像分布関数(PSF)をフーリエ変換して得られる光学伝達関数(Optical TransferFunction:OTF)は、収差の周波数成分情報であり、複素数で表される。光学伝達関数(OTF)の絶対値、すなわち振幅成分を、MTF(Modulation Transfer Function)といい、位相成分をPTF(Phase Transfer Function)という。MTFおよびPTFはそれぞれ、収差による画像劣化の振幅成分および位相成分の周波数特性である。ここでは、位相成分を位相角として、以下の式(10)のように表される。
PTF=tan−1(Im(OTF)/Re(OTF)) … (10)
式(10)において、Re(OTF)およびIm(OTF)はそれぞれ、OTFの実部および虚部である。
このように、光学系の光学伝達関数(OTF)は、画像の振幅成分と位相成分に対して劣化を与えるため、劣化画像は被写体の各点がコマ収差のように非対称にぼけた状態になる。
図10は、被写体の各点が球面収差のような対称にぼける光学特性の状態で撮影された画像に対し、単調増減検出を行う場合を説明した図である。図10(a)は被写体の画素値断面、図10(b)は撮影光学系のPSF断面、図10(c)は撮影光学系で撮影された被写体の画素値断面を示している。図10(b)に示されるように、撮影光学系が対称な収差特性を有しPSFが対称である場合、被写体の両側のエッジ断面は、両方とも劣化した画像として図10(c)の実線のように撮影される。図10(c)では、比較のため、図10(a)に示される被写体の輝度断面を点線で示している。図10(c)の白い四角を注目画素として、単調増減判定を行うとすると、両エッジとも単調増減領域として判定される。また、色のにじみも実際に発生するため、色にじみ発生領域の判定としては正しく判定される。
図11は、被写体の各点がコマ収差のような非対称にぼける光学特性の状態で撮影された画像に対し、単調増減検出を行う場合を説明した図である。図11(a)は被写体の画素値断面、図11(b)は撮影光学系のPSF断面、図11(c)は撮影光学系で撮影された被写体の画素断面である。図11(b)に示されるように、撮影光学系が非対称な収差特性を有しPSFが非対称である場合、特に片側のエッジのみ大きく劣化する光学特性では、被写体のエッジ断面は、片側のみ大きく劣化した画像として図11(c)の実線のように撮影される。このような撮影画像に対し単調増減検出を行うと、両エッジとも単調増減領域として判定されるが、実際に撮影光学系により発生する色にじみは片側のみであるため、被写体本来の色を色にじみとして判定してしまう弊害が発生する。単調増減のみで色にじみ補正を行うと被写体本来の色を除去することになり、不自然な画像となる場合がある。これを回避しようとすると補正が弱くなってしまう。
そこで本実施形態において、画像処理装置100は、図10(b)や図11(b)に示されるような撮影光学系の色にじみ発生方向に関する光学情報を保持または取得する。そして画像処理装置100は、単調増減検出の単調増減方向と色にじみ発生方向が一致した場合、色にじみ発生領域である判定する。ここで一致とは、厳密に一致する場合だけでなく実質的に一致である場合も含む意味である。
図12を参照して、光学情報について説明する。図12は、本実施形態における光学情報の説明図であり、撮影光学系のPSF断面および光学情報を示している。図12(a)は、図10(b)に示される、撮影光学系のPSFが対称な場合の光学情報である。図12(b)は、図11(b)に示される、撮影光学系のPSFが非対称な場合の光学情報である。例えば、撮影光学系の収差により色にじみが発生する方向には1を持ち、発生しない場合は0を持つ。図12(a)は、色にじみが対称に両側で発生するため光学情報は両側とも1の値を持つ。図12(b)では、色にじみが非対称に発生しており、左側エッジでは色にじみが発生しないため0、右側エッジでは色にじみが発生するため1の値を持つ。
図13は、光学情報および単調増減検出結果に基づいて色にじみ領域を判定する例を示す図である。図13(a)に示されるように、単調増減検出により、例えば、単調減少が検出された場合、その単調減少方向の光学情報を参照し、1を有していれば色にじみ補正領域と判定する。また、図13(b)に示されるように、単調減少方向の光学情報を参照し、0を有していれば被写体の色であると判定する。このように、撮影光学系の収差として色収差が発生する方向と、発生しない方向の情報を有することで、被写体の色と色にじみを正しく判定することができるため、色にじみ補正の精度を向上させることが可能となる。なお、色にじみの発生方向を1、発生しない方向を0としたが、発生の方向がわかればよく、0と1である必要はない。撮影光学系の収差は、像高により変化するため、複数の像高での光学情報を有しておくことで、高精度に補正を行うことが可能となる。補正値を持たない像高では、近傍の補正値より補間生成してもよい。また、撮影光学系の収差は、撮影条件(撮影光学系の焦点距離、被写体距離、絞り値(Fno))でも変化するため、撮影条件ごとに光学情報を記憶または取得することにより、高精度に補正を行うことが可能となる。
図10および図11では、光学情報を1次元の情報として説明したが、撮影画像が2次元配列のデータの場合、光学情報も2次元のデータとして保持してもよい。図14は、光学情報が2次元である場合の説明図である。図14(c)は、光学情報を画面上下左右、斜め45度、135度の8方向のデータとして保持する場合の例を示している。図14では、撮影光学系の色のコマ収差が画面上方向に発生しており、その発生方向に1の光学情報を保持する。色にじみの発生しない方向には0を保持する。単調増減検出を前記8方向で行い、単調減少が検出された方向に光学情報の1が保持されていた場合に色にじみと判定される。単調減少が検出されても、検出された方向に光学情報の1が保持されていなければ被写体の色と判定を行う。
以上のように、画像処理装置100は、撮影光学系の色にじみが発生する方向に関する光学情報を保持または取得する。好ましくは、画像処理装置100は、光学情報を記憶する記憶手段107を有する。より好ましくは、記憶手段107は、撮影条件ごとに光学情報を記憶する。撮影条件は、撮影光学系の焦点距離、被写体距離、絞り値の少なくとも一つを含む。なお、記憶手段107は、画像処理装置100の外部に設けられていてもよい。
そして、画像処理装置100は、単調増減検出時に検出方向と光学情報を参照することにより、高精度に色にじみ領域を判定することが可能となる。なお、単調増減判定を単調減少方向で説明したが、単調増加方向を使用して色にじみ判定を行ってもよい。また、単調増減判定と光学情報の補正値を8方向で説明したが、8方向に限定されるものではない。精度を向上させるため、検出方向の数を増加させてもよい。または、光学情報に関するデータ量を削減するため、検出方向の数を減少させてもよい。
また画像処理装置100は、光学情報として、色にじみ発生方向に加え、色にじみの強度に関する情報(色にじみの強度情報)を保持または取得するように構成してもよい。この場合、更に高精度に補正を行うことが可能となる。図14(b)に示されるように、一般に撮影光学系の収差による色にじみの発生量は方向により異なる。そこで、図14(d)に示されるように、色にじみの発生する方向に色にじみの発生量に関する色にじみの強度情報を追加してもよい。
続いて、図15を参照して、色にじみ強度情報を用いた場合の色にじみ判定について説明する。図15は、光学情報を用いた色にじみ判定処理を示す図であり、光学情報に色にじみ発生方向のみを持つ場合の例を示している。図中の四角で囲まれた注目画素1について色にじみ発生領域の判定を行う場合、まず、注目画素を中心に上下左右、斜め45度、斜め135度の8方向について単調減少判定を行う。図15(a)の場合、高輝度被写体が注目画素の下側に位置するため、注目画素1の単調減少が検出される方向は、上と右上、左上の3箇所が判定される。その3方向の光学情報は色にじみ発生方向を示す「1」であるため、この注目画素1は色にじみ発生領域と判定される。また、同様に注目画素2についても検出を行うと、単調減少方向は上、右上、右、右下が判定される。しかしながら、光学情報の色にじみ発生方向は、右下に発生しない方向を表す「0」を保持しているため、単調減少と光学情報より、最終的な注目画素2の色にじみ検出方向は、上、右上、右の3方向となる。注目画素1、注目画素2共に色にじみ発生が素と判定されるが、図14(b)に示されるように、撮影光学系の色にじみ発生量は方向により異なるため、注目画素1と注目画素2では、色にじみの発生量が異なっている。光学情報に強度情報を持たない場合、色にじみ量を判定できないため、このあとの色にじみ補正工程において補正の強さを変えて補正を行うことができない。よって、注目画素1にあわせて色にじみ補正を強くすると注目画素2では過補正となり、注目画素2にあわせて色にじみ補正を弱くすると注目画素1では、補正不足となってしまう。
そこで、図14(d)のように、光学情報に色にじみの発生方向と、その方向の色にじみ強度情報を追加することが好ましい。図15(a)、(b)は、光学情報に色にじみ強度情報も付加した場合の色にじみ領域の判定方法を示している。図15(b)の注目画素3では、単調減少判定にて上、左上、右上の3方向が判定されるが、光学情報の色にじみ強度もそれぞれ2、3、2と強い色にじみ強度と検出することができる。図15(c)の注目画素4においては、上、右上、左下の3方向が判定されるが、その方向の光学情報の色にじみ強度はそれぞれ3、2、1と注目画素3に対して弱い色にじみ強度が検出される。よって、例えば、検出された方向の色にじみ強度の平均値により、この後の色にじみ補正処理の補正の強さ(画像を修正する強度)を変更することで、色にじみの発生量が方向で異なる場合でもより正確な補正が可能となる。
注目画素3では色にじみ強度の平均値が約2.3であり、また、注目画素4では色にじみ強度の平均値が2.0となり、この値を使って補正の強さを変えることが可能となる。色にじみ強度の平均値を使用する説明を行ったが、これに限定されるものではない。例えば、色にじみ方向と検出された複数の方向の重心方向の色にじみ強度値を使用して色にじみ補正係数を変えてもよい。注目画素3では重心方向が上となるため色にじみ強度は3、注目画素4では重心方向が右上となるため色にじみ強度は2となり、この値を使って補正の強さを変えることが可能となる。重心方向を採用する場合、例えば上、右上、右、右下の4方向の重心を計算すると、重心方向に最も近い方向は右上、右の2方向となる場合がある。この場合、2方向の平均値、2方向のうち大きい方の色にじみ強度、または、2方向のうち小さいほうの色にじみ強度を用いるなどが考えられる。なお本実施形態において、平均値、重心方向を利用することについて説明したが、光学情報の色にじみ強度情報を任意に演算して色にじみ補正時の補正の強さを変えてもよい。
このように、好ましくは、画像処理装置100(修正手段105)は、第1の方向と第2の方向とが複数の方向において互いに一致する場合、複数の方向における色にじみの強度に関する情報を演算して画像を修正する。より好ましくは、修正手段105は、第1の方向と第2の方向とが複数の方向において互いに一致する場合、複数の方向の重心方向における色にじみの強度に関する情報または平均値を用いて画像を修正する。
続いて、図16を参照して、光学情報の算出方法について説明する。図16は、光学情報の算出方法の説明図であり、光学情報として保持する任意の方向での、撮影光学系のGプレーンのPSF断面(実線)とBプレーンのPSF断面(点線)を示している。ここでは、Gプレーンを基準プレーンとし、Bプレーンの色にじみに関して光学情報を算出する方法について説明する。
撮影光学系の色収差により、Gプレーン、Bプレーンは、それぞれの波長帯での収差により、異なったPSF形状となる。また、倍率色収差により、Gプレーン、Bプレーンは、それぞれ、ずれた位置に結像するため、それぞれのPSFのピーク位置も図16(a)に示されるように、ずれた位置で算出される。倍率色収差による各色プレーンのずれは、従来から行われている、各色プレーンに対し異なる歪曲を加える幾何学変換により補正することができる。そのため、図16(b)に示されるように、Gプレーン、BプレーンのそれぞれのPSFのピーク位置を一致させて、図の斜線部にあたる基準であるGプレーンとBプレーンのPSF面積差を色にじみ強度として採用する方法が考えられる。
図16(b)では、ピークよりも左側エッジの面積差よりも右側エッジの面積差が大きいため、右側エッジで大きく色にじみが発生することがわかる。この面積が小さければ色にじみは目立たないため、面積が小さい場合を色にじみが発生しない方向とすることができる。また、面積比より、色にじみ強度を決定することが可能となる。以上により、光学情報の色にじみが発生する方向や色にじみ強度を算出できるが、算出方法としてPSFの面積差を使用する方法に限定されるものではない。例えば、図16(b)において、GプレーンとBプレーンのエッジの傾き差を使用する方法が考えられる。色にじみが発生する場合、エッジの傾きは緩くなる傾向にあるため、傾き差などを利用することにより、光学情報を決定するなどしてもよい。
本実施例では、色にじみ強度を計算する際にピーク値を一致させる方法で説明しているが、ピーク値ではなくPSFの重心が一致をさせて色にじみ強度を算出してもよい。このように本実施形態によれば、光学情報の色にじみ発生方向と、色にじみ強度情報を算出することができる。
図1Bに戻り、ステップS5において、画像処理装置100(修正手段105)は、ステップS4にて判定手段104により色にじみ領域と判定された領域(第2の領域)に対し、色にじみを補正する処理(画像を修正する処理)を行う(色にじみ補正工程)。すなわち修正手段105は、色にじみを低減するように、倍率色収差を補正した撮影画像を修正する。
図17は、青色にじみの典型的な画素値変化を示す図である。図17において、横軸は距離(画像上の断面)であり、縦軸はBプレーン及びGプレーンの画素値である。図17では、左端に飽和輝度を超える高輝度被写体が存在するものとする。そして、本来明るくない光源周囲も、収差やフレアにより光源からにじんだ光により、画素値変化の裾が指数関数的に拡がる。
基準プレーンであるGプレーンでもにじみは無いわけではなく、ある程度の拡がりが存在する。しかし、それは色にじみ除去対象のBプレーンに比べると小さい。また、撮像素子は一定の飽和レベル以上の画素値を測定することはできない。このような画素値変化において、色にじみ除去対象のBプレーンの強度が基準プレーンであるGプレーンの強度を上回ると、青色にじみとなる。
本実施形態では、画像処理装置100は、色にじみ除去対象のBプレーンの画素値変化の傾きによりBプレーンのにじみ量を推定する。そこで、Bプレーンの輝度傾斜Bleaの絶対値に係数k1を乗じることにより、以下の式(11)で表されるように第1の推定にじみ量E1とする。
E1=k1|Blea| … (11)
式(11)において、k1は正値である。ただし、Bプレーンが飽和している領域A1では画素値傾斜は0になってしまい飽和前の輝度傾斜が得られない。
そこで、Bプレーンが飽和している領域A1に対する推定にじみ量E2を、以下の式(12)に示されるように、Gプレーンの画素値変化の輝度傾斜Gleaに基づいて推定する。
E2=k2|Glea| … (12)
式(12)において、k2は正値である。
次に、Bプレーンの画素値に対する非線形変換を行い、飽和度Sを生成する。この非線形変換は、Bプレーンが飽和しているか否かを示すものであり、Bプレーンの強度が飽和している領域では飽和度Sが1となり、Bプレーンの強度が小さい領域では飽和度Sは0となる。飽和度Sは0、1の2値でもよいが、図18に示されるように、飽和度Sは0〜1にかけて連続的に変化する値としてもよい。図18は、Bプレーンの画素値に対する非線形変換の特性図である。
そして、上記の生成した飽和度Sにより、上記のように算出した推定にじみ量E1または推定にじみ量E2を選択する。即ち、飽和度Sが0、1の2値であれば新たな推定にじみ量Eを、
E=E1 (S=0の場合)
E=E2 (S=1の場合)
とする。また、飽和度Sが0〜1にかけて連続的に変化する値であれば、新たな推定にじみ量Eを、
E=(1−S)E1+SE2
とする。
次に、上記の推定にじみ量Eを修正し、実際に除去する量E’を決定する。推定にじみ量(除去量)は、一定のモデルに沿ったものであり、実際のにじみ量とは必ずしも一致しない。例えば、同じBプレーンに検出される光であっても、波長450nmの光と波長400nmの光ではにじみ方が変化するが、ステップS4(色にじみ判定工程)では、これを考慮していない。推定にじみ量(除去量)が過小である場合、青色にじみの除去後も若干の青みが残る。一方、推定にじみ量(除去量)が過大である場合、灰色の背景に対してBプレーンを減らし過ぎ、黄緑色になる場合がある。
特に後者(黄緑色になる場合)は、不自然で観察者に大きな違和感を与える。そこで、ステップS5(色にじみ補正工程)では、一定の色相範囲内でのみ、にじみ除去が作用するよう制限する。このため、まずステップS5において、画素の色度を計算する。R、G、Bの各プレーンの強度に対し、以下の式(13)が成立する。
図19は、式(13)のaを横軸とし、bを縦軸とする色度座標ab面である。図19に示されるように、青色は色度座標ab面の斜線で示す第4象限にある(尚、赤、黄、紫は第1象限、緑、白は第2象限、青緑は第3象限にある)。Bプレーンの強度から推定にじみ量Eを除去すると、B=B−Eとなり、色度座標ab面上では点線矢印のように左上方向へ移動する。矢印の始点が推定にじみ量Eの除去前の色度であり、終点が推定にじみ量Eの除去後の色度である。このことから、作用する色相範囲をa>0かつb<0に制限すると、以下の式(14)が成立する。
B>0.22R+0.68G かつ B>−1.84R+3.30G … (14)
このため、式(14)を満たさない画素に対し、実際に除去する除去量E’=0とし、色にじみ除去対象から外す。これにより、式(14)を満たさない画素は、画素値が影響を受けることがない。図19では、斜線で示す第4象限の領域のみが除去対象となる。
更に、式(14)を満たす画素に対しても、除去量E’を、以下の式(15)を満たすように設定する。
E’=min(E,B−(0.22R+0.68G),B−(−1.84R+3.30G)) … (15)
これにより、除去量E’の除去による色度変化は、図19中の実線矢印で示されるように、第4象限内に留まるようになる。
なお本実施形態において、色度座標ab面の第4象限で制限したが、これに限定されるものではなく、任意の角度で制限してもよい。このとき、以下の式(16)を満たす必要がある。
B>r1・G+r2・R かつ B>r3・G+r4・R … (16)
式(16)において、r1〜r4は制限角θを用いて、以下の式(17)のように算出される。色相制限は、色度座標ab面の原点を通る2本の直線で定義され、θ1、θ2はその2本の直線を表す角度である
これにより、色相制限範囲を超えてBプレーンが減少するのを防ぐことができる。以上のようにして算出した、色にじみの除去対象とする色プレーンの除去量E’を除去量プレーンとして保持し、色にじみ補正処理を行う。除去量プレーンに対しては、上記のローパスフィルタを適用する。なお本実施形態では、色相制限に簡易的なa*b*平面を用いているが、これに限定されるものではなく、3×3のRGB→YUVマトリクスを用いてuv平面にて色相制限処理を行っても構わない。
上記の除去量E’をBプレーンの強度から差し引くことにより、新たなBプレーンを作成する。色にじみ除去対象としては、色にじみ判定ステップS4にて色にじみ領域と判定された画素のみとする。従って、新たなBプレーンの強度は、単調増減判定フラグが「1」ならば、
B=B−E’
単調増減判定フラグが「0」ならば、
B=B
となる。このように、図1のステップS6において、画像処理装置100(出力手段106)は、Bプレーンを修正したカラー画像を出力画像として出力する。
ここで、図7に示される画像内の3×3画素のある領域における単調増減判定結果が、図20に示されるように隣接する画素で単調増減判定フラグの値が切り替わる場合を考える。このような場合、画素の境界部では除去量がばたつき(隣接する画素で除去される場合と除去されない場合が混在すること)、画素値の変化が急峻になり、不自然で観察者に違和感を与える場合がある。そこで、生成した除去量プレーンに対してローパスフィルタを適用する方法が有効である。
また、以下の式(18)により、単調増減判定結果プレーンを用いて色プレーンの各画素のゲインを算出し、除去量に乗算することで、境界部(単調増減判定結果プレーン)に対するスムージング処理を行ってもよい。
図20に示す例では、画素pの除去量E’’は、以下の式(19)のように表される。
以上の方法で、色にじみのみを違和感無く除去することが可能となる。
次に、図21を参照して、本発明の実施例1における撮像装置について説明する。図21は、本実施例における撮像装置200の構成図である。撮像装置200には、撮影画像の色にじみ補正処理(上述の画像処理方法)を行う画像処理プログラムがインストールされており、この色にじみ補正処理は撮像装置200の内部の画像処理部204(画像処理装置)により実行される。
撮像装置200は、撮影光学系201(レンズ)および撮像装置本体(カメラ本体)を備えて構成されている。撮影光学系201は、絞り201aおよびフォーカスレンズ201bを備え、撮像装置本体(カメラ本体)と一体的に構成されている。ただし本実施例はこれに限定されるものではなく、撮影光学系201が撮像装置本体に対して交換可能に装着される撮像装置にも適用可能である。
撮像素子202は、撮影光学系201を介して得られた被写体像(光学像)を光電変換して画像(撮影画像)を得る。すなわち被写体像は、撮像素子202により光電変換が行われてアナログ信号(電気信号)に変換される。そして、このアナログ信号はA/Dコンバータ203によりデジタル信号に変換され、このデジタル信号は画像処理部204に入力される。
画像処理部204(画像処理装置100に相当する)は、このデジタル信号に対して所定の処理を行うとともに、上述の色にじみ補正処理を行う。まず画像処理部204(撮影条件取得手段)は、状態検知部207から撮像装置の撮像条件情報を取得する。撮像条件情報とは、絞り、撮影距離、または、ズームレンズの焦点距離等に関する情報である。状態検知部207は、システムコントローラ210から直接に撮像条件情報を取得することができるが、これに限定されるものではない。例えば撮影光学系201に関する撮像条件情報は、撮影光学系制御部206から取得することもできる。なお、本実施例の色にじみ補正処理(画像処理方法)は、図1Bを参照して説明したとおりである。
図1BのステップS2において、補正手段102は、2つの倍率色収差の補正処理を実行する。前述のとおり、補正手段102は、設計段階で残存している倍率色収差(第1の倍率色収差)の補正と非対称な倍率色収差(第2の倍率色収差)の補正を行う。このように本実施形態において、両方の倍率色収差補正(第1の補正処理、第2の補正処理)の処理を実行するが、非対称な倍率色収差を補正した後に設計段階で残存している倍率色収差を補正するなど、2つの補正処理のいずれを先に行ってもよい。
または、2つの補正処理を並行して(同時にまたは同期間内に)実行することもできる。2つの補正処理を平行して実行する方法としては、例えば図29に示されるように、画像の領域を円周方向と像高方向にそれぞれ分割し、各領域の色ずれ量からそれぞれの補正量を算出することができる。または、図1のステップS2では非対称な倍率色収差に対する補正(第2の補正処理)のみ実行し、設計段階で残存している倍率色収差の補正(第1の補正処理)は、ステップS5の色にじみ補正の際に行ってもよい。この場合、ステップS5において、倍率色収差による色のずれ分を考慮しつつ色にじみ補正処理を実行することになる。
撮影光学系201の色にじみ発生方向に関する光学情報は、記憶部208に保持されている。画像処理部204は、上記撮影条件に該当する光学情報を記憶部208より取得し、色にじみ補正処理を行い、その出力画像は、画像記録媒体209に所定のフォーマットで保存される。表示部205には、本実施例の色にじみ補正処理を行った画像に表示用の所定の処理を行った画像が表示される。ただし本実施例はこれに限定されるものではなく、高速表示のために簡易処理を行った画像を表示部205に表示するように構成してもよい。
本実施例における一連の制御はシステムコントローラ210により行われ、撮影光学系201の機械的な駆動はシステムコントローラ210の指示に基づいて撮影光学系制御部206により行われる。撮影光学系制御部206は、Fナンバーの撮影状態設定として、絞り201aの開口径を制御する。また撮影光学系制御部206は、被写体距離に応じてピント調整を行うため、不図示のオートフォーカス(AF)機構や手動のマニュアルフォーカス機構により、フォーカスレンズ201bの位置を制御する。なお、絞り201aの開口径制御やマニュアルフォーカスなどの機能は、撮像装置200の仕様に応じて実行しなくてもよい。また、撮影光学系201には、ローパスフィルタや赤外線カットフィルタなどの光学素子を設けることができる。
次に、図22を参照して、本発明の実施例2における画像処理システムについて説明する。図22は、本実施例における画像処理システム300の構成図である。なお、本実施例の色にじみ補正処理(画像処理方法)は、図1Bを参照して説明したとおりであるため、その説明は省略する。
図22において、画像処理装置301(図1Aの画像処理装置100に相当する)は、本実施例の画像処理方法をコンピュータに実行させるための画像処理ソフトウエア306を搭載したコンピュータ機器である。撮像機器302は、カメラ、顕微鏡、内視鏡、または、スキャナなどの撮像装置である。記憶媒体303は、半導体メモリ、ハードディスク、または、ネットワーク上のサーバなど、撮影画像を記憶した記憶手段である。
画像処理装置301は、撮像機器302または記憶媒体303から撮影画像データを取得し、所定の画像処理を行った画像データを出力機器305、撮像機器302、記憶媒体303のいずれか一つまたは複数に出力する。また、その出力先を画像処理装置301に内蔵された記憶部に保存することもできる。出力機器305は、例えばプリンタである。また、ネットワークまたはCD−ROM307などの記憶媒体から画像処理ソフトウエア306を画像処理装置301にインストールすることもできる。
画像処理装置301には、モニタである表示機器304が接続されている。このため、ユーザは表示機器304を通して画像処理作業を行うとともに、補正された画像を評価することができる。画像処理ソフトウエア306は、本実施例の色にじみ補正処理(画像処理方法)を行うほか、必要に応じて現像やその他の画像処理を行う。
なお、本実施例における画像処理を行うためのデータの内容や機器間での受け渡しなどに関する情報(補正情報)については、個々の画像データに付帯させることが好ましい。必要な補正情報を画像データに付帯させることで、本実施例の画像処理装置を搭載した機器であれば、適切に本実施例の補正処理を行うことが可能である。また、撮影光学系の色にじみ発生方向に関する光学情報は、本実施例の画像処理装置を搭載した機器の記録部から読み出す方法だけでなく、ネットワークを介して取得してもよく、または、PC、カメラ、レンズなどから情報を取得するように構成することもできる。
次に、本発明の実施例3における撮像装置について説明する。本実施例の撮像装置は、倍率色収差の補正方法が実施例1の補正方法と異なる。具体的には、実施例1では、画像処理部204は、取得した画像(入力画像)から補正量を算出するのに対し、本実施例では、補正量に関する情報を記憶部(記憶手段)などに予め記憶しておき、その情報を補正時に読み出して補正を行う。本実施例における撮像装置の他の構成は、図22を参照して説明した実施例1の撮像装置200と同様であるため、その説明は省略する。
図30を参照して、本実施例における画像処理方法(画像処理プログラム)について説明する。図30の各ステップは、画像処理装置100(画像処理部204)の指令に基づいて、すなわち画像処理装置100の各手段により実行される。なお図30のステップS31、S33〜S37は、図1BのステップS1〜S6とそれぞれ同一であるため、それらの説明は省略する。
まずステップS31において、画像処理装置100(入力手段101)は、撮影画像(入力画像)を取得する。続いてステップS32において、画像処理装置100(補正手段102)は、記憶部(記憶手段107)に記憶されている倍率色収差の補正量に関する情報(倍率色収差補正情報)を取得する。記憶手段107に記憶されている補正量に関する情報は、チャートなどを用いて予め測定された情報であり、設計値の倍率色収差の量からの差分値(ずれ量)である。また補正量に関する情報は、測定した差分値であってもよいし、差分値に基づいて算出された近似値、または、補正時の補正を容易にするために加工された値を利用してもよい。また本実施例において、設計値の倍率色収差の量からの差分値を補正量としているが、これに限定されるものではなく、設計値の倍率色収差および非対称な倍率色収差の両方の情報を補正量として利用してもよい。
続いてステップS33において、補正手段102は、ステップS32にて取得した補正量に関する情報(倍率色収差補正情報)を用いて倍率色収差を補正する。取得した補正量に関する情報には、製造工程での発生する非対称な倍率色収差に関する情報が含まれているため、その情報に基づいて実施例1にて説明した補正処理を実施することで非対称性を低減することができる。以降のステップS34〜S37は、実施例1のステップS3〜S6とそれぞれ同様であるため、それらの説明は省略する。
このように本実施例では、補正量に関する情報を事前に測定する必要があるが、倍率色収差の補正に関する情報を予め保持しておくことにより、取得画像に対する演算量を減らすことができる。このため、本実施例の構成によれば、処理の高速化や処理負荷の軽減が可能となる。なお本実施例において、補正手段102は、ステップS32にて設計値からの差分値を倍率色収差の補正情報として取得しているが、これに限定されるものではない。差分値に代えて倍率色収差そのものを測定して倍率色収差に関する情報を記憶部(記憶手段107)に保持し、その情報を倍率色収差の補正情報として用いてもよい。
好ましくは、各実施例の倍率色収差を補正するステップにおいて、撮影画像から倍率色収差を検出し、検出された倍率色収差に基づいて倍率色収差の補正量を決定する。または、好ましくは、各実施例の倍率色収差を補正するステップにおいて、予め記憶された倍率色収差の補正情報に基づいて倍率色収差の補正量を決定する。
好ましくは、倍率色収差を補正するステップにおいて、撮影光学系の設計値として含まれる第1の倍率色収差を補正する。また好ましくは、倍率色収差を補正するステップにおいて、撮影光学系の設計値からのずれに相当する第2の倍率色収差を補正する。
また各実施例は、以下の処理を実行することによっても実現される。即ち、上述の機能を実現するソフトウエア(プログラム)を、ネットワーク又はCD−ROMなどの各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU、MPUなど)がプログラムを読み出して実行する処理である。
各実施例によれば、倍率色収差補正後の画像に対して、各色プレーンの画素値の単調増加または単調減少判定と結像光学系の色にじみ発生方向の情報を用いて色にじみを補正することにより、カラー画像の色にじみを効果的に補正することが可能となる。このため各実施例によれば、カラー画像における色にじみを効果的に低減可能な画像処理方法、画像処理装置、撮像装置、画像処理プログラム、および、記憶媒体を提供することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。