数字图像处理技术图像数据压缩课件_第1页
数字图像处理技术图像数据压缩课件_第2页
数字图像处理技术图像数据压缩课件_第3页
数字图像处理技术图像数据压缩课件_第4页
数字图像处理技术图像数据压缩课件_第5页
已阅读5页,还剩167页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章图像数据压缩第五章图像数据压缩1.信息传输方式发生了很大的改变通信方式的改变

文字+语音图像+文字+语音通信对象的改变

人与人人与机器,机器与机器5.1概述:图像编码的研究背景1.信息传输方式发生了很大的改变5.1概述:图像编码的5.1概述:图像编码的研究背景数码图像的普及,导致了数据量的庞大。图像的传输与存储,必须解决图像数据的压缩问题。5.1概述:图像编码的研究背景数码图像的普及,导致了数据

2.图像传输与存储需要的信息量空间:

1)彩色视频信息

对于电视画面的分辨率640*480的彩色图像,每秒30帧,则一秒钟的数据量为:

640*480*3*8*30=221.12M

所以播放时,需要221Mbps的通信回路。存储时,1张CD可存640M,则仅可以存放2.89秒的数据。5.1概述:图像编码的研究背景2.图像传输与存储需要的信息量空间:5.1概述:图像编

2.图像传输与存储需要的信息量空间:

2)传真数据如果只传送2值图像,以200dpi(点/英寸)的分辨率传输,一张A4稿纸的内容的数据量为:

1654(行点数)*2337(行数)*1=3888768bit=390K

按14.4K的电话线传输速率,需要传送的时间是:270秒(4.5分)5.1概述:图像编码的研究背景2.图像传输与存储需要的信息量空间:5.1概述:图像编

图像压缩的必要性:由于通信方式和通信对象的改变带来的最大问题是:

传输带宽、速度、存储器容量的限制。

给我们带来的一个难题,也给了我们一个机会:

如何用软件的手段来解决硬件上的物理极限。5.1概述:图像编码的研究背景图像压缩的必要性:5.1概述:图像编码的研究背景5.1概述:图像通信系统模型图像信息源图像预处理图像信源

编码信道编码调制信道传输解调信道解码图像信源

解码显示图像5.1概述:图像通信系统模型图像信息源图像预处理图像信源5.1概述:图像压缩的可能性3.图像压缩的可能性

(1)冗余度的概念

对于描述一幅图像所需要的最少信息之外的多余信息,称为冗余度。 一般图像中都含有冗余度,去除图像里的冗余度便完成了数据压缩5.1概述:图像压缩的可能性3.图像压缩的可能性5.1概述:图像压缩的可能性在下面的例子中,用一种最简的方式来发送一封电报:结论:只要接收端不会产生误解,就可以减少承载信息的数据量。你的妻子,Helen,将于明天晚上6点零5分在上海的虹桥机场接你。

(23*2+10=56个半角字符)

你的妻子将于明天晚上6点零5分在虹桥机场接你。

(20*2+3=43个半角字符)

Helen将于明晚6点在虹桥接你。

(10*2+7=27个半角字符)5.1概述:图像压缩的可能性在下面的例子中,用一种最简的5.1概述:图像压缩的可能性描述语言

1)“这是一幅2*2的图像,图像的第一个像素是红的,第二个像素是红的,第三个像素是红的,第四个像素是红的”。

2)“这是一幅2*2的图像,整幅图都是红色的”。

由此我们知道,整理图像的描述方法可以达到压缩的目的。5.1概述:图像压缩的可能性描述语言

1)“这是一幅25.1概述:图像压缩的可能性图像冗余无损压缩的原理RGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGB16RGB(采用8级量化)从原来的16*3*8=284bits压缩为:(1+3)*8=32bits5.1概述:图像压缩的可能性图像冗余无损压缩的原理RGB5.1概述:图像压缩的可能性图像冗余有损压缩的原理363534343434343234343337303434343434343434353434313434343434343434343434343434343434343434343434343425345.1概述:图像压缩的可能性图像冗余有损压缩的原理3635.1概述:图像压缩的可能性实际图像中冗余信息的表现(灰度图)5.1概述:图像压缩的可能性实际图像中冗余信息的表现(灰5.1概述:图像压缩的可能性图像的视觉冗余(彩色)

R

G

B2488822*2*2=242=16,777,216(248,27,4)(251,32,15)(248,27,4)(248,27,4)256级量化5.1概述:图像压缩的可能性图像的视觉冗余(彩色)R5.1概述:图像压缩的可能性图像冗余信息分析结论

由于一幅图像存在数据冗余和主观视觉冗余,我们的压缩方式就是从这两方面着手来开展的。1)因为有数据冗余,当我们将图像信息的描述方式改变之后,可以压缩掉这些冗余。2)因为有主观视觉冗余,当我们忽略一些视觉不太明显的微小差异,可以进行所谓的“有损”压缩。5.1概述:图像压缩的可能性图像冗余信息分析结论5.1概述:图像压缩的分类4.图像压缩的分类

以图像信息保真为出发点,图像压缩技术分两种:1)冗余度压缩 又称为无损压缩或无失真压缩。2)熵压缩 又称为有损压缩。5.1概述:图像压缩的分类4.图像压缩的分类5.1概述:图像压缩保真度准则5.图像压缩保真度准则

保真度准则即压缩后图像质量评价的标准,分两种:1)客观保真度准则 压缩前后图像之间的均方根误差或均方根信噪比。2)主观保真度准则 以人的视觉为主,来评价图像的质量。5.1概述:图像压缩保真度准则5.图像压缩保真度准则5.1概述:图像压缩术语6.编码器的若干知识

