当前位置:文档之家› 基于JPEG标准的静态图像压缩算法概述

基于JPEG标准的静态图像压缩算法概述

基于JPEG标准的静态图像压缩算法概述
基于JPEG标准的静态图像压缩算法概述

基于JPEG标准的静态图像压缩算法概述

张元伟1,刘彦隆2

太原理工大学信息学院,太原(030024)

E-mail: zyw7457@https://www.doczj.com/doc/2313177799.html,

摘要:本文主要论述了基本JPEG标准的编码方法。其中包括采样、离散余弦变换、量化和熵编码等几个主要步骤,最后,用Visual C++编程实现把一幅BMP格式的图像转换为JPEG 格式图像,进一步显示JPEG标准在图像压缩中的优越性。

关键词:JPEG标准;采样;离散余弦变换;量化;熵编码

中图分类号:TN919

1.引言

随着多媒体技术的快速发展,静态图像的应用越来越广泛,但存在一个主要问题就是数据量过于庞大。例如,一张A4(210mm×297mm)幅面的照片,若用中等分辨率(300dpi)的扫描仪按真彩色扫描,其数据量共有(300×210/25.4)×(300×297/25.4)个像素,每个像素占3个字节,其数据量为26M字节。这样大容量的图像信息会给存储器的存储容量、通信干线信道的带宽以及计算机的处理速度增加了极大的压力。因此,图像必须进行压缩。2.图像编码压缩算法

JPEG[1]是“联合图像专家小组”(Joint Photographic Experts Group)的简称,是由ISO和CCITT于1986年底联合制定的连续色调的静止图像压缩标准。它是一个适用范围广泛的通用标准,不仅适用于静止图像的压缩,也适用于电视图像序列的帧内图像的压缩。1992年正式成为国际标准(ISO10918)。

JPEG算法流程如图1所示。

JPEG压缩算法基本过程可分为如下几个步骤实现。

●颜色模式转化及取样。

●离散余弦变换(DCT)。

●量化(quantization)。

● Z字形编码(zigzag scan)。

●使用差分脉冲编码调制(DPCM)对直流系数(DC)进行编码。

●使用行程长度编码(RLE)对交流系数(AC)进行编码。

●熵编码(entropy coding)。

2.1 颜色模式转化及取样

2.1.1颜色模式转化

RGB色彩系统是我们最常用的表示颜色的方式,JPEG采用的是YC b Cr色彩系统,想要用JPEG基本压缩法处理全彩色图像,得先把RGB颜色模式图像数据转化为YC b Cr颜色模式数据。其中Y代表明视度,C b和Cr则代表色度和饱和度。其转化公式如下:

因为JPEG里的数据都是无符号8比特数据,因此C值在这里都加上了128。

2.1.2取样

因为人眼对图片上亮度Y的变化远比色彩C的变化敏感,所以采用部分取样可达到图像压缩但几乎不影响图像质量。

目前在市面上支持JPEG的应用软件,通常提供两种部分取样的方法:YUV411和YUV422(YC b Cr是从YUV[2]衍生来的),它们代表的意义是Y,C b,Cr 3个数据取样比例。比如:YUV411取样,原来用RGB模型,4个点需要4×3=12字节,而现在仅需要4+2=6字节,具有50%的压缩比例。

2.2离散余弦变换(DCT)

离散余弦变换(discrete cosine transform)简称DCT,是指将一组光强数据转化为频率数据,以便得知强度变换的情形。

2.2.1 对YC b Cr各分量分成8×8的图像块

对Y,C b,Cr分别做DCT变换,把整个分量图像分成8×8的图像块,如果原始图片的长宽不是8的倍数,都需要先补成8的倍数。

2.2.2 DCT变换

DCT变换使用下式计算:

]

16

)1

2(

cos

16

)1

2(

cos

)

