毕业设计(论文)基于DCT图像编码算法的研究.doc

上传人:仙人指路1688 文档编号:3979045 上传时间:2023-03-30 格式:DOC 页数:33 大小:878KB
返回 下载 相关 举报
毕业设计(论文)基于DCT图像编码算法的研究.doc_第1页
第1页 / 共33页
毕业设计(论文)基于DCT图像编码算法的研究.doc_第2页
第2页 / 共33页
毕业设计(论文)基于DCT图像编码算法的研究.doc_第3页
第3页 / 共33页
毕业设计(论文)基于DCT图像编码算法的研究.doc_第4页
第4页 / 共33页
毕业设计(论文)基于DCT图像编码算法的研究.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《毕业设计(论文)基于DCT图像编码算法的研究.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于DCT图像编码算法的研究.doc(33页珍藏版)》请在三一办公上搜索。

1、南京师范大学泰州学院毕 业 论 文题 目基于DCT图像压缩编码算法的研究学生姓名学 号专 业电子信息工程班 级信0803指导教师2012 年 4 月基于DCT图像压缩编码算法的研究摘 要随着科学技术的发展,图像压缩技术越来越引起人们的关注。为此从众多的图像压缩编码标准中选取了基于DCT变换的图像压缩编码算法进行研究,并通过对此对比分析各种软件特性选取了MATLAB进行仿真实验。首先说明了图像压缩在现代通信中的必要性和可行性,然后讲述了MATLAB及其图像处理工具箱的相关知识,并对基于DCT变换的图像压缩算法进行详细研究,重点介绍了压缩编码的具体过程和方法,详细介绍了编码中DCT变换,量化,DC

2、T编码等模块的原理以及各模块的功能分析。最后应用了MATLB进行了实验仿真并分析结果得出结论。实验结果表明基于DCT变换的图像压缩方法简单,方便,即能保证有较高的压缩比,又能保证较好的图像质量,应用MATLAB仿真出来的结果比较好的反应了其编码原理。关键词:图像压缩;DCT;MATLAB;图像处理工具箱DCT-based image compression encoding algorithmAbstractImage compression technology has been growing concern with the development of science. To this

3、 end a large number of images from the selected coding standard DCT-based image compression research, and comparative analysis of various software features through the selection experiment MATLAB simulation. First, note the image compression in modern communications and the necessity and feasibility

4、, and then tells the MATLAB and its Image Processing Toolbox of relevant knowledge, and DCT-based image compression algorithm is studied in detail, focuses on process and method of compression ,describes theory and mathematical derivation the DCT transform coding,quantization,entropy coding,as well

5、as the functional analysis of each module. The last application of MATLAB to Simulation and experimental results concluded. Experimental results show that the results table DCT-based image compression method is simple and convenient, not only guarantee a higher compression ratio, but also to ensure

6、both better image quality, MATLAB simulation results reflect a better algorithm principle.Keywords: image compression;DCT;MATLAB;Image Processing Toolbox目 录摘 要IAbstractII第一章 绪论11.1课题背景及研究意义11.2图像压缩技术的研究现状与发展趋势21.3论文主要内容与结构安排3第二章 所用开发工具简介42.1 MATLAB软件简介42.2 MATLAB的优势特点42.3 MATLAB在图像处理中的应用7第三章 常见的图像压缩

7、方法83.1 引言83.2 RLE(Run Length Encoding)压缩算法83.3 LZW编码93.4哈夫曼(Huffman)编码103.5基于小波的图像压缩技术103.6变换编码113.7基于分形的图像压缩与编码113.8本章小结12第四章 基于DCT变换的图像压缩方法144.1引言144.2离散余弦变换原理144.3基于DCT的图像压缩编码步骤164.3.1 基于DCT图像压缩编码流程图164.3.2 DCT系数的量化164.3.3量化系数的编排164.3.4 DC系数的编码174.3.5 AC系数的编码184.3.5组成位数据流194.4基于DCT的图像压缩MATLAB仿真22

