优秀的毕业设计论文网
计算机 JAVA 电子信息 单片机 机械机电 模具 土木工程 建筑结构 论文
热门搜索词:网络 ASP.NET 汽车 电气 数控 PLC

基于JPG标准的图像压缩

以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
  
资料介绍:
摘要 本论文主要介绍了JPEG的编码和解码过程。该程序的编码部分能把一张BMP格式的图象进行JEPG编码,压缩成以二进制形式保存的文件;通过相应的解码程序又可以把图象解压缩出来。在图象传送过程中,我们经常采用JPEG格式对静态图象进行编码。JPEG基本系统是一种有损编码,无法完全恢复出原图象,信息有一定的丢失,称为有损压缩。尽管我们希望能够无损压缩,但是通常有损压缩的压缩比(即原图象占的字节数与压缩后图象占的字节数之比,压缩比越大,说明压缩效率越高)比无损压缩的高。JPEG编码先把图象色彩RBG变成亮度Y和色度Cr、Cb,它利用人的视觉对色度不敏感的特点,减少一部分色度数据,以达到压缩。 JPEG采取多种编码方式,包含有行程编码(Run Length Coding)和哈夫曼(Huffman)编码,有很高的压缩比。在编码前,先对数据进行分块,离散余弦变换(DCT)及量化,保留能量大的低频信号,丢弃高频信号以达到压缩。解码时,进行熵解码,反量化,反离散余弦变换(IDCT)。 关键字:JPEG;有损压缩;行程编码;哈夫曼编码 ? v:* {behavior:url(#default#VML);} o:* {behavior:url(#default#VML);} w:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} ?1、主要设计研究内容及关键技术 JPEG压缩格式是目前图像处理领域里面用得最广泛的一种图像压缩方式,本毕业设计将进行就JPEG标准对图像进行编、解码的研究。主要内容包括: 1.从BMP格式图像的文件中(未压缩)读出图像,并能显示。 ??? ?2.将BMP图像数据以JPEG标准压缩,保存为*.JPG文件。 3.要求能读出jpg文件,并显示在界面上 其中,JPEG的压缩实现主要分成四个步骤: ??? 1.颜色模式转换及采样; ??? 2.DCT变换(离散余弦变换); 3.量化; 4.编码(有算术编码和霍夫曼编码两种,这里采用霍夫曼编码)。 一、颜色转换及采样 1.颜色转换:对BMP图像中的颜色数据进行由RGB一YCbCr的转换,Y表示亮度,Cb Cr分别表示蓝色度和红色度。转换公式: Y=0.2990R+0.5870G+0.1140B Cb=-0.1687R-0.3313G+0.5000B Cr=0.5000R-0.4187G-0.0813B 这样转换以后就得到三个新的基色值,对这三个基色值来讲,都可以当作一个独立的图像平面来进行压缩编码。 2.采样:颜色转换后,保留每一点的亮度值Y,而色度值Cb Cr则是每两点保留一点,在图像的行和列方向上都可执行颜色采样。如果采用的是1:1:1的采样比例,不用抽样。若采用的采样比是行列方向都是2:1:1,在行方向,每两点保留一点,列方向也是每两点保留一点,这样如果假设原来的CbCr矩阵大小为M*S,则经过2:1:1抽样之后成了M/2*s/2=1/4M*S,只有原来的1/4了,图像大大缩小,如果想减小图像的失真度,则可行方向不抽样或列方向不抽样。 二、二维DCT变换 ??? 二维DCT变换公式为: F(u,v)= ??? 其中x,y代表图像数据矩阵中的某个数据值的坐标位置 ??? f(x,y)指图像数据矩阵中该点的资料值 ??? u,v指经过DCT变换后矩阵中的某数值点的坐标位置,在这里u=x,v=y ??? F(u,v)指经过DCT变换后该坐标点的资料值。 ??? 当u=0,v=0时,C(u)C(v)=1.414/2 ??? 当u>0,v>0时,C(u)C(v)=1,经过变换后的资料值F(u,v)称为频率系数(或 称DFT系数)。 三、量化 量化过程实质上是把亮度数据Y和色度数据Cb/Cr由时域转变成频域(DCT变换)并滤除高频分量的过程,由于人眼对高频分量不敏感,所以可以滤除高频分量,经过量化以后的每一个8*8数据块中,左上角第一个元素数据值为直流分量,称为DC,其余63个资料为交流分量,称为AC。 四、游程编码,ZIGZAG扫描 经过量化后的DCT系数矩阵,除DC值一般不为零外,AC系数大多是在零点附近的浮点数。经过取整以后,每一个8*8块中,有大量的AC系数的值为0。为了把尽可能多的其值为0的AC系数串在一起,以利于AC编码及提高压缩比,还必须把YCbCr矩阵中的每一个8*8块中的64个元素进行“之”字形排序(这样就可以做到把尽可能多的0串在一起)。