深入解析:傅里叶分析体系的理解

目录

前言

1.傅里叶分析的基础

1.1函数的正交

1.2三角函数集的正交性

1.3复指数函数的正交性

2.傅里叶分析的类型

2.1连续周期信号 → 傅里叶级数 (FS)

2.2连续非周期信号 → 傅里叶变换 (FT)

正变换的推导:

逆变换的推导:

常用性质

(1)时间与频率的尺度变换

(2)时移性质

(3)卷积性质

(4)乘法性质

2.3离散周期信号 → 离散傅里叶级数 (DFS)

2.4离散非周期信号 → 离散时间傅里叶变换 (DTFT)

正变换推导:

逆变换的推导:

常用的性质

(1)周期性

(2)卷积性质

(3)乘法性质

3.快速傅里叶变换(FFT)

3.1 FFT的来源

3.2 基2-FFT的蝶形运算

4.短时傅里叶变换(STFT)

5.参考资料


前言

傅里叶分析实际是信号合成与分解的一种方式,正变换是将时域的信号分解到频域的各个频率上面,逆变换就是将频域上的各个频点的幅值合成时域的信号。常用的有两种类型的分解,一种是三角函数集,这是单边谱,另一种是复指数集,这是双边谱。借用大佬的图,很直观地看到这种分解与合成的关系。

1.傅里叶分析的基础

1.1函数的正交

在数学中,假设两个函数内积为零,则这两个函数 f(x) 和 g(x)称为正交的。

内积公式如下:

\int_{t_0}^{t_1} f(x) g(x) \, dx = 0

函数 f(x) 和 g(x)在区间 [t0,t1]上是正交的。

1.2三角函数集的正交性

三角函数集{1, cosx, sinx, cos2x, sin2x, …, cosnx, sinnx}内的函数在区间[-π, π]上彼此正交,即其中任意两个不同的函数在区间[-π, π]上的内积为0。证明如下:

要证明对于任意两个不同的函数 f(x) 和 g(x),它们的内积在区间 [−π,π] 上为零,即:

\langle f(x) g(x) \rangle = \int_{-\pi}^{\pi} f(x) g(x) \, dx = 0

首先证明常数函数和正弦余弦函数的内积为零

对于常数函数 f(x)=1和任意的正弦余弦函数 g(x)=cos⁡(kx)或 g(x)=sin⁡(kx),其内积为

\int_{-\pi}^{\pi} 1 \cdot \cos(kx) \, dx = 0 \\ \int_{-\pi}^{\pi} 1 \cdot \sin(kx) \, dx = 0

通过这能够由g(x)的图像得到,因为当k\neq 0时,最大周期是k=\pm 1T_{max}=\pm2\pi,内积区间刚好在一个周期内,图像面积累加刚好为0,当k为其他值时,2\pi是g(x)周期的整数倍,因而图像面积累加之和还是0。

然后再证明正弦函数和余弦函数不同函数之间的内积为零,相同不为0

对于任意的 m,n∈Z,有

\cos(mx)\cos(nx) = \frac{1}{2}[\cos((m-n)x) + \cos((m+n)x)]

当m=n时

\cos(mx)\cos(nx) = \frac{1}{2}(1 + \cos(2nx))

\int_{-\pi}^{\pi} \cos(kx) dx = 0 ,对于任何 k \neq 0 成立。

所以有:

\int_{-\pi}^{\pi} \cos(mx) \cdot \cos(nx) dx = 0 \quad m \neq n \\ \\ \int_{-\pi}^{\pi} \cos(mx) \cdot \cos(nx) dx = \pi \quad m = n

同理可证:

\int_{-\pi}^{\pi} \sin(mx) \cdot \sin(nx) dx = 0 \quad m \neq n \\ \\ \int_{-\pi}^{\pi} \sin(mx) \cdot \sin(nx) dx = \pi \quad m = n \\ \\ \int_{-\pi}^{\pi} \cos(mx) \cdot \sin(nx) \, dx = 0

综上所述,对于任意 m,n∈Z,不同的函数 f(x)和 g(x)的内积都为零,证明了在区间 [−π,π]上,三角函数集是正交的。

有了三角函数集的正交性,就可以理解周期信号傅里叶级数了,将信号投影到每一个正交基上。

1.3复指数函数的正交性