如图为一编码器的示意图,输入X为信号单元;输出W为代码,Wi为码字;A是构成码字的符号集合,其元素称为码元。

编码器的作用:(1)用符号集合A中的符号构成代码W(2)建立输入X和输出W的对应关系编码器X={x1,…,xn}w={w1,…,wn}A={a1,…,an}5.1概述:图像压缩术语6.编码器的若干知识编码器X=5.1概述:图像压缩术语

(1)独立信源的熵 设信源符号表为{X1,X2,……,Xq},出现的概率分别为{P(X1),P(X2),……,P(Xq)},

则信源的熵为5.1概述:图像压缩术语 (1)独立信源的熵5.1概述:图像压缩术语

(2)香农无干扰编码理论 在无干扰条件下,总存在一种无失真编码方法,使编码的平均长度L(x)与信息源的熵H(x)任意的接近。即无失真编码的平均码长存在一个下限,这个下限就是原始图像的熵。由此定义:编码效率冗余度5.1概述:图像压缩术语 (2)香农无干扰编码理论5.1概述:图像的压缩编码第一代压缩编码

八十年代以前,主要是根据传统的信源编码方法。第二代压缩编码

八十年代以后,突破信源编码理论,结合分形、模型基、神经网络、小波变换等数学工具,充分利用视觉系统生理心理特性和图像信源的各种特性。5.1概述:图像的压缩编码第一代压缩编码

八十年代以前,5.1概述:图像的压缩编码像素编码变换编码预测编码

位平面编码增量调制熵编码算术编码DCT变换DPCM调制第一代压缩编码其他编码行程编码5.1概述:图像的压缩编码像素编码变换编码预测编码位平5.1概述:图像的压缩编码子带编码模型编码分层编码分型编码第二代压缩编码5.1概述:图像的压缩编码子带编码模型编码分层编码分型编5.2预测编码1、PCM编码 又称脉冲编码调制,是图像数字化和图像编码的合称 数字化后可采用两种方法编码:等长和变长编码5.2预测编码1、PCM编码5.2预测编码2、预测编码(1)帧内预测:对预测差值编码以消除空间冗余度 即差分脉冲编码调制DPCM,原理框图如下:5.2预测编码2、预测编码5.2预测编码工作过程:(1)预测器根据存储的前若干个样值对当前值进行预测,得到预测值(2)待编码值与预测值相减得到预测误差(3)对预测误差进行量化(4)量化后的误差一方面进行熵编码并经信道传出去;另一方面与预测值相加,得到“有量化失真的复原值”,存储到预测器中,供对下一个样值预测之用(5)发送端的本地解码器与接收端的解码器完全相同5.2预测编码工作过程:线性预测预测编码根据前面若干个样本值对当前值进行预测,若预测值是样本值的线性组合,则称为线性预测预测器的设计是DPCM系统的核心问题,因为预测器越好,差值就越集中分布在零附近,码率就能压缩得越多最经典的方法是采用最小均方误差准则来进行最佳设计线性预测预测编码根据前面若干个样本值对当前值进行预测,若预测预测阶数的选择直观上,增大预测阶数N可提高预测准确度,但实际情况并非如此。当N较小时,增大N可提高预测度;但当N足够大时,效果不明显一般说来,当输入信源为平稳的m阶马尔可夫过程,则N=m阶最佳线性预测器就是在MMSE准则下最好的预测器预测阶数的选择直观上,增大预测阶数N可提高预测准确度,但实际5.2预测编码(2)帧间预测:消除时间冗余度 主要针对活动图像,有两种技术:运动估计ME和运动补偿MC5.2预测编码(2)帧间预测:消除时间冗余度5.3行程编码(RLE编码)行程编码是一种最简单的,在某些场合是非常有效的一种无损压缩编码方法。虽然这种编码方式的应用范围非常有限,但是因为这种方法中所体现出的编码设计思想非常明确,所以在图像编码方法中都会将其作为一种典型的方法来介绍。

5.3行程编码(RLE编码)行程编码是一种最简单的,在某5.3行程编码(RLE编码)基本原理:通过改变图像的描述方式,来实现压缩。将一行中颜色值相同的相邻像素用一个计数值和该颜色值来代替。举例说明:

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

4a3b2c1d5e7f(共12*8=96bits)压缩比为:176:96=1.83:15.3行程编码(RLE编码)基本原理:压缩比为:176:压缩比为:176:70=2.5:15.3行程编码(RLE编码)在传真中的应用:

传真件中一般都是白色比较多,而黑色相对比较少。所以可能常常会出现如下的情况:

600W3b100w12b4w3b200w

上面的行程编码所需用的字节数为:512<600<1024

