收藏 分享(赏)

基于matlab的jpeg基本系统编码.doc

上传人:无敌 文档编号:633312 上传时间:2018-04-15 格式:DOC 页数:47 大小:1.09MB
下载 相关 举报
基于matlab的jpeg基本系统编码.doc_第1页
第1页 / 共47页
基于matlab的jpeg基本系统编码.doc_第2页
第2页 / 共47页
基于matlab的jpeg基本系统编码.doc_第3页
第3页 / 共47页
基于matlab的jpeg基本系统编码.doc_第4页
第4页 / 共47页
基于matlab的jpeg基本系统编码.doc_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、摘要I摘 要本文介绍了基于 MATLAB 的 JPEG 基本系统编码。在图像传送过程中,经常采用JPEG 格式对静止图像进行压缩编码。JPEG 基本系统编码首先把灰度图像分成 88 的像素块,然后对各个像素块进行离散余弦变换得到变换系数后再进行量化。其次,对量化后的变换系数采用 Z 形扫描,得到直流系数和交流系数。接着,对直流系数采用预测编码,对交流系数采用可变长编码。最后,根据标准的 Huffman 编码进行熵编码,输出压缩图像的比特序列,从而实现图像压缩。在接收端,经过 Huffman 解码、直流系数和交流系数可变长解码以及反量化后,再进行离散余弦逆变换后得到重建图像。MATLAB 仿真结

2、果表明:重建图像与原始图像几乎没有任何差异,能够满足人们的视觉需求。另外,数据压缩比在 10 倍左右且峰值信噪比均在 30dB 以上。因此,采用MATLAB 实现 JPEG 基本系统编码具有方法简单、速度快、误差小等优点,能够大大提高图像压缩的效率和精度。关键词:JPEG;离散余弦变换; MATLAB;图形用户界面AbstractIIABSTRACTThe JPEG basic system coding based on MATLAB is introduced in this paper. The JPEG format is usually used to compress static

3、 image during the process of image transmission.The JPEG basic system coding divides the gray image into several sub-images of size 88 firstly. Discrete cosine transform is used to get the transform coefficient of sub-image and then the transform coefficient is quantized. Secondly, Z type scan is ad

4、opted to get direct current (DC) coefficient and alternate current (AC) coefficient of the quantized transform coefficient. Thirdly, predictive coding and variable-length coding is used for DC and AC coefficient respectively. Finally, bit sequences of the compressed image are outputted by using entr

5、opy coding according to standard Huffman coding. Then image compression is realized. The user gets the reconstructed image by Huffman decoding, variable-length decoding of DC and AC coefficient, dequantization and reverse discrete cosine transform sequentially.MATLAB results of simulation demonstrat

6、e that there is no difference between reconstructed image and original image and reconstructed image can satisfy human visual requirements. Additionally, compression ratio is about 10 and peak signal-to-noise ratio is all over than 30dB. Therefore, the realization of JPEG basic system coding using M

7、ATLAB is of such advantages as simple method, fast speed, small error and it can enhance the efficiency and accuracy of image compression greatly. Key words: JPEG; discrete cosine transform; MATLAB; graphical user interface目录i目 录第 1 章 绪 论 .11.1 图像变换编码概述及目前状况 .11.2 论文结构 .2第 2 章 MATLAB 简介 .32.1 MATLAB

8、 的发展简史 .32.2 MATLAB 的特点 .32.2.1 MATLAB 的功能 .32.2.2 MATLAB 的技术特点 .42.3 MATLAB 图像类型 .52.4 GUI.5第 3 章 变换编码 .73.1 变换编码的一般形式与意义 .73.2 基本原理 .73.2.1 正交变换的去相关性.83.2.2 变换编码性能判断.93.2.3 变换编码的特点.113.3 最佳正交变换 K-L 变换 .11第 4 章 JPEG 图像压缩 .134.1 JPEG 概述 .134.2 JPEG 图像编码算法的实现 .144.2.1 离散余弦编码.144.2.2 量化.154.2.3 编码.164

9、.2.4 JPEG 图像数据压缩发展 .19第 5 章 MATLAB 仿真 .215.1 系统模块图 .215.2 JPEG 压缩编码的设计流程 .21目录ii5.2.1 扫描顺序变换.225.2.2 量化部分程序流程图.225.2.3 霍夫曼编码部分程序流程图.225.3 图形用户界面设计 .25第 6 章 结论与展望 .296.1 结论 .296.2 不足之处及未来展望 .29参考文献 .31致 谢 .32附 录 .33基于 MATLAB 的 JPEG 基本系统编码1第1章 绪 论1.1 图像变换编码概述及目前状况现实世界中的图像多为模拟图像,但是计算机只能处理数字信息,因此,必须将其数字

