
3.9 量化
量化是将具有连续幅度值的输入信号转换到只具有有限个幅度值的输出信号的过程。量化后的信号再经反量化一般不能精确地恢复原有值,即存在信息缺失。在压缩编码中,量化是一个对压缩后的码率和重建图像质量均产生重要影响的步骤。
3.9.1 均匀量化器
在量化器中从输入信号x到输出信号y的转换过程可以表示为
y=Q(x)=yi (x∈Ai) (3-129)
Ai∶{xi<x≤xi+1}
式中,xi为判决电平;yi为输出电平。
图3-39给出了几种均匀量化器的量化特性Q(x)。图中量化器的特性都是对称的,且
式中,Δ称为量化台阶或量化步长。图3-39(a)所示的量化特性称为中平型(Mid-Step,或Mid-Tread),而图(b)所示的称为中升型(Mid-Riser)。二者的区别仅在于输出电平是否包括了零电平。除了(a)、(b)两种特性以外,在压缩编码中还常常用到图(c)所示的量化特性。图(c)与(a)所示特性的区别在于输出零电平所对应的输入电平范围较宽,因而有利于数据的压缩。这个较宽的范围通常称为死区(Deadzone)。

图3-39 均匀量化器的量化特性
量化器输出幅度与输入幅度之差,称为量化误差,其均方误差值σ2d为
式中,p(x)为量化器输入信号x的概率分布密度,N为量化级数。
3.9.2 最小均方误差量化器
如果输入信号的统计特性[如概率密度函数p(x)]是已知的,则可以通过使均方量化误差σ2d达到最小,来设计量化级数为N的量化器的输出电平yi和判决电平xi。这样得到的量化器通常称为劳依得—麦克思(Loyd-Max)量化器。
使均方量化误差
为最小的必要条件是,σ2d对xi和yi的偏导数均为零。由此得到
(3-134)式说明,最小均方误差量化器的判决电平应取在两相邻输出电平的中间,而(3-135)式说明,该量化器的输出电平应选择在两相邻判决电平间隔所对应的概率密度函数的重心。如果概率密度函数不是均匀分布的,那么所得到的最佳量化器是一个非均匀量化器。图3-40(a)给出了一个非均匀量化特性的例子。

图3-40 非均匀量化器
量化器的非线性程度可以通过曲线C(x)来表示[见图3-40(b)]。图中给出了动态范围为[-xmax,xmax]、级数为N的均匀量化器和非均匀量化器特性之间的对比。当N足够大时,C(x)的斜率近似为两个量化器的量化台阶之比,即
3.9.3 最小熵量化器
级数为N的量化器的输出通常以二进制方式编码。每个样值所对应的码字的长度L用下式表示:
L≥log2N (比特/样值) (3-137)
当N为2的整数幂时,上式取等于号。
假设将量化器输出视为一个具有N个符号的离散无记忆信源(例如,在具有最佳预测器的DPCM系统中,可以足够精确地假设量化器输出是统计独立的),则该信源的熵H(Q)为
式中,Pi为量化器输出电平yi出现的概率。Pi由下式给出:
H(Q)代表了信源的平均信息量。我们将会从3.10节中了解,利用熵编码(通常是变长的)可以将输出码字的平均码长降至接近于或等于信源的熵。这就是说,当熵编码是理想的时候,它可以将平均码长压缩到比采用二进制编码时短,二者的差值记为ΔL,则
ΔL=log2N-H(Q) (3-140)
为了使ΔL尽可能地大,我们将量化器的设计优化问题重新定义为:在给定σ2d的条件下,求判决电平和输出电平,使得输出熵为最小值。也就是说,我们把量化器和熵编码结合在一起来考虑它们的联合优化问题。与3.9.2节中最小均方误差准则下的最佳量化器相对应,这样设计的量化器称为最小熵量化器。
当量化级数N足够大,即量化台阶足够小时,我们可以假设在xi和xi+1之间p(x)是一个常数,且yi取xi和xi+1的平均值,则
其中Δi=xi+1-xi为第i个量化台阶。将(3-141)式和(3-136)代入(3-132)式,得到
同样由于N足够大,(3-138)式可以写成
其中第一项近似为量化器输入信号x的熵H(X)。将(3-136)式代入(3-143)式,得到
根据拉格朗日乘数法,在σ2d为常数的条件下求H(Q)的极小值问题,可以变为求下式的极值问题:
其中λ为任意常数。令(3-145)式对dC(x)/dx的导数为零,得到
在图3-40(b)所示的C(xmax)=xmax和C(0)=0的边界条件下,则有
Copt(x)=x (3-147)
上述结果说明,当N足够大时,对于给定的量化失真,最小熵量化器是一个均匀量化器。
关于量化器和熵编码联合优化的问题,也可以从另一个角度来进行,即在给定熵H(Q)的条件下,求判决电平和输出电平,使得量化误差σ2d为最小值。此时获得的量化器称为熵约束最佳量化器。从这个角度进行的优化结果表明,当N足够大时,均匀量化器也接近于最佳。如果我们在量化器和熵编码的联合优化中,将熵H(Q)看成“速率”(熵编码输出的每符号比特数),那么无论是在失真约束下最小化速率,还是在速率约束下最小化失真,均匀量化器都是或者接近于最佳的。因此,在图像和视频压缩编码的国际标准中,都采用了均匀量化和熵编码结合的方法。
3.9.4 自适应量化
在压缩编码中还常常使用自适应量化器。自适应量化器有一组预先设定好的、具有不同量化台阶的均匀量化器,在工作时根据信号特性的动态变化自动切换到相应的量化器(即切换到相应的量化步长)。例如在图像数据压缩中,根据视觉的空间域掩蔽效应,在图像细节丰富的部位使用量化步长大的量化器,在细节少的部位使用量化步长小的量化器,以使图像各部位由量化而产生的噪声的能见度大致相同。
度量图像细节的丰富程度可以有多种准则,例如,在空间域中,以相邻像素间的灰度之差的绝对值为依据、以已接收到的前几个像素预测误差值的加权和为依据,或直接以预测误差信号本身为依据等。一种频域度量方法则是,定义图像的活动性(Activity)函数AF,
式中,yi为第i次系数;q为归一化常数;N为变换系数的个数。由于上式的求和符号中没有包含i=0的系数,因此AF代表了图像AC分量的能量(即空间域亮度变化的快慢)。根据AF值的大小将图像块分为几种类型,每一种类型使用不同的量化器。值得指出,多数判断准则都以解码端也同时具备的信息为依据,这样不必将量化台阶变动的情况传送给解码端,解码端就能够根据同一准则正确地解量化。
3.9.5 预测误差和DCT系数的量化
预测误差通常近似地遵从拉普拉斯分布。已知概率分布,根据前面介绍的方法,即可设计量化器。

图3-41 DPCM的量化误差
用量化后的预测误差重建原来的信号将引入失真,典型的失真情况如图3-41所示。在信号较为平坦处(预测误差小),信号微小的变化使量化后的预测误差在量化器两个最小电平之间波动,造成重建信号的颗粒噪声(Granular Noise)。当信号忽高忽低时,预测误差的变动较大,如果量化粗糙的话,重建信号将产生边缘忙乱(Edge Business)。在信号的上升沿较陡(预测误差幅度很大)时,如果量化器的动态范围(最高量化电平)过小,重建信号将“赶不上”原信号的变化,这称为斜率过载(Slope Over load)。
预测误差的量化误差只引起周围邻近区域内(局部)图像的失真,而一个DCT系数的量化误差却对产生此系数的整块(全局)图像的质量产生影响。考虑到图像特性的空间不均匀性,通常将一幅图像划分成8×8或16×16的块,再对块图像进行变换。在图像分块做DCT时,直流(及低频)分量的量化误差将扩大块与块之间平均灰度的差异,从而在重建图像上显现出明显的分块结构,称为块效应。DCT的高频系数在其幅度相当小时,将被“截断”(即量化到零)。高频系数的量化误差(包括因截断而产生的误差),将降低图像的分辨率,使细节模糊;在亮度突变的附近由于吉布斯(Gibbs)效应而产生亮暗相间的条纹(Ringing),同理在彩色突变处产生颜色的泄漏(Color Bleeding)等。在活动图像序列中,这些失真还可能造成原来被运动物体遮挡而新暴露出来的背景处出现“脏痕”。
与预测误差的量化相同,变换系数的量化器也要根据其概率分布来设计。图像信号DC分量的概率分布一般近似为均匀分布。至于AC分量的分布,虽然以前很长一段时间曾沿用高斯分布,但实际上用均值为零的拉普拉斯分布来近似更为适合。