利用傅里叶级数分析声波
1. 声波的分解与傅里叶级数
声音是通过空气传播的压力变化,我们可以将声波表示为一个大致反映气压随时间变化的函数。在数字音频系统中,如 PyGame,通常使用采样音频,即按均匀间隔获取函数值的数组来表示声音。
声波的形状决定了声音的特性,随机形状的声波听起来像噪音,而在固定间隔重复形状的声波则能产生明确的音符。具有这种重复特性的函数被称为周期函数,正弦和余弦函数就是典型的周期函数,它们的图像呈现出称为正弦曲线的弯曲形状。正弦和余弦函数每 $2\pi$ 个单位重复一次,这个值被称为它们的周期,而周期的倒数就是频率。对于正弦和余弦函数,其频率为 $1/(2\pi)$,形式为 $\sin(2n\pi t)$ 或 $\cos(2n\pi t)$ 的函数频率为 $n$,高频的声波函数会产生高音调的音符。
周期函数的最大高度称为振幅,将正弦或余弦函数乘以一个数会增加函数的振幅,从而增大对应声波的音量。若要同时播放两种声音,可以将定义它们对应声波的函数相加,得到一个新的函数和新的声波,一般来说,可以对现有的声波进行任意线性组合来创建新的声波。
线性组合一个常数函数以及各种 $n$ 值下的 $\sin(2n\pi t)$ 和 $\cos(2n\pi t)$ 形式的函数,就构成了傅里叶级数。尽管傅里叶级数由平滑的正弦和余弦函数构建而成,但它可以很好地近似任何周期函数,即使是像方波这样有尖锐角落的函数。
我们可以把常数函数以及不同频率的正弦和余弦函数看作周期函数向量空间的一组基,这些基向量的线性组合能最佳近似给定函数,其系数就是傅里叶系数。
把一个函数分解为傅里叶级数的过程类似于将一个向量表示为基向量的线性组合。例如
傅里叶级数在声波分析中的应用
超级会员免费看
订阅专栏 解锁全文
1121

被折叠的 条评论
为什么被折叠?



