Exif

Exif是一种图像文件格式,它的数据存储与JPEG格式是完全相同的。实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍摄时的光圈快门白平衡ISO焦距、日期时间等各种和拍摄条件以及相机品牌、型号、色彩编码、拍摄时录制的声音以及GPS全球定位系统数据、缩略图等。你可以利用任何可以查看JPEG文件的看图软件浏览Exif格式的照片,但并不是所有的图形程序都能处理Exif信息。

EXIF最初由日本电子工业发展协会在1996年制定,版本为1.0。1998年,升级到2.1,增加了对音频文件的支持。2002年3月,发表了2.2版。

EXIF可以附加于JPEG、TIFF、RIFF等文件之中,为其增加有关数码相机拍摄信息的内容和索引图或图像处理软件的版本信息。

中文名
Exif
外文名
Exchangeable Image File
类    型
图像文件格式
支持类型
JPEG、TIFF、RAW等

目录

  1. 1 Exif 标准
  2. 2 厂商注释
  3. 3 历史版本
  1. 4 历史发展
  2. 5 常见标签
  3. 6 作用
  1. ? 提高摄影水平
  2. ? 提供编辑依据
  3. ? 方便管理
  4. ? 验证原图

Exif 标准

编辑

EXIF(Exchangeable Image File)是“可交换图像文件”的缩写,当中包含了专门为数码相机的照片而定制的元数据,可以记录数码照片的拍摄参数、 缩略图及其他属性信息。Exif标准最初由日本电子工业发展协会(JEIDA - Japan Electronic Industry Development Association)制订,目前的最新版本是发布于2010年04月的 Exif 2.3 版,该版本曾在2012年12月以及2013年5月有所修正[1]  ,并已经应用到各个厂商的新影像设备中。

Exif 文件实际是JPEG文件的一种,遵从JPEG标准,只是在文件头信息中增加了有关拍摄信息的内容和索引图。所以你可以使用任何支持JPEG格式的图像工具 软件观看 Exif 文件,但图像一旦被修改,Exif 信息可能会永久丢失,故编辑 Exif 必须使用专门的软件。

简单来说,Exif 信息就是由数码相机在拍摄过程中采集一系列的信息,然后把信息放置在我们熟知的 JPEG/TIFF 文件的头部,也就是说 Exif信息是镶嵌在 JPEG/TIFF 图像文件格式内的一组拍摄参数,它就好像是傻瓜相机的日期打印功能一样,只不过 Exif信息所记录的资讯更为详尽和完备。Exif 所记录的元数据信息非常丰富,主要包含了以下几类信息:

  • 拍摄日期
  • 拍摄器材(机身、镜头、闪光灯等)
  • 拍摄参数(快门速度、光圈F值、ISO速度、焦距、测光模式等)
  • 图像处理参数(锐化、对比度、饱和度、白平衡等)
  • 图像描述及版权信息
  • GPS定位数据
  • 缩略图

厂商注释

编辑

厂商注释(MakerNote)是储存在 Exif 中的厂商专有的注释数据,采用二进制格式,由不同的厂商自行制订,因此没有统一的标准,往往只能由生产商读取。厂商注释往往记录了许多 Exif 标准中未被正式定义的标签,比如快门次数、白平衡微调、人脸侦测信息、连拍序列、对焦数据等等,大大扩展了 Exif 标准的局限性。

由于缺乏统一的行业标准,加之设备生产商往往不对外公布其厂商注释采用的 格式,使得解码和识别厂商注释变得十分困难。一般的 Exif 查看软件并不能解码厂商注释数据,目前能够正确读取并识别的厂商注释项目的Exif 查看/编辑软件比较少,主要有:ExifTool、MagicEXIF(中文支持)、bkviewer、JPEGsnoop(仅限佳能和尼康)等。

历史版本

编辑

修正版本 发布日期 备注
Exif 1.0
  
1995年10月
  
第一个Exif标准版本,定义了Exif使用的基础数据结构和标签格式
Exif 1.1 1997年5月 添加更多Exif标签
Exif 2.0
  
1997年11月 添加GPS标签和缩略图
Exif 2.1
  
1998年12月
  
添加DCF可交换性标签
Exif 2.2
  
