数字图像处理--图像的傅里叶变换
【数字图像处理】傅里叶变换在图像处理中的应用
【数字图像处理】傅⾥叶变换在图像处理中的应⽤1.理解⼆维傅⾥叶变换的定义1.1⼆维傅⾥叶变换1.2⼆维离散傅⾥叶变换1.3⽤FFT计算⼆维离散傅⾥叶变换1.3图像傅⾥叶变换的物理意义2.⼆维傅⾥叶变换有哪些性质?2.1⼆维离散傅⾥叶变换的性质2.2⼆维离散傅⾥叶变换图像性质3.任给⼀幅图像,对其进⾏⼆维傅⾥叶变换和逆变换4.附录 94.1matlab代码4.2参考⽂献⽬录1.理解⼆维傅⾥叶变换的定义1.1⼆维傅⾥叶变换⼆维Fourier变换:逆变换:1.2⼆维离散傅⾥叶变换⼀个图像尺⼨为M×N的函数的离散傅⾥叶变换由以下等式给出:其中和。
其中变量u和v⽤于确定它们的频率,频域系统是由所张成的坐标系,其中和⽤做(频率)变量。
空间域是由f(x,y)所张成的坐标系。
可以得到频谱系统在频谱图四⾓处沿和⽅向的频谱分量均为0。
离散傅⾥叶逆变换由下式给出:令R和I分别表⽰F的实部和需部,则傅⾥叶频谱,相位⾓,功率谱(幅度)定义如下:1.3⽤FFT计算⼆维离散傅⾥叶变换⼆维离散傅⾥叶变换的定义为:⼆维离散傅⾥叶变换可通过两次⼀维离散傅⾥叶变换来实现:1)作⼀维N点DFT(对每个m做⼀次,共M次)2)作M点的DFT(对每个k做⼀次,共N次)这两次离散傅⾥叶变换都可以⽤快速算法求得,若M和N都是2的幂,则可使⽤基⼆FFT算法,所需要乘法次数为⽽直接计算⼆维离散傅⾥叶变换所需的乘法次数为(M+N)MN,当M和N⽐较⼤时⽤⽤FFT运算,可节约很多运算量。
1.3图像傅⾥叶变换的物理意义图像的频率是表征图像中灰度变化剧烈程度的指标,是灰度在平⾯空间上的梯度。
如:⼤⾯积的沙漠在图像中是⼀⽚灰度变化缓慢的区域,对应的频率值很低;⽽对于地表属性变换剧烈的边缘区域在图像中是⼀⽚灰度变化剧烈的区域,对应的频率值较⾼。
傅⾥叶变换在实际中有⾮常明显的物理意义,设f是⼀个能量有限的模拟信号,则其傅⾥叶变换就表⽰f的频谱。
从纯粹的数学意义上看,傅⾥叶变换是将⼀个函数转换为⼀系列周期函数来处理的。
傅里叶变换在数字图像处理中的应用课件
• 由欧拉公 式
f (t)
F (n1 )e jn1t
• 其中 n
F (0) a0
F (n1 )
1 2
(an
jbn )
引入了负频率
F (n1 )
1 2
(an
jbn )
10
非周期信号的频谱分析
当周期信号的周期T1无限大时,就演变成 了非周期信号的单脉冲信号
T1
频率也变成连续变量
1
2
T1
0 d
n1
11
非周期函数傅立叶变换分析式
F (w) f (t )e jwt dt f(t) Nhomakorabea1
2
F ().e jtd
频谱演变的定性观察
1
2
T1
F (n1)
-T/2
T/2
F (n1) 1
F (n1 )
-T/2
T/2
1
2
2
13
三.从物理意义来讨论FT
(a) F(ω)是一个密度函数的概念 (b) F(ω)是一个连续谱 (c) F(ω)包含了从零到无限高
傅里叶变换
连续时间信号 的傅里叶变换
号周 期 性 信
信非 号周
期 性
离散时间信号 的傅里叶变换
号周 期 性 信
信非 号周
期
性
连续函数的 傅立叶变换
一、三角函数的傅里叶级数:
f1(t) a0 (an cos n1t bn sin n1t) n1
直流 分量
基波分量 n =1
谐波分量 n>1
N 1
j 2 mn
X (m) x(n)e N , m 0,1, 2,3, 4,...N 1
数字像处理中的离散傅里叶变换
数字像处理中的离散傅里叶变换数字图像处理中的离散傅里叶变换数字图像处理是指利用计算机或其他数字设备对图像进行处理、分析和改良的过程。
而数字信号处理中的离散傅里叶变换是一种常用的图像处理工具,它能将图像从时域转换到频域,分析图像的频谱特征,从而实现一系列的图像处理操作。
本文将介绍数字图像处理中的离散傅里叶变换原理、应用以及一些常见的变换方法。
一、离散傅里叶变换的原理离散傅里叶变换(Discrete Fourier Transform,DFT)是对离散信号进行频域分析的一种数学工具。
离散傅里叶变换可以将一个长度为N的离散序列变换成一个长度为N的频谱序列。
其离散傅里叶变换的数学表达式如下:X(k) = Σ(x(n)*e^(-j2πkn/N)) (n=0,1,...,N-1; k=0,1,...,N-1)其中,X(k)为频谱序列,x(n)为原始信号序列,e为自然对数的底,j为虚数单位。
离散傅里叶变换可以将时域上的图像转换为频域上的频谱图,进而分析图像的频谱特征。
二、离散傅里叶变换的应用离散傅里叶变换在数字图像处理中有广泛的应用,主要包括以下几个方面:1. 图像滤波:通过离散傅里叶变换可以实现图像频域上的滤波操作,对图像进行降噪、增强边缘等处理。
例如,可以利用傅里叶变换将图像转换到频谱域,通过频谱的阈值处理去除高频噪声,然后再将图像转换回时域。
2. 图像压缩:离散傅里叶变换常被用于图像数据的压缩。
通过将图像转换到频域,可以利用频域的统计特性进行数据的压缩。
例如,可以通过选择合适的频率分量进行舍弃或者量化,以减少图像数据的存储空间。
3. 图像识别:离散傅里叶变换可以提取图像的频谱特征,用于图像识别和模式匹配。
例如,可以通过傅里叶变换得到图像的频谱图,并提取频谱的主要特征进行分类和识别。
4. 彩色图像处理:离散傅里叶变换可用于彩色图像处理。
可以将彩色图像的每个通道分别进行离散傅里叶变换,然后进行频域上的处理操作,最后再将变换后的通道合成为最终的彩色图像。
图像的傅里叶变换、反变换地实现
课程大作业实验报告图像傅里叶变幻、反变换的实现课程名称:数字图像处理组长:王文雄学号:200730590323 年级专业班级:07通信3班成员一:庞柱坚学号:200730590318 年级专业班级:07通信3班成员二:王弥光学号:200730590322年级专业班级:07通信3班成员三:学号:年级专业班级:07通信3班指导教师邓继忠报告提交日期2010年6月1日项目答辩日期2010年6月1日目录1. 项目要求 (4)2. 项目开发环境 (4)3. 系统分析 (4)3.1. 系统的主要功能分析 (4)3.2. 系统的关键问题及解决方法(或思路) (7)4. 系统设计 (11)4.1. 程序流程图及说明 (11)4.2. 程序主要模块(或功能)介绍 (12)4.2.1. 一维FFT 和IFFT (12)4.2.2. 二维图像FFT 和IFFT: (14)5. 实验结果与分析 (15)5.1. 实验结果 (15)5.2. 项目的创新之处 (16)5.3. 存在问题及改进设想 (17)6. 心得体会 (17)6.1. 系统开发的体会 (17)6.2. 对本门课程的改进意见或建议 (18)7. 附件一 (19)1.项目要求1.基本要求:自修教材相关内容(P52-74)或其它参考资料,在CVI下编程对尺寸为2N(N 为正整数)的图像进行FFT(快速傅里叶变换)和(快速傅里叶反变换)。
(不能利用CVI下的函数)2.题目拓展:编程实现任意大小图像的二维傅立叶的变换与反变换。
2.项目开发环境项目开发环境主要分为软件环境和硬件环境软件:Lab Windows/CVI和IMAQ_Vision for LabWindows/CVI。
Lab Windows/CVI 是美国National Instrument(简称NI)公司开发的基于C语言的虚拟仪器开发平台,适用于自动测试、自动控制、测试仪器通信、测试硬件控制、信号分析及图像处理等软件的开发。
6.图像的傅立叶变换 - 数字图像处理实验报告
计算机与信息工程学院验证性实验报告一、实验目的1了解图像变换的意义和手段;2熟悉傅立叶变换的基本性质; 3熟练掌握FFT 变换方法及应用; 4通过实验了解二维频谱的分布特点;5通过本实验掌握利用MATLAB 编程实现数字图像的傅立叶变换。
6评价人眼对图像幅频特性和相频特性的敏感度。
二、实验原理1 应用傅立叶变换进行图像处理傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。
通过实验培养这项技能,将有助于解决大多数图像处理问题。
对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。
2 傅立叶(Fourier )变换的定义对于二维信号,二维Fourier 变换定义为:2()(,)(,)j ux uy F u v f x y e dxdy π∞∞-+-∞-∞=⎰⎰逆变换:2()(,)(,)j ux uy f x y F u v e dudv π∞∞+-∞-∞=⎰⎰二维离散傅立叶变换为:112()001(,)(,)i k N N j mn N Ni k F m n f i k eNπ---+===∑∑逆变换:112()001(,)(,)i k N N j mn N Nm n f i k F m n eNπ--+===∑∑图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参见参考书目,有关傅立叶变换的快速算法的程序不难找到。
实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。
3利用MATLAB软件实现数字图像傅立叶变换的程序:I=imread(‘原图像名.gif’);%读入原图像文件imshow(I); %显示原图像fftI=fft2(I); %二维离散傅立叶变换sfftI=fftshift(fftI); %直流分量移到频谱中心RR=real(sfftI); %取傅立叶变换的实部II=imag(sfftI); %取傅立叶变换的虚部A=sqrt(RR.^2+II.^2); %计算频谱幅值A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225 %归一化figure; %设定窗口imshow(A); %显示原图像的频谱三、实验步骤1.将图像内容读入内存;2.用Fourier变换算法,对图像作二维Fourier变换;3.将其幅度谱进行搬移,在图像中心显示;4.用Fourier系数的幅度进行Fourier反变换;5.用Fourier系数的相位进行Fourier反变换;6.比较4、5的结果,评价人眼对图像幅频特性和相频特性的敏感度。
傅里叶变换在图像处理中的应用
傅里叶变换在图像处理中的应用摘要傅里叶变换是一种重要的信号分析工具,在平稳信号的分析方面具有十分重要的地位,线性系统中,常利用傅里叶变换进行分析和处理。
本文对傅里叶变换和数字图像处理的相关概念进行了介绍,并主要针对傅里叶变换在数字图像处理中的应用进行分析和研究,对图像处理领域的学习很有帮助。
关键词傅里叶变换;信号分析;平稳信号;数字图像处理前言随着信号处理领域的不断发展,越来越多信号分析工具得到了相关学者的研究。
傅里叶变换于19世纪就已经被研究人员提出,在之后的研究和应用中,傅里叶变换也一直是重要的信号处理工具[1-2]。
信息时代的到来使数字图像处理技术也开始飞速进步,它与信号处理等技术息息相关,因此傅里叶变换在图像处理中也得到了重要的应用[3]。
传统的处理方式往往适合在时域对图像进行处理分析,而与傅里叶变换相结合便使图像处理技术得以在频域进行,傅里叶变换常用于线性系统中的处理,因此,可以很好地和图像处理领域相联系,有效提高数字图像处理的效率和精度[4]。
1 傅里叶变换的概述最早在1807年,法国工程师傅里叶首先提出了有关傅里叶级数这一理论,首次提到可以將一个周期性的信号展开成多个复正弦信号相加的形式,这一理论引起了学者们的注意。
十几年之后,傅里叶正式提出了傅里叶变换的概念。
通过傅里叶变换,我们可以将一个信号由时域转换到频域进行信号处理和分析,并且通过傅里叶变换的提出才加深了人们对于频率这个概念的理解。
因此,在傅里叶变换被提出之后,在信号分析领域提出了从频域进行分析这个新思路,使人们对信号的特性进行了一些新的方面的研究。
很多对信号的处理问题以往通过时域分析很难真的得到充分的解释,傅里叶变换这个思路使很多问题变得显而易见。
对于傅里叶变换之后的研究中,出现了关于傅里叶变换的快速算法,使得傅里叶变换更加具有实际应用价值,也对处理离散的数字信号起了重要的作用。
2 基于傅里叶变换的图像处理在对图像进行处理的过程中,图像中包含许多线性变化的元素,而其中的频率便是十分重要的物理量,而这种包含频率信息的元素正适合应用傅里叶变换进行处理,因此,傅里叶变换在图像处理领域得到了广泛的应用。
图像傅里叶变换
fx, yhx, y 1 M1N1 fm,nhxm, yn MN m0 n0
卷积定理
fx,yhx,yFu,vHu,v
fx,yhx,yFu,vHu,v
A
51
傅里叶变换
9. 相关性理论
大小为M×N的两个函数f(x,y)和h(x,y)的相关
性定义为
A
56
快速傅里叶变换(FFT)
为什么需要快速傅里叶变换?
F u 1 M1 f x ej2ux/M M x0
u 0,1,2,...,M 1
✓ 对u的M个值中的每一个都需进行M次复数乘法(将f(x)
与ej2ux/M相乘)和M-1次加法,即复数乘法和加法的次
数都正比于M2
✓ 快速傅里叶变换(FFT)则只需要Mlog2M次运算
为什么要在频率域研究图像增强
✓ 可以利用频率成分和图像外表之间的对应关系。一 些在空间域表述困难的增强任务,在频率域中变得非 常普通
✓ 滤波在频率域更为直观,它可以解释空间域滤波的 某些性质
✓ 可以在频率域指定滤波器,做反变换,然后在空间 域使用结果滤波器作为空间域滤波器的指导
✓一旦通过频率域试验选择了空间滤波,通常实施都在
A
46
一幅二维图像的傅里叶频谱 中心化的傅里叶频谱
傅里叶变换
6. 分离性
F u,v
1 M 1 j2ux/M e
1 N1
f x, y e j2vy/ N
M
x 0
N y 0
1 M
M 1 j2ux/M
x 0e
F x,v
F(x,v)是沿着f(x,y)的一行所进行的傅里叶变 换。当x=0,1,…,M-1,沿着f(x,y)的所有行计 算傅里叶变换。
图像处理与傅里叶变换原理与运用
图像处理与傅里叶变换1背景傅里叶变换是一个非常复杂的理论,我们在图像处理中集中关注于其傅里叶离散变换离散傅立叶变换(Discrete Fourier Transform) 。
1.1离散傅立叶变换图象是由灰度(RGB )组成的二维离散数据矩阵,则对它进行傅立叶变换是离散的傅立叶变换。
对图像数据f(x,y)(x=0,1,… ,M-1; y=0,1,… ,N-1)。
则其离散傅立叶变换定义可表示为:式中,u=0,1,…, M-1;v= 0,1,…, N-1 其逆变换为式中,x=0,1,…, M-1;y= 0,1,…, N-1在图象处理中,一般总是选择方形数据,即M=N影像f(x,y)的振幅谱或傅立叶频谱: 相位谱:能量谱(功率谱) )1(2exp ),(1),(101∑∑-=-=⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛+-=M x N y N vy M uxi y x f MNv u F π)2(2exp ),(1),(101∑∑-=-=⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛+=M u N v N vy M uxi v u F MNy x f π),(),(),(22v u I v u R v u F +=[]),(/),(),(v u R v u I arctg v u =ϕ),(),(),(),(222v u I v u R v u F v u E +==1.2快速傅里叶变化可分离性的优点是二维的傅立叶变换或逆变换由两个连续的一维傅立叶变换变换来实现,对于一个影像f(x,y),可以先沿着其每一列求一维傅立叶变换,再对其每一行再求一维变换正变化逆变换由于二维的傅立叶变换具有可分离性,故只讨论一维快速傅立叶变换。
正变换 逆变换由于计算机进行运算的时间主要取决于所用的乘法的次数。
按照上式进行一维离散由空间域向频率域傅立叶变换时,对于N 个F∑∑∑∑-=-=-=-=⎥⎦⎤⎢⎣⎡⨯⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡+=110101)(2exp ),(1)(2exp ),(1)(2exp ),(1),(N v N u N u N v N vy i v u F NN ux i v u F N N vy ux i v u F NNy x f πππ∑-=⎥⎦⎤⎢⎣⎡-=12exp )(1)(N x N ux i x f Nu F π∑∑∑∑-=-=-=-=⎥⎦⎤⎢⎣⎡-⨯⎥⎦⎤⎢⎣⎡-=⎥⎦⎤⎢⎣⎡+-=11101)(2exp ),(1)(2exp ),(1)(2exp ),(1),(N y N x N x N y N vy i y x f NN ux i y x f NN vy ux i y x f NNv u F πππ∑-=⎥⎦⎤⎢⎣⎡=12exp )(1)(N u N ux i u F Nx f π(u)值,中的每一个都要进行N 次运算,运算时间与N 2成正比。
第5章 图像变换-傅里叶变换
a 图
a 图的相位谱重构图
再将相位谱设为常数(这里设 为1),然后和图像原来的幅值谱 结合,进行傅里叶反变换
a 图
b 图的幅值谱重构图
由此更加说明相 位谱较幅值谱更能 影响图像的轮廓。
傅立叶变换的性质
(1)可分性
1 F u, v 2 N 1 2 N 1 N
N 1 N 1 x 0 y 0
f ( x, y )
φ
g ( x, y)
g ( x, y) [ f ( x, y)]
变换后的图象,大部分能量都分布
于低频谱段,这对以后图象的压缩、 传输都比较有利。使得运算次数减少, 节省时间。
卷积
考虑一维的情况,假设f(x)(x=0,1…,A-1)以及 g(x)(x=0,1,…,C-1)是两个有限离散函数,其线性 卷积为
傅里叶变换及其在图像处理中的应用
傅里叶变换及其在数字图像处理中的应用王家硕 学号:1252015一、 Fourier 变换1. 一维连续傅里叶变换设 f (x)为x 的实变函数,如果f (x)满足下面的狄里赫莱条件: (1)具有有限个间隔点。
(2)具有有限个极点。
(3)绝对可积。
则 f (x )的傅里叶变换(Fourier Transformation ,FT )定义为: Fourier 正变换:dt e t f t f f F t j ⎰+∞∞--==ωω)()]([)(;Fourier 逆变换:ωωπωd e f t F f t f t j ⎰∞+∞---==)(21)]([)(1,式中:1-=j ,ω 为频域变量。
f (x )与F (w )构成傅里叶变换对,可以证明傅里叶变换对总是存在的。
由于f (x )为实函数,则它的傅里叶变换F (w )通常是复函数,于是F (w )可写成F (w ) = R (w ) + j I (w ) (1)式中:R (w )和I (w )分别是F (w )的实部和虚部。
公式1可表示为指数形式:式中:F (w ) 为f (x )的傅里叶幅度谱,f (w )为f (x )的相位谱。
2. 二维连续傅里叶变换如果二维函数f (x , y )是连续可积的,即∞<⎰⎰+∞∞-dxdy y x f |),(,且F (u , v )是可积的,则二维连续傅里叶变换对可表示为:dt e y x f v u F t j ⎰⎰+∞∞--+∞∞-=ω),(),(dt e v u F y x F t j ⎰⎰∞+∞-∞+∞-=ω),(),(对于图像 f (x, y),F(u, v)是它的频谱。
变量u 是对应于x 轴的空间频率,变量v 是对应于y 轴的空间频率,与在一维的情况类似,可定义二维傅里叶变换的幅度谱和相位谱为:3.一维离散傅里叶变换对一个连续函数f (x)等间隔采样可得到一个离散序列。
设共采样N个,则这个离散序列可表示为{ f (0), f (1), f (2), , f (N -1)}。
数字图像处理及MATLAB实现实验四——图像变换
数字图像处理及MATLAB实现实验四——图像变换1.图像的傅⾥叶变换⼀(平移性质)傅⾥叶变换的平移性质表明了函数与⼀个指数项相乘等于将变换后的空域中⼼移到新的位置,并且平移不改变频谱的幅值。
I=imread('1.bmp');figure(1)imshow(real(I));I=I(:,:,3);fftI=fft2(I);sfftI=fftshift(fftI); %求离散傅⾥叶频谱%对原始图像进⾏⼆维离散傅⾥叶变换,并将其坐标原点移到频谱图中央位置RRfdp1=real(sfftI);IIfdp1=imag(sfftI);a=sqrt(RRfdp1.^2+IIfdp1.^2);a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;figure(2)imshow(real(a));I=imread('2.bmp');figure(1)imshow(real(I));I=I(:,:,3);fftI=fft2(I);sfftI=fftshift(fftI); %求离散傅⾥叶频谱%对原始图像进⾏⼆维离散傅⾥叶变换,并将其坐标原点移到频谱图中央位置RRfdp1=real(sfftI);IIfdp1=imag(sfftI);a=sqrt(RRfdp1.^2+IIfdp1.^2);a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;figure(2)imshow(real(a));I=imread('3.bmp');figure(1)imshow(real(I));I=I(:,:,3);fftI=fft2(I);sfftI=fftshift(fftI); %求离散傅⾥叶频谱%对原始图像进⾏⼆维离散傅⾥叶变换,并将其坐标原点移到频谱图中央位置RRfdp1=real(sfftI);IIfdp1=imag(sfftI);a=sqrt(RRfdp1.^2+IIfdp1.^2);a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;figure(2)imshow(real(a));实验结果符合傅⾥叶变换平移性质2.图像的傅⾥叶变换⼆(旋转性质)%构造原始图像I=zeros(256,256);I(88:168,124:132)=1; %图像范围是256*256,前⼀值是纵向⽐,后⼀值是横向⽐imshow(I)%求原始图像的傅⾥叶频谱J=fft2(I);F=abs(J);J1=fftshift(F);figureimshow(J1,[550])%对原始图像进⾏旋转J=imrotate(I,90,'bilinear','crop');figureimshow(J)%求旋转后图像的傅⾥叶频谱J=fft2(I);F=abs(J);J2=fftshift(F);figureimshow(J2,[550])3.图像的离散余弦变换⼀%对cameraman.tif⽂件计算⼆维DCT变换RGB=imread('cameraman.tif');figure(1)imshow(RGB)I=rgb2gray(RGB);%真彩⾊图像转换成灰度图像J=dct2(I);%计算⼆维DCT变换figure(2)imshow(log(abs(J)),[])%图像⼤部分能量集中在左上⾓处figure(3);J(abs(J)<10)=0;%把变换矩阵中⼩于10的值置换为0,然后⽤idct2重构图像K=idct2(J)/255;imshow(K)4.图像的离散余弦变换⼆% I=imread('1.bmp');% figure(1)% imshow(real(I));% I=I(:,:,3);% fftI=fft2(I);% sfftI=fftshift(fftI); %求离散傅⾥叶频谱% %对原始图像进⾏⼆维离散傅⾥叶变换,并将其坐标原点移到频谱图中央位置% RRfdp1=real(sfftI);% IIfdp1=imag(sfftI);% a=sqrt(RRfdp1.^2+IIfdp1.^2);% a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;% figure(2)% imshow(real(a));% I=imread('2.bmp');% figure(1)% imshow(real(I));% I=I(:,:,3);% fftI=fft2(I);% sfftI=fftshift(fftI); %求离散傅⾥叶频谱% %对原始图像进⾏⼆维离散傅⾥叶变换,并将其坐标原点移到频谱图中央位置% RRfdp1=real(sfftI);% IIfdp1=imag(sfftI);% a=sqrt(RRfdp1.^2+IIfdp1.^2);% a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;% figure(2)% imshow(real(a));% I=imread('3.bmp');% figure(1)% imshow(real(I));% I=I(:,:,3);% fftI=fft2(I);% sfftI=fftshift(fftI); %求离散傅⾥叶频谱% %对原始图像进⾏⼆维离散傅⾥叶变换,并将其坐标原点移到频谱图中央位置% RRfdp1=real(sfftI);% IIfdp1=imag(sfftI);% a=sqrt(RRfdp1.^2+IIfdp1.^2);% a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;% figure(2)% imshow(real(a));% %构造原始图像% I=zeros(256,256);% I(88:168,124:132)=1; %图像范围是256*256,前⼀值是纵向⽐,后⼀值是横向⽐% imshow(I)% %求原始图像的傅⾥叶频谱% J=fft2(I);% F=abs(J);% J1=fftshift(F);figure% imshow(J1,[550])% %对原始图像进⾏旋转% J=imrotate(I,90,'bilinear','crop');% figure% imshow(J)% %求旋转后图像的傅⾥叶频谱% J=fft2(I);% F=abs(J);% J2=fftshift(F);figure% imshow(J2,[550])% %对cameraman.tif⽂件计算⼆维DCT变换% RGB=imread('cameraman.tif');% figure(1)% imshow(RGB)% I=rgb2gray(RGB);% %真彩⾊图像转换成灰度图像% J=dct2(I);% %计算⼆维DCT变换% figure(2)% imshow(log(abs(J)),[])% %图像⼤部分能量集中在左上⾓处% figure(3);% J(abs(J)<10)=0;% %把变换矩阵中⼩于10的值置换为0,然后⽤idct2重构图像% K=idct2(J)/255;% imshow(K)RGB=imread('cameraman.tif');I=rgb2gray(RGB);I=im2double(I); %转换图像矩阵为双精度型T=dctmtx(8); %产⽣⼆维DCT变换矩阵%矩阵T及其转置T'是DCT函数P1*X*P2的参数B=blkproc(I,[88],'P1*x*P2',T,T');maxk1=[ 1111000011100000110000001000000000000000000000000000000000000000 ]; %⼆值掩模,⽤来压缩DCT系数B2=blkproc(B,[88],'P1.*x',mask1); %只保留DCT变换的10个系数I2=blkproc(B2,[88],'P1*x*P2',T',T); %重构图像figure,imshow(T);figure,imshow(B2);figure,imshow(I2);RGB=imread('cameraman.tif');I=rgb2gray(RGB);I=im2double(I); %转换图像矩阵为双精度型T=dctmtx(8); %产⽣⼆维DCT变换矩阵%矩阵T及其转置T'是DCT函数P1*X*P2的参数B=blkproc(I,[88],'P1*x*P2',T,T');maxk1=[ 1111000011100000100000000000000000000000000000000000000000000000 ]; %⼆值掩模,⽤来压缩DCT系数B2=blkproc(B,[88],'P1.*x',mask1); %只保留DCT变换的10个系数I2=blkproc(B2,[88],'P1*x*P2',T',T); %重构图像figure,imshow(T);figure,imshow(B2);figure,imshow(I2);5.图像的哈达玛变换cr=0.5;I=imread('cameraman.tif');I=im2double(I)/255; %将读⼊的unit8类型的RGB图像I转换为double类型的数据figure(1),imshow(I);%显⽰%求图像⼤⼩[m_I,n_I]=size(I); %提取矩阵I的⾏列数,m_I为I的⾏数,n_I为I的列数sizi=8;snum=64;%分块处理t=hadamard(sizi) %⽣成8*8的哈达码矩阵hdcoe=blkproc(I,[sizi sizi],'P1*x*P2',t,t');%将图⽚分成8*8像素块进⾏哈达码变换%重新排列系数CE=im2col(hdcoe,[sizi,sizi],'distinct');%将矩阵hdcode分为8*8互不重叠的⼦矩阵,再将每个⼦矩阵作为CE的⼀列[Y Ind]=sort(CE); %对CE进⾏升序排序%舍去⽅差较⼩的系数,保留原系数的⼆分之⼀,即32个系数[m,n]=size(CE);%提取矩阵CE的⾏列数,m为CE的⾏数,n为CE的列数snum=snum-snum*cr;for i=1:nCE(Ind(1:snum),i)=0;end%重建图像re_hdcoe=col2im(CE,[sizi,sizi],[m_I,n_I],'distinct');%将矩阵的列重新组织到块中re_I=blkproc(re_hdcoe,[sizi sizi],'P1*x*P2',t',t);%进⾏反哈达码变换,得到压缩后的图像re_I=double(re_I)/64; %转换为double类型的数据figure(2);imshow(re_I);%计算原始图像和压缩后图像的误差error=I.^2-re_I.^2;MSE=sum(error(:))/prod(size(re_I));。
数字图像处理的傅里叶变换
数字图像处理的傅里叶变换1.课程设计目的和意义(1)了解图像变换的意义和手段(2)熟悉傅里叶变换的基本性质(3)热练掌握FFT的方法反应用(4)通过本实验掌握利用MATLAB编程实现数字图像的傅里叶变换通过本次课程设计,掌握如何学习一门语言,如何进行资料查阅搜集,如何自己解决问题等方法,养成良好的学习习惯。
扩展理论知识,培养综合设计能力。
2.课程设计内容(1)熟悉并掌握傅立叶变换(2)了解傅立叶变换在图像处理中的应用(3)通过实验了解二维频谱的分布特点(4)用MATLAB实现傅立叶变换仿真3.课程设计背景与基本原理傅里叶变换是可分离和正交变换中的一个特例,对图像的傅里叶变换将图像从图像空间变换到频率空间,从而可利用傅里叶频谱特性进行图像处理。
从20世纪60年代傅里叶变换的快速算法提出来以后,傅里叶变换在信号处理和图像处理中都得到了广泛的使用。
3.1课程设计背景数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。
是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。
3.2傅里叶变换(1)应用傅里叶变换进行数字图像处理数字图像处理(digital image processing)是用计算机对图像信息进行处理的一门技术,使利用计算机对图像进行各种处理的技术和方法。
20世纪20年代,图像处理首次得到应用。
20世纪60年代中期,随电子计算机的发展得到普遍应用。
60年代末,图像处理技术不断完善,逐渐成为一个新兴的学科。
利用数字图像处理主要是为了修改图形,改善图像质量,或是从图像中提起有效信息,还有利用数字图像处理可以对图像进行体积压缩,便于传输和保存。
数字图像处理主要研究以下内容:傅立叶变换、小波变换等各种图像变换;对图像进行编码和压缩;采用各种方法对图像进行复原和增强;对图像进行分割、描述和识别等。
06-图像的离散傅立叶变换-1
© 2011 Jiao Wu 数字图像处理—Digital Image Processing图像频域变换Transformation数字图像处理—Digital Image Processing© 2011 Jiao Wu 图像频域变换•图像和其它信号一样,既能在空间域(简称空域)处理,也能在频率域(简称频域)处理.也能在率域(简称域)•把图像信息从空域变换到频域,可以更好地分析、加工和处理.图像信息的频域处理具有如下特点:(1)能量守恒,但能量重新分配;(2)有利于提取图像的某些特征;(3)正交变换具有能量集中作用,可实现图像的高效压缩编;(4)频域有快速算法,可大大减少运算量,提高处理效率.2011/5/42© 2011 Jiao Wu 数字图像处理—Digital Image Processing图像的离散傅立叶变换Discrete Fourier Transform图像的离散傅立叶变换(Discrete Fourier transform,DFT离散傅立叶变换(Discrete Fourier transform, DFT)•建立了离散信号的空域表示与频域表示之间的联系,在数字信号处理中得到了广泛的应用.•利用计算机对变换后的信号进行频域处理, 比在空域中直接处理更加方便.•DFT具有快速算法(fast Fourier transform, FFT), 由于(fast Fourier transform FFT)可大减少运算量, 提高处理速度.2011/5/44一维离散傅立叶变换-1D DFT 维离散傅立叶变换1D DFT维离散傅立叶变换1D DFT 一维离散傅立叶变换-1D DFT 根据欧拉公式有:cos sin ix e x i x ±=±exp(2)cos 2sin 2j xu ux j ux πππ−=−DFT 表示为复数的形式:()()()F u R u jI u =+其中R (u )和I (u )分别为F (u )的实部和虚部.2011/5/46维离散傅立叶变换1D DFT 一维离散傅立叶变换-1D DFT 表示为复数的形式DFT 表示为复数的形式:()()()F u R u jI u =+维离散傅立叶变换1D DFT 一维离散傅立叶变换-1D DFT 1D DFT 的矩阵表示0(1)00011(1)1011(0)(0)N N N N N WW W F f −−⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥L L (1)0(1)1(1(1)(1)(1)1)1)N N N N N N N F f WW W F N N WW −−−−=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥−−M M L L L L ()()NN N f W ⎢⎥⎣⎦⎣⎦⎣⎦F f=U 2011/5/48维离散傅里叶变换1D DFT 一维离散傅里叶变换-1D DFT 1D DFT 的矩阵表示F f =U T [(0)(1)(1)]F F F F N =−L [(0)(1)(1)]Tf f f f N =−L 0(1)0001N N N N W WW −⎡⎤L 1(1)1011N N N N W W W W W −−−−−⎢⎥=⎢⎥⎢⎥U L L L L (1)0(1)1(1(1)N N N N N N N W ⎢⎥⎣⎦L U 称为=U2011/5/49U 称为变换矩阵.U 是对称的, 即U T =U.维离散傅里叶变换1D DFT 一维离散傅里叶变换-1D DFT 1D DFT 的矩阵表示F f=U 0(0001⎡1)1(1)1011N N N N N N N N W W W W W W −−⎤⎢⎥=L L U 称为变换矩阵.U T =U (1)0(1)1(1(1)N N N N N N N W W W −−−−⎢⎥⎢⎥⎢⎥⎣⎦U L L L L U U(U *)T =I N , 则U 称为酉矩阵, 且U -1=(U *)T =U *.1D-DFT 为正交变换*−2011/5/410逆变换的矩阵表示1f F F==U U二维离散傅立叶变换-2D DFT 维离散傅立叶变换2D DFT维离散傅立叶变换2D DFT2D DFT 的复数形式)+二维离散傅立叶变换-2D DFT 2D DFT 的复数形式:(,)(,)(,F u v R u v jI u v =二维离散傅立叶变换-2D DFT维离散傅立叶变换2D DFT图像傅立里叶变换的意义1简化计算. 即傅立叶变换可将空间域中复杂的卷积运()计算即叶将域中杂算转化为频率域中简单的乘积运算.()对于某些在空间域中难于处理或处理起来较复杂的2对于某些在空间域中难于处理或处理起来比较复杂的问题, 利用傅立叶变换把用空间域表示的图像映射到频率域, 再利用频域滤波或频域分析方法对其进行处理和分析,然后再,把其在频域中处理和分析的结果变换回空间域, 从而可达到简化处理和分析的目的.(3)某些只能在频率域处理的特定应用需求, 比如在频率域进行图像特征提取、数据压缩、纹理分析、水印嵌入等.2011/5/413DFT2D DFT的性质的性质2D DFT2D DFT的性质变换核的可分离性(1) 变换核的可分离性(1)(1)DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(1)(1)(1) 变换核的可分离性变换核的可分离性2D-DFT 1D-DFT 该性质说明2D DFT 可通过两次1D DFT 完成,即按如下两种方法来实现2D-DFT:1 1(,)(,)(,)D DFT D DFTf x y F x v F u v −−⎯⎯⎯⎯⎯→⎯⎯⎯⎯⎯→沿列沿行 1 1(,)(,)(,)D DFT D DFTf x y F u y F u v −−⎯⎯⎯⎯⎯→⎯⎯⎯⎯⎯→沿行沿列或2011/5/415DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(2)若, 则(,)(,)f x y F u v ↔(2)(2) 移位特性移位特性a. 空间移位乘以个指数项相当于将其维离散傅立叶00()00(,)(,)x u y v Nf x x y y F u v W+−−↔将F (u,v )乘以一个指数项, 相当于将其二维离散傅立叶逆变换f (x,y )的空域中心移动到新的位置.b. 频域移位00()00(,)(,)xu yv N f x y W F u u v v +↔−−将f (x,y )乘以一个指数项, 相当于将其二维离散傅立叶变换F (u,v )的频域中心移动到新的位置.2011/5/416DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(2)若, 则(,)(,)f x y F u v ↔(2)(2) 移位特性移位特性c. 移位时幅度不变()||()||()|x u v +当空域中f (x,y )移位时, F (u,v )在频域中只发生相移, 而00)00|(,,,y Nf x x y y F u v F u v W−−↔=傅立叶变换的幅值不变.00(),,,xu yv x y Wf x y F u u v v +=↔−−当频域中F (u,v )移位时, f (x,y )在空域中也只发生相移, 00|()||()||()|Nf 2011/5/417而傅立叶变换的幅值不变.DFT的性质2D DFT的性质2D DFT的性质2D DFT移位特性(2) 移位特性(2)(2)即使f(x,y)的频谱F(u,v)从原点(0,0)移到中心.222011/5/418DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(2)(2)(2) 移位特性移位特性(a) lena 原始图像(b) 无平移的傅里叶频谱(c) 原点移到中心的傅里叶变换2011/5/419DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(3)傅立叶变换和逆变换均以N 为周期(3)(3) 周期性周期性(,)(,)(,)(,)f x y f x aN y f x y bN f x aN y bN =+=+=++(,)(,)(,)(,)F u v F u aN v F u y bN F u aN v bN =+=+=++(4)图像f (x,y )为实函数, 则F (u,v )具有共轭对称性(4)(4) 共轭对称性共轭对称性*(,)(,)F u v F u v =−−|(,)||(,)|F u v F u v =−−2011/5/420是F (u,v )的复共轭.*(,)F u vDFT 2D DFT的性质2D DFT 2D DFT的性质的性质(5)引入极坐标cos x r θ=cos u ωφ=(5)(5) 旋转不变性旋转不变性{sin y r θ=(,)(,)f x y f r θ→{sin v ωφ=(,)(,)F u v F ωφ→由, 有(,)(,)f r F θωφ⇔00(,)(,)f r F θθωφθ+⇔+空域中的函数f (x,y )旋转θ0角度, 其傅立叶变换F (u,v )也旋转同样大的角度, 反之亦然.2011/5/421DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(5)(5)(5) 旋转不变性旋转不变性,由, 有(,)(,)f r F θωφ⇔00(,)(,)f r F θθωφθ+⇔+空域中的函数f (x,y )旋转θ0角度, 其傅立叶变换F (u,v )也旋转同样大的角度, 反之亦然.2011/5/422DFT2D DFT的性质的性质2D DFT2D DFT的性质实偶函数的DFTDFT(6)(6)实偶函数的(6) 实偶函数的DFT2D DFT的性质的性质2D DFT2D DFT的性质线性性(8) 线性性(8)(8)DFT2D DFT的性质的性质2D DFT2D DFT的性质平均值(10) 平均值(10)(10)DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(11)(11)(11) 卷积定理卷积定理(,)*(,)(,)(,)e e f x y h x y F u v H u v ⇔其中{(,)(,)(,)*(,)e ef x y h x y F u v H u v ⇔中{(,)01,01(,)01,1e f x y x A y B f x y A x M B N ≤≤−≤≤−=≤≤−≤≤−y (,)01,01(,)1e h x y x C y D h x y C ≤≤−≤≤−={01,1x M D y N ≤≤−≤≤−=−=+−2011/5/4261,1M A C N B D +DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(11)(11)(11) 卷积定理卷积定理(,)*(,)(,)(,)e e f x y h x y F u v H u v ⇔其中{(,)(,)(,)*(,)e ef x y h x y F u v H u v ⇔中1100(,)(,) 01,01N N yv xu e NNx F u v f x y W W u M v N −−===≤≤−≤≤−∑∑y 1100(,)(,) 01,01N N yv xu e NNx H u v h x y W W u M v N −−===≤≤−≤≤−∑∑y 1,1M A C N B D =+−=+−−−2011/5/4271100(,)*(,)(,)(,)N N e e e e i j f x y h x y f i j h x i y j ===−−∑∑DFT 2D DFT的性质2D DFT 2D DFT的性质的性质(12)(12)(12) 相关定理相关定理*)()()()(,,,,e e f x y h x y F u v H u v ⇔o *)()()()o (,,,,e e f x y h x y F u v H u v ⇔−−1100(,)(,)(,)(,)N N e e e e i j f x y h x y f i j h x i y j ===++∑∑o 2011/5/428DFT 2D DFT的计算2D DFT 2D DFT的计算的计算根据傅立叶变换核的可分离性,2D-DFT 可用两步1D DFT 来实现而1D DFT 这也就说1D-DFT 来实现,而1D-DFT 有快速算法FFT ,这也就说明,2D-DFT 就可用FFT 来完成,即(,){[(,)]}x y F u v FFT FFT f x y ={[(,)]}y x FFT FFT f x y =2011/5/429傅里叶变换在图像处理中的应用基本思路先用(-1)(x+y)乘以图像得(-1)(x+y)f(x,y);然后对其进行傅立叶正变换得到原点在(N/2,N/2)之处的F(u,v);接着根据图像的频率特性,利用有关的低通频率滤波器,或高通频率滤波器等,对其进行滤波处理;再将处理的结果进行傅立叶反变换;最后给反变换的结果再乘以(-1)(x+y)就可得到最终的结果.典型应用:去除图像噪声、图像数据压缩、图像识别、典型应用去除图像噪声图像数据压缩图像识别图像重构和图像描述等.2011/5/430图像变换的一般表示形式图像变换的一般表达式11(,)(,)(,,,) ,0,1,,1N N F u v f x y g x y u v u v N −−⎧==−⎪∑∑L 0011(,)(,)(,,,) ,0,1,,1x y N N f x y F u v h x y u v x y N ==−−⎪⎨⎪==−∑∑L 其中g (x ,y,u,v )和h (x ,y,u,v )分别称为正\反变换核.00u v ==⎪⎩图像变换完全由变换核的特性决定,不同特性的变换核就形成了不同种类的变换.2011/5/431正交变换将像变式中的变成阵表达式将图像变换公式中的正变换写成矩阵表达式其中G 称为变换矩阵.F f=G (1) (1) 正交变换矩阵及其主要性质正交变换矩阵及其主要性质2011/5/432正交变换=GF f2011/5/433正交变换(2) (2) 正交变换正交变换F f =G 变换矩阵是正交(或酉)矩阵的变换称为正交变换.2D-DFT就是正交变换.(3) (3) 二维正交变换下的能量守恒二维正交变换下的能量守恒下变换前后的能量是守恒的正交变换下,变换前后的能量是守恒的111122)||()|N N N N −−−−=∑∑∑∑0000|(,,x y u v f x y F u v ====2011/5/434可分离正交变换f 是数字图像矩阵,F 为经正交变换后得到的变换域的结果.T 12F f =G G (0,0)(0,1)(0,1)(1,0)(1,1)(1,1))]f f f N N f −⎡⎤⎢⎥−L L (,)(,)(,)[(,(1,0)(1,1)(1,1)f f f f x y f N f N f N N ==⎢⎥⎢⎥−−−−⎣⎦L L L L (0,0)(0,1)(0,1)(10)(11)(1F F F N −⎡⎤L (1,0)(1,1)(1,1)[(,)](1,0)(1,1)(1,1)F F F N F F u v F N F N F N N ⎢⎥−==⎢⎥⎢⎥−−−−L L L L L 2011/5/435⎣⎦可分离正交变换f 是数字图像矩阵,F 为经正交变换后得到的变换域的结果.T 12F f =G G 111(0,0)(0,1)(0,1)(1,0)(1,1)(1,1)g g g N N −⎡⎤⎢⎥−L L 1111111(,)(,)(,)(1,0)(1,1)(1,1)g g g G g N g N g N N =⎢⎥⎢⎥−−−−⎣⎦L L L L 222222(0,0)(0,1)(0,1)(1,0)(1,1)(1,1)g g g N g g g N G −⎡⎤⎢⎥−=L L 2222(1,0)(1,1)(1,1)g N g N g N N ⎢⎥⎢⎥−−−−⎣⎦L L L L 2011/5/436G 1和G 2是正交变换核g 分离后得到的变换矩阵可分离正交变换f 是数字图像矩阵,F 为经正交变换后得到的变换域的结果.T 12F f =G G 如果G 1和G 2的逆矩阵都存在, 则可得到反变换为T 1-1F −=G G 12()f 变换核可分离的正交变换,称为可分离正交变换.分离后都是正交矩阵(或酉矩阵)的变换矩阵G 1和G 2都是正交矩阵(或酉矩阵).根据正交变换矩阵的性质,,得到可分离正交变换的反**T 12()f F =G G G 1和G 2为酉矩阵变换为2011/5/437T12f F =G G G 1和G 2为正交矩阵可分离正交变换可分离正交变换的矩阵表示式**T =T 12F f =G G 12()f F G G G 1和G 2为酉矩阵T 12f F =G G G 1和G 2为正交矩阵2D-DFT ,2D DFT 就是可分离的正交变换, 其变换核也是对称的.2011/5/438作业:1. P184 6-12. 求以下数字图像块的2D-DFT 0110⎡⎤0110(,)0110f x y ⎢⎥=⎢⎥⎢⎥0110⎣⎦2011/5/439。
数字图像处理——图像频域变换
图像频域变换_离散余弦变换
离散余弦变换的频谱分布
程序:DCTFFT.m DCTspectrum.m
离散余弦变换之后的图像左上角对应于频谱的低频成分,最亮。
图像频域变换_离散余弦变换
离散余弦变换总结
(1)离散余弦变换相对于傅立叶变换而言,只有实数运算,没有复数运算,计 算量大大降低。 (2)离散余弦变换是可分离的变换,其变换核为余弦函数,且正反变换核相同。
u 0 v 0 M 1 N 1
2 x 1 u cos 2 y 1 v
2M 2N 2M 2N
2 x 1 u cos 2 y 1 v
式中:
u, x 0,1, 2, v, y 0,1, 2,
1 M a u 2 M
根据二维离散余弦变换核可以分离性,一般将二维DCT变换可以分成两个一维 DCT变换来完成:
f x, y F行 f x, y F x, v
T T T 转置 F x, v F列 f x, v F u, v 转置 F u, v
f t e j2t dt
j2 t
f t t k T e
dt
f t t k T e j2t dt
f k T e j2 k T
周期为 1 T
图像频域变换_傅里叶变换
f t e j t dt
o
t
F
1
t e j t dt f 0 1
单位冲激串
-
o
sT
sT t
数字图像FFT快速傅里叶变换
图像FFT变换1.傅立叶变换的理论基础与算法1.1傅立叶变换的基本原理傅立叶变换是一种常用的正交变换,它的理论完善,应用程序多。
在图像处理应用领域,傅立叶变换起着非常重要的作用,可用它完成图像分析、图像增强及图像压缩等工作。
假设f(m,n)是一个包含两个离散空间变量m 和n 的函数,则该函数的二维傅立叶变换定义如下:式中,ω1,ω2为频域变量,其单位为弧度/采样单元。
通常函数F(ω1,ω2)称为函数f(m,n)的频域表示。
F(ω1,ω2)是复变函数,其变量ω1,ω2的周期均为2π。
因为这种周期性的存在,所以通常在图像显示时,这两个变量的取值范围为-π≤ω1,ω2≤π。
傅立叶反变换定义如下:该方程说明f(m,n)可以表示为无限多项式不同频率的复指函数之和。
而不同的频率点(ω1,ω2)所做的贡献由幅度F(ω1,ω2)决定。
计算机处理傅立叶变换常采用离散傅立叶变换(Discrete Fourier Transform,DFT)。
采用离散傅立叶变换主要有以下两个原因:(1)因为DFT 的输入/输出均为离散值,非常适合用于计算机的运算操作。
(2)采用离散傅立叶变换,就可以用一种快速算法,即快速傅立叶变换(FastFourier Transform, FFT)。
傅立叶变换反映的是信号或函数的整体特性,而有些实际问题关心的是信号在局部范围内的特性,另外傅立叶变换运算涉及到了复数,计算复杂,实现速度慢。
所以我们在实现过程中往往采用快速傅立叶变换(FFT)算法。
快速傅立叶变换的设计思想是将原函数分为奇数项和偶数项,通过不断将一个奇数项和一个偶函数项相加(减),得到需要的结果。
所谓快速傅立叶变换(FFT)算法就是在研究离散傅立叶变换计算的基础上,节省它的计算量,达到快速计算的目的。
通常计算一维DFT 需要作N2次复数乘法和N (N-1)次复数加法,当N 值较大时,运算量就变得非常大。
FFT 算法的基本原理在于利用DFT 原始变换矩阵的多余性,化简了原始变换矩阵。
图像傅里叶变换
图像傅⾥叶变换1. 通俗理解傅⾥叶变换可参考:[1](图⽚摘⾃)2. 通俗理解数字图像傅⾥叶变换傅⾥叶定理指出,任何信号都可以表⽰成⼀系列正弦信号的叠加。
在⼀维领域,信号是⼀维正弦波的叠加,那么在⼆维领域,就是⽆数⼆维平⾯波的叠加。
⽐如⼀帧图像,不同点处的灰度值⾼低起伏变化,傅⾥叶变换就是⽤⽆数⼆维正弦波来拟合这种灰度值的起伏变化,灰度值的起伏变化平缓的地⽅,很低频的⼆维正弦波即可拟合,灰度值的起伏变化很⼤的地⽅(⽐如图像边缘、噪点等),则需要⾼频⼆维正弦波才能拟合。
刻画⼀维正弦波只需要⼀个频率值u,刻画⼆维正弦波则需要两个频率值(u,v)。
例如:数字图像傅⾥叶变换可参考:[1] MOOC课程[2] 数字图像处理,冈萨雷斯,第⼆版,第四章[3][4]下图摘⾃[1],在FFT功率谱图中,⾼亮度表明该频率特征明显。
3. 从数学公式的⾓度理解傅⾥叶变换本节的公式摘⾃冈萨雷斯的《数字图像处理》第四章3.1 1-Dimensional Fourier transform1-D Fourier transform and inverse Fourier transfrom:Using Euler's formula, Fourier transform can be expressed as所以,当我们看到傅⾥叶变换公式中的e−j2πµt时,我们应该想到的是⼀系列不同频率的正弦波。
傅⾥叶变换公式可这样理解:所谓傅⾥叶变换在其数学本质上⽆⾮是信号与正弦函数在时间轴上的卷积操作。
根据⼀般的惯例,我们将信号与之作卷积操作的部分称之为卷积核或核函数,因此我们可以从频率分解以外的视⾓来审视傅⾥叶变换,可以将其认为是信号与⼀个参数可变的核函数的卷积操作,其可变的核函数的参数就是频率。
(这段话摘⾃)1-D discrete Fourier transform:x is integers, M is the number of samples of µ.1-D inverse discrete Fourier transform:3.2 2-Dimensional Fourier transform2-D Fourier transform and inverse Fourier transfrom:2-D discrete Fourier transform:4. ⽤matlab实现傅⾥叶变换傅⾥叶变换函数:function F = FT_peng(I)[m,n] = size(I);F = zeros(m,n);for u = 1:mfor v = 1:nfor x = 1:mfor y = 1:nF(u,v) = F(u,v) + double(I(x,y)) * exp(-2*pi*1i*(u*x/m+v*y/n)); endendendendend傅⾥叶逆变换函数:function f = IFT_peng(I)[m,n] = size(I);f = zeros(m,n);for x = 1:mfor y = 1:nfor u = 1:mfor v = 1:nf(x,y) = f(x,y) + double(I(u,v)) * exp(2*pi*1i*(u*x/m+v*y/n)); endendendendf = f/(m*n);end主程序代码:clear;I = imread('test_img.png');I = imresize(I, [100,100]);I = rgb2gray(I);% using fft2 directlyI_fft2 = fft2(I);I_fft2 = abs(I_fft2); % abs将负实数和虚数部分调整为正实数I_fft2shift = fftshift(I_fft2); % 把四个⾓的⾼频信息移动到最中间I_fft2shift = uint8(I_fft2shift/256); % 除以256是为了缩⼩数值,能更好的显⽰% using function defined by usI_FT = FT_peng(I);I_FT2 = abs(I_FT);I_FTshift = fftshift(I_FT2);I_FTshift = uint8(I_FTshift/256);% recover the image by inverse Fourier function defined by usI_inv = IFT_peng(I_FT);I_inv = uint8(I_inv);% plotsubplot(221);imshow(I); title('Original image');subplot(222);imshow(I_fft2shift); title('fft2 frequency image');subplot(223);imshow(I_FTshift); title('FT frequency image');subplot(224);imshow(I_inv); title('Recovered image');运⾏结果:注:程序参考了博客Processing math: 100%。
实验三_图像的傅立叶变换
实验三、图像的傅立叶变换一、实验目的1了解图像变换的意义和手段;2熟悉傅里叶变换的基本性质;3熟练掌握FFT的方法及应用;4通过实验了解二维频谱的分布特点;5通过本实验掌握编程实现数字图像的傅立叶变换。
二、实验原理1应用傅立叶变换进行图像处理傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。
通过实验培养这项技能,将有助于解决大多数图像处理问题。
对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。
2傅立叶(Fourier)变换的定义对于二维信号,二维Fourier变换定义为:二维离散傅立叶变换为:图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参见参考书目,有关傅立叶变换的快速算法的程序不难找到。
实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。
三、实验内容1.根据二维离散Fourier变换的定义编写程序2.实现图象的变换3.画出图象的频谱图。
2提交实验的原始图像和结果图像。
3报告内容主要是将原理与实验现象相结合,利用原理简要解释观察到的现象。
六、思考题1.傅里叶变换有哪些重要的性质?2.图像的二维频谱在显示和处理时应注意什么?1. 源程序:// MyDIPView.cpp : implementation of the CMyDIPView class//#include "stdafx.h"#include "MyDIP.h"#include "MyDIPDoc.h"#include "MyDIPView.h"#include "math.h"#include<complex>using namespace std;#define PI 3.14159#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif/******************************************************************** ******* 函数名称:* FFT()** 参数:* complex<double> * TD -指向时域数组的指针* complex<double> * FD -指向频域数组的指针* r -2的幂数,即迭代次数** 返回值:* 无。
傅立叶变换在图像处理中的应用
傅立叶变换在图像处理中的应用导语:数字图像,是指用有限数字的数值作为图像显示的基本单位,来表示二维图像的一种方法。
对数字图像处理的发展历史不长,但已引起了各方面的广泛重视。
在图像处理中,应用于线性系统分析的傅氏变换理论及其物理解释,对图像处理领域诸多问题提供了一种解决思路。
它让我们从事物的另一侧面来考虑问题,即从空间域和频域两个角度来考虑问题并来回切换,选用适当的方法解决问题。
傅氏变换的应用非常广泛,在图像的滤波、复原等都有应用。
这里,给出傅氏变换理论及其在图像处理中的一些应用。
图像可以看作是一个定义在二维平面上的函数,自变量的坐标表示其在图像上的位置,而函数值对应于像素的灰度,也就是颜色的深浅。
如果我们仅仅考虑图像上某一行像素,则可以将之视为一个定义在一维空间上函数。
对于这种信号的处理在形式上与传统的信号处理领域的时变信号是相似的。
不过是一个是定义在时间域上的,而另一个是定义在空间域上的。
所以图像的频率又称为空间频率,它反映了图像的像素灰度在空间中变化的情况。
例如,一面墙壁的图像,由于灰度值分布平坦,其低频成分就较强,而高频成分较弱;而对于国际象棋棋盘图片这类具有快速空间变化的图像来说,其高频成分会相对较强,低频则较弱。
如何定量的测量图像的空间频率,最常用的方法就是二维傅里叶变换。
图像经过二维傅里叶变换后会形成与图像等大的复数矩阵。
取其幅值形成幅度谱,取其相位形成相位谱。
图像的频率能量分布主要体现在幅度谱中。
1、二维傅氏变换的数学定义、解释及算法在图像处理领域中,常用的傅氏变换是二维傅立叶变换。
令:f(x,y)为实变量x,y的连续函数且在(-∞,+ ∞)内绝对可积, f(x,y)的傅立叶变换对的定义为:F(u,v)是两个实频率变量u和v的复值函数,频率u对应于x轴,频率v对应于y轴。
其物理解释为:输人信号f(x,y)可被分解成不同频率余弦函数的和,每个余弦函数的幅值由F(u,v)唯一确定; f(x,y)在某点的函数值是不同频率的余弦函数在该点函数值的和.在LTI系统中设f(x,y)、g(x,y)的傅氏变换分别为F(u,v)、G(u,v),则有成立.这是线性系统分析中重要的卷积定理.意味着空间域中卷积的傅氏变换等于在其在频域中的相乘。
数字图像处理实验报告
目录实验一:数字图像的基本处理操作 (2)1。
1:实验目的 (2)1。
2:实验任务和要求 (2)1.3:实验步骤和结果 (2)1。
4:结果分析 (6)实验二:图像的灰度变换和直方图变换 (7)2.1:实验目的 (7)2.2:实验任务和要求 (7)2。
3:实验步骤和结果 (7)2。
4:结果分析 (11)实验三:图像的平滑处理 (12)3.1:实验目的 (12)3。
2:实验任务和要求 (12)3。
3:实验步骤和结果 (12)3。
4:结果分析 (16)实验四:图像的锐化处理 (17)4.1:实验目的 (17)4.2:实验任务和要求 (17)4。
3:实验步骤和结果 (17)4.4:结果分析 (19)实验一:数字图像的基本处理操作1.1:实验目的1、熟悉并掌握MATLAB、PHOTOSHOP等工具的使用;2、实现图像的读取、显示、代数运算和简单变换。
3、熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。
1。
2:实验任务和要求1.读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。
2.对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题.3.对一幅图像进行平移,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。
4.对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的对应关系。
1.3:实验步骤和结果1.对实验任务1的实现代码如下:a=imread(’d:\tp.jpg’);i=rgb2gray(a);I=im2bw(a,0。
5);subplot(1,3,1);imshow(a);title('原图像');subplot(1,3,2);imshow(i);title(’灰度图像’);subplot(1,3,3);imshow(I);title('二值图像’);subplot(1,3,1);imshow(a);title('原图像');结果如图1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
f(5:24:13:17)=1;
imshow(f,'notruesize')
F=fft2(f);
F2=log(abs(F));
figure,imshow(F2,[-1 5],'notruesize');colormap(jet);
F=fft2(f,256,256);
figure,imshow(log(abs(F)),[-1 5],'notruesize');colormap(jet);
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0]
B2=blkproc(B,[8 8],'P1.*x',mask);
I2=blkproc(B2,[8 8],'P1.*x*P2','T',T);
imshow(I)
figure,imshow(I2)
Welcome To
title('傅里叶变换');
JSH=fftshift(J);
figure,imshow(JSH);
title('傅里叶变换频移');
Ji=ifft2(J);
figure,imshow(Ji/256);
title('直接傅里叶变换');
JA=abs(J);
iJA=ifft2(JA);
figure,imshow(iJA/256);
fftI=fft2(I);
sfftI=fftshift(fftI);
RR=real(sfftI);
II=imag(sfftI);
A=sqrt(RR.^2+II.^2);
A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225;
figure;
imshow(A);
C)绘制一个二值图像矩阵,并将其傅立叶函数可视化
实验名称
图像的傅立叶变换
课程名称
数字图像
姓名
专业、班级
学号
班内序号
实验时间
实验地点
实
验
内
容
1.傅立叶变换
A)傅立叶变换基本操作
B)利用MATLAB软件实现数字图像傅立叶变换的程序
C)绘制一个二值图像矩阵,并将其傅立叶函数可视化
2,离散余弦变换
A)使用dct2对图像‘autumn.tif’进行DCT变换。
I=imread('N.jpg');
I=im2double(I);
T=dctmtx(8);
B=blkproc(I,[8,8],'P1*x*P2',T,T');
mask=[1 1 1 1 0 0 0 0
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
title('幅度傅里叶反变换');
JP=angle(J);
iJP=ifft2(JP);
figure,imshow(abs(iJP)*100);
title('相应的傅里叶反变换');
B)利用MATLAB软件实现数字图像傅立叶变换的程序
B=imread('M.JPG');
I=rgb2gray(B);
imshow(I);
F2=fftshift(F);
figure,imshow(log(abs(F2)),[-1 5],'notruesize');colormap(jet);
A)使用dct2对图像‘N.jpg’进行DCT变换。
RGB=imread('N.jpg');
imshow(RGB)
I=rgb2gray(RGB);
B)将上述DCT变换结果中绝对值小于10的系数舍弃,使用idct2重构图像并与原图像比较。
C)利用DCT变换进行图像压缩。
实
验过Βιβλιοθήκη 程及结果
分
析
A)傅立叶变换基本操作
A=imread('N.JPG');
I=rgb2gray(A);
imshow(I);
title('原图像');
J=fft2(I);
figure,imshow(J);
I=rgb2gray(RGB);
J=dct2(I);
figure,imshow(I);
J(abs(J)<10)=0;
K=idct2(J);
figure,imshow(K,[0 255])
J(abs(J)<10)=0;
K2=idct2(J);
figure,imshow(K2,[0 255])
C)利用DCT变换进行图像压缩。
figure,imshow(I)
J=dct2(I);
figure,imshow(log(abs(J)),[]),colormap(jet(64));colorbar;
B)将上述DCT变换结果中绝对值小于10的系数舍弃,使用idct2重构图像并与原图像比较。
RGB=imread('N.jpg');%B
Download !!!
欢迎您的下载,资料仅供参考!