引言:傅里叶变换作为信号分析的入门技术,它不仅仅是信号时域表示和频域表示间转换的钥匙,傅里叶变换与傅里叶级数本身蕴含的数学思想深刻地诠释了数学是解决问题的工具这一句话。写本篇文章的初衷是想帮助那些对傅里叶级数和傅里叶变换有了初步了解,但是还想明白这些公式定理是怎么定义推导得来的,以此加深理解记忆的朋友。为了尽可能地让所有人都能理解,所以内容会显得比较啰嗦。本篇文章全部内容主要来自本人一时兴趣使然的学习整理和思考,对于相关专业文献的查阅也相对有限,如果有一些专业性的错误或者问题也请大家指正,也欢迎大家在评论区友好讨论。
简要介绍
傅里叶变换是什么?简而言之就是认为所有的波都可以用多个正弦波叠加表示。由下图所示,傅里叶变换提供了一种从时域到频率域的变换规则。在一个周期内绝对可积的周期信号可以用傅里叶级数来表示,在无限区间内绝对可积的非周期信号可以用傅里叶变换来表示,它们分别解决了周期信号和非周期信号的时-频域变换问题。
在弄明白傅里叶变换前,我们先搞明白傅里叶级数,这对我们理清思路很重要 。
傅里叶级数
傅里叶认为:任何周期信号都能够由不同谐波的正弦波叠加而成。基本思想可以概括为:对于一个周期为的周期信号
。其中基波的角频率为
,我们可以将
这个周期信号视作是由若干个角频率为
(n为整数)的简谐信号按照一定规则线性加权组合而成的:
从上式我们看到其中各次谐波成分的信号幅度各不相同,所以傅里叶级数展开的关键步骤是找到组成信号的各个谐波分量的成分系数,如何得到谐波的系数?既然谐波组成原信号的方式是线性的,那么找到谐波信号和原信号之间的线性关系就是关键。如果是学过信号分析的会知道一个叫做互相关函数的东西,在时域上对两个连续时间信号乘积进行积分,得到两个时间信号之间的相关度,它能定量表示两个信号之间的线性相关程度,最后在互相关函数的基础上设置合适的系数就能让最终得到的结果为谐波成分的幅度,傅里叶级数的公式正是基于该思想:
我们代入方程就能得到各次谐波的信号幅度(即系数)。是n次谐波余弦信号的系数,
是n次谐波正弦信号的系数,于是
则可以展开为:
从这个公式中我们大致能看出一点信号的物理特征了,a0/2是信号中的直流部分,后面部分是信号中的交流部分,此时各次谐波用sin和cos这一组正交的三角函数来表示。
交流部分每一谐波信号我们都得用cos和sin两个函数来表示,能否更加简洁直观一点呢。我们都知道sin和cos是彼此正交的,频率为ω的的任何简谐信号(即体现为相位不同)都可以由这两个正交信号按照不同的线性组合来表示:,于是傅里叶展开还可以表示为:
这种归一化后的格式,我们可以更加直观看到交流成分的特点,
是k次谐波的幅度系数,
是k次谐波的相位,幅值和相位是组成信号的谐波最重要的信息
既然我们提到了三角函数中我们用彼此正交的sin和cos来组合构造不同相位的三角函数,那聪明的数学家就想到了另外一种表示方式,也是我们常用到的一种方式——指数形式:
从前面计算
的公式和指数形式的公式可以看到都在用时域信号和周期信号进行积分,用这种方式来求得两个信号函数间存在的线性关系,说通俗易懂一点,就是我们求信号
和周期简谐信号之间的相关度,从而得到简谐信号的成分系数。傅里叶级数和傅里叶变化都是利用了这种相关函数的思想。
我们看到指数形式下k的取值范围包括负半轴,负频率在物理上是不存在的,但是在数学上是允许存在的,此处引入负频率是为了公式的定义和理解的方便。我们可以看到指数格式的公式是在求信号函数对
的互相关(注意求相关的时候如果对象是复函数的时候积分对象要取其共轭,这就是为什么公式中用的是
,至于为什么我们后面说明)。表达的方式不同但最终实现的目标是一致的,我们可以用
来表示
和
。至于为什么我们选择使用复变函数
求相关,因为它具有简洁便利的优点,我们利用欧拉公式可以得到:
我们都知道sin和cos是彼此正交的三角函数。而复平面中,实轴和虚轴是正交的,所以我们用虚轴表示与sin的相关关系,实轴表示与cos的相关关系,数学家巧妙地把三角函数的正交关系映射在复平面的正交轴上了。因此同时包含正交三角函数二者的可视为一组“正交函数集”,于是我们利用一个复变函数
就可以表示频率为ω的简谐信号的信息。
有了以上的基本了解,那么我们来思考第一个疑问:为什么求与
的相关关系的时候用的积分对象是其共轭
,或者说为什么虚部是用-sin。
Q1:为什么指数形式下公式的积分对象是其共轭?
对于实信号函数而言,求与另一个实信号的相关那就是直接与其积分,而与复函数的相关就是取其共轭函数再积分,我们虽然知道互相关函数的定义就是如此,但是为什么呢。我们将指数形式的傅里叶级数公式展开:
显然最后得到的是一个复数结果,实部是与求相关的结果,虚部是与
求相关的结果,结果分别用
和
来表示:
,观察上式的实部和虚部,显然还有:
,
。
用以表示
成分的系数这一点没有太大疑问,
是
成分的系数,但是为什么是-sin而不是sin呢?为什么数学家要多加一个负号呢。需要注意!我们为了在函数计算中区分两个互相正交的成分的系数选择了用复数来表示,所以进行求相关的时候是借助复数的实部虚部来分别表示二者。但在用谐波信号来表示原信号的时候,我们也要用这个复数格式的相关值F(k)作为“正交信号集”
的成分系数,这一步“合成”原本的时域信号的过程依然是在复数域上进行的,而复数的虚部相乘会有j·j=-1的情况,是不是有点头绪了?
我们来演示一下,公式定义是F(k)表示的是成分的系数,但假如我们不知道,,我们假设F(k)是
的系数,用得到的相关系数F(k)与
成分进行谐波成分的还原:
我们发现了问题,我们观察实部,变成了
成分的系数,这与我们前面判断的结论(
是
成分的系数)相悖,发生了错误。符号之所以发生了颠倒,正是因为虚部相乘的同时伴随虚数的相乘产生了-1,所以我们在求系数的时候对虚部额外添加了一个负号,导致求F(k)的时候使用的是
的共轭,所以F(k)应当是
的系数。
我们已经知道怎么使用F(k)复原时域信号了,用F(k)与相乘就能得到k次谐波分量,最终合成原时域信号,这也被称为时域信号f(t)的傅里叶级数展开:
指数形式的傅里叶级数非常简洁明了,且频率范围包含了负数域。
那么下一个问题就是,为什么会有负频率,数学上引入负频率的意义是什么?
Q2:指数形式中为什么会有负频率?
根据上面得到的结论,我们用F(k)和相乘得到谐波分量:
我们可以看到实部上,
是
的系数,这是正确的。
但是我们知道实际工程上的信号是实信号,复信号是理想的数学产物,实际中不存在也不可能产生复信号,引入复信号是为了分析物理量时更便于理论分析。而上式多出来了虚数部分,这显然不是我们得到的谐波信号,我们该怎么消除它们呢?根据欧拉公式的对称消除特性:
所以我们把视线放到对应的负频率上,显然有:
那么,由F(-k)和组成谐波就是:
此时把对应的正负k次谐波加起来,我们发现虚部正好被完全消除,再由前面得到的 ,
,我们可以得到:
这与三角函数形式表示的k次谐波完全一致了
由此我们可以找到了傅里叶级数的指数形式和三角函数形式的联系,可以由此来互相转换:
所以我们知道了为什么物理上不存在负频率,但是数学上允许存在负频率。这是因为在指数形式下,负频率的存在可以消除因复指数来表示傅里叶级数时产生的多余的虚数部分,其工作原理就和欧拉对称相消类似。
重要性质补充:
通过前面的讨论,我们再次列出F(k)和F(-k)的公式并观察,我们可以得到一条很明显也很重要的结论:当f(t)为实信号的时候,F(k)与F(-k)是共轭的。这意味着如果把指数形式傅里叶级数看作一个函数的话,那么它就是一个共轭对称的函数(实部为偶函数,虚部为奇函数)。
傅里叶级数分解演示
我们已经知道傅里叶级数的实现原理—— 利用互相关函数求解谐波系数,看完以上的应该都能理解以下四条结论:
- 不同频率的正弦信号之间不存在线性关系,所以二者间的互相关为0。互相关函数能提取复杂信号中同频的正弦信号的信息。
- 傅里叶级数的不同表示方式本质是一致的,不管是指数形式还是三角函数形式。
- 负频率和复信号在现实中并不存在,但它们可以作为理论分析的工具而存在,且十分有用。
- 组成周期信号的谐波的信息主要为体现为幅值和相位,傅里叶级数提取得到的正是二者。
为了对以上的内容有更深刻形象的理解,我们来结合实际的例子来看。假如现在有一个实际的周期信号,我们对它做傅里叶级数分解,由于结论1,可知f(t)不存在高次谐波:
①如果用三角函数形式:
通过傅里叶级数,我们知道了f(t)是由倍的
和
倍的
组成的
正确的,符合合角公式
②如果用指数形式来表示:
我们得到了系数,接下来验证:
符合,得证,且指数表示法可以更加直观的看到成分谐波的幅值、相位信息。我们可以用图来表示,我们将得到的F(1)和F(-1)在复平面上画出来:
前面补充结论部分也说了,当信号为实数信号时,傅里叶级数的函数呈现共轭对称特性,指数形式下的正负次谐波系数呈共轭关系,具体体现为幅值偶对称,相位奇对称(重要结论,这对绘制频谱图非常重要)。
频谱图
通过以上的介绍,我们认识了傅里叶级数是怎么将一个周期信号分解成若干个拥有不同幅度和相位的谐波信号。而频谱图将得到的频谱数据能以图形方式表示,通常使用频谱图显示信号在不同频率上的能量分布,相位信息等
为了方便理解频谱图的概念,我们以一个占空比为50%的周期方波信号f(t)做分析为例
其中T满足 ,我们对f(t)进行计算傅里叶级数:
我们得到一个非常美观的结果,结果全是实数。我们根据取值点绘制频谱图,反映谐波幅度和频率的关系的叫做幅频关系图,反映谐波相位和频率的关系的叫做相频关系图。幅值就是F(k)的绝对值,相位就是把F(k)转换成复指数形式,指数值就是相位,但由于此信号的傅里叶级数结果全为实数,意味着谐波信号不存在复杂多变的相位,都是0或是π、-π相位,由于f(t)为实信号,相频图一定是奇函数,所以我们可以绘制得到频谱图,第一张是幅频关系图,第二张是相频关系图
实际上我们还可以想到,当F(k)全是实数的时候,意味着没有虚部,也就是说组成成分中没有sin成分(当然用傅里叶级数的三角函数形式也可以得到bn恒等于0)。这很好解释,因为f(t)是偶函数,所以拆解成分的时候其成分也全是偶函数cos
为了对频谱的物理涵义有更深刻的理解,我们还可以看下图
傅里叶变换
傅里叶级数采用了求相关函数的思想,提取组成周期信号的直流、交流成分的信息,而傅里叶变换继承了这种思想,并在此基础上进行了拓展,将应用扩展到了非周期信号上,所以我们可以在傅里叶级数的基础上去认识傅里叶变换。由于不存在周期信号限制,所以傅里叶变换函数的积分定义域为全实数域,且求相关的频率不再局限于固定的谐波频率上,转而对所有频率都进行相关性分析,那么比起傅里叶级数得到的是精确的离散成分的成分系数,傅里叶变换可以得到连续频谱,且得到的数值不再代表成分的精确系数,但是其大小能反映原信号在各频率段的能量分布,傅里叶正变换完成了信号从时域到频域的变换,公式:
至于如何从频域转换为时域,与时域周期信号的傅里叶的级数展开相仿,由于是连续频谱,所以由求和变为积分,我们就能得到傅里叶反变换公式:
傅里叶正变换:时域——>频域
傅里叶反变换:频域——>时域
好奇的朋友可能会疑问为什么反变换会有一个的系数,这是我们反变换积分用的频率是角频率的缘故,我们都知道傅里叶变换是时域和频域间转换的钥匙,但是时间和频率之间对应的单位应该是
和
,公式
构成了时间和频率之间的联系,而
是角频率,数学上它等于频率
乘上一个
,如果我们用时间频率的格式来书写傅里叶正反变换就豁然开朗了:
时间频率的写法会更加美观,正反变换公式之间具有对称性。在表示频谱函数时,用频率f表示和角频率ω表示,并不存在本质上的差异,两种表示方式各有优劣,两种格式可以进行互相转化,只要时间频率和角频率的值进行对应即可(但有冲激函数时要注意,下面会讲)
傅里叶变换的定义和公式我们已经有了,接下来也产生了一些疑问:比如说傅里叶变换有什么前提条件吗?什么样的信号才存在傅里叶变换?
Q3:傅里叶变换积分值无穷大的问题&傅里叶变换如何表示周期信号
相比傅里叶级数公式,傅氏变换的最大特点就是积分区域从一个时间周期变为无穷了,对于一些有限信号还好说,那么对于无限长信号,比如说周期信号,积分结果就会使无穷大,该怎么处理呢?
答:信号存在傅里叶变换的充分不必要条件就是狄利克雷条件,其中一条是信号在周期内要绝对可积,对于那些无限长的非周期信号,自然不满足这条前提,但是对于满足狄利克雷条件的周期信号是可以进行傅里叶变换的,即使它看起来会导致某些点的值变得无穷大。
以周期信号作为分析对象,假设现存在信号
,对该信号进行傅里叶正变换:
假设的傅里叶变换结果为
,则上式结果为
。此时令
,则
应该满足如下的傅里叶反变换:
很容易想到我们可以利用奇异函数中的单位冲激函数,单位冲激函数的特点就不在这叙述了,利用冲激函数,我们可以得到傅里叶变换结果:
。当
时,
的频谱函数就是
,所以在频谱上进行平移,我们可以得到
频谱图如下所示:
对结果进行傅里叶反变换验证:
验证正确。
上面用的是角频率格式的傅里叶变换,我在这里要特别讲一下时间频率格式,因为引入了冲激函数,导致这里比较容易产生写法混乱。
时间频率格式的傅里叶反变换:
的角频率格式傅里叶变换结果是
,所以写成时间频率格式的结果就是
,但是我们看到的一些书和教材往往是写作
,这两个看起来完全不是一个函数,为什么都可以呢,我们列式验证:
可以去计算,会发现这两个式子都是对的,为什么呢?我们可以从几何角度去理解,我们知道冲激函数与任意函数一起积分具有数据选择的功能(如下图)
选择的实现是因为δ(x)的图像与坐标轴之间组成的封闭图形面积为1,由于δ(x)在x=0处产生的冲激波形可以看作一个宽度无限趋近于0,高度趋于无穷的“矩形”,与其相乘积分的函数y(x)在积分域(0-~0+)就是一个固定的数值y(0),从而实现函数y(x)在x=0时的数据选择。这里的关键是冲激函数部分积分宽度趋于0,积分面积为1
那我们再看时间频率格式下的这两种写法为什么都对呢:
完成数据选择很好理解,f=f0时进行选择,此时函数
的值为
而
,依然是在f=f0时进行选择,但是与前者区别是,括号内乘了2π的系数,这意味着“矩形”宽度变窄了2π倍,为了保证“矩形”的面积仍然为1,高度就要乘2π。
时间频率格式一般更推荐第一个这种简洁的写法
而我们在面对实际信号时,比如说带有和
这样的实周期信号,这些周期信号进行傅里叶变换得到的结果是与傅里叶级数得到的是相似的,只是在频谱上相应的频率处留下的是冲激函数,如下所示:
由傅里叶变换得到的频谱图如下:
我们由此可以得到一个可供速记的结论公式,如果有一个周期信号,其傅里叶级数为
,那么
傅里叶变换得到的频谱函数
(以角频率格式为例)就是:
总结:在借助了奇异函数后,可以通过傅里叶变换来得到满足狄利克雷条件的周期信号的频谱函数了——用冲激来表示频谱函数谐波频率处无穷大的积分结果,因为单位冲激函数本身就具有“无穷大”的概念。
重要特性1:对称互易性
我们再来观察一下时间频率格式下的傅里叶正反变换公式:
我们可以观察到正反变换之间的对称性,我们不禁思考,一对满足傅里叶变换对的时域频域函数,我们对其自变量进行互换,它们仍然可以具有对应关系。这种性质叫做对称互易性,它用时间频率格式和角频率格式分别可以写作:
对称互易性能大大缩减我们记忆傅里叶变换对的记忆量,因为所有在频域的函数,转换到时域波形,又可以对应另一个傅里叶变换对,在背公式时利用这个规律也可以令记忆效率翻倍
证明如下:
傅里叶正变换为
由于正反变换积分区域都是,于是调换自变量,再进行代换构造出反变换格式:
所以有,时间频率格式下的证明同理,所以略
使用例:
我们对傅里叶变换对称互易性进行实例演示,我们就取常用的矩形波为例,设有时域信号,其频域函数为
,时域信号定义如下:
我们通过傅里叶变换可以得到其频域函数: ,计算过程简单,略
我们用Matlab对图像进行展示,这是一个偶函数:
假设现在有一个理想低通滤波器,其截止频率为
,其频率特性如下图所示:
而这个低通滤波器的频率特性所对应的时域函数就是其冲激响应,我们可以通过对称互易性,快速得到理想低通滤波器
的冲激响应
(
与
对应替换,t和-f进行调换即可):
由于Sa函数是偶函数,所以最终可以写作:
*这个函数也叫做内插函数,非常有用,可以用来恢复抽样信号
推论1:由傅氏变换的对称性产生的对周期性与离散性之间联系的推论与证明
傅里叶变换具有对称互易性,加上前面所得到的结论:时域上周期的信号,其频谱是离散的,那我们是不是可以得到一个启发 ,大胆推测:一个时域离散的信号,其频谱是周期的!
这个推论很容易证明,用对称互易性就能快速证明,所以这里我打算换一种证明方式:
假设有一个时域连续信号,其频谱函数为
。现在定义一个冲激序列函数
作为抽样脉冲,其抽样周期为
我们受用冲激序列对连续时间信号
进行采样,获得离散的理想采样信号
,离散信号
如下图:
想得到的频谱信息,我们对抽样信号
进行傅里叶变换:
发现直接计算有点不好操作,于是我们先研究冲激序列,它是一个周期信号,我们可以对其进行傅里叶级数展开:
于是的傅里叶变换可以计算了,假设连续时间信号
的频域函数为
:
这样,我们就证明了离散时间信号 的频谱具有周期性,令采样角频率
为
,由函数可知
就是以
为周期的,频谱图如下:
离散采样信号的频谱是原时间连续信号x(t)的频谱的周期延拓。同时观察图像,如果采样频率大于两倍的截止频率(带宽)
,那么周期延拓的频谱之间不会发生混叠,意味着之后我们可以完全分离从而复原,不会丢失信息。如果采样频率不满足于大于连续信号最大频率的两倍的条件,那么就会导致频谱发生混叠难以恢复,这就是奈奎斯特抽样定理。
*而这以上的推导和结论就是DTFT(离散时间傅里叶变化)的性质,这也是数字信号处理的基础。
通过对时域频域间周期性、离散性之间存在的联系的分析,我们可以总结处这样的一张图:
重要特性2:卷积定理
接下来我们思考另一个问题,就是在工程运用中,频域和将时域又怎样联系起来,又该怎么利用频域分析理解系统对时间信号的加工。
线性时不变(LTI)系统是最基础也是最重要的信号系统,假设有这么一个LTI系统,输入信号是x(t),输出信号是y(t),我们会思考,在系统中,x(t)究竟经历了什么样的变化才变成了y(t)。
对于一个LTI系统而言,它的系统函数是,其中
部分我们称为系统的幅频响应,
部分我们称为系统的相频响应,它们分别表示系统对不同频率的输入信号产生的幅度反馈强度和相位改变。
如果输入信号的频谱是,输出信号的频谱是
,输入信号
经过系统,则
中各频率信号的幅度就要按照幅频响应强度发生变化,各频率信号的相位就要按照相频响应部分发生变化,这种变化就是系统对信号的“加工”,输出信号的频谱函数就是输入信号频谱与系统函数的乘积:
系统对信号的加工在频域上的表现就是乘法关系
那么一个信号经过系统,其时域发生了什么样的改变?时域分析的思路是什么呢?肯定不是时域信号的简单相乘了,因为信号的不同时间处不像频域分析时那样,不同频率间相互独立(不存在相关性),我们讨论一个时刻的信号输出,往往都和上一刻,或之前的信号是有所相关的。
当系统输入信号是单位冲激信号
时,则系统输出的响应信号就是冲激响应
,我们知道此时
,则
,那么满足
,所以冲激响应
与系统函数
是一对傅里叶变换对。而冲激响应可以看作是LTI系统对输入信号实现“加工”手段的时域表现形式。假设LTI系统的冲激响应
如下图:
系统对时域信号的加工是怎么体现出来的,通俗的来说:冲激响应展示了系统对一个输入的瞬间信号产生的反馈,我们可以把一个任意的时域输入信号s(t)的每一个时刻都看作一个瞬间信号,那么每个时刻的信号都会产生一个对应的冲激响应,而在输出端不同时刻产生的冲激响应的叠加就形成了我们的输出信号。
假设现在有输入信号,我们尝试讨论一下在
时刻的系统输出信号
大小:
由于冲激响应 的拖尾长度为
,那么我们讨论
时刻的
,会对该时刻输出产生影响的
最早可以追溯到
时刻,这时刻的输入信号产生的响应的拖尾恰好在
时刻达到相应的末端,也就是说,在
时刻的系统输出值
会受到在时间区间为
内
输入信号的影响,这区间就是相关时间区间。如上图所示,在相关的时间区间内的每个时刻对
处的值由
和
共同决定(如图中绿线所示)。最终的
值由相关时间区间内的响应积分得到:
这就是卷积,所以时域分析上满足卷积关系,记作:
系统对信号的加工在时域上的表现就是卷积关系
所以对于LTI系统,输入输出信号满足以下关系:
所以我们能得到一个重要的结论,卷积定理,也是信号与系统中的核心定理——
时域卷积等效于频域乘积
由之前的对称性,我们还能得到时域乘积等效于频域卷积的推论!
这个结论我们也可以通过数学来证明:
我把卷积定理的公式整理在下面表格中:
设:,
,
时间频率格式 | 角频率格式 | |
---|---|---|
时域卷积=频域乘积 | | |
时域乘积=频域卷积 | | |
ps:于是我们也可以利用卷积定理来证明前面的离散时域信号的频谱是周期的结论:
以上我们对傅里叶变换的技术原理和的一些重要的特性有了一定的掌握了,除了对称互易性、周期和离散的关系和卷积定理外,我们接下来继续介绍并证明几个重要的性质。
重要特性3:时移(延时)特性
重要特性4:频移特性
重要特性5:尺度变换
重要特性6:时微特性
这一特性表明,时域的微分运算对应于频域乘以jω因子,相应地增强了高频成分。
重要特性7:时积特性
该性质表明,时域的积分运算对应于频域乘以1/jω因子,相应地增强了低频成分,减弱了高频成分。
重要特性8:频微特性
重要特性9:频积特性
本篇分享结束,谢谢阅读!