sábado, 27 de junio de 2009

MEJORAMIENTO DE IMÁGENES EN EL DOMINIO ESPACIAL (PARTE II)

Realce Local:

Los métodos discutidos en la parte I con relación al histograma son métodos globales, en el sentido de que los pixeles se modifican por funciones de transformación basadas en el contenido de niveles de grises de la imagen entera. Aunque el realce global es adecuado para una mejora general existen casos en los que es necesario realzar detalles sobre áreas pequeñas de una imagen.

Las técnicas vistas en la parte uno son facilmente adaptables para hacer realce local.

El procedimiento consiste en definir una vecindad y mover el centro de esta área pixel por pixel. En cada posición, se calcula el histograma del vecindario. Esta función de mapeo finalmente se aplicará solo al pixel central del vecindario. El pixel central se mueve a la siguiente posición. Este esquema se repite para toda la imagen.

Prueba donde la máscara definida es de 7x7:


Caso de Estudio 1: Uso de Estadísticas del Histograma para el Mejoramiento de Imágenes:

En este caso de estudio en lugar de utilizar el histograma directamente para el realce, vamos hacer uso de algunos parámetros estadísticos obtenidos directamente del histograma.

  • Sea r una variable aleatoria discreta que representa los niveles de gris en el rango [0, L-1].
  • Sea p(ri), la probabilidad de la intensidad de un pixel(histograma normalizado) en una imagen.
  • Entonces el n-ésimo momento de r alrededor de la media está definido como:
  • Donde m es la media de los valores de ri:
  • De las expresiones anterioeres se tiene que:
  • El segundo momento se define como:
  • Esta expresión es la varianzade r, que se denota como:
  • La desviación estandar es la raíz cuadrada de la varianza:
En este caso de estudio consideraremos dos usos de la media y la varianza para el realce:
  • Media y varianza global: Se calcula a partir de la imagen entera y se usan para un ajuste global de toda la intensidad y el contraste.
  • Media y varianza local: Permite un procesamiento más especializado, analizando solo regiones de la imagen.
  • Sea (i,j) las coordenadas de un pixel en una imagen, y sea Si,j una vecindad(subimagen) de tamaño específico centrada en (i,j). Entonces la media y la varianza de la región Si,j esta dado por:

  • Donde rs,t es el nivel de gris en las coordenadas (s,t) de la vecindad, y p(rs,t) es el componente del histograma normalizado de la vecindad correspondiente al nivel de gris.
Problema: Mejorar el contraste de las áreas oscuras pero sin alterar las áreas claras, se propone un metodo local basado en las estadisticas de la imagen.

Solución: Entonces el método de realce es como sigue: Sea p(x,y) el valor de un pixel de una imagen en cualquier coordenada (x,y), y sea g(x,y) el valor del pixel realzado correspondiente en esa misma coordenada. Entonces:


Donde:


Prueba donde E= 4.0 , K0=0.4 , k1= 0.04 , k2=0.4 con una vecindad de 3x3:


Caso de Estudio 2: Promedio de una Imagen:

Considere una imagen ruidosa g(x,y) formanada por la suma de ruido n(x,y) a una imagen f(x,y) entonces se tiene:


El objetivo es reducir el ruido sumando un conjunto de imágenes ruidosas:


Entonces el promedio de K imágenes ruidosas se define como:


Mientras K se incrementa la variabilidad(ruido) del valor de un pixel en una posición (x,y) decrementa. Esto significa que:

Imagen Original sin ruido:


Prueba: con K=5 se obtuvo el siguiente resultado:


Prueba con K= 64, 128, 256, de izquierda a derecha se obtuvo los siguientes resultados:


Entonces se puede observar que la imagen de salida será mejor mientras mayor sea el número de imágenes ruidosas promediadas.

miércoles, 17 de junio de 2009

MEJORAMIENTO DE IMÁGENES EN EL DOMINIO ESPACIAL

