AZB检测可以看作是快速量化的加速工具,因此量化算法在AZB检测中起着至关重要的作用。
引言
在中低比特率应用中,绝大多数变换块被量化为AZB。本文提出一种基于哈达玛域SATD阈值的改进AZB检测算法,一方面,为RDOQ制定更加精确的系数级零量化阈值模型,通过使用贝叶斯决策和统计推断来帮助AZB检测;另一方面,测量描述单个块特征的局部参数,设置自适应的基于SATD的AZB检测阈值。
在死区HDQ中,利用死区偏移量б来调整量化结果z:
其中,q是由量化参数QP决定的量化步长,判断系数是否被量化为0的系数级零量化阈值可以表示为:
也就是说,如果变换系数u小于这个阈值,就可以推断出这个系数会被量化为0。
注意,这个阈值只适用于死区HDQ
The new RDOQ based Γ(DCT) model
对于像16x16和32x32的这样的大尺寸TU,AZB的比例明显低于小尺寸块(4x4、8x8)。当SATD逐渐增加时,RDOQ的AZB出现概率超过了死区HDQ的AZB出现概率。这是因为RDOQ有着强制把一个或两个非零系数的NAZB在RDO意义上转换为AZB。也正是因为这个原因,直接采用死区Γ(DCT)模型是不合理的。
Γ(DCT) model for RDOQ
在视频编码领域,传统的Γ(DCT)一般是由死区偏移б=1-Γ(DCT)/q。在H.264中,给死区HDQ设定б=1/3和б1/6。然而,RDOQ和死区HDQ不同,在RDOQ中使用网格搜索来代替HDQ中的简单的四舍五入。
从统计分析观点来看,Γ(DCT)和DCT系数的分布有关。通常,变换系数被认为是服从拉普拉斯分布的:
其中,x代表变换系数,u是系数强度,n是统计个数。
通常,位于(0,0)位置的DC的参数具有最大的能量,因此最大的б和最小的Γ(DCT)会出现在(0,0)位置。
一般来说,一个块被分类成AZB或者NAZB主要是由DC低频分量决定,他们具有相对比较大的系数强度。因此,根据直流分量的分布导出块级别ΓDCT是合理的。
设wi是在RDOQ中被量化为0或者非0的系数u的最后分类结果,w0表示系数u被量化为0,w1表示u没有被量化为0。根据贝叶斯定理,后验概率表示如下:
贝叶斯分类器是典型的具有最小误分类的分类方法,根据贝叶斯分类器,二元分类规则表示如下:
RDOQ的最终阈值Γ(DCT)可以由误分类概率来合理确定。一种情况是属于w0的样本被误判为w1,相对地,另外一种情况是属于w1类的样本被误判为w0。整个的错误分类概率Pe可表示如下:
如下图所示,重叠区域越小,误分类的概率越小,最优阈值可以通过最小化误差概率来确定:
下图展示了4x4和8x8块的情况下,(0,0)位置的零量化系数和非零量化系数的直方图结果。
下图展示了QP和Λ之间不同组合情况下的Γ(DCT)的三维仿真结果。
根据仿真结果来得到自适应Γ(DCT):
这里,对于4x4块,α=-0.006、β=0.00065;对于8x8块,α=-0.002、β=0.0002。两种情况下的Γ(DCT)模型的拟合函数如下图:
AZB检测算法
DCT将绝大多数残差能量转换到低频区域,从而有助于量化和熵编码。随着变换块大小的增加,计算复杂度也相应增加。相比之下,哈达玛变换是视频编码中常用的快速模式判定算法。拉普拉斯模型被广泛用于表征DCT系数的统计分布。假设哈达玛变换系数服从拉普拉斯分布,xh为哈达玛变换系数,Λh代表模型分布参数。那么数学期望就是:
然而,单个块的数学期望被用于表示系数特征,单个块的期望假设与整体期望相同,即:
哈达玛变换系数的(i,j)位置的方差可以计算为:
根据上式来推导残差系数标准差的期望:
这样,就得到了残差系数标准差和SATD之间的关系:
以相同方式,可以得到DCT系数的标准差和预测残差的标准差之间的关系:
将上面两个式子联合起来,就有了:
这样,综合前面的,就可以得到阈值:
这一项:
在(0,0)位置取得峰值,因此AZB检测阈值可以根据(0,0)位置的DC系数来确定。
下图给出了在AZB和NAZB情况下DCT系数的直方图统计结果。
可以看出来,AZB的离散余弦变换系数具有相对较小的幅度,并且收敛在0附近。
最终,AZB检测流程可表示如下: