私の論文の大部分は画像のノイズを減らすことでした。画像の鮮明なエッジを保存しながら画像のノイズを減らすために使用した手法がありました。私はここで自分自身を引用:
縞パターンからノイズを除去するための効果的な技術は、正弦余弦フィルタリング[reference]を用いて画像 をフィルタリングすることです。ローパスフィルタは、 がフリンジパターン画像の正弦と余弦を取った結果である2つの画像と畳み込まれ、 は、正接を得るために分割され、位相パターンを復元するが、ノイズは低減される。 この技術の利点は、プロセスが複数回繰り返されて、位相遷移の鋭い詳細を維持しながらノイズを低減することです。
そして、ここでは私が使用するコードです:そこ
import numpy as np
from scipy import ndimage
def scfilter(image, iterations, kernel):
"""
Sine‐cosine filter.
kernel can be tuple or single value.
Returns filtered image.
"""
for n in range(iterations):
image = np.arctan2(
ndimage.filters.uniform_filter(np.sin(image), size=kernel),
ndimage.filters.uniform_filter(np.cos(image), size=kernel))
return image
、image
は、画像を表すnumpyの配列は、直線的に2 * pi
で0
と白に黒置くために再スケーリングし、kernal
は中サイズですデータに適用された均一フィルタの画像ピクセル。それは役立ちます:)
が
ノイズがきれいにハイコントラストになりそうだ20
希望に多分5の領域において、陽性の結果を見て、あまりにも多くの反復を取るべきではない、あなただけ適用する必要があります斑点除去プロセス。この回答をお試しください:http://stackoverflow.com/questions/5680429/how-to-implement-despeckle-in-opencv – PeteB
は、ヒストグラムのない画像のノイズを減らす方が簡単かもしれません。 – Micka
このノイズが元のイメージに存在しない場合、これはイコライゼーションのアーチファクトです。ガンマ補正やコントラストストレッチなどのオプションを試すことができます。また、Frangiフィルタは、通常、血管様構造を抽出するために使用される。 – dhanushka