(以前的标准都采用的是8*8块大小的DCT变换,用的多的是Fast-Forward Dct Transform)
变换块大小的选择: 通常来说大的块能够有利于分析全局范围内的相关性。而小的块更好的利用局部适应性, 小的块也有助于减小实现的复杂度;但是小的块带来的缺陷:熵编码时需要添加end-of-block标志,这个多余的开销增大了。
h.264中选用的4*4块,这个小块造成的快效应也比较多,所以需要用In-loop-deblock filter来降低块效应。h.264运用的变换HCT(high correlation transform){当然也可选其他变换:WHT(Walsh Hardmard Transform)、Slant transform、DCT transform}。其中HCT运用到的矩阵(2D farward transform):
S为4*4 block输入像素,C为4*4block resulting coefficients.其变换:
此变换能够达到整数精度。只有add和shift就可以实现,不需要mutiply和divide,从而提高精度和计算 效率。其你变化的矩阵也是整数