Invita y gana

Cómo funcionan las recompensas

Comparte tu enlace. Cuando un amigo se registre con él y recargue saldo, recibirás la recompensa indicada por sus recargas posteriores.

De imagen a prompt JSON: flujo editable y verificable

Un método independiente del modelo para extraer solo evidencia visible, separar lo fijo de lo editable, generar variantes y aceptar el resultado con criterios claros.

Índice
De imagen a prompt JSON: flujo editable y verificable

Un prompt JSON creado a partir de una imagen sirve sobre todo como especificación visual editable. No es una máquina capaz de recuperar el prompt secreto con el que se produjo la imagen. El proceso útil consiste en describir solo lo visible, separar lo que debe conservarse de lo que se desea cambiar, generar varios candidatos y compararlos con la referencia mediante la misma lista de control.

JSON ayuda a aislar sujeto, composición, iluminación, color, materiales y texto. Sin embargo, los píxeles no revelan el modelo exacto de cámara, el tipo físico de una luz fuera del encuadre, el nombre preciso de una fuente, la semilla ni las palabras originales del creador. El objetivo, por tanto, es lograr una semejanza controlada y evaluable, no una reproducción píxel por píxel.

A continuación tienes un metaprompt listo para copiar, un esquema JSON, un método de edición y una prueba de aceptación.

Qué resuelve este flujo de trabajo

Úsalo para:

  • mantener la lógica visual de una referencia y modificar solo algunos elementos;
  • reutilizar la misma especificación con distintos modelos;
  • diagnosticar por qué una imagen “tiene el estilo” pero no la composición;
  • revisar de forma repetible fotografías, anuncios, carteles, interfaces e ilustraciones.

No presentes el JSON como el prompt original recuperado. Una imagen final no contiene todo el historial de generación, las referencias ocultas, las instrucciones ignoradas ni la posproducción.

Una buena especificación debe ser:

  1. Observable: cada afirmación se puede justificar con la imagen.
  2. Editable: cada dimensión importante tiene su propio campo.
  3. Verificable: cada campo corresponde a algo que puede revisarse en el resultado.

Qué necesitas

Prepara:

  • la referencia con la mayor resolución que puedas usar legalmente;
  • un modelo con capacidad visual;
  • un generador o editor de imágenes;
  • un lugar donde guardar JSON, versión del modelo, ajustes y salidas;
  • una frase clara que indique qué debe permanecer y qué puede cambiar.

Recorta la interfaz del navegador, comentarios y bordes ajenos al diseño. Mantén la relación de aspecto original salvo que cambiarla sea parte explícita del encargo.

La documentación oficial de OpenAI sobre imágenes y visión y la de Google sobre comprensión de imágenes muestran que los sistemas multimodales actuales pueden analizar entradas visuales. Sus herramientas de generación también admiten referencias o edición iterativa. El formato concreto cambia según el proveedor, por lo que este método se mantiene independiente del modelo.

Paso 1: extrae un JSON de observaciones

Envía la imagen junto con este prompt. Está diseñado para impedir que el modelo convierta suposiciones en hechos.

Actúa como analista de evidencia visual. Examina la imagen de referencia
adjunta y devuelve únicamente un objeto JSON válido.

Reglas:
1. Describe solo evidencia directamente visible.
2. No deduzcas causas ocultas, el prompt original, equipo de cámara exacto,
   fechas exactas, tecnología de luz invisible ni texto ilegible.
3. Usa null cuando un valor no pueda determinarse por la imagen.
4. Mantén las dimensiones visuales en campos separados.
5. Transcribe literalmente el texto claramente legible; no adivines letras.
6. Explica las relaciones espaciales: izquierda/derecha, arriba/abajo,
   primer plano/fondo, centrado/desplazado, tamaño relativo y solapamiento.
7. Antes de responder, busca contradicciones entre campos.
8. Usa frases concretas y completas, no listas vagas de adjetivos.

