Exif
EXIF可以附加于JPEG、TIFF、RIFF等文件之中,为其增加有关数码相机拍摄信息的内容和索引图或图像处理软件的版本信息。
- 中文名
- Exif
- 外文名
- Exchangeable Image File
- 类 型
- 图像文件格式
- 支持类型
- JPEG、TIFF、RAW等
Exif 标准
- 拍摄日期
- 拍摄器材(机身、镜头、闪光灯等)
- 拍摄参数(快门速度、光圈F值、ISO速度、焦距、测光模式等)
- 图像处理参数(锐化、对比度、饱和度、白平衡等)
- 图像描述及版权信息
- GPS定位数据
- 缩略图
厂商注释
历史版本
| 修正版本 | 发布日期 | 备注 |
|---|---|---|
| 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月 |
重新编整文章结构,添加镜头和感光度相关标签 |
历史发展
标准是在1996年制定出来的,当时日本电子和信息技术协会(JEITA)决定为数码相机厂商制定一套标准,最后的结果就是产生了Exif 1.0。
到了1998,数码相机的发展取得了新的成就,数码相机的普及趋势越来越明显,于是JEITA 决定升级Exif标准,于是推出了 Exif
2.1,新标准中增加了一些新的规定,包括对音频文件的支持,能够对更复杂的照片进行, 改变了色调采样方式,并且规定缩略图也必须包含图像头。Exif
2.1 现在已经得到广泛的认可,对用户来说可以获得非常多的完备的照片信息。
好的打印结果,如果打印机从数码相机中获得更多的照片拍摄时候的信息,那么对于效果更好的打印质量是有帮助的。其实这个问题已经被有些厂商所意识到,例如
Epson就已经开发出Print Image Matching (PrintIM) 技术,而Exif 2.2的出现使得
PrintIM技术标准化,这对于协调数码相机厂商和打印机厂商都是非常有效的做法。
Print。它里面包含着有助于数码照片打印的有效信息,这些增加的信息包含在照片文件头中,所有这些信息都有助于照片打印,有了这些信息的帮助,打印机
就不会再把夜景拍摄照片当作普通风景照片来打印,对于每张照片的处理都可以达到这样精确的地步。Exif 2.2标准可以准确再现当时拍摄时候的画面。
2.21标准在2003年9月正式对外发布,并在2009年9月完成最终的统一修订,将 Exif 2.2 与 2003 版的Exif 2.21
进行了合并。新Exif 2.21标准与之前的标准对大的区别在于添加了多个附录,用以记录旧版本标准以及更新信息,并提供操作 Exif
的一系列准则。由于其发布时间正值数码相机普及的年代,这个版本一度成为大部分数码相机沿用的标准。
。目前各大生产商已经陆续将其下属的新型号产品迁移到新标准上。
常见标签
“0xFFD9”结束。文件头中有一系列“0xFF??”格式的字符串,称为“JPEG标识”或“JPEG段”,用来标记JPEG文件的信息段。
“0xFFD8”表示图像信息开始,“0xFFD9”表示图像信息结束,这两个标识后面没有信息,而其它标识紧跟一些信息字符。
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信息的完整与否还是判断照片是否为相机直出的原始图像的重要依据。比如 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]
- 1.
Exif的更多相关文章
- 用C#读取相片(JPG图片)的EXIF信息的方法
引言:EXIF,是英文Exchangeable Image File{}#endregion#region 数据转换结构/// summary>/// 转换数据结构/// /summary> ...
- 七牛--关于图片上传方向不统一的问题--主要关于图片EXIF信息中旋转参数Orientation的理解
[图片引用方向纠正]直接在图片后面添加 ?imageMogr/auto-orient eg:http://data.upfitapp.com/data/2016/10/18/1629114767606 ...
- 为现有图像处理程序添加读写exif的功能
为现有图像处理程序添加读取exif的功能 exif是图片的重要参数,在使用过程中很关键的一点是exif的数据能够和图片一起存在.exif的相关功能在操作系统中就集成了,在csharp中也似乎有了实现. ...
- 图片Exif 信息中Orientation的理解和对此的处理
这个问题是在用七牛上传图片后获取宽高时发现的,一张图片,用图片浏览器打开始终是竖图,但是查看属性或者用七牛获取宽高,却发现宽大于高,也就是在属性中这是个横图.这样导致客户端用该宽高来展示图片会出现问题 ...
- Exif.js 读取图像的元数据
Exif.js 提供了 JavaScript 读取图像的原始数据的功能扩展,例如:拍照方向.相机设备型号.拍摄时间.ISO 感光度.GPS 地理位置等数据. 注意事项: EXIF 数据主要来自拍摄的照 ...
- Android 获取图片exif信息
使用android api读取图片的exif信息 布局代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...
- 七牛:关于图片 EXIF 信息中旋转参数 Orientation 的理解
EXIF(Exchangeable Image File)是 “可交换图像文件” 的缩写,当中包含了专门为数码相机的照片而定制的元数据,可以记录数码照片的拍摄参数.缩略图及其他属性信息,简单来说,Ex ...
- 开启PHP exif扩展方法详解
服务器配置说明: 1.在php.ini文件中找到;extension=php_exif.dll,去掉前面的分号2.在php.ini文件中找到;extension=php_mbstring.dll,去掉 ...
- C#下取得Exif中照片拍摄日期
/// <summary> /// 获取Exif中的照片拍摄日期 /// </summary> /// <param name="fileName"& ...
随机推荐
- 如何编译ReactNative示例程序Examples
通过示例程序可以看到一些基本组件的使用,对于学习ReactNative是很有帮助的. 编译示例程序需要将整个项目导入到androidStudio中,androidStudio导入项目时选择react- ...
- Fiddler基本原理与抓取Andriod与IOS的App数据包
Fiddler基本原理 Fiddler数据包的原理是Fiddler将自己设置为一个代理服务器,默认监听127.0.0.1:8888端口同时将浏览器的HTTP.HTTPS协议设置为使用代理服务器也就是使 ...
- 烂泥:更换ESXI5.0管理网卡及管理IP地址
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 公司的服务器基本上都是在IDC机房里面的,为了更有效的利用服务器性能.所以有几台服务器,安装的是ESXI5.0做成虚拟化. 注意目前这些服务器都是双网卡 ...
- SlidingMenu的简单使用
1.java代码 1.引入slidingmenu的库 * 2.定义activity继承SlidingFragmentActivity * 3.将onCreate方法改为public的 * 4.加载sl ...
- MYSQL:使用\G参数改变输出结果集的显示方式
在mysql命令行工具中执行查询时,当表的列很多的时候显示很乱. 上面的显示你肯定看不清楚吧.以上方式是默认以列(表格)形式显示的.那怎么以行(表单)的方式显示呢,请看下面 OK,搞定. 参考文档:h ...
- linux运行级别[转自网络]
运行级别就是操作系统当前正在运行的功能级别.级别是从0到6,具有不同的功能.这些级别定义在/ect/inittab文件中.这个文件是init 程序寻找的主要文件,最先运行的服务是那些放在/etc/rc ...
- [转]ASP.Net篇之Session与Cookie
本文转自:http://www.cnblogs.com/japanbbq/archive/2011/08/31/2160494.html Session: Session是“会话”的意思,然而,因为h ...
- 151008-JS初级完成,PHP入门(变量常量等)-没假放了
hi 今天是10月8号,你懂的,好困好困哒 上午搞定了JS的入门篇,真的是入门篇,基本都是JS做基本的输出.样式变化.惯例给出代码 <!DOCTYPE HTML><html>& ...
- 深入理解FTP协议
文件传输协议FTP(File Transfer Protocol)是因特网中使用最广泛的文件传输协议.FTP使用交互式的访问,允许客户指定文件的类型和格式(如指明是否使用ASCII码),并允许文件具有 ...
- jquery实现输入框聚焦,键盘上下键选择城市
在最近有个项目中 需要实现当文本框聚焦的时候,可以键盘上下键选择内容,按enter键的时候,把内容传到输入框中,如图所示: 实现代码如下: /** *输入框聚焦,键盘上下键选择城市 */ ;(func ...