martes, 7 de octubre de 2008

Transformaciones por wavelets

Bueno, pues me animé hace unos días a realizar con esta excelente imagen de Maximo Ruiz un pequeño experimento con wavelets a partir de los datos en bruto.


A diferencia de lo propuesto por Maxi en Procesado básico de una toma, en PixInsight , en la que nos muestra la descomposición de la imagen por capas, yo he aplicado sobre toda la imagen transformaciones por wavelets, pero a través de una máscara. Esta máscara es una combinación de la luminancia y una máscara de estrellas, utilizando la siguiente expresión en PixelMath:

mask * ~star_mask

Todos los ajustes de wavelets los he llevado a cabo de forma completamente lineal, antes de cualquier función de transferencia de medios tonos. Previamente he neutralizado el fondo mediante el script JavaScript Background Neutralization escrito por Oriol Lehmkuhl, el cual está disponible públicamente en: http://pixinsight.com/forum/viewtopic.php?t=799

Aquí podéis ver los resultados obtenidos en una comparación mouse-over. Por favor, situad el cursor del ratón sobre los enlaces de abajo y esperad hasta que carguen las imágenes:

http://astrosurf.com/astro35mm/tutorial/ngc253/mouseover_fa.htm

La primera transformación de wavelets es básicamente una técnica de restauración de imagen, en la que he realzado los detalles de pequeña escala y aumentado el contraste global en toda la galaxia, aplicando únicamente todos los parámetros sobre la luminancia.

La segunda transformación está pensada para realzar la crominancia de la imagen. Al incrementar el brillo y contraste de las pequeñas estructuras de la luminancia, casi siempre se produce una pérdida de saturación de color. En http://pixinsight.com/examples/deconvolution/Gemini-NGC5189/en.html Juan Conejero propone para el realce de saturación de color algo más elegante que un ajuste de color mediante curvas. Este procedimiento consiste en una función de transferencia hiperbólica. Y esto es precisamente lo que he hecho aquí. Esta función generalmente es aplicada sobre las componentes de gran escala sin afectar a las pequeñas, únicamente sobre aquellas estructuras representadas en la capa residual de una transformación por wavelets. Y por supuesto de forma completamente lineal.

Estos son los iconos de proceso utilizados en este ejemplo:


Para cargar los iconos de proceso en la plataforma de PixInsight Core 1.2 haced click con el botón derecho de ratón sobre el fondo de la aplicación y seleccionar Load Process Icons... Por último hay que hacer doble click sobre el icono de proceso y automáticamente PixInsight Core cargará los parámetros en la ventana de ATrousWaveletTransform.

Pues esta es mi pequeña aportación.