0

メソッドを使用して画像を変換しfft2ました。次の画像リンクに示すように、ノイズの多いピークを見つけて消去したいと思います。

ノイズの多いピークのある画像

これを達成するためのmatlab機能を親切に提案してください

これは私がこれまでにやったことです

  F = fft2(myImage);

  F = fftshift(F); % Center FFT

  F = abs(F); % Get the magnitude
  F = log(F+1); % Use log, for perceptual scaling, and +1 since log(0) is undefined
  F = mat2gray(F); % Use mat2gray to scale the image between 0 and 1

  imshow(F,[]); % Display the result
4

1 に答える 1

0

特定のしきい値と位置を超えるポイントを表示/表すマスクの作成を試みることができます。位置の配列を作成しましょう。

[x y] = meshgrid(1:size(a, 2), 1:size(a, 1));  % x-y coordinate of the data
ft = 0.5;                                      % Try different values for your case.
mask = F > ft && y < 0.4*size(a, 1) && y > 0.6*size(a, 1);
F(mask) = 0;

mask正しい位置を見つけたかどうかを確認できるはずです。imagesc(mask)試行錯誤の段階で非常に役立ちます。この例にはルールがありませんがx、検索スペースを減らすのに役立つ場合は、ルールを追加できる可能性があることに注意してください。

于 2013-08-07T23:34:01.313 に答える