sábado, 27 de junio de 2009

Laboratorio 4: Casos de Estudio

caso 1 Promedio de una Imagen
Consideramos una imagen ruidosa g(x,y) formada por la adicion de ruido n(x,y)para una imagen original f(x,y); eso es representado por: Se asumira que en cada par de coordenadas(x,y) el ruido es no correlacionado y tiene un promedio cuyo valor es cero. El objetivo del siguiente procedimiento es reducir el contenidode ruido adicionando un conjunto de imagens ruidosas, formalmente representado por:


Utilizaremos las siguientes imagenes para probar este método sumaremos intercaladamente las siguientes imagenes 10 veces.


imagen 1



imagen 2



resultado del metodo explicado




Caso 2 Uso de las estadisticas del histograma para mejoramiento de imagenes

Realizaremos la explicación de este proceso atraves de un caso de estudio que describiremos a continuacion: Mejoraremos el contraste de las areas oscuras pero sin alterar las áreas claras para ello utilizaremos un método local basado en las estadísticas de la imagen para ello compararemos la media local de una sub imagen con la media global representado por:para analisar el pixel p(i,j) es candidato para procesamiento, esto es una buena táctica para saber si una region es clara o oscura, comparamos la desciacion estandar local de una sub imagen con la desviacion estandar global para detrminar las areas que tienen bajo contraste


el valor de la constante sera mayor que uno si se quiere incrementar el contraste de áreas claras y menor que uno si se desea incrementar el contraste de las áreas oscuras
finalmente se tiene que realizar una restriccion mas, en areas que tiene valores iguales, es decir desviaciones estandares=0 (o cercanos a cero)


los pixeles que pasan dicha condición se incrementan o decrementan su valor de intensidad multiplicandolo por una constante E, los demas se dejan sin procesar sumarizando se tiene


Para probar el método utilizaremos la siguiente imagen

Resultado obtenido








domingo, 21 de junio de 2009

Laboratorio 3: Mejora de Imágenes en el Dominio Espacial

Mejoramiento de Imágenes
Una Imagen nos puede servir para muchas aplicaciones, pero existen casos en los cuales dicha imagen necesita alguna modificación para ser útil, es por esto que ahora veremos distintos métodos con los cuales procesaremos una imagen y obtendremos otra que será útil para una aplicación específica en particular.
Existen 2 categorías en las que se produce el Mejoramiento de Imágenes: Dominio Espacial y Dominio Frecuencial.

Ahora nos centraremos en el Mejoramiento de Imágenes Dominio Espacial.
Son métodos que operan sobre los pixeles de las imágenes y se denotan por la expresión:
f(x, y): Imagen de Entrada
g(x,y): Imagen Procesada
T: Operador en f definido sobre alguna vecindad (Por este operador es que se modifica la imagen).

Si definimos una vecindad con una máscara de 1x1 entonces tendremos una Operación Puntual s=T(r)
s y r son niveles de grises, r de la imagen de entrada f(x,y), y s de la imagen de salida g(x,y).
(También se podría definir una máscara de 3x3 o alguna otra)

La imagen de salida tiene más constraste que la imagen original.

1. Transformaciones Básicas en Niveles de Grises
  • Tx Logarítmica: Se aplica el siguiente operador:
Donde:
s= nivel de gris para la imagen de salida.
c=constante que hace variar el logaritmo.
r= nivel de gris de la imagen de entrada.
*Ahora veremos un ejemplo:
Imagen Original

Las siguientes imágenes son producto de aplicar la Tx Logarítmica con c=5 y c=10 respectivamente:


Entonces notamos que con c mayor la imagen se aclara más.
  • Tx de Potencia: Se define con el siguiente operador:
Donde:
y=Potencia a la cual se elevará el nivel de gris r.
c=valor que hace variar la potencia hallada.
Probaremos este operador a la siguiente imagen:
Con c=1 y y=2, c=1 y y=4 y obtenemos las siguientes imágenes respectivamente:
Entonces podemos decir que: Este operador con y > 1 (y c>=1) hace más obscuras a las imágenes y si fuera 1 > y la imagen se aclararía, el resultado final depende también de la variable c.
  • Recorte de Planos de Bits:
