图像压缩编码ppt课件.ppt
《图像压缩编码ppt课件.ppt》由会员分享,可在线阅读,更多相关《图像压缩编码ppt课件.ppt(63页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数字图像处理数字图像处理 7.1 概述(概述(Introduction) 7.2 无失真图像压缩编码(无失真图像压缩编码(Lossless image compression)7.3 有限失真图像压缩编码(有限失真图像压缩编码(Lossy image compression)7.4 图像编码新技术(图像编码新技术(New Image Compression Technology)第第7章章 图像压缩编码(图像压缩编码(Image Compression Coding Technology) 7.5 图像压缩技术标准(图像压缩技术标准(Image Compression Standards)7.
2、1 概述(概述(Introduction)举例举例1 1:对于电视画面的分辨率:对于电视画面的分辨率640640* *480480的彩色图像,每秒的彩色图像,每秒3030帧,则一秒钟的数据量为:帧,则一秒钟的数据量为:640640* *480480* *2424* *30=221.12M 30=221.12M ,1 1张张CDCD可存可存640M640M,如果不进行压缩,如果不进行压缩,1 1张张CDCD则仅可以存放则仅可以存放2.892.89秒的数据秒的数据举例举例2 2:目前的:目前的WWWWWW互联网包含大量的图像信息,如果图像互联网包含大量的图像信息,如果图像信息的数据量太大,会使本来
3、就已经非常紧张的网络带信息的数据量太大,会使本来就已经非常紧张的网络带宽变得更加不堪重负(宽变得更加不堪重负(World Wide WebWorld Wide Web变成了变成了World World Wide WaitWide Wait)为什么要对图像进行压缩为什么要对图像进行压缩7.1.1、图像的信息量与信息熵、图像的信息量与信息熵(Information Content and Entropy) 1. 信息量信息量设信息源X可发出的消息符号集合为 |1,2,iAa im并设X发出符号ia的概率 为 ,则定义符号出现的自信息量为:()ip a( )log ( )iiI ap a 通常,上式
4、中的对数取2为底,这时定义的信息量单位为“比特”(bit) 。2. 信息熵信息熵 对信息源X的各符号的自信息量取统计平均,可得每个符号的平均自信息量为:21()( )log( )miiiH Xp ap a 这个平均自信息量H(X) 称为信息源X的熵(entropy),单位为bit/符号,通常也称为X的零阶熵。由信息论的基本概念可以知道, 零阶熵是无记忆信息源(在无失真编码时)所需数码率的下界。) 7.1.1、图像的信息量与信息熵、图像的信息量与信息熵(Information Content and Entropy) 通常一副图像中的各点像素点之间存在一定的相关性。特别是在活动图像中,由于两幅相
5、邻图像之间的时间间隔很短,因此这两幅图像信息中包含了大量的相关信息。这些就是图像信息中的冗余。 7.1.2、图像数据冗余、图像数据冗余 (Image data redundancy)1. 空间冗余空间冗余 图7.2是一幅图像,其中心部分为一个灰色的方块,在灰色区域中的所有像素点的光强和彩色以及饱和度都是相同的,因此该区域中的数据之间存在很大的冗余度。 图7.2 空间冗余 空间冗余是图像数据中最基本的冗余。要去除这种冗余,人们通常将其视为一个整体,并用极少的数据量来表示,从而减少邻近像素之间的空间相关性,已达到数据压缩的目的 。7.1.2、图像数据冗余、图像数据冗余 (Image data re
6、dundancy)2. 时间冗余时间冗余 由于活动图像序列中的任意两相邻的图像之间的时间间隔很短,因此两幅图像中存在大量的相关信息,如图7.3所示 。 时间冗余是活动图像和语音数据中经常存在的一种冗余。图7.3 时间冗余7.1.2、图像数据冗余、图像数据冗余 (Image data redundancy)3. 信息熵冗余信息熵冗余 信息熵冗余是针对数据的信息量而言的。设某种编码的平均码长为 )()(10ikiislspL式中, 为分配给第符号 的比特数, 为符号出现的概率。)(islis)(isp 这种压缩的目的就是要使L接近 H X7.1.2、图像数据冗余、图像数据冗余 (Image dat
7、a redundancy) 4. 结构冗余结构冗余 图7.4表示了一种结构冗余。从图中可以看出。它存在着非常强的纹理结构,这使图像在结构上产生了冗余。 图7.4 结构冗余7.1.2、图像数据冗余、图像数据冗余 (Image data redundancy)5 5知识冗余知识冗余 随着人们认识的深入,某些图像所具有的先验知识,如人脸图像的固有结构(包括眼、耳、鼻、口等)为人们所熟悉。这些由先验知识得到的规律结构就是知识冗余。 6. 6. 视觉冗余视觉冗余 由于人眼的视觉特性所限,人眼不能完全感觉到图像画面的所有细小的变化。例如人眼的视觉对图像边缘的剧烈变化不敏感,而对图像的亮度信息非常敏感,因此
8、经过图像压缩后,虽然丢了一些信息,但从人眼的视觉上并未感到其中的变化,而仍认为图像具有良好的质量。7.1.2、图像数据冗余、图像数据冗余 (Image data redundancy)7.1.3、 图像压缩编码分类图像压缩编码分类(Coding methods of Image Compression 数字图像压缩编码分类方法有很多,但从不同的角度,可以有不同的划分。从信息论角度分,可以将图像的压缩编码方法分为无失真压缩编码和有限失真编码。 无失真图像压缩编码利用图像信源概率分布的不均匀性,通过变长编码来减少信源数据冗余,使编码后的图像数据接近其信息熵而不产生失真,因而也通常被称为熵编码。 有
9、限失真编码则是根据人眼视觉特性,在允许图像产生一定失真的情况下(尽管这种失真常常不为人眼所觉察),利用图像信源在空间和时间上具有较大的相关性这一特点,通过某一种信号变换来消除信源的相关性、减少信号方差,达到压缩编码的目的。 7.1.4、压缩技术的性能指标、压缩技术的性能指标(Evaluation Index of Image Compression approaches)1.1.压缩比压缩比 为了表明某种压缩编码的效率,通常引入压缩比这一参数,它的定义为: 12bcb 其中 表示压缩前图像每像素的平均比特数, 表示压缩后每像素所需的平均比特数,一般的情况下压缩比c总是大于等于1的, c愈大则压
10、缩程度愈高。1b2b2.2.平均码字长度平均码字长度 平均码字长度:设 为数字图像第k个码字 的长度( 编码成二进制码的位数)。其相应出现的概率为 , 则该数字图像所赋予的平均码字长度为:3.3.编码效率编码效率在一般情况下,编码效率往往可用下列简单公式表示:)(kclkCkC)(kcp)()(1kmkkclcpL 单位为bit LH7.1.4、压缩技术的性能指标、压缩技术的性能指标(Evaluation Index of Image compressionapproaches)4.4.冗余度冗余度 1r R R越小越小, ,说明可压缩的余地越小。说明可压缩的余地越小。 7.1.4、压缩技术的
11、性能指标、压缩技术的性能指标(Evaluation Index of Image compressionapproaches)7.2 无失真图像压缩编码无失真图像压缩编码(Lossless image compression) 无失真失真图像压缩编码就是指图像经过压缩、编码后恢复的图像与原图像完全样,没有任何失真 . 常用的无失真图像压缩编码有许多种。如哈夫曼(Huffman)编码、游程编码和算术编码。 7.2.1、哈夫曼编码、哈夫曼编码(Huffman coding) 哈夫曼编码是根据可变长最佳编码定理,应用哈夫曼算法而产生的一种编码方法。 1. 1. 可变长最佳编码定理可变长最佳编码定理
12、对于一个无记忆离散信源中每一个符号,若采用相同长度的不同码字代表相应符号,就叫做等长编码。若对信源中的不同符号用不同长度的码字表示就叫做不等长或变长编码 。2. 2. 哈夫曼(哈夫曼(HuffmanHuffman)编码的编码思路)编码的编码思路实现哈夫曼编码的基本步骤如下: (1) 将信源符号出现的概率按由大到小地顺序排列。 (2) 将两处最小的概率进行组合相加,形成一个新概率。并按第(1)步方法重排,如此重复进行直到只有两个概率为止。 (3) 分配码字,码字分配从最后一步开始反向进行,对最后两个概率一个赋于“0”码字,一个赋于“1”码字。如此反向进行到开始的概率排列,在此过程中,若概率不变采
13、用原码字。7.2.1、哈夫曼编码、哈夫曼编码(Huffman coding) 举例:举例:设输入图像的灰度级y1,y2,y3,y4,y5,y6,y7,y8出现的概率分别为0.40,0.18,0.10,0.10,0.07,0.06,0.05,0.04。试进行哈夫曼编码,并计算编码效率、压缩比、冗余度 。 按照上述的编码过程和例题所给出的参数,其哈夫曼编码过程及其编码的结果如图7.6所示。图像信源熵为:22212222log(0.4 log 0.4 0.18 log 0.18 2 0.1log0.1 0.07 log 0.07 0.06 log 0.06 0.05 log 0.05 0.04 lo
14、g 0.04) 2.55MKKKHPP 根据哈夫曼编码过程图所给出的结果,可以求出它的平均码字长度:10.40 1 0.18 30.10 30.10 40.07 4 0.06 40.05 50.04 52.61MKKKLl P 7.2.1、哈夫曼编码、哈夫曼编码(Huffman coding) 编码效率编码效率: : 压缩比:压缩比: 压缩之前8个符号需3个比特量化,经压缩之后的平均码字长度为2.61,因此压缩比为: /2.55/2.61 97.8%H L3/2.61 1.15C 冗余度为冗余度为: :12.2% 7.2.1、哈夫曼编码、哈夫曼编码(Huffman coding)图7.6 哈夫
15、曼编码过程7.2.1、哈夫曼编码、哈夫曼编码(Huffman coding)3. 3. 哈夫曼(哈夫曼(HuffmanHuffman)编码的特点)编码的特点(1)Huffman编码所构造的码并不是唯一的,但其编码效率是唯一的。(2)对不同信源,其编码效率是不同的。(3)实现电路复杂,且存在误码传播问题。(4)Huffman编码只能用近似的整数而不是理想的小数来表示单个符号,这也是Huffman编码无法达到最理想的压缩效果的原因7.2.1、哈夫曼编码、哈夫曼编码(Huffman coding)7.2.2、游程编码、游程编码(Run-length coding) 当图像不太复杂时,往往存在着灰度或
16、颜色相同的图像子块。由于图像编码是按照顺序对每个像素进行编码的,因而会存在多行的数据具有相同数值的情况,这样可只保留两连续相同像素值和像素点数目。这种方法就是游程编码。 下面以一个具体的二值序列为例进行说明。已知一个二值序列00101110001001 ,根据游程编码的规则,可知其游程序列为21133121 。可见图像中具有相同灰度(或颜色)的图像块越大、越多,压缩的效果就越好,反之当图像越复杂,即其中的颜色层次越多时,则其压缩效果越不好,因此对于复杂的图像,通常采用游程编码与Huffman编码的混合编码方式,即首先进行二值序列的游程编码,然后根据“0”游程与“1”游程长度的分布概率,再进行H
17、uffman编码。7.2.37.2.3 算术编码算术编码(Arithmetic coding)Arithmetic coding) 算术编码不是将单个信源符号映射成一个码字,而是把整个信源表示为实数线上的0到1之间的一个区间,其长度等于该序列的概率。再在该区间内选择一个代表性的小数,转化为二进制作为实际的编码输出。消息序列中的每个元素都要缩短为一个区间。消息序列中元素越多,所得到的区间就越小。当区间变小时,就需要更多的数位来表示这个区间。采用算术编码,每个符号的平均编码长度可以为小数。 算术编码不是将单个信源符号映射成一个码字,而是把整个信源表示为实数线上的0到1之间的一个区间,其长度等于该序
18、列的概率。再在该区间内选择一个代表性的小数,转化为二进制作为实际的编码输出。消息序列中的每个元素都要缩短为一个区间。消息序列中元素越多,所得到的区间就越小。当区间变小时,就需要更多的数位来表示这个区间。采用算术编码,每个符号的平均编码长度可以为小数。7.2.3 算术编码算术编码(Arithmetic coding) 举例:举例:假设信源符号为X=00,01,10,11,其中各符号的概率为P(X)=0.1,0.4,0.2,0.3。对这个信源进行算法编码的具体步骤如下: 1)已知符号的概率后,就可以沿着“概率线”为每个符号设定一个范围:0,0.1),0.1,0.5),0.5,0.7),0.7,1.
19、0)。把以上信息综合到表7.1中。7.2.3 算术编码算术编码(Arithmetic coding) 2) 假如输入的消息序列为:10、00、11、00、10、11、01,其算术编码过程为:第一步:初始化时,范围range为1.0,低端值low为0。下一个范围的低、高端值分别由下式计算:*_*_low low range range lowhigh low range range high 其中等号右边的range和low为上一个被编码符号的范围和低端值;range_low和range_high分别为被编码符号已给定的出现概率范围的低端值和高端值。7.2.3 算术编码算术编码(Arithmet
20、ic coding) 对第一个信源符号10编码:*_0 1*0.50.5*_0 1*0.70.7lowlowrange rangelowhighlowrange rangehigh所以,信源符号10将区间 0,1)0.5,0.7)。下一个信源符号的范围为 _0.2rangerange high range low第二步:对第二个信源符号00编码:*_0.50.0.2*00.5*_0.50.2*0.512lowlowrange rangelowhighlowrange rangehigh所以信源符号00将区间 0.5,0.7)0.5,0.52)。下一个信源符号的范围为 _0.02rangeran
21、gehighrangelow7.2.3 算术编码算术编码(Arithmetic coding) 第三步:对第三个信源符号11编码:*_0.50.02*0.70.514*_0.50.02*10.52lowlowrange rangelowhighlowrange rangehigh所以信源符号11将区间 0.5,0.52)0.514,0.52)。下一个信源符号的范围为 _0.006rangerange high range low第四步:对信源符号00编码:*_0.5140.006*00.514*_0.5140.006*0.10.5146lowlowrange rangelowhighlowra
22、nge rangehigh下一个信源符号的范围为 。_0.0006rangerangehighrangelow7.2.3 算术编码算术编码(Arithmetic coding) 第五步:对第五个信源符号10编码:*_0.514 0.0006*0.5 0.5143*_0.514 0.0006*0.7 0.51442low low range range lowhigh low range range high所以,信源符号10将区间 0.514,0.5146)0.5143,0.51442)。下一个信源符号的范围为 _0.00012rangerangehighrangelow第六步:对第六个信源符
23、号11编码:*_0.51430.00012*0.70.514384*_0.51430.00012*10.51442lowlowrange rangelowhighlowrange rangehigh所以,信源符号11将区间 0.5143,0.51442)0.514384,0.51442)。7.2.3 算术编码算术编码(Arithmetic coding) _0.000036rangerangehighrangelow。*_0.514384 0.000036*0.1 0.5143876*_0.514384 0.000036*0.5 0.514402low low range range lowh
24、igh low range range high下一个信源符号的范围为 第七步:对第七个信源符号01编码:所以,信源符号01将区间 0.51484,0.51442)0.5143876,0.514402)。 最后从0.5143876,0.514402中选择一个数作为编码输出,这里选择0.5143876。7.2.3 算术编码算术编码(Arithmetic coding) 综上所述,算术编码是从全序列出发,采用递推形式的一种综上所述,算术编码是从全序列出发,采用递推形式的一种连续编码,使得每个序列对应该区间内一点,也就是一个浮点小连续编码,使得每个序列对应该区间内一点,也就是一个浮点小数;这些点把数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 压缩 编码 ppt 课件
限制150内