OpenSynthID Detect v0.1
A surrogate model attempting to replicate Google's SynthID image watermark detection. This binary classifier predicts whether an image contains a SynthID watermark.
Model Details
Architecture: ResNet-34 backbone, modified for 6-channel input
Input: Image (automatically resized to 512px)
Output: Watermark probability (0.0 = clean, 1.0 = watermarked)
Threshold: 0.5 (Needs more testing and adjustements)
Input Channels
The model uses 6 input channels derived from the image:
RGB image (3 channels)
Wavelet-denoise residual (grayscale, 1 channel)
FFT log-magnitude (1 channel)
Carrier frequency mask (1 channel)
Usage
pip install -r requirements.txt
python infer.py --checkpoint model.pt --image path/to/image.png --size 512
Options
Flag Description --checkpointPath to .pt checkpoint (required) --imagePath to input image (required) --sizeResize target, default 512 --no-fftDisable FFT channel --no-carrier-maskDisable carrier mask channel
Limitations
This is an independent reverse-engineering effort and is not an official Google product.
Detection accuracy may differ significantly from the real SynthID detector.
Only tested on images generated by Google's image generation models that use SynthID.
Disclaimer
This model is intended for research purposes only. It is not affiliated with or endorsed by Google.