计数值必须用10bit来表示:10*7=70bit因为只有白或黑,而且排版中一定要留出页边距,因此,一般情况下,可以只传输计数值即可。压缩比为:176:70=2.5:15.3行程编码(RL5.3行程编码(RLE编码)现在,根据传真文件的特点,对其进行改进。既然已经可以预知白色多黑色少,所以可对白色和黑色的计数值采用不同的位数。白色:10bit,黑色:4bit600W3b100w12b4w3b200w

所需字节数为:

4*10+3*4=52bit

比原来的方式10*7=70bit减少了18bit,提高了压缩比5.3行程编码(RLE编码)现在,根据传真文件的特点,对二维行程编码——

基本概念二维行程编码要解决的核心问题是:

将二维排列的像素,采用某种方式转化成一维排列的方式。之后按照一维行程编码方式进行编码。二维行程编码——基本概念二维行程编码要解决的核心问题是:二维行程编码——

数据排序如下图所示,是两种典型的二维行程编码的排列方式:(a)(b)二维行程编码——数据排序如下图所示,是两种典型的二维行程二维行程编码——例例:数据量:64*8=512(bit)二维行程编码——例例:数据量:64*8=512(bit)二维行程编码——例

如果按照行扫描的顺序排列的话,数据分布为:130,130,130,129,134,133,129,130;130,130,130,129,134,133,130,130;

130,130,130,129,132,132,130,130;129,130,130,129,130,130,129,129;127,128,127,129,131,129,131,130;127,128,127,128,127,128,132,132;125,126,129,129,127,129,133,132;127,125,128,128,126,130,131,131二维行程编码——例如果按照行扫描的顺序排列的话,数据分布为二维行程编码——例一维行程编码后为:(3,130),(1,129),(1,134),(1,133),(1,129),(4,130),(1,129),(1,134),(1,133),(5,130),(1,129),(2,132),(2,130),(1,129),(2,130),(1,129),(2,130),(2,129),(1,127),(1,128),(1,127),(1,129),(1,131),(1,129),(1,131),(1,130),(1,127),(1,128),(1,127),(1,128),(1,127),(1,128),(2,132),(1,125),(1,126),(2,129),(1,127),(1,129),(1,133),(1,132),(1,127),(1,125),(2,128),(1,126),(1,130),(2,131)数据量为:46*(3+8)=506(bit)压缩比为:512:506=1.02:1二维行程编码——例一维行程编码后为:(3,130),(1,1二维行程编码——例如果按照列扫描的顺序排列的话,数据分布为:130,130,130,129,127,127,125,127;130,130,130,130,128,128,126,125;130,130,130,130,127,127,129,128;129,129,129,129,129,128,129,128;134,134,132,130,131,127,127,126;133,133,132,130,129,128,129,130;129,130,130,129,131,132,133,131;130,130,130,129,130,132,132,131二维行程编码——例如果按照列扫描的顺序排列的话,数据分布为:二维行程编码——例一维行程编码为:数据量为:42*(3+8)=462(bit)压缩比为:512:462=1.11:1(3,130),(1,129),(2,127),(1,125),(1,127),(4,130),(2,128),(1,126),(1,125),(4,130),(2,127),(1,129),(1,128),(5,129),(1,128),(1,129),(1,128),(2,134),(1,132),(1,130),(1,131),(2,127),(1,126),(2,133),(1,132),(1,130),(1,129),(1,128),(1,129),(1,130),(1,129),(2,130),(1,129),(1,131),(1,132),(1,133),(1,131),(3,130),(1,129),(1,130),(2,132),(1,131)二维行程编码——例一维行程编码为:数据量为:42*(3+8二维行程编码——例如果按照方式(a)扫描的顺序排列的话,数据分布为:130,130,130,130,130,130,130,130,130;129,129,129,129,130,130,129;127,128,127,129,131,130,132,134,134;133,133,132,130,129,128,127,128,127,128,127,125,126,129,129;127,129,133,132,131,129,130,130;129,130,130,130,129,130,132,132;131,131,130,126,128,128,127,127二维行程编码——例如果按照方式(a)扫描的顺序排列的话,数二维行程编码——例一维行程编码为:数据量为:43*(3+8)=473(bit)压缩比为:512:473=1.08:1(7,130),(2,130),(4,129),(2,130),(1,129);(1,127),(1,128),(1,127),(1,129),(1,131),(1,130),(1,132),(2,134),(2,133),(1,132),(1,130),(1,129),(1,128),(1,127),(1,128),(1,127),(1,128),(1,127),(1,125),(1,126),(2,129),(1,127),(1,129),(1,133),(1,132),(1,131),(1,129),(2,130),(1,129),(3,130),(1,129),(1,130),(2,132),(2,131),(1,130),(1,126),(2,128),(2,127)二维行程编码——例一维行程编码为:数据量为:43*(3+85.3行程编码(RLE编码)实际编码过程是查表,可以实时处理编码规则:RL=0—63,用一个相应的结尾码表示RL=64—1728,用一个组合基干码加一个补充结尾码规定每行从白游程开始,若实际从黑游程开始,则需要在行首加零长度的白游程每行结束要加行同步码EOL5.3行程编码(RLE编码)实际编码过程是查表,可以实时5.4统计编码:匹配编码行程编码要获得好的压缩率的前提是,有比较长的相邻像素的值是相同的。熵是指数据中承载的信息量。所谓的熵编码是指在完全不损失信息量前提下最小数据量的编码。5.4统计编码:匹配编码行程编码要获得好的压缩率的前提是5.4统计编码:匹配编码基本原理:

为了达到更大的压缩率,提出了一种方法,就是将在图像中出现频度大的像素值给一个比较短的编码,将出现频度小的像数值给一个比较长的编码。即匹配编码5.4统计编码:匹配编码基本原理:5.4统计编码:匹配编码举例说明:

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

432157

匹配编码:f=0e=10a=110b=1111c=11100d=11101

11011011011011111111111111100111001110110101010100000000

(共7*1+5*2+4*3+3*4+2*5+1*5=56bits)

压缩比为:176:56=3.14:15.4统计编码:匹配编码举例说明:压缩比为:176:565.4统计编码:

Huffman编码首先求出图像中灰度分布的灰度直方图;根据该直方图,对其按照分布概率从小到大的顺序进行排列;每一次从中选择出两个概率为最小的节点相加,形成一个新的节点,构造一个称为“Huffman树”的二叉树;对这个二叉树进行编码,就获得了Huffman编码码字。5.4统计编码:Huffman编码首先求出图像中灰度分5.4统计编码:

Huffman编码例:对数据序列

aaaa

bbb

cc

d

eeeee

fffffff

其概率分布为:

a:4/22b:3/22c:2/22d:1/22e:5/22f:7/22

概率大小的排序为:

d,c,b,a,e,f

1/222/223/224/225/227/225.4统计编码:Huffman编码例:对数据序列5.4统计编码:

Huffman编码cbafe7/225/224/222/2210f=11e=01a=00b=101c=1001d=1000d1/223/226/2222/2213/229/223/22101010105.4统计编码:Huffman编码cbafe7/2255.4统计编码:

Huffman编码对这个例子,计算出经过Huffman编码后的数据为:

00000000101101101100110011000010101010111111111111111

共7*2+5*2+4*2+3*3+2*4+1*4=53bit压缩比为176:53=3.32:1f=11e=01a=00b=101c=1001d=10005.4统计编码:Huffman编码对这个例子,计算出经5.4统计编码:Huffman编码Huffman编码在图像压缩中的实现

我们知道,对一幅图像进行编码时,如果图像的大小大于256时,这幅图像的不同的码字就有可能是很大,例如极限为256个不同的码字。 对整幅图直接进行Huffman编码时,小分布的灰度值,就有可能具有很长的编码。 如:100位以上,这样不但达不到压缩的效果反而会使数据量加大,应该如何处理?5.4统计编码:Huffman编码Huffman编码在5.4统计编码:Huffman编码常用的且有效的方法是:

将图像分割成若干的小块,对每块进行独立的Huffman编码。例如:分成的子块,就可以大大降低不同灰度值的个数(最多是64而不是256)。5.4统计编码:Huffman编码常用的且有效的方法是8*8分块的编码压缩比为2.12:116*16分块的编码压缩比为1.64:1全图的编码压缩比为1.09:1Huffman编码——

图像压缩中的应用8*8分块的编码压缩比为2.12:116*16分块的编码压缩5.5变换编码行程编码与Huffman编码的设计思想都是基于对信息表述方法的改变,属于无损压缩方式。虽然无损压缩可以保证接收方获得的信息与发送方相同,但是其压缩率一定有极限。因此,采用忽略视觉不敏感的部分进行有损压缩是提高压缩率的一条好的途径。

5.5变换编码行程编码与Huffman编码的设计思想都是5.5变换编码变换编码的原理:

通过变换去除一部分不重要的参数,达到压缩的目的 其依据是图像数据经过变换后,出现能量集中的情况,则变换后可只选少量重要的系数进行编码,以达到压缩的目的5.5变换编码变换编码的原理:5.5变换编码变换编码的框图

正变换(分块)系数选择比特分配量化编码反变换未传系数补0反量化解码信道原始图像复原图像5.5变换编码变换编码的框图 正变换系数选择比特分配量5.5变换编码实用中的具体问题:(1) 子块大小选择 块太小,相关性被隔裂,不利于压缩;太大运算复杂;折中选8×8或16×16(2)变换方式选择 理论上,K-L变换最佳,但变换核不固定,实现困难;实用选择DCT(3)系数选择 图像是非平稳随机过程,故多采用自适应方式对不同块进行不同的系数选择(4) 比特分配 对于直流分量即低频系数细量化,分配比特数多于高频5.5变换编码实用中的具体问题:5.5变换编码系数选择原则上,保留能量集中的、方差大的系数选择方法:区域编码:选择能量集中的区域编码,舍弃零星能量区域,实现压缩。阈值编码:设定门限值,大于门限的编码,否则舍弃。适合对能量分布不清楚的情况5.5变换编码系数选择5.5变换编码DCT变换编码的提出:

行程编码与Huffman编码等统计编码的设计思想是基于对信息的表述方法的改变,属于无损压缩方式。但是一定有一个极限。

DCT变换是希望在接收方不产生误解的前提下进行一定的信息丢失。 由前面讲到的频域变换可以得到启示,就是将低频与高频按照不同的数据承载方式进行表述。5.5变换编码DCT变换编码的提出:DCT变换编码复习DCT变换:正变换:逆变换:其中:DCT变换编码复习DCT变换:正变换:逆变换:其中:DCT变换编码DCT变换编码方法:DCT变换DCT逆变换原图像除以量化矩阵取整1)编码过程:2)解码过程:压缩图像乘以量化矩阵取整压缩图像解压图像DCT变换编码DCT变换编码方法:DCT变换DCT逆变换原图DCT变换编码Huffman:42bits;压缩比为3.05:1Huffman:16bits;压缩比为:8:1例:原图像为:DCT变换除以量化系数,取整DCT变换编码Huffman:42bits;压缩比为3.0一个图像子块的编码和解码过程一个图像子块的编码和解码过程DCT变换编码原图解压图DCT变换编码原图解压图5.6混合编码——

设计思想每一种编码方式都有其擅长的一点,以及局限的一点,混合编码的思想就是将两种以上的编码方式的优点进行综合,达到提高编码效率的目的。5.6混合编码——设计思想每一种编码方式都有其擅长的一5.6混合编码——

可能性分析回顾一下讲过的几个内容的特点:行程编码:擅长于重复数字的压缩。Huffman编码:擅长于像素个数分布不均匀情况下的编码。DCT变换:擅长分离视觉敏感与不敏感的部分。5.6混合编码——可能性分析回顾一下讲过的几个内容的特5.6混合编码例:

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

432157

行程编码:4a3b2c1d5e7f

(共6*(8+3)=66Bits)176665.6混合编码例:176665.6混合编码

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

432157Huffman编码:

f=01e=11a=10b=001c=0001d=00001010101010001001001000100010000111111111101010101010101(共7*2+5*2+4*2+3*3+2*4+1*4=53bits)17666535.6混合编码aaaabbbccdeeeee5.6混合编码

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

432157Hufman与行程编码混合:

41030012000110000511701

(共:3+2+3+3+3+4+3+4+3+2+3+2=35bits)176665335

1:12.67:13.32:1

5.03:15.6混合编码aaaabbbccdeeee5.6混合编码——

图像实际压缩编码例1一次小波变换DCT变换.行程编码Huffman编码一次小波变换Huffman编码变字长行程编码2差值编码5.6混合编码——图像实际压缩编码例1一次小波变换DC复原图原图算法1信噪比:66.02压缩比:11.83:1复原图原图算法1信噪比:66.02压缩比:11.83:1复原图原图信噪比:64.55压缩比:26.50:1算法2复原图原图信噪比:64.55压缩比:26.50:1算法2原图JPEG100:1混合编码400:1混合编码600:1原图JPEG100:1混合编码400:1混合编码605.7子带编码基本思想是把图像信号通过一组带通滤波器分解成不同频带内的分量,然后在每条独立的子带内,对信号进行降率采样和单独编码优点:频率分解可去除信号频率相关性,减少多余度可采用不同长度的码字对不同频带内的信号进行编码,有利于数据压缩量化噪声被限制在各个条带内,避免了能量较小的条带内信号受其他频带内量化噪声的影响5.7子带编码基本思想是把图像信号通过一组带通滤波器分解5.8JPEG压缩标准1、数据组织与系统框图源图像以帧为单位,每帧可包含四个分量图像,每个分量图像都顺序地分割成一个个8×8的图像子块,块内的64个数据组成一个数据单元DU把分辨率最低的分量图像的一个数据单元所对应的帧上象区所覆盖的全部DU,编组成一个最小的编码单元图像数据按DU分割完毕后,即可以MCU为单位顺序将DU送入二维正向DCT处理5.8JPEG压缩标准1、数据组织与系统框图JPEG系统框图JPEG系统框图5.8JPEG压缩标准2、正向离散余弦变换对每个单独的彩色图像分量,把整个分量图像分成8×8的图像块,并作为两维离散余弦变换DCT的输入。通过DCT变换,把能量集中在少数几个系数上5.8JPEG压缩标准2、正向离散余弦变换5.8JPEG压缩标准3、量化量化是对经过FDCT变换后的频率系数进行量化。量化的目的是减小非“0”系数的幅度以及增加“0”值系数的数目。量化是图像质量下降的最主要原因5.8JPEG压缩标准3、量化5.8JPEG压缩标准4、Z字形编排量化后的系数要重新编排,目的是为了增加连续的“0”系数的个数,就是“0”的游程长度,方法是按照Z字形的式样编排,如图所示。这样就把一个8×8的矩阵变成一个1×64的矢量,频率较低的系数放在矢量的顶部5.8JPEG压缩标准4、Z字形编排5.8JPEG压缩标准5、直流系数的编码8×8图像块经过DCT变换之后得到的DC直流系数有两个特点,一是系数的数值比较大,二是相邻8×8图像块的DC系数值变化不大。根据这个特点,JPEG算法使用了差分脉冲调制编码(DPCM)技术,对相邻图像块之间量化DC系数的差值(Delta)进行编码5.8JPEG压缩标准5、直流系数的编码5.8JPEG压缩标准6、交流系数的编码量化AC系数的特点是1×64矢量中包含有许多“0”系数,并且许多“0”是连续的,因此使用非常简单和直观的游程长度编码(RLE)对它们进行编码5.8JPEG压缩标准6、交流系数的编码5.8JPEG压缩标准7、熵编码使用熵编码还可以对DPCM编码后的直流DC系数和RLE编码后的交流AC系数作进一步的压缩5.8JPEG压缩标准7、熵编码上机实验图像压缩 1、利用DCT变换模拟JPEG压缩过程

上机参考程序1

实验效果图1 2、利用DCT变换对图像进行压缩

上机参考程序2

实验效果图2上机实验图像压缩 1、利用DCT变换模拟JPEG压缩过程上机参考程序1I=imread('cameraman.tif');I1=im2double(I);T=dctmtx(8);B=blkproc(I1,[88],'P1*x*P2',T,T');mask=[11110000 11100000110000001000000000000000000000000000000000000000];B2=blkproc(B,[88],'P1.*x',mask);I2=blkproc(B2,[8,8],'P1*x*P2',T',T);subplot(1,2,1);imshow(I);subplot(1,2,2);imshow(I2);上机参考程序1I=imread('cameraman.tif上机参考程序2RGB=imread('flowers.tif');subplot(2,2,1),imshow(RGB);I=rgb2gray(RGB);subplot(2,2,2),imshow(I);J=dct2(I);subplot(2,2,3), imshow(log(abs(J)),[]),colormap(jet(64));J(abs(J)<10)=0; K=idct2(J);subplot(2,2,4),imshow(K,[0255]);上机参考程序2RGB=imread('flowers.t实验效果图1实验效果图1实验效果图2实验效果图2第五章图像数据压缩第五章图像数据压缩1.信息传输方式发生了很大的改变通信方式的改变

文字+语音图像+文字+语音通信对象的改变

人与人人与机器,机器与机器5.1概述:图像编码的研究背景1.信息传输方式发生了很大的改变5.1概述:图像编码的5.1概述:图像编码的研究背景数码图像的普及,导致了数据量的庞大。图像的传输与存储,必须解决图像数据的压缩问题。5.1概述:图像编码的研究背景数码图像的普及,导致了数据

2.图像传输与存储需要的信息量空间:

1)彩色视频信息

对于电视画面的分辨率640*480的彩色图像,每秒30帧,则一秒钟的数据量为:

640*480*3*8*30=221.12M

所以播放时,需要221Mbps的通信回路。存储时,1张CD可存640M,则仅可以存放2.89秒的数据。5.1概述:图像编码的研究背景2.图像传输与存储需要的信息量空间:5.1概述:图像编

2.图像传输与存储需要的信息量空间:

2)传真数据如果只传送2值图像,以200dpi(点/英寸)的分辨率传输,一张A4稿纸的内容的数据量为:

1654(行点数)*2337(行数)*1=3888768bit=390K

按14.4K的电话线传输速率,需要传送的时间是:270秒(4.5分)5.1概述:图像编码的研究背景2.图像传输与存储需要的信息量空间:5.1概述:图像编

图像压缩的必要性:由于通信方式和通信对象的改变带来的最大问题是:

传输带宽、速度、存储器容量的限制。

给我们带来的一个难题,也给了我们一个机会:

如何用软件的手段来解决硬件上的物理极限。5.1概述:图像编码的研究背景图像压缩的必要性:5.1概述:图像编码的研究背景5.1概述:图像通信系统模型图像信息源图像预处理图像信源

编码信道编码调制信道传输解调信道解码图像信源

解码显示图像5.1概述:图像通信系统模型图像信息源图像预处理图像信源5.1概述:图像压缩的可能性3.图像压缩的可能性

(1)冗余度的概念

对于描述一幅图像所需要的最少信息之外的多余信息,称为冗余度。 一般图像中都含有冗余度,去除图像里的冗余度便完成了数据压缩5.1概述:图像压缩的可能性3.图像压缩的可能性5.1概述:图像压缩的可能性在下面的例子中,用一种最简的方式来发送一封电报:结论:只要接收端不会产生误解,就可以减少承载信息的数据量。你的妻子,Helen,将于明天晚上6点零5分在上海的虹桥机场接你。

(23*2+10=56个半角字符)

你的妻子将于明天晚上6点零5分在虹桥机场接你。

(20*2+3=43个半角字符)

Helen将于明晚6点在虹桥接你。

(10*2+7=27个半角字符)5.1概述:图像压缩的可能性在下面的例子中,用一种最简的5.1概述:图像压缩的可能性描述语言

1)“这是一幅2*2的图像,图像的第一个像素是红的,第二个像素是红的,第三个像素是红的,第四个像素是红的”。

