[毕业设计 论文 精品]基于DCT的图像压缩编码算法的研究

上传人:仙*** 文档编号:78174036 上传时间:2022-04-21 格式:DOC 页数:28 大小:320.26KB
收藏 版权申诉 举报 下载
[毕业设计 论文 精品]基于DCT的图像压缩编码算法的研究_第1页
第1页 / 共28页
[毕业设计 论文 精品]基于DCT的图像压缩编码算法的研究_第2页
第2页 / 共28页
[毕业设计 论文 精品]基于DCT的图像压缩编码算法的研究_第3页
第3页 / 共28页
资源描述:

《[毕业设计 论文 精品]基于DCT的图像压缩编码算法的研究》由会员分享,可在线阅读,更多相关《[毕业设计 论文 精品]基于DCT的图像压缩编码算法的研究(28页珍藏版)》请在装配图网上搜索。

1、基于DCT的图像压缩编码算法的研究内容摘要:随着科学技术的发展,图像压缩技术越来越引起人们的关注,本论文研究了基于DCT变换的JPEG图像压缩编码算法。首先说明了图像压缩在现代通信中的必要性和可行性以及MATLAB图像处理工具箱的相关知识,然后重点介绍了JPEG压缩编码的具体过程和方法,详细介绍了编码中DCT变换、量化、熵编码和霍夫曼编码等模块的原理。最后分析了图像经过不同压缩比时,图像质量的变化情况。基于DCT 变换的JPEG 图像压缩方法简单、方便,既能保证有较高的压缩比,又能保证有较好的图像质量,是一种非常有用的图像压缩方法。关键词:图像压缩技术 DCT变换 JPEG图像 MATLAB图

2、像处理工具箱Image compression coding technology algorithm based DCTAbstract: With the development of science and technology, image compression technology has drawn increasing attention, this thesis DCT-based JPEG image compression algorithm. The outset that the image compression in the modern communicatio

3、ns and the necessity and feasibility of MATLAB image processing toolbox of knowledge, and then focuses on the specific process of JPEG compression and methods described in detail in the DCT transform coding, quantization, entropy coding and the principle of Huffman coding and other modules. Finally

4、after a different compression ratio of the image, the image quality changes. DCT-based JPEG image compression method is simple, convenient, and can guarantee a higher compression ratio, but also ensures better image quality, is a very useful image compression method.Keywords: image compression techn

5、ology DCT transform JPEG image MATLAB Image Processing Toolbox 目 录前言11概述11.1 数字图像压缩编码的可能性11.2 图像压缩编码技术21.2.1 图像编码技术的发展历史和现状21.2.2 离散余弦变换(DCT)31.3 MATLAB 及其图像处理工具箱42 基于DCT的图像压缩编码算法42.1 基于DCT的图像压缩编码算法的过程52.2 基于DCT的JPEG图像压缩编码步骤52.2.1 颜色空间的转换和采样52.2.2 二维离散余弦变换62.2.3 DCT系数的量化82.2.4 量化系数的编排92.2.5 DC系数的编码1

6、02.2.6 AC系数的编码112.2.7 组成位数据流123 基于DCT图像压缩的MATLAB实现153.1 MATLAB对图像文件的操作153.1.1 图像文件的读取153.1.2 图像文件的输出153.1.3 图像文件的显示163.2 程序流程图163.3 MATLAB仿真结果174 结束语185 致谢19参考文献20 24基于DCT的图像压缩编码算法的研究前言相关技术日新月异的进步,使得数字图像相关技术的应用越来越广泛。数字图像以其较之于传统文字信息大得多的信息量,更加符合人们接受信息的习惯的特点,已经渗透到社会生活的各个方面。随着信息技术的发展,图像信息被广泛应用于多媒体通信和计算机

7、系统中,但是图像数据的一个显著特点就是信息量大。具有庞大的数据量,如果不经过压缩,不仅超出了计算机的存储和处理能力,而且在现有的通信信道的传输速率下,是无法完成大量多媒体信息实时传输的,因此,为了更有效的存储、处理和传输这些图像数据,必须对其进行压缩,因此有必要对图像压缩编码进行研究。由于组成图像的各像素之间,无论是在水平方向还是在垂直方向上都存在着一定的相关性,因此只要应用某种图像压缩编码方法提取或者减少这种相关性, 就可以达到压缩数据的目的1。因此,数字图像的压缩编码与传输是非常有实际使用价值的热点研究问题。1概述1.1 数字图像压缩编码的可能性图像压缩的理论基础是信息论。从信息论的角度来

8、看,压缩就是去掉信息中的冗余,即保留不确定的信息,去掉确定的信息(可推知的),也就是用一种更接近信息本质的描述来代替原有冗余的描述。一幅图像存在这大量的数据冗余和主观视觉冗余,因此图像数据压缩是必要的,也是可能的。数字图像的冗余主要表现在以下几种形式2:A、空间冗余:规则物体和规则背景的表面物理特性都具有相关性,数字化后表现为数字冗余。例如:某图片的画面中有一个规则物体,其表面颜色均匀,各部分的亮度、饱和度相近,把该图片作数字化处理,生成位图后,很大数量的相邻像素的数据是完全一样或十分接近的,完全一样的数据当然可以压缩,而十分接近的数据也可以压缩,因为恢复后人亦分辨不出它与原图有什么区别,这种

