[控场AI]
· 7 分钟阅读· 3,962 字

实测SynthID:截图、去元数据后检测还准吗?

实测SynthID:截图、去元数据后检测还准吗?

Google SynthID 水印在截图和去元数据后仍可检测,但存在漏检且负面结果仅代表未知。

文章实测了 Google SynthID 水印与 C2PA 元数据的可靠性。Gemini 生成图像同时携带 C2PA 签名元数据和 SynthID 像素水印。重新保存或截图后 C2PA 完全丢失,而 SynthID 在多数场景下仍能被 Gemini 检测到。但 AI 图像缩小后嵌入真实照片时出现漏检。SynthID 仅识别 Google 及 OpenAI、NVIDIA、Kakao 等合作方内容,其他生成器图像永远返回未检测到。提问措辞也影响结果。核心结论是:正面结果可信,负面结果只能视为「未知」,不能推断图像真实。开发者需注意解码再编码会丢失 C2PA,应通过 SDK 主动传递清单。

Google DeepMind 的 SynthID 水印已覆盖超过 1800 亿张图像和视频,其检测入口 SynthID Detector 也已向公众开放。但水印到底有多可靠?作者用 Gemini 生成的图像,测试了截图、去除元数据、嵌入真实照片等多种场景,结果揭示了不少值得关注的边界。

SynthID 可靠性实测

SynthID 与 C2PA:一张图里的两套标记

Gemini 生成的图片实际上携带两套独立标记。一套是 C2PA Content Credentials,即签名元数据,记录制作者、工具和编辑历史,体积约 6 KB;另一套是 SynthID,直接嵌入像素中。

两者的命运截然不同。作者将图像重新保存为 1080px JPEG 后,C2PA 清单完全消失,而 SynthID 水印依然存在。这意味着任何解码再编码的操作——缩略图、格式转换、尺寸调整——都会丢弃 C2PA,但 SynthID 在作者的测试中存活了下来。

读取 C2PA 很简单,用 c2pa-python(0.38.0 版本)即可解析出签发者为 Google LLC,操作为 c2pa.created,数字来源类型为 trainedAlgorithmicMedia——这是 IPTC 对生成模型媒体的标准分类。不想写代码的话,contentcredentials.org/verify 也能在浏览器中查看同一份清单。

但 SynthID 只能通过 Google 自家工具读取,这正是它的封闭之处。

C2PA(Coalition for Content Provenance and Authenticity,内容来源与真实性联盟)是一个由 Adobe、Microsoft、BBC、Truepic 等机构发起的开放标准,旨在为数字内容提供可验证的来源信息。它把制作者、工具、编辑历史等数据写入一个称为「清单」(manifest)的加密签名结构,通常嵌入在文件的元数据区域。由于签名绑定的是文件字节流,任何解码再编码的操作都会导致签名失效,因此 C2PA 的强项在于「完整传递」场景,比如新闻机构发布原图。

SynthID 则是 Google DeepMind 开发的像素级水印方案。它不依赖文件容器,而是在生成图像时通过深度学习模型将统计信号直接嵌入像素值中,使得水印在存在轻微变换(如有损压缩、裁剪、缩放)时仍能被专用检测器提取。代价是水印容量有限,只能回答「是否由某合作方生成」这一二值问题,无法承载丰富的溯源信息。两种标记互补而非互斥:C2PA 提供详细的历史记录但脆弱,SynthID 坚韧但信息量极小且生态封闭。

截图之后还能检测到吗?

作者用 Chrome 打开 Gemini 生成的图像,截屏保存为 2048×1523 PNG 后上传检测。两次运行中,Gemini 均回答"这张图的全部或大部分内容由 Google AI 编辑或生成"。第二次回答还特别指出"未检测到可靠的 C2PA 内容凭证",说明检测信号来自像素中的水印,而非元数据。

不过并非所有截图测试都一致。Digital Information World 在 SynthID Detector 网站上的截图测试——同一张图作为独立文件被标记,作为截图却未被标记。两组测试使用的工具不同(Gemini 应用 vs Detector 网站),不宜直接对比。但作者也承认,截图本身经过了缩放、浏览器重渲染和格式转换,是一种比原始文件更弱的测试条件。

Google 官方对 SynthID 图像水印的说明也较为克制:设计目标是抵御裁剪、添加滤镜、改变帧率和有损压缩,截图并不在这个列表上。

六个测试文件的实际结果

作者生成了两张 2400×1792 像素的写实图像,然后构造了六种测试文件。核心发现如下:

原始 Gemini 图像(含元数据):Gemini 从 C2PA 元数据中读出"由 Google LLC 使用 AI 创建,随后使用 AI 工具进行了编辑",完全没有提及 SynthID。

去除元数据、像素不变的文件:Gemini 两次均回答"这张图的全部或大部分内容由 Google AI 编辑或生成",信号来源是 SynthID。

截图文件(PNG):同样被标记,同上。

