基于DCT的图像压缩编码算法的MATLAB实现

上传人:夏** 文档编号:431729051 上传时间:2023-04-19 格式:DOC 页数:40 大小:389KB
返回 下载 相关 举报
基于DCT的图像压缩编码算法的MATLAB实现_第1页
第1页 / 共40页
基于DCT的图像压缩编码算法的MATLAB实现_第2页
第2页 / 共40页
基于DCT的图像压缩编码算法的MATLAB实现_第3页
第3页 / 共40页
基于DCT的图像压缩编码算法的MATLAB实现_第4页
第4页 / 共40页
基于DCT的图像压缩编码算法的MATLAB实现_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《基于DCT的图像压缩编码算法的MATLAB实现》由会员分享,可在线阅读,更多相关《基于DCT的图像压缩编码算法的MATLAB实现(40页珍藏版)》请在金锄头文库上搜索。

1、摘要随着科学技术的发展,图像压缩技术越来越引起人们的关注。为此从众多的图像压缩编码原则中选用了基于DCT变换的JPEG图像压缩编码算法进行研究,并通过对比分析多种软件特性选用了MATLAB进行实验仿真。一方面阐明了图像压缩在现代通信中的必要性和可行性,然后讲述了MATLAB及其图像解决工具箱的有关知识,并对基于DCT变换的JPEG图像压缩算法进行了具体的研究,重点简介了JPEG压缩编码的具体过程和措施 ,具体简介了编码中DCT变换、量化、熵编码和霍夫曼编码等模块的原理和数学推导以及各模块的功能分析。最后应用MATLAB进行了实验仿真并分析成果得出结论。实验成果表白基于DCT 变换的JPEG 图

2、像压缩措施简朴、以便,既能保证有较高的压缩比,又能保证有较好的图像质量,应用MATLAB仿真出来的成果较好的反映了其编码算法原理。核心词JPEG图像压缩;DCT;MATLAB;图像解决工具箱 目 录摘要IAbstractII第1章 绪论11.1 课题背景11.1.1 离散余弦变换21.1.2 预测技术31.2 图像压缩技术的发展和现状31.2.1 图像编码技术发展历史31.2.2 图像编码技术的现状41.3 MATLAB 及其图像解决工具箱41.4 论文组织构造5第2章 图像压缩编码理论算法62.1 DCT变换的思想来源62.2 基于DCT的JPEG图像压缩编码环节82.2.1 颜色空间的转换

3、和采样82.2.2 二维离散余弦变换92.2.3 DCT系数的量化122.2.4 量化系数的编排132.2.5 DC系数的编码142.2.6 AC系数的编码152.2.7 构成位数据流162.2.8 DCT变换在图像压缩中的应用192.3 JPEG压缩算法192.3.1 小波变换202.3.2 量化202.3.3 熵编码212.3.4 位流组织212.4 JPEG与JPEG的区别212.5 本章小结23第3章 基于DCT的图像压缩MATLAB仿真实现243.1 数字图像文献的读写243.2 程序流程图263.3 DCT变换的编程实现273.4 MATLAB仿真成果273.5 实验成果分析293

4、.6 本章小结30结论31第1章 绪论1.1 课题背景随着信息技术的发展,图像信息被广泛应用于多媒体通信和计算机系统中,但是图像数据的一种明显特点就是信息量大。具有庞大的数据量,如果不通过压缩,不仅超过了计算机的存储和解决能力,并且在既有的通信信道的传播速率下,是无法完毕大量多媒体信息实时传播的,因此,为了更有效的存储、解决和传播这些图像数据,必须对其进行压缩,因此有必要对图像压缩编码进行研究。由于构成图像的各像素之间,无论是在水平方向还是在垂直方向上都存在着一定的有关性,因此只要应用某种图像压缩编码措施提取或者减少这种有关性, 就可以达到压缩数据的目的1。数字图像的冗余重要表目前如下几种形式

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

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

7、表达尽量多的数据信息。在众多的图像压缩编码原则中,JPEG(Joint Photographic Experts Group)格式是一种称为联合图像专家组的图像压缩格式,它合用于不同类型、不同辨别率的彩色和黑白静止图像2。在JPEG图像压缩算法中,一种是以离散余弦变换(DCT,Discrete Cosine Transform)为基本的有损压缩算法,另一种是以预测技术为基本的无损压缩算法。1.1.1 离散余弦变换 DCT变换运用傅立叶变换的性质。采用图像边界褶翻将像变换为偶函数形式,然后对图像进行二维傅立叶变换,变换后仅涉及余弦项,因此称之为离散余弦变换。DCT编码属于正交变换编码方式,用于清

8、除图像数据的空间冗余。变换编码就是将图像光强矩阵(时域信号)变换到系数空间(频域信号)上进行解决的措施。在空间上具有强有关的信号,反映在频域上是在某些特定的区域内能量常常被集中在一起,或者是系数矩阵的分布具有某些规律。我们可以运用这些规律在频域上减少量化比特数,达到压缩的目的。图像经DCT变换后来,DCT系数之间的有关性就会变小。并且大部分能量集中在少数的系数上,因此,DCT变换在图像压缩中非常有用,是有损图像压缩国际原则JPEG的核心。从原理上讲可以对整幅图像进行DCT变换,但由于图像各部位上细节的丰富限度不同,这种整体解决的方式效果不好。为此,发送者一方面将输入图像分解为8*8或16*16

9、块,然后再对每个图像块进行二维DCT变换,接着再对DCT系数进行量化、编码和传播;接受者通过对量化的DCT系数进行解码,并对每个图像块进行的二维DCT反变换。最后将操作完毕后所有的块拼接起来构成一幅单一的图像。对于一般的图像而言,大多数DCT系数值都接近于0,因此去掉这些系数不会对重建图像的质量产生较大影响。因此,运用DCT进行图像压缩的确可以节省大量的存储空间。在实验中,先将输入的原始lena图像分为8*8块,然后再对每个块进行二维DCT变换。MATLAB图像解决上具箱中提供的二维DCT变换及DCT反变换函数如下。dct2实现图像的二维离散余弦变换。其语法格式为:(1)B=dct2(A) 返

10、回图像A的二维离散余弦变换值,其大小与A相似且各元素为离散余弦变换的系数B(K1,k2)。(2)B=dct2(A,in,n)或B=dct2(A,m,n) 如果m和n比图像A大,在对图像进行二维离散余弦变换之前,先将图像A补零至m*n如果m和n比图像A小。则进行变换之前,将图像A剪切。idct2可以实现图像的二维离散余弦反变换,其语法格式为:B=idct2(A);B=idct2(A,m,n)或B=idct2(A,m,n)。1.1.2 预测技术它是运用空间中相邻数据的有关性,运用过去和目前浮现过的点的数据状况来预测将来点的数据。一般用的措施是差分脉冲编码调制(DPCM)和自适应差分脉冲编码调制(A

11、DPCM)。1.2 图像压缩技术的发展和现状1.2.1 图像编码技术发展历史1948年提出电视信号数字化后,图像压缩编码的研究工作就宣布开始了。在这项技术发展的初期,限于客观条件,仅对帧内预测法和亚取样内查复原法进行研究,对视觉特性也做了某些极为有限但可贵的研究工作。1966年J.B.O Neal对比分析了DPCM和PCM并提出了用于电视的实验数据。1969年进行了线性预测编码的实际实验。1969年举办首届图像编码会议。70年代开始进行了帧间预测编码的研究。80年代开始对运动估值和模型编码进行研究3。进入90年代,ITU-T和ISO制定了一系列图像编码国际建议,如H.261、JPEG、MPEG

12、-1、H.262、H.263、MPEG-4等。 变换编码是1968年H.C.Andrews等人提出的,采用的是二维离散傅立叶变换,此后相继浮现用其她变换措施的变换编码,其中涉及二维离散余弦变换。1.2.2 图像编码技术的现状通过几十年的发展,图像编码技术业已成熟,某些国际建议的制定极大地推动了图像编码技术的实现和产业化,从而推动图像编码技术以更快的速度发展,目前的研究方向有两个:(1) 更好地实现既有的图像编码国际建议。 研制出集成度更高、性能更好的图像编码专用芯片,使编码系统成本更低、可靠性更高。解决好既有的图像编码系统开发中的技术问题。例如:提高图像质量、提高抗码能力等。 (2) 对图像编

13、码理论和其她图像编码措施的研究。 目前已经提出和正在进行研究的图像编码措施有:多辨别率编码、基于表面描述的编码、模型编码、运用人工神经网络的编码、运用分形几何的编码、运用数学形态学的编码等等。1.3 MATLAB 及其图像解决工具箱 如果应用高档语言(如Basic,C,Fortran)编写仿真程序来实现这一基于DCT的图像压缩编码算法比较麻烦,并且仿真效果也不是十分抱负。本文重要应用MATLAB发布的图像解决工具箱中的有关函数和命令来实基于DCT的图像压缩编码理论算法的仿真。MATLAB语言是由美国MathWorks公司推出的计算机软件,通过近年的逐渐发展与不断完善,现已成为国际公认的最优秀的

14、科学计算与数学应用软件之一,它集数值分析、矩阵运算、信号解决和图形显示于一体,构成了一种以便的、界面和谐的顾客环境,并且还具有可扩展性特性。MATLAB中的数字图像是以矩阵形式表达的,矩阵运算的语法对MATLAB中的数字图像同样合用,这意味着MATLAB强大的矩阵运算能力对用于图像解决非常有利。图像解决工具箱(Image Processing Toolbox)提供了一套全方位的参照原则算法和图形工具,用于进行图像解决、分析、可视化和算法开发。可进行图像压缩、空间转换、图像增强、特性检测、降噪、图像分割和图像配准等功能。工具箱中大部分函数均以开放式 MATLAB 语言编写,这意味着可以检查算法、

15、修改源代码和创立自定义函数。本文运用MATLAB图像解决工具箱对基于DCT的JPEG图像压缩编码理论算法进行仿真,实验证明该软件功能强大,语言简洁易学,工具箱具有丰富的技术支持并集成了该领域专家的智慧,应用简朴而效果良好。1.4 论文组织构造本文的重要内容是,简介图像压缩编码算法中的离散余弦变换(DCT)变换算法,和用MATLAB进行仿真。第1 章绪论,对于图像压缩的研究意义、可行性、压缩技术的现状和发展、MATLAB图像解决工具进行了简要的简介。第2章对图像压缩编码理论算法进行了简介,着重解说了基于DCT的JPEG图像压缩编码环节。之后对JPEG进行了粗略的简介,描述了JPEG和JPEG的区别。第3章对基于DCT的图像压缩MATLAB仿真实现进行了具体的描述。其中涉及运用MATLAB编写程序的流程图,和给出了具体仿真实验成果与成果分析。第2章 图像压缩编码理论算法2.1 DCT变换的思想来源信号的变换分析措施中,一般是通过一组合适的基函数对信号进行分解,得到信号在变换域的表达措施,运用信号在变换域中某些特性趋于集中的特点来提取其特性从而进行分析。自1822年傅立叶(Fourier)刊登“热传导解析

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号