8、4.5本章小结24结束语25参考文献26致 谢28第一章 绪论1.1课题背景及研究意义随着信息技术的发展,图像信息被广泛应用于多媒体通信和计算机系统中,但是图像数据的一个显著特点就是信息量大。具有庞大的数据量,如果不经过压缩,不仅超出了计算机的存储和处理能力,而且在现有的通信信道的传输速率下,是无法完成大量多媒体信息实时传输的,因此,为了更有效的存储、处理和传输这些图像数据,必须对其进行压缩,因此有必要对图像压缩编码进行研究。由于组成图像的各像素之间,无论是在水平方向还是在垂直方向上都存在着一定的相关性,因此只要应用某种图像压缩编码方法提取或者减少这种相关性, 就可以达到压缩数据的目的1。数字

9、图像的冗余主要表现在以下几种形式:空间冗余:规则物体和规则背景的表面物理特性都具有相关性,数字化后表现为数字冗余。例如:某图片的画面中有一个规则物体,其表面颜色均匀,各部分的亮度、饱和度相近,把该图片作数字化处理,生成位图后,很大数量的相邻像素的数据是完全一样或十分接近的,完全一样的数据当然可以压缩,而十分接近的数据也可以压缩,因为恢复后人亦分辨不出它与原图有什么区别,这种压缩就是对空间冗余的压缩。时间冗余:序列图像(如电视图像和运动图像)和语音数据的前后有着很强的相关性,经常包含着冗余。在播出该序列图像时,时间发生了推移,但若干幅画面的同一部位没有变化,变化的只是其中某些地方,这就形成了时间

10、冗余。统计冗余:空间冗余和时间冗余是把图像信号看作概率信号时所反应出的统计特性,因此,这两种冗余也被称为统计冗余。编码冗余:同样长度的编码可以表示不同的信息。结构冗余:相似的,对称的结构如果都加以记录就出现结构冗余。知识冗余:由图像的记录方式与人对图像的知识差异而产生的冗余。人对许多图像的理解与某些基础知识有很大的相关性。许多规律性的结构,人可以由先验知识和背景知识得到。而计算机存储图像时还得把一个个像素信息存入,这就形成冗余。视觉冗余:视觉系统对于图像场的注意是非均匀和非线性的,视觉系统不是对图像的任何变化都能感知。所谓的图像压缩编码技术就是对要处理的图像数据按一定的规则进行变换和组合, 从

11、而达到以尽可能少的数据流(代码)来表示尽可能多的数据信息。在图像压缩算法中,一种是以离散余弦变换(DCT,Discrete Cosine Transform)为基础的有损压缩算法,另一种是以预测技术为基础的无损压缩算法。1.2图像压缩技术的研究现状与发展趋势1948年提出电视信号数字化后,图像压缩编码的研究工作就宣告开始了。在这项技术发展的早期,限于客观条件,仅对帧内预测法和亚取样内查复原法进行研究,对视觉特性也做了一些极为有限但可贵的研究工作。1966年J.B.O Neal2对比分析了DPCM和PCM并提出了用于电视的实验数据。1969年进行了线性预测编码的实际实验。1969年举行首届图像编

12、码会议。70年代开始进行了帧间预测编码的研究。80年代开始对运动估值和模型编码进行研究。进入90年代,ITU-T和ISO3制定了一系列图像编码国际建议,如H.261、JPEG、MPEG-1、H.262、H.263、MPEG-4等。国际标准化组织12于1988年成立了一个致力于制定有关运动图像压缩编码的组织MPEG (Moving Picture Experts group),意思是“运动图像专家组”这个专家组的任务是给用于数字存储介质、电视广播和通信的运动图像和它的伴音制定一种通用的编码方法.MPEG组织在工作一开始就考虑到相关标准化组织的研究成果,如JPEG和H.261标准。运动图像可以看成

