图像变换及频域滤波.doc_第1页
图像变换及频域滤波.doc_第2页
图像变换及频域滤波.doc_第3页
图像变换及频域滤波.doc_第4页
图像变换及频域滤波.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实 验 报 告实验名称图像变换及频域滤波课程名称数字图像处理姓名成绩班级学号日期2011/10/30地点综合实验楼备注:1.实验目的32.实验环境(软件、硬件及条件)33. 实验方法3(1)傅立叶变换3(2)频域滤波54. 实验分析95. 实验结论9附件91.实验目的1、 编写快速傅立叶变换算法程序,验证二维傅立叶变换的平移和旋转不变性;2、 实现图像频域滤波,加深对图像频域增强的理解。2.实验环境(软件、硬件及条件)Windows2000/XPMATLAB 6.x or aboveVisual C+、Visual Basic 或其他3. 实验方法(1)傅立叶变换 产生如图1所示图像f1 (x, y)(128128 大小,黑色区域灰度值为0,中心白色区域大小为1664,灰度值等于255:图1%源程序1a=zeros(128,128);a(33:97,57:73)=255;imshow(a);(2)用MATLAB 中的fft2 函数对其进行FFT: 同屏显示原图f1和FFT( f1 )的幅度谱图;图2%源程序2a=zeros(128,128);a(33:97,57:73)=255;F1=fft2(a);subplot(121);imshow(a);subplot(122);mesh(1:128,1:128,abs(F1); 若令,重复以上过程,比较二者幅度谱的异同,简述理由;图3%源程序3for x=1:128; for y=1:128; b(x,y)=(-1)(x+y)*a(x,y); endendF2=fft2(b);subplot(121);imshow(b);subplot(122);mesh(1:128,1:128,abs(F2); 若将 f2 (x, y) 顺时针旋转45 度得到f3 (x, y),试显示FFT( f3 ) 的幅度谱,并与FFT( f2 )的幅度谱进行比较。图4%源程序4c=imrotate(a,-45,nearest,crop); for x=1:128; for y=1:128; c1(x,y)=(-1)(x+y)*c(x,y); endendF=fft2(c1);F3=fftshift(F);subplot(121);imshow(c1);subplot(122);mesh(1:128,1:128,abs(F3);(2)频域滤波 对如 图5 所示的数字图像lena.img(256256 大小、256 级灰度)进行频域的理想低通、高通滤波,同屏显示原图、幅度谱图和低通、高通滤波的结果图。图5原图频谱图图6%源程序6file=fopen(C:UsersthebluedbDesktopimageslena.img,r);lena=fread(file,256,256,uint8);F=fft2(lena);F1=fftshift(F);F1temp=log(F1+1);mesh(0:255,0:255,abs(F1);理想低通滤波图7%源程序7figure; r = 88; %另取24、11、5m=256;n=256;for i=1:m for j=1:n if (i-m/2)2+(j-n/2)2) r2 ) mask(i,j) = 1; else mask(i,j) = 0; end endendF2=F1.*mask;F2temp=log(F2+1);mesh(1:256,1:256,abs(F2)低通滤波结果图图8%源程序8Figure;ilena1=ifft2(ifftshift(F2);imshow(ilena1,0,255); 理想高通滤波图9%源程序9figure;r = 2; %另取8、24m=256;n=256;for i=1:m for j=1:n if (i-m/2)2+(j-n/2)2) r2 ) mask(i,j) = 0; else mask(i,j) = 1; end endendF2=F1.*mask;F2temp=log(F2+1);mesh(0:255,0:255,abs(F2)高通滤波结果图图10%源程序10figure;ilena1=ifft2(ifftshift(F2);imshow(ilena1,0,255);4. 实验分析1、 对矩阵图像,原图像的高频分量较少,经变换后,高频成分增多,频谱图上表现为四周的幅度增大;因傅立叶变换的频谱旋转平移特性,将原图旋转45度后,其频谱图也相应旋转了45度。2、 对灰度图像lena.img,进行低通滤波后,滤去高频成分,图像上表现为轮廓信息的过滤。滤波半径越小,轮廓信息损失得越严重;而进行高通滤波的话,滤去低频成分,频谱上表现为高频成分相对增多,图像上表现为灰度信息的损失,而同时突出轮廓的信息,且随着滤波半径的增大,这种现象越发显著。5. 实验结论1、 傅立叶变换在频谱上具有平移旋转特性;2、 对灰度图像,低频部分对应图像的灰度信息,高频部分对应图像的轮廓信息。附件1.源程序1、a=zeros(128,128);a(33:97,57:73)=255;F1=fft2(a);subplot(121);imshow(a);subplot(122);mesh(1:128,1:128,abs(F1); for x=1:128; for y=1:128; b(x,y)=(-1)(x+y)*a(x,y); endendF2=fft2(b);subplot(121);imshow(b);subplot(122);mesh(1:128,1:128,abs(F2); c=imrotate(a,-45,nearest,crop); for x=1:128; for y=1:128; c1(x,y)=(-1)(x+y)*c(x,y); endendF=fft2(c1);subplot(121);imshow(c1);subplot(122);mesh(1:128,1:128,abs(F);2、file=fopen(C:UsersthebluedbDesktopimageslena.img,r);lena=fread(file,256,256,uint8);figure;subplot(121);imshow(lena,);F=fft2(lena);F1=fftshift(F);F1temp=log(F1+1);subplot(122);mesh(0:255,0:255,abs(F1); figure; r = 88; %另取24、11、5m=256;n=256;for i=1:m for j=1:n if (i-m/2)2+(j-n/2)2) r2 ) mask(i,j) = 1; else mask(i,j) = 0; end endendF2=F1.*mask;F2temp=log(F2+1);subplot(122);mesh(1:256,1:256,abs(F2) ilena1=ifft2(ifftshift(F2);subplot(121);imshow(ilena1,0,255); figure;subplot(121);imshow(lena,);F=fft2(lena);F1=fftshift(F);F1temp=log(F1+1);subplot(122);mesh(0:255,0:255,abs(F1); figure;r = 2; %另取8、24m=256;n=256;for i=1:m for j=1:n if (i-m/2)2+(j-n/2)2) r2 ) mask(i,j) = 0; else mask(i,j) = 1; end endendF2=F1.*mask;F2tem

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论