电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

JPEG图像格式详解

JPEG图像格式详解_第1页
1/14
JPEG图像格式详解_第2页
2/14
JPEG图像格式详解_第3页
3/14
JPEG 图像格式详解JPEG 压缩简介-------------1. 色彩模型JPEG 的图片使用的是YCrCb 颜色模型, 而不是计算机上最常用的RGB. 关于色彩模型, 这里不多阐述. 只是说明, YCrCb 模型更适合图形压缩. 因为人眼对图片上的亮度Y 的变化远比色度C 的变化敏感. 我们完全可以每个点保存一个8bit 的亮度值, 每2x2 个点保存一个Cr Cb 值, 而图象在肉眼中的感觉不会起太大的变化.所以, 原来用RGB 模型, 4 个点需要 4x3=12 字节. 而现在仅需要 4+2=6 字节; 平均每个点占 12bit. 当然 JPEG 格式里允许每个点的C 值都记录下来; 不过 MPEG 里都是按 12bit 一个点来存放的, 我们简写为YUV12.[R G B] -> [Y Cb Cr] 转换-------------------------(R,G,B 都是8bit unsigned)| Y||0.2990.5870.114 || R || 0 || Cb |=|- 0.1687- 0.33130.5| * | G |+ |128|| Cr ||0.5- 0.4187- 0.0813|| B ||128|Y = 0.299*R + 0.587*G + 0.114*B(亮度)Cb =- 0.1687*R - 0.3313*G + 0.5*B + 128Cr =0.5*R - 0.4187*G - 0.0813*B + 128[Y,Cb,Cr] -> [R,G,B] 转换-------------------------R = Y+ 1.402*(Cr-128)G = Y - 0.34414*(Cb-128) - 0.71414*(Cr-128)B = Y + 1.772*(Cb-128)一般, C 值 (包括 Cb Cr) 应该是一个有符号的数字, 但这里被处理过了, 方法是加上了 128. JPEG 里的数据都是无符号 8bit 的.2. DCT (离散余弦变换)JPEG 里, 要对数据压缩, 先要做一次 DCT 变换. DCT 变换的原理, 涉及到数学知识, 这里我们不必深究. 反正和傅立叶变换(学过高数的都知道) 是差不多了. 经过这个变换, 就把图片里点和点间的规律呈现出来了, 更方便压缩.JPEG 里是对每8x8个点为一个单位处理的. 所以如果原始图片的长宽不是 8 的倍数, 都需要先补成 8的倍数, 好一块块的处理. 另外, 记得刚才我说的 Cr Cb 都是 2x2 记录一次吗? 所以大多数情况, 是要补成 16x16 的整数块.按从左到右, 从上到下的次序排列 (和我们写字的次序一样). JPEG 里是对 Y Cr Cb 分别做 DCT 变换的. 这里进行 DCT 变换的 Y, Cr, Cb 值的范围都是 -128~127. (Y 被减去 128)JPEG 编码时使用的是 Forward DCT (FDCT) 解码时使用的 Inverse DCT (IDCT)下面给出公式:FDCT:772*x+12*y+1F(u,v) = alpha(u)*alpha(v)* sum sum f(x,...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

JPEG图像格式详解

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部