数字图像处理实验一_图像变换及频域滤波

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一 图像变换及频域滤波

1.

一.实验目的

(1)编写快速傅里叶变换算法程序,验证二维傅里叶变换的平移性和旋转不变。; (2)实现图像频域滤波,加深对频域图像增强的理解。 二.实验环境及开发工具

Windws XP 、MATALAB7.0、Visual C++、Visual Basic 三.实验方法

1.验证二维傅里叶变换的平移性和旋转不变性;

a .要验证证其平移特性,就先建立一个二维图象,然后再对其平移,通过观察两者的频谱图来观察平移特性,为了方便起见,我们选择特殊情况来分析,令u0=v0=N/2,使),()1(),(12y x f y x f y x +-= F(u-N/2,v-N/2),达到将原始F(U,V)四周频谱移到中心的效果,及达到频谱中心化。

b .验证旋转不变性可以通过将原始数组的通过移动45度,然后再比较旋转后与旋转前的频谱,得出频谱旋转不变性的结论。 具体步骤:

1)产生如图1所示图像),(1y x f (128×128大小,暗处=0,亮处=255) 2)同屏显示原图1f 和)(FFT 1f 的幅度谱图。

3)若令),()1(),(12y x f y x f y x +-=,重复以上过程,比较二者幅度谱的异同。 4)将),(2y x f 顺时针旋转45度得到),(3y x f ,显示)(FFT 3f 的幅度谱,并与

)(FFT 2f 的幅度谱进行比较。

图1实验图象f 1(x , y )

2.实现图像频域滤波,加深对频域图像增强的理解。频率域中进行增强是相当直观的,主要步骤有:

1)计算需要增强的图象的傅立叶变换;

2)将其与一个(根据需要设计的)转移的函数相乘; 3)再将结果反傅立叶变换以得到增强的图象. 为了直观的展示频域增强,可以通过下面任务来展现:

对如图2所示的数字图像lena.img (256×256大小、256级灰度)进行频域的理想低通、高通滤波,同屏显示原图、幅度谱图和低通、高通滤波的结果图。

四.实验分析

1.验证二维傅里叶变换的平移性和旋转不变性 1)建立一个二维数组并要求该数组能够显示成图1.

a=zeros(128,128) for y=54:74 for x=34:94 a(x,y)=1; end end

然后再用显示图象的函数显示即可, 在此我们用imshow(a)语句。 为了得到幅度谱图,可以地数组a 进行快速傅立叶变换,然后再用

图2 实验图象

lena.img

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时,分别得到高通滤波后的结果图像,通过观察其图象与幅度谱图来理解高通滤波的特性。

关于此部分主要的函数语句是:

(1) 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).^2

t(x,y)=0;

end

end

相关文档
最新文档