9、压缩就是对空间冗余的压缩。B、时间冗余:序列图像(如电视图像和运动图像)和语音数据的前后有着很强的相关性,经常包含着冗余。在播出该序列图像时,时间发生了推移,但若干幅画面的同一部位没有变化,变化的只是其中某些地方,这就形成了时间冗余。C、统计冗余:空间冗余和时间冗余是把图像信号看作概率信号时所反应出的统计特性,因此,这两种冗余也被称为统计冗余。D、编码冗余:同样长度的编码可以表示不同的信息。E、结构冗余:相似的,对称的结构如果都加以记录就出现结构冗余。F、知识冗余:由图像的记录方式与人对图像的知识差异而产生的冗余。人对许多图像的理解与某些基础知识有很大的相关性。许多规律性的结构,人可以由先验知

10、识和背景知识得到。而计算机存储图像时还得把一个个像素信息存入,这就形成冗余。G、视觉冗余:视觉系统对于图像场的注意是非均匀和非线性的,视觉系统不是对图像的任何变化都能感知。1.2 图像压缩编码技术3所谓的图像压缩编码技术就是对要处理的图像数据按一定的规则进行变换和组合, 从而达到以尽可能少的数据流(代码)来表示尽可能多的数据信息。在众多的图像压缩编码标准中,JPEG(Joint Photographic Experts Group)格式是一种称为联合图像专家组的图像压缩格式,它适用于不同类型、不同分辨率的彩色和黑白静止图像。1.2.1 图像编码技术的发展历史和现状1948年提出电视信号数字化后

11、,图像压缩编码的研究工作就宣告开始了。在这项技术发展的早期,限于客观条件,仅对帧内预测法和亚取样内查复原法进行研究,对视觉特性也做了一些极为有限但可贵的研究工作。1966年J.B.O Neal对比分析了DPCM和PCM并提出了用于电视的实验数据;1969年进行了线性预测编码的实际实验;1969年举行首届图像编码会议;70年代开始进行了帧间预测编码的研究;80年代开始对运动估值和模型编码进行研究。进入90年代,ITU-T和ISO制定了一系列图像编码国际建议,如H.261、JPEG、MPEG-1、H.262、H.263、MPEG-4等。变换编码是1968年H.C.Andrews等人提出的,采用的是

12、二维离散傅立叶变换,此后相继出现用其他变换方法的变换编码,其中包括二维离散余弦变换4。经过几十年的发展,图像编码技术业已成熟,一些国际建议的制定极大地推动了图像编码技术的实现和产业化,从而推动图像编码技术以更快的速度发展,目前的研究方向有两个:A、更好地实现现有的图像编码国际建议。研制出集成度更高、性能更好的图像编码专用芯片,使编码系统成本更低、可靠性更高。解决好现有的图像编码系统开发中的技术问题。例如:提高图像质量、提高抗码能力等。B、对图像编码理论和其他图像编码方法的研究。 目前已经提出和正在进行研究的图像编码方法有:多分辨率编码、基于表面描述的编码、模型编码、利用人工神经网络的编码、利用

13、分形几何的编码、利用数学形态学的编码等等。1.2.2 离散余弦变换(DCT)在JPEG图像压缩算法中,有一种是以离散余弦变换(DCT,Discrete Cosine Transform)为基础的有损压缩算法。DCT变换利用傅立叶变换的性质,采用图像边界褶翻将图像变换为偶函数形式,然后对图像进行二维傅立叶变换,变换后仅包含余弦项,所以称之为离散余弦变换。DCT编码属于正交变换编码方式,用于去除图像数据的空间冗余。变换编码就是将图像光强矩阵(时域信号)变换到系数空间(频域信号)上进行处理的方法。在空间上具有强相关的信号,反映在频域上是在某些特定的区域内能量常常被集中在一起,或者是系数矩阵的分布具有

14、某些规律。我们可以利用这些规律在频域上减少量化比特数,达到压缩的目的。图像经DCT变换以后,DCT系数之间的相关性就会变小,而且大部分能量集中在少数的系数上,因此,DCT变换在图像压缩中非常有用,是有损图像压缩国际标准JPEG的核心5。从原理上讲可以对整幅图像进行DCT变换,但由于图像各部位上细节的丰富程度不同,这种整体处理的方式效果不好。为此,发送者首先将输入图像分解为8*8或16*16块,然后再对每个图像块进行二维DCT变换,接着再对DCT系数进行量化、编码和传输;接收者通过对量化的DCT系数进行解码,并对每个图像块进行的二维DCT反变换,最后将操作完成后所有的块拼接起来构成一幅单一的图像

15、。对于一般的图像而言,大多数DCT系数值都接近于0,所以去掉这些系数不会对重建图像的质量产生较大影响。因此,利用DCT进行图像压缩确实可以节约大量的存储空间。在实验中,先将输入的原始lena图像分为8*8块,然后再对每个块进行二维DCT变换。MATLAB图像处理上具箱中提供的二维DCT变换及DCT反变换函数如下:dct2实现图像的二维离散余弦变换,其语法格式为:a、B=dct2(A) 返回图像A的二维离散余弦变换值,其大小与A相同且各元素为离散余弦变换的系数B(k1,k2)。b、B=dct2(A,in,n)或B=dct2(A,m,n) 如果m和n比图像A大,在对图像进行二维离散余弦变换之前,先

