音频信号基础:声音的物理特性、采样与量化、时域与频域表示、分贝概念、常见音频文件格式

在深入DSP降噪算法之前,必须建立对音频信号本身的系统性认知。降噪的本质是对信号与噪声在某个表征域中进行分离,而选择哪个域、如何表征、以何种精度表征,直接决定了算法的上限。本章从声音的物理产生机制出发,依次梳理采样与量化的数学本质、时域与频域的双重视角、分贝的计算逻辑,以及文件格式背后的编码策略,为后续的频谱减法、维纳滤波、子空间算法等具体实现打下坚实的理论基础。

音频信号基础 声音物理特性 • 频率/振幅/相位 • 声压与声强 • 人耳听觉范围 20Hz-20kHz • 掩蔽效应 采样与量化 • 奈奎斯特采样定理 • 采样率 44.1k/48k/96k • 量化位数 16/24/32-bit • 量化噪声与SNR 时域与频域 • 波形/包络/过零率 • DFT/FFT 频谱 • 短时傅里叶变换 STFT • 频谱图 Spectrogram 分贝与文件格式 • dB SPL/dBFS/dBu • WAV/PCM 无损 • MP3/AAC 有损 • FLAC/APE 压缩无损 DSP降噪算法设计输入 噪声估计 → 增益计算 → 信号重建

上图展示了本章知识体系的整体框架。声音的物理特性决定了信号的产生与传播方式,采样与量化决定了数字域的精度边界,时域与频域提供了两种互补的分析视角,而分贝与文件格式则连接了物理量与工程实现。这四个模块共同构成了DSP降噪算法工程师的“语言系统”。

2.1 声音的物理特性:从振动到数字信号的映射

核心原理:声音本质上是介质(空气、水、固体)中的机械纵波。当声源振动时,压缩区和稀疏区交替传播,形成压力波动。描述这一波动需要三个基本物理量:频率(单位Hz,决定音高)、振幅(决定响度)、相位(决定波形在时间轴上的位置)。在DSP处理中,我们通常将声压转换为电压信号,再通过ADC采样为数字序列。值得注意的是,人耳对频率的感知并非线性,而是近似对数关系——这直接影响了后续分贝计算和滤波器设计的心理声学依据。

判断方法:在实际降噪工程中,首先需要明确目标信号的频率范围。例如,语音信号的能量主要集中在300Hz-3.4kHz,而音乐信号则覆盖20Hz-20kHz。通过频谱分析工具(如Python的librosa或MATLAB的pwelch)可以快速获取信号的功率谱密度,从而判断噪声与信号在频带上的重叠程度。若噪声与信号频带完全分离,则使用固定滤波器即可;若重叠严重,则需采用自适应算法。

物理量单位DSP中的对应降噪相关性
频率HzFFT bin索引决定滤波器的通带/阻带设计
振幅Pa / V样本幅值决定增益计算的阈值
相位rad / °复数频谱的虚部影响信号重建的波形保真度
声压级dB SPLdBFS(满量程)用于设置噪声门限
经验提醒:在采集语音信号时,建议使用48kHz采样率,因为语音的基频(80-300Hz)与共振峰(最高约4kHz)都能被充分覆盖,同时为降噪算法留出频域过采样余量。

2.2 采样与量化:数字域的精度边界

核心原理:采样是将连续时间信号离散化的过程,其数学基础是奈奎斯特采样定理:采样率必须大于信号最高频率的两倍,否则会发生混叠。量化则是将连续幅值映射到有限个离散电平的过程,量化位数N决定了动态范围,其信噪比理论值为SNR ≈ 6.02N + 1.76 dB。例如,16-bit量化的理论SNR约为98dB,而24-bit则可达146dB。在降噪算法中,量化噪声本身也是一种“噪声源”,当信号幅度极低时,量化噪声可能成为主导。

