AI 图片自带假水印或乱码签名:分清原因 + 6 步修复

角落的水印形污渍或假签名是训练数据残留,不是真水印。SD 系加负向词、裁角、或把角落 inpaint 掉即可。

一张看起来很干净的图,角落却有一块水印形状的污渍:通常是看不清的乱码、Shutterstock 风格 logo 的轮廓,或者像是潦草的签名。偶尔能看清 “shutterstock” 或 “getty” 字样,更多时候只是模糊的”水印形”幽灵。

最快的解法: 如果你用的是 Stable Diffusion 系模型(SDXL、SD 3.5、Pony、Illustrious),在负向 Prompt 里加上 watermark, signature, logo, text 再重抽一遍,大多数情况就没了。如果你用 FluxMidjourney,负向 Prompt 的机制不一样(见下文),直接裁掉外圈约 5%,或者把角落 inpaint 掉。

这是训练数据残留,不是追踪用的水印。模型训练时见过几百万张带水印的图库照片,于是学到”专业照片有时会带水印形状的痕迹”。它复现的是那个形状,背后并没有真正的 logo 或署名——这也是它通常一团乱码的原因。(这和 Google SynthID、C2PA 元数据这类隐形溯源水印是两回事,那些标识 AI 来源,重新生成是去不掉的。)

先分清你是哪一类

现象最可能的原因跳到
每次都在同一角落,中心干净分辨率 / 角落伪影原因 4、Step 3
能看清 “getty”/“shutterstock”/“alamy” 字样图库风格词或品牌名原因 2/5、Step 1-2
随机的水印状色块,每个 seed 都变没有负向词拦截(SD 系)原因 1、Step 1
换什么模型都出是图库风格词,不是模型原因 2、Step 2
只在某一个 checkpoint 出,别的干净checkpoint 训练数据带水印原因 3、Step 5

常见原因

按命中率从高到低排列。

1. 没有负向 Prompt 拦水印(仅 SD 系)

在 Stable Diffusion 模型上,负向 Prompt 不写 watermark, signature, logo, text overlay,模型一旦觉得”专业照片”该有水印,就会自由生成。注意:Flux 在标准 distilled/guidance 流程里不理会负向 Prompt,而 Midjourney--no 参数而不是单独的负向输入框,所以这条原因和 Step 1 专指 SD 系工具。

如何判断:你在用 SDXL/SD 3.5/Pony/Illustrious,且负向 Prompt 里缺这几个词。

2. 风格词触发图库训练数据

"stock photo style, professional photography, commercial photography,
high quality photograph, editorial photography, cinematic"

这些短语在带水印的训练数据里频率极高,模型把它们和水印形状本身绑在了一起。这也是唯一一条会跟着你换遍所有模型的原因,包括 Flux 和 Midjourney。

如何判断:Prompt 含 stock photoprofessional photographyeditorialcommercial——换成中性词(Step 2)。

3. checkpoint 训练含大量带水印图库

某些 checkpoint(老 SDXL 调优、某些 “photoreal” 融合模型、用粗筛网络抓取数据训出来的)水印残留比别的严重得多。

如何判断:同一 Prompt 跑公认干净的(Juggernaut XL v9+、RealVisXL v5+、FLUX.1 dev 或 FLUX.2 dev base)没水印——那源头就是原模型。

4. 在某些分辨率下角落容易出乱

某些模型在非原生分辨率下角落更容易出伪影(如 SDXL 跑 768×768,而它原生训练尺寸是 1024×1024)。中心没问题,角落堆垃圾。

如何判断:水印总在同一角落、中心干净——用模型的原生分辨率重跑。

5. Prompt 含品牌 / 媒体风格关联

shot like a Getty Images photoReuters styledocumentary press photography——这些在训练数据里都有品牌关联,模型在出那个观感的同时可能复现品牌水印。

如何判断:Prompt 指名了带水印的图库或通讯社品牌——删掉品牌名(Step 2)。

最短修复路径

Step 1:负向 Prompt 拦水印(SD 系)

SDXL / SD 3.5 / Pony / Illustrious,把这些粘进负向 Prompt:

watermark, signature, logo, text, text overlay,
stamp, copyright, branding, getty images, shutterstock,
adobe stock, alamy, depositphotos, watermark text,
attribution text, artist signature, frame border, photo frame

单这一项就能解决约 70-80% 的 SD 系情况。负向词要紧扣实际问题——SDXL 在负向 Prompt 堆太多无关词时容易把细节抹平,所以这里别再塞一堆通用画质词。

Midjourney(当前默认的 V8.1,以及 V7)改用 --no 参数,而不是单独的负向输入框:

--no watermark, signature, text, logo

注意 --no 是逐词独立解析的(每个词大约施加 -0.5 的权重),所以词要简单、别有歧义。

Flux(FLUX.1 / FLUX.2 dev)不吃负向词,直接跳到 Step 2(改写 Prompt)或 Step 4(inpaint)。

Step 2:删触发水印的风格词

从正向 Prompt 删掉:

stock photo, stock photography, professional photography,
commercial photography, editorial photo, getty style,
shutterstock style, reuters style, AP photo

替换成中性描述:

photograph, 35mm film, natural photo, documentary,
candid moment, available light

这一招在所有模型上都管用,包括 Flux 和 Midjourney,因为它是直接移除触发源,而不是硬扛。

Step 3:裁掉外圈约 5% 再放大

水印残留几乎总藏在角落,裁一圈再放大就能清掉大部分:

# Photoshop / Pixelmator(手动)
1. 每边裁掉约 5%
2. 放大回原尺寸(bicubic AI 放大)
3. 完事——角落伪影没了

# 命令行(ImageMagick 7)
magick input.png -gravity center -crop 90%x90%+0+0 -resize 1024x1024 output.png

# 或者一开始就用更窄的比例构图
"... --ar 4:5"   # Midjourney:竖向画幅天然把角落裁掉

Step 4:inpaint 涂掉水印

如果不能裁切(必须保留完整画幅):

# 框住水印区域,只对那一块重新生成
- Photoshop / Affinity / Pixelmator:生成式填充 / 去除工具
- SDXL Forge / ComfyUI:用匹配周围的 Prompt 做 inpaint
- FLUX.1 Kontext:"remove the watermark in the corner"(自然语言编辑)
- Gemini "Nano Banana" 图像编辑:同上,自然语言去除
- Cleanup.pictures / Photoroom:一次性用的免费在线工具

现代 inpaint 工具是从周围像素重建,而不是简单盖一层,所以即使背景有纹理,补丁也能无缝融合。

Step 5:换 checkpoint

把同一 Prompt 拿到更干净的模型上试:

# 公认干净
- Juggernaut XL v9+
- RealVisXL v5+
- FLUX.1 dev / FLUX.2 dev base
- Midjourney V8.1 / V7(训练集过滤很严)

# 公认水印重(图库风格请避开)
- 老 SDXL base / 早期调优
- 通用 "photoreal" 融合
- 部分粗筛网络抓取的调优

Step 6:把生成质量拉高

# Midjourney V7(旧版)
--quality 1   # V7 的默认值;有效取值只有 0.25、0.5、1
              # 只影响首批 4 张草图,对放大 / 变体不起作用
              # 只有当你之前刻意调到 0.25/0.5 时才需要往上调
              # 注意:V8.1(当前默认)已移除 --quality;在 V8.1 上直接用默认
              # 模型,靠 Step 1-5 加 HD 模式即可

# SDXL
- 更多步数(30-40)+ 更好的 sampler(DPM++ 2M Karras)
- CFG 提到 6-7——你写了"不要水印"后,模型会更坚定地照做

怎么确认修好了

  1. 把每个角落和底边放大到 100-200% 看一遍,残留就藏在那。
  2. 用改好的 Prompt 抽 3-4 个 seed,别只看一张——单次干净可能只是运气。
  3. 如果你做了裁切或 inpaint,交付前用全分辨率检查补丁边缘有没有接缝或模糊光晕。

预防建议

  • watermark, signature, text, logo 固定写进 SD 的默认负向 Prompt 模板,把 --no watermark, signature, text 写进 Midjourney 预设。
  • 避开 stock photo / professional photography 风格词,用 photograph / 35mm film 替代。这是最高杠杆的习惯,因为它在所有模型上都生效。
  • 商业工作默认选公认干净的 checkpoint(Juggernaut、RealVisXL、FLUX dev)。
  • 交付前永远逐张检查角落。

常见问题

我没要水印,AI 为什么自己加? 它加的不是真水印。模型训练时见过几百万张带水印的图库照片,学到”专业照片有时带个水印形色块”,于是凭记忆把那个形状画了出来。背后没有 logo 文件,所以它通常是一团乱码。

Flux 上加了负向词也去不掉水印,怎么回事? Flux 标准流程不理会负向 Prompt,加 watermark 没有任何作用。在 Flux 上,请从正向 Prompt 删掉图库风格触发词(Step 2),或者把角落 inpaint / 裁掉(Step 3-4)。

去掉这种水印形伪影合法吗? 训练数据伪影并不是谁的真实 logo 或受版权保护的标记,从你自己的生成图上抹掉这块污渍一般没问题。这和把别人照片上的真实第三方水印抠掉不同,也和 SynthID、C2PA 元数据这类隐形溯源信号不同——后者标识 AI 来源,重新生成是去不掉的。

水印每次都在同一个角落,为什么? 那是分辨率 / 角落伪影的特征,不是内容问题。用模型的原生分辨率跑(SDXL 用 1024×1024),或者直接裁掉外圈约 5% 再放大(Step 3)。

图库风格摄影用哪些 checkpoint 最干净? 截至 2026 年 6 月,Juggernaut XL v9+、RealVisXL v5+ 和 FLUX dev 系都稳定干净。商业工作请避开老 SDXL base、通用 “photoreal” 融合和粗筛网络抓取的调优模型。

相关阅读

标签: #图像生成 #排查 #排查