Sie sind auf Seite 1von 33

Procesamiento de Senales e Imagenes Digitales: Segmentacion de

Imagenes
MSc. Renan Rojas G.

Noviembre 21, 2014

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

1 / 33

Segmentacion de Imagenes
Aislar / discriminar los objetos de interes descritos en una imagen.
Entrada: se
nal bidimensional. Salida: regi
on de interes.
Procedimiento basado en 2 propiedades de intensidad:
a. Discontinuidad
b. Similaridad

Figura : Segmentaci
on de personas
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

2 / 33

Deteccion de discontinuidades

Deteccion de discontinuidades (puntos, lineas y bordes)


* Basada en derivadas (diferencias finitas)
i. Derivadas de 1er orden producen bordes gruesos en discontinuidades.
ii. Derivadas de 2do orden tienen respuestas mas marcadas en detalles finos.
iii. Derivadas de 2do orden producen cruces por cero en rampas y escalones.
iv. El signo de la derivada de 2do orden da informacion del cambio de intensidad.

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

3 / 33

Deteccion de discontinuidades

Figura : Diferencias finitas


Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

4 / 33

Deteccion de puntos
1 Detecci
on de puntos: dada la respuesta
R(x, y) = f (x, y) w(x, y);

1 1 1
w(x, y) = 1 8 1
1 1 1

(Filtro Laplaciano)

Entonces, (x0 , y0 ) es un punto aislado si R(x0 , y0 ) T,

T R+

* R(x, y) = 0 en regiones planas


* T : valor heurstico. Ej: T = 0,9 max{f (x, y)}

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

5 / 33

Deteccion de puntos

Figura : Detecci
on de puntos
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

6 / 33

Deteccion de lneas
2 Detecci
on de lneas: (x, y) es asociado con una lnea de determinada direccion si
|Ri (x, y)| |Rj (x, y)|;

w0 = 1
1

1
w90 = 2
1

i, j = {0 , 45 , 90 , 45 }

2 1
2 1 1
2 1 ; w45 = 1 2 1 ;
2 1
1 1 2

1 1
1 1 2
2
2 ; w45 = 1 2 1 ;
1 1
2 1 1

* Adicionalmente, es posible usar el Laplaciano para detectar lineas, teniendo en cuenta sus
efectos (cruces por cero generan dos bordes en discontinuidades).
* Limitacion: lineas con grosor mayor a tres pixeles no son detectadas.
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

7 / 33

Deteccion de lneas

(a) Detecci
on de lneas a partir de
Laplaciano

(b) Detecci
on de lneas a partir de
m
ascaras de direcciones

Figura : Detecci
on de lneas
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

8 / 33

Deteccion de bordes
3 Detecci
on de bordes: tres tipos:
a. escalones (bordes ideales)
b. rampas
c. techo (roof)

Metodo inicial: derivadas (diferencias finitas)


* Problema: derivadas son sensibles al ruido.
Entonces: pasos fundamentales para la detecci
on de bordes:
i. Eliminaci
on de ruido.
ii. Detecci
on de potenciales bordes.
iii. Localizaci
on de bordes reales.

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

9 / 33

Deteccion de bordes

(a) Escal
on, rampa y techo

(b) Escal
on, rampa y techo en im
agenes reales

Figura : Detecci
on de bordes
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

10 / 33

Deteccion de bordes

(a) Efecto de derivadas de diferente orden en rampas

(b) Efecto de ruido en derivadas

Figura : Detecci
on de bordes
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

11 / 33

Segmentacion basada en discontinuidades

i. Eliminaci
on de ruido: M
ultiples alternativas. Acercamiento sencillo: filtro pasa bajos
(suavizar la imagen)
ii. Detecci
on de potenciales bordes: medir magnitud y direccion de cambios de intensidad
a partir de gradientes.
 2
1
df
df 2 2
;
|f (x, y)| =
+
dx
dy
 df 
dy
1
f (x, y) = tan
;
df
dx

* Direccion del borde es ortogonal a f (x, y).

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

12 / 33

Segmentacion basada en discontinuidades

(a) Direcci
on de gradiente respecto al borde

