所有滤波通过傅里叶变换在频率域中实现
例1
clc,clear,close all;
f = imread(“C:\Users\jinsedeyu\Desktop\н¨Îļþ¼Ð\DIP3E_Original_Images_CH04\Fig0432(a)(square_original).tif”);
figure
subplot(131),imshow(f,[]);
[M, N] = size(f);
[f, revertclass] = tofloat(f);
F = fft2(f);
sig = 10;
H = lpfilter(‘gaussian’, M, N, sig);
G = H.F;
g = ifft2(G);
g = revertclass(g);
subplot(132),imshow(g)
PQ = paddedsize(size(f));
Fp = fft2(f, PQ(1), PQ(2));
Hp = lpfilter(‘gaussian’, PQ(1), PQ(2), 2sig);
Gp = Hp.Fp;
gp = ifft2(Gp);
gpc = gp(1:size(f,1), 1:size(f,2));
gpc = revertclass(gpc);
subplot(133),imshow(gpc)
figure
imshow(gp)
h = fspecial(‘gaussian’, 15, 7);
gs = imfilter(f, h);
例2
clc,clear,close all;
f = imread(“C:\Users\jinsedeyu\Desktop\н¨Îļþ¼Ð\DIP3E_Original_Images_CH04\Fig0438(a)(bld_600by600).tif”);
figure
subplot(121),imshow(f,[])
f = tofloat(f);
F = fft2(f);
S = fftshift(log(1 + abs(F)));
subplot(122),
数字图像处理第三章-频率域滤波
最新推荐文章于 2024-05-14 15:23:16 发布