Upload
vankhanh
View
217
Download
0
Embed Size (px)
Citation preview
Herramientas matemáticas básicas para el procesamiento
de imágenes
Fundamentos de procesamiento de imágenes IIC / IEE 3713
1er semestre 2011
Cristián Tejos
Basado en material desarrollado por Marcelo Guarini, Domingo Mery, libro Digital Image Processing, 3erd Edition, R. Gonzalez y R. Woods, y wikipedia
Relaciones básicas entre pixeles
• “Vecindad 4” o “N4(p)” Def: los 4 vecinos de un pixel p(x,y) ubicados en las coordenadas
• “Vecindad diagonal” o “ND(p)” Def: los 4 vecinos de un pixel p(x,y) ubicados en las coordenadas
• “Vecindad 8” o “N8(p)” Def: los pixeles definidos por N4(p) y por ND(p)
2
Relaciones básicas entre pixeles
Medidas de distancia:
Para los pixeles p, q y z, con coordenadas (x, y), (s, t) y (v, w), respectivamente, D es una función de distancia o métrica
3
La distancia Euclidiana entre p y q se define como:
Relaciones básicas entre pixeles
Medidas de distancia:
La distancia D4 (llamada distancia city-block) entre p y q se define como:
4
2
2 1 2
2 1 0 1 2
2 1 2
2
Relaciones básicas entre pixeles
Medidas de distancia:
La distancia D8 (llamada distancia tablero de ajedrez) entre p y q se define como:
5
2 2 2 2 2
2 1 1 1 2
2 1 0 1 2
2 1 1 1 2
2 2 2 2 2
Operaciones entre arreglos versus operaciones matriciales
6
Una operación entre arreglos, que envuelve a una o más imágenes se efectúa pixel a pixel. Consideremos las siguientes dos imágenes
El producto entre arreglos está dado por
En cambio el producto matricial es
Operaciones lineales versus operaciones no lineales
7
Una de las clasificaciones importantes de métodos de procesamiento de imágenes es si son lineales o no lineales. Consideremos el operador general H que produce una imagen de salida g(x, y) dada una imagen de entrada f(x, y):
Se dice que H es un operador lineal si
Operaciones lineales versus operaciones no lineales
8
Por ej., supongamos que el operador H es el operador ∑ (lineal). Su función es simplemente sumar sus entradas
Operaciones lineales versus operaciones no lineales
9
Por Ej., supongamos ahora que el operador H es el operador max (no lineal). Su función es buscar el pixel de máximo valor en la imagen. Consideremos las siguientes dos imágenes
Supongamos además que . Probamos para ver si es lineal
Trabajando con la expresión de la derecha vemos que la operación no es lineal.
Operaciones aritméticas
10
Las operaciones aritméticas entre imágenes son operaciones de arreglos, i.e. se llevan a cabo entre pares de pixeles correspondientes. Las cuatro operaciones se denotan:
Ejemplo: sea una imagen corrupta formada por adición de ruido, , a una imagen libre de ruido , esto es:
En general, se asume que el ruido en cada pixel es independiente (no está correlacionado con el ruido de otros pixeles) y tiene media cero.
Operaciones aritméticas
11
Ej. Para reducir el contenido de ruido, se suma un conjunto de imágenes ruidosas . Esta es una técnica comunmente utilizada para mejorar imágenes
Si el ruido satisface las restricciones mencionadas puede demostrarse que si una imagen se forma promediando K diferentes imagenes ruidosas,
entonces se tiene que
y
Operaciones aritméticas
13
Ej. Substracción de imágenes para realzar diferencias.
La segunda imagen se obtuvo haciendo cero el bit menos significativo de cada pixel. Las imágenes se ven iguales. Sin embargo la diferencia entre las dos muestra claramente sus diferencias
Original Bit menos significativo = 0 Diferencia
Operaciones aritméticas
Otra aplicación frecuente y exitosa: angiografía por sustracción
Imagen original de rayos X del paciente,
llamada máscara
Imagen obtenida inyectando un medio yodado al flujo sanguíneo del paciente para aumentar el contraste.
Imagen diferencia entre las dos
imágenes superiores
Imagen diferencia realzada
Operaciones aritméticas
Ej: corrección de sombras. Supongamos que un sensor produce imágenes que pueden modelarse como el producto entre una imagen “perfecta” y una de “sombreado”
Si la imagen de sombreado se conoce entonce se puede obtener la imagen perfecta dividiendo por la imagen de sombreado.
Multiplicación (o división) de imágenes
Operaciones espaciales
Son de la forma
Ej: Transformación de brillo para obtener el NEGATIVO
Operaciones sobre un pixel
Transformaciones espaciales geométricas
Pueden expresarse como
La siguiente transformación enconge la imagen original a la mitad de su tamaño
Una de las transformaciones espaciales utilizadas más comunmente es la llamada transformación afín, que tiene la forma general
Transformaciones espaciales geométrica
Rotación de una imagen e interpolación de intensidades
Imagen de 300 dpi Rotada 21° utilizando interpolación del vecino más cercano
Rotada 21° utilizando interpolación bilineal
Rotada 21° utilizando interpolación bicúbica
Funciones de transformación de intensidad básicas
Corrección gamma
Imagen original (rampa)
Imagen original vista en un monitor con un gamma de 2,5
Imagen original corregida en gamma
Imagen corregida en gamma vista en el mismo monitor
Funciones de transformación de intensidad básicas
Corrección gamma
Imagen MRI de una columna vertebral fracturada
Funciones de transformación de intensidad básicas
Funciones de transformación lineales por tramo
“Estiramiento”de contraste
Forma de la función de transformación
Imagen de bajo contraste
Resultado del “estira- miento” de contraste Resultado de
aplicar un umbral
Funciones de transformación de intensidad básicas
Selección de niveles de intensidad
Realza a un mismo valor el rango de grises [A,B] y disminuye el resto a un nivel más bajo
Realza a un mismo valor el rango de grises [A,B] y preserva los otros niveles de intensidad
Funciones de transformación de intensidad básicas
Selección de niveles de intensidad
Original Aplicación de una transformación similar a la primera curva de la transparencia anterior
Funciones de transformación de intensidad básicas
Selección de niveles de intensidad
Original Aplicación de una transformación similar a la segunda curva de la transparencia precedente a la anterior
Funciones de transformación de intensidad básicas
Selección de “bit-planes”
Original Bit 1 Bit 2
Bit 6 Bit 7 Bit 8
Funciones de transformación de intensidad básicas
Selección de “bit-planes”
Bits 8 y 7 Bits 8, 7 y 6 Bits 8, 7, 6 y 5
Histograma
El histograma de una imagen digital con niveles de intensidad de gris en el rango [0, L-1] es una función discreta , donde es el k-ésimo “bin” o valor de intensidad y es el número de pixeles en la imagen con intensidad
# de ocurrencias
intensidad
¿Cómo se puede interpretar esto en términos de probabilidades?
bin
Ecualización de histograma
Supongamos por el momento valores de intensidad contínuos y sea r la variable que corresponde a la intensidad de la imagen a ser procesada.
Enfocaremos la atención en transformaciones de la forma
Que produce una salida de intensidad s por cada pixel en la imagen de entrada con intensidad r.
Procesamiento de Histograma
Ecualización de histograma
Asumiremos que:
(a) es una función monotónicamente creciente en el intervalo .
(b)
En algunas formulaciones discutidas más adelante, se utiliza el inverso
en cuyo caso se cambia la condición (a) por
(a’) es una función monotónicamente creciente en forma estricta en el intervalo
Procesamiento de Histograma
Ecualización de histograma
El requerimiento (a) garantiza que los valores de intensidad de salida nunca serán menores que los correspondientes de entrada, previniendo artefactos creados por inversión de intensidades.
La condición (b) garantiza que el rango de intensidades de salida es el mismo que el de la entrada.
La condición (a’) garantiza que el mapeo de retorno (de s a r) será biyectivo (uno a uno), previniendo posibles ambiguedades.
Procesamiento de Histograma
Ecualización de histograma
Monotónicamente creciente Monotónicamente creciente en sentido estricto
Procesamiento de Histograma
Procesamiento de Histograma
Ecualización de histograma (forma discreta)
Funciones de transformación utilizadas en las cuatro imágenes anteriores
Procesamiento de Histograma
Especificación de histograma: Ejemplo
Sk Zq
1 3
3 4
5 5
6 6
7 7
S0->Z3 S1->Z4 S2->Z5 S3->Z6 S5->Z7
Procesamiento de Histograma
Especificación de histograma: Ejemplo Imagen de la luna Phobos de Marte tomada por el Mars Global Surveyor.
Histograma de la imagen
Procesamiento de Histograma
Especificación de histograma: Ejemplo
Imagen resultante de muy bajo contraste y concentrada en grises altos
Curva de transformación para ecualización de histograma
Histograma resultante
Procesamiento de Histograma
Especificación de histograma: Ejemplo
Histograma especificado Curva de transformación
Procesamiento de Histograma
Especificación de histograma: Ejemplo
Imagen resultante Histograma de la imagen resultante
Procesamiento de Histograma
Procesamiento local de histograma
Imagen original Resultado de aplicar ecualización global de histograma
Resultado de aplicar ecualización local de histograma utilizando una vecindad de 3 x 3
Métodos probabilísticos
Métodos probabilísticos. Los métodos probabilísticos entran de diversos modos en el procesamiento de imágenes. La forma más simple es considerando la intensidad de grises como cantidades aleatorias.
Ejemplo: sea el valor de todas las intensidades posibles en una imagen digital de M x N. Entonces, la probabilidad que ocurra el nivel de intensidad en una imagen dada, se estima como:
donde es el número de veces que la intensidad ocurre en la imagen, y MN es el número total de pixeles. Claramente
Métodos probabilísticos
Métodos probabilísticos. Una vez obtenida , podemos determinar un número importante de características de la imagen. Por ejemplo, la intensidad media.
La varianza de la intensidad, que es una medida de la amplitud de los valores de z en torno a la media
En general, el n-esimo momento de una variable aleatoria z en torno a la media es
Procesamiento de Histograma
Uso de la información estadística del histograma para realzar imágenes.
EJEMPLO: Se requiere realzar la zona obscura de la siguiente imagen para observar claramente el filamento que aparece obscuro al lado derecho.
Procesamiento de Histograma
Uso de la información estadística del histograma para realzar imágenes.
Original Ecualización de histograma global
Realce utilizando estadística de histograma local
Fundamentos de Filtros Espaciales
Correlación y Convolución espacial en dos dimensiones Expresiones Matemáticas
Fundamentos de Filtros Espaciales
Filtros para suavizamiento, EJEMPLO
Imagen original 500 x 500 pixeles Máscara de 3 x 3
Fundamentos de Filtros Espaciales
Filtros para suavizamiento, EJEMPLO
Máscara de 5 x 5 Máscara de 9 x 9
Fundamentos de Filtros Espaciales
Filtros para suavizamiento, EJEMPLO
Máscara de 15 x 15 Máscara de 25 x 25
Fundamentos de Filtros Espaciales
Filtro espaciales para agudizar (diferencia entre la derivada de primer órden y la de segundo órden)
Fundamentos de Filtros Espaciales
Filtro espaciales para agudizar (diferencia entre la derivada de primer órden y la de segundo órden)
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Implementación en forma de máscara
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Otra implementación utilizada en la práctica frecuentemente
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Extensión utilizando las diagonales
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Imagen original Laplaciano sin escalar
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Imagen original Laplaciano escalado
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Imagen original Laplaciano sumado a imagen
Fundamentos de Filtros Espaciales
Uso de la segunda derivada para agudizar imágenes (Laplaciano)
Imagen original Laplaciano sumado a imagen
Fundamentos de Filtros Espaciales
Uso de la primera derivada para agudizar imágenes (Gradiente) EJEMPLO:
Transformadas de imágenes
Transformadas de imágenes Hasta ahora sólo hemos visto procesamiento a nivel de pixel, en el dominio de la imagen
Muchas veces es conveniente aplicar una transformación de dominio, procesar en el nuevo dominio y luego aplicar la transformación inversa, para volver al dominio de la imagen.
Una clase importante de transformadas 2-D lineales, T(u, v) puede expresarse de la siguiente forma:
donde es la imagen de entrada, se conoce como kernel de transformación directa y la ecuación es evaluada para
Transformadas de imágenes
Transformadas de imágenes Dada T(u, v) es posible recuperar f(x, y) aplicando la transformada inversa a T(u, v)
para x = 0,1,..., M-1 e y = 0, 1,..., N-1 y donde s(x, y, u, v) corresponde al kernel de transformación inversa.
Los pasos típicos de procesamiento utilizando esta modalidad son:
Transformadas de imágenes Transformadas de imágenes
Ejemplo:
Imagen corrupta
por ruido sinusoidal
Transformada de Fourier de la imagen
Máscara utilizada
para eliminar los
peaks de energía
Transformada inversa de Fourier del producto entre 2 y 3
1 2
3 4
Transformadas de imágenes
Transformadas de imágenes Se dice que el kernel de transformación directa es separable si
La transformada de Fourier vista en el ejemplo, tiene los siguientes kernels directo e inverso respectivamente:
y
Adicionalmente se dice que un kernel es simétrico si es funcionalmente equivalente a , de tal forma que
r1(x,y) r2(x,y)
Transformadas de imágenes
Transformadas de imágenes Sustituyendo ambos kernels en la forma general nos da el siguiente par de transformadas
No es difícil comprobar que los kernels de Fourier son separable y simétricos, y que los kernels que son separables y simétricos permiten calcular la transformada 2-D como un conjunto de transformadas 1-D
Transformadas de imágenes
Transformadas de imágenes Cuando los kernels directo e inverso satisfacen las condiciones mencionadas y f(x, y) es una imagen cuadrada de M x M las transformadas pueden expresarse en forma matricial como:
Para obtener la transformada inversa, se pre y post multiplica por la matriz de transformada inversa B
Transformadas de imágenes
Transformadas de imágenes Lo anterior indica que F [con elementos f(x, y) ] puede ser recuperada completamente a partir de su transformada directa
entonces la aplicación de la ecuación matricial anterior da la aproximación
Además de la Transformada de Fourier, existe un importante número de transformadas útiles en procesamiento de imágenes: Transformada de Walsh, de Hadamard, del Coseno Discreto, de Haar entre otras