语音增强

语音增强（Speech Enhancement）旨在透过各类音讯讯号处理算法，提升语音讯号在各种声学环境中的可懂度（intelligibility）与主观音质（perceptual quality）。常见的干扰包括背景噪音、混响、回音（echo）与通道失真等。语音增强技术已广泛应用于行动通讯、VoIP、视讯会议系统、语音辨识、助听器及人机互动等领域。

在实际应用中，语音增强算法的设计面临多重挑战，例如环境噪音的不可预测性、多个说话者的干扰、处理延迟对即时通讯的影响，以及在移动设备上对运算能力与功耗的限制。

## 噪音的类型与挑战

语音增强技术的选择与设计，很大程度上取决于需要处理的噪音类型。噪音在声学特性上可大致分为两类：

- 定常噪音（Stationary Noise）：指统计特性不随时间变化的噪音。这类噪音的频谱相对稳定，较容易透过算法进行估计和抑制。
- 例子：风扇运转声、空调噪音、白噪音、粉红噪音。
- 非定常噪音（Non-stationary Noise）：指统计特性随时间快速变化的噪音。这类噪音的不可预测性高，是语音增强领域中的主要挑战。
- 例子：周围他人的说话声、背景音乐、键盘敲击声、突然的关门声等脉冲噪音（Impulsive noise）。

## 核心算法分类

语音增强的算法可依其处理方式，概分为三大类：滤波技术、频谱恢复技术，以及基于语音模型的技术。

### 滤波技术

滤波技术是语音增强中最经典的一类方法，其核心思想是设计一个或多个数位滤波器，用以抑制噪音频段并通过语音频段。

#### 频谱差减法

频谱差减法（Spectral Subtraction）为一基础降噪技术，其核心思想假设噪音为加性且平稳的（additive and stationary）。基于此假设，算法从带有噪讯的语音信号频谱中，直接减去估计出的噪讯频谱，以获得纯净的语音频谱。

基本原理

- 分段与转换：将带有噪讯的语音信号 $y(t)$ 切割成短时间音框（frame），并对各音框进行傅立叶转换（FFT），得到其频谱 $Y(f)$。
- 噪讯估计：利用语音讯号中无人声的静音区段（silence periods）来估计噪讯的平均功率谱 $|\hat{N}(f)|^2$。此步骤为效果关键，准确的噪讯估计直接影响降噪品质。
- 频谱相减：将带噪语音的功率谱 $|Y(f)|^2$ 减去估计的噪讯功率谱 $|\hat{N}(f)|^2$，从而得到估计的纯净语音功率谱 $|\hat{S}(f)|^2$。
- $$|\hat{S}(f)|^2 = |Y(f)|^2 - \alpha |\hat{N}(f)|^2$$
- 其中 $\alpha$ 为超参数（over-subtraction factor），用于控制减去的噪讯量。通常设定 $\alpha > 1$ 以避免噪讯残留。
- 信号重建：将计算出的纯净语音功率谱 $|\hat{S}(f)|^2$ 与原始的带噪语音相位 $\angle Y(f)$ 结合，再透过反傅立叶转换（IFFT）重建成时域上的降噪语音信号 $\hat{s}(t)$。

优缺点

- 优点：算法直观，计算复杂度低，对于如风扇声、白噪音等稳定背景噪音有良好效果。
- 缺点：会产生音乐性噪音（Musical Noise），即处理后残留的随机频谱尖峰所造成的恼人音调。同时，此方法对突发或非平稳的噪音（如键盘声）效果不佳，且可能造成语音失真。

#### 维纳滤波

维纳滤波（Wiener Filter）是一种基于统计的最佳化滤波器，目标是使滤波后信号与原始纯净信号之间的均方差（Mean Square Error, MSE）最小化。它同时考虑了信号与噪讯的统计特性（即功率谱）。

基本原理

维纳滤波器在频域上的增益函数 $H(f)$ 被定义为：

$$H(f) = \frac{P_S(f)}{P_S(f) + P_N(f)} = \frac{\mathrm{SNR}(f)}{1 + \mathrm{SNR}(f)}$$

其中 $P_S(f)$ 与 $P_N(f)$ 分别为纯净语音和噪音的功率谱密度，而 $\mathrm{SNR}(f)$ 是与频率相关的信噪比（Signal-to-Noise Ratio）。此滤波器会根据每个频带的信噪比进行动态调整，在信噪比高的频带保留较多信号，在信噪比低的频带进行较多抑制。

优缺点

- 优点：在均方差最小化的准则下为理论上的最佳线性滤波器。相较于频谱差减法，能更好地平衡降噪与语音失真，并有效抑制音乐性噪音。
- 缺点：需要准确估计语音与噪音的功率谱，这在现实中难以达成。作为线性滤波器，其性能受限于此，且对非平稳噪音的处理能力依然有限。

