Calibrar un proceso fotoquímico es, en esencia, medir cómo responde de verdad al estímulo —en este caso, luz UV— y calcular la corrección inversa que compensa esa respuesta. Existen métodos de medición genéricos para otros procesos —tiras Stouffer, densitómetros dedicados—, pero quería un patrón de trabajo aplicable a cualquier impresora y soporte, para poder calibrar el proceso con equipos domésticos. Evidentemente, cuanto mejor sean la impresora y el escáner utilizados, mejores serán los resultados obtenidos. Como referencia general, las inkjet suelen ofrecer mayor resolución tonal que las láser.
Para lograr este fin, tras algún tiempo ajustando curvas a mano y desarrollando posteriormente la aplicación con ayuda de herramientas de programación asistida por IA, he creado CyanoLUT, una herramienta pensada para quien trabaja la cianotipia y quiere exprimir todo el rango tonal que el proceso puede dar, no solo intuirlo a ojo.
Las formas de onda muestran cómo la linealización redistribuye la información tonal a lo largo de la imagen en el margen reproducible, incrementando la separación entre niveles y aprovechando mejor el rango útil del proceso medido.
La aplicación es un único archivo HTML —puedes acceder desde aquí— que no requiere instalación ni librerías externas más allá de jsPDF (por CDN, solo para exportar el PDF de impresión). Se abre en cualquier navegador, tiene interfaz en español, inglés, francés y euskera, autodetectada según el navegador, y trabaja en dos fases:
- 01 · Generar cuña: en la primera pestaña se puede crear una cuña escalonada de 21 o 31 pasos, lineal en valor de gris, lista para imprimirse como negativo en acetato o poliéster. Descargable en PDF a tamaño real (sin escalado) o como PNG.
- 02 · Analizar y curva: en la segunda pestaña se carga el escaneo de la cianotipia hecha con la cuña, ya revelada y seca. Luego se marca manualmente el centro del primer y el último paso de la columna izquierda y se repite con las otras columnas; una vez marcadas, se hace clic en "Medir pasos" y la herramienta mide la respuesta real del proceso y genera la curva de corrección inversa. Se puede suavizar la curva e incluso descartar algún punto contaminado por un defecto conocido.
Todo el procesamiento ocurre en local: ningún dato ni imagen sale de tu ordenador.
01 · Generar cuña
02 · Analizar y curva
- Canal de medición: por defecto, rojo — es donde el azul de Prusia modula con más rango y mayor fidelidad a la respuesta física del pigmento (en mis pruebas, un 49% más de rango que midiendo luminosidad). También puede medirse
luminosidad, verde o azul, por si resulta útil al adaptar la herramienta a otros procesos con otro comportamiento cromático.
- Muestreo robusto: cada paso se mide por mediana (no media) sobre una ventana rectangular ajustable, proporcional a la geometría del parche, con previsualización en vivo del recuadro de muestreo antes de medir. La mediana descarta polvo, manchas o reflejos puntuales sin que arrastren el resultado.
- Homogeneizado de curva: activado por defecto, fuerza una curva monótona y suave combinando regresión isotónica ponderada (PAVA) con interpolación de Hermite que preserva monotonía (PCHIP). Elimina inversiones de tono que el ruido de medición introduce y que son físicamente imposibles en un proceso fotoquímico monótono, sin imponerle una forma teórica ajena a sus datos reales.
- Banda de sacrificio: opción pensada para impresión láser (especialmente en gama doméstica), dado que es posible que la primera franja de la hoja presente una ligera variación en la densidad de tóner que altere la linealidad de la cuña. Para evitarlo, la herramienta permite activar una banda de sacrificio: una barra negra sólida situada antes de la cuña que ayuda a estabilizar el proceso de impresión antes de llegar a los parches de medida.
- Descarte manual de puntos: para cuando un artefacto físico conocido (una mancha, un defecto de alguna hoja concreta) contamina un punto ya medido. Se excluye con un clic, se reconstruye por interpolación con sus vecinos sanos, y queda trazado en la tabla y en el .csv exportado. Es un parche de calibración, no una forma de maquillar datos: solo limpia esa medición concreta, no corrige la causa del defecto.
- Exportación: curva de corrección lista para Affinity (.cube), para Photoshop (.acv) o como tabla de datos (.csv), para aplicarse sobre el negativo en escala de grises antes de imprimir.
No pretende ser un densitómetro profesional ni sustituir el criterio del ojo entrenado — es una herramienta de campo, pensada para el flujo de trabajo real de quien imprime en casa o en un taller pequeño: impresora láser o inkjet doméstica, escáner plano, acetato, PET, etc.
Está configurada por defecto para cianotipia (canal rojo y cuñas de 21 o 31 pasos), aunque el canal de medición puede seleccionarse libremente, lo que permite utilizarla también con otros procesos fotográficos alternativos de tono continuo.
No tengo datos propios de esos procesos, así que lo que sigue son solo hipótesis de partida, no recomendaciones medidas — de hecho, para cianotipia yo creía que el mejor canal sería la luminosidad, y al medir ganó el rojo por un margen amplio. Con esa advertencia por delante, por dónde empezaría a buscar:
La lógica es siempre la misma: medir en el canal opuesto al color de la copia, donde el material absorbe más y por tanto discrimina con más rango. Pero es solo el punto de partida; la medición decide. Lo cuento con más detalle en [el artículo — enlace].
El proyecto es de código abierto y está en un único archivo autocontenido, sin dependencias de servidor: una vez descargado, funciona sin conexión indefinidamente.
Algunas decisiones técnicas del funcionamiento interno:
- Regresión isotónica ponderada (PAVA): es el método que endereza la curva forzándola a crecer siempre, sin retrocesos. Los pasos de la cuña que "no discriminan" (los que apenas cambian de tono respecto a sus vecinos, típico de las luces más claras o de las sombras más densas) pesan menos en ese ajuste, pero nunca cero — ante la duda, no se recorta información.
- Curva suave que respeta la forma (PCHIP): entre los puntos medidos hay que trazar una curva continua. Se hace con un método (una spline de Hermite, en la variante Fritsch-Carlson) elegido porque respeta la subida de los datos sin inventarse ondulaciones, a diferencia de una curva genérica que podría rizarse entre punto y punto.
- Ajuste teórico explorado y descartado: probé ajustar la respuesta a una fórmula matemática de saturación (tipo Weibull) en vez de dejar que la marcaran los datos. No encajaba: se desviaba de forma sistemática en la mitad superior de la curva y sus parámetros quedaban indeterminados. La conclusión fue que, sin una fórmula bien establecida para la cianotipia, es mejor no imponer ninguna y dejar que hablen las mediciones reales.
- Corrección inversa (LUT): es la tabla que traduce cada tono del negativo a su tono corregido. Se construye con dos salvaguardas: se garantiza que la curva no retroceda nunca, y se tratan con cuidado los tramos en que varios pasos miden la misma densidad, para no introducir saltos que en la copia impresa se verían como posterización — escalones bruscos de tono donde debería haber un degradado suave.
Puedes acceder desde aquí al GitHub del proyecto.
última actualización: 31 de Agosto de 2026