操作流程:在实际DSP系统中,采样与量化通常由音频编解码器(Codec)完成。关键参数选择流程如下:

  1. 根据信号带宽确定采样率(语音8k/16k,音频44.1k/48k);
  2. 根据动态范围需求选择量化位数(消费级16-bit,专业级24-bit);
  3. 设置抗混叠滤波器(通常为模拟低通,截止频率为0.45×Fs);
  4. 确认过采样率(OSR)以降低带内量化噪声。
案例拆解:某车载语音助手在高速行驶时采集到风噪与胎噪混合信号。初始系统使用16kHz采样、16-bit量化,降噪后语音仍有明显“沙沙”声。分析发现,风噪能量集中在200-800Hz,而语音的齿音(如“s”音)能量在4-8kHz。由于采样率仅16kHz,8kHz以上的信息被完全丢失,导致齿音无法重建。升级为48kHz采样后,齿音得以保留,配合频谱减法,主观听感清晰度提升约40%。此案例说明采样率选择不能仅满足“够用”,还需考虑降噪算法对高频细节的依赖。
风险提示:量化位数并非越高越好。过高的位数会增加数据吞吐量和存储压力,且在嵌入式平台上可能造成不必要的功耗。对于降噪算法,24-bit在浮点处理中足够,但定点实现时需注意溢出风险。

2.3 时域与频域表示:两种视角的互补

核心原理:时域表示直接反映信号幅度随时间的变化,适合观察瞬态事件(如爆破音、开关噪声)和包络特征。频域表示则通过傅里叶变换将信号分解为不同频率分量的叠加,适合分析稳态噪声的频谱特征。对于非平稳信号(如语音),需要采用短时傅里叶变换(STFT),将信号分帧加窗后逐帧进行FFT,得到随时间变化的频谱图。降噪算法通常在频域计算增益函数,再通过逆STFT恢复时域信号。

判断方法:选择时域还是频域处理,取决于噪声特性。若噪声是脉冲性的(如键盘敲击声),时域门限或中值滤波更有效;若噪声是平稳宽带(如风扇声),频域维纳滤波或谱减法更合适。实际工程中,混合域处理(先时域检测瞬态,再频域抑制稳态)往往效果最佳。

对比维度时域处理频域处理
计算复杂度低(O(N))高(O(N log N))
延迟低(样本级)高(帧级,通常10-30ms)
频率分辨率无高(取决于帧长)
适用噪声脉冲、瞬态稳态、宽带
典型算法自适应滤波、门限谱减、维纳、子空间
经验提醒:STFT的帧长选择需权衡频率分辨率与时间分辨率。帧长512点(48kHz下约10.7ms)可提供约93.75Hz的频率分辨率,适合语音;帧长1024点则更适合音乐处理。窗函数推荐使用汉宁窗或平方根汉宁窗,以减少频谱泄漏。

2.4 分贝概念:从物理量到感知量的映射

核心原理:分贝(dB)是一个对数比值单位,用于描述两个同量纲物理量的比值。在音频领域,常见的有:dB SPL(声压级,参考20μPa)、dBFS(数字满量程,参考最大数字编码)、dBu(电压,参考0.775V)。分贝的引入使得人耳对响度的对数感知特性得以线性化表达。在降噪算法中,增益计算通常以dB为单位,例如“-12dB降噪”意味着噪声能量被衰减到原来的约1/16。

操作流程:在DSP实现中,分贝转换常用于设置阈值和显示降噪效果。具体步骤:

  1. 计算信号功率P = (1/N)Σx²[n];
  2. 转换为dBFS:dB = 10·log10(P / P_ref);
  3. 设定噪声门限(如-40dBFS),低于门限的帧视为纯噪声;
  4. 计算增益G = max(0, 1 - α·(N_est/S_est)),其中α为过减因子。