2)“这是一幅2*2的图像,整幅图都是红色的”。

由此我们知道,整理图像的描述方法可以达到压缩的目的。5.1概述:图像压缩的可能性描述语言

1)“这是一幅25.1概述:图像压缩的可能性图像冗余无损压缩的原理RGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGBRGB16RGB(采用8级量化)从原来的16*3*8=284bits压缩为:(1+3)*8=32bits5.1概述:图像压缩的可能性图像冗余无损压缩的原理RGB5.1概述:图像压缩的可能性图像冗余有损压缩的原理363534343434343234343337303434343434343434353434313434343434343434343434343434343434343434343434343425345.1概述:图像压缩的可能性图像冗余有损压缩的原理3635.1概述:图像压缩的可能性实际图像中冗余信息的表现(灰度图)5.1概述:图像压缩的可能性实际图像中冗余信息的表现(灰5.1概述:图像压缩的可能性图像的视觉冗余(彩色)

R

G

B2488822*2*2=242=16,777,216(248,27,4)(251,32,15)(248,27,4)(248,27,4)256级量化5.1概述:图像压缩的可能性图像的视觉冗余(彩色)R5.1概述:图像压缩的可能性图像冗余信息分析结论

由于一幅图像存在数据冗余和主观视觉冗余,我们的压缩方式就是从这两方面着手来开展的。1)因为有数据冗余,当我们将图像信息的描述方式改变之后,可以压缩掉这些冗余。2)因为有主观视觉冗余,当我们忽略一些视觉不太明显的微小差异,可以进行所谓的“有损”压缩。5.1概述:图像压缩的可能性图像冗余信息分析结论5.1概述:图像压缩的分类4.图像压缩的分类

