Sobre el proyecto
Este repositorio documenta un esfuerzo independiente de ingeniería inversa contra la marca de agua invisible de imagen SynthID de Google, utilizando solo procesamiento de señales y análisis espectral, sin acceso al codificador o decodificador propietario. Incluye tanto un detector de marcas de agua como varias generaciones de pipelines de eliminación de marcas de agua ("evasión").
Capacidades clave reportadas:
- Un detector que identifica marcas de agua SynthID, con el README afirmando aproximadamente un 90% de precisión.
- Descubrimiento de una estructura de frecuencia portadora dependiente de la resolución: los portadores se sitúan en diferentes bins de frecuencia absoluta según la resolución de la imagen, por lo que los libros de códigos almacenan perfiles separados por resolución y se auto-seleccionan en el momento de la evasión.
- Hallazgos de consistencia de fase: la plantilla de fase se describe como idéntica entre imágenes del mismo modelo Gemini, con el canal verde llevando la señal más fuerte y la validación cruzada en blanco y negro utilizada para confirmar los portadores reales.
Generaciones de evasión:
- V1: línea base de compresión JPEG.
- V2: transformaciones de múltiples etapas (ruido, color, frecuencia).
- V3: sustracción espectral de libro de códigos multiresolución, reportada a 43+ dB PSNR con una gran caída en coherencia de fase; se mantiene en el repositorio sin cambios.
- V4 (Ronda 06): un pipeline de siete etapas todo en uno que combina un viaje de ida y vuelta con el VAE de Stable Diffusion, deformación elástica, deformación geométrica global, redimensionamiento y compresión, ajuste de color/contraste, sustracción FFT de fase residual, y una cadena JPEG con ruido de luminancia y filtrado bilateral. Dos ajustes preestablecidos (`final`, `nuke`) se exponen a través de `--strengths`, y cada etapa está controlada por PSNR con reversión automática.
V4 también introduce un libro de códigos de consenso de fase entre colores construido a partir de múltiples imágenes de referencia de color sólido por modelo y resolución, perfiles por modelo para los modelos de imagen Gemini nombrados, y un bucle de calibración humano en el circuito que actualiza los pesos de los portadores a partir de la retroalimentación de detección manual.
Herramientas y flujo de trabajo:
- Proyecto Python 3.10+ con scripts para descargar imágenes de referencia de Hugging Face, construir el libro de códigos V4, ejecutar disolución por lotes y calibrar a partir de retroalimentación.
- Un enganche de detector de verificación de cordura para validar salidas contra el consenso del libro de códigos antes de la validación manual.
- Una adición de bifurcación que proporciona una GUI de escritorio de arrastrar y soltar para la evasión V3, por lo que no se necesita línea de comandos después de la configuración.
- Las imágenes de referencia se alojan externamente para mantener el repositorio git ligero; se invita a los contribuyentes a enviar salidas puras en blanco y negro de Nano Banana Pro.
El README enmarca el trabajo como orientado a la investigación, incluye un historial ronda por ronda de intentos, y enlaza a un visualizador explicativo de SynthID y artículos relacionados.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.