跳转至

核心算法汇总

本文档汇总项目中所有关键算法、公式和参数,供快速查阅。

Alpha 混合反转

场景:Gemini 可见闪光 logo 移除

\[ \text{original} = \frac{\text{watermarked} - \alpha \times 255}{1 - \alpha} \]
参数 说明
alpha_threshold 0.002 低于此值的像素不处理
max_alpha 0.99 防止除零
logo_value 255.0 白色 logo

NCC 水印检测(3 阶段)

场景:自动定位 Gemini 水印位置和尺度

阶段 1:多尺度空间 NCC

参数
搜索区域 右下角 256×256
尺度范围 16 ~ 120 px
步长 2
匹配方法 cv2.TM_CCOEFF_NORMED
尺度权重 \(\min(1.0, (\text{scale}/96)^{0.5})\)

阶段 2:梯度 NCC

Sobel → magnitude → matchTemplate

阶段 3:方差分析

\[ \text{var\_score} = \max\left(0,\ \min\left(1,\ 1 - \frac{\sigma_{\text{watermark}}}{\sigma_{\text{reference}}}\right)\right) \]

置信度融合

\[ \text{confidence} = \text{spatial} \times 0.50 + \text{gradient} \times 0.30 + \text{variance} \times 0.20 \]
参数
检测阈值 0.35
Logo 尺寸(大图 > 1024px) 96×96
Logo 尺寸(小图) 48×48

Inpainting 清理

场景:alpha 反转后的边缘修复

参数
Mask 方法 Sobel 梯度 → 归一化 → gamma(√) → 膨胀
膨胀核 MORPH_ELLIPSE (5, 5)
二值化阈值 30 (uint8)
Inpaint radius 10
Padding 32
混合权重 0.85
方法选择 gaussian / telea / ns

扩散再生(SDXL)

场景:不可见水印移除(SynthID 等)

image → VAE encode → add noise (strength=0.04) → denoise (2 steps) → VAE decode
参数 说明
strength 0.04 去噪强度
num_inference_steps 50 总步数
effective_steps 2 max(1, int(50 × 0.04))
guidance_scale 7.5 CFG
prompt "" 空提示
输入分辨率 1024px SDXL 原生

CtrlRegen 管线

场景:精细的可控再生(ICLR 2025)

参数
基础模型 Realistic_Vision_V4.0_noVAE
VAE sd-vae-ft-mse
编码器 facebook/dinov2-giant
Canny 低阈值 100
Canny 高阈值 150
ControlNet scale 1.0
IP-Adapter scale 1.0
guidance_scale 2.0
prompt "best quality, high quality"
分块 tile_size 512
分块 overlap 192

色彩匹配

参数
方法 hm-mkl-hm(两遍直方图匹配 + MKL 传输)
color-matcher

分块混合权重

\[ w_i = \begin{cases} 1.0 & \text{中心区域} \\ \frac{1}{2}\left(1 + \cos\left(\frac{\pi \cdot d}{\text{overlap}}\right)\right) & \text{边缘过渡带} \end{cases} \]

其中 \(d\) 为到边缘的距离。

强度预设

水印类型 Strength
StableSignature 0.04
DwtEctSVD 0.04
RivaGAN 0.04
SSL 0.04
Hidden 0.04
通用默认 0.35
StegaStamp 0.7
TreeRing 0.7
RingID 0.7

Humanizer

参数 说明
grain_intensity 2.0 ~ 6.0 高斯噪声 σ
chromatic_shift 1 ~ 3 px RGB 通道偏移

人脸保护

参数
检测器 YOLOv8n(class 0 = person)
回退 Haar Cascade + 20% 边距
椭圆 mask 中心比例 40%
高斯模糊核 max(w, h) // 4

C2PA 解析

格式 存储方式 移除方式
PNG caBX chunk 遍历 chunk,跳过 caBX
JPEG APP1 段 EXIF 清理
AVIF/HEIF ISOBMFF uuid box 顶层 box 遍历,跳过 C2PA UUID
JPEG-XL ISOBMFF jumb box 顶层 box 遍历,跳过 jumb

C2PA UUID:d8fec3d61b0e483c92975828877ec481