2002年4月 添加与定位有关的标签
Exif 2.21 2003年9月 添加并修正一些标签,加入操作准则
Exif 2.21(统一版本) 2009年9月
  
合并 Exif 2.2 和 Exif 2.21 的内容,并添加多个附表
Exif 2.3 2010年4月
  
重新编整文章结构,添加镜头和感光度相关标签

历史发展

编辑

Exif
标准是在1996年制定出来的,当时日本电子和信息技术协会(JEITA)决定为数码相机厂商制定一套标准,最后的结果就是产生了Exif 1.0。
到了1998,数码相机的发展取得了新的成就,数码相机的普及趋势越来越明显,于是JEITA 决定升级Exif标准,于是推出了 Exif
2.1,新标准中增加了一些新的规定,包括对音频文件的支持,能够对更复杂的照片进行, 改变了色调采样方式,并且规定缩略图也必须包含图像头。Exif
2.1 现在已经得到广泛的认可,对用户来说可以获得非常多的完备的照片信息。

到了2002年3月份,JEITA再次发表了Exif标准的最新版本,增加了一些有利于照片打印的参数支持。

就目前的数字照片打印来看,一般的数字照片打印处理可能会带来一些质量不
好的打印结果,如果打印机从数码相机中获得更多的照片拍摄时候的信息,那么对于效果更好的打印质量是有帮助的。其实这个问题已经被有些厂商所意识到,例如
Epson就已经开发出Print Image Matching (PrintIM) 技术,而Exif 2.2的出现使得
PrintIM技术标准化,这对于协调数码相机厂商和打印机厂商都是非常有效的做法。

Exif 2.2中最有特色的地方就在于新推出的Exif
Print。它里面包含着有助于数码照片打印的有效信息,这些增加的信息包含在照片文件头中,所有这些信息都有助于照片打印,有了这些信息的帮助,打印机
就不会再把夜景拍摄照片当作普通风景照片来打印,对于每张照片的处理都可以达到这样精确的地步。Exif 2.2标准可以准确再现当时拍摄时候的画面。

Exif
2.21标准在2003年9月正式对外发布,并在2009年9月完成最终的统一修订,将 Exif 2.2 与 2003 版的Exif 2.21
进行了合并。新Exif 2.21标准与之前的标准对大的区别在于添加了多个附录,用以记录旧版本标准以及更新信息,并提供操作 Exif
的一系列准则。由于其发布时间正值数码相机普及的年代,这个版本一度成为大部分数码相机沿用的标准。

直到2010年4月,由于沿用了七年之久的 Exif 2.21 已经不能满足数码相机的发展需要,JEITA 发布了 Exif 2.3,这一版本中主要添加和修正了镜头、感光度、GPS等相关的标签,并重新整理了说明文档的结构 [1] 
。目前各大生产商已经陆续将其下属的新型号产品迁移到新标准上。

常见标签

编辑

所有的JPEG文件以字符串“0xFFD8”开头,并以字符串
“0xFFD9”结束。文件头中有一系列“0xFF??”格式的字符串,称为“JPEG标识”或“JPEG段”,用来标记JPEG文件的信息段。
“0xFFD8”表示图像信息开始,“0xFFD9”表示图像信息结束,这两个标识后面没有信息,而其它标识紧跟一些信息字符。

0xFFE0 --
0xFFD9之间的标识符称为“应用标记”,一般称为APPn,JPEG的编码和解码并不会使用这些段,Exif
正是利用这些信息串记录拍摄信息如快门速度、光圈值等,甚至可以包括全球定位信息。按照 Exif
标准对这些标识符的定义,数码相机可以把各种拍摄信息记入数码图像中,应用软件可以读取这些数据,再按照 Exif
标准,检索出它们的具体含义,一般而言包括以下一些信息[2] 

标签号 Exif 定义名 中文定义名 备注
0x010E
  
ImageDescription 图像描述 -
0x013B Artist 作者 使用者的名字
0x010F Make 生产商 相机生产厂家
0x0110 Model 型号 相机型号
0x0112 Orientation 方向 有的相机支持,有的不支持
0x011A XResolution 水平方向分辨率 -
0x011B YResolution 垂直方向分辨率 -
0x0128 ResolutionUnit 分辨率单位 -
0x0131 Software 软件 固件Firmware版本或编辑软件
0x0132 DateTime 日期和时间 照片最后的修改时间
0x0213 YCbCrPositioning YCbCr定位 色度抽样方法
0x8769 ExifOffset Exif子IFD偏移量 -

