Removing Noise using FFT

Hello everyone, I was asked to remove periodic noise from an image and the noise module (pattern) was given. So, I have to subtract pattern from the image in order to get rid of the noise. you can find the two images in the attachment. Here what I did so far (in the code), Only the white bars were removed while black ones were still present. I really will be thankful if one could help me to solve this problem
if true
clc;
close all;
clear all;
%%%%%%%%%%%%%%%%%%%%%%%%
m=imread('nnoisy.png');
figure;
imshow(m),title('noisy image');
Artifacted=(fft2(double(m)));
%%%%%%%%%%%%%%%%%%%%%%%
p=imread('Pattern.tif');
figure;
imshow(p), title('pattern image');
pattern=(fft2(double(p)));
%%%%%%%%%%%%%%%%%%%%%%
Subtractionn=((Artifacted)-(pattern));
figure;
imshow(Subtractionn), title('subtraction image');
%%%%%%%%%%%%%%%%%%%%%%%%%%%
spacial=uint8(ifft2(Subtractionn));
figure;
imshow(spacial), title('spacial domain image');

回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeImages についてさらに検索

質問済み:

2018 年 5 月 4 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by