13、是静止图像的一个序列,所以运动图像的帧内编码技术就采用了JPEG推荐的离散余弦变换DCT技术.此外MPEG又加进了帧间压缩编码技术。1992年MPEG正式推出了MPEG-1标准草案,1993年正式通过.由于多媒体技术、数字电视技术、多媒体通信以及交互电视技术的发展,MPEG-1在视频音频分辨率和传输率方面已不能满足要求,所以ISO/IEC在1994年又推出了ISO/IEC13813 MPEG-2 运动图像及其伴音通用压缩编码标准。MPEG-2已经被国际上公认为HDTV信源压缩编码的标准.数字电视从传输方式上分为卫星数字电视广播、有线数字电视广播和地面数字电视广播,虽然它们的信道编码方式不同,但

14、是信源均采用MPEG-2标准编码。 采用二维离散傅立叶变换是1968年H.C.Andrews4等人提出的,此后相继出现用其他变换方法的变换编码,其中包括二维离散余弦变换。经过几十年的发展,图像编码技术业已成熟,一些国际建议的制定极大地推动了图像编码技术的实现和产业化,从而推动图像编码技术以更快的速度发展,目前的研究方向有两个:(1) 更好地实现现有的图像编码国际建议。 研制出集成度更高、性能更好的图像编码专用芯片,使编码系统成本更低、可靠性更高。解决好现有的图像编码系统开发中的技术问题。例如:提高图像质量、提高抗码能力等。(2) 对图像编码理论和其他图像编码方法的研究。 目前已经提出和正在进行

15、研究的图像编码方法有:多分辨率编码、基于表面描述的编码、模型编码、利用人工神经网络的编码、利用分形几何的编码、利用数学形态学的编码等等。1.3论文主要内容与结构安排本文的主要内容是,介绍图像压缩编码算法中的离散余弦变换(DCT)变换算法,和用MATLAB进行仿真,从而得出实验的结果。论文具体分为五章:第一章:绪论。首先简述了基于DCT图像压缩技术这一课题的研究意义,其次分析了现在图像压缩技术国内外的发展现状。指出DCT变换的图像压缩编码算法现在的优势与方便,有效的传输和压缩图像。第二章:所用开发工具简介。本章介绍了MATLAB的发展及它的优点,并且简述了MATLAB在图像处理中的应用。第三章:

16、常见的图像压缩方法。本章简要介绍了现在国内外对图像进行压缩时进行的几种压缩方法。对几种具有代表性、具有意义的压缩方法介绍了它们的基本原理。第四章:重点介绍了论文的中心利用DCT变换的编码方法对图像进行压缩。并与其他压缩方法进行对比实验,得出了实验的结果。总结出了DCT变换算法的图像压缩的优势。结束语:论文的总结。主要概括了论文的目的,并介绍了论文的各章重点以及未来的研究方向。第二章 所用开发工具简介2.1 MATLAB软件简介MATLAB软件由美国Math Works公司于1984年推出,历经十几年的发展和竞争,现已成为(IEEE)国际公认的最优秀的科技应用软件之一。MATLAB已推出Unix

17、、Windows 9x/NT、Linux和Mac等十多种操作系统平台下的版本,大大方便了在不同操作系统平台下的研究工作。事实上MATLAB既表示一种交互式的数值计算软件,又表示一门高级科学计算语言。MATLAB语言是一种直译式语言,其语法规则非常类似BASIC语言,有编程基础的人很快就可以熟悉并使用。它把计算、图示和编程集成到一个易用的交互式环境中,用大家熟悉的数学表达式来描述问题和求解方法从而使许多用C或FOR-TRAN实现起来十分复杂费时的问题用MATLAB可以轻松解决。利用MATLAB语言及其所提供的函数进行图像处理,编程简单、操作方便、可靠性强,能够达到预期的效果。MATLAB工具箱功

