数字图像处理--正交变换
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字图像处理实验二
一.实验目的
1. 了解图像变换的意义和手段
2. 熟悉傅立叶变换和DCT 的基本原理
3.熟练掌握图像的傅立叶变换方法、性质和应用
4. 熟练掌握图像离散余弦变换方法及应用
二.实验内容及步骤
1. 图像的显示及其傅立叶变换
(1)
%使用一个二进制图像来显示矩阵
f=zeros(30,30);%运行环境在matlab2012a中需去掉imshow(f,'notruesize') 中的notruesize即可
f(5:24,13:17)=1;%建立m文件并保存,并输入文件名
imshow(f) %在command window主窗口中,输入文件名按Enter即可或在edit窗口中点击debug控件中F5
(a)
(2)
%使用第二个可视化f 的DFT 振幅谱
F=fft2(f);
F2=log(abs(F));
imshow(F2,[.1 5]);
colormap(jet);
(b)
(3)
%a使用零填充后的傅立叶变换
F=fft2(f,256,256);
imshow(log(abs(F)),[.1 5]);
colormap(jet);
(c) 小结:
(4)
%函数傅立叶变换幅值对数图形
F=fft2(f,256,256);
F2=fftshift(F);
imshow(log(abs(F2)),[0.1 5]); colormap(jet);
(d) 小结:
(5)
%b使用零填充后的傅立叶变换64*64
F=fft2(f,64,64);
imshow(log(abs(F)),[.1 5]);
colormap(jet);
(f)(6)
%c使用零填充后的傅立叶变换512*512
F=fft2(f,512,512);
imshow(log(abs(F)),[.1 5]);
colormap(jet);
(g)小结:
(7)
%从abc中可以看出图像逐渐放大
%2 DCT 变换的 MATLAB 实现
%图 1-5 矩阵 f 的二进制显示结果
f=zeros(64,64);
f(24:40,24:40)=1;
imshow(f)
(h)
(8)
%矩阵 f 的 DCT 变换结果
F=dct2(f);
F2= abs(F);
imshow(F2,[ ]);
colormap(jet);
(i)
(9)
%零填充后的DCT 变换结果
F=dct2(f, [256,256]);
F2= log(abs(F));
imshow(F2,[ ]);
colormap(jet);
(e)