以图像信息保真为出发点,图像压缩技术分两种:1)冗余度压缩 又称为无损压缩或无失真压缩。2)熵压缩 又称为有损压缩。5.1概述:图像压缩的分类4.图像压缩的分类5.1概述:图像压缩保真度准则5.图像压缩保真度准则

保真度准则即压缩后图像质量评价的标准,分两种:1)客观保真度准则 压缩前后图像之间的均方根误差或均方根信噪比。2)主观保真度准则 以人的视觉为主,来评价图像的质量。5.1概述:图像压缩保真度准则5.图像压缩保真度准则5.1概述:图像压缩术语6.编码器的若干知识

如图为一编码器的示意图,输入X为信号单元;输出W为代码,Wi为码字;A是构成码字的符号集合,其元素称为码元。

编码器的作用:(1)用符号集合A中的符号构成代码W(2)建立输入X和输出W的对应关系编码器X={x1,…,xn}w={w1,…,wn}A={a1,…,an}5.1概述:图像压缩术语6.编码器的若干知识编码器X=5.1概述:图像压缩术语

(1)独立信源的熵 设信源符号表为{X1,X2,……,Xq},出现的概率分别为{P(X1),P(X2),……,P(Xq)},

则信源的熵为5.1概述:图像压缩术语 (1)独立信源的熵5.1概述:图像压缩术语

(2)香农无干扰编码理论 在无干扰条件下,总存在一种无失真编码方法,使编码的平均长度L(x)与信息源的熵H(x)任意的接近。即无失真编码的平均码长存在一个下限,这个下限就是原始图像的熵。由此定义:编码效率冗余度5.1概述:图像压缩术语 (2)香农无干扰编码理论5.1概述:图像的压缩编码第一代压缩编码

八十年代以前,主要是根据传统的信源编码方法。第二代压缩编码

八十年代以后,突破信源编码理论,结合分形、模型基、神经网络、小波变换等数学工具,充分利用视觉系统生理心理特性和图像信源的各种特性。5.1概述:图像的压缩编码第一代压缩编码

八十年代以前,5.1概述:图像的压缩编码像素编码变换编码预测编码

位平面编码增量调制熵编码算术编码DCT变换DPCM调制第一代压缩编码其他编码行程编码5.1概述:图像的压缩编码像素编码变换编码预测编码位平5.1概述:图像的压缩编码子带编码模型编码分层编码分型编码第二代压缩编码5.1概述:图像的压缩编码子带编码模型编码分层编码分型编5.2预测编码1、PCM编码 又称脉冲编码调制,是图像数字化和图像编码的合称 数字化后可采用两种方法编码:等长和变长编码5.2预测编码1、PCM编码5.2预测编码2、预测编码(1)帧内预测:对预测差值编码以消除空间冗余度 即差分脉冲编码调制DPCM,原理框图如下:5.2预测编码2、预测编码5.2预测编码工作过程:(1)预测器根据存储的前若干个样值对当前值进行预测,得到预测值(2)待编码值与预测值相减得到预测误差(3)对预测误差进行量化(4)量化后的误差一方面进行熵编码并经信道传出去;另一方面与预测值相加,得到“有量化失真的复原值”,存储到预测器中,供对下一个样值预测之用(5)发送端的本地解码器与接收端的解码器完全相同5.2预测编码工作过程:线性预测预测编码根据前面若干个样本值对当前值进行预测,若预测值是样本值的线性组合,则称为线性预测预测器的设计是DPCM系统的核心问题,因为预测器越好,差值就越集中分布在零附近,码率就能压缩得越多最经典的方法是采用最小均方误差准则来进行最佳设计线性预测预测编码根据前面若干个样本值对当前值进行预测,若预测预测阶数的选择直观上,增大预测阶数N可提高预测准确度,但实际情况并非如此。当N较小时,增大N可提高预测度;但当N足够大时,效果不明显一般说来,当输入信源为平稳的m阶马尔可夫过程,则N=m阶最佳线性预测器就是在MMSE准则下最好的预测器预测阶数的选择直观上,增大预测阶数N可提高预测准确度,但实际5.2预测编码(2)帧间预测:消除时间冗余度 主要针对活动图像,有两种技术:运动估计ME和运动补偿MC5.2预测编码(2)帧间预测:消除时间冗余度5.3行程编码(RLE编码)行程编码是一种最简单的,在某些场合是非常有效的一种无损压缩编码方法。虽然这种编码方式的应用范围非常有限,但是因为这种方法中所体现出的编码设计思想非常明确,所以在图像编码方法中都会将其作为一种典型的方法来介绍。