18、能非常强大,简化了繁琐的数学计算工作,有效的促进了数字图像处理相关的研究开发工作。MATLAB是矩阵实验室(Matrix Laboratory)的简称和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用与工程计算、控制设计。信号处理与通讯、图像处理、信号检测、金融建模设计与分析领域。现在MATLAB已经发展成为一个系列产品:MATLAB主包和各种工具箱(TOOLBOX)。目前已经推出了30多个工具箱,这些工具箱可分为两大类:功能性工具箱和学科性

19、工具箱。功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及硬件实时交互功能,能用于多种学科。而学科性工具箱是专业比较强的,如控制工具箱、信号处理工具箱、图像处理工具箱和小波工具箱等多个学科的专业工具箱。借助于这些工具箱,各个层次的研究人员就可方便地进行研究工作,提高工作效率。2.2 MATLAB的优势特点MATLAB 的优势可以概括为以下几点:1、友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工

20、作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。2、简单易用的程序语言MATLAB一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句和执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C+语言基础上的,因此语法特征与C+语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言移植性好

21、、可拓展性强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。3、强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C+。在计算要求相同情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅里叶变换的复杂函数。函数所能解决的问题大致包括矩阵运算和线性方程组的求解、微分方程及偏微

22、分方程的求解、符号运算、傅里叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。4、出色的图形处理能力MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图像处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理

23、等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。5、应用广泛的模板集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、

24、LMI控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱家族中有了自己的一席之地。6、实用的程序接口和发布平台新版本的MATLAB可以利用MATLAB编译器和C/C+数学库和图形库,将自己的MATLAB程序自动转化为独立与MATLAB运行的C和C+代码。允许用户编写可以和MATLAB进行交互的C或C+语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是M

25、ATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。7、应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括注释等;在输入输出方面,可以直接向EXCEL和HDP5进行连接。2.3 MATLAB在图像处理中的应用图像处理工具包是由一系列支持图像处理操作的函数组成的。所支持的图像处理操作有:图像的几何操作、邻域和区域操作、图像变换、图像恢复与增强、线性滤波和滤波器设计、变换(DCT

26、变换等)、图像分析和统计、二值图像操作等。下面就MATLAB在图像处理中各方面的应用分别进行介绍。(1)图像文件格式的读写和显示。MATLAB提供了图像文件读入函数imread(),用来读取如:bmp、tif、jpg、pcx、tiff、gpeg、hdf、xwd等格式图像文件;图像写出函数imwrite(),还有图像显示函数image()、imshow()等等。(2)图像处理的基本运算。MATLAB提供了图像的和、差等线性运算,以及卷积、相关、滤波等非线性运算。例如:conv2 (I,J)实现了I,J两幅图像的卷积。(3)图像变换。MATLAB提供了一维和二维离散傅立叶变换(DFT)、快速傅立叶

27、变换(FFT)、离散余弦变换(DCT)及其反变换函数,以及连续小波变换(CWT)、离散小波变换(DWT)及其反变换。(4)图像的分析和增强。针对图像的统计计算MATLAB提供了校正、直方图均衡、中值滤波、对比度调整、自适应滤波等对图像进行的处理。(5)图像的数学形态学处理。针对二值图像,MATLAB提供了数学形态学运算函数:腐蚀(Erode)、膨胀(Dilate)算子,以及在此基础上的开(Open)、闭(Close)算子、厚化(Thicken)、薄化(Thin)算子等丰富的数学形态学运算。以上所提到的MATLAB在图像中的应用都是由相应的MATLAB函数来实现的,使用时只需按照函数的调用语法正

