herramientas matemáticas básicas para el procesamiento de...

147
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

Upload: vankhanh

Post on 06-Oct-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

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

12

Disminusión de ruido 5

10

20

50

100

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 aritméticas

Ej: enmascaramiento

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

Operaciones espaciales

Operaciones de vecindad

Operaciones espaciales

Operaciones de vecindad

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étricas

v

y = v sin ϑ + w cos ϑ

Transformaciones espaciales geométricas

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

Principios básicos

T es el operador sobre f definido en una vecinadad del punto (x, y)

Principios básicos

Ejemplos

Funciones de transformación de intensidad básicas

Negativo y potencias

Negativo

Funciones de transformación de intensidad básicas

Negativo

Funciones de transformación de intensidad básicas

Transformaciones logarítmicas

Funciones de transformación de intensidad básicas

Corrección gamma

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

Corrección gamma

Imagen aérea

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”

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

Histograma

probabilidad

intensidad

Interpretación probabilística

bin

Procesamiento de Histograma

Ejercicios:

Procesamiento de Histograma

Ejercicios:

Procesamiento de Histograma

Ejercicios:

Ecualización de histograma:

¿Cuál es la idea?

Procesamiento de Histograma

T(r) T(r)

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

Ecualización de histograma

Procesamiento de Histograma

Ecualización de histograma

Procesamiento de Histograma

Procesamiento de Histograma

Ecualización de histograma

Procesamiento de Histograma

Ecualización de histograma

Procesamiento de Histograma

Ecualización de histograma

Procesamiento de Histograma

Ecualización de histograma

Ecuacion (2)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Histograma

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

Procesamiento de Histograma

Ecualización de histograma (forma discreta)

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

Procesamiento de Histograma

Especificación de histograma

(6) (7)

Procesamiento de Histograma

Especificación de histograma

Procesamiento de Histograma

Especificación de histograma: Ej. (caso contínuo)

t

Procesamiento de Histograma

Especificación de histograma: Ej. (caso contínuo)

Procesamiento de Histograma

Especificación de histograma: Caso discreto

Procesamiento de Histograma

Especificación de histograma: Caso discreto

Procesamiento de Histograma

Especificación de histograma: Caso discreto

Procesamiento de Histograma

Especificación de histograma: Caso discreto, resumen de pasos a seguir:

Procesamiento de Histograma

Especificación de histograma: Ejemplo

Procesamiento de Histograma

Especificación de histograma: Ejemplo

Procesamiento de Histograma

Especificación de histograma: Ejemplo

Procesamiento de Histograma

Especificación de histograma: Ejemplo

Procesamiento de Histograma

Especificación de histograma: Ejemplo

(z7)

Procesamiento de Histograma

Especificación de histograma: Ejemplo

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

Métodos probabilísticos

Métodos probabilísticos.

S = 14.3 S = 31.6 S = 49.2

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

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.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

Procesamiento de Histograma

Uso de la información estadística del histograma para realzar imágenes.

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

Mecánica de los filtros espaciales

Fundamentos de Filtros Espaciales

Mecánica de los filtros espaciales

Fundamentos de Filtros Espaciales

Mecánica de los filtros espaciales

Fundamentos de Filtros Espaciales

Correlación espacial en una dimensión

Fundamentos de Filtros Espaciales

Convolución espacial en una dimensión

Fundamentos de Filtros Espaciales

Correlación y Convolución espacial en dos dimensiones

Fundamentos de Filtros Espaciales

Correlación espacial en dos dimensiones

Fundamentos de Filtros Espaciales

Convolución espacial en dos dimensiones

Fundamentos de Filtros Espaciales

Correlación y Convolución espacial en dos dimensiones Expresiones Matemáticas

Fundamentos de Filtros Espaciales

Representación vectorial para filtrado lineal

Fundamentos de Filtros Espaciales

Representación vectorial para filtrado lineal

Fundamentos de Filtros Espaciales

Generación de máscaras para filtros espaciales

Fundamentos de Filtros Espaciales

Generación de máscaras para filtros espaciales

Fundamentos de Filtros Espaciales

Filtros para suavizamiento

Fundamentos de Filtros Espaciales

Filtros para suavizamiento

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

Filtros para suavizamiento, EJEMPLO

Original Pasabajo Umbral

Fundamentos de Filtros Espaciales

Filtro de mediana (no lineal)

sal

Fundamentos de Filtros Espaciales

Filtro de mediana (no lineal), EJEMPLO:

Original Pasabajo Mediana

Fundamentos de Filtros Espaciales

Filtro espaciales para agudizar

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)

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)

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

Unsharp - mask

Fundamentos de Filtros Espaciales

Unsharp - mask

Fundamentos de Filtros Espaciales

Uso de la primera derivada para agudizar imágenes (Gradiente)

Fundamentos de Filtros Espaciales

Uso de la primera derivada para agudizar imágenes (Gradiente)

Fundamentos de Filtros Espaciales

Uso de la primera derivada para agudizar imágenes (Gradiente)

Fundamentos de Filtros Espaciales

Uso de la primera derivada para agudizar imágenes (Gradiente)

Fundamentos de Filtros Espaciales

Uso de la primera derivada para agudizar imágenes (Gradiente)

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