Es un tipo de Función de Transformación Lineal por Trozos. Con este tipo de función lo que hacemos es destacar o resaltar ciertos bits de r (recordemos que un pixel es representado por bits dependiendo de su escala de grises, por ejemplo en una escala de 0-255 representamos al pixel con 8 bits).
Entonces lo que haremos será darle más importancia a ciertos bits, por ejemplo resaltar el bit numero 7 (de cada pixel r de la imagen)
Es decir si por ejemplo tenemos el valor: 213=11010101 al recortar en el plano 7, tendríamos: 01000000 que tomaría el valor 64. Etonces tenemos que la imágen se obscurece, pero para poder visualizar el cambio que produjo el recorte aplicamos una operación umbral que hará que la imagen se haga un poco más clara para así poder verla.

1.Imagen Original. 2.Imagen Resultante del Recorte bit=7


2. Procesamiento del Histograma

Histograma:
Es una lista donde en cada posición sería un nivel de gris y que tendría como contenido la cantidad de pixeles que tienen ese nivel en la imagen. Por ejemplo para L=256 niveles de grises:Entonces podemos decir que un histograma es una función definida como:
donde:
rk=kth nivel de gris.
nk=número de pixeles en la imagen que tiene el nivel de gris rk.

Ahora, al histograma lo podemos normalizar de la siguiente manera:Donde: n=número total de pixeles en la imagen.

Además un histograma puede ser representado gráficamente (eso lo veremos más adelante cuando apliquemos los ejemplos).

A continuación veremos distintas formas de procesar un histograma.
  • Ecualización: Este método de mejora de imágenes, hace variar el histograma de una imagen para lograr una imagen de salida de mejor calidad.
Existe una manera simple de ecualizar una imagen:
donde utilizamos el histograma normalizado, y para cada punto normalizado lo multiplicamos por el nivel máximo de grises, en este caso si trabajamos con 256 niveles, el máximo sería 255.
Por ejemplo:También existen más formas de ecualizar una imágen, y mostraremos algunos ejemplos aplicándolos a la siguiente imagen:
- E. Uniforme:
Por ejemplo tenemos: - E. Exponencial
Ejemplo:Para las siguientes formas tomar en cuenta que: rmax= máximo nivel de grises de la imagen, rmin: mínimo valor de grises de la imagen.
- E. Rayleigh
Si lo aplicamos a la imagen original obtenemos:- E. Hipercúbica

Aplicando la fórmula tenemos:
- E. Logaritmo Hiperbólica

Aplicándolo a la imagen original tenemos:
  • Expansión: Existen imágenes que cuando vemos su histograma notamos que los valores se encuentran en una poca cantidad de niveles de grises, entonces lo que queremos es expandir los niveles de grises, para esto definimos una función:
Donde:
f(i,j): nivel de gris de la imagen de entrada.
f(i,j)MIN: menor nivel de gris de la imagen de entrada.
f(i,j)MAX: mayor nivel de gris de la imagen de entrada.
MAX= máximo valor posible que puede tomar un pixel.
MIN= mínimo valor posible que puede tomar un pixel.
Para 256 niveles: MAX=255 y MIN=0.

Aplicando la fórmula a la imagen original obtenemos:
  • Contracción: Ahora lo que haremos será contraer los niveles de grises, es decir los niveles de grises usados en la imagen de salida serán menores que los usados en la imagen original.
Cmax y Cmin delimitan el campo de comprensión. Por ejemplo si tenemos: Cmax= 200 y Cmin=50, obtenemos la siguiente imagen:
  • Desplazamiento: Lo que hacemos es obtener el histograma de una imagen, luego desplazarlo ciertas posiciones, es decir, variariamos las posiciones de los niveles de grises que se utilizan en la imagen, con esto logramos hacer la imagen más obscura o más clara, dependiendo del valor de DES:
rk: posición de entrada.
sk: posición de salida.
DES: Desplazamiento que se quiere realizar.
*Por ejemplo si hacemos un desplazamiento igual a 20, obtenemos:
  • Histograma Matching: O también llamado Especificación del Histograma, ya que esta técnica consiste en modificar el histograma de acuerdo a una forma específica, que puede ser generada o hecha manualmente, incluso se puede trabajar con un histograma de otra imagen.
Entonces lo que haremos a continuación será obtener el histograma de una imagen a la cual queremos modificar. Imagen1:
Ahora obtenemos el histograma de otra imagen, al cual queremos que el histograma de nuestra primera imagen se parezca (ya que no podrá ser totalmente igual). Imagen2:
Ahora aplicando Matching obtenemos la siguiente imagen de salida con su respectivo histograma:Notamos que el histograma de la imagen original cambió, y toma una forma parecida a la del histograma de la imagen 2.