28、确输入参数即可。具体的用法可参考MATLAB丰富的帮助文档。第三章 常见的图像压缩方法3.1 引言目前,图像压缩编码技术广泛应用于各种图像编码的传输、存储、检索等系统中。自从实现图像压缩技术以来,它已从实验室进入人们的日常生活。因此,研究高效的图像压缩编码方法,以压缩形式存储和传输数字化的图像信息具有重要的意义。图像压缩编码的目的是以尽量少的比特数表征图像,同时保证复原图像的质量,使它符合预定应用场合的需要。压缩数据量、提高有效性是图像压缩编码的首要目的。通常把图像压缩编码简称为图像编码。图像编码是一种信源编码,其信源是各种类型的图像信息。图3.1是按无损压缩和有损压缩给出的各类算法的分类框图

29、,在本章中将对其中几种算的基本原理进行论述。图3.1 各类图像压缩算法分类框图3.2 RLE(Run Length Encoding)压缩算法RLE2通常称为行程编码。这种压缩法使用于PCX,OFF,BMP等图像格式中,其压缩原理很简单。其中一种编码的形式是(L,v),将一行中颜色值相同的相邻像素用一个记数值和该颜色值来代替。例如,abbbccccddd经行程压缩处理后可表示为1a3b4c3d。另一种常用的行程编码方式是零行程,零是唯一经常出现的连续值,而其他值是任意的,在这种情况下,行程数L只用于表示连续0的个数,而V则用于表示0串后紧跟的非零值。例如00050010000003表示为(3,

30、5)(2,l)(6,-3)。当图像中存在很多块颜色相同的大面积区域,则RLE编码产生的压缩率是很高的。但如果图像中很少有两个相邻的像素的灰度值相同时,则RLE编码非但不能压缩,还会造成处理后的图像数据量大于处理前的情况。虽然这种压缩格式使用不是太广泛,但是存储的图像文件读取速度快,保真程度高,特别适合于信息量大、保真程度高的信息显示系统中。3.3 LZW编码LZW3编码是由Lemple和ZIV于是1997年提出的一种算法,后来经过Welch加以改进,故称LZW算法。LZW用于GIF,TIFF等图像文件中,属于字典压缩法。LZW压缩算法不需要在编码之前构造码表,而是在压缩过程中逐步建立字典的。其

31、基本思想是将每一个字节的值都要与下一个字节的值配成一个字符对,并为每一个字符设置一个代码。当同样的一个字符对再度出现时就用代号代替这一字符对,然后再用这个代号与下一个字符配对。在配对过程中,必须建立三个表格,分别为:字首表、字符表和代号表。所有的字符对和代号都分别存入这三个表格中。LZW不仅可以与RLE压缩算法一样对连续出现的相同字符进行压缩,而且可以对经常出现的由不同字符组成的字符串进行压缩。因此在压缩处理不同值数据串方面,LZW压缩方法优于RLE压缩算法。但是如果原始图像数据值中带有随机变化的“噪音图像”,则很难利用LZW算法来压缩。由于RLE算法有一个很严重的缺陷:如果大量出现的是两个字

32、节或三个字节为“循环节”的重复。由于行程较短,因而RLE效果较差。为了解决这个问题,LEW编码把出现过多次的子串称高频子串,并且将其编成一张表,生成高频字典。每个子串都有一个序号,每当碰到一个高频子串时,就用这个序号代替它。比如构造一个有256个常用词的字典,那么每个词可以用0-255之间的一个数来表示。也就是说,用一个字节代替一个字串,因而可以大大压缩数据。当然,在压缩数据中要把这个小字典放进去,以供还原算法查字典用,一般字典4K-6K之间。对图像而言,LZW作为一种无损编码适用于呈现出高度规律的图像,此时,其压缩比最大甚至可以达到10:1。对具有一般规律的图像,LZW编码对图像的压缩比为3

33、:1。显然,LEW编码不适用于无规律性的图像。3.4哈夫曼(Huffman)编码上述的两种方案在原理上有相同之处,都是试图找出原始数据中各种形式的存在规律性,然后以一种有效的方式重新编码存储。目前一些常用的计算机数据文件压缩软件就是采用上述两种方法。RLE和RLW都是在不改变原始数据字符编码方式基础上的算法,即压缩前后都是用8个比特来表示一个字符。假若数据的重复率不高时,RLW压缩效果都较差。例如“ABCAABA”这个字串有7个字节共56比特,对其进行压缩,RLE和RLW都不太合适。因其中既没有单个字节的多次重复,也没有子串的多次重复。但经过观察发现各字节出现的概率不同:A出现4次,B出现2次