16、将图像A补零至m*n如果m和n比图像A小。则进行变换之前,将图像A剪切。idct2可以实现图像的二维离散余弦反变换,其语法格式为:B=idct2(A);B=idct2(A,m,n)或B=idct2(A,m,n) (1.2.2-1)1.3 MATLAB 及其图像处理工具箱 如果应用高级语言(如Basic,C,Fortran)编写仿真程序来实现这一基于DCT的图像压缩编码算法比较麻烦,而且仿真效果也不是十分理想。本文主要应用MATLAB发布的图像处理工具箱中的相关函数和命令来实基于DCT的图像压缩编码理论算法的仿真。MATLAB语言是由美国MathWorks公司推出的计算机软件,经过多年的逐步发展

17、与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,而且还具有可扩展性特征。MATLAB中的数字图像是以矩阵形式表示的,矩阵运算的语法对MATLAB中的数字图像同样适用,这意味着MATLAB强大的矩阵运算能力对用于图像处理非常有利。图像处理工具箱(Image Processing Toolbox)提供了一套全方位的参照标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。可进行图像压缩、空间转换、图像增强、特征检测、降噪、图像分割和图像配准等功能。工具箱中大部分函数均以开放式 MATL

18、AB 语言编写,这意味着可以检查算法、修改源代码和创建自定义函数。利用MATLAB图像处理工具箱对基于DCT的JPEG图像压缩编码理论算法进行仿真,软件功能强大,应用简单而效果良好。2 基于DCT的图像压缩编码算法信号的变换分析方法中,通常是通过一组适当的基函数对信号进行分解,得到信号在变换域的表示方法,利用信号在变换域中某些特征趋于集中的特点来提取其特征从而进行分析。自1822年傅立叶(Fourier)发表“热传导解析理论”以来,傅立叶变换一直是信号处理领域中应用最广泛、效果最好的一种分析手段。但傅立叶变换只是一种纯频域的分析方法,它在频域的定位性是完全准确的(即频域分辨率最高),而在时域无

19、任何定位性(或分辩能力),也即傅立叶变换所反映的是整个信号全部时间下的整体频域特征,而不能提供任何局部时间段上的频率信息。事实上,在我们生活中的常见信号通常都具有非平稳的性质,即其频域性质都是随时间而变化的。对这一类信号用傅立叶变换进行分析,虽然可以知道信号所包含有哪些频率信息,但不能知道这些频率信息具体出现在哪个时间段上,因此不能提供关于信号完整的信息。可见,傅立叶变换不适用于提取局部时间段(或瞬间)的频域特征信息。为了研究信号在局部时间范围的频域特征,1946年Gabor提出了著名的Gabor变换。其基本思想是,取时间函数作为窗口函数,用与待分析函数相乘,然后再进行傅立叶变换。在Gabor

20、变换的基础上,为了适应不同问题的需要,进一步发展了多种形式的窗口函数,如矩形窗、汉宁窗、海明窗等,这一类加窗的傅立叶变换统称为短时傅立叶变换(STFT)。STFT从本质上讲,是用窗函数截取原始信号的一个待分析段进行傅立叶变换,因而可以描述信号在某一局部时间段上的频率信息。目前,STFT在许多领域获得了广泛的应用,但由于STFT的定义决定了其窗函数的大小和形状均与时间和频率无关,一旦选定窗口就保持固定不变,不利于分析时变信号。实际上一般的高频信号持续时间较短,而低频信号持续时间较长,因此我们期望对于高频信号采用小时间窗,对于低频信号采用大时间窗进行分析。在进行信号分析时,这种变时间窗的要求同ST

21、FT的固定时窗(窗不随频率而变化)的特性是相矛盾的。2.1 基于DCT的图像压缩编码算法的过程基于DCT编码的JPEG编码压缩过程框图,如图2.1-2所示。原始图像数据分成8*8的小块DCT变换量化器量化表熵编码器码表压缩数据图2.1-2 基于DCT编码的JPEG压缩过程简化图上图是基于DCT变换的图像压缩编码的压缩过程,解压缩与上图的过程相反。在编码过程中,首先将输入图像颜色空间转换后分解为88大小的数据块,然后用正向二维DCT把每个块转变成64个DCT系数值,其中1个数值是直流(DC)系数,即88空域图像子块的平均值,其余的63个是交流(AC)系数,接下来对DCT系数进行量化,最后将变换得

22、到的量化的DCT系数进行编码和传送,这样就完成了图像的压缩过程。在解码过程中,形成压缩后的图像格式,先对已编码的量子化的DCT系数进行解码,然后求逆量化并把DCT系数转化为88样本像块(使用二维DCT反变换),最后将操作完成后的块组合成一个单一的图像。这样就完成了图像的解压过程。2.2 基于DCT的JPEG图像压缩编码步骤2.2.1 颜色空间的转换和采样JPEG文件使用的颜色空间为1982年推荐的电视图像数字化标准CCIR 601(现为ITU-RB T.601)。在这个色彩空间中,每个分量、每个像素的电平规定为255级,用8位代码表示。JPEG只支持YCbCr颜色模式,其中Y代表亮度,CbCr

