JPEG图像压缩编码原理及格式.ppt
文本预览下载声明
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
显示全部