Tutorial: eliminación de la textura de papeles antiguos

Es casi seguro que escaneando fotos antiguas os hayáis encontrado con alguna positivada sobre un papel con textura. Este tipo  de papeles fueron muy populares durante toda la primera mitad del Siglo XX e incluso llegaron hasta los años 70 en copias comerciales de blanco y negro y de color.

Independientemente de si nos gustan o no, el problema llega cuando queremos escanearlas porque su textura se traduce en manchas que salpican regularmente la imagen y que pueden hacerse más notorias en las zonas oscuras o claras.

Solucionar esto mediante un retoque manual es prácticamente imposible y, desgraciadamente, Photoshop no ofrece una herramienta directamente aplicable al problema. Sin embargo, hay una solución escondida bajo las crípticas siglas FFT o lo que es lo mismo Fast Fourier Transformation. Si estáis interesados en comprender en profundidad el funcionamiento de este algoritmo, Guillermo Luijk tiene una detallada explicación en esta página.

En el siguiente tutorial se puede ver cómo es posible descargar un programa gratuito de tratamiento de imagen usado generalmente para fines científicos, ImageJ, y con él darle una solución rápida a la eliminación de las texturas regulares del papel mediante un proceso extremadamente sencillo.

Una vez con el programa instalado y en marcha, la serie de comandos a aplicar en el programa ImageJ es la siguiente:

  1. Open file
  2. Ir a Process>FFT>FFT Options
  3. Marcar Complex Fourier Transform
  4. Pulsar OK
  5. Ir de nuevo a Process>FFT>FFT
  6. Tapar los puntos blancos que aparecen en la imagen (menos la estrella central) con la herramienta pincel (menos la central)
  7. Ir a Process>FFT>inverse FFT
  8. Guardar la imagen
Resultado de aplicar el proceso FFT

Por la red circula también un plug-in para Photoshop que aplica este mismo algoritmo. Por lo que he podido ver salió hacia 2005 pero, al menos en mi versión de Photoshop (CS5 64bits), no funciona.

De manera complementaria, otras técnicas posibles para disminuir la textura durante el escaneado serían las siguientes:

  1. Si el programa del escaner tiene la opción Destramar, seleccionarla
  2. Hacer 3 escaneados con el original colocado sobre el cristal a 45, 90 y 180 grados. La textura se verá diferente en cada uno de ellos.
  3. Llevar las tres imágenes a Photoshop tal cual, ponerlas una encima de otra en capas. Ir a Edición>Alinear capas automáticamente y con ello se pondrán todas en la misma dirección y a registro.
  4. Cambiar el modo de fusión de las dos capas superiores bien a Oscurecer bien a Aclarar, dependiendo de si la textura causa marcas blancas u oscuras

Con todo, este proceso pese a su laboriosidad no produce tan buenos resultados como el descrito en el video mediante la utilización de ImageJ.

Comparación de la misma zona de la fotografía antes y después de aplicarle el proceso FFT

 