Devuelve esta estructura:
{
  "image_type": null,
  "subject": null,
  "action": null,
  "location": null,
  "composition": {
    "orientation_and_aspect_ratio": null,
    "framing_and_crop": null,
    "subject_placement": null,
    "spatial_relationships": null,
    "negative_space": null
  },
  "lighting": {
    "visible_direction": null,
    "apparent_temperature": null,
    "softness_and_contrast": null,
    "highlights_reflections_shadows": null,
    "unknown_causes": null
  },
  "color_palette": null,
  "materials_and_textures": null,
  "camera_and_focus": {
    "viewpoint": null,
    "perspective": null,
    "depth_of_field": null,
    "sharp_and_blurred_regions": null
  },
  "text_and_typography": {
    "verbatim_text": [],
    "placement_and_alignment": null,
    "size_hierarchy": null,
    "visible_lettering_style": null,
    "unreadable_text": null
  },
  "style": null,
  "mood_and_vibe": null,
  "uncertainties": [],
  "exclusions": null
}

Valida el JSON antes de generar

Comprueba cuatro puntos:

  • el objeto se puede analizar como JSON, sin comentarios, comas finales ni explicación adicional;
  • están todos los campos necesarios;
  • las incógnitas aparecen como null o en uncertainties;
  • no hay contradicciones internas.

Los ejemplos del flujo compartido por un usuario que inspiró esta guía muestran dos errores frecuentes. En una foto de un gato dentro de una nevera, la imagen sí permite observar luz fría en el interior y luz cálida en la cocina, pero no demuestra que la lámpara sea LED. En una captura de un sitio web, el análisis reconoce un titular alineado a la izquierda y, al mismo tiempo, llama “centrado” al hero. El primer caso es una inferencia sin apoyo; el segundo, una contradicción. Ambos deben bloquear la generación.

Paso 2: separa lo fijo, lo editable y lo desconocido

Clasifica los datos antes de reescribirlos:

EstadoSignificadoEjemplo
lockeddebe conservarseposición del sujeto, jerarquía, relación de aspecto
editablese cambia de forma deliberadacolor, escenario, titular
unknownla imagen no lo demuestralente, tipo de luz, familia tipográfica

Añade un objeto de control junto al JSON de observaciones:

{
  "locked": [
    "un sujeto principal en el tercio inferior izquierdo",
    "gran espacio negativo a la derecha",
    "luz lateral suave y contraste general bajo",
    "titular situado sobre la línea de apoyo"
  ],
  "editable": {
    "subject": "sustituir la taza de cerámica por una botella de vidrio transparente",
    "accent_color": "cambiar el rojo apagado por azul cobalto",
    "verbatim_text": ["NORTH", "STILL WATER"]
  },
  "unknown": [
    "modelo de cámara",
    "distancia focal exacta",
    "familia tipográfica exacta",
    "tipo físico de la luz fuera de cuadro"
  ],
  "hard_constraints": [
    "no añadir texto",
    "no cambiar el punto de vista",
    "no añadir objetos fuera de la distribución de referencia"
  ]
}

Esta separación comunica tres órdenes distintas: conservar, modificar y no inventar.

Elimina conflictos

Lee la especificación en lenguaje corriente:

  • un sujeto no puede estar centrado y alineado a la izquierda a la vez;
  • el recorte debe ser coherente con la relación de aspecto;
  • una luz suave no produce sombras de borde duro sin otra fuente;
  • “sin texto” no puede coexistir con un titular obligatorio;
  • un objeto no puede ocupar dos posiciones incompatibles.

El generador no tiene por qué resolver bien una especificación contradictoria. Puede elegir una opción al azar, mezclarlas o ignorarlas.

Paso 3: genera un primer lote controlado

Entrega el JSON y el objeto de control al generador. Adjunta también la referencia cuando la herramienta admita image-to-image o edición. Las guías oficiales de OpenAI y Google documentan flujos con imágenes de entrada e iteración, aunque las capacidades exactas dependen del modelo.

Puedes usar este prompt de entrega:

Crea una imagen nueva a partir de la referencia adjunta y la especificación JSON.

