JPEG编码过程详解
本文旨在对JPEG编码过程中的细节步骤进行说明,具体原理部分请参照Wikipedia
色彩空间转换
原始图像的像素点是以RGB形式存储的,即每个像素点由3个字节的数据组成,分别为Red通道、Green通道和Blue通道三个色度通道。JPEG很大一部分压缩算法是基于人眼对亮度和色度敏感性的差异而实现的,所以我们需要将RGB通道转换为一种叫做YCbCr的通道,即每个像素点由3个字节数据组成,分别为Y通道(亮度通道)、Cb通道(Blue)和Cr通道(Red),从而实现亮度数据的分离
这两个色彩通道的转换公式网上已经有很多了,这里再给一下:
RGB到YCbCr
- Y = 0.299 × R