- 解释一个值之前,先确认它来自哪种元数据结构。
- 软件或工作流声明提供的是上下文,不是完整历史。
- 没有元数据同样可能有多种原因。
图像元数据并不是一种单独的格式
日常使用中,人们常把“EXIF”直接当作照片元数据的代名词。但在实际文件里,可能同时存在 EXIF、XMP、IPTC 以及 PNG 自身的文本信息。它们的设计目的不同,记录方式也不同。
相机写入的拍摄参数、编辑软件写入的工作流程信息、新闻或数字资产系统使用的描述字段,不能简单地混为一谈。因此,分析元数据时首先要确认的不是“值是什么”,而是这个值来自哪一种结构、由哪一类机制保存。
| 类型 | 主要用途 | 常见内容 |
|---|---|---|
| EXIF | 拍摄和相机相关的技术信息 | 曝光、方向、拍摄时间、相机和镜头字段 |
| XMP | 创作、编辑、出版和资产管理中的可扩展元数据 | CreatorTool、日期、描述、版权或应用自定义属性 |
| IPTC | 专业图片的描述、管理和编辑信息 | 标题、说明、作者、地点、关键词、来源等 |
| PNG 文本块 | 直接在 PNG 文件中保存文本数据 | tEXt、zTXt、iTXt 以及应用自定义记录 |
CIPA 目前发布的数字相机 Exif 规范已到 3.1。Adobe 将 XMP 作为可扩展元数据平台维护,并已进入 ISO 16684 标准体系。IPTC 则长期维护面向专业摄影、新闻与资产管理的 Photo Metadata Standard。PNG 规范还定义了自己的文本数据块。这些机制在现实工作流中可能同时出现,但彼此并不等价。
拍摄信息和工作流程信息回答的是不同问题
快门速度、光圈、方向、相机型号等字段,可以帮助我们理解文件中保存的拍摄技术信息。但这些字段本质上仍然是“文件里的数据”。它们可以被修改、删除、复制,也可能在导出或转换过程中发生变化。
先用手头的照片试试 SIGNA。无需订阅,每月可免费使用 5 次,再决定是否需要 Pro。
软件或工作流程字段的语义不同。例如 XMP 中的 CreatorTool 或其他软件声明如果出现某个程序名称,能够确定的是:文件中存在一条包含该名称的记录。仅凭这一条记录,并不能证明这个软件就是最初的创作工具,也不能证明它执行过某种具体编辑,更不能排除其他软件曾参与处理。
“文件中存在某软件名称的声明”属于观察;“这张图就是由该软件制作”则属于对历史过程的更强判断,两者需要的证据不同。
软件名称为什么既有价值,也容易被误读
一张图片可能先由相机生成,再进入编辑软件,之后通过网页服务、聊天软件或社交平台重新编码。每个环节都可能保留上一阶段的字段、覆盖它们、添加新字段,或者全部删除。因此,最终文件里最醒目的软件名称,往往只能说明某个阶段,而不是完整的来源链条。
同样,找不到软件字段也不能证明图片“没有被编辑”。有些程序本来就写入很少的元数据;有些导出设置会主动删除;截图、格式转换、隐私清理和平台处理也可能让相关字段消失。
AI 图像工作流中的元数据有什么特点?
一些生成式图像工具会保存比“软件名称”更复杂的结构化工作流程信息。ComfyUI 是一个有明确官方文档的例子:Save Image 节点保存 PNG 时,可以写入工作流元数据,其中包括与提示词相关的信息,便于之后参考。
如果这些结构仍然保留在文件中,那么“观察到类似 ComfyUI 工作流的记录”就是具有价值的技术信息。但这并不等同于独立验证图片的来源。记录可以复制、修改或删除;反过来,一张确实经过生成式工具输出的图像,也可能在后续保存、格式转换、截图或平台处理后不再保留这些信息。
因此,技术报告中更准确的说法是:观察到 AI 工作流相关元数据、观察到某工具声明、或本次检查未观察到相关记录。这些表述都不应被扩大成“确认由 AI 生成”或“确认不是 AI”。
PNG 的文本元数据需要单独理解
PNG 规范定义了 tEXt、zTXt 和 iTXt 等文本块。tEXt 主要处理 Latin-1 文本,zTXt 保存压缩文本,iTXt 则支持国际化的 UTF-8 文本。应用可以利用这些结构保存普通说明,也可以保存自定义的工作流信息。
因此,一个成熟的图像分析工具不应该只给出“有元数据”这样的汇总结果,而应区分读取的是哪一种容器、结构是否有效、实际观察到的是哪一类字段。
为什么重新保存、转换和截图会改变元数据?
元数据不是保证永久跟随图像的固定历史记录。常见的变化包括:
- 通过另一款编辑软件重新保存或导出;
- 在 JPEG、PNG、WebP、HEIC 等格式之间转换;
- 缩放或重新压缩;
- 截图——它会生成一个新的图像文件,而不是复制原文件容器;
- 上传到会重新编码图片或删除部分字段的平台;
- 使用元数据清理或隐私工具。
有时画面几乎没有变化,元数据却已经被重写;也可能画面经历明显编辑,而大量旧字段仍然保留。因此,元数据更适合作为多种证据中的一个来源,而不是“完整还原图片历史”的单一答案。
一个更稳妥的三步解读方法
| 步骤 | 要回答的问题 | 示例 |
|---|---|---|
| 1. 观察 | 文件中实际存在什么字段或结构? | XMP CreatorTool 中出现某应用名称 |
| 2. 上下文 | 哪些工作流程与这个观察结果相容? | 该应用可能在某个阶段保存或导出过文件 |
| 3. 结论 | 哪些判断仍需要其他独立证据? | 最初创建者、具体编辑行为、作者身份、是否由 AI 生成 |
把这三步分开,可以避免一种常见错误:把正确的技术观察直接升级成关于作者、来源或真实性的强结论。
SIGNA 如何处理元数据
SIGNA 的 Image State Analyzer 可以显示文件中能够读取到的部分图像状态信息,包括在存在时观察到的某些软件或工作流程声明。SIGNA 的原则是让这些观察保持为独立信息,而不是把它们自动转换成所有权、原创性、作者身份或 AI 生成结论。
“没有发现”同样需要谨慎解释。如果某个字段或工作流程记录没有被找到,支持的结论只是“本次检查没有观察到该记录”。它不是“未编辑”“真实原图”或“非 AI”的证明。
可靠的分析应同时说明:观察到什么、这条记录可能如何产生,以及仅凭它还不能说明什么。
元数据只是图像取证中的一种证据
判断图片是否经过编辑时,还应结合压缩状态、缩放裁剪、软件声明、水印信号和可用的内容溯源信息。更完整的分析框架请参见 怎么判断图片是否被编辑过?
主要技术资料
CIPA — Exif 标准(包括 Exif Version 3.1)
Adobe — Extensible Metadata Platform (XMP)
IPTC — Photo Metadata Standard
使用 SIGNA 查看图像信息
在 SIGNA for Android 里,你可以先在设备端查看图片中可用的元数据和状态信息,再继续为分享前的图片添加可见水印或不可见的 SIGNA 信号。查看现有信息和准备分享图片,可以在同一个应用里完成。