(b) M
ascaras unidimensionales de derivaci
on

Figura : Detecci
on de bordes a partir de gradientes

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

13 / 33

Segmentacion basada en discontinuidades

M
ascaras para estimar gradientes:
a. Roberts: gradientes cruzadas de tama
no 2 2 (no simetricas respecto al pixel central).
b. Prewitt: gradientes (horizontal, vertical y cruzadas) de tama
no 3 3 (simetricas respecto al
pixel central).
c. Sobel: gradientes (horizontal, vertical y cruzadas) de tama
no 3 3. Mayor peso en los
coeficientes centrales (suavizado).

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

14 / 33

Segmentacion basada en discontinuidades

(a) M
ascara de gradiente horizontal
y vertical

(b) M
ascara de gradiente diagonal

Figura : M
ascaras de gradientes
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

15 / 33

Segmentacion basada en discontinuidades

(a) Magnitud de gradiente

(b) Fase de gradiente

Figura : Magnitud y fase de gradientes

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

16 / 33

Segmentacion basada en discontinuidades

(a) Magnitud de gradiente (previo suavizado, filtro


promedio de 5 5)

(b) Detecci
on de bordes diagonales usando m
ascaras Sobel

Figura : Magnitud y fase de gradientes

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

17 / 33

Segmentacion basada en discontinuidades

iii. Localizaci
on de bordes reales: umbralizaci
on de gradientes.
* Discriminar cambios de intensidad mas fuertes a partir de un valor umbral.

1
|f (x, y)| T
|f (x, y)|TH =
0
otros

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

18 / 33

Segmentacion basada en discontinuidades

Figura : Umbralizaci
on de magnitud de gradientes
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

19 / 33

Tecnicas avanzadas de deteccion de bordes: LoG


Detector de bordes Marr-Hildreth (Laplaciano de Gaussiano, LoG)
*Cambios de intensidad dependen del tama
no de la imagen y la escala de los elementos
contenidos.
*Efectos de cambios para la primera y segunda derivada permiten identificar bordes
Entonces, se propone mascaras diferenciales, lo que permite ajustar el efecto ante objetos
de diferentes escala.
a. Operadores grandes: detecta bordes bien definidos.
b. Operadores grandes: detecta detalles finos.

Finalmente, se obtiene el Laplaciano de Gaussiano (LoG, Marr-Hildreth edge


detector)
 2


d2
d2
x + y 2 2 2 x2 +y2 2
2
2 g(x, y) = 2 g(x, y) + 2 g(x, y) =
e
dx
dy
4
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

20 / 33

Tecnicas avanzadas de deteccion de bordes: LoG

Figura : Detector Marr-Hildreth (LoG)


Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

21 / 33

Tecnicas avanzadas de deteccion de bordes: LoG


Dos formas de implementaci
on:
a. muestrear directamente y obtener una mascara LoG de tama
no n n y convolucionar.
b. muestrear dos mascaras (2 , g) de tama
no n n y convolucionar

Dado que es un operador lineal:






h(x, y) = 2 g(x, y) f (x, y) = 2 g(x, y) f (x, y)
*Suavizar con g y resaltar con 2 .
La mascara resultante debe ser muestreada de tal manera que la suma de elementos = 0
(minimizar respuesta en zonas homogeneas).
99,7 % del volumen de g se encuentra dentro de 3 alrededor de la media . Entonces,
n debe ser impar > 6.
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

22 / 33

Tecnicas avanzadas de deteccion de bordes: LoG

Los bordes de f (x, y) pueden ser ubicados hallando los cruces por cero en h(x, y)
Acercamiento: dado (x0 , y0 ) y su vecindad de 3 3 (N 33 (x0 , y0 )), si al menos dos
vecinos tienen signos opuestos, se asume un cruce por cero.
* Problema: Efecto Spaguetti (bucles cerrados)
* Soluci
on: (signos opuestos) (valor absoluto de diferencia >  hmax )

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

23 / 33

Tecnicas avanzadas de deteccion de bordes: LoG

Figura : LoG y efecto Spaguetti


Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

24 / 33

Tecnicas avanzadas de deteccion de bordes: DoG