0x829A
ExposureTime 曝光时间 即快门速度
0x829D FNumber 光圈系数 光圈的F值
0x8822 ExposureProgram 曝光程序 自动曝光、光圈优先、快门优先、M档等
0x8827 ISOSpeedRatings ISO感光度 Exif 2.3 中更新为 “PhotographicSensitivity”
0x9000 ExifVersion Exif 版本 参见“历史版本”一节
0x9003 DateTimeOriginal 拍摄时间 照片拍摄的时间
0x9004 DateTimeDigitized 数字化时间 照片被写入内存卡的时间
0x9204 ExposureBiasValue 曝光补偿 -
0x9205 MaxApertureValue 最大光圈 APEX为单位
0x9207 MeteringMode 测光模式 平均测光、中央重点测光、点测光等
0x9208 Lightsource 光源 一般记录白平衡设定
0x9209 Flash 闪光灯 记录闪光灯状态
0x920A FocalLength 镜头焦距 镜头物理焦距
0x927C MakerNote 厂商注释 参见“厂商注释”一节
0x9286 UserComment 用户注释 用户自定义数据
0xA000 FlashPixVersion FlashPix版本 -
0xA001 ColorSpace 色彩空间 一般为sRGB
0xA002 ExifImageWidth 图像宽度 图像横向像素数
0xA003 ExifImageLength 图像高度 图像纵向像素数
0xA433
  
LensMake 镜头生产商 -
0xA434 LensModel 镜头型号 -

作用

编辑

提高摄影水平

通过查看优秀作品的
Exif参数,你能够知道作者使用的器材,并且了解到作者所处的环境以及拍摄时使用的相机设置。通过比对Exif数据与图像内容,你可以直观地了解到曝光
组合的不同会对图像产生什么影响、以及不同焦距的镜头会产生什么样的视觉效果等,从而在以后的拍摄中进行改进,这也是数码照片相对于传统胶片的一个重要优
势。

提供编辑依据

很多图像编辑器会自动读取Exif数据来对图像进行优化,最常见的便是从
Exif中读取出相机姿态信息,从而自动识别出竖拍甚至是颠倒拍摄的照片并对其进行旋转校正。也有一些软件可以根据
Exif中的机内处理信息对图像进行针对性优化,从而保证图像不会因为过度处理而失真。

方便管理

Exif 除了记录技术性参数之外,还允许用户加入自定义的信息。比如通过 GPS 信息可以知道照片具体的拍摄地点,Windows 允许用户加入图像关键词便于用户日后的搜索和归类,加入图像描述或者注释还可以记录照片拍摄时的有趣故事。

验证原图

由于照片经过图像处理软件的编辑后会丢失部分或全部的
Exif元数据,因此 Exif信息的完整与否还是判断照片是否为相机直出的原始图像的重要依据。比如 Adobe Photoshop
在编辑图像后会删除大部分非技术参数,并将一些项目修改为其特有的值,因此很容易能够得知图像的编辑历史[3] 

参考资料
  • 1.

    JEITA CP-3451B, Exchangeable image file format for digital still cameras: Exif Version 2.3 [S]. JEITA & CIPA, 2010.

  • 2.

    JEITA CP-3451, Exchangeable image file format for digital still cameras: Exif Version 2.2 [S]. JEITA, 2002.

  • 3.

    EXIF信息有什么作用?
    .MagicEXIF[引用日期2015-06-29]

时间: 2024-10-07 01:56:45

Exif的相关文章

Android中读取图片EXIF元数据之metadata-extractor的使用

一.引言及介绍 近期在开发中用到了metadata-extractor-xxx.jar 和 xmpcore-xxx.jar这个玩意, 索性查阅大量文章了解学习,来分享分享. 本身工作也是常常和处理大图片打交道,摸索摸索也是多多益善. 首先介绍一下什么是EXIF.EXIF是 Exchangeable Image File 的缩写,这是一种专门为数码相机照片设定的格式.这样的格式能够用来记录数字照片的属性信息,如相机的品牌及型号.相片的拍摄时间.拍摄时所设置的光圈大小.快门速度.ISO等信息.除此之