复指数函数集\left\{ e^{-jn\omega t}, \ldots, e^{-j2\omega t}, e^{-j\omega t}, e^{j0\omega t}, e^{j\omega t}, e^{j2\omega t}, \ldots, e^{jn\omega t} \right\}
中的函数在区间[-T/2, T/2]上彼此正交,即集合中任意两个不同的函数在该区间上的内积为零。

证明如下:

设:f_m(t) = e^{jm\omega t}, \quad f_n(t) = e^{jn\omega t}, \quad m \neq n

定义内积为:

\langle f_m, f_n \rangle = \int_{-T/2}^{T/2} f_m(t) \cdot \overline{f_n(t)} \, dt \\ \\ \hspace*{4em} = \int_{-T/2}^{T/2} e^{jm\omega t} \cdot e^{-jn\omega t} \, dt \\ \\ \hspace*{4em}= \int_{-T/2}^{T/2} e^{j(m - n)\omega t} \, dt

这里应该注意的是复数内积应该其中一个改变符号,正改负,负改正。所以会有复数本身的内积等于该复数与其共轭复数相乘。

m \neq n时,有:

\int_{-T/2}^{T/2} e^{j(m - n)\omega t} \, dt = \left[ \frac{e^{j(m - n)\omega t}}{j(m - n)\omega} \right]_{-T/2}^{T/2} = \frac{e^{j(m - n)\omega T/2} - e^{-j(m - n)\omega T/2}}{j(m - n)\omega}

利用欧拉公式e^{jx} - e^{-jx} = 2j\sin(x),可得:

\langle f_m, f_n \rangle = \frac{2j \sin((m - n)\omega T / 2)}{j(m - n)\omega} = \frac{2 \sin((m - n)\omega T / 2)}{(m - n)\omega}

因为 \omega = \frac{2\pi}{T},则有:

\langle f_m, f_n \rangle = \frac{2 \sin((m - n)\pi)}{(m - n)\omega} = 0

因此:

{\langle f_m, f_n \rangle = 0 \quad (m \ne n)}

即不同的复指数函数在区间[-T/2, T/2]上正交。

相同的函数内积不为 0

m = n时,有:

\langle f_m, f_m \rangle = \int_{-T/2}^{T/2} e^{jm\omega t} \cdot e^{-jm\omega t} \, dt = \int_{-T/2}^{T/2} 1 \, dt = T

因此:

\langle f_m, f_m \rangle = T \ne 0

所以有集合中任意两个不同的函数在该区间上的内积为零。

同时需要记住函数的内积是在区间内积分的形式。

2.傅里叶分析的类型

傅里叶分析主要根据信号的时域特性(连续/离散、周期/非周期)分为四种基本类型:

  • 连续周期信号傅里叶级数 (FS):将周期信号分解为离散频率的指数函数之和。
  • 连续非周期信号傅里叶变换 (FT):得到连续谱,揭示信号的频率密度分布。
  • 离散周期信号离散傅里叶级数 (DFS)离散且周期的。就是:在频域上也
  • 离散非周期信号离散时间傅里叶变换 (DTFT):得到以2π为周期的连续频谱。

2.1连续周期信号傅里叶级数 (FS)

周期信号f(t) ,其周期为T(模拟频率为\omega,也称为基频),当满足狄里赫利条件(能量有限且绝对可积)时,它可以分解为如下三 角级数,该三角级数称为傅里叶级数。

信号在对应频率的基上的坐标,代表该频率的分量的强度。就是其几何意义是周期信号行投影到三角函数正交基上,其系数

一般形式:

f(t) = \frac{a_0}{2} + \sum_{k=1}^{\infty} \left( a_k \cos(k\omega t) + b_k \sin(k\omega t) \right)

其中a_0 = \frac{2}{T} \int_{0}^{T} f(t) \, dta_k = \frac{2}{T} \int_{0}^{T} f(t) \cos\left( k\omega t\right) \, dt

