傅里叶入门--只要肯努力,弯的都能掰直

记得以前有门课程,有这么一个说法:任何周期函数,都可以看作是不同振幅,不同相位正弦波的叠加。

咳咳。。。

举个栗子,某函数有如下图示形状:

傅里叶入门--只要肯努力,弯的都能掰直_第1张图片

可以由多个形状如下的波形叠加合成。

傅里叶入门--只要肯努力,弯的都能掰直_第2张图片

咋一看,一想,不合理呀,一种弯曲丰满的的曲线怎么会合成横平竖直的直线呢?多个曲线相加莫非就是变高、变宽、变陡或变缓,也不至于平了吧。小学老师告诉我一只羊加一只羊等于两只羊,我信了,但是现在告诉我两只美羊羊加3只懒羊羊等于熊大,我不信!

这是我开始的想法,估计大家也是有和我一样的想法。

当今美颜相机、声音控制、变音、图像识别等对大家都不陌生了,这些图片处理、声音处理等技术,或多或少用到了一种叫做傅里叶变换的东东。想想这是以前课堂里东西呀,情不自禁回忆以前的学校生涯,课堂经常玩手机,懒,学的差,混得low。黑板前那不厌其烦的讲课,说的虽然是汉语但听得比巴基斯坦语还艰难的老师,现在深刻体会到他写的每一行字,说的每一句话都是对的。

出来混,早晚都要还的。想把以前忽略过的东西温习一遍,就当是一次回忆了,顺便练练手,说不定哪天又用到了。

额嗬。。。咳咳。。。以上是无关紧要的叙事。

回到刚开始的问题,在书本上有这么一个公式:

<本文涉及的公式截图来自书籍《实用数字信号处理:从原理到应用》作者:StevenW.Smith>

(大家不要太纠结公式的符号是什么意思,我摆在这只是为了直观的说明问题,不影响本文的讨论内容)

什么意思尼?

用开局第一个图的矩形波为例,这个时域波形有 N=200个信号点。

结合上面公式得出通俗的表达:

200个点组成的矩形波=101个点组成的cos曲线的叠加+101个点组成的sin曲线叠加。

接下我们就开始以轻松愉快的方式来验证这个问题。

怎么个轻松法,比如当成这是一个是真的吗的题目,节目开始:

傅里叶入门--只要肯努力,弯的都能掰直_第3张图片

我们开始来讨论这个是真的吗的问题。

要求得这些曲线还需要一个公式:

傅里叶入门--只要肯努力,弯的都能掰直_第4张图片

这个公式简单理解就是求得每个曲线的振幅。

不同的曲线有不同的振幅,这些曲线就像是声音,不同振幅和不同的频率的声音构成动听的乐章,只是本文的乐章是一个矩形。

做饭的锅,灶已经准备好, 开始炒菜了。

先来把 cos 曲线下锅。(cos 部分在书本里被称为实部)

<下面合成动态图中:绿色代表cos曲线, 蓝色代表上次合成后的线, 红色代表本次叠加结果的线>

开始先用慢火,看先前10 条线合成的过程:

傅里叶入门--只要肯努力,弯的都能掰直_第5张图片

(⊙o⊙)… 是慢慢有点有矩形的样子,但是还是不够像,这菜还不够熟,接下来就火力全开,让子弹飞一会儿。

准备!

action!

101 个曲线能合成:

是不是有点惊讶!肉眼很难看出和矩形的差别了。现在仅是101 条线,你想想如果是无穷个相加那不就是90度的直角了吗。

只要肯努力,弯的都能掰直。真的不是我乱说的,而是有依据的。

细心的人可能会发现有很多y=0的直线,这不是我滥竽充数随便加的,而是公式求出来的振幅就是0。 还有开篇第一图中间部分信号值是200, 怎么曲线叠加之后是50了,这我也真不知道了,我按照书本做就是这样的结果,如果你知道那就告诉我呗。  

书本上告诉我们这些曲线构成了该信号的频域。 什么?你问我画出来是什么样子。

还是先来看刚才前10条曲线的频谱图:

傅里叶入门--只要肯努力,弯的都能掰直_第6张图片

这个图和大家学过的书本上的图很类似,感觉像是体育课上从高到低排列队伍的样子。

还是看不懂?

我开始也是看不懂这个图和前面10条曲线有什么关系, 后来知道变通了,原来这个图是旋转而来的。

怎么转,如下:

傅里叶入门--只要肯努力,弯的都能掰直_第7张图片

旋转结束后,每条曲线的振幅值对应上面的小圆点的值。

全部的101个曲线组成的频谱图如下:

傅里叶入门--只要肯努力,弯的都能掰直_第8张图片

这个看着像啥尼,好像啥也不像 ̄□ ̄||

上面的cos 部分的曲线叠加就说完了。

认真的同学提到了还有sin 部分(在书本上也叫虚部)的曲线没有说。

sin 部分不再细讲,只展示结果,其叠加结果如下图:

傅里叶入门--只要肯努力,弯的都能掰直_第9张图片

我也看不出这个有什么作用,好像可有可无,无非和前面实部叠加成的矩形波加起来稍微一点更像矩形。

它的频谱图尼是这样子的:

傅里叶入门--只要肯努力,弯的都能掰直_第10张图片

<以上波形图片、动画涉及到的计算方法都是我一行一句用代码写的,如果想看相关的函数计算可以参考参考。有点low,有兴趣的可以去吐槽一下>

代码连接:   https://download.csdn.net/download/shaynelee8/10866726 (配合《实用数字信号处理:从原理到应用》作者:StevenW.Smith,第8章:离散傅里叶变换》来看)

最后。

宣布本期节目的问题: 多个正弦波可以叠加成矩形波。 是真的吗?

答案: 是真的!!!

你可能感兴趣的:(数字信号处理)