实验二 图像变换及频域滤波.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二 图像变换及频域滤波.doc

实验二 图像变换及频域滤波 一.实验目的 (1)编写快速傅里叶变换算法程序,验证二维傅里叶变换的平移性和旋转不变性; (2)实现图像频域滤波,加深对频域图像增强的理解。 二.实验环境及开发工具 Windws XP、MATALAB7.0a=zeros(128,128) for y=54:74 for x=34:94 a(x,y)=1; end end 然后再用显示图象的函数显示即可, 在此我们用imshow(a)语句。 为了得到幅度谱图,可以将数组a进行快速傅立叶变换,然后再用Mesh语句便可得到其幅度谱. 2)观察其平移特性。 根据实验方法中的分析,构造一个新的数组存入平移后的原数组,通过在嵌套中加入语句b(x,y)=(-1).^(x+y).*a(x,y);即可,然后再用类似上面的方法画出图象和幅度谱. 3)验证其旋转不变性。 首先将所得图画旋转45度,这需要通过将数组先相应的旋转,这个旋转有两种方式: (1)根据旋转后的图象算出旋转后的数组形式,通过点与点之间的变换来实现,需要分区间来画图和构建新的数组.然后用imshow来显示. (2)直接用IMROTATE(A,ANGLE,METHOD)语句,其中A表示数组,ANGLE表示旋转角度,METHOD表示旋转方向.我们令t=imrotate(a,315,nearest,crop)令可将数组a逆时针旋转135度,即相当于顺时针旋转45度。 然后比较旋转前后两幅图的差别以及其频率谱和幅度谱的异同。最后可以得结论。 2.实现图像频域滤波 1)读出图片,并生成图片的数组. 首先要将lena.img与MATLAB程序文档放在一个目录下面,然后再用语句a=fopen(lena.img,r); b=fread(a,[256,256],uchar); 打开图片并获得组成该图片的数组.然后用imshow(b),便可得到lena的人头图片. 其次与上面任务一样,对图片数组进行快速傅立叶变换,然后用mesh()语句画出他的幅度谱图, 2)进行频域增强的低通滤波部分。 频域法的过程是: f(x,y)(正变换----F(u,v)---(修正H(u,v)---G(u,v)---(反变换(g(x,y). 理想低通滤波的转移函数需满足以下条件: H(u,v) H(u,v)=1; 当D(u,v)=Do时; H(u,v)=0; 当D(u,v) Do时; 其中Do是一个非负整数, D(u,v)是反映点(u,v)到频率平面原点的距离。当小于Do的频率可以完全不受影响的通过滤波器,而大于Do的则完全不能通过滤波器,该Do可以形象的表示成截断频率。 在低通滤波时,分别令Do等于88,24,11,5时,可得到低通滤波后的结果图象,通过观察其图象与幅度谱图来理解低通滤波的特性. 3)进行频域增强的高通滤波部分。 一个2---D理想高通滤波器的转移函数满足下列条件 H(u,v) H(u,v)=0; 当D(u,v)=Do时; H(u,v)=1; 当D(u,v) Do时; 所得到的结果恰好与低通滤波相反, 当大于Do的频率可以完全不受影响的通过滤波器,而小于Do的则完全不能通过滤波器。 在高通滤波时,分别令Do等于2,8,24时,分别得到高通滤波后的结果图像,通过观察其图象与幅度谱图来理解高通滤波的特性。 关于此部分主要的函数语句是: m=abs(b); m0=15*log(m+1.001); surf(m0); 求出数组之后将其进行fft2得到m,然后求出其绝对值,为了避免其数值过大,求其对数,且为了避免出现0和1的情况,可以在m的基础上加上1.001,最后用surf()函数显示出3----D效果. (2) r=24; for x=1:256 for y=1:256 if (x-128).^2+(y-128).^2r.^2; t(x,y)=0; end end end 通过对r数值的改变,和if条件的变化来实现不同的低通和高通情况下的滤波. 五.实验结果及结论 1.验证二维傅里叶变换的平移性和旋转不变性; 1.1 产生的图像与fft2(f1)幅度谱的程序如下: Clc; a=zeros(128,128) for y=54:74 for x=34:94 a(x,y)=1; end end figure(1) a1=fft2(a); subplot(1,2,1); imshow(a); subplot(1,2,2); a2=abs(a1); mesh(a2); for x=1:128

文档评论(0)

xx88606 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档