jpeg格式规范
篇一:JPEG编码与解码的设计与实现
毕 业 论 文
JPEG编码与解码的设计与实现
摘要
多媒体技术正在迅速发展,应用领域在不断的拓广。如今在Internet上,传统基于字符界面的应用逐渐被能够浏览图像信息的WWW(World Wide Web)方式所取代。WWW尽管漂亮,但是也带来了一个问题:图像信息的数据量过大,本来就已经非常紧张的网络带宽变得更加不堪重负。压缩技术就变得更加至关重要。
压缩的理论基础是信息论。从信息论的角度来看,压缩就是去掉信息中的冗余,即保留不确定的信息,去掉确定的信息(可推知的),也就是用一种更接近信息本质的描述来代替原有冗余的描述。图像压缩一般通过改变图像的表示方式来达到,因此压缩和编码是分不开的。
本文的实际意义是利用开发工具VC,,6.0开发一个用来进行图像转换的软件。该软件利用离散余弦变换、熵编码、Huffman编码等图像压缩技术可以把bmp图像转换成jpeg
1
图像,即进行图像的压缩。转换后的图像与原图像相比,效
果几乎一样,可大小却缩小了很多。所以该软件达到了预期
的目的和效果。
关键字:离散余弦变换,熵编码,Huffman编码,bmp,
jpeg
目 录
摘要 ..................................................................... 2 1. 绪
言 ................................................................. 2
1.1. 图像压缩的意义 .......................................................... 2
1.2. JPEG的发展历史 ......................................................... 2 2. 压缩技术理论及原理算法介
绍 ............................................... 4
2.1. Jpeg压缩标准 ........................................................... 4
2.2. Jpeg模型与算法
...................................
.................. 6
2.3. 离散余弦变换 ............................................................ 7
2.4. 熵编码 ................................................................. 13
2.4.1. 熵 .................................................................. 13
2.4.2. 熵编码原理 .......................................................... 14
2.5. Huffman编码 ........................................................... 19
2.6. Jpeg文件的格式 ........................................................ 22
2.6.1. 色度空间 ............................................................ 22
2
2.6.2. JPEG文件格式 ....................................................... 23
2.7. Bmp文件格式 ........................................................... 28 3. 开发工具及开发平台简介 .................................................. 36
3.1. 理解VC工程 ............................................................ 36
3.2. DLL的介绍 ............................................................. 37
3.2.1. 静态链接和动态链接 .................................................. 37
3.2.2. 调用约定 ............................................................ 37
3.2.3. DLL的封装方法 ...................................................... 38 4. JPEG编解码的VC实现 .................................................... 39
4.1. 实现JPEG压缩编解码的CJpeg
类 .......................................... 39
4.2. JPEG压缩编解码程序的实
现 .............................................. 46
4.3. 封装方便BMP转换成JPEG的API函
数 ...................................... 52
致 谢 ................................................................... 53
附 录 ...................................................................... 54
参 考 文 献 ................................................................ 57
1. 绪 言
3
1.1. 图像压缩的意义
由于图像和视频本身的数据量非常大,给存储和传输带来了很多不便,所以图像压缩和视频压缩得到了非常广泛的应用。比如数码相机、USB摄像头、可视电话、视频点播、视频会议系统、数字监控系统等等,都使用到了图像或视频的压缩技术。随着微电子技术和计算机技术日新月异的发展,数字技术在各个领域得到广泛应用,在此基础上网络技术孕育而生。网络的出现使我们进入了全球一体化的信息时代。网络中传递的语音、图形、图像、数据等多种媒体的传输、处理、存储、检索技术成为网络技术的重要组成部分,而压缩编码是网络技术中基础性技术。
1.2. JPEG的发展历史
JPEG 全名为 Joint Photographic Experts Group,它是一个在国际标准组织(ISO)下从事静态图像压缩标准制定的委员会。JPEG是1992年CCITT正式通过的连续色调静止图象压缩标准。JPEG可以进行无损压缩,也可以进行有损压缩。最常见的就是有损压缩的方法,即JPEG标准中的Baseline,其压缩过程可分为颜色模式转换及采样、DCT变换、量化、编码几部分。它制定出了第一套国标静态图像压缩标准:ISO 10918-1 就是我们俗称的 JPEG 了。由于JPEG优良的品质,使得它在短短的几年内就获得极大的成功,目前网站上百分之八十的图像都是采用JPEG的压缩标
4
准。JPEG使用了有损压缩格式,这就使它成为迅速显示图像并保存较好分辨率的理想格式。也正是由于JPEG格式可以对扫描或自然图像进行大幅度的压缩,利于储存或通过调制解调器进行传送,所以在Internet上得到了广泛的应用。
JPEG格式有一个特殊的变种,名为 “Progressive
JPEG”。在创建Progressive JPEG 文件肘,数据是这样安排的:在装入图像时,开始只显示一个模糊的图像,随着数据的装入,图像逐步变得清晰。 JPEG格式的主要不足之处也正是它的最大优点。也就是说,有损压缩算法将JPEG只局限于显示格式,而且每次保存JPEG格式的图像时都会丢失一些数据。因此,通常只在创作的最后阶段以JPEG格式保存一次图像即可。
然而,随著多媒体应用领域的激增,传统JPEG压缩技术已无法满足人们对多媒体图像资料的要求。因此,更高压缩率以及更多新功能的新一代静态图像压缩技术 JPEG 2000 就诞生了。JPEG 2000 正式名称为 “ISO 15444” ,同样是由JPEG 组织负责制定。自1997年三月开始筹划,但这几年间,在算法选取问题上耽误了不少时间,人们普遍预计要到2000年十二月JPEG2000才能制定完成,但在3 月的东京的一个会议上,可
能是由于数字照相机厂商们施加压力,规定基本编码系统的最终
草案提前出台,终于不用改名为 JPEG2001 了。
5
[1]
JPEG2000的原理: JPEG 2000 与传统 JPEG 最大的不同,在于它放弃了 JPEG 所采用的以离散馀弦转换(Discrete
Cosine Transform) 为主的区块编码方式,而改采以小波转换(Wavelet transform) 为主的多解析编码方式。小波转换的主要目的是要将图像的频率成分抽取出来。
JPEG2000的优点:
1、JPEG2000 作为JPEG升级版,高压缩(低码率)是其目标,其压缩率比 JPEG 高约 30% 左右。
2、JPEG2000 同时支持有损和无损压缩,而 JPEG 只能支持有损压缩。因此它适合保存重要图片。
3、JPEG2000 能实现渐进传输,这是JPEG2000的一个极其重要的特征。这也就是我们对 GIF 格式图像常说的“渐现”特性。它先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,让图像由朦胧到清晰显示,而不必是像现在的 JPEG 一样,由上到下慢慢显示。
4、JPEG2000 支持所谓的“感兴趣区域”特性,你可以任意指定图像上你感兴趣区域的压缩质量,还可以选择指定的部份先解压缩。这样我们就可以很方便的突出重点了。
JPEG2000的应用:
JPEG 2000的应用领域可概略分成两部分,一为传统JPEG的市场,像打印机,扫描仪,数码相机等,一为新兴
6
应用领域,像网网络传输,无线通讯,医疗图像等。目前对 JPEG 2000 热情最大的是那些数字照相机厂商。JPEG 2000和JPEG 相比优势明显,且向下兼容,取代传统的JPEG格式指日可待。
JPEG 2000是正在制定的静止图像压缩的新国际标准。由于其功能强大,效率卓越,受到计算机界人士的广泛关注。
篇二:“jpeg”和“jpg”两种格式的图片真的是一样吗
“jpeg”和“jpg”两种格式的图片真的是
一样吗
贵州省仁怀市共和
周万权
只要经常对图片进行编辑并运用的人都知道:“jpeg”和“jpg”两种格式的图片是一样的。前者是Joint Photographic
Expert Group的标准缩写,而后者“jpg”又是前者“jpeg”的缩写。生活中两种格式的图片随时可见。不过,在运用图片编辑或播放时,也会出现一些偶然,只支持jpeg格式的图片而不支持jpg格式的,或者只支持jpg格式的图片而不支持jpeg格式的都有可能,下面谈谈我的运用中出现的问题。
今天,我把手机刚接收到的彩信中的小孩子照片(照片是jpeg格式的)下载下来,然后通过数据线连接电脑,再拷贝到U盘,将U盘插入我的液晶互联网电视(注:电视机支持图片和各种格式视频的播放),使用电视机的“多媒体”功能播放,准备和家人一起分享,谁知,“奇迹”发生了。“ 找
7
不到支持的格式。”这真是“大姑娘上轿——还是第一次遇到。”于是,我试图找找原因,非得在电视机上播放不可(因为我是一位喜欢钻研的人,特别是电脑方面的知识)。我尝试了以下几种方法:
一、 我将这些“jpeg”格式的图片复制到
中,另存为“*.htm,*html)”,然后打开新生成文件夹“Doc1.files”下的“jpg”格式的图片,在电视机上能正常播放了。
二、 我又将这些图片的后缀名(即扩展名)“jpeg”直接改写为“jpg”,拷入电视机中,同样能正常播放。
三、 我用格式工厂软件把这些“jpeg”格式的图片转化为格式为“jpg”的,理所当然在电视机上能正常播放,可是文件却变小了一些。
后来我电话联系了彩信的发送者,了解到她的照片是通过华为手机拍摄的,这说明华为手机的照相机默认照片格式是为“jpeg”格式。而三星手机的照相机设备默认的照片格式是“jpg”格式;苹果手机的照相机默认的相片格式是“jpeg”;而PC机默认的图片格式又是“jpg”。联想笔记本电脑的相机设备默认的也是“jpg”格式的。可见,不同品牌的手机或设备,其照片的默认格式是不同的。
由此可见:“jpeg”与“jpg”两种格式的图片表面上是一样的,它们之间还是存在着质的区别。
篇三:几种图片格式(压缩标准)介绍:BMP、JPEG、
8
JPEG2000、TIFF
几种图片格式(压缩标准)介绍:bmp、jpeg、jpeg2000、tiff
2009年03月06日星期五 12:33
位图格式(BMP)是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BblP文件所占用的空间很大。BMP文件的图像深度可选lbit、4bit、8bit及24bit。BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。
由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows环境中运行的图形图像软件都支持BMP图像格式。
典型的BMP图像文件由三部分组成:位图文件头数据结构,它包含BMP图像文件的类型、显示内容等信息;位图信息数据结构,它包含有BMP图像的宽、高、压缩方法,以及定义颜色等信息。
JPEG是Joint Photographic Experts Group(联合图像专家组)的缩写,文件后辍名为(jpg或(jpeg,是最常用的图像文件格式,由一个软件开发联合会组织制定,是一种有损压缩格式,能够将图像压缩在很小的储存空间,图像中重复或不重要的资料会被丢失,因此容易造成图像数据的损伤。
9
尤其是使用过高的压缩比例,将使最终解压缩后恢复的图像质量明显降低,如果追求高品质图像,不宜采用过高压缩比例。但是JPEG压缩技术十分先进,它用有损压缩方式去除冗余的图像数据,在获得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像品质。而且 JPEG是一种很灵活的格式,具有调节图像质量的功能,允许用不同的压缩比例对文件进行压缩,支持多种压缩级别,压缩比率通常在10:1到40:1之间,压缩比越大,品质就越低;相反地,压缩比越小,品质就越好。比如可以把1(37Mb的BMP位图文件压缩至20(3KB。当然也可以在图像质量和文件尺寸之间找到平衡点。JPEG格式压缩的主要是高频信息,对色彩的信息保留较好,适合应用于互联网,可减少图像的传输时间,可以支持24bit真彩色,也普遍应用于需要连续色调的图像。
JPEG格式是目前网络上最流行的图像格式,是可以把文件压缩到最小的格式,在 Photoshop软件中以JPEG格式储存时,提供11级压缩级别,以0—10级表示。其中0级压缩比最高,图像品质最差。即使采用细节几乎无损的10 级质量保存时,压缩比也可达 5:1。以BMP格式保存时得到4(28MB图像文件,在采用JPG格式保存时,其文件仅为178KB,压缩比达到24:1。经过多次比较,采用第8级压缩为存储空间与图像质量兼得的最佳比例。
10
JPEG格式的应用非常广泛,特别是在网络和光盘读物上,都能找到它的身影。目前各类浏览器均支持JPEG这种图像格式,因为JPEG格式的文件尺寸较小,下载速度快。
JPEG2000作为JPEG的升级版,其压缩率比JPEG高约30,左右,同时支持有损和无损压缩。JPEG2000格式有一个极其重要的特征在于它能实现渐进传输,即先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,让图像由朦胧到清晰显示。此外,JPEG2000还支持所谓的感兴趣区域 特性,可以任意指定影像上感兴趣区域的压缩质量,还可以选择指定的部分先解压缩。
11