Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

22
Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas

Transcript of Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Page 1: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Procesamiento de Imágenes

Abel Fernández Laborda

Pablo López Mozas

Page 2: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

¿Qué es una imagen?

Una matriz de puntos

Page 3: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Procesamiento de imágenes Primera aproximación a posibles

algoritmos paralelos: Algoritmos generales sobre matrices.

No es suficiente: Necesitamos conocer los tipos de procesamiento.

Page 4: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Clasificación Dos puntos de vista:

Por propósito. Por algoritmo.

Propósitos diferentes comparten algoritmos y existen diversos algoritmos para un mismo propósito. Nos interesa la clasificación por algoritmo.

Page 5: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Clasificación (II)

Procesamiento individual de puntos.

Basados en matrices de convolución.

Transformada de Fourier.

Page 6: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Procesamiento de puntos Se basan en un tratamiento individual de

cada punto de la imagen.

Pertenecen a este grupo: Brillo / Contraste Umbral Histograma

Page 7: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Procesamiento de puntos (II) Algoritmo secuencial

for (i=0; i<N; i++)

for (j=0; j<M; j++)

imagen[i][j] = calculo(imagen[i][j]);

Orden (NM)

Page 8: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Procesamiento de puntos (III)

Posibles algoritmos paralelos: Particionamiento de la matriz.

Al no existir comunicación entre procesos el speedup es casi lineal. Orden (NM/P)

Page 9: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

w0 w1 w2

w3 w4 w5

w6 w7 w8

543 xxxx xx6 7 8

x x1x0 2

x4

'

Máscara Imagen Resultado

Matriz de convolución Se basan en aplicar sobre cada punto de la

matriz un cálculo basado en los puntos vecinos.

k

xwxwxwxwxwxwxwxwxwx 887766554433221100'4

Page 10: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Matriz de convolución (II) Pertenecen a este grupo:

Desenfoque Enfoque

Y con variaciones en el cálculo: Eliminación de ruido Detección de bordes

Page 11: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Matriz de convolución (III) Algoritmo secuencial:

for (i=0; i<N; i++)

for (j=0; j<M; j++)

x[i][j] = w[0]*x[i-1][j-1] + w[1]*x[i-1][j] + ...;

Orden (NM)

Page 12: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Matriz de convolución (IV) Posibles algoritmos paralelos:

Particionamiento de la matriz.

Dos problemas: Dependencias. Múltiples lecturas.

Page 13: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Matriz de convolución (V) Caso especial: wi=wj, i,j

Algoritmo en 4 etapas:

Page 14: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

x +x0 1

x +x3 4

x +x6 7

x +x + x

0x +x + x

6 7

1

8

2

x +x + x0 1 2

x +x + x3 4 5

x +x + x

3x +x + x

6 7

4

8

5

x +x + x0 1 2

x +x + x0 1 2

x +x + x6 7 8

x +x + x0 1 2

543x +x + x

876x +x + x

Matriz de convolución (VI)

Page 15: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Transformada de Fourier Obtiene el espectro frecuencial de una

señal periódica.

50 100 150 200 250

2

4

6

8

50 100 150 200 250

-1.5

-1

-0.5

0.5

1

1.5

Page 16: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Transformada de Fourier (II) Se define como:

dtetxfX ift2)()(

Y para el caso continuo:

1

0

21 N

j

N

jki

jk exN

X

Page 17: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Transformada de Fourier (III) Una imagen, en este contexto, es una señal discreta bidimensional. Por

tanto, para calcular la transformada utilizamos la siguiente función:

1

0

1

0

2N

j

M

k

M

km

N

jli

jklm exX

Page 18: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Transformada de Fourier (IV) Algoritmo secuencial (caso

unidimensional):

for (k=0; k<N;k++) X[k] = 0;for (j=0; j<N; j++)

X[k] = X[k] + wjk x[j];

Orden (N2)

Page 19: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Transformada rápida Es un algoritmo divide y vencerás:

1

0

1 N

j

jkjk wx

NX

12/

0

1212

12/

0

22

1 N

j

kjj

N

j

jkjk wxwx

NX

12/

0

212

12/

0

22 2/

1

2/

1

2

1 N

j

jkj

kN

j

jkjk wx

Nwwx

NX

Page 20: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Transformada rápida (II)

impark

park XwXX 2

1

Orden (N log(N))

15,711,313,59,110,610,212,48,0 kkkkkkkk wwwwwwwx

15,11,7,313,9,5,114,10,6,212,8,4,0 kkkk wwwx

15,13,11,9,7,5,3,114,12,10,8,6,4,2,0 kk wx

15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0kx

Page 21: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

0

1x

2x

3x

4x

5x

6x

7x

8x

9x

10x

11x

12x

13x

14x

15x

7X

12X

15

14

13

XXX

11

10

9

8

XX

XX

X

6

5

4

3

2

XX

XX

1

0

X

Transformada rápida (III)

Page 22: Procesamiento de Imágenes Abel Fernández Laborda Pablo López Mozas.

Bibliografía

“Parallel programming”. Barry Wilkinson, Michael Allen. Prentice-Hall. 1999.

“Parallel algorithms for digital image processing, computer vision and neural networks”. Ioannis Pitas (Editor). John Wiley & sons. 1993