El presente trabajo muestra los diferentes métodos que existen para el mejoramiento de imagenes en el dominio espacial. Estos métodos trabajan sobre el plano de la imagen y en este operan directamente sobre los píxeles de tal imagen. El termino dominio espacial se refiere al conjunto de píxeles que comprenden una imagen. Los procesos en el dominio espacial se denotan por la siguiente expresión:

Donde:

  • f(x,y) es la imagen de entrada.
  • g(x,y) es la imagen procesada.
  • T es un operador en f definida sobre alguna vecindad. La vecindad donde se aplica el operador T generalmente es un rectangulo, matriz de n*n.
  • Si la vecindad es de 1x1 entonces es una operación puntual y la función de transformación tomará la forma :
s = T(r)

Donde s y r son variables que denotan niveles de grises para f(x,y) y g(x,y) respectivamente.

Funciones básicas de transformaciones en escala de grises usadas para el mejoramiento de imágenes

  • Funciones lineales (Negativo e identidad).
  • Funciones logarítmicas (logaritmo y logaritmo invertido).
  • Funciones potencia (n-potencia y n-raiz).
  • Funciones de transformación lineales por trozos.

  • Funciones Lineales:(Negativo)
  • El negativo de una imagen con un rango de nivel de grises entre [0 , L - 1], está dado por la expresión:

s = L - 1 - r

  • Esta función invierte los niveles de intensidad de esta manera se produce el equivalente de un negativo fotografico. Este tipo de procesamiento es útil para mejarar niveles de blancos o grises en regiones oscuras de la imagen, especialmente cuando las areas negras dominan en tamaño.
  • Prueba:

  • Funciones Logarítmicas: La forma general de esta transformación es:
s = c * log(r + 1)
  • Donde c esuna constante y se asume que r es mayor o igual que 0 a la quinta. El efecto de esta transformación es mapear un pequeño rango de valores bajos de nivel de gris a un rango más amplio de niveles de salida, al tiempo que lo contrario ocurre con los valores de entrada altos.


  • Se usa una transformación de este tipo para expander los valores de píxeles oscuros de una imagen, mientras se comprime los valores de alto valor. La transformación logarítmica inversa lleva a cabo la transformación contraria.
  • Prueba donde c=2:

  • Funciones de Potencia: Su forma general es:
s = c* ( r )ª
  • Donde c y a son constantes positivas. Algunas veces la ecuación se escribe como s = c* (r + e)ª para tomar en cuenta un offset de calibración. Al variar la variable a obtenemos las diversas transformaciones que se grafican a continuación.
  • Como en el caso de la transformacion logarítmica, las curvas de función de potencia con valores fraccionales de a mapean un rango pequeño de valores oscuros en un rango amplio de valores de salida y lo contrario con los valores claros de entrada. Esta tranformación es usada para manipular el contraste de la imagen.
  • Prueba: donde c=1 y a=10:


Funciones de transformación lineales por trozos: La principal ventaja de estas tranformaciones es que pueden ser arbitrariamente complejas (pueden tener las formua que queramos). Su desventaja es que su especificación requiere más datos de entrada por parte del usuario. Entre estas funciones tenemos:

  • Recorte de plano de bits:
  • Para algunas aplicaciones, es deseable conocer la contribución de cada bit específico en la apariencia total de la imagen.
  • Supóngase que cada pixel de una imagen es representado por 8 bits. Imigínese que la imagen se compone de 8 planos de 1 bit, desde el plano de 0 bits (el bit menos significativo) hasta el plano de bits 7 (más significativo). El plano de bits contiene todos los LSB de cada byte de cada pixel en la imagen y el plano 7 contiene los MSB de cada byte de cada pixel de la imagen.
  • Con esto obtenemos 7 imágenes binarias (una por cada plano). Este proceso ayuda a determinar la cantidad de bits necesaria para cuantificar una imagen, tambien es util para la compresión de imagenes.
  • Prueba: Donde el plano es igual a 7, 5, 0 respectivamente:





Procesamiento del Histograma:

El histograma es una imagen digital con niveles de gris en el rango [0, L-1] de una función discreta:



Donde rk es el nivel de grises k-esimo y nk es el número de píxeles en la imagen con niveles de grises rk.

Los histogramas son la base de muchas técnicas de procesamiento de la imagen en el dominio espacial.

  • Histograma Normalizado: Para normalizar el histograma se divide cada uno de sus valores entre el número total de píxeles en la imagen, n. Asi el histograma normalizado se obtiene de:

  • Para k = 1, 2, 3, ..., L-1.
  • Ecualización del Histograma: La ecualizacion nos permitirá que la imagen eleve su contraste y exhiba una gran variedad de tonos de gris. Para la ecualización trabajaremos con el caso discreto:
  • Donde n es el número total de píxeles en la imagen, nk es el número de píxeles que tienen nivel de gris rk, y L es el número total de posibles niveles de gris de la imagen.
  • Prueba:


Funciones de Ecualización:

  • Ecualización Uniforme: El histograma se modifica de tal forma que la imagen resultante de los niveles de gris se representa de forma equitativa en todo el rango de valores establecido. Esta ecualización tiene la siguiente expresión:
  • Donde: rmin es el valor minimo de intensidad de pixel que contiene la imagen de entrada y rmax es el valor máximode intensidad de pixel que contiene la imagen de entrada.
  • Prueba:

  • Ecualización Exponencial: Esta ecualización nos permite distribuir el histograma según una función exponencial. Esta ecualización tiene la siguiente expresión:
  • Donde: rmin es el valor minimo de intensidad de pixel que contiene la imagen de entrada.
  • Prueba donde alpha=0.01:

  • Ecualización Rayleigh: Se trata de distribuir el histograma según la siguiente expresión:

  • Donde: rmin es el valor minimo de intensidad de pixel que contiene la imagen de entrada.
  • Prueba donde alpha=50:

  • Ecualización Hipercúbica: Se trata de distribuir el histograma según la siguiente expresión:
  • Donde: rmin es el valor minimo de intensidad de pixel que contiene la imagen de entrada y rmax es el valor máximode intensidad de pixel que contiene la imagen de entrada.

  • Ecualización Logaritmo Hiperbólica: Se trata de distribuir el histograma según la siguiente expresión:
  • Donde: rmin es el valor minimo de intensidad de pixel que contiene la imagen de entrada y rmax es el valor máximode intensidad de pixel que contiene la imagen de entrada.
  • Prueba:

Expansión del Histograma: La función para expandir el histograma se define como:

Donde f(x,y) es el nivel de gris de la imagen de entrada, g(x,y) es el nivel de gris de la imagen de salida, f(i,j)max es el mayor valor del nivel de gris en la imagen de entrada f, f(i,j)min es el menor valor del nivel de gris de la imagen de entrada f, MAX y MIN corresponden al máximo y al mínimo valores posibles de los niveles de gris(para una imagen codificada con 8 bits sería 0 y 255).

  • Pruba donde MIN=0 y MAX=255:

Contracción del Histograma: La funcion para contraer el histograma se define como:


Donde rk es el nivel de gris de la imagen de entrada, sk es el nivel de gris de la imagen de salida, Cmax y Cmin son los valores deseados de compresión, rmax es el mayor valor del nivel de gris en la imagen de entrada, rmin es el menor valor del nivel de gris de la imagen de entrada.
  • Prueba: donde Cmin=100 y Cmax=250:

Desplazamiento del Histograma: Este procesamientp nos permite aclarar u oscurecer las imágenes. La función para el desplazamiento del histograma se define como:

Donde rk es el nivel de gris de la imagen de entrada, sk es el nivel de gris de la imagen de salida, DES es el valor de desplazamiento.

  • Prueba: donde DES=50:

Histogram Matching (especificación del histograma): Esta técnica nos permite especificar la forma que tendrá el histograma de la imagen de salida. Procedimiento discretizado:

Donde:




Se pretende:

La idea general es encontrar los valores zk correspondientes a sk que satisfagan la ecuación sk=zk.


Esta ecuación se da pues trabajamos con enteros.

  • Pruebas: