图像压缩Word文档格式.docx
《图像压缩Word文档格式.docx》由会员分享,可在线阅读,更多相关《图像压缩Word文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
第五节子带编码24
一子带编码原理24
二.小波变换编码24
三基于子带编码的快速小波变换24
第四章有损压缩25
第一节有损预测编码25
一最佳预测器26
第一章图像压缩基础
第一节图像压缩的基本概念
与文字信息不同,图像信息占据大量的存储容量,而且传输的带宽有限
一.图像压缩的必要性
1.为什么需要压缩:
例1:
一张A4(210mm×
297mm)大小的照片,若用中等分辨率(300dpi)的扫描仪按真彩色扫描,其数据量为多少?
(注:
dpi表示每英寸像素,1英寸=25.4mm)
若按每像素3个字节计算,上述结果为约26M。
例2:
目前的WWW互联网包含大量的图像信息,如果图像信息的数据量太大,会使本来就已经非常紧张的网络带宽变得更加不堪重负(WorldWideWeb变成了WorldWideWait)
(1)视频数据量:
a.对于电视画面的分辨率640*480的彩色图像,每秒30帧,则一秒钟的数据量为:
640*480*24*30=221.12M;
b.实时传输:
在10M带宽网上实时传输的话,需要压缩到原来数据量的0.045;
c.存储:
1张CD可存640M,如果不进行压缩,1张CD则仅可以存放2.89秒的数据。
可见,单纯依靠增加存储器容量和改善信道带宽无法满足需求,必须进行压缩。
设:
n1和n2是指原始图像和编码后图像每个像素的平均比特数
1.压缩率(压缩比)——用于描述图像压缩效果。
CR=n1/n2其中,n1是压缩前的数据量,n2是压缩后的数据量。
2.相对数据冗余:
RD=1–1/CR=(n1-n2)/n2
3.分为几种冗余:
a.编码冗余
b.像素冗余
c.视觉心理冗余
(1)如果一个图像的灰度级编码,使用了多于实际需要的编码符号,就称该图像包含了编码冗余。
例:
如果用8位表示下面图像的像素,我们就说该图像存在着编码冗余,因为该图像的像素只有两个灰度,用一位即可表示。
(2)由于任何给定的像素值,原理上都可以通过它的相邻像素预测到,单个像素携带的信息相对是小的。
对于一个图像,很多单个像素对视觉的贡献是冗余的。
这是建立在对邻居值预测的基础上。
原图像数据:
234223231238235
压缩后数据:
23411-8-73,我们可以对一些接近于零的像素不进行存储,从而减小了数据量
(3)一些信息在一般视觉处理中比其它信息的相对重要程度要小,这种信息就被称为视觉心理冗余。
三.保真度标准——评价压缩算法的标准
客观保真度标准:
图像压缩过程对图像信息的损失能够表示为原始图像与压缩并解压缩后图像的函数。
一般表示为输出和输入之差:
两个图像之间的总误差:
均方根误差:
1.主观保真度标准:
通过视觉比较两个图像,给出一个定性的评价,如很粗、粗、稍粗、相同、稍好、较好、很好等,可以对所有人的感觉评分计算平均感觉分来衡量
2.图像传输中的压缩模型
(1)源数据编码:
完成原数据的压缩。
(2)通道编码:
为了抗干扰,增加一些容错、校验位、版权保护,实际上是增加冗余。
(3)通道:
如Internet、广播、通讯、可移动介质。
四.图像压缩的分类
第二节各种压缩编码介绍
一.行程编码(RLE)
1.行程:
具有相同灰度值的像素序列
编码思想:
将一行中颜色值相同的相邻象素(行程)用一个计数值(行程的长度)和该颜色值(行程的灰度)来代替,从而去除像素冗余。
设重复次数为iC,重复像素值为iP
编码为:
iCiPiCiPiCiP
编码前:
aaaaaaabbbbbbcccccccc
编码后:
7a6b8c
对于有大面积色块的图像,压缩效果很好,对于纷杂的图像,压缩效果不好,最坏情况下(图像中每两个相邻点的颜色都不同),会使数据量加倍,所以现在单纯采用行程编码的压缩算法用得并不多,PCX文件算是其中之一。
二维行程编码
二维行程编码要解决的核心问题是:
将二维排列的像素,采用某种方式转化成一维排列的方式。
之后按照一维行程编码方式进行编码
两种典型的二维行程编码的排列方式
(a)(b)
数据量:
64*8=512(bit)
如果按照方式(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
行程编码为:
(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+8)=473(bit)(94.22%)
二.LZW编码
LZW是一种比较复杂的压缩算法,压缩效率较高。
1.基本原理:
每一个第一次出现的字符串用一个数值来编码,再将这个数值还原为字符串。
例如:
用数值0x100代替字符串“abccddeee”,每当出现该字符串时,都用0x100代替,从而起到了压缩作用。
数值与字符串的对应关系在压缩过程中动态生成并隐含在压缩数据中,在解压缩时逐步得到恢复。
LZW是无损的。
GIF和Tiff图像都采用了这种压缩算法。
三.哈夫曼编码
哈夫曼(Huffman)编码是一种常用的压缩编码方法,是Huffman于1952年为压缩文本文件建立的。
1.基本思想
(1)通过减少编码冗余来达到压缩的目的。
(2)统计符号的出现概率,建立一个概率统计表
(3)将最常出现(概率大的)的符号用最短的编码,最少出现的符号用最长的编码。
2.具体的Huffman编码算法。
(1)首先统计出每个符号出现的频率,
(2)从左到右把上述频率按从小到大的顺序排列。
(3)每一次选出最小的两个值,作为二叉树的两个叶子节点,将和作为它们的根节点,这两个叶子节点不再参与比较,新的根节点参与比较。
(4)重复(3),直到最后得到和为1的根节点。
(5)将形成的二叉树的左节点标0,右节点标1。
把从最上面的根节点到最下面的叶子节点途中遇到的0,1序列串起来,就得到了各个符号的编码。
3.编码效率。
常用的且有效的方法是将图像分割成若干的小块,对每块进行独立的Huffman编码。
8*8分块的编码效率为47.27%;
16*16分块的编码效率约为61%;
全图的编码效率为91.47%。
四.无损预测编码
预测编码:
根据数据在时间和空间上的相关性,根据统计模型利用已有样本对新样本进行预测。
1.线性预测的编码思想
(1)去除像素冗余。
(2)认为相邻像素的信息有冗余。
当前像素值可以用以前的像素值来获得。
(3)用当前像素值,通过预测器得到一个预测值
,对当前值和预测值求差
,对差编码,作为压缩数据流中的下一个元素。
由于通常误差值比样本值小得多,因而可以达到数据压缩的效果。
大多数情况下,
是通过m个以前像素的线性组合来生成的:
举例:
公式:
中取:
m=2,a1=a2=1/2
f={154,159,151,149,139,121,112,109,129}
预测值f2=1/2*(154+159)156e2=151–156=-5
f3=1/2*(159+151)=155e3=149–155=-6
f4=1/2*(151+149)=150e4=139–150=-11
f5=1/2*(149+139)=144e5=121–144=-23
f6=1/2*(139+121)=130e6=112–130=-18
f7=1/2*(121+112)116e7=109–116=-7
f8=1/2*(112+109)110e8=129–110=19
五.无损编码和有损编码
行程编码与Huffman编码的设计思想都是基于对信息表述方法的改变,属于无损压缩方式。
虽然无损压缩可以保证接收方获得的信息与发送方相同,但是其压缩率一定有一个极限。
因此,采用忽略视觉不敏感的部分进行有损压缩是提高压缩率的一条好的途径。
1.预测编码器
(1)如果没有量化器,那么就是无损编码
(2)如果有量化器,则是有损编码
图1预测解码器
图2修正后的预测编码器
增加一个反馈环,将量化误差和过去预测函数相加,作为新的预测函数
2.量化器
(1).量化器基本思想:
减少数据量的最简单的办法是将图像量化成较少的灰度级,通过减少图像的灰度级来实现图像的压缩。
这种量化是不可逆的,因而解码时图像有损失。
如果输入是256个灰度级,对灰度级量化后输出,只剩下4个层次,数据量被大大减少。
六.变换编码
1.基本思想:
用一个可逆的、线性的变换(如傅立叶变换),把图像映射到变换系数集合,原本比较分散的图像数据在新的坐标空间中得到集中,然后对该系数集合进行量化和编码。
对于大多数自然图像,重要系数的数量是比较少的,因而可以用量化(或完全抛弃),且仅以较小的图像失真为代价
压缩图像
编码器:
变换编码首先要将图像分成若干个((N/n)2个)n×
n的子图像后,再分别进行变换和编码,这是因为小块便于处理,而且小块内的像素相关性较大,存在的冗余度大。
输入图像
解压图像
解码器:
由于量化是不可逆的,所以缺少量化器
2.变换的选择
(1)可以选择的变换
K-L变换、离散傅立叶变换(DFT)、离散余弦变换(DCT)、Walsh-Hadamard变换(WHT)、小波变换
(2)对变换的评价
按信息封装能力排序:
KLT,DCT,DFT,WHT,HaarT,但KLT的基图像是数据依赖的,因而很少使用。
DFT的块效应严重。
常用的是DCT,已被国际标准采纳,作成芯片。
其优点有:
基本没有块效应,信息封装能力强,把最多的信息封装在最少的系数中
(3)子图尺寸的选择要遵循的原则:
如果n是子图的维数,n应该是2的整数次方。
为便于降低计算复杂度。
n一般选为8×
8或16×
16。
由实践得到,随着n的增加,块效应相应减少。
七.DCT变换编码
1.DCT变换和逆变换:
2.编码过程:
3编码过程:
Huffman:
42bits;
编码效率32.8%
第二章图像压缩标准
迄今为止讨论的许多有损和无误差压缩方法在广泛使用的图像压缩标准中起着重要作用。
在本章中,对其中的几种标准进行一些分析,并使用这些标准说明一下前面提到的压缩方法。
讨论的大多数标准都是得到国际化标准组织(ISO)和国际电话与电报咨询委员会(CCITT)认可的。
这些标准适用于二值图像和连续色调(单色的和彩色的)图像的压缩,同时也适用于静止画面和视频图像(即,连续帧)。
第一节概述
图像压缩的国际标准主要是由国际标准化组织(InternationalStandardizationOrganization,简称ISO)和国际电信联盟(InternationalTelecommunicationUnion,简称ITU)制定的。
国际电信联盟的前身是国际电话电报咨询委员会(ConsultativeCommitteeoftheInternationalTelephoneandTelegraph,简称CCITT)。
由这两个组织制定的国际标准可分成三个部分:
静止灰度(或彩色)图像压缩标准、运动图像压缩标准和二值图像压缩标准。
一.静止图像压缩标准
由上述两个组织的灰度图像联合专家组JPEG(JointPictureExpertGroup),建立了静态灰度(或彩色)图像压缩的公开算法,并于1991年开始使用。
它定义三种编码系统:
(1)DCT有损编码系统;
(2)扩展编码系统;
(3)无失真编码系统。
在视觉效果不受到严重损失的前提下,对灰度图像压缩算法可以达到15到20的压缩比。
如果在图像质量上稍微牺牲一点的话,可以达到40:
1或更高的压缩比。
如果处理的是彩色图像,JPEG算法首先将RGB分量转化成亮度分量和色差分量,同时丢失一半的色彩信息(空间分辨率减半)。
然后,用离散余弦变换来进行变换编码,舍弃高频的系数,并对余下的系数进行量化,以进一步减小数据量。
最后,使用行程长度编码和Huffman编码来完成压缩任务。
JPEG解压缩过程就是JPEG压缩过程的逆过程,这使得算法具有对称性。
二.运动图像压缩标准
运动图像专家组MPEG(MovingPictrueExpertGroup)的任务是制定用于数字存储媒介中活动图像及伴音的编码标准MPEG与JPEG算法在概念上类似,只不过它还利用了相继图像之间的冗余信息。
由于可达到100:
1的压缩比,所以MPEG算法非常实用,如用于在每秒一兆位的信道中传送带声音的彩色电视图像,以及在磁盘驱动器中存储较长一段时间的数字电视图像片段等。
三.运动图像压缩标准
1.连续帧图像的定义:
由多幅尺寸相同的静止图像组成的图像序列,被称为连续帧图像。
与静止帧图像相比,连续帧图像多了一个时间轴,成为三维信号,因此连续帧图像也被称为三维图像
2.基本思想:
基于如下基本假设:
各连续帧之间存在着相关性。
帧内编码:
针对一帧进行编码;
帧间编码技术:
根据前后帧的像素来编码,通过减少帧间图像数据冗余,来达到减少数据量、压缩连续帧图像体积的目的;
将连续帧图像序列,分为参考帧和预测帧,参考帧用静止图像压缩方法进行压缩(帧内编码),预测帧对帧差图像进行压缩(帧间编码),由于帧差图像的数据量大大小于参考帧的数据量,从而可以达到很高的压缩比
第二节.二值图像压缩标准
二值图像联合专家组JBIG(JointBilevelImagingGroup)的任务是研究制定用于二值图像的编码标准。
该标准主要为二值传真图像应用而设计的。
上述专家组最初制定的一些标准已得到广泛应用,到目前还在制定一些新的标准。
两种应用最为广泛的图像压缩标准是用于二值图像压缩的CCITT第三组和第四组标准。
尽管它们现在应用于多种计算机应用领域,但它们最初是为了使用传真(FAX)编码方法通过电话网络传输文件而设计的。
第三组标准应用非白适应的1维行程编码技术,在这种技术中,对每组K条线(K=2或4)的最后K-1条线用二维方式进行可任意选择的编码。
第四组标准是第三组标准进行简化和流水线化得到的版本,在该标准中,只允许存在二维编码。
两组标准使用同样的非自适应的二维编码方法。
这种方法与相对地址编码(RAC)技术非常相似。
在建立CCITT标准的过程中,有八种典型的“测试”文件被选择作为评估不同的二值压缩方案的基准。
用现存的第三组和第四组标准对这些包括打印和手写内容(使用几种不同的语言)以及少量线条的文件进行比率约为15:
1的压缩。
然而,由于第三组和第四组标准是以非自适应技术为基础的,所以有时候会导致数据膨胀(如对半色调图像即是如此)。
为了克服这种现象以及出现的相关问题,联合二值图像专家组(JBIG)——这是一个CCITT和ISO的联合委员会——已经采用和建议了几种其他的二值压缩标准。
这其中包括JBIG1标准,一种自适应算术压缩技术,这是目前可用的处理最一般情况和最坏情况下的二值压缩的技术,还有JBIG2标准(现在还是一份委员会的最终草案)。
使用这种标准得到的压缩效果通常是使用JBIG1标准得到的效果的2到4倍。
这些标准可以同时应用于二值图像和高达6灰度编码比特/像素的灰度级图像(以一个位平面为基础)的压缩。
一.一维压缩
在一维CCITT第三组压缩方法中,图像的每一条线都可以用一系列变长编码码字编码,这些码字代表从左到右扫描线条过程中,白色和黑色交替的行程长度。
码字本身分两类。
如果行程长度小于63,则使用修正的霍夫曼编码得到的一个终结编码。
如果行程长度大于63,则根得到最大可能出现的组成编码(不超过行程长度),将它与一个终结编码一起使用进行编码,终结编码用于表示组成编码和实际行程长度之间的差异。
这个标准要求每条线都从一个白色行程长度码字开始,事实上它们可能是00110101,这个编码表示一个零长度的白色行程。
最后,惟一的行尾(EOL)码字000000000001用于结束每一行,同时标记每幅新图像的第一行。
一个图像序列的结尾使用6个连续的EOL标记。
二.二维压缩
为CCITT第三组和第四组标准所采用的二维压缩方法采用的是逐线方法,这种方法在每个黑色转白色或白色转黑色的扫描转换位置上均参考基准元素a0进行编码,基准元素a0被设定在当前的编码线上。
前面提到的编码线称为基准线;
对每幅新图像的第一条线设定的基准线是一条虚构的白色线条。
对一条单扫描线的基本编码过程。
注意,这个过程的初始步骤在于对几个关键的转换或变化元素的定位:
a0,a1,a2,b1和b2。
变化元素定义为在同一条直线上与前一个像素值不同的像素。
最重要的变化元素是a0(基准元素),这个元素被设定在虚构的白色变化元素的位置上,而这个虚构变化元素的位置在每条新编码线的第一个像素的左边,或者a0可以根据以前的编码模式确定。
在a0的位置确定了之后,a1作为在当前编码线上a0右边的下一个变化元素的位置,a2作为在当前编码线上a1右边的下一个变化元素的位置,b1作为具有(a0的)相反值的变化元素,位于基准线(或前一条线)上a0的右边。
b2作为下一个变化元素位于基准线上b1的右边。
如果这些变化元素中的任何一个没有被检测到,则这些元素被设一定在适当线上最后一个像素右边的一个虚构像素位置上。
图8.45给出了在不同变化元素之问一般关系的两种说明。
在对当前基准元素和与之相联系的变化元素进行辨别之后,就要执行两种测试,以便从三种可能的编码模式中选择一种。
这三种编码模式分别为:
通过模式、垂直模式和水平模式。
第三章图像压缩编码原理
图像压缩方法在广义上可以分成两类。
一类是无损压缩,又称为可逆编码(ReversibleCoding),另一类是有损压缩,又称不可逆压缩(Non-ReversibleCoding)。
第一节压缩编码基础
图像数据的压缩机理来自两个方面:
一是利用图像中存在大量冗余度可供压缩;
二是利用人眼的视觉特性。
一.图像数据的冗余度
1.空间冗余
在一幅图像中规则的物体和规则的背景具有很强的相关性。
2.时间冗余
电视图像序列中相邻两幅图像之间有较大的相关性。
3.结构冗余和知识冗余
图像从大面积上看常存在有纹理结构,称之为结构冗余。
4.视觉冗余
人眼的视觉系统对于图像的感知是非均匀和非线性的,对图像的变化并不都能察觉出来。
二.人眼的视觉特性
1.亮度辨别阈值
当景物的亮度在背景亮度基础上增加很少时,人眼是辨别不出的,只有当亮度增加到某一数值时,人眼才能感觉其亮度有变化。
人眼刚刚能察觉的亮度变化值称为亮度辨别阈值。
2.视觉阈值
视觉阈值是指干扰或失真刚好可以被察觉的门限值,低于它就察觉不出来,高于它才看得出来,这是一个统计值。
3.空间分辨力
空间分辨力是指对一幅图像相邻像素的灰度和细节的分辨力,视觉对于不同图像内容的分辨力不同。
4.掩盖效应
“掩盖效应”是指人眼对图像中量化误差的敏感程度,与图像信号变化的剧烈程度有关。
三.数据压缩编码方法的分类
根据压缩机理的不同,数据压缩编码方法大致可以分成三类。
1.基于图像信源统计特性的压缩方法,有预测编码、变换编码、矢量量化编码、子带-小波编码和神经网络编码法等。
2.基于人眼视觉特性的压缩方法,有基于方向滤波的图像编码法和基于图像轮廓-纹理的编码法等。
3.基于图像景物特征的压缩方法,有分形编码法和基于模型的编码方法等。
第二节预测编码
一.预测编码基本原理
预测编码是根据某一模型利用过去的样值对当前样值进行预测,然后将当前样值的实际值与预测值相减得到一个误差值,只对这一预测误差值进行编码。
1.预测方法
(1).帧内预测
帧内预测利用图像信号的空间相关性来压缩图像的空间冗余,根据前面已经传送的同一帧内的像素来预测当前像素。
(2).帧间预测
电视图像在相邻帧之间存在很强的相关性。
(3).预测系数的选择
预测系数的选择通常采用最优线性预测法,选择预测系数a1,a2,…,an-1使误差信号en的均方值最小。
(4).自适应预测
自适应预测又称为非线性预测。
可以利用预测误差作为控制信息,因为预测误差的大小反映了图像信号的相关性。
2.预测量化器
(1)预测误差的统计特性
由于图像信号在帧内和帧间存在着一定的相关性,预测误差统计特性的一个特点就是它的概率分布集中在0附近的一个较窄的范围内,0值出现的