音频信号基础:声音的物理特性、采样与量化、时域与频域表示、分贝概念、常见音频文件格式
在深入DSP降噪算法之前,必须建立对音频信号本身的系统性认知。降噪的本质是对信号与噪声在某个表征域中进行分离,而选择哪个域、如何表征、以何种精度表征,直接决定了算法的上限。本章从声音的物理产生机制出发,依次梳理采样与量化的数学本质、时域与频域的双重视角、分贝的计算逻辑,以及文件格式背后的编码策略,为后续的频谱减法、维纳滤波、子空间算法等具体实现打下坚实的理论基础。
上图展示了本章知识体系的整体框架。声音的物理特性决定了信号的产生与传播方式,采样与量化决定了数字域的精度边界,时域与频域提供了两种互补的分析视角,而分贝与文件格式则连接了物理量与工程实现。这四个模块共同构成了DSP降噪算法工程师的“语言系统”。
2.1 声音的物理特性:从振动到数字信号的映射
核心原理:声音本质上是介质(空气、水、固体)中的机械纵波。当声源振动时,压缩区和稀疏区交替传播,形成压力波动。描述这一波动需要三个基本物理量:频率(单位Hz,决定音高)、振幅(决定响度)、相位(决定波形在时间轴上的位置)。在DSP处理中,我们通常将声压转换为电压信号,再通过ADC采样为数字序列。值得注意的是,人耳对频率的感知并非线性,而是近似对数关系——这直接影响了后续分贝计算和滤波器设计的心理声学依据。
判断方法:在实际降噪工程中,首先需要明确目标信号的频率范围。例如,语音信号的能量主要集中在300Hz-3.4kHz,而音乐信号则覆盖20Hz-20kHz。通过频谱分析工具(如Python的librosa或MATLAB的pwelch)可以快速获取信号的功率谱密度,从而判断噪声与信号在频带上的重叠程度。若噪声与信号频带完全分离,则使用固定滤波器即可;若重叠严重,则需采用自适应算法。
| 物理量 | 单位 | DSP中的对应 | 降噪相关性 |
|---|---|---|---|
| 频率 | Hz | FFT bin索引 | 决定滤波器的通带/阻带设计 |
| 振幅 | Pa / V | 样本幅值 | 决定增益计算的阈值 |
| 相位 | rad / ° | 复数频谱的虚部 | 影响信号重建的波形保真度 |
| 声压级 | dB SPL | dBFS(满量程) | 用于设置噪声门限 |
2.2 采样与量化:数字域的精度边界
核心原理:采样是将连续时间信号离散化的过程,其数学基础是奈奎斯特采样定理:采样率必须大于信号最高频率的两倍,否则会发生混叠。量化则是将连续幅值映射到有限个离散电平的过程,量化位数N决定了动态范围,其信噪比理论值为SNR ≈ 6.02N + 1.76 dB。例如,16-bit量化的理论SNR约为98dB,而24-bit则可达146dB。在降噪算法中,量化噪声本身也是一种“噪声源”,当信号幅度极低时,量化噪声可能成为主导。
操作流程:在实际DSP系统中,采样与量化通常由音频编解码器(Codec)完成。关键参数选择流程如下:
- 根据信号带宽确定采样率(语音8k/16k,音频44.1k/48k);
- 根据动态范围需求选择量化位数(消费级16-bit,专业级24-bit);
- 设置抗混叠滤波器(通常为模拟低通,截止频率为0.45×Fs);
- 确认过采样率(OSR)以降低带内量化噪声。
2.3 时域与频域表示:两种视角的互补
核心原理:时域表示直接反映信号幅度随时间的变化,适合观察瞬态事件(如爆破音、开关噪声)和包络特征。频域表示则通过傅里叶变换将信号分解为不同频率分量的叠加,适合分析稳态噪声的频谱特征。对于非平稳信号(如语音),需要采用短时傅里叶变换(STFT),将信号分帧加窗后逐帧进行FFT,得到随时间变化的频谱图。降噪算法通常在频域计算增益函数,再通过逆STFT恢复时域信号。
判断方法:选择时域还是频域处理,取决于噪声特性。若噪声是脉冲性的(如键盘敲击声),时域门限或中值滤波更有效;若噪声是平稳宽带(如风扇声),频域维纳滤波或谱减法更合适。实际工程中,混合域处理(先时域检测瞬态,再频域抑制稳态)往往效果最佳。
| 对比维度 | 时域处理 | 频域处理 |
|---|---|---|
| 计算复杂度 | 低(O(N)) | 高(O(N log N)) |
| 延迟 | 低(样本级) | 高(帧级,通常10-30ms) |
| 频率分辨率 | 无 | 高(取决于帧长) |
| 适用噪声 | 脉冲、瞬态 | 稳态、宽带 |
| 典型算法 | 自适应滤波、门限 | 谱减、维纳、子空间 |
2.4 分贝概念:从物理量到感知量的映射
核心原理:分贝(dB)是一个对数比值单位,用于描述两个同量纲物理量的比值。在音频领域,常见的有:dB SPL(声压级,参考20μPa)、dBFS(数字满量程,参考最大数字编码)、dBu(电压,参考0.775V)。分贝的引入使得人耳对响度的对数感知特性得以线性化表达。在降噪算法中,增益计算通常以dB为单位,例如“-12dB降噪”意味着噪声能量被衰减到原来的约1/16。
操作流程:在DSP实现中,分贝转换常用于设置阈值和显示降噪效果。具体步骤:
- 计算信号功率P = (1/N)Σx²[n];
- 转换为dBFS:dB = 10·log10(P / P_ref);
- 设定噪声门限(如-40dBFS),低于门限的帧视为纯噪声;
- 计算增益G = max(0, 1 - α·(N_est/S_est)),其中α为过减因子。
2.5 常见音频文件格式:编码策略与降噪适配
核心原理:音频文件格式决定了数据在存储和传输中的组织方式。PCM(脉冲编码调制)是最基础的未压缩格式,WAV是其容器封装。压缩格式分为无损(FLAC、APE)和有损(MP3、AAC)。有损编码利用心理声学模型去除人耳不敏感的信息,但会引入编码噪声,这对降噪算法有双重影响:一方面,编码噪声可能被误判为信号;另一方面,降噪处理后再编码可能产生“双重损伤”。
判断方法:在降噪算法开发中,建议使用WAV或FLAC作为中间格式,避免有损压缩对算法验证的干扰。若必须处理MP3等格式,需注意其频带截断(如MP3在16kHz以上通常无信息)和预回声效应。
| 格式 | 编码方式 | 采样率/位深 | 适用场景 | 降噪注意事项 |
|---|---|---|---|---|
| WAV | PCM未压缩 | 任意/16-32bit | 算法开发、母带处理 | 无额外噪声,适合基准测试 |
| FLAC | 无损压缩 | 任意/16-24bit | 归档、高保真播放 | 解码后与WAV等价 |
| MP3 | 有损感知编码 | 32/44.1/48k/16bit | 流媒体、便携播放 | 高频截断,需先上采样再处理 |
| AAC | 有损感知编码 | 44.1/48k/16-24bit | 视频音频、iOS生态 | 编码噪声在低码率下明显 |
2.6 本章总结与工程复盘
音频信号基础是DSP降噪算法的“操作系统”。物理特性决定了信号的产生与传播边界,采样与量化划定了数字域的精度上限,时域与频域提供了互补的分析工具,分贝建立了统一的度量语言,而文件格式则约束了工程实现的输入输出条件。在实际项目中,建议按以下流程进行知识落地:
- 第一步:明确信号类型(语音/音乐/混合)与噪声类型(稳态/瞬态/宽带);
- 第二步:根据奈奎斯特定理和动态范围需求确定采样率与位深;
- 第三步:使用STFT进行时频分析,绘制频谱图确认噪声分布;
- 第四步:以dB为单位设定门限和增益参数;
- 第五步:选择WAV作为开发格式,验证算法后再适配目标格式。