Aproximacion de LoG: Diferencia de Gaussianas (DoG)






2
2
x +y

1
1
2
21
DoG(x, y) =
e
e

2
2
21
22

x2 +y 2
2
22


;

1 > 2

Ajuste de para que LoG y DoG sean comparables:


 2 2   2
1 2

2
=
ln 12
12 22
2
Adicionalmente, la amplitud de LoG debe ser escalada por
DoG.

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

1
2 2

para ser comparable con

Noviembre 21, 2014

25 / 33

Tecnicas avanzadas de deteccion de bordes: DoG

Figura : LoG y DoG

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

26 / 33

Tecnicas avanzadas de deteccion de bordes: Canny


Detector de bordes Canny:
Propiedades:
minimizar falsos positivos
bordes bien localizados
robusto ante ruido Gaussiano

Procedimiento:
i. Suavizar imagen:
fs (x, y) = g(x, y) f (x, y);

g(x, y) : filtro pasabajos

ii. Hallar magnitud y fase de gradiente:


|fs (x, y)|;
Ren
an Rojas G.

fs (x, y);

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

27 / 33

Tecnicas avanzadas de deteccion de bordes: Canny


iii. Non-maxima suppression:
a. Definir orientaciones para la direcci
on ortogonal a los bordes: direcci
on de gradiente.

d(x, y) =

d1 ,

d2 ,

{157,5 < fs (x, y) < 157,5 } {22,5 < fs (x, y) < 22,5 }

d3 ,

d4 ,

{112,5 < fs (x, y) < 67,5 } {67,5 < fs (x, y) < 112,5 }

{157,5 < fs (x, y) < 112,5 } {22,5 < fs (x, y) < 67,5 }

{67,5 < fs (x, y) < 22,5 } {112,5 < fs (x, y) < 157,5 }

d1 : gradiente en 0 (borde horizontal)


d2 : gradiente en 45 (borde 45 )
d3 : gradiente en 90 (borde vertical)
d4 : gradiente en 45 (borde 45 )
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

28 / 33

Tecnicas avanzadas de deteccion de bordes: Canny

Figura : Detector Canny: Non-maxima suppression


Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

29 / 33

Tecnicas avanzadas de deteccion de bordes: Canny

b. Analizar el pixel de interes y sus dos vecinos en la direcci


on de la gradiente. Dado (x0 , y0 ):
Si

d(x0 , y0 ) = d1 vecinos:

(x0 1, y0 ); (x0 + 1, y0 );

Si

d(x0 , y0 ) = d2 vecinos:

(x0 1, y0 1); (x0 + 1, y0 + 1);

Si

d(x0 , y0 ) = d3 vecinos:

(x0 , y0 1); (x0 , y0 + 1);

Si

d(x0 , y0 ) = d4 vecinos:

(x0 + 1, y0 1); (x0 1, y0 + 1);

c. Luego:

fN (x, y) =

Ren
an Rojas G.

|fs (x, y)|,


0,

|fs (x, y)| > magnitud de gradiente de vecinos


otros

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

30 / 33

Tecnicas avanzadas de deteccion de bordes: Canny

iv. Umbralizaci
on por hist
eresis: definir umbrales TH , TL : (TH > TL )

1, fN (x, y) TH
fNH (x, y) =
0,
otros
fNL (x, y) = (x, y) fNH (x, y);

(x, y) =

1,
0,

fN (x, y) TL
otros

Finalmente, definir como bordes a todos los elementos 1 en fNH y a todos los elementos 1
en fNL conectados (directa e indirectamente) con elementos 1 en fNH .

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

31 / 33

Tecnicas avanzadas de deteccion de bordes: Canny

Figura : Detector Canny: umbralizaci


on por hist
eresis
Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

32 / 33

Referencias

(1) Captulo 10
Gonzalez, Rafael C. & Woods, Richard E. (2006), Digital Image Processing, 3rd Edition,
Prentice-Hall Inc.
http://www.imageprocessingplace.com/

Ren
an Rojas G.

IEE239: Segmentaci
on de Im
agenes

Noviembre 21, 2014

33 / 33

Das könnte Ihnen auch gefallen