t8. segmentación - universitat jaume i€¦ · t8. segmentación 5 color detección e...

20
Fundamentos de Visión por Computador Sistemas Informáticos Avanzados T8. Segmentación 2 T8. Segmentación Índice Segmentación. Umbralización. Crecimiento de regiones. División y unión de regiones (split & merge). Minimización de una función de energía. Clustering. Transformada Watershed. Etiquetado de componentes conexas. Estructuras de datos para la segmentación. Caracterización de regiones.

Upload: others

Post on 05-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

Fundamentos de Visión por Computador

Sistemas Informáticos Avanzados

T8. Segmentación

2T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

Page 2: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

3T8. Segmentación

Segmentación

Segmentación: División de una imagen en regiones.

Región: Conjunto de píxeles contiguos que presentan una serie de características comunes.

Características:

• Nivel de gris

• Color

• Otras (Ej. Textura)

“Segmentation of nontrivial images is one of the most difficult tasks in image processing. Segmentation accuracydetermines the success or failure of computerized analysis procedures”.

(González & Woods, Digital Image Processing)

4T8. Segmentación

Niveles de gris

Detección e identificación de objetos:

• Separación de los objetos del fondo según el nivel de gris.

• Reconocimiento de objetos por su forma.

Page 3: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

5T8. Segmentación

Color

Detección e identificación de objetos:

• Identificación de regiones por su color.

• Algunos objetos estarán formados por varias regiones.

6T8. Segmentación

Textura

Detección e identificación de regiones:

• Los niveles de gris de las regiones no son uniformes. Se requieren características más complejas.

Page 4: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

7T8. Segmentación

Índice

Segmentación.

Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

8T8. Segmentación

Umbralización

Transformación de una imagen en niveles de gris en una imagen binaria.

Suponemos fondo y objetos uniformes.

=casootroen

Tyxfsiyxg