#### 信号子空间方法

信号子空间方法（Subspace Approach 或 SSA）是一种基于矩阵分解的技术，它将带噪信号所在的向量空间分解为两个正交的子空间：一个由纯净语音信号构成的信号子空间（signal subspace），以及一个由噪讯构成的噪讯子空间（noise subspace）。

基本原理

此方法首先建立带噪信号的协方差矩阵，接着透过特征分解（Eigendecomposition）找出其特征值与特征向量。较大的特征值对应的特征向量构成了信号子空间，其余则构成噪讯子空间。降噪的过程是将原始信号投影到信号子空间上，从而滤除位于噪讯子空间中的噪声成分。

优缺点

- 优点：模型严谨，对白噪音与有色噪音均有效，在低信噪比环境下通常优于前两者。
- 缺点：计算复杂度高，尤其是特征分解步骤，使其较不适用于即时系统。如何准确划分信号与噪讯子空间的维度（dimension）是其关键挑战。

#### 适应性滤波

适应性滤波（Adaptive Filter）是一种能够根据输入信号的统计特性自动调整其滤波器参数（系数）的技术。在语音增强中，它常被用于回音消除（Acoustic Echo Cancellation, AEC）和噪音抑制。

其基本架构包含一个可调参数的数位滤波器（通常是FIR滤波器），以及一个根据误差信号来更新滤波器参数的自适应算法。最经典的算法是LMS（Least Mean Squares）及其变种。在回音消除的场景中，系统会将远端的语音作为参考信号，预测本地麦克风会收到的回音，并从麦克风信号中将其减去。

### 频谱恢复技术

这类方法旨在从带噪信号的频谱中，直接估计出纯净语音的频谱。

- MMSE-STSA（Minimum Mean Square Error Short-Time Spectral Amplitude Estimator）：最小均方误差短时谱幅度估计器，是此类方法中最具代表性的算法之一。它透过统计模型估计语音频谱的幅度，而非像维纳滤波一样设计一个滤波器。

### 基于语音模型的技术

此类方法利用预先训练好的语音模型来辅助降噪，能够更好地保留语音的自然度与结构。

- 统计模型方法：早期研究利用隐藏马可夫模型（HMM）或高斯混合模型（GMM）对语音和噪音的统计分布进行建模，再透过贝氏推论等方法分离噪音。
- 深度学习方法：近代，以深度神经网络（DNN）为基础的方法成为主流，也被称为神经元语音增强（Neural Speech Enhancement）。这类方法透过大量数据学习从带噪语音到纯净语音的复杂映射关系。常见的模型架构包括：
- 循环神经网络（RNN），特别是LSTM与GRU
- 卷积神经网络（CNN），如 U-Net 架构
- Transformer
- 生成对抗网络（GAN）

这些模型在处理非平稳、复杂的真实世界噪音时，其性能通常远超越传统算法。

## 性能评估

为了衡量语音增强算法的效果，研究人员使用主观与客观两种评估指标。

### 主观评估

主观评估透过人类听众直接对处理后的语音品质进行评分。虽然耗时且成本高，但其结果最能反映真实的听感。

- 平均意见分数（Mean Opinion Score, MOS）：是最常用的主观评估指标。听众会对语音的音质或可懂度给出1分（差）到5分（优）的评分，最终取所有听众的平均分数。

### 客观评估

客观评估使用数学模型来预测语音的品质或可懂度，优点是快速、可重复且成本低。这些指标通常透过计算原始纯净语音与增强后语音之间的差异或关联性来评分。

- 信噪比（SNR）：衡量信号与噪音的功率比例，是最基础的指标，但其分数有时与人类主观感受关联性不佳。
- PESQ（Perceptual Evaluation of Speech Quality）：为ITU-T P.862标准。它透过心理声学模型来模拟人类的听觉系统，是评估语音音质（Quality）的常用指标。
- STOI（Short-Time Objective Intelligibility）：专门用于评估语音的可懂度（Intelligibility）。它透过比较原始语音和处理后语音在短时间内的频谱关联性来计算分数，其结果与人类的语音辨识率高度相关。

## 外部链接

- Speech Enhancement – OGI School of Science and Engineering
- Speech Enhancement for Android – Educational demo
- Speech Enhancement Audio Demonstrations by Prof. Philipos C. Loizou – 提供多种算法处理前后的音讯范例，效果一目了然。
- ITU-T Recommendations – 国际电信联盟(ITU-T)标准文件，可查询P.862 (PESQ)等相关标准。
- SpeechBrain: A PyTorch Speech Toolkit – 一个涵盖语音增强等多种任务的现代开源工具库。