41
Códigos correctores de cascadas de clasificadores y graph cuts para la segmentación multi-extremidad Realizado por: Daniel Sánchez Abril Dirigido por: Sergio Escalera Guerrero M. Ángel Bautista Martín Barcelona, 17 de Julio de 2012 GRADO INGENIERÍA INFORMÁTICA PROYECTO FIN DE GRADO 1

Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Códigos correctores de cascadas de

clasificadores y graph cuts para la

segmentación multi-extremidad

Realizado por: Daniel Sánchez Abril

Dirigido por: Sergio Escalera Guerrero

M. Ángel Bautista Martín

Barcelona, 17 de Julio de 2012

GRADO INGENIERÍA INFORMÁTICA

PROYECTO FIN DE GRADO

1

Page 2: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Índice

1.Introducción

1.1 Motivación

1.2 Contexto

1.3 Objetivos del proyecto

2. Metodología

2.1 ECOC

2.2 Cascada – ECOC

2.3 Segmentación

3. Experimentos

3.1 Parámetros y configuración ECOC

3.2 Parámetros y configuración grabCut

3.3 GrabCut

3.4 Parámetros y configuración multi-label

3.5 Multi-label alpha-beta-swap graph cuts

4. Conclusiones

4.1 Conclusiones

4.2 Posibles mejoras 2

Page 3: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducción

Motivación

Contexto

Objetivos del proyecto

3

Page 4: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Motivación

• Detección y reconocimiento de extremidades.

• Segmentación de extremidades.

• Aplicaciones varias: medicina, fotografía, lenguaje, etc.

4

Page 5: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Motivación

• Detección y reconocimiento de extremidades.

• Segmentación de extremidades.

• Aplicaciones varias: medicina, fotografía, lenguaje, etc.

5

Page 6: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Motivación

• Detección y reconocimiento de extremidades.

• Segmentación de extremidades.

• Aplicaciones varias: medicina, fotografía, lenguaje, etc.

6

Page 7: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Motivación

• Detección y reconocimiento de extremidades.

• Segmentación de extremidades.

• Aplicaciones varias: medicina, fotografía, lenguaje, etc.

7

Page 8: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Contexto

• Visión Artificial • Base de datos HuPBA

8

Page 9: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Contexto

• Visión Artificial • Base de datos HuPBA

• Clasificador• Descriptor de características

9

Page 10: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Contexto

• Visión Artificial • Base de datos HuPBA

• ECOC • Segmentación

• Clasificador

-1 1 1

1 -1 1

1 1 -1

• Descriptor de características

10

Page 11: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Contexto

• Visión Artificial • Base de datos HuPBA

• ECOC • Segmentación

• Etiqueta

• Clasificador

-1 1 1

1 -1 1

1 1 -1

Entorno en el que nos moveremos

• Descriptor de características

11

Page 12: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Objetivos del proyecto

1. Usar descriptores.

2. Entrenar diferentes clasificadores.

3. Aplicar ECOC.

4. Utilizar segmentación binaria.

5. Utilizar segmentación multi-label (multi-etiqueta).

12

Page 13: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Metodología

ECOC

Cascada – ECOC

Segmentación

13

Page 14: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

ECOC

• Codificación: Uno-contra-Uno, Uno-contra-Todos etc.

• Decodificación: Euclidiana, Loss-Weighted etc.

14

Cabeza

Antebrazo

Torso

Muslo

Page 15: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Cascada - ECOC

• Cascada por extremidad

Codificación ECOC: Uno-contra-Todos

Decodificación ECOC: Loss-Weighted

• 8 niveles

• Descriptor tipo Haar

Salida

cascada

1 2 3 … n-1 n

X h1 h2 h3 … hn-1 hn

15

Page 16: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Segmentación

Segmentación binaria: grabCut

Segmentación multi-label: Multi-label alpha-beta-swap graph cuts

16

Page 17: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Segmentación:

grabCut

• Segmentar dos clases

• Basado en:

GMM (Modelos de Mezclas de Gaussianas) Background

Foreground

Graph cuts(corte de grafos)Segmentación

Clasificación

Etiquetado

Conectividad entre píxeles

17

E = U + VE = Energia

U = Potencial unario

V = Potencial de vecindad

Page 18: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Segmentación:

grabCut

• GMM

Foreground Background

Probabilidad

foregroundProbabilidad background

Combinación de ambas18

Page 19: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Segmentación:

grabCut

• Graph cuts

Etiquetado

Aplicación

del método

19

Page 20: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Segmentación:

Multi-label alpha-beta-swap graph cuts

• Segmentar más de dos clases

