1. 压扩(Companding)技术的背景
压扩是一种用于非线性量化的技术,广泛应用于语音信号的传输和记录。压扩的核心目标是在信号不同幅度下保持近乎恒定的信噪比(SNqR)。它特别适用于像语音信号这样统计特性动态变化的信号,因为这些信号的确切统计信息在传输时可能是不知道的。
为什么需要压扩?
- 语音信号的幅度变化很大(如从小声的讲话到大声的喊叫),单纯的线性量化无法有效处理这些幅度差异。
- 如果使用线性量化,小幅度信号可能会被高量化噪声掩盖,而高幅度信号又可能因为分辨率不足而失真。
- 压扩技术通过对信号幅度进行压缩,使得小幅度信号能够使用较高的量化精度,大幅度信号可以使用较低的量化精度,这样在整个信号幅度范围内保持较好的信噪比。
2. 压缩函数的设计目标
在压扩中,压缩函数的设计目标是:
- 保持恒定的SNqR:即在不同的信号幅度下,保持近似恒定的信噪比。
- 适应信号的不同幅度:对小幅度信号使用较高的分辨率(小量化增量),而对大幅度信号使用较低的分辨率(大量化增量)。
大信号经过较小程度的压缩
为此,压缩函数需要是一个非线性函数,这样才能根据信号幅度动态调整量化增量 q q q。
3. 压缩函数的推导
为了使信号在不同幅度下具有恒定的SNqR,我们使用了以下公式:
S N q R = x 2 q x 2 / 12 = 12 x 2 q x 2 SNqR = \frac{x^2}{q^2_x/12} = 12 \frac{x^2}{q^2_x} SNqR=qx2/12x2=12qx2x2
其中 x x x 是信号幅度, q x q_x q