190 segmentación por umbralización 4 se basa en el establecimiento de un umbral t (o varios) y...
Post on 23-Jan-2016
222 Views
Preview:
TRANSCRIPT
1
Segmentación por umbralización
Se basa en el establecimiento de un umbral T (o varios) y reasignar el valor de la intensidad de gris según:
Para un caso general el histograma es una transformación de la forma: T=T[x,y,p(x,y),f(x,y)] f(x,y) nivel de gris en el punto (x,y). p(x,y) alguna propiedad local al punto. x,y coordenadas del punto.
Suele usarse para diferenciar entre objeto y fondo, la iluminación no uniforme es fuente de problemas.
La dificultad está en encontrar el valor correcto del umbral.
Tyxfsi
Tyxfsiyxg
),(0
),(1),(
2
Umbralización global
Se basa en el histograma de la imagen.
Búsqueda del umbral óptimo en base a suponer un histograma bimodal. Emplea funciones de densidad de probabilidad (FDP). Suponer que cada modo se ajusta a una FDP (gaussiana) Calcular las probabilidades de pertenecer a cada región. Minimizar la posibilidad de errar al asignar un pixel de fondo a
objeto o viceversa. Exige un método iterativa de ajuste.
2550 T 0 T2 255T1 0 255
Histograma bimodal Histograma multimodal Histograma sin forma definida
)()(1)()()( 2211212211 zpPzpPPPzpPzpPzp
3
Ejemplo de umbralización 1
Imagen original
Imagen binarizada con umbral en 156
Histograma de la Imagen original
4
Ejemplo de umbralización 2
Imagen original
Imagen binarizada con umbral en 195
Histograma de la Imagen original
5
Umbrales locales y dinámicos
Son muy útiles cuando: Hay varios objetos en la imagen de distintos niveles de gris. Las condiciones de iluminación no son uniformes.
Se subdivide la imagen en subregiones: Se calcula el histograma para cada región, si es bimodal se puede
determinar el umbral óptimo. Pueden aplicarse propiedades locales p(x,y),por ejemplo
establecer una diferencia mínima entra los valores max y min de la región.
Algunos umbrales se pueden calcular por interpolación entre los de las regiones vecinas.
6
Umbrales basados en las características del límite Se considerarán solamente los pixels situados en el límite entre los
objetos y el fondo. Así el histograma se hace menos dependiente de los tamaños relativos de
objeto y fondo. Si se han empleado operadores de gradiente o laplaciana se aumentan las
diferencias entre los picos del histograma. Con el empleo del gradiente y la laplaciana se puede determinar si un
punto está en un contorno claro-oscuro u oscuro-claro.
No está en un contorno
Lado oscuro de un contorno
Lado claro de un contorno Luego se analizan por filas y columnas las combinaciones de 0, 1 y 2
para marcar claramente los contornos.
02
01
0
),(2
2
fyTfsi
fyTfsi
Tfsi
yxs
7
Segmentación basada en regiones
Se divide una imagen R en regiones Ri estableciendo similitudes
de acuerdo a las siguientes 5 reglas:
Donde P es un predicado, una condición que se verifica en todos los puntos pertenecientes a una región y que es falsa en las demás. (niveles de gris, gradiente, textura etc.).
jiparaFALSORRPe
niparaVERDADERORPd
jijyitodoparaRRc
niconexaregiónunaesRb
RRa
ji
i
ji
i
n
ii
)()
,...,2,1)()
,)
,....,2,1,)
)1
8
Crecimiento de regiones
Agrupa pixels o subregiones dentro de regiones más grandes. Se establecen puntos semilla, tantos como regiones se espera que
haya, y en torno a ellos se van añadiendo más. Una de las dificultades es establecer los puntos semilla,
generalmente dependen de la naturaleza del problema.
Generalmente también debe establecerse una regla de parada.
8),(3),(
56510
66702
77610
78511
76500
FsemillayxfFsemillayxf
aaaaa
aaaaa
aaaaa
aaaaa
aaaaa
bbbaa
bbbaa
bbbaa
bbbaa
bbbaa
9
División y fusión de regiones
Se subdivide la imagen en un conjunto de regiones que luego se pueden fusionar y/o dividir nuevamente para cumplir las condiciones que se impongan. Dividir en 4 cuadrantes disjuntos cualquier región Ri donde
P(Ri)=falso. Fusionar las regiones adyacentes Rj y Rk para las cuales
P(Rj U Rk)=Verdadero Parar cuando no sea posible realizar más fusiones o divisiones.
Típicamente se utiliza la división por árboles cuaternarios
10
Ejemplo de descomposición cuaternaria
Criterio: La diferencia en una región < 5
1 1 1 1 2 3 6 6 1 1 2 1 4 5 6 8 1 1 1 1 10 15 7 7 1 1 1 1 20 25 7 720 22 20 22 1 2 3 420 22 22 20 5 6 7 820 22 20 20 9 10 12 1222 22 20 20 13 14 15 16
0 0 0 0 1 1 2 20 0 0 0 1 1 2 20 0 0 0 3 13 4 40 0 0 0 14 15 4 45 5 5 5 6 6 7 75 5 5 5 6 6 7 75 5 5 5 8 8 9 105 5 5 5 8 8 11 12
11
Ejemplo con imagen de granos de aluminio
Imagen original Descomposición según árbol cuaternario
Imagen con valores promedios en cada región
12
Utilización del movimiento
Se deriva de un desplazamiento relativo entre los sensores y la escena.
Un método básico estriba en comparar pixel a pixel dos imágenes de una misma escena, estableciendo una imagen de diferencias.
Este mecanismo se puede establecer con imágenes grabadas y con la iluminación relativamente constante.
Aparecería un 1 en los pixels que ahora ocupa el móvil, en los pixels que abandonó y en algunos pixels ruidosos, que se eliminan fácilmente imponiendo condiciones de conectividad.
contrariocasoen
umbralunTsiendoTtyxftyxfsid iiij
0
),,(),,(1 1
13
Diferencias acumuladas
000
000
000
000
000
000
000
000
000
000
000
000
000
000
000
000
11
11
11
11
1212
1212
1212
1212
123123
123123
123123
123123
12341234
12341234
12341234
12341234
14
Operaciones morfológicas
Se denominan operaciones morfológicas porque trabajan en base a la forma de los objetos
Pueden trabajar con imágenes binarias o de niveles de gris. Se van a presentar operaciones morfológicas binarias.
Son operaciones a nivel de conjuntos. Se trabaja a nivel de lógica booleana.
• Rellenan pequeños huecos o discontinuidades
• Eliminan pequeños salientes.• Reducen una imagen a su esqueleto.
• Eliminan fragmentos de acuerdo a un patrón
15
Algunas definiciones básicas
Sean A y B dos conjuntos en Z2 con componentes a=(a1,a2) y b=(b1,b2).
La traslación de A por x=(x1,x2) representada por (A)x se define como:
La reflexión de A, representada por  se define como:
El complemento del conjunto A es:
La diferencia de dos conjuntos A-B se define como:
Con estas operaciones es posible hacer un simil con la convolución.
}|{)( AaxaccA x
}|{ AaaxxÂ
}|{ AxxAc
cBABxAxxBA },|{
16
Erosión y dilatación
Dado un conjunto de pixels G (imagen no cero) y un conjunto de pixels M (máscara no nulos) con un punto origen.
Erosión, contrae los objetos (útil para eliminar pequeños objetos)
Es dada por el conjunto p de los puntos para los cuales Mp está contenido en G.
Dilatación, expande los objetos (útil para eliminar huecos)
Es dada por el conjunto de los desplazamientos x para los cuales la reflexión de la máscara se solape con la imagen al menos en un elemento distinto de cero.
Dilatación y erosión son duales entre sí con respecto a los conjuntos complemento y reflexión
GMxMG x )(|
}])[(|{^
GGMxMG x
^
)( MGMG cc
17
Ejemplo de operación de dilatación/erosión
111
11
111
1
Máscara empleada
Imagen
erosionada
Imagen
dilatada
18
Apertura
A partir de las operaciones de erosión y dilatación pueden definirse nuevas operaciones:
Apertura: elimina objetos pequeños pero sin reducir los restantes (como pasa con la erosión). Consta de una erosión seguida de una dilatación con la misma
máscara.
Propiedades: G ° M es un subconjunto (subimagen) de G Si C D , entonces C ° M D° M (preserva de la monotonía). (G° M) ° M= G ° M (idempotencia).
MMGMG )(
19
Ejemplo de operación apertura
111
11
111
1
Máscara empleada
Apertura
Imagen
erosionada
20
Cierre
Cierra pequeños huecos sin agrandar el tamaño de los objetos (como pasa con la dilatación) Consta de una dilatación seguida de una erosión con la misma
máscara.
Propiedades: G GM Si G D entonces GM DM (monotonía). (GM) M = GM (idempotencia).
Es posible construir múltiples filtros en base a la utilización de operaciones de apertura y cierre. (G°M)M Eliminación de ruido (M cuadrada 3*3 con 1)
MMGMG )(
21
Ejemplo de operación cierre
111
11
111
1
Máscara empleada
Cierre
Imagen
dilatada
22
Extracción de contornos
Puede realizarse por diferencia entre la imagen y su erosionada. (G) = G -(G M)
111
11
111
1
Máscara empleada
Imagen
erosionada
Imagen de contorno
23
Operación Hit-Miss (concordancia)
Sirve para detectar la presencia de objetos de una forma determinada.
Requiere de dos operaciones morfológicas Una primera erosión elimina los objetos menores que la máscara. Una segunda operación elimina los objetos mayores que la
máscara sobre la imagen de fondo.
Al final contiene todos los puntos en los que simultáneamente, M1 encontró una concordancia en G y B2 lo encontró en su complementario
212
_
121 )()(),( MMMGMGMMG
24
Otras operaciones. Ejemplos
Resultan de combinaciones e iteraciones de las anteriores
Imagen
original
Eliminación de puntos cuyos 4 vecinos son todos 1
Esqueleto tras 12 iteraciones
Esqueleto tras ‘infinitas’ iteraciones
25
Descripción
Es una fase que suele seguir a la segmentación. Pretende establecer características de las regiones segmentadas. Las características escogidas suelen ser dependientes del
problema. Las características escogidas en la medida de lo posible deben ser
insensibles a: Rotación. Cambio de escala. Traslación. Punto de inicio.
Posteriormente deben adaptarse para un mejor tratamiento numérico por el ordenador.
26
Extracción de descriptores
Se pueden clasificar como: Descriptores de frontera. Descriptores de región.
Los descriptores de frontera extraen información de la forma del contorno de los objetos.
Los descriptores de región atienden a las características internas algunos de ellos son muy sencillos. Area, número de pixels contenidos en la frontera. Ejes mayor y menor. Perímetro de una región, longitud de su frontera, (Perímetro/área). Número de Euler (descriptor topológico), número de regiones
conectadas menos número de huecos.
27
Representación y descripción del contorno
La representación original de un contorno no es cómoda: Es muy sensible al ruido y a defectos de la segmentación. No es eficiente desde el punto de vista computacional y del
almacenamiento.
28
Códigos de cadena
Representan una frontera como un conjunto de segmentos de longitud y dirección especificadas. En primer lugar se selecciona el tamaño de la cuadrícula. Después se asignan 0 o 1 a las celdas dependiendo de si tienen
más de un 50% de pixels pertenecientes al objeto. Se codifica la frontera con el código seleccionado. Para ello se
selecciona un punto de inicio y luego se recorre el contorno según la vecindad escogida.
1
3
2 0
2
6
4 0
5
3
7
1
29
Ejemplo de código de cadena
30
Números de contorno
Una frontera codificada en cadena tiene varias diferencias primeras (restas entre elementos del código) dependiendo del punto de comienzo. El número de contorno de una frontera se define como la primera
diferencia de menor valor. Se calculan tomando a los códigos de cadena como secuencias circulares.
La primera diferencia es independiente de la rotación (en las direcciones que coinciden con la búsqueda) y del punto de comienzo. Luego se puede expresar de modo que de un ordinal menor (numero de forma).
El orden de un número de forma es el número de dígitos de su representación.
La frontera en general dependerá de la orientación de la cuadrícula. Se puede inscribir el objeto en un rectángulo (rectángulo básico) con lados paralelos a sus ejes mayor y menor .
• Al cociente entre estos lados se le denomina excentricidad.
31
Ejemplo de número de contorno
Código de cadena:
0 0 0 0 3 0 0 3 2 2 3 2 2 2 1 2 1 1
Diferencia:
3 0 0 0 3 1 0 3 3 0 1 3 0 0 3 1 3 0
Número de forma:
0 0 0 3 1 0 3 3 0 1 3 0 0 3 1 3 0 3
32
Aproximaciones poligonales 1
Una frontera digital puede aproximarse, con precisión arbitraria, por un polígono. Se trata de capturar la esencia del contorno.
Pueden emplearse técnicas de fusión, basadas en el error o en cualquier otro criterio. Se funden puntos de la frontera hasta que el error que se obtenga
al ajustar por mínimos cuadrados la recta que pasa por esos puntos exceda de un umbral.
Cuando esto ocurre se almacenan los parámetros de la recta, se pone el error a cero y se comienza una nueva recta.
Al final del procedimiento las intersecciones de las rectas forman los vértices del polígono.
Este método tiende a perder las inflexiones fuertes del contorno, se pierden las esquinas reales y se proporcionan otras distintas..
33
Aproximaciones poligonales 2
Técnicas de división Se va subdividiendo cada segmento en dos partes hasta que se satisfaga
determinada condición. Por ejemplo, obligar a que la distancia máxima desde un punto de un
arco de contorno hasta el segmento que lo delimita no exceda de cierto valor.
• Si lo excede el punto más lejano se convierte en vértice.• Se generan nuevos segmentos entre los nuevos vértices.• Se repite el procedimiento hasta que todos los puntos cumplan con la
condición impuesta.
Este método detecta los puntos de inflexión pero es sensible a puntos espurios.
Da problemas con las concavidades Hay muchos trabajos que combinan técnicas de división y fusión.
34
Ejemplo de aproximación poligonal
Frontera original Frontera dividida según puntos más alejados
Unión de vértices Polígono obtenido
35
Ajuste de rectas
Ajustan nubes de puntos alineados. Pueden establecerse dos categorías de métodos: Métodos de optimización Métodos no óptimos (transformada de Hough).
Cuando se emplean los métodos de optimización se miden las distancias de los píxeles a la recta, estas pueden considerarse: Distancias verticales (u horizontales) de los píxeles a las rectas
(regresión lineal). Considerar la distancia perpendicular de los píxeles a la recta.
x
y
pi(xi,yi)
y=ax+b
x
y
pi(xi,yi)
ax+by+c=0
36
Regresión lineal.
Se trata de buscar una recta tal que la suma de los cuadrados de las distancias verticales de los puntos a ella sea mínima.
Inconvenientes: Las distancias tienden a infinito según la recta se haga más vertical El ajuste no es el mejor, el error depende de la pendiente de la recta.
2
11
2
1 11 12
11
2
1 11
2
1
))((:
m
ii
m
ii
m
i
m
iiii
m
i
m
iii
m
ii
m
ii
m
i
m
iii
m
iii
i
n
ii
xxn
yxxyxb
xxn
yxyxna
baxyajustarbaxy
37
Ajuste considerando distancias perpendiculares El planteamiento es semejante al caso anterior. Dado un
conjunto de puntos se busca la distancia y la orientación que minimice la suma de distancias perpendiculares.
Se puede resolver por optimización no-lineal, aunque conviene plantearlo de una forma no iterativa.
)sen(cos)(1
22iii
n
ii yxddd
38
Descriptores de Fourier
La DFT se puede emplear para describir una frontera bidimensional (curva cerrada y periódica). Dada la secuencia de M puntos de la frontera, con sus coordenadas
(x,y) puede ser interpretada como una secuencia de números complejos.
Es deseable que M sea una potencia de 2 para usar FFT. En general solo se necesitan los primeros componentes de la
transformada de Fourier para diferenciar formas razonablemente distintas entre sí.
Las transformadas de Fourier se pueden normalizar fácilmente para el tamaño, rotaciones y punto de comienzo de la frontera.
39
Ejemplo transformada de Fourier
Reconstrucción a partir de los coeficientes de la transformada de Fourier del contorno
40
Propiedades de los descriptores de Fourier
La representación empleando descriptores de Fourier tiene una serie de propiedades heredadas de la transformada de Fourier. Al multiplicar los coeficiente por una cte. Se escala el tamaño de
la frontera. Multiplicando por ej se rota en el dominio de las frecuencias y en
el dominio espacial. Desplazar el punto de comienzo en el dominio del espacio
equivale a multiplicar el coeficiente de la frecuencia k-esima por ejkT donde T es la fracción de período que se desplaza el punto de comienzo
Con estas propiedades de obtiene la invarianza ante el tamaño, rotación y punto de comienzo.
41
Signaturas o firmas
Es una representación funcional unidimensional de una frontera Por ejemplo representar la distancia desde el centro hasta la
frontera en función de un ángulo.• Esta podría normalizarse para el punto de comienzo y para el tamaño.
Podría representarse la dirección de la tangente a la frontera en función de un ángulo.
2
A
0 2
A
A
0
A
A2
42
Signaturas o firmas 2
Suele calcularse un punto característico del interior (el centro de masas).
La invarianza al tamaño se consigue dividiendo la función por la distancia máxima al centroide.
La invarianza frente al ángulo de comienzo se consigue comenzando por el punto que se encuentra a la distancia máxima al centroide.
Este método resulta muy sensible a la posición del centroide. Puede dar problemas con curvas concavas, que darían lugar a
puntos multievaluados. Se puede solucionar este caso empleando la envolvente convexa.
43
Tratamiento de las firmas
La función obtenida no es directamente utilizable por el computador para distinguir contornos.
Hay que caracterizar a las diferentes firmas. Una técnica muy común es calcular sus momentos.
Sea a una variable aleatoria discreta representando la variación en amplitud de la firma.
Sea p(ai), con i=1,2,3,......K que representaría su correspondiente histograma, siendo K el número de niveles de amplitud.
El momento enésimo con respecto a la media se define como: Suelen bastar los primeros
momentos para diferenciar las firmas.
K
iii
K
ii
nin
apam
apmaa
1
1
)(
)()()(
44
Esqueleto de una región
Una región plana se puede reducir a un grafo, mediante esta reducción se puede llegar al esqueleto de la región.
Sea una región R con borde B, para cada punto p de R se encuentra su vecino más próximo en B, si tiene 2 vecinos a distancia mínima se dice que pertenece al esqueleto. Esta decisión se verá influida por la medida de distancia adoptada.
Esta definición no es realizable de manera práctica.
45
Esqueletización de regiones binarias
Método iterativo en dos etapas aplicadas a los puntos de contorno (pixel con valor 1 y al menos un 8 vecino de valor 1).
567
418
329
ppp
ppp
ppp
0862)'
0842)'
)3(9...3,2
10)1(
)4(98......32)1(
0642)
0642)
1)1()
6)1(2)
pppd
pppc
pppsiguiendo
adeestransiciondenúmeropS
pppppN
pppd
pppc
pSb
pNa
101
011
100
p
46
Ejemplo de segmentación completa.Análisis de los granos del acero 1
Imagen Original
Fotografía microscópica mostrando los granos de acero
47
Análisis de los granos del acero 2
Imagen binarizada umbral T=70 Imagen binarizada umbral T=210
48
Análisis de los granos del acero 3
Los puntos de la imagen con T=70 se usan para seleccionar objetos blancos en el negativo de la imagen con T=210. Esto elimina regiones pequeñas que aparecen en la imagen de T=210.
Se aplica una esqueletonización y eliminación de puntos extraños (segmentos no cerrados).
49
Análisis de los granos del acero 4
Imagen originalImagen segmentada, cada región se ha representado con un color
50
Momentos invariantes 1
Una región dada por sus puntos interiores se puede describir usando momentos invariantes a escala, rotación y traslación. Sea f(x,y) el nivel de gris de un punto (x,y) perteneciente a la
región. Se define:
2:
)(
:
),()()()(
),()(
00
00
01_
00
10_
__
qpcon
qpordendeonormalizadcentralmomento
m
my
m
mxcon
yxfyyxxqpordendecentralmomento
yxfyxmqpordendemomemto
pqpq
q
x y
ppq
q
x y
ppq
51
Momentos invariantes 2
El siguiente conjunto de momentos invariantes se obtienen a partir de los momentos centrales normalizados de órdenes 2 y 3.
])()(3)[)(3(
])(3))[()(3(
))((4])())[((
])()(3)[)(3(
])(3))[()(3(
)()(
)3()3(
4)(
20321
2123003213012
20321
21230123003217
03211230112
03212
123002206
20321
2123003210321
20321
21230123012305
20321
212304
20321
212303
211
202202
02201
52
Textura 1
Es un descriptor orientado a regiones, intuitivamente da una medida de propiedades como la rugosidad, suavidad, regularidad o presencia de ciertos patrones.
Hay dos enfoques para su estudio: Estadístico: informa acerca de la rugosidad, granularidad etc. Estructural: Estudian la disposición de formas básicas.
Se pueden describir texturas a partir de la información de momentos del histograma de la imagen.
ndeparaconstantegrisparaRz
R
contrastedelmedidaunaesianzaLaz
grisesdenúmeroelLsiendozpzmconzpmzzL
iii
L
ii
nin
gra1,0)(1
11
var)(01
)()()()(
2
2210
11
53
Textura 2
Si se emplea solo la información del histograma no se obtiene información de la posición relativa de los pixels.
Mediante operadores de posición se obtiene esta información. Sea P un operador de posición y A una matriz k*k donde cada a ij es el
número de veces que los puntos cuya intensidad es zi aparecen en la posición especificada por P.
P: “un pixel a la derecha y un pixel por por debajo”.
C: matriz de coocurrencia de niveles de gris.
En este caso el valor más alto de C indica que la mayor alineación en dirección sudeste se encuentra para los niveles de gris 0.
120
232
124
16
1
120
232
124
10100
02011
00122
11011
21000
CA
54
Textura 3
El problema general es, dado un patrón y la consecuente matriz C, encontrar clasificadores de la textura.
Los anteriores descriptores dan idea de: Respuesta más fuerte, cercanía a la diagonal principal, lejanía a la diagonal principal, aleatoriedad y uniformidad.
i jij
i jijij
k
i jij
i jij
k
ijji
cdUniformida
ccEntropía
jiji
ckordendeelementosdedistincióndeinversoMomento
cjikordendeelementosdedistincióndeMomento
cmaxmáximaadProbabilid
2
,
:
log:
)(:
)(:
)(:
55
Ejemplos de texturas
Tejido de cuadros Pelo de perro
56
Similitud y correlación.
Se pretende establecer la similitud entre una imagen y un patrón. La correlación de dos funciones continuas unidimensionales se expresa
por:
La detección con esta expresión no es factible, ya que es dependiente de los cambios de escala.
Donde w es la media de las intensidades de la imagen w(x,y) que actua como patrón, f’(x,y) es la media de las intensidades de la imagen en la región coincidente con w
x y
m,y-n)f(x,y)w(x-R(m,n)
dkkxgwfxgxf
nalbidimensiodiscretocasoelen
)()()()(
x x yy
x y
wynxmwyxfyxf
wynxmwyxfyxfnmr
22 '),(),('),(
´'),(),('),(),(
top related