5.3行程编码(RLE编码)行程编码是一种最简单的,在某5.3行程编码(RLE编码)基本原理:通过改变图像的描述方式,来实现压缩。将一行中颜色值相同的相邻像素用一个计数值和该颜色值来代替。举例说明:

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

4a3b2c1d5e7f(共12*8=96bits)压缩比为:176:96=1.83:15.3行程编码(RLE编码)基本原理:压缩比为:176:压缩比为:176:70=2.5:15.3行程编码(RLE编码)在传真中的应用:

传真件中一般都是白色比较多,而黑色相对比较少。所以可能常常会出现如下的情况:

600W3b100w12b4w3b200w

上面的行程编码所需用的字节数为:512<600<1024

计数值必须用10bit来表示:10*7=70bit因为只有白或黑,而且排版中一定要留出页边距,因此,一般情况下,可以只传输计数值即可。压缩比为:176:70=2.5:15.3行程编码(RL5.3行程编码(RLE编码)现在,根据传真文件的特点,对其进行改进。既然已经可以预知白色多黑色少,所以可对白色和黑色的计数值采用不同的位数。白色:10bit,黑色:4bit600W3b100w12b4w3b200w

所需字节数为:

4*10+3*4=52bit

比原来的方式10*7=70bit减少了18bit,提高了压缩比5.3行程编码(RLE编码)现在,根据传真文件的特点,对二维行程编码——

基本概念二维行程编码要解决的核心问题是:

将二维排列的像素,采用某种方式转化成一维排列的方式。之后按照一维行程编码方式进行编码。二维行程编码——基本概念二维行程编码要解决的核心问题是:二维行程编码——

数据排序如下图所示,是两种典型的二维行程编码的排列方式:(a)(b)二维行程编码——数据排序如下图所示,是两种典型的二维行程二维行程编码——例例:数据量:64*8=512(bit)二维行程编码——例例:数据量:64*8=512(bit)二维行程编码——例

如果按照行扫描的顺序排列的话,数据分布为:130,130,130,129,134,133,129,130;130,130,130,129,134,133,130,130;

130,130,130,129,132,132,130,130;129,130,130,129,130,130,129,129;127,128,127,129,131,129,131,130;127,128,127,128,127,128,132,132;125,126,129,129,127,129,133,132;127,125,128,128,126,130,131,131二维行程编码——例如果按照行扫描的顺序排列的话,数据分布为二维行程编码——例一维行程编码后为:(3,130),(1,129),(1,134),(1,133),(1,129),(4,130),(1,129),(1,134),(1,133),(5,130),(1,129),(2,132),(2,130),(1,129),(2,130),(1,129),(2,130),(2,129),(1,127),(1,128),(1,127),(1,129),(1,131),(1,129),(1,131),(1,130),(1,127),(1,128),(1,127),(1,128),(1,127),(1,128),(2,132),(1,125),(1,126),(2,129),(1,127),(1,129),(1,133),(1,132),(1,127),(1,125),(2,128),(1,126),(1,130),(2,131)数据量为:46*(3+8)=506(bit)压缩比为:512:506=1.02:1二维行程编码——例一维行程编码后为:(3,130),(1,1二维行程编码——例如果按照列扫描的顺序排列的话,数据分布为:130,130,130,129,127,127,125,127;130,130,130,130,128,128,126,125;130,130,130,130,127,127,129,128;129,129,129,129,129,128,129,128;134,134,132,130,131,127,127,126;133,133,132,130,129,128,129,130;129,130,130,129,131,132,133,131;130,130,130,129,130,132,132,131二维行程编码——例如果按照列扫描的顺序排列的话,数据分布为:二维行程编码——例一维行程编码为:数据量为:42*(3+8)=462(bit)压缩比为:512:462=1.11:1(3,130),(1,129),(2,127),(1,125),(1,127),(4,130),(2,128),(1,126),(1,125),(4,130),(2,127),(1,129),(1,128),(5,129),(1,128),(1,129),(1,128),(2,134),(1,132),(1,130),(1,131),(2,127),(1,126),(2,133),(1,132),(1,130),(1,129),(1,128),(1,129),(1,130),(1,129),(2,130),(1,129),(1,131),(1,132),(1,133),(1,131),(3,130),(1,129),(1,130),(2,132),(1,131)二维行程编码——例一维行程编码为:数据量为:42*(3+8二维行程编码——例如果按照方式(a)扫描的顺序排列的话,数据分布为:130,130,130,130,130,130,130,130,130;129,129,129,129,130,130,129;127,128,127,129,131,130,132,134,134;133,133,132,130,129,128,127,128,127,128,127,125,126,129,129;127,129,133,132,131,129,130,130;129,130,130,130,129,130,132,132;131,131,130,126,128,128,127,127二维行程编码——例如果按照方式(a)扫描的顺序排列的话,数二维行程编码——例一维行程编码为:数据量为:43*(3+8)=473(bit)压缩比为:512:473=1.08:1(7,130),(2,130),(4,129),(2,130),(1,129);(1,127),(1,128),(1,127),(1,129),(1,131),(1,130),(1,132),(2,134),(2,133),(1,132),(1,130),(1,129),(1,128),(1,127),(1,128),(1,127),(1,128),(1,127),(1,125),(1,126),(2,129),(1,127),(1,129),(1,133),(1,132),(1,131),(1,129),(2,130),(1,129),(3,130),(1,129),(1,130),(2,132),(2,131),(1,130),(1,126),(2,128),(2,127)二维行程编码——例一维行程编码为:数据量为:43*(3+85.3行程编码(RLE编码)实际编码过程是查表,可以实时处理编码规则:RL=0—63,用一个相应的结尾码表示RL=64—1728,用一个组合基干码加一个补充结尾码规定每行从白游程开始,若实际从黑游程开始,则需要在行首加零长度的白游程每行结束要加行同步码EOL5.3行程编码(RLE编码)实际编码过程是查表,可以实时5.4统计编码:匹配编码行程编码要获得好的压缩率的前提是,有比较长的相邻像素的值是相同的。熵是指数据中承载的信息量。所谓的熵编码是指在完全不损失信息量前提下最小数据量的编码。5.4统计编码:匹配编码行程编码要获得好的压缩率的前提是5.4统计编码:匹配编码基本原理:

为了达到更大的压缩率,提出了一种方法,就是将在图像中出现频度大的像素值给一个比较短的编码,将出现频度小的像数值给一个比较长的编码。即匹配编码5.4统计编码:匹配编码基本原理:5.4统计编码:匹配编码举例说明:

aaaa

bbb

cc

d

eeeee

fffffff

(共22*8=176bits)

432157

匹配编码:f=0e=10a=110b=1111c=11100d=11101

11011011011011111111111111100111001110110101010100000000

(共7*1+5*2+4*3+3*4+2*5+1*5=56bits)

压缩比为:176:56=3.14:15.4统计编码:匹配编码举例说明:压缩比为:176:565.4统计编码:

Huffman编码首先求出图像中灰度分布的灰度直方图;根据该直方图,对其按照分布概率从小到大的顺序进行排列;每一次从中选择出两个概率为最小的节点相加,形成一个新的节点,构造一个称为“Huffman树”的二叉树;对这个二叉树进行编码,就获得了Huffman编码码字。5.4统计编码:Huffman编码首先求出图像中灰度分5.4统计编码:

Huffman编码例:对数据序列

aaaa

bbb

cc

d

eeeee

fffffff

其概率分布为:

a:4/22b:3/22c:2/22d:1/22e:5/22f:7/22

概率大小的排序为:

d,c,b,a,e,f

1/222/223/224/225/227/225.4统计编码:Huffman编码例:对数据序列5.4统计编码:

Huffman编码cbafe7/225/224/222/2210f=11e=01a=00b=101c=1001d=1000d1/223/226/2222/2213/229/223/22101010105.4统计编码:Huffman编码cbafe7/2255.4统计编码:

Huffman编码对这个例子,计算出经过Huffman编码后的数据为:

00000000101101101100110011000010101010111111111111111

共7*2+5*2+4*2+3*3+2*4+1*4=53bit压缩比为176:53=3.32:1f=11e=01a=00b=101c=1001d=10005.4统计编码:Huffman编码对这个例子,计算出经5.4统计编码:Huffman编码Huffman编码在图像压缩中的实现

我们知道,对一幅图像进行编码时,如果图像的大小大于256时,这幅图像的不同的码字就有可能是很大,例如极限为256个不同的码字。 对整幅图直接进行Huffman编码时,小分布的灰度值,就有可能具有很长的编码。 如:100位以上,这样不但达不到压缩的效果反而会使数据量加大,应该如何处理

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论