参考

EXIF 数据究竟是什么

EXIF 是相机写进每张照片里的结构化数据。其中绝大部分你一辈子都用不到,真正起作用的只有少数几个字段——它们的含义如下。

EXIF 从何而来

EXIF 是 Exchangeable Image File Format 的缩写,于 1995 年标准化,目的是让数码相机以任何程序都能读回的方式记录拍摄条件。此后标准被多次扩展,因此其中包含了一些任何手机都从未测量过的字段。

实际结果是:EXIF 是一个庞大而稀疏的容器。一张照片有数百个位置,实际填满的只有几十个。空着的位置并不是错误。

真正重要的字段

照片何时拍摄

字段含义
DateTimeOriginal快门触发的那一刻。人们说的“日期”通常指它。
DateTimeDigitized图像写入存储的时间。在手机上基本与上者相同。
OffsetTimeOriginal时区偏移,例如 −04:00。没有它,时间戳是有歧义的。
SubsecTimeOriginal秒以下的小数,用于连拍排序。

照片在哪里拍摄

字段含义
GPSLatitude / GPSLongitude以度分秒存储的坐标,南北与东西的参考另行记录。
GPSAltitude海拔米数,并带一个表示上下的参考字节。
GPSImgDirection相机朝向的方位角。想知道拍的是哪一面立面时很有用。
GPSHPositioningError设备自己给出的精度估计(米)。很少被读取,却相当有价值。
GPSDateStamp / GPSTimeStamp来自卫星的 UTC 时间,独立于设备时钟。

最后这一组值得了解。由于 GPS 时间来自卫星而非手机时钟,当设备时间设置错误时,它可以作为一个独立的交叉验证。

用什么拍摄

字段含义
Make / Model制造商与设备,例如 Apple / iPhone 16 Pro。
LensModel多摄手机上具体用的是哪颗镜头,含焦距与光圈。
Software写入文件的系统或 App 版本。照片被编辑后会改变。

曝光参数

字段含义
FNumber光圈值。多数手机镜头为固定光圈。
ExposureTime快门时长(秒),通常是一个分数。
ISOSpeedRatings感光度。以数组形式存储,因此有时显示得很奇怪。
FocalLength实际焦距(毫米)。
FocalLenIn35mmFilm35mm 等效焦距,也是多数人能够想象的数字。
Flash一个位字段,说明闪光灯是否触发以及原因。

人们以为会有、实际没有的字段

不装软件怎么读

iPhone

在“照片”中打开一张图片并向上轻扫。你会看到拍摄日期、有坐标时显示的地图,以及包含镜头、光圈、快门、ISO 和尺寸的相机信息行。大多数人需要的字段都在其中。

Mac

预览 ▸ 工具 ▸ 显示检查器,然后切到 ⓘ 标签页。EXIF 与 GPS 子标签会列出原始数值,包括“照片”不显示的字段。

一次看全

Metadata Engraver 会列出它在照片中找到的每一个字段,并允许把其中任意字段绘制到图像上。有用的是后半部分:在检查器里读到的字段,一旦分享就会消失;画进画面里的字段不会。

EXIF 为什么脆弱

两个特性让 EXIF 没有看上去那么可靠。

很容易丢失。任何会重新编码图像的处理都可能丢弃整段数据。社交平台上传、聊天软件和部分编辑器都会这样。哪些途径删除什么,见照片为什么会丢失位置信息。

很容易被改。EXIF 是一种简单的数据结构。免费工具几秒钟就能改写任意字段,包括日期和坐标。如果你把元数据当作证据,这一点至关重要——见带时间戳的照片能证明什么。

这并不意味着 EXIF 毫无价值。它是一种便利,记录了相机“所相信”的内容——通常正确,偶尔错得离谱。

常见问题

每张照片都有 EXIF 吗?

来自相机或手机的照片几乎都有。截屏、软件生成的图像,以及经过会删除元数据的平台的文件,可能几乎没有。没有 EXIF 的照片并没有损坏,只是没有记录任何内容。

ISO 真的以数组形式存储吗?

是的。ISOSpeedRatings 被定义为数组,因为有些相机会报告多个数值。软件若未取出第一个元素就直接输出,会显示成 ISO: ( 46 ) 这样——这是显示层面的缺陷,而不是数据本身奇怪。

延伸阅读