📜  JPEG压缩

📅  最后修改于: 2020-12-30 10:52:09             🧑  作者: Mango

JPEG压缩简介

JPEG是由“联合图像专家组”开发的图像压缩标准。 1992年,它被接受为国际标准。 JPEG是一种有损图像压缩方法。 JPEG压缩使用DCT(离散余弦变换)方法进行编码转换。它允许在存储大小和压缩程度之间进行权衡。

以下是JPEG图像压缩的步骤-

步骤1:将输入图像划分为一个8×8尺寸的小块。此尺寸总计为64个单位。图像的每个单位称为像素。

步骤2: JPEG使用[Y,Cb,Cr]模型而不是[R,G,B]模型。因此,在第二步骤中,RGB转换为YCbCr。

步骤3:颜色转换后,将其转发到DCT。 DCT使用余弦函数,不使用复数。它将像素块中的信息从空间域转换到频率域。

DCT公式

步骤4:由于人类的频率很高,因此他们无法看到图像的重要方面。 DCT转换后的矩阵只能保留到特定点的最低频率值。量化用于减少每个样本的位数。

量化有两种类型:

  • 统一量化
  • 非均匀量化

步骤5:使用锯齿形扫描将8×8矩阵映射到1×64向量。之字形扫描用于将低频系数分组到矢量的顶部,将高系数分组到矢量的底部。为了消除量化矩阵中的大量零,使用了之字形矩阵。

步骤6:下一步是矢量化,将不同的脉冲代码调制(DPCM)应用于DC组件。直流分量很大且变化很大,但它们通常都接近先前的值。 DPCM编码当前块和上一个块之间的差异。

步骤7:在此步骤中,将运行长度编码(RLE)应用于AC组件。这样做是因为AC组件中有很多零。它以(skip,value)对编码,其中skip是非零值,而value是非零分量的实际编码值。

步骤8:在此步骤中,DC分量被编码到Huffman中。