24
Operaciones sobre los valores de vecindades Teor´ ıa de sistemas y filtrado espacial Filtros en el dominio espacial Lecci´ on 05.1 Dr. Pablo Alvarado Moya CE5201 Procesamiento y An´ alisis de Im´ agenes Digitales ´ Area de Ingenier´ ıa en Computadores Tecnol´ogico de Costa Rica I Semestre, 2017 P. Alvarado — TEC — 2017 Operaciones espaciales 1 / 24

Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Filtros en el dominio espacialLeccion 05.1

Dr. Pablo Alvarado Moya

CE5201 Procesamiento y Analisis de Imagenes DigitalesArea de Ingenierıa en Computadores

Tecnologico de Costa Rica

I Semestre, 2017

P. Alvarado — TEC — 2017 Operaciones espaciales 1 / 24

Page 2: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Contenido

1 Operaciones sobre los valores de vecindades

2 Teorıa de sistemas y filtrado espacialLinealidad e Invarianza a la traslacionConvolucion

Separabilidad

Correlacion

P. Alvarado — TEC — 2017 Operaciones espaciales 2 / 24

Page 3: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Operaciones espaciales

1 Operaciones geometricas

2 Operaciones sobre valores de pıxeles

3 Transformaciones de dominio

4 Operaciones sobre los valores de vecindades

P. Alvarado — TEC — 2017 Operaciones espaciales 3 / 24

Page 4: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Operaciones sobre los valores de vecindades

Para imagen de entrada A, la imagen de salida B es

B = {b | b = 〈x,d〉 , d = T (val(N(a))), a = 〈x, c〉 ∈ A}

P. Alvarado — TEC — 2017 Operaciones espaciales 4 / 24

Page 5: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Teorıa de sistemasTres tareas basicas

a(x , y) b(x , y)T [·]

1 Simulacion de sistemas: T y a conocidos, determinar b

2 Reconstruccion de senales: T y b conocidos, determinar a

3 Identificacion de sistemas: a y b conocidos, determinar T

P. Alvarado — TEC — 2017 Operaciones espaciales 5 / 24

Page 6: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Diferencias de PDI con PDS tradicional

1 la senales se definen en el espacio y no en el tiempo

2 dos variables independientes espaciales en vez de unatemporal.

P. Alvarado — TEC — 2017 Operaciones espaciales 6 / 24

Page 7: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Linealidad

a(x , y) b(x , y)T [·]

Si bi (x , y) = T [ai (x , y)] entonces

T [k1a1(x , y) + k2a2(x , y)] = k1T [a1(x , y)] + k2T [a2(x , y)]

o en general

T

[N∑

k=1

kiai (x , y)

]=

N∑k=1

kiT [ai (x , y)] =N∑

k=1

kibi (x , y)

P. Alvarado — TEC — 2017 Operaciones espaciales 7 / 24

Page 8: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Invarianza a la traslacion

a(x , y) b(x , y)T [·]

Si b(x , y) = T [a(x , y)] entonces:

b(x − x0, y − y0) = T [a(x − x0, y − y0)]

P. Alvarado — TEC — 2017 Operaciones espaciales 8 / 24

Page 9: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Sistemas LSI

LSI: Linear and Shift InvariantLTI: Linear and Translation Invariant

( Equivalente a los sistemas LTI en el tiempo )

P. Alvarado — TEC — 2017 Operaciones espaciales 9 / 24

Page 10: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Impulso unitario bidimensional

δ(x , y) = δ(x)δ(y) =

