(57)【要約】【課題】  帯域バランスに優れたノイズ除去を可能とする。【解決手段】  ノイズ除去手段（３１〜３６）は、画像信号の注目画素の周辺にある複数の周辺画素の加重平均をとることによって注目画素の新たな画素値を算出する画像処理フィルタ（３１、３３、３５）を含み、前記画像処理フィルタは、前記加重平均における各周辺画素の重み値を、注目画素と周辺画素との位置関係に応じた値で、且つ、注目画素の画素値と周辺画素の画素値との差に応じた非線形な演算により決定された値に設定するものであって、入力される画像信号に対して、前記加重平均における前記重み値の設定が各々異なる複数の前記画像処理フィルタを通過させることにより、該画像信号に対して周波数成分毎に異なるノイズ除去処理を行う。【選択図】  図１
2008242696.tif 000002
【特許請求の範囲】
【請求項１】
入力される画像信号に対して周波数成分毎に異なるノイズ除去処理を行うノイズ除去手段を備えた画像処理装置において、
前記ノイズ除去手段は、前記画像信号の注目画素の周辺にある複数の周辺画素の加重平均をとることによって注目画素の新たな画素値を算出する画像処理フィルタを含み、
前記画像処理フィルタは、前記加重平均における各周辺画素の重み値を、注目画素と周辺画素との位置関係に応じた値で、且つ、注目画素の画素値と周辺画素の画素値との差に応じた非線形な演算により決定された値に設定するものであって、
入力される画像信号に対して、前記加重平均における前記重み値の設定が各々異なる複数の前記画像処理フィルタを通過させることにより、該画像信号に対して周波数成分毎に異なるノイズ除去処理を行うようにしたことを特徴とする画像処理装置。
【請求項２】
前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを直列的に連結し、順次処理を行っていくことにより、最終的にノイズが除去された画像信号を得ることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを並列的に連結し、各画像処理フィルタから出力される画像信号を合成することにより、ノイズが除去された画像信号を得ることを特徴とする請求項１記載の画像処理装置。
【請求項４】
入力される画像信号から特定の周波数成分の画像信号を抽出して出力する周波数フィルタと、
入力される画像信号に対して前記画像処理フィルタを通過させて得られる画像信号から、該入力される画像信号に対して前記周波数フィルタを通過させて得られる画像信号を減算する減算手段と、を更に備え、
前記画像処理フィルタが通過させる周波数成分と前記画像処理フィルタが通過させる周波数成分とが同じになるように前記画像処理フィルタの前記重み値が設定されていることを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記周波数フィルタは、注目画素の周辺にある複数の周辺画素の加重平均をとることにより、注目画素の新たな画素値を算出する周波数フィルタであって、
前記加重平均における各周辺画素の重み値を、注目画素と周辺画素との距離に応じた直に設定する周波数フィルタであり、
対となる前記画像処理フィルタにおける前記非線形な演算を行う前の前記各周辺画素の重み値と同じ重み値が設定されていることを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記画像処理フィルタは、前記加重平均において加算される周辺画素の値を、注目画素の画素値に対する所定範囲内に制限したイプシロンフィルタであることを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項７】
前記画像処理フィルタは、前記加重平均における周辺画素の重み値を、注目画素の画素値と周辺画素の画素値との差が大きくなるに従って小さくするバイラテラルフィルタであることを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項８】
前記画像処理フィルタには、前記加重平均において、注目画素から等距離で逆方向にある２つの周辺画素の平均値を用いて、前記加重平均において加算される周辺画素の値を非線形に制限する傾き補正型の画像処理フィルタと、前記加重平均において、注目画素から一方の方向にある１つの周辺画素の値を用いて、前記加重平均において加算される周辺画素の値を非線形に制限する通常型の画像処理フィルタの２つのタイプの画像処理フィルタを含むことを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項９】
複数の画像処理フィルタのうち最初に処理される画像処理フィルタには、前記傾き補正型の画像処理フィルタを用い、最後に処理される画像処理フィルタには、前記通常型の画像処理フィルタを用いることを特徴とする請求項８記載の画像処理装置。
【請求項１０】
入力される画像信号に対して周波数成分毎に異なるノイズ除去処理を行うノイズ除去手段を備えた画像処理装置において、
入力される画像信号を輝度成分と色差成分とに分割し、
前記輝度成分に対しては、前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを直列的に連結し、各画像処理フィルタから出力される画像信号を合成することにより、ノイズが除去された画像信号を得るようにし、
前記色差成分に対しては、前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを直列的に連結し、順次処理を行っていくことにより、最終的にノイズが除去された画像信号を得るようにしたことを特徴とする画像処理装置。
【請求項１１】
被写体を撮像する撮像手段と、
前記撮像手段により撮像された画像データを記録する記録手段と、
前記撮像手段により撮像された画像データに対して、前記ノイズ除去手段によるノイズ除去処理を施した後の画像データを、前記記録手段により記録させる制御手段と
を備えたことを特徴とする請求項１乃至請求項１０のいずれかに記載の画像処理装置。
【請求項１２】
請求項１乃至請求項１０のいずれかに記載の画像処理装置を搭載したカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力される画像信号のノイズ除去機能を有する画像処理装置及びカメラに関する。
【背景技術】
【０００２】
近年、デジタルカメラ等の撮像装置に用いられるＣＣＤやＣＭＯＳなどの撮像素子は、一段と高画素化の傾向にあるが、かかる高画素化は、一方で画素面積の減少（すなわち開口率の減少）を招き、光ショット雑音等のノイズの影響を顕在化していることから、ノイズの抑制対策が不可欠なものになってきている。特に、画像のエッジ部分において、エッジを残したままでノイズだけを除去できるようなノイズ抑制技術が研究されている。
【０００３】
＜第１従来技術＞
下記の特許文献１には、注目画素から所定距離内にある周辺画素の加重平均を求め、この値を新たな注目画素の値とするＬＰＦ（ローパスフィルタ）処理を画像全体に施す場合に、注目画素±Σに値が制限された周辺画素を使ってこのＬＰＦ（ローパスフィルタ）処理を行うノイズ抑制技術（以下、第１従来技術という。）が記載されている。この第１従来技術のフィルタは、イプシロン（ε）フィルタと呼ばれるものであり、以下、この技術のフィルタのことを「通常型イプシロンフィルタ」と称することにする。
【０００４】
＜第２従来技術＞
また、下記の特許文献２には、注目画素から所定距離内にある周辺画素の加重平均を求め、この値を新たな注目画素の値とするＬＰＦ（ローパスフィルタ）処理を画像全体に施す場合に、注目画素を中心として対称位置にある周辺２画素の平均値を注目画素±εに制限し、その周辺画素を使ってＬＰＦ処理を行うノイズ抑制技術（以下、第２従来技術という。）が記載されている（特に同文献の請求項１参照。）。この技術のフィルタを「傾き補正型イプシロンフィルタ」と称することにする。
【０００５】
これらの技術では、注目画素とは大きく階調が離れた周辺画素（画像のエッジ部を挟んで反対側にあるような周辺画素）が加重平均に含まれることがないため、エッジ部分の影響を受けずにノイズを除去することができ、また、ノイズの除去に伴ってエッジまでが削られてしまうことを防ぐことができる。特に、「傾き補正型イプシロンフィルタ」は、画像のグラデーション部分などで効果的にノイズを除去できるものである。
【０００６】
しかしながら、これら二つの従来技術（第１及び第２の従来技術）においては、ベイヤデータに対して５×５タップのノイズ抑制技術を適用する実施例が述べられているが、高々５×５程度のタップ数では、低周波数のノイズ成分を除去できないという不都合がある。タップ数を大きくすれば、低周波ノイズの除去性能を向上することは可能であるが、回路規模の増大によるコストＵＰや演算量の増大によるパフォーマンスの低下などの不都合が生じてしまう。
【０００７】
なお、同特許文献２（特に請求項６）においては、同じフィルタを複数回反復する方法が述べられているが、同じ帯域制限特性を持つフィルタ処理を反復すると、高周波の減衰を大きくすることができるが、一方で、低周波の遮断周波数を思うように稼ぐことができず、結局の所、低周波ノイズ成分の除去性能の点で満足する結果を得られないという不都合がある。
【０００８】
また、そのようにすると、「通常型イプシロンフィルタ」では階調変化部のノイズが残留してしまい、一方、「傾き補正型イプシロンフィルタ」では、高周波成分が減衰しすぎるなどの新たな不都合を招来する。
【０００９】
＜第３従来例＞
また、下記の非特許文献１には、バイラテラルフィルタと呼ばれるノイズ抑制技術（以下、第３従来技術という。）が記載されている。この第３従来技術のノイズ抑制技術は、注目画素値と周辺画素値との差の大きさに応じて、ＬＰＦの係数を変化させるという方式であり、注目画素値と周辺画素値との差が大きいほど、ＬＰＦの係数を小さくするというアルゴリズムである。以下、この第３従来例のフィルタを「通常型バイラテラルフィルタ」と称することにする。
【００１０】
前記のイプシロンフィルタと同様に、バイラテラルフィルタについても、「傾き補正型バイラテラルフィルタ」を構成することができる。すなわち、注目画素を中心として対称位置にある周辺２画素の平均値と注目画素値との差の大きさによって、ＬＰＦの係数を変化させるという方式である。
【００１１】
これら、通常型の傾き補正型バイラテラルフィルタについても、イプシロンフィルタと同様の不都合がある。すなわち、高々５×５程度のタップ数では低周波ノイズ除去能力がなく、タップ数を大きくすると回路規模や演算量が増大してしまい、反復処理では帯域バランスが崩れるという不都合がある。
【００１２】
＜第４従来技術＞
また、下記の特許文献３には、高周波成分にコアリングをかけるという方法で画像のエッジ部分に対してノイズ抑制をかける方法が記載されている。また、この方法を更に発展させ、原信号の帯域を複数に分割し、それぞれの帯域信号別にノイズ抑制をかける方法（以下、第４従来例という。）が記載されている。  
【００１３】
図１７は、第４従来例の概念構成図である。この図において、撮像素子から出力される画像信号ｉｎ（ただし、この画像信号ｉｎは不図示のＡ／Ｄ変換器でデジタル信号に変換されたものである。）は、第１ＬＰＦ１→ダウンサンプル部２→第２ＬＰＦ３→アップサンプル部４→第３ＬＰＦ５を経て、ノイズ抑制後の画像信号ｏｕｔとして出力される。なお、この図では、第１ＬＰＦ１の出力をダウンサンプル（ダウンサンプル部２）したものにＬＰＦ（第２ＬＰＦ３）をかけ、それをアップサンプリング（アップサンプル部４で）してさらにＬＰＦ（第３ＬＰＦ５）をかけるという構成になっているが、煩雑であるので、ここでは２段目以降はＢＰＦ（バンドパスフィルタ）をかける方法であるものと仮定して簡易的に説明する。なお、ＬＰＦとＢＰＦを総称して「ＦＩＲフィルタ」と称する場合もある。ＦＩＲフィルタとはＦｉｎｉｔｅ  Ｉｍｐｕｌｓｅ  Ｒｅｓｐｏｎｓｅフィルタの略、つまり、「有限時間でインパルス応答を打ち切る」ということを意味するフィルタである。ただし、これは実装時の特徴であって、ＦＩＲフィルタの一番の特徴とはいえない。ユーザから見たときのＦＩＲフィルタの特徴は、“インパルス応答”（システムにインパルス関数を入力したときの出力のこと。）をありのまま設計値として扱うことにある。
【００１４】
図１８は、第４従来例の要部構成図（特許文献３の請求項２で示されているものと等価の構成図）である。
この図において、オリジナルの画像信号Ｏｒｉｇは、ＬＰＦ６と第１及び第２減算器９、１０に入力される。ＬＰＦ６の出力Ｌ０はＢＰＦ７と第３減算器１１に入力され、第１減算器９の出力Ｈ０は第１非線形制限器（Ｌｉｍ）１２を通って信号Ｌｉｍ（Ｈ０）として第１加算器１３に入力される。第３減算器１１の出力Ｈ１は第２非線形制限器（Ｌｉｍ）１４を通って信号Ｌｉｍ（Ｈ１）として第１加算器１３に入力され、ＢＰＦ７の出力Ｌ１はＢＰＦ８と第３減算器１１に入力される。ＢＰＦ８の出力Ｌ２は第４減算器１５に入力され、第４減算器１５の出力Ｈ２は第３非線形制限器（Ｌｉｍ）１６を通って信号Ｌｉｍ（Ｈ２）として第１加算器１３に入力される。第１加算器１３の出力は第２減算器１０に入力され、この第２減算器出力がノイズ抑制後の画像信号として出力される。
【００１５】
ちなみに、第１〜第３非線形制限器（Ｌｉｍ）１２、１４、１６は、値の上限を制限する非線形な処理（Ｌｉｍ処理）を行う部分である。
【００１６】
図１９及び図２０は、Ｌｉｍ処理の概念図であり、図１９は±εの範囲に値制限するもの、図２０は滑らかな特性で値を制限するものである。いずれのＬｉｍ処理を用いてもよい。
【００１７】
図２１は、図１８を再構成した図であり、図２２は、図２１の要部（点線で囲んだ部分）構成図である。なお、図２１と図１８は等価であるが、構成上の相違は、Ｈ０−Ｌｉｍ（Ｈ０）を演算する第５減算器１７、Ｈ１−Ｌｉｍ（Ｈ１）を演算する第６減算器１８、Ｈ２−Ｌｉｍ（Ｈ２）を演算する第７減算器１９、（Ｈ０−Ｌｉｍ（Ｈ０））＋（Ｈ１−Ｌｉｍ（Ｈ１））＋（Ｈ２−Ｌｉｍ（Ｈ２））を演算する第２加算器２０、及び、第２加算器２０の出力とＢＰＦ８の出力とを加算する第３加算器２１を備える点にある。なお、図２１において、各帯域とも同じ構成でノイズ除去しているが、たとえば、１段目（点線で囲んだ部分；図２２参照）に着目すると、出力結果は、次式（１）で表すことができる。
Ｌ０＋（Ｈ０−Ｌｉｍ（Ｈ０））＝Ｏｒｉｇ−Ｌｉｍ（Ｈ０）  ・・・・（１）
ここで、Ｌ０はＬＰＦ６の出力、Ｈ０は原信号−ＬＰＦ６出力（すなわち、Ｏｒｉｇ−Ｌ０）である。この式（１）より、Ｌｉｍ（Ｈ０）は非線形変換されたＨ０となって、結局、Ｏｒｉｇに含まれている小振幅の高周波ノイズを減算していることがわかる。
【００１８】
このような処理を、複数帯域別に行うことで、帯域バランスを崩すことなく、ノイズを低減することができる。
【００１９】
【特許文献１】特開２００４−３６３８５３号公報
【特許文献２】特開２００６−３１１５０１号公報
【特許文献３】特開２００２−７４３５６号公報
【非特許文献１】ＴＯＭＡＳＩ，Ｃ．，ＡＮＤ  ＭＡＮＤＵＣＨＩ，Ｒ．１９９８．Ｂｉｌａｔｅｒａｌ  ｆｉｌｔｅｒｉｎｇ  ｆｏｒ  ｇｒａｙ  ａｎｄ  ｃｏｌｏｒ  ｉｍａｇｅｓ．Ｉｎ  Ｐｒｏｃ．ＩＥＥＥ  Ｉｎｃ．Ｃｏｎｆ．ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，８３６−８４６
【発明の開示】
【発明が解決しようとする課題】
【００２０】
しかしながら、第４従来例（特許文献３）で示されているノイズ抑制の方式は、基本的には、各周波数成分において振幅値の大きい部分を残し、振幅値の小さい部分をノイズと見なして除去するという比較的単純な方法を用いたものであり、エッジ部分のノイズ除去性能に関しては劣るものである。
【００２１】
そこで、本発明の目的は、エッジ部分のノイズ除去性能と帯域バランスをより向上させることにある。
【課題を解決するための手段】
【００２２】
請求項１記載の発明は、入力される画像信号に対して周波数成分毎に異なるノイズ除去処理を行うノイズ除去手段を備えた画像処理装置において、前記ノイズ除去手段は、前記画像信号の注目画素の周辺にある複数の周辺画素の加重平均をとることによって注目画素の新たな画素値を算出する画像処理フィルタを含み、前記画像処理フィルタは、前記加重平均における各周辺画素の重み値を、注目画素と周辺画素との位置関係に応じた値で、且つ、注目画素の画素値と周辺画素の画素値との差に応じた非線形な演算により決定された値に設定するものであって、入力される画像信号に対して、前記加重平均における前記重み値の設定が各々異なる複数の前記画像処理フィルタを通過させることにより、該画像信号に対して周波数成分毎に異なるノイズ除去処理を行うようにしたことを特徴とする画像処理装置である。
請求項２記載の発明は、前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを直列的に連結し、順次処理を行っていくことにより、最終的にノイズが除去された画像信号を得ることを特徴とする請求項１記載の画像処理装置である。
請求項３記載の発明は、前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを並列的に連結し、各画像処理フィルタから出力される画像信号を合成することにより、ノイズが除去された画像信号を得ることを特徴とする請求項１記載の画像処理装置である。
請求項４記載の発明は、入力される画像信号から特定の周波数成分の画像信号を抽出して出力する周波数フィルタと、入力される画像信号に対して前記画像処理フィルタを通過させて得られる画像信号から、該入力される画像信号に対して前記周波数フィルタを通過させて得られる画像信号を減算する減算手段と、を更に備え、前記画像処理フィルタが通過させる周波数成分と前記画像処理フィルタが通過させる周波数成分とが同じになるように前記画像処理フィルタの前記重み値が設定されていることを特徴とする請求項３記載の画像処理装置である。
請求項５記載の発明は、前記周波数フィルタは、注目画素の周辺にある複数の周辺画素の加重平均をとることにより、注目画素の新たな画素値を算出する周波数フィルタであって、前記加重平均における各周辺画素の重み値を、注目画素と周辺画素との距離に応じた直に設定する周波数フィルタであり、対となる前記画像処理フィルタにおける前記非線形な演算を行う前の前記各周辺画素の重み値と同じ重み値が設定されていることを特徴とする請求項４記載の画像処理装置である。
請求項６記載の発明は、前記画像処理フィルタは、前記加重平均において加算される周辺画素の値を、注目画素の画素値に対する所定範囲内に制限したイプシロンフィルタであることを特徴とする請求項１又は請求項２記載の画像処理装置である。
請求項７記載の発明は、前記画像処理フィルタは、前記加重平均における周辺画素の重み値を、注目画素の画素値と周辺画素の画素値との差が大きくなるに従って小さくするバイラテラルフィルタであることを特徴とする請求項１又は請求項２記載の画像処理装置である。
請求項８記載の発明は、前記画像処理フィルタには、前記加重平均において、注目画素から等距離で逆方向にある２つの周辺画素の平均値を用いて、前記加重平均において加算される周辺画素の値を非線形に制限する傾き補正型の画像処理フィルタと、前記加重平均において、注目画素から一方の方向にある１つの周辺画素の値を用いて、前記加重平均において加算される周辺画素の値を非線形に制限する通常型の画像処理フィルタの２つのタイプの画像処理フィルタを含むことを特徴とする請求項１又は請求項２記載の画像処理装置である。
請求項９記載の発明は、複数の画像処理フィルタのうち最初に処理される画像処理フィルタには、前記傾き補正型の画像処理フィルタを用い、最後に処理される画像処理フィルタには、前記通常型の画像処理フィルタを用いることを特徴とする請求項８記載の画像処理装置である。
請求項１０記載の発明は、入力される画像信号に対して周波数成分毎に異なるノイズ除去処理を行うノイズ除去手段を備えた画像処理装置において、入力される画像信号を輝度成分と色差成分とに分割し、前記輝度成分に対しては、前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを直列的に連結し、各画像処理フィルタから出力される画像信号を合成することにより、ノイズが除去された画像信号を得るようにし、前記色差成分に対しては、前記加重平均の対象とする周辺画素の数が所定数以内であり、且つ、前記加重平均の対象とする周辺画素までの距離が各々異なる複数の前記画像処理フィルタを直列的に連結し、順次処理を行っていくことにより、最終的にノイズが除去された画像信号を得るようにしたことを特徴とする画像処理装置である。
請求項１１記載の発明は、被写体を撮像する撮像手段と、前記撮像手段により撮像された画像データを記録する記録手段と、前記撮像手段により撮像された画像データに対して、前記ノイズ除去手段によるノイズ除去処理を施した後の画像データを、前記記録手段により記録させる制御手段とを備えたことを特徴とする請求項１乃至１０記載の画像処理装置である。
請求項１２記載の発明は、請求項１乃至請求項１０のいずれかに記載の画像処理装置を搭載したカメラである。
【発明の効果】
【００２３】
本発明では、注目画素と周辺画素の画素値に応じた非線形な演算を行うノイズ除去手段を複数帯域別に設けるようにしたので、エッジ部分のノイズ除去性能と帯域バランスをより向上させることができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施形態を、図面を参照しながら説明する。
＜第１実施形態＞
（１）イプシロンフィルタでの構成例；
まず、本発明の基本的な考え方について説明する。
図１８および図２１で示される構成（第４従来例に対応する構成）をベースとして、エッジ部分のノイズ除去性能をより向上させるために、イプシロンフィルタまたはバイラテラルフィルタを用いることを考えた場合、単純に非線形制限器（Ｌｉｍ）の部分をイプシロンフィルタまたはバイラテラルフィルタで置き換えた場合には不都合が生じる。
【００２５】
つまり、イプシロンフィルタやバイラテラルフィルタは、基本的にＬＰＦまたはＢＰＦであるため、このような単純な置き換えで構成した場合には、せっかくＬＰＦおよびＢＰＦの多段接続により複数の周波数帯域に分割しているにも係わらず、更にイプシロンフィルタやバイラテラルフィルタと接続されることにより２重にＬＰＦまたはＢＰＦを通ることになり、帯域バランスが崩れてしまう（このような構成において帯域バランスが崩れないようにＬＰＦ、ＢＰＦおよびイプシロンフィルタやバイラテラルフィルタの常数を設定することは極めて困難である）。
【００２６】
そこで、本第１実施形態の画像処理装置では、帯域バランスが崩れることのないよう、イプシロンフィルタまたはバイラテラルフィルタをＬＰＦまたはＢＰＦと縦列に接続されないような形で挿入している。更に、低周波ノイズに対応したタップ数の多いイプシロンフィルタまたはバイラテラルフィルタが追加された場合でも、回路規模や演算量が増大しないような係数を、縦列に接続される各フィルタの係数として設定している。
【００２７】
図１に、イプシロンフィルタでの構成例を示す。
ここで、「イプシロンフィルタ」とは、急峻な変化を伴う信号に重畳された小振幅雑音を除去するための非線型ディジタルフィルタ技術として開発されたものである。すなわち、画像信号は、輪郭などに突発的変化を有する非定常信号であり、これにランダム雑音が重畳した場合、従来の線形のデジタルフィルタでは効果的な雑音除去を行うことができなかったが、イプシロンフィルタは、このような非定常信号に対する雑音除去を効果的に行うことができる非線形ディジタルフィルタの一種であり、また、極めて簡単な回路構造と少ない計算量で実現することができる優れたフィルタである。
【００２８】
この「イプシロンフィルタ」は、基本的にはＬＰＦ（ローパスフィルタ）またはＢＰＦ（バンドパスフィルタ）であり、注目画素から所定距離内にある周辺画素の各々に対して所定の重み付けで加重平均を求め、この値を新たな注目画素の値とする処理を画像全体に施すものである。
【００２９】
そして、この「イプシロンフィルタ」で特徴的な処理は、画像のエッジ部分において加重平均処理に悪影響を及ぼすような周辺画素の加算を制限するような非線形処理を行うことであり、これにより、エッジ部分の影響を受けずにノイズを除去することができ、また、ノイズの除去に伴ってエッジまでが削られてしまうことを防ぐことができるものである。
【００３０】
具体的には、例えば、「通常型イプシロンフィルタ」では、上記加重平均において、注目画素とは大きく階調が離れた周辺画素（画像のエッジ部を挟んで反対側にあるような周辺画素）の値を注目画素±Σに制限して加算するような非線形な演算を行っている。「傾き補正型イプシロンフィルタ」も同様であり、注目画素を中心として対象位置にある周辺２画素の平均値を注目画素±Σに制限して加算するような非線形な演算を行っている。
【００３１】
なお、これらの非線形処理は、周辺画素の値または２つの周辺画素の平均値の値を注目画素±Σに制限して加算を行うものであるが、後述するバイラテラルフィルタと対応させて考えた場合、加重平均における各周辺画素の重み値を、注目画素と周辺画素との位置関係に応じた値で、且つ、注目画素の画素値と周辺画素の画素値との差に応じた非線形な演算により決定していると言い換えることができる。
【００３２】
ここで、デジタルフィルタの係数について説明する。上記加重平均処理において注目画素から各距離にある周辺画素に対する重み付けの値を示したものがデジタルフィルタの係数であり、例えば、（１，４，６，４，１）／１６のように表す。真ん中の“６”は、注目画素そのものに対応し、その重み値が６／１６であることを示し、その隣の“４”は、注目画素から距離１の周辺画素に対応し、その重み値が４／１６であることを示し、更に隣の“１”は、注目画素から距離２の周辺画素に対応し、その重み値が１／１６であることを示し、以下、数字が右左に追加されていくに従って、距離３、距離４、・・・と対応していく。そして、この係数を２次元画像に適用する場合には、縦方向の距離に対応した係数と横方向の距離に対応した係数とを乗算した値が各周辺画素の係数となる。また、係数が左右対称で合計が１である場合には、（１，４，６，４，１）／１６の係数を“６４１”のように表記することもある。
【００３３】
図１の構成について説明する。
この図において、ＣＣＤやＣＭＯＳ等の撮像素子から出力される画像信号Ｏｒｉｇ（ただし、この画像信号Ｏｒｉｇは不図示のＡ／Ｄ変換器でデジタル信号に変換されたものである。）は、第１の傾き補正型イプシロンフィルタ３１と、ＬＰＦ３２に入力される。この２つの対を成すフィルタは共に枠内に“６４１”と表記され、（１，４，６，４，１）／１６という係数を持つフィルタであることを表している。ＬＰＦ３２の出力は、第２の傾き補正型イプシロンフィルタ３３と、ＢＰＦ３４に入力される。この２つの対を成すフィルタも枠内に表記された“６０４０１”に対応する係数を持つ。ＢＰＦ３４の出力は、通常型イプシロンフィルタ３５と、ＢＰＦ３６に入力される。この２つの対を成すフィルタも枠内に表記された “６０００４０００１” に対応する係数を持つ。
【００３４】
図２は、ＬＰＦ３２、ＢＰＦ３４及びＢＰＦ３６の周波数特性図である。この図において、Ｌ０は（６４１）のＬＰＦ６の周波数特性である。また、Ｌ１は（６４１）＊（６０４０１）のＢＰＦ７の周波数特性である。また、Ｌ２は（６４１）＊（０６０４０１）＊（６０００４０００１）のＢＰＦ８の周波数特性である。ただし、「＊」は畳み込み演算を示す。
【００３５】
ここで、（６４１）＊（６０４０１）＊（６０００４０００１）＝（３４４，３３６，３１５，２８４，２４６，２０４，１６１，１２０，８４，５６，３５，２０，１０，４，１）であり、ＬＰＦ３２、ＢＰＦ３４及びＢＰＦ３６の多段接続は、（３４４，３３６，３１５，２８４，２４６，２０４，１６１，１２０，８４，５６，３５，２０，１０，４，１）の特性を持つ単一のＬＰＦと等価である。
【００３６】
（３４４，３３６，３１５，２８４，２４６，２０４，１６１，１２０，８４，５６，３５，２０，１０，４，１）の単一フィルタで構成した場合には、２７×２７＝７２９回の演算量を必要とするのに対して、（６４１）＊（６０４０１）＊（６０００４０００１）の多段フィルタで構成した場合には、係数が０の部分は演算の対象とならないので、５×５＋５×５＋５×５＝７５回の演算量で済む。
【００３７】
このように、縦列的に接続される各フィルタの係数を設定することにより、各接続部から複数の周波数帯域に分割された信号を取り出すことができ、且つ、低周波特性を持つフィルタをより少ない演算量で実現することができる。
【００３８】
また、図１において、第１の傾き補正型イプシロンフィルタ３１の出力とＬＰＦ３２の出力は第１減算器３７に入力され、この第１減算器３７の出力が第１加算器３８に入力されている。また、第２の傾き補正型イプシロンフィルタ３３の出力とＢＰＦ３４の出力は第２減算器３９に入力され、この第２減算器３９の出力が第１加算器３８に入力されている。さらに、通常型イプシロンフィルタ３５の出力とＢＰＦ３６の出力は第３減算器４０に入力され、この第３減算器４０の出力が第１加算器３８と第２加算器４１に入力されており、第１加算器３８の出力は第２加算器４１に入力され、この第２加算器４１からノイズ抑制後の画像信号Ｏｕｔが取り出されている。
【００３９】
図３は、係数（例としてＬＰＦ３２の係数）を２次元で示す図である。この図において、升目の一つ一つは画像信号の画素であり、各々の升目内の数値はその画素値に適用する係数である。注目画素は中央の画素（係数３６の画素）、周辺画素は注目画素以外の画素である。
【００４０】
以上の構成において、注目すべき点の１つは、ＬＰＦまたはＢＰＦと対を成すイプシロンフィルタが並列的に接続され、且つ、これらの対を成すフィルタの係数を同じ設定にした点である。これにより、周波数帯域に分割した後に再度ＬＰＦまたはＢＰＦを通るようなことがなく、また、分割した周波数帯域と同じ周波数帯域を持つノイズフィルタを用いるので、各周波数帯域に分割された各々の信号は、確実に意図された周波数帯域のノイズが除去されたものとなる。
【００４１】
２つめの注目すべき点は、１段目と２段目のフィルタが傾き補正型のイプシロンフィルタ（第１及び第２の傾き補正型イプシロンフィルタ３１、３３）であり、且つ、３段目が通常型のイプシロンフィルタ（通常型イプシロンフィルタ３５）になっている点である。なお、３段目を通常型イプシロンフィルタ３５としたのは、低周波のエッジ成分が“滑られすぎる”（当該信号成分が過剰に減衰する）と、視覚上好ましくないためである。
【００４２】
１段目のフィルタ（第１の傾き補正型イプシロンフィルタ３１）は、以下のように動作する。
【００４３】
図４は、第１の傾き補正型イプシロンフィルタ３１の処理対象の画素ブロック（５×５画素のブロック）を示す図である。この図において、注目画素（中心画素ｐ［１２］）に対してノイズ抑制をかける場合の動作は、次のようなＣ言語の擬似コード（以下、コードＡという。）で表すことができる。
【００４４】
＜コードＡ＞
Ｗｅｉｇｈｔ［２５］＝｛
１，４，６，４，１，
４，１６，２４，１６，４，
６，２４，３６，２４，６，
４，１６，２４，１６，４，
１，４，６，４，１，
｝；／／この係数の和は２５６
ＷｅｉｇｈｔｅｄＳｕｍ＝０；
ｆｏｒ（ｉ＝０；ｉ＜１２；ｉ＋＋）｛
ＰａｉｒＳｕｍ＝ｐ［ｉ］＋ｐ［２４−ｉ］；
ｄｉｆｆ＝ＰａｉｒＳｕｍ／２−ｐ［１２］；
ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）；
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｄｉｆｆ＊２＊Ｗｅｉｇｈｔ［ｉ］）；
｝
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｐ［１２］＊２５６）；
ｎｒ＿ｏｕｔ＝ＷｅｉｇｈｔｅｄＳｕｍ／２５６；
【００４５】
コードＡを説明すると、Ｗｅｉｇｈｔ［２５］は、配列変数であり、２５個の配列の各々に初期値（１，４，６，４，１，４，１６，２４，１６，４，６，２４，３６，２４，６，４，１６，２４，１６，４，１，４，６，４，１）が格納される。これらの初期値は、注目画素とその周辺画素の各々の係数である。また、スラッシュを二つ並べた記号（／／）以降の文は注釈（コメント）を表しており、このコメントのとおり、全ての係数の和は“２５６”になる。
【００４６】
ＷｅｉｇｈｔｅｄＳｕｍは初期値０の変数であり、また、ＰａｉｒＳｕｍやｄｉｆｆ、ＰａｉｒＳｕｍも変数である。ｆｏｒは、ループ変数ｉをｉ＝０からｉ＜１２の範囲でカウントアップ（ｉ＋＋）しつつ、ＰａｉｒＳｕｍ、ｄｉｆｆ及びＷｅｉｇｈｔｅｄＳｕｍの値を逐次に更新するループ命令である。ループ命令を１回実行する度に、ＰａｉｒＳｕｍの値がｐ［ｉ］＋ｐ［２４−ｉ］で更新され、また、ｄｉｆｆの値がＰａｉｒＳｕｍ／２−ｐ［１２］で更新されると共に、ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）に制限され、さらに、ＷｅｉｇｈｔｅｄＳｕｍの値が（ｄｉｆｆ＊２＊Ｗｅｉｇｈｔ［ｉ］）で更新される。なお、「＋＝」は、旧値（前回ループ時の演算結果）と新値（今回ループ時の演算結果）との加算、「＊」は乗算を示す。そして、ループを抜けると、ＷｅｉｇｈｔｅｄＳｕｍの値に（ｐ［１２］＊２５６）を加算し、その加算結果を“２５６”で割って、ノイズ抑制後の出力（ｎｒ＿ｏｕｔ）を得ている。
【００４７】
このコードＡにより、画像信号の注目画素（中心画素ｐ［１２］）の周辺にある複数の周辺画素（ｐ［０］、ｐ［１］、ｐ［２］、ｐ［３］、ｐ［４］、ｐ［５］、ｐ［６］、ｐ［７］、ｐ［８］、ｐ［９］、ｐ［１０］、ｐ［１１］、ｐ［１３］、ｐ［１４］、ｐ［１５］、ｐ［１６］、ｐ［１７］、ｐ［１８］、ｐ［１９］、ｐ［２０］、ｐ［２１］、ｐ［２２］、ｐ［２３］、ｐ［２４］）の加重平均をとることによって注目画素の新たな画素値（ｎｒ＿ｏｕｔ）を算出する画像処理フィルタを実現できる。
【００４８】
なお、ｌｉｍｉｔ（ｄｉｆｆ）は、ｄｉｆｆを非線形変換する処理であり、たとえば、前記の図２０のようにｄｉｆｆを±εに制限するものである。
【００４９】
２段目の傾き補正型イプシロンフィルタ（第２の傾き補正型イプシロンフィルタ３３）の動作も１段目と類似しているが、処理対象の画素ブロックの構成に相違がある。
【００５０】
図５は、第２の傾き補正型イプシロンフィルタ３３の処理対象の画素ブロック（９×９画素のブロック）を示す図である。この図において、２画素おきに飛び飛びに配置されたｐ［０］〜ｐ［２４］の５×５画素を使って、注目画素（中心画素ｐ［１２］）にノイズ抑制をかける。擬似コードは、前記のコードＡを流用することができる。
【００５１】
３段目の通常型イプシロンフィルタ３５は、以下のように動作する。
図６は、通常型イプシロンフィルタ３５の処理対象の画素ブロック（１７×１７画素のブロック）を示す図である。この図に示す１７×１７画素において、実際の処理に使うのは４画素おきに飛び飛びに配置されたｐ［０］〜ｐ［２４］の５×５画素である。この場合、注目画素（中心画素ｐ［１２］）にノイズ抑制をかけるためのＣ言語の擬似コード（以下、コードＢという。）は、以下のとおり表すことができる。
【００５２】
＜コードＢ＞
ＷｅｉｇｈｔｅｄＳｕｍ＝０；
ｆｏｒ（ｉ＝０；ｉ＜２５；ｉ＋＋）｛
ｄｉｆｆ＝ｐ［ｉ］−ｐ［１２］；
ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）；
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｄｉｆｆ＊Ｗｅｉｇｈｔ［ｉ］）；
｝
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｐ［１２］＊２５６）；
ｎｒ＿ｏｕｔ＝ＷｅｉｇｈｔｅｄＳｕｍ／２５６；
【００５３】
コードＢを説明すると、ＷｅｉｇｈｔｅｄＳｕｍは初期値０の変数であり、また、ｄｉｆｆも変数である。ｆｏｒは、ループ変数ｉをｉ＝０からｉ＜２５の範囲でカウントアップ（ｉ＋＋）しつつ、ｄｉｆｆやＷｅｉｇｈｔｅｄＳｕｍの値を逐次に更新するループ命令である。ループ命令を１回実行する度に、ｄｉｆｆの値がｐ［ｉ］−ｐ［１２］で更新されると共に、ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）に制限され、さらに、ＷｅｉｇｈｔｅｄＳｕｍの値が（ｄｉｆｆ＊Ｗｅｉｇｈｔ［ｉ］）で更新される。なお、「＋＝」は、旧値（前回ループ時の演算結果）と新値（今回ループ時の演算結果）との加算を示す。そして、ループを抜けると、ＷｅｉｇｈｔｅｄＳｕｍの値に（ｐ［１２］＊２５６）を加算し、その加算結果を“２５６”で割って、ノイズ抑制後の出力（ｎｒ＿ｏｕｔ）を得ている。
【００５４】
このコードＢにより、画像信号の注目画素（中心画素ｐ［１２］）の周辺にある複数の周辺画素（ｐ［０］、ｐ［１］、ｐ［２］、ｐ［３］、ｐ［４］、ｐ［５］、ｐ［６］、ｐ［７］、ｐ［８］、ｐ［９］、ｐ［１０］、ｐ［１１］、ｐ［１３］、ｐ［１４］、ｐ［１５］、ｐ［１６］、ｐ［１７］、ｐ［１８］、ｐ［１９］、ｐ［２０］、ｐ［２１］、ｐ［２２］、ｐ［２３］、ｐ［２４］）の加重平均をとることによって注目画素の新たな画素値（ｎｒ＿ｏｕｔ）を算出する画像処理フィルタを実現できると共に、かかる加重平均における各周辺画素の重み値（Ｗｅｉｇｈｔ［ｉ］）を、注目画素と周辺画素との位置関係に応じた値で、且つ、注目画素の画素植と周辺画素の画素値との差に応じた非線形な演算により決定された値に設定することができる。
【００５５】
以上のようにして求められた「ｎｒ＿ｏｕｔ」から、同じ係数で構成されるＦＩＲフィルタの結果を減算し、各帯域におけるノイズ抑制処理された交流成分を算出する。そして、最後に全帯域成分の和を求めて、最終のノイズ抑制処理結果とする。なお、本例では２段目を傾き補正型イプシロンフィルタとしたが、通常型イプシロンフィルタとしてもよい。
【００５６】
（２）バイラテラルフィルタでの構成例；
図７に、バイラテラルフィルタでの構成例を示す。この図も、図１（イプシロンフィルタでの構成例）と同様に、前記の従来技術における図２１の点線部に相当するものであり、詳細には、図２２の構成に置き換わるものである。発明の思想上、図１の構成と図７の構成のいずれを採用してもよい。
【００５７】
ここで、「バイラテラルフィルタ」とは、１９８８年にＴｏｍａｓｈｉとＭａｎｄｕｃｈｉにより提案されたエッジ保持平滑化フィルタである。画像をスムーズに平滑化しつつも、エッジ部分はぼかすことのない効果を持っている。ガウスぼかしをする際に、画素間の距離で重みを決めるのではなく、輝度の差も見て、変化が大きいところは重みを小さくすることによってエッジを残す。 
【００５８】
図７の構成について説明する。
この図において、ＣＣＤやＣＭＯＳ等の撮像素子から出力される画像信号Ｏｒｉｇ（ただし、この画像信号Ｏｒｉｇは不図示のＡ／Ｄ変換器でデジタル信号に変換されたものである。）は、第１の傾き補正型バイラテラルフィルタ５１と、枠内に“６４１”と表記されたＬＰＦ５２に入力される。“６４１”は、（１，４，６，４，１）／１６という係数を表している。ＬＰＦ５２の出力は、第２の傾き補正型バイラテラルフィルタ５３と、枠内に“６０４０１”と表記されたＢＰＦ５４に入力され、ＢＰＦ５４の出力は、通常型バイラテラルフィルタ５５と、枠内に“６０００４０００１”と表記されたＢＰＦ５６に入力される。
【００５９】
また、図７において、第１の傾き補正型バイラテラルフィルタ５１の出力とＬＰＦ５２の出力は第１減算器５７に入力され、この第１減算器５７の出力が第１加算器５８に入力されている。また、第２の傾き補正型バイラテラルフィルタ５３の出力とＢＰＦ５４の出力は第２減算器５９に入力され、この第２減算器５９の出力が第１加算器５８に入力されている。さらに、通常型バイラテラルフィルタ５５の出力とＢＰＦ５６の出力は第３減算器６０に入力され、この第３減算器６０の出力が第１加算器５８と第２加算器６１に入力されており、第１加算器５８の出力は第２加算器６１に入力され、この第２加算器６１からノイズ抑制後の画像信号Ｏｕｔが取り出されている。
【００６０】
なお、図１と同様に、“６４１”は、（１，６，４，１）／１６という係数を示している。ただし、ここでは１次元の係数で示しているが、２次元に拡張すると前記の図３のような係数となる。
【００６１】
以上の構成において、注目すべき点は、１段目と２段目のフィルタが傾き補正型のバイラテラルフィルタ（第１及び第２の傾き補正型バイラテラルフィルタ５１、５３）であり、且つ、３段目が通常型のバイラテラルフィルタ（通常型バイラテラルフィルタ５５）になっている点である。なお、３段目を通常型バイラテラルフィルタ５５としたのは、低周波のエッジ成分が“滑られすぎる”（当該信号成分が過剰に減衰する）と、視覚上好ましくないためである。
【００６２】
１段目のフィルタ（第１の傾き補正型バイラテラルフィルタ５１）は、以下のように動作する。
前記の図４のような５×５画素において、注目画素（中心画素ｐ［１２］）に対してノイズ抑制をかける場合の動作は、次のようなＣ言語の擬似コード（以下、コードＣという。）で表すことができる。
【００６３】
＜コードＣ＞
ＷｅｉｇｈｔｅｄＳｕｍ＝０；
ＳｕｍＯｆＷｅｉｇｈｔｓ＝０；
ｆｏｒ（ｉ＝０；ｉ＜１２；ｉ＋＋）｛
ＰａｉｒＳｕｍ＝ｐ［ｉ］＋ｐ［２４−ｉ］；
ｄｉｆｆ＝ＰａｉｒＳｕｍ／２−ｐ［１２］；
ＢｉｌａｔＷｅｉｇｈｔ＝Ｗｅｉｇｈｔ［ｉ］＊ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）；
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ＰａｉｒＳｕｍ＊ＢｉｌａｔＷｅｉｇｈｔ）；
ＳｕｍＯｆＷｅｉｇｈｔｓ  ＋＝  （ＢｉｌａｔＷｅｉｇｈｔ＊２）；
｝
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｐ［１２］＊Ｗｅｉｇｈｔ［１２］）；
ＳｕｍＯｆＷｅｉｇｈｔｓ  ＋＝  Ｗｅｉｇｈｔ［１２］；
ｎｒ＿ｏｕｔ＝ＷｅｉｇｈｔｅｄＳｕｍ／ＳｕｍＯｆＷｅｉｇｈｔｓ；
【００６４】
コードＣを説明すると、ＷｅｉｇｈｔｅｄＳｕｍとＳｕｍＯｆＷｅｉｇｈｔｓは初期値０の変数であり、また、ＰａｉｒＳｕｍやｄｉｆｆ、ＢｉｌａｔＷｅｉｇｈｔも変数である。ｆｏｒは、ループ変数ｉをｉ＝０からｉ＜１２の範囲でカウントアップ（ｉ＋＋）しつつ、ＰａｉｒＳｕｍ、ｄｉｆｆ、ＢｉｌａｔＷｅｉｇｈｔ、ＷｅｉｇｈｔｅｄＳｕｍ及びＳｕｍＯｆＷｅｉｇｈｔｓの値を逐次に更新するループ命令である。ループ命令を１回実行する度に、ＰａｉｒＳｕｍの値がｐ［ｉ］＋ｐ［２４−ｉ］で更新され、また、ｄｉｆｆの値がＰａｉｒＳｕｍ／２−ｐ［１２］で更新されると共に、ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）に制限され、さらに、ＢｉｌａｔＷｅｉｇｈｔの値がＷｅｉｇｈｔ［ｉ］＊ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）で更新され、また、ＷｅｉｇｈｔｅｄＳｕｍの値が（ＰａｉｒＳｕｍ＊ＢｉｌａｔＷｅｉｇｈｔ）で更新され、さらに、ＳｕｍＯｆＷｅｉｇｈｔｓの値が（ＢｉｌａｔＷｅｉｇｈｔ＊２）で更新される。なお、「＋＝」は、旧値（前回ループ時の演算結果）と新値（今回ループ時の演算結果）との加算、「＊」は乗算を示す。そして、ループを抜けると、ＷｅｉｇｈｔｅｄＳｕｍの値に（ｐ［１２］＊Ｗｅｉｇｈｔ［１２］）を加算し、ＳｕｍＯｆＷｅｉｇｈｔｓの値にＷｅｉｇｈｔ［１２］の値を加算し、最後に、ＷｅｉｇｈｔｅｄＳｕｍの値をＳｕｍＯｆＷｅｉｇｈｔｓの値で割って、ノイズ抑制後の出力（ｎｒ＿ｏｕｔ）を得ている。
【００６５】
このコードＣにより、画像信号の注目画素（中心画素ｐ［１２］）の周辺にある複数の周辺画素（ｐ［０］、ｐ［１］、ｐ［２］、ｐ［３］、ｐ［４］、ｐ［５］、ｐ［６］、ｐ［７］、ｐ［８］、ｐ［９］、ｐ［１０］、ｐ［１１］、ｐ［１３］、ｐ［１４］、ｐ［１５］、ｐ［１６］、ｐ［１７］、ｐ［１８］、ｐ［１９］、ｐ［２０］、ｐ［２１］、ｐ［２２］、ｐ［２３］、ｐ［２４］）の加重平均をとることによって注目画素の新たな画素値（ｎｒ＿ｏｕｔ）を算出する画像処理フィルタを実現できると共に、かかる加重平均における各周辺画素の重み値（Ｗｅｉｇｈｔ［ｉ］）を、注目画素と周辺画素との位置関係に応じた値で、且つ、注目画素の画素植と周辺画素の画素値との差に応じた非線形な演算により決定された値に設定することができる。
【００６６】
図８は、ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）関数を示す概念図である。この図に示すように、ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）関数は、ｄｉｆｆが大きいほど小さい値を返す関数であり、この関数は、注目画素（中心画素ｐ［１２］）と周辺画素との差ｄｉｆｆが大きいときには、ノイズではなく、有効な信号成分である可能性が高いので、フィルタの重みを小さくして“滑られる”（当該信号成分が過剰に減衰する）のを防ぐために用いられる。
【００６７】
２段目の傾き補正型バイラテラルフィルタ（第２の傾き補正型バイラテラルフィルタ５３）の動作も１段目と類似しているが、処理対象の画素ブロックの構成に相違がある。すなわち、前記の図５のような９×９画素において、２画素おきに飛び飛びに配置されたｐ［０］〜ｐ［２４］の５×５画素を使って、注目画素（中心画素ｐ［１２］）にノイズ抑制をかける。擬似コードは、前記のコードＣを流用することができる。
【００６８】
３段目の通常型バイラテラルフィルタ５５は、以下のように動作する。
前記の図６のような１７×１７画素において、実際の処理に使うのは４画素おきに飛び飛びに配置されたｐ［０］〜ｐ［２４］の５×５画素である。この場合、注目画素（中心画素ｐ［１２］）にノイズ抑制をかけるためのＣ言語の擬似コード（以下、コードＤという。）は、以下のとおり表すことができる。
【００６９】
＜コードＤ＞
ＷｅｉｇｈｔｅｄＳｕｍ＝０；
ＳｕｍＯｆＷｅｉｇｈｔｓ＝０；
ｆｏｒ（ｉ＝０；ｉ＜２５；ｉ＋＋）｛
ｄｉｆｆ＝ｐ［ｉ］−ｐ［１２］；
ＢｉｌａｔＷｅｉｇｈｔ＝Ｗｅｉｇｈｔ［ｉ］＊ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）；
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｐ［ｉ］＊ＢｉｌａｔＷｅｉｇｈｔ）；
ＳｕｍＯｆＷｅｉｇｈｔｓ  ＋＝  ＷｅｉｇｈｔｅｄＳｕｍ；
｝
ｎｒ＿ｏｕｔ＝ＷｅｉｇｈｔｅｄＳｕｍ／ＳｕｍＯｆＷｅｉｇｈｔｓ；
【００７０】
コードＤを説明すると、ＷｅｉｇｈｔｅｄＳｕｍとＳｕｍＯｆＷｅｉｇｈｔｓは初期値０の変数であり、ｄｉｆｆやＢｉｌａｔＷｅｉｇｈｔも変数である。ｆｏｒは、ループ変数ｉをｉ＝０からｉ＜２５の範囲でカウントアップ（ｉ＋＋）しつつ、ｄｉｆｆ、ＢｉｌａｔＷｅｉｇｈｔ、ＷｅｉｇｈｔｅｄＳｕｍ及びＳｕｍＯｆＷｅｉｇｈｔｓの値を逐次に更新するループ命令である。ループ命令を１回実行する度に、ｄｉｆｆの値がｐ［ｉ］−ｐ［１２］で更新されると共に、ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）に制限され、さらに、ＢｉｌａｔＷｅｉｇｈｔの値がＷｅｉｇｈｔ［ｉ］＊ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）で更新され、また、ＷｅｉｇｈｔｅｄＳｕｍの値が（ｐ［ｉ］＊ＢｉｌａｔＷｅｉｇｈｔ）で更新され、さらに、ＳｕｍＯｆＷｅｉｇｈｔｓの値がＷｅｉｔｅｄＳｕｍで更新される。なお、「＋＝」は、旧値（前回ループ時の演算結果）と新値（今回ループ時の演算結果）との加算、「＊」は乗算を示す。そして、ループを抜けると、ＷｅｉｇｈｔｅｄＳｕｍの値をＳｕｍＯｆＷｅｉｇｈｔｓの値で割って、ノイズ抑制後の出力（ｎｒ＿ｏｕｔ）を得ている。
【００７１】
以上のようにして求められた「ｎｒ＿ｏｕｔ」から、同じ係数で構成されるＦＩＲフィルタの結果を減算し、各帯域におけるノイズ抑制処理された交流成分を算出する。そして、最後に全帯域成分の和を求めて、最終のノイズ抑制処理結果とする。  なお、本例では２段目を傾き補正型バイラテラルフィルタとしたが、通常型バイラテラルフィルタとしてもよい。
【００７２】
このように構成したから、以上の第１実施形態によれば、
（ア）各帯域ごとにノイズ抑制をかけることで、各帯域別に最適なノイズ抑制量を設定することができる。
（イ）注目画素と周辺画素の画素値の差に応じた非線形な演算を行うデジタルフィルタを用いたので、画像のエッジ部分におけるノイズ除去性能を向上させることができる。
（ウ）ＬＰＦとＢＰＦとを縦列的に多段接続し、各接続部より複数の周波数帯域に分割された信号を取り出す構成において、タップ数の多いフィルタの係数に“０“を多く含むようにしたので、低周波特性を持つフィルタをより少ない演算量で実現することができる。
（エ）ＬＰＦ処理またはＢＰＦ処理の一部の演算処理を非線形な処理とすることによりノイズを除去するノイズフィルタを、周波数帯域を分割するために縦列的に接続された各ＬＰＦまたはＢＰＦと並列的に接続し、且つ、これらの対を成すフィルタの係数を同じ設定にしたことにより、分割された各周波数帯域毎にその周波数帯域のノイズを確実に除去することができる。
（オ）また、少なくとも１段目を傾き補正型のノイズ抑制とすることで、グラデーションのような階調変化部での高周波ノイズ除去性能を確保できる。
（カ）また、少なくとも最終段を通常型のノイズ抑制とすることで、低周波についてはエッジを確実に残しつつ、ベタ部分での低周波ノイズを除去することができる。
【００７３】
したがって、以上の（ア）〜（カ）の全て、または一部の組み合わせにより、帯域バランスに優れたノイズ除去を可能とすることができ、冒頭で述べた本件発明の課題を達成することができる。る。
【００７４】
＜第２実施形態＞
前記の特許文献１には、注目画素±εに値が制限された周辺画素を使ってＬＰＦ処理を行うノイズ抑制技術が記載されている。これは、イプシロンフィルタと呼ばれるものである。この先行文献においては、ベイヤデータに対して５×５タップの上記ノイズ抑制技術を適用する実施例が述べられているが、５×５程度のタップ数では低周波数のノイズ除去ができない。また、前記の非特許文献１には、バイラテラルフィルタと呼ばれるノイズ抑制技術が記載されている。これは、注目画素俵と周辺画素値との差の大きさに応じてＬＰＦの係数を変化させるという方式で、前記差が大きいほどＬＰＦの係数を小さくするというアルゴリズムである。しかしながら、このアルゴリズムにおいても、前記のイプシロンフィルタと同様に５×５程度のタップ数では低周波ノイズ除去ができないという欠点がある。
【００７５】
すなわち、これらのイプシロンフィルタやバイラテラルフィルタによって低周波ノイズの除去能力を向上するためには、必然的にタップ数を大きくする必要があるが、そのようにすると、ハードウエアのコストが増大するという不都合がある。
【００７６】
以下に説明する第２実施形態は、ハードウエアのコストの増大を招かずに、低周波ノイズの除去能力を向上するものである。
【００７７】
図９は、第２実施形態の概念構成図である。この図において、ＣＣＤやＣＭＯＳなどの撮像素子から出力された画像信号ｉｎ（ただし、この画像信号ｉｎは不図示のＡ／Ｄ変換器でデジタル信号に変換されたものである。）は、直列接続された４つのノイズ抑制フィルタ（以下、１段目ノイズ抑制フィルタ７１、２段目ノイズ抑制フィルタ７２、３段目ノイズ抑制フィルタ７３、４段目ノイズ抑制フィルタ７４という。）を通り、ノイズ抑制後の画像信号ｏｕｔとして取り出されている。
【００７８】
これら４つのノイズ抑制フィルタ（以下、１段目ノイズ抑制フィルタ７１、２段目ノイズ抑制フィルタ７２、３段目ノイズ抑制フィルタ７３、４段目ノイズ抑制フィルタ７４という。）は、イプシロンフィルタ又はバイラテラルフィルタを用いる。
【００７９】
ここで、１段目ノイズ抑制フィルタ７１の“１２”（右から左に読む；以下同様。）は、（１，２，１）／４という３×３タップ係数で構成されたノイズ抑制フィルタを示している。同様に、２段目ノイズ抑制フィルタ７２の“１０２”は、（１，０，２，０，１）／４という５×５タップ係数で構成されたノイズ抑制フィルタを示していり、３段目ノイズ抑制フィルタ７３の“１０００２”は、（１，０，０，０，２，０，０，０，１）／４という９×９タップ係数で構成されたノイズ抑制フィルタを示しており、４段目ノイズ抑制フィルタ７４の“１０００００００２”は、（１，０，０，０，０，０，０，０，２，０，０，０，０，０，０，０，１）／４という１７×１７タップ係数で構成されたノイズ抑制フィルタを示している。
【００８０】
図１０は、各ノイズ抑制フィルタの係数（ここでは、代表として１段目ノイズ抑制フィルタ７１の係数“１２”）を２次元で示す図である。この図において、升目の一つ一つは画像信号の画素であり、各々の升目内の数値はその画素値に適用する係数である。注目画素は中央の画素（係数４の画素）、周辺画素は注目画素以外の画素である。
【００８１】
図１１は、図９の構成における各位置の周波数特性図である。この図において、Ｌ０は（１２１）の周波数特性を表し、Ｌ１は（１２１）＊（１０２０１）の周波数特性を表している。同様に、Ｌ２は（１２１）＊（１０２０１）＊（１０００２０００１）の周波数特性を表し、Ｌ３は（１２１）＊（１０２０１）＊（１０００２０００１）＊（１０００００００２０００００００１）の周波数特性を表している。「＊」は畳み込み演算を示す。
【００８２】
（３）イプシロンフィルタでの構成例：
図９の構成において、４つのノイズ抑制フィルタ（１段目ノイズ抑制フィルタ７１、２段目ノイズ抑制フィルタ７２、３段目ノイズ抑制フィルタ７３、４段目ノイズ抑制フィルタ７４）に「イプシロンフィルタ」を用いる場合の詳細を説明する。
【００８３】
１段目のイプシロンフィルタ（１段目ノイズ抑制フィルタ７１）は、以下のように動作する。
【００８４】
図１２は、１段目のイプシロンフィルタ（１段目ノイズ抑制フィルタ７１）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。この図において、注目画素（中心画素ｐ［４］）に対してノイズ抑制をかける場合の動作は、次のようなＣ言語の擬似コード（以下、コードＥという。）で表すことができる。
【００８５】
＜コードＥ＞
Ｗｅｉｇｈｔ［９］＝｛
１，２，１，
２，４，２，
１，２，１，
｝；／／この係数の和は１６
ＷｅｉｇｈｔｅｄＳｕｍ＝０；
ｆｏｒ（ｉ＝０；ｉ＜９；ｉ＋＋）｛
ｄｉｆｆ＝ｐ［ｉ］−ｐ［４］；
ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）；
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｄｉｆｆ＊２＊Ｗｅｉｇｈｔ［ｉ］）；
｝
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｐ［４］＊１６）；
ｎｒ＿ｏｕｔ＝ＷｅｉｇｈｔｅｄＳｕｍ／１６；
【００８６】
コードＥを説明すると、Ｗｅｉｇｈｔ［９］は、配列変数であり、９個の配列の各々に初期値（１，２，１，２，４，２，１，２，１）が格納される。これらの初期値は、注目画素とその周辺画素の各々の係数である。また、スラッシュを二つ並べた記号（／／）以降の文は注釈（コメント）を表しており、このコメントのとおり、全ての係数の和は“１６”になる。
【００８７】
ＷｅｉｇｈｔｅｄＳｕｍは初期値０の変数であり、また、ｄｉｆｆも変数である。ｆｏｒは、ループ変数ｉをｉ＝０からｉ＜９の範囲でカウントアップ（ｉ＋＋）しつつ、ｄｉｆｆ及びＷｅｉｇｈｔｅｄＳｕｍの値を逐次に更新するループ命令である。ループ命令を１回実行する度に、ｄｉｆｆの値がｐ［ｉ］−ｐ［４］で更新されると共に、ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）に制限され、さらに、ＷｅｉｇｈｔｅｄＳｕｍの値が（ｄｉｆｆ＊２＊Ｗｅｉｇｈｔ［ｉ］）で更新される。なお、「＋＝」は、旧値（前回ループ時の演算結果）と新値（今回ループ時の演算結果）との加算、「＊」は乗算を示す。そして、ループを抜けると、ＷｅｉｇｈｔｅｄＳｕｍの値に（ｐ［４］＊１６）を加算し、その加算結果を“１６”で割って、ノイズ抑制後の出力（ｎｒ＿ｏｕｔ）を得ている。
【００８８】
ここで、ｌｉｍｉｔ（ｄｉｆｆ）は、ｄｉｆｆを非線形変換する処理であり、たとえば、前記の図２０のようにｄｉｆｆを±εに制限するものである。
【００８９】
図１３は、２段目のイプシロンフィルタ（２段目ノイズ抑制フィルタ７２）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。この２段目ノイズ抑制フィルタ７２についても、１段目と同じ方法（コードＥ）を適用する。
【００９０】
図１４は、３段目のイプシロンフィルタ（３段目ノイズ抑制フィルタ７３）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。この３段目ノイズ抑制フィルタ７３についても、１段目と同じ方法（コードＥ）を適用する。
【００９１】
図１５は、４段目のイプシロンフィルタ（４段目ノイズ抑制フィルタ７４）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。この４段目ノイズ抑制フィルタ７４についても、１段目と同じ方法（コードＥ）を適用する。
【００９２】
（４）バイラテラルフィルタでの構成例：
次に、図９の構成において、４つのノイズ抑制フィルタ（１段目ノイズ抑制フィルタ７１、２段目ノイズ抑制フィルタ７２、３段目ノイズ抑制フィルタ７３、４段目ノイズ抑制フィルタ７４）に「バイラテラルフィルタ」を用いる場合の詳細を説明する。
【００９３】
前記の図１２のような３×３画素において、注目画素（中心画素ｐ［４］）に対してノイズ抑制をかける場合の動作は、次のようなＣ言語の擬似コード（以下、コードＦという。）で表すことができる。
【００９４】
＜コードＦ＞
ＷｅｉｇｈｔｅｄＳｕｍ＝０；
ＳｕｍＯｆＷｅｉｇｈｔｓ＝０；
ｆｏｒ（ｉ＝０；ｉ＜９；ｉ＋＋）｛
ｄｉｆｆ＝ｐ［ｉ］−ｐ［４］；
ＢｉｌａｔＷｅｉｇｈｔ  ＋＝  Ｗｅｉｇｈｔ［ｉ］＊ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）；
ＷｅｉｇｈｔｅｄＳｕｍ  ＋＝  （ｐ［ｉ］＊ＢｉｌａｔＷｅｉｇｈｔ）；
ＳｕｍＯｆＷｅｉｇｈｔｓ  ＋＝  ＷｅｉｇｈｔｅｄＳｕｍ；
｝
ｎｒ＿ｏｕｔ＝ＷｅｉｇｈｔｅｄＳｕｍ／ＳｕｍＯｆＷｅｉｇｈｔｓ；
【００９５】
コードＦを説明すると、ＷｅｉｇｈｔｅｄＳｕｍとＳｕｍＯｆＷｅｉｇｈｔｓは初期値０の変数であり、また、ｄｉｆｆやＢｉｌａｔＷｅｉｇｈｔも変数である。ｆｏｒは、ループ変数ｉをｉ＝０からｉ＜９の範囲でカウントアップ（ｉ＋＋）しつつ、ｄｉｆｆやＢｉｌａｔＷｅｉｇｈｔ、ＷｅｉｇｈｔｅｄＳｕｍの値を逐次に更新するループ命令である。ループ命令を１回実行する度に、ｄｉｆｆの値がｐ［ｉ］−ｐ［１２］で更新されると共に、ｄｉｆｆ＝ｌｉｍｉｔ（ｄｉｆｆ）に制限され、さらに、ＢｉｌａｔＷｅｉｇｈｔの値がＷｅｉｇｈｔ［ｉ］＊ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）で更新され、また、ＷｅｉｇｈｔｅｄＳｕｍの値が（ｐ［ｉ］＊ＢｉｌａｔＷｅｉｇｈｔ（ｄｉｆｆ））で更新され、また、ＳｕｍＯｆＷｅｉｇｈｔｓの値がＷｅｉｇｈｔｅｄＳｕｍで更新される。なお、「＋＝」は、旧値（前回ループ時の演算結果）と新値（今回ループ時の演算結果）との加算を示す。そして、ループを抜けると、ＷｅｉｇｈｔｅｄＳｕｍの値をＳｕｍＯｆＷｅｉｇｈｔｓの値で割って、ノイズ抑制後の出力（ｎｒ＿ｏｕｔ）を得ている。
【００９６】
ここで、ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）は、ｄｉｆｆが大きいほど小さい値を返す関数で、たとえば、前記の図８ような特性とする。
【００９７】
２段目のバイラテラルフィルタ（２段目ノイズ抑制フィルタ７２）は、前記の図１３のような３×３画素に対して、１段目と同じ方法（コードＦ）を適用する。また、３段目のバイラテラルフィルタ（３段目ノイズ抑制フィルタ７３）は、前記の図１４のような３×３画素に対して、１段目と同じ方法（コードＦ）を適用する。また、４段目のバイラテラルフィルタ（４段目ノイズ抑制フィルタ７４）は、前記の図１５のような３×３画素に対して、１段目と同じ方法（コードＦ）を適用する。
【００９８】
以上のとおり、図９の４つのノイズ抑制フィルタ（１段目ノイズ抑制フィルタ７１〜４段目ノイズ抑制フィルタ７４）を「イプシロンフィルタ」で構成した場合と、「バイラテラルフィルタ」で行成した場合を説明したが、たとえば、画像の色差成分（ＹＵＶのＵＶ成分；Ｙは輝度成分、ＵＶは色差成分）に対して、本例（第２実施形態）を適用する場合には、ＵＶ成分としては、そもそも高周波成分は不要であるので、１段目はノイズ抑制フィルタとせず、単にＬＰＦとしてもよい。
【００９９】
また、図９では、後段になるにつれて遮断周波数の低いフィルタとしているが、接続の順番は問わない。たとえば、以下のようにしてもよい。
図１６は、図９の接続を逆順にした例を示す図であり、このように、図９の４段目ノイズ抑制フィルタ７４を「１段目」にし、３段目ノイズ抑制フィルタ７３を「２段目」にし、２段目ノイズ抑制フィルタ７２を「３段目」にし、１段目ノイズ抑制フィルタ７１を「４段目」にしてもよい。
【０１００】
このように構成したから、以上の第２実施形態によれば、以下の効果を奏することができる。すなわち、第２実施形態と同等の特性を単体のノイズ抑制フィルタで得ようとした場合、Ｌ３部（図１１の特性図における左端の特性線Ｌ３を参照）と同じ特性を持つ３１×３１タップのノイズ抑制フィルタが必要になるが、そのようにすると、３１×３１＝９６１回もの膨大な演算が発生する。しかしながら、本第２実施形態のように複数のフィルタの直列構成とすれば、“０”でない係数はどのフィルタも３×３＝９個と少なくなるので、たとえば、４つのフィルタの場合は、高々３６回の少ない演算で済む。これにより、ハードウエアの規模と計算量を大幅に削減することが可能となる。この演算量の削減効果は、第１実施形態と比べても非常に大きいものとなる。
【０１０１】
また、第１実施形態と比較した場合、非線形フィルタ（イプシロンフィルタまたはバイラテラルフィルタ）が縦列接続されるので、帯域特性は多少悪化するが、周波数帯域を分割するためのＬＰＦまたはＢＰＦと、ノイズを除去するためのイプシロンフィルタまたはバイラテラルフィルタとを兼用しているため、回路規模を大幅に縮小することができる。
【０１０２】
このため、画像の輝度成分（Ｙ）に対しては第１実施形態を適用し、画像の色差成分（ＵＶ）に対して第２実施形態を適用してもよく、このようにすれば、性能とコストとパフォーマンスを最適化することができる。
【０１０３】
なお、上記第１実施形態および第２実施形態で示したノイズ除去手段は、その一部または全体をハードウエアまたはソフトウエアのいずれで実現してもよい。
【０１０４】
また、このノイズ除去手段をデジタルカメラに適用し、撮像素子から出力される画像信号に対してこのノイズ除去手段によるノイズ除去を施した後、ノイズが除去された画像データをメモリカードなどに記録保存する利用方法の他、既に記録保存されている画像データに対して  このノイズ除去手段によるノイズ除去を施すような利用方法でもよい。また、ＤＶＤプレイヤーなどの画像再生装置に適用し、画像データの再生時にこのノイズ除去手段によるノイズ除去を施してから再生表示するような利用方法でもよい。
【図面の簡単な説明】
【０１０５】
【図１】第１実施形態の構成図（イプシロンフィルタでの構成例）である。
【図２】ＬＰＦ６、ＢＰＦ７及びＢＰＦ８の周波数特性図である。
【図３】係数（例としてＬＰＦ３２の係数）を２次元で示す図である。
【図４】第１の傾き補正型イプシロンフィルタ３１の処理対象の画素ブロック（５×５画素のブロック）を示す図である。
【図５】第２の傾き補正型イプシロンフィルタ３３の処理対象の画素ブロック（９×９画素のブロック）を示す図である。
【図６】通常型イプシロンフィルタ３５の処理対象の画素ブロック（１７×１７画素のブロック）を示す図である。
【図７】第１実施形態の構成図（バイラテラルフィルタでの構成例）である。
【図８】ｂｉｌａｔｇａｉｎ（ｄｉｆｆ）関数を示す概念図である。
【図９】第２実施形態の概念構成図である。
【図１０】各ノイズ抑制フィルタの係数（ここでは、代表として１段目ノイズ抑制フィルタ７１の係数“１２”）を２次元で示す図である。
【図１１】図９の構成における各位置の周波数特性図である。
【図１２】１段目のイプシロンフィルタ（１段目ノイズ抑制フィルタ７１）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。
【図１３】２段目のイプシロンフィルタ（２段目ノイズ抑制フィルタ７２）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。
【図１４】３段目のイプシロンフィルタ（３段目ノイズ抑制フィルタ７３）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。
【図１５】４段目のイプシロンフィルタ（４段目ノイズ抑制フィルタ７４）の処理対象の画素ブロック（３×３画素のブロック）を示す図である。
【図１６】図９の接続を逆順にした例を示す図である。
【図１７】第４従来例の概念構成図である。
【図１８】第４従来例の要部構成図である。
【図１９】Ｌｉｍ処理の概念図（±εの範囲に値制限するもの）である。
【図２０】Ｌｉｍ処理の概念図（滑らかな特性で値を制限するもの）である。
【図２１】図１８を再構成した図である。
【図２２】図２１の要部（点線で囲んだ部分）構成図である。
【符号の説明】
【０１０６】
３１  第１の傾き補正型イプシロンフィルタ（ノイズ除去手段、画像処理フィルタ）
３２  ＬＰＦ（ノイズ除去手段）
３３  第２の傾き補正型イプシロンフィルタ（ノイズ除去手段、画像処理フィルタ）
３４  ＢＰＦ（ノイズ除去手段）
３５  通過型イプシロンフィルタ（ノイズ除去手段、画像処理フィルタ）
３６  ＢＰＦ（ノイズ除去手段）
【図１】
2008242696.tif 000003
【図２】
2008242696.tif 000004
【図３】
2008242696.tif 000005
【図４】
2008242696.tif 000006
【図５】
2008242696.tif 000007
【図６】
2008242696.tif 000008
【図７】
2008242696.tif 000009
【図８】
2008242696.tif 000010
【図９】
2008242696.tif 000011
【図１０】
2008242696.tif 000012
【図１１】
2008242696.tif 000013
【図１２】
2008242696.tif 000014
【図１３】
2008242696.tif 000015
【図１４】
2008242696.tif 000016
【図１５】
2008242696.tif 000017
【図１６】
2008242696.tif 000018
【図１７】
2008242696.tif 000019
【図１８】
2008242696.tif 000020
【図１９】
2008242696.tif 000021
【図２０】
2008242696.tif 000022
【図２１】
2008242696.tif 000023
【図２２】
2008242696.tif 000024