,(

)[

(

)

(

4

1

)

,

(

7

7

π

πv

i

u

i

j

i

f

v

C

u

C

v

u

F

i j

+

+

=∑∑

==

其中:v

u,代表DCT变换后矩阵内某个数值的坐标位置

)

,

(v

u

F代表矩阵内的)

,(v

u位置上DCT变换后的频率系数

j

i,代表图像数据内某个数值的坐标位置

)

,(j

i

f代表图像数据内的)

,(j

i位置上的像素值

1)()(0021

)()(00=>>===v C u C v u v C u C v u 时,或时,且

经过DCT 变换后的矩阵数据自然数为频率系数,这些系数以)0,0(F 的值最大,称为DC ,其余的63个频率系数则多半是一些接近于0的正负浮点数,一概称之为AC 。

2.3量化(quantization )

量化的作用是在保持一定图像质量的前提下,丢弃图像中对视觉效果影响不大的信息,就是减少非“0”系数的幅度以及增加“0”值系数的数目。量化是图像下降的最主要原因[3]。 JPEG 标准中采用线性均匀量化器,对64个DCT 系数除以量化步长并四舍五入取整,量化步长由量化表决定。JPEG 标准中使用了两种量化表:亮度量化表和色度量化表。

2.4 Z 字形编码

(zigzag scan)

2.5 使用差分脉冲编码调制(DPCM)对直流系数(DC)进行编码

在同一个图像分量中取得每一个DC 值与前一个DC 值的差值来编码。如图3所示。

原因是由于在连续色调的图像中,其差值多半比原值小,对差值进行编码所需的位数,会比对原值进行编码所需的位数少许多。

量化后的AC 系数通常会有许多零值,以

Z 字形路径编排,增加了连续“0”系数的个

数,这为下一步编码提供了很大方便,节省

了码率。如图2所示。

经过Z 字形编排后,就把一个8×8的矩

阵变成一个1×64的矢量,频率较低的系数

放在矢量的顶部。

2.6 使用行程长度编码(RLE)对交流系数(AC)进行编码

量化AC系数的特点是1×64矢量中包含有许多“0”系数,并且许多“0”是连续的,因此使用非常简单和直观的游程长度编码(RLE)对它们进行编码。

JPEG使用一个字节的高4位来表示连续“0”的个数,而使用它的低4位来表示编码下一个非“0”系数所需要的位数,跟在它后面的是量化AC系数的数值。如下图4所示

格式为(符号1)(符号2)

符号1表示了两条信息,称为“行程”和“长度”。“行程”是在Z字形矩阵中位于非零AC

系数前的连续零值AC系数的个数,“长度”是对AC系数的幅度进行编码所用的位数。

符号2表示了AC系数幅度值。

2.7 熵编码(entropy coding)

JPEG标准具体规定了Huffman编码[4]和算术编码两种熵编码方式。JPEG基本顺序编码解码器具体规定用Huffman编码,但JPEG并没有限制对任何JPEG算法用Huffman编码方式或算术编码方式。熵编码可以分成两步进行,首先把DC码和行程码转换成中间序列(2.5和2.6已做),然后给这些符号赋以变长码字。

霍夫曼编码器可以使用很简单的查表方法进行编码。编码时,每个矩阵数据的DC值与63个AC值,将分别使用不同的Huffman编码表,而亮度与色度也需要不同的Huffman编码表,所以一共需要4个编码表,才能顺利地完成JPEG编码工作。

实现上述几个步骤,即完成一幅图像的JPEG压缩。

3.Visual C++下BMP转换为JPEG算法实现

用Visual C++编写了一个把BMP[5]图像转换为JPEG图像的程序,该程序名称为RWJpegExp,步骤为:打开程序,加载一幅BMP图片,利用“文件”/“另存为”菜单,可以将此BMP文件存储为JPEG文件,并能通过对话框控制JPEG文件的压缩图像质量和色彩。

3.1 程序实现的主要代码

CRWJpegExpDoc OnOpenDocument(LPCTSTR lpszPathName)//

∷显示要打开的文件;

∷保存变换后的图像;

CRWJpegExpDoc OnSaveDocument(LPCTSTR lpszPathName)//

CFormatJpeg JpegDlg//创建Dialog对话框;

CJpeg jpeg//创建CJpeg 类,实现JPEG文件转换;

Jpeg.Save(lpszPathName.m_pDib,JpegDlg.m_bColor,JpegDlg.m_nQuality)//将文件存储为JPEG格式。

3.2 程序结果及分析

RWJpegExp程序实现对JPEG文件压缩编码的过程如图5所示

图5 对JPEG文件压缩编码的过程图

本文通过实验,如果选择75%的图像质量,可得到20:1的压缩率;选择55%的图像质量,可得到30:1的压缩率;选择35%的图像质量,可得到40:1的压缩率,只要压缩率不大于40倍,图像压缩后的效果质量用肉眼无法区别。可见JPEG标准的优越性(限于篇幅,这里就不给出压缩后的效果图)。

从以上测试结果看,设计实现的JPEG压缩算法较好地实现了对于24位bmp图像的压缩,压缩比较高,且压缩图像与原始图像相比差异几乎无法察觉。

4.结束语

本文系统的对JPEG编码的基本原理进行了阐述,并给出了BMP格式图像与JPEG格式图像之间转换的软件实现,使读者对JPEG的压缩效果有了一个更直观的了解。虽然图像压缩了很多,但图像视觉效果没有什么差异。JPEG标准的优点是在自然景观与再现图片方面表现很出色,且其图像文件比较小,目前WEB上80%的图像都是JPEG格式。缺点是只能处理静态图像,不能处理活动景物。随着技术的进步,JPEG标准将会得到更进一步的发展和应用。

参考文献

[1] 张益贞,刘滔. Visual C++实现MPEG/JPEG编解码技术[M]. 北京:北京邮电大学出版社,2003

[2] 杨淑莹. VC++图像处理程序设计(第2版)[M]. 北京:清华大学出版社,2005

[3] 求是科技.Visual C++音视频编解码技术及实践[M]. 北京:人民邮电出版社,2006

[4] 胡栋. 静止图像编码的基本方法与国际标准[M] . 北京:北京邮电大学出版社,2003

[5] 丁贵广. Visual C++ 6.0数字图像编码[M]. 北京:机械工业出版社,2004

Overview of Static Image Compression Algorithm Base

on the JPEG Standard

ZHANG Yuan Wei1, LIU Yan Long2

Department of Information and Communication engineering,Taiyuan University of Technology,

Taiyuan (030024)

Abstract

This paper mainly introduce coding method of the baseline JPEG standard. It includes several steps, which is sampling、discrete cosine transform、quantification and entropy coding etc. Finally, BMP image is translated into JPEG image with Visual C++, and demonstrate the superiority of JPEG standard in image compression.

Key words: standard of JPEG; sampling; discrete cosine transform; quantification; Entropy coding

作者简介:

张元伟(1974年生),男,山西省、太原市,硕士研究生,太原理工大学,研究方向为静态图像压缩。

刘彦隆(1974年生),男,山西省、太原市,副教授,硕士生导师,太原理

工大学,研究方向为数字视频算法及实现。

数字图像压缩技术

数字图像压缩技术 二、JPEG压缩 负责开发静止图像压缩标准的“联合图片专家组”(JointPhotographicExpertGroup,简称JPEG),于1989年1月形成 了基于自适合DCT的JPEG技术规范的第一个草案,其后多次修改,至1991年形成ISO10918国际标准草案,并在一年后成为国际标准,简称JPEG标准。 1.JPEG压缩原理及特点 JPEG算法中首先对图像实行分块处理,一般分成互不重叠的大小的块,再对每一块实行二维离散余弦变换(DCT)。变换后的系数基本不相关,且系数矩阵的能量集中在低频区,根据量化表实行量化,量化的结果 保留了低频部分的系数,去掉了高频部分的系数。量化后的系数按zigzag扫描重新组织,然后实行哈夫曼编码。JPEG的特点如下: 优点:(1)形成了国际标准;(2)具有中端和高端比特率上的良好 图像质量。 缺点:(1)因为对图像实行分块,在高压缩比时产生严重的方块效应;(2)系数实行量化,是有损压缩;(3)压缩比不高,小于502。 JPEG压缩图像出现方块效应的原因是:一般情况下图像信号是高度非平稳的,很难用Gauss过程来刻画,并且图像中的一些突变结构例如 边缘信息远比图像平稳性重要,用余弦基作图像信号的非线性逼近其 结果不是最优的3。 2.JPEG压缩的研究状况及其前景2 针对JPEG在高压缩比情况下,产生方块效应,解压图像较差,近年 来提出了很多改进方法,最有效的是下面的两种方法: (1)DCT零树编码

DCT零树编码把DCT块中的系数组成log2N个子带,然后用零树编码方案实行编码。在相同压缩比的情况下,其PSNR的值比EZW高。但在高压缩比的情况下,方块效应仍是DCT零树编码的致命弱点。 (2)层式DCT零树编码 此算法对图像作的DCT变换,将低频块集中起来,做反DCT变换;对新得到的图像做相同变换,如此下去,直到满足要求为止。然后对层式DCT变换及零树排列过的系数实行零树编码。 JPEG压缩的一个最大问题就是在高压缩比时产生严重的方块效应,所以在今后的研究中,应重点解决DCT变换产生的方块效应,同时考虑与人眼视觉特性相结合实行压缩。 三、JEPG2000压缩 JPEG2000是由ISO/IECJTCISC29标准化小组负责制定的全新静止图像压缩标准。一个最大改进是它采用小波变换代替了余弦变换。2000年3月的东京会议,确定了彩色静态图像的新一代编码方式—JPEG2000图像压缩标准的编码算法。 1.JPEG2000压缩原理及特点 JPEG2000编解码系统的编码器和解码器的框图如图1所示4。 编码过程主要分为以下几个过程:预处理、核心处理和位流组织。预处理部分包括对图像分片、直流电平(DC)位移和分量变换。核心处理部分由离散小波变换、量化和熵编码组成。位流组织部分则包括区域划分、码块、层和包的组织。 JPEG2000格式的图像压缩比,可在现在的JPEG基础上再提升 10%~30%,而且压缩后的图像显得更加细腻平滑。对于当前的JPEG标准,在同一个压缩码流中不能同时提供有损和无损压缩,而在 JPEG2000系统中,通过选择参数,能够对图像实行有损和无损压缩。现在网络上的JPEG图像下载时是按“块”传输的,而JPEG2000格式

JPEG2000图像压缩算法标准

JPEG2000图像压缩算法标准 摘要:JPEG2000是为适应不断发展的图像压缩应用而出现的新的静止图像压缩标准。本文介绍了JPEG2000图像编码系统的实现过程, 对其中采用的基本算法和关键技术进行了描述,介绍了这一新标准的特点及应用场合,并对其性能进行了分析。 关键词:JPEG2000;图像压缩;基本原理;感兴趣区域 引言 随着多媒体技术的不断运用,图像压缩要求更高的性能和新的特征。为了满足静止图像在特殊领域编码的需求,JPEG2000作为一个新的标准处于不断的发展中。它不仅希望提供优于现行标准的失真率和个人图像压缩性能,而且还可以提供一些现行标准不能有效地实现甚至在很多情况下完全无法实现的功能和特性。这种新的标准更加注重图像的可伸缩表述。所以就可以在任意给定的分辨率级别上来提供一个低质量的图像恢复,或者在要求的分辨率和信噪比的情况下提取图像的部分区域。 1.JPEG2000的基本介绍及优势 相信大家对JPEG这种图像格式都非常熟悉,在我们日常所接触的图像中,绝大多数都是JPEG格式的。JPEG的全称为Joint Photographic Experts Group,它是一个在国际标准组织(ISO)下从事静态图像压缩标准制定的委员会,它制定出了第一套国际静态图像压缩标准:ISO 10918-1,俗称JPEG。由于相对于BMP等格式而言,品质相差无己的JPEG格式能让图像文件“苗条”很多,无论是传送还是保存都非常方便,因此JPEG格式在推出后大受欢迎。随着网络的发展,JPEG的应用更加广泛,目前网站上80%的图像都采用JPEG格式。 但是,随着多媒体应用领域的快速增长,传统JPEG压缩技术已无法满足人们对数字化多媒体图像资料的要求:网上JPEG图像只能一行一行地下载,直到全部下载完毕,才可以看到整个图像,如果只对图像的局部感兴趣也只能将整个图片载下来再处理;JPEG格式的图像文件体积仍然嫌大;JPEG格式属于有损压缩,当被压缩的图像上有大片近似颜色时,会出现马赛克现象;同样由于有损压缩的原因,许多对图像质量要求较高的应用JPEG无法胜任。 JPEG2000是为21世纪准备的压缩标准,它采用改进的压缩技术来提供更高的解像度,其伸缩能力可以为一个文件提供从无损到有损的多种画质和解像选择。JPEG2000被认为是互联网和无线接入应用的理想影像编码解决方案。 “高压缩、低比特速率”是JPEG2000的目标。在压缩率相同的情况下,JPEG2000的信噪比将比JPEG提高30%左右。JPEG2000拥有5种层次的编码形式:彩色静态画面采用的JPEG 编码、2值图像采用的JBIG、低压缩率图像采用JPEGLS等,成为应对各种图像的通用编码方式。在编码算法上,JPEG2000采用离散小波变换(DWT)和bit plain算术编码(MQ coder)。此外,JPEG2000还能根据用户的线路速度以及利用方式(是在个人电脑上观看还是在PDA上观看),以不同的分辨率及压缩率发送图像。 JPEG2000的制定始于1997年3月,但因为无法很快确定算法,因此耽误了不少时间,直到2000年 3 月,规定基本编码系统的最终协议草案才出台。目前JPEG2000已由ISO和

图像压缩

摘要 多媒体技术和网络与移动通信的飞速发展激发了人们进行视频信息交流的需求,推动了图像通信和数字视频技术的全面发展。图像和视频信号数字化可以避免远距离传输的累积失真,数字化存储可以高保真还原,并且容易借助计算机进行灵活处理和管理。而传输和存储图像需要占用大量的数据空间,这严重影响了传输速率和实时处理量,极大地制约了图像通信的发展。因此,图像压缩编码技术受到了越来越多的关注及应用。 本文在分析视频特点的基础上主要从图像压缩的概念、原理、发展现状等方面进行介绍。并且详细介绍了图像压缩技术的分类方便及几种常用的图像压缩编码方法。主要介绍了行程长度编码(RLE)、LZW编码、霍夫曼编码、预测及内插编码、矢量量化编码、分形编码及小波变换编码 1.引言 在当前这个信息化社会中,新信息技术革命使人类被日益增多的多媒体信息所包围。多媒体信息主要是由图像、文本和声音三大元素组成。图像作为其主要元素之一,发挥着越来越重要的作用。而传输和存储图像需要占用大量的数据空间,这严重影响了传输速率和实时处理量,极大地制约了图像通信的发展。在同等的通信容量下,如果图像数据可以压缩之后再传输,就可以使传输的数据量变得很小,也就能够增加通信能力。因此图像压缩编码技术受到了越来越多的关注及广泛的应用。如数码相机、USB摄像头、可视电话、视频点播、视频会议系统、数字监控系统等等,都使用到了图像或视频的压缩技术。 2.图像压缩的概念及原理 图像可以按其内容的运动状态分成静止图像和活动图像两大类。活动图像又称运动图像,沿用电视技术的术语,一般称其为视频。视频是指一组图像在时间轴上的有序排列,它是由一系列的二维空域(平面)图像沿时间轴所排成的序列,用以描写景物的状态和变化的过程。

图像压缩技术的综述

题目:图像压缩技术的综述 学生姓名:徐欢学号:070110117 系别:计算机与信息学院专业:计算机科学与技术 入学年份:2010年9月 导师姓名:陈蕴谷职称/学位:讲师/硕士研究生 导师所在单位:中国科学院合肥物质研究院 完成时间:2014年4月 1.引言 随着多媒体技术和通讯技术的不断发展,多媒体娱乐、信息高速公路等不断对信息数据的存储和传输提出了更高的要求,也给现有的有限带宽以严峻的考验,特别是具有庞大数据量的数字图像通信,更难以传输和存储,极大地制约了图像通信的发展,因此图像压缩技术受到了越来越多的关注。图像压缩的目的就是把原来较大的图像用尽量少的字节表示和传输,并且要求复原图像有较好的质量。利用图像压缩,可以减轻图像存储和传输的负担,使图像在网络上实现快速传输和实时处理。 图像数据是用来表示图像信息的,如果不同的方法为表示相同的信息使用了不同的数据量,那么使用较多数据量的方法中,有些数据必然代表了无用的信息,或者是重复的表示了其他数据表示的信息,前者成为数据冗余,后者成为不相干信息。图像压缩编码的主要目的,就是通过删除冗余的或者是不相干的信息,以尽可能地的数码率来存储和传输数字图像数据。 图像压缩编码技术可以追溯到1948年提出的电视信号数字化,到今天已经有50多年的历史了。在此期间出现了很多种图像压缩编码方法,特别是到了80年代后期以后,由于小波变换理论,分形理论,人工神经网络理论,视觉仿真理论的建立,图像压缩技术得到了前所未有的发展,其中分形图像压缩和小波图像压缩是当前研究的热点。本文对当前最为广泛使用的图像压缩算法进行综述,讨论了它们的优缺点以及发展前景。 图像编码基础 图像编码压缩是指在满足一定图像质量的条件下,用尽可能少的数据量来表示图像。编码技术比较系统的研究始于Shannon信息论,从此理论出发可以得到数据压缩的两种基本途径。一种是联合信源的冗余度也寓于信源间的相关性之

图像视频压缩的国际标准与特点

图像/视频压缩国际标准与特点 通过近一个月对专业概论课程的学习,我对图像与视频的压缩有了初步的了解。以下是我结合老师课程内容与课外资料整理的图像/视频压缩国际标准与特点相关报告: 一、JPEG(Joint Photographic Expert Group) (一)全称Joint Photographic Experts Group《联合图像专家小组》,是一个在国际标准组织(ISO)下从事静态图像压缩标准制定的委员会。它制定出了第一套国标静态图像压缩标准:ISO 10918-1。 JPEG是ISO/IEC联合图像专家组制定的静止图像压缩标准,是适用于连续色调(包括灰度和彩色)静止图像压缩算法的国际标准。JPEG格式是目前网络上最流行的图像格式,是可以把文件压缩到最小的格式,即使采用细节几乎无损的10 级质量保存时,压缩比也可达 5:1。以BMP格式保存时得到4.28MB图像文件,在采用JPG格式保存时,其文件仅为178KB,压缩比达到24:1。经过多次比较,采用第8级压缩为存储空间与图像质量兼得的最佳方式。 JPEG格式又可分为标准JPEG、渐进式JPEG及JPEG2000三种格式: 1. 标准JPEG格式:此类型图档在网页下载时只能由上而下依序显示图片,直到图片资料全部下载完毕,才能看到全貌。 2. 渐进式JPEG格式:渐进式JPG为标准JPG的改良格式,可以在网页下载时,先呈现出图片的粗略外观后,再慢慢地呈现出完整的内容,而且存成渐进式JPG格式的档案比存成标准JPG 格式的档案要来得小,所以如果要在网页上使用图片,可以多用这种格式。 JPEC算法共有4种运行模式,其中一种是基于空间预测(DPCM)的无损压缩算法,另外3种是基于DCT的有损压缩算法。 (二)特点分析: 优点:摄影作品或写实作品支持高级压缩。 利用可变的压缩比可以控制文件大小。 支持交错(对于渐近式JPEG文件)。 广泛支持Internet标准。 缺点:有损耗压缩会使原始图片数据质量下降。 当编辑和重新保存JPEG文件时,JPEG会混合原始图片数据的质量下降。这种下降是累积性的。JPEG不适用于所含颜色很少、具有大块颜色相近的区域或亮度差异十分明显的较简单的图片。 二、JPEG-2000 (一)与以往的JPEG标准相比,JPEG-2000压缩率比JPEG高约30%,它有许多原先的标准所不可比拟的优点。JPEG-2000与传统JPEG最大的不同,在于它放弃了JPEG所采用的以DCT变换为主的分块编码方式,而改为以小波变换为主的多分辨率编码方式。首先,JPEG-2000能实现无损压缩(lossless compression)。在实际应用中,有一些重要的图像,如卫星遥感图像、医学图像、文物照片等,通常需要进行无损压缩。对图像进行无损编码的经典方法——预测法已经发展成熟,并作为一个标准写入了JPEG-2000中。 JPEG-2000还有一个很好的优点就是误码鲁棒性(robustness to bit error)好。因此使用JPEG-2000的系统稳定性好,运行平稳,抗干扰性好,易于操作。 JPEG-2000能实现渐进运输(progressive transmission),这是JPEG-2000的一个极其重要的特征。它可以先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,以满足用户的需要,这在网络传输中具有非常重大的意义。使用JPEG-2000下载一个图片,用户可先看到这个图片的轮廓或缩影,然后再决定是否下载。而且,下载时可以根据用户需要和带宽来决定下载图像

相关主题
文本预览
相关文档 最新文档