《变换编码与JPEG标准.ppt》由会员分享,可在线阅读,更多相关《变换编码与JPEG标准.ppt(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、变换编码与JPEG标准l变换编码的思想lJPEG的变换编码与压缩思想变换编码l思想:映射变换:函数变换,常用的又称为正交变换。例如lFourierlHotellinglDCT:Discrete Cosine Transform量化编码l例子:单一频率的正弦波l在时域中:采样、量化、编码l在频域中:频率、波幅、初相角lFourier,DCT 都是利用正交变换将一个函数从时域描写变成频域描写,突显函数的某些特征,使量化与编码简化。l例2:X(t)为模拟输入信号,取样后成为样本序列Xkl 现在以n=8为例,即对(x0,x7)进行正交变换,可得到YL 的8个输出值(y0,y8).在该坐标系中,信息集中
2、在y0,y1,y2三个值上。正交变换的讨论l相邻的n个信号样本看作在n维线性空间中的一个列向量变化压缩物理本质l多位坐标系适当的旋转与变换。l散布在各坐标轴上的变化幅度较大的数据,在新的坐标系中,集中在几个少数的坐标轴上。l对变化较小、对图像显示、视觉影响不大的轴上的分量分配较少的编码位。l关键:如何找A矩阵。一维向量正交变换矩阵l例如,以x(m)表示M个其值有限的史书信号序列的集合,m=0,1,.,M-1,择其一维DCT矩阵A为:l可以验证,A是一个正交矩阵,根据正交矩阵的性质有JPEG1.JPEG简介lISO与IEC联合成立的专家组l负责制定静态图像(彩色与灰度图像)的压缩算法2.标准建议
3、的算法要点l基本系统(baseline system)恢复后,图像质量达到“很好以上”8*8DCT变换编码根据视觉特性设计的自适应量化器、huffman编码l扩展系统(extended system)l无损压缩loseless:预测编码与huffman编码JPEG算法与压缩编码步骤lJPEG 算法:图5-9l压缩编码步骤(JPEG基本系统)FDCT使用加权函数对变换系数量化,加权函数根据人的视觉系统确定。编码顺序Zigzag:使系数为0的值更集中。使用DPCM对直流系数编码使用RLE对交流系数进行编码Huffman 熵编码。离散余弦变换DCTl分块:把整个图像分成多个8*8的图象块。l变换:对
4、每个块的64数据(为简单起见,可把图像理解成灰度图像,每个点只有亮度值,0-255)DCT的变换与逆变换lDCT变换lDCT逆变换变换系数的量化l量化:从集合论的角度多对一的映射为提高压缩效率,希望把系数的幅值缩小Fq(u,v)=integer round(F(u,v)/Q(u,v)对于不同位置的系数,取不同的Q(u,v),见表5-6。l对于低频的系数F(u,v),即u+v较小者,Q(u,v)较小,即幅值缩小的倍数较小。l通过心理视觉试验,对视觉效果影响不大的信息尽量丢掉l高频部分有较多的0值,即Fq(u,v)为零编码顺序Zigzagl量化后,64个系数的意义与位置015624738910DC
5、值AC01AC63DC直流值的编码lDC值:量化后,坐标u=v=0时的取值。它是整个块能量的主要部分,它有两个特点:该值比较大相邻的两个图像块之间的DC值变化不大l对DCi=DCi-DCi-1进行编码(DPCM)DCi-1DCiAC交流系数的编码l对于量化后的AC系数,它是一个稀疏矩阵:矩阵中许多位置上的值为零。采用RLE编码用EOB(特殊的码字表示块的结束l例如下面的量化后的亮度快,按Z字形排列:下标:0 1 2 3 4 5 6 7 8 930 31 3263系数:12 5 -2 0 2 0 0 0 1 0 -1 0熵编码huffman编码lJPEG建议中用Huffman 或自适应二进制算术
6、编码。基本系统中用Huffman编码对出现频率较高的符号,设计较短的码字。反之,用较长的码字。Huffman 编码表事先定义好。l对DC,AC 的Huffman编码方法不同lDC系数差值幅度范围、分类与huffman编码表DC 系数差值幅度范围分类编码0000-1,11010-3,-2,2,32011-7,-4,4,73100-15,-8,8,154101-31,-16,16,315110-63,-32,32,63611107111108111110911111101011111110-2047,-1024;1024204711111111110lDC 系数差值(ZZ(0)的Huffman编码
7、先把DC 系数差值进行分类,011类对每一类,给出huffman 编码。编码时,由zz(0)值找到对应的类。由类值,确定编码,并由类值确定幅度值的位数l例如,ZZ(0)=28,类为5,编码为110,幅值28用5位二进制表示l例如,ZZ(0)=-13,类为4,编码为101,幅值-13用4位二进制表示,取-13-1(即 ZZ(0)-1)补码的后4位。量化后AC系数编码l对每一个非零ZZ(i),都表示成如下形式:l“NNNN/SSSS”l“SSSS”:幅值范围所属分类l“NNNN”:当前这个非零系数与前一个非零系数间的位置之差(即非零系数间零系数行程长度ZRL)。lZRL可能超过15。每16个连续的
8、零用一个“1111/0000”,然后用ZRL-16再进行编码。lEOB用“0000/0000”AC的幅值与对应的分类SSSSAC 系数分类SSSS-1,11-3,-2,2,32-7,-4,4,73-15,-8,8,154-31,-16,16,315-63,-32,32,636789-1023,-512,512,102310-32767,16384;16384,3276715ACAC系数(系数(NNNN/SSSSNNNN/SSSS)对应的对应的huffman huffman 编码编码NNNN/SSSS行程/幅值类Huffman 编码0/0(EOB)10100/1000/2010/31000/41
9、0110/5110100/611110000/7111110000/811111101100/911111111 100000100/A11111111 100000101/111001/2110111/311110011/411111011 01/511111110 1101/611111111 100001001/711111111 100001011/811111111 100001101/911111111 100001111/A11111111 100010002/1111002/2111110012/311111101 112/411111111 0100F/011111111 0
10、01F/111111111 11110101F/911111111 11111101F/A11111111 11111110举例1.前文介绍的的量化后的亮度块,按Z字形排列:下标:0 1 2 3 4 5 6 7 8 930 31 3263系数:12 5 -2 0 2 0 0 0 1 0 -1 02.对于DC值12,最后编码,10111003.zz(1)=5,它与zz(0)之间无零系数,NNNN=0,幅值5落入第3类,ssss=3,即NNNN/ssss=0/3。查AC huffman 编码为100。幅值5的编码为101。zz(1)的编码为100101。4.zz(2)=-2,NNNN/ssss=0
11、/2,查AC huffman 编码为01。幅值-2落入第2类,zz(2)-1=-3,-3永补码表示并取后两位,01。zz(2)的编码为0101。5.zz(3)=0,zz(4)=2,NNNN/SSSS=1/2,最后编码11011106.zz(5)zz(7)=0,zz(8)=1,NNNN/SSSS=3/1,最后编码11101017.zz(9)zz(30)=0,zz(31)=-1。由于NNNN=2215,故先编一个F/0,hufman 编码为11111111001。然后NNNN=22-16=6,这时NNNN/SSSS=6/1,huffman编码为1111011。-1在第1类,取(-1-1=-2)补码的最后一位“0”。最后编码1111011 08.zz(32)zz(63)=0,直接用一个EOB(0/0)结束,huffman编码为1010