Cómo hacemos nuestros nonogramas

Cada rompecabezas aquí empieza como una imagen corriente y termina como una cuadrícula que puedes resolver solo con lógica. Entre medias, pasa por un proceso automatizado que rasteriza la imagen, comprueba si el resultado se puede resolver de verdad y descarta los que no. Esta página recorre ese proceso con honestidad — incluidas las partes que fallan, porque la mayor parte del trabajo consiste en rechazar rompecabezas malos, no en hacer buenos.

1. Empieza con una imagen

Un nonograma nunca es más que una silueta en blanco y negro: sin sombreado, sin color, sin detalle interior. Así que el primer paso es elegir una imagen de partida cuya forma se lea con claridad a una resolución minúscula: un animal, una fruta, un signo del zodiaco, un objeto cotidiano. Trabajamos con arte vectorial (SVG), PNG transparentes y fotos normales, organizados en paquetes temáticos de recursos, además de imágenes traídas mediante una búsqueda de imágenes integrada en la app.

Lo que importa en esta etapa no es lo bonita que sea la imagen, sino lo bien que su contorno sobrevive al ser reducido a una cuadrícula de 15×15 o 20×20. Una forma nítida y bien separada funciona. Una escena recargada con muchas piezas pequeñas superpuestas casi nunca lo hace, y más abajo veremos por qué.

2. Convertir una imagen en una cuadrícula

La imagen se rasteriza con una biblioteca de imágenes de verdad (la misma en la que los navegadores se apoyan para el SVG) y luego se reduce a un único valor blanco o negro por celda. No hay una única forma "correcta" de hacerlo, así que el proceso prueba varias: apoyándose en la propia transparencia de la imagen allí donde la tiene, en el simple brillo (oscuro = relleno) o — para un sujeto brillante y colorido sobre un fondo liso, donde el brillo por sí solo apenas lo separa — en la distancia de color respecto al fondo. Un zorro naranja claro sobre blanco es casi blanco en brillo, pero muy distinto en color; la máscara de distancia de color lo aísla con limpieza.

El umbral entre "relleno" y "vacío" se elige automáticamente con el método de Otsu (Otsu's method), una técnica estándar que encuentra el umbral de brillo que divide la imagen de la forma más limpia en dos grupos. Como no hay manera de saber de antemano qué tamaño, recorte y umbral se leerán mejor, el proceso genera muchas cuadrículas candidatas por imagen — distintos tamaños, distintos umbrales — recorta cada una a su contenido relleno y ajusta la forma a las proporciones de la cuadrícula, de modo que una corona ancha reciba una cuadrícula ancha en vez de quedar aplastada en un cuadrado.

3. Comprobar que realmente se puede resolver

Una imagen que le parece bien a una persona no es automáticamente un rompecabezas válido. Un nonograma de verdad tiene que poder resolverse solo con las pistas de sus filas y columnas y — algo crucial — tiene que tener exactamente una solución. Si dos patrones rellenos distintos satisfacen todas las pistas, el rompecabezas es ambiguo e injusto, porque quien lo resuelve siguiendo la pura lógica podría llegar correctamente a la imagen "equivocada".

Por eso cada candidato se pasa a un solucionador: aplica las mismas deducciones línea por línea que haría una persona y, allí donde la lógica por sí sola se atasca, recurre a una búsqueda exhaustiva para contar cuántas soluciones completas existen. Cualquier cuadrícula con cero soluciones (contradictoria) o más de una solución (ambigua) se rechaza en el acto. Esta comprobación de unicidad es la barrera más importante de todo el proceso.

4. Asegurarnos de que es lógica, no adivinanza

Tener una solución no es del todo suficiente. Un rompecabezas puede ser técnicamente único pero alcanzable solo por ensayo y error — rellenando una celda, siguiéndola hasta el fondo de la cuadrícula y retrocediendo cuando se contradice. Eso no es resolver; es adivinar, y hace que el rompecabezas resulte frustrante.

Para detectarlo, clasificamos lo difícil que es razonar cada rompecabezas. Los rompecabezas que salen de una lógica directa línea por línea son "simples". Un segundo nivel de deducción, bien estudiado (basado en la investigación publicada sobre la dificultad de los nonogramas de Batenburg y Kosters), resuelve la mayor parte del resto sin ninguna adivinanza. Todo lo que aún no puede zanjarse sin ensayo y error se marca como que requiere adivinanza — y para el catálogo cotidiano, esos se apartan en lugar de publicarse.

5. Por qué muchas imágenes nunca lo logran

Antes de cualquier trabajo de resolución, el proceso también predice si merece la pena siquiera intentarlo con una imagen, usando dos señales toscas pero honestas. Una es la separabilidad: con qué limpieza se divide la imagen en dos tonos siquiera — una fuente turbia y de bajo contraste es una mala apuesta a cualquier tamaño. La otra es el ajuste entre detalle y resolución: una imagen con muchísimos más rasgos finos que celdas tiene la cuadrícula acabará colapsando en un borrón.

Un ejemplo concreto de nuestras propias pruebas: una foto real de la Torre Eiffel produjo un candidato de 40×40 que superó todas las comprobaciones de resolubilidad — una solución única, una proporción de relleno razonable — pero se representó como un rectángulo macizo. El detalle reticulado de la torre y el desorden bajo ella se aplanaron en un único bloque indiferenciado. Técnicamente un nonograma válido; visualmente inútil. Casos como ese son exactamente lo que estas comprobaciones previas, junto con un vistazo humano, están ahí para frenar. Para dejar claros los límites: aquí no hay ningún modelo de visión — el proceso nunca reconoce *qué* hay en una imagen, solo mide lo bien que se convierte su forma. Por eso la decisión final sigue siendo de una persona.

6. Una valoración y una última mirada humana

Los rompecabezas que superan cada barrera reciben una valoración de dificultad a partir de su nivel de resolución y sus estadísticas de forma (cómo de rellena está la cuadrícula, si la imagen se sale por los bordes, etc.), que es lo que los ordena en colecciones fáciles, medias y difíciles. Luego una persona abre en nuestro editor de cuadrículas los que van destinados al catálogo, comprueba que la imagen se lee de verdad como lo que se supone que es, y ajusta o descarta cualquier cosa que las comprobaciones automáticas dejaron pasar pero no debían.

Es un proceso deliberadamente poco vistoso, y esa es la idea: la automatización existe para garantizar la justicia — una solución, resoluble con lógica — mientras que una persona vela por lo que un ordenador no puede juzgar, que es si la imagen terminada es buena.

Ese es todo el proceso, menos el código. Si prefieres resolver uno antes que leer sobre cómo se construye, el rompecabezas de hoy es un buen punto de partida.