Tutorial de PixInsight Standard
Técnicas de Combinación LRGB en PixInsight Standard: Imagen CCD de M63 por Jim Misti

Por Juan Conejero (PTeam)
Datos raw adquiridos por Jim Misti

:: PixInsight Home Page

0. Introducción
Datos Originales
El proceso LRGBCombination en PixInsight Standard

1. Procesamiento de la Luminancia
1.1 Ajuste Inicial de la Luminancia
1.2 Procesamiento Multiescala de la Luminancia
1.2.1 Reducción Inicial de Brillo en el Núcleo
¿Por qué no DDP?
 1.2.2 La Transformación por Wavelets
El Camino Avanzado

2. Combinar los Datos RGB
2.1 Establecer Identificadores de Imagen
2.2 Realizar la Combinación RGB mediante la Interfaz LRGBCombination
2.3 Ajuste Inicial y Neutralización del Fondo de la Imagen Combinada RGB

3. Combinación LRGB
Comparaciones Mouseover

4. Procesamiento Final
4.1 CurvesTransform Final
Aplicar una Curva de Transferencia a la Luminancia versus Canal RGB Combinado
4.2 Ajustar el Brillo y el Balance Cromático del Núcleo

Imagen Final Procesada



0. Introducción

La combinación LRGB de datos raw de luminancia y color es una técnica de procesamiento fundamental en la producción de imágenes CCD en color. En este tutorial presentamos una implementación de software avanzada y rigurosa del procedimiento de combinación LRGB: el proceso LRGBCombination, incluido en el juego de módulos por defecto de la nueva aplicación PixInsight Standard. En el momento de escribir este trabajo, LRGBCombination está disponible en la versión beta pública de PixInsight Standard.


Datos Originales

Este tutorial ha sido escrito con una imagen CCD en color de la galaxia Messier 63. Los datos raw de luminancia y color RGB de esta imagen han sido adquiridos por Jim Misti, quien nos ha dado permiso amablemente para utilizarlos aquí. Los datos raw de esta imagen, junto con muchas otras de excelente calidad, pueden ser descargados libremente desde el sitio web de Jim Misti:

http://www.mistisoftware.com/astronomy/index_fits.htm

Desde esta página se puede descargar imágenes en formato FITS con los datos originales para la luminancia y cada canal RGB. Estas imágenes raw han sido registradas y están listas para ser procesadas, formando un excelente conjunto de datos para aprender técnicas de procesamiento y probar nuevos algoritmos. Queremos expresar nuestra gratitud a Jim Misti por esta importante contribución.


La galaxia M63. Datos raw originales adquiridos por Jim Misti y procesados por el autor con las técnicas descritas en este tutorial. Haga clic en la imagen para ver una versión mayor, de aproximadamente la mitad del tamaño original.


El proceso LRGBCombination en PixInsight Standard

Éste es un sumario de las principales características del nuevo proceso LRGBCombination:

  • Proceso de combinación LRGB realizado mediante implementaciones rigurosas de los espacios CIE Lab y CIE Lch definidos colorimétricamente. El proceso completo se desarrolla con perfecto aislamiento entre la luminancia y la crominancia de la imagen, de manera que no existen cambios en los tonos de los colores, ni transferencias de ruido entre crominancia y luminancia.
  • Los factores para cada canal individual RGB son aplicados en un rango dinámico uniforme. Cuando se efectúa la combinación de los datos raw RGB, los valores de píxel son reescalados para definir un rango uniforme común, donde la síntesis RGB produce blanco puro para los objetos que están saturados. Esto maximiza el uso del rango dinámico disponible y garantiza un balance cromático uniforme y correcto desde las sombras hasta las altas luces.
  • Factor de transparencia para la luminancia. Si es necesario, los datos de la luminancia pueden ser combinados con la luminancia resultante de los datos RGB.
  • Funciones de transferencia para luminancia y saturación de color. Se puede aplicar funciones de transferencia de medios tonos (midtones transfer functions, MTF) a la luminancia y a la componente colorfulness del espacio de color CIE Lch. La MTF de luminancia permite una adaptación precisa de los niveles de la luminancia a la información disponible para los canales RGB, lo cual es esencial para alcanzar la máxima saturación de color posible con el mínimo incremento de ruido en la crominancia. La MTF de saturación funciona conjuntamente con un algoritmo específico para reducción de ruido en la crominancia (vea el punto siguiente), permitiendo incrementos de saturación extremadamente elevados con virtualmente total ausencia de ruido en la crominancia.
  • Algoritmo de reducción de ruido en crominancia de altas prestaciones. Nuestro equipo de desarrollo ha diseñado un algoritmo multiescala (basado en wavelets) de reducción de ruido específico para la crominancia. Esta reducción de ruido se aplica en las etapas finales del proceso de combinación LRGB, como parte de la MTF de saturación de color (vea el punto anterior).

Aunque el tema más importante que vamos a tratar en este tutorial el la combinación LRGB, describiremos este proceso en el contexto de un ejemplo de procesamiento completo. No daremos todos los detalles de cada paso individual —lo cual requeriría varias veces el espacio que ocupa este tutorial—, pero esta es la mejor forma, en nuestra opinión, de proporcionar la necesaria perspectiva para explotar todo el potencial de nuestra implementación.


1. Procesamiento de la Luminancia

