Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Visin de Mquina
23 de septiembre de 2009
Visin de Mquina
Introduccin
La palabra morfologa signica forma y estructura de un objeto. La Morfologa Matemtica es una tcnica no lineal de procesamiento de imgenes basada en operaciones de conjuntos. Desde un punto de vista geomtrico la morfologa matemtica consiste en comparar los objetos a analizar con otro tipo de objeto de forma conocida, denominado elemento estructurante.
Las operaciones morfolgicas constituye una herramienta de extraccin de componentes de imagen tiles en la representacin y descripcin de la forma de las regiones.
Prof. Flavio Prieto Visin de Mquina 2
Preliminares
La morfologa matemtica trata con la forma y estructura de elementos. Ella est relacionada con teora de conjuntos.
Visin de Mquina
Preliminares
La reexin del conjunto B es denida como: B = {w|w = b, para b B}. La traslacin del conjunto A por el punto z = (z1 , z2 ) es denido por: (A)z = {c|c = a + z, para a A}.
Visin de Mquina
Preliminares
Para imgenes binarias las operaciones lgicas bsicas estn denidas como se muestra en la tabla.
Visin de Mquina
Preliminares
Visin de Mquina
Operaciones Bsicas
Imgenes binarias Dilatacin.
Visin de Mquina
Operaciones Bsicas
Dilatacin.
Para A y B conjuntos en Z 2 , la dilatacin de A por B, denotada por A B, est denida como: A B = {z|(B)z A = }.
Visin de Mquina
Operaciones Bsicas
Ejemplo de dilatacin.
Visin de Mquina
Operaciones Bsicas
Visin de Mquina
10
Operaciones Bsicas
Erosin.
Visin de Mquina
11
Operaciones Bsicas
Erosin.
Para A y B conjuntos en Z 2 , la erosin de A por B, denotada por A B, est denida como: A B = {z|(B)z A}.
Visin de Mquina
12
Operaciones Bsicas
Ax B = (A A Bx = (A si 0 B, A A
(B1 Bk ) = ( (A B1 )
Bk ).
Visin de Mquina
13
Operaciones Bsicas
Ejemplo: erosin seguida por dilatacin.
Visin de Mquina
14
Operaciones Bsicas
La dilatacin y la erosin son duales con respecto al complemento y la reexin de conjuntos, es decir: B)c = Ac B.
(A
Visin de Mquina
15
Apertura y Cierre
Apertura (opening). La apertura del conjunto A por el elemento estructurante B, est denida por: A B = (A Cierre (closing). El cierre del conjunto A por el elemento estructurante B, est denida por: A B = (A B) B. B) B.
Visin de Mquina
16
Apertura y Cierre
Interpretacin de apertura.
Visin de Mquina
17
Apertura y Cierre
Interpretacin del cierre.
Visin de Mquina
18
Apertura y Cierre
Ejemplo de apertura y cierre.
Visin de Mquina
19
Apertura y Cierre
La apertura y el cierre son operaciones duales con respecto al complemento y la reexin de conjuntos, es decir: (A B)c = Ac B.
Visin de Mquina
20
Apertura y Cierre
Apertura y cierre como ltro morfolgico. La apertura y cierre pueden ser utilizadas para la reduccin del ruido (como los ltros espaciales). El ltro morfolgico consiste de una apertura seguida por un cierre. (A B) B.
Visin de Mquina
21
Apertura y Cierre
Ejemplo de apertura y cierre como ltro.
Visin de Mquina
22
Apertura y Cierre
Visin de Mquina
23
Transformada Hit-or-Miss
La transformada Hit-or-Miss (Transf. de ganancia o prdida). Es una herramienta para la deteccin de formas, denida como: A Donde B = (B1 , B2 ), con: B1 = X , B2 = (W X ). B es la conguracin que se quiere encontrar. B1 son los pxeles negros de B, y B2 los pxeles negros del complemento de B. Con W una ventana local que encierra al objeto X y cuyo valor de intensidad es el del fondo (background).
Prof. Flavio Prieto Visin de Mquina 24
B = (A
B1 ) (Ac
B2 ).
Transformada Hit-or-Miss
A B = (A B1 ) (Ac B2 ).
Visin de Mquina
25
Algoritmos Morfolgicos
Extraccin de fronteras. La frontera de A, notada por (A), se puede hallar como: (A) = A (A B).
Visin de Mquina
26
Algoritmos Morfolgicos
Extraccin de fronteras.
Visin de Mquina
27
Algoritmos Morfolgicos
Llenado de regiones. Se obtiene con el siguiente proceso iterativo: Xk = (Xk 1 B) Ac , k = 1, 2, 3, . . . donde X0 = p es un punto dentro de la frontera. B es un elemento estructurante simtrico.
Visin de Mquina
28
Algoritmos Morfolgicos
Xk = (Xk 1 B) Ac , k = 1, 2, 3, . . .
Visin de Mquina
29
Algoritmos Morfolgicos
Extraccin de componentes conectadas. Se obtiene con el siguiente proceso iterativo: Xk = (Xk 1 B) A, k = 1, 2, 3, . . . donde X0 = p es un punto de la regin conectada. B es un elemento estructurante simtrico.
Visin de Mquina
30
Algoritmos Morfolgicos
Xk = (Xk 1 B) A, k = 1, 2, 3, . . .
Visin de Mquina
31
Algoritmos Morfolgicos
Envolvente convexa. La envolvente convexa H de un conjunto arbitrario S es el menor conjunto convexo que contiene a S.
i Xk = (Xk 1 i Con X0 = A. i Sea D i = Cconv , donde el subndice conv indica convergencia, i i en el sentido que Xk = Xk 1 .
bi ) A, i = 1, 2, 3, . . .
C(A) =
i=1
Di .
Visin de Mquina
32
Algoritmos Morfolgicos
Visin de Mquina
33
Algoritmos Morfolgicos
Un problema del mtodo anterior es que la envolvente convexa puede crecer ms all de la dimensin mnima requerida para garantizar la convexidad. Este problema se puede reducir limitando el crecimiento para que no vaya ms all de las dimensiones horizontales y verticales del conjunto original.
Visin de Mquina
34
Algoritmos Morfolgicos
Adelgazamiento. El adelgazamiento del conjunto A por el elemento estructurante B, est denido por: A B = A (A = A (A B) B)c .
Una expresin de adelgazamiento simtrico, est basada en una secuencia (rotaciones) de elementos estructurantes: {B} = {B 1 , B 2 , B 3 , . . . , B n }. El adelgazamiento se dene como: A {B} = . . . (A B 1 ) B 2 . . . B n .
Visin de Mquina 35
Algoritmos Morfolgicos
A {B} = `` ` . . . (A B 1 ) B 2 . . . B n .
Visin de Mquina
36
Algoritmos Morfolgicos
Engrozamiento. Es el dual de adelgazamiento, est denido como: A de forma ms general: A {B} = . . . (A B1) B2 . . . Bn . B = A (A B),
Visin de Mquina
37
Algoritmos Morfolgicos
Adelgazamiento del complemento.
Visin de Mquina
38
Algoritmos Morfolgicos
Esqueleto. z es un punto del esqueleto S(A), si (D)z es el disco ms grande centrado en z y ciontenido en A. El disco (D)z toca la frontera de A en dos o ms lugares diferentes.
Visin de Mquina
39
Algoritmos Morfolgicos
Esqueleto. En funcin de dilataciones y erosiones, el esqueleto est denido como:
K
S(A) =
k =0
Sk (A).
B)
Visin de Mquina
Algoritmos Morfolgicos
K es la ltima iteracin antes de que se produzca un conjunto vaco, es decir: K = max{k |(A kB) = }.
A=
k =0
donde (Sk (A) kB) representa k sucesivas dilataciones, como: (Sk (A) kB) = ((. . . (Sk (A) B) B) . . . ) B.
Visin de Mquina
41
Algoritmos Morfolgicos
Visin de Mquina
42
Dilatacin. Sea f (x, y ) una imagen monocromtica y b(x, y ) un elemento estructurante. La dilatacin de f por b est denida por: (f b)(s, t) = max{f (s x, t y ) + b(x, y )|(s x), (t y ) Df ; (x, y ) Db }, donde Df y Db son los dominios de f y b repectivamente.
Visin de Mquina
43
Visin de Mquina
44
Visin de Mquina
45
Visin de Mquina
46
Visin de Mquina
47
Visin de Mquina
48
Visin de Mquina
49
Visin de Mquina
50
Visin de Mquina
51
Visin de Mquina
52
Visin de Mquina
53
El tratamiento individual de cada mapa I1 , I2 e I3 se conoce como procesamiento marginal. La alternativa al procesamiento marginal es afrontar el problema de la ordenacin de los pxels y tratar los datos como vectores indivisibles: tratamiento vectorial.
Prof. Flavio Prieto Visin de Mquina 54
Visin de Mquina
55
El nico detalle aparece en la eleccin de la funcin f en la que operar, i [1, 2, 3]. Otro punto es que en morfologa a color generalmente el elemento estructurante es plano, luego: (f b)(s, t) = min{fi (s + x, t + y )|(s + x), (t + y ) Df ; (x, y ) Db },
Prof. Flavio Prieto Visin de Mquina 56
Visin de Mquina
57
(a) Zoom de la imagen original. (b) Zoom de la operacin de erosin, aparicin de nuevas cromaticidades.
Prof. Flavio Prieto Visin de Mquina 59
Se puede concluir armando que la aproximacin marginal no es, en general, un mtodo satisfactorio para la extensin de morfologa clsica a imgenes cromticas.
Prof. Flavio Prieto Visin de Mquina 60
Visin de Mquina
62
La ordenacin de datos multidimensionales no es una tarea sencilla. Se debe denir una funcin de orden que, sobre una base Z n , proyecte un ndice de orden en el espacio Z . En imgenes, n = 3: o : Z 3 Z . Se notarn los elementos vectoriales de un conjunto en negrita, de forma que: (p, q) Z 3 , p q o(p) o(q).
Visin de Mquina
63
La denicin de operaciones morfolgicas vectoriales debe amoldarse a los datos sobre los que operar: vectores. Denimos la erosin vectorial como: (f b)(s, t) = mino {f (s + x, t + y ) b(x, y )|(s + x), (t + y ) Df ; (x, y ) Db }
Denimos la dilatacin vectorial como: (f b)(s, t) = maxo {f (s x, t y ) + b(x, y )|(s x), (t y ) Df ; (x, y ) Db }
Visin de Mquina
64
Visin de Mquina
67
Visin de Mquina
68
Los puntos que satisfacen la condicin (2) son llamados paredes de la cuenca o watershed del mnimo. Los puntos que satisfacen la condicin (3) forman las lneas cresta o cima de la topografa de la supercie, son llamadas lneas divisorias o lneas watershed. El objetivo de los algoritmos de segmentacin basados en estos conceptos es encontrar las lneas watershed.
Visin de Mquina
69
Visin de Mquina
70
Visin de Mquina
71
Generalmente la segmentacin watershed se aplica a una imagen de magnitud del gradiente ms que a la imagen misma. En la imagen de magnitud del gradiente, las regiones de mnimos locales corresponden a los valores de gradiente pequeo.
Visin de Mquina
72
Visin de Mquina
73
Visin de Mquina
74
Visin de Mquina
75
C[n] =
i=1
Cn (Mi ).
C[max + 1] =
i=1
Cn (Mi ).
Visin de Mquina
77
C[n] es un subconjunto de T [n], por lo tanto C[n 1] es un subconjunto de T [n]. Por lo anterior se sigue que cada componente conectado de C[n 1] est contenido en exactamente un componente conectado de T [n]. El algoritmo para encontrar las lneas watershed es inicializado con C[min + 1] = T [min + 1]. El algoritmo es recursivo y asume que en el paso n se ha sido construido C[n 1].
Visin de Mquina
78
La condicin (1) ocurre cuando un nuevo mnimo es encontrado, en cuyo caso el componente conectado q es incorporado a C[n 1] para formar C[n].
Prof. Flavio Prieto Visin de Mquina 79
La condicin (2) ocurre cuando q cae en la pared de cuenca de algn mnimo regional, en cuyo caso el componente conectado q es incorporado a C[n 1] para formar C[n]. La condicin (3) ocurre cuando todo, o parte, de un puente que separa dos o ms paredes de cuenca es encontrado. Una inundacin adicional producir una mezcla de aguas de las cuencas. Por lo tanto una presa debe ser construida en q para prevenir el sobreujo de aguas.
Visin de Mquina
80
Visin de Mquina
81
Visin de Mquina
82
Funciones en Matlab
Estudiar las siguientes funciones de Matlab: imdilate. imerode. strel. imopen. imclose. bwhitmiss. bwmorph. imreconstruct. imll. imclearborder
Visin de Mquina
83
Tarea
Aplicar la funcin Watershed a la segmentacin de imagenes (imgenes generales y de su proyecto). Evaluar el desempeo de esta tcnica de segmentacin.
Visin de Mquina
84