第2章 声学基础回顾:声音的物理特性、人耳听觉与室内声学
做声学信号处理,说白了就是跟声音打交道。你得先搞清楚声音到底是什么,耳朵怎么听,房间怎么影响它。这三件事搞不明白,后面做自适应算法就是空中楼阁。我刚开始做回声消除时,就吃过这个亏——以为算法能搞定一切,结果在混响严重的会议室里,效果一塌糊涂。
好,咱们从头捋一遍。
2.1 声音的物理特性
声音的本质是机械波。它需要介质传播,在空气中就是疏密波。三个核心参数:频率、波长、声压级。
2.1.1 频率与波长
频率决定音高,单位是赫兹(Hz)。人耳能听到的大概是20 Hz到20 kHz。低于20 Hz叫次声波,高于20 kHz叫超声波——咱们做声学场景自适应,主要关心20 Hz–8 kHz这个范围,因为大部分语音能量都集中在这里。
波长和频率的关系很简单:
λ = c / f
其中c是声速(常温下约343 m/s),f是频率。举个例子:1 kHz的声音,波长大约是0.343米,也就是34厘米。你想想看,一个麦克风阵列的间距如果远大于这个波长,空间采样就会出问题——我在做波束成形时踩过这个坑。
2.1.2 声压级(SPL)
声压级用分贝(dB)表示,公式是:
SPL = 20 * log10(p / p_ref)
p_ref是参考声压,20 μPa,大致是人耳能听到的最小声压。0 dB就是听阈,120 dB是痛阈。日常对话大概40–60 dB,会议室背景噪声通常在35–45 dB之间。
这里有个容易混淆的点:dB SPL和dB FS(数字满量程)不是一回事。模拟信号进ADC之前,你得留好headroom。我曾经在项目里没注意这个,结果信号削波了,整个自适应滤波器发散——嗯,教训深刻。
| 声源 | 典型SPL (dB) | 主观感受 |
|---|---|---|
| 树叶沙沙声 | 10–20 | 极安静 |
| 轻声耳语 | 30–40 | 安静 |
| 正常对话 | 50–60 | 适中 |
| 繁忙街道 | 70–80 | 嘈杂 |
| 摇滚演唱会 | 100–110 | 震耳 |
2.2 人耳听觉特性
人耳不是一台完美的声学测量仪。它有非线性、有掩蔽、有临界频带。做自适应处理时,如果你不了解这些,算法可能做了很多无用功——因为人耳根本听不出来。
2.2.1 掩蔽效应
一个强音会掩盖一个弱音,这就是掩蔽。分两种:
- 频域掩蔽: 一个频率上的强信号,会掩盖邻近频率的弱信号。比如1 kHz的纯音,会让950 Hz或1050 Hz的弱音听不见。
- 时域掩蔽: 强音出现前几毫秒(前掩蔽)和消失后几十毫秒(后掩蔽),弱音也会被掩盖。
为什么这个重要?因为音频编码(比如MP3、AAC)就是利用掩蔽效应来压缩数据的——听不见的成分直接扔掉。咱们做自适应滤波时,也可以利用掩蔽阈值来调整降噪强度,避免过度处理导致音质劣化。
2.2.2 临界频带与Bark尺度
人耳基底膜上的频率分析不是线性的。它把20 Hz–20 kHz分成了24个临界频带,每个频带对应一个Bark。低频的临界频带窄(几十Hz),高频的宽(几百Hz甚至上千Hz)。
Bark尺度的换算公式(近似):
z = 13 * arctan(0.76 * f / 1000) + 3.5 * arctan(f / 7500)^2
其中f是频率(Hz),z是Bark数。做心理声学模型时,我习惯把频谱映射到Bark域再处理,这样更符合人耳的真实感知。
| Bark编号 | 中心频率 (Hz) | 带宽 (Hz) |
|---|---|---|
| 1 | 50 | 100 |
| 5 | 510 | 190 |
| 10 | 1720 | 500 |
| 15 | 4000 | 1100 |
| 20 | 10500 | 2500 |
2.3 室内声学
声音在房间里不是自由传播的。它会反射、衍射、吸收。室内声学对自适应处理的影响非常大——尤其是混响。
2.3.1 直达声与反射声
从声源直接到麦克风的叫直达声。碰到墙壁、天花板、地面再弹过来的叫反射声。反射声又分早期反射(50 ms以内)和晚期混响(50 ms以后)。
早期反射对语音清晰度有帮助——它相当于给直达声加了点“能量”。但晚期混响就是灾难了,它会模糊语音的时域结构,让自适应滤波器很难收敛。
我记得有一次在教堂里做测试,RT60超过2秒,自适应回声消除器完全失效。后来加了去混响预处理才搞定。
2.3.2 混响时间RT60
RT60的定义:声源停止后,声压级下降60 dB所需的时间。它是衡量房间混响程度的核心指标。
赛宾公式(估算用):
RT60 = 0.161 * V / A
V是房间体积(m³),A是总吸声量(m²·Sabine)。A = Σ(α_i * S_i),α_i是各表面的吸声系数。
典型值:
- 小型会议室:0.3–0.6 s
- 教室:0.5–0.8 s
- 音乐厅:1.5–2.5 s
- 教堂:3–5 s
做自适应处理时,RT60直接决定了滤波器的长度。滤波器长度至少要覆盖混响时间对应的采样点数。比如RT60=0.5 s,采样率16 kHz,那滤波器长度至少8000 taps——算力不够的话,就得用频域分块处理。
2.4 本章知识体系
下面这张图把本章的核心逻辑串起来了。从物理特性到人耳感知,再到室内声学,最后落到自适应处理的工程考量——每一步都有实际意义。
好了,这一章的内容就是这些。物理参数、人耳特性、房间声学——三块基石。后面讲算法时,我会反复引用这些概念。你最好把它们记牢,或者至少知道去哪里查。