10、化,转换成适合计算机存储和表示的形式,才能由计算机进行处理。为了便于信息交换和方便使用,数字图像必须以一定的格式存储,如常用的 BMP、JPEG、GIF 等图像文件格式。从颜色来看,数字图像又有线画稿、灰度图像、彩色图像、真彩色图像等种类。随着信息技术的发展,对静止图像和视频序列图像的压缩编码技术的应用越来越广泛,从家庭娱乐到专业的通信设备、从廉价的消费电子产品到昂贵的专业级专用设备,应用的例子举不胜举,如 VCD、DVD、可视电话、视频会议、 IP 上的视频服务、数字图书馆、数字电视、高清晰电视、数码照相机、数字图像监控等因此工业界对图像压缩专业人员的需求在不断地增长。长期以来,人们在自然界

11、感受到的最主要的信息是视觉信息,但与此不同,在早期计算机和通信领域,能够处理和传输的主要是文字和声音。因此,早期的计算机和通信设备的处理能力跟人类的需求有相当大的差距。随着通信信道及计算机容量和速度的提高,图像信息已经成为通信和计算机系统的一种重要的处理对象。与文字信息不同,图像信息需要大的存储容量和宽的传输信道,尤其是在需要实现大规模图像数据库或传输高分辨率实时图像序列的场合,即使以现在的技术,仍然难以满足原始数字图像存储和传输的需要(表 1.1 是几种常见视频图像源未经压缩的原始数据率)。正由于这种需求,使得图像压缩(编码)算法和技术成为近 30 年来非常活跃的一个研究领域。图像压缩的基本

12、理论起源于 20 世纪 40 年代末香农(Shannon)的信息理论。香农的编码定理告诉我们,在不产生任何失真的前提下,通过合理的编码,对每一个信源符合分配不等长的码字,平均码长可以任意接近于信源的熵。在这个理论框架下,出现了几种不同的无失真信源编码方法,如 Huffman 编码、算术编码、字典编码等,这些方法可以应用于一幅数字图像,能获得一定的码率压缩。但无失真编码的压缩率是很有限的,对较复杂的自然图像,压缩率一般不超过 2。由于无失真信源编码压缩率的限制,使其难以满足大多数图像存储和传输的需要。根据应用的需求,人们对有失真压缩进行了广泛的研究。有失真压缩的目的是去除图像数据中的冗余信息和对

13、视觉不重要的细节分量,以尽可能少的码字来表示所处理的图像。给定一幅数字图像,它的原始表示一般是空间像素阵列,这是它的空间域表示。在空间域表示中,相邻的像素之间存在很强的相关性,冗余信息分布在较大范围的空间像素集中,直接处理比较困难。最常用的处理方法是通过一种变换,将图像从空间域映射到变XX 大学学士学位论文2换域中,在变换域可以进行简捷和有效的处理。对于变换的第一种要求是:将强相关的空间像素阵映射成完全不相关的、能量分布紧凑的变换系数阵,占少数的大的变换系数代表了图像中最主要的能量成分,占多数的小的变换系数表示了一些不重要的细节分量,通过量化去除小系数所代表的细节分量,用很少的码字来描述大系数

14、所代表的主要能量成分,从而达到高的压缩比。这是用变换技术进行有失真编码能够达到高压缩比的主要原因。对于变换的第二种要求是:变换系数阵的物理含义要明确,使其容易与人们关于HVS(人类视觉系统)的知识相结合,以便有效地去除视觉冗余,尽可能地保留重要的视觉信息。具备最理想的去相关和最强的能量紧致特性的变换是 KL(Karhunen Loeve)变换,KL变换使得变换系数之间是统计不相关的。但 KL 变换的基是不固定的,由像素的相关系数矩阵的特征向量构成,特征分析的复杂性和需要额外存储变换基,使得 KL 变换的应用不现实。幸运的是,人们找到了 KL 变换的一个很好的逼近。对于强相关空间像素阵,人们发现

15、 DCT(discrete cosine transform,离散余弦变换)是 KL 变换的很好的逼近。DCT 有固定的基和明确的物理含义,使得 DCT 广泛应用于图像压缩,成了变换编码的主要工具。20 世纪 80 年代中期开始制定的静止图像压缩编码的国际标准 JPEG 采用了 DCT 变换编码为其核心算法,并被广泛地接受和应用。但是 DCT 变换编码也有难以克服的缺点。在实际应用中,为了便于实现和后处理,图像被划分成 88 或 1616 的小块,对每一个块进行单独的变换和后处理。这种块之间的单独处理带来了压缩效率上的限制和块效应问题,尤其是当压缩倍数较高时,块效应成为限制 DCT 变换编码质

