傅里叶变换(一):周期信号的傅里叶级数

Junity 发布于 29 天前 127 次阅读


AI 摘要

傅里叶变换不仅是数学的奇迹,更是信号处理的核心。通过将复杂的时域信号转化为频域表示,我们以更直观的方式解码了信号的内在特征:每一个频率的强度与变化的关系。这篇文章将带你深入了解傅里叶级数的构建原理,正交性的重要性,以及狄利克雷条件如何确保任何周期信号都能被准确量化。无论是音频信号还是其他波形,傅里叶变换都将为你揭示其背后的秘密。

傅里叶变换是将信号从时域变换的频域的变换。

时域与频域

时域描述了信号在时间上的变换,例如,声音信号的时域描述了声压随时间的变化;而频域则描述了信号在频率上的变化,例如将声音信号从时域变换到频域后,我们可以知道声音在各个频率上的强度。频域实际上给了我们另一种看待信号的视角。

函数的内积

将离散信号看作是是向量,那么两个信号在区间 [a,b]的内积可以看作是这两个向量的内积:

f,g=i=abf[i]g[i]

把同样的定义推广到连续信号上,可以得到连续信号内积的定义:

f,g=i=abfigi

不难发现,函数的内积满足交换律和分配律。在这个基础上,可以定义函数的正交性。如果两个函数在某区间上的内积为0,则称这两个函数在这个区间上正交。

这时有一个非常重要的结论:对于两个频率之比为有理数的正弦函数,他们正交的条件是频率不同或频率相同但是相位差为 π2 的奇数倍。即 sin(a1x+b1),sin(a2x+b2)=0 的条件是 ab ,或 a=b 但是 b1b2=(2k+1)π2,kZ 。证明如下:

Lsin(a1x+b1)sin(a2x+b2)dx=12L[cos((a1a2)x+(b1b2))cos((a1+a2)x+(b1+b2))]dx

其中, L 是两个正弦函数的一个公共周期,这里的 L 指在任意周期区间上积分。当 a1a2 时,积分中的两个cos 函数在周期区间上积分为 0,故此时整个积分为 0 ;当 a1=a2 时,积分的结果变为:

12L[cos(b1b2)cos((a1+a2)x+(b1+b2))]dx=12Lcos(b1b2)dx

因此当 b1b2=(2k+1)π,kZ 时,原积分为 0 。根据这个结论,我们很容易得到一个推论,即下面的函数在任意周期区间上相互正交:

1,sinωx,cosωx,sin2ωx,cos2ωx,...,sinnωx,cosnωx

傅里叶级数与狄利克雷条件

既然上面的函数系是相互正交的,那是否能作为函数的一组基底来组成并表示任何函数呢?更形式化一点,是否任何周期函数都能写成下面的形式呢:

f(t)=a0+(a1cosωt+b1sinωt)+(a2cos2ωt+b2sin2ωt)=a0+n=1ancosnωt+bnsinnωt

其中 ω=2πT 是这个函数的基波频率(最低频率)。上面的级数叫作傅里叶级数。之所以希望将函数写成这种形式,是因为这种形式可以清晰地看出函数在各个频率上的分解。例如,如果级数中有一项为 3cos4ωx+0sin4ωx,那我们可以知道这个信号中频率为 4ω 的部分强度为 4

这个问题的答案由德国科学家狄利克雷于1829年找到并证明。具体来说,如果一个函数满足以下三个条件(称为狄利克雷条件),那么它就可以被写成傅里叶级数的形式:

  • 绝对可积性:这个函数在一个周期内绝对值的积分必须有限,即 T|f(x)|dx< 。这一条件保证了函数的“能量”有限,避免发散。
  • 有限个极值点:函数在一个周期内只能有有限个极大值和极小值。这排除了无限振荡的函数(如 f(x)=sin(1x)x0 附近的行为),确保函数变化不过于剧烈。
  • 有限个第一类间断点:函数在一个周期内允许存在有限个第一类间断点(即左右极限存在但不相等,或存在可去间断点)。例如,方波信号在跳变点处满足此条件,但若有无穷多个间断点(如狄利克雷函数),则不满足。

通过辅助角公式和复指数函数,傅里叶变换还能写成下面两种形式:

f(x)=a0+n=1ansin(nωx+θn)f(x)=n=anenωxj

周期函数的傅里叶变换

现在讨论如何求出这些系数。对于 a0 而言,我们知道后面的级数在任何周期区间上的积分都是 0 ,所以有 Ta0dx=Tf(x)dx ,那么 a0=1TTf(x)dx

那如何求出剩下的系数呢?我们已经知道的事实是,1,sinωx,cosωx,sin2ωx,cos2ωx,...,sinnωx,cosnωx 之间是相互正交的,而傅里叶级数正好是由这些项组成的。因此,只需要求函数与 sinkωxcoskωx 的内积,就可以消掉其它项,剩下 Takcos2kωxdxTbksin2kωxdx 。以cos 为例,就有了:

Tf(x)cos(kωx)dx=Takcos2(kωx)dx

因此 ak 的值就是:

ak=Tf(x)cos(kωx)dxTcos2(kωx)dx=2Tf(x)cos(kωx)dxT(1+cos2kωx)dx=2TTf(x)cos(kωx)dx

这样,coskωx 就像一个个滤波器,滤出了各个频率上的分量。至此我们就得到了各个系数的表达式:

a0=1TTf(x)dxan=2TTf(x)cos(nωx)dxbn=2TTf(x)sin(nωx)dx

如果降低一点直观性,采用傅里叶级数的复指数形式有更加简洁的过程和更加统一的结果:

f(x)=k=akekωxjan=1TTf(x)enωxjdx

下面来推导这个公式。
首先,函数 ekωxjenωxjkn 时正交,因为:

Te(kn)ωxjdx=Tcos[(kn)ωx]+jsin[(kn)ωx]dx={Tk=n0kn

仿照之前的思路,将 f(t)=k=akekωxj 左右同时乘上 enωxj 并积分,可以得到:

Tf(x)enωxjdx=k=Take(kn)ωxjdx

考虑右侧求和中每一项积分的值:

Take(kn)ωxjdx={akTk=n0kn

所以:

an=1TTf(x)enωxjdx

周期函数傅里叶级数的性质

把信号分解为傅里叶级数的过程看作是一个变换,记作 FS 。为了叙述的方便,下面我们采用傅里叶级数的复指数形式,即 f(t)=n=anenωxj 。那么,FSf(t) 变换到 an,记作 f(t)FSan 。为了强调在变换前f 的自变量是时间,从这里开始我们使用 f(t) 而不是 f(x)

线性

FS 是线性的,这意味着如果:

f(t)FSang(t)FSbn

那么

(f(t)+kg(t))FS(an+kbn)

时移性

当信号 f(t) 发生了一个时移,即 f(t)f(tt0) 时,新信号的傅里叶级数 an 的表达式为:

an=1TTf(tt0)enωtjdt=enωt0j1TTf(tt0)enω(tt0)jdt=enωt0jan

也就是说,时移会使得傅里叶级数同时乘上 enωt0j ,但每个系数的模长都不变。

时间反转性

当信号 f(t) 在时间上发生了反转,即 f(t)f(t) 时,新信号的傅里叶级数为:

an=1TTf(t)enωtjdt=an

这里积分中指数函数幂部分变号是因为积分区间也发生了改变。如原来是在 (a,b) 上求的积分,现在需要在 (b,a) 上求。

所以:

f(t)FSan

相乘性质

如果两个信号相乘,得到的新信号的傅里叶级数是原信号傅里叶级数的卷积,即:

f(t)FSang(t)FSbnf(t)g(t)FSk=akbtk

在离散情况下,这个性质还可以归纳为 时域乘积,频域卷积;时域卷积,频域乘积

帕塞瓦尔定理

帕塞瓦尔定理可以通俗地表达为:一个周期信号的平均功率是各频率上分量的平均功率之和 。形式化地说,我们有:

1TT|f(t)|2dx=k=|ak|2

离散周期信号的傅里叶级数

在上面的内容中,我们得到了最原始的傅里叶级数。但这个结论还不够好,因为它存在许多限制,例如要求信号是连续的、周期的。所以还需要将它推广到更一般的情况下。我们首先将其推广到离散周期信号上。

考虑一个周期为 N 的离散信号 x[n] ,其基波频率为 ω=2πN,我们希望得到数列 an ,使得:

x[n]=k=1Nakekωnj

这里只使用 N 项级数,是因为信号的周期为 N ,从而 ekωnj=ekω(n+N)j。我们也可以将上面的式子写成下面的形式:

x[n]=k=Nakekωnj

其中 n=N 表示对任意一个周期区间求和。

为了继续沿用连续情况下的思路,我们首先验证离散情况下 ekωnj 的正交性。考虑以下求和:

n=Nekωnj

将复指数展开,得到:

n=Nekωnj=n=Ncoskωn+jsinkωn=n=Ncos2πknN+jsin2πknN

k=0,±N,±2N,... 时,显然原式值为 N. 在其它情况下,由于周期性,我们只用证明原式在 n=0,1,...,N1 时的情况:

n=Nekωnj=n=0N1ekωnj

使用等比数列求和公式知:

n=0N1ekωnj=1rN1r

其中 r=ekωj 为公比,rN=ekNωj=e2πkj=1 ,所以原式值为 0。 因此,我们得到结论:

n=Nekωnj={Nk=0,±N,±2N,...0其他情况

那我们就可以沿用之前的思路,将 x[n]=k=akekωnj 两侧同乘 erωnj 并求和,得到:

n=Nx[n]erωnj=n=Nk=Nakekωnjerωnj=k=Nakn=Ne(kr)ωnj

假设我们现在要求的系数是 ar ,其中 r=N ,是和 k 有一样取值范围的变量。右侧求和不为 0 的条件是 (kr)N 的倍数,因为限制了 k 在一个周期内取值,故仅在 k=r 时求和不为零,因此原式可以写成:

n=Nx[n]erωnj=Nar

于是ar=1Nn=Nx[n]erωnj ,即:

ak=1Nn=Tx[n]ekωnj

离散周期信号傅里叶级数的性质

大部分离散信号和连续信号傅里叶级数的性质都非常类似甚至相同,下面列举几个与连续情况有差异的性质。设离散信号 x[n] 变换后的傅里叶级数为 ak

x[n]FSak

相乘性质

离散信号满足时域乘积,频域卷积;时域卷积,频域乘积

x[n]y[n]FSl=Nalbnl

离散信号的帕塞瓦尔定理

与连续情况下类似,离散信号满足:

1Nn=N|x[n]|2=k=N|ak|2

此作者没有提供个人介绍
最后更新于 2025-02-13