升级−50%
返回指南
指南
9 分钟

AI 图像检测是怎么工作的

来源标记、元数据和分类器分别做什么,以及何时会误判。

AI 图像检测不是测谎。它只回答一个更窄的问题:这张图看起来像不像最近的生成模型做出来或大幅改过的?Lumenfix AI 图像检测 在浏览器里跑完整套检查,图片不上传。「未检出」不等于「真实照片」。

为什么图片留在当前标签页

多数检测产品会把像素传到机房。新闻通稿可以,护照扫描、病历照片或别人未发布的原图不行。Lumenfix 检测页不产生服务端费用,隐私就是产品本身。开发者工具里应看到模型和 WASM 下载,不应看到 JPEG 上传。

代价是准确率要说实话。带人工复核的托管方案,在难例上会强过浏览器里约 45 MB 的 Vision Transformer。页上写的大致区间是:对近期生成模型约 85–90%,截图、重压缩和全新模型会更差。

第一层:确定性来源

这一层不下载分类器。

C2PA(@contentauth/c2pa-web)读取文件里的清单。生成器或编辑器签过名时,通常能看到产品名和校验状态。有效清单写明「由某模型生成」,就是这页最接近事实的结果。我们会直接显示,不会假装分类器更聪明。

元数据探针查找实际常见的痕迹:PNG 里的 Automatic1111 / ComfyUI 文本块、Midjourney XMP、IPTC DigitalSourceType=trainedAlgorithmicMedia,以及部分二次元模型用的 NovelAI 风格隐写。命中会按高置信度处理:这张图来自已知工具链。没有这些字符串什么也说明不了,很多生成器会清掉它们。

如果您要的是去掉清单,走错产品了。Lumenfix 不剥离 C2PA 或 SynthID。检测只读。

第二层:Community Forensics 分类器

确定性层没有结果时,页面加载 Sieve 的 v0.14 Community Forensics ViT-S/16(w5810_best_fp16.onnx,MIT)。SHA 固定,权重自己托管,不热链 GitHub。

预处理对齐 Sieve 的 offscreen.js:1:1 解码、Pillow 式三角重采样、短边 440、中心裁 384、ImageNet 均值和标准差、NCHW float32。运行时是 onnxruntime-web 1.22。只有真实 GPU 适配器才用 WebGPU;建会话后用固定输入和 WASM 对比,logit 偏差超过 0.5 就回退。可用 ?wasm=1 强制 WASM。

校准是 p = sigmoid(logit + 0.2)。≥ 0.65 判为 AI,0.25–0.65 为不确定,更低则判为看起来像实拍。这些阈值不是法庭标准,只是公开的工作点,方便对照。

门控很重要。20 像素图标会拒判。纯色和噪声不打分。明显的 JPEG 色块或放大痕迹,会改成「不确定 — 文件被重压缩或放大过」,而不是一条假的置信条。

推理在 Web Worker 里。首次访问大约下载 45 MB,之后走 Cache Storage。所以 LCP 还能看:首屏是文案和上传控件,不是模型。

第三层:取证只作附件

误差级分析、拉普拉斯噪声图和 EXIF 摘要(exifr)是附加信息,不是结论。ELA 很容易读过头。截图的截图会亮成一片,但仍可能是对着屏幕拍的实拍。这些面板用来看文件为什么「像处理过」,不是给弱分类器分数洗白。

什么会骗过这页

截图。社交平台再压缩。先打印再扫描。上周刚发布的生成器。手机厂商「AI 增强」滑块处理过的实拍。所以横幅写:未检出 ≠ 真实。

如果您已经确认是相机原图、只是想修好它,用照片增强图片放大。那些页会上传,因为要调用付费模型。不要和检测页搞混。

和水印检测的区别

SynthID 这类不可见水印是厂商方案。我们不提供非官方读取或破解。有 C2PA 就读 C2PA。没有就看元数据和分类器。这一版就这些。

怎么用

陌生人发来一张图、分享前想再看一眼,可以用。准备去掉文字时,想先知道字是不是生成的,也可以用。不要当争议证据。不要拿缩略图来测。

三层结论不一致时:先信签名清单,再信具体工具链字符串,再看校准分数,ELA 图放最后。

对比其他产品时,问三个常被避开的问题:会不会上传像素?检查点和预处理具体是什么?64 像素图标和「截图的截图」怎么处理?Lumenfix 把答案写在页面和这篇文章里,因为测不准、也复现不了的检测没有用。

可复现是为了这个:ONNX SHA 固定,重采样抄 Sieve,而不是随便 drawImage。预处理偏 1 像素,logit 就会动。apps/web/scripts/detector-parity.py 用来把 Python 基准和浏览器对到同一套权重。把样本放进 docs/bench/detector/,就能看「实拍 / 生成」是否落在 0.65 两侧。

人事或法律场景不在范围内。候选人作品集要人来判断。检测器只能告诉您文件里有没有 ComfyUI 块,不能告诉您人诚不诚实。不要把分数贴进拒信。

对产品来说,这页是为了排到 “AI image detector”,再把合适的流量送到增强和放大。文案必须克制。夸大准确率,只会换来一周外链和一年打脸截图。

手机用户第一次请用 Wi‑Fi。45 MB 权重之后会缓存,流量下首次加载体验很差,页上也会说明。之后只要 Cache Storage 还在,不应再下权重。

检测就是这样:本地、分层、故意有限。有用的不是一个百分比,而是文件里实际有什么。