25 COMENTARIOS

  1. Hola , excelente videotutorial, como siempre muy bien explicado y con todo lujo de detalles.
    Se me a ocurrido viendo el video, si se podría adaptar para reducir el ruido de una imagen, a lo mejor no tiene nada que ver, ¿o si?.
    Saludos.

  2. Gràcias por el tutorial, como venido del cielo. Vamos a hacer una exposición de fotografias antiguas de los oficios de mi pueblo y tengo varias fotografias que tienen esta trama. Voy a bajarme el programa y probarlo.
    Muchas gràcias de nuevo.

  3. Paco para reducir ruido aleatorio hay otros plugins y herramientas de Photoshop mejores. Esto es especialmente bueno para patrones repetitivos.

    Vicent, no sabes cómo me alegro de que os venga bien 🙂

  4. Como siempre muy bueno y muchas gracias.
    Me gustaría saber mas como escanear. Hay algún tutorial.

  5. Sí por supuesto, mencioné el de Windows a modo de ejemplo, pero por supuesto también está disponible para Mac y para Linux

  6. Muy bueno el tutorial también esta muy bien el programa lo estuve probando y es muy bueno pero supongo que hace mas cosas pero no encuentro ningún tutorial en español si alguien sabe de algún sitio para ir probando el programa pues parece que puede dar mucho de si.
    Gracias de por anticipado

  7. Muchas gracias por compartir el tutorial. El plugin para PS da unos resultados espectaculares. Habría que probar a eliminar los puntos de los picos en el canal G mediante diferentes grises, o por clonación para ver qué ocurre… Saludos y gracias de nuevo.

  8. Decir que con el plugin de photoshop consigo resultados mucho mejores que con el programa ImageJ (no sé si es que este no lo domino bien), pero tiene la paga del tamaño máximo (teóricamente de 4800 pixels) pero a mi no me funciona con imágenes superiores a 3500.

    Hablando de ImageJ, sólo hay que tapar los puntos que brillen más y con forma de estrella o cualquier tipo de punto claro que aparezca, aunque esté más difuminado. Es que como digo no le pillo el punto a este programa…

    Gracias

  9. Es interesante el tutorial.
    Para David al descargar el archivo del link, ya descomprimido, donde se instalan dichos archivos los he puesto en la carpeta «Archivos de Programa/ Adobe/ Adobe Photoshop CS6 (64 Bit)/Plug-ins, pero no me funcionan, ¿también hay que poner las .dll en el mismo lugar?

  10. Hola, muy buen tutorial! Lo estuve probando y tengo una consulta: es posible exportar la imágen producida en el proceso de FFT, corregirla con photoshop, y luego volverla a importar como si fuese el resultado del análisis FFT de la foto que hice en un principio para poder usarla para corregir la foto original? Me parece que el resultado final puede ser mucho mejor y sería mucho más fácil de hacer. Probando pude exportar la imágen resultante del análisis FFT (la constelación) pero no logro volverla a importar. Quizás no es posible. Alguien probó? Saludos

  11. Cuando me sale la pantalla con los puntos blancos para editar la foto, me sale tambien una pantalla negra. Imposible corregir la foto.
    Gracias

  12. Extraordinario.Hace mucho tiempo estábamos buscando algo que sacara el puntillado
    y no encontramos nada.Esto funciona mas que bien.
    Muchas gracias!!!

  13. Un tutorial estupendo, pero no consigo sacarle partido desde mi Mac con Snow Leopard. Mi pincel no «pinta» manchas negras para tapar las estrellas, sino BLANCAS y el resultado es una imagen negra en la que se vislumbra difícilmente la trama del papel de la imagen original. Quizá en el Mac no está conseguido el resultado o quizá hay algo que yo no hago bien.

  14. Me corrijo: Mi pincel SÍ pinta manchas negras después de haber seleccionado el color (picando dos veces sobre el cuentagotas) y de el tamaño que se ve en el tutorial después de elegirlo en la opción de pincel (picando dos veces sobre el pincel).
    De esta forma, la imagen conseguida ya es visible perfectamente, pero con un resultado NULO, puesto que no corrige ABSOLUTAMENTE NADA de la trama de la imagen tras haber marcado todas las estrellas excepto la central.
    He añadido un componente que, al parecer, resulta imprescindible para el funcionamiento de la aplicación, llamado ij.jar y que debe colocarse en la carpeta plugins/jars (se trata de un plugin en java recomendado por el desarrollador del programa).
    Todo esto que he averiguado por mí mismo (no por aportación del tutorial que se muestra en esta página) no ha obtenido resultado alguno. Tras el «tratamiento», las fotografías quedan EXACTAMENTE IGUAL que antes de realizarlo, es decir, con la misma textura del papel fotográfico.
    Existe un plugin para Photoshop, llamado Joofa Photoshop Plugins, que tiene el mísmo método de trabajo (FFT e IFFT) pero que SÍ funciona, aunque el resultado es muy pobre y deja la fotografía llena de pequeñas manchas prácticamente imposibles de eliminar.

  15. Ramón, no tengo idea de qué te estará fallando, pero lo cierto es que como se puede ver lo que se cuenta en el tutorial funcionó perfectamente cuando lo hice en directo sin más pasos que los que se muestran.

  16. Pues, efectivamente, yo tampoco lo entiendo. El principio que utiliza la aplicación ImageJ y el plugin Joofa para Photoshop, es el mismo, por lo que deberían funcionar igual (con mayor o menor calidad dependiendo de los algoritmos utilizados).
    Con el plugin Joofa (también gratuito) estoy consiguiendo algunos resultados bastante buenos en fotografías en blanco y negro (sin hacer caso a un tutorial que anda por YouTube), pues una vez «limpiada» la imagen en el canal del rojo, generalmente el canal del azul queda muy limpio y sin marcas de textura, así que, tratándose de una imagen en blanco y negro, lo que hago es copiar el contenido del canal azul en los canales verde y rojo, con lo que obtengo la imagen definitiva, en blanco y negro, bastante presentable.
    No he hecho aún ninguna prueba con una imagen en color, por lo que no sé cuál sería el resultado, aunque me temo que crearía un conflicto bastante grave, puesto que al eliminar el canal del rojo (el que contiene la machas que tapan las estrellas), la imagen se convierte automáticamente en multicanal y si volvemos a convertirla a RGB, el canal rojo quedaría simulado a partir de la información mutilada que proporciona el multicanal con sólo dos canales.
    En cuanto tenga la oportunidad, haré una prueba y la comentaré en este mismo blog (todo sea por la recuperación de la memoria fotográfica).

  17. Como me temía, el plugin Joofa para Photoshop sólo funciona con imágenes en escala de grises, porque la corrección de la textura se realiza en el canal verde desde el canal rojo, mientras que el canal azul queda con toda la textura, sin ninguna modificación.
    Sin embargo, eso no inutiliza este plugin para el tratamiento de imágenes en color, aunque lo complica bastante, pues hay que copiar y tratar canal por canal, devolviéndolo después a su lugar original. Me explico:
    Copiamos el canal rojo a un nuevo documento, que convertimos a RGB y tratamos con el filtro Joofa; una vez limpiado, el resultado lo volvemos a copiar en su lugar del documento original.
    Repetimos la acción con el canar del verde y después con la del azul.
    Nos desacemos del documento en el que hemos hecho los tratamientos, mientras que en el documento original tendremos los tres canales ya limpios.
    Es una solución, aunque bastante incómoda, pero el problema de ImageJ es que, respetando el tratamiento en color, necesita una considerable cantidad de RAM libre, al menos 3 Gb para tratar imágenes de cierto tamaño y resolución alta. En caso de tener menos, nos encontraremos con un desagradable cuelgue o un aviso de que no ha podido completarse la operación por falta de memoria.

  18. Buenas noches. Sólo un pequeño apunte teórico. El espectro es simétrico, así que sólo habría que tapar con puntos negros una de las mitades de la imagen. Saludos.

DEJA UNA RESPUESTA

Por favor, haz tu comentario
Por favor, introduce tu nombre