Lo que sigue es el resultado de mi trabajosa (y entretenida) búsqueda de una respuesta consistente a la pregunta: ¿Dadas las características de mi setup, el tipo de cielo (cuan polucionado) y el objeto que quiero fotografiar, y dado que cuento con X horas para hacerlo, cuál es la mejor combinación de ISO y tiempo de cada subexposición que debo utilizar para maximizar la calidad de la toma apilada final?
Por Ignacio Diaz Bobillo
@ignacio_db
Lo que sigue es el resultado de mi trabajosa (y entretenida) búsqueda de una respuesta consistente a la pregunta: ¿Dadas las características de mi setup, el tipo de cielo (cuan polucionado) y el objeto que quiero fotografiar, y dado que cuento con X horas para hacerlo, cuál es la mejor combinación de ISO y tiempo de cada subexposición que debo utilizar para maximizar la calidad de la toma apilada final?
Señal
Arrancamos fijando algunas variables. El análisis que sigue asume un dado tren óptico y una dada geometría y eficiencia cuántica del sensor (sea CMOS o CCD). Se entiende por eficiencia cuántica (QE) la proporción de fotones que pegando en el pixel, son convertidos en electrones. Claro que éstas son variables importantes a la hora de elegir un setup para mejorar la señal de las tomas, pero por lo general quedan determinadas por el equipo que tenemos. Solo déjenme aclarar que a mayor apertura del telescopio, mayor captura de fotones, o sea mayor señal. A menor focal, mayor densidad (por unidad de área) de fotones en el plano del sensor, o sea mayor número de fotones por pixel (mayor señal por pixel).
Ruido
-
Ruidos Aleatorios: Estos son los ruidos que aspiramos a atenuar con integraciones largas y apilado.
- Ruido de Poisson o Shot Noise: generado por la irregularidad de la lluvia de fotones sobre el pixel, cuyo desvío estándar (o valor RMS) crece con la raíz cuadrada del conteo de fotones. (Esta propiedad surge de la teoría de colas, cuando la probabilidad de un arribo a la cola es igual para intervalo de tiempos iguales.) Entonces el Shot Noise (RMS) generado por un objeto que produce un flujo de electrones O en e-/min (luego de que los fotones son “convertidos” en el sensor), es (O*t)1/2, donde t es el tiempo de la integración en minutos. Notar que éste ruido es propio del proceso físico e independiente de la tecnología del sensor. Pero claro, el nivel de señal crece linealmente con el tiempo, O*t, así que si éste fuera el único ruido estaríamos muy bien, ya que la SNR crecería como (O*t)1/2.
- Ruido de lectura o Readout Noise: es el ruido que se produce al leer el contenido de electrones en el pixel, y su valor RMS se denomina con la letra R en e-, aunque como ya veremos más adelante, es importante conocer no solo su desvío estándar sino la distribución general del ruido. Todas las tomas incluyen éste componente de ruido, aún las de “cero” duración (de ahí viene el uso de Bias Frames para medirlo y en parte compensarlo).
-
Ruido térmico o Dark Current: se produce por la agitación térmica de los electrones y las impurezas e imperfecciones del silicio, disparando falsos conteos de fotones en el pixel (como si hubiera pegado un fotón). El valor RMS de éste ruido crece en forma aproximadamente lineal con el tiempo, D*t, donde D está dado en e-/min, y a su vez éste valor crece con la temperatura del sensor (en general se duplica cada 6°C-8°C aprox. en CCDs, no sé de una regla general en el caso de CMOS).
-
“Ruidos” sistemáticos: Estos son los ruidos que aspiramos a remover con la calibración.
- Ruido térmico “repetitivo” (ej, hot pixels), que se calibra con Dark Frames..
- Ruido de lectura repetitivo, que se calibra con Bias Frames.
- Ruido de patrón fijo o Fixed Pattern Noise (FPN), que se calibra, en parte, con Flat Frames. Este puede deberse, entre otras cosas, a pequeñas diferencias en el QE de los pixels, además del clásico viñeteo o motas en el sensor.
-
Ruido periódico, evidente al hacer un análisis espectral (FFT) del ruido, producido por la electrónica de la cámara o por interferencias.
- “Ruido” de cuantificación, producido al pasar de un conteo de electrones a un conjunto de niveles predeterminado por el conversor Analógico/Digital, o A/D. La forma de mitigar éste ruido es utilizando bien el rango dinámico del sensor en relación al objeto que deseamos fotografiar. Más adelante veremos que la elección de ISO tiene implicancias en éste aspecto.
- “Ruidos” no aleatorios” pero cambiantes: difíciles de caracterizar y de calibrar, cuya única mitigación es mediante el dithering durante la adquisición, que no es más que una forma de hacerlo pseudo-aleatorio para luego fíltralo en el apilado.
Polución lumínica o Skyglow
Esto merece un capítulo aparte. EL fondo del cielo sin estrellas siempre mantiene un resplandor, producto de la atmosfera y otros fenómenos físicos (ej., fase lunar). Este se agrava fuertemente con la polución lumínica cerca de centros urbanos, que torna al cielo pálido y con solo las estrellas más brillantes visibles, apenas mitigable mediante filtros que siempre dejan algo en el camino. Ahora bien, si aceptamos que los sensores (CMOS o CCD) son lineales, es decir que acumulan conteo de fotones (a menos de un factor) sin saturar, el skyglow parecería muy fácil de “calibrar”: simplemente lo medimos en el mismo cuadro y lo “restamos” de toda la imagen (de hecho es lo que hacemos cuando fijamos el nivel negro en el histograma). El problema es que nos olvidamos de algo muy importante: la señal del skyglow también produce ruido de Poisson! que se suma al propio del objeto de interés. ¿Qué pasa en las zonas donde la señal del objeto es débil? Ésta se ve inundada por el shot noise del resplandor del cielo, ya que el shot noise del objeto sería bajo en ese lugar. Esto es lo que arruina la S/R en los detalles tenues de una toma, y la razón de lo valioso de ir a un lugar con cielo oscuro (idealmente alejado de toda luz artificial, elevado, y apuntando al zenit).
Modelo de Ruido
Ahora pasamos a la parte más cuantitativa del reporte, donde buscamos modelar, medir y cuantificar los distintos ruidos para finalmente poder calcular y así encontrar la combinación óptima de ISO y cantidad de subexposiciones (dado un tiempo de integración total).
Donde O es el flujo de electrones por minuto generado por los fotones que llegan del objeto sobre el pixel en cuestión, P es lo mismo pero generado por los fotones del skyglow. (Utilizo la P de polución). Estos dos primeros términos corresponden al shot noise del cielo y el objeto. El siguiente es el ruido térmico y el último el de lectura. Cabe aclarar lo siguiente sobre los factores D y R. Hay un factor D o R antes de calibrar y otro menor después de calibrar. Hay que asegurarse de usar el valor correcto en cada caso. En la ecuación de ruido de arriba, usaremos los datos post-calibrado.Ahora si apilamos (sumamos) las K = T/t subexposiciones, y aplicamos el principio de sumas en cuadraturas al conjunto, tenemos:
S = O * T
N2 = ∑N2sub = (P + O + D2*T)*T +K* R2
(1) Una digresión matemática; existe una fuerte conexión entre la norma euclídea que define distancia como la raíz cuadrada de la suma de los cuadrados de las coordenadas, y la cuadratura definida aquí para variables aleatorias. Por eso se dice que dos variables aleatorias son ortogonales cuando no correlacionan entre si, y que una proyecta sobre la otra cuando sí, similar a lo que decimos de vectores en espacios euclídeos.
Promedio del Bias Frame (en ADUs) + (P + Omax)/G*t < 2n-1
Y que:
(P + Omin)*t/G - 2*((P + Omin+ D*t)*t + R2)1/2 /G > 0
Donde Omin es el flujo de electrones de las partes tenues del objeto de interés, mientras que D y R corresponden a los valores pre-calibrado. Esto garantiza que t es lo suficientemente grande como para que el promedio de la distribución se encuentra dos desvíos estándar a la derecha del cero en el histograma. En la práctica, en cielos medianamente polucionados se puede ignorar Ominsiendo en general mucho más chico que P.Entonces, la optimización consiste en buscar el t más grande que satisfaga las condiciones de overflow, y asegurarnos que estamos por encima del mínimo para la condición de underflow.
DSLR
Antes de continuar vale la pena hacer una aclaración que siempre es motivo de confusión. Los sensores de las cámaras DSLR (ya sean CMOS o CCD) tienen una sensibilidad dada (eficiencia cuántica) que NO varía con el ISO. Cambiar el ISO solo cambia la ganancia del amplificador analógico que se encuentra a la entrada del A/D, por lo que modifica el factor de conversión de electrones acumulados en el pixel del sensor a un número digital entero (salida del A/D). Esto permite compatibilizar el rango dinámico del objeto a fotografiar con el rango dinámico de la cámara. La confusión viene de la época del film, cuando sí un mayor ISO implicaba una mayor eficiencia cuántica de la emulsión.Otro aspecto importante que marca diferencias con las CCD astronómicas, es el hecho que éstas por lo general se refrigeran a temperaturas muy bajas, reduciendo así el ruido térmico a niveles despreciables. Tal es así, que es común no incluir el término correspondiente al Dark Current, en los modelos de ruido de dichas cámaras. Distinto es el caso de las DSLR que operan a temperaturas “normales”.Creo que lo mejor es utilizar un ejemplo específico para mostrar cómo juegan las variables.
Caso Canon 1000D
|
Imagen 1 |
La siguiente tabla muestra un resumen de los parámetros estimados para los distintos ISO:
|
Imagen 2 |
2. Como era de esperar, la ganancia se duplica3 aproximadamente con la mitad del nivel de ISO. Esto tiene directas implicancias en el manejo del rango dinámico de la cámara. En ISO 100 la cámara alcanza a saturar el sensor (Full Well Capacity) al mismo tiempo que satura el A/D, alcanzando valores de 4095 (recordemos que es una cámara de 12 bits). Este ISO es el que brinda mayor rango dinámico. Para ISOs mayores, el conversor A/D satura siempre antes que el sensor. Ver la siguiente tabla al respecto, que es bastante elocuente.
Imagen 3 |
(3) Quizá lo más práctico sería medir con mucha precisión (muchos puntos de interpolación), la ganancia para ISO 1600, y luego usar múltiplos de 2, 4, 8 y 16 para obtener las ganancias a otros niveles de ISO.
Lo que esto indica es que si utilizamos ISO 1600, el llenado de tan solo el 6,4% de un pixel ya satura al atravesar el conversor A/D! Esto parece horrible desde el punto de vista de rango dinámico, y puede serlo ya que todas las áreas del cuadro con señal mediana o fuerte terminarán saturando. Claro que en las áreas débiles, la discriminación de niveles (brillo y color) será máxima, dedicando los 12 bits de la cámara a ese rango.
Podríamos decir que el nivel de ISO nos permite administrar el rango dinámico limitado de la DSLR, ya que contamos con solo 12 bits versus los tradicionales 16 bits de las CCD astronómicas, que operan a ganancia fija. Cambiando el ISO podemos concentrar la mejor ganancia para distintas partes del rango dinámico del objeto, alla HDR.
En cuanto al ruido térmico, los ensayos fueron hechos con la cámara refrigerada a una temperatura interna de unos 8°C. En estas condiciones el “Dark Current”, medido en e-/min, es muy bajo. También es interesante notar que luego de la calibración con un Master Dark hecho a partir de entre 10 y 20 dark frames, el ruido térmico residual se reduce a una tercera parte aproximadamente. Ver siguiente gráfico donde se muestran los dos casos, y donde el ruido térmico esta dado por la pendiente.
|
Imagen 4 |
El salto inicial de 3 o 4 ADUs se debe a la aparición de “hot pixels”, pero una vez que saturan, entra en el régimen de crecimiento lineal. Como la medición osciló entre 0,18 y 0,22 e-/min para los distintos niveles de ISO (post-calibración), sin una tendencia definida, opté por utilizar un valor promedio en todos los casos de 0,20 e-/min.
Por último, es útil analizar en qué medida nuestra hipótesis de ruido gaussiano se satisface en un caso real, ya que es importante para que nuestras estimaciones de ruido sean válidas. La clave de ésta hipótesis es la que hace las matemáticas mucho más simples, debido a que una distribución gaussiana queda completamente especificada solo con dos parámetros; su promedio y desvío estándar. Esto, sumado a la independencia (ortogonalidad) de las variables aleatorias, no permite sumar los valores RMS en cuadratura. Así que veamos si hicimos bien.
Para eso tomamos 30 Bias Frames en cada nivel de ISO, los calibramos restando el Master Bias que resulta de apilarlos, y vemos la distribución residual. A continuación se muestras éstas distribuciones, en escala lineal y logarítmica, que es más reveladora. Buscamos que en escala logarítmica la distribución se parezca a la nariz de un cohete, tipo parabólica. Si presenta hombros y asimetrías, es una señal de que la distribución no es “tan” gaussiana y por lo tanto es esperable que filtre peor en el apilado.
Al ver los resultados en la siguiente página, notamos que a medida que el valor ISO aumenta, la “calidad” de la distribución disminuye. A ISO 100, es casi perfecta, pero a medida que aumentamos el nivel ISO, aparecen hombros en la distribución. Afortunadamente, en todos los casos la simetría es bastante buena, lo que también es importante para un apilado efectivo.
Algunas rarezas: Aunque todos los valores estimados parecen razonables y consistentes, sobre todo cuando se comparan con los de otras cámaras canon medidas en laboratorios profesionales, hay un aspecto que resultó un poco desconcertante. Noté que resulta imposible encontrar pixels saturados en tomas reales RAW antes de calibrar. Por lo general el valor ADU en las zonas más brillantes se estanca en 3651 ADU aproximadamente, en vez del esperado 4095 que resulta de 12 bits. Probando en el banco con la cámara y un campo plano brillante, note que sí se acerca a los niveles esperados, pero solo cuando las exposiciones no superan los 10 segundos. Por encima de estos, el conteo baja repentinamente unos 400 ADU. La cámara tiene deshabilitado la reducción automática de ruido en exposiciones largas, pero sospecho que hace algún procesamiento de todas maneras. Resta un bias? Resta un registro interno de “motas”? No sé, pero de hecho el valor efectivo de saturación es 3651 ADU, y es el que utilizaremos en la práctica para verificar ésta condición.
Creo que ya es tiempo de ver cómo aplicar todas estas herramientas a un caso particular.
Ejemplo: Nebulosa Trífida
Elegí éste objeto por tener un rango dinámico interesante, con estrellas agrupadas muy brillantes en el núcleo y una nubosidad extendida con mucha estructura.
Para empezar necesitamos estimar el flujo de electrones en nuestro sensor, proveniente de tres regiones del cuadro: de las zonas brillantes de interés (Omax), de las zonas tenues (Omin) y del resplandor del cielo polucionado (P). Para eso hacemos un par de tomas, una a ISO bajo para asegurarnos que no sature el núcleo, y otra a ISO alto. Sobre la primera medimos los ADU del núcleo brillante, y sobre la segunda medimos una zona de nebulosidad apenas visible y otra zona del cielo sin estrellas ni nebulosidad aparente. A esto valores en ADU les restamos el Bias promedio (para ser rigurosos, de la misma zona del cuadro, pero es un número que prácticamente no cambia) y los multiplicamos por la ganancia correspondiente para finalmente dividir por el tiempo de la exposición en minutos. En éste caso, donde hay cielo de fondo sin nebulosidad, usamosOmin = 0. En aquellos casos donde la nebulosidad cubre todo el cuadro deberíamos medirlo, aunque es el número menos crítico. Los otros dos números obtenidos fueron:
P = 155 e-/min
Omax = 1350 e-/min
Ojo que estos parámetros dependen del setup! Si agrego un barlow, o si cambio la cámara por otra de pixels de distinto tamaño, éstos cambian, ya que el flujo de fotones en cada pixel cambia. Igual que si las condiciones del cielo cambian apreciablemente (transparencia).
Digamos también que queremos integrar 3 horas en total, es decir, T = 180 minutos. Con éstos valores podemos aplicar las ecuaciones de ruido total y las condiciones de overflow y underflow, para varias combinaciones de ISO y t.
Para tener una apreciación general utilizamos tablas en una planilla de cálculo:
|
Imagen 5 |
|
Imagen 6 |
Se destacan con fondo amarillo en la tabla de Ruido Total, aquellas combinaciones de ISO y t (o K) que satisfacen al mismo tiempo la condición de overflow y la de underflow. Las celdas con fondo rojo en las otras dos tablas, destacan las combinaciones donde no se cumple una de las dos condiciones. El overflow del Full Well no es una condición dominante, salvo a ISO 100.
Queda bien claro que para éste caso la mejor combinación es ISO 400 y t = 5,63 minutos!
No es que t tiene que ser ese número caprichoso, que resulta de cómo dividimos esa dimensión para estudiarla en una tabla. Uno puede cambiar la tabla para explorar otros puntos de la dimensión t, o simplemente usar 5,5 o 6 minutos que es una aproximación suficientemente buena.
También queda claro que por debajo K = 64 (t = 2,81) empezamos a recortar la distribución del ruido de Poisson del resplandor del cielo, empeorando nuestras posibilidades de filtrarlo efectivamente. A su vez, a subexposiciones más largas y/o a ISO mayor (en las combinaciones que muestra la tabla) comienzan a perder información de interés por la saturación del conversor A/D. Esto lleva, en el caso de las estrellas, a que pierdan su perfil y se vean planas. Y más importante aún, que pierdan su color, ya que la discriminación de niveles en los canales RGB se perdería!
Podríamos decir mucho más, pero creo que hemos cubierto lo suficiente como para tener herramientas objetivas que nos orienten en la mejor elección de ISO y tiempos de subexposición.
Como regla general para la Canon 1000D (y probablemente para otras similares), y luego de haber jugado con varias combinaciones para distinto tipo de objetos a fotografiar, podemos concluir que:
1. El ISO que mejor equilibra el nivel de readout noise y su forma (distribución) junto con rango dinámico es 400, que debería usarse en aquellos objetos que mezclan nebulosidad con zonas de acumulación de estrellas brillantes (tipo Tarántula).
2. EL tiempo de subexposición, en todos los casos, debe estirarse lo más posible (siempre que el guiado lo permita) hasta que saturen áreas de interés. Esto depende fuertemente de la calidad del cielo, que impone un escalón de brillo.
3. Para campos estelares como cúmulos abiertos y globulares, probablemente un ISO inferior a 400 resulte mejor. Debido al mayor rango dinámico que ofrece, la discriminación de colores y perfiles de brillo de las estrellas se verán beneficiados.
4. Cuando se trata de objetos muy tenues que no compiten en interés con otros más brillantes, y en cielos poco polucionados que no se traguen buena parte del rango dinámico, entonces probablemente un ISO mayor a 400 sea mejor.
Editado por ricardo