图片Exif信息

Exif文件格式简述链接:https://www.zhihu.com/question/23727439/answer/25467748 可交换图像文件常被简称为Exif(Exchangeable image file format),是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据. Exif最初由日本电子工业发展协会在1996年制定,版本为1.0.1998年,升级到2.1,增加了对音频文件的支持.2002年3月,发表了2.2版. Exif可以附加于JPEG.TIFF.RIF

获取图片的EXIF信息

对于专业的摄影师来说,Exif信息是很重要的信息,也包含了非常多的东西 1.EXIF EXIF(Exchangeable Image File)是“可交换图像文件”的缩写,当中包含了专门为数码相机的照片而定制的元数据,可以记录数码照片的拍摄参数.缩略图及其他属性信息. Exif是一种图像文件格式,它的数据存储与JPEG格式是完全相同的.利用任何可以查看JPEG文件的看图软件浏览Exif格式的照片,但并不是所有的图形程序都能处理Exif信息. Exif 所记录的元数据信息非常丰富,主要包含了以下几

Python 批量修改图片exif属性

一共两个文件 config.ini //放配置文件 exif.py   //主程序文件 config.ini 文件源码 [global] Artist = www.blmm.com ;作者 DateTimeOriginal = now ;时间(now为当前时间,如指定时间则格式为:2017:04:09 14:13:22) Software = Adobe Photoshop CS6 Windows ;程序名称 exif.py 文件源码 #ecoding:utf-8 import pyexiv2

Android 获取图片exif信息

使用android api读取图片的exif信息 布局代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_p

Exif认识

找到一个js获取Exif的信息.php的也很简单.打开扩展就可以直接读了.也支持url的 这个是js的 http://code.ciaoca.com/javascript/exif-js/ EXIF 标识 名称 说明 ExifVersion Exif 版本 FlashPixVersion FlashPix 版本 ColorSpace 色域.色彩空间 PixelXDimension 图像的有效宽度 PixelYDimension 图像的有效高度 ComponentsConfiguration 图像

Android获取Exif信息

获取Exif信息 代表的是文件的头信息; 步骤: 步骤一: // 获取指定的文件的头信息对象 ExifInterface exif = new ExifInterface("/sdcard/x.jpg"); 步骤二: 获取指定的头信息: // 获取指定的信息 // 获取拍摄时间 String time =exif.getAttribute(ExifInterface.TAG_DATETIME); System.out.println("拍摄时间是:===" + ti

C#读取图片Exif信息

Exif是可交换图像文件的缩写,是专门为数码相机的照片设定的,可以记录数码照片的属性和拍摄数据 ////调用 //string strFile="fffff.jpg";//文件名 //System.Drawing.Bitmap bmp = new Bitmap(strFile); //EXIF.EXIFextractor er = new EXIF.EXIFextractor(ref bmp, "\n"); //Console.Write(strFile + &qu

读取图片信息(exif),使用com.drew.metadata.Metadata

---恢复内容开始--- 最近在开发中用到了metadata-extractor-xxx.jar 和 xmpcore-xxx.jar这个玩意, 索性查阅大量文章了解学习,来分享分享.本身工作也是经常和处理大图片打交道,摸索摸索也是多多益善. 首先介绍一下什么是EXIF,EXIF是 Exchangeable Image File 的缩写,这是一种专门为数码相机照片设定的格式.这种格式可以用来记录数字照片的属性信息,如相机的品牌及型号.相片的拍摄时间.拍摄时所设置的光圈大小.快门速度.ISO等信息.

Android 下的EXIF

一.什么是Exif Exif(Exchangeable Image File 可交换图像文件)是一种图象文件格式,它的数据存储与JPEG格式是完全相同的.实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍 摄时的光圈.快门.白平衡.ISO.焦距.日期时间等各种和拍摄条件以及相机品牌.型号.色彩编码.拍摄时录制的声音以及全球定位系统(GPS).缩略图 等.简单地说,Exif=JPEG+拍摄参数.因此,你可以利用任何可以查看JPEG文件的看图软件浏览Exif格式的照片,但并不是所有