23、代表色度。全彩色图像RGB模式转换到YCbCr模式,用下组公式 (2.2.1-3) 其逆变换为: (2.2.1-4)JPEG是以88的块为单位来进行处理的,由于人眼对亮度Y的敏感度比色度CbCr的敏感度大的多,所以采用缩减取样的方式,通常采用YUV422取样,图2.2.1-5所示。图2.2.1-5 YUV422取样示意图即对于1616的块,Y取4个88的块,CbCr各取2个88的块。也有YUV411方式,Y取4个88的块,CbCr各取1个88的块。YUV422取样方式,数据减少1/3。YUV411取样方式,数据减少1/2。2.2.2 二维离散余弦变换在傅里叶级数展开式中,如果被展开的函数是实偶

24、函数,那么,其傅里叶级数中只包含余弦项,在将其离散化由此可导出余弦变换,或称之为离散余弦变换(DCT,Discrete Cosine Transform)。二维离散余弦正变换公式为: (2.2.2-6)式中,。二维离散余弦逆变换公式为 (2.2.2-7)式中,。 JPEG采用的是88大小的子块的二维离散余弦变换。在编码器的输入端,把原始图像顺序地分割成一系列88的子块,子块的数值在-128到127之间。采用余弦变换获得64个变换系数。变换公式,如式(2-5)所示。 (2.2.2-8)式中,。 在MATLAB的图像处理工具箱中,可以直接调用dct2和idct2来实现二维离散余弦变换及其反变换。a

25、、dct2函数实现图像的二维离散余弦变换,其语法为:F=dct2(f)b、idct2函数实现图像的二维离散余弦逆变换,其语法为:F=idct2(f)在MATLAB图像处理工具箱中,有一个对图像进行块操作的函数blkproc,利用这个函数,可以直接实现图像一系列88子块的DCT变换。其语法格式为:B = blkproc(A,m n,fun, parameter1,,parameter2, .)B = blkproc(A,m n,mborder nborder,fun,.)B = blkproc(A,indexed,.)m n是指图像以m*n为分块单位,对图像进行处理(如8像素*8像素)Fun:应

26、用此函数分别对每个m*n分块的像素进行处理parameter1, parameter2:要传给fun函数的参数mborder nborder:对每个m*n块上下进行mborder个单位的扩充,左右进行nborder个单位的扩充,扩充的像素值为0,fun函数对整个扩充后的分块进行处理。88的图像经过DCT变换后,其低频分量都集中在左上角,高频分量分布在右下角(DCT变换实际上是空间域的低通滤波器)。由于该低频分量包含了图像的主要信息(如亮度),而高频与之相比,就不那么重要了,所以我们可以忽略高频分量,从而达到压缩的目的。将高频分量去掉,这就要用到量化,它是产生信息损失的根源,这里的量化操作,就是

27、将某一个值除以量化表中对应的值。由于量化表左上角的值较小,右上角的值较大,这样就起到了保持低频分量,抑制高频分量的目的。JPEG使用的颜色是YUV格式,Y分量代表了亮度信息,UV分量代表了色差信息。相比而言,Y分量更重要一些,我们可以对Y采用细量化,对UV采用粗量化,可进一步提高压缩比。所以量化表通常有两张,一张是针对Y的,一张是针对UV的。2.2.3 DCT系数的量化量化是对经过DCT变换后的频率系数进行量化,其目的是减小非“0”系数的幅度以及增加“0”值系数的数目,它是图像质量下降的最主要原因。对于基于DCT的JPEG图像压缩编码算法使用如图2.2.3-9所示的均匀量化器进行量化,量化步距

28、是按照系数所在的位置和每种颜色分量的色调值来确定。因为人眼对亮度信号比对色差信号更敏感,因此使用了表2.2.3-10所示的一种量化表。此外,由于人眼对低频分量的图像比对高频分量的图像更敏感,因此表中的左上角的量化步距要比右下角的量化步距小。DCT系数输入量化系数输出图2.2.3-9 均匀量化器亮度和色度因为代表的图像的信息量不同,亮度代表了图像的低频分量,色度代表了图像的高频分量,要分别对亮度和色度进行量化,所以量化表也是不同的。JPEG压缩色度和亮度量化表如表2.2.3-10所示。表2.2.3-10 JPEG压缩色度和亮度量化表亮度量化表色度量化表1611101624405161171824

29、47999999991212141926586055182126669999999914131624405769562426569999999999141722295187806247669999999999991822375668109103779999999999999999243555648110411392999999999999999949647887103121120101999999999999999979929598112100103999999999999999999量化会产生误差,上图是综合大量的图像测试的实验结果,对于大部分图像都有很好的结果。表中可以看出,高频部分对应的

30、量化值大,目的就是将高频部分编程接近于0,以便以后处理。JPEG可以在压缩比和图像质量间作取舍,方法就是改变量化值。如果量化值放大一倍,则有更多的系数量化为0,提高了压缩比。2.2.4 量化系数的编排经过DCT变换后,低频分量集中在左上角,其中F(0,0)(即第一行第一列元素)代表了直流(DC)系数,即88子块的平均值,要对它单独编码。由于两个相邻的88子块的DC系数相差很小,所以对它们采用差分编码DPCM,可以提高压缩比,也就是说对相邻的子块DC系数的差值进行编码。88的其它63个元素是交流(AC)系数6,采用行程编码。所以量化后的系数要重新编排,目的是为了增加连续的“0”系数的个数,就是“