b_k = \frac{2}{T} \int_{0}^{T} f(t) \sin\left( k\omega t \right) \, dt , \omega = \frac{2\pi }{T}一样的)就是。(这里积分上下限之所以是一个周期,是因为该信号是周期函数,只需要考虑一个周期内的变化即可,其他区间

这里的系数就是由f(t)投影到各个频率的三角函数上得到的,以a_n为例子:

a_k = \frac{\langle f(t) , cos(kwt)\rangle}{\langle cos(kwt), cos(kwt) \rangle} =\frac{\int_{0}^{T} f(t) \cos\left( k\omega t\right) \, dt}{T/2}=\frac{2}{T} \int_{0}^{T} f(t) \cos\left( k\omega t \right) \, dt

利用辅助角公式:

a\sin t + b\cos t =\sqrt{a^2 + b^2} \cos ( t - \arctan \frac{a}{b})

可以将上面的形式进一步化简:

f(t) = \frac{a_0}{2} + \sum_{k=1}^{\infty} ( A_k \cos(k\omega t) + \phi )

单边谱,就是这样子表示的A_k是幅度谱,\phi是相位。

可能转换为复指数形式,这样子信号就分解在复指数上面了,即投影在复指数上面。利用公式:

\cos(k \omega t + \phi) = \frac{e^{j(k\omega t + \phi)} + e^{-j(k\omega t + \phi)}}{2}

转换为:

f(t) = \frac{a_0}{2} + \sum_{k=1}^{\infty} \frac{A_k}{2} \left( e^{j(k\omega t + \phi)} + e^{-j(k\omega t + \phi)} \right) \\ \\ \hspace*{2em} = \frac{a_0}{2} + \sum_{k=1}^{\infty} \frac{A_k}{2} e^{j(k\omega t + \phi)} + \sum_{k=1}^{\infty} \frac{A_k}{2} e^{-j(k\omega t + \phi)} \\ \\ \hspace*{2em}= \sum_{k=-\infty}^{\infty} c_ke^{jnk\omega t}

其中,负频率代表旋转方向,相位部分移到了c_k,

c_k = \frac{\langle f(x) , e^{k\omega x}\rangle}{\langle e^{k\omega x}, e^{k\omega x} \rangle} =\frac{\int_{-T/2}^{T/2} f(x) e^{-k\omega x} \, dx}{\int_{-T/2}^{T/2} e^{k\omega x} e^{-k\omega x} \, dx }= \frac{1}{T} {\int_{-T/2}^{T/2} f(x) e^{-k\omega x} \, dx}

这样子就可以将余弦信号的单边谱,变为复指数形式的双边谱。双边谱具有幅度谱偶对称,幅值减半;相位谱奇对称的特点。其中,c_k就是在该复指数上的投影值。

2.2连续非周期信号 → 傅里叶变换 (FT)

正变换的推导:

非周期信号可以理解为周期为无穷大的周期信号。根据傅里叶级数,周期信号可以投影到不同频率的分量:

F(k\omega_0) = \frac{1}{T_0} \int_{-T_0/2}^{T_0/2} f(x) e^{-j k\omega_0 x} \, dx

其中,$\omega_0 = \frac{2\pi}{T_0}$是基本频率。当周期$T_0 \to \infty$时,基本频率$\omega_0 \to 0$,此时$kw_0$也会趋向于 0,傅里叶级数的频率分量$kw_0$趋于连续频率$\omega$。但是这样子的话$F(kw_0)$对应的值将趋于 0,表示在这些低频区域信号的贡献逐渐消失,意味着没有实际的意义。

因而会定义了频谱密度:

F(\omega) =T_0F(k\omega_0) = T_0 \frac{1}{T_0} \int_{-T_0/2}^{T_0/2} f(x) e^{-j k\omega_0 x} \, dx \\ \hspace*{2 em}=\int_{-\infty}^{\infty} f(x) e^{-j k\omega x} \, dx

逆变换的推导:

通过同理,将非周期信号理解为周期为无穷大的周期信号。根据傅里叶级数,周期信号能够写成不同频率分量线性组合的形式:

f(x) = \sum_{k=-\infty}^{\infty} \frac{F(k\omega_0)}{\omega_0} \omega_0e^{j k \omega_0 x} \\ \hspace*{2em} = \sum_{k=-\infty}^{\infty} \frac{F(k\omega_0)T_0}{2\pi} e^{j k \omega_0 x}\Delta (k\omega_0)

$T_0 \to \infty$ 时,$\omega_0 \to 0$,此时,$k\omega_0$ 可以写成$\omega$(离散的自变量变为连续),$\Delta k\omega_0$可以写成 $d\omega$,累加运算变为积分。

因此,连续时间非周期信号许可写成:

f(x) = \frac{1}{2\pi} \int_{-\infty}^{\infty} F(\omega) e^{j \omega x} \, d\omega

这是非周期信号的傅里叶逆变换。

所以傅里叶变换公式如下:

正变换:F(\omega) = \int_{-\infty}^{\infty} x(t) e^{-j \omega t} \, dt,将信号分解到整个连续的频域上

逆变换:x(t) = \frac{1}{2\pi} \int_{-\infty}^{\infty} F(\omega) e^{j \omega t} \, d\omega,对整个频域的信息进行重组恢复出原信号

频率分量上的投影,复数内积的符号变负,所以是就是上面两个公式只需要记住他的意义就很容易记住这两个公式。正变换e^{-jk\omega},但是因为直接投影太小了,没意义,所以F(k\omega_0)会多乘一个T_0变成了频谱密度,这样就和F(k\omega_0)公式的\frac{1}{T_0}抵消,变成现在的样子。逆变换是投影分量乘以复指数分量,而\frac{1}{2\pi}dw是有公式推导出来的,因为是连续谱,故而是积分形式。

常用性质

在实际数字处理中常用到以下这些性质:

(1)时间与频率的尺度变换

f(t) \overset{ \mathcal{F} } {\leftrightarrow} F(w),则有 :

\mathcal{F}\{f(at)\} = \frac{1}{|a|} F\left( \frac{\omega}{a} \right)

其中,$a$为时间的缩放因子。当$a > 1$时,信号在时间轴上被压缩,信号的频率变大,频率上被拉伸;当0 < a < 1时,信号在时间轴上被拉伸,信号频率变小,频率上被压缩。

(2)时移性质

f(t) \overset{ \mathcal{F} } {\leftrightarrow} F(w),则有 :

\mathcal{F}\{f(t-t_0)\} = e^{-j\omega t_0}F\left( \omega\right)

信号在时间上的移位,并不改变它的傅里叶变换的模长,即不会影响原来的频率分量,只是在变换中引入相移,且相移 与频率\omega成线性关系,对于频率越高的分量,移位越多。这个性质说明了信号延迟和信号提前都不会改变频率的幅度,只会改变频率的相位。

(3)卷积性质

若:f_1(t) \overset{ \mathcal{F} } {\leftrightarrow} F_1(w)f_2(t) \overset{ \mathcal{F} } {\leftrightarrow} F_2(w), 则:

f(t) = f_1(t) * f_2(t) , F(\omega) = F_1(\omega)F_2(\omega)

即时域上的卷积对应频域上的乘法,该性质是系统对信号响应的核心。
(4)乘法性质

若:f_1(t) \overset{ \mathcal{F} } {\leftrightarrow} F_1(w)f_2(t) \overset{ \mathcal{F} } {\leftrightarrow} F_2(w), 则:

f(t) = f_1(t) *f_2(t) , F(\omega) =\frac{1}{2\pi} F_1(\omega)F_2(\omega)

时域上的乘法对应频域上的卷积,该性质是信号调制的基础。

举个例子,波长\lambda = \frac{cT}{f},发射信号的天线尺寸与信号波长成正比,波长越大,天线尺寸越大 减小天线尺寸,需要提高信号频率,将低频信号调制到高频,再发送。高频信号也称载波信号。调制信号公式如下:

\mathcal{F}\{f(t)e^{j\omega_0}\} =\frac{1}{2\pi} F\left( \omega \right) *2\pi\delta(\omega - \omega_0) = F\left( \omega - \omega_0 \right)

除了信号调制之后,常用的加窗也是这个性质。

2.3离散周期信号离散傅里叶级数 (DFS)

定义:对于离散时间周期信号$x[n]$,其周期为 $N_0$(数字角频率为$\Omega_0 = \frac{2\pi}{N_0}$通过),根据傅里叶级数的原理,信号能够表示为一系列离散时间单位圆上复指数信号的线性组合,即:

x[n] = \sum_{k=0}^{N_0-1} F(k\Omega_0) e^{j k \Omega_0 n}

其中, F(k\Omega_0)是复指数信号的系数,其表达式为:

F(k\Omega_0) =\frac{\langle x[n] , e^{k\Omega_0 x}\rangle}{\langle e^{k\Omega_0 x}, e^{k\Omega_0 x} \rangle}=\frac{1}{N_0}\sum_{k=0}^{N_0-1} x[n] e^{-j k \Omega_0 n}

$\Omega_0$是数字角频率,$N_0$是周期,n是节拍,并且$k$只涵盖一个周期。实际上,起点并不一定是零,只要能够涵盖一个周期即可,例如:$k$的范围可以是$[3, N_0 + 2]$,这是因为对于信号$e^{j k \Omega_0 n}$,其周期性保证了$k$的选择在一个周期内是等效的。

因为k\Omega_O = k\frac{2\pi}{N_0},所以

k=0~N_0-1时,k\Omega_O是由0~2\pi的;

k>N_0时,k\Omega_O=2\pi + (k-1)\frac{2\pi}{N_0},而且e^{-j (k \Omega_0 + 2\pi) n} = e^{j \Omega n}e^{-j k \Omega_0 n}离散的,周期的。就是是周期性的,所以离散周期信号的频率谱

2025-11-24-lhw:补充从连续到离散的过程

根据奈奎斯特采样定理(Nyquist-Shannon Sampling Theorem),为了从连续傅里叶变换(CFT)获得离散傅里叶变换(DFT),采样频率f_s必须至少为信号频率的两倍,即:

f_s = \frac{1}{T_s} \geq 2 f_{\text{max}}

其中 f_{\text{max}}是信号的最高频率。

在这种条件下,离散傅里叶变换X[k]就是对连续傅里叶变换X(f)在离散频率点的近似。具体地,离散频率f_k 是:

f_k = \frac{k}{N T_s}

这意味着将连续信号的频域上每个频率间隔n=\Delta f = \frac{1}{T_s}离散化为 N个点,形成一个周期性的频谱。而周期的范围是[-\frac{f_s}{2} \sim \frac{f_s}{2}],即整个频率带宽是fs,所以会有基波频率\frac{f_s}{N}基波频率,也叫频率分辨率的概念,就是如果大家按照f_s的采样频率去采集一个信号,一 共采集 N 个点,那么基波频率(频率分辨率)就是f_k = \frac{f_s}{N}。这样,第 n 个点对应信号频率为:\frac{f_s \cdot(n-1)}{N}; 其中 n≥1,当 n=1 时为直流分量。(需要注意的是频率是不应该考虑2\pi的,角频率\Omega_0才需要考虑,\Omega_0 = 2\pi f)

2.4离散非周期信号 → 离散时间傅里叶变换 (DTFT)

推导的方式和连续非周期信号的相似。

DTFT的本质:能量有限或绝对可和的离散时间非周期信号能够分解到覆盖范围为 0, 2的连续频域的单位圆复指数序列上。

正变换推导:

将离散时间非周期信号看作周期为$\infty$的周期信号。根据离散时间傅里叶级数,周期信号能够投影到$N_0$个不同频率的分量上:

F(k\Omega_0) =\frac{\langle x[n] , e^{k\Omega_0 x}\rangle}{\langle e^{k\Omega_0 x}, e^{k\Omega_0 x} \rangle}=\frac{1}{N_0}\sum_{k=0}^{N_0-1} x[n] e^{-j k \Omega_0 n}

$N_0 \to \infty$ 时,$\Omega_0 \to 0$,此时,$k \Omega_0$可以写成 $\Omega$(频域变得连续)。然而,$F(k \Omega_0) \to 0$,这表示傅里叶级数的结果在这里没有明确的物理意义。

同样地,能够定义频谱密度:

F(\Omega) = N_0F(k\Omega_0) =\sum_{k=-\infty}^{\infty} x[n] e^{-j \Omega n}

对于离散时间非周期信号的傅里叶变换,变换结果通常是周期性的,周期为2\pi。根本原因是e^{j (\Omega+2\pi) n} = e^{j \Omega n},当\Omega取大于2\pi时,会重复

离散傅里叶变换(DFT)将信号投影到一个周期性的频率轴上,而周期性是由离散时间信号的周期性所固有的。究其原因,傅里叶变换的周期性特性来自于离散信号的周期性,导致频域上变得周期化。傅里叶级数在连续信号中对应于一个周期性的频域,而在离散信号中,该频域成为了一个周期为2\pi的离散频域。

逆变换的推导:

通过同理,将非周期信号理解为周期为无穷大的周期信号。根据离散傅里叶级数,周期信号能够写成不同频率分量线性组合的形式:

x[n]= \sum_{k=0}^{N_0-1} F(k\Omega_0) e^{j k \Omega_0 n} \\ \hspace*{2em} = \sum_{k=0}^{N_0-1} \frac{F(k\Omega_0)}{\Omega_0} \Omega_0e^{j k \Omega_0 n} \\ \hspace*{2em} = \sum_{k=0}^{N_0-1} \frac{F(k\Omega_0)N_0}{2\pi} e^{j k \Omega_0 n}\Delta (k\Omega_0)

$N_0 \to \infty$ 时,$\Omega_0 \to 0$,此时,$k\Omega_0$ 可以写成$\Omega$(离散的自变量变为连续),$\Delta k\Omega_0$可以写成 $d\Omega$,累加运算变为积分。

因此,离散时间非周期信号可以写成:

x[n] = \frac{1}{2\pi} \int_{0}^{2\pi} F(\Omega) e^{j \Omega n} \, d\Omega

非周期信号的傅里叶逆变换。就是这

所以对于离散信号来说,频谱上是周期延拓的,只需要对一个周期内的频域线性组合即可。需要注意的是离散时间矩形信号频谱密度:

  • [0,2]为基本周期延拓;
  • 也可[-,]为根本周期延拓;
  • 0,2附近为低频分量;
  • -附近为高频分量

常用的性质

(1)周期性

F(\Omega) = F(\Omega + 2\pi)

(2)卷积性质

若:x_1(n) \overset{ \mathcal{F} } {\leftrightarrow} F_1(\Omega)x_2(n) \overset{ \mathcal{F} } {\leftrightarrow} F_2(\Omega), 则:

x(n) = x_1(n) * x_2(n) , F(\Omega) = F_1(\Omega)F_2(\Omega)

即时域上的卷积对应频域上的乘法。
(3)乘法性质

若:x_1(n) \overset{ \mathcal{F} } {\leftrightarrow} F_1(\Omega)x_2(n) \overset{ \mathcal{F} } {\leftrightarrow} F_2(\Omega), 则:

x(n) = x_1(n) x_2(n) , F(\Omega) =\frac{1}{N} F_1(\Omega)*F_2(\Omega)

即时域上的乘积对应频域上的卷积,其中N表示N点卷积。

3.快速傅里叶变换(FFT)

3.1 FFT的来源

数字信号,所以无法进行连续时间的傅里叶变换;就是传感器的信号离散时间傅里叶变换针对长度为无穷长的信号,其得到的频谱是连续的,与实际信号的情况也不一致; 离散时间傅里叶级数针对离散的信号,频谱的结果也是离散的,最有可能由计算机实现,但其针对周期信号。 实际上,计算机采用“离散傅里叶变换(DFT)”对信号开展分析基本原理:将采集到的信号(信号长度为N_0看成周期为N_0的离散时间周期信号,并计算其DTFS。

所以有离散傅里叶变换(DFT)的出现:对于长度为N_0的信号x[n],将其看成周期为N_0(\Omega = \frac{2\pi}{N_0})的周期信号(这种合理,结果会有误差,但不影响分析就是做法),其公式为:

正变换:F(k\Omega_0) =\sum_{k=0}^{N_0-1} x[n] e^{-j k \Omega_0 n}

逆变换:x[n] =\frac{1}{N_0} \sum_{k=0}^{N_0-1} F(k\Omega_0) e^{j k \Omega_0 n}

其物理含义为:将信号分解为一系列简单的复指数序列(e^{0j\Omega n}e^{j\Omega n}e^{j2\Omega n},...,e^{j(N_0-1)\Omega n}).

DFT的计算量:N个点直接计算DFT的总运算量为:N^2次复数乘法,N(N-1)次复数加法。分析1024个点的序列,需要进行百万次的复乘,消耗的资源比较多。

其中一种常用的方法。它是就是因此有了快速傅里叶的诞生。FFT快速完成DFT的一种算法,有效降低了计算量。
FFT简便的理解就是2分法,因为将N个点分为两组\frac{N}2{}个点计算,仅需要\frac{N^2}{4} + \frac{N^2}{4} =\frac{N^2}{2}次复数乘法,相当于减少一半,依次类推,FFT复数乘法运算量\frac{N}{2}log_2N,两者对比:

3.2 基2-FFT的蝶形运算

给定长度为 $N $的离散序列 $x[n]$,其离散傅里叶变换(DFT)定义为:

X[k] = \sum_{n=0}^{N-1} x[n] \cdot e^{-j \frac{2\pi}{N}kn}, \quad 0 \leq k \leq N-1

引入旋转因子$W_N^k$,定义为:W_N^k = e^{-j \frac{2 \pi}{N}k},所以

X[k] = \sum_{n=0}^{N-1} x[n] \cdot W^{-kn}_{N}, \quad 0 \leq k \leq N-1

将原始序列$x[n]$分解为偶数子序列和奇数子序列:

X[k] = \sum_{n=0}^{N-1} x[n] \cdot W^{-kn}_{N} \\\\ \hspace*{2em} = \sum_{n=0}^{\frac{N}{2}-1} x_{e}[n] \cdot W^{-k\cdotp 2r }_{N} + \sum_{n=0}^{\frac{N}{2}-1} x_{0}[n] \cdot W^{-k\cdotp 2r+1 }_{N},0 \leq k \leq N-1

然后利用$W_N^{kn}$的可约性:

X[k]= \sum_{n=0}^{\frac{N}{2}-1} x_{e}[n] \cdot W^{-k\cdotp r }_{\frac{N}{2}} + W^{-k }_{N} \sum_{n=0}^{\frac{N}{2}-1} x_{o}[n] \cdot W^{-k\cdotp r }_{\frac{N}{2}} , 0 \leq k \leq N-1

如果将原来的数据分为两组运算就会变成这样子的:

X[r] = X_{\text{e}}[r] + W_N^{-r} \cdot X_{\text{o}}[r], \quad 0 \leq r \leq \frac{N}{2} - 1

X\left[r + \frac{N}{2} \right] = X_{\text{e}}[r] - W_N^{-r} \cdot X_{\text{o}}[r], \quad 0 \leq r \leq \frac{N}{2} - 1(用的也是可约性)

其中:$X_{\text{e}}[r]$ 是由 $x[0], x[2], \dots$构成的偶数索引子序列的 DFT;$X_{\text{o}}[r]$ 是由 $x[1], x[3], \dots$构成的奇数索引子序列的 DFT;

用AI举个例子:

从这个例子也可能看出FFT的运算原理:

  • 递归分解:大DFT不断拆分成小DFT,直到最主要的2点DFT(只分然而先不进行运算,知道2点再往回运算)

  • 奇偶分组:每次分解都按照序列索引的奇偶性进行分组

  • 蝶形组合:分解后的小DFT结果通过蝶形运算(加减和旋转因子乘法)组合成大的DFT结果

  • 计算复杂度:直接从O(N²)降到O(N log₂N)

一般用蝶形图表示,如下:

只是该图对于初学者可能会有点误导,理解的话还是按AI给出的例子的流程来理解。

通过然后从中也能够看出X\left[r \right]X\left[r + \frac{N}{2} \right]可以用一组蝶形运算来计算。

基数-2蝶形运算表示一对输入$a$$b$,其输出为:

A = a + W_N^k \cdot b

B = a - W_N^{-k} \cdot b

只应该一次复数乘法,两次复数加法(这两次加法一次实现为“加”,另一次实现为“减”)

因为实际的数字信号处理中我们会直接采用库函数计算,所以就不记录实际的计算过程了。FFT是分析频域信息常用的技巧。

4.短时傅里叶变换(STFT)

传统FFT作为一种全局变换,其频谱结果不包含时域信息,这导致时域上不同的信号(如具有相同频率成分但出现时刻不同的信号)可能产生相同的频谱图,从而丢失了信号的时间局部化特征。

为克服此问题,短时傅里叶变换通过对信号进行加窗分段,并对每一段信号分别进行FFT分析。这种方法将一维的时域信号映射为一个二维的时频分布,从而能够清晰地揭示信号频率成分随时间的变化情况。

具体行参考这篇文章:时频分析之STFT:时频分析之STFT:短时傅里叶变换的原理与代码实现(非调用Matlab API)-CSDN博客

这里借用一下他的图:

两种不同的信号,做FFT之后频谱图是一样的。

但是如果做短时傅里叶变换的话,是能够看出区别的:

因此,再处理语音等信号时,往往做的是短时傅里叶变换(STFT)。

5.参考资料

时频分析之STFT:短时傅里叶变换的原理与代码实现(非调用Matlab API)-CSDN博客

数字信号处理9-2_连续时间周期信号的傅里叶级数_哔哩哔哩_bilibili

以上就是本次笔记的记录,方便后期的复习与应用。

posted @ 2025-12-20 11:11  clnchanpin  阅读(117)  评论(0)    收藏  举报