「ノイズ除去」の版間の差分

提供: Eospedia
移動: 案内検索
(cos)
 
(同じ利用者による、間の2版が非表示)
行8: 行8:
 
# 電子のエネルギー損失と色収差からくる低分解能側に多く存在するノイズ:有色雑音(全域)
 
# 電子のエネルギー損失と色収差からくる低分解能側に多く存在するノイズ:有色雑音(全域)
 
# カメラのCCDや蛍光板、フィルムへの放射線、あるいは、ゴミなどによるノイズ:局所雑音
 
# カメラのCCDや蛍光板、フィルムへの放射線、あるいは、ゴミなどによるノイズ:局所雑音
 +
# アナログデジタル変換の際に発生するノイズ
  
 
などが挙げられます。
 
などが挙げられます。
行28: 行29:
 
[[Eos]]では、[[mrcImageLowPassFilter]]、[[mrcImageSmoothing]]等がその役割を担っています。
 
[[Eos]]では、[[mrcImageLowPassFilter]]、[[mrcImageSmoothing]]等がその役割を担っています。
 
=== ローパスフィルタ ===
 
=== ローパスフィルタ ===
 空間周波数の低い領域の情報を利用します。これは、シグナルが低周波側の強度が強いのに対して、ノイズが高周波まで同等の強度を持つ性質を利用したものです。[[mrcImageLowPassFilter]]が各種のカーネルに対応しています。ここでは、Eosで実装しているローパスフィルタを示します。
+
 空間周波数の低い領域の情報を利用します。これは、シグナルが低周波側の強度が強いのに対して、ノイズが高周波まで同等の強度を持つ性質を利用したものです。[[mrcImageLowPassFilter]]が各種のカーネルに対応しています。ここでは、[[Eos]]で実装しているローパスフィルタを示します。
  
 
==== ideal====
 
==== ideal====
行52: 行53:
  
 
==== B-splineフィルタ ====
 
==== B-splineフィルタ ====
 上記のBox関数による畳み込みを複数回(k+1回)実施すると、k次のCardnal B Splineと呼ばれるスプライン基底になります。無限会繰り返すと、Gauss関数基底に収束します。また、3次のスプライン関数はよく利用されます。[[Eos]]では、今のところ、[[mrcImageSmoothing]]の平均化フィルタを複数回適用(-timesにより指定できる)することで実現できます。
+
 上記のBox関数による畳み込みを複数回(k+1回)実施すると、k次のCardnal B Splineと呼ばれるスプライン基底になります。無限回繰り返すと、Gauss関数基底に収束します。また、3次のスプライン関数はよく利用されます。[[Eos]]では、今のところ、[[mrcImageSmoothing]]の平均化フィルタを複数回適用(-timesにより指定できる)することで実現できます。
  
 
==非線形フィルタ==
 
==非線形フィルタ==

2015年2月9日 (月) 10:22時点における最新版

ノイズ除去

ノイズの性質

 ノイズが非常に多い画像を取り扱うためには、ノイズの性質をよく知ることが重要です。 電子顕微鏡関係のノイズとしては、下記に挙げるいくつかが想定されます。

  1. 電子線量が少ないことから来る量子ノイズ:白色雑音(全域)
  2. 電子のエネルギー損失と色収差からくる低分解能側に多く存在するノイズ:有色雑音(全域)
  3. カメラのCCDや蛍光板、フィルムへの放射線、あるいは、ゴミなどによるノイズ:局所雑音
  4. アナログデジタル変換の際に発生するノイズ

などが挙げられます。

 量子ノイズは、白色雑音の一種であり、ポアソン過程に従ったノイズ分布をする場合が多いことが知られています。このノイズは高周波まで広がります。

 非弾性散乱電子と色収差によるノイズは、ぼけを伴い、低周波側に多く存在します。したがって、有色雑音となります。

 カメラのCCDや蛍光板、フィルムへの放射線、あるいは、ゴミなどによる雑音は、局所雑音となる例です。宇宙線や蛍光板内の崩壊に起因する放射線によるものは、非常に高い輝度のピクセルを与えます。CCD等のMTFのために、一点とはならず、ぼけを生じますが、電子顕微鏡の結像に由来するCTFには依存しないため、CTF補正を実施すると、リング上の不思議な模様を作ります。

 基本的には、平滑化技術と対応するものになりますが、できる限り、エッジ等を保存しながら、ノイズを減ずることがその目的になります。