31、0”的游程长度,方法是按照Z字形的式样编排。DCT变换后低频分量多呈圆形辐射状向高频率衰减,因此可以看成按Z字形衰减。因此,量化系数按Z字形扫描读数,这样就把一个88的矩阵变成一个164的矢量,频率较低的系数放在矢量的顶部。量化后的DCT系数的编排如图2.2.4-11所示。图2.2.4-11 量化DCT系数的编排量化后的DCT系数的序号如表2.2.4-12所示。表2.2.4-12 量化DCT系数的序号01561415272824713162629423812172530414391118243140445310192332394552542022333846515560213437475056

32、596135364849575862632.2.5 DC系数的编码88子块的64个变换系数经量化后,按直流系数DC和交流系数AC分成两类处理。坐标u=v=0的直流系数DC实质上就是空域图像中64个像素的平均值。图像块经过DCT变换之后得到的DC直流系数有两个特点,一是系数的数值比较大,二是相邻88图像块的DC系数值变化不大。根据这个特点,JPEG算法使用了差分脉冲调制编码技术。差分脉冲编码调制(DPCM,Differential Pulse Code Modulation),是一种对模拟信号的编码模式,先根据前一个抽样值计算出一个预测值,再取当前抽样值和预测值之差作为编码用。此差值称为预测误差

33、。抽样值和预测值非常接近(因为相关性强),预测误差的可能取值范围比抽样值变化范围小。所以可用少几位编码比特来对预测误差编码,从而降低其比特率。这是利用减小冗余度的办法,降低了编码比特率。因此,对DC系数编码进行差分脉冲编码就是对相邻图像块之间量化DC系数的差值(Delta)进行编码,即对相邻块之间的DC系数的差值DIFF=DC-DC编码。DC采用差值脉冲编码的主要原因是由于在连续色调的图像中,其差值多半比原值小,对差值进行编码所需的位数,会比对原值进行编码所需的位数少许多。例如差值为5,它的二进制表示值为101,如果差值为-5,则先改为正整数5,再将其二进制转换成1的补数即可。所谓1的补数,就

34、是将每个Bit若值为0,便改成1;Bit为1,则变成0。差值5应保留的位数为3,列出差值所应保留的Bit数与差值内容的对照。 在差值前端另外加入一些差值的霍夫曼码值,例如亮度差值为5(101)的位数为3,则霍夫曼码值应该是100,两者连接在一起即为100101。2.2.6 AC系数的编码DCT变换所得系数除直流系数之外的其余63个系数称为交流系数(AC系数)。量化AC系数的特点是1 64矢量中包含有许多“0”系数,并且许多“0”是连续的,因此使用非常简单和直观的行程长度编码(RLE)对它们进行编码。所谓行程编码(Run-Length Encoding)就是指仅存储一个像素值以及具有相同颜色的像

35、素数目的图像数据编码方式,或称游程编码,常用RLE(Run-Length Encoding)表示。该压缩编码技术相当直观和经济,运算也相当简单,因此解压缩速度很快。RLE压缩编码尤其适用于计算机生成的图形图像,对减少存储容量很有效果。 7654321076543210第一字节第二字节两个非零值之间的连续零的个数下一个非零值所占的比特数下一个非零系数的实际值图2.2.6-13 AC编码格式63个AC系数采用行程编码的方式进行编码的格式如图2.2.6-13所示。也即在AC01到AC63中,找出每一个非零的AC值,将其表示成(NN/SS)VV的形式,其中:NN表示该AC值前的0的个数。而SS、VV与

