remove-ai-watermarks 是一个 Python CLI 与库,从 AI 生成图片中一条命令移除可见水印(Gemini / Nano Banana 闪光 logo)、隐形水印(SynthID、StableSignature、TreeRing)和 AI 元数据(C2PA Content Credentials、EXIF、XMP「Made with AI」标签):可见水印用已知 alpha map 反演 + NCC 检测,隐形水印用 SDXL 扩散再生,元数据逐层解析剥离。
来源:README 首段 + Features + How it works + pyproject 查看 GitHub 仓库 →随着 Google SynthID、C2PA Content Credentials 等 AI 溯源体系铺开,以及 Instagram/Facebook/X 开始据元数据自动给图片打「Made with AI」标签,「如何移除这些水印/标签」成了一个有真实需求也有强争议的话题。remove-ai-watermarks 把可见水印反演、隐形水印扩散再生、元数据剥离三类能力做进一个离线 CLI,技术上相当扎实——对 Gemini sparkle 用 alpha 反演(0.05s 无需 GPU)、对 SynthID v2 用 SDXL 扩散管线(自承 SD-1.5 在 768px 打不过 v2 后已移除该路径)、还配 YOLO 人脸保护和 Analog Humanizer(注入胶片颗粒/色差以绕过 AI 图片分类器)。配套 raiw.cc 免安装 Web 服务。它的热度来自「对抗 AI 溯源」这个尖锐议题本身,技术完成度也确实高于一般脚本。
来源:README How it works / Supported models / raiw.cc针对 Gemini / Nano Banana 的闪光 logo(alpha blending 叠加),用从纯黑背景输出提取的已知 alpha map 做逆运算 original=(watermarked−α·logo)/(1−α);三阶段 NCC(归一化互相关)检测器动态定位水印位置和缩放,对裁剪/缩放后的图也有效;残留闪光边缘用梯度掩膜 inpainting 清理。约 0.05s/图、无需 GPU、确定性。
来源:README 'Removing the Gemini sparkle watermark' + src/gemini_engine.py对 SynthID、StableSignature、TreeRing 等频域/潜空间隐形水印,用扩散再生管线:图像 resize 到 ~1024px(SDXL 原生)→ VAE 编码到潜空间 → 加可控噪声(前向扩散)→ 去噪(反向扩散 ~50 步、strength 0.05)→ VAE 解码 → 升回原分辨率。2026 年 5 月起默认 SDXL,自承能打掉 Gemini 3 Pro 上的 SynthID v2,旧 SD-1.5(768px)打不过后已移除。
来源:README 'Removing SynthID and other invisible watermarks' + src/invisible_engine.py解析并移除触发平台 AI 标签的元数据:EXIF(prompt/seed/model hash/sampler)、XMP DigitalSourceType(trainedAlgorithmicMedia,Instagram/FB/X 据此显示「Made with AI」)、PNG text chunks(ComfyUI/A1111 参数)、C2PA Content Credentials(Imagen/DALL-E/Firefly 的密码学溯源 manifest,覆盖 PNG/JPEG/AVIF/HEIF/JPEG-XL),同时保留标准元数据(Author/Copyright/Title)。
来源:README 'Stripping C2PA, EXIF metadata' + src/metadata.py扩散再生前用 YOLO 检测图中人物并提取人脸,扩散后用软椭圆掩膜把原始人脸 blend 回去,避免扩散过程扭曲面部特征。src/face_protector.py 实现。
来源:README 'Face Protection' + src/face_protector.py可选注入胶片颗粒和色差(chromatic aberration),让输出在 AI 生成图片分类器看来更像「拍屏照片」,从而规避 AI 检测。src/humanizer.py 实现。
来源:README 'Analog Humanizer' + src/humanizer.py支持整目录批处理;三阶段 NCC 水印检测带置信度评分;设备自动检测 CUDA>MPS>CPU(可 --device 强制),首次运行自动下载 ~2GB 模型,可选 HF_TOKEN 接 gated 模型。CLI 一条命令同时做可见+隐形+元数据。
来源:README Usage / Installation + src/cli.py项目是一个聚焦的 Python 包,src/remove_ai_watermarks/ 按引擎分模块:cli.py(命令行入口)、gemini_engine.py(可见水印 alpha 反演 + NCC 检测 + inpainting)、invisible_engine.py(SDXL 扩散再生管线)、metadata.py(C2PA/EXIF/XMP/PNG 多格式元数据剥离)、face_protector.py(YOLO 人脸提取与回贴)、humanizer.py(胶片颗粒/色差注入)。数据流是「检测 → 按水印类型分派到对应引擎 → 可见走快速确定性反演、隐形走重型扩散再生、元数据走解析剥离 → 可选人脸保护与 humanizer」。依赖上轻量路径(可见+元数据)只要 pillow/numpy/opencv-headless,重型路径(隐形)才需 torch + SDXL(~2GB 模型)。设计判断:把「快速确定性的可见水印反演」和「重型扩散再生的隐形水印移除」分成两条独立引擎、按需加载 torch,是合理的取舍——大多数场景(元数据剥离、Gemini logo)无需 GPU 秒级完成,只有打 SynthID 才付扩散成本。代码组织清晰、职责单一。需要说明的是:这套架构的「能力」本身是在对抗 AI 内容溯源体系(SynthID/C2PA)和平台透明度标签,技术中立但用途有明确争议面。
来源:src/ 模块结构 + pyproject + README How it works中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成
pillow + numpy + opencv-python-headl…torch(可选 extra)+ SDXLYOLOC2PA / EXIF / XMP / PNG 元数据解析1. 隐私 / 去标识场景:移除 AI 生成图片里嵌入的 prompt、seed、model hash 等可能泄露生成细节的元数据;2. 去除可见 logo:把 Gemini / Nano Banana 输出的闪光 sparkle logo 反演掉,用于自有素材的二次处理;3. 研究水印鲁棒性:测试 SynthID/StableSignature/TreeRing 等隐形水印对扩散再生、裁剪缩放的抵抗能力;4. 批量清洗素材库:整目录批处理统一剥离 AI 元数据;5. 规避平台 AI 标签 / AI 分类器:移除 XMP DigitalSourceType 以去掉 Instagram/FB/X 的「Made with AI」标签、用 Analog Humanizer 绕过 AI 图片分类器——此类用途涉及平台政策与内容真实性边界,需自行评估合规性。
来源:README Features / How it worksv0.4.1(2026-05-17,pyproject 版本同为 0.4.1)。最近 5 个 release:v0.3.3 (2026-04-03) → v0.3.4 (2026-04-23) → v0.3.5 (2026-04-26) → v0.4.0 (2026-05-17) → v0.4.1 (2026-05-17)。0.4.0 前后正是默认管线从 SD-1.5 切到 SDXL 以应对 SynthID v2 的时间点。仍处 0.x 阶段。
来源:GitHub Releases API(5 个 tag)+ pyproject versionremove-ai-watermarks 在技术上是同类里做得相当扎实的一个:可见水印 alpha 反演、隐形水印 SDXL 扩散再生、多格式元数据剥离、YOLO 人脸保护分工清晰,README 也诚实记录了能力边界。但务必清楚它的性质——核心能力是对抗 SynthID / C2PA 这类 AI 内容溯源体系并移除平台 AI 标签,存在明确的滥用与合规风险。务实判断:1) 用于自有素材的隐私去标识(剥离 prompt/seed 等元数据)是相对中性的用途;用于规避平台 AI 标签、伪装来源则涉及平台政策与内容真实性,责任自负;2) 隐形水印移除要 GPU + ~2GB SDXL 模型才实用,且扩散再生会改像素、损细节,画质敏感场景慎用;3) 这是与水印体系的持续对抗,SynthID/C2PA 一升级对应路径就可能失效,别当成一劳永逸的方案;4) 「是否真移除」很多时候无法客观验证(闭源检测器),别盲信;5) 轻量用途(Gemini logo 反演、元数据剥离)无需 GPU、秒级完成,是它最稳的部分。
来源:综合分析