版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于 JPEG 标准的静态图像压缩算法概述 张元伟 1,刘彦隆 2太原理工大学信息学院,太原(030024E-mail:摘 要 :本文主要论述了基本 JPEG 标准的编码方法。其中包括采样、离散余弦变换、量化 和熵编码等几个主要步骤, 最后, 用 Visual C+编程实现把一幅 BMP 格式的图像转换为 JPEG 格式图像,进一步显示 JPEG 标准在图像压缩中的优越性。关键词 :JPEG 标准;采样;离散余弦变换;量化;熵编码中图分类号 :TN9191.引言随着多媒体技术的快速发展, 静态图像的应用越来越广泛, 但存在一个主要问题就是数 据量过于庞大。例如,一张 A4(210mm×
2、;297mm幅面的照片,若用中等分辨率 (300dpi的扫 描仪按真彩色扫描,其数据量共有(300×210/25.4 ×(300×297/25.4个像素,每个像素占 3个字节,其数据量为 26M 字节。这样大容量的图像信息会给存储器的存储容量、通信干线 信道的带宽以及计算机的处理速度增加了极大的压力。因此,图像必须进行压缩。2.图像编码压缩算法JPEG 1是 “ 联合图像专家小组 ” (Joint Photographic Experts Group的简称,是由 ISO 和 CCITT 于 1986年底联合制定的连续色调的静止图像压缩标准。它是一个适用范围广泛的通
3、 用标准,不仅适用于静止图像的压缩,也适用于电视图像序列的帧内图像的压缩。 1992年 正式成为国际标准(ISO10918。JPEG 算法流程如图 1所示。 JPEG 压缩算法基本过程可分为如下几个步骤实现。 颜色模式转化及取样。 离散余弦变换(DCT 。 中国 量化(quantization 。 Z字形编码 (zigzag scan。 使用差分脉冲编码调制 (DPCM对直流系数 (DC进行编码。 使用行程长度编码 (RLE对交流系数 (AC进行编码。 熵编码 (entropy coding。2.1 颜色模式转化及取样2.1.1颜色模式转化RGB 色彩系统是我们最常用的表示颜色的方式, JPE
4、G 采用的是 YC b Cr 色彩系统, 想要 用 JPEG 基本压缩法处理全彩色图像,得先把 RGB 颜色模式图像数据转化为 YC b Cr 颜色模 式数据。其中 Y 代表明视度, C b 和 Cr 则代表色度和饱和度。其转化公式如下: 因为 JPEG 里的数据都是无符号 8比特数据,因此 C 值在这里都加上了 128。2.1.2取样因为人眼对图片上亮度 Y 的变化远比色彩 C 的变化敏感,所以采用部分取样可达到图 像压缩但几乎不影响图像质量。目前在市面上支持 JPEG 的应用软件,通常提供两种部分取样的方法:YUV411和 YUV422(YCb Cr 是从 YUV 2衍生来的 ,它们代表的
5、意义是 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
6、 DCT变换DCT 变换使用下式计算:1612(cos1612(cos, (41,(77viuijifvCuCvuFi j+=其中:vu , 代表 DCT 变换后矩阵内某个数值的坐标位置,(vuF 代表矩阵内的 , (vu 位置上 DCT 变换后的频率系数ji , 代表图像数据内某个数值的坐标位置, (jif 代表图像数据内的 , (ji 位置上的像素值1 ( (0021( (00=>>=v C u C v u v C u C v u 时, 或 时, 且经过 DCT 变换后的矩阵数据自然数为频率系数,这些系数以 0, 0(F 的值最大,称为 DC ,其余的 63个频率系数则多半是一
7、些接近于 0的正负浮点数,一概称之为 AC 。2.3量化(quantization 量化的作用是在保持一定图像质量的前提下,丢弃图像中对视觉效果影响不大的信息, 就是减少非 “0” 系数的幅度以及增加 “0” 值系数的数目。量化是图像下降的最主要原因 3。 JPEG 标准中采用线性均匀量化器,对 64个 DCT 系数除以量化步长并四舍五入取整, 量化步长由量化表决定。 JPEG 标准中使用了两种量化表:亮度量化表和色度量化表。2.4 Z字形编码(zigzag scan 2.5 使用差分脉冲编码调制 (DPCM对直流系数 (DC进行编码 在同一个图像分量中取得每一个 DC 值与前一个 DC 值的
8、差值来编码。如图 3所示。 原因是由于在连续色调的图像中,其差值多半比原值小,对差值进行编码所需的位数, 会比对原值进行编码所需的位数少许多。量化后的 AC 系数通常会有许多零值, 以Z 字形路径编排,增加了连续“ 0”系数的个数,这为下一步编码提供了很大方便,节省了码率。如图 2所示。经过 Z 字形编排后, 就把一个 8×8的矩阵变成一个 1×64的矢量,频率较低的系数放在矢量的顶部。 2.6 使用行程长度编码 (RLE对交流系数 (AC进行编码 量化 AC 系数的特点是 1×64矢量中包含有许多 “0” 系数,并且许多 “0” 是连续的,因此 使用非常简单和直
9、观的游程长度编码(RLE 对它们进行编码。JPEG 使用一个字节的高 4位来表示连续 “0” 的个数, 而使用它的低 4位来表示编码下一 个非 “0” 系数所需要的位数,跟在它后面的是量化 AC 系数的数值。如下图 4所示 格式为 (符号 1(符号 2 符号 1表示了两条信息,称为 “ 行程 ” 和 “ 长度 ” 。 “ 行程 ” 是在 Z 字形矩阵中位于非零 AC 系数前的连续零值 AC 系数的个数, “ 长度 ” 是对 AC 系数的幅度进行编码所用的位数。 符号 2表示了 AC 系数幅度值。2.7 熵编码 (entropy codingJPEG 标准具体规定了 Huffman 编码 4和算
10、术编码两种熵编码方式。 JPEG 基本顺序编码 解码器具体规定用 Huffman 编码, 但 JPEG 并没有限制对任何 JPEG 算法用 Huffman 编码方 式或算术编码方式。 熵编码可以分成两步进行, 首先把 DC 码和行程码转换成中间序列 (2.5和 2.6已做,然后给这些符号赋以变长码字。霍夫曼编码器可以使用很简单的查表方法进行编码。 编码时, 每个矩阵数据的 DC 值与 63个 AC 值,将分别使用不同的 Huffman 编码表,而亮度与色度也需要不同的 Huffman 编 码表,所以一共需要 4个编码表,才能顺利地完成 JPEG 编码工作。实现上述几个步骤,即完成一幅图像的 J
11、PEG 压缩。3. Visual C+下 BMP 转换为 JPEG 算法实现用 Visual C+编写了一个把 BMP 5图像转换为 JPEG 图像的程序,该程序名称为 RWJpegExp, 步骤为:打开程序,加载一幅 BMP 图片,利用 “ 文件 ”/“ 另存为 ” 菜单,可以将此 BMP 文件存储为 JPEG 文件,并能通过对话框控制 JPEG 文件的压缩图像质量和色彩。3.1 程序实现的主要代码CRWJpegExpDoc OnOpenDocument(LPCTSTR lpszPathName/ 显示要打开的文件; CRWJpegExpDoc OnSaveDocument(LPCTSTR
12、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的压
13、缩率;选择 35%的图像质量,可得到 40:1的压缩率,只要压缩率不大 于 40倍,图像压缩后的效果质量用肉眼无法区别。可见 JPEG 标准的优越性(限于篇幅, 这里就不给出压缩后的效果图。从以上测试结果看,设计实现的 JPEG 压缩算法较好地实现了对于 24位 bmp 图像的压 缩,压缩比较高,且压缩图像与原始图像相比差异几乎无法察觉。4.结束语本文系统的对 JPEG 编码的基本原理进行了阐述,并给出了 BMP 格式图像与 JPEG 格 式图像之间转换的软件实现,使读者对 JPEG 的压缩效果有了一个更直观的了解。虽然图像 压缩了很多,但图像视觉效果没有什么差异。 JPEG 标准的优点是在自
14、然景观与再现图片方 面表现很出色,且其图像文件比较小,目前 WEB 上 80%的图像都是 JPEG 格式。缺点是只 能处理静态图像, 不能处理活动景物。 随着技术的进步, JPEG 标准将会得到更进一步的发 展和应用。中国科技论文在线 参考文献 1 2 3 4 5 张益贞,刘滔. Visual C+实现 MPEG/JPEG 编解码技术M. 北京:北京邮电大学出版社,2003 杨淑莹. VC+图像处理程序设计(第 2 版)M. 北京:清华大学出版社,2005 求是科技.Visual C+音视频编解码技术及实践M. 北京:人民邮电出版社,2006 胡栋. 静止图像编码的基本方法与国际标准M . 北
15、京:北京邮电大学出版社,2003 丁贵广. 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
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理部患者安全护理评估题
- 销售团队业绩考核指标设置模板综合评价型
- IT运维服务器巡检关键步骤操作手册
- 城市文明建设及公共卫生责任承诺书7篇
- 技术方案策划与执行模板
- 护理沟通中的沟通策略与技巧
- 产品故障排除快速指南手册
- 成本会计教程(第八版)课件 第6、7章 产品成本计算的基本方法、产品成本计算的辅助方法
- 创新科技产业协作承诺书(5篇)
- 办公空间节能减排绿色方案
- 空调施工应急预案方案
- 统编版(2026)八年级下册道德与法治期末复习全册知识点背诵提纲
- 2026春译林版八下英语单词默写【英译中】
- 2026年及未来5年中国装载机市场运行态势及行业发展前景预测报告
- 《突发事件应急演练评估指南》培训课件
- 医院候诊流程中的智能叫号系统与智慧医院创新服务优化策略
- 2026年消化不良症状资料
- 2026年黑龙江省牡丹江市单招职业适应性测试题库及参考答案详解1套
- ICU护理讲课课件
- 药品流通与供应链管理
- 机械设备投标标书(范本)
评论
0/150
提交评论