资源描述
*,*,第六章:图像压缩编码,第六章,图像压缩编码,4/7/2026,1,本章主要内容:,1.,概述,2.,统计编码,3.,预测编码,4.,变换编码,5.,混合编码,4/7/2026,2,1.,概述,图像压缩的基本概念,设:,n,1,和,n,2,是在两个表达相同信息的数据集中,所携带的单位信息量。,压缩率,(压缩比):,C,R,=n,1,/n,2,其中,,n,1,是压缩前的数据量,,n,2,是压缩后的数据量,相对数据冗余,:,R,D,=1 1/C,R,例:,C,R,=20;R,D,=19/20,4/7/2026,3,1.,概述,三种数据冗余:,编码冗余,像素冗余,视觉心理冗余,4/7/2026,4,1.,概述,编码冗余,:,如果一个图像的灰度级编码,使用了多于实际需要的编码符号,就称该图像包含了编码冗余。,例:如果用,8,位表示该图像的像素,我们,就说该图像存在着编码冗余,因为该图像,的像素只有两个灰度,用一位即可表示。,4/7/2026,5,1.,概述,像素冗余,:,由于任何给定的像素值,原理上都可以通过它的邻居预测到,单个像素携带的信息相对是小的。,对于一个图像,很多单个像素对视觉的贡献是冗余的。这是建立在对邻居值预测的基础上。,例:原图像数据:,234 223 231 238 235,压缩后数据:,234 11 8 7 -3,4/7/2026,6,1.,概述,视觉心理冗余,:,一些信息在一般视觉处理中比其它信息的相对重要程度要小,这种信息就被称为视觉心理冗余。,4/7/2026,7,1.,概述,1.1,压缩编码及其分类,根据解压重建后的图像和原始图像之间是否具有误差,图像编码压缩分为,无误差,(亦称无失真、无损、信息保持)编码和,有误差,(有失真或有损)编码两大类。,根据编码作用域划分,图像编码为,空间域编码,和,变换域编码,两大类。,图像压缩,无损编码,有损编码,霍夫曼编码,游程编码,算术编码,预测编码,变换编码,其它编码,4/7/2026,8,保真度标准,评价压缩算法的标准,客观保真度标准,主观保真度标准,1.,概述,1.2,压缩编码系统评价,4/7/2026,9,客观保真度标准,如果信息丢失的级别,可以表示为原始或输入图像与压缩后又解压缩输出的图像的函数,这个函数就被称为,客观保真度标准,。一般表示为:,e(x,y)=,f,(x,y)-f(x,y),f(x,y),是输入图像,是压缩后解压缩的图像,,e(x,y,),是误差函数,1.,概述,1.2,压缩编码系统评价,4/7/2026,10,两个图像之间的,总误差,:,均方根误差,(,RMS,),1.,概述,1.2,压缩编码系统评价,4/7/2026,11,主观保真度标准,通过视觉比较两个图像,给出一个定性的评价,如很粗、粗、稍粗、相同、稍好、较好、很好,这种评价被称为,主观保真度标准,。,1.,概述,1.2,压缩编码系统评价,4/7/2026,12,1.,概述,1.3,图像压缩系统的一般构成,信源编码,信道编码,信道,信道解码,信源解码,信源编码:,完成原始数据的压缩与编码,信道编码:,为了抗干扰,增加一些容错、校验位,实际上是有规律地增加,传输数据的冗余,以便于消除传输过程中增加的随机信号,信道:,传输数据(信息)的手段。,如,Internet,、广播、通讯、可移动介质等,4/7/2026,13,1.,概述,1.3,图像压缩系统的一般构成,源数据编码与解码的模型,源数据编码的模型,源数据解码的模型,符号,解码器,反向,映射器,映射器,量化器,符号,编码器,4/7/2026,14,1.,概述,1.3,图像压缩系统的一般构成,源数据编码与解码的模型,映射器,:,减少像素冗余,,如使用,RLE,编 码。或进行图像变换。,量化器,:,减少视觉心理冗余,,仅用于有 损压缩。,符号编码器,:,减少编码冗余,,如使用哈夫曼 编码,4/7/2026,15,1.,概述,1.4,信息论,-,率失真理论和信源熵编码,一个理想的图像压缩器应具备:重构图像失真率低、压缩比高以及设计编码器和解码器的计算复杂度低等。,但实际中这些要求是互相冲突的,香农的信源编码理论是建立在平均比特率和平均失真率这一相互冲突的矛盾之上。,在比特率和失真率两者之间取得平衡可以用几种等价的方式定义:,给定比特率,R,的约束下,使失真,D,最小;,或给定失真值,D,的约束下,使所需传输的比特率,R,最小;,或最小化拉格朗日函数,D,+,R,,,不同的拉格朗日算子,可以在比特率和失真率之间起着权衡作用。,4/7/2026,16,1.,概述,1.4,信息论,-,图像信息率,一般静止灰度图像中每个像素用,8,比特来表示,那么一幅图像的平均信息率可以用下面的熵值来表示:,其中,p,i,表示像素,u,取,r,i,值的概率,,r,i,的取值范围为,02,8,-1,。,像素的前一个像素的状态已知,就可以得到图像第一阶熵:,4/7/2026,17,1.,概述,1.4,信息论,-,图像信息率,根据香农的无噪声信源编码定理:在没有失真的情况下,一个熵为的信源可以用比特来表示,其中为,任意小的正数,数据最大的压缩率为,其中,n,为原始数据的平均比特率。,4/7/2026,18,1.,概述,1.4,信息论,-,香农的率失真理论,前面的讨论是在信道没有噪声的条件下信源编码的最大压缩率。在实际情况中信道是存在噪声的。,如果从信源发出信息,u,k,,,经过编、译码的组合,接受端得到信息为,v,l,,,这是由信道的噪声所造成的,我们定义信源编码经过编、译码的平均互信息量为,:,我们可以找到一个在一定允许的失真,D,条件下最低的平均互信息量,这个平均互信息量称为率失真函数:,R,(,D,),是在平均失真小于允许失真,D,以内能够得到的编码的码率下界。,4/7/2026,19,1.,概述,1.4,信息论,-,香农的信源编码定理,一个具有率失真函数,R,(,D,),的信源,若有平均失真,D,,,并有两个任意小的正数,与,,,则必存在一种信源编码、译码方法使信息率和平均失真率满足,香农信源编码定理只说明了码率在一个界限以上编码的可能性,并没有给出具体的编码方案,。,图像也是一种信息,香农的信源编码理论对图像编码起着重要的指导作用。,4/7/2026,20,2.,统计编码,统计编码的基本思想是:,主要针对无记忆信源,根据信息码字出现概率的分布特征而进行压缩编码,寻找概率与码字长度间的最优匹配。其编码的实质就是用短码来表示出现概率较大的码字,用长码表示出现概率小的码字。,当前常用的统计编码有游程编码、霍夫曼编码和算术编码三种。,4/7/2026,21,2.,统计编码,2.1,霍夫曼(,Huffman,)编码,(,1,)基本思想,通过减少编码冗余来达到压缩的目的。,基本思想是统计一下符号的出现概率,建立一个概率统计表,将最常出现,(,概率大的,),的符号用最短的编码,最少出现的符号用最长的编码。,4/7/2026,22,2.,统计编码,2.1,霍夫曼(,Huffman,)编码,(,2,)例子:建立概率统计表和编码树,符号 概率,1 2 3 4,a2 0.4,0.4,0.4,0.4 0.6,a6 0.3,0.3,0.3 0.3 0.4,a1 0.1,0.1,0.2 0.3,a4 0.1,0.1,0.1,a3 0.06 0.1,a5 0.04,4/7/2026,23,2.,统计编码,2.1,霍夫曼(,Huffman,)编码,(,2,)例子:编码过程:,符号 概率 编码,1 2 3 4,a20.4 1 0.4 1 0.4 1 0.4 1 0.6 0,a60.3 00 0.3 00 0.3 00 0.3,0,0,0.4 1,a10.1 011 0.1 011 0.2,01,0 0.3,0,1,a40.1 0100 0.1,010,0,0.1,01,1,a30.06,0101,0 0.1,010,1,a50.04,0101,1,4/7/2026,24,2.,统计编码,2.1,霍夫曼(,Huffman,)编码,(,2,)例子:,编码过程:,01010 011 1 1 00,a3 a1 a2 a2 a6,4/7/2026,25,2.,统计编码,2.1,霍夫曼(,Huffman,)编码,(,3,)算法实现,第一步:建立一系列的原数据缩减量,通过对符号的概率排序,把最小概率的符号组成一个符号,以便在下一个原数据缩减量中替换它们。,第二步:给每一个缩减的原始数据编码,从最少的原数据开始,向后进行到起始原数据,。,4/7/2026,26,2.,统计编码,2.1,霍夫曼(,Huffman,)编码,霍夫曼编码,静态编码,在压缩之前就建立好一个概率统计表和编码树。算法速度快,但压缩效果不是最好,动态编码,对每一个图像,临时建立概率统计表和编码树。算法速度慢,但压缩效果最好,4/7/2026,27,2.,统计编码,2.2,算术编码(,AE,),算术编码原理,在算术编码中,把被编码的信息表示成,0,到,1,之间的一个间隔。在传输任何信息之前,信息的完整范围是,0,,,1),,当一个符号被处理时,区间范围就依据分配给这一符号的那部分范围而变窄。,4/7/2026,28,2.,统计编码,2.2,算术编码(,AE,),-,编码,(1),首先对字符号集,X,中每个单独的符号赋一个,0,到,1,之间的子区间,子区间的长度等于该符号的概率,并假设这样的赋值对解码器来说是已知的。,(2),读入第一符号,a,1,,设,a,1,是符号集,X,中的第,i,个符号,,a,1,=,x,i,(i,=1,,,2,,,,,N),,,那么初始子区间定义为,I,1,,,r,1,)=,p,i-1,,,p,i,),4/7/2026,29,2.,统计编码,2.2,算术编码(,AE,),-,编码,(3),读入下一个符号,设已经是第,n,次读入,并设读入的符号,a,n,是符号集,X,中的第,i,个符号,即,a,n,=x,i,。,定义新区间为,l,n,,,r,n,)=,l,n-1,+p,i-1,d,n-1,,,l,n-1,+p,i,d,n-1,),4/7/2026,30,2.,统计编码,2.2,算术编码(,AE,),-,解码,如果解码器也知道这一最后的范围,0.5143876,,,0.514402),,它马上就可以解得第一个字符为,x,3,,,因为从各个符号的概率值及其所分配的编码区间范围看,只有,x,3,的编码区间范围能包含,0.5143876,,,0.514402),。,4/7/2026,31,2.,统计编码,2.2,算术编码(,AE,),-,特点,算术编码器对整个消息只产生一个码字,这个码字是在间隔,0,,,1),中的一个实数,因此译码器在接收到表示这个实数的所有位之前不能进行译码。,4/7/2026,32,2.,统计编码,2.2,算术编码(,AE,),-,示例,假设信源符号为,00,01,10,11,这些符号的概率分别为,0.1,0.4,0.2,0.3,根据这些概率可把间隔,0,1),分成,4,个子间隔:,0,0.1),0.1,0.5),0.5,0.7),0.7,1).,符号,00 01 10 11,概率,0.1 0.4 0.2 0.3,初始编码间隔,0,0.1)0.1,0.5)0.5,0.7)0.7,1),如果二进制消息序列的输入为:,10 00 11 00 10 11 01.,4/7/2026,33,2.,统计编码,2.2,算术编码(,AE,),-,示例,算术编码过程,low=low+range*range_low,range,和,low,为上一个被编码符号的范围和低端值,;,high=low+range*range_high,rang_low,和,range_high,为被编码符号已给定的出现概率范围的低端值和高端值,.,4/7/2026,34,2.,统计编码,2.2,算术编码(,AE,),-,示例,步骤 输入 符号编码间隔 编码判决,1 10 0.5,0.7),符号的间隔范围,0.5,0.7),2 00 0.5,0.52)0.5,0.7),间隔的第一个,1/10,3 11 0.514,0.52)0.5,0.52),间隔的最后,3,个,1/10,4 00 0.514,0.5146)0.514,0.52),间隔的第一个,1/10,5 10 0.5143,0.51442)0.514,0.5146),间隔的第五个,1/10,开始,二个,1/10,6 11 0.514384,0.51442)0.5143,0.51442),间隔的最后,3,个,1/10,7 01 0.5143836,0.514402)0.514384,0.51442),间隔的,4,个,1/10,,从第,1,个,1/10,开始,8,从,0.5143876,0.514402,中选择一个数作为输出:,0.5143876,4/7/2026,35,2.,统计编码,2.2,算术编码(,AE,),-,示例,算术编码过程示意图,4/7/2026,36,2.,统计编码,2.2,算术编码(,AE,),-,示例,算术编码解码过程,首先计算,value,k+1,=(value,k,range_low,k,)/range,k,然后判断,value,k+1,位于哪个范围,则得到对应编码,.,译码判决方法,:,4/7/2026,37,2.,统计编码,2.2,算术编码(,AE,),-,示例,步骤 间隔 译码符号 译码判决,1 0.5,0.7)10 0.51439,在间隔,0.5,0.7),2 0.5,0.52)00 0.51439,在间隔,0.5,0.7),的第,1,个,1/10,3 0.514,0.52)11 0.51439,在间隔,0.5,0.52),的第,7,个,1/10,4 0.514,0.5146)00 0.51439,在间隔,0.514,0.52),的第,1,个,1/10,5 0.5143,0.51442)10 0.51439,在间隔,0.514,0.5146),的第,5,个,1/10,6 0.514384,0.51442)11 0.51439,在间隔,0.5143,0.51442),的第,7,个,1/10,7 0.51439,0.5143948)01 0.51439,在间隔,0.514384,0.51442),的第,1,个,1/10,8,解码后消息序列:,10 00 11 00 10 11 01,4/7/2026,38,2.,统计编码,2.3,跳过白色块编码(,WBS,),基本原理,大多数二值图像中的黑象素只占整个图像的一小部分,若能跳过白色象素,只对黑色象素编码,则表示图像的比特数就能减少,平均比特数就能大大降低。,4/7/2026,39,2.,统计编码,2.3,跳过白色块编码(,WBS,),一维,WBS,将图像的每条扫描线分成若干段,每一段的象素个数为,n,对全部是白色的象素用,0,表示,对至少有一个黑象素的线段用,n,+1,个比特表示,,第一个比特为,1,,其余,n,比特采用直接编码,举例:黑白白黑,11001,白白白白,0,设长度为,N,的象素段出现全白的概率为,P,N,,则一维,WBS,编码平均字长,b,N,为:,4/7/2026,40,2.,统计编码,2.3,跳过白色块编码(,WBS,),二维,WBS,将一维,WBS,的象素段推广为象素块。设象素块大小为,M,N,,全白象素块用“,0”,表示否则用,M,N,个比特来直接编码,4/7/2026,41,2.,统计编码,2.3,跳过白色块编码(,WBS,),自适应,WBS,编码,根据图像的局部结构或统计特性,改变象素块的大小,进一步提高压缩效果,这就是所谓的自适应,WBS,编码。,改进型的一维,WBS,编码:对于一维的,WBS,编码,如果一条扫描线全为白象素时,则用,1,比特“,0”,表示,否则用正常的一维,WBS,编码。,自适应的,WBS,编码可以使得表示图像的,bit,数下降很多,但是为了自适应增加了设备的复杂性。,4/7/2026,42,2.,统计编码,2.4,游程编码(,RC,),概念:,游程,:具有相同灰度值的像素序列。,编码思想:,去除像素冗余。,用游程的灰度和游程的长度代替游程本身。,例:设重复次数为,iC,重复像素值为,iP,编码为:,iCiP,iCiP,iCiP,编码前:,aaaaaaa,bbbbbb,cccccccc,编码后:,7,a,6,b,8,c,4/7/2026,43,2.,统计编码,2.4,游程编码(,RC,),分析:,对于有大面积色块的图像,压缩效果很好,对于纷杂的图像,压缩效果不好,最坏情况下,会加倍图像,4/7/2026,44,2.,统计编码,2.4,游程编码(,RC,),例子:,PCX_RC,1,),PCX,简介:,真彩色图像以行为,单位,按色面存放,128,字节的文件头,图像数据,调色板,4/7/2026,45,2.,统计编码,2.4,游程编码(,RC,),(,2,),PCX_RC,编码原则:,1),图像数据以,字节,为单位进行编码,2),按行进行压缩,3),长度在前,灰度值在后,4),单像素没有长度值,5),以最高两位作为判断是,重复数,还是,原像素,。最高两位为,1,(,B0,除外),说明是重复数,否则,说明是原像素值,4/7/2026,46,2.,统计编码,2.4,游程编码(,RC,),(,2,),PCX_RC,编码原则:,6),重复像素长度,iC,最大值为,2,6,-1=63,,如果遇到,iC,大于,63,的情况,则分为小于,63,的几段,分别处理。,7),如果遇到不重复的单个像素,P,:,如果,P 16,后,再增加,n,对性能的改善作用不大。,4/7/2026,65,5.,混合编码,混合编码:,既用到预测编码、又用到变换编码的编码方法。,对电视图象:,(,1,)帧内混合编码:,在水平方向利用一维变换编码;,在垂直方向利用,DPCM,(,差值脉冲编码调制)预测编码。,(,2,)帧间混合编码:,帧内用二维变换编码;,帧间用一维,DPCM,编码。,4/7/2026,66,5.,混合编码,5.1,子带编码,子带编码的基本思想是利用带通滤波器组将信道频带分割成若干个子频带,(,Subband,),,,将子频带搬移至零频处进行子带取样,再对每一个子带用一个与其统计特性相适配的编码器进行图像数据压缩。,4/7/2026,67,5.,混合编码,5.1,子带编码,子带编码原理,子带编码由于其本身具备的频带分解特性,非常适合于分辨率可分多级的视频编码。,4/7/2026,68,5.,混合编码,5.1,子带编码,子带编码优点,(1),一个子带的编码噪声在解码后只局限于该子带内,不会扩散到其他子带。这样,即使有的子带信号较弱,也不会被其他子带的编码噪声所掩盖。,4/7/2026,69,5.,混合编码,5.1,子带编码,(2),可以根据主观视觉特性,将有限的数码率在各个子带之间合理分配,有利于提高图像的主观质量。,(3),通过频带分解,各个子带的抽样频率可以成倍下降。,4/7/2026,70,5.,混合编码,5.1,子带编码,子带分解,在子带编码系统中,关键技术是正确实现无失真子带的分解和复原。,一个一维,2,子带编码系统的框图如图,3-25,所示,.,4/7/2026,71,5.,混合编码,5.1,子带编码,一维,2,子带编码系统的框图,4/7/2026,72,5.,混合编码,5.2,分形编码,分形编码的原理是利用的是图像中某一部分与另一部分之间的相似性。,分形图像编码是,20,世纪,80,年代中后期提出的一种新的图像压缩编码方法。,Barnsley,指出利用迭代函数系统,(IFS),理论,存在得到,10000:1,的惊人压缩比的可能性。,在他的指导下,,Barnsley,得意学生,Jacquin,首次提出分块的迭代变换理论算法,4/7/2026,73,5.,混合编码,5.2,分形编码,-,分形和分维的概念,在自然界中存在许多规则的形体,可以用欧氏几何来表示,如点、线、面和三维立体。在自然界中还存在更多的不规则形体,如山脉、河流、海岸线等,它们不能用欧氏几何来表示。,分形,(fractal),这个词是美国哈佛大学数学系教授,Mandelbrot,在,1975,年提出的。他经过长期研究提出了用分形几何学来描述自然界不规则的、具有自相似特性的物体。,描述的对象,特征长度,表达方式,维数,欧氏几何学,人类创造的简单的标准物体,有,数学公式,整数维,分形几何学,大自然的复杂的真实物体,无,迭代语言,分数,4/7/2026,74,5.,混合编码,5.2,分形编码,-,分形维数的定义,分形维数的定义有很多种。下面是相似维数的定义:如果形体是由缩小,1/,a,的,b,个相似形构成的,则相似维数定义为,Koch,曲线的相似维数为:,相似维数适用于具有自形似特性的规则分形,对于包含随机图形在内的任意图形的维数定义则还有,Hausdorff,维数,D,H,。,对于规则分形来说,,D,H,=,D,S,。,Mandelbrot,最初对分形的定义为:如果一个集合在欧氏空间中的,Hausdorff,维数恒大于其拓扑维数,则称该集合为分形集,简称分形。,4/7/2026,75,5.,混合编码,5.2,分形编码,-,图像分形编码的数学原理,(,M,d,),数字图像的一个尺度空间,其中,d,是图像失真测度,org,一幅需要编码的原始图像。,F,定义,(,M,d,),在上的图像变换集合。,构造一个,(,M,d,),到它自身的压缩图像变换,,,对于这个变换,原始图像,org,是一个近似固定点,即,标量,s,称为变换,的压缩因子。,重复应用尺度空间,(,M,d,),的三角不等式和压缩变换,,,对于任意图像和正整数,有:,我们上述两式的变换,称为原始图像,org,的分形码本。,4/7/2026,76,5.,混合编码,5.2,分形编码,-,图像分形编码的数学原理,对任意一幅初始图像,0,做几次迭代变换就可以得到一个迭代序列:,最终将收敛于一个吸引点,即与原始图像相当接近的图像。,这种接近的程度依赖于,是否很接近于零。,同时收敛的速度依赖于标量,s,。,一般图像中的边缘和线条具有自相似特征,即图像在一组仿射变换下具有不变性。图像分形编码就是要找出这一组仿射变换,所以图像分形编码就是利用图像中尺度的冗余性。,4/7/2026,77,5.,混合编码,5.2,分形编码,-,图像分形编码的基本方法,把一幅图像经过一些图像处理技术如颜色分割、边缘检测、频谱分析、纹理分析等将原始图象分割成许多子图象。然后在分形集中查找这些子图象,分形集并不是存储所有可能的子图像,而是存储许多迭代函数,通过迭代函数反复迭代恢复子图像。,子图像对应一些迭代函数,而这些迭代函数只要有几个参数即可确定。,基本原理,4/7/2026,78,
展开阅读全文