16、量的主要因素。20 世纪 80 年代后期,小波变换的发展提供了一种新的有效的多分辨信号处理工具,也为各种可分级图像编码算法的实现奠定了基础。小波变换应用在很多领域,最成功的应用领域之一就是图像压缩。小波变换的理论和算法明确地提出了一些有启发意义的思想,一个关键的思想是多分辨率分解,这个思想很好地利用在小波图像编码的研究中。小波图像压缩的研究表明,现代应用所需求的许多特征如多分辨、多层质量控制、嵌入式码流等与小波图像编码结构非常自然地融合在一起,在较大压缩比下,小波图像压缩的重构质量也明显好于 DCT 变换方法 1。1.2 论文结构第1章主要介绍了图像变换编码及其目前状况;第2章简单阐述了MAT

17、LAB 的相关内容,其中包括它的发展史、特点、功能、图像类型、图像用户界面等方面;第3章则讨论了静止图像的变换编码,这是传统变换方法的主要内容,也是构成目前多数图像编码标准的基础算法;第4章主要给出了一些JPEG图像压缩的标准,以及具体的JPEG图像编码算法的实现过程;第5章则用MATLAB对图像编码进行仿真,并用图形用户界面的形式呈现处理结果;第6章对基于MATLAB的JPEG基本系统编码进行总结,并对其应用进行展望。实验仿真结果表明,用MATLAB 来实现离散余弦变换的图像压缩,具有方法简单、基于 MATLAB 的 JPEG 基本系统编码3速度快、误差小的优点,免去了大量矩阵计算,大大提高

18、了图像压缩的效率和精度。XX 大学学士学位论文4第2章 MATLAB简介MATLAB 语言是由美国 Math Works 公司推出的计算机软件,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一。其内容涉及矩阵代数、微积分、应用数学、有限元法、科学技术、信号与系统、神经网络、小波分析及其应用、数字图像处理、计算机图形学、电子线路、电机学、自动控制与通信技术、物理、力学和机械振动等方面。MATLAB 的特点是语法结构简单,数值计算高效,图形功能完备,特别受以完成数据处理与图像生成为目的的科研人员的青睐。在高等院校,MATLAB 已经成为学生必须掌握的基本技能。在设

19、计研究单位和工业部门, MATLAB 已经走出实验室,并被广泛应用于研究和解决各种具体的工程问题 2。2.1 MATLAB的发展简史MATLAB 是 Matrix Laboratory(矩阵实验室的缩写),最初由美国 Cleve Moler 博士在70 年代末讲授矩阵理论和数据分析等课程时编写的软件包 Linpack 与 Eispack 组成,旨在使应用人员免去大量经常重复的矩阵运算和基本数学运算等繁琐的编程工作。1984 年成立的 Math Works 公司正式把 MATLAB 推向市场,并从事 MATLAB 的研究和开发。1990 年,该公司推出了以框图为基础的控制系统仿真工具 Simul

20、ink,它方便了系统的研究与开发,使控制工程师可以直接构造系统框图进行仿真,并提供了控制系统中常用的各种环节的模块库。1993 年,Math Works 公司推出的 MATLAB4.0 版在原来的基础上又作了较大改进,并推出了 Windows 版,使命令执行和图形绘制可以在不同窗口进行。1994 年推出了 MATLAB4.2 版本,并得到广泛的重视和应用。 1999 年,推出了MATLAB5.3 版本,真正实现了 32 位运算,其速度更快、功能更完善、界面更友好,并提供了 Internet 搜索引擎,可以协助用户寻求在线帮助。版本 6.0、6.1 又作了更精细的改进,增加了许多新的功能。版本

21、7.0、7.1 包括拥有数百个内部函数的主包和三十几种工具包。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充 MATLAB 的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。2.2 MATLAB的特点2.2.1 MATLAB 的功能MATLAB 之所以成为世界流行的科学计算与数学应用软件,是因为它有着强大的功能。(1) 高质量、强大的数值计算功能。为满足复杂科学计算任务的需要,MATLAB 汇集了大量常用的科学和工程计算算法,如矩阵求逆、矩阵特征值以及快速傅立叶变换等。基于 MATLAB 的

22、 JPEG 基本系统编码5(2) 数据分析和科学计算可视化功能。MATLAB 不但科学计算功能强大,而且在数值计算结果的分析和数据可视化方面也远远优于其他同类软件。在科学计算和工程应用中,经常需要分析大量的原始数据和数值计算结果,MATLAB 能将这些数据以图形的方式显示出来,使数据间的关系清晰明了。(3) 强大的符号计算功能。在 MATLAB 的发展过程中, Math Works 公司以 Maple 的核心部分作为其符号计算功能的引擎,依靠 Maple 已有的库函数,实现了 MATLAB 环境下符号的计算功能。(4) 强大的非线性动态系统建模和仿真功能。MATLAB 提供了一个模拟动态系统的

