(57)【特許請求の範囲】
【請求項１】
複数の色成分からなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する入力手段と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素と、前記複数の周囲の同色画素よりも前記処理対象画素に近接して存在する、前記処理対象画素とは異なる色成分を有する複数の周囲の異色画素からなる第１のグループの画素値の中から最大値を算出する第１のグループの最大値算出手段と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素からなる第２のグループの画素値の中から最大値を算出する第２のグループの最大値算出手段と、
前記第１のグループの画素値の分布幅を算出する第１のグループの分布幅算出手段と、
前記第２のグループの画素値の分布幅を算出する第２のグループの分布幅算出手段と、
前記第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、前記第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最大値を周囲の画素の最大値と設定し、それ以外の条件のときは第１のグループの最大値を周囲の画素の最大値と設定する最大値設定手段と、
前記処理対象画素の値と前記周囲の画素の最大値を比較して、前記処理対象画素の値が前記周囲の画素の最大値よりも大きな値を示す場合、前記処理対象画素の値を前記周囲の画素の最大値で置き換える補正手段とを備えることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、更に、
前記第１のグループの最大値の算出に参照した同じ画素の画素値の中から最小値を算出する第１のグループの最小値算出手段と、
前記第２のグループの最大値の算出に参照した同じ画素の画素値の中から最小値を算出する第２のグループの最小値算出手段と、
を備え、
前記第１のグループの分布幅算出手段は、前記第１のグループの最大値から前記第１のグループの最小値を減算した値を前記第１のグループの分布幅とし、
前記第２のグループの分布幅算出手段は、前記第２のグループの最大値から前記第２のグループの最小値を減算した値を前記第２のグループの分布幅とする
ことを特徴とする画像処理装置。
【請求項３】
請求項２に記載の画像処理装置において、更に、
前記第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、前記第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最小値を周囲の画素の最小値と設定し、それ以外の条件のときは第１のグループの最小値を周囲の画素の最小値と設定する最小値設定手段と、
前記周囲の画素の最大値から前記周囲の画素の最小値を差し引いた差分値を算出し、前記差分値に対して定数倍した値を前記処理対象画素に対する閾値として設定する閾値設定手段と
を備え、
前記補正手段は、前記処理対象画素の値と、前記周囲の画素の最大値に対して前記閾値を加算した値を比較して、前記処理対象画素の値が前記加算値を超えて大きな値を示す場合、前記処理対象画素の値を前記周囲の画素の最大値で置き換えることを特徴とする画像処理装置。
【請求項４】
複数の色成分からなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する入力手段と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素と、前記複数の周囲の同色画素よりも前記処理対象画素に近接して存在する、前記処理対象画素とは異なる色成分を有する複数の周囲の異色画素からなる第１のグループの画素値の中から最小値を算出する第１のグループの最小値算出手段と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素からなる第２のグループの画素値の中から最小値を算出する第２のグループの最小値算出手段と、
前記第１のグループの画素値の分布幅を算出する第１のグループの分布幅算出手段と、
前記第２のグループの画素値の分布幅を算出する第２のグループの分布幅算出手段と、
前記第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、前記第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最小値を周囲の画素の最小値と設定し、それ以外の条件のときは第１のグループの最小値を周囲の画素の最小値と設定する最小値設定手段と、
前記処理対象画素の値と前記周囲の画素の最小値を比較して、前記処理対象画素の値が前記周囲の画素の最小値よりも小さな値を示す場合、前記処理対象画素の値を前記周囲の画素の最小値で置き換える補正手段とを備えることを特徴とする画像処理装置。
【請求項５】
請求項４に記載の画像処理装置において、更に、
前記第１のグループの最小値の算出に参照した同じ画素の画素値の中から最大値を算出する第１のグループの最大値算出手段と、
前記第２のグループの最小値の算出に参照した同じ画素の画素値の中から最大値を算出する第２のグループの最大値算出手段と、
を備え、
前記第１のグループの分布幅算出手段は、前記第１のグループの最大値から前記第１のグループの最小値を減算した値を前記第１のグループの分布幅とし、
前記第２のグループの分布幅算出手段は、前記第２のグループの最大値から前記第２のグループの最小値を減算した値を前記第２のグループの分布幅とする
ことを特徴とする画像処理装置。
【請求項６】
請求項５に記載の画像処理装置において、更に、
前記第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、前記第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最大値を周囲の画素の最大値と設定し、それ以外の条件のときは第１のグループの最大値を周囲の画素の最大値と設定する最大値設定手段と、
前記周囲の画素の最大値から前記周囲の画素の最小値を差し引いた差分値を算出し、前記差分値に対して定数倍した値を前記処理対象画素に対する閾値として設定する閾値設定手段と
を備え、
前記補正手段は、前記処理対象画素の値と、前記周囲の画素の最小値に対して前記閾値を減算した値を比較して、前記処理対象画素の値が前記減算値を超えて小さな値を示す場合、前記処理対象画素の値を前記周囲の画素の最小値で置き換えることを特徴とする画像処理装置。
【請求項７】
複数の色成分からなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する入力処理と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素と、前記複数の周囲の同色画素よりも前記処理対象画素に近接して存在する、前記処理対象画素とは異なる色成分を有する複数の周囲の異色画素からなる第１のグループの画素値の中から最大値を算出する第１のグループの最大値算出処理と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素からなる第２のグループの画素値の中から最大値を算出する第２のグループの最大値算出処理と、
前記第１のグループの画素値の分布幅を算出する第１のグループの分布幅算出処理と、
前記第２のグループの画素値の分布幅を算出する第２のグループの分布幅算出処理と、
前記第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、前記第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最大値を周囲の画素の最大値と設定し、それ以外の条件のときは第１のグループの最大値を周囲の画素の最大値と設定する最大値設定処理と、
前記処理対象画素の値と前記周囲の画素の最大値を比較して、前記処理対象画素の値が前記周囲の画素の最大値よりも大きな値を示す場合、前記処理対象画素の値を前記周囲の画素の最大値で置き換える補正処理と、
をコンピュータに実行させることを特徴とする画像処理プログラム。
【請求項８】
複数の色成分からなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する入力処理と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素と、前記複数の周囲の同色画素よりも前記処理対象画素に近接して存在する、前記処理対象画素とは異なる色成分を有する複数の周囲の異色画素からなる第１のグループの画素値の中から最小値を算出する第１のグループの最小値算出処理と、
前記画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素からなる第２のグループの画素値の中から最小値を算出する第２のグループの最小値算出処理と、
前記第１のグループの画素値の分布幅を算出する第１のグループの分布幅算出処理と、
前記第２のグループの画素値の分布幅を算出する第２のグループの分布幅算出処理と、
前記第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、前記第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最小値を周囲の画素の最小値と設定し、それ以外の条件のときは第１のグループの最小値を周囲の画素の最小値と設定する最小値設定処理と、
前記処理対象画素の値と前記周囲の画素の最小値を比較して、前記処理対象画素の値が前記周囲の画素の最小値よりも小さな値を示す場合、前記処理対象画素の値を前記周囲の画素の最小値で置き換える補正処理と、
をコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理プログラムに関する。
【背景技術】
【０００２】
固体撮像素子を長時間露光すると、蓄積時間に対して正比例せずに、周辺画素よりも突出して明るくなる画素や周辺画素よりも突出して暗くなる画素が多数現れてくる。これらは一般に白傷（hot pixel）、黒傷（cold pixel）と呼ばれ、露光時間が長くなるほど、また撮像感度が高くなるほど出現する画素の割合が多くなってくる性質をもつ。これらの欠陥画素を補正するのに通常、MaxフィルタとMinフィルタが用いられる。すなわち、周囲画素の最大値と最小値を計算して、処理対象画素の画素値が周囲画素の最大値や最小値よりも突出していればこれらの値で置き換える。特許文献１には、Bayer配列のようなカラーの単板撮像素子の入力面に対して、Max,Minフィルタを用いて直接Bayer面の段階で白傷、黒傷補正をする方法が開示されている。Bayer面上で処理対象画素を中心に５×５画素の範囲に含まれる同色画素の周辺８点の画素値を用いてMax,Minフィルタが構成される。
【０００３】
また、本出願人と同一発明者による特許文献２には、同色画素も参照しつつ同時にそれより近接して存在する異色画素も用いて空間分解能の高いMax,Minフィルタを構成する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第７２０２８９４号明細書
【特許文献２】特開２０１１−１３５５６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の方法では、参照する同色画素が最近接画素よりも離れて存在するため、空間分解能の低いフィルタ特性とならざるをえない。したがって、突出点は除去するものの、画像の構造破壊が極めて大きい結果しか得られないという問題があった。
また、特許文献２の方法では、通常、長時間露光の撮影に用いられる夜景などの撮影頻度の多いシーンでは、有効に突出点を除去しつつ、画像の構造破壊を防止する機能が実現できる。しかしながら、マクベスチャートのような有彩色部を多く含むシーンを敢えて長時間露光によって撮影すると、有彩色のカラーパッチの領域で、元の白傷や黒傷の突出点よりは随分と強度が減衰されているものの、突出点が依然として残留して見える場合が、特に彩度の高い領域で発生するという問題があった。
【課題を解決するための手段】
【０００６】
本発明は、画像データの画素値を補正する画像処理装置に適用され、複数の色成分からなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する入力手段と、画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素と、複数の周囲の同色画素よりも処理対象画素に近接して存在する、処理対象画素とは異なる色成分を有する複数の周囲の異色画素からなる第１のグループの画素値の中から最大値を算出する第１のグループの最大値算出手段と、画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素からなる第２のグループの画素値の中から最大値を算出する第２のグループの最大値算出手段と、第１のグループの画素値の分布幅を算出する第１のグループの分布幅算出手段と、第２のグループの画素値の分布幅を算出する第２のグループの分布幅算出手段と、第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最大値を周囲の画素の最大値と設定し、それ以外の条件のときは第１のグループの最大値を周囲の画素の最大値と設定する最大値設定手段と、処理対象画素の値と周囲の画素の最大値を比較して、処理対象画素の値が周囲の画素の最大値よりも大きな値を示す場合、処理対象画素の値を周囲の画素の最大値で置き換える補正手段とを備えることを特徴とする。
本発明は、画像データの画素値を補正する画像処理装置に適用され、複数の色成分からなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する入力手段と、画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素と、複数の周囲の同色画素よりも処理対象画素に近接して存在する、処理対象画素とは異なる色成分を有する複数の周囲の異色画素からなる第１のグループの画素値の中から最小値を算出する第１のグループの最小値算出手段と、画像データの１つの処理対象画素に対し、前記処理対象画素と同じ色成分を有する複数の周囲の同色画素からなる第２のグループの画素値の中から最小値を算出する第２のグループの最小値算出手段と、第１のグループの画素値の分布幅を算出する第１のグループの分布幅算出手段と、第２のグループの画素値の分布幅を算出する第２のグループの分布幅算出手段と、第１のグループの分布幅が第１の所定値以上の大きさを示し、かつ、第２のグループの分布幅が第２の所定値以下の大きさを示す条件を満たすとき、第２のグループの最小値を周囲の画素の最小値と設定し、それ以外の条件のときは第１のグループの最小値を周囲の画素の最小値と設定する最小値設定手段と、処理対象画素の値と周囲の画素の最小値を比較して、処理対象画素の値が周囲の画素の最小値よりも小さな値を示す場合、処理対象画素の値を周囲の画素の最小値で置き換える補正手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像構造の保存性を維持しつつ白傷・黒傷を効果的に除去することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第一の実施形態によるカメラの構成を例示するブロック図である。
【図２】制御装置が実行する補正処理の流れを説明するフローチャートである。
【図３】白傷・黒傷補正フィルタを模式的に表す図である。
【図４】Max,Minフィルタ処理の流れを説明するフローチャートである。
【図５】(a)補正対象画素がＲ画素の場合のフィルタを例示する図、(b)補正対象画素がＢ画素の場合のフィルタを例示する図、(c)補正対象画素がＧ画素の場合のフィルタを例示する図である。
【図６】(a)異色画素込みの画素値の分布を例示する図、(b)同色画素のみの画素値の分布を例示する図である。
【図７】(a)異色画素込みの画素値の分布を例示する図、(b)同色画素のみの画素値の分布を例示する図である。
【図８】画素値の統計異常を例示する図である。
【図９】第二の実施形態における白傷・黒傷補正フィルタを模式的に表す図である。
【図１０】(a)補正対象画素がＲ画素の場合のフィルタを例示する図、(b)補正対象画素がＢ画素の場合のフィルタを例示する図、(c)補正対象画素がＧ画素の場合のフィルタを例示する図である。
【図１１】コンピュータ装置を例示する図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明を実施するための形態について説明する。
（第一の実施形態）
図１は、本発明の第一の実施形態による画像処理装置を搭載するカメラの構成を例示するブロック図である。カメラ１００は、操作部材１０１と、撮像素子１０２と、制御装置１０３と、メモリカードスロット１０４と、モニタ１０５とを備えている。操作部材１０１は、使用者によって操作される種々の入力部材、例えば電源ボタン、レリーズボタン、ズームボタン、十字キー、決定ボタン、再生ボタン、削除ボタンなどを含んでいる。
【００１０】
撮像素子１０２は、ＣＭＯＳイメージセンサーなどによって構成される。撮像素子１０２は、不図示のレンズにより結像される被写体像を撮像する。そして、撮像によって得られた画像信号を制御装置１０３へ出力する。
【００１１】
制御装置１０３は、メモリ、およびその他の周辺回路により構成され、カメラ１００が行う撮影動作を制御する。制御装置１０３を構成するメモリには、ＳＤＲＡＭやフラッシュメモリが含まれる。ＳＤＲＡＭは揮発性のメモリであって、制御装置１０３がプログラム実行時にプログラムを展開するためのワークメモリとして使用される。また、ＳＤＲＡＭは、データを一時的に記憶するためのバッファメモリとしても使用される。一方、フラッシュメモリは不揮発性のメモリであって、制御装置１０３が実行するプログラムのデータや、プログラム実行時に読込まれる種々のパラメータなどが記録されている。
【００１２】
メモリカードスロット１０４は、記憶媒体としてのメモリカードを挿入するためのスロットである。制御装置１０３は、撮影処理を行なうことによって生成した画像ファイルを、メモリカードスロット１０４に挿入されているメモリカードへ書込んで記録する。また、制御装置１０３は、メモリカードスロット１０４に挿入されているメモリカード内に記録されている画像ファイルを読込む。
【００１３】
モニタ１０５は、カメラ１００の背面に搭載された液晶モニタ（背面モニタ）である。当該モニタ１０５には、メモリカードに記録されている画像ファイルに基づく再生画像や、カメラ１００を設定するための設定メニューなどが表示される。また、使用者が操作部材１０１を操作してカメラ１００を撮影モードに設定すると、制御装置１０３は、撮像素子１０２から時系列で取得した画像の表示用画像データをモニタ１０５に出力する。これによってモニタ１０５にスルー画が表示される。
【００１４】
本実施形態では、撮像素子１０２を単板式カラー撮像素子によって構成し、その撮像面にはＲ（赤）、Ｇ（緑）、およびＢ（青）のカラーフィルタがBayer配列されているものとする。すなわち、撮像素子１０２から制御装置１０３に出力される画像データはＲＧＢ表色系で示されるものとし、この画像データを構成する各々の画素には、ＲＧＢの何れか１つの色成分の色情報が存在する。
【００１５】
本実施形態は、上記カメラ１００の制御装置１０３が実行する白傷および黒傷に対する欠陥画素補正処理に特徴を有するので、以下の説明はこの補正処理を中心に行う。図２は、制御装置１０３が実行する補正処理の流れを説明するフローチャートである。図２のステップＳ１０において、制御装置１０３は、撮像素子１０２からBayer画像データを読み出す。これにより、制御装置１０３には、光量に対して線型階調のBayer画像データが入力される。
【００１６】
その後、制御装置１０３はステップＳ２０へ進み、ホワイトバランス補正を行う。例えば、制御装置１０３は、ＲＧＢ間のホワイトバランス・ゲインがＲ／Ｇ＝ｋ１、Ｂ／Ｇ＝ｋ２のとき、Bayer面のＲ画素にはｋ１倍のゲインを、Ｂ画素にはｋ２倍のゲインを掛ける。その後、ステップＳ３０へ進む。
【００１７】
ステップＳ３０において、制御装置１０３は、以下のように白傷と黒傷を補正する。本説明では、ホワイトバランス補正の済んだBayer画像データにおいて補正対象画素［i,j］の画素値をSin［i,j］で表す。本補正処理は、突出点除去フィルタを掛けて当該補正対象画素［i,j］を補正した画素値Sout［i,j］を出力するものとする。ここでは、Bayer面上の色成分に無関係に共通のフィルタを定義して、簡便なフィルタ回路を組むことができる例を示す。
【００１８】
＜データコピー＞
制御装置１０３は、次式(1)によりデータコピーを行う。すなわち、元画像データをSinのバッファメモリに退避させておく。
Sout［i,j］＝Sin［i,j］                    ・・・(1)
【００１９】
＜Max,Minフィルタ＞
制御装置１０３は、以下の手順でMax,Minフィルタを掛けて白傷・黒傷補正を行う。図３は、白傷・黒傷補正フィルタを模式的に表す図である。図３において、中心画素がBayer面上のＲないしはＢに該当するとき＋印の画素は全て異色画素、×印の画素は全て同色画素に相当する。中心画素がＧに該当するときは＋印の画素には異色画素と同色画素が混在し、×印の画素は全て同色画素に相当する。
【００２０】
図４は、Max,Minフィルタ処理の流れを例示するフローチャートである。図４のステップＳ３２１〜Ｓ３２２において、制御装置１０３は２種類の最大値を算出する。制御装置１０３は、同色画素のみの最大値max_same （Ｓ３２１）と、異色画素込みの最大値max_diff （Ｓ３２２）とを算出する。Maxフィルタは次式(2)〜(6)により表される。次式(5)により同色画素のみの最大値を算出し、次式(6)により異色画素込みの最大値を算出する。大文字で示すMAXは、最大値を返す関数である。
【００２１】
本実施の形態では、画像データが正方格子配列の場合を想定し、ここで用いるフィルタは、図３に示すように、「○」で表す補正対象画素を中心とした９×９画素の範囲に含まれる周辺画素２４点のフィルタとする。このフィルタは、補正対象画素がＲ画素、Ｂ画素、及びＧ画素の全ての場合に共通に使用する。すなわち、図５(a)に示すように補正対象画素がＲ画素の場合には、図３において「＋」で表す異色画素（Ｂ画素及びＧ画素）８点と、「×」で表す同色画素（Ｒ画素）１６点とのMaxフィルタとする。同様に、図５(b)に示すように補正対象画素がＢ画素の場合も、図３において「＋」で表す異色画素（Ｒ画素及びＧ画素）８点と、「×」で表す同色画素（Ｂ画素）１６点とのMaxフィルタとする。また、図５(c)に示すように補正対象画素がＧ画素の場合には、図３において「＋」で表す異色画素（Ｒ画素及びＢ画素）と同色画素（Ｇ画素）とを含む８点と、「×」で表す同色画素（Ｇ画素）１６点とのMaxフィルタとする。
【００２２】
Max1= MAX{ Sin[i-1,j], Sin[i+1,j], Sin[i,j-1], Sin[i,j+1],
Sin[i-1,j-1], Sin[i+1,j+1], Sin[i-1,j+1], Sin[i+1,j-1] }・・・(2)
max2= MAX{ Sin[i-2,j], Sin[i+2,j], Sin[i,j-2], Sin[i,j+2],
Sin[i-2,j-2], Sin[i+2,j+2], Sin[i-2,j+2], Sin[i+2,j-2] }・・・(3)
max3= MAX{ Sin[i-4,j-2], Sin[i-4,j+2], Sin[i+4,j-2], Sin[i+4,j+2],
Sin[i-2,j-4], Sin[i+2,j-4], Sin[i-2,j+4], Sin[i+2,j+4] }・・・(4)
同色画素のみの最大値max_same の算出
max_same = MAX{ max2, max3 }           ・・・(5)
異色画素込みの最大値max_diff の算出
max_diff = MAX{ max1, max_same }       ・・・(6)
【００２３】
ステップＳ３２３〜Ｓ３２４において、制御装置１０３は２種類の最小値を算出する。制御装置１０３は、同色画素のみの最小値min_same （Ｓ３２３）と、異色画素込みの最小値min_diff （Ｓ３２４）とを算出する。Minフィルタは次式(7)〜(11)により表される。次式(10)により同色画素のみの最小値を算出し、次式(11)により異色画素込みの最小値を算出する。大文字で示すMINは、最小値を返す関数である。
【００２４】
Minフィルタは、上記Maxフィルタと同様に、図３に例示した「○」で表す補正対象画素を中心とした９×９画素の範囲に含まれる周辺画素２４点、すなわち「＋」で表す異色画素８点と「×」で表す同色画素１６点のMinフィルタである。ただし、Maxフィルタの場合と同様に、Ｇ画素が補正対象画素のときは「＋」で表す画素は異色画素４点と同色画素４点となる。
【００２５】
min1= MIN{ Sin[i-1,j], Sin[i+1,j], Sin[i,j-1], Sin[i,j+1],
Sin[i-1,j-1], Sin[i+1,j+1], Sin[i-1,j+1], Sin[i+1,j-1] }・・・(7)
min2= MIN{ Sin[i-2,j], Sin[i+2,j], Sin[i,j-2], Sin[i,j+2],
Sin[i-2,j-2], Sin[i+2,j+2], Sin[i-2,j+2], Sin[i+2,j-2] }・・・(8)
min3= MIN{ Sin[i-4,j-2], Sin[i-4,j+2], Sin[i+4,j-2], Sin[i+4,j+2],
Sin[i-2,j-4], Sin[i+2,j-4], Sin[i-2,j+4], Sin[i+2,j+4] }・・・(9)
同色画素のみの最小値min_same の算出
min_same = MIN{ min2, min3 }           ・・・(10)
異色画素込みの最小値min_diff の算出
min_diff = MIN{ min1, min_same }       ・・・(11)
【００２６】
ステップＳ３２５において、制御装置１０３は、最大値と最小値の切り替え設定を行う。図６は、補正対象画素を中心とする周辺画素の画素値の分布を例示する図である。図６(a)は、異色画素込みの画素値の分布を例示する図であり、縦軸は画素値を表し、横軸は頻度を表す。図６(b)は、同色画素のみの画素値の分布を例示する図であり、縦軸は画素値を表し、横軸は頻度を表す。
【００２７】
異色画素込みの画素値の分布幅を、異色画素込みの画素値の最大値と最小値の差で表現することができる。同様に、同色画素のみの画素値の分布幅を、同色画素のみの画素値の最大値と最小値の差で表現することができる。
【００２８】
同色画素と異色画素を同時に含む異色画素込みの画素値の分布幅を見れば、その領域が有彩色部にあるのか無彩色部にあるのかを見積もることができる。しかしながら、異色画素込みの画素値の分布幅が大きいということは、必ずしも有彩色部であることを意味しない。すなわち、図６に例示した分布の場合は、無彩色部でテキスチャ構造領域であってもこの条件に合致するし、有彩色部でテキスチャ構造領域であってもこの条件に合致する。
【００２９】
そうすると、例えば天体写真の天の川のような無彩色の星が密集するような領域も有彩色部の条件に合致してしまう。仮に有彩色部の条件に合致する領域を全て、異色込みのMax, Minフィルタから同色画素のみによるMax, Minフィルタに置き換えてしまうと、テキスチャ構造領域の画像構造の破壊が甚大となってしまう。
【００３０】
したがって、同色画素のみによるMax, Minフィルタに置き換える条件として更なる限定条件が必要となる。そこで、同色画素のみの画素値の値の分布を調べれば、そこが有彩色部で平坦領域であるのか、有彩色部でテキスチャ構造領域であるのかを区別することができる。主に白傷・黒傷が残留する問題が目立つのは有彩色部の平坦領域である。有彩色部のテキスチャ構造領域でも白傷・黒傷の残留問題は同じく生じているが、テキスチャの中に存在する点はテキスチャと区別がつかず視覚的に目立ちにくいため対処する必要性は低い。
【００３１】
図７は、有彩色部で平坦領域である場合における、周辺画素の画素値の分布を例示する図である。図７(a)は、異色画素込みの画素値の分布を例示する図であり、縦軸は画素値を表し、横軸は頻度を表す。図７(b)は、同色画素のみの画素値の分布を例示する図であり、縦軸は画素値を表し、横軸は頻度を表す。図７(b)によれば、同色画素のみの画素値の分布幅が小さいので、有彩色部で平坦領域であることを区別できる。
【００３２】
このように、２種類の画素値の分布幅を調べれば、異色込み型のMax, Minフィルタで白傷・黒傷の残留問題に対処する必要がある領域を区別できる。
【００３３】
制御装置１０３は、有彩色部の平坦部領域では、同色画素のみの最大値max_same を最大値Max に、同色画素のみの最小値min_same を最小値Min にそれぞれ設定する。それ以外の領域では従来通り異色画素込みの最大値max_diff を最大値Max に、異色画素込みの最小値min_diff を最小値Min にそれぞれ設定する。この設定は、次式(12)で表される。
if ( max_diff - min_diff > ThS  &&  max_same - min_same <= Thflat ) 
{max = max_same,min = min_same}
else
{max = max_diff,min = min_diff}        ・・・(12)
ここに、彩度の閾値を表すThSの値は、たとえば２５６階調の場合に１５程度の値に設定する。平坦性の閾値を表すThflatはの値は、ノイズのゆらぎ幅と同じ値σnoiseを採用する。すなわち、撮像素子１０２に設定されているＩＳＯ感度が高いほど大きな値を設定する。
【００３４】
ステップＳ３２６において、制御装置１０３は、統計判別による最大値と最小値への置き換えを行う。処理対象画素が周辺画素に対して突出しているか否かの判断は、単に最大値や最小値に比べて突出しているかを判断するのではなく、画像構造の非破壊性を高めるため、引用文献２に示されているように階調方向に関する統計異常を検知して適応的に最大値・最小値への置き換えを行うのか否かの判断を行う方式を採用する。
【００３５】
制御装置１０３は、次式(13)〜(15)により最大値と最小値へ置き換える。
Th = ( max - min ) * α                ・・・(13)
if ( Sin[i,j] > max + Th ) → Sout[i,j] = max + Th'    ・・・(14)
if ( Sin[i,j] < min - Th ) → Sout[i,j] = min + Th'    ・・・(15)
ここに、定数倍αの値は０〜１の範囲の値をとるが、通常１に設定するとよい。それ以外の代表的設定値は、１／２、１／３、１／６である。また、Th'=０〜Thの範囲の値をとる。すなわちTh'はThの関数である。通常Th'=０でよい。
【００３６】
max-minの値は、平坦領域では±３σ程度のノイズのゆらぎ幅を表し、テキスチャ・エッジ領域では画像構造のコントラスト幅を表す。これらの基準幅を大幅に越えて突出している画素は、白傷や黒傷が発生している統計異常な画素と判断する。図８は、画素値の統計異常を例示する図であり、縦軸は画素値を表し、横軸は頻度を表す。
【００３７】
このようにして、第一の実施形態では、従来の異色込み型のMax, Minフィルタの画像構造非破壊性の性能を保ちつつ、有彩色部においても白傷・黒傷が残らない補正処理を行うことができる。
【００３８】
制御装置１０３は、その後ステップＳ４０（図２）へ進み、色補間処理を実行する。すなわち、各画素位置にＲＧＢ３色を生成する色補間処理を公知の技術によって行う。その後、図２による処理を終了する。
【００３９】
以上説明した第一の実施形態によれば、次の作用効果が得られる。
（１）画像データの画素値を補正する制御装置１０３は、複数の色成分R,G,Bからなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する制御装置１０３と、画像データの１つの処理対象画素に対し、該処理対象画素と同じ色成分を有する１６点の周囲の同色画素と、該１６点の同色画素よりも処理対象画素に近接して存在する、処理対象画素とは異なる色成分を有する８点の周囲の異色画素からなる２４点の異色画素込みの画素値の中から最大値max_diffを算出する制御装置１０３と、画像データの１つの処理対象画素に対し、該処理対象画素と同じ色成分を有する１６点の周囲の同色画素のみの画素値の中から最大値max_sameを算出する制御装置１０３と、異色画素込みの画素値の分布幅max_diff - min_diffを算出する制御装置１０３と、同色画素のみの画素値の分布幅max_same - min_sameを算出する制御装置１０３と、異色画素込みの分布幅max_diff - min_diffがThS以上の大きさを示し、かつ、同色画素のみの分布幅max_same - min_sameがThflat以下の大きさを示す条件を満たすとき、同色画素のみの最大値max_sameを周囲の画素の最大値Maxと設定し、それ以外の条件のときは異色画素込みの最大値max_diffを周囲の画素の最大値Maxと設定する制御装置１０３と、処理対象画素の値Sin［i,j］と周囲の画素の最大値Maxを比較して、処理対象画素の値が周囲の画素の最大値Maxよりも大きな値を示す場合、処理対象画素の値Sin［i,j］を周囲の画素の最大値maxで置き換える制御装置１０３とを備えようにした。このように、異色画素と同色画素を同時に参照する異色込み型のMaxフィルタと同色画素のみを参照する同色のみMaxフィルタの２つを用意し、異色込み型のMaxフィルタを基本に使用しつつ、特に残留突出点の発生が目立つ有彩色部の平坦部領域という条件に限って限定的に同色のみMaxフィルタを用いるようにしたので、画像構造の保存性を維持しつつ白傷を効果的に除去することができる。
【００４０】
（２）上記（１）の制御装置１０３は更に、異色画素込みの最大値max_diffの算出に参照した同じ画素の画素値の中から最小値min_diffを算出する制御装置１０３と、同色画素のみの最大値max_sameの算出に参照した同じ画素の画素値の中から最小値min_sameを算出する制御装置１０３と、を備え、制御装置１０３は、異色画素込みの最大値max_diffから最小値min_diffを減算した値を異色画素込みの画素値の分布幅max_diff - min_diffとし、制御装置１０３は、同色画素のみの最大値max_sameから最小値min_sameを減算した値を同色画素のみの画素値の分布幅max_same - min_sameとするようにした。これにより、周囲画素において異色画素込みの場合と同色画素のみの場合のそれぞれで、適切に分布幅を求めることができる。
【００４１】
（３）上記（２）の制御装置１０３は更に、異色画素込みの分布幅max_diff - min_diffがThS以上の大きさを示し、かつ、同色画素のみの分布幅max_same - min_sameがThflat以下の大きさを示す条件を満たすとき、同色画素のみの最小値min_sameを周囲の画素の最小値Minと設定し、それ以外の条件のときは異色画素込みの最小値min_diffを周囲の画素の最小値Minと設定する制御装置１０３と、周囲の画素の最大値Maxから周囲の画素の最小値Minを差し引いた差分値を算出し、該差分値に対してα倍した値Thを処理対象画素に対する閾値として設定する制御装置１０３とを備え、制御装置１０３は、処理対象画素の値Sin［i,j］と、周囲の画素の最大値maxに対して閾値Thを加算した値を比較して、処理対象画素の値Sin［i,j］が該加算値max+Thを超えて大きな値を示す場合、処理対象画素の値Sin［i,j］を周囲の画素の最大値maxで置き換える。これにより、白傷を適切に除去することができる。
【００４２】
（４）画像データの画素値を補正する制御装置１０３は、複数の色成分R,G,Bからなり、１つの画素に１つの色成分を有する複数の画素からなる画像データを入力する制御装置１０３と、画像データの１つの処理対象画素に対し、該処理対象画素と同じ色成分を有する１６点の周囲の同色画素と、該１６点の同色画素よりも処理対象画素に近接して存在する、処理対象画素とは異なる色成分を有する８点の周囲の異色画素からなる２４点の異色画素込みの画素値の中から最小値min_diffを算出する制御装置１０３と、画像データの１つの処理対象画素に対し、該処理対象画素と同じ色成分を有する１６点の周囲の同色画素のみの画素値の中から最小値min_sameを算出する制御装置１０３と、異色画素込みの画素値の分布幅max_diff - min_diffを算出する制御装置１０３と、同色画素のみの画素値の分布幅max_same - min_sameを算出する制御装置１０３と、異色画素込みの分布幅max_diff - min_diffがThS以上の大きさを示し、かつ、同色画素のみの分布幅max_same - min_sameがThflat以下の大きさを示す条件を満たすとき、同色画素のみの最小値Min_sameを周囲の画素の最小値Minと設定し、それ以外の条件のときは異色画素込みの最小値Min_diffを周囲の画素の最小値Minと設定する制御装置１０３と、処理対象画素の値Sin［i,j］と周囲の画素の最小値Minを比較して、処理対象画素の値Sin［i,j］が周囲の画素の最小値Minよりも小さな値を示す場合、処理対象画素の値Sin［i,j］を周囲の画素の最小値Minで置き換える制御装置１０３とを備えるようにした。このように、異色画素と同色画素を同時に参照する異色込み型のMinフィルタと同色画素のみを参照する同色のみMinフィルタの２つを用意し、異色込み型のMinフィルタを基本に使用しつつ、特に残留突出点の発生が目立つ有彩色部の平坦部領域という条件に限って限定的に同色のみMinフィルタを用いるようにしたので、画像構造の保存性を維持しつつ黒傷を効果的に除去することができる。
【００４３】
（５）上記（４）の制御装置１０３は更に、異色画素込みの最小値Min_diffの算出に参照した同じ画素の画素値の中から最大値Max_diffを算出する制御装置１０３と、同色画素のみの最小値Min_sameの算出に参照した同じ画素の画素値の中から最大値Max_sameを算出する制御装置１０３と、を備え、制御装置１０３は、異色画素込みの最大値max_diffから最小値min_diffを減算した値を異色画素込みの画素値の分布幅max_diff - min_diffとし、制御装置１０３は、同色画素のみの最大値max_sameから最小値min_sameを減算した値を同色画素のみの画素値の分布幅max_same - min_sameとするようにした。これにより、周囲画素において異色画素込みの場合と同色画素のみの場合のそれぞれで、適切に分布幅を求めることができる。
【００４４】
（６）上記（５）の制御装置１０３は更に、異色画素込みの分布幅max_diff - min_diffがThS以上の大きさを示し、かつ、同色画素のみの分布幅max_same - min_sameがThflat以下の大きさを示す条件を満たすとき、同色画素のみの最大値max_sameを周囲の画素の最大値Maxと設定し、それ以外の条件のときは異色画素込みの最大値max_diffを周囲の画素の最大値Maxと設定する制御装置１０３と、周囲の画素の最大値Maxから周囲の画素の最小値Minを差し引いた差分値を算出し、該差分値に対してα倍した値Thを処理対象画素に対する閾値として設定する制御装置１０３とを備え、制御装置１０３は、処理対象画素の値Sin［i,j］と、周囲の画素の最小値Minに対して閾値Thを減算した値を比較して、処理対象画素の値Sin［i,j］が該減算値Min-Thを超えて小さな値を示す場合、処理対象画素の値Sin［i,j］を周囲の画素の最小値Minで置き換える。これにより、黒傷を適切に除去することができる。
【００４５】
（変形例１）
なお、上述した「最大値と最小値の切り替え設定」（ステップＳ３２５）では、彩度の指標として、異色画素と同色画素を同時に含む画素値の分布のうち最大値から最小値を引いた値を採用したが、参照画素として定義した異なる色成分間の画素差分の絶対値を最も近接に存在する画素の間で複数とってそれらの和を用いてもよい。同様に、平坦領域の指標として、同色画素の画素値の分布のうち最大値から最小値を引いた値を採用したが、参照画素として定義した同じ色成分間の画素差分の絶対値を同色画素の間で複数とってそれらの和を用いてもよい。
【００４６】
（第二の実施形態）
上述した第一の実施形態では、図２に示したフローチャートのステップＳ３０において、図３に示した９×９画素の範囲に含まれる異色画素を含んだ周辺画素２４点のMax、Minフィルタを用いて白傷・黒傷補正を行う例について説明した。第二の実施の形態では、ハードウェアなどの実装時の回路規模を削減するため、参照画素の範囲を減らした簡略案を説明する。なお、第一の実施形態と異なる点を中心に説明する。
【００４７】
図９は、第二の実施形態における白傷・黒傷補正フィルタを模式的に表す図である。図９において、「○」で表す補正対象画素を中心とした５×５画素の範囲に含まれる周辺画素１６点のフィルタとする。補正対象画素がＲ画素、Ｂ画素、及びＧ画素の全ての場合にフィルタを共通に使用する点は、第一の実施形態と同様である。
【００４８】
＜２種類の最大値の算出＞
制御装置１０３はMaxフィルタを定義する。Maxフィルタは次式(16)〜(19)により表される。次式(18)により同色画素のみの最大値を算出し、次式(19)により異色画素込みの最大値を算出する。大文字で示すMAXは、最大値を返す関数である。
【００４９】
図１０(a)に示すように補正対象画素がＲ画素の場合には、図９において「＋」で表す異色画素（Ｂ画素及びＧ画素）８点と、「×」で表す同色画素（Ｒ画素）８点とのMaxフィルタとする。同様に、図１０(b)に示すように補正対象画素がＢ画素の場合も、図９において「＋」で表す異色画素（Ｒ画素及びＧ画素）８点と、「×」で表す同色画素（Ｂ画素）８点とのMaxフィルタとする。また、図１０(c)に示すように補正対象画素がＧ画素の場合には、図９において「＋」で表す異色画素（Ｒ画素及びＢ画素）と同色画素（Ｇ画素）とを含む８点と、「×」で表す同色画素（Ｇ画素）８点とのMaxフィルタとする。
【００５０】
max1= MAX{ Sin[i-1,j], Sin[i+1,j], Sin[i,j-1], Sin[i,j+1],
Sin[i-1,j-1], Sin[i+1,j+1], Sin[i-1,.j+1], Sin[i+1,j-1] }・・・(16)
max2= MAX{ Sin[i-2,j], Sin[i+2,j], Sin[i,j-2], Sin[i,j+2],
Sin[i-2,j-2], Sin[i+2,j+2], Sin[i-2,.j+2], Sin[i+2,j-2] }・・・(17)
同色画素のみの最大値の算出
max_same = max2                        ・・・(18)
異色画素込みの最大値の算出
max_diff = MAX{ max1, max_same }      ・・・(19)
【００５１】
＜２種類の最小値の算出＞
制御装置１０３はMinフィルタを定義する。Minフィルタは次式(20)〜(23)により表される。次式(22)により同色画素のみの最小値を算出し、次式(23)により異色画素込みの最小値を算出する。大文字で示すMINは、最小値を返す関数である。
【００５２】
Minフィルタは、上記Maxフィルタと同様に、図９に例示した「○」で表す補正対象画素を中心とした５×５画素の範囲に含まれる周辺画素１６点、すなわち「＋」で表す異色画素８点と「×」で表す同色画素８点のMinフィルタである。ただし、Maxフィルタの場合と同様に、Ｇ画素が補正対象画素のときは「＋」で表す画素は異色画素４点と同色画素４点となる。
【００５３】
min1= MIN{ Sin[i-1,j], Sin[i+1,j], Sin[i,j-1], Sin[i,j+1],
Sin[i-1,j-1], Sin[i+1,j+1], Sin[i-1,.j+1], Sin[i+1,j-1] }・・・(20)
min2= MIN{ Sin[i-2,j], Sin[i+2,j], Sin[i,j-2], Sin[i,j+2],
Sin[i-2,j-2], Sin[i+2,j+2], Sin[i-2,.j+2], Sin[i+2,j-2] }・・・(21)
同色画素のみの最小値の算出
min_same = min2                       ・・・(22)
異色画素込みの最小値の算出
min_diff = MIN{ min1, min_same }      ・・・(23)
【００５４】
以上説明した第二の実施形態によれば、第一の実施形態に比べて小さい回路規模で、第一の実施形態と同様の作用効果が得られる。
【００５５】
（変形例２）
上述した実施形態では、デジタルカメラ１に画像処理装置を搭載する例を説明したが、画像処理装置をパーソナルコンピュータによって構成するようにしてもよい。図２、図４に例示したフローチャートの処理を行うプログラムを図１１に示すコンピュータ装置２００に実行させることにより、画像処理装置を構成してもよい。プログラムをパーソナルコンピュータ２００に取込んで使用する場合には、パーソナルコンピュータ２００のデータストレージ装置にプログラムをローディングした上で、当該プログラムを実行させることによって画像処理装置として使用する。
【００５６】
パーソナルコンピュータ２００に対するプログラムのローディングは、プログラムを格納したＣＤ−ＲＯＭなどの記憶媒体２０４をパーソナルコンピュータ２００にセットして行ってもよいし、ネットワークなどの通信回線２０１を経由する方法でパーソナルコンピュータ２００へローディングしてもよい。通信回線２０１を経由する場合は、通信回線２０１に接続されたサーバー（コンピュータ）２０２のハードディスク装置２０３などにプログラムを格納しておく。プログラムは、記憶媒体２０４や通信回線２０１を介する提供など、種々の形態のコンピュータプログラム製品として供給することができる。以上説明した変形例によれば、上記実施形態と同様の作用効果が得られる。
【００５７】
以上の説明はあくまで一例であり、上記の実施形態の構成に何ら限定されるものではない。
【符号の説明】
【００５８】
１００…カメラ
１０１…操作部材
１０２…撮像素子
１０３…制御装置
１０５…モニタ
２００…パーソナルコンピュータ
【図１】
0005794085.tif 000002
【図２】
0005794085.tif 000003
【図３】
0005794085.tif 000004
【図４】
0005794085.tif 000005
【図５】
0005794085.tif 000006
【図６】
0005794085.tif 000007
【図７】
0005794085.tif 000008
【図８】
0005794085.tif 000009
【図９】
0005794085.tif 000010
【図１０】
0005794085.tif 000011
【図１１】
0005794085.tif 000012