34、,C出现1次。假如彻底改变ABC的定长编码方式,使出现次多的A占较少的比特,出现次数少的C用较多的比特:A编码0、B编码为10、C编码为11,则“ABCAABA”可比特流表示成为“0101100100”,这样只需要10个位(不到两个字节)。这种编码思想是由霍夫曼博士在1952年提出来的。因而该算法称霍夫曼压缩编码4(Huffman coding)。Huffman压缩方法使用于TIFF,JPEG等图像格式中。该编码是Huffman为压缩文本文件而建立的,其压缩原理是先统计需要编码的字符的出现概率,然后将短的码赋予出现频率高的字符,而将长的码赋予出现频率低的字符。因为哈夫曼编码较为简单有效,所以得

35、到了广泛的应用。但是产生哈夫曼编码要对原始数据扫描两遍:第一遍扫描要精确地统计出原始数据中每个值出现的频率;第二遍扫描是建立哈夫曼树并进行编码。由于需要建立二叉树并遍历二叉树生成编码,因此数据压缩和还原速度都较慢。另外哈夫曼编码对于位的增减都反应敏感,由于哈夫曼编码时所有位都集中在一起,而不考虑字节分界,译码程序判断码结束的唯一方法是达到二叉树的一个分支,因此,如果增加或减少位,译码程序将无法正确译出后面的数据。3.5基于小波的图像压缩技术小波变换6的概念是1984年法国地球物理学家J.Morlet在分析处理地球物理勘探资料时提出来的。小波变换的数学基础是19世纪的傅里叶变换,其后理论物理学家

36、A.Grossman采用平移和伸缩不变性建立了小波变换的理论体系。1985年,法国数学家Y. Meyer第一个构造出具有一定衰减性的光滑小波。1988年,比利时数学家I.Daubechies证明了紧支撑正交标准小波基的存在性并成功构造了它,使得离散小波分析成为可能。1989年S. Mallat提出了多分辨率分析概念,统一了在此之前各种构造小波的方法,特别提出了二维离散小波变换的快速算法,使得小波变换走向实用性。小波分析7方法是一种窗口大小(即窗口面积)固定但其形状可改变,时间窗和频率窗都可改变的时频局域化分析方法,即在低频部分具有较高的频率分辨率和较低的时间分辨率,在高频部分具有较高的时间分辨

37、率和较低的频率分辨率,所以被称为“数学显微镜”。真是这种特性,使得小波变换具有对信号的自适应性。3.6变换编码变换编码的基本思想是把空间域的图像信号转换到变换域。若变换是正交变换,则变换域的能量与空域相等并且熵保持不变。但是变换前后信息能量得到了重新分布。空间域中的像素之间存在很强的相关性,而变换域中能量则主要集中在直流和少数低频的变换系数上,这部分占图像信息的90%,而高频部分的幅值很小或几乎为零。同时变换系数间基本上是统计独立的,相关性较小。因此,可以仅对低频的变换系数进行量化、编码和传输,而对高频部分则不予编码,从而达到图像压缩的日的。实际中一般采用阈值编码法:即事先设定一个阈值,只对大

38、于此阈值的变换系数编码,这样可使图像的某些高频成分得到保留,重建图像时图像品质得到改善。有很多类型的正交变换,如K-L(离散信号的Hotelling)变换、离散余弦变换DCT、沃尔什-哈达玛变换和斜变换等。在这些正交变换中,采用均方误差最小准则的K-L变换是最佳变换,但其无快速算法且依赖于信源的统计特性,所以很难进行实时编码。3.7基于分形的图像压缩与编码分形是Manderbrot提出的几何学新概念。它来白拉丁文fractal泛指不规则地相互聚集在一起的“碎片”所代表的状态,用于描述自然界各种各样景物的复杂形状。自然界中的绝大多数景物比起欧几里德几何图形要复杂得多。例如,树木和云彩在分形理论中