Prioridad:
1. Cumple hard_constraints.
2. Conserva todos los elementos de locked.
3. Aplica únicamente los cambios de editable.
4. Mantén unknown como desconocido; no inventes detalles técnicos.
5. Iguala primero composición y relaciones espaciales, después la textura.
6. El texto entre comillas debe aparecer exactamente una vez y sin palabras extra.
7. No copies marcas de agua, firmas ni logotipos protegidos.

Devuelve una sola imagen y no expliques el prompt.

Si el generador ignora JSON, presenta los mismos datos como secciones:

SUJETO:
COMPOSICIÓN:
ILUMINACIÓN:
COLOR:
MATERIALES:
TEXTO:
ESTILO:
CONSERVAR:
CAMBIAR:
NO AÑADIR:

JSON es el formato de edición y la fuente de verdad; no es un protocolo universal para todos los modelos.

En el primer lote:

  1. usa la misma relación de aspecto;
  2. registra la semilla si existe, sin esperar que funcione igual en otro modelo;
  3. genera tres o cuatro candidatos;
  4. guarda JSON, referencia, modelo y versión, ajustes y salida;
  5. identifica las ejecuciones como v01-a, v01-b y v01-c.

La señal de éxito no es “se ve bonita”. Es: al menos un candidato supera todas las puertas obligatorias y no falla en los campos visuales prioritarios.

Paso 4: puntúa la salida frente a la referencia

Compara ambas imágenes al mismo tamaño. Asigna:

  • 0: incorrecto o ausente;
  • 1: parcialmente correcto;
  • 2: coincidencia aceptable para el uso previsto.
CampoQué comparar
Sujetocantidad, rasgos, silueta, tamaño relativo
Composiciónposición, recorte, equilibrio, espacio negativo, solapamiento
Relaciones espacialesizquierda/derecha, arriba/abajo, delante/detrás
Iluminacióndirección visible, temperatura, suavidad, contraste, sombras
Colortonos principales, secundarios y de acento y su ubicación
Materialesbrillo, transparencia, tejido, grano, pelo, metal, papel
Textocontenido exacto, cantidad, ortografía, alineación, jerarquía
Estilo y ambientemedio, acabado, tratamiento visual, atmósfera

Puertas obligatorias:

  • no hay afirmaciones invisibles o sin apoyo;
  • no hay contradicciones;
  • el texto requerido es correcto;
  • las relaciones espaciales críticas se mantienen;
  • no aparecen objetos, palabras, logotipos o marcas de agua no solicitados.

La puntuación total sirve para ordenar candidatos, pero no compensa una puerta fallida. Una imagen atractiva con el titular equivocado o el diseño invertido sigue siendo un fracaso para ese objetivo.

Revisa de lo grande a lo pequeño

Orden recomendado:

  1. lienzo y composición;
  2. número, posición y escala de los sujetos;
  3. iluminación y masas de color;
  4. materiales y textura;
  5. tipografía y detalles pequeños.

No optimices la textura si el sujeto está en el lado incorrecto.

Paso 5: cambia un grupo de campos cada vez

Elige el mejor candidato como nueva base. Corrige únicamente el grupo asociado al fallo principal.

FalloCambiarConservar de forma explícita
Sujeto demasiado grandeposición y escala en compositionpunto de vista, luz, paleta
Diseño desplazadorelaciones espaciales y espacio negativoapariencia del sujeto, materiales
Escena demasiado cálidatemperatura y paletageometría y texto
Producto parece plásticomaterial, brillos y reflejosforma, posición, etiqueta
Texto mal escritotexto literal, cantidad y posicióntodos los píxeles no textuales si hay edición
Estilo correcto, identidad incorrectarasgos del sujeto o fuerza de referenciacomposición y fondo

Escribe: “Cambia solo el titular. Conserva el recorte, el punto de vista, la geometría, la iluminación, los colores y el resto del texto”.

Las guías oficiales de prompting recomiendan separar los cambios de las restricciones y refinar una sola cosa por iteración. Así puedes saber qué produjo la mejora.

Fallos habituales y recuperación

La salida no es JSON válido

Pide reparar la respuesta existente:

Repara el siguiente contenido para convertirlo en JSON válido.
Conserva todo lo respaldado por la imagen. No añadas nuevas afirmaciones.
Devuelve solo JSON.

