20
Capitulo 2 Capitulo 2 Filtrado Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Embed Size (px)

Citation preview

Page 1: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Capitulo 2Capitulo 2FiltradoFiltrado

Filtrado Espacial

Visión de Máquina

Ingeniería en Automática Industrial

Page 2: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtrado EspacialFiltrado EspacialSon filtros que se realizan directamente sobre

la imagen y por tanto en el dominio del espacio.

Aplicaciones:◦ Reducción de ruido◦ Detección de bordes en una dirección◦ Contornos◦ Suavizado

Los píxeles de la nueva imagen dependen del píxel de la imagen original y sus vecinos.

Page 3: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtrado EspacialFiltrado EspacialEquivalencia de los filtros en el plano frecuencial son

las mascaras de convolución en el dominio espacial.

Page 4: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtrado EspacialFiltrado Espacial

g(x,y)Imagen procesada

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

w1

w2

w3

w4

w5

w6

w7

w8

w9

f(x,y)Imagen de entrada

w:máscara, kernel,

ventana,filtro

w1

w2

w3

w4

w5

w6

w7

w8

w9

Page 5: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

ConvoluciónConvoluciónLa convolución es una operación matemática

que suma una función f consigo misma repetidas veces en todo el dominio de otra función h, utilizando en cada suma como valor de escala el valor de h en ese punto de su dominio.

Su formulación matemática es:

( )* ( ) ( ) ( )f x h x f x h u x dx

Page 6: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Convolución discretaConvolución discretaModifica el nivel de gris de los pixeles de la

imagen teniendo en cuenta los pixeles de su entorno de vecindad

La máscara h debe ser rotada antes de efectuar el producto con f.

( , ) * ( , ) ( , )m n

g i j f h f m n h i m j n

Page 7: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

EjemploEjemplo

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

f

8 1 6

3 5 7

4 9 2

h

2 9 4

7 5 3

6 1 8

g(2,4) = 1*2+8*9+15*4+7*7+14*5+16*3+13*6+20*1+22*8 = 575

A = magic(5); h = [8 1 6; 3 5 7; 4 9 2];% Convolucion de dos matricesg=conv2(A,h,'same')

A = magic(5); h = [8 1 6; 3 5 7; 4 9 2];% Convolucion de dos matricesg=conv2(A,h,'same')

Page 8: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtro espacial pasa bajoFiltro espacial pasa bajoPromediado del entornoDifumina los bordes y otros detalles

g(x,y) es simplemente la media de todos los niveles de gris del área de la máscara

1 1 1

1 1 1

1 1 1

1*

9

Page 9: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtro espacial pasa altoFiltro espacial pasa alto La suma de los coeficientes es cero.

Si la máscara esta sobre un nivel de gris constante o lentamente variable, la salida proporcionada por la máscara es cero o un valor pequeño

Reducción del valor medio de la imagen Mejora de los bordes

-1 -1 -1

-1 8 -1

-1 -1 -1

1*

9

Page 10: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtro de la medianaFiltro de la medianaEl nivel de gris se reemplaza por la mediana

de los niveles de gris de la vecindad.

Carga computacional elevada

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

4,5,6,7,10,12,13,19,23

Mediana

g(3,2)=10

Page 11: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Considere f(x) que representa un perfil de línea

El perfil muestra las variaciones al pasar de una zona clara a una zona oscura y viceversa

La primera derivada detecta la variación. El máximo del valor absoluto coincide con el punto central del borde

La segunda derivada detecta los cambios en la pendiente y los cambios de la primera derivada. Los pasos por cero coinciden con el centro del borde

Filtro diferencial - Filtro diferencial - GradienteGradiente

Page 12: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Filtro diferencial - Filtro diferencial - GradienteGradientePara una función f(x,y) el gradiente de f en el

punto de coordenadas (x,y) se define como el vector,

La derivada apunta en la dirección de máxima variación de f(x,y).

( , )

( , )x

y

ff x yx

ff f x yy

2 2( , ) ( ( , )) ( ( , ))x yf x y f x y f x y

1 ( , )( , ) tan

( , )y

x

f x yx y

f x y

Page 13: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Aprox discreta del Aprox discreta del gradientegradienteAprox por diferencia de pixeles adyacentes

Máscaras

Gradiente de fila Gradiente de columna

z1 z2 z3

z4 z5 z6

z7 z8 z9

y

x2 2

5 8 5 6( , ) ( ) ( )f x y z z z z

5 8 5 6( , )f x y z z z z

0 0 0

0 1 -1

0 0 0

0 0 0

0 1 0

0 -1 0

Page 14: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Aprox discreta del Aprox discreta del gradientegradienteAprox por diferencias cruzadas

Máscaras de Roberts

Extremada sensibilidad al ruido

z1 z2 z3

z4 z5 z6

z7 z8 z9

2 25 9 6 8( , ) ( ) ( )f x y z z z z y

x5 9 6 8( , )f x y z z z z

0 0 0

0 1 0

0 0 -1

0 0 0

0 0 1

0 -1 0

1 ( , )( , ) tan

4 ( , )y

x

f x yx y

f x y

Page 15: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Aprox discreta del Aprox discreta del gradientegradienteOperadores de Prewitt

Se involucran a los vecinos de filas/columnas adyacentes para proporcionar mayor inmunidad al ruido.

-1 -1 -1

0 0 0

1 1 1

-1 0 1

-1 0 1

-1 0 1

7 8 9 1 2 3

3 6 9 1 4 7

( , ) ( ) ( )

( ) ( )

f x y z z z z z z

z z z z z z

1*

31

*3

Page 16: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Aprox discreta del Aprox discreta del gradientegradienteOperadores de Sobel

Más sensible a los bordes diagonales

-1 -2 -1

0 0 0

1 2 1

-1 0 1

-2 0 2

-1 0 1

7 8 9 1 2 3

3 6 9 1 4 7

( , ) ( 2 ) ( 2 )

( 2 ) ( 2 )

f x y z z z z z z

z z z z z z

1*

41

*4

Page 17: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

ImplementaciónImplementación

x yf f ( , )f x y

Imagen Gradiente

( , )f x y Imagen binaria

Punto de borde

No es Punto del borde

NO

SI

Page 18: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

LaplacianoLaplacianoEl laplaciano de una función bidimensional

esta definido por: 2 22

2 2

f ff

x y

f(i-1,j) f(i,j) f(i+1,j)

y

x ( , ) ( 1, )

( , ) ( 1, )

y

y

f f i j f i j

f f i j f i j

2

2( , ) ( 1, )yy y

fff i j f i j

y y

2

2( , ) ( 1, ) ( , ) ( 1, )

( 1, ) 2 ( , ) ( 1, )

ff i j f i j f i j f i j

y

f i j f i j f i j

Page 19: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

LaplacianoLaplaciano

Lapalciano de 4 vecinos. Sensible al ruidoPosibilidad de detectar bordes de manera más precisa

mediante la determinación de los cruces por cero.

0 0 0

-1 2 -1

0 0 0

0 -1 0

0 2 0

0 -1 0

0 -1 0

-1 4 -1

-0 -1 0

1*

4

Page 20: Capitulo 2 Filtrado Filtrado Espacial Visión de Máquina Ingeniería en Automática Industrial

Comandos MatlabComandos Matlab