periodic_noise_reduction_using_notch_filter.m

来自「an implementation of Notch_Filter in mat」· M 代码 · 共 40 行

M
40
字号
function [noise_pic]=generate_Noise_pic(pic)

pic=double(pic);

A=10;
[M,N]=size(pic);
u0=M/2;
v0=0;

noise=sinusoidal_noise(A,u0,v0,M,N);
noise=double(noise);

noise_pic=pic+noise;

noise_pic=255*(noise_pic-min(min(noise_pic)))/(max(max(noise_pic))-min(min(noise_pic)));
noise_pic=uint8(noise_pic);
imwrite(noise_pic,'noise_pic.bmp');




% Calculate noise and Pic_noise spectrum
for x=1:size(noise,1)
    for y=1:size(noise,2)
        noise(x,y)=(-1)^(x+y)*noise(x,y);
        noise_pic_temp(x,y)=(-1)^(x+y)*double(noise_pic(x,y));
    end
end

noise_spectrum=log10(abs(fft2(noise))+1);
noise_spectrum=255*(noise_spectrum-min(min(noise_spectrum)))/(max(max(noise_spectrum))-min(min(noise_spectrum)));

noise_pic_spectrum=log10(abs(fft2(noise_pic_temp))+1);
noise_pic_spectrum=255*(noise_pic_spectrum-min(min(noise_pic_spectrum)))/(max(max(noise_pic_spectrum))-min(min(noise_pic_spectrum)));

figure(1);
subplot(2,2,1);imshow(uint8(noise));
subplot(2,2,2);imshow(uint8(noise_pic));
subplot(2,2,3);imshow(uint8(noise_spectrum));
subplot(2,2,4);imshow(uint8(noise_pic_spectrum));

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?