Un esquema estructurado evita errores sintácticos, pero no garantiza que las observaciones sean ciertas.

El generador ignora los campos

Convierte el objeto en secciones de lenguaje natural. Coloca CONSERVAR, CAMBIAR y NO AÑADIR al final y elimina detalles secundarios que puedan ocultar las restricciones importantes.

La composición deriva

Añade relaciones concretas:

  • “el centro del sujeto está aproximadamente al 30% del ancho”;
  • “el borde izquierdo del titular comparte guía con la imagen”;
  • “el producto ocupa el tercio inferior”;
  • “la mitad derecha queda casi vacía”.

Las coordenadas orientan, no garantizan; inspecciona la salida real.

El texto exacto falla

Pon el texto entre comillas, indica cuántas veces debe aparecer y prohíbe palabras extra. Sigue un flujo text-first si el proveedor lo recomienda. Si el texto debe ser legal o comercialmente exacto, deja prevista la composición final en una herramienta de diseño. La documentación actual de OpenAI reconoce límites de colocación y claridad tipográfica; Google también recomienda generar primero el texto cuando la imagen lo contiene.

El personaje o producto cambia entre versiones

Usa la mejor imagen anterior como entrada de edición en lugar de empezar de cero. Repite un bloque corto de identidad, geometría y etiquetas. Compara varias ejecuciones: los proveedores advierten que la coherencia de personajes, marca y maquetación precisa puede variar.

La solicitud falla antes de producir una imagen

Guarda el error y el identificador de solicitud. Corrige autenticación, cuota, formato o moderación antes de reintentar. Aplica reintentos con espera solo a límites temporales o errores de servidor; modifica primero las solicitudes corregibles por el usuario.

Guarda un registro de aceptación

{
  "run_id": "v03-b",
  "reference_file": "reference.png",
  "analysis_json": "reference.v01.json",
  "generator_and_version": "registrar-el-valor-real",
  "settings": {
    "aspect_ratio": "registrar-el-valor-real",
    "quality": "registrar-el-valor-real",
    "seed": null
  },
  "scores": {
    "subject": 2,
    "composition": 2,
    "spatial_relations": 2,
    "lighting": 1,
    "color": 2,
    "materials": 1,
    "text": 2,
    "style_and_mood": 2
  },
  "hard_gates": {
    "unsupported_claims": false,
    "contradictions": false,
    "required_text_wrong": false,
    "critical_layout_wrong": false,
    "unrequested_elements": false
  },
  "decision": "accept",
  "next_change": null
}

Así “prefiero B” se convierte en una decisión auditable. También permite comprobar si cambiar de modelo mejoró el resultado o solo alteró el estilo.

Preguntas frecuentes

¿Se puede recuperar el prompt original exacto?

No. Solo se puede producir una descripción útil de la evidencia visible. El proceso original puede haber incluido referencias ocultas, seeds, ajustes, instrucciones descartadas, varias ediciones y posproducción.

¿Qué pongo en cámara e iluminación?

Describe efectos visibles: punto de vista, perspectiva, profundidad de campo, suavidad de sombras, dirección aparente y temperatura. No afirmes equipo exacto ni tecnología invisible sin otra fuente verificada.

¿Todos los generadores aceptan JSON?

No. Conserva JSON como especificación maestra y transfórmalo al formato que siga mejor la herramienta elegida.

¿Cuántas iteraciones hacen falta?

Empieza con tres o cuatro candidatos, elige la mejor base y modifica un grupo por ronda. Detente cuando pasen todas las puertas y nuevas variaciones ya no mejoren el uso real.

¿Basta una puntuación alta de similitud?

No. Puede ocultar texto incorrecto, diseño invertido, objetos extra o un logotipo inventado. La revisión por campos sigue siendo necesaria.

Fuentes y nivel de evidencia

La idea central no depende de una marca: conserva la evidencia observable en una estructura, formula los cambios de manera explícita y acepta el resultado comparándolo con la referencia.

¿Quieres optimizar tu flujo de trabajo con LLM?

Conecta modelos mediante una API, gestiona claves y controla el gasto en IA.

Empezar gratis