NASA 真实照片(2023 年肯尼迪航天中心):返回"未检测到可靠信号",无假阳性。

真实照片天空被 Gemini 修改:Gemini 读取修改后新增的 C2PA 签名,识别为"生成式 AI 创作并经生成式 AI 工具编辑"。

AI 图像缩小后粘贴到真实照片角落:返回"未检测到可靠信号"——漏检了。Digital Information World 也观察到类似现象:AI 图像覆盖新图超过一半面积时,Detector 网站判断为"不太可能来自 SynthID 合作方"。

一次负面结果意味着什么

作者的核心结论是:正面结果可信度高,负面结果只能视为"未知"。

原因有三。其一,SynthID 只识别合作方:Google 列出了自身、OpenAI、NVIDIA、Kakao,Apple 即将加入。Midjourney、Stable Diffusion 或任何不嵌入 SynthID 的生成器产出的图像,永远返回"未检测到水印",但这不代表图像是真实的。

其二,合成和局部编辑容易漏检。AI 图像缩小后嵌入真实照片的场景已被证实失败。

其三,检测工具本身出过问题。Lead Stories 发现,在同一对话中,Gemini 会对第二个文件重复第一个文件的判定结果,图像和视频均受影响。Google 随后声明修复已在全球推送,但作者仍坚持每个文件开启新对话来规避残留效应。

作者还发现提问方式会影响结果。最初询问"这张图是否由 Google AI 创建或编辑?请检查 SynthID 水印"时,Gemini 对去元数据文件回答无法检查水印;改用 Google 建议的措辞"这是 AI 生成的吗?"后,两次都成功检测到了水印。

假阳性与假阴性是理解水印可靠性的关键。假阳性指检测器把人类创作或非合作方 AI 生成的内容错误标记为「由 SynthID 合作方生成」,假阴性则指真实带有水印的图像因经过变换、尺寸过小、被遮挡等原因未能被检出。

在机器学习评估中,这两类错误率通常需要同时报告,但 SynthID 的检测端不公开其阈值和训练分布,外界只能通过黑盒测试估计。从作者和 Digital Information World 的测试看,假阴性风险明显高于假阳性——AI 图像缩小嵌入真实照片、截图上传到网站都可能漏检。而假阳性案例极少出现,Google 也强调其检测器有严格的误报控制。这种不对称意味着:检测到水印时,几乎可以确信图像来自合作方;未检测到时,则完全无法推断图像的真实性,因为漏检的路径太多。把「未检测到」解读为「真实」是常见的逻辑谬误,也是水印系统在取证场景中最大的认知陷阱。

实用检测建议

对于普通用户,作者给出了一条清晰的检查路径:在 Gemini 应用中开启新对话上传图片,问"这是 AI 生成的吗?"——有 C2PA 时它会读元数据,没有时它会读 SynthID 水印。需要覆盖合作方水印或查看图像中哪些区域最可能带有水印时,使用 synthid.com 的 Detector。要查看签名历史,则用 contentcredentials.org/verify。

对构建图像处理管线的开发者,有一个容易被忽略的坑:任何解码再编码的步骤都会丢失 C2PA 清单。如果产品需要溯源信息,应通过 C2PA SDK 主动传递清单,而不是依赖水印作为唯一保障。SynthID 虽然在这些测试中经受住了重保存和截图,但只有 Google 的工具能读取它。

至于文本水印,SynthID Text 是开源的,已集成在 Hugging Face Transformers 4.46 及更高版本中,作为 watermarking config 传递给 generate(),配有贝叶斯检测器。但文本检测是概率性的,作者未做测试。

最值得记住的原则:干净的结果应读作"未知",而不是"真实"。

对于要在生产环境中处理图像溯源的开发者,C2PA 提供了官方的 SDK 支持,例如 Rust 实现的 c2pa-rs 以及基于它的 Python 绑定 c2pa-python,还有面向 Node.js 的 @contentauth/c2pa-node。这些库允许在读取阶段验证签名,在写入阶段重新签名并嵌入清单,从而在解码/编码管线中主动保留 provenance 信息,而不是被动依赖像素水印。

实践上,推荐采用「双轨」策略:对高价值资产(如新闻图片、官方发布物),在每步处理后用 C2PA SDK 重新签名,确保元数据链路完整;对用户上传或社交平台转发的图像,由于元数据通常已被剥离,只能依靠 SynthID 等像素水印作为最后一道弱信号。值得注意的是,C2PA 规范本身也在演进,2.x 版本增加了对 AI 生成内容的明确标注字段(如 trainedAlgorithmicMedia 之外还支持 compositeWithTrainedAlgorithmicMedia 等),开发者在设计管线时应关注版本兼容性,避免因规范升级导致旧清单无法验证。

#SynthID#Google AI检测#AI图像水印#C2PA Content Credentials#SynthID Detector#AI图片鉴别#Gemini检测
分享:

相关推荐