M81 & M82
por Alejandro Tombolini
Introducción
Imagen de Manoj Koushik publicada en Image Processing Challenges - Postprocesamiento lineal y no lineal de una imagen tomada con Luna y que tiene gradientes - Notas Principales: CanonBandingReduction para sacar las bandas verticales, DBE para remover gradientes, Morphological Transformation para reducir las estrellas. Fecha: Junio 2016.
Procesamiento
Usé para este ejemplo de procesamiento cuatro imágenes previamente integradas provistas por Manoj; Red_Driz_Master, Green_Driz_Master, Blue_Driz_Master y Syn_Lum_Master. Los filtros usados para obtenerlas son:
Astrodon 31mm Ha 20nm FWHM: 12x900" -20C bin 1x1
Astrodon 31mm Stromgren V: 12x900" -20C bin 1x1
Astrodon 31mm Stromgren Y: 12x900" -20C bin 1x1
El gradiente presente en las imágenes puede ser removido usando DynamicBackgroundExtraction con los parámetros detallados en la siguiente captura de pantalla. Aunque los gradientes son diferentes en cada imagen, he usado la misma instancia de DBE la cual funcionó perfectamente bien en todas ellas. También podría haber aplicado DBE después de combinar los canales.
Usando la herramienta ChannelCombination genero la imagen RGB
Como se puede ver en la siguente captura de pantalla hay algunas banda verticales en la imagen. Para removerlas uso el script CanonBandingReduction, pero previamente roto la imagen 90º ya que la herramienta puede solamente ser aplicada para bandas horizontales. Luego de reducir las bandas, roto la imagen de nuevo como estaba.
Apilico BackgroundNeutralization. Selecciono una vista previa que represente el fondo de la imagen y leo el valur máximo de pixel en Statistics.
Aplico ColorCalibration. Actualizo los valores de la referencia del fondo de la misma vista previa usada antes para la neutralización del fondo y dejo el resto de los valores por defecto.
Genero la PSF para ser usada en la Deconvolution.
Genero una máscara de estrellas usando la herramienta Starmask para proteger los centros de las estrellas durante la deconvolución. Para hacer esa máscara primero clono la imagen, copio los parametros de la STF al HistogramTranformation arrastrando el triángulo azul hasta la base del HT y luego aplico HT a la imagen.
Una vez estirada la imagen _clone, la suavizo removiendo tres capas en la herramienta MultiscaleLinearTransform.
Ahora aplico el proceso StarMask sobre el _clone para generar la máscara de estrellas usando los siguientes parámetros:
Protegiendo las estrellas con la star_mask1 aplico Deconvolution a la imagen. Este proceso va a resaltar los pequeños detalles en las galaxias y va a mejorar el perfil de las estrellas medianas y pequeñas.
Estiramiento no lineal usando la herramienta MaskedStretch.
Luego de estirar la imagen se revela que el tamaños de las estrellas es mucho más grande en el canal azul.
Seguidamente voy a reducir las estrella aplicando MorpholygicalTransformation a cada uno de los canales pero primero gener una máscara de estrellas usando la herramienta StarMask para proteger las galaxias y el fondo durante este proceso. También aplico una Dilation con el proceeso MorphologicalTransformation a la máscara para incrementar el area donde trabajaré con las estrellas.
MorphologicalTransformation al canal rojo protegiendo con la máscara de estrellas:
MorphologicalTransformation al canal verde protegiendo con la máscara de estrellas:
MorphologicalTransformation al canal azul protegiendo con la máscara de estrellas:
Junto los canales con la herramienta ChannelCombination
Ahora comienzo el procesamiento de la luminancia "Syn_Lum" siguiendo el mismo procedimiento de remosión del gradiente y corrección de las bandas verticales.
Aplico DynamicBackgroundExtraction
Roto la imagen y aplico el script CanonBandingReduction y luego roto la imagen nuevamente como estaba
Estiramiento no lineal de la imagen usando la herramienta MaskedStretch
También haré una reducción de las estrellas grandes de la luminancia protegiendo la imagen con la máscara de estrella usada previamente y aplicando MorphologicalTransformation
Aplico HDRMultiscaleTransform para comprimir el rango dinámico en las galaxias
LRGBCombination para agregar la luminancia "Syn_Lum" a la imagen RGB. Clono la imagen Syn_Lum_Master para usarla como máscara durante la combinación protegiendo el fondo.
Aplico SCNR para remover algo de verde. También protegiendo el fondo con la imagen Syn_Lum_Master_clone.
Luego inverto la máscara (Syn_Lum_Master_clone) y aplico el proceso GammaStretch para oscurecer el fondo.
Una pequeña reducción de rudio protegiendo con una nueva máscara. Para construir la máscara uso la herramienta RangeSelection y luego la multiplico por seis usando PixelMath
Aplico TGVDenoise a la imagen protegiendo el centro de las galaxias para reducir el ruido en la perisferia de las mismas y en el fondo del cielo
Invierto la rangemask y aplico CurvesTransformation para aumentar el contraste y un poquito la saturación.
Imagen final