23、交互式程序 Simulink,允许用户通过绘制框图来模拟一个系统,并动态地控制该系统。(5) 灵活的程序接口功能。应用程序接口(API)是一个允许用户编写的与 MATLAB 互相配合的 C.或 Fortran 程序的文件库。用户可以在 MATLAB 环境下直接调用已经编译过的 C 和 Fortran 子程序,同样,在 C 和 Fortran 程序中也可以调用 MATLAB 的函数或命令,使得这些语言可以充分利用 MATLAB 的矩阵运算功能和方便的绘图功能。(6) 文字处理功能。MATLAB 记事本成功地将 MATLAB 与文字处理系统 Microsoft Word 集成为一个整体,为用户进行

24、文字处理、科学计算、工程设计创造了一个统一的工作环境。2.2.2 MATLAB 的技术特点MATLAB 还具有支持科学计算标准的开放式可扩充结构和跨平台兼容的特点,能够很好地解决科学和工程领域内的复杂问题。(1) 界面友好,编程效率高。MATLAB 不仅免去了大量的经常重复的基本数学运算,而且其编译和执行速度都远远超过了采用 C 和 Fortran 语言设计的程序。(2) 功能强大,可扩展性强。MATLAB 语言不但提供了科学计算、数据分析与可视化、系统仿真等强大的功能,而且还具有可扩展性特征。MATLAB 支持用户对其函数进行二次开发,用户的应用程序可以作为新的函数添加到相应的工具箱中。(3

25、) 图形功能灵活方便。MATLAB 具有灵活的二维与三维绘图功能,在程序的运行过程中,可方便迅速地用图形、图像、声音、动画等多媒体技术直接表述数值计算结果,可以选择不同的坐标系,可以设置颜色、线型等,还可以将图形嵌入到用户的 Word文件中。(4) 在线帮助,有利于自学。用户可借助 MATLAB 环境下的“在线帮助” 学习各种函数的用法。总之,MATLAB 语言已经成为科学计算、系统仿真、信号与图像处理的主流软件。XX 大学学士学位论文62.3 MATLAB图像类型图像类型是指数组数值与像素颜色之间定义的关系。MATLAB 图像处理工具箱支持五种类型的图像:(1) 二进制图像。在一幅二进制图像

26、中,每一个像素将取两个离散数值(0 或 1)中的一个,从本质上说,这两个数值分别代表状态“开”(on)或“关”(off)。(2) 索引图像。索引图像是一种把像素值直接作为 RGB 调色板下标的图像。(3) 灰度图像。灰度图像是包含灰度级(亮度)的图像。在 MATLAB 中,灰度图像由一个 uint8、uint16 或一个双精度类型的数组来描述。(4) 多帧图像。多帧图像也称为多页图像,是一种包含多幅图像或帧的图像文件。在MATLAB 内存中,多帧图像是一个四维数组,第四维用来指定帧的序号。多帧图像主要用于需要对时间或场景上相关图像集合进行操作的场合,例如,磁谐振图像切片或电影帧等。(5) RG

27、B 图像。RGB 图像也称为真彩图像,其每一个像素由三个数值来指定红、绿和蓝色分量。2.4 GUI传统的用户界面是指用户与计算机之间进行交互通信联系的平台。但在近几年,这种概念发生了巨大的变化,出现了多种形式的人机交互方式,从命令的交互方式转变到以图形界面为主的交互形式。现在,图形界面已在人机交互方式中占主导地位。图形用户界面(GUI)是包含图形对象( 如窗口、图标、菜单和文本 )的用户界面。以某种方式选择或激活这些对象,通常会引起动作或发生变化,最常见的激活方法是用鼠标或其他动作。MATLAB 也提供了在 MATLAB 应用程序中加入 GUI 的功能。GUI 的目前现状为:(1) 就用户界面

28、的具体形式而言,过去经历了批处理、联机终端(命令接口)、(文本)菜单等多通道多媒体用户界面和虚拟现实系统。(2) 就用户界面中信息载体类型而言,经历了以文本为主的字符用户界面(GUI)、以二维图形为主的用户界面(GUI)和多媒体用户界面,计算机与用户之间的通信带宽不断提高。(3) 就计算机输出信息的形式而言,经历了以符号为主的字符命令语言、以视觉感知为主的图形用户界面、兼顾听觉感知的多媒体用户界面和综合运用多种感观(包括触觉等)的虚拟现实系统。(4) 就人机界面中的信息维度而言,经历了一维信息(主要指文本流,如早期电传式终端) 、二维信息( 主要是二维图形技术,利用了色彩、形状、纹理等维度信息)、三维信息(主要是三维图形技术,但显示技术仍利用二维平面为主)和多维信息(多通道的多维信息)空间。

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

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报