39、由于采用新的几何学定义,其维数不是整数而是分数。分形最显著的特点是自似性:即几何尺度不论怎样变化,景物任何一个小部分的形状都与较大部分的形状极其相似。这种尺度不变性在自然现象中广泛存在,海岸线就可以看成是白相似性的典型例子。其次,分形具有精细的结构,即在任意小的尺度下,它总有复杂的细节。分形图像压缩是利用分形的自相似性原理。因为分形的局部与总体,局部与局部的相似性,实际上是一种尺度上的信息冗余。分形图像压缩正是利用这种相似性,通过消除尺度上的相似性来达到压缩图像的目的。图像用一组仿射变换系数来表征,仿射变换系数是通过仿射变换来实现的,编码的对象就是这些仿射变换的系数。由于仿射变换系数的数据量远

40、小于图像块的数据量,因此可以实现压缩的目的。分形编码主要有以下几个步骤:(l)将图像划分为互不重叠人小相等的域块和值块,一般域块比值块大一些。(2)在值块中搜索与域块最佳匹配块的位置,最佳匹配的含义是通过如下变换:,其中为灰度比例因子,g为平移量,T为仿射变换,找出匹配误差最小的块,记下相应的g、n以及匹配的坐标x,y,即为相应的迭代函数。最终,每个域块子图像只需要上述的5个参数就完全表示了。(3)解码时可由任意一幅图像作为初始图像。由于迭代函数的变换收敛性,只要迭代下去,就可以从任何一幅初始图像得到我们所需要的图像。所谓迭代过程就是把仿射变换作用于这幅图像上,重复几次,最后收敛于原图,一般迭

41、代8次就足够了。如果图像内容有很好的分形特点,如一棵树和一片云等,这样很容易在迭代函数系统中寻找与这些子图像对应的迭代函数,同时通过迭代函数的反复迭代能够更好地逼近原来的子图像,因而能得到很高的压缩比。但对一般图像,无论是编码精度还是解码效果都较筹。就目前的分形压缩技术而言,其编码时间过长,还无法满足实时性的要求。尽管如此,由于分形图像压缩突破了传统压缩方法的局限性,引入了局部和全局相关去冗余的思想,为实现高压缩比提供了可能性,因而对分形图像压缩的研究引起了人们的广泛兴趣。3.8本章小结图像压缩的方法有很多,本章对几种常见的图像压缩方法进行了一些归纳和总结,例如RLE、哈夫曼编码、LZW压缩算

42、法、DCT算法等等。这些压缩编码算法都是使用非常普遍,而且至今对图像压缩都起着重大的影响。而分形图像压缩方法是一种新的图像编码方法,它与传统的基于仙农信息论的编码方法完全不同,是一种基于图像内容间存在自相似性关系的编码方法。由于它的研究仅有十年的历史,还有许多问题有待于深入研究。第四章 基于DCT变换的图像压缩方法4.1引言前文所述的压缩编码方法如预测编码、变换编码、结构编码和分形编码等,这些方法都各有优缺点和适用范围。其中哈夫曼编码压缩方法使用于TIFF,JPEG等图像格式中。该编码是Huffman为压缩文本文件而建立的,其压缩原理是先统计需要编码的字符的出现概率,然后将短的码赋予出现频率高