• Utilizando el algoritmo alpha-beta-swap- Conjunto de etiquetas n

- Para todas las combinaciones posibles de n

Etiquetado

inicial

Movimiento

estándar

Aplicando

algoritmo

20

Page 21: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Experimentos

Parámetros y configuración ECOC

Parámetros y configuración grabCut

GrabCut

Parámetros y configuración multi-label

Multi-label alpha-beta-swap graph cuts21

Page 22: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Parámetros y configuración ECOC

• Base de datos HuPBA

22

288.827 imágenes

9 personas

ECOC GrabCut Multi-label

Page 23: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Parámetros y configuración ECOC

• Codificación: matriz ECOC utilizada (Uno-contra-Todos):

• Decodificación: Pesos de las cascadas para Loss-Weighted

23

ECOC GrabCut Multi-label

Page 24: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Parámetros y configuración grabCut

• GrabCut

Configurar mapa de probabilidades:

- GC_BGD: [0, 0.10]

- GC_PR_BGD: [0.10, PROB]

- GC_PR_FGD: [PROB, 0.9]

24

ECOC GrabCut Multi-label

Page 25: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

grabCut

25

ECOC GrabCut Multi-label

Original Persona vs Fondo Resultado

Original Persona vs Fondo Resultado

Page 26: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

grabCut

26

ECOC GrabCut Multi-label

Original Persona vs Fondo Resultado

Original Persona vs Fondo Resultado

Page 27: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Parámetros y configuración multi-label

• Multi-label alpha-beta-swap graph cuts

• # etiquetas: 7: cabeza, torso, antebrazo, brazo, muslo ,pierna y fondo

• # píxeles: 480 * 360 = 172.800

• Máscaras de HuPBA

27

ECOC GrabCut Multi-label

Page 28: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Multi-label alpha-beta-swap graph cuts

Cabeza Torso Brazo Original

Antebrazos Piernas Muslos Resultado

28

ECOC GrabCut Multi-label

Page 29: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Multi-label alpha-beta-swap graph cuts

Cabeza Torso Brazo Original

Antebrazos Piernas Muslos Resultado

29

ECOC GrabCut Multi-label

Page 30: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Multi-label alpha-beta-swap graph cuts

30

ECOC GrabCut Multi-label

Page 31: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Multi-label alpha-beta-swap graph cuts

• Porcentaje de efectividad por extremidad

31

ECOC GrabCut Multi-label

Page 32: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Multi-label alpha-beta-swap graph cuts

• Porcentaje de efectividad en grupos

32

ECOC GrabCut Multi-label

Page 33: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Conclusiones

Conclusiones

Posibles ampliaciones

33

Page 34: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Conclusiones

• Generación de regiones de las imágenes para ser enviadas a

los clasificadores.

34

Page 35: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Conclusiones

• Generación de regiones de las imágenes para ser enviadas a

los clasificadores.

• Desarrollo de un software para la detección de extremidades.

35

Page 36: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Conclusiones

• Generación de regiones de las imágenes para ser enviadas a

los clasificadores.

• Desarrollo de un software para la detección de extremidades.

• Segmentación binaria con overlapping elevado.

36

Page 37: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Conclusiones

• Generación de regiones de las imágenes para ser enviadas a

los clasificadores.

• Desarrollo de un software para la detección de extremidades.

• Segmentación binaria con overlapping elevado.

•Segmentación multi-etiqueta con overlapping menor.

Segmentación para algunas extremidades.

37

Page 38: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Posibles ampliaciones

• Añadir información contextual a los clasificadores.

38

Page 39: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Posibles ampliaciones

• Añadir información contextual a los clasificadores.

• Alternativas a los actuales descriptores de características.

Obtener otro tipo de características (rasgos faciales, dedos

etc.).

39

Page 40: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Introducció

Posibles ampliaciones

• Añadir información contextual a los clasificadores.

• Alternativas a los actuales descriptores de características.

Obtener otro tipo de características (rasgos faciales, dedos

etc.).

• Segmentar otras extremidades (pies, manos etc.), diferentes

poses.

40

Page 41: Códigos correctores de cascadas de clasificadores y graph ...sergio/linked/presentacion_pfc_dani.pdf · 2. Metodología 2.1 ECOC 2.2 Cascada –ECOC 2.3 Segmentación 3. Experimentos

Códigos correctores de cascadas de

clasificadores y graph cuts para la

segmentación multi-extremidad

Realizado por: Daniel Sánchez Abril

Dirigido por: Sergio Escalera Guerrero

M. Ángel Bautista Martín

41

GRACIAS