请教:关于傅立叶变换
如果有一信号:比如说y=sin(2*t)+sin(pi*t),(1)我们可以直接计算出来它的连续傅立叶变换,(2)也可以通过时域采样来得到它的离散傅立叶变换。我想问一下:这两种变换有什么联系和不同,谢谢高手们的回答。回复 #1 Information 的帖子
离散傅立叶变换(DFT)一词并非泛指对任意离散信号取傅立叶积分或傅立叶级数,而是为了适应计算机计算傅立叶变换(FT)而引出的一个专用名词。所以有时称DFT是适用于计算机计算的FT。 快速傅立叶变换(The Fast Fourier Transform,FFT)是离散傅立叶变换(Discrete Fourier Transform,DFT)的一种快速算法,它是库利(Cooley)和图基(Tukey)于1965年提出的。FFT使DFT的次数由N^2减少到Nlog2(N)次,使DFT应用于实际变为现实,使DFT进一步得到完善。1976年,S.Winograd等人提出一种新算法:Winograd快速变换(Winograd Fast Fourier Transform Algorithm),该算法是基于中国剩余定理提出的,比FFT的运算速度更快。因我也知之深浅,只作下面三点说明:
1.FFT是通过DFT运算中存在对称性和周期性而做的化简。
2.FFT可以通过对时间参量或者频率参量不断分解为奇偶表达式,再做进一步改进,分别称为时间抽取法和频率抽取法。
3.matlab给出的FFT介绍实际是DFT的表达式,未作DFT向FFT的简化过程说明,但计算过程内核是FFT。(N=1024时FFT比DFT快一百多倍)
:loveliness: :handshake
[ 本帖最后由 zhlong 于 2007-8-14 09:35 编辑 ] 谢谢zhlong& gladstone 的回答,使我对两者的关系有了个更好的认识。还想问一下:如果我现在求出了y=sin(2*t)+sin(pi*t)的连续傅立叶变换,我们可不可以从连续傅立叶变换算式中知道他的离散傅立叶的值呢。谢谢!
回复 #4 Information 的帖子
离散傅立叶变换是由连续傅立叶变换推导而来的,所以你可以找信号处理或是机械测试技术之类的课本看看它们之间的关系。对实际采样信号进行分析用到的都是离散傅立叶变换。 zhlong兄,提到“离散傅立叶变换是由连续傅立叶变换推导而来的”,我不这样看 ,我觉得刚好相反,“连续傅立叶变换是由离散傅立叶变换推导而来的”,从几何意义来说,连续傅立叶变换是细分化,N=∞的状态。由于级数的敛散性使得连续傅立叶变换对f(x)的满足的条件要求更高,要求f(x)在(-∞,+∞)内绝对可积。我认为:不可以从连续傅立叶变换算式中知道他的离散傅立叶的值。因为连续傅立叶变换已经将离散傅立叶变换中的N取值为∞了啊!怎么可以再知道自然数N的离散傅立叶值呢?-----------------------以上观点欢迎商祺:handshake
information兄,想弄明白离散和连续傅立叶之间的关系,看一些积分的几何意义就明朗了啊。
求y=sin(2*t)+sin(pi*t)的离散傅立叶变换套用下面公式:
回复 #6 gladstone 的帖子
你说的当然也有道理,是从它们之间的理论关系出发。我前面提到的是指在出现时间上先有连续傅立叶变换, 然后为了适应利用计算机进行计算,从而出现了离散傅立叶。 “连续傅立叶变换是由离散傅立叶变换推导而来的”,这个恐怕不是这样的吧。关于离散傅立叶变换表达式的导出,有两种方法:(1)从离散时间序列的Z变换基础上导出,即有限长序列的离散傅立叶变换可解释为它的Z变换在单位圆上的采样;(2)把离散傅立叶变换作为连续信号傅立叶变换的一种特殊情况到处。后者物理概念较前者清楚。 (摘自:机械工程测试-信息-信号分析
回复 #6 gladstone 的帖子
我想会用就可以了,没必要把时间耗在这上面,没什么意义。很成熟的方法,完整的数学推导,能利用好就可以了。回复 #9 zhangnan3509 的帖子
接受的数学体系不同,可能分析问题的视角也不一样,没有对错,只有差异,了解别人的视角也不错啊:lol 我是一个不迷信权威的人,用我老师(李懋和)的话说:数学绝对不是谁的嘴大,谁说了算!呵呵:loveliness: 关于FFT和DFT的起源就此打住吧。我们关心问题,关注问题,分析问题,解决问题,去吧:handshake在论坛里有这样一群人,我好高兴啊:victory:
页:
[1]