異常値の除去

Eosでは、mrcImageAbnormalValueRemove等により、明らかに高い、若しくは、低い強度をもつ値を削除することができます。

6-sigma remove

画像の強度値の標準偏差を求め、著しく異なる値をもつ点を取り除くことができます。突然生じたCCDカメラ上のゴミ(ダーク)や放射線等に起因する高い強度ピクセルなどを取り除くことができます。mrcImageAbnormalValueRemoveがその役割を担っています。

線形フィルタ

Eosでは、mrcImageLowPassFiltermrcImageSmoothing等がその役割を担っています。

ローパスフィルタ

 空間周波数の低い領域の情報を利用します。これは、シグナルが低周波側の強度が強いのに対して、ノイズが高周波まで同等の強度を持つ性質を利用したものです。mrcImageLowPassFilterが各種のカーネルに対応しています。ここでは、Eosで実装しているローパスフィルタを示します。

ideal

 ある空間周波数以上をBox関数を用いて、カットするものです。Brick-wallフィルタとも呼ばれます。理想的なローパスフィルタといえますが、実空間での畳み込み関数がシンク関数になるため、Gibbs現象と呼ばれる、実空間に深刻なリップル(振動)を生み出すことがあります。

cos

コサイン関数による窓関数により高周波成分をカットするものです。カットのエッジがなまるため、実空間で畳み込まれる関数の染み出しが減少します。

exp

 フーリエ空間に指数関数を積算するものです。CCDでのボケ方に似ています。実空間での畳み込み関数がローレンツ分布になります。そのため、リップルは生じません。ガウス関数に比べて、高周波の成分が残りやすいですが、低周波成分も少し減少します。

Gaussian

 フーリエ空間にガウス関数を積算するもので、よく利用されています。実空間での畳み込み関数がガウス関数になります。そのため、リップルは生じません。

Lorenz

 フーリエ空間にローレンツ関数を積算するものです。実空間での畳み込み関数が指数関数になります。フィルムでのボケ方に似ています。

実空間フィルタ

 実空間に、適切なカーネルを畳み込むことで平滑化します。Eosでは、実空間でのフィルタに関しては、mrcImageSmoothingにより対応しています。ここでは、Eosで実装、あるいは、実現可能なフィルタを示します。

平均化フィルタ

 周辺の値の算術平均を代表値とします。Box関数による畳み込みに対応しています。Eosでは、mrcImageSmoothingが対応しています。

B-splineフィルタ

 上記のBox関数による畳み込みを複数回(k+1回)実施すると、k次のCardnal B Splineと呼ばれるスプライン基底になります。無限回繰り返すと、Gauss関数基底に収束します。また、3次のスプライン関数はよく利用されます。Eosでは、今のところ、mrcImageSmoothingの平均化フィルタを複数回適用(-timesにより指定できる)することで実現できます。

非線形フィルタ

Eosでは、実空間フィルタとして実装されており、mrcImageSmoothing等がその役割を担っています。

メジアンフィルタ

 指定した領域の中央値を代表値として採用します。ポアッソンノイズやごま塩型のノイズに強く、エッジを保存します。

2次曲面フィッティング

 強度を2次曲面に最小自乗法でフィットし、推定します。

Lee-Sigmaフィルタ(σフィルタ)

 中心点を平均値(avg)と仮定し、その周辺の指定した領域の標準偏差σ(=sqrt(sigma(xi-avg)*(xi-avg)/n)を計算し、そのσの一定倍数内(avg+-thres*σ)の値をもつ点の集合の平均値を代表値として採用します。エッジを保存しながら、平滑化が可能です。

Bilateralフィルタ

 空間方向及び強度方向に適切なカーネル(通常は、ガウス関数)を用意し、その積をウェイトとして用いる事で、エッジを保存しながら平滑化することが可能です。

非線形拡散方程式フィルタ

エッジ保存平滑化フィルタ