DCT全称为Discrete Cosine Transform,即离散余弦变换。DCT变换属于傅里叶变换的一种,常用于对信号和图像(包括图片和视频)进行数据压缩的基础。
在视频压缩历史上重要的发明之一就是DCT。没有DCT,后面的H.26X, JPEG等一系列压缩标准将无从谈起。
DCT有比较复杂的数学公式,我们这里仅做简单理解:
如下图,下图是个一张图中的一部分(3*3的像素块)
对这个像素矩阵做DCT,相当于将矩阵的能量压缩到第一个元素中,被称为直流(DC)系数。其余的系数被称为交流(AC)系数。这意味着输出的二维DCT的左上角被称为DC系数。它是DCT最重要的输出,包含了很多关于原始图像的信息。其余的系数被称为交流系数(AC coefficients)。如果你使用DCT对图像进行转换,AC系数包含了图像的更多细节。同时,如果把这些DCT系数应用于反向的2D-DCT,将得到原始系数。DCT本身并不会压缩数据,它为随后的量化之类的操作,提供了一个良好的基础。
相当于把除了第一个格的部分信息(特征)都抽取了一部分到第一个格
第一个格的像素值就是这个图像块的低频信息,其余格的就是图像的高频信息
低频信息表示的是一张图的总体样貌。一般低频系数的值也比较大。而高频信息主要表示的是图像中人物或物体细节。高频系数的数量多,做完了 DCT 变换之后,低频和高频信息就分离开来了。