实战场景:在调试降噪算法时,常需要评估降噪量。假设原始语音信号在1kHz处的功率为-20dBFS,噪声功率为-35dBFS,则信噪比SNR = 15dB。经过算法处理后,噪声降至-50dBFS,语音保持-20dBFS,则SNR提升至30dB,降噪量为15dB。这一指标可通过实时频谱分析仪或离线脚本验证。注意,主观听感与客观SNR并非完全线性,还需考虑掩蔽效应。
常见误区:dB SPL与dBFS不可直接比较。dB SPL是声学量,dBFS是数字量,两者之间通过麦克风灵敏度和ADC参考电压换算。在嵌入式开发中,若混淆这两个单位,可能导致增益计算偏差达20dB以上。

2.5 常见音频文件格式:编码策略与降噪适配

核心原理:音频文件格式决定了数据在存储和传输中的组织方式。PCM(脉冲编码调制)是最基础的未压缩格式,WAV是其容器封装。压缩格式分为无损(FLAC、APE)和有损(MP3、AAC)。有损编码利用心理声学模型去除人耳不敏感的信息,但会引入编码噪声,这对降噪算法有双重影响:一方面,编码噪声可能被误判为信号;另一方面,降噪处理后再编码可能产生“双重损伤”。

判断方法:在降噪算法开发中,建议使用WAV或FLAC作为中间格式,避免有损压缩对算法验证的干扰。若必须处理MP3等格式,需注意其频带截断(如MP3在16kHz以上通常无信息)和预回声效应。

格式编码方式采样率/位深适用场景降噪注意事项
WAVPCM未压缩任意/16-32bit算法开发、母带处理无额外噪声,适合基准测试
FLAC无损压缩任意/16-24bit归档、高保真播放解码后与WAV等价
MP3有损感知编码32/44.1/48k/16bit流媒体、便携播放高频截断,需先上采样再处理
AAC有损感知编码44.1/48k/16-24bit视频音频、iOS生态编码噪声在低码率下明显
经验提醒:在嵌入式平台上,若内存受限,可考虑将音频数据以16-bit PCM存储,但算法内部使用32-bit浮点处理,以避免中间计算精度损失。文件格式转换时,务必检查采样率是否一致,否则需进行重采样,而重采样本身会引入新的频谱失真。
案例拆解:某智能音箱产品在播放MP3音乐时,用户反馈降噪开启后音质变“闷”。排查发现,MP3编码在16kHz以上几乎没有数据,而降噪算法默认对全频带进行噪声估计,导致高频段被误判为纯噪声并大幅衰减。解决方案:在算法前端增加频带检测,若检测到信号在16kHz以上能量极低(低于-60dBFS),则自动将降噪上限频率调整为15kHz,避免对无效频带的过度处理。修改后,主观音质评分从3.2提升至4.1(满分5分)。此案例说明,文件格式的频带特性必须作为算法参数设置的输入条件。

2.6 本章总结与工程复盘

音频信号基础是DSP降噪算法的“操作系统”。物理特性决定了信号的产生与传播边界,采样与量化划定了数字域的精度上限,时域与频域提供了互补的分析工具,分贝建立了统一的度量语言,而文件格式则约束了工程实现的输入输出条件。在实际项目中,建议按以下流程进行知识落地:

  • 第一步:明确信号类型(语音/音乐/混合)与噪声类型(稳态/瞬态/宽带);
  • 第二步:根据奈奎斯特定理和动态范围需求确定采样率与位深;
  • 第三步:使用STFT进行时频分析,绘制频谱图确认噪声分布;
  • 第四步:以dB为单位设定门限和增益参数;
  • 第五步:选择WAV作为开发格式,验证算法后再适配目标格式。
常见误区总结:① 忽略抗混叠滤波器,导致高频噪声折叠到低频;② 量化位数不足,在低幅度信号段引入可闻噪声;③ 将dB SPL与dBFS混用,造成增益计算错误;④ 直接处理MP3等有损格式而不考虑编码噪声;⑤ 帧长选择不当,导致频率分辨率不足或时间延迟过大。避免这些误区,是算法从仿真走向产品化的关键。