Análisis de imágenes digitales MEJORAMIENTO DE LA IMAGEN Procesamiento del histograma DISTRIBUCIÓN DE PÍXELES • El histograma de una imagen es un gráfico de las frecuencias relativas de ocurrencia de cada nivel de intensidad en la imagen. • Dada una imagen con niveles de gris en el rango [0, L−1], su histograma es una función discreta h(k) = nk, donde k es el k-ésimo nivel de gris, k=0,1,…,L−1, con nk píxeles y se puede computar como: h(k) = ∑ δ ( f (x,y) − k), ∀k = 0,1,…, L − 1 x ,y donde f(x,y) es la intensidad del píxel en la posición (x,y) y ⎧ 1 α =0 δ (α ) = ⎨ ⎪⎩ 0 otro caso 2 DISTRIBUCIÓN DE PÍXELES • Si se normaliza el histograma tal que la suma total de todas las ocurrencias es la unidad, entonces se trata de una función de densidad de probabilidad (PDF) discreta, la cual describe la probabilidad de ocurrencia del k-ésimo nivel de intensidad y calcula como: h(k) p(k) = , ∀k = 0,1,…, L − 1, N donde N es el número total de píxeles en la imagen. • La función de distribución acumulada (CDF) discreta describe la probabilidad de que el k-ésimo nivel de intensidad asuma un valor inferior o igual a k y se computa como: k c(k) = ∑ p(i), ∀k = 0,1,…, L − 1, i=0 3 DISTRIBUCIÓN DE PÍXELES El histograma de una imagen provee información visual de la distribución de los niveles de intensidad dentro del rango [0, L−1]. Número de ocurrencias Histograma Nivel de intensidad CDF Probabilidad PDF Probabilidad • Nivel de intensidad 4 Nivel de intensidad DISTRIBUCIÓN DE PÍXELES: HISTOGRAMA • El análisis del histograma es la base de varias técnicas de procesamiento en el dominio espacial, como mejoramiento de la imagen, compresión, filtrado, segmentación, entre otros. • Para introducir los conceptos de transformaciones de intensidad utilizando el histograma, a continuación se muestran los cuatro casos básicos de características de intensidad: Oscura Brillosa h(k) Bajo contraste h(k) k Alto contraste h(k) k h(k) k 5 k EXPANSIÓN DEL CONTRASTE • Una solución para aumentar el contraste en imágenes es mediante la técnica de expansión del contraste, el cual “estira” el rango de los niveles de intensidad de la imagen original para ocupar un rango dinámico mayor en la imagen de salida. • El rango de intensidades se expande de acuerdo a la siguiente expresión: ⎛ a − b⎞ +a s = (r − c) ⎜ ⎟ ⎝ c−d⎠ donde r y s son los niveles de intensidad de entrada y salida, respectivamente, las constantes a y b denotan los límites superior e inferior, respectivamente, del nuevo rango dinámico (e.g., para imágenes de 8 bits a=255 y b=0), y las constantes c y d denotan los valores de intensidad máximo y mínimo, respectivamente, de la imagen original. • Aunque el cálculo de c y d es muy simple, si la imagen presenta valores de intensidad atípicos que no representan la distribución general de los píxeles en la imagen (e.g., ruido impulsivo), entonces el resultado del mejoramiento de contraste será afectado. 6 EXPANSIÓN DEL CONTRASTE Mejoramiento sin píxeles atípicos Mejoramiento con píxeles atípicos 7 EXPANSIÓN DEL CONTRASTE Para evitar la influencia de valores atípicos en la expansión del contraste: Seleccionar c y d como el 95º y 5º percentil, respectivamente, a partir de la CDF de la imagen original, es decir, 5% de los píxeles serán mayores que c y 5% serán menores que d. d = 96 Imagen original con ruido impulsivo c = 149 CDF 95º PDF • 5º Nivel de intensidad 8 Expansión del contraste ECUALIZACIÓN DEL HISTOGRAMA • Una de las técnicas más utilizadas en el mejoramiento del contraste de la imagen es la ecualización del histograma. • Este procesamiento redistribuye los píxeles sobre todo el rango [0, L−1], tal que el número de píxeles en la imagen se preserva. • La operación de ecualización puede representarse de forma general mediante la siguiente función de transformación: y = f (x) la cual mapea el valor de entrada x en un nuevo valor de salida y al transformar la PDF original en una PDF deseada. • La PDF transformada depende únicamente de la PDF conocida a la entrada y la función de transformación y = f (x). 9 ECUALIZACIÓN DEL HISTOGRAMA Entonces, la transformación de intensidad para ecualizar el histograma de una imagen está dada por su CDF tal que la función de transformación es: k T (k) = (L − 1)∑ i=0 p(i), ∀k = 0,1,…, L − 1, donde p(i) es la probabilidad de ocurrencia del i-ésimo nivel de intensidad. Imagen ecualizada Imagen original Nivel de intensidad de entrada 10 PDF ecualizada Nivel de intensidad de salida Función de transformación PDF original • ECUALIZACIÓN DEL HISTOGRAMA Mejorada PDF original Alto contraste Bajo contraste Brillosa Oscura Original 11 Función de transformación PDF mejorada ECUALIZACIÓN ADAPTATIVA • El proceso de ecualización del histograma es una operación global, es decir, toma en cuenta el histograma de la imagen completa. • La desventaja de este proceso es que no considera la información local de cada píxel, de modo que puede existir bajo contraste en regiones pequeñas. • Para resolverlo, la ecualización adaptativa del histograma (AHE, Adaptive Histogram Equalization) procesa la imagen por subregiones, o regiones contextuales, sobre las cuales se aplica el procedimiento de ecualización antes visto, mejorando localmente el contraste. Imagen ecualizada Región de bajo contraste 12 ECUALIZACIÓN ADAPTATIVA • Se define un vecindario de N×N píxeles alrededor de un píxel central y se obtiene la función de transformación (CDF). El píxel central se modifica mapeando su valor original de intensidad en la función de transformación. A continuación se desplaza la región al píxel adyacente y se repite el proceso. Imagen original N=105 N=25 N=55 N=155 N=175 13 N=75 Ecualización global ECUALIZACIÓN ADAPTATIVA • El proceso de AHE anterior procesa el histograma de ventanas traslapadas y es computacionalmente costoso a medida que se aumenta el tamaño de la ventana. • Para disminuir el tiempo de cómputo se realiza la AHE para regiones contextuales no traslapadas y para cada región determinar su propia función de transformación. • El inconveniente de este esquema es un efecto de “bloque” indeseado. Imagen original dividida en 3×3 regiones contextuales Funciones de transformación locales 14 Imagen ecualizada ECUALIZACIÓN ADAPTATIVA • Para evitar el efecto de “bloque” se realiza un proceso de interpolación bilineal: primero se definen puntos de referencia localizados a la mitad de cada región contextual. Después, cada píxel original, r, es modificado en un nuevo píxel, s, mediante las funciones de transformación vecinas: A 1− y 15 1− x B y s = (1− y)[(1− x)TA (r) + xTB (r)] + y[(1− x)TC (r) + xTD (r)] donde A, B, C y D son los puntos centrales de las regiones contextuales vecinas, cuyas respectivas funciones de transformación son TA(r), TB(r), TC(r) y TD(r). x C r D ECUALIZACIÓN ADAPTATIVA • La interpolación de cada píxel en la imagen considera uno de los siguiente casos: 1. Si el píxel pertenece a la región interna (RI), entonces interpolar usando las cuatro funciones de transformación adyacentes (arriba izquierda, arriba derecha, abajo izquierda y abajo derecha). 2. Si el píxel pertenece a una región del borde (RB), entonces interpolar usando las dos funciones de transformación adyacentes (izquierda y derecha ó arriba y abajo). 3. Si el píxel pertenece a una región de esquina (RE), entonces interpolar usando la función de transformación que contiene al píxel. 16 1 2 3 RE RB RB RE RB RI RI RB 1 2 RB RE RI RB RI RB RB RE 3 ECUALIZACIÓN ADAPTATIVA Imagen original dividida en 3×3 regiones contextuales con puntos de referencia para la interpolación bilineal Imagen ecualizada con AHE 17 ECUALIZACIÓN ADAPTATIVA • Un problema asociado al AHE es la amplificación del ruido en regiones homogéneas, debido a que la función de transformación satura rápidamente los valores de intensidad. Imagen original dividida en 2×3 regiones contextuales Funciones de transformación 18 Imagen ecualizada con AHE CLAHE • Intensidad de salida Una región homogénea en la imagen genera un pico sobresaliente en el histograma. Entonces, la técnica CLAHE recorta una parte del pico y redistribuye uniformemente los valores recor tados sobre todo el histograma para mantener el número total de píxeles en la imagen. clip Nivel de intensidad Distribución recortada A partir del histograma recortado se genera la función de transformación. Nivel de intensidad 19 Intensidad de entrada Intensidad de salida • La técnica CLAHE (Contrast Limited AHE) resuelve el problema de “sobre” contraste del AHE. Ocurrencias • Ocurrencias Distribución original Intensidad de entrada CLAHE • El algoritmo CLAHE se puede dividir en dos partes principales: 1) generación las de funciones de transformación para cada región contextual y 2) interpolación bilineal. 1.a. Dividir la imagen original en nx×ny regiones contextuales 1 1.b. Calcular la función de transformación de cada región contextual 1.c. Salvar funciones de transformación de cada región contextual 1 Histograma de la región (2, 2) 2 2 Recorte del histograma 3 1 2 clip 3 3 1 Generar función de transformación 20 2 3 CLAHE • El algoritmo CLAHE se puede dividir en dos partes principales: 1) generación las de funciones de transformación para cada región contextual y 2) interpolación bilineal. 2.a. Cortar subimágenes de la imagen original a partir de los puntos de referencia 2.b. Identificar si la subimagen pertenece a RE, RB o RI para determinar qué funciones de transformación le corresponden (1,1) (1,1) (1,2) (1,2) (1,3) (1,3) 1 (1,1) (1,1) (1,2) (1,2) (1,3) (1,3) (2,1) (2,1) (2,2) (2,2) (2,3) (2,3) 2 (2,1) (2,1) (2,2) (2,2) (2,3) (2,3) (3,1) (3,1) (3,2) (3,2) (3,3) (3,3) 3 (3,1) (3,1) (3,2) (3,2) (3,3) 1 2 21 (3,3) 3 2.c. Realizar la interpolación de cada píxel de cada subimagen CLAHE Imagen original dividida en 2×3 regiones contextuales Funciones de transformación 22 Imagen ecualizada con CLAHE y un clip del 10% MEJORAMIENTO ESTADÍSTICO • La mejora del contraste puede basarse en estadísticas locales de las intensidades de los píxeles como la media y la desviación estándar, las cuales cuantifican el brillo y el contraste, respectivamente. • Una transformación local basada en estas medidas está dada por: g(x,y) = A(x,y)⋅[ f (x,y) − µ (x,y)] + µ (x,y) donde A(x,y) = k ⋅ Μ con 0 < k ≤ 1 σ (x,y) donde µ(x,y) y σ(x,y) representan la media y desviación estándar, respectivamente, calculados en una ventana de tamaño N×N centrado en (x,y), Μ es la media global de toda la imagen y k es una constante que controla la saturación del contraste. 23 MEJORAMIENTO ESTADÍSTICO k N 15 55 35 1.0 0.5 24 75 MEJORAMIENTO ESTADÍSTICO k N 15 55 35 1.0 0.5 25 75 IMÁGENES A COLOR • Los algoritmos de mejoramiento del contraste antes vistos pueden aplicarse a imágenes a color modificando la componente de luminancia. • Comúnmente este proceso se realiza en el espacio de color HSI, donde el mejoramiento de la imagen se ejecuta en el canal I, sin procesar los canales HS. Imagen RGB Canales HS Imagen RGB mejorada Convertir a RGB Canal I Convertir a HSI Canal I mejorado CLAHE 26