43、的字符,而将长的码赋予出现频率低的字符。但是产生哈夫曼编码要对原始数据扫描两遍:第一遍扫描要精确地统计出原始数据中每个值出现的频率;第二遍扫描是建立哈夫曼树并进行编码。由于需要建立二叉树并遍历二叉树生成编码,因此数据压缩和还原速度都较慢。离散余弦变换(DCT)己被广泛地应用于包括国际静止图像编码标准JPEG,TIF在内的多项压缩算法的实现中。DCT变换具有运算速度快和在中等压缩比下有好的压缩效果等特点。在图像压缩中,最常用的变换方法是DCT,DCT被认为是性能接近K-1变换的准最近变换,DCT变换在静态图像压缩中得到快速的运用。4.2离散余弦变换原理在傅里叶级数展开式中,如果被展开的函数是实偶

44、函数,那么,其傅里叶技术中只包含余弦项,在将其离散化由此可导出余弦变换,或称之为离散余弦变换(DCT,Discrete Cosine Transform)。二维离散余弦正变换公式为 (2-1)式中,。二维离散余弦逆变换公式为 (2-2)式中,。 如果采用88大小的子块的二维离散余弦变换,在编码器的输入端,把原始图像顺序地分割成一系列88的子块,子块的数值在-128到127之间。采用余弦变换获得64个变换系数8。图4.1 MATLAB实现的流程图变换公式,如式(2-3)所示。 (2-3)式中,。 4.3基于DCT的图像压缩编码步骤4.3.1 基于DCT图像压缩编码流程图基于DCT的图像压缩编码的

45、MATLAB实现的流程图如图4.1所示。4.3.2 DCT系数的量化量化是对经过DCT变换后的频率系数进行量化,其目的是减小非“0”系数的幅度以及增加“0”值系数的数目,它是图像质量下降的最主要原因。对于基于DCT的图像压缩编码算法使用如图4.2所示的均匀量化器进行量化,量化步距是按照系数所在的位置和每种颜色分量的色调值来确定。因为人眼对亮度信号比对色差信号更敏感。此外,由于人眼对低频分量的图像比对高频分量的图像更敏感,因此表中的左上角的量化步距要比右下角的量化步距小。DCT系数输入量化系数输出图4.2 均匀量化器亮度和色度因为代表的图像的信息量不同,亮度代表了图像的低频分量,色度代表了图像的

46、高频分量,要分别对亮度和色度进行量化,所以量化表也是不同的。4.3.3量化系数的编排经过DCT变换后,低频分量集中在左上角,其中F(0,0)(即第一行第一列元素)代表了直流(DC)系数,即88子块的平均值,要对它单独编码。由于两个相邻的88子块的DC系数相差很小,所以对它们采用差分编码DPCM,可以提高压缩比,也就是说对相邻的子块DC系数的差值进行编码。88的其它63个元素是交流(AC)系数,采用行程编码10。所以量化后的系数要重新编排,目的是为了增加连续的“0”系数的个数,就是“0”的游程长度,方法是按照Z字形的式样编排。DCT变换后低频分量多呈圆形辐射状向高频率衰减,因此可以看成按Z字形衰

47、减。因此,量化系数按Z字形扫描读数,这样就把一个88的矩阵变成一个164的矢量,频率较低的系数放在矢量的顶部。量化后的DCT系数的编排如图4.3所示。图4.3量化DCT系数的编排量化后的DCT系数的序号如表4.4所示。表4.4 量化DCT系数的序号01561415272824713162629423812172530414391118243140445310192332394552542022333846515560213437475056596135364849575862634.3.4 DC系数的编码88子块的64个变换系数经量化后,按直流系数DC和交流系数AC分成两类处理。坐标的直流系数DC实质上就是空域图像中64个像素的平均值。图像块经过DCT变换之后得到的DC直流系数有两个特点,一是系数的数值比较大,二是相邻88图像块的DC系数值变化不大。根据这个特点,JPEG算法使用了差分脉冲调制编码技术。差分脉冲编码调制(DPCM,Differential Pulse Code Modulation),是一种对模拟信号的编码模式,先根据前一个抽样值计算出一个预测值,再取当

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号