数字图象处理及matlab的实现ppt课件第0608章解析.ppt

数字图象处理及matlab的实现ppt课件第0608章解析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字图象处理及matlab的实现ppt课件第0608章解析

Attacked image Attacked image 8.5 JPEG压缩 JPEG简介 JPEG(Joint Photographic Experts Group)是联合图像专家小组的英文缩写,这个专家组开发的算法称为JPEG算法,并且成为国际上的彩色、灰度、静止图像的第一个国际标准,因此又称为JPEG标准。 JPEG是一个适用范围很广的静态图像数据压缩标准,不仅适用于静止图像的压缩,也常常被用于电视图像序列的帧内图像压缩编码。目前JPEG专家组开发了两种基本的压缩算法 一种是采用以离散余弦变换DCT为基础的有损压缩算法;另一种是采用以预测技术为基础的无损压缩算法。 使用有损压缩算法时,在压缩比为25:1的情况下,压缩后还原得到的图像和原始图像相比较,非图像专家难以找到它们之间的区别,因此得到了广泛的应用。例如在V-CD和DVD-Video电视图像压缩技术中,就使用JPEG的有损压缩算法来取消空间方向上的冗余数据。 JPEG算法框图如下,压缩编码大致分成三个步骤: 使用正向离散余弦变换(Forward Discrete Cosine Transform,FDCT)把空间域表示的图变换成频率域表示的图。 使用加权函数对DCT系数进行量化,这个加权函数对于人的视觉系统是最佳的。 使用哈夫曼可变字长编码器对量化系数进行编码。 JPEG压缩的基本原理 1.离散余弦变换 (1)首先把一幅图像划分成一系列的图像块,每个图像块包含8×8个像素。如果原始图像有640×480个像素,则图片将包含80列60行的方块。如果图像只包含灰度,那么每个像素用一个8比特的数字表示。因此可以把每个图像块表示成一个8行8列的二维数组。数组的元素是0~255的8比特整数。离散余弦变换就是作用在这个数组上。 DCT变换是做什么的 ? 简单的说,是用一个8行8列的二维数组产生另一个同样包含8行8列二维数组的函数,也就是说,把一个数组通过一个变换,变成另一个数组。 如下图所示,对每个图像块做离散余弦变换。通过DCT变换可以把能量集中在矩阵左上角少数几个系数上 f(i,j)经DCT变换之后得到F(i,j),其中F(0,0)是直流系数,称为DC系数,其他为交流系数,称为AC系数。 (2)用f表示像素值的数组,f(i j)表示i行j列的值,则离散余弦变换后定义一个新的数组F (u ,v),表示u行v列的值。 DCT公式计算: 上面两式中,C(u), C(v) = ,当u, v =0; C(u), C(v) = 1,其他。 计算F(0,0)的值过程如下: =235.6 (因为cos(0)=1) 这样再继续计算出数组中其余元素的值,得到数组F。 f(i,j)经DCT变换之后得到F(i,j),其中F(0,0)是直流系数,称为DC系数,其他为交流系数,称为AC系数。 (3)在计算二维的DCT变换时,也可使用下面的计算式(1)、(2)进行简化,把二维的DCT变换变成一维的DCT变换,下图为二维DCT变换方法。 (1) (2) 2.量化 为了达到压缩数据的目的,DCT系数需做量化。量化是对经过FDCT变换后的频率系数进行量化,这是一个多到一映射的过程。量化的目的是减小非0系数的幅度以及增加0值系数的数目,在一定的主观保真的前提下,丢掉那些对视觉效果影响不大的信息,量化是图像质量下降的最主要原因。 对于上面的例子,我们用表4-4的量化表对其进行量化,得到数组Q(i,j)。量化的公式为: Q(i,j)=Integer(F(i,j)/U(i,j)) 其中:U(i,j)为量化数组中对应的数组元素。也就是用数组F中的各元素分别除以量化数组Q中的相应元素。 以上是编码时对图像块的正向离散余弦变换和量化过程,解码的时候要进行逆量化和逆向离散余弦变换,图4-15说明了解码的过程,并且在逆向离散余弦变换之后对重构图像中的每个样本数据加了128,最后得到重构图像样本: 量化:有损压缩的标志,使数据走斜波变成数据走台阶  将实数域映射到整数域(失真的最魁祸首) Round: 为四舍五入取整运算,输出值 为输入值实数最接近的整数 X=Zij*Qstep 3.编码阶段 (1)Z字形编排。对于量化后的二维数组,我们还要对其进行线性化,然后再进行压缩加以传输。一个合理的线性化方法可能是一次传输Q的一行。由于出现这么多的0,可以使用行程编码。这是可行的,但还有更好的方法。 (2)直流系数的编码。8×8图像块经过DCT变换之后得到的DC直流系数有两个特点,一是系数的数值比较大,二是相邻8×8图像块的DC系数值变化不大。根据这个特点,JPEG算法使用了差分脉冲调制编码(DPCM)技术,对相邻图像块之间量化DC系数的差

文档评论(0)

4477704 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档