数字图像处理与Python实现-课件 第八章-图像压缩_第1页
数字图像处理与Python实现-课件 第八章-图像压缩_第2页
数字图像处理与Python实现-课件 第八章-图像压缩_第3页
数字图像处理与Python实现-课件 第八章-图像压缩_第4页
数字图像处理与Python实现-课件 第八章-图像压缩_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

数字图像处理2022-2023-2课程内容入门认识第8章图像压缩第7章图像分割基本操作应用第9章图像水印第10章指纹识别第11章深度学习综合案例第八章图像压缩8.1图像压缩基础8.2常见的压缩编码技术8.3小结一幅24位高清图像,分辨率为1920×1080,所占空间为()。1920×1080×24/8=6220800byte=6075KB≈5.93MB1920×1080×24/1024/1024≈49.76MB1920×1080×24/8/1024/1024≈5.93M1920×1080×24/1024=48600MB1920×1080×24/8/1024=6072MBABCD提交单选题1分一段时长1分钟、24位色、分辨率为1920*1080、帧频为30fps的高清视频。1920*1080*24*30*60/8/1024/1024/1024≈10.428GB。若没有压缩,所占存储容量大约是:图像压缩:以较少的比特有损或无损地表示原来的像素矩阵的技术,

也称图像编码。图像和视频在存储、传输、处理等过程所需资源呈现爆炸式增长,所以对数字图像和视频数据进行压缩是非常必要。8.1.1数据冗余相关概念压缩率(又称压缩比),表示压缩后数据量与压缩前数据量的比值:

数据冗余,表示压缩减少的数据量占压缩前数据量的比值:

8.1.1数据冗余相关概念数字图像冗余形式:编码冗余、空间冗余、时间冗余、视觉冗余等。编码冗余(又称信息熵冗余):图像中平均每个像素使用的比特数大于图像的信息熵,比如,灰度图中用于表示灰度的8比特编码往往要多于表示灰度所需要的比特数。空间冗余(又称几何冗余:由图像内部相邻像素之间存在较强的相关性造成的冗余。比如,一幅图像中存在一片连续的像素颜色相同的区域,则空间冗余较多。时间冗余(又称帧间冗余):视频图像序列中由相邻帧之间相关性造成的冗余。比如,同一镜头内,相邻视频序列过渡比较缓慢,相邻帧具有极大的相似性。视觉冗余:人眼敏感度较低或者不能感知的那部分图像信息。8.1.2数据压缩模型编码器负责把原图像进行编码压缩;解码器负责将压缩后的图像进行解码操作。映射器:减少图像空间和时间冗余,是可逆操作;量化器:根据映射器输出的精确度进一步降低映射器输出的精度,排除无关信息;符号编码器:将量化器输出的频率高的值赋予短位数编码,达到减少编码冗余的目的。8.1.3图像格式和压缩标准常见的图像格式有:BMP、TIFF、JPEG、GIF等,

在本书第一章中已有介绍;常用的压缩标准主要有:JPEG、JEPG2000、DV、H.261、H.262、H.263、H.264、MPEG-1、MPEG-2、MPEG-4、MPEG-4AVC等。1.JPEG编码JPEG(JointPhotographicExpertsGroup)是最常用的图像文件格式,后缀名为.jpg或.jpeg,其是JPEG标准的产物。JPEG标准是面向连续色调静止图像的一种压缩标准,由国际标准化组织(ISO)制订。JPEG文件格式在本书第一章中已有介绍。常见的实现编码算法有基于图像块的变换编码、哈夫曼(Huffman)编码、行程编码等。8.1.3图像格式和压缩标准由国际标准化组织(ISO)制订;最常用的图像文件格式,后缀名为.jpg或.jpeg,其是JPEG标准的产物;面向连续色调静止图像的一种压缩标准;常见的编码算法:

基于图像块的变换编码、哈夫曼(Huffman)编码、行程编码等。1.JPEG编码(JointPhotographicExpertsGroup)8.1.3图像格式和压缩标准MPEG:是ISO与IEC(国际电工委员会,InternationalElectrotechnicalCommission)于1988年成立的专门针对运动图像和语音压缩制定国际标准的组织;MPEG标准主要有:MPEG-1、MPEG-2、MPEG-3、MPEG-4等。编码技术主要利用了具有运动补偿的帧间压缩编码技术以减小时间冗余度,利用DCT技术以减小图像的空间冗余度,利用熵编码在信息表示方面减小统计冗余度。这些技术的综合运用,大大提高了压缩性能。2.MPEG编码(MovingPictureExpertsGroup)8.1.3图像格式和压缩标准由ITU-T视频编码专家组(VCEG)和MPEG联合组成的联合视频组(JVT,JointVideoTeam)提出。以高压缩高质量和支持多种网络的流媒体传输被广泛使用。在ITU的标准里称为H.264,在MPEG的标准里为MPEG-4Part10,又称AVC(AdvancedVideoCodec)。因此H.264也常常称为MPEG-4或AVC。压缩方法主要包括:帧内预测压缩,解决空域数据冗余问题;帧间预测压缩(运动估计与补偿),解决时域数据冗余问题;整数离散余弦变换,将空间上的相关性变为频域上无关的数据,然后再进行量化。3.H.2648.1.4图像压缩编码技术分类(1)有损编码(不可逆编码)1.根据压缩过程有无信息损失:压缩时部分信息丢失,导致解码重新构造的图像存在一定失真。有损压缩多用于数字电视、静止图像通信等领域。代表性算法包括有损预测编码、变换编码等。压缩过程没有信息的损失,解压后的还原图像与原始图像完全相同。常用于工业检测、医学图像、存档图像等领域的图像压缩中。代表性算法包括哈夫曼编码、游程编码、无损预测编码等。(2)无损编码(可逆编码)8.1.4图像压缩编码技术分类(1)统计编码2.根据图像压缩编码原理进行划分:出现概率高的事件用短码表示,出现概率低的事件用长码表示。常见的统计编码方法有哈夫曼编码和算术编码。利用空间和时间高度相关性,以近邻像素值为参考,预测当前像素值,然后量化、编码预测误差。应用于运动图像、视频编码中,如数字电视、视频电话等。(2)预测编码(3)变换编码空域数据经正交转换到另一个变换域(频率域),然后对系数进行编码处理第八章图像压缩8.1图像压缩基础8.2常见的压缩编码技术8.3小结8.2.1霍夫曼编码1.算法原理根据符号的出现概率构建一棵二叉树:出现概率越高的符号离根节点越近,出现概率越低的符号离根节点越远。每个叶子节点,构建一个编码,由从根节点到该叶子节点的路径上的所有边构成。出现概率高的符号就用较短的编码表示,出现概率低的符号则需要较长的编码表示。(1925-1999)个人成就:(1)霍夫曼编码,

(2)霍夫曼算法,二叉最优搜索树算法效率最高,

是动态规划的一个范例(3)获得计算机先驱奖,

IEEE的McDowell奖(4)加州大学的SantaCruz分校计算机科学系的创始人无损编码8.2.1霍夫曼编码1.算法原理在图像压缩中,图像由若干个像素值组成,统计每个像素值的出现频率,将其转化为概率分布。根据概率分布构建霍夫曼树,得到每个像素值的哈夫曼编码。将每个像素值替换成对应的哈夫曼编码,即可实现对图像的压缩。8.2.1霍夫曼编码2.算法步骤(1)统计像素值出现的频率:统计每个像素值出现的次数。(2)根据频率建立哈夫曼树:使用像素值出现的频率作为权值,建立哈夫曼树。(3)对每个像素值进行编码:从哈夫曼树根节点向下遍历,可设定左子树编码为0,右子树编码为1,直到叶子节点。(4)生成编码表:将每个像素值对应的编码保存到编码表中。(5)压缩图像:根据编码表将像素值转换为对应的哈夫曼编码,拼接起来,得到压缩后数据。(6)存储压缩数据:将压缩后的数据保存到文件中,同时保存编码表。(7)解压缩:

读取压缩数据和编码表,根据编码表转换为像素值,将所有像素值拼接得到解压缩图像。8.2.1霍夫曼编码3.具体实现(1)统计各符号出现概率,并由大到小排队。(2)编码:从最小概率的两符号开始,选其中一个支路为0,另一支路为1。(3)将已编码的两支路的概率合并,并重新排队.(4)多次重复使用上述方法,直至合并概率归一时为止。8.2.1霍夫曼编码4.

Python实现编码之后的图像数据量与原始图像数据量之比为0.9968.2.2算术编码1.算法原理将区间[0,1)连续划分成多个子区间,每个字符区间代表一个字符,区间大小与这个字符出现的概率成正比。消息越长,编码表示它的间隔就越小,表示这一间隔所需的二进制位就越多。在保留字符排列顺序的同时,对于更高频出现的字符,赋予更大的小数区间。无损编码8.2.2算术编码2.算法步骤(1)以二进制的方式读取文件,计算出文件中不同字节的频数和累计频数;(2)按照不同字节出现的频率,将[0,1)区间划分成若干个子区间,每个子区间代表一个上述字节,区间的大小正比于这个字节出现的频率,且所有的子区间加起来正好是[0,1);(3)编码从初始区间[0,1)开始,不断读入原始数据的字符,每读入一个信号,找到该字符所在区间,然后把该区间作为新的区间间隔,然后按照字符出现的频率将字符等比例的缩小到最新得到的间隔中;(4)在最新的区间中重复步骤(3),继续将该区间进行划分,不断重复这个过程,直到最后信号中的信源信号全部读完为止,最后将得到的区间中任意一个小数以二进制形式输出即得到编码的数据。8.2.2算术编码3.算法实现假设存在四种信源信号分别为A、B、C、D,概率分别为:0.2、0.3、0.4和0.1。对字符串ACBD进行算术编码的过程:8.2.2算术编码4.解码算法假设存在四种信源信号分别为A、B、C、D,概率分别为:0.2、0.3、0.4和0.1。根据编码值0.154判断其所在的原始区间在[0,0.2)内,可以得到其首位字符为A;按照信源信号概率分布进一步划定“新的区间”,并判断编码值落在“新的区间”中的位置,得到第二位字符;重复以上步骤,直到编码长度达到要求为止。如果编码长度不限制的话,可以一直编码下去,可以无损还原出原始信息。8.2.2算术编码5.

Python实现显示压缩比为0.7388.2.3行程编码1.算法原理又称游程编码、变动长度编码或行程长度编码等,是一种统计编码。在数据图像的编码中寻找连续的重复数值,并用出现次数和颜色编号取代这些连续的值。例如,一串字母表示的数据为“aaaaabbcccddddccddbb”,

经过行程编码处理后可表示为“5a2b3c4d2c2d2b”。8.2.3行程编码1.算法原理数字图像而言,同一幅图像某些连续的区域颜色相同,即图像中,同一扫描行中许多连续的像素都具有同样的颜色值。只要存储像素的颜色值、相同颜色像素的位置以及相同颜色的像素数目即可,把具有相同灰度值(颜色值)的相连像素序列称为一个行程。8.2.3行程编码2.算法分类行程编码分为:定长行程编码和变长行程编码两种。(1)定长行程编码:编码的行程所使用的二进制位数固定。如果灰度连续相等的像素个数超过了固定二进制位数所能表示的最值,则进行下一轮行程编码。(2)变长行程编码:对不同范围的行程使用不同位数的二进制位数进行编码,需要增加标志位来表明所使用的二进制位数。8.2.3行程编码(RunLengthEncoding,RLE)3.算法特点相当直观和经济,运算简单,解压缩速度很快。译码规则与编码时相同,还原后得到的数据与压缩前的数据完全相同。RLE所能获得的压缩比有多大,取决于图像本身的特点。RLE一般不直接应用于颜色丰富的自然图像(多灰度图像),但适合于二值图像的编码。无损编码8.2.3行程编码(RunLengthEncoding,RLE)3.算法特点有时行程编码与其他一些编码方法混合使用。8.2.3行程编码(RunLengthEncoding,RLE)5.算法缺点缺点:(1)对传输差错很敏感,如果其中一位符号发生错误,就会影响整个编码序列的正确性,使行程编码无法还原回原始数据,一般要用行同步、列同步的方法,把差错控制在一行一列之内。(2)像ABCDBACADB使用这种算法文件会增大,就是1A1B1C1D1B1A1C1A1D1B了,达不到压缩的效果。8.2.3行程编码(RunLengthEncoding,RLE)6.算法实现压缩比为0.50478.2.4小波图像编码1.子带编码小波变换在20世纪90年代初期已较成熟8.2.4小波图像编码S.Mallat于1988年提出了多分辨率分析的概念,从空间上形象地说明了小波的多分辨率的特性,提出了正交小波的构造方法和快速算法,称为Mallat算法。1.多分辨率编码8.2.4小波图像编码1.多分辨率编码8.2.4小波图像编码2.小波图像编码小波变换符号编码器符号解码器小波反变换量化器压缩后图像解码后图像原图像(1)对图像进行多级小波分解,得到相应的小波系数;(2)对

温馨提示

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

评论

0/150

提交评论