Two-Dimensional Fourier Transform and Filtering

摘   要:傅立叶变换在图象处理的应用领域中起着极其重要的作用,通过傅里叶变换进行图象分析、图象增强及图象压缩等来获得需要的信息。本实验采用二维快速傅里叶变换对图像进行频域滤波,共编写了一个2-D FFT程序和一个高斯低通滤波器的程序,对图像进行滤波,并通过原图减去高斯低通滤波后的图像实现锐化并且显示图片在二维和三维当中的幅度谱和相位谱。

 


一、实验目的

该实验的目的是开发一个 2-D FFT 程序包。要求程序能完成下面的功能:

(1.a) 用因子 乘以输入图像,以实现滤波的中心化变换;

(1.b) 计算傅里叶变换;

(1.c) 用一个实矩阵乘以一个复数矩阵,即用实矩阵中的元素同时乘以复数矩阵对应位置上的复数的实部与虚部。可以通过调用两个图像的乘法程序来实现对应元素的相乘;

(1.d) 计算反傅里叶变换;

(1.e) 结果乘以 ,并取其实部;

(1.f) 计算频谱。

(1.g) 计算图 4.41(a)的中心化后的傅里叶谱;

(1.f) 使用二维图像和三维图形两种形式显示计算的幅度谱和相位谱;该实验主要实现 4.7.3 节的算法。若试验中使用 MATLAB 语言实现, 则在(1.b)和(1.d)中二维傅里叶变换和反变换程序可以使用 Matlab 的函数 FFT2 和 IFFT2。

(2.a) 编写一个实现公式(4.8-6)所示的高斯低通滤波器的程序。

(2.b) 对图 4.41(a)进行高斯低通滤波以获得图 4.48(c)。

(3.a) 如公式(4.9-1)所示,原始图像减去实验(2.b)中的图像得到锐化后的图像。观察结果图像与图 4.56 中得到的高斯高通滤波结果图的差异, 并解释其中的原因。

(3.b) 调整高斯低通滤波器变量,使(3.a)中的减法锐化图与图 4.56(c)接近为止,并解释你的结果。

二、技术论述

1 离散傅里叶变换—DFT

(a)、离散傅里叶变换不是一个新的傅里叶变换形式,它来自于DFS,不过是在时域和频域各取一个周期,再经过周期延拓便可得到整个变换。离散傅里叶变换在时域和频域上都呈现离散的形式,且都是有限长。将时域信号的采样变换为在离散时间傅里叶变换(DTFT)频域的采样,而实际上这两组序列都应当被认为是离散周期信号的主值序列。DFT的公式为:

(b)、由于我们要处理的图像是二维的,所以需要用到二维离散傅里叶变换,设f(x,y)是大小为M*N的数字图像,与一维离散傅里叶变换一样必须在离散变量u和v在u=0,1,2,…,M-1和v=0,1,2,…,N-1范围内求值,二维离散傅里叶变换的公式为:

二维傅里叶反变换公式:

通常二维傅里叶变换的是复函数,因此可以用极坐标的形式来表示,令R和I是F(u,v)的实部和虚部,则:

幅度谱:

相位谱:φ(u,v)=arctan(I(u,v)/R(u,v))

功率谱:

(c)、快速傅里叶变换FFT不是与傅里叶变换不同的另一种变换,而是为了减少DFT运算次数的一种改进算法。它使其成为若干小点数的组合对变换式进行一次次分解,从而减少运算量。通常FFT以2为基数,长度N=2l,当要变换的序列长度不是2的整数次方时,仍然取2为基数的FFT,然后在末位进行补零,使其长度延长至2的整数次方。FFT具有使用非常方便、运算效率高、程序简单等优点。

2 傅里叶谱的中心化处理

在数字图像处理中通常为了清楚地观察F(u,v)的谱线情况需要将原点移到M*N频域的中心。令: ,便得到:

因此若要将图像谱的原点从(0,0)移到图像的中心点(N/2,N/2)处,只要将 乘上 因子,然后进行傅立叶变换即可。

4 频率域滤波步骤

(1)    大小为M*N的输入图像f=(x+y),选择填充参数P>=2M-1和Q>=2N-1;

(2)    对f(x+y)添加必要数量的0,形成大小P*Q的填充后的图像 ;

(3)    用 乘以 移动到其变换中心;

(4)    计算自步骤3的DFT,得到 ;

(5)    生成一个实的、对称的滤波函数 P*Q,中心在(P/2,Q/2)处,用阵列相乘形成H和F的乘积;

(6)    得到处理后的图像G(x,y);

(7)    通过从G(x,y)的左上象提取M*N区域,得到最终的处理结果个g(x,y)。

5 高斯低通滤波器

    低通滤波是要保留图像中的低频分量而去除图像中的高频分量。图像中的边缘和噪声都对应图像频域中的高频部分,所以通过在频域中的低通滤波可以除去或消弱噪声影响并模糊边缘轮廓,与时域中的平滑方法效果类似。要实现低通滤波需要选一个合适的模板h(u,v)以得到消弱图像频率域H(u,v)的高频分量。高斯滤波器的二维函数为:

式中 是距频率矩形中心的距离。 是截止频率。

四、实验结果讨论

