傅⾥叶变换的理解(推荐)——三⾓函数形式
我保证这篇⽂章和你以前看过的所有⽂章都不同,这是12年还在果壳的时候写的,但是当时没有来得及写完就出国了……于是拖了两年,嗯,我是拖延症患者……
这篇⽂章的核⼼思想就是:
要让读者在不看任何数学公式的情况下理解傅⾥叶分析。
傅⾥叶分析不仅仅是⼀个数学⼯具,更是⼀种可以彻底颠覆⼀个⼈以前世界观的思维模式。但不幸的是,傅⾥叶分析的公式看起来太复杂了,所以很多⼤⼀新⽣上来就懵圈并从此对它深恶痛绝。⽼实说,这么有意思的东西居然成了⼤学⾥的杀⼿课程,不得不归咎于编教材的⼈实在是太严肃了。(您把教材写得好玩⼀点会死吗?会死吗?)所以我⼀直想写⼀个有意思的⽂章来解释傅⾥叶分析,有可能的话⾼中⽣都能看懂的那种。所以,不管读到这⾥的您从事何种⼯作,我保证您都能看懂,并且⼀定将体会到通过傅⾥叶分析看到世界另⼀个样⼦时的快感。⾄于对于已经有⼀定基础的朋友,也希望不要看到会的地⽅就急忙往后翻,仔细读⼀定会有新的发现。
————以上是定场诗————
下⾯进⼊正题:
抱歉,还是要啰嗦⼀句:其实学习本来就不是易事,我写这篇⽂章的初衷也是希望⼤家学习起来更加轻松,充满乐趣。但是千万!千万不要把这篇⽂章收藏起来,或是存下地址,⼼⾥想着:以后有时间再看。这样的例⼦太多了,也许⼏年后你都没有再打开这个页⾯。⽆论如何,耐下⼼,读下去。这篇⽂章要⽐读课本要轻松、开⼼得多……
嘛叫频域
从我们出⽣,我们看到的世界都以时间贯穿,股票的⾛势、⼈的⾝⾼、汽车的轨迹都会随着时间发⽣改变。这种以时间作为参照来观察动态世界的⽅法我们称其为时域分析。⽽我们也想当然的认为,世间万物都在随着时间不停的改变,并且永远不会静⽌下来。但如果我告诉你,⽤另⼀种⽅法来观察世界的话,你会发现世界是永恒不变的,你会不会觉得我疯了?我没有疯,这个静⽌的世界就叫做频域。
先举⼀个公式上并⾮很恰当,但意义上再贴切不过的例⼦:
在你的理解中,⼀段⾳乐是什么呢?
这是我们对⾳乐最普遍的理解,⼀个随着时间变化的震动。但我相信对于乐器⼩能⼿们来说,⾳乐更直观的理解是这样的:
好的!下课,同学们再见。
是的,其实这⼀段写到这⾥已经可以结束了。上图是⾳乐在时域的样⼦,⽽下图则是⾳乐在频域的样⼦。所以频域这⼀概念对⼤家都从不陌⽣,只是从来没意识到⽽已。
现在我们可以回过头来重新看看⼀开始那句痴⼈说梦般的话:世界是永恒的。
在时域,我们观察到钢琴的琴弦⼀会上⼀会下的摆动,就如同⼀⽀股票的⾛势;⽽在频域,只有那⼀个永恒的⾳符。
所(前⽅⾼能!~~~~~~~~~~~⾮战⽃⼈员退散~~~~~~~)
以(~~~~~~~~~~~~~~~前⽅⾼能预警~~~~~~~~~~~~~~前⽅⾼能~~~~~~~~)
你眼中看似落叶纷飞变化⽆常的世界,实际只是躺在上帝怀中⼀份早已谱好的乐章。
(众⼈:鸡汤滚出知乎!)
抱歉,这不是⼀句鸡汤⽂,⽽是⿊板上确凿的公式:傅⾥叶同学告诉我们,任何周期函数,都可以看作是不同振幅,不同相位正弦波的叠加。在第⼀个例⼦⾥我们可以理解为,利⽤对不同琴键不同⼒度,不同时间点的敲击,可以组合出任何⼀⾸乐曲。
⽽贯穿时域与频域的⽅法之⼀,就是传中说的傅⾥叶分析。傅⾥叶分析可分为傅⾥叶级数(Fourier Serie)和傅⾥叶变换(Fourier Transformation),我们从简单的开始谈起。
、傅⾥叶级数(Fourier Series)
还是举个栗⼦并且有图有真相才好理解。
如果我说我能⽤前⾯说的正弦曲线波叠加出⼀个带90度⾓的矩形波来,你会相信吗?你不会,就像当年的我⼀样。但是看看下图:
第⼀幅图是⼀个郁闷的正弦波cos(x)
第⼆幅图是2个卖萌的正弦波的叠加cos(x)+a.cos(3x)
第三幅图是4个发春的正弦波的叠加
第四幅图是10个便秘的正弦波的叠加
随着正弦波数量逐渐的增长,他们最终会叠加成⼀个标准的矩形,⼤家从中体会到了什么道理?
(只要努⼒,弯的都能掰直!)
随着叠加的递增,所有正弦波中上升的部分逐渐让原本缓慢增加的曲线不断变陡,⽽所有正弦波中下降的部分⼜抵消了上升到最⾼处时继续上升的部分使其变为⽔平线。⼀个矩形就这么叠加⽽成了。但是要多少个正弦波叠加起来才能形成⼀个标准90度⾓的矩形波呢?不幸的告诉⼤家,答案是⽆穷多个。(上帝:我能让你们猜着我?)
不仅仅是矩形,你能想到的任何波形都是可以如此⽅法⽤正弦波叠加起来的。这是没有接触过傅⾥叶分析的⼈在直觉上的第⼀个难点,但是⼀旦接受了这样的设定,游戏就开始有意思起来了。
还是上图的正弦波累加成矩形波,我们换⼀个⾓度来看看:
在这⼏幅图中,最前⾯⿊⾊的线就是所有正弦波叠加⽽成的总和,也就是越来越接近矩形波的那个图形。⽽后⾯依不同颜⾊排列⽽成的正弦波就是组合为矩形波的各个分量。这些正弦波按照频率从低到⾼从前向后排列开来,⽽每⼀个波的振幅都是不同的。⼀定有细⼼的读者发现了,每两个正弦波之间都还有⼀条直线,那并不是分割线,⽽是振幅为0的正弦波!也就是说,为了组成特殊的曲线,有些正弦波成分是不需要的。
这⾥,不同频率的正弦波我们成为频率分量。
好了,关键的地⽅来了!!
如果我们把第⼀个频率最低的频率分量看作“1”,我们就有了构建频域的最基本单元。
对于我们最常见的有理数轴,数字“1”就是有理数轴的基本单元。
(好吧,数学称法为——基。在那个年代,这个字还没有其他奇怪的解释,后⾯还有正交基这样的词汇我会说吗?)
时域的基本单元就是“1秒”,如果我们将⼀个⾓频率为的正弦波cos(t)看作基础,那么频域的基本单元就是。
有了“1”,还要有“0”才能构成世界,那么频域的“0”是什么呢?cos(0t)就是⼀个周期⽆限长的正弦波,也就是⼀条直线!所以在频域,0频率也被称为直流分量,在傅⾥叶级数的叠加中,它仅仅影响全部波形相对于数轴整体向上或是向下⽽不改变波的形状。
接下来,让我们回到初中,回忆⼀下已经死去的⼋戒,啊不,已经死去的⽼师是怎么定义正弦波的吧。
正弦波就是⼀个圆周运动在⼀条直线上的投影。所以频域的基本单元也可以理解为⼀个始终在旋转的圆
知乎不能传动态图真是太让⼈惋惜了……
想看动图的同学请戳这⾥:
File:Fourier series square wave circles animation.gif
以及这⾥:
File:Fourier series sawtooth wave circles animation.gif
点出去的朋友不要被wiki拐跑了,wiki写的哪有这⾥的⽂章这么没节操是不是。
介绍完了频域的基本组成单元,我们就可以看⼀看⼀个矩形波,在频域⾥的另⼀个模样了:
这是什么奇怪的东西?
这就是矩形波在频域的样⼦,是不是完全认不出来了?教科书⼀般就给到这⾥然后留给了读者⽆穷的遐想,以及⽆穷的吐槽,其实教科书只要补⼀张图就⾜够了:频域图像,也就是俗称的频谱,就是——
再清楚⼀点:
可以发现,在频谱中,偶数项的振幅都是0,也就对应了图中的彩⾊直线。振幅为0的正弦波。
动图请戳:
File:Fourier series and transform.gif
⽼实说,在我学傅⾥叶变换时,维基的这个图还没有出现,那时我就想到了这种表达⽅法,⽽且,后⾯还会加⼊维基没有表⽰出来的另⼀个谱——相位谱。
但是在讲相位谱之前,我们先回顾⼀下刚刚的这个例⼦究竟意味着什么。记得前⾯说过的那句“世界是静⽌的”吗?估计好多⼈对这句话都已经吐槽半天了。想象⼀下,世界上每⼀个看似混乱的表象,实际都是⼀条时间轴上不规则的曲线,但实际这些曲线都是由这些⽆穷⽆尽的正弦波组成。我们看似不规律的事情反⽽是规律的正弦波在时域上的投影,⽽正弦波⼜是⼀个旋转的圆在直线上的投影。那么你的脑海中会产⽣⼀个什么画⾯呢?
我们眼中的世界就像⽪影戏的⼤幕布,幕布的后⾯有⽆数的齿轮,⼤齿轮带动⼩齿轮,⼩齿轮再带动更⼩的。在最外⾯的⼩齿轮上有⼀个⼩⼈——那就是我们⾃⼰。我们只看到这个⼩⼈毫⽆规律的在幕布前表演,却⽆法预测他下⼀步会去哪。⽽幕布后⾯的齿轮却永远⼀直那样不停的旋转,永不停歇。这样说来有些宿命论的感觉。说实话,这种对⼈⽣的描绘是我⼀个朋友在我们都是⾼中⽣的时候感叹的,当时想想似懂⾮懂,直到有⼀天我学到了傅⾥叶级数……
下⾯继续开始我们⽆节操的旅程:傅里叶变换公式证明
上次的关键词是:从侧⾯看。这次的关键词是:从下⾯看。
在第⼆课最开始,我想先回答很多⼈的⼀个问题:傅⾥叶分析究竟是⼲什么⽤的?这段相对⽐较枯燥,已经知道了的同学可以直接跳到下⼀个分割线。
先说⼀个最直接的⽤途。⽆论听⼴播还是看电视,我们⼀定对⼀个词不陌⽣——频道。频道频道,就是频率的通道,不同的频道就是将不同的频率作为⼀个通道来进⾏信息传输。下⾯⼤家尝试⼀件事:
先在纸上画⼀个sin(x),不⼀定标准,意思差不多就⾏。不是很难吧。
好,接下去画⼀个sin(3x)+sin(5x)的图形。
别说标准不标准了,曲线什么时候上升什么时候下降你都不⼀定画的对吧?
好,画不出来不要紧,我把sin(3x)+sin(5x)的曲线给你,但是前提是你不知道这个曲线的⽅程式,现在需要你把sin(5x)给我从图⾥拿出去,看看剩下的是什么。这基本是不可能做到的。
但是在频域呢?则简单的很,⽆⾮就是⼏条竖线⽽已。
所以很多在时域看似不可能做到的数学操作,在频域相反很容易。这就是需要傅⾥叶变换的地⽅。尤其是从某条曲线中去除⼀些特定的频率成