8 第2章 图像获取 2.3.2 二维连续傅里叶变换 例2 .2 figure(1); %建立图形窗口1 [u,v] = meshgrid(-1:0.01:1); %生成二维频域网格 F1 = abs(sinc(u.*pi)); F2 = abs(sinc(v.*pi)); F=F1.*F2; %计算幅度频谱F=|F(u,v)| surf(u,v,F); %显示幅度频谱,如图2.3(b) shading interp; %平滑三维曲面上的小格 axis off; %关闭坐标系 figure(2); %建立图形窗口2 F1=histeq(F); %扩展 F 的对比度以增强视觉效果 imshow(F1); %用图像来显示幅度频谱,如图2.3(c) 第3章 图像变换 3.4.4 二维 FFT 的 MATLAB 实现 例3 .2 简单图像及其傅里叶变换 MATLAB程序: %建立简单图像d并显示之 d = zeros(32,32); %图像大小3232 d(13:20,13:20) = 1; %中心白色方块大小为88 figure(1); %建立图形窗口1 imshow(d,'notruesize'); %显示图像d如图3.5(a)所示 %计算傅里叶变换并显示之 D = fft2(d); %计算图像d的傅里叶变换,fft2(d) = fft(fft(d).').' figure(2); %建立图形窗口2 imshow(abs(D),[-1 5],'notruesize'); %显示图像d 的傅里叶变换谱如3.5(b)所示 例3 .3 MATLAB图像及其傅里叶变换谱 MATLAB程序: figure(1); load imdemos saturn2; %装入MATLAB图像saturn2 imshow(saturn2); %显示图像saturn2如图3.6(a)所示 figure(2); S= fftshift(fft2(saturn2)); %计算傅里叶变换并移位 imshow(log(abs(S)),[ ]); %显示傅里叶变换谱如3.6(b)所示 例3 .4 真彩图像及其傅里叶变换谱 MATLAB程序: figure(1); A=imread('image1.jpg'); %装入真彩图像,见图1.1(b) B=rgb2gray(A); %将真彩图像转换为灰度图像 9 imshow(B); %显示灰度图像如图3.7(a)所示 C=fftshift(fft2(B)); %计算傅里叶变换并移位 figure(2); imshow(log(abs(C)),[ ]); %显示傅里叶变换谱如3.7(b)所示 3.5.4 离散余弦变换的 MATLAB 实现 例3 .5 计算并显示真彩图像余弦变换的MATLAB程序如下: RGB=imread('image2.jpg'); %装入真彩图像 figure(1); imshow(RGB); %显示彩色图像 GRAY=rgb2gray(RGB); %将真彩图像转换为灰度图像 figure(2); imshow(GRAY); %显示灰度图像如图3.10(a)所示 DCT=dct2(GRAY); %进行余弦变换 figure(3); imshow(log(abs(DCT)),[ ]); %显示余弦变换如图3.10(b)所示。 3.8.2 Radon 变换的 MATLAB 实现 例3 .8 真彩图像的Radon 变换...