- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JPEG图像格式分析以及添加自定义信息
引言
编写目的
本文档对JPEG图像的存储格式进行研究,并得出如何在JPEG图像中添加自定义信息数据的方法,从而为500万智能相机项目中的JPEG图像添加图像信息提供技术支持。
参考资料
JPEG格式介绍:
HYPERLINK /lparchive/2007/07/28/1713718.aspx /lparchive/2007/07/28/1713718.aspx
JPEG格式英文文档:
HYPERLINK /gfx/2d/JPEG.txt /gfx/2d/JPEG.txt
Exif库(C#版)
HYPERLINK /KB/graphics/ExifLibrary.aspx /KB/graphics/ExifLibrary.aspx
HYPERLINK /samples.html /samples.html
Exif官方文档 2.2版
HYPERLINK /Exif2-2.PDF /Exif2-2.PDF
相关实例(.Net2.0):
HYPERLINK /KB/graphics/exiflib.aspx /KB/graphics/exiflib.aspx
(C#版)
HYPERLINK /KB/silverlight/Exif_Data.aspx /KB/silverlight/Exif_Data.aspx
JPEG wiki
HYPERLINK /wiki/JPEG /wiki/JPEG
JPEG格式简介
JPEG(Joint Photographic Experts Group)是联合图像专家小组的英文缩写。它由国际电话与电报咨询委员会CCITT(The International Telegraph and Telephone Consultative Committee)与国际标准化组织ISO于1986年联合成立的一个小组,负责制定静态数字图像的编码标准。
小组一直致力于标准化工作,开发研制出连续色调、多级灰度、静止图像的数字图像压缩编码方法,即JPEG算法。JPEG算法被确定为国际通用标准,其适用范围广泛,除用于静态图像编码外,还推广到电视图像序列的帧内图像压缩。而用JPEG算法压缩出来的静态图片文件称为JPEG文件,扩展名通常为*.jpg、*.jpe*.jpeg。
JPEG专家组开发了两种基本的压缩算法、两种数据编码方法、四种编码模式。具体如下:
压缩算法:
有损的离散余弦变换(Discrete Cosine Transform,DCT);
无损的预测技术压缩。
数据编码方法:
哈夫曼编码;
算术编码;
编码模式:
基于DCT顺序模式:编/解码通过一次扫描完成;
基于DCT递进模式:编/解码需要多次扫描完成,扫描效果从粗糙到精细,逐级递进;
无损模式:基于DPCM,保证解码后完全精确恢复到原图像采样值;
层次模式:图像在多个空间多种分辨率进行编码,可以根据需要只对低分辨率数据作解码,放弃高分辨率信息。
在实际应用中,JPEG图像使用的是离散余弦变换、哈夫曼编码、顺序模式。
JPEG图像格式
JPEG文件使用的数据存储方式有多种。最常用的格式称为JPEG文件交换格式(JPEG File Interchange Format,JFIF)。而JPEG文件大体上可以分成两个部分:标记码(Tag)和压缩数据。
标记码由两个字节构成,其前一个字节是固定值0xFF,后一个字节则根据不同意义有不同数值。在每个标记码之前还可以添加数目不限的无意义的0xFF填充,也就说连续的多个0xFF可以被理解为一个0xFF,并表示一个标记码的开始。而在一个完整的两字节的标记码后,就是该标记码对应的压缩数据流,记录了关于文件的诸种信息。(如果图像数据中有0xFF则,则通常需要在0xFF后面补充0x00,来区别标识码。个人理解,因为发现图像数据中如果碰到0xff,其后如果不是标识码,则通常为0xff或者0x00)。
常用的标记有SOI、APP0、DQT、SOF0、DHT、DRI、SOS、EOI。
注意,SOI等都是标记的名称。在文件中,标记码是以标记代码形式出现。例如SOI的标记代码为0xFFD8,即在JPEG文件中的如果出现数据0xFFD8,则表示此处为一个SOI标记。
下面列出一张完整的JPEG定义的标记表。
JPEG定义的标记(英文版)
Symbol
(符号)Code Assignment
(标记代码)Description
(说明)Start Of Frame markers, non-hierarchical Huffman codingSOF00xFFC0Baseline DCTSOF10xFFC1E
文档评论(0)