通过素材Fig4.41(a).jpg进行二维快速傅里叶变换、图像傅里叶频谱、相位谱的计算及高斯低通滤波器的设计与验证。如图4-1所示是原图像傅里叶变换的幅度谱和相位谱,图4-2是原图像的傅里叶变换三维幅度谱和相位谱,图4-3是fftshift函数中心变换后的二维傅里叶幅度谱和fft_zxzh中心变换后的二维傅里叶图,图4-4是自编程序fft_zxzh中心变换图的二维傅里叶幅度谱和相位谱,图4-5是fft_zxzh中心变换的三维傅里叶幅度谱和相位谱,图4-6是中心化变化图和原始图。(程序见附录)

图4-1 原图像傅里叶变换的幅度谱和相位谱

图4-2原图像的傅里叶变换三维幅度谱和相位谱

图4-3是fftshift和fft_zxzh函数中心变换后幅度谱和二维傅里叶图

图4-4是自编程序fft_zxzh中心变换图的二维傅里叶幅度谱和相位谱

 

图4-5 fft_zxzh中心变换的三维傅里叶幅度谱和相位谱

图4-6 中心化变化图和原始图

设计高斯低通滤波器程序,通过不同的截止频率D0=30、60、160可以对图4.41(a)进行高斯低通滤波以获得滤波后的图像如图4-7所示。通过原图像减去高斯低通滤波后的图像可以得到锐化后的图像如图4-8所示。

图4-7 不同截止频率时GLPF滤波后的输出图像

图4-3(b) 不同截止频率时锐化后的图像

 

五、实验结论

经过对2-D FFT和高斯低通滤波后的图像生进行对比分析可知:

通过图4-1原图像傅里叶变换的幅度谱和相位谱和图4-2原图像傅里叶变换三维的幅度谱和相位谱的对比分析可知,两者在二维的幅度谱和相位谱上没有太大的区别,但是在三维上的幅度谱和相位谱有明显是区别,经过滤波处理后的幅度谱填满了整个坐标轴,其相位谱也更加的集中在三维坐标的中心,将整个相位图进行了移动。

通过图4-3、图4-4、图4-5和图4-6的对比可以发现,图片乘以因子 后,整个图片灰度变暗,是因为乘以该因子后,图片的灰度级有一半变为负数,而图片的灰度范围只有[0 255],因此灰度级为负的话默认为0,图片再进行取实和反傅里叶变化后,整体图片与原图相比变得比较模糊,那是因为该图片只取了实部的原因。对比前后的频谱图还可以发现,经过滤波后图像的频谱更加的集中了,中间的光点变小,说明达到了滤波的效果。

图4-7为经过高斯低通滤波后的图像,其中使用了不同的截止频率D0为30,60,160,可以发现随着D0的变换,得到的输出图像也会发生变换,当D0变大的时候,输出图像会越来越清晰,当D0=160时,输出图像出现了原图像没有的细节,同时边缘也出现了渐变的黑色区域,因为由于图像是在一个填充区域上实现滤波,故输出的图像边缘出现了渐变的黑色区域。

图4-8为用原图像减去不同截止频率 的滤波图像后的锐化效果。可以看到在 取较小的值的时候锐化效果更为明显,当 =30时,图像要比其他的图片要清晰。观察结果图像与课本图4.56中得到的高斯高通滤波结果图的差异,在 取值相同的情况下,原图像减去滤波图像后的输出图像的边缘亮度要高于直接使用高斯滤波器的滤波图像。调整高斯低通滤波器变量 时得到的减法锐化图像与图4.56(c)效果接近。


 



 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Title: Fast Fourier Transform - Algorithms and Applications Author(s): K.R. Rao, D.N. Kim, J.-J. Hwang (auth.) Series: Signals and Communication Technology Publisher: Springer Netherlands Year: 2010 Edition: 1 Language: English Pages (biblio\tech): 426\437 ISBN: 1402066287, 9781402066283 Fast Fourier Transform - Algorithms and Applications presents an introduction to the principles of the fast Fourier transform (FFT). It covers FFTs, frequency domain filtering, and applications to video and audio signal processing. As fields like communications, speech and image processing, and related areas are rapidly developing, the FFT as one of the essential parts in digital signal processing has been widely used. Thus there is a pressing need from instructors and students for a book dealing with the latest FFT topics. Fast Fourier Transform - Algorithms and Applications provides a thorough and detailed explanation of important or up-to-date FFTs. It also has adopted modern approaches like MATLAB examples and projects for better understanding of diverse FFTs. Fast Fourier Transform - Algorithms and Applications is designed for senior undergraduate and graduate students, faculty, engineers, and scientists in the field, and self-learners to understand FFTs and directly apply them to their fields, efficiently. It is designed to be both a text and a reference. Thus examples, projects and problems all tied with MATLAB, are provided for grasping the concepts concretely. It also includes references to books and review papers and lists of applications, hardware/software, and useful websites. By including many figures, tables, bock diagrams and graphs, this book helps the reader understand the concepts of fast algorithms readily and intuitively. It provides new MATLAB functions and MATLAB source codes. The material in Fast Fourier Transform - Algorithms and Applications is presented without assuming any prior knowledge of FFT. This book is for any professional who wants to have a basic understanding of the latest developments in and applications of FFT. It provides a good reference for any engineer planning to work in this field, either in basic implementation or in research and development. Table of contents : Front Matter....Pages i-xviii Introduction....Pages 1-3 Discrete Fourier Transform....Pages 5-40 Fast Algorithms....Pages 41-110 Integer Fast Fourier Transform....Pages 111-126 Two-Dimensional Discrete Fourier Transform....Pages 127-184 Vector-Radix 2D-FFT Algorithms....Pages 185-193 Nonuniform DFT....Pages 195-234 Applications....Pages 235-316 Back Matter....Pages 317-423
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值