(57)【特許請求の範囲】
【請求項１】
撮像画像を取得する画像読込部と、
前記撮像画像のうちで所定値以上の輝度を示す高輝度箇所を検出する高輝度箇所検出部と、
前記高輝度箇所を基準として前記撮像画像に第１領域を設定し、前記高輝度箇所に近い領域での彩度を示す第１彩度を前記第１領域の色情報を用いて抽出するとともに、前記撮像画像のうちで前記第１領域よりも前記高輝度箇所から離れた位置に第２領域を設定し、前記第１領域よりも前記高輝度箇所から離れた領域での彩度を示す第２彩度を前記第２領域の色情報を用いて抽出する彩度抽出部と、
前記第２彩度に対する前記第１彩度の値に基づいて、前記撮像画像に現れる色にじみの強さを推定する色にじみ推定部と、
を備えることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記彩度抽出部は、前記高輝度箇所からの距離がそれぞれ相違するように前記第１領域および前記第２領域の組み合わせを複数設定し、
前記色にじみ推定部は、前記第１領域および前記第２領域の組み合わせごとに前記色にじみの強さをそれぞれ求め、前記色にじみの強さを前記色にじみの幅ごとに推定することを特徴とする画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置において、
前記高輝度箇所を中心とする複数の方向で、前記高輝度箇所から周囲への輝度の勾配をそれぞれ求める輝度勾配算出部と、
前記複数の方向のうちで、前記高輝度箇所に対して前記輝度が小さくなるとともに、前記輝度の勾配が最大となる方向を指定方向とする方向指定部と、をさらに備え、
前記彩度抽出部は、前記高輝度箇所の位置および前記指定方向に基づいて、前記第１領域の位置および前記第２領域の位置をそれぞれ設定することを特徴とする画像処理装置。
【請求項４】
請求項３に記載の画像処理装置において、
前記彩度抽出部は、前記指定方向における前記輝度の勾配が所定の閾値よりも大きくなるときに、前記第１彩度および前記第２彩度の抽出処理を行うことを特徴とする画像処理装置。
【請求項５】
請求項１または請求項２に記載の画像処理装置において、
前記彩度抽出部は、前記撮像画像に含まれる複数の前記高輝度箇所から抽出した前記第１彩度の値および前記第２彩度の値をそれぞれ積算し、
前記色にじみ推定部は、前記第１彩度の積算値および前記第２彩度の積算値を用いて、前記色にじみの強さを推定することを特徴とする画像処理装置。
【請求項６】
請求項５に記載の画像処理装置において、
前記撮像画像には、複数の分割領域が設定されるとともに、
前記彩度抽出部は、前記分割領域ごとに前記第１彩度の値および前記第２彩度の値をそれぞれ積算し、
前記色にじみ推定部は、前記第１彩度の積算値および前記第２彩度の積算値を用いて、前記分割領域ごとに前記色にじみの強さをそれぞれ推定することを特徴とする画像処理装置。
【請求項７】
請求項１から請求項６のいずれか１項に記載の画像処理装置において、
前記色にじみ推定部によって推定された色にじみの強さに基づいて、前記撮像画像における前記高輝度箇所の近傍に対して彩度低減処理および色差平滑化処理の少なくとも一方を施す色にじみ補正部をさらに備えることを特徴とする画像処理装置。
【請求項８】
請求項１から請求項７のいずれか１項に記載の画像処理装置と、
被写体を撮像して撮像画像を生成する撮像部と、
を備えることを特徴とする撮像装置。
【請求項９】
撮像画像を取得する画像読込ステップと、
前記撮像画像のうちで所定値以上の輝度を示す高輝度箇所を検出する高輝度箇所検出ステップと、
前記高輝度箇所を基準として前記撮像画像に第１領域を設定し、前記高輝度箇所に近い領域での彩度を示す第１彩度を前記第１領域の色情報を用いて抽出するとともに、前記撮像画像のうちで前記第１領域よりも前記高輝度箇所から離れた位置に第２領域を設定し、前記第１領域よりも前記高輝度箇所から離れた領域での彩度を示す第２彩度を前記第２領域の色情報を用いて抽出する彩度抽出ステップと、
前記第２彩度に対する前記第１彩度の値に基づいて、前記撮像画像に現れる色にじみの強さを推定する色にじみ推定ステップと、
を含むことを特徴とする画像処理方法。
【請求項１０】
請求項９に記載の画像処理方法の各ステップをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像画像の色にじみを補正するための画像処理装置、撮像装置、画像処理方法およびプログラムに関する。
【背景技術】
【０００２】
従来から、電子カメラで撮像された画像において、レンズの色収差に起因する色にじみを画像処理によって除去する方法が種々提案されている。一例として、特許文献１には、白トビした画素の近傍にある紫色の画素を偽色画素とみなして、パープルフリンジ（短波長光の色収差に起因する色にじみ）を除去する技術が開示されている。
【特許文献１】特開２００６−１４２６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１の技術では、高輝度画素の近傍にある紫色の画素が一律に補正されてしまう。したがって、例えば、高輝度箇所の近傍に紫色の被写体が存在する場合には被写体の色まで消されてしまい、必ずしも適切な色にじみの補正が行われない点で改善の余地があった。また、特許文献１の技術では、パープルフリンジ以外の色にじみには対応できない点でも改善の余地があった。
【０００４】
そこで、本発明の目的は、被写体の本来の色構造を維持しつつ、より適切な色にじみの補正を行うための手段を提供することにある。
【課題を解決するための手段】
【０００５】
一の態様に係る画像処理装置は、撮像画像を取得する画像読込部と、高輝度箇所検出部と、彩度抽出部と、色にじみ推定部とを備える。高輝度箇所検出部は、撮像画像のうちで所定値以上の輝度を示す高輝度箇所を検出する。彩度抽出部は、高輝度箇所を基準として撮像画像に第１領域を設定し、高輝度箇所に近い領域での彩度を示す第１彩度を第１領域の色情報を用いて抽出する。また、彩度抽出部は、撮像画像のうちで第１領域よりも高輝度箇所から離れた位置に第２領域を設定し、第１領域よりも高輝度箇所から離れた領域での彩度を示す第２彩度を第２領域の色情報を用いて抽出する。色にじみ推定部は、第２彩度に対する第１彩度の値に基づいて、撮像画像に現れる色にじみの強さを推定する。
【０００６】
上記の一の態様において、彩度抽出部は、高輝度箇所からの距離がそれぞれ相違するように第１領域および第２領域の組み合わせを複数設定してもよい。また、色にじみ推定部は、第１領域および第２領域の組み合わせごとに色にじみの強さをそれぞれ求め、色にじみの強さを色にじみの幅ごとに推定してもよい。
【０００７】
上記の一の態様の画像処理装置は、輝度勾配算出部と、方向指定部とをさらに備えていてもよい。輝度勾配算出部は、高輝度箇所を中心とする複数の方向で、高輝度箇所から周囲への輝度の勾配をそれぞれ求める。また、方向指定部は、複数の方向のうちで、高輝度箇所に対して輝度が小さくなるとともに、輝度の勾配が最大となる方向を指定方向とする。そして、彩度抽出部は、高輝度箇所の位置および指定方向に基づいて、第１領域の位置および第２領域の位置をそれぞれ設定してもよい。
【０００８】
このとき、彩度抽出部は、指定方向における輝度の勾配が所定の閾値よりも大きくなるときに、第１彩度および第２彩度の抽出処理を行うようにしてもよい。
【０００９】
上記の一の態様において、彩度抽出部は、撮像画像に含まれる複数の高輝度箇所から抽出した第１彩度の値および第２彩度の値をそれぞれ積算してもよい。また、色にじみ推定部は、第１彩度の積算値および第２彩度の積算値を用いて、色にじみの強さを推定してもよい。
【００１０】
このとき、撮像画像には、複数の分割領域が設定されていてもよい。また、彩度抽出部は、分割領域ごとに第１彩度の値および第２彩度の値をそれぞれ積算してもよい。そして、色にじみ推定部は、第１彩度の積算値および第２彩度の積算値を用いて、分割領域ごとに色にじみの強さをそれぞれ推定してもよい。
【００１１】
上記の一の態様の画像処理装置は、色にじみ補正部をさらに備えていてもよい。色にじみ補正部は、色にじみ推定部によって推定された色にじみの強さに基づいて、撮像画像における高輝度箇所の近傍に対して彩度低減処理および色差平滑化処理の少なくとも一方を施す。
【００１２】
ここで、一の態様の画像処理装置を備える撮像装置や、あるいは一の態様の画像処理装置の構成を画像処理方法、プログラムおよびプログラム記憶媒体に変換して表現したものも本発明の具体的態様として有効である。
【発明の効果】
【００１３】
本発明の画像処理装置は、被写体の本来の色構造を維持しつつより適切な色にじみの補正を行うことが可能となる。
【発明を実施するための最良の形態】
【００１４】
＜一の実施形態の説明＞
図１は、一の実施形態の画像処理装置としての電子カメラの概略構成を示すブロック図である。電子カメラは、撮像素子１１と、制御部１２と、ＲＯＭ１３と、バッファメモリ１４と、画像記憶部１５と、操作部材１６とを有している。ここで、撮像素子１１、ＲＯＭ１３、バッファメモリ１４、画像記憶部１５および操作部材１６は、それぞれ制御部１２に接続されている。
【００１５】
撮像素子１１は、撮像光学系（不図示）によって結像される被写体像を撮像して撮像画像の画像信号を生成する。この撮像素子１１の受光面には、複数の受光素子がマトリックス状に配列されている。また、撮像素子１１の各受光素子には、赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）のカラーフィルタが公知のベイヤ配列にしたがって配置されている。そのため、撮像素子１１の各受光素子は、カラーフィルタでの色分解によってそれぞれの色に対応する画像信号を出力する。なお、撮像素子１１から出力された画像信号は、Ａ／Ｄ変換回路（不図示）を介して制御部１２に入力される。
【００１６】
制御部１２は、電子カメラの動作を統括的に制御するプロセッサであって、画像処理部１７を有している。この画像処理部１７は、撮像画像のデータに対して各種の画像処理（色補間処理、階調変換処理、輪郭強調処理、ホワイトバランス調整、ＲＧＢ色空間からＹＣｂＣｒ色空間への色変換処理など）を施す。
【００１７】
また、制御部１２は、色にじみ補正処理のプログラムの実行により、高輝度箇所検出部２１、輝度勾配算出部２２、方向指定部２３、彩度抽出部２４、色にじみ推定部２５および色にじみ補正部２６としても機能する。なお、上述した各部の説明についてはいずれも後述する。
【００１８】
ＲＯＭ１３には、制御部１２によって実行される各種のプログラムが記憶されている。また、バッファメモリ１４は、揮発性の記憶媒体（ＳＤＲＡＭなど）で構成されており、制御部１２による画像処理の前工程や後工程で画像のデータを一時的に記憶する役目を果たす。さらに、バッファメモリ１４には、色にじみ補正処理で必要となる各種パラメータのデータも記憶する。
【００１９】
画像記憶部１５は、不揮発性の記憶媒体１８を接続するためのコネクタを有している。そして、画像記憶部１５は、コネクタに接続された記憶媒体１８に対して撮像画像のデータの書き込み／読み込みを実行する。上記の記憶媒体１８は、ハードディスクや、半導体メモリを内蔵したメモリカードなどで構成される。なお、図１では記憶媒体１８の一例としてメモリカードを図示する。
【００２０】
操作部材１６は、電子カメラに対する各種の入力をユーザーから受け付ける。なお、操作部材１６は、例えば、レリーズ釦、十字状のカーソルキー、決定釦などで構成される。
【００２１】
次に、図２の流れ図を参照しつつ、一の実施形態の電子カメラにおける色にじみ補正処理での動作例を説明する。この一の実施形態での色にじみ補正処理は、例えば、レリーズ釦の全押し操作に応じて、記録用の画像のデータを制御部１２が生成するときや、記憶媒体１８に記憶されている画像のデータを制御部１２が後処理でレタッチするときに実行される。
【００２２】
ステップＳ１：制御部１２は、処理対象となるＹＣｂＣｒ形式の画像のデータを取得する。
【００２３】
ここで、記録用の画像を生成するときに色にじみ補正処理が同時に行われる場合、制御部１２は、レリーズ釦の全押し操作に応じて、撮像素子１１を駆動させて被写体像を撮像する。そして、撮像素子１１から出力された画像のデータは、画像処理部１７によって一連の画像処理が施される。これにより、制御部１２がＹＣｂＣｒ形式の画像のデータを取得する。
【００２４】
また、記憶媒体１８に記憶されている画像のデータに対して色にじみ補正処理が行われる場合、制御部１２は、画像記憶部１５を介して記憶媒体１８から画像のデータを取得する。なお、記憶媒体１８から読み出されるデータがＲＡＷデータの場合には、画像処理部１７が所定の画像処理を施すことで、ＹＣｂＣｒ形式の画像のデータを生成すればよい。
【００２５】
ステップＳ２：制御部１２は、色にじみ補正処理に関する９つのパラメータ（ｎ，ｓｕｍＣｂ１〜ｓｕｍＣｂ４，ｓｕｍＣｒ１〜ｓｕｍＣｒ４）を初期化し、各パラメータの値をそれぞれ０値にする。
【００２６】
ここで、「ｎ」には、高輝度箇所の周囲から彩度の情報を抽出した抽出箇所の数が記憶される。一方、ｓｕｍＣｂ１〜ｓｕｍＣｂ４，ｓｕｍＣｒ１〜ｓｕｍＣｒ４の８つのパラメータは、画像の高輝度箇所の周囲から抽出された彩度の積算値を記憶するためのパラメータである。
【００２７】
具体的には、「ｓｕｍＣｂ１」には、高輝度箇所からの距離が１〜２画素の領域における色差Ｃｂの絶対値の積算値が記憶される。「ｓｕｍＣｂ２」には、高輝度箇所からの距離が３〜４画素の領域における色差Ｃｂの絶対値の積算値が記憶される。「ｓｕｍＣｂ３」には、高輝度箇所からの距離が５〜８画素の領域における色差Ｃｂの絶対値の積算値が記憶される。「ｓｕｍＣｂ４」には、高輝度箇所からの距離が９〜１６画素の領域における色差Ｃｂの絶対値の積算値が記憶される。
【００２８】
同様に、「ｓｕｍＣｒ１」には、高輝度箇所からの距離が１〜２画素の領域における色差Ｃｒの絶対値の積算値が記憶される。「ｓｕｍＣｒ２」には、高輝度箇所からの距離が３〜４画素の領域における色差Ｃｒの絶対値の積算値が記憶される。「ｓｕｍＣｒ３」には、高輝度箇所からの距離が５〜８画素の領域における色差Ｃｒの絶対値の積算値が記憶される。「ｓｕｍＣｒ４」には、高輝度箇所からの距離が９〜１６画素の領域における色差Ｃｒの絶対値の積算値が記憶される。
【００２９】
ステップＳ３：制御部１２は、処理対象の画像（Ｓ１）において最初の調査箇所となる画素の位置を指定する。具体的には、Ｓ３での制御部１２は、処理対象の画像のうちの左上隅の画素を最初の調査箇所に指定する。なお、一の実施形態での制御部１２は、左上隅の画素を起点として、１行ずつ左から右に全ての画素を調査箇所に順次指定するものとする。
【００３０】
ステップＳ４：制御部１２の高輝度箇所検出部２１は、現在の調査箇所が高輝度箇所であるか否かを判定する。具体的には、高輝度箇所検出部２１は、現在の調査箇所の輝度（Ｙ）が所定の輝度閾値以上であるときに、現在の調査箇所が高輝度箇所であると判定する。上記要件を満たす場合（ＹＥＳ側）にはＳ５に移行する。一方、上記要件を満たさない場合（ＮＯ側）にはＳ８に移行する。
【００３１】
ここで、画像の色にじみは、高輝度箇所の近傍において特に顕著に現れる。一の実施形態では、後述のように高輝度箇所の周囲の彩度を解析することで、効率よく色にじみの強さを推定できる。
【００３２】
また、Ｓ４での輝度閾値は、画像のデータの階調範囲で約８０％以上の値となるように設定される。一例として、処理対象の画像の階調が８ビット（０〜２５５）の場合、輝度閾値は２００以上の値に設定される。上記の場合において、好ましくは輝度閾値は２２０以上の値に設定され、より好ましくは輝度閾値は２４０程度の値に設定される。
【００３３】
ステップＳ５：制御部１２の輝度勾配算出部２２は、現在の調査箇所から周囲への輝度の勾配（輝度の変化率）を複数の方向で求める。そして、制御部１２の方向指定部２３は、調査箇所に対して輝度が小さくなるとともに、輝度の勾配が最大となる方向を指定方向とする。
【００３４】
一例として、輝度勾配算出部２２は、輝度画像Ｙ（処理対象のＹチャネルの画像）に対して、各々の検出方向が異なる８種類の勾配算出フィルタによってフィルタ演算を行う。これにより、輝度勾配算出部２２は、調査箇所を中心とする８方向（上下左右、右上、左上、右下、左下）の輝度勾配をそれぞれ取得する。なお、図３（ａ）から図３（ｈ）に、各方向に対応する勾配算出フィルタの例をそれぞれ示す。
【００３５】
その後、方向指定部２３は、輝度勾配算出部２２が求めた８つの輝度勾配のうちで、調査箇所に対して輝度が小さくなる（符号が負となる）とともに、輝度勾配の絶対値が最大となるものを選択する。そして、方向指定部２３は、選択された輝度勾配に対応する方向を指定方向とする。なお、上記処理で選択されたＳ５の指定方向は、高輝度被写体の中央から外縁に向かう方向と一致することとなる（図４参照）。
【００３６】
ステップＳ６：制御部１２の彩度抽出部２４は、指定方向（Ｓ５）に対応する輝度勾配の絶対値が閾値以上か否かを判定する。一例として、処理対象の画像の階調が８ビット（０〜２５５）の場合、Ｓ６での閾値は２０程度の値に設定される。
【００３７】
上記要件を満たす場合（ＹＥＳ側）にはＳ７に移行する。なお、Ｓ６のＹＥＳ側の場合には、指定方向の隣接画素と調査箇所との間に一定以上の輝度差があり、現在の調査箇所が高輝度被写体の外縁に位置しているものと考えられる。
【００３８】
一方、上記要件を満たさない場合（ＮＯ側）にはＳ８に移行する。Ｓ６のＮＯ側の場合には、指定方向の隣接画素と調査箇所との間に輝度差が少なく、現在の調査箇所が高輝度被写体の内側に位置しているものと考えられる。このとき、現在の調査箇所を起点として周囲の画素の彩度を抽出すると、色にじみの推定の精度が大きく低下してしまう。そのため、Ｓ６のＮＯ側の場合には、彩度抽出部２４は、現在の調査箇所の周囲の画素から彩度を抽出せずに次の処理に移行する。
【００３９】
ステップＳ７：制御部１２の彩度抽出部２４は、高輝度箇所の周囲の色にじみを解析するために、調査箇所から指定方向に延長する直線上の画素から彩度を抽出する。具体的には、Ｓ７での彩度抽出部２４は以下の処理を実行する。
【００４０】
第１に、彩度抽出部２４は、上記の画素のうち、調査箇所から１〜２画素離れた２つの画素から色差Ｃｂの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｂ１に加算する。同様に、彩度抽出部２４は、上記の画素のうち、調査箇所から１〜２画素離れた２つの画素から色差Ｃｒの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｒ１に加算する。
【００４１】
第２に、彩度抽出部２４は、上記の画素のうち、調査箇所から３〜４画素離れた２つの画素から色差Ｃｂの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｂ２に加算する。同様に、彩度抽出部２４は、上記の画素のうち、調査箇所から３〜４画素離れた２つの画素から色差Ｃｒの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｒ２に加算する。
【００４２】
第３に、彩度抽出部２４は、上記の画素のうち、調査箇所から５〜８画素離れた４つの画素から色差Ｃｂの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｂ３に加算する。同様に、彩度抽出部２４は、上記の画素のうち、調査箇所から５〜８画素離れた４つの画素から色差Ｃｒの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｒ３に加算する。
【００４３】
第４に、彩度抽出部２４は、上記の画素のうち、調査箇所から９〜１６画素離れた８つの画素から色差Ｃｂの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｂ４に加算する。同様に、彩度抽出部２４は、上記の画素のうち、調査箇所から９〜１６画素離れた８つの画素から色差Ｃｒの絶対値をそれぞれ抽出し、その平均値をｓｕｍＣｒ４に加算する。
【００４４】
そして、彩度抽出部２４は、彩度の情報を抽出した抽出箇所の数を示すｎの値をインクリメントする。
【００４５】
なお、調査箇所から指定方向に延長する直線は、高輝度被写体の中央から外縁に向かう方向と一致する。そのため、指定方向における色にじみの幅は、指定方向以外の方向と比べて小さくなり、実際よりも色にじみの幅が大きく判断されるおそれが抑制される（図４参照）。
【００４６】
ステップＳ８：制御部１２は、現在の調査箇所の位置が最後の調査箇所の位置（画像の右下隅の画素）であるか否かを判定する。上記要件を満たす場合（ＹＥＳ側）にはＳ１０に移行する。一方、上記要件を満たさない場合（ＮＯ側）にはＳ９に移行する。
【００４７】
ステップＳ９：制御部１２は、調査箇所の位置を次の画素へシフトさせる。例えば、制御部１２は、調査箇所の位置を１つ右の画素に変更する。なお、現在の調査箇所が画像右端の画素である場合、制御部１２は、１つ下の行の左端の画素を次の調査箇所とする。その後、制御部１２は、Ｓ４に戻って上記動作を繰り返す。
【００４８】
ステップＳ１０：制御部１２の色にじみ推定部２５は、高輝度箇所の周囲における色にじみの強さを、色にじみの幅ごとに推定する。具体的には、Ｓ１０での色にじみ推定部２５は、以下の処理を実行する。
【００４９】
第１に、色にじみ推定部２５は、Ｃｂ成分について幅２画素分の色にじみの強さを示す「ｓｔｒＣｂ１」を下式（１）で求める。また、色にじみ推定部２５は、Ｃｒ成分について幅２画素分の色にじみの強さを示す「ｓｔｒＣｒ１」を下式（２）で求める。
【００５０】
ｓｔｒＣｂ１＝ｍａｘ（｛ｓｕｍＣｂ１−ｓｕｍＣｂ２｝／ｎ，０）    …(1)
ｓｔｒＣｒ１＝ｍａｘ（｛ｓｕｍＣｒ１−ｓｕｍＣｒ２｝／ｎ，０）    …(2)
第２に、色にじみ推定部２５は、Ｃｂ成分について幅４画素分の色にじみの強さを示す「ｓｔｒＣｂ２」を下式（３）で求める。また、色にじみ推定部２５は、Ｃｒ成分について幅４画素分の色にじみの強さを示す「ｓｔｒＣｒ２」を下式（４）で求める。
【００５１】
ＳｔｒＣｂ２＝ｍａｘ（｛ｓｕｍＣｂ２−ｓｕｍＣｂ３｝／ｎ，０）    …(3)
ＳｔｒＣｒ２＝ｍａｘ（｛ｓｕｍＣｒ２−ｓｕｍＣｒ３｝／ｎ，０）    …(4)
第３に、色にじみ推定部２５は、Ｃｂ成分について幅８画素分の色にじみの強さを示す「ｓｔｒＣｂ３」を下式（５）で求める。また、色にじみ推定部２５は、Ｃｒ成分について幅８画素分の色にじみの強さを示す「ｓｔｒＣｒ３」を下式（６）で求める。
【００５２】
ＳｔｒＣｂ３＝ｍａｘ（｛ｓｕｍＣｂ３−ｓｕｍＣｂ４｝／ｎ，０）    …(5)
ＳｔｒＣｒ３＝ｍａｘ（｛ｓｕｍＣｒ３−ｓｕｍＣｒ４｝／ｎ，０）    …(6)
なお、本明細書において、「ｍａｘ（Ａ，０）」は、Ａまたは０のうちの最大値を返す関数を示すものとする。したがって、ｍａｘ（Ａ，０）の値は、Ａが正のときはＡとなり、Ａが負または０値のときは０値となる。
【００５３】
ここで、処理対象の画像に幅２画素分の色にじみが生じている場合を前提として、Ｓ１０での処理を説明する。上述のケースでは、高輝度箇所からの距離が１〜２画素の領域において画像の彩度が大きくなる。その結果、高輝度箇所からの距離が１〜２画素の領域での彩度を示すｓｕｍＣｂ１，ｓｕｍＣｒ１の値がそれぞれ大きくなる。一方、高輝度箇所からの距離が３〜４画素の領域での彩度を示すｓｕｍＣｂ２，ｓｕｍＣｒ２の値は、ｓｕｍＣｂ１，ｓｕｍＣｒ１の値と比べて相対的に小さくなる。よって、ｓｕｍＣｂ１とｓｕｍＣｂ２との差（同様にｓｕｍＣｒ１とｓｕｍＣｒ２との差）を求めると、幅２画素分の色にじみの強さを推定できる。
【００５４】
また、上述のケースにおいて、高輝度箇所からの距離が３画素以上離れた領域では、色にじみによって画像の彩度が変化することはない。そのため、ｓｕｍＣｂ２〜ｓｕｍＣｂ４の３つ（同様にｓｕｍＣｒ２〜ｓｕｍＣｒ４の３つ）はいずれも値が近くなり、式（３）から式（６）の演算結果は非常に小さな値となる。このことからも、一の実施形態では、色にじみの幅ごとに色にじみの強さを精度よく推定できることが分かる。なお、画像の色にじみの幅が異なる場合でも、上述のケースと同様の考え方によって、色にじみの幅ごとに色にじみの強さを推定できることはいうまでもない。
【００５５】
さらに、上述のケースにおいて、高輝度箇所の近傍に彩度の高い被写体が存在する場合を考える。この場合にはｓｕｍＣｂ１（またはｓｕｍＣｒ１）が大きな値となるが、同様にｓｕｍＣｂ２（またはｓｕｍＣｒ２）も大きな値となる。そのため、幅２画素分の色にじみの強さを示すｓｔｒＣｂ１（またはｓｔｒＣｒ１）の値はほぼ０値となる。これにより、後述する色にじみ補正部２６での処理のときに、高輝度箇所の近傍に位置する被写体の色が消されてしまうことを抑制できることが分かる。
【００５６】
ステップＳ１１：制御部１２の色にじみ補正部２６は、色にじみ補正マップを生成する。具体的には、Ｓ１１での色にじみ補正部２６は、以下の（イ）から（ヘ）の処理を実行する。
【００５７】
（イ）色にじみ補正部２６は、輝度画像Ｙにおける各々の高輝度箇所の輝度値をＮ倍して、輝度画像Ｙ０を生成する。上記のＮの値は、例えば「４」程度に設定される。
【００５８】
ここで、輝度画像Ｙ０において、高輝度箇所の輝度値をＮ倍するのは以下の理由による。一般的に、撮像画像の高輝度箇所は白トビの状態にある場合が多く、高輝度箇所の輝度値は実際の被写体の明るさと比べて小さい値となっていることが多い。上記のような高輝度箇所の本来の明るさは、輝度値で表された明るさの数倍以上となる。そして、撮像画像の色にじみは光を放っている被写体の周囲で特に強くなる。
【００５９】
そのため、一の実施形態では、高輝度箇所の輝度値をＮ倍にすることで、輝度画像Ｙ０を被写体の本来の明るさに近づけている。これにより、高輝度箇所の周囲における画像の状態も本来の状態により近づけることができる。
【００６０】
（ロ）色にじみ補正部２６は、輝度画像Ｙ０を半径３画素のガウシアン型フィルタで平滑化して、輝度画像Ｙ１を生成する。
【００６１】
（ハ）色にじみ補正部２６は、輝度画像Ｙ０を半径６画素のガウシアン型フィルタで平滑化して、輝度画像Ｙ２を生成する。
【００６２】
（ニ）色にじみ補正部２６は、輝度画像Ｙ０を半径９画素のガウシアン型フィルタで平滑化して、輝度画像Ｙ３を生成する。
【００６３】
（ホ）色にじみ補正部２６は、撮像画像の注目画素（ｘ，ｙ）について、下式（７）の演算を行って、Ｃｂ成分の色にじみ補正マップにおける注目画素（ｘ，ｙ）での階調値「ｍａｐＣｂ（ｘ，ｙ）」を求める。なお、色にじみ補正部２６は、処理対象の画像の全画素でそれぞれｍａｐＣｂ（ｘ，ｙ）の値を求めて、Ｃｂ成分の色にじみ補正マップを生成する。
【００６４】
【数１】
0005200645.tif 000002
（へ）色にじみ補正部２６は、撮像画像の注目画素（ｘ，ｙ）について、下式（８）の演算を行って、Ｃｒ成分の色にじみ補正マップにおける注目画素（ｘ，ｙ）での階調値「ｍａｐＣｒ（ｘ，ｙ）」を求める。なお、色にじみ補正部２６は、処理対象の画像の全画素でそれぞれｍａｐＣｒ（ｘ，ｙ）の値を求めて、Ｃｒ成分の色にじみ補正マップを生成する。
【００６５】
【数２】
0005200645.tif 000003
なお、上記の式（７），式（８）は、処理対象の画像の階調が８ビットの場合の例である。例えば、処理対象の画像の階調が１６ビットの場合には、上記の式（７），式（８）の分母は（Ｎ×６５５３６）となる。
【００６６】
上記のように、Ｓ１１での色にじみ補正部２６は、色にじみの幅に対応するフィルタサイズの平滑化フィルタによって輝度画像Ｙ０を平滑化し、輝度画像Ｙ１〜Ｙ３をそれぞれ生成している。なお、色にじみ除去効果を十分確保するために、上記の平滑化フィルタのサイズは、色にじみの幅よりもそれぞれ若干大きく設定されている。
【００６７】
また、色にじみ補正部２６は、元の輝度画像Ｙ０と、各輝度画像Ｙ１〜Ｙ３とのそれぞれの差を用いて色にじみ補正マップを生成している。
【００６８】
ここで、撮像画像の色にじみは、高輝度箇所の色成分がボケて周囲ににじみだすことで生じる。例えば、ＲＧＢのボケ具合の相違によってＲ成分の色にじみが生じると、色差Ｃｒの階調値の状態は図５（ａ）に示すようになる。
【００６９】
一方、元の輝度画像Ｙ０と輝度画像Ｙ１との差分の絶対値は、ボケによる画像の変化に相当し、その波形は図５（ａ）のものに近似する（図５（ｂ）参照）。そして、輝度画像Ｙ０と輝度画像Ｙ１との差分の絶対値に、色にじみの推定値（例えば、ｓｔｒＣｒ１）を乗算すれば、色にじみの状態を十分に再現しうることが分かる。そのため、一の実施形態のＳ１１では、輝度成分を平滑化してその差を求めることで色成分のボケを再現している。
【００７０】
ステップＳ１２：色にじみ補正部２６は、色にじみ補正マップ（Ｓ１１）に基づいて、色差画像Ｃｂ，Ｃｒ（処理対象のＣｂ，Ｃｒチャネルの画像）の彩度をそれぞれ低減する。具体的には、色にじみ補正部２６は、色にじみ補正マップの値の分だけ、色差画像Ｃｂ，Ｃｒから色差の絶対値を低減させる。これにより、色にじみ補正部２６は色差画像Ｃｂ２，Ｃｂ２を生成する。
【００７１】
例えば、色にじみ補正部２６は、下式（９）または下式（１０）のいずれかの演算によって、色差画像Ｃｂ２の注目画素（ｘ，ｙ）での階調値「Ｃｂ２（ｘ，ｙ）」を求める。
【００７２】
【数３】
0005200645.tif 000004
また、色にじみ補正部２６は、下式（１１）または下式（１２）のいずれかの演算によって、色差画像Ｃｒ２の注目画素（ｘ，ｙ）での階調値「Ｃｒ２（ｘ，ｙ）」を求める。
【００７３】
【数４】
0005200645.tif 000005
ここで、Ｓ１２での色にじみ補正部２６は、処理対象の画像の全画素でそれぞれＣｂ２（ｘ，ｙ），Ｃｒ２（ｘ，ｙ）の値を求めるものとする。なお、本明細書において、「ｍｉｎ（Ａ，０）」は、Ａまたは０のうちの最小値を返す関数を示すものとする。
【００７４】
ステップＳ１３：色にじみ補正部２６は、色差画像Ｃｂ２，Ｃｒ２をそれぞれ半径１２画素程度のガウシアン型フィルタで平滑化する。この平滑化後の各画像を色差画像Ｃｂ３，Ｃｒ３と称する。その後、色にじみ補正部２６は、色差画像Ｃｂ３，Ｃｒ３を用いて、色差画像Ｃｂ４，Ｃｂ４を生成する。
【００７５】
具体的には、色にじみ補正部２６は、下式（１３）または下式（１４）のいずれかの演算によって、色差画像Ｃｂ４の注目画素（ｘ，ｙ）での階調値「Ｃｂ４（ｘ，ｙ）」を求める。
【００７６】
【数５】
0005200645.tif 000006
また、色にじみ補正部２６は、下式（１５）または下式（１６）のいずれかの演算によって、色差画像Ｃｒ４の注目画素（ｘ，ｙ）での階調値「Ｃｒ４（ｘ，ｙ）」を求める。
【００７７】
【数６】
0005200645.tif 000007
なお、Ｓ１３での色にじみ補正部２６は、処理対象の画像の全画素でそれぞれＣｂ４（ｘ，ｙ），Ｃｒ４（ｘ，ｙ）の値を求めるものとする。
【００７８】
Ｓ１３での色にじみ補正部２６は、色差画像Ｃｂ２，Ｃｒ２をさらに平滑化して、色差画像Ｃｂ３，Ｃｒ３を生成する。そして、色にじみ補正部２６は、色差画像Ｃｂ３，Ｃｒ３での平滑化による色差の変化が色にじみ補正マップの値以下となるように、式（１３）から式（１６）で平滑化の効果を制限している。このＳ１３での平滑化によって、色にじみ補正部２６は、Ｓ１２での彩度低減処理で残った色にじみをさらに除去するとともに、彩度の過剰な低減により生じた補正痕を修正する。これにより、色差画像Ｃｂ４，Ｃｂ４では、自然な色構造を再現することができる。
【００７９】
なお、上記のＳ１３での平滑化の効果は、色にじみ補正マップが値をもつ箇所のみ適用されるので、色にじみのない箇所の色構造はそのまま保存される。
【００８０】
ステップＳ１４：色にじみ補正部２６は、初期状態の輝度画像Ｙと、色差画像Ｃｂ４，Ｃｒ４（Ｓ１３で取得したもの）とからなる画像のデータを、色にじみ補正処理後の画像のデータとして出力する。以上で、図２の流れ図の説明を終了する。
【００８１】
上述した一の実施形態の電子カメラでは、高輝度箇所からの距離が異なる２つの領域から抽出した彩度の大きさの違いに基づいて、撮像画像に現れる色にじみの強さを推定する。そして、電子カメラは、推定した色にじみの強さに基づいて色にじみ補正マップを生成し、この色にじみ補正マップを用いて彩度低減処理および色差平滑化処理を実行する。
【００８２】
これにより、一の実施形態では、色にじみの強さに応じた撮像画像の補正が行われるとともに、色にじみのない箇所では色補正がほとんど行われなくなる。よって、被写体の本来の色構造を維持しつつ、より適切な色にじみの補正を行うことが可能となる。
【００８３】
＜他の実施形態の説明＞
図６は、他の実施形態に係る画像処理装置の構成例を示すブロック図である。他の実施形態では、コンピュータ３０に画像処理プログラムを実行させることで画像処理装置の機能を実現する。よって、他の実施形態の構成においても、上述の一の実施形態とほぼ同様の効果を奏することができる。
【００８４】
画像処理装置を構成するコンピュータ３０は、ＣＰＵ３１、記憶装置３２、画像入力部３３および入出力インターフェース３４、バス３５を有している。ＣＰＵ３１、記憶装置３２、画像入力部３３および入出力インターフェース３４は、バス３５を介して相互に接続されている。さらに、入出力インターフェース３４を介して、入力装置３６とモニタ３７とがコンピュータに接続されている。そして、入出力インターフェース３４は、入力装置３６からの各種入力を受け付けるとともに、モニタ３７に対して表示用のデータを出力する。
【００８５】
ＣＰＵ３１は、画像処理プログラムを実行するプロセッサである。他の実施形態では、ＣＰＵ３１が画像処理プログラムを実行することで、一の実施形態の制御部１２、画像処理部１７、高輝度箇所検出部２１、輝度勾配算出部２２、方向指定部２３、彩度抽出部２４、色にじみ推定部２５および色にじみ補正部２６の各動作がソフトウェア的に実現される。
【００８６】
記憶装置３２は、上記の画像処理プログラムと、プログラムの実行に必要となる各種のデータを保持する。なお、他の実施形態での記憶装置３２は、ハードディスクや、不揮発性の半導体メモリなどで構成される。
【００８７】
画像入力部３３は、処理対象となる画像のデータや、記憶装置３２に記憶されるプログラムを外部から読み込むときに用いられる。例えば、画像入力部３３は、着脱可能な記憶媒体からデータを取得する読込デバイス（光ディスクの読込装置など）や、公知の通信規格で外部の装置との通信を行う通信デバイス（ＵＳＢインターフェースや、無線ＬＡＮモジュールなど）で構成される。
【００８８】
＜実施形態の補足事項＞
（１）上述の一の実施形態では、色にじみ補正部２６が彩度低減処理および色差平滑化処理の両方を行う例を説明した。しかし、画像処理装置は、彩度低減処理（Ｓ１２）および色差平滑化処理（Ｓ１３）のいずれか一方のみを行うようにしてもよい。
【００８９】
例えば、画像処理装置が彩度低減処理を行なう一方で、色差平滑化処理を省略する場合には、以下のようにすればよい。この場合、画像処理装置は、図２のＳ１からＳ１２までの処理を実行した後、Ｓ１３の処理を省略する。その後、Ｓ１４での画像処理装置は、初期状態の輝度画像Ｙと、色差画像Ｃｂ２，Ｃｒ２（Ｓ１２で取得したもの）とからなる画像のデータを、色にじみ補正処理後の画像のデータとして出力すればよい。
【００９０】
例えば、画像処理装置が色差平滑化処理を行なう一方で、彩度低減処理を省略する場合には、以下のようにすればよい。この場合、画像処理装置は、図２のＳ１からＳ１１までの処理を実行した後、Ｓ１２の処理を省略する。その後、Ｓ１３での画像処理装置は、初期状態の色差画像Ｃｂ，Ｃｒを平滑化して、色差画像Ｃｂ３，Ｃｒ３を生成する。そして、Ｓ１３での画像処理装置は、式（１３）から式（１６）に代えて、下式（１７）から下式（２０）によって、Ｃｂ４（ｘ，ｙ）およびＣｒ４（ｘ，ｙ）を求めればよい。
【００９１】
【数７】
0005200645.tif 000008
（２）上述の一の実施形態では、高輝度箇所から各距離の彩度を画像全体で積分することで、画像の全体的な色にじみの強さを推定した。しかし、画像処理装置は、処理対象の画像に複数の分割領域を設定するとともに、各々の分割領域ごとに高輝度箇所から各距離の彩度をそれぞれ積算し、上述の色にじみ補正処理を別々に行うようにしてもよい。この場合、分割領域ごとに適切な色にじみ補正が行われうる。なお、上記の分割領域は、適宜設定することが可能である。例えば、画像処理装置は、画像の中央領域と画像の周辺領域とで別々に色にじみ補正処理を行ってもよい。あるいは、画像処理装置は、３×３の格子状に画像を分割し、各分割領域で別々に色にじみ補正処理を行ってもよい。
【００９２】
（３）上述の一の実施形態において、Ｓ１１での画像処理装置は、以下の要領で色にじみ補正マップを生成してもよい。
【００９３】
まず、画像処理装置は、ガンマ変換後の画像のデータに対して逆のガンマ変換を施し、画素値が露光量に比例する状態の輝度画像Ｙ０’を生成する。次に、画像処理装置は、上記の逆のガンマ変換後の画像に対して、Ｓ１１の（ロ）から（ニ）と同様の平滑化を行って輝度画像Ｙ１’〜Ｙ３’を生成する。その後、輝度画像Ｙ１’〜Ｙ３’をガンマ変換してからＳ１１の（ホ），（ヘ）の各演算を行い、元の輝度画像Ｙ０とガンマ変換後の輝度画像Ｙ１’〜Ｙ３’との差を求めるようにしてもよい。
【００９４】
この場合には、演算量は増加するものの、実際の色収差による光量のボケを精度よく再現することができる。
【００９５】
（４）上述の一の実施形態の画像処理装置は、Ｓ７において、高輝度箇所を起点として指定方向に延長する直線上の画素から彩度を抽出している。しかし、画像処理装置は、逆に、低輝度の調査箇所から高輝度箇所を終点として領域の指定を行い、Ｓ７の場合と同様な直線上の画素から彩度を抽出してもよい。
【００９６】
（５）図１に示した一の実施形態の画像処理装置では、高輝度箇所検出部２１、輝度勾配算出部２２、方向指定部２３、彩度抽出部２４、色にじみ推定部２５および色にじみ補正部２６の機能をプログラムによってソフトウエア的に実現する例を説明したが、これらの構成をＡＳＩＣを用いてハードウエア的に実現しても勿論かまわない。
【００９７】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲が、その精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずであり、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物によることも可能である。
【図面の簡単な説明】
【００９８】
【図１】一の実施形態の電子カメラの概略構成を示すブロック図
【図２】一の実施形態における色にじみ補正処理での動作例を説明する流れ図
【図３】（ａ）〜（ｈ）勾配算出フィルタの例を示す図
【図４】高輝度箇所の周囲において彩度を抽出する領域を説明する図
【図５】（ａ）色にじみの状態を示す図、（ｂ）輝度画像Ｙ０とＹ１との差分を示す図
【図６】他の実施形態に係る画像処理装置の構成例を示すブロック図
【符号の説明】
【００９９】
１１…撮像素子、１２…制御部、１３…ＲＯＭ、１５…画像記憶部、１７…画像処理部、２１…高輝度箇所検出部、２２…輝度勾配算出部、２３…方向指定部、２４…彩度抽出部、２５…色にじみ推定部、２６…色にじみ補正部、３０…コンピュータ、３１…ＣＰＵ、３２…記憶装置、３３…画像入力部
【図１】
0005200645.tif 000009
【図２】
0005200645.tif 000010
【図３】
0005200645.tif 000011
【図４】
0005200645.tif 000012
【図５】
0005200645.tif 000013
【図６】
0005200645.tif 000014