0),(1

),(

≤≤

=casootroen

TyxfTsiyxg

0),(1

),( maxmin

=casootroen

Tyxfsiyxg

0),(1

),(

Objetos claros sobre fondo oscuro

Objetos oscuros sobre fondo claro

Objetos en un intervalo de grises

Page 5: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

9T8. Segmentación

Umbralización

Distintas medias y desviaciones típicas para fondos y objetos.

¿Cómo elegir el umbral?

10T8. Segmentación

Cálculo automático del umbral

Mínimo entre máximos

1. Localizar máximo en el histograma H(Gmax)

2. Localizar Gx que maximice H(Gx)|Gmax-Gx|

3. Elegir mínimo entre Gx y Gmax

Page 6: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

11T8. Segmentación

Cálculo automático del umbral

Medias iterativas. Se suponen dos distribuciones Gaussianas con la misma desviación típica.

∑∑+

∑∑=

+=

+=

=

=+ N

1Ti

N1Ti

Ti

Ti

1k

k

k

k

k

ih

iih

ih

iihT

)()(

)()(

21

0

0

20N

T =

12T8. Segmentación

Cálculo automático del umbral

Método de Otsu.

• Se suponen dos distribuciones Gaussianas.

• Se minimiza la suma ponderada de las varianzas.

Page 7: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

13T8. Segmentación

Cálculo automático del umbral

Método de Kittler-Illingworth.

• Se suponen dos distribuciones Gaussianas.

• Se minimiza el error cometido al aproximar el histograma por la suma de Gaussianas.

14T8. Segmentación

Umbralización recursiva

¿Cómo proceder cuando hay varios fondos/objetos?

• Aplicar cualquiera de los métodos anteriores.

• Analizar cada histograma obtenido.

• Repetir el proceso cuando el histograma no sea uniforme.

Primerpaso

Repetir

Repetir

Page 8: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

15T8. Segmentación

Índice

Segmentación.

• Umbralización.Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

16T8. Segmentación

Crecimiento de regiones

Se eligen una serie de semillas iniciales.

Píxeles contiguos con valores similares se unen a las semillas.

Se repite mientras se añadan píxeles.

Cuando ninguna región pueda crecer se crean nuevas semillas.

Elección de las semillas:

• Aleatorio.

• Picos en el histograma.

Problemas:

• Los resultados dependen de las semillas iniciales.

• Suele sobresegmentar.

Page 9: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

17T8. Segmentación

Crecimiento de regiones

18T8. Segmentación

Crecimiento de regiones

Imagen original Resultado

Page 10: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

19T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

20T8. Segmentación

Split & merge

Se comprueba inicialmente si la imagen cumple una determinada característica de uniformidad.

De no ser así, se divide (split) en cuatro partes.

Para cada una de ellas se vuelve a comprobar si cumple dicha característica:

• Aquellas que la cumplan, tratarán de unirse (merge) entre sí o con otras partes que ya la cumplían de acuerdo con otro criterio de similitud.

• Las que no la cumplan, vuelven a dividirse y se repite el proceso.

Problemas: Si se limita el número de iteraciones no se respetan los contornos.

Page 11: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

21T8. Segmentación

Split & merge

Imagen original

Split & merge

22T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

Page 12: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

23T8. Segmentación

Definiremos una función Energía para una determinada segmentación:

• Mayor número de regiones mayor energía.

• Variabilidad en la región energía.

• Se pueden incorporar términos que penalicen de manera especial la existencia de bordes en el interior de una región.

Lo resolvemos como un problema general de minimización. La segmentación se va modificando hasta encontrar un mínimo en la función energía (probablemente local).

Minimización de una función de energía

24T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

Page 13: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

25T8. Segmentación

Clustering

Clustering: Proceso para organizar una serie de muestras en grupos cuyos miembros guardan ciertas similitudes entre sí. ¿Segmentación?Cluster: Colección de muestras similares entre sí. ¿Región?

Técnica habitual en el ámbito del reconocimiento de patrones.Segmentación: Cada píxel de la imagen se considera un punto en un espacio N-dimensional.• Imágenes en color: Una dimensión por cada plano

disponible.• Texturas: Una dimensión por cada característica

que describa la textura de un punto.

26T8. Segmentación

Clustering

K-means + Deterministic annealing.1. Establecer la temperatura inicial del sistema.2. Elegir aleatoriamente los K centros de los

clusters.3. Calcular la probabilidad de pertenencia de cada

punto a cada cluster (función de la distancia al centro y de la temperatura).

4. Recalcular los centros de cada cluster.5. Reducir la temperatura del sistema.6. Si no se alcanza una temperatura mínima y el

sistema no es estable, ir al paso 3.

Page 14: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

27T8. Segmentación

Clustering

Original Iteración 1 Iteración 3

Iteración 10 Iteración 100 Resultado final

28T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

Page 15: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

29T8. Segmentación

Transformada Watershed

Watershed: En geografía, línea o cadena montañosa que separa las cuencas de dos ríos.

La imagen en niveles de gris se trata como una superficie topológica.

30T8. Segmentación

Transformada Watershed

Comenzando por los mínimos, las cuencas se inundan con agua, sin permitir que se mezcle el agua de cuencas distintas.

Como resultado, cada cuenca define una región y las líneas de separación (watersheds), los contornos de las mismas.

Page 16: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

31T8. Segmentación

Transformada Watershed

Se aplica sobre la imagen gradiente de la imagen a segmentar.

• Objetos: Superficies planas serán cuencas

• Bordes de objetos: Crestas en el gradiente

Problema: En general, sobresegmenta.

32T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

• Caracterización de regiones.

Page 17: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

33T8. Segmentación

Etiquetado de componentes conexas

Asignación de una etiqueta (valor numérico) a todos los píxeles de un mismo objeto (región), es decir, a todos aquellos que están unidos entre sí.

Conectividad: 4 u 8.

Algoritmos:

• Recursivo.

• Iterativo.

• Clásico.

Basado en una tabla de equivalencias

Sólo dos pasadas a través de la imagen

34T8. Segmentación

Etiquetado de componentes conexas

Algoritmo recursivo

Función Rellena(punto_dado, etiqueta_dada)

Para cada punto vecino del punto dado

Si pertenece a un objeto y no tiene etiqueta

Asignarle etiqueta_dada

Rellena(punto, etiqueta_dada)

Para cada punto en la imagen

Si no tiene etiqueta

Asignarle nueva_etiqueta

Rellena(punto, nueva_etiqueta)

Page 18: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

35T8. Segmentación

Etiquetado de componentes conexas

Algoritmo iterativo

Inicializar cada punto de objeto con una etiquetadistinta

Repetir hasta que no haya cambios

Para cada línea (de arriba a abajo)

Para cada punto en la línea

Encontrar la menor_etiqueta entre las del punto y sus vecinosSi etiqueta_de_punto no es menor_etiqueta

Cambiar etiqueta_de_punto

Igual para cada línea (de abajo a arriba)

36T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

Estructuras de datos para la segmentación.

• Caracterización de regiones.

Page 19: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

37T8. Segmentación

Estructuras de datos para la segmentación

Quadtrees.

Ventajas: Operaciones muy eficientes.

• Recorridos.

• Operaciones de vecindad en todos los niveles del árbol.

Inconvenientes: Complejidad.

38T8. Segmentación

Índice

Segmentación.

• Umbralización.• Crecimiento de regiones.

• División y unión de regiones (split & merge).

• Minimización de una función de energía.

• Clustering.

• Transformada Watershed.

• Etiquetado de componentes conexas.

• Estructuras de datos para la segmentación.

Caracterización de regiones.

Page 20: T8. Segmentación - Universitat Jaume I€¦ · T8. Segmentación 5 Color Detección e identificación de objetos: • Identificación de regiones por su color. • Algunos objetos

39T8. Segmentación

Caracterización de regiones

Topológicas.

• Número de huecos en la región.

Métricas.

• Área.

• Perímetro.

• Centro de gravedad.

• Elongación: razón entre los lados de un rectángulo que circunscribe la región.

• Redondez: Área/(Eje mayor)2.

• Orientación: Ángulo de la recta de ajuste de los puntos de la región (p.e. mínimos cuadrados).

De textura.

40T8. Segmentación

Bibliografía

Visión por computador. Fundamentos y métodos, Arturo de la Escalera, Capítulo 7.2, Prentice Hall, 2001.

Visión por computador. Imágenes digitales y aplicaciones, G. Pajares y J.M. de la Cruz, Capítulos 7 y 9, Ra-Ma, 2001.