欢迎来到天天文库
浏览记录
ID:56674158
大小:466.00 KB
页数:9页
时间:2020-07-04
《中期报告例子综述.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、`工业大学本科毕业设计(论文)中期报告毕业设计(论文)题目:一种数字图像压缩编码的研究专业(方向):通信工程学生信息:指导教师信息:报告提交日期:一、课题简介本课题是对一种数字图像压缩编码的研究,整个研究过程需要matlab软件设计实现。数字图像压缩编码分为无损压缩和有损压缩。而属于无损压缩和有损压缩的方法又有很多,比如:行程编码和哈夫曼编码属于无损压缩;基于DCT变换的图像压缩编码、小波编码和基于哈达玛变换(HT)的图像压缩编码都是有损压缩。在本次研究中,我选用的是对基于DCT(DiscreteCosineTransform,离散余弦变换)变换的图像压缩编码的研究。我选择DCT
2、变换方法的原因是DCT变换是最近几年应用最多的图像压缩技术,并且已成为许多图像编码国际标准的核心。在基于DCT变换的图像压缩编码中,有两种方法可用。一种是利用了FFT快速算法,使用了DCT变换定义公式来实现。由于FFT算法的普便采用,在matlab软件中可以直接使用,所以利用FFT来实现DCT变换的快速算法相比来说就相对容易。另一种利用了DCT变换矩阵算法,直接在实数域进行DCT快速变换,此种方法计算量较小,运算快。在本次中期报告中,使用这两种方法分别对图像进行压缩。二、设计过程压缩图像DCT逆变换解压图像熵编码b原始图像熵编码压缩图像除以量化矩阵DCT变换a图1图像压缩编解码典
3、型的图像压缩系统主要由三部分组成:变换部分(Transformer)、量化部分(Quatizer)、和编码部分(Coder)。Word文档`1.变换部分 在课题中运用的是DCT变换(DiscreteCosineTransform离散余弦变换)。它体现了输入原始图像和经过变换的图像之间的一一对应关系。变换也称为去除相关,它减少了图像中的冗余信息,与输入原始图像数据相比,变换后的图像数据提供了一种更易于压缩的图像数据表示形式。 二维离散余弦正变换公式为(3-1)式中,。二维离散余弦逆变换公式为(3-2)式中,。JPEG采用的是8×8大小的子块的二维离散余弦变换。在编码器的输入端,把
4、原始图像顺序地分割成一系列8×8的子块,子块的数值在-128到127之间。采用余弦变换获得64个变换系数。变换公式,如式(3-3)所示。(3-3)式中,。2.量化部分 系数量化是一个十分重要的过程,是造成DCT编解码信息损失(或失真)的根源。量化部分把经过变换的图像数据作为输入进行处理后,会得到有限数目的一些符号。一般而言,这一步会带来信息的损失,而这也恰是有损压缩方法和无损压缩方法之间主要的区别。而在课题中选择的基于DCT变换压缩方法是有损压缩,因此,在这一步会有一定的信息损失。在JPEG压缩算法中采用均匀量化器,量化定义可以表述为:对64个DCT系数除以其量化步长,四舍五入
5、取整,即Word文档`(3-4)式中,Q(u,v)为量化的系数幅度,S(u,v)为量化步长,它是量化表的元素,通常随DCT系数的位置和彩色分量的不同而取不同的值,量化表的尺寸为8×8与64个DCT系数(一般将图像分解为8×8图像字块进行处理)一一对应。量化的作用是在一定的主观保真度图像质量的前提下,丢掉那些对视觉影响不大的信息,以获得较高的压缩比。由于DCT系数包含了空间频率信息,可充分利用人眼对不同频率敏感程度不同这一特性来选择量化表中的元素值的大小。对视觉重要的系数采用细量化(量化步长较小),如低频系数被细量化,对高频系数采用粗量化(量化步长较大)。对于这一点,从MATLAB
6、仿真得到的DCT变换谱中得到证明。3.编码部分 这是压缩过程中最后一个步骤。这个部分将经过变换的系数(量化或未量化)编码为二进制位流,这个部分可以采用固定长编码,或变动长度编码,前者对所有符号赋予等长的编码,而后者则对出现频率较高的符号分配较短的编码,变动长度编码也叫熵(Entropy)编码,它能把经过变换得到的图像系数(Coefficients)数据以较短的信息总长度来表示,因而在实际应用中,多采用此类编码方式。四、仿真步骤4.1FFT变换方法步骤此方法出发点是对整幅图像进行DCT变换,主要应用matlab的影像处理工具箱中的基于FFT的有大量输入的快速算法进行处理的dct2
7、函数。在MATLAB的图像处理工具箱中,可以直接调用dct2和idct2来实现二维离散余弦变换及其反变换。dct2函数实现图像的二维离散余弦变换,其语法为:F=dct2(f)(1)读入图像。在matlab中使用imread进行图像的调取,需要填写图像所在的路径。例如:I=imread('F:鸡尾酒.tif')(2)把图像转换为灰度图。在matlab中用rgb2gray函数转换RGB图像或颜色映像表为灰度图像。rgb2gray语法格式:a=rgb2gray(I)。(3)把得到的灰
此文档下载收益归作者所有