- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二 图像的频域变换处理
实验二 图像的频域变换处理
一、实验目的:
?????? 1、掌握Fourier,DCT和Radon变换、反变换的算法实现,并初步理解Fourier、Radon和DCT变换的物理意义。
2、利用傅里叶变换、离散余弦变换处理图像。
二、实验要求:
1.用Fourier、Radon和DCT变换算法对图像作二维Fourier、Radon和DCT变换,并输出变换结果,分析图像频域和空域之间的关系。
2.用Fourier、Radon和DCT反变换算法对图像作二维Fourier、Radon和DCT反变换。
3.分别选择频域低通、高通滤波器对同一幅图像进行滤波,观察分析滤波后的图像变化特征。
三、实验步骤:
1.用Fourier、Radon和DCT变换算法,对图像作二维Fourier、Radon和DCT变换和反变换 (考虑图像为256*256,可以采用快速Fourier变换方法),并比较反变换后的图像与原图像的视觉效果;
2.用DCT变换实现图像的压缩,计算压缩比。
3.利用高斯滤波器对图像进行滤波处理后输出。
实验方法:
设计matlab程序,在计算机中处理图像,输出结果。
设计程序生成一幅图像图像,利用函数F=fft2(‘name’,m,n)对图像进行傅里叶变换。利用函数imshow(log(abs(F),[ ] )输出图像的幅频特性,
利用函数F=ifft2(‘name’)完成傅里叶反变换。
利用函数B=dct2(‘name’,[m,n])对图像进行离散余弦变换。利用函数imshow(log(abs(B),[ ] )输出图像的幅频特性,
利用函数B=idct2(‘name’)完成傅里叶反变换。
利用dct变换对图像进行压缩处理,计算压缩前后的图像大小。
实验要求:
1、进实验室前必须设计好程序。
2、认真调试,记录结果。
3、实验报告必须有实验结论分析。
实验设备:
MATLAB实验环境,图像输入输出设备,图像处理设备。
实验结果;
I=imread(E:\qiaole.jpg);
A=rgb2gray(I);
subplot(1,2,1),imshow(A);
xlabel(原图);
B=dct2(A);
subplot(1,2,2),imshow(log(abs(B)),[0 5]);
xlabel(二维离散余弦变换);
I=imread(E:\qiaole.jpg);
subplot(1,3,1);imshow(I); xlabel(原图);
fftI=fft2(I);
subplot(1,3,2);imshow(fftI); xlabel(FFT变换);
sfftI=fftshift(fftI);
subplot(1,3,3);imshow(sfftI); xlabel(中心化);
I=imread(E:\qiaole.jpg);
A=rgb2gray(I);
subplot(1,3,1),imshow(A);
xlabel(原图);
B=dct2(A);
subplot(1,3,2),imshow(log(abs(B)),[0 5]);
xlabel(二维离散变换);
I=idct2(B)/200;
subplot(1,3,3),imshow(I);xlabel(反变换);
l=imread(E:\qiaole.jpg);
f=double(l);
g=fft2(f);
g=fftshift(g);
[M,N]=size(g);
d0=1530100;
m=fix(M/2);n=fix(N/2);
for i=1:M
for j=1:M
d=sqrt((i-m)^2+(j-n)^2);
if(d=d0);
h=1;
else h=0;
end
result(i,j)=h*g(i,j);
end
end
result=ifftshift(result);
J1=ifft2(result);
J2=uint8(real(J1));
imshow(J2)
title(理想低通滤波)
l=imread(E:\qiaole.jpg);
f=double(l);g=fft2(f);
[M,N]=size(g);
d0=80;
m=fix(M/2);n=fix(N/2);
for i=1:M
for j=1:M
d=sqrt((i-m)^2+(j-n)^2);
if(d=d0);
h=1;
else h=0;
end
result(i,j)=h*g(i,j);end
end
result=ifftshift(result);
J1=ifft2(result);
J2=uint8(real(J1));
figure(1)
imshow(J2)
title(理想高通滤波)
实验总结:
调试该程序的时候出了不少错
原创力文档


文档评论(0)