为什么一个看起来极其复杂的信号,可以被拆成一堆正弦波?为什么傅里叶变换能把“时域”变成“频域”?
如果从线性代数的角度来看,这件事情其实没有那么神秘:傅里叶变换,本质上就是一次坐标分解。
第一次学习傅里叶变换时,我们通常会遇到一个非常恐怖的公式:
然后老师告诉你“这就是傅里叶变换”。于是很多人开始:背公式 → 套公式 → 做积分 → 考试结束 → 忘了。但真正的问题其实一直没有解决:这个积分到底在干什么?
理解傅里叶变换最好的入口之一,不是积分,而是我们非常熟悉的东西:坐标系。
1. 核心思想:坐标,就是一个对象在不同基底上的分量
假设二维空间里有一个向量 。为什么我们说它的坐标是 ?因为我们默认使用了两个基向量 和 ,于是:
所谓坐标 ,真正的意思是“这个向量包含 3 份 ,以及 2 份 ”。也就是说:
坐标,本质上就是一个对象在不同基底上的分量。
二维平面并不只有 这一套基。我们完全可以选新的基 ,把同一个向量写成 ——向量没有改变,改变的只是我们描述它的方式。这就是换基(Change of Basis)。
**怎么知道一个向量在某个方向上有多少分量?**如果基底是标准正交基,那么坐标系数 = 与基底做内积(也就是投影):
记住这一句话——因为傅里叶变换的那个“大积分”,其实就是在干这个。
2. 从向量到函数:函数也是无限维空间中的向量
我们平时认为 是向量。但函数其实也可以看成向量:如果在很多位置 采样 ,就可以写成 ——这不就是一个高维向量吗?如果采样越来越密(),函数就可以理解成无限维空间中的一个向量,这个空间通常称为函数空间(Function Space)。
函数空间同样需要“坐标系”——也就是一组基函数。傅里叶的想法就是:用不同频率的正弦波和余弦波作为基:
于是复杂函数 就可以写成:
这就是傅里叶级数。把它和 放在一起,你会发现它们几乎是一回事:
线性代数 傅里叶分析
向量 函数
↓ ↓
选择基底 选择正弦/余弦基底
↓ ↓
求坐标 求傅里叶系数
3. 为什么偏偏是 sin 和 cos?正交性
因为我们希望基底之间尽量互不干扰。在线性代数中,最舒服的情况是正交基(),这样求坐标特别简单。而不同频率的三角函数也具有类似性质——在 上:
这就是函数之间的正交性。所以不同频率 就像二维空间中的 x 轴、y 轴——它们是不同的“方向”。
**函数怎么做“点积”?**普通向量内积 ,维度无限增加时求和就自然变成积分:
这一下,傅里叶系数的公式就不神秘了。
4. 傅里叶系数 = 把函数投影到频率基底上
例如:
它其实就是 ——把函数 投影到 这个方向上。所以 表示 里面到底含有多少频率为 的 cosine 成分。同理 就是 在 方向上的坐标。
我们平常看信号 横轴是时间 ,这叫时域(Time Domain)。但傅里叶告诉我们:可以换一个坐标系——新的坐标轴不是时间,而是频率。于是同一个信号变成频域表示:
一个音乐例子:钢琴同时弹 440Hz 和 880Hz,麦克风记录到的时域波形是一条非常复杂的曲线;但傅里叶变换以后,频谱上立刻看到两个尖峰(440 和 880)——傅里叶变换回答的是:“这个复杂信号到底由哪些频率组成?”
5. 从傅里叶级数到傅里叶变换,以及为什么出现复数
傅里叶级数主要处理周期函数,允许出现的频率是离散的(),频谱是一根根离散的线。但如果是非周期函数,可以让周期 ,基本频率 ,离散频率点逐渐变密,最终变成连续频率。于是傅里叶级数的“求和” 自然变成“积分” ——这就是傅里叶变换。
那为什么会突然出现复数 ?其实只是为了把 和 统一起来。根据欧拉公式 , 本质上同时包含 和 ——原本需要写“cos + sin”,现在一个 就解决了。
6. 重新看公式:变换与逆变换
回到一开始那个公式:
现在它已经不神秘了: 是频率为 的基函数, 就是内积 / 投影。所以 实际上是“函数 在频率 这个基底方向上的坐标”——也就是 中含有多少 频率。
傅里叶逆变换呢?既然正变换是“求坐标”,逆变换当然就是“乘回基底、重新组合、恢复原函数”:
本质就是 ,和 没有本质区别。
**为什么傅里叶变换如此有用?**因为一个问题在某个坐标系里很复杂,换个坐标系可能突然变简单——时域里纠缠不清的复杂信号,到频域里结构突然清晰。
7. 推广:图像、DFT 与 FFT
图像本质上是二维函数 ,同样可以做二维傅里叶变换。频域里低频对应大面积颜色变化、光照、平滑结构;高频对应边缘、纹理、细节、噪声。这就是傅里叶分析在图像压缩、去噪、增强、计算机视觉、信号处理中如此重要的原因。
DFT(离散傅里叶变换):计算机无法处理连续信号,得到的是有限个采样点 ,公式:
不要被吓到——它仍然是在把离散信号投影到不同频率的基向量上,只是连续积分 变成了离散求和 。还是坐标分解。
FFT(快速傅里叶变换):注意 FFT 不是另一种傅里叶变换,而是快速计算 DFT 的算法——DFT 直接计算复杂度 ,FFT 可以降低到 。FFT 改变的是计算方式,不是傅里叶变换的数学目标。
Fourier Transform
├─ 连续情况:FT
└─ 离散情况:DFT ──→ 快速计算 ──→ FFT
8. 统一视角:换坐标系,让隐藏的结构显现
现在把所有东西统一起来。普通线性代数:,其中 ;傅里叶分析:,其中 ——结构完全一致:
线性代数 傅里叶分析
Vector Function
选择 Basis 选择 Basis e^(iωt)
Inner Product Inner Product
Coordinates Spectrum
(v₁,v₂,v₃...) F(ω)
所以傅里叶变换真正做的事情只有一句话:
更深的理解:傅里叶变换不是“变换信号”——原信号和频谱是同一个对象的两种表示( 和 ),就像三维向量在坐标系 A 是 、换到坐标系 B 是 ,向量本身没有变,只是观察它的方式变了。
为什么“换坐标系”是数学中如此重要的思想?因为很多复杂问题并不是问题本身复杂,而是你选择的坐标系不合适:旋转问题用极坐标突然简单、周期信号用频域突然简单、量子力学用动量空间突然简单、矩阵用特征向量基变成对角矩阵。
复杂问题不一定需要更复杂的方法,有时候只需要换一个坐标系。傅里叶变换正是这个思想最漂亮的例子之一。
总结
如果第一次学习傅里叶变换,不要先记公式,先记住一句话:
傅里叶变换,不过就是坐标分解。
整个傅里叶体系就可以串起来:向量 → 基底 → 投影/内积 → 坐标;函数也是无限维向量 → sin/cos(或 )作为新基底 → 与每个频率基底做内积 → 得到每个频率的坐标 → Fourier Transform → Frequency Spectrum。
因此:
- 傅里叶级数:周期函数在离散频率基底上的坐标分解;
- 傅里叶变换 FT:非周期函数在连续频率基底上的坐标分解;
- DFT:有限离散信号的傅里叶坐标分解;
- FFT:快速计算 DFT 的算法。
最后真正值得记住的不是公式,而是:
很多时候数学所谓的“变换”,并不是把一个东西变成另一个东西,而是换一个视角,让原本隐藏的结构显现出来。
参考资料
- 漫士沉思录:《傅里叶变换,不过就是坐标分解而已》:https://www.bilibili.com/video/BV1eUHjzgEAd/
- 3Blue1Brown:形象展示傅里叶变换(Bilibili 有官方双语版):https://www.youtube.com/watch?v=spUNpyF58BY
- Stanford — The Fourier Transform and its Applications(系统学习课程)
延伸阅读
本文涉及的知识点与博客对应:
- TimeDistill 论文笔记(多周期蒸馏:FFT → 频谱 → 冷温度 softmax → KL 对齐):TimeDistill(KDD 2026)
- Cauvis 论文笔记(傅里叶分支:FFT 高通/相位滤波提取域不变高频结构):Cauvis(NeurIPS 2025)