La Figura 1 muestra la luminancia raw de la imagen en la aplicación PixInsight Standard. La apariencia es típica de las imágenes CCD raw lineales: la mayor parte de la información está representada por valores de píxel muy bajos; sólo las estrellas más brillantes (saturadas) y el núcleo de la galaxia son claramente visibles.


Figura 1— La imagen raw de luminancia. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


1.1 Ajuste Inicial de la Luminancia

Para alcanzar niveles razonables, tenemos que expandir los datos en una porción mayor del rango dinámico disponible. Esto implica una transformación no lineal, y también algún recorte de datos espúreos en las sombras. Esta operación es crítica y debe ser llevada a cabo con gran cuidado y suficiente precisión.

Un error común es realizar esta transformación inicial mediante una serie (a veces bastante larga) de ajustes y recortes de histogramas sucesivos, aplicados directamente a los datos en formato de 16 bits. Aunque el impacto de estas prácticas sobre la imagen final puede variar bastante, éstas deberían ser siempre evitadas, especialmente porque no hay ninguna buena razón para acumular errores por redondeo y truncamientos en esta etapa inicial del procesamiento.

El ajuste inicial puede y debe ser llevado a cabo en una única operación, como la opción más saludable en el sentido numérico. Por supuesto, esto requiere una herramienta de alta precisión. Vamos a demostrar cómo esta tarea puede ser llevada a cabo con la interfaz HistogramTransform en PixInsight.


Figura 2— Ajuste inicial de la luminancia con la interfaz HistogramTransform, funcionando en modo de previsualización en tiempo real. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


La Figura 2 muestra cómo el ajuste inicial de la luminancia ha sido definido con precisión mediante la interfaz HistogramTransform. La previsualización en tiempo real (Real-Time Preview) ha sido completamente rediseñada y reescrita en PixInsight Standard, con respecto a la versión gratuita LE. En particular, entre otras muchas mejoras y funciones añadidas, el sistema de previsualización en tiempo real funciona internamente con imágenes de 16 bits, lo cual proporciona representaciones precisas de funciones de transferencia de medios tonos (MTF) extremadamente agresivas, como son necesarias habitualmente cuando se trabaja con imágenes CCD lineales.

En la Figura 2, observe los factores de ampliación (16x) que han sido utilizados para el histograma de entrada, así como la resolución de representación de 16 bits empleada. Ambos aspectos son importantes para definir una transformación de alta precisión. Los histogramas son generados y dibujados como gráficos vectoriales que pueden ser ampliados hasta mil veces.

La transformación de histograma aplicada ha sido definida con los siguientes parámetros (haga clic en la imagen de la Figura 2, de manera que pueda verificar los parámetros sobre la interfaz HistogramTransform a tamaño completo):

  • Recorte en las sombras (Shadows clipping): 0.0625. Este valor ha recortado el 1.27% del total de píxeles. La mayoría de los píxeles recortados proceden de un pequeño pico secundario, a la izquierda del pico principal del histograma. Estos píxeles se sitúan sobre filas y columnas muy oscuras en los bordes de la imagen, resultantes de la falta de datos al integrar varias tomas individuales registradas. Observe cómo el punto de recorte en las sombras ha sido situado justo al comienzo del pico principal.
  • Recorte de altas luces (Highlights clipping): 1.0 (sin recorte). Nunca recorte las altas luces de una imagen astronómica, a no ser que efectivamente exista una porción no utilizada del rango dinámico disponible, lo cual no sucede en la presente imagen.
  • Balance de medios tonos (Midtones balance): 0.025. Este valor es moderadamente agresivo, y necesario para alcanzar el nivel de brillo general que deseamos. El balance de medios tonos define una transformación no lineal que conocemos como función de transferencia de medios tonos (midtones transfer function, MTF).

    Un balance de medios tonos igual a 0.5 define una función de transferencia lineal, o una transformación identidad (i.e., no se produce cambio alguno). Los valores por debajo de 0.5 incrementan los medios tonos, mientras que los valores superiores a 0.5 oscurecen los medios tonos en la imagen. Las curvas MTF están implementadas mediante funciones especiales de interpolación racional en el entorno PixInsight/PCL. Un error bastante común es considerar que las curvas MTF son simples curvas gamma en PixInsight. En realidad, la interpolación racional produce curvas MTF mucho más flexibles, precisas y controlables en PixInsight que las curvas gamma en otras aplicaciones.


Figura 3— Verificando el histograma y los datos estadísticos, tras el ajuste inicial de la luminancia. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


Tras aplicar el ajuste inicial a la imagen raw de la luminancia, las interfaces Statistics e HistogramTransform son útiles para verificar el resultado. En este caso, se ha definido una previsualización para evitar áreas espúreas anormalmente oscuras debidas a discordancias en la superposición de tomas individuales registradas.

Para el usuario con inclinaciones numéricas, la ventana Statistics siempre proporciona información valiosa. Por ejemplo, en la Figura 3, es interesante comprobar cómo la diferencia entre la mediana y la media nos informa de una distribución de valores de píxel que no está muy concentrada en el interior de un pico estrecho. Esto se puede ver gráficamente en el histograma: el pico principal comienza a crecer muy rápidamente, casi de forma vertical, pero su flanco de bajada es mucho más suave. Cuando esto ocurre, la media se convierte en una mala estimación del valor central de la distribución, y por tanto su diferencia con la mediana crece en valor absoluto. La desviación estándar, como una medida del tamaño (anchura) del pico central de la distribución, confirma el hecho de que la imagen tiene sus píxeles distribuidos sobre un rango relativamente amplio de valores. Esto denota que los medios tonos están bien representados.


1.2 Procesamiento Multiescala de la Luminancia

La luminancia de esta imagen puede ser mejorada tremendamente en términos de visibilidad de detalles a escalas pequeñas e intermedias. La tarea de restauración de la imagen puede ser llevada a cabo en un contexto con justificación física, definiendo una PSF (Point-Spread Function, o función de dispersión de punto) adecuada y aplicando una deconvolución con la misma sobre los datos lineales, antes de la transformación no lineal inicial. Para esto se necesita la ayuda de una herramienta que permita inspeccionar los datos sin modificarlos, como la interfaz ScreenTransferFunction en PixInsight Standard, o las funciones de screen stretch disponibles en otras aplicaciones.

Una alternativa a la deconvolución, muy eficiente en términos de versatilidad y velocidad de ejecución, es aplicar técnicas de procesamiento multiescala, basadas en transformaciones por wavelets, a los datos no lineales. Éste el el camino que seguiremos en este caso.


1.2.1 Reducción Inicial de Brillo en el Núcleo

Antes de aplicar una técnica para potenciar detalles, tenemos un pequeño problema: el núcleo de la galaxia es my brillante. Estas regiones brillantes pueden limitar nuestras posibilidades de acentuar estructuras muy cercanas al núcleo mediante transformaciones por wavelets, a causa de la sobresaturación.


Figura 4— Sustracción de una máscara de gran escala para reducir el brillo del núcleo de M63. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


La Figura 4 muestra cómo hemos resuelto este pequeño problema. Una máscara específica ha sido construida en un duplicado de la luminancia, aislando estructuras a muy gran escala y aplicando un ajuste de histogramas. La máscara resultante se puede ver como la vista core_view en la Figura 4. La máscara ha sido restada de la imagen de la luminancia para reducir el brillo de la región central de la galaxia. Este trabajo ha sido realizado en PixInsight LE, ya que en el momento de escribir este tutorial todavía no hemos implementado herramientas basadas en wavelets en PixInsight Standard.

En la Figure 4, observe el factor 0.35 que ha sido aplicado a la máscara antes de su sustracción (el coeficiente K en la ventana Pixel Math). Controlando este factor y usando una previsualización, se puede reducir el brillo del núcleo con gran precisión. Fíjese también en la opción Rescale, necesaria para maximizar el uso del rango dinámico disponible.

Este paso inicial para controlar el brillo del núcleo es opcional. De no aplicarlo, en la posterior transformación por wavelets podríamos encontrar ciertas dificultades para desvelar todas las pequeñas estructuras que se encuentran muy cerca del núcleo. Existen alternativas a restar una máscara directamente de la imagen. En particular, se puede aplicar una ajuste de curvas (Curves en PixInsight LE o CurvesTransform en PixInsight Standard) exclusivamente a la zona central, cargando previamente core_mask como una máscara para la luminancia. Esta técnica proporciona aún más control y tiene menos problemas potenciales, pero es algo más compleja.

¿Por qué no DDP?

Muchos lectores pueden estar preguntándose ahora por qué no hemos usado DDP (Digital Development Processing). Por supuesto, es una alternativa, y de hecho hemos implementado DDP como un proceso de PixInsight Standard, incluyendo previsualización en tiempo real. Se trata de una cuestión de preferencias personales. En mi humilde opinión, DDP es una aplicación de la idea de comida rápida a las técnicas de procesamiento de imágenes: DDP es a las curvas aplicadas mediante máscaras como unsharp mask es a los wavelets: sencillamente, es demasiado burda.


Figura 5— Procesamiento multiescala de la luminancia. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


1.2.2 La Transformación por Wavelets

La Figure 5 muestra el montaje utilizado para el procesamiento multiescala de la luminancia. El proceso À Trous Wavelets ha sido aplicado en PixInsight LE. Este proceso es una herramienta extremadamente potente y versátil, la cual combina las tareas de realce selectivo de estructuras y reducción de ruido, permitiendo su adaptación mútua. Aparte de esto, nuestra implementación incluye un eficiente algoritmo de deringing (para evitar la aparición de anillos oscuros alrededor de objetos brillantes, por el efecto Gibbs), reducción de ruido por umbralización k-sigma, extensión del rango dinámico en el que se realiza la transformación, y la posibilidad de trabajar a escalas extremadamente grandes, de hasta 2048 píxeles. Las funciones de escala para la transformada por wavelets pueden ser definidas y modificadas arbitrariamente mediante un editor de filtros kernel integrado con gestión del almacenamiento de bancos de filtros en archivos de disco especiales.

Quizá el aspecto más interesante de nuestro procesamiento multiescala en este ejemplo radica en las máscaras utilizadas. En realidad, se han utilizado dos máscaras que han sido combinadas para proteger tanto las estrellas como las regiones de baja relación señal/ruido, donde las estructuras de pequeña escala no deben ser realzadas. Ambas máscaras se pueden ver en la Figura 5. La vista star_mask contiene la mayoría de los objetos estelares como una imagen invertida. Esta máscara ha sido construida mediante una técnica especial basada en wavelets, la cual excede los objetivos de este tutorial.. La vista wvlt_mask contiene un duplicado de la imagen al cual se le ha aplicado un ajuste de histogramas muy agresivo, tras lo cual ha sido multiplicado por star_mask. wvlt_mask ha sido cargado como una máscara para la imagen de la luminancia (Mask > Select Mask) que está siendo procesada. De esta forma podemos proteger las estrellas, el fondo, y parcialmente las regiones débiles de M63, mientras el realce de detalles mediante wavelets se aplica justo donde lo necesitamos.

La ventana À Trous Wavelets en la Figura 5 muestra la transformación por wavelets que hemos aplicado. Hemos actuado sobre tres capas de wavelets, correspondientes a las escalas de 2, 4 y 8 píxeles. En las escalas de 2 y 4 píxeles hemos aplicado el mayor efecto de realce de estructuras. La escala de 8 píxeles ha sido ligeramente potenciada para incrementar el contraste de los numerosos pasillos oscuros, que son estructuras relativamente grandes. Fíjese en los parámetros de reducción de ruido utilizados en las dos capas donde hemos incrementado más el valor de bias.

El algoritmo integrado de deringing debería ser utilizado en la mayor parte de los casos, pero es muy importante en imágenes como ésta, donde hay pequeñas estructuras de alto contraste que están siendo potenciadas considerablemente. Esta regla incluye el procesamiento de imágenes planetarias y lunares, no sólo las de cielo profundo. En el caso del presente ejemplo, el hecho de haber protegido convenientemente las estrellas mediante una máscara no elimina completamente la posibilidad de aparición de anillos oscuros. Hay también muchos objetos pequeños, como regiones HII por ejemplo, que pueden sufrir problemas de generación de anillos oscuros, aunque no sea de forma tan obvia como en el caso de las estrellas brillantes.

El Camino Avanzado

El procedimiento que acabamos de describir le dice la verdad sobre el procesamiento multiescala de imágenes de cielo profundo a escalas pequeñas e intermedias. Sin embargo, no le dice toda la verdad, ni mucho menos. Si quiere seguir un camino realmente avanzado, no puede manipular sus imágenes como una unidad: debe separarlas en al menos dos subimágenes que contengan, respectivamente, sólo las estructuras de pequeña y gran escala (y tal vez una tercera conteniendo sólo las estructuras a escalas intermedias), procesarlas por separado, y reunirlas para obtener una imagen procesada final. Naturalmente, esto no es ni fácil ni rápido. Si quiere leer un trabajo introductorio acerca de este tema, tenemos un tutorial específico escrito por el miembro del PTeam Vicent Peris.


2. Combinación de los Datos RGB

De vuelta en la aplicación de PixInsight Standard, vamos a combinar las tres imágenes raw de color individuales como una única imagen RGB. La Figura 6 muestra los tres archivos raw cargados y la interfaz LRGBCombination lista para realizar esta tarea.


Figura 6— La interfaz LRGBCombination preparada para combinar los datos RGB. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


Si se desea ver el contenido real de las imágenes raw lineales sin modificarlas, se debe usar la interfaz ScreenTransferFunction. Sin embargo, para nuestros propósitos, sólo queremos combinar estas tres imágenes para aplicar después una transformación no lineal, que será muy similar a la que aplicamos a la luminancia. ScreenTransferFunction no es estrictamente necesaria para realizar esta tarea en PixInsight.


2.1 Establecer Identificadores de Imagen

Antes de continuar, es muy importante asignar identificadores apropiados a las tres imágenes raw RGB individuales. En este ejemplo (Figura 6), los identificadores son M63_R, M63_G and M63_B, respectivamente. Por diseño, los sufijos _L, _R, _G y _B (también _l, _r, _g y _b) son utilizados por la interfaz LRGBCombination para buscar las imágenes apropiadas automáticamente, lo cual simplifica mucho la tarea.

Para asignar un identificador a una imagen, haga doble clic en el selector de vista principal, en la ventana de imagen, y se abrirá una caja de diálogo donde podrá especificar el identificador que quiera. Recordemos que un selector de vista es una de esas pestañas verticales que aparecen en el borde izquierdo de todas las ventanas de imagen en PixInsight. Puede también usar la interfaz ImageIdentifier (Process > Image > ImageIdentifier).


2.2 Realizar la Combinación RGB mediante la Interfaz LRGBCombination

Explicaremos ahora los parámetros relevantes de LRGBCombination. Puede que le convenga echar un vistazo a la Figura 6, especialmente a la copia de pantalla a tamaño real.

  • En el grupo Channels / Source Images, las imágenes raw RGB individuales, que han de ser imágenes monocromáticas en escala de grises, deben ser seleccionadas en sus correspondientes casillas. Observe que hemos desactivado la luminancia, puesto que (todavía) no estamos realizando una combinación LRGB. Para seleccionar una imagen correspondiente a un canal RGB, haga clic en el botón con una flecha hacia abajo, y se abrirá una caja de diálogo donde podrá escoger la imagen. Si tiene las imágenes identificadas con los sufijos _R, _G y _B, la caja de diálogo le presentará las imágenes apropiadas seleccionadas por defecto automáticamente.

    La lista Target es opcional; no tiene que seleccionar una imagen en ella. Sin embargo, si lo hace, la interfaz LRGBCombination limitará las imágenes seleccionables como canales RGB a aquéllas que tengan las mismas dimensiones que la imagen seleccionada como target. Esto es útil cuando se tiene muchas imágenes abiertas que podrían ser candidatas potenciales a canales RGB en una combinación.

    Por defecto, cuando no se selecciona una imagen como origen de datos para un determinado canal, la interfaz muestra la etiqueta <Auto>. Esto hace referencia a la capacidad del proceso LRGBCombination para seleccionar imágenes de canal automáticamente. Por ejemplo, suponga que tiene una imagen en color RGB cuyo identificador es MyRGBImage. Si también tiene abiertas MyRGBImage_R, MyRGBImage_G y MyRGBImage_B, como imágenes en escala de grises con las mismas dimensiones que MyRGBImage, no tiene que seleccionar imágenes para ningún canal en la interfaz LRGBCombination, porque el proceso generado lo hará por usted cuando lo aplique a MyRGBImage.

    El el ejemplo de este tutorial no necesitamos ninguna de estas capacidades extendidas, ya que lo único que queremos es generar una nueva imagen RGB combinada, y tenemos abiertas exactamente las tres imágenes raw requeridas. Por esta razón, la lista Target se ha dejado sin selección.
  • En el grupo Channel Weights debemos introducir los pesos, o factores de combinación relativa (combine ratios), para cada canal individual RGB. Todo el entorno PixInsight trabaja con valores de píxel y coeficientes normalizados de forma consistente, así que el hecho de que los factores RGB estén expresados en el rango de cero a uno no debería ser una sorpresa.

    Si está acostumbrado a trabajar con factores RGB arbitrarios, digamos por ejemplo 1.2:1.0:1.4, probablemente necesitará una calculadora de bolsillo, a no ser que tenga buenas capacidades de cáculo mental (lo cual he de reconocer que no es mi caso). Simplemente, divida todos los factores por el mayor de ellos, y obtendrá los valores normalizados que espera recibir la interfaz LRGBCombination. Por ejemplo, 1.2 : 1.0 : 1.4 corresponden a 1.2/1.4 : 1.0/1.4 : 1.4/1.4, o sea 0.85714 : 0.71429 : 1.0.

    La casilla de verificación Uniform RGB dynamic range se debe dejar activada, a no ser que se tenga una razón muy poderosa para hacer lo contrario. Si esta opción no está activada, el proceso LRGBCombination expresará los datos RGB resultantes en sus rangos dinámicos originales. Esto es realmente un error si se utilizan diferentes factores para cada canal, puesto que entonces una estrella saturada, por ejemplo, no sería blanca. Cuando se permite a LRGBCombination utilizar un rango uniforme común a los tres canales, el proceso reescala todos los valores RGB linealmente, teniendo en cuenta los diferentes pesos de cada uno, para asegurar que los tres canales resultantes están expresados en un único rango dinámico optimizado.
  • Los grupos Transfer Functions y Chrominance Noise Reduction no se utilizan normalmente cuando se está realizando una combinación RGB. Usaremos estos potentes recursos cuando hagamos la combinación LRGB. Por ahora, dejaremos los parámetros del grupo Transfer Functions con sus valores por defecto de 0.5, y la casilla de verificación Chrominance Noise Reduction desactivada.

Los factores normalizados que hemos empleado, 0.8:0.9:1.0, difieren ligeramente de los factores originales utilizados por Jim Misti (0.83...:1.0:1.0). Debemos señalar que no hemos puesto en práctica ningún método riguroso para obtener estos factores; simplemente hemos escogido esos valores tras realizar un pequeño trabajo de experimentación, que sin duda debería ser sustituido o mejorado con un procedimiento más robusto.

Una vez que hemos establecido todos los parámetros en la interfaz LRGBCombination, si hacemos clic en el botón Apply Global de la barra estándar de interfaz se generará una nueva imagen con el resultado de la combinación RGB. Apply Global es un pequeño botón circular azul en la barra de control de la ventana de interfaz (Figura 6).


Figura 7— La imagen combinada RGB recién generada por LRGBCombination. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


2.3 Ajuste Inicial y Neutralización del Fondo de la Imagen Combinada RGB

En la Figura 7 tenemos la imagen combinada RGB, tras LRGBCombination. Como en el caso de la luminancia, los datos lineales RGB deben ser expandidos mediante una transformación no lineal. De nuevo, esto se puede hacer con la interfaz HistogramTransform en PixInsight Standard. Sin embargo, esta vez vamos a lograr realizar dos tareas por el precio de una: al mismo tiempo que recortamos valores espúreos de píxel en las sombras y aplicamos una función de transferencia de medios tonos para expandir los datos, obtendremos un fondo neutro (sin tendencias hacia un color concreto), todo en una única operación.

Puede ver el montaje necesario en la Figura 8. El procedimiento básico es esencialmente el mismo que usamos para la luminancia (vea la Figura 2): el histograma es recortado justo donde empieza a crecer el pico principal, pero esta vez la misma operación debe realizarse para cada canal individual RGB.


Figura 8— Expandiendo los datos lineales de color y neutralizando el fondo en una única operación. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


La interfaz HistogramTransform puede ser utilizada para lograr un fondo neutro durante el proceso de ajuste de los histogramas. El recorte en las sombras (shadows clipping) tiene que ser ajustado con mucho cuidado para cada canal individual RGB, preferiblemente usando gran aumento, sobre el histograma de entrada (la gráfica situada en la parte inferior de HistogramTransform). El histograma de salida (parte superior) muestra una predicción del histograma como será después de aplicar el la instancia de HistogramTransform que estamos definiendo. Al hacer coincidir los tres picos de los histogramas en el histograma de salida, los parámetros de HistogramTransform estarán ajustados para producir un fondo neutro.

Hacer coincidir los picos de los tres histogramas a ojo sobre el histograma de salida puede funcionar bastante bien, pero si se desea un ajuste de alta precisión, o si resulta difícil interpretar las gráficas de los histogramas, se puede usar la interfaz Statistics con una o varias previsualizaciones distribuidas sobre zonas de fondo en la imagen. Esto es lo que hicimos en el ejemplo de este tutorial, como se muestra en la Figura 8. La neutralización del fondo se puede implementar como un procedimiento iterativo:

  1. Ajuste los parámetros de recorte en las sombras (shadows clipping) en HistogramTransform para cada canal, teniendo toda la imagen (y por tanto sus histogramas) seleccionada. Si se ha de variar el balance de medios tonos (midtones balance), hágalo sobre el canal RGB/K combinado de la interfaz HistogramTransform. Esto garantiza que se aplica la misma función de transferencia no lineal a los tres canales, lo cual a su vez asegura que no estamos introduciendo variaciones de color en toda la imagen (color casts).

  2. Aplique la instancia de HistogramTransform sobre una previsualización (o varias de ellas, si las tiene definidas).

  3. Teniendo la previsualización seleccionada en la interfaz Statistics, observe los tres valores de la mediana. Cuando estos valores estén muy próximos entre sí, el fondo del cielo en la previsualización será neutro: vaya al Paso 4. Si los valores no están muy próximos, proceda como sigue:

    • Tome uno de los tres canales como referencia. Por ejemplo, suponga que tomamos el verde como referencia. Entonces uno de los canales rojo y azul, o ambos, requieren más ajustes.

    • Si un valor de la mediana es menor que el valor del canal de referencia, el recorte en las sombras correspondiente (shadows clipping) necesita ser reducido, y viceversa. Realimente esta información saltando al Paso 1.

  4. Aplique la instancia de HistogramTransform a toda la imagen.

Nuestro equipo de desarrollo tiene prevista la implementación de un proceso para la neutralización automática del fondo, el cual será publicado como un módulo de la plataforma PixInsight Standard. Sin embargo, no es fácil alcanzar en un proceso automatizado las cotas de precisión y flexibilidad que son posibles mediante el procedimiento manual que acabamos de describir.


Figura 9— Otra instantánea durante el procedimiento inicial de ajuste y neutralización. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


En la Figura 9 puede ver dónde hemos definido una pequeña previsualización para controlar el fondo. Si es necesario, se puede usar la interfaz ScreenTransferFunction para mejorar la visibilidad de los datos, con el fin de asegurar la correcta localización de la previsualización y sus dimensiones. En la interfaz HistogramTransform representada en la Figura 9, fíjese en el valor del balance de medios tonos que hemos empleado: 0.005. Este valor define una función de transferencia no lineal muy agresiva, necesaria en este caso para sacar a la luz los datos de color aceptablemente.

La imagen RGB combinada, tras el ajuste inicial de histogramas con neutralización del fondo, se puede ver en una previsualización en la Figura 10. El resultado es una imagen con muy baja saturación de color. Sin embargo, toda la información de color que se puede apreciar en la imagen final procesada está ahí, representada como sutiles desequilibrios entre los canales RGB. Potenciar estos desequilibrios para producir una astrofotografía llena de color es un prodigio del procesamiento de imágenes digitales.


Figura 10— Ensayando la combinación LRGB sobre una previsualización de la imagen combinada RGB. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


3. Combinación LRGB

El montaje para la combinación LRGB se puede ver en la Figura 10. En la interfaz LRGBCombination, se debe prestar atención a los siguientes parámetros:

  • En el grupo Channels / Source Images los canales R, G y B han sido desactivados, ya que vamos a combinar la luminancia con la imagen RGB que ya hemos combinado y ajustado/neutralizado previamente. Cuando un canal está desactivado, LRGBCombination simplemente obtiene los datos de ese canal de la imagen destino (a la cual se aplica la instancia del proceso). Esto es justo lo que queremos.

    Para el canal de luminancia (L) se ha seleccionado la imagen de la luminancia que previamente hemos ajustado y procesado mediante wavelets. Es la imagen M63_wvlt_L en la Figura 10, que obviamente debe haber sido cargada. En la Figura 10, esta imagen aparece iconizada en la esquina superior derecha del espacio de trabajo.

    De nuevo la lista Target no es utilizada, puesto que no es necesaria para la tarea que vamos a realizar. Vea la Sección 2.2 para más información sobre la lista Target.
  • En el grupo Channel Weights, todos los pesos deben ser iguales a la unidad. Esto es porque no queremos alterar el balance cromático existente en la imagen combinada RGB que hemos ajustado anteriormente; hacer eso sería un tremendo error —cuyos efectos serían tan conspicuos que sería detectado inmediatamente, en cualquier caso.

    El factor (o peso) de la luminancia es en realidad un factor de transparencia. Si se le asigna un valor menor que la unidad, la luminancia de la imagen RGB destino (la imagen combinada RGB en este caso) se combinaría proporcionalmente con la luminancia origen (nuestra luminancia procesada en este caso). Una vez más, esto no es lo que queremos, ni mucho menos, así que los cuatro pesos van a ser iguales a uno.

    Como los tres pesos para los canales RGB son iguales, la opción Uniform RGB dynamic ranges es irrelevante. La dejaremos activada, que es su estado por defecto.
  • El grupo Transfer Functions es donde empieza la diversión de verdad. Ambos parámetros en este grupo son simplemente balances de medios tonos, los cuales definen funciones de transferencia de medios tonos (MTF) que son aplicadas, respectivamente, a la luminancia y a la componente colorfulness del espacio de color CIE Lch. Estos balances de medios tonos funcionan exactamente igual que sus homónimos en la interfaz HistogramTransform (vea el final de la Sección 1.1): un valor de 0.5 no cambia los valores existentes, < 0.5 aumenta los medios tonos (aclara), y > 0.5 los disminuye (oscurece).

    El parámetro luminance MTF puede ser utilizado, si es necesario, para adaptar la luminancia a los datos RGB existentes. Esto es muy importante, puesto que la luminancia y la crominancia en una combinación LRGB deberían estar bien igualadas en brillo para maximizar las posibilidades de incrementar la saturación de color con el mínimo incremento de ruido.

    El parámetro saturation MTF es uno de esos que le van a encantar de verdad, especialmente cuando descubra que tenemos una cura básicamente perfecta para el ruido de crominancia. Intente bajar el balance de saturación para aumentar la saturación de color en su imagen combinada LRGB o, por alguna inimaginable razón, súbalo para desaturar el resultado.
  • El grupo Chrominance Noise Reduction es lo que definitivamente va a hacerle insoportable vivir sin LRGBCombination. Seleccionando esta opción, entra en juego un algoritmo de reducción de ruido específico para la crominancia. Este algoritmo elimina todo el ruido introducido por la MTF de saturación. El resultado es que se puede incrementar salvajemente la saturación de color en la imagen combinada LRGB, obteniendo un resultado virtualmente libre de ruido en la crominancia, es decir, sin ruido en las componentes a y b de la imagen equivalente en el espacio CIE Lab.

    Considerando su complejidad, es sorprendente que este algoritmo de reducción de ruido sólo necesite dos parámetros simples para funcionar:

    • Number of smoothed wavelet layers (número de capas de wavelets suavizadas) determina en qué escalas el algoritmo va a aplicar reducción de ruido en la imagen. Más capas significa más reducción de ruido. Normalmente, un valor de 4 o 5 capas es apropiado para la mayoría de imágenes CCD.

    • Number of protected wavelet layers (número de capas de wavelets protegidas) define un conjunto de escalas donde el algoritmo prestará especial cuidado para preservar pequeñas estructuras en la crominancia. Más capas protegidas pueden ayudar a preservar la saturación de color de estructuras de pequeña escala, como estrellas muy pequeñas o galaxias de fondo, pero puede reducir comparativamente la eficiencia de la reducción de ruido. Este parámetro suele dar buenos resultados cuando su valor es S-1 o S-2, donde S es el número de capas suavizadas.

El proceso LRGBCombination debería ser probado sobre previsualizaciones relativamente pequeñas, ya que requiere bastante trabajo de computación, especialmente el algoritmo de reducción de ruido. Cuando se han encontrado los parámetros óptimos, el proceso debe ser aplicado sobre la imagen combinada RGB.


Figura 11— Probando la combinación LRGB con una función de transferencia de saturación agresiva y el algoritmo de reducción de ruido en crominancia activo. Haga clic en la imagen de la figura para ver una versión a tamaño completo.



Comparaciones Mouseover

Hemos incluido varias comparaciones mouseover que ayudarán al lector a evaluar los resultados de LRGBCombination. Son de particular interés las comparaciones que muestran los efectos de varios parámetros de reducción de ruido en crominancia.


Cursor fuera: Imagen combinada LRGB, sin incremento de saturación.
Cursor sobre: Imagen combinada RGB.


Cursor fuera: Imagen LRGB, saturación MTF = 0.04 + reducción de ruido: 4 capas suavizadas, 1 protegida.
Cursor sobre: Imagen LRGB, saturatción MTF = 0.04, sin reducción de ruido.


Cursor fuera: Imagen LRGB, saturación MTF = 0.04 + reducción de ruido: 5 capas suavizadas, 2 protegidas.
Cursor sobre: Imagen LRGB, saturación MTF = 0.04, sin reducción de ruido.


Componente CIE a de la imagen combinada LRGB. Mueva el cursor sobre uno de los siguientes enlaces:
Sin saturación de color.
Saturación de color = 0.04, sin reducción de ruido.
Saturación de color = 0.04, reducción de ruido en crominancia: 4 capas suavizadas, 1 protegida.
Saturación de color = 0.04, reducción de ruido en crominancia: 5 capas suavizadas, 2 protegida.


Componente CIE b de la imagen combinada LRGB. Mueva el cursor sobre uno de los siguientes enlaces:
Sin saturación de color.
Saturación de color = 0.04, sin reducción de ruido.
Saturación de color = 0.04, reducción de ruido en crominancia: 4 capas suavizadas, 1 protegida.
Saturación de color = 0.04, reducción de ruido en crominancia: 5 capas suavizadas, 2 protegida.


4. Procesamiento Final

La imagen LRGB tiene buen aspecto (o eso pensamos), pero aún necesita algo de trabajo. En nuestra opinión, se requieren los siguientes pasos de procesamiento:

  • La imagen presenta un ligero gradiente de color que debería ser corregido con el proceso DynamicBackgroundExtraction de PixInsight LE (ya que en el momento de escribir este tutorial la aplicación PixInsight Standard beta todavía carece de herramientas de modelado del fondo).
  • Se debería aplicar una reducción de ruido en la luminancia. Haremos esto con el proceso SGBNR en PixInsight LE.
  • La imagen se beneficiaría bastante de un incremento en los medios tonos. Esto se puede hacer con CurvesTransform en PixInsight.
  • Subiendo un poco el azul en los medios tonos podríamos hacer más relevantes los brazos espirales exteriores de M63. Esto se puede lograr con la misma instancia de CurvesTransform que usaremos en el paso anterior.
  • Finalmente, el núcleo de M63 debería ser más brillante y más amarillo. Esto se lograría fácilmente con CurvesTransform mediante una máscara.

No vamos a explicar nada sobre la reducción de ruido en la luminancia y la corrección de gradientes, puesto que estas tareas requerirían tutoriales específicos. El lector puede encontrar suficiente material de referencia entre los tutoriales de procesamiento y la documentación disponibles en nuestro sitio web.


4.1 CurvesTransform Final

La Figura 12 muestra la interfaz CurvesTransform trabajando en modo de previsualización en tiempo real. Como hemos dicho, en nuestra opinión la imagen combinada LRGB necesita un poco de azul en los medios tonos. En la misma instancia de CurvesTransform podemos solucionar este problema cromático y aumentar los medios tonos de toda la imagen al mismo tiempo. Elevar los medios tonos nos va a permitir mostrar una buena parte del halo exterior de M63.


Figura 12— La interfaz CurvesTransform trabajando en modo de previsualización en tiempo real, en un sistema con dos monitores. Observe las curvas definidas para el canal azul y la luminancia. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


Aplicar una Curva de Transferencia a la Luminancia versus Canal RGB Combinado

Hay que señalar que en esta etapa la curva para elevar los medios tonos debe ser aplicada a la luminancia de la imagen, no al canal combinado RGB.

Hemos obtenido excelentes resultados al hacer grandes esfuerzos para aislar la luminancia y la crominancia de la imagen durante todo el procesamiento (debería ser un programador y echarle un vistazo a algún código fuente para las herramientas que hemos aplicado para endender lo que queremos decir con esfuerzos). Por lo tanto, ¿por qué mezclarlos ahora con una curva aplicada igualmente a los tres canales R, G y B individuales? Si se hace eso, cierta cantidad de ruido podría transferirse desde la crominancia a la luminancia, y viceversa.

El proceso CurvesTransform en PixInsight le permite definir una curva específica para la luminancia, esto es, la componente L en el espacio de color CIE Lab, de manera que se puede ajustar el brillo y el contraste (dentro de límites razonables, por supuesto) sin afectar a la crominancia, gracias a un espacio de color definido colorimétricamente.


4.2 Ajustar el Brillo y el Balance Cromático del Núcleo

Ésta es nuestra última etapa de procesamiento. ¿Recuerda que habíamos bajamos el brillo del núcleo en las primeras etapas del procesamiento? (vea la Sección 1.2.1). Al hacer eso pudimos revelar algunas estructuras sutiles cercanas al núcleo de M63. También ha sido beneficioso para aumentar la saturación de color en el núcleo, ya que la saturación de color puede ser mayor cuando la luminancia no es ni muy brillante ni muy oscura.

Sin embargo, ahora que casi hemos terminado, el núcleo nos parece, por así decirlo, plano, lo cual confiere a la imagen un aspecto poco natural. Además, pensamos —y esto es estrictamente una cuestión de gusto personal, basada en nuestra propia experiencia— que el núcleo debería ser más verde. En este punto, los partidarios del sistema G2V nos criticarán severamente, y probablemente tienen muy buenas razones para hacerlo.

Asumiendo la crítica, vamos a implementar esta corrección final como una instancia de CurvesTransform aplicada mediante una máscara. La máscara será esencialmente la misma que usamos para reducir el brillo del núcleo en la Sección 1.2.1. La Figura 13 muestra cómo la máscara está siendo activada para la imagen mediante la opción Mask > Select Mask del menú principal.


Figura 13— Seleccionando la máscara del núcleo para la imagen LRGB. Click on the image to see a full-size version. Haga clic en la imagen de la figura para ver una versión a tamaño completo.


Finalmente, en la Figura 14 puede ver la interfaz CurvesTransform, trabajando en modo de previsualización en tiempo real. Fíjese en cómo la curva de luminancia, aparte de subir las altas luces para hacer que el núcleo interior sea más brillante, también compensa el incremento de brillo introducido en los medios tonos por la curva en el canal verde.


Figura 14— CurvesTransform aplicado mediante una máscara para ajustar el brillo y el balance cromático del núcleo. Haga clic en la imagen de la figura para ver una versión a tamaño completo.



:: PixInsight Home Page