36、DC的定义一样。如果连续的非0超过15个时,增加一个扩展字节:(15/0)表示连续16个0。另外若有一串0延伸到AC63,一律用(0/0)表示结束。对于AC系数,有两个符号。符号1为行程和尺寸,(0,0)和(15,0)是两个比较特殊的情况。(0,0)表示块结束标志(EOB,(15,0)表示ZRL,当行程长度超过15时,用增加ZRL的个数来解决,所以最多有三个ZRL(316+15=63)。符号2为幅度值(Amplitude)。对于DC系数,也有两个符号。符号1为尺寸(Size),符号2为幅度值(Amplitude)。对于AC系数,符号1和符号2分别进行编码。零行程长度超过15个时,有一个符号(1

37、5,0),块结束时只有一个符号(0,0)。对符号1进行Huffman编码(亮度,色差的Huffman码表不同),对符号2进行变长整数VLI编码。举例来说:Size=6时,Amplitude的范围是-63-32,以及3263,对绝对值相同,符号相反的码字之间为反码关系。所以AC系数为32的码字为100000,33的码字为100001,-32的码字为011111,-33的码字为011110。符号2的码字紧接于符号1的码字之后。对于DC系数,Y和UV的Huffman码表也不同。2.2.7 组成位数据流JPEG编码的最后一个步骤是把各种标记代码和编码后的图像数据组成一帧一帧的数据,这样做的目的是为了便

38、于传输、存储和译码器进行译码,这样的组织的数据通常称为JPEG位数据流(JPEG bit stream)。举个例子来说明上述过程。下面为88的亮度(Y)图像子块经过量化后的系数,如表2.2.7-14所示。表2.2.7-14 亮度量化后的系数150-100000-2-1000000-1-10000000000000000000000000000000000000000000000可见量化后只有左上角的几个点(低频分量)不为零,这样采用行程编码就会很有效。第一步,熵编码的中间格式表示。先看DC系数。假设前一个88子块DC系数的量化值为12,则本块DC系数与它的差为3,根据下表。表2.2.7-15

39、DC系数表SizeAmplitude0011,123,-2,2,337-4,47415-8,815531-16,1631663-32,32637127-64,641278255-128,1282559511-256,256511101023512,5121023112047-1024,10242047查表得Size=2,Amplitude=3,所以DC中间格式为(2)(3)。下面对AC系数编码。经过Zig-Zag扫描后,遇到的第一个非零系数为-2,其中遇到零的个数为1(即RunLength),根据下面这张AC系数表。表2.2.7-16 AC系数表 SizeAmplitude11,123,-2,

40、2,337-4,47415-8,815531-16,1631663-32,32637127-64,641278255-128,1282559511-256,256511101023512,5121023查表得Size=2。所以RunLength=1,Size=2,Amplitude=-2,所以AC中间格式为(1,2)(-2)。其余的点类似,可以求得这个88子块熵编码的中间格式为(DC)(2)(3),(1,2)(-2),(0,1)(-1),(0,1)(-1),(0,1)(-1),(2,1)(-1),(EOB)(0,0)第二步,熵编码。对于(2)(3):2查DC亮度Huffman表得到11,3经过

41、VLI编码为011;对于(1,2)(-2):(1,2)查AC亮度Huffman表得到11011,-2是2的反码,为01;对于(0,1)(-1):(0,1)查AC亮度Huffman表得到00,-1是1的反码,为0;.最后,这一88子块亮度信息压缩后的数据流为11011,1101101,000, 000, 000,111000,1010。总共31比特,其压缩比是648/31=16.5,大约每个象素用半个比特。以上是图像压缩编码的整个过程。从上面的例子可以看出,压缩比和图像质量是呈反比的,以下是压缩效率与图像质量之间的大致关系,可以根据需要,选择合适的压缩比。压缩比和图像质量的关系如表2.2.7-1

42、7所示。表2.2.7-17 压缩比与图像质量的关系压缩效率(单位:bits/pixel)图像质量0.250.50中好,可满足某些应用0.500.75好很好,满足多数应用0.751.5极好,满足大多数应用1.52.0与原始图像几乎一样3 基于DCT图像压缩的MATLAB实现MATLAB图像处理工具箱支持四种图像类型,分别为RGB图像(真彩色图像)、索引图像、灰度图像、二值图像,由于有的函数对图像类型有限制,这四种类型可以用工具箱的类型转换函数相互转换。MATLAB可操作的图像文件包括BMP、HDF、JPEG、PCX、TIFF、XWD等格式。MATLAB为用户提供了专门的函数来从图像格式的文件中读

43、写图像数据。这种方法不像其他编程语言,需要编写复杂的代码,只需要简单地调用MATLAB提供的函数即可。3.1 MATLAB对图像文件的操作3.1.1 图像文件的读取MATLAB中利用函数imread来实现图像文件的读取操作。其语法格式为:A=imread(filename,fmt)X,map=imread(filename,fmt)filename:图像文件名;fmt:图像文件格式。A = imread(filename, fmt),读取图像到A,如果文件是包含灰度图像,A是二维矩阵,如果文件是包含真彩色图像(RGB),A是三维矩阵(M-by-N-by-3)。文件必须在当前目录下,或在matl

44、ab的路径上。如果imread不能够找到名称为filename的文件,那么它将找一名为filename. fmt的文件X,map = (imread filename,fmt) 把图像filename读入与它相关的图像色彩信息写入map,图像色彩信息值在范围0,1中自动地重新调整。3.1.2 图像文件的输出MATLAB中利用函数imwrite来实现图像文件的输出和保存操作。其语法格式为:Imwrite(A,filename,fmt),把图像A写入图像文件 filename。Imwrite(X,map,filename,fmt),把X和它的相关色彩信息map写入filename。Imwrite(

45、,filename),把图像写入图像文件filename,并推测可能的格式用来做filename的扩展名,扩展名必须是fmt中一合法名。3.1.3 图像文件的显示在MATLAB中,可以调用image函数来显示图像,其语法格式为:Image(C),C转成一图像。C 可以是一MN 或 MN3维的矩阵,且可以是包含double,uint8,或uint16 数据。image是用来显示附标图像,即显示的图像上有x、y坐标轴的显示,可以看到图像的像素大小。但可以加上axis off命令即可把坐标去掉。在MATLAB的图像处理工具箱中,还提供了一个应用很广泛的图像显示函数,即imshow函数,其调用格式为:

46、Imshow(I,n),显示一幅n个灰度级的图像I。Imshow(I,low high);Imshow(BW);Imshow(X,map);imshow(RGB);imshow filename3.2 程序流程图基于DCT的图像压缩编码的MATLAB实现的流程图:从上至下的步骤为:开始;输入图片;分成8*8的像素块,进行DCT变换;输入量化表,对变换系数量化;对量化系数进行扫描;选择一幅图对其进行不同的压缩比变换;反量化;反DCT变换;显示所选图像的信噪比;结束。如程序流程图3.2-18。开 始输入图片分成8*8的像素块,进行DCT变换输入量化表,对变换系数量化对量化系数进行扫描选一幅图对其进

47、行不同的压缩比变换反量化反DCT变换显示所选图像的信噪比结束图3.2-18 程序流程图3.3 MATLAB仿真结果当图像压缩比增大时,也即压缩效率减小时,图像的质量也将降低9,人们可以根据需要的图像的质量来规定压缩比的大小。图像经过不同的压缩比后,图像的质量变化的同时,图像的信噪比也跟着变化。压缩比增大时,则在信道传输的时候丢失的信息就越多,这样使得信号与噪声的比值变小。图像的信噪比应该等于信号与噪声的功率谱之比,但通常功率谱难以计算,有一种方法可以近似估计图像信噪比,即信号与噪声的方差之比。首先计算图像所有象素的局部方差,将局部方差的最大值认为是信号方差,最小值是噪声方差,求出它们的比值,再

48、转成dB数,最后用经验公式修正。如果是灰度图像的话,SNR=(洁净图片中的像素点的灰度值之和)/abs(噪声图片的灰度值之和-洁净图片中的灰度值之和) 8为该图像的信噪比。在MR图像信噪比中,平均次数增加,可以增加信噪比,但也增回扫描时间;层厚增加,可以增加信噪比,但降低了垂直分辨力;FOV增加,可以增加信噪比,但降低了空间分辨力;相位编码增加,虽降低信噪比,但增加空间分辨力、扫描时间、伪影出现的机率;频率编码增加,会降低信噪比,减少磁化伪影,增加空间分辨力;还有部分采集,并行采集技术的应用等等都会有影响的,TR越短,信号越差,信噪比就差,但可以减少扫描时间;带宽变窄,信噪比增加7。 以下是经

49、不同的量化系数,经不同的量化系数可很容易看出的比较出图像压缩后的质量。如图形3.3-19。图3.3-19 不同量化系数下的压缩图像4 结束语 以上研究表明,根据不同的量化系数设置可以得到不同质量的压缩图像。当图像压缩比增大时,也即压缩效率减小时,图像的质量也将降低,人们可以根据需要的图像的质量来规定压缩比的大小。基于DCT 变换的JPEG 图像压缩方法简单、方便,是一种非常有用的图像压缩方法,随着科学技术的发展,图像压缩技术越来越引起人们的关注。因此基于DCT 变换的JPEG 图像压缩方法有着广阔的应用前景。本文的研究由于受到时间和条件的限制,仅仅是一个初步的探索。这方面的很多课题,有待我们更

50、进一步的研究讨论。高校学生成绩管理系统是校园办公自动化和信息化的一个重要组成部分,同时也是高校教务管理系统的核心部分。学生成绩管理系统的建立不仅可以使教务工作者摆脱复杂繁琐的数据整理工作,在大大提高工作效率的同时,还可以给高校管理者的决策提供准确有效的数据。学生成绩管理系统开发及应用水平的高低,直接影响到高校校园办公信息管理系统的信息集成和整合。国外高校早在上世纪六七十年代就将计算机技术引入到教学管理中,而且一般有较大规模的固定技术队伍提供专业的服务与技术支持,经过数十年的发展,已经达到相当高的水平,这使得国外高校在日渐激烈的全球人才竞争中占得了先机。而国内高校信息化建设相对起步较晚,在数字校

51、园化理论逐步推行的过程中,各高校一方面不断投资购建各种硬件、系统软件和校园网络;另一方面也不断开发应用了各类教学、科研、办公管理等应用系统,已形成了一定规模的信息化体系。但是,由于整体信息化程度相对落后、发展时间短、体系不健全等原因,国内高校在机构设置、服务范围、服务质量及人员专业素质上与国外高校相比还有一定的差距。教育管理的信息化程度的高低已经成为衡量一个学校办学水平的重要标志。毫无疑问,学生成绩管理系统以及校园网络的建设己成为学校教育管理不可或缺的支持平台。近年来,全国各高校不断扩招,办学规模逐年扩大,在校学生人数急剧增加,都给学校教务管理工作带来了新的难题。传统的管理方式和手段已经远远不

52、能满足社会与经济发展的要求。因此,利用计算机信息技术和网络技术,实现学生教育管理的信息化、网络化,使数据可以重复利用与充分共享,为师生和社会各界提供多样化的信息服务势在必行。随着计算机软件、硬件以及互联网技术的飞速发展,信息管理系统已应用于各大领域之中,而它在学生成绩管理系统中的运用实现了由复杂、重复性手工操作向人机简便操作的转化。运用计算机完成学生成绩等数据收集、录入、查询、编辑、删除及统计等工作,提高了管理人员工作效率,更能避免因繁重的工作量而造成的不可避免的人为错误,实现了教务管理的无纸化办公,节约了资源,也使高校学生成绩管理工作更加严谨、规范。高校学生成绩管理系统是校园办公自动化和信息

53、化的一个重要组成部分,同时也是高校教务管理系统的核心部分。学生成绩管理系统的建立不仅可以使教务工作者摆脱复杂繁琐的数据整理工作,在大大提高工作效率的同时,还可以给高校管理者的决策提供准确有效的数据。学生成绩管理系统开发及应用水平的高低,直接影响到高校校园办公信息管理系统的信息集成和整合。随着计算机软件、硬件以及互联网技术的飞速发展,信息管理系统已应用于各大领域之中,而它在学生成绩管理系统中的运用实现了由复杂、重复性手工操作向人机简便操作的转化。运用计算机完成学生成绩等数据收集、录入、查询、编辑、删除及统计等工作,提高了管理人员工作效率,更能避免因繁重的工作量而造成的不可避免的人为错误,使高校学

54、生成绩管理工作更加严谨、规范。国外高校早在上世纪六七十年代就将计算机技术引入到教学管理中,而且一般有较大规模的固定技术队伍提供专业的服务与技术支持,经过数十年的发展,已经达到了相当高的水平,这也使得国外高校在日渐激烈的全球人才竞争中占得了先机。而国内学校信息化建设相对起步较晚,在数字校园化理论逐步推行的过程中,各高校一方面不断投资购建各种硬件、系统软件和校园网络,另一方面也不断开发应用了各类教学、科研、办公管理等应用系统,已形成了一定规模的信息化体系。但是,由于整体信息化程度相对落后、发展时间短、体系不健全等原因,国内高校在机构设置、服务范围、服务质量及人员专业素质上与国外高校相比还有一定的差

55、距。教育管理的信息化程度的高低已经成为衡量一个学校办学水平的重要标志。毫无疑问,学生成绩管理系统以及校园网络的建设己成为学校教育管理不可或缺的支持平台。近年来,全国各高校不断扩招,办学规模逐年扩大,在校学生人数急剧增加,都给学校教务管理工作带来了新的难题。传统的管理方式和手段已经远远不能满足社会与经济发展的要求,因此,利用信息技术和网络技术,实现学生教育管理的信息化、网络化,使数据可以重复利用与充分共享,为师生和社会各界提供多样化的信息服务势在必行。结合自身兴趣及所学的专业知识,选定毕业设计题目,接受了毕业设计任务书,并在此基础上拟定了开题报告。同时在老师的指导下进一步了解和学习ASP、VBS

56、rcipt、JavaScript等开发技术,初步制定毕业设计的完成计划。按照报告的要求进行了例如:收集技术资料、了解国内外现状等前期准备工作。通过对毕业设计题目的实际分析与研究,在图书馆及网络上大量查阅了与本毕业设计相关的文献资料,收集了与课题相关的文字及电子文档资料,包括国内外常用的开发技术、开发模式、算法等,并按照需要对资料进行了筛选,在此过程中也学习了与网页开发技术和数据库技术相关的理论知识。按照自身毕业设计题目的要求,在导师的指导下,拟定了论文的提纲;认真学习导师指定的关于网络技术、数据库技术、编程语言等相关的技术书籍;经过反复的研究,确定了制作该毕业设计需要使用的具体技术并在导师的指

57、导下逐步完成了该学生成绩管理系统,同时也按照相应的规范,修改和完成了毕业论文的初稿。对先前写好的初稿进行进一步的检查和讨论,按照老师的指导和要求再次修改,使论文的整体思路更加清晰;根据已经设计好的学生成绩管理系统,详细制作设计说明,并再次测试,力求程序编写规范,运行顺畅,减少发生错误的可能性。经过几个步骤的论证和修改,毕业设计以及相关论文最后形成定稿。(一)设计内容 开发一个“高校学生成绩管理系统”。能实现学生档案与成绩管理,包括成绩录入、成绩查询、 成绩统计、成绩分析、编排班级、编排考场及安排监考。(二)设计任务与要求 1针对某个高校的学生选课管理现状进行调查,了解高校对学生选课的主要任务、

58、管理过程、管理措施,了解其中存在的优点和缺点,用文字配合图形、表格等工具描述出来。 2通过调查分析,提出学生选课管理系统应具备的主要功能和涉及的相关数据,选用相关的工具把系统应具备的功能和数据描述出来。 3用图示工具描述系统的整个工作流程。 4完成数据库设计,包括概念设计、逻辑设计、物理设计、安全设计、维护计划。并用相应工具描述出来。 5完成系统各个功能模块的详细设计,用相应的工具表示出来。 6完成测试计划:包括测试用例和测试数据。(二)应完成的软件实验 1、正确配置开发环境。包括:系统平台、数据管理系统、开发工具语言的安装和测试、辅助工具的安装与测试。 2、创建用户数据库及其相关对象。包括库

59、、表、索引、视图、存储过程、触发器等。 3正确实现系统的各个功能,包括界面的实现、各个功能的实现。 4、完成各个功能模块的测试。包括功能测试、代码调试。 5、完成系统组装后整体测试、直到系统能按设计要求功能需求正确运行。 6、完成测试计划:包括测试用例和测试结果。面向对象方法(Object-Oriented Method):是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,是建立在“对象”概念基础上的方法学。功能分析法 功能分析法是社会科学用来分析社会现象的一种方法,是社会调查常用的分析方法之一。它通过说明社会现象怎样满足一个社会系统的需要(即具有怎样的功能)来解释社会现象。

60、 文献研究法 文献研究法是根据一定的研究目的或课题,通过调查文献来获得资料,从而全面地、正确地了解掌握所要研究问题的一种方法。文献研究法被子广泛用于各种学科研究中。其作用有:能了解有关问题的历史和现状,帮助确定研究课题。能形成关于研究对象的一般印象,有助于观察和访问。能得到现实资料的比较资料。有助于了解事物的全貌。 研究方法:1.功能分析法:功能分析法是社会科学用来分析社会现象的一种方法,是社会调查常用的分析方法之一。它通过说明社会现象怎样满足一个社会系统的需要(即具有怎样的功能)来解释社会现象。2.文献研究法:文献研究法是根据一定的研究目的或课题,通过调查文献来获得资料,从而全面地、正确地了解掌握所要研究问题的一种方法。主要内容:首先采用文献研究法,对高校学生成绩管理系统在当前的发展、应用和具体的功能等进

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!