量化是对变换系数进行,并将量化索引熵编码。AV1的量化参数 QP 的取值范围是0 ~ 255。
一、Quantization Step Size
在给定的 QP 下,DC 系数的量化步长小于 AC 系数的量化步长。DC 系数和 AC 系数从 QP 到量化步长的映射如下图所示。当 QP 为 0 时,实现无损编码。默认情况下,所有的 AC 系数将使用相同的量化步长。由于人类视觉系统在不同频率下对失真的容忍度不同,AV1 还支持15组预定义的量化加权矩阵,其中每个单独频率分量的量化步长进一步按不同比例缩放。
每一帧可以分别为亮度分量和色度分量单独选择一个量化加权矩阵集。
二、Quantization Parameter Modulation
AV1 为待编码帧指定一个 base QP,记为QP_base。在亮度和色度分量中 DC 和 AC 系数的QP值如下表所示。 ΔQPp,b是 frame header 中传输的附加偏移值,式中,p∈{Y, U, V}表示颜色分量,b∈{dc, ac}表示 DC 或 AC 变换系数。
认识到一个帧内的编码块可能有不同的速率失真权衡,AV1进一步允许在 SuperBlock 和编码块级别上存在 QP 偏移。SuperBlock 级别的 QP 偏移的值由 Slice Header表示。选项有:1、2、4、8。 编码块级QP偏移可以通过 segmentation 实现。AV1允许帧将其编码块分为多达八个 segments ;每个 segments 都有自己的QP偏移量,由 frame header 决定。与每个编码块相关联的 segment index 通过比特流发送到解码器。
因此,编码块 QPcb 中 AC 系数的有效QP由下式给出
其中 ΔQPsb 和 ΔQPseg 分别是 SuperBlock 和 segment 的QP偏移量。clip函数确保它保持在有效范围内。不允许QP从非零值变为零,因为零是为无损编码保留的 。
解码器使用均匀量化器重建量化后的像素。给定量化步长 Δ 和量化索引 k,则重构像素为 kΔ。