{1 si x = y = 0

0 en el resto

Propiedad de muestreo:

u

vu

v

Pıxel en posicion (u, v): f (x , y)δ(x − u, y − v)

P. Alvarado — TEC — 2017 Operaciones espaciales 10 / 24

Page 11: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Imagen como suma de pıxeles

f (x , y) =∑(u,v)

f (u, v)δ(x − u, y − v) = f (x , y) ∗ δ(x , y)

P. Alvarado — TEC — 2017 Operaciones espaciales 11 / 24

Page 12: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Convolucion

Sea T un sistema LSI

g(x , y) = T [f (x , y)] = T

∑(u,v)

f (u, v)δ(x − u, y − v)

=

∑(u,v)

T [f (u, v)δ(x − u, y − v)]

=∑(u,v)

f (u, v)T [δ(x − u, y − v)]

=∑(u,v)

f (u, v)h(x − u, y − v)

= f (x , y) ∗ h(x , y)

con respuesta al impulso h(x , y) = T [δ(x , y)]

P. Alvarado — TEC — 2017 Operaciones espaciales 12 / 24

Page 13: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Funcion de dispersion puntual

La respuesta al impulso h(x , y) = T [δ(x , y)] llamada en PDItambien funcion de dispersion puntual o PSF por point spreadfunction

P. Alvarado — TEC — 2017 Operaciones espaciales 13 / 24

Page 14: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Pasos de la convolucion

f (x , y) ∗ h(x , y) =∑(u,v)

f (u, v)h(x − u, y − v)

Cuatro pasos:

1 Invertir h tanto en x como en y (rotacion en 180◦)

2 Trasladar origen de h invertida a pıxel de interes en (x , y)

3 Multiplicar punto a punto h invertida y trasladada con x

4 Sumar todos los productos anteriores y asignarlos al resultadog(x , y).

P. Alvarado — TEC — 2017 Operaciones espaciales 14 / 24

Page 15: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Otra interpretacionConvolucion

f (x , y) ∗ h(x , y) =∑(u,v)

f (u, v)h(x − u, y − v)

superposicion de la PSF desplazada a cada (u, v) y amplificada porel respectivo f (u, v) (sistema LSI).

P. Alvarado — TEC — 2017 Operaciones espaciales 15 / 24

Page 16: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

PropiedadesConvolucion

Conmutatividad:

a(x , y) ∗ b(x , y) = b(x , y) ∗ a(x , y)

Asociatividad:

a(x , y) ∗ b(x , y) ∗ c(x , y) = [a(x , y) ∗ b(x , y)] ∗ c(x , y)

= a(x , y) ∗ [b(x , y) ∗ c(x , y)]

Distributividad:

a(x , y)∗(b(x , y)+c(x , y)) = a(x , y)∗b(x , y)+a(x , y)∗c(x , y)

P. Alvarado — TEC — 2017 Operaciones espaciales 16 / 24

Page 17: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Costo de la convolucion

Imagen f (x , y) tiene R filas y C columnas

h(x , y) (kernel, nucleo, mascara, PSF) tiene N filas yM columnas con x ∈ {xi , . . . , xf }, y ∈ {yi , . . . , yf },N = yf − yi + 1, M = xf − xi + 1

La convolucion se puede reescribir

f (x , y) ∗ h(x , y) =

y−yi∑v=y−yf

x−xi∑u=x−xf

f (u, v)h(x − u, y − v)

para recorrer la mascara.

Tamano mascara: K = NM, tamano imagen: S = RC

Cada pıxel: K productos, K − 1 sumas

Total operaciones: SK productos, S(K − 1) sumas

P. Alvarado — TEC — 2017 Operaciones espaciales 17 / 24

Page 18: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Filtro separable

Kernel h(x , y) separable si

h(x , y) = hh(x)hv (y)

P. Alvarado — TEC — 2017 Operaciones espaciales 18 / 24

Page 19: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Convolucion con filtro separable

f (x , y) ∗ h(x , y) =

y−yi∑v=y−yf

x−xi∑u=x−xf

f (u, v)hh(x − u)hv (y − v)

=

y−yi∑v=y−yf

hv (y − v)

x−xi∑u=x−xf

f (u, v)hh(x − u)

La suma interna gx(x , v) =

x−xi∑u=x−xf

f (u, v)hh(x − u) es un filtrado

unidimensional para cada fila v de f (x , y), y ası:

f (x , y) ∗ h(x , y) =

y−yi∑v=y−yf

h(y − v)gx(x , v)

P. Alvarado — TEC — 2017 Operaciones espaciales 19 / 24

Page 20: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Costo de convolucion separable

Pıxel en una fila: M productos, M − 1 sumas(Producto punto)

Fila: MC productos y C (M − 1) sumas

Todas las filas MRC = MS productos,RC (M − 1) = S(M − 1) sumas.

Pıxel en una columna: N productos, N − 1 sumas.

Columna: NR productos y R(N − 1) sumas.

Todas las columnas NRC = NS productos,RC (N − 1) = S(N − 1) sumas.

Gran total: S(N + M) productos, S(N + M − 2) sumas

P. Alvarado — TEC — 2017 Operaciones espaciales 20 / 24

Page 21: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Comparacion de mascaras separables y no separables

Asumase N = M, R = C (mascara e imagen cuadradas)

Mascara no separable: R2N2 productos, R2(N2 − 1)

Mascara separable: R22N productos, R2(2N − 2) sumas

O(N2) contra O(N)

P. Alvarado — TEC — 2017 Operaciones espaciales 21 / 24

Page 22: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Correlacion

Correlacion:

f (x , y)◦h(x , y) = f (x , y)∗h(−x ,−y) =∑u,v

f (u, v)h(x+u, y+v)

La mascara no se rota, como la convolucion

Se utiliza para buscar patrones similares a h

P. Alvarado — TEC — 2017 Operaciones espaciales 22 / 24

Page 23: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Resumen

1 Operaciones sobre los valores de vecindades

2 Teorıa de sistemas y filtrado espacialLinealidad e Invarianza a la traslacionConvolucion

Separabilidad

Correlacion

P. Alvarado — TEC — 2017 Operaciones espaciales 23 / 24

Page 24: Filtros en el dominio espacial - Lección 05 · 2017-07-03 · Operaciones sobre los valores de vecindades Teor a de sistemas y ltrado espacial Filtros en el dominio espacial Lecci

Operaciones sobre los valores de vecindadesTeorıa de sistemas y filtrado espacial

Linealidad e Invarianza a la traslacionConvolucionCorrelacion

Este documento ha sido elaborado con software libre incluyendo LATEX, Beamer, GNUPlot, GNU/Octave, XFig,Inkscape, LTI-Lib-2, GNU-Make y Subversion en GNU/Linux

Este trabajo se encuentra bajo una Licencia Creative Commons Atribucion-NoComercial-LicenciarIgual 3.0 Unpor-ted. Para ver una copia de esta Licencia, visite http://creativecommons.org/licenses/by-nc-sa/3.0/ o envıeuna carta a Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

© 2005-2017 Pablo Alvarado-Moya Area de Ingenierıa en Computadores Instituto Tecnologico de Costa Rica

P. Alvarado — TEC — 2017 Operaciones espaciales 24 / 24