- 1、本文档共51页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JPEG图像压缩编码原理及格式
JPEG图像压缩编码原理及格式 ?概况 ?算法原理(DCT、量化、熵编码) ?格式概述 JPEG概况 JPEG=Joint Picture Expert Group =联合图像专家组 “联合”=国际电话电报咨询委员会(CCITT) +国际标准化组织(ISO) 第1个灰度及彩色静止图像的国际标准 1993年公布。 JPEG的模型和算法流程 JPEG编码: 原始图像数据?压缩图像数据 JPEG的模型和算法流程 JPEG解码: 压缩图像数据?解压缩图像数据 JPEG图像压缩的核心方法 余弦变换: 使空间域像素数据?频率域, 许多高频数据很小,可以置0; 对频谱数据的“Z”形量化; 非等长的熵编码(Huffman/算术编码) JPEG中的余弦变换 余弦变换: JPEG中的余弦变换 在JPEG中,将图像分割成8x8像素的小块, 进行余弦变换,其变换式为(M=N=8): JPEG中的余弦变换 四个8x8图像块如下:图像的变化不同 JPEG中的余弦变换 pic0: JPEG中的余弦变换 pic0: JPEG中的余弦变换 对pic0进行DCT: JPEG中的余弦变换 对pic0进行DCT: JPEG中的余弦变换 pic1: JPEG中的余弦变换 对pic1进行DCT: JPEG中的余弦变换 pic2: JPEG中的余弦变换 对pic2进行DCT: JPEG中的余弦变换 pic3: JPEG中的余弦变换 对pic3进行DCT: JPEG中的余弦变换 在JPEG进行余弦变换后,由8x8像素图像块获得8x8个频域系数C(u,v),如果存储64个频域系数,则图像数据并不能压缩。 关键点?通常,变换后的频域系数直流成分C(0,0)最大,低频域系数大于高频域系数,高频域的系数较小,可以用某种算法使其接近于0。 采用一些算法,使一定频率以外的高频系数为0,则存储的数据量可以压缩。 JPEG中的量化 此处的“量化” 不是指:A/D转换中的量化。 JPEG量化是: 事先建立1张8x8个数据的“量化表” ,“量化表”内数据大小排布的规律是:数值随频率上升而上升,直流/低频位置上的数值小,高频位置上的数值大。 用DCT获得的8x8频域系数,除以对应位置上的量化表数据,高频系数就可能趋于0,而直流成分和低频系数则较大。 JPEG中的量化 量化计算:计算后,较多的高频系数为0。 “量化表”决定了高频系数非0的范围、保留高频成分的多少。 有不同等级的“量化表”,对应不同的压缩/还原质量。 JPEG中的量化 例如:8x8像素的图像: JPEG中的量化 例如:8x8个DCT系数: JPEG中的量化 量化表: JPEG中的量化 DCT系数?量化表系数?舍入取整: JPEG中的量化 量化后64个DCT系数的排序(Z形): JPEG中的量化 量化后系数的排序(Z形): JPEG的编码 JPEG编码: 原始图像数据?压缩图像数据 Huffman熵编码 对信息符号编码时,考虑每种符号在信息流中出现的概率; 对出现概率大的符号采用“短码(位数少)”, 对出现概率小的符号采用“长码(位数多)”; 可以降低“平均码长”?降低“信息熵”,压缩数据量。 Huffman编码是熵编码的一种方法。 JPEG的编码 整个图像由多个8x8图像小块组成,每块都有1个直流DC系数、63个交流AC系数; 直流DC系数和交流AC系数分别采用不同方法编码。 JPEG的编码 DC系数用的方法是: 第1块图像的DC系数是“真值”,以后各块的DC是与前1块DC系数的“差值”: Diff = DC(i) - DC(i-1) JPEG的编码 63个AC系数采用“行程编码 (RLE=Run Length Encoding)”; AC系数要进行位数非等长的 “熵编码”。 JPEG的编码 JPEG编码的中间符号表示法: 每个DC系数:用2个符号表示? 符号1:DC系数编码所用的位数; 符号2:DC系数的值。 JPEG的编码 JPEG编码的中间符号表示法: 每个AC系数:用2个符号表示? 符号1:行程,位数; 行程:在Z形矩阵中, 非零的AC系数前面,连续的零系数个数; 位数: AC系数编码的位数; 符号2:AC系数的值。 JPEG的编码 JPEG编码例子 JPEG的编码 JPEG编码例子 JPEG的编码 JPEG编码例子 JPEG的编码 JPEG编码例子 JPEG的应用实例 JPEG的应用实例 JPEG的应用实例 JPEG的应用实例 JPEG的应用实例 JPEG的应用实例 JP
文档评论(0)