深入浅出的讲解傅里叶变换 FFT

出处:http://www.labisart.com/blog/index.php/Home/Index/article/aid/40


收藏的文章:

https://mp.weixin.qq.com/s?__biz=MjM5MTIwMjY1Mg==&mid=208259897&idx=1&sn=b258b88ee9cb1f23f60cf1c42bcbb4ad&mpshare=1&scene=23&srcid=0517vZG8ylJvDvasvE1G6gFP#rd

https://mp.weixin.qq.com/s?__biz=MjM5MTIwMjY1Mg==&mid=2649875289&idx=1&sn=5448c94df45795f6e3fe8b2f0a6c71f7&chksm=bebc6f6a89cbe67c1bdd8826913e4758476ac9dc6135c92e53ca11daea7ba2bda2759a1607cc&mpshare=1&scene=23&srcid=0517rpKT0dhQkvHuEfMDomTt#rd


这个文章真是太好了,忍不住再次转发,希望大家喜欢!熄灯,开始

=======================我是华丽的分割线========================

文章来自:http://blog.csdn.net/lanmanck/article/details/40348033


我保证这篇文章和你以前看过的所有文章都不同,这是12年还在果壳的时候写的,但是当时没有来得及写完就出国了……于是拖了两年,嗯,我是拖延症患者……

  这篇文章的核心思想就是:

  要让读者在不看任何数学公式的情况下理解傅里叶分析。

  傅里叶分析不仅仅是一个数学工具,更是一种可以彻底颠覆一个人以前世界观的思维模式。但不幸的是,傅里叶分析的公式看起来太复杂了,所以很多大一新生上来就懵圈并从此对它深恶痛绝。老实说,这么有意思的东西居然成了大学里的杀手课程,不得不归咎于编教材的人实在是太严肃了。(您把教材写得好玩一点会死吗?会死吗?)所以我一直想写一个有意思的文章来解释傅里叶分析,有可能的话高中生都能看懂的那种。所以,不管读到这里的您从事何种工作,我保证您都能看懂,并且一定将体会到通过傅里叶分析看到世界另一个样子时的快感。至于对于已经有一定基础的朋友,也希望不要看到会的地方就急忙往后翻,仔细读一定会有新的发现。

  ————以上是定场诗————

  下面进入正题:

  抱歉,还是要啰嗦一句:其实学习本来就不是易事,我写这篇文章的初衷也是希望大家学习起来更加轻松,充满乐趣。但是千万!千万不要把这篇文章收藏起来,或是存下地址,心里想着:以后有时间再看。这样的例子太多了,也许几年后你都没有再打开这个页面。无论如何,耐下心,读下去。这篇文章要比读课本要轻松、开心得多……

  一、嘛叫频域

  从我们出生,我们看到的世界都以时间贯穿,股票的走势、人的身高、汽车的轨迹都会随着时间发生改变。这种以时间作为参照来观察动态世界的方法我们称其为时域分析。而我们也想当然的认为,世间万物都在随着时间不停的改变,并且永远不会静止下来。但如果我告诉你,用另一种方法来观察世界的话,你会发现世界是永恒不变的,你会不会觉得我疯了?我没有疯,这个静止的世界就叫做频域。

  先举一个公式上并非很恰当,但意义上再贴切不过的例子:

  在你的理解中,一段音乐是什么呢?


这是我们对音乐最普遍的理解,一个随着时间变化的震动。但我相信对于乐器小能手们来说,音乐更直观的理解是这样的:


好的!下课,同学们再见。

  是的,其实这一段写到这里已经可以结束了。上图是音乐在时域的样子,而下图则是音乐在频域的样子。所以频域这一概念对大家都从不陌生,只是从来没意识到而已。

  现在我们可以回过头来重新看看一开始那句痴人说梦般的话:世界是永恒的。

  将以上两图简化:

  时域:


频域:


在时域,我们观察到钢琴的琴弦一会上一会下的摆动,就如同一支股票的走势;而在频域,只有那一个永恒的音符。

  所(前方高能!~~~~~~~~~~~非战斗人员退散~~~~~~~)

  以(~~~~~~~~~~~~~~~前方高能预警~~~~~~~~~~~~~~前方高能~~~~~~~~)

  你眼中看似落叶纷飞变化无常的世界,实际只是躺在上帝怀中一份早已谱好的乐章。

  (众人:鸡汤滚出知乎!)

  抱歉,这不是一句鸡汤文,而是黑板上确凿的公式:傅里叶同学告诉我们,任何周期函数,都可以看作是不同振幅,不同相位正弦波的叠加。在第一个例子里我们可以理解为,利用对不同琴键不同力度,不同时间点的敲击,可以组合出任何一首乐曲。

  而贯穿时域与频域的方法之一,就是传中说的傅里叶分析。傅里叶分析可分为傅里叶级数(Fourier Serie)和傅里叶变换(Fourier Transformation),我们从简单的开始谈起。

  二、傅里叶级数(Fourier Series)

  还是举个栗子并且有图有真相才好理解。

  如果我说我能用前面说的正弦曲线波叠加出一个带90度角的矩形波来,你会相信吗?你不会,就像当年的我一样。但是看看下图:


第一幅图是一个郁闷的正弦波cos(x)

  第二幅图是2个卖萌的正弦波的叠加cos(x)+a.cos(3x)

  第三幅图是4个发春的正弦波的叠加

  第四幅图是10个便秘的正弦波的叠加

  随着正弦波数量逐渐的增长,他们最终会叠加成一个标准的矩形,大家从中体会到了什么道理?

  (只要努力,弯的都能掰直!)

  随着叠加的递增,所有正弦波中上升的部分逐渐让原本缓慢增加的曲线不断变陡,而所有正弦波中下降的部分又抵消了上升到最高处时继续上升的部分使其变为水平线。一个矩形就这么叠加而成了。但是要多少个正弦波叠加起来才能形成一个标准90度角的矩形波呢?不幸的告诉大家,答案是无穷多个。(上帝:我能让你们猜着我?)

  不仅仅是矩形,你能想到的任何波形都是可以如此方法用正弦波叠加起来的。这是没有接触过傅里叶分析的人在直觉上的第一个难点,但是一旦接受了这样的设定,游戏就开始有意思起来了。

  还是上图的正弦波累加成矩形波,我们换一个角度来看看:


在这几幅图中,最前面黑色的线就是所有正弦波叠加而成的总和,也就是越来越接近矩形波的那个图形。而后面依不同颜色排列而成的正弦波就是组合为矩形波的各个分量。这些正弦波按照频率从低到高从前向后排列开来,而每一个波的振幅都是不同的。一定有细心的读者发现了,每两个正弦波之间都还有一条直线,那并不是分割线,而是振幅为0的正弦波!也就是说,为了组成特殊的曲线,有些正弦波成分是不需要的。

  这里,不同频率的正弦波我们成为频率分量。

  好了,关键的地方来了!!

  如果我们把第一个频率最低的频率分量看作“1”,我们就有了构建频域的最基本单元。

  对于我们最常见的有理数轴,数字“1”就是有理数轴的基本单元。

  (好吧,数学称法为——基。在那个年代,这个字还没有其他奇怪的解释,后面还有正交基这样的词汇我会说吗?)

  时域的基本单元就是“1秒”,如果我们将一个角频率为LYJ博客的正弦波cos(LYJ博客t)看作基础,那么频域的基本单元就是LYJ博客

  有了“1”,还要有“0”才能构成世界,那么频域的“0”是什么呢?cos(0t)就是一个周期无限长的正弦波,也就是一条直线!所以在频域,0频率也被称为直流分量,在傅里叶级数的叠加中,它仅仅影响全部波形相对于数轴整体向上或是向下而不改变波的形状。

  接下来,让我们回到初中,回忆一下已经死去的八戒,啊不,已经死去的老师是怎么定义正弦波的吧。



正弦波就是一个圆周运动在一条直线上的投影。所以频域的基本单元也可以理解为一个始终在旋转的圆:




介绍完了频域的基本组成单元,我们就可以看一看一个矩形波,在频域里的另一个模样了:


这是什么奇怪的东西?

  这就是矩形波在频域的样子,是不是完全认不出来了?教科书一般就给到这里然后留给了读者无穷的遐想,以及无穷的吐槽,其实教科书只要补一张图就足够了:频域图像,也就是俗称的频谱,就是——


再清楚一点:


可以发现,在频谱中,偶数项的振幅都是0,也就对应了图中的彩色直线。振幅为0的正弦波。

  动图请戳:

  File:Fourier series and transform.gif老实说,在我学傅里叶变换时,维基的这个图还没有出现,那时我就想到了这种表达方法,而且,后面还会加入维基没有表示出来的另一个谱——相位谱。

  但是在讲相位谱之前,我们先回顾一下刚刚的这个例子究竟意味着什么。记得前面说过的那句“世界是静止的”吗?估计好多人对这句话都已经吐槽半天了。想象一下,世界上每一个看似混乱的表象,实际都是一条时间轴上不规则的曲线,但实际这些曲线都是由这些无穷无尽的正弦波组成。我们看似不规律的事情反而是规律的正弦波在时域上的投影,而正弦波又是一个旋转的圆在直线上的投影。那么你的脑海中会产生一个什么画面呢?

  我们眼中的世界就像皮影戏的大幕布,幕布的后面有无数的齿轮,大齿轮带动小齿轮,小齿轮再带动更小的。在最外面的小齿轮上有一个小人——那就是我们自己。我们只看到这个小人毫无规律的在幕布前表演,却无法预测他下一步会去哪。而幕布后面的齿轮却永远一直那样不停的旋转,永不停歇。这样说来有些宿命论的感觉。说实话,这种对人生的描绘是我一个朋友在我们都是高中生的时候感叹的,当时想想似懂非懂,直到有一天我学到了傅里叶级数……

  抱歉,还是没写完。但是我想坚持看到这里的人已经很不容易了。我们都休息一下,下一讲再继续……


深入浅出的讲解傅里叶变换(2)

上一篇文章发出来之后,为了掐死我,大家真是很下工夫啊,有拿给姐姐看的,有拿给妹妹看的,还有拿给女朋友看的,就是为了听到一句“完全看不懂啊”。幸亏我留了个心眼,不然就真的像标题配图那样了。我的文章题目是,如果看了这篇文章你“还”不懂就过来掐死我,潜台词就是在你学了,但是没学明白的情况下看了还是不懂,才过来掐死我。


  另外,想跟很多人抱歉,因为评论太多了,时间有限,不能给每个人回复,还望大家谅解。但是很感谢一直在评论区帮忙解答读者问题的各位,就不一一@了。

  这里郑重感谢大连海事大学的吴楠老师,一位学识渊博、备课缜密、但授课不拘一格的年轻教师!当时大三他教我通信原理,但是他先用了4结课帮我们复习了很多信号与系统的基本概念,那个用乐谱代表频域的概念就是他讲的,一下子让我对这门课豁然开朗,才有了今天的这篇文章。

  ————————————今天的定场诗有点长——————————

  下面继续开始我们无节操的旅程:

  上次的关键词是:从侧面看。这次的关键词是:从下面看。

  在第二课最开始,我想先回答很多人的一个问题:傅里叶分析究竟是干什么用的?这段相对比较枯燥,已经知道了的同学可以直接跳到下一个分割线。

  先说一个最直接的用途。无论听广播还是看电视,我们一定对一个词不陌生——频道。频道频道,就是频率的通道,不同的频道就是将不同的频率作为一个通道来进行信息传输。下面大家尝试一件事:

  先在纸上画一个sin(x),不一定标准,意思差不多就行。不是很难吧。

  好,接下去画一个sin(3x)+sin(5x)的图形。

  别说标准不标准了,曲线什么时候上升什么时候下降你都不一定画的对吧?

  好,画不出来不要紧,我把sin(3x)+sin(5x)的曲线给你,但是前提是你不知道这个曲线的方程式,现在需要你把sin(5x)给我从图里拿出去,看看剩下的是什么。这基本是不可能做到的。

  但是在频域呢?则简单的很,无非就是几条竖线而已。

  所以很多在时域看似不可能做到的数学操作,在频域相反很容易。这就是需要傅里叶变换的地方。尤其是从某条曲线中去除一些特定的频率成分,这在工程上称为滤波,是信号处理最重要的概念之一,只有在频域才能轻松的做到。

  再说一个更重要,但是稍微复杂一点的用途——求解微分方程。(这段有点难度,看不懂的可以直接跳过这段)微分方程的重要性不用我过多介绍了。各行各业都用的到。但是求解微分方程却是一件相当麻烦的事情。因为除了要计算加减乘除,还要计算微分积分。而傅里叶变换则可以让微分和积分在频域中变为乘法和除法,大学数学瞬间变小学算术有没有。

  傅里叶分析当然还有其他更重要的用途,我们随着讲随着提。

  ————————————————————————————————————

  下面我们继续说相位谱:

  通过时域到频域的变换,我们得到了一个从侧面看的频谱,但是这个频谱并没有包含时域中全部的信息。因为频谱只代表每一个对应的正弦波的振幅是多少,而没有提到相位。基础的正弦波A.sin(wt+θ)中,振幅,频率,相位缺一不可,不同相位决定了波的位置,所以对于频域分析,仅仅有频谱(振幅谱)是不够的,我们还需要一个相位谱。那么这个相位谱在哪呢?我们看下图,这次为了避免图片太混论,我们用7个波叠加的图。


鉴于正弦波是周期的,我们需要设定一个用来标记正弦波位置的东西。在图中就是那些小红点。小红点是距离频率轴最近的波峰,而这个波峰所处的位置离频率轴有多远呢?为了看的更清楚,我们将红色的点投影到下平面,投影点我们用粉色点来表示。当然,这些粉色的点只标注了波峰距离频率轴的距离,并不是相位。


这里需要纠正一个概念:时间差并不是相位差。如果将全部周期看作2Pi或者360度的话,相位差则是时间差在一个周期中所占的比例。我们将时间差除周期再乘2Pi,就得到了相位差。

  在完整的立体图中,我们将投影得到的时间差依次除以所在频率的周期,就得到了最下面的相位谱。所以,频谱是从侧面看,相位谱是从下面看。下次偷看女生裙底被发现的话,可以告诉她:“对不起,我只是想看看你的相位谱。”

  注意到,相位谱中的相位除了0,就是Pi。因为cos(t+Pi)=-cos(t),所以实际上相位为Pi的波只是上下翻转了而已。对于周期方波的傅里叶级数,这样的相位谱已经是很简单的了。另外值得注意的是,由于cos(t+2Pi)=cos(t),所以相位差是周期的,pi和3pi,5pi,7pi都是相同的相位。人为定义相位谱的值域为(-pi,pi],所以图中的相位差均为Pi。

  最后来一张大集合:


好了,你是不是觉得我们已经讲完傅里叶级数了?

  抱歉让你失望了,以上我们讲解的只是傅里叶级数的三角函数形式。接下去才是最究极的傅里叶级数——指数形式傅里叶级数。但是为了能更好的理解指数形式的傅里叶级数,我们还需要一个工具来帮忙——欧拉公式。

  欧拉公式,以及指数形式的傅里叶级数,我们下一讲再讲。谢谢大家(鞠躬)。

  —————————————————————————————————————

  今天讲的部分不多,但是我希望大家能够理解,我也有自己的生活,留给知乎的时间并不多,但是我很喜欢在知乎与别人交流的过程。上一次的那些文章大家知道我当时写了多久么?四天,每天写6小时那种,而且当时还是在假期。主要是图太不好做了,有人问到作图的方法,其实就是简单的MATLAB+PHOTOSHOP,作图的确是很费时间,但是我相信做出这些图是值得的,因为我相信图一定比文字更好理解。也希望可以将这些自己学习时的感受和经验更完整的分享给需要的人。

  所以请大家稍微有点耐心,我会认真把这个故事讲完。也谢谢大家的理解和支持。


  • 9
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 傅里叶变换是一种将信号从时域转换到频域的数学工具。它可以将一个信号分解成不同频率的正弦和余弦的叠加,从而更好地理解信号的特性。 在傅里叶变换中,我们将信号看作是一个周期函数,通过将其分解成不同频率的正弦和余弦的叠加,可以得到信号在频域上的表示。这个表示可以帮助我们更好地理解信号的频率特性,例如哪些频率成分占主导地位,哪些频率成分对信号的形态有影响等等。 傅里叶变换的计算过程比较复杂,但是我们可以通过一些简单的例子来理解它的基本原理。例如,如果我们有一个周期为1秒的正弦信号,它的频率为1Hz。我们可以将这个信号表示为一个振幅为1的正弦,频率为1Hz的叠加。同样地,如果我们有一个周期为2秒的信号,它的频率为0.5Hz,我们可以将它表示为一个振幅为1的正弦,频率为0.5Hz的叠加。 总之,傅里叶变换是一种非常有用的工具,可以帮助我们更好地理解信号的频率特性。虽然它的计算过程比较复杂,但是我们可以通过一些简单的例子来理解它的基本原理。 ### 回答2: 傅里叶变换是一种将信号从时间域(时域)变换到频率域的数学工具。该变换可以将一个复杂的信号分解成若干个简单的正弦频率信号,使得我们可以更好地理解并处理这个信号。 为了更好地理解傅里叶变换,我们需要了解一些基本概念。 首先,我们需要知道什么是周期信号。周期信号是指在一定时间间隔内重复现的信号。例如,正弦就是一种周期信号,它在每个周期内都是相同的形状。可以通过周期信号的重复性,来表示它的固有频率。 其次,我们需要了解什么是频谱。频谱是由各个频率成分所组成的信号特征。可以通过对一个信号进行傅里叶变换,将时间域上的信号转换到频率域,并得到它的频谱。 最后,我们需要了解什么是线性变换和反变换。傅里叶变换和反变换是一对线性变换,其中傅里叶变换将一个信号从时域变换到频域,而反变换则将其从频域变换回时域。 傅里叶变换可以被理解为寻找周期信号的合成。换句话说,我们可以将信号分解为许多不同频率的正弦的叠加。这些正弦的频率可以用频谱表示来,而且可以用傅里叶反变换重新组合成原始信号。傅里叶变换不仅可以应用于周期信号,也可以应用于非周期信号。 说到这里,你可能会问:傅里叶变换有什么好处呢?首先,傅里叶变换在信号处理、通信、图像处理等领域具有广泛应用。其次,傅里叶变换能够提供比时域更多的信息,同时也便于对信号进行分析和处理。例如,通过傅里叶变换,我们可以在频域上滤除不需要的噪声,提取有用的信号。另外,在数字信号处理中,傅里叶变换常常被用来进行频率域滤,也可以进行调制和解调操作等等。 总之,傅里叶变换使得我们可以从不同的角度来观察信号,具有很强的应用价值。当然,傅里叶变换的数学原理十分复杂,但理解其基本原理对于我们应用傅里叶变换具有重要的意义。 ### 回答3: 傅里叶变换是一种将一个函数(例如一段声音或图像)分解为其基本频率成分的方法。为了更好地理解傅里叶变换,我们可以先来了解一下频率和周期。 在物理学和信号处理中,频率是指一个事件发生的次数在单位时间内的数量。如果在一个时间段内发生的次数很少,那么这个事件的频率就很低。相反,如果在相同的时间段内发生的次数很多,那么这个事件的频率就很高。 周期是指一个函数在一个特定的时间内重复的时间长度。例如,一个正弦的周期是指正弦函数在一个完整的周期内完成一个完整的周期。 傅里叶变换是一种数学方法,可以将一个函数分解为其基本频率成分的和。这意味着我们可以将一个函数分解为多个正弦或余弦的和,每个都有特定的振幅、频率和相位。 为了将一个函数分解为傅里叶级数,我们需要先将该函数转换为复指数形式,然后对其进行积分。这样,我们可以得到一组系数,称为傅里叶系数,这些系数描述了每个频率分量的振幅、频率和相位。 通过使用傅里叶变换,我们可以分析许多信号和数据,例如音频、图像和视频。在音频处理中,我们可以使用傅里叶变换将声音分解为不同频率的成分,从而可以进行降噪、音频增强或压缩等处理。在图像处理中,傅里叶变换可以用于检测像素之间的模式或纹理,从而进行图像分割、物体检测等处理。 总之,傅里叶变换是一种非常强大的工具,用于分析和处理信号和数据,它可以将一个函数分解为其基本频率成分的和,从而使我们能够了解和处理信号和数据中的不同模式和特征。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值