(57)【要約】【課題】  画像処理において、画像データに含まれる飽和画素データを精度良く修正し、出力画像の画質向上を図る。【解決手段】ＣＰＵ２００は、画像データＧＤ１を取得し、画像データＧＤ１において、飽和画素データを探索し、探索された飽和画素データ近傍に存在する非飽和画素データを探索する。そして、ＣＰＵ２００は、探索された非飽和画素データを用いて、探索された飽和画素データを修正する。この結果、周囲の非飽和画素データを考慮して、飽和画素データの修正精度を高めることができ、出力画像の画質を向上させることができる。【選択図】  図４
2005284423.tif 000002
【特許請求の範囲】
【請求項１】
１以上の画素値を有する画素データから構成される画像データを処理する画像処理装置であって、
前記画像データを取得する画像データ取得手段と、
前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データを探索する飽和画素データ探索手段と、
前記探索された飽和画素データ近傍に存在する非飽和画素データを探索する非飽和画素データ探索手段と、
前記探索された非飽和画素データを用いて、前記探索された飽和画素データを修正する飽和画素データ修正手段とを備える画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記非飽和画素データ探索手段は、前記探索された飽和画素データ近傍に設定した探索領域内において前記非飽和画素データを探索する画像処理装置。
【請求項３】
請求項２に記載の画像処理装置において、
前記非飽和画素データ探索手段は、前記探索領域内において前記非飽和画素データを発見できない場合には、更に、前記探索領域を広げて前記非飽和画素データを探索する画像処理装置。
【請求項４】
請求項１に記載の画像処理装置において、
前記非飽和画素データ探索手段は、前記探索された飽和画素データから所定方向に存在する画素データから前記非飽和画素データを探索する画像処理装置。
【請求項５】
請求項１ないし請求項４のいずれかに記載の画像処理装置において、
前記非飽和画素データ探索手段により複数の非飽和画素データが探索された場合には、
前記飽和画素データ修正手段は、前記複数の非飽和画素データのうち、前記探索された飽和画素データとの画素間距離が最も短い非飽和画素データを用いて、前記探索された飽和画素データを修正する画像処理装置。
【請求項６】
請求項１ないし請求項４のいずれかに記載の画像処理装置において、
前記非飽和画素データ探索手段は、複数の非飽和画素データを探索し、
前記飽和画素データ修正手段は、前記探索された飽和画素データと前記非飽和画素データとの画素間距離に応じて重み付けした前記複数の非飽和画素データを用いて、前記探索された飽和画素データを修正する画像処理装置。
【請求項７】
請求項１ないし請求項６のいずれかに記載の画像処理装置において、
前記画素データは、画素の色を規定する複数の色成分を示す画素値を有し、
前記非飽和画素データを用いた前記飽和画素データの修正は、前記非飽和画素データを構成する一の色成分に対応する画素値と、他の色成分に対応する画素値との画素値比率を用いて実行される画像処理装置。
【請求項８】
請求項１ないし請求項４のいずれかに記載の画像処理装置において、
前記非飽和画素データ探索手段は、複数の非飽和画素データを探索し、
前記非飽和画素データを用いた前記飽和画素データの修正は、前記複数の非飽和画素データを用いて前記探索された飽和画素データを含む領域における画素データの変動特性を算出し、前記算出された変動特性を用いて実行される画像処理装置。
【請求項９】
請求項８に記載の画像処理装置において、
前記画素データの変動特性は、画素データを構成する画素値のうち、前記探索された飽和画素データにおいて前記飽和画素値を示す画素値の変動特性である画像処理装置。
【請求項１０】
請求項８に記載の画像処理装置において、
前記画素データは、画素の色を規定する色成分に対応する複数の画素値を有し、
前記画素データの変動特性は、前記画素データを構成する一の色成分に対応する画素値と、他の色成分に対応する画素値との画素値比率の変動特性である画像処理装置。
【請求項１１】
請求項１ないし請求項１０のいずれかに記載の画像処理装置において、
前記非飽和画素データ探索手段が探索する非飽和画素データは、前記探索された飽和画素データにおいて前記飽和画素値を示す画素値に対応する画素値が基準値以上である非飽和画素データである画像処理装置。
【請求項１２】
請求項１ないし請求項１１のいずれかに記載の画像処理装置において、
前記非飽和画素データ探索手段が探索する非飽和画素データは、前記探索された飽和画素データを含む飽和画素データによって構成される飽和画素領域に隣接する非飽和画素データである画像処理装置。
【請求項１３】
１以上の画素値を有する画素データから構成される画像データを処理する画像処理装置であって、
前記画像データを取得する画像データ取得手段と、
前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データによって構成される飽和画素領域を認識する飽和画素領域認識手段と、
非飽和画素データから構成されると共に前記飽和画素領域と隣接する所定範囲の隣接非飽和画素領域を設定する隣接非飽和画素領域設定手段と、
前記隣接非飽和画素領域以外に存在する非飽和画素データを探索する非飽和画素データ探索手段と、
前記探索された非飽和画素データを用いて、前記認識された飽和画素領域を構成する飽和画素データを修正する飽和画素データ修正手段と、
前記探索された非飽和画素データを用いて、前記設定された隣接非飽和画素領域を構成する非飽和画素データを修正する隣接非飽和画素データ修正手段とを備える画像処理装置。
【請求項１４】
１以上の画素値を有する画素データから構成される画像データを処理する画像処理方法であって、
前記画像データを取得し、
前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データを探索し、
前記探索された飽和画素データ近傍に存在する非飽和画素データを探索し、
前記探索された非飽和画素データを用いて、前記探索された飽和画素データを修正する画像処理方法。
【請求項１５】
１以上の画素値を有する画素データから構成される画像データを処理する画像処理方法であって、
前記画像データを取得し、
前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データによって構成される飽和画素領域を認識し、
非飽和画素データから構成されると共に前記飽和画素領域と隣接する所定範囲の隣接非飽和画素領域を設定し、
前記隣接非飽和画素領域以外に存在する非飽和画素データを探索し、
前記探索された非飽和画素データを用いて、前記認識された飽和画素領域を構成する飽和画素データを修正し、
前記探索された非飽和画素データを用いて、前記設定された隣接非飽和画素領域を構成する非飽和画素データを修正する画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理に関し、特に、画像データを構成する画素データの修正技術に関する。
【背景技術】
【０００２】
デジタルスチルカメラに代表されるデジタル撮像機器は、撮像素子（例えば、ＣＣＤ）の各画素が被写体から受けた光量を電気信号に変換し、電気信号を階調化したデジタルデータを画素データとして記録する。この際、撮像素子が出力可能な電気信号には上限がある。したがって、例えば、露出オーバーで撮影された場合に、撮像素子の画素が電気信号の最大出力値（飽和値）に対応する光量以上の光を受光したとしても、実際の光量を反映せず、一定の飽和値を画素値として有する画素データ（以下、飽和画素データともいう。）が生成される。
【０００３】
このような飽和画素データは、被写体の発する光の情報を正しく反映していないため、飽和画素データを含む画像データを出力した画像は、実際の被写体とは異なる色を表したり（いわゆる色ずれ）、階調の無い不自然な画像になったりするおそれがある。
【０００４】
この問題を解決する技術として、飽和画素データから構成される飽和画素領域を抽出し、抽出した飽和画素領域内において飽和画素データを修正する技術が知られている（特許文献１参照）。
【０００５】
【特許文献１】特開平１１−１９１１５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、飽和画素領域を考慮するのみでは、飽和画素データを正しく修正できない場合があり、飽和画素データを含む画像データの出力画像を十分な画質とすることができないおそれがあった。
【０００７】
本発明は、上記課題を解決するためになされたものであり、画像処理において飽和画素データの修正精度を高め、飽和画素データを含む画像データにおいて、出力画像の画質を向上させることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本発明の第１の態様は、１以上の画素値を有する画素データから構成される画像データを処理する画像処理装置を提供する。本発明の第１の態様に係る画像処理装置は、前記画像データを取得する画像データ取得手段と、前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データを探索する飽和画素データ探索手段と、前記探索された飽和画素データ近傍に存在する非飽和画素データを探索する非飽和画素データ探索手段と、前記探索された非飽和画素データを用いて、前記探索された飽和画素データを修正する飽和画素データ修正手段とを備えることを特徴とする。
【０００９】
本発明の第１の態様に係る画像処理装置によれば、探索された飽和画素データ近傍に存在する非飽和画素データを探索し、探索された非飽和画素データを用いて、探索された飽和画素データを修正するので、周囲の非飽和画素データを考慮して、飽和画素データの修正精度を高めることができる。この結果、飽和画素データを含む画像データの出力画像の画質を向上させることができる。
【００１０】
本発明の第１の態様に係る画像処理装置において、前記非飽和画素データ探索手段は、前記探索された飽和画素データ近傍に設定した探索領域内において前記非飽和画素データを探索しても良く、前記探索領域内において前記非飽和画素データを発見できない場合には、更に、前記探索領域を広げて前記非飽和画素データを探索しても良い。また、前記参照非飽和画素データ探索手段は、前記探索された飽和画素データのから所定方向に存在する画素データから前記参照非飽和画素データを探索しても良い。かかる場合には、効率良く、参照非飽和画素データを探索することができる。
【００１１】
本発明の第１の態様に係る画像処理装置において、前記非飽和画素データ探索手段により複数の非飽和画素データが探索された場合には、前記飽和画素データ修正手段は、前記複数の非飽和画素データのうち、前記探索された飽和画素データとの画素間距離が最も短い非飽和画素データを用いて、前記探索された飽和画素データを修正しても良い。かかる場合には、修正しようとする飽和画素データの最も近くで見つかった非飽和画素データを用いて、効率良く非飽和画素データを修正することができる。
【００１２】
本発明の第１の態様に係る画像処理装置において、前記非飽和画素データ探索手段は、複数の非飽和画素データを探索し、前記飽和画素データ修正手段は、前記探索された飽和画素データと前記非飽和画素データとの画素間距離に応じて重み付けした前記複数の非飽和画素データを用いて、前記探索された飽和画素データを修正しても良い。かかる場合には、複数の参照非飽和画素データを用いるので、精度良く、飽和画素データを修正することができる。
【００１３】
本発明の第１の態様に係る画像処理装置において、前記画素データは、画素の色を規定する色成分に対応する複数の画素値を有し、前記非飽和画素データを用いた前記飽和画素データの修正は、前記非飽和画素データを構成する一の色成分に対応する画素値と他の色成分に対応する画素値との画素値比率を用いて実行されても良い。かかる場合には、非飽和画素データの画素値比率を用いて、飽和画素データを修正するので、周囲の画素の色調に合わせて、飽和画素データを修正することができる。この結果、飽和画素データを含む画像データの出力画像の画質をより向上させることができる。
【００１４】
本発明の第１の態様に係る画像処理装置において、前記飽和画素データ修正手段は、前記非飽和画素データ探索手段は、複数の非飽和画素データを探索し、前記非飽和画素データを用いた前記飽和画素データの修正は、前記複数の非飽和画素データを用いて前記探索された飽和画素データを含む領域における画素データの変動特性を算出し、前記算出された変動特性を用いて実行しても良い。かかる場合には、複数の非飽和画素データを用いて算出された画素データの変動特性を用いて、飽和画素データを修正するので、周囲の画素との間で、自然な階調変化が保たれるように、飽和画素データを修正できる。この結果、飽和画素データを含む画像データの出力画像の画質を向上させることができる。
【００１５】
本発明の第１の態様に係る画像処理装置において、前記画素データの変動特性は、前記画素データを構成する画素値のうち、前記探索された飽和画素データにおいて前記飽和画素値を示す画素値の変動特性であっても良い。また、前記画素データは、画素の色を規定する色成分に対応する複数の画素値を有し、前記画素データの変動特性は、前記画素データを構成する一の色成分に対応する画素値と他の色成分に対応する画素値との画素値比率の変動特性であっても良い。かかる場合には、飽和画素値を示す画素値の変動特性や、画素値比率の変動特性を用いて、自然な階調変化が保たれるように、飽和画素データを修正できる。
【００１６】
本発明の第１の態様に係る画像処理装置において、前記非飽和画素データ探索手段が探索する非飽和画素データは、前記探索された飽和画素データにおいて前記飽和画素値を示す画素値に対応する画素値が基準値以上である非飽和画素データであっても良い。飽和画素近傍に存在する非飽和画素データであっても、飽和画素データにおいて飽和している画素値と対応する画素値が基準値以下である場合には、飽和画素データの表す被写体とは、大きく異なる色調を有する画素データである可能性が高い。したがって、このような、非飽和画素データを参照非飽和画素データから排除することで、より飽和画素データの修正精度を向上させることができる。
【００１７】
本発明の第１の態様に係る画像処理装置において、前記非飽和画素データ探索手段が探索する非飽和画素データは、前記探索された飽和画素データを含む飽和画素データによって構成される飽和画素領域に隣接する非飽和画素データであっても良い。飽和画素領域に隣接している非飽和画素データは、飽和画素領域と近似した色調を有している可能性が高いので、飽和画素データをより適切な色調に修正することができる。
【００１８】
本発明の第２の態様は、１以上の画素値を有する画素データから構成される画像データを処理する画像処理装置を提供する。本発明の第２の態様に係る画像処理装置は、前記画像データを取得する画像データ取得手段と、前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データによって構成される飽和画素領域を認識する飽和画素領域認識手段と、非飽和画素データから構成されると共に前記飽和画素領域と隣接する所定範囲の隣接非飽和画素領域を設定する隣接非飽和画素領域設定手段と、前記隣接非飽和画素領域以外に存在する非飽和画素データを探索する非飽和画素データ探索手段と、前記探索された非飽和画素データを用いて、前記認識された飽和画素領域を構成する飽和画素データを修正する飽和画素データ修正手段と、前記探索された非飽和画素データを用いて、前記設定された隣接非飽和画素領域を構成する非飽和画素データを修正する隣接非飽和画素データ修正手段とを備えることを特徴とする。
【００１９】
本発明の第２の態様に係る画像処理装置によれば、第１の態様に係る画像処理装置と同様に、非飽和画素データを探索し、探索された非飽和画素データを用いて、探索された飽和画素データを修正するので、飽和画素データの修正精度を高めることができる。さらに、飽和画素領域に隣接する隣接非飽和画素領域を設定し、隣接非飽和画素領域以外の領域に存在する非飽和画素データを用いて、飽和画素領域を構成する飽和画素データと隣接非飽和画素領域を構成する非飽和画素データとの両方を修正するので、修正後の画像データにおいて、飽和画素領域と隣接する非飽和画素領域との階調連続性が向上する。この結果、より出力画像の画質を向上させることができる。
【００２０】
また、本発明の第２の態様に係る画像処理装置は、本発明の第１の態様に係る画像処理装置と同様にして種々の態様にて実現され得る。
【００２１】
本発明の第３の態様は、１以上の画素値を有する画素データから構成される画像データを処理する画像処理方法を提供する。本発明の第３の態様に係る画像処理方法は、前記画像データを取得し、前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データを探索し、前記探索された飽和画素データ近傍に存在する非飽和画素データを探索し、前記探索された非飽和画素データを用いて、前記探索された飽和画素データを修正することを特徴とする。
【００２２】
本発明の第４の態様は、１以上の画素値を有する画素データから構成される画像データを処理する画像処理方法を提供する。本発明の第４の態様に係る画像処理方法は、前記画像データを取得し、前記取得した画像データにおいて、前記画素データを構成する画素値の少なくとも１つが画素値の最大値である飽和画素値を示す飽和画素データによって構成される飽和画素領域を認識し、非飽和画素データから構成されると共に前記飽和画素領域と隣接する所定範囲の隣接非飽和画素領域を設定し、前記隣接非飽和画素領域以外に存在する非飽和画素データを探索し、前記探索された非飽和画素データを用いて、前記認識された飽和画素領域を構成する飽和画素データを修正し、前記探索された非飽和画素データを用いて、前記設定された隣接非飽和画素領域を構成する非飽和画素データを修正することを特徴とする。
【００２３】
本発明の第３の態様に係る画像処理方法および本発明の第４の態様に係る画像処理方法によれば、本発明の第１の態様および第２の態様に係る画像処理装置と同様の作用効果を得ることができる。また、本発明の第３の態様に係る画像処理方法および本発明の第４の態様に係る画像処理方法は、本発明の第１の態様に係る画像処理装置と同様にして種々の態様にて実現され得る。また、本発明の第３の態様に係る画像処理方法および本発明の第４の態様に係る画像処理方法は、この他にも、画像処理プログラムおよび画像処理プログラムが記録されたコンピュータが読み取り可能な記録媒体としても実現され得る。
【発明を実施するための最良の形態】
【００２４】
以下、本発明にかかる画像処理装置について、図面を参照しつつ、実施例に基づいて説明する。
【００２５】
Ａ．第１の実施例：
・画像処理システムの構成：
図１は、第１の実施例に係る画像処理装置を含む画像処理システムを示す説明図である。第１の実施例に係る画像処理装置を適用可能な画像処理システムの構成について図１を参照して説明する。
【００２６】
画像処理システムは、画像データを生成する入力装置としてのディジタルスチルカメラ１０、ディジタルスチルカメラ１０にて生成された画像データに対して、飽和画素データ修正処理を含む画像処理を実行し、印刷用画像データを出力する画像処理装置としてのパーソナルコンピュータ２０、印刷用画像データを用いて画像を出力する出力装置としてのプリンタ３０を備えている。また、出力装置としては、プリンタ３０の他に、ＬＣＤディスプレイ等のモニタ２５、表示装置４０等が用いられ得る。以下の説明では、パーソナルコンピュータ２０と接続されて用いられるカラープリンタ３０を出力装置として用いるものとする。
【００２７】
パーソナルコンピュータ２０は、一般的に用いられるタイプのコンピュータであり、飽和画素データ修正処理を含む画像処理プログラムを実行するＣＰＵ２００、ＣＰＵ２００における演算結果、画像データ等を一時的に格納するＲＡＭ２０１、画像処理プログラムを格納するハードディスクドライブ（ＨＤＤ）２０２を備えている。パーソナルコンピュータ２０は、メモリカードＭＣを装着するためのカードスロット２０３、ディジタルスチルカメラ１０等からの接続ケーブルを接続するための入出力端子２０４を備えている。
【００２８】
ディジタルスチルカメラ１０は、被写体からの光をカラーフィルターを介して、撮像素子（ＣＣＤや光電子倍増管）に結像させることにより、画像を取得するカメラである。カラーフィルターには、モザイク上にＲＧＢの各カラーフィルターが配置された原色フィルターや、ＣＭＹＧの各カラーフィルターが配置された補色フィルター等がある。ディジタルスチルカメラ１０は、取得した画像をディジタルデータとして記憶装置としてのメモリカードＭＣに保存する。ディジタルスチルカメラ１０における画像データの保存形式としては、撮像素子から出力された電気信号を階調化したデジタルデータを加工せずに保存するＲＡＷデータ形式、非可逆圧縮保存方式としてＪＰＥＧデータ形式、可逆圧縮保存方式としてＴＩＦＦデータ形式等、種々の形式が用いられ得る。
【００２９】
プリンタ３０は、カラー画像の出力が可能なプリンタであり、例えば、シアン、マゼンタ、イエロー、ブラックの４色の色インクを印刷媒体上に噴射してドットパターンを形成することによって画像を形成するインクジェット方式のプリンタである。あるいは、カラートナーを印刷媒体上に転写・定着させて画像を形成する電子写真方式のプリンタである。色インクには、上記４色に加えて、ライトシアン（薄いシアン）、ライトマゼンタ（薄いマゼンタ）、レッド、ブルーを用いても良い。
【００３０】
表示装置４０は、画像を表示するための表示部４５を有し、例えば、電子式の写真フレームとして機能する表示装置である。表示部４５は、例えば、液晶表示ディスプレイ、有機ＥＬ表示ディスプレイ等が用いられ得る。
【００３１】
プリンタ３０および表示装置４０は、スタンドアローンにて画像処理、画像出力を実行するため、パーソナルコンピュータ２０が備える画像処理機能を備えても良い。かかる場合には、プリンタ３０、表示装置４０は、パーソナルコンピュータ２０を介さずに、例えば、メモリーカードＭＣ等の記憶媒体、あるいは、ケーブルを介してディジタルスチルカメラ１０から直接、画像データを取得し、プリンタ３０、表示装置４０がそれぞれ本実施例における画像処理装置として機能することができる。
【００３２】
以下の説明では、ディジタルスチルカメラ１０で生成されたＲＡＷデータ形式の画像データＧＤ１が、パーソナルコンピュータ２０に送出され、画像データＧＤ１に対する画像処理がパーソナルコンピュータ２０にて実行され、処理済みの画像データがカラープリンタ３０に対して出力される場合について説明する。
【００３３】
・パーソナルコンピュータ２０の機能的構成：
図２は、第１の実施例に係るパーソナルコンピュータ２０（ＣＰＵ２００）の機能ブロック図である。図２を参照して、第１の実施例に係るパーソナルコンピュータ２０（ＣＰＵ２００）の機能的構成の概要について説明する。
【００３４】
画像データ取得部Ｍ１０は、処理対象画像の画像データＧＤ１を取得する。画像データ取得部Ｍ１０は、取得した画像データＧＤ１を飽和画素データ探索部Ｍ２０、非飽和画素データ探索部Ｍ３０、飽和画素データ修正部Ｍ４０に送る。
【００３５】
飽和画素データ探索部Ｍ２０は、画像データ取得部Ｍ１０から得られた画像データＧＤ１を解析して、画像データＧＤ１に含まれる飽和画素データを探索する。飽和画素データ探索部Ｍ２０は、探索した飽和画素データを非飽和画素データ探索部Ｍ３０および飽和画素データ修正部Ｍ４０に送る。
【００３６】
非飽和画素データ探索部Ｍ３０は、画像データ取得部Ｍ１０から得られた画像データＧＤ１において、飽和画素データ探索部Ｍ２０から得られた飽和画素データの近傍に存在する非飽和画素データを探索して、参照非飽和画素データとして取得する。非飽和画素データ探索部Ｍ３０は、参照非飽和画素データを飽和画素データ修正部Ｍ４０に送る。
【００３７】
飽和画素データ修正部Ｍ４０は、画像データ取得部Ｍ１０から画像データＧＤ１を取得し、飽和画素データ探索部Ｍ２０から飽和画素データを取得し、非飽和画素データ探索部Ｍ３０から参照非飽和画素データを取得する。飽和画素データ修正部Ｍ４０は、画像データＧＤ１において、参照非飽和画素データを用いて飽和画素データを修正することによって、修正後画像データＧＤ２を生成する。
【００３８】
・パーソナルコンピュータ２０における画像処理：
図３〜図７を参照して、第１の実施例において、パーソナルコンピュータ２０にて実行される画像処理について説明する。
【００３９】
図３は、第１の実施例に係る画像処理の処理ルーチンを示すフローチャートである。パーソナルコンピュータ２０（ＣＰＵ２００）は、スロット２０３にメモリカードＭＣが差し込まれると、あるいは、ディジタルスチルカメラ１０に接続されている接続ケーブルＣＶが入出力端子２０４に接続されると本画像処理のプログラムを起動する。ＣＰＵ２００は、ユーザの指示に従ってメモリカードＭＣから処理対象画像の画像データＧＤ１を取得し（読み出し）、取得した画像データをＲＡＭ２０１に一時的に格納する（ステップＳ１１０）。
【００４０】
ＣＰＵ２００は、ＲＡＷデータ形式である画像データＧＤ１に対して、色補完処理を実行する（ステップＳ１２０）。一般的なＲＡＷデータ形式の画像データの各画素データは、フィルタ色に対応するＲＧＢいずれかの色成分についてのデータしか有していない。色補完処理は、各画素データのフィルタ色以外の色成分を算出し、各画素データごとにＲＧＢ各色成分の画素値を有するように、欠けているデータを補完する処理である。色補完処理によって、デジタルカメラ１０の機器特性に依存した色空間（以下、ＣＣＤＲＧＢ色空間という。）におけるＲＧＢデータ（以下、画像データＧＤ１’という。）が生成される。
【００４１】
ＣＰＵ２００は、続いて、画像データＧＤ１’に対して、飽和画素データ修正処理を実行する（ステップＳ１３０）。
【００４２】
図４は、第１の実施例に係る飽和画素データ修正処理の処理ルーチンを示すフローチャートである。飽和画素データとは、画素データを構成する複数の画素値のうち少なくとも１つが、撮像素子の出力可能な電気信号の最大値に対応する画素値（以下、飽和画素値という。）である画素データをいう。すなわち、本実施例においては、各画素データを構成するＲＧＢ各色成分のいずれかに対応する画素値が飽和画素値を示す画素データをいう。一方、非飽和画素データとは、画素データを構成する全ての画素値が、飽和画素値未満の値である画素データをいう。ＣＰＵ２００は、画像データＧＤ１’を構成する画素データのうち、飽和画素データを１つずつ修正していく。
【００４３】
具体的には、ＣＰＵ２００は、ある画素データを着目画素データとして設定し（ステップＳ２０２）、着目画素データが飽和画素データであるか否かを判断する（ステップＳ２０４）。ＣＰＵ２００は、着目画素データが非飽和画素データである場合（ステップＳ２０４：ＮＯ）には、修正の必要はないため、修正処理を実行しないで、ステップＳ２１４に移行する。
【００４４】
一方、着目画素データが飽和画素データである場合（ステップＳ２０４：ＹＥＳ）には、着目する飽和画素データ（以下、着目飽和画素データという。）を修正するための一連の処理（ステップＳ２０６〜Ｓ２１２）を実行する。ＣＰＵ２００は、先ず、着目飽和画素データの近傍に存在する非飽和画素データを探索する（ステップＳ２０６）。ＣＰＵ２００は、後述する飽和画素データの修正（ステップＳ２１０）に用いる非飽和画素データ（以下、参照非飽和画素データという。）として、探索された非飽和画素データを取得する。
【００４５】
図５は、第１の実施例に係る非飽和画素データの探索を概念的に説明する説明図である。図５において、縦５×横５に配置された各正方形は、それぞれ１つの画素を表す。図５において、ハッチングされた画素は、非飽和画素データに対応する画素（以下、非飽和画素という。）を表し、ハッチングされていない画素は、飽和画素データに対応する画素（以下、飽和画素という。）を表す。また、中央に位置する飽和画素ＳＰ_tarは、着目飽和画素データに対応する画素（以下、着目飽和画素ＳＰ_tarという。）を表す。
【００４６】
ＣＰＵ２００は、着目飽和画素ＳＰ_tarを囲む８つの画素を探索範囲として、順番に非飽和画素を探索する。例えば、図５（ａ）に示すように、ＣＰＵ２００は、波線で示す順番で探索し、最初に探索された非飽和画素ＮＰ_ref（図５中で、クロスハッチングされた画素）に対応する画素データを参照非飽和画素データとして取得する。着目飽和画素ＳＰ_tarを囲む８つの画素に非飽和画素がない場合には、ＣＰＵ２００は、さらに、探索した８つの画素を囲む１６個の画素にまで探索範囲を広げて、順番に非飽和画素を探索する。例えば、図５（ｂ）に示すように、波線で示す順番で探索した結果、非飽和画素がない場合には、ＣＰＵ２００は、探索範囲を広げて一点波線で示す順番で探索する。ＣＰＵ２００は、その結果、最初に探索された非飽和画素ＮＰ_ref（図５中で、クロスハッチングされた画素）に対応する画素データを参照非飽和画素データとして取得する。探索する順番は、図５において、波線や一点波線で示した順に限られないことは言うまでもない。
【００４７】
ＣＰＵ２００は、探索の結果、参照非飽和画素データを取得できた場合には（ステップＳ２０８：ＹＥＳ）、取得した参照非飽和画素データを用いて、着目飽和画素データを修正する（ステップＳ２１０）。
【００４８】
図６は、参照非飽和画素データを用いた着目飽和画素データの修正の具体例を示す説明図である。図６には、参照非飽和画素データを構成するＲＧＢ各色成分に対応する画素値（以下、参照画素値という。）Ｒｒ、Ｇｒ、Ｂｒと、着目飽和画素データを構成するＲＧＢ各色成分に対応する画素値（以下、着目画素値という。）Ｒｔ、Ｇｔ、Ｂｔとを表すグラフが示されている。図６（ａ）は、修正前のグラフを示し、図（ｂ）は、修正後のグラフを示す。図６に示す例では、着目画素値のうち、Ｇ（グリーン）成分を表すＧｔが飽和画素値を示し、Ｒｔ、Ｂｔは飽和していない。従って、色成分値Ｇｔが、本処理における修正の対象となる。
【００４９】
着目飽和画素データの修正は、参照非飽和画素値間の画素値比率を用いて行う。図６に示す例では、修正後の着目画素値Ｇｔ’は、以下に示す式（１ａ）または式（１ｂ）に従って算出される。
【００５０】
Ｇｔ’= Ｒｔ×（Ｇｒ／Ｒｒ）      …（１ａ）
Ｇｔ’= Ｂｔ×（Ｇｒ／Ｂｒ）      …（１ｂ）
【００５１】
すなわち、参照非飽和画素データの画素値比率Ｇｒ／ＲｒまたはＧｒ／Ｂｒと着目飽和画素データの対応する画素値比率とが一致するように、画素値Ｇｔは修正される。この例では、着目画素値のうち、ＲｔとＢｔとの２値が飽和していないため、式（１ａ）と式（２ａ）とが選択できるが、ＲｔとＢｔのうち値が低い方の画素値を用いて修正するのが好ましい。撮像素子（ＣＣＤ）は、その特性上、飽和画素値近辺に対応する光量に対して、測光性能が低下するため、未飽和であっても飽和画素値近辺の高い画素値は、被写体の色情報を正確に表していない場合があるからである。
【００５２】
ＣＰＵ２００は、探索の結果、参照非飽和画素データを取得できなかった場合には（ステップＳ２０８：ＮＯ）、従来技術を用いた標準処理を実行する（ステップＳ２１２）。標準処理は、着目飽和画素データの彩度を低下させる処理（いわゆる色抑圧処理）を用いることができる（例えば、特開２０００−３２４８２に開示されている。）。標準処理は周知の処理であるので、詳細な説明を省略する。
【００５３】
参照非飽和画素データを取得できない場合としては、例えば、非飽和画素データを探索する最大の範囲（領域）が定められており、その範囲内に非飽和画素データがない場合がある。また、非飽和画素データを参照非飽和画素データとして取得するための参照条件が定められており、かかる参照条件を満たす非飽和画素データが、着目飽和画素データの近傍にない場合がある。参照条件については、後述する。
【００５４】
１つの着目画素データに対して上述した処理を終了すると、ＣＰＵ２００は、画像データＧＤ１を構成する全ての画素データについて上述した処理が終了したか否かを判断する（ステップＳ２１４）。全ての画素データについて上述した処理が終了していない場合には（ステップＳ２１４：ＮＯ）、ＣＰＵ２００は、処理未終了の画素データを新たな着目画素データに設定し（ステップＳ２０２）、上述した一連のステップ（Ｓ２０４〜Ｓ２１２）を繰り返す。ＣＰＵ２００は、画像データＧＤ１を構成する全ての画素データを着目画素データに設定して、上述した処理が終了した場合には（ステップＳ２１４：ＹＥＳ）、本処理ルーチンを終了して、図３に示す処理ルーチンにリターンする。以下、本処理によって、全ての飽和画素データが修正された修正後画像データを画像データＧＤ２とする。
【００５５】
図３に戻って、説明を続けると、ＣＰＵ２００は、画像データＧＤ２に対して、色変換処理を実行する（ステップＳ１４０）。色変換処理は、画像データの色空間を目的に応じて適切な適切な色空間へ変換する処理である。本実施例では、画像データＧＤ２の色空間を、ディジタルスチルカメラ１０に依存したＣＣＤＲＧＢ色空間から、プリンタ３０に出力する画像データの画質調整処理に適したｗＲＧＢ色空間へと変換する。例えば、ＣＰＵ２００は、画像データＧＤ２の色空間を、ＸＹＺ、Ｌａｂ等の機器独立色空間を介して、ＣＣＤＲＧＢ色空間からｗＲＧＢ色空間へと変換する。この際、修正された画素値は、飽和画素値より大きな値となっているため、そのまま変換した場合には、ｗＲＧＢ色空間において再現可能な範囲を越えてしまう。そのため、ｗＲＧＢ色空間において、再現可能な範囲に圧縮して変換する必要がある。
【００５６】
図７は、再現可能範囲を超えた画素値を、再現可能範囲に圧縮する変換を概念的に示す説明図である。ｗＲＧＢ色空間において、ＲＧＢ各色成分に対応する画素値は、８ビットの情報で表され、０〜２５５の値をとる。例えば、図７に示すような、入出力曲線を用いて、画素値が高い領域を圧縮して、変換後の画素値が２５５を越えないようにする。この結果、修正した画素値を含む画素データの階調を出力画像上で再現することが可能となる。
【００５７】
ＣＰＵ２００は、続いて、画像データＧＤ２の入出力特性を、出力機器を考慮した入出力特性に変換する逆ガンマ補正処理を実行する。（ステップＳ１５０）。本実施例では、プリンタ３０を出力機器とするので、プリンタ３０の入出力特性を示すガンマ値を用いて、逆ガンマ補正が実行される。
【００５８】
ＣＰＵ２００は、画像データＧＤ２に対して、必要な画質調整処理を実行する（ステップＳ１６０）。例えば、カラーバランス（ホワイトバランス）、コントラスト、色彩、シャープネスの補正等、一般的な画質調整処理が実行され得る。ＣＰＵ２００は、これらの画質調整処理の全部または一部を、ｗＲＧＢ空間に変換する前にＣＣＤＲＧＢ色空間において実行しても良いし、逆ガンマ補正前に実行しても良い。
【００５９】
ＣＰＵ２００は、画質調整処理後の画像データＧＤ２をプリンタドライバに出力して（ステップＳ１７０）、本処理ルーチンを終了する。プリンタドライバでは、補正後画像データＧＤ２をＣＭＹＫデータに変換する色変換処理が実行される。すなわち、画像データＧＤ２の表色系をプリンタ３０が印刷処理を実行する際に用いる表色系であるＣＭＹＫ表色系に変換する。具体的には、ＨＤＤ２０２（または、ＲＯＭ）に格納されているＲＧＢ表色系とＣＭＹＫ表色系とを対応付けたルックアップデーブルを用いて実行される。また、ハーフトーン処理、解像度変換処理が実行され、印刷用のラスタデータとしてプリンタ３０に出力される。
【００６０】
以上説明したように、本実施例によれば、飽和画素データ近傍で探索された非飽和画素データを参照非飽和画素データとして用いて、飽和画素データを修正するので、飽和画素データの修正精度を高めることができ、画像データの出力画像の画質を向上させることができる。特に、画素値が急激に変動している領域に存在する非飽和画素データについては、飽和画素データ（領域）のみを考慮して、飽和画素データを修正するのは困難であるが、本実施例によれば、近傍に存在する非飽和画素データを用いて、精度良く飽和画素データを修正することができる。
【００６１】
また、参照非飽和画素データを構成するＲＧＢ各色成分を示す画素値間の画素値比率（以下、参照非飽和画素値比率という。例えば、Ｇｒ：Ｒｒ）を用いて、参照非飽和画素値比率に対応する飽和画素データにおける画素値比率（例えば、Ｇｔ’：Ｒｔ）が同じになるように、飽和画素データを修正する（式（１ａ）〜式（１ｂ）参照）ので、周囲の画素（非飽和画素）の色調に合わせて、飽和画素データを修正することができる。この結果、飽和画素データを含む画像データの出力画像の画質をより向上させることができる。
【００６２】
・非飽和画素データの探索における他の態様：
（１）図８は、非飽和画素データの探索における他の態様について説明する説明図である。ＣＰＵ２００は、図８（ａ）に示すように、着目飽和画素ＳＰ_tarを中心として、予め定められた領域を探索範囲として、非飽和画素データを探索しても良い。図８（ａ）では、縦５×横５の画素領域を探索範囲としているが、縦ｎ×横ｍ（ｎおよびｍは自然数）の任意の大きさの画素領域を定めることができる。
【００６３】
（２）ＣＰＵ２００は、図８（ｂ）〜（ｄ）に示すように、着目飽和画素ＳＰ_tarから所定の方向に存在する画素データから非飽和画素データを探索しても良い。図８（ｂ）は、横２方向に存在する画素データを探索範囲とする。すなわち、画像中の一のライン上に並ぶ画素に対応する画素データを探索範囲なる。もちろん、横方向に限られず、他の方向のライン上の画素データを探索範囲としても良い。図８（ｃ）は、４方向に存在する画素データを探索範囲とし、図８（ｄ）は、８方向に存在する画素データを探索範囲とする例を示している。
【００６４】
（１）および（２）で説明したように、非飽和画素データ探索手段が非飽和画素データを探索する範囲を所定の領域や所定の方向に限定することで、探索時間を短縮し、効率良く非飽和画素データの探索を実行することができる。
【００６５】
（３）ＣＰＵ２００は、探索する非飽和画素データを所定の参照条件を満たす非飽和画素データに限定しても良い。飽和画素データを修正するのに適した非飽和画素データを探索し、参照非飽和画素データとすることによって、着目飽和画素データの修正精度を向上させるためである。ＣＰＵ２００は、例えば、非飽和画素データを構成する画素値のうち、着目飽和画素データにおいて飽和画素値を示す画素値に対応する画素値が、予め定められた基準値以上であることを参照条件として用いても良い。図６に示す例を用いて説明すると、着目画素値Ｒｔ、Ｇｔ、Ｂｔのうち、飽和画素値を示す画素値がＧｔである場合、非飽和画素データを構成するＲＧＢ各色成分に対応する画素値Ｒｒ、Ｇｒ、Ｂｒのうち、画素値Ｇｔに対応する画素値（同じ色成分（Ｇ：グリーン）に対応する画素値Ｇｒ）が基準値以上であることが、参照条件となる。
【００６６】
着目飽和画素データ近傍に存在する非飽和画素データであっても、着目飽和画素データにおいて飽和している画素値と対応する画素値が基準値以下である場合には、着目飽和画素データの表す被写体の色調とは、大きく異なる色調を有する画素データである可能性が高い。したがって、この参照条件を用いることで、このような非飽和画素データが参照非飽和画素データとして取得される可能性を排除することができる。この結果、飽和画素データの修正精度を向上させることができる。
【００６７】
ＣＰＵ２００は、着目飽和画素データを含む飽和画素データによって構成される飽和画素領域に隣接する非飽和画素データであることを、参照条件として用いても良い。飽和画素領域に隣接している非飽和画素データは、飽和画素領域と近似した色調を有している可能性が高いので、飽和画素データをより適切な色調に修正することができる。
【００６８】
・着目飽和画素データの修正における他の態様：
上述した実施例では、非飽和画素データ修正手段は、最初に探索された非飽和画素データの参照非飽和画素データとして取得し、参照非飽和画素データの画素値比率を用いて、着目飽和画素データを修正しているが、以下に、説明する他の態様を用いても良い。
【００６９】
（１）ＣＰＵ２００は、複数の参照非飽和画素データを取得した場合、例えば、図８（ｂ）に示すように、２方向に存在する画素データからそれぞれ非飽和画素データを探索し、それぞれの方向から参照非飽和画素データとして取得した場合等には、参照非飽和画素データのうち、着目飽和画素データとの画素間距離が最も短い参照非飽和画素データを用いて、着目飽和画素データを修正しても良い。
【００７０】
（２）ＣＰＵ２００は、複数の参照非飽和画素データを用いて着目飽和画素データを修正する場合は、それぞれの参照非飽和画素データに対して、着目飽和画素データとの画素間距離に応じた重み付けをし、重み付けした複数の参照非飽和画素データを用いて、着目飽和画素データを修正しても良い。図９を参照して、具体的に説明する。
【００７１】
図９は、重み付けをした参照非飽和画素データを用いた着目飽和画素データの修正の具体例を示す説明図である。以下の説明では、図９において各画素に付された番号によって、各画素を表現する。例えば、図９において１が付された画素を、画素１表現する。以後の図面（図１０、１１、１３）においても同様とする。本具体例では、ＣＰＵ２００は、図８（ｄ）に示すように、着目飽和画素データから８方向に存在する画素データから非飽和画素データを探索し、８つの非飽和画素データを参照非飽和画素データとして取得する。図９中、中央の画素は、着目飽和画素データに対応する画素ＳＰ_tar、クロスハッチングされた画素１〜８は、取得された８つの参照非飽和画素データに対応する画素ＮＰ_refを示す。
【００７２】
ここで、８つの参照非飽和画素データの参照画素値をそれぞれR(i)、G(i)、B(i)（i：１〜８）とし、着目画素値をそれぞれR_tar、G_tar、B_tarとする。G_tarが飽和画素値を示す画素値である場合、ＣＰＵ２００は、例えば、参照画素値の画素値比率G(i)／R(i)を用いて、以下の式（２ａ）に従って、G_tarをG_tar’に修正する。
【００７３】
【数１】
2005284423.tif 000003
【００７４】
ここで、Ｗ(i)は、ｉ番目の参照非飽和画素データに対する重み付け係数を表す。Ｗ(i)は、ｉ番目の参照非飽和画素データと、着目飽和画素データとの画素間距離ｒ(i)を用いて、例えば、以下の式（２ｂ）によって定義される。
【００７５】
【数２】
2005284423.tif 000004
【００７６】
かかる場合には、複数の参照非飽和画素データを用いて、より精度良く、飽和画素データを修正することができる。
【００７７】
（３）ＣＰＵ２００は、複数の参照非飽和画素データを用いて、着目飽和画素データを含む領域における画素データの変動特性を算出し、算出された変動特性を用いて着目飽和画素データの位置における本来の画素データを推定することによって、着目飽和画素データを修正しても良い。図１０を参照して具体的に説明する。
【００７８】
図１０は、変動特性を用いた着目飽和画素データの修正の具体例を示す説明図である。本具体例では、ＣＰＵ２００は、図１０（ａ）に示すように、着目飽和画素データから２方向（図中の左右方向）に存在する画素データから非飽和画素データを探索する。ＣＰＵ２００は、画素データの変動特性の算出に必要な数の非飽和画素データを探索し、参照非飽和画素データとして取得する。図１０（ａ）には、ＣＰＵ２００が取得した参照非飽和画素データに対応する画素が、着目飽和画素データに対応する画素ＳＰ_tar（画素５〜７）の左右両側に、それぞれ４つ示されている（画素１〜４および画素８〜１１）。
【００７９】
着目画素値のうちＧ成分を修正する場合について説明すると、ＣＰＵ２００は、取得した８つの参照非飽和画素データのＧ成分の画素値を用いて、Ｇ成分の画素値の変動特性を算出する。本具体例では、図１０（ｂ）に示すように、ＣＰＵ２００は、Ｇ成分の画素値の変動特性として、着目飽和画素データの左側に存在する参照非飽和画素データ（画素１〜４に対応）のＧ成分の画素値から近似直線ＮＬ１を求め、着目飽和画素データの右側に存在する参照非飽和画素データ（画素８〜１１に対応）のＧ成分の画素値から近似直線ＮＬ２を求める。そして、図１０（ｃ）に示すように、ＣＰＵ２００は、２本の近似直線ＮＬ１と、ＮＬ２から、画素５〜７の位置におけるＧ成分の画素値を推定する。この結果、画素５〜７に対応する着目飽和画素データのＧ成分の画素値が修正される。
【００８０】
かかる場合には、複数の非飽和画素データを用いて算出された画素データの変動特性を用いて、飽和画素データを修正するので、修正後の飽和画素データと周囲の画素データとの間で、変動特性に応じた自然な階調変化を再現できる。この結果、修正後の画像データの出力画像の画質をより向上させることができる。また、画素値比率を用いず、修正対象である飽和画素値を示す画素値（具体例では、Ｇ成分の画素値）のみに基づいて、飽和画素値を修正できるので、全ての画素値が飽和している飽和画素データであっても、適切に修正可能である。
【００８１】
本具体例では、近似直線を用いて変動特性を求めているが、多項式近似等の近似曲線を用いて変動特性を求めても良い。本具体例では、着目画素データの左右２方向に存在する非飽和画素データを４つずつ（計８個）用いて、画素データの変動特性を算出しているが、もちろん、これに限られるものではない。また、本具体例では、２方向（１ライン上）に存在する画素について、画素データの変動特性を算出しているが、２次元の画素領域において、非飽和画素データを探索して、近似平面や近似極面を用いて、画素データの変動特性を算出しても良い。これら使用する画素データ数や変動特性を求める手法は、変動特性の算出精度、算出に要する計算時間等を勘案して、経験的に最適なものが選択される。
【００８２】
本具体例では、画素データの変動特性として、修正対象である飽和画素値を示す画素値（具体例では、Ｇ成分の画素値）の変動特性を用いているが、画素値比率の変動特性を用いても良い。例えば、画素データを構成するＲＧＢ各色成分を示す画素値のうち、Ｇ（グリーン）成分とＲ（レッド）成分との画素値比率G／Rの変動特性を用いても良い。
【００８３】
以上、非飽和画素データの探索、および、着目飽和画素データの修正について、他の態様を説明したが、これらの態様を組み合わせて用いても良い。一例として、上述した他の態様のうち以下に示す組み合わせを用いる場合について説明する。
【００８４】
１．非飽和画素データの探索は、横２方向に存在する画素データを探索範囲として実行する。
２．第１の参照条件として、着目飽和画素データを含む飽和画素データによって構成される飽和画素領域に隣接する非飽和画素データであることを用いる。
３．第２の参照条件として、非飽和画素データを構成する画素値のうち、着目飽和画素データにおける飽和画素値を示す画素値に対応する画素値が、予め定められた基準値以上であることを用いる。
４．着目非飽和画素データの修正は、複数の参照非飽和画素データが取得された場合には、複数の非飽和画素データのうち、着目飽和画素データとの画素間距離が最も短い参照非飽和画素データを用いて実行される。
【００８５】
図１１は、上記１．〜４．の組み合わせを用いた、飽和画素データ修正処理について説明する説明図である。図１１中、画素２〜７は、飽和画素データに対応する画素を表す。また、図１１中、ハッチングされている画素１および８は、非飽和画素データに対応する画素を表す。この例では、画素２〜７に対応する飽和画素データを修正する際、第１の参照条件を満たす非飽和画素データは、画素１に対応する画素データ（以下、非飽和画素データ１という。）と画素８に対応する画素データ（以下、非飽和画素データ８という。）の２つである。図１１において、ＮＰ_refは、第２の参照条件を満たし、飽和画素データの修正に用いることができる（参照非飽和画素データとして取得される）非飽和画素データに対応する画素を表し、ＮＰ_ngは、第２の参照条件を満たさず、飽和画素データの修正に用いることができない（参照非飽和画素データとして取得されない）非飽和画素データに対応する画素を表す。
【００８６】
図１１（ａ）に示すように、非飽和画素データ１と非飽和画素データ８の両方が、第２の参照条件を満たす場合には、４．の条件より、画素１との画素間距離が近い画素２〜４に対応する飽和画素データは、非飽和画素データ１を参照非飽和画素データとして用いて修正される。一方、画素８との画素間距離が近い画素５〜７に対応する飽和画素データは、非飽和画素データ８を参照非飽和画素データとして用いて修正される。
【００８７】
図１１（ｂ）に示すように、非飽和画素データ１は第２の参照条件を満たさず、非飽和画素データ８のみが第２の参照条件を満たす場合には、画素２〜７に対応する飽和画素データの全てが、非飽和画素データ８を用いて修正される。
【００８８】
図１１（ｃ）に示すように、非飽和画素データ１と非飽和画素データ８の両方が、第２の参照条件を満たさない場合には、参照できる非飽和画素データがないため、画素２〜７に対応する飽和画素データに対して、上述した標準処理が実行されることになる。
【００８９】
以上、説明したような態様の組み合わせを用いた一例を用いれば、１ライン上のみの探索範囲で、参照すべき適切な非飽和画素データが存在する場合には、その非飽和画素データを参照非飽和画素データとして用いて飽和画素データを修正する。一方、参照すべき非飽和画素データが存在しない場合には、標準処理を実行して飽和画素データを修正する。この結果、飽和画素データを含む画像データを効率良く、高い精度で修正し、画像データの出力画像の画質を向上させることができる。
【００９０】
Ｂ．第２の実施例
画像処理システムの構成は、図１を参照して説明した第１の実施例に係る画像処理システムと同一であるので、説明を省略して、以下の説明では同一の符号を用いる。
【００９１】
・パーソナルコンピュータ２０の機能的構成：
図１２は、本実施例に係るパーソナルコンピュータ２０（ＣＰＵ２００）の機能ブロック図である。図１２を参照してパーソナルコンピュータ２０（ＣＰＵ２００）の機能的構成の概要について説明する。なお、第１の実施例と同一の構成については、同一の符号を付し、その説明を省略する。
【００９２】
飽和画素領域認識部Ｍ２２は、処理対象画像の画像データＧＤ１を解析して、飽和画素データにより構成される飽和画素領域を認識する。飽和画素領域認識部Ｍ２２は、認識した飽和画素領域の情報を、隣接非飽和画素領域設定部Ｍ２４、非飽和画素データ探索部Ｍ３０、飽和画素データ修正部Ｍ４０に送る。
【００９３】
隣接非飽和画素領域設定部Ｍ２４は、飽和画素領域認識部Ｍ２２から、飽和画素領域の情報を取得し、飽和画素領域と隣接する非飽和画素データと隣接する隣接非飽和画素領域の範囲を設定する。隣接非飽和画素領域設定部Ｍ２４は、設定した隣接非飽和画素領域の情報を、非飽和画素データ探索部Ｍ３０および隣接非飽和画素データ修正部Ｍ５０に送る。
【００９４】
非飽和画素データ探索部Ｍ３０は、第１の実施例と同様に、画像データ取得部Ｍ１０から得られた画像データＧＤ１を解析して、飽和画素データ探索部Ｍ２０から得られた飽和画素データの近傍に存在する非飽和画素データを探索する。ただし、第１の実施例と異なり、非飽和画素データ探索部Ｍ３０は、隣接非飽和画素領域設定部Ｍ２４から得られた隣接非飽和画素領域の情報に基づき、隣接非飽和画素領域以外に存在する非飽和画素データを探索する。非飽和画素データ探索部Ｍ３０は、探索した非飽和画素データを参照非飽和画素データとして取得し、飽和画素データ修正部Ｍ４０および隣接非飽和画素データ修正部Ｍ５０に送る。
【００９５】
飽和画素データ修正部Ｍ４０は、画像データ取得部Ｍ１０から画像データＧＤ１を取得し、飽和画素領域認識部Ｍ２２から飽和画素領域の情報を取得し、非飽和画素データ探索部Ｍ３０から参照非飽和画素データを取得する。飽和画素データ修正部Ｍ４０は、画像データＧＤ１において、取得した参照非飽和画素データを用いて、取得した飽和画素領域内に存在する飽和画素データを修正する。
【００９６】
隣接非飽和画素データ修正部Ｍ５０は、画像データ取得部Ｍ１０から画像データＧＤ１を取得し、隣接非飽和画素領域設定部Ｍ２４から隣接非飽和画素領域の情報を取得し、非飽和画素データ探索部Ｍ３０から参照非飽和画素データを取得する。隣接非飽和画素データ修正部Ｍ５０は、画像データＧＤ１において、取得した参照非飽和画素データを用いて、取得した隣接非飽和画素領域内に存在する非飽和画素データを修正する。
【００９７】
・パーソナルコンピュータ２０における画像処理：
図１３を参照して、第２の実施例において、パーソナルコンピュータ２０にて実行される画像処理について説明する。図１３は、第２の実施例に係る飽和画素データ修正処理について説明する説明図である。第２の実施例に係る画像処理は、基本的には第１の実施例と同様であるので、詳しい説明を省略し、第１の実施例と異なる点について説明する。
【００９８】
第２の実施例においても、第１の実施例と同様に、ＣＰＵ２００は、着目飽和画素データ近傍において、非飽和画素データを探索する。その際、ＣＰＵ２００は、先ず、着目飽和画素データを含む飽和画素領域を認識する。２方向（１ライン上）に存在する画素データから非飽和画素データを探索する場合を例として、図１３（ａ）を参照して説明する。例えば、図１３（ａ）において、画素６に対応する飽和画素データが着目飽和画素データである場合、ＣＰＵ２００は、非飽和画素４および９に挟まれた飽和画素５〜８によって構成される領域を、着目画素データを含む飽和画素領域として認識する。
【００９９】
続いて、ＣＰＵ２００は、認識した飽和画素領域と隣接する非飽和画素領域（以下、隣接非飽和画素領域という。）を設定する。図１３（ａ）の例では、上述した飽和画素領域の両側に、３画素ずつ（図１３（ａ）において、ＮＰ_bufで表されている画素２〜画素４および画素９〜画素１１）を、隣接非飽和画素領域として設定している。
【０１００】
ＣＰＵ２００は、設定した隣接非飽和画素領域以外の非飽和画素領域（以下、参照非飽和画素領域という。）において、着目飽和画素データの修正に用いる非飽和画素データを探索し、参照非飽和画素データとして取得する。図１３（ａ）の例では、画素１から左側に位置する画素領域、および、画素１２から右側に位置する画素領域が参照非飽和画素領域となる。
【０１０１】
ＣＰＵ２００は、取得した参照非飽和画素データを用いて、着目飽和画素データを修正する。着目飽和画素データの修正には、第１の実施例と同様に種々の手法を用いることができる。ＣＰＵ２００は、例えば、画素値比率を用いて、または、画素データの変動特性を用いて、着目飽和画素データを修正する。図１３（ａ）の例では、探索された最も近い非飽和画素データを、参照非飽和画素データとして用いる場合を示している。飽和画素領域の画素データのうち、画素５および画素６に対応する飽和画素データは画素１（図中のＮＰ_ref）に対応する非飽和画素データを、参照非飽和画素データとして用いて修正される。一方、画素７および画素８に対応する飽和画素データは、画素１２（図中のＮＰ_ref）に対応する非飽和画素データを、参照非飽和画素データとして用いて修正される。
【０１０２】
ＣＰＵ２００は、さらに、上述した隣接非飽和画素領域に属する非飽和画素データ（以下、隣接非飽和画素データという。）についても、飽和画素データを修正したのと同様に、参照非飽和画素データを用いて修正する。この隣接非飽和画素データの修正についても、着目飽和画素データの修正と同様の種々の手法を用いることができる。ＣＰＵ２００は、例えば、画素値比率を用いて、または、画素データの変動特性を用いて、隣接非飽和画素データを修正する。図１３（ａ）の例では、左側の隣接非飽和画素データ（画素２〜画素４に対応する非飽和画素データ）は、画素１（図中のＮＰ_ref）に対応する非飽和画素データを、参照非飽和画素データとして用いて修正される。一方、右側の隣接非飽和画素データ（画素９〜画素１１に対応する非飽和画素データ）は、画素１２（図中のＮＰ_ref）に対応する非飽和画素データを、参照非飽和画素データとして用いて修正される。
【０１０３】
以上説明した本実施例によれば、第１の実施例と同様の効果に加えて、以下の効果が得られる。参照非飽和画素データを用いて、飽和画素データだけでなく、隣接非飽和画素領域に属する非飽和画素データも修正するので、修正後の飽和画素データと周囲の非飽和画素データとの間において、階調の連続性をより自然にすることができる。特に、非飽和画素領域から、飽和画素領域にかけての画素値の変化が急激である場合に、出力画像における不自然な階調変化を解消し、画質を向上させることができる。
【０１０４】
・第２の実施例の他の態様
上述した第２の実施例では、１ライン上において、飽和画素領域を認識し、隣接非飽和画素領域を設定しているが、図１３（ｂ）に示すように、２次元の領域において、飽和画素領域を認識し、その周囲に隣接非飽和画素領域を設定しても良い。かかる場合には、隣接非飽和画素領域の周囲を囲む領域（図１３（ｂ）において、クロスハッチングされている領域）が、参照非飽和画素領域となり、この領域において、飽和画素データおよび隣接非飽和画素データの修正に用いる非飽和画素データが探索される。
【０１０５】
第２の実施例において、参照非飽和画素領域における非飽和画素データの探索には、第１の実施例において説明した非飽和画素データの探索における種々の態様を用いることができる。例えば、着目飽和画素データから所定方向に存在する画素データから非飽和参照画素データを探索したり、探索する非飽和画素データに種々の参照条件を設定しても良い。
【０１０６】
第２の実施例において、飽和画素データの修正や、隣接未飽和画素データの修正において、第１の実施例において説明した着目飽和画素データの修正における種々の態様を用いることができる。例えば、参照非飽和画素データと修正対象である画素データ間の画素間距離に応じた重み付けをした複数の参照非飽和画素データを用いて、飽和画素データや隣接未飽和画素データを修正しても良い。また、複数の参照非飽和画素データから画素データの変動特性を算出して、算出した変動特性を用いて飽和画素データや隣接未飽和画素データを修正しても良い。
【０１０７】
また、上述した種々の態様を、適宜組み合わせて用いることができることは言うまでもない。
【０１０８】
Ｃ．変形例：
上述した実施例では、ディジタルスチルカメラ１０からＲＡＷデータ形式の画像データＧＤ１を取得して、パーソナルコンピュータ２０において、飽和画素データの修正を含む画像処理を実行する場合について説明したが、パーソナルコンピュータ２０の実行する画像処理の全部または一部を実行する機能をディジタルスチルカメラ１０に備えても良い。例えば、ディジタルスチルカメラ１０に備えられた画像処理装置が、画像データに対して、本実施例に係る飽和画素データ修正処理（図３：ステップＳ１３０）を実行しても良い。かかる場合には、ディジタルスチルカメラ１０は、飽和画素データ修正処理後の画像データをＲＡＷデータ形式で、または、ＪＰＥＧデータ形式やＴＩＦＦデータ形式に圧縮して、パーソナルコンピュータ２０、プリンタ３０、表示装置４０等に出力する。
【０１０９】
上述した実施例に係る飽和画素データ修正処理（図３：ステップＳ１３０）において、ＣＰＵ２００は、１つずつ着目画素データを設定して、着目画素データごとに、修正に用いる非飽和画素データを探索して、参照非飽和画素データとして取得しているが、場合によっては、非飽和画素データの探索を省略する等により、処理全体の効率化を図っても良い。例えば、着目飽和画素データに隣接する画素が修正済みの飽和画素データである場合には、ＣＰＵ２００は、隣接する飽和画素データの修正時に用いた参照非飽和画素データをそのまま用いる等により、非飽和画素データの探索処理を省略することができる。
【０１１０】
以上、実施例、変形例に基づき本発明に係る画像処理について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【図面の簡単な説明】
【０１１１】
【図１】第１の実施例に係る画像処理装置を含む画像処理システムを示す説明図。
【図２】第１の実施例に係るパーソナルコンピュータ２０の機能ブロック図。
【図３】第１の実施例に係る画像処理の処理ルーチンを示すフローチャート。
【図４】第１の実施例に係る飽和画素データ修正処理の処理ルーチンを示すフローチャート。
【図５】第１の実施例に係る非飽和画素データの探索を概念的に説明する説明図。
【図６】参照非飽和画素データを用いた着目飽和画素データの修正の具体例を示す説明図。
【図７】再現可能範囲を超えた画素値を、再現可能範囲に圧縮する変換を概念的に示す説明図。
【図８】非飽和画素データの探索における他の態様について説明する説明図。
【図９】重み付けをした参照非飽和画素データを用いた着目飽和画素データの修正の具体例を示す説明図。
【図１０】変動特性を用いた着目飽和画素データの修正の具体例を示す説明図。
【図１１】他の態様の組み合わせを用いた飽和画素データ修正処理を説明する説明図。
【図１２】第２の実施例に係るパーソナルコンピュータ２０の機能ブロック図。
【図１３】第２の実施例に係る飽和画素データ修正処理を説明する説明図。
【符号の説明】
【０１１２】
１０…ディジタルスチルカメラ（ＤＳＣ）
２０…パーソナルコンピュータ
２００…中央演算装置（ＣＰＵ）
２０１…ランダムアクセスメモリ（ＲＡＭ）
２０２…ハードディスク（ＨＤＤ）
２０３…カードスロット
２０４…入出力端子
２５…モニタ
３０…プリンタ
４０…表示装置
４５…表示部
ＭＣ…メモリカード
Ｍ１０…画像データ取得部
Ｍ２０…飽和画素データ探索部
Ｍ２２…飽和画素領域認識部
Ｍ２４…隣接非飽和画素領域設定部
Ｍ３０…非飽和画素データ探索部
Ｍ４０…飽和画素データ修正部
Ｍ５０…隣接非飽和画素データ修正部
ＳＰ…飽和画素
ＮＰ…非飽和画素
ＳＰ_tar…着目飽和画素
ＮＰ_ref…参照非飽和画素
ＮＰ_buf…隣接非飽和画素
【図１】
2005284423.tif 000005
【図２】
2005284423.tif 000006
【図３】
2005284423.tif 000007
【図４】
2005284423.tif 000008
【図５】
2005284423.tif 000009
【図６】
2005284423.tif 000010
【図７】
2005284423.tif 000011
【図８】
2005284423.tif 000012
【図９】
2005284423.tif 000013
【図１０】
2005284423.tif 000014
【図１１】
2005284423.tif 000015
【図１２】
2005284423.tif 000016
【図１３】
2005284423.tif 000017