tesis daniel a paredes soto [11 dic 2009]x - cenidet · 2020. 7. 7. · daniel alonso paredes soto...

148
cenidet Centro Nacional de Investigación y Desarrollo Tecnológico Departamento de Ciencias Computacionales TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN Seguimiento y Caracterización de Componentes del Rostro para la Detección de Expresiones Faciales presentada por Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para la obtención del grado de: Maestría en Ciencias en Ciencias de la Computación Director de tesis: M.C. Andrea Magadán Salazar Co-Director de tesis: Dr. Raúl Pinto Elías Cuernavaca, Morelos, México. 11 de diciembre de 2009

Upload: others

Post on 28-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

cenidet

Centro Nacional de Investigación y Desarrollo Tecnológico

Departamento de Ciencias Computacionales

TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN

Seguimiento y Caracterización de Componentes del Rostro para la Detección de Expresiones Faciales

presentada por

Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II

como requisito para la obtención del grado de: Maestría en Ciencias en Ciencias de la Computación

Director de tesis: M.C. Andrea Magadán Salazar

Co-Director de tesis: Dr. Raúl Pinto Elías

Cuernavaca, Morelos, México. 11 de diciembre de 2009

Page 2: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 3: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

cenidet

Centro Nacional de Investigación y Desarrollo Tecnológico

Departamento de Ciencias Computacionales

TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN

Seguimiento y Caracterización de Componentes del Rostro para la Detección de Expresiones Faciales

presentada por

Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II

como requisito para la obtención del grado de:

Maestría en Ciencias en Ciencias de la Computación

Director de tesis: M.C. Andrea Magadán Salazar

Co-Director de tesis: Dr. Raúl Pinto Elías

Jurado:

Dr. José Ruíz AscencioDra. Azucena Montes RendónDr. Gerardo Reyes Salgado

Dr. Raúl Pinto Elías

Presidente Secretario Vocal Vocal Suplente

Cuernavaca, Morelos, México. 11 de diciembre de 2009

Page 4: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 5: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Dedicatoria

.

…a mi hijo Pablo Nicolás

Page 6: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 7: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Agradecimientos En primer lugar quiero agradecer a Dios porque siempre ha guiado mis

pasos y porque me dio fortaleza durante el desarrollo de este proyecto.

A mi esposa María Luisa por su infinito apoyo y comprensión en este y todos los proyectos que he realizado.

A mis padres por la educación que me brindaron y por estar siempre al pendiente de mi familia, sin ellos no hubiera sido posible dar los mismos pasos.

A mis hermanos Osmar Jaamil y Gustavo.

Agradezco a mis asesores M.C. Andrea Magadán Salazar y Dr. Raúl Pinto Elías por sus valiosas enseñanzas, su confianza y sus consejos que siempre fueron bien recibidos. Agradezco infinitamente su comprensión y apoyo en cada una de mis actividades. Gracias por el interés que tuvieron en el desarrollo de mi tesis.

Agradezco a los revisores de mi trabajo: Dra. Azucena Montes Rendón, Dr. José Ruíz Ascencio y Dr. Gerardo Reyes Salgado, por sus comentarios y observaciones que me ayudaron a culminar este proyecto. Gracias por el trato amable y la confianza que siempre me brindaron.

Agradezco al Consejo Nacional de Ciencia y Tecnología (CONACYT) por el apoyo económico que me brindó durante mis estudios de maestría.

Agradezco al Centro Nacional de Ciencia y Tecnología (CENIDET) por la formación adquirida durante mi estancia.

Un agradecimiento muy especial a Marisol, Vicky, Katy y Lilian por el apoyo que siempre me han ofrecido.

Un especial agradecimiento a Perla Aurora quien siempre me ha brindado su amistad incondicional. Gracias por acercarme a esta institución.

A mis compañeros de generación: Julio, Israel, Rubi, Oscar Cabrera, Janeth, Ma. Luisa, Luis, Sergio, Isabel, Francisco, Cinthya, Daniela, Itzel, Maribel, Omar, José Luis, Lázaro, Christian, Miriam y Oscar Sánchez. A mis compañeros del grupo de Inteligencia Artificial, gracias por su amistad.

Page 8: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 9: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Resumen

Las expresiones faciales proporcionan información no verbal acerca de los estados mentales, emociones y otros comportamientos que manifiestan las personas. La extracción y el seguimiento automático de componentes faciales en secuencias de imágenes son las principales tareas que deben resolver los sistemas de visión artificial enfocados al análisis del comportamiento humano, detección de expresiones faciales, interfaces hombre-máquina, entre otras áreas.

En este trabajo se propone un sistema para localizar automáticamente la cara y sus componentes en secuencias de imágenes. La piel del rostro y los componentes faciales se detectaron mediante el procesamiento de regiones con algoritmos de procesamiento digital de imágenes. La caracterización del tamaño y posición y de los ojos, cejas y boca se realizó de forma numérica.

Se utilizó un vector de distancias geométricas entre marcas faciales para identificar las Unidades de Acción Facial (AU’s) presentes con base en el Sistema de Codificación de Acciones Faciales (FACS) desarrollado por P. Ekman y W. Friesen.

Se utilizó un clasificador basado en árboles de decisión (C5.0) y una Red Neuronal Artificial (Perceptrón Multicapa) para reconocer el vector de distancias geométricas y el de AU’s, en clases correspondientes a expresiones faciales. Finalmente los resultados de los clasificadores con ambos vectores fueron analizados y comparados.

Page 10: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 11: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Abstract

Facial expressions give non verbal information about mental states, emotions, among other evident human behaviours. Extracting and tracking facial components in image sequences automatically are the main tasks that computer vision systems focused on human behaviour analysis, facial expression detecting, and human-computer interfaces, among others fields, must solve.

This work proposes a system for locating face and its components in image sequences automatically. Skin and facial components where located using digital image processing algorithms over known regions. Size and location of eyes, eyebrows and mouth was represented numerically.

A geometric measure vector between features was used to identify active Action Units (AU’s) based on the Facial Actions Coding System (FACS) created by P. Ekman and W. Friesen.

Decision trees (C 5.0) and Artificial Neural Network (Multilayer Perceptron) classifiers were used to recognize geometric measure and AU’s vectors for classes corresponding to facial expressions. Finally, both classifiers were analyzed and compared for their performance.

Page 12: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 13: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

i

Contenido

Lista de figuras .................................................................................................... v

Lista de tablas ..................................................................................................... ix

Glosario .............................................................................................................. xi

1 Introducción .................................................................................................... 1

1.1 Descripción del problema ........................................................................ 2

1.2 Objetivo .................................................................................................. 3

1.2.1 Objetivos específicos ........................................................................... 3

1.3 Alcances .................................................................................................. 4

1.4 Limitaciones ............................................................................................ 4

1.5 Justificación ............................................................................................ 4

1.6 Metodología de desarrollo ........................................................................ 5

1.7 Organización del documento ................................................................... 6

2 Estado del arte ................................................................................................ 9

2.1 Localización del rostro ........................................................................... 10

2.2 Extracción de características faciales ..................................................... 11

2.2.1 Extracción de componentes faciales .................................................. 15

2.3 Reconocimiento de expresiones faciales ................................................. 20

2.4 Sistema de Codificación de Acciones Faciales (FACS) .......................... 21

2.5 Bases de datos ....................................................................................... 25

3 Marco teórico ................................................................................................ 27

3.1 Formato BMP ....................................................................................... 28

3.1.1 Estructura de archivos BMP ............................................................. 28

3.1.2 Estructura de un bitmap................................................................... 29

3.2 Modelos de color ................................................................................... 29

Page 14: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

ii

3.2.1 RGB ................................................................................................. 30

3.2.2 YCbCr ............................................................................................. 30

3.2.3 HSV ................................................................................................. 31

3.3 Segmentación por color (Umbralizado) ................................................. 32

3.4 Convolución .......................................................................................... 32

3.5 Transformaciones morfológicas ............................................................. 33

3.5.1 Dilatación ......................................................................................... 33

3.5.2 Erosión ............................................................................................. 34

3.6 Etiquetado de componentes conexas ..................................................... 35

3.7 Características de regiones .................................................................... 35

3.7.1 Tamaño ............................................................................................ 35

3.7.2 Elongación ........................................................................................ 35

3.7.3 Orientación ...................................................................................... 36

3.8 Rotación de imágenes ........................................................................... 38

3.9 Proyecciones laterales ........................................................................... 38

3.10 Sistema de Codificación de Acciones Faciales (FACS) .......................... 39

3.11 Reconocimiento de objetos .................................................................... 41

3.11.1 C5.0 ................................................................................................ 42

3.11.2 Redes Neuronales Artificiales .......................................................... 43

4 Metodología de solución ................................................................................. 45

4.1 Estructura de datos para bitmaps ......................................................... 47

4.2 Puntos característicos faciales ............................................................... 47

4.3 Localización y seguimiento de la cara ................................................... 48

4.3.1 Extracción de la cara ........................................................................ 48

4.3.2 Normalización de orientación ............................................................ 52

4.3.3 Seguimiento ...................................................................................... 53

4.4 Extracción de características ................................................................. 54

4.4.1 Estimación de posición de ojos ......................................................... 54

4.4.2 Extracción de características de los ojos ........................................... 58

4.4.3 Extracción de características de las cejas .......................................... 61

4.4.4 Extracción de características de la boca ........................................... 64

4.4.5 Vector de características ................................................................... 67

4.5 Clasificación.......................................................................................... 71

Page 15: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

iii

4.5.1 Entrenamiento .................................................................................. 71

4.5.2 Clasificación ...................................................................................... 72

5 Implementación de la solución ....................................................................... 75

5.1 Arquitectura del sistema ....................................................................... 75

5.2 Diseño de la aplicación .......................................................................... 77

5.3 Entrenamiento y clasificación con Clementine ....................................... 81

6 Pruebas y resultados ..................................................................................... 85

6.1 Dispositivo hardware ............................................................................. 85

6.2 Bases de datos ....................................................................................... 86

6.3 Plan de pruebas .................................................................................... 88

6.3.1 Caso 1: Detección de piel .................................................................. 89

6.3.2 Caso 2: Localización de la cara ......................................................... 90

6.3.3 Caso 3: Seguimiento de la cara ......................................................... 92

6.3.4 Caso 4. Estimación de posición de los ojos con proyecciones laterales93

6.3.5 Caso 5. Extracción de puntos característicos de los ojos ................... 95

6.3.6 Caso 6. Extracción de puntos característicos de las cejas .................. 96

6.3.7 Caso 7. Extracción de puntos característicos de la boca .................... 97

6.3.8 Caso 8. Generación de vectores característicos .................................. 98

6.3.9 Caso 9: Desempeño del procesamiento de videos ............................... 99

6.3.10 Caso 10: Entrenamiento de C5.0 y RNA perceptrón multicapa ..... 100

6.3.11 Caso 11: Clasificación de secuencias de imágenes .......................... 103

6.3.12 Caso 12: Variación de características faciales por expresión........... 106

6.4 Comentarios ........................................................................................ 109

7 Conclusiones ................................................................................................ 111

7.1 Objetivos alcanzados ........................................................................... 111

7.2 Aportaciones ....................................................................................... 113

7.3 Trabajos futuros .................................................................................. 113

7.4 Conclusiones ....................................................................................... 114

Referencias ...................................................................................................... 115

A. Detección de piel ......................................................................................... 122

B. Entrenamiento con C5.0 .............................................................................. 123

Page 16: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 17: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

v

Lista de figuras

1-1: Factores que influyen en las expresiones faciales. Traducido de [2]. ................. 2

1-2: Arquitectura general de un sistema de reconocimiento de expresiones faciales. 3

2-1: Localización de pupilas con cámara infrarroja. (a) Imagen capturada con cámara infrarroja. (b) Imagen capturada con leds encendidos. (c) Imagen capturada con leds apagados. (d) Resta de (b) y (c). .................................... 10

2-2: Parámetros geométricos de la cara para formar un vector de características [17]. ............................................................................................................... 12

2-3: Puntos característicos faciales [19]. (a) Ojos. (b) Cejas. (c) Nariz. (d) Boca. . 12

2-4: Detección de características faciales con diferente orientación. Las regiones de búsqueda están basadas en un modelo facial geométrico [19]. ........................ 13

2-5: Modelos de formas para AAM. ...................................................................... 13

2-6: Modelos de formas para ASM. ....................................................................... 14

2-7: Modelo facial para localizar componentes faciales [18]. .................................. 15

2-8: Proyecciones laterales para localizar componentes faciales [26]. (a) Señal a lo alto de la cara (b) Imagen a procesar (c) Señal de mitad superior e inferior (ojos y boca). ................................................................................................ 16

2-9: Detección de puntos característicos en la región de los ojos. (a) Región del ojo (b) Ajuste del contraste en la región (c) Imagen binaria (d) Detección del contorno (e) Detección de esquinas (f) Detección de punto medio de los párpados. ...................................................................................................... 16

2-10: Extracción de puntos característicos de los ojos. (a) Imagen original. (b) Detección de piel con Forsyth [28]. (c) Detección de piel con K-Means. (d) Operaciones morfológicas de (b). (e) Puntos característicos. ......................... 17

2-11: Extracción de puntos característicos de los ojos [19]. (a) Ojo cerrado (b) Ojo abierto. ......................................................................................................... 17

2-12: Extracción de cejas, Batista [19]. ................................................................. 18

2-13: Extracción de cejas, Saxena [17]. ................................................................. 18

2-14: Extracción de cejas, Sohail [18]. (a) Región de la ceja. (b) Complemento de la imagen. (c) Estimación del fondo. (d) Substracción del fondo. (e) Ajuste de intensidad de los pixeles. (f) Imagen binaria. (g) Contorno de la ceja. (h) Detección de esquinas. .................................................................................. 18

2-15: Transformación de RGB a CieLUV y DHT, finalmente U+C3. ................... 19

2-16: Transformación de la región de los labios a CieLab y CieLuv. ..................... 19

Page 18: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

vi

2-17: Modelo de puntos característicos faciales utilizado en Pantic [9]. ................. 21

2-18: Relación geométrica entre puntos característicos. Los rectángulos representan regiones de líneas de expresión [5]. ................................................................. 24

3-1: Estructura de un bitmap................................................................................ 29

3-2: Representación del espacio de color RGB. ..................................................... 30

3-3: Relación entre el espacio RGB y YCbCr. ....................................................... 30

3-4: Representación del espacio de color HSV. ...................................................... 31

3-5: Proceso de convolución de una imagen........................................................... 33

3-6: Dilatación de un objeto. ................................................................................. 34

3-7: Erosión de un objeto. ..................................................................................... 34

3-8: Conectividad de un pixel. .............................................................................. 35

3-9: Elongación de un objeto. ................................................................................ 36

3-10: Rotación de una imagen. Los píxeles de la imagen transformada (líneas discontinuas) no siempre coinciden con los de la imagen destino. .................. 38

3-11: Proyecciones laterales de una imagen. .......................................................... 39

3-12: Músculos relacionados con AU's de la parte superior de la cara. .................. 39

3-13: Esquema general del reconocimiento de objetos. .......................................... 41

3-14: Árbol de decisión generado con C5.0 en Clementine 11.1 [58]. ..................... 42

3-15: Estructura de una red Back-Propagation [59]............................................... 43

4-1: Diagrama de flujo de metodología de solución propuesta. .............................. 46

4-2: Representación de una imagen con vectores. (a) Bitmap (b) DIB, vector de tipo BYTE (c) Vector de tipo INT. ............................................................... 47

4-3: Puntos característicos faciales. ....................................................................... 48

4-4: Diagrama de flujo para extraer la cara. .......................................................... 49

4-5: Detección de piel. (a) Imagen original (b) Imagen binaria: detección de piel con reglas de Peer [11]. .................................................................................. 50

4-6: Localización de cara. (a) Imagen binaria (b) Caso 1: Detección de cara y no cuello (c) Caso 2: Detección de cara y cuello como una región. ...................... 51

4-7: Eliminación de ruido y llenado de huecos. (a) Imagen con ruido y huecos (b) Solo huecos, ruido eliminado con dilatación morfológica (c) Plantilla de la cara. .............................................................................................................. 52

4-8: Extracción de cara. (a) Imagen original (b) Plantilla (c) Extracción de la cara. ...................................................................................................................... 52

4-9: Orientación de la cara mediante momentos de inercia. .................................. 53

4-10: Relocalización de la cara. Recuadro amarillo representa la región de búsqueda para relocalizar la cara. ................................................................................. 53

4-11: Diagrama de flujo para extraer características de la cara. ............................ 54

4-12: Estimación de posición de los ojos con proyecciones laterales. ...................... 55

4-13: Proyecciones laterales de una imagen. (a) Filtro pasa bajo. (b) Proyección horizontal a lo largo de la imagen. (c) Proyección vertical a lo ancho de la mitad superior de la imagen (d). Varianza de (c). ......................................... 56

4-14: Proyección lateral vs su varianza. H es la proyección lateral. σ2H Es la varianza de H. ............................................................................................... 57

4-15: Localización de ojos con proyecciones laterales. (a) Estimación con ojos abiertos. (b) Estimación con ojos cerrados. .................................................... 58

Page 19: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

vii

4-16: Región de búsqueda de los ojos [65]. ............................................................ 58

4-17: Diagrama de flujo para extraer puntos característicos de los ojos. ............... 59

4-18: Filtro pasa alto. ........................................................................................... 60

4-19: Elementos estructurales utilizados en la extracción de los ojos. (a) Elementos utilizados en región de ojo derecho. (b) Elementos utilizados en región de ojo izquierdo. ...................................................................................................... 60

4-20: Extracción de puntos característicos de los ojos. (a) Región de búsqueda del ojo. (b) Ajuste de contraste. (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes conexas. (f) Detección de puntos característicos. (g) Centro del ojo antes y después de procesar la región dee. ............................... 61

4-21: Diagrama de flujo para extraer puntos característicos de los cejas. .............. 62

4-22: Elementos estructurales utilizados en la extracción de cejas. (a) Elementos utilizados en región de ceja derecha. (b) Elementos utilizados en región de ceja izquierda. ...................................................................................................... 63

4-23: Extracción de puntos característicos de las cejas. (a) Región de la ceja. (b) Escala de grises. (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes conexas. (f) Detección de puntos característicos. (g) Puntos característicos en imagen original. ................................................................. 64

4-24: Diagrama de flujo para extraer puntos característicos de la boca. ............... 65

4-25: Extracción de puntos característicos de la boca. (a) Región de la boca. (b) Componente U (CIE-LUV). (c) Componente C3 (HDT). (d) U+C3. (e) Ajuste de contraste. (f) Imagen binaria. (g) Puntos característicos en imagen original. ..................................................................................................................... 67

4-26: Medidas geométricas entre marcas faciales. Las líneas amarillas corresponden a ángulos y las líneas anaranjadas corresponden a distancias entre puntos.... 68

4-27: Esquema de entrenamiento de C5.0 y RNA Perceptrón Multicapa. ............. 72

4-28: Esquema de clasificación se secuencias de imágenes. .................................... 72

5-1: Arquitectura del sistema. .............................................................................. 76

5-2: Modificación de propiedades de dispositivos de captura. (a) Selección de dispositivo de captura. (b) Modificación del tamaño y profundidad de la imagen. (c) Selección de compresor de video. ................................................ 76

5-3: Estructura de dalu.dll.................................................................................... 77

5-4: Diseño de la aplicación. ................................................................................. 78

5-5: Ventana principal de la aplicación. ................................................................ 79

5-6: Configuración del programa. ......................................................................... 79

5-7: Configuración de parámetros. ........................................................................ 80

5-8: Datos de salida (vector de características). .................................................... 80

5-9: Ventana de taller de pruebas. ........................................................................ 81

5-10: Proceso de entrenamiento con Clementine. .................................................. 82

5-11: Proceso de clasificación con Clementine. ...................................................... 83

5-12: Clasificación de una secuencia de imágenes en forma gráfica con Clementine. ..................................................................................................................... 83

6-1: Muestra de videos de la base de datos MMI [45]. .......................................... 87

6-2: Muestra de la base de datos creada (CENIDET). .......................................... 87

6-3: Caso de prueba 3: Secuencia de imágenes de seguimiento de la cara. ............ 92

Page 20: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

viii

6-4: Formato de salida de los vectores de características. (a) Variables del vector basado en distancias geométricas. (b) Variables del vector basado en FACS. 99

6-5: Desempeño del procesamiento de imágenes. ................................................. 100

6-6: Señal de salida del clasificador. .................................................................... 104

6-7: Media y desviación estándar de los parámetros característicos respecto a la distancia inter-pupilar, por expresión facial. ................................................ 108

Page 21: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

ix

Lista de tablas

2.1: Técnicas para localizar el rostro. ................................................................... 11

2.2. Técnicas para extraer características faciales. ................................................ 14

2.3: Proporción de distancias (D2, D3, D4 y D5) respecto a D1 [18]. .................... 15

2.4: Descripción de 22 AU's mediante reglas para su reconocimiento [9]. .............. 22

2.5: AU's seleccionadas para reconocer expresiones faciales con SVM [33]. ........... 23

2.6: AU’s asociadas a seis expresiones faciales y combinaciones de AU's [5]. ........ 24

2.7: Descripción de AU’s utilizadas en Zhang [5]. ................................................. 24

2.8: Bases de datos para reconocimiento de expresiones faciales. .......................... 26

3.1: Ejemplos de AU's y combinaciones de la parte superior de la cara. ............... 40

3.2: Ejemplos de AU's y combinaciones de la parte inferior de la cara. ................ 40

4.1: Reglas para detectar piel en RGB, YCbCr, HSV. .......................................... 49

4.2: Formulas para convertir valores en el espacio RGB a CIE-LUV .................... 65

4.3: Parámetros del vector característico basado en distancias geométricas. ......... 68

4.4: AU’s asociadas a las expresiones faciales utilizadas. ....................................... 69

4.5: Descripción de AU's utilizadas. ..................................................................... 70

6.1: Características de bases de datos para pruebas. ............................................. 88

6.2: Características de videos de pruebas. ............................................................. 88

6.3: Caso de prueba 1: Comparativo de funciones para detectar de piel. .............. 89

6.4: Caso de prueba 2: Localización y normalización de la cara. ........................... 91

6.5: Caso de prueba 3: Seguimiento de la cara. ..................................................... 92

6.6: Caso de prueba 4: Estimación de posición de los ojos con proyecciones laterales. ....................................................................................................... 93

6.7: Caso de prueba 5: Extracción de puntos característicos de los ojos. ............... 95

6.8: Caso de prueba 6: Extracción de puntos característicos de las cejas. ............. 96

6.9: Caso de prueba 7: Extracción de puntos característicos de la boca. ............... 97

6.10: Caso de prueba 8: Generación de vectores de características. ....................... 98

6.11: Patrones de entrenamiento. ........................................................................101

6.12: Modelos obtenidos del entrenamiento con C5.0. ..........................................101

6.13: Modelos obtenidos del entrenamiento con RNA Perceptrón Multicapa. ......102

6.14: Matriz de confusión de FACS con C5.0. .....................................................104

6.15: Matriz de confusión de FACS con RNA. ....................................................105

6.16: Matriz de confusión de distancias geométricas con C5.0. ............................106

6.17: Matriz de confusión de distancias geométricas con RNA. ............................106

7.1: Resultados de los objetivos específicos ..........................................................112

Page 22: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 23: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

xi

Glosario

⊕ Dilatación morfológica

⊗ Erosión morfológica

3D 3 dimensiones

AAM Modelo de Apariencia Activa

API Interfaz de Programación de Aplicaciones

ASM Modelo de Formas Activas

AU Unidad de Acción Facial

AVI Audio Video Interleaved

BMP Mapa de Bits

BN Red Bayesiana

CENIDET Centro Nacional de Investigación y Desarrollo Tecnológico

DBN Red Bayesiana Dinámica

dee Distancia inter-pupilar

DHT Transformada Discreta de Hartley

DIB Bitmap Independiente de dispositivo

FACS Sistema de Codificación de Acciones Faciales.

E8(p) Vecindad 8 de p

fps Cuadros por segundo

HCI Interfaz Hombre-Máquina.

HROIeb Alto de región de búsqueda de las cejas

HROIee Alto de región de búsqueda de los ojos

HROIm Alto de región de búsqueda de la boca

Page 24: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Contenido

xii

HSV Matiz, Saturación, Valor

HSI Matiz, Saturación, Intesidad

Igf Vector característico formado por distancias geométricas

Iauf Vector característico formado por Unidades de Acción Facial

KLT Kanade-Lucas-Tomasi

MBR Rectángulo Mínimo del Borde

MLP Perceptrón Multicapa

ms Milisegundos

PCA Análisis de Componentes Principales

PDI Procesamiento Digital de Imágenes

PH Proyección Horizontal

PV Proyección Vertical

RGB Rojo, Verde, Azul

RNA Red Neuronal Artificial

SVM Máquinas de Soporte Vectorial

YCbCr Y: luminancia; Cb, Cr: características colorimétricas del color

WROIeb Ancho de región de búsqueda de las cejas

WROIee Ancho de región de búsqueda de los ojos

WROIm Ancho de región de búsqueda de la boca

Page 25: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

1

1111 IntroducciónIntroducciónIntroducciónIntroducción

Capítulo 1

Introducción

Las expresiones faciales proporcionan información no verbal acerca de comportamiento de las personas y son muchos los factores que influyen en su generación (ver figura 1-1). Su reconocimiento automático mediante aplicaciones de computadora se ha empleado en la enseñanza del lenguaje de señas, desarrollo de interfaces hombre-máquina y estudio del comportamiento humano por citar algunas áreas de aplicación.

En los años 70’s Paul Ekman y Wallace Friesen desarrollaron importantes trabajos sobre el análisis de las expresiones faciales aplicados al campo de la psicología. Crearon el sistema de codificación de acciones faciales (FACS) en el que se explican los movimientos musculares faciales también llamados unidades de acción facial (AU’s), necesarios para generar las expresiones básicas: alegría, tristeza, enojo, miedo, disgusto y sorpresa [1]. Con estos trabajos se iniciaron los primeros intentos por analizar las expresiones de forma automática. Actualmente FACS se utiliza en el estado del arte como patrón en el reconocimiento de expresiones faciales.

Durante los últimos años se han desarrollado metodologías para localizar y realizar el seguimiento de la cara y sus componentes de manera automática con el objetivo de extraer información precisa ante los movimientos naturales de la cara y los cambios en el escenario. Generalmente los sistemas de reconocimiento automático de expresiones faciales se centran en ambos procesos seguidos por un módulo de clasificación para realizar el reconocimiento, además de obtener información del comportamiento de los componentes faciales, siendo este el caso de esta tesis.

Page 26: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

2 Capítulo 1: Introducción

Figura 1-1: Factores que influyen en las expresiones faciales. Traducido de [2].

1.1 Descripción del problema

Dado que las expresiones faciales proporcionan información no verbal de las personas, es útil considerar este hecho para desarrollar interfaces que permitan la comunicación con las computadoras de manera automática y con la menor cantidad de operaciones por parte de los usuarios. El análisis de las expresiones ha sido aplicado en: desarrollo de interfaces hombre-máquina (HCI) para facilitar el uso de herramientas; lectura de los labios en la enseñanza de lenguaje de señas; análisis de la generación de las expresiones para estudiar el comportamiento humano ante situaciones específicas; desarrollo de aplicaciones de entretenimiento como juegos de video y realidad virtual, entre otras aplicaciones.

En la figura 1-2 se muestra la arquitecta general de un sistema para el reconocimiento de expresiones faciales, el cual comienza con la localización de la cara y termina en el reconocimiento de expresiones. Las etapas más complejas son la localización de la cara y la de sus componentes debido los siguientes problemas identificados:

• Gran gama de tonalidades de la piel de la cara.

• Movimiento natural de la cabeza sobre los ejes x,y,z respecto al dispositivo de captura, además de su rotación.

• Variación en la iluminación que recibe la cara.

• Detección de movimiento en el escenario y objetos similares a caras humanas.

Page 27: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 1: Introducción 3

Figura 1-2: Arquitectura general de un sistema de reconocimiento de expresiones faciales.

1.2 Objetivo

Analizar, diseñar e implementar un sistema de visión por computadora que realice el seguimiento y caracterización de al menos tres componentes del rostro (ojos, cejas y boca en conjunto) para el reconocimiento de las principales expresiones faciales existentes (alegría, tristeza, enojo, miedo, sorpresa y neutral) en secuencias de imágenes.

1.2.1 Objetivos específicos

• Localizar de manera automática el rostro y la posición de los componentes de trabajo (ojos, cejas y boca).

• Realizar el seguimiento de los elementos de trabajo frente a cambios de traslación y rotación de la cabeza y cambios de iluminación en el escenario.

• Analizar las variaciones de los componentes faciales bajo estudio en forma y tamaño.

• Estudio del sistema de codificación de acciones faciales (FACS) propuesto por Paul Ekman [1], para el reconocimiento de expresiones faciales.

Page 28: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

4 Capítulo 1: Introducción

1.3 Alcances

• Procesamiento de videos con las siguientes características:

• Formato AVI sin compresión.

• 30 fps como máximo.

• 24 bits de profundidad del color.

• Iluminación no controlada en el escenario de captura.

• Localización y seguimiento de los componentes faciales invariante a un ángulo determinado de rotación de la cabeza.

• Localización y seguimiento de los componentes faciales invariante a factores de escala y traslación.

• Componentes faciales objeto de estudio: ojos, cejas, boca.

• Expresiones faciales a caracterizar: neutral, alegría, tristeza, enojo, miedo, sorpresa.

1.4 Limitaciones

• Debe existir un rostro en cada secuencia de video.

• El fondo del escenario debe permanecer sin movimiento.

• Los rostros deben corresponder a personas con edades entre 20 y 40 años.

• No debe existir oclusión del rostro por accesorios como lentes o barba, bigote y/o cabello.

1.5 Justificación

La justificación de este trabajo se basa en la necesidad de contar con el seguimiento de marcas faciales y la clasificación de expresiones, con objeto de aplicar esta información en áreas como:

Page 29: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 1: Introducción 5

• Estudio de estados mentales.

• Enseñanza de lenguaje de señas.

• Detección de situaciones de riesgo en la conducción de automovilistas al presentar características faciales fáciles de percibir, por ejemplo: cansancio y distracción.

• Reconstrucción de escenas en ambientes virtuales, con fines de animación asistida por computadora.

Durante las últimas dos décadas se han desarrollado numerosas investigaciones relacionadas con la detección de rostros y expresiones faciales. Sin embargo continúa siendo un importante reto debido a los factores que hacen difícil esta tarea para las computadoras, por ejemplo: raza de las personas, el tamaño de la cara en la imagen, iluminación y fondo del escenario.

Los trabajos que han mostrado un mejor desempeño en el reconocimiento de expresiones son los que trabajan bajo condiciones muy concretas y reducidas. En esta tesis se propone desarrollar un sistema de visión capaz de trabajar bajo condiciones no controladas como las antes mencionadas.

1.6 Metodología de desarrollo

Con el fin de resolver el problema se plantea la siguiente metodología:

1. Estudiar el estado del arte. Analizar los temas relacionados con el proceso del reconocimiento automático de expresiones faciales, como:

a. Localización de la cara y la de sus componentes. b. Extracción de características. c. Seguimiento de los componentes de interés. d. Reconocimiento de expresiones faciales.

2. Adquirir bases de datos públicas. Obtener bases de datos públicas para desarrollar un sistema de visión que pueda ser comparable con trabajos relacionados en el estado del arte.

3. Crear una base de datos propia. Tener un banco de videos donde los rasgos de los participantes coincidan con la población del entorno de desarrollo de este proyecto, con el fin de obtener un sistema de visión que sea aplicable

localmente. 4. Estudiar y seleccionar técnicas de procesamiento de videos e imágenes.

Page 30: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

6 Capítulo 1: Introducción

5. Diseñar una solución. Crear un diagrama de flujo para procesar los videos y obtener los resultados esperados.

6. Implementar la solución. Codificar la solución en algún lenguaje de programación.

7. Desarrollar un plan de pruebas. Someter el prototipo a pruebas para validar los procedimientos propuestos y corroborar el cumplimiento de los objetivos de esta tesis.

8. Analizar los resultados de las pruebas. Obtener conclusiones a partir de la solución propuesta y del desempeño de la implementación.

1.7 Organización del documento

Este documento está organizado de la siguiente manera.

El estado del arte se describe en el capítulo 2. En este capítulo se presenta la investigación realizada acerca de los temas relacionados con el reconocimiento de las expresiones faciales, además de las metodologías empleadas en la localización de caras y sobretodo la localización y extracción de características de los componentes faciales que es el tema central de esta tesis.

En el tercer capítulo se presenta el marco teórico de las técnicas implementadas en las etapas de la solución propuesta. Conceptos como formato de video y mapas de bits fueron utilizados para procesar videos. Diferentes espacios de color y técnicas de segmentación se utilizaron en la extracción de la cara. Para localizar los componentes faciales se emplearon algoritmos de pre-procesamiento de imágenes, distintos espacios de color, filtros espaciales y análisis de componentes conexas. Finalmente se presenta el sistema FACS, árboles de decisión y Redes Neuronales Artificiales (RNA’s) como las técnicas de clasificación implementadas.

En el capítulo 4 se describe la metodología de solución propuesta, la cual se basa en el estado del arte. En esta metodología se incluyen los principales módulos de un sistema general para el reconocimiento de expresiones faciales, los cuales corresponden desde la adquisición de imágenes hasta su clasificación.

En el capítulo 5 se describe la implementación de la solución mediante un sistema que combina una aplicación modular y una librería dinámica para controlar el flujo de la información. La aplicación contiene una interfaz gráfica donde se procesan las imágenes y se extraen los vectores de características automáticamente. Esta interfaz permite modificar parámetros y visualizar etapas intermedias del proceso en tiempo de ejecución.

Page 31: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 1: Introducción 7

En el capítulo 6 se muestran las pruebas realizadas y los resultados obtenidos. Las pruebas consisten en la evaluación de los principales módulos de la aplicación desarrollada: detección de piel; localización y seguimiento de la cara; extracción de características; y clasificación de secuencias de imágenes.

En el último capítulo se comentan los resultados obtenidos en el reconocimiento de las expresiones y otras pruebas. Se presentan las áreas de mejora y áreas de aplicación de esta tesis así como trabajos futuros.

Page 32: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 33: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

9

2222 Estado del arteEstado del arteEstado del arteEstado del arte

Capítulo 2

Estado del arte

En los últimos años se han desarrollado muchos trabajos enfocados al reconocimiento de expresiones faciales. En reseñas del estado del arte como [2] y [3] se resumen las técnicas utilizadas para el reconocimiento automático de expresiones, además se presentan algunos problemas y bases de datos utilizadas. La mayoría de los trabajos desarrollados incluyen las siguientes tres etapas como principales: primero debe localizarse la cara dentro de la escena en una imagen; después se extrae la información necesaria para realizar la clasificación, donde se tratan problemas como la pose del rostro, oclusión de componentes faciales por bigote y/o barba y cambios de iluminación en el escenario; finalmente se utiliza la información de salida de la segunda etapa para analizar el comportamiento de los componentes faciales de interés y realizar el reconocimiento de las expresiones generadas. La salida de la última etapa es un conjunto de clases de expresiones definidas y/o AU’s basadas en el sistema FACS.

En este capítulo se describen técnicas utilizadas en cada una de las etapas siguiendo la arquitectura general de un sistema para el reconocimiento de expresiones faciales (ver figura 1-2, p. 3).

Page 34: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

10 Capítulo 2: Estado del arte

2.1 Localización del rost

Esta es la primera etapa delocalización debe ser precisa. Los trabajos revisados se clasificaron en dos categorías: los que utilizaron un dispositivo hardware específico, en este caso cámaras infrarrojas que facilitan la localizacióinformación del color para encontrar la región de piel correspondiente a la cara.tabla 2.1 muestra de forma resumida las técnicas revisadas.

Kapoor y Picard [4]localizar las pupilas dado que con esta iluminación las pupilas brillan más que el resto de los componentes faciales. Capturan un par de imágenes, la primera captura con un conjunto de finalmente se realiza la resta de ambas imágenes para obtener un par de puntosque corresponden a los ojos (para localizar los componentes faciaseguimiento.

(a)

Figura 2-1: Localización de pupilas con cámara infrarroja. (a) Imagen capturada con cámara infrarroja. (b) Imagen capturada con leds encendidos. (c) Imagen capturada con leds apagados. (d) Resta de (b) y (c).

OpenCV [6] es una librería de visión artificial de licenciaun detector de caras, el cual utiliza el algoritmo para detectar objetos propuesto por Viola y Jones [7] basado en wavelets Haar.lenguaje C y C++, es multiplataforma y es utilizado para interactuar con Phyton, Matlab y otros lenguajes. Está disponible en

Pantic [9] umbraliza la imagen de entrada mediante una función que evalúa los pixeles en el espacio de color HSV. Los pixeles cuyo valor están dentro de los rangos [5, 35], [0, 0.7] y [0.1,región de piel más grande es etiquetada

: Estado del arte

Localización del rostro

Esta es la primera etapa del reconocimiento de expresiones y por lo tanto, su localización debe ser precisa. Los trabajos revisados se clasificaron en dos categorías: los que utilizaron un dispositivo hardware específico, en este caso cámaras infrarrojas que facilitan la localización de las pupilas y los que analizan la información del color para encontrar la región de piel correspondiente a la cara.

de forma resumida las técnicas revisadas.

] utilizan cámaras con iluminación infrarroja para localizar las pupilas dado que con esta iluminación las pupilas brillan más que el

los componentes faciales. Capturan un par de imágenes, la primera captura con un conjunto de leds encendidos, la segunda con los leds apagados y finalmente se realiza la resta de ambas imágenes para obtener un par de puntosque corresponden a los ojos (ver figura 2-1). Zhang [5] utiliza el mismo proceso para localizar los componentes faciales de la parte superior y realizar su

(b)

(d)

(c)

Localización de pupilas con cámara infrarroja. (a) Imagen capturada con cámara infrarroja. (b) Imagen capturada con leds encendidos. (c) Imagen capturada con

apagados. (d) Resta de (b) y (c).

brería de visión artificial de licencia libre que incluye el cual utiliza el algoritmo para detectar objetos propuesto basado en wavelets Haar. Esta librería está escrita en

lenguaje C y C++, es multiplataforma y es utilizado para interactuar con Phyton, Matlab y otros lenguajes. Está disponible en [6] y [8].

umbraliza la imagen de entrada mediante una función que evalúa los pixeles en el espacio de color HSV. Los pixeles cuyo valor están dentro de los rangos [5, 35], [0, 0.7] y [0.1, 0.9] en cada banda, son considerados como piel. La

es etiquetada como cara.

l reconocimiento de expresiones y por lo tanto, su localización debe ser precisa. Los trabajos revisados se clasificaron en dos categorías: los que utilizaron un dispositivo hardware específico, en este caso

analizan la información del color para encontrar la región de piel correspondiente a la cara. La

utilizan cámaras con iluminación infrarroja para localizar las pupilas dado que con esta iluminación las pupilas brillan más que el

los componentes faciales. Capturan un par de imágenes, la primera se apagados y

finalmente se realiza la resta de ambas imágenes para obtener un par de puntos utiliza el mismo proceso

les de la parte superior y realizar su

Localización de pupilas con cámara infrarroja. (a) Imagen capturada con cámara infrarroja. (b) Imagen capturada con leds encendidos. (c) Imagen capturada con

libre que incluye el cual utiliza el algoritmo para detectar objetos propuesto

Esta librería está escrita en lenguaje C y C++, es multiplataforma y es utilizado para interactuar con Phyton,

umbraliza la imagen de entrada mediante una función que evalúa los pixeles en el espacio de color HSV. Los pixeles cuyo valor están dentro de los

0.9] en cada banda, son considerados como piel. La

Page 35: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 11

Hsu [10] evalúa los pixeles en el espacio de color YCbCr para localizar regiones conexas de piel que probablemente corresponden a un rostro. En el mismo espacio de color, los pixeles de estas regiones son evaluados para localizar los ojos y la boca creando un mapa de los componentes. Si se localizan los tres componentes, se valida el triángulo que forman mediante su orientación, la cual debe corresponder con la de la región de piel. Kovac y Peer [11] analizan los pixeles en el espacio de color RGB para detectar regiones de piel conexas, considera las tres bandas de este espacio de color para clasificar los pixeles. Evalúa las características de las regiones para determinar si contienen un rostro.

Morán [12] utiliza el trabajo de Kovac y Peer [11] para localizar regiones de piel conexas. Evalúan las regiones candidatas mediante proyecciones laterales. Primero se obtiene la proyección horizontal a lo alto de la región, la proyección vertical de la mitad superior y la proyección vertical de la mitad inferior. Las tres proyecciones se comparan con patrones entrenados y mediante un umbral de similaridad se determina si la región corresponde a un rostro.

Tabla 2.1: Técnicas para localizar el rostro.

Localización con cámaras infrarrojas

Localización de pupilas [4], [5].

Localización mediante análisis del color

Wavelet Haar + Adaboost [8]. Color de piel + Región más grande [9]. Color de piel + Posición de componentes faciales [10], [11]. Color de piel + Análisis de proyecciones laterales [13].

2.2 Extracción de características faciales

En los trabajos revisados se utilizan dos enfoques para extraer las

características de las imágenes: el primero de ellos considera todos los pixeles de la imagen (holístico o global) y el otro enfoque considera regiones de la imagen (local). Además de esta clasificación, también se pueden agrupar por el tipo de información que se extrae. Hay trabajos que solamente utilizan la información contenida en las imágenes, es decir, no consideran el desplazamiento de los componentes faciales durante una secuencia para realizar el reconocimiento. Otros utilizan modelos que representan la cara y sus componentes, los cuales se ajustan a las imágenes. También están los trabajos que utilizan el flujo óptico y el movimiento de los componentes faciales para obtener un vector característico. La tabla 2.2 muestra técnicas utilizadas en el estado del arte para extraer el vector característico de las imágenes. A continuación se describen los trabajos revisados.

Weimin [14] aplica filtros Gabor sobre la imagen completa (global), para reconocer Unidades de Acción Facial (AU’s). Como parte del pre-procesamiento, se escalan las imágenes a 64×64 pixeles, además se alinean respecto a los ojos y la

Page 36: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

12 Capítulo 2: Estado del arte

boca, de tal manera que las imágenes quedan en la misma posición y orientación. Después de aplicar 40 filtros de Gabor con diferentes escalas y orientaciones, se aplica Análisis de Componentes Principales (PCA) para reducir la dimensión de los datos obtenidos y obtener los patrones correspondientes a las AU’s. Por otro lado, Escudero [15] umbraliza las imágenes para extraer regiones de piel candidatas a ser cara. Además escala las regiones a 128×128 pixeles y aplica la transformada Karhunen-Loeve a la componente G y R del espacio RG normalizado de la imagen para obtener el vector de características (método de extracción global). Mediante PCA se obtienen 100 componentes de cada operación para formar un vector característico de 200 elementos.

Whitehill y Omlin [16] se basan en la información de la imagen para reconocer AU’s considerando FACS. Se aplican algoritmos de PDI para escalar y orientar las imágenes a un mismo tamaño y posición. Utilizan la wavelet Haar como método de extracción de características sobre la región de los ojos y boca para obtener un vector de 500 elementos (método de extracción local). Para realizar el reconocimiento se utiliza Adaboost.

Saxena et al. [17] se basan en un modelo facial geométrico para extraer puntos característicos. Mediante un conjunto de relaciones geométricas que existen entre los componentes faciales se generan ventanas de búsqueda de los mismos. Utiliza proyecciones laterales para generar ventanas de búsqueda de los componentes faciales. Cada una de ellas se procesa con una secuencia distinta de algoritmos de PDI que incluyen algoritmos para detectar bordes, rellenar huecos, análisis de componentes conexas, entre otros. Finalmente se extraen seis parámetros de los componentes faciales para crear el vector de características (ver figura 2-2).

He: Altura de las cejas. We: Distancia entre cejas. Hm: Apertura de la boca. Wm: Anchura de la boca. Rul: Curvatura del labio superior. Rll: Curvatura del labio inferior.

Figura 2-2: Parámetros geométricos de la cara para formar un vector de características [17].

Sohail y Bhattacharya [18] también procesan regiones de la imagen para localizar los componentes faciales. El objetivo de este trabajo es extraer de forma automática un conjunto de puntos característicos: cuatro puntos de los ojos, dos de las cejas, dos de la nariz y cuatro de la boca (ver figura 2-3). Las regiones de búsqueda son procesadas mediante una secuencia distinta de algoritmos de PDI. Algunas de las técnicas utilizadas son: ajuste de intensidad, complemento, umbralizado y detección de bordes.

(a)

(b)

(c)

(d)

Figura 2-3: Puntos característicos faciales [19]. (a) Ojos. (b) Cejas. (c) Nariz. (d) Boca.

Page 37: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 13

Batista [19] implementa algoritmos de PDI para extraer puntos característicos de los ojos, cejas y boca. El objetivo de este trabajo es extraer la forma y posición de las cejas, las esquinas externas de los ojos y curvatura del párpado superior, esquinas externas de la boca y la orientación de la cara. Algunos algoritmos de PDI utilizados son: conversión a escala de grises, ajuste de intensidad, umbralizado y convolución. Las regiones de búsqueda y los puntos característicos se muestran en la figura 2-4.

Figura 2-4: Detección de características faciales con diferente orientación. Las regiones de búsqueda están basadas en un modelo facial geométrico [19].

Las técnicas que se basan en Modelos de Apariencia Activa y de Formas Activas (AAM, ASM) son estadísticos y están formados por tres etapas: captura, normalización y análisis estadístico. En la etapa de captura se define un conjunto de puntos o marcas alrededor del objeto a modelar, el siguiente paso es normalizar la forma obtenida y finalmente realizar un análisis estadístico, comúnmente mediante PCA para construir el modelo deseado de la forma. AAM extrae características de la textura para ajustar las imágenes a algún modelo de los entrenados, mientras que ASM solo utiliza información de la forma e intensidad de los pixeles que se encuentran en una dirección perpendicular a la forma extraída un instante antes.

Saatci [20] utiliza AAM para clasificar cuatro expresiones faciales (alegría, tristeza, enojo y neutral). En este trabajo se generó un modelo con 54 puntos para representar las cejas, ojos, nariz, boca y parte inferior de la cara (figura 2-5). Las imágenes de entrenamiento y prueba utilizadas están en escala de gris. Martin [21] utiliza un modelo de 58 puntos para clasificar siete expresiones faciales (enojo, disgusto, miedo, alegría, tristeza, sorpresa y neutral) mediante AAM. El entrenamiento y las pruebas se realizaron con imágenes procesadas con un filtro para detectar bordes (ver figura 2-5).

Figura 2-5: Modelos de formas para AAM.

Page 38: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

14 Capítulo 2: Estado del arte

Morán [12] y Luettin [22] utilizan ASM para extraer la forma de los labios. Los modelos utilizados están formados por 18 y 38 puntos respectivamente (figura 2-6) y emplean PCA para obtener los parámetros de la forma de los labios. De esta manera se crearon algunos modelos de la boca para su reconocimiento.

Figura 2-6: Modelos de formas para ASM.

La detección de movimiento es otra manera de extraer características en una secuencia de imágenes. El flujo óptico y seguimiento de puntos son utilizados en el estado del arte para obtener esta información. El flujo óptico determina la dirección y magnitud del movimiento. Tian et al. [23] utilizan el flujo óptico para detectar marcas faciales comúnmente llamadas arrugas en regiones específicas de la cara para reconocer AU’s. Bouguet [24] y Bourel [25] utilizan el algoritmo KLT1 para realizar el seguimiento de puntos característicos sobre los componentes faciales superiores.

Tabla 2.2. Técnicas para extraer características faciales.

Global Local

Basados en imágenes - Filtro Gabor [14] - PCA [14] [15]

- Wavelet Haar [16] - Modelo facial geométrico + Algoritmos de PDI [17] [19] [18]

Basados en modelos - AAM [20] [21] - ASM [12] [22] Flujo óptico - Flujo denso óptico [23] Seguimiento de marcas faciales

- Seguimiento de puntos característicos [25] [24]

1 Algoritmo de seguimiento KLT (Kanade-Lucas-Tomasi) [70].

Page 39: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 15

2.2.1 Extracción de componentes faciales

En este apartado se analiza el estado del arte sobre la extracción de componentes faciales y sus puntos característicos. Dado que mantienen una relación geométrica entre sí, los componentes se pueden localizar mediante un conjunto de distancias geométricas. Sohail y Bhattacharya [18] utilizan la distancia inter-pupilar como parámetro principal para localizar el resto de los componentes y Batista [19] utiliza el ancho de la boca. En el desarrollo de esta tesis se seleccionó el primero de ellos (ver figura 2-7 y tabla 2.3) debido a que se encontraron más referencias respecto al segundo parámetro antes mencionado. A continuación se describen algunos trabajos relacionados con la extracción de los componentes faciales.

Figura 2-7: Modelo facial para localizar componentes faciales [18].

Tabla 2.3: Proporción de distancias (D2, D3, D4 y D5) respecto a D1 [18].

Proporción Descripción Constante

D2/D1

Proporción de distancia entre el centro del ojo derecho y centro de ceja derecha respecto a la distancia inter-pupilar.

≈ 0.33

D3/D1 Proporción de distancia entre el centro del ojo izquierdo y centro de ceja izquierda respecto a la distancia inter-pupilar.

≈ 0.33

D4/D1 Proporción de distancia entre el punto medio entre ojos y la punta de la nariz respecto a la distancia inter-pupilar.

≈ 0.60

D5/D1 Proporción de distancia entre el punto medio entre ojos y el centro de la boca respecto a la distancia inter-pupilar.

≈ 1.10

2.2.1.1 Extracción de los ojos

La posición de los ojos y la distancia entre ellos son parámetros que se utilizan para localizar otros componentes faciales y la orientación de la cara. Con la distribución de la intensidad del color sobre la región facial se estima la posición de los ojos y otros componentes faciales. Con algoritmos de PDI se obtienen los bordes, esquinas, área del iris, entre otras propiedades de este componente.

Page 40: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

16 Capítulo 2: Estado del arte

Sobottka y Pitas [26], García [13] y Morán [12] utilizan proyecciones laterales para obtener la posición x, y de los ojos y la boca. Generalmente se utilizan tres señales: la proyección horizontal a lo largo de la cara (posición y de los ojos y boca); la proyección vertical sobre la mitad superior (posición x de los ojos); y la proyección vertical sobre la mitad inferior (límites en x de la boca) (ver figura 2-8). Para determinar la posición de los ojos se analiza el comportamiento de las dos primeras señales considerando que los ojos están en la mitad superior de la cara y mantienen una separación constante entre ellos.

Figura 2-8: Proyecciones laterales para localizar componentes faciales [26]. (a) Señal a lo alto de la cara (b) Imagen a procesar (c) Señal de mitad superior e inferior (ojos y boca).

Otra aplicación de las proyecciones laterales es la validación. García [13] y Morán [12] utilizan las proyecciones laterales para determinar la presencia de los ojos en regiones determinadas. Utilizan algoritmos de alineamiento para obtener un valor de similaridad entre las proyecciones calculadas y los patrones obtenidos mediante entrenamiento previo.

Para extraer los ojos y sus puntos característicos se han implementado distintos algoritmos de PDI. Sohail y Bhattacharya [18] utilizan un algoritmo iterativo de umbralizado basado en el ajuste del contraste para extraer cuatro puntos característicos de los ojos: las esquinas externas y punto medio de párpado superior e inferior. Cuando este algoritmo se estabiliza, el contorno y los puntos se obtienen mediante el análisis de componentes conexas. En la figura 2-9 se muestra el diagrama de flujo de este proceso.

Figura 2-9: Detección de puntos característicos en la región de los ojos. (a) Región del ojo (b) Ajuste del contraste en la región (c) Imagen binaria (d) Detección del contorno (e) Detección de esquinas (f) Detección de punto medio de los párpados.

Stathopoulou y Tsihrintzis [27] aplican un algoritmo de cuatro pasos principales para extraer los puntos característicos de los ojos. Como primer paso se detecta y elimina la piel mediante el algoritmo propuesto por Fleck y Forsyth [28]

Page 41: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 17

(figura 2-10b). Como segundo paso y de manera simultánea se procesa la misma región con K-Means para eliminar la piel (figura 2-10c). En el tercer paso se procesan ambas imágenes con operadores morfológicos para eliminar regiones etiquetadas como ruido, además de combinar el resultado de ambas imágenes (figura 2-10d). Finalmente se analizan las regiones obtenidas y se extraen los puntos característicos de los ojos (figura 2-10e).

(a)

(d)

(e)

(b)

(c)

Figura 2-10: Extracción de puntos característicos de los ojos. (a) Imagen original. (b) Detección de piel con Forsyth [28]. (c) Detección de piel con K-Means. (d) Operaciones morfológicas de (b). (e) Puntos característicos.

Batista [19] extrae las esquinas externas y párpado superior de los ojos como se explica a continuación. Primero se determina si el ojo está abierto o cerrado mediante proyecciones laterales. Si está cerrado, se aplican algoritmos para detectar bordes, después se umbraliza la región y se extrae el esqueleto del componente más grande. Finalmente se obtienen las esquinas de la línea obtenida como puntos característicos (figura 2-11a). Si el ojo está abierto, se localiza el iris mediante umbralizado. Después se extrae la parte superior del iris, a la cual se le extrae el esqueleto. Finalmente se obtienen las esquinas de la línea del esqueleto como puntos característicos (figura 2-11b).

Figura 2-11: Extracción de puntos característicos de los ojos [19]. (a) Ojo cerrado (b) Ojo abierto.

Page 42: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

18 Capítulo 2: Estado del arte

2.2.1.2 Cejas

La extracción de este componente resulta más sencilla que el resto dado que su forma se mantiene casi constante en cualquier expresión y su color contrasta con la piel que la rodea.

Batista [19] procesa la región de la ceja con una convolución aplicando una máscara de gradiente vertical, seguidamente se umbraliza la imagen resultante para finalmente extraer los extremos del objeto más grande, el cual corresponde a la ceja (ver figura 2-12).

Figura 2-12: Extracción de cejas, Batista [19].

Saxena et al. [17] aplican un filtro laplaciano gaussiano para extraer el contorno de los objetos que se encuentran en la región de búsqueda. En el siguiente paso se cierran los contornos y se rellenan. Después se aplican operadores morfológicos con un elemento estructural en forma de elipse. Finalmente se selecciona el objeto que se ajuste a una elipse y que su posición sea la más superior. En la figura 2-13 se muestran los pasos principales de este método propuesto.

Figura 2-13: Extracción de cejas, Saxena [17].

Sohail y Bhattacharya [18] utilizan el complemento de la imagen y operadores morfológicos para estimar y substraer el fondo. Después se ajusta la intensidad de los pixeles y se umbraliza con Otsu [29] para extraer el componente facial. Finalmente el objeto más grande es considerado como ceja del cual se extraen sus esquinas externas como puntos característicos. En la figura 2-14 se muestra el proceso propuesto en [18].

Figura 2-14: Extracción de cejas, Sohail [18]. (a) Región de la ceja. (b) Complemento de la imagen. (c) Estimación del fondo. (d) Substracción del fondo. (e) Ajuste de intensidad de los pixeles. (f) Imagen binaria. (g) Contorno de la ceja. (h) Detección de esquinas.

Page 43: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 19

2.2.1.3 Boca

La boca es un importante componente facial que se encuentra en la mitad inferior de la cara. Dado que el tono de los labios es similar a la piel que los rodea, se han desarrollado técnicas para su extracción en espacios de color distintos a RGB. Se han desarrollado técnicas para extraer el contorno de los labios [17] [23] y técnicas para extraer un conjunto de puntos suficiente para modelar este componente facial, por ejemplo las esquinas externas y puntos medio de labio superior e inferior [12] [22].

Saxena [17] utiliza las componentes Cb y Cr del espacio de color YCbCr para obtener una separabilidad entre los labios y la piel que los rodea. Utilizaron 93 imágenes de prueba para obtener la distribución de los pixeles en Cb y Cr. La matriz de covarianza entre estas distribuciones se utilizó para obtener la probabilidad de que un pixel pertenezca a los labios o a la piel. Después de segmentar los pixeles que pertenecen a los labios se ajusta una curva sobre la parte superior del componente y otra sobre la parte inferior para representar el contorno de los labios.

Morán [12] transforma la región de los labios al espacio de color CieLuv para extraer la componente U, además, aplican la transformada discreta de Hartley (DHT) [30] para extraer la componente C3. La suma de las imágenes resultantes (U+C3) es utilizada para extraer un conjunto de 18 puntos que representan la forma de la boca. Estos puntos se obtienen mediante la técnica de flujo del vector gradiente. En la figura 2-15 se muestra el procesamiento de la región de los labios a CieLuv y HDT.

Figura 2-15: Transformación de RGB a CieLUV y DHT, finalmente U+C3.

Arsic et al. [31] transforman la región de los labios a los espacios de color CieLab y CieLuv. Solo se utilizan las componentes a*, b* y u*, v* de las imágenes transformadas. Las cuatro imágenes resultantes se procesan con un algoritmo C-Means difuso de forma iterativa para obtener los pixeles que pertenecen a los labios en todas las imágenes. Finalmente se obtienen cuatro puntos característicos: esquinas externas y punto medio de labio superior e inferior.

Figura 2-16: Transformación de la región de los labios a CieLab y CieLuv.

Page 44: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

20 Capítulo 2: Estado del arte

2.3 Reconocimiento de expresiones faciales

Algunos trabajos como [19] y [18], extraen las características faciales pero no realizan la clasificación. La mayoría de los trabajos revisados realizan la clasificación del vector de características mediante algoritmos de aprendizaje automático. Para clasificar las expresiones faciales se han utilizado dos enfoques, el primero de ellos se basa en el sistema FACS y el otro sólo utiliza información a partir de los puntos característicos como posiciones relativas y distancias geométricas.

Wang [32] emplea el algoritmo Adaboost para clasificar el vector de características obtenido a partir de coeficientes de una wavelet Haar aplicada sobre la imagen. Las imágenes se clasificaron en: disgusto, enojo, felicidad, miedo, sorpresa, tristeza y neutral. Los resultados obtenidos se compararon con un clasificador basado en SVM, sin embargo Adaboost presentó mejores resultados.

Tian et al. [23] utilizan RNA’s para reconocer AU’s a partir del vector de características obtenido. La red neuronal clasifica información de dos modelos de extracción de características: distancias geométricas entre puntos característicos y coeficientes de filtros Gabor aplicados en regiones específicas.

Zhang [5] utilizó una red bayesiana dinámica para clasificar imágenes en disgusto, enojo, felicidad, miedo, sorpresa y tristeza. Utilizó el sistema FACS para obtener las AU’s activas en cada fotograma de los videos de prueba. Con las AU’s resultantes se clasificaron las imágenes en las expresiones faciales básicas. Además de considerar medidas de distancia entre puntos faciales también se consideró la aparición de arrugas en regiones específicas mediante la detección de bordes.

Kotsia [33] utiliza un conjunto de 62 marcas faciales colocadas manualmente al inicio de cada secuencia de prueba. El seguimiento de los puntos se realiza con el algoritmo KLT [24]. El desplazamiento de los puntos respecto al fotograma inicial es el vector de características utilizado para obtener las AU’s presentes. Se utilizaron 17 AU’s para clasificar las imágenes en: disgusto, enojo, felicidad, miedo, sorpresa y tristeza. Se utilizó Máquinas de Soporte Vectorial (SVM) como clasificador de las imágenes.

Sebe [34] utiliza un modelo de malla en 3D para extraer el vector característico de las imágenes de prueba, el cual está formado por la deformación de la malla. Se probaron distintos clasificadores, BN, distintos tipos de árboles de decisión como ID3 y C4.5, SVM, RNA, algoritmos de votación, entre otros. Crearon una base de datos para comparar los resultados de cada algoritmo con los resultados de la base de datos Cohn-Kanade [35].

Page 45: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 21

2.4 Sistema de Codificación de Acciones Faciales (FACS)

Ekman y Friesen [1] desarrollaron el sistema FACS que consiste en un conjunto de 46 AU’s. Cada AU representa la actividad muscular que produce un cambio momentáneo en la apariencia de la cara [36]. Estos cambios pueden estar representados por deformaciones en los componentes faciales así como aparición de marcas faciales, comúnmente llamadas líneas de expresión o arrugas. Con la combinación de AU’s se representan las distintas expresiones faciales.

En el estado del arte se han utilizado distintos conjuntos de AU’s para reconocer expresiones faciales. Lo anterior se debe a que las AU’s pueden aparecer como elementos fundamentales ó auxiliares en las expresiones. A continuación se describen algunos de los trabajos revisados que utilizan AU’s para reconocer expresiones faciales.

Pantic y Rothkrantz [9] desarrollaron una aplicación capaz de reconocer 22 AU’s mediante un clasificador basado en reglas. En la tabla 2.4 se muestra la descripción de cada AU basada en un conjunto de reglas, las cuales se obtienen a partir de la variación de parámetros que representan la actividad muscular. Con las ecuaciones (2.1), (2.2) y (2.3) se obtiene la variación de los parámetros comparando una imagen respecto a la posición neutral. En la figura 2-17 se presenta el modelo facial utilizado para extraer los puntos característicos. En este trabajo se alcanzó un 92.7% de efectividad en el reconocimiento de las 22 AU’s seleccionadas.

Figura 2-17: Modelo de puntos característicos faciales utilizado en Pantic [9].

Page 46: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

22 Capítulo 2: Estado del arte

Tabla 2.4: Descripción de 22 AU's mediante reglas para su reconocimiento [9].

AU Descripción y reglas relacionadas

1 Raised inner portion of the eyebrow(s) IF inc/dec(BD) < 0 OR inc/dec(B1D1) < 0 THEN AU1

2 Raised outer portion of the eyebrow(s) IF inc/dec(AE) < 0 OR inc/dec(A1E1) < 0 THEN AU2

4 Eyebrows pulled closer together (frown) IF inc/dec(DD1) > 0 THEN AU4

5 Raised upper eyelid(s) IF inc/dec(FG) < 0 OR inc/dec(F1G1) < 0 THEN AU5

6 Raised cheeks (smile); IF AU12 OR AU13 THEN AU6

7 Raised lower eyelid(s) IF not(AU12) AND ((FG > 0 AND inc/dec(GX) > 0) OR (F1G1 > 0 AND inc/dec(G1Y) > 0)) THEN AU7

8

Lips pulled towards each other IF not(AU12 OR AU13 OR AU15 OR AU18 OR AU20 OR AU23 OR AU24 OR AU35) AND KL > 0 AND inc/dec(CK) < 0 THEN AU8

12 Mouth corner(s) pulled up IF (inc/dec(IB) > 0 AND inc/dec(CI) < 0) OR (inc/dec (JB1) > 0 AND inc/dec(CJ) < 0) THEN AU12

13 Mouth corner(s) pulled sharply up IF (inc/dec(IB) > 0 AND inc/dec(CI) > 0) OR (inc/dec (JB1) > 0 AND inc/dec(CJ) > 0) THEN AU13

15 Mouth corner(s) pulled down IF inc/dec(IB) < 0 OR inc/dec(JB1) < 0 THEN AU15

18 Mouth pushed medially forward (as when saying “fool”) IF not(AU28) AND IJ ≥ t1 AND inc/dec(IJ) > 0 AND inc/dec(KL) ≤ 0 THEN AU18

20 Mouth stretched horizontally IF inc/dec(IJ) < 0 AND inc/dec(IB) = 0 AND inc/dec (JB1) = 0 THEN AU20

23 Tightened lips IF KL > 0 AND inc/dec(KL) > 0 AND inc/dec(IJ) δ 0 ND inc/dec(JB1) ε 0 AND inc/dec(IB) ε 0 THEN AU23

24

Lips pressed together IF not(AU12 OR AU13 OR AU15) AND KL > 0 AND inc/dec(KL) > 0 AND IJ > t1 AND inc/dec(IJ) > 0 THEN AU24

25 Parted lips IF inc/dec(KL) < 0 AND inc/dec(CM) ≥ 0 THEN AU25

26 Parted jaws IF inc/dec(CM) < 0 AND CM ≤ t2 THEN AU26

27 Mouth stretched vertically; IF CM > t2 THEN AU27 28 Lips sucked into the mouth; IF KL = 0 THEN AU28 35 Cheeks sucked into the mouth; IF IJ < t1 THEN AU35

38 Widened nostrils IF not(AU8 OR AU12 OR AU13 OR AU18 OR AU24) AND inc/dec(HH1) < 0 THEN AU38

39 Compressed nostrils IF not(AU8 OR AU15 OR AU18 OR AU24 OR AU28) AND inc/dec(HH1) > 0 THEN AU39

41

Dropped upper eyelid(s) IF not(AU7) AND ((FG > 0 AND inc/dec(FG) > 0 AND inc/dec(FX) > 0) OR (F1G1 > 0 AND inc/dec(F1G1) > 0 AND inc/dec(F1Y) > 0)) THEN AU41

Page 47: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 23

���/��� �� � ������ � ������ (2.1)

� ����� � ���� � ��� � ����� (2.2)

�� ���/��� �� 0, ��#$%���% ���&�'��$% (2.3)

Kotsia [33] utiliza SVM’s para reconocer expresiones faciales basándose en el sistema FACS. El desplazamiento de un conjunto de puntos faciales forma el vector característico utilizado para el reconocimiento. En la tabla 2.5 se muestran las 17 AU’s seleccionadas para reconocer las siguientes expresiones: enojo, disgusto, miedo, alegría, tristeza y sorpresa. La segunda columna de la tabla describe las expresiones mediante la combinación de AU’s y la tercer columna muestra un subconjunto de las mismas, las cuales solo aparecen en una de las expresiones faciales. La descripción de las expresiones se tomó de [37], donde se explica la forma de obtener las AU’s. En este trabajo se obtuvo el 93.7% de efectividad en el reconocimiento.

Tabla 2.5: AU's seleccionadas para reconocer expresiones faciales con SVM [33].

Expresión Descripción basada en AU’s AU’s

Enojo

4 + 7+ +(((23 o 24) con o sin 17) o (16 + (25 o 26)) 23 o 24 o (10 + 16 + (25 o 26)))

con o sin 2

23 o 24

Disgusto ((10 con o sin 17) o

(9 con o sin 17)) + (25 o 26) 9

Miedo (1 + 4) + (5 + 7) + 20+

+(25 o 26) 20

Alegría 6 + 12 + 16+ +(25 o 26)

12+16

Tristeza 1 + 4 + (6 o 7)+ 15 + 17 + (25 o 26)

15

Sorpresa (1 + 2) + (5 sin 7) + 26 5

Zhang [5] utiliza una Red Bayesiana dinámica (DBN) para reconocer expresiones faciales basándose en FACS. Algunas combinaciones entre las 18 AU’s seleccionadas se agruparon en dos conjuntos: el primero de ellos también denominado entradas primarias, incluye las combinaciones de AU’s que no producen ambigüedad para reconocer las expresiones; el otro conjunto también llamado entradas auxiliares, son combinaciones aditivas sobre las AU’s primarias para proporcionar mayor información al tiempo del reconocimiento (ver tabla 2.6).

Page 48: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

24 Capítulo 2: Estado del arte

Tabla 2.6: AU’s asociadas a seis expresiones faciales y combinaciones de AU's [5].

Expresión facial

Características primarias Características auxiliares

AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s)

Alegría 6 12

25 26 16 Tristeza 1 15 17

4 7 25 26 Disgusto 9 10

17 25 26 Sorpresa 5 26 27 1+2

Enojo 2 4 7 23 24

17 25 26 16 Miedo 20 1+5 5+7

4 5 7 25 26

En la figura 2-18 se presenta el modelo facial utilizado, el cual muestra la relación geométrica entre los puntos característicos faciales. Con este modelo facial se creó un conjunto de reglas para describir las AU’s seleccionadas (ver tabla 2.7).

Figura 2-18: Relación geométrica entre puntos característicos. Los rectángulos representan regiones de líneas de expresión [5].

Tabla 2.7: Descripción de AU’s utilizadas en Zhang [5].

Page 49: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 2: Estado del arte 25

2.5 Bases de datos

Debido a la compleja estructura de la cara en 3D, su apariencia se ve afectada por un gran número de factores como la pose, iluminación, expresión facial, cabello, objetos faciales y edad. Para desarrollar algoritmos robustos frente a esos cambios, es necesario contar con bases de datos que incluyan variaciones de esos factores de una manera controlada [38]. Sin embargo, algunos trabajos han sido desarrollados para funcionar bajo condiciones específicas dado que buscan satisfacer necesidades del entorno de desarrollo, esto genera la creación de bases de datos propias. En casos como estos las aplicaciones pueden no funcionar de la misma manera con bases de datos públicas. En la tabla 2.8 se presenta de forma resumida las principales características de las bases de datos utilizadas en el estado del arte para el reconocimiento de expresiones faciales [39].

Page 50: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

26 Capítulo 2: Estado del arte

Tabla 2.8: Bases de datos para reconocimiento de expresiones faciales.

Kanade [40]

PICS [41]

JAFFE [42]

AR [43]

PIE [44]

MMI [45]

FGNET [46]

Imágenes estáticas � 1581 219 4000 40000 740 � Videos 2105 � � � � 848 399 Expresiones faciales � Sonrisa � 4 4 � 6 AU’s Algunas � � � � � � Múltiple AU’s � Sonrisa � 4 4 � � Codificación de AU’s � � � � � � � No. De personas 210 ? 10 126 68 19 18 Rango de edad 18-50 ? ? ? ? 19-62 ? No. De razas 3 ? 1 ? ? 3 1 Género ♀♂ ♀♂ ♀ ♀♂ ♀♂ ♀♂ ♀♂ Iluminación Uniforme ? ? Variable Variable Uniforme Variable Cabello, lentes � � � � � � � Vista de perfil � � � � � � � Descargable � � � � � � � Permite búsquedas � � � � � � �

Comentarios

Los sistemas de reconocimiento de expresiones faciales incluyen una gran cantidad de etapas que no han sido fáciles de resolver y mucho menos de generalizar. Esto se debe a que las características de la cara (p. ej. proporción) y las de sus componentes (p. ej. ubicación relativa y tamaño de los ojos) no son iguales entre las razas de personas. Además la apariencia se ve afectada por la iluminación, la perspectiva respecto al dispositivo de captura e incluso por la intensidad con que se generan las expresiones.

La mayoría de los trabajos presentados utilizan imágenes de prueba con las condiciones mencionadas de forma controlada, lo cual facilita la extracción de los componentes faciales y reconocimiento de las expresiones. Otra característica de los trabajos es que solucionan parcialmente el problema del reconocimiento, enfocándose en alguna etapa, por ejemplo: detección de piel y localización de la boca.

Como se mostró en este capítulo, existen muchas soluciones para cada etapa del reconocimiento de expresiones faciales. Sin embargo ha resultado difícil combinar técnicas o algoritmos con diferente enfoque de operación durante el desarrollo de un sistema completo. En el desarrollo de esta tesis se seleccionaron algoritmos que trabajan de forma similar para implementar una metodología de solución. Estos algoritmos se basan en el color de la imagen para extraer las características necesarias en cada etapa de la metodología.

Page 51: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

27

3333 Marco teóricoMarco teóricoMarco teóricoMarco teórico

Capítulo 3

Marco teórico

En este capítulo se realiza un breve repaso a algunos conceptos utilizados en la implementación de los algoritmos seleccionados. Los conceptos están divididos en grupos: procesamiento de imágenes, modelo facial geométrico, FACS y clasificación.

Dentro de los conceptos de procesamiento de imágenes se describe el formato de imagen BMP que utiliza de forma nativa el sistema operativo Windows. Dado que los videos utilizados están en formato AVI2 sin compresión sus fotogramas son imágenes en este formato.

Otros conceptos se refieren a los espacios de color utilizados para modelar el tono de la piel; técnicas de segmentación; algoritmos de suavizado y detección de bordes; operaciones sobre imágenes binarias; características de regiones; rotación de imágenes; y cálculo de proyecciones laterales.

Después de definir los algoritmos de PDI se describe un modelo facial geométrico que muestra la relación entre los componentes faciales definiendo sus regiones de búsqueda. Finalmente se presentan dos enfoques para reconocer expresiones faciales. El primero de ellos y sobre el que se basa este trabajo, es el sistema FACS que define el conjunto de AU’s representativas de las expresiones faciales. El otro enfoque se basa en medidas de distancia entre marcas para agrupar los datos en clases.

2 Audio Video Interleaved (AVI). Formato utilizado por Windows para almacenar audio y video en el mismo archivo.

Page 52: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

28 Capítulo 3: Marco teórico

3.1 Formato BMP

El formato Windows Bitmap (BMP) apareció con el Microsoft Windows 3.0 que adoptó el bitmap como formato gráfico. Los archivos BMP poseen una cabecera que especifica el alto y ancho de la imagen. Aunque permite compresión, normalmente se utiliza sin compresión. Los datos de la imagen se almacenan de abajo hacia arriba y el color de los pixeles en el orden azul-verde-rojo. Cada pixel está representado por 24 bits, que corresponden a 8 bits por cada banda (R-rojo, G-verde, B-azul). También soporta la existencia de una sola banda en formato de grises con pixeles de tamaño de 8 bits [47]. Los archivos BMP se guardan en un bitmap que es un dispositivo independiente (DIB), formato que le permite a Windows mostrar la imagen en cualquier tipo de aplicación y dispositivo gráfico.

3.1.1 Estructura de archivos BMP

Cada archivo contiene una cabecera de información, una tabla de color y una matriz de bytes que definen los bits del bitmap. El archivo tiene la siguiente estructura [48]:

• BMFH de BITMAPFILEHEADER

• BMIH de BITMAPINFOHEADER

• ACOLORS de RGBQUAD[]

• BYTE el BITMAPBITS[]

La cabecera del archivo contiene datos sobre el tipo, tamaño y diseño de un archivo del bitmap de dispositivo independiente. La cabecera se define como una estructura BITMAPFILEHEADER.

La cabecera de información está definida como una estructura de tipo BITMAPINFOHEADER, especifica las dimensiones, tipo de condensación y el formato de color para el bitmap.

La tabla de color está definida como una matriz de estructuras RGBQUAD que contiene tantos elementos como colores hay en el bitmap.

La estructura BITMAPINFO representa una cabecera de información combinada con la tabla de color. Los bits del bitmap consecutivos a la tabla de color consisten en un vector de valores BYTE que representan las filas del bitmap en forma secuencial.

Page 53: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 29

3.1.2 Estructura de un bitmap

La estructura Bitmap define el tipo, ancho, alto, formato de color y valores de bit para un mapa de bits (ver figura 3-1).

typedef struct tagBITMAP { LONG bmType; // Especifica el tipo de mapa de bits. Este valor debe ser cero. LONG bmWidth; // Especifica el ancho del mapa de bits en píxeles. LONG bmHeight; // Especifica la altura del mapa de bits en píxeles. LONG bmWidthBytes; // Especifica el número de bytes en cada línea de rastreo. Este valor debe ser

// divisible por dos, porque Windows asume que los valores de bit de un // mapa de bits forman un arreglo que está alineado en palabras.

WORD bmPlanes; // Especifica el número de planos de color. WORD bmBitsPixel; // Especifica el número de bits requeridos para indicar el color de un pixel. LPVOID bmBits; // Puntero a los valores de los bits del mapa de bits. Este parámetro debe ser

// puntero largo a un arreglo de valores de caracteres (1 byte). } BITMAP;

Figura 3-1: Estructura de un bitmap.

3.2 Modelos de color

El propósito de los modelos de color es facilitar la especificación de los colores de alguna forma estándar. Un modelo de color es una especificación de un sistema de coordenadas 3D y un sub-espacio dentro de dicho sistema donde cada color está representado por un punto.

La mayoría de los modelos de color utilizados están orientados hacia el hardware (monitores e impresoras), o hacia aplicaciones de manipulación de color. Los modelos orientados a hardware más utilizados son el RGB (rojo, verde, azul) para monitores, el CMY (cyan, magenta, amarillo) para impresoras y el YIQ (intensidad, infase y cuadratura) es el estándar para la difusión de televisión. Para el procesamiento de imágenes se utilizan RGB, YIQ, HSV (matiz, saturación, valor), HSI (matiz, saturación, intensidad) [49].

Para modelar la piel, es necesario construir una regla de decisión en algún espacio de color que diferencie entre los pixeles de una imagen que correspondan a la piel y aquellos que no. RGB es el espacio de color más utilizado en el formato de imágenes. Cualquier otro espacio de color se puede obtener mediante una transformación lineal o no lineal a partir de RGB. Muchos espacios de color han sido propuestos y utilizados para la detección de piel, por ejemplo: espacios de color básicos (RGB, RGB normalizado, CIE-XYZ); espacios de color perceptuales (HSI, HSV, HSL, TSL); espacios de color ortogonales (YCbCr, YIQ, YUV, YES); espacios de color perceptualmente uniformes (CIE-Lab, CIE-Luv), entre otros. En

Page 54: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

30 Capítulo 3: Marco teórico

el anexo A se presenta de manera resumida los espacios de color y técnicas de detección de piel utilizados en el estado del arte [50].

3.2.1 RGB

En este modelo cada color aparece en sus componentes espectrales primarias: rojo, verde y azul. Este modelo está basado en el sistema de coordenadas cartesianas. El sub-espacio de color de interés es el tetraedro mostrado en la figura 3-2, en el cual los valores RGB están en tres vértices, Cyan, Magenta y Amarillo se sitúan en otros tres vértices, el negro corresponde al origen y el blanco se sitúa en el vértice más alejado del origen. En este modelo la escala de grises se extiende desde el negro hasta el blanco a lo largo de la diagonal que une esos dos puntos y los colores son puntos del tetraedro definidos por vectores desde el origen [49].

Figura 3-2: Representación del espacio de color RGB.

3.2.2 YCbCr

Figura 3-3: Relación entre el espacio RGB y YCbCr.

YCbCr es una codificación no lineal del espacio de color RGB usada comúnmente por los estudios de televisión europeos y en la compresión de imágenes. El color es representado por la luminancia (Y) y por dos valores diferentes de color (Cb y Cr) que son características colorimétricas del color. La figura 3-3 muestra la relación entre el espacio de color RGB y YCbCr.

Page 55: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 31

La luminancia es la cantidad lineal de luz directamente proporcional a la intensidad física y ponderada por la sensibilidad de la percepción humana visible al espectro. Es igual a la suma ponderada de los componentes lineales del espacio de color RGB. La obtención de este espacio de color a partir del RGB es la siguiente: � � 0.299 · , � 0.587 · 0 � 0.114 · 3� � , � � 34 � � �

(3.1)

(3.2)

(3.3)

donde R, G y B son los valores de los canales rojo, verde y azul respectivamente

3.2.3 HSV

Figura 3-4: Representación del espacio de color HSV.

Este modelo se basa en el modo de percibir los colores que tenemos los humanos, sus componentes son Hue, Saturación y Valor. La componente Hue o tono define el color verdadero de los objetos, p.ej. rojo, amarillo, naranja. La Saturación define la blancura del color y el Valor define el brillo. El rango que puede tomar cada componente es [0°,360°], [0,100] y [0,100] respectivamente (ver figura 3-4).

La transformación de RGB a HSV se realiza con las ecuaciones (3.4), (3.5) y (3.6) donde max es el valor máximo entre R, G, B y min el valor mínimo de los tres canales.

Page 56: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

32 Capítulo 3: Marco teórico

5 �677787779 0, '%: � '��60° = > � ?'%: � '�� � 0°, '%: � &, %�� > @ ?

60° = > � ?'%: � '�� � 360°, '%: � &, %�� > ?60° = ? � &'%: � '�� � 120°, '%: � >60° = & � >'%: � '�� � 240°, '%: � ?

B (3.4)

C � D 0, '%: � 0'%: � '��'%: , �E%FGE��& H$&H �%#HB (3.5)

I � '%: (3.6)

3.3 Segmentación por color (Umbralizado)

El umbralizado es una de las principales técnicas en los sistemas de visión para la detección de objetos [49]. Esta técnica considera la fijación de un umbral como una operación que implica pruebas con respecto a una función T de la forma (3.7). J � JK:, L, M�:, L�, ��:, L�N (3.7)

donde ��:, L� es la intensidad en el punto �:, L� y M�:, L� es alguna propiedad del punto, por ejemplo la intensidad media de un entorno de vecindad centrado en �:, L� [49]. Con esta técnica se creará una imagen binaria >�:, L� definiendo,

>�:, L� � O0 #� ��:, L� P J1 #� ��:, L� Q JB (3.8)

donde los pixeles marcados con 1 corresponden al objeto y con 0 pertenecen al fondo

3.4 Convolución

Esta operación consiste en transformar el valor de un pixel p en la posición (x,y) teniendo en cuenta los valores de los pixeles vecinos. Por ejemplo, si se considera una vecindad E8(p), se realiza una suma ponderada con los valores de los ocho vecinos y el resultado de dicha suma es el valor del nuevo pixel q de la imagen de

Page 57: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 33

salida en la misma posición (x,y). Lo que resta es definir los valores de ponderación, lo cual se hace generalmente definiendo una máscara con valores constantes conocida como máscara de convolución. Dicha máscara es realmente un filtro, por lo que, dependiendo de su naturaleza será el resultado final [47]. Las convoluciones tienen como principal finalidad suavizar imágenes, detectar y realzar bordes. En la figura 3-5 se muestra el proceso de convolución de una imagen.

La convolución se puede representar como la siguiente operación: >�:, L� � ��:, L�⊗%�:, L� (3.9)

donde a(x, y) es la función de respuesta al impulso del filtro a aplicar (máscara de convolución), f(x, y) es la imagen de entrada y g(x, y) es la imagen filtrada.

Figura 3-5: Proceso de convolución de una imagen.

3.5 Transformaciones morfológicas

Las transformaciones morfológicas son aquellas que modifican la estructura o forma de los objetos que están presentes en la imagen. Estas herramientas, además se ser útiles para la extracción de características, permiten la eliminación de ruido que se produce en todo proceso de segmentación [51].

3.5.1 Dilatación

Es el crecimiento progresivo de una región u objeto. Un elemento del fondo formará parte del objeto si posee algún vecino perteneciente al objeto a dilatar. Los elementos pertenecientes a un objeto a dilatar evidentemente no se modifican [51].

La dilatación ⊕, combina dos conjuntos utilizando la adición de vectores, por lo que X⊕B es el conjunto de puntos de todas las posibles adiciones vectoriales

Page 58: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

34 Capítulo 3: Marco teórico

de pares de elementos, uno de cada conjunto X y B como se muestra en la figura 3-6.

X = {(0,1),(1,2),(2,0),(2,1),(3,0),(3,1)} B = {(0,0),(0,1)} X⊕B = {(0,1), (0,2), (1,2), (1,3), (2,0), (2,1), (2,2), (3,0) (3,1), (3,2)}

Figura 3-6: Dilatación de un objeto.

3.5.2 Erosión

Es la degradación progresiva de una región. Un elemento de una región seguirá perteneciendo a la misma si está rodeado de elementos iguales a él, en caso contrario pasará a formar parte del fondo. Si este proceso se realiza de forma iterativa, terminará por destruir la imagen [51].

La erosión ⊗, combina dos conjuntos utilizando la substracción de vectores, es dual de la dilatación. Ni la erosión ni la dilatación son transformaciones invertibles. En la figura 3-7 se ejemplifica este proceso.

X = {(0,2),(1,2),(2,0),(2,1),(2,2),(2,3),(3,2),(4,2)} B = {(0,0),(0,1)} X⊗B = {(2,0),(2,1),(2,2)}

Figura 3-7: Erosión de un objeto.

Page 59: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 35

3.6 Etiquetado de componentes conexas

Esta técnica trabaja con imágenes binarias, su objetivo consiste en etiquetar las componentes conexas de forma que el resultado final sea una región. El concepto de componentes conexas es el siguiente: todos los pixeles que tienen el valor binario “1” y están conectados entre sí por un camino o conjunto de pixeles todos con el valor “1” binario se les asigna la misma etiqueta, que debe ser única de la región a la cual pertenecen los pixeles [49]. Comúnmente se utiliza conectividad-4 y 8 para verificar si los vecinos de un pixel pertenecen al mismo grupo (ver figura 3-8). El etiquetado de componentes conexas es una operación de agrupación.

Figura 3-8: Conectividad de un pixel.

3.7 Características de regiones

3.7.1 Tamaño

El área de un objeto se calcula sumando sus píxeles incluyendo el borde. El resultado es la medida del tamaño del objeto. Usualmente no incluye las áreas de huecos [52]. Se define como:

� R R >��, S�TUVWXY

TUVZXY (3.10)

donde g(i, j) es una imagen binaria.

3.7.2 Elongación

Se define como la proporción entre el ancho del rectángulo mínimo del borde (MBR por sus siglas en inglés) y su alto [53].

Page 60: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

36 Capítulo 3: Marco teórico

[FH�>%��ó� � ]H�>�$E� :]H�>�$E� L (3.11)

Figura 3-9: Elongación de un objeto.

3.7.3 Orientación

Para que un objeto tenga orientación debe ser alargado (un círculo no tiene orientación). Se puede definir orientación como la recta que cumpla que la suma de las distancias de los puntos a ella es mínima. En el caso de objetos simétricos no existirá algún problema, sin embargo en los objetos no simétricos el eje puede no coincidir con la dirección a la que apunta el objeto [51].

Los momentos espaciales describen la forma de las regiones. Con los momentos de segundo orden se obtiene su orientación, su eje mayor y eje menor. Los momentos de segundo orden se definen como [54]:

^�� � 1 R �& � &_����,��`a (3.12)

^�� � 1 R �& � &_��� � �_���,��`a (3.13)

^�� � 1 R �� � �_����,��`a (3.14)

donde &_ L �_ corresponden al centro de masa de un objeto y se define como: &_ � 1 R &�`a (3.15)

�_ � 1 R ��`a (3.16)

Page 61: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 37

Para determinar la longitud del eje mayor y eje menor, así como sus orientaciones a partir de los momentos de segundo orden, se deben considerar cuatro casos:

1. ^�� � 0 L ^�� P ^�� El eje mayor tiene una orientación de 90º hacia la izquierda del eje de las columnas y su longitud es 4^��V �⁄ . El eje menor tiene una orientación de 0º hacia la izquierda del eje vertical y su longitud es 4^��V �⁄ .

2. ^�� � 0 L ^�� Q ^�� El eje mayor tiene una orientación de 0º hacia la izquierda del eje de las columnas y su longitud es 4^��V �⁄ . El eje menor tiene una orientación de 90º hacia la izquierda del eje vertical y su longitud es 4^��V �⁄ .

3. ^�� c 0 L ^�� Q ^�� El eje mayor está orientado en un ángulo definido por

$%�UV d�2^��e^�� � ^�� � f�^�� � ^���� � 4^���g (3.17)

hacia la izquierda del eje vertical y su longitud se define como

h8 d^�� � ^�� � f�^�� � ^���� � 4^���g (3.18)

El eje menor está orientado a 90º hacia la izquierda del eje mayor y su longitud es

h8 d^�� � ^�� � f�^�� � ^���� � 4^���g (3.19)

4. ^�� c 0 L ^�� P ^�� El eje mayor está orientado en un ángulo definido por

$%�UVijjk^�� � ^�� � f�^�� � ^���� � 4^���

�2^�� lmmn (3.20)

hacia la izquierda del eje vertical y su longitud se define como

h8 d^�� � ^�� � f�^�� � ^���� � 4^���g (3.21)

Page 62: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

38 Capítulo 3: Marco teórico

El eje menor está orientado a 90º hacia la izquierda del eje mayor y su longitud es

h8 d^�� � ^�� � f�^�� � ^���� � 4^���g (3.22)

3.8 Rotación de imágenes

El concepto de rotación consiste en desplazar el pixel (i, j) en la imagen original hasta que alcance la posición (i+id, j+jd) y sustituir el valor la intensidad en (i+id, j+jd) por el correspondiente a la posición (i, j) de la imagen original, obteniendo finalmente el valor del pixel en las coordenadas (x, y) para la imagen transformada. A veces será necesario realizar algún tipo de interpolación dado que los desplazamientos pueden no ser enteros. La rotación de un ángulo θ con respeto al origen de coordenadas de la imagen está dada por la siguiente transformación [47]: : � cos r� � sin rSL � sin r� � cos rS (3.23)

Figura 3-10: Rotación de una imagen. Los píxeles de la imagen transformada (líneas discontinuas) no siempre coinciden con los de la imagen destino.

3.9 Proyecciones laterales

La proyección de una imagen sobre los ejes horizontal y vertical también se conoce como histogramas laterales. El cálculo de las proyecciones consiste en sumar el valor de los pixeles por columnas y filas. Estas proyecciones son útiles para

Page 63: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 39

determinar en qué zona se encuentran los objetos [51]. En la figura 3-11 se muestran las proyecciones de una imagen que contiene un objeto.

Figura 3-11: Proyecciones laterales de una imagen.

El análisis de proyecciones laterales es un método utilizado en el estado del arte para modelar componentes faciales. Es fácil de implementar, robusto y no es computacionalmente costoso lo que proporciona ventajas sobre otros métodos basados en el color que son más costosos computacionalmente y su precisión es igual a las proyecciones laterales [55].

3.10 Sistema de Codificación de Acciones Faciales (FACS)

FACS es un sistema de codificación desarrollado por Ekman y Friesen [1] en los años 70’s. Con este sistema se identifican los movimientos musculares y marcas faciales o líneas de expresión que producen cambios momentáneos en la apariencia de la cara. Estos movimientos son llamadas Unidades de Acción (AU). En la figura 3-12 se muestra la relación entre la anatomía muscular y el movimiento muscular de la parte superior de la cara. En la imagen etiquetada como “anatomía muscular” se observa la localización de los músculos y en la imagen “acción muscular” se indica la posición y dirección de acción de cada músculo [56]. De esta manera se etiquetan los movimientos en AU’s.

Figura 3-12: Músculos relacionados con AU's de la parte superior de la cara.

Page 64: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

40 Capítulo 3: Marco teórico

El sistema FACS está compuesto por 46directamente relacionadas con la contracción de músculos específicoscorresponden a la aparición de líneas de expresiónparte superior de la nariz y recorresponden a la parte superior de la cara y 18 a la parte inferior. Las AU’s pueden ocurrir de manera aislada o en combinación.algunas AU’s y combinaciones de AU’s cara y en la tabla 3.2 AU’s de la parte inferior

Tabla 3.1: Ejemplos de AU's y combinaciones de la parte superior de la cara.

AU1

Elevación de parte interna de

las cejas.

AU5

Elevación de párpado superior.

AU1+4

Elevación de parte interna de la cejas + generación de

esfuerzo.

AU1+2+4

Las cejas son empujadas hacia

arriba con esfuerzo.

Tabla 3.2: Ejemplos de AU's y combinaciones de la parte

AU9

Elevación del centro de labio superior. Presencia de arrugas en la parte superior de la

nariz.

AU15

Movimiento de las esquinas de

la boca hacia abajo.

: Marco teórico

stema FACS está compuesto por 46 AU’s, de las cuales 30 están directamente relacionadas con la contracción de músculos específicos, otras corresponden a la aparición de líneas de expresión en regiones, por ejemplo en la parte superior de la nariz y región central de la frente. De estas AU’s, 12 corresponden a la parte superior de la cara y 18 a la parte inferior. Las AU’s pueden ocurrir de manera aislada o en combinación. En la tabla 3.1 se muestran

y combinaciones de AU’s relacionadas con la parte superior de la AU’s de la parte inferior [56].

: Ejemplos de AU's y combinaciones de la parte superior de la cara.

AU2 AU4

Elevación de parte externa de

las cejas. Disminución de altura y acercamiento de las cejas.

AU6 AU7

Elevación de mejillas. Elevación de párpado inferior.

AU4+5 AU1+2

Disminución de altura y acercamiento de las cejas + elevación de párpado superior.

Elevación de la parte interna y externa de las cejas.

AU1+2+5+6+7 Neutral

Elevación de cejas, párpados y

mejillas. Relajación de ojos cejas y

mejillas.

Ejemplos de AU's y combinaciones de la parte inferior de la cara.

AU10 AU20

Elevación de labio superior. No hay presencia de arrugas en la parte superior de la nariz.

Movimiento hacia abajo y en forma lateral de los labios y la parte baja de la línea trazada entre la parte externa de nariz y comisuras. Aumento de la elongación de la boca.

AU17 AU12

Elevación de región de la

barbilla. Separación de las esquinas de los labios en forma oblicua.

AU’s, de las cuales 30 están , otras

en regiones, por ejemplo en la . De estas AU’s, 12

corresponden a la parte superior de la cara y 18 a la parte inferior. Las AU’s se muestran

relacionadas con la parte superior de la

Elevación de párpado inferior.

Elevación de la parte interna y

Movimiento hacia abajo y en labios y la

parte baja de la línea trazada entre la parte externa de nariz y comisuras. Aumento de la

esquinas de

Page 65: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

AU25

Relajación de los labios pero separados.

AU23+24

Labios rígidos y estrechos presionados uno al otro.

3.11 Reconocimiento de objetos

El reconocimiento de objetos es la última etapa dentro de un sistema de visión por computadora. A partir de las características encontradas y de los posibles objetos que el conocimiento a priori del problema se espera que puedan aparecer, el sistema debe determinar qué objetos están presentes en la imagen.

La estructura general de un clasificador puedA partir de la imagen original o procesada se obtienen una serie de características que definen a los objetoforman el vector de características representante de cada objeto extraído de la imagen. Por otro lado, la base de datos contiene los modelos de los objetos que pueden aparecer. Por último se debe disobjetos contenidos en la imagen.

Figura 3-

Capítulo 3: Marco teórico

AU26 AU27

Relajación de los labios pero Relajación de los labios pero

separados. Movimiento de la mandíbula hacia abajo.

Estiramiento de la boca, abierta y la mandíbula se mueve hacia abajo.

Neutral

Labios rígidos y estrechos presionados uno al otro.

Relajación de los labios en estado cerrado.

Reconocimiento de objetos

El reconocimiento de objetos es la última etapa dentro de un sistema de visión por partir de las características encontradas y de los posibles objetos

que el conocimiento a priori del problema se espera que puedan aparecer, el sistema debe determinar qué objetos están presentes en la imagen.

La estructura general de un clasificador puede observarse en la A partir de la imagen original o procesada se obtienen una serie de características que definen a los objetos. En el caso general se tendrán n valores numéricos que forman el vector de características representante de cada objeto extraído de la

Por otro lado, la base de datos contiene los modelos de los objetos que pueden aparecer. Por último se debe diseñar un clasificador que reconozca objetos contenidos en la imagen.

-13: Esquema general del reconocimiento de objetos.

: Marco teórico 41

Estiramiento de la boca, abierta y la mandíbula se mueve hacia abajo.

El reconocimiento de objetos es la última etapa dentro de un sistema de visión por partir de las características encontradas y de los posibles objetos

que el conocimiento a priori del problema se espera que puedan aparecer, el

e observarse en la figura 3-13. A partir de la imagen original o procesada se obtienen una serie de características

valores numéricos que forman el vector de características representante de cada objeto extraído de la

Por otro lado, la base de datos contiene los modelos de los objetos que eñar un clasificador que reconozca los

Page 66: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

42 Capítulo 3: Marco teórico

El reconocimiento de objetos tiene tres enfoques principales:

1. Reconocimiento estadístico. Se basa en la determinación y uso de funciones de probabilidad.

2. Reconocimiento sintáctico. Se trata de analizar la estructura de los objetos (por ejemplo el esqueleto).

3. Reconocimiento mediante redes neuronales. Constituye la técnica más reciente y trata de imitar el modelo y funcionamiento de los sistemas biológicos: cómo las redes de neuronas almacenan y manipulan la información.

3.11.1 C5.0

C5.0 es un algoritmo de clasificación que trabaja bajo el enfoque estadístico, fue desarrollado por Quinlan y está basado C4.5. El árbol de decisión generado por C5.0 es representado por un conjunto de reglas de tipo IF-THEN para cada clase (ver figura 3-14). Algunas ventajas de C5.0 respecto a C4.5 son su velocidad de procesamiento y los árboles de decisión que genera son más cortos.

C5.0 es un algoritmo propietario de RuleQuest Research Ltd Pty [57] y se puede utilizar con la herramienta See5 [57] y también con Clementine [58].

Figura 3-14: Árbol de decisión generado con C5.0 en Clementine 11.1 [58].

Page 67: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 3: Marco teórico 43

3.11.2 Redes Neuronales Artificiales

El elemento básico de una red neuronal es la neurona. Una red neuronal es una estructura de un conjunto de neuronas conectadas de una manera sistemática. En una red neuronal tipo perceptrón multicapa o Back-Propagation las neuronas están organizadas en capas. Típicamente existe una capa de entrada, una o más capas intermedias u ocultas y una capa de neuronas de salida. Cada capa está totalmente conectada a la capa que le precede y a la siguiente capa. La conexión entre neuronas tiene asociado un peso el cual determina que tanto influye una neurona hacia la que está conectada. El flujo de la información se realiza a partir de la capa de entrada hacia la capa de salida para realizar las predicciones. El ajuste de los pesos de las interconexiones durante el entrenamiento hace que la red neuronal aprenda para obtener mejores predicciones. Aunque el tiempo de entrenamiento puede ser muy elevado, el tiempo de respuesta es muy rápido.

En la figura 3-15 se muestra la estructura básica de una red neuronal Back-Propagation: una capa de entrada, una capa de salida y una capa intermedia. Donde cada neurona de la capa de entrada está conectada a cada neurona de la capa intermedia y cada neurona de la capa intermedia está conectada a la capa de salida.

Figura 3-15: Estructura de una red Back-Propagation [59].

Page 68: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

44 Capítulo 3: Marco teórico

Comentarios

En este capítulo se describieron los conceptos relacionados con las etapas de un sistema general para el reconocimiento de expresiones faciales. Estos conceptos incluyen desde la etapa de adquisición de imágenes, hasta el modelo facial que caracteriza las imágenes y los métodos de clasificación.

Los algoritmos seleccionados para extraer las características están basados en el análisis del color. Con estos algoritmos se localizan las distintas regiones de la imagen que se requiere identificar en cada etapa del sistema, por ejemplo la detección de pixeles de piel para extraer la cara.

El sistema FACS ha sido ampliamente utilizado en el estado del arte para caracterizar el estado de las imágenes, dado que existe una teoría ampliamente desarrollada en este sentido.

Se seleccionaron dos clasificadores que han sido utilizados en trabajos relacionados a esta tesis dentro y fuera de CENIDET, los cuales están basados en distintos enfoques: el primero de ellos (C5.0) se basa en árboles de decisión para crear reglas tipo IF-THEN que evalúan los parámetros o variables del vector característico para clasificar el vector en alguna clase; el otro clasificador es una Red Neuronal Artificial (Perceptrón Multicapa) que recibe como entrada los parámetros del vector característico y regresa la clase a la que pertenece el vector.

C5.0 es un algoritmo propietario, por lo que no es posible implementarlo con alguna herramienta de desarrollo. Sin embargo Clementine [58] es una aplicación que incluye ambos clasificadores, por esta razón se seleccionó para realizar las pruebas de clasificación en esta tesis.

Page 69: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

45

4444 Metodología de soluciónMetodología de soluciónMetodología de soluciónMetodología de solución

Capítulo 4

Metodología de solución

Este capítulo se detalla la metodología de solución propuesta para cumplir los objetivos de esta tesis (ver sección 1.2, p.3). Con base en el estudio del estado del arte se diseñó una metodología para reconocer expresiones faciales de forma automática, la cual se muestra gráficamente en la figura 4-1. Como parte de los pre-requisitos al procesamiento de las imágenes, primero se describe el formato en que los bitmaps son transformados para su procesamiento y un modelo facial que identifica las marcas faciales seleccionadas para caracterizar las expresiones.

En los siguientes puntos de esta sección se describe cada etapa de la metodología propuesta. La primera de ellas corresponde al seguimiento y normalización de la cara. Seguidamente se procesan regiones de búsqueda para extraer los componentes faciales de interés, comenzando con ojos, después las cejas y finalmente la boca. Al final de la segunda etapa se obtiene la posición x,y de cada uno de los puntos característicos. Con esta información se calcula un vector característico cuyos parámetros en conjunto representan el estado de la cara. En el desarrollo de esta tesis se calcularon dos vectores, el primero de ellos basado en el sistema FACS y el otro basado en distancias geométricas que representan la forma de los componentes faciales. Durante el proceso antes mencionado, si alguno de las etapas no funciona adecuadamente, el resto se aborta.

La última etapa de la metodología corresponde al reconocimiento de expresiones. Los vectores característicos calculados se utilizaron para entrenar dos clasificadores basados en diferentes enfoques: C5.0 está basado en árboles de decisión y perceptrón multicapa es un paradigma de redes neuronales artificiales. En el capítulo 5 se detallan los modelos obtenidos en el entrenamiento de estos clasificadores.

Page 70: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

46 Capítulo 4: Metodología de solución

Figura 4-1: Diagrama de flujo de metodología de solución propuesta.

Page 71: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 47

4.1 Estructura de datos para bitmaps

Las secuencias de video utilizadas están en formato AVI sin compresión. Mediante funciones de la API de Windows se extraen los fotogramas como mapas de bit independiente de dispositivo (DIB). En un DIB la imagen está representada por un vector de tipo BYTE, donde cada pixel utiliza tres valores que corresponden a los canales BGR (azul, verde y rojo respectivamente). La dimensión de este vector es igual a tres veces el ancho de la imagen por el alto de la misma.

Con el objetivo de manejar estructuras de datos flexibles, se realizó la transformación del vector de tipo BYTE a INT, donde cada pixel está representado por un número entre 0 y 224. Este rango incluye los todos colores que están dentro del espacio RGB. La dimensión de este vector es igual al ancho de la imagen por su alto. De esta forma se tiene una mejor legibilidad de la información sin importar si la imagen es a color ó binaria. En la figura 4-2 se representa una imagen con vectores de tipo BYTE e INT.

Figura 4-2: Representación de una imagen con vectores. (a) Bitmap (b) DIB, vector de tipo BYTE (c) Vector de tipo INT.

4.2 Puntos característicos faciales

En la figura 4-3 se muestra un conjunto de 20 puntos característicos faciales sobre los ojos, cejas y boca basados en el trabajo de Zhang [5]. El objetivo de estas marcas faciales es obtener la deformación de los principales componentes faciales mediante distancias geométricas para reconocer las expresiones básicas.

Page 72: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

48 Capítulo 4: Metodología de solución

Figura 4-3: Puntos característicos faciales.

La distancia inter-pupilar denotada como dee en la figura 4-3 es el parámetro principal seleccionado para localizar el resto de las marcas y normalizar los datos como se explica en la sección 4.4.5.1 (p.67). En la tabla 2.3 (sección 2.1, p. 10) se describe la relación geométrica entre dee y la posición los componentes faciales.

4.3 Localización y seguimiento de la cara

Se considera como cara a la región de piel más grande en la imagen, este hecho está basado en [9]. Al inicio de la secuencia de video se procesa la totalidad de la imagen para localizar la cara. En los siguientes fotogramas la búsqueda se realiza en una región 1.20 veces a la ubicación anterior inmediata, de esta manera se realiza el seguimiento de la cara. Después de extraer la cara se normaliza su orientación para colocarla en posición vertical con el objetivo de facilitar la búsqueda de los componentes faciales.

4.3.1 Extracción de la cara

El objetivo de esta etapa es localizar la región de piel más grande. En la figura 4-4 se muestra el diagrama de flujo para extraer los pixeles de la cara de una imagen. Se tiene como entrada al diagrama la imagen original en color y regresa una imagen con la cara y el fondo en blanco. A continuación se explican las etapas del diagrama.

Page 73: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 49

Figura 4-4: Diagrama de flujo para extraer la cara.

4.3.1.1 Detección de piel

Mediante un conjunto de reglas se evalúan los pixeles para determinar si su tono corresponde a la piel en algún espacio de color. Si pasan el umbral, es decir cumplen con las reglas, se ponen en 1 binario (encendido), en caso contrario se ponen en 0 binario (apagado) dado que no pertenecen al tipo de pixeles que se busca. A este proceso se le llama umbralizado.

Se implementaron tres funciones para evaluar los pixeles en los espacios RGB, YCbCr y HSV. En la tabla 4.1 se muestran las reglas implementadas. En Peer [11] y Pham-N [60] solo se utiliza el espacio RGB y en Rahman [61] se combinan los espacios RGB, YCbCr y HSV.

Tabla 4.1: Reglas para detectar piel en RGB, YCbCr, HSV.

Autor Espacio de color Condiciones

Peer [11] RGB (R > 95) AND (G > 40) AND (B > 20) AND (max{R, G, B} − min{R, G, B}) > 15 AND (|R − G| > 15) AND (R > G) AND (R > B) OR (R > 220) AND (G > 210) AND (B > 170) AND (|R − G| <= 15) AND (R > B) AND (G > B)

Pham-N [60] RGB (R>=70) AND (R<=85) AND ((R-G)>=30) AND ((R-G)<=55) AND ((G-B) >= -5) AND ((G-B)<=35) AND (B>=20) AND (B<=255) AND (G>=30) AND (G<=255) OR (R>=86) AND (R<=100) AND ((R-G)>=30) AND ((R-G)<=60) AND ((G-B) >= -5) AND ((G-B)<=40) AND (B>=30) AND (B<=255) AND (G>=40) AND (G<=255) OR (R>=101) AND (R<=150) AND ((R-G)>=0) AND ((R-G)<=30) AND

Page 74: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

50 Capítulo 4: Metodología de solución

((G-B) >= -10) AND ((G-B)<=45) AND ((R-B)>=15) AND ((R-B)<=75) AND ((R+B-(2*G))>=-15) AND ((R+B-(2*G))<=285) OR (R>=101) AND (R<=150) AND ((R-G)>=31) AND ((R-G)<=75) AND ((G-B) >= -5) AND ((G-B)<=90) AND ((R-B)>=-255) AND ((R-B)<=120) AND ((R+B-(2*G))>=-20) AND ((R+B-(2*G))<=285) AND (G>=50) AND (G<=255) OR (R>=151) AND (R<=200) AND ((R-G)>=15) AND ((R-G)<=20) AND ((G-B) >= -5) AND ((G-B)<=40) AND ((R-B)>=20) AND ((R-B)<=255) AND ((R+B-(2*G))>=-20) AND ((R+B-(2*G))<=285) OR (R>=151) AND (R<=200) AND ((R-G)>=31) AND ((R-G)<=85) AND ((G-B) >= -15) AND ((G-B)<=70) AND ((R-B)>=20) AND ((R-B)<=255) AND ((R+B-(2*G))>=0) AND ((R+B-(2*G))<=285) AND (B>=40) AND (B<=255) OR (R>=201) AND (R<=255) AND ((R-G)>=5) AND ((R-G)<=25) AND ((G-B) >= 40) AND ((G-B)<=70) AND ((R+B-(2*G))>=-30) AND ((R+B-(2*G))<=285) OR (R>=201) AND (R<=255) AND ((R-G)>=26) AND ((R-G)<=100) AND ((G-B) >= 0) AND ((G-B)<=70) AND ((R+B-(2*G))>=-15) AND ((R+B-(2*G))<=285)

Rahman [61] RGB, Peer [11]

YCbCr, (Cr <= ((1.5862*Cb) + 20)) AND (Cr <= ((0.3448*Cb) + 76.2069)) AND (Cr <= ((-4.5652*Cb) + 234.5652)) AND (Cr <= ((-1.15*Cb) + 301.75)) AND (Cr <= ((-2.2857*Cb) + 432.85))

HSI H < 25 OR H > 230

Después de umbralizar la imagen se obtiene una imagen binaria donde los pixeles blancos (1 binario) corresponden a los pixeles que pasaron el umbral y los pixeles negros (0 binario) corresponden al fondo (ver figura 4-5).

(a) (b)

Figura 4-5: Detección de piel. (a) Imagen original (b) Imagen binaria: detección de piel con reglas de Peer [11].

Page 75: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

4.3.1.2 Localización de región más grande

La región de la cara no solo debe ser la redebe cumplir con un área mínima y su elongación debe correproporciones de una cara típica. Mediante la conexidad se determinan las regiones de pixeles y al mismo tiempo se obtienen sus características antes mencionadas. Finalmente se selecciona la región que más se ajuste a los parámetros establecid

Durante el desarrollo de esta etapa, se estableció que la cara debe tener un área mínima de 4,000 pixeles y su elongación debe ser entre 0.4 y 1.5. El área establecida obedece a la cercanía que debe tener la cara respecto al dispositivo de captura y el rango de elongación incluye las imágenes donde el cuello se muestra desnudo y por lo tanto cara y cuello se observan como una regiónárea mínima que contiene la región seleccionada se conoce como (figura 4-6b) y se utiliza para visualizar la posicdos secciones (eliminación de ruido y llenado de huecos) se obtiene una plantilla para extraer la cara de la imagen original.

(a)

Figura 4-6: Localización de cara. (a) Imagen binaria (b) cuello (c) Caso 2: Detección de c

4.3.1.3 Eliminación de ruido

En esta etapa se eliminan regiones de piel que están contenidas en el y están fuera de la región más grandese eliminan estas regiones, sin embargo los huecos que están dentro de la cara se hacen más grandes (figura

4.3.1.4 Llenado de huecos

Después de eliminar el ruido que está fuera de la cara, el siguiente los huecos para crear una plantilla

Capítulo 4: Metodología de solución

Localización de región más grande

La región de la cara no solo debe ser la región de piel más grande, sino debe cumplir con un área mínima y su elongación debe corresponder a las proporciones de una cara típica. Mediante la conexidad se determinan las regiones de pixeles y al mismo tiempo se obtienen sus características antes mencionadas. Finalmente se selecciona la región que más se ajuste a los parámetros establecid

Durante el desarrollo de esta etapa, se estableció que la cara debe tener un área mínima de 4,000 pixeles y su elongación debe ser entre 0.4 y 1.5. El área establecida obedece a la cercanía que debe tener la cara respecto al dispositivo de

l rango de elongación incluye las imágenes donde el cuello se muestra desnudo y por lo tanto cara y cuello se observan como una región (figura área mínima que contiene la región seleccionada se conoce como

y se utiliza para visualizar la posición de la cara. Con las siguientes (eliminación de ruido y llenado de huecos) se obtiene una plantilla

para extraer la cara de la imagen original.

(b) (c

: Localización de cara. (a) Imagen binaria (b) Caso 1: Detección de cara y no Caso 2: Detección de cara y cuello como una región.

Eliminación de ruido

En esta etapa se eliminan regiones de piel que están contenidas en el uera de la región más grande (figura 4-7a). Con la dilatación

se eliminan estas regiones, sin embargo los huecos que están dentro de la cara se figura 4-7b).

huecos

Después de eliminar el ruido que está fuera de la cara, el siguiente los huecos para crear una plantilla que se utilizará para extraer la cara

Metodología de solución 51

gión de piel más grande, sino también sponder a las

proporciones de una cara típica. Mediante la conexidad se determinan las regiones de pixeles y al mismo tiempo se obtienen sus características antes mencionadas. Finalmente se selecciona la región que más se ajuste a los parámetros establecidos.

Durante el desarrollo de esta etapa, se estableció que la cara debe tener un área mínima de 4,000 pixeles y su elongación debe ser entre 0.4 y 1.5. El área establecida obedece a la cercanía que debe tener la cara respecto al dispositivo de

l rango de elongación incluye las imágenes donde el cuello se muestra figura 4-6c). El

área mínima que contiene la región seleccionada se conoce como bounding box Con las siguientes

(eliminación de ruido y llenado de huecos) se obtiene una plantilla

(c)

Caso 1: Detección de cara y no

En esta etapa se eliminan regiones de piel que están contenidas en el bounding box dilatación morfológica

se eliminan estas regiones, sin embargo los huecos que están dentro de la cara se

Después de eliminar el ruido que está fuera de la cara, el siguiente paso es llenar utilizará para extraer la cara de la

Page 76: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

52 Capítulo 4: Metodología de solución

imagen original. Dado que la región que corresponde a la cara no tiene una forma definida, se desconocen sus límites en cada renglón y columna, por esta razón no es posible aplicar un algoritmo de llenado de huecos como el expuesto en [62]. Para llenar los huecos se procesa la región del bounding box, se localizan las regiones que no corresponden a la piel mediante la conexidad de los pixeles y se ponen en 1 binario. Finalmente dentro del bounding box existe un solo objeto (figura 4-7c).

(a) (b) (c)

Figura 4-7: Eliminación de ruido y llenado de huecos. (a) Imagen con ruido y huecos (b) Solo huecos, ruido eliminado con dilatación morfológica (c) Plantilla de la cara.

4.3.1.5 Extracción de la cara

En este proceso los pixeles en blanco que se muestran en la plantilla son sustituidos por los pixeles de la imagen original que están en la misma posición. Los pixeles en negro que están en la plantilla se ponen en blanco para formar el fondo. El resultado de este proceso es una imagen con la cara y el fondo en blanco (figura 4-8c)

(a) (b) (c)

Figura 4-8: Extracción de cara. (a) Imagen original (b) Plantilla (c) Extracción de la cara.

4.3.2 Normalización de orientación

Con el objetivo de facilitar la extracción de los componentes faciales, la orientación de la cara se normaliza a 90º respecto a la horizontal en sentido contrario a las

Page 77: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 53

manecillas del reloj. Con los momentos de inercia se obtiene la orientación de un objeto, en este caso es el objeto contenido en la plantilla. Los momentos de primer orden indican el centro de masa y los momentos de segundo orden la orientación del eje mayor. Finalmente se obtiene la cantidad de grados que debe girarse la imagen resultante (figura 4-8c) para ponerla en posición vertical.

Figura 4-9: Orientación de la cara mediante momentos de inercia.

4.3.3 Seguimiento

Dado que la orientación de la cara se normaliza en cada imagen, no es posible implementar algoritmos de seguimiento para la cara y sus componentes. Como se mencionó en la introducción a la sección 4.3 (p. 48), la búsqueda de la cara en un fotograma t se realiza sobre una región basada en la posición de la misma en el fotograma t-1. En caso de no localizarse la cara en el fotograma t, su búsqueda en t+1 se realizará sobre toda la imagen.

Es posible que durante la secuencia de video aparezcan objetos con características similares a una cara, sin embargo no son considerados como candidatos dado que la relocalización de la cara se basa en su posición en el fotograma anterior, como se muestra en la figura 4-10.

Figura 4-10: Relocalización de la cara. Recuadro amarillo representa la región de búsqueda para relocalizar la cara.

Page 78: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

54 Capítulo 4: Metodología de solución

4.4 Extracción de características

En esta etapa de la metodología se recibe la imagen de salida de la etapa anterior (la cara con fondo en blanco) y se tiene como salida la misma imagen con el conjunto de marcas faciales determinado en la sección 4.2 (p. 47) además de un archivo de texto con el vector de características, el cual representa el estado de la imagen.

Para extraer los puntos o marcas faciales se sigue un proceso secuencial que se explica a continuación. Dado que la distancia inter-pupilar (dee) es el parámetro que se utiliza para localizar el resto de los componentes, el primer paso es encontrar estos dos puntos. Primero se estima su posición con proyecciones laterales y después se procesa la región de búsqueda del ojo basándose en la estimación para encontrar el contorno del ojo y actualizar el parámetro dee. Después, y con base en un conjunto de relaciones geométricas se generan ventanas de búsqueda para extraer las marcas faciales de cejas y boca. Las regiones de búsqueda se procesan con alguna secuencia de algoritmos de PDI como se explica en las siguientes secciones. En la figura 4-11 se muestra el diagrama de flujo para extraer las características de la cara.

Figura 4-11: Diagrama de flujo para extraer características de la cara.

4.4.1 Estimación de posición de ojos

La distancia inter-pupilar denotada como dee se estima con el análisis de la intensidad del color de los pixeles a lo largo y ancho de la imagen (proyecciones laterales). Se utilizaron dos proyecciones para estimar la posición x,y de los ojos, una proyección horizontal a lo largo de la imagen y una proyección vertical a lo ancho de la mitad superior de la imagen. La salida son dos señales unidimensionales que corresponden al comportamiento de la intensidad del color en ambas direcciones. Finalmente con el análisis de los máximos y mínimos de ambas

Page 79: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 55

señales se obtiene la posición de los ojos. En la figura 4-12 se muestra el diagrama de flujo implementado, el cual se explica a continuación.

a. Aplicar filtro pasa bajo a la imagen. b. Calcular proyección horizontal (PH) a lo largo de la mitad superior

de la imagen. c. Analizar máximos y mínimos para obtener posición y. d. Calcular proyección vertical (PV) a lo ancho de la mitad superior de

la imagen. e. Calcular varianza de proyección vertical. f. Analizar máximos y mínimos de la varianza para obtener posición x

de cada ojo.

Figura 4-12: Estimación de posición de los ojos con proyecciones laterales.

a. Filtro pasa bajo

Se aplica el filtro pasa bajo sobre la imagen con una máscara de 3×3 para suavizar la intensidad de los pixeles con el fin de obtener un comportamiento suave en las proyecciones calculadas y minimizar el análisis de las señales. A partir de la imagen resultante se calculan las dos proyecciones laterales.

b. Proyección horizontal (PH)

Con esta proyección se obtiene la posición y de los ojos. Por cada línea de la imagen se calcula la siguiente suma:

5�L� � 1u R v�:Z, L�wZXV (4.1)

donde y es el número de línea, w es el ancho de la imagen, I(xi, y) es la intensidad del color del pixel (xi, y).

Filtro paso bajo

ProyecciónVertical (PV)

ProyecciónHorizontal (PH)

Análisis demáximos y mínimos

Varianza dePV

Análisis demáximos y mínimos

Page 80: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

56 Capítulo 4: Metodología

En la figura 4-13b se muestra la imagen. Los valores más bajos de la señal se presentan en la región de los ojos, dado que en esta región la intensidad de los pixeles es

c. Máximos y mínimos de la proyección horizontal

A los largo de la señal PH comúnmente se encuentran dos mínimos cuyos valores son similares entre ellos y al mismo tiempo muy diferentes al resto de los mínimos. Estos valores corresponden a la posobtener la posición y de los ojos se selecciona el valor mínimo que se encuentre en la posición y más hacia abajo. está el valor mínimo de la proyección horizontal PH

d. Proyección vertical

Esta proyección se calcula de forma análoga que PH. Por cada columna de la imagen se calcula la siguiente suma:

donde x es el número de h es el alto de la imagen,I(x, yi) es la intensidad del color del pixel (

En la figura 4-13c se muestra la proyección vertical a lo ancho de la mitad superior de una imagen. Al igual que con PH, los valores más bajos de la señal se presentan en la región de los ojos, dadpixeles es menor.

(a)

Figura 4-13: Proyecciones laterales de una imagen.horizontal a lo largo de la imagen. (c) Proyección vertical a lo ancho de la mitad superior de la imagen (d). Varianza de (c).

Metodología de solución

b se muestra la proyección horizontal a lo largo de una bajos de la señal se presentan en la región de los ojos,

dado que en esta región la intensidad de los pixeles es menor.

la proyección horizontal

A los largo de la señal PH comúnmente se encuentran dos mínimos cuyos valores son similares entre ellos y al mismo tiempo muy diferentes al resto de los mínimos. Estos valores corresponden a la posición y de las cejas y de los ojos. Para

de los ojos se selecciona el valor mínimo que se encuentre en más hacia abajo. En la figura 4-13b se identifica la posición donde

la proyección horizontal PH.

Esta proyección se calcula de forma análoga que PH. Por cada columna de la imagen se calcula la siguiente suma:

I�:� � 1x R v�:, LZ�yZXV

es el número de columna, de la imagen,

) es la intensidad del color del pixel (x, yi).

c se muestra la proyección vertical a lo ancho de la mitad superior de una imagen. Al igual que con PH, los valores más bajos de la señal se presentan en la región de los ojos, dado que en esta región la intensidad de los

(c)

(d)

(b)

: Proyecciones laterales de una imagen. (a) Filtro pasa bajo. (b) Proyección imagen. (c) Proyección vertical a lo ancho de la mitad superior

de la imagen (d). Varianza de (c).

horizontal a lo largo de una bajos de la señal se presentan en la región de los ojos,

A los largo de la señal PH comúnmente se encuentran dos mínimos cuyos valores son similares entre ellos y al mismo tiempo muy diferentes al resto de los

de las cejas y de los ojos. Para de los ojos se selecciona el valor mínimo que se encuentre en

b se identifica la posición donde

Esta proyección se calcula de forma análoga que PH. Por cada columna de

(4.2)

c se muestra la proyección vertical a lo ancho de la mitad superior de una imagen. Al igual que con PH, los valores más bajos de la señal se

o que en esta región la intensidad de los

. (b) Proyección imagen. (c) Proyección vertical a lo ancho de la mitad superior

Page 81: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 57

Una limitación de las proyecciones laterales se muestra en la figura 4-14 con el análisis de una imagen que consta de tres áreas (negro, blanco y nivel medio de gris). La función de la proyección lateral (H), no detecta la diferencia entre las áreas. Ésta diferencia se puede detectar con la proyección de la varianza de H [63].

Figura 4-14: Proyección lateral vs su varianza. H es la proyección lateral. σ2H Es la varianza de H.

e. Varianza de proyección vertical

La función de la varianza de la proyección vertical se define como:

z{��:� � 1x RKv�:, LZ� � I�:�N�yZXV (4.3)

donde V(x) es el valor de la media en la columna x calculada con la ecuación (4.2).

Con la proyección de la varianza se obtiene un mejor modelado de los ojos respecto a la señal de las proyecciones verticales, mayormente cuando presentan un estado semi-abierto o cerrado. Con esta proyección se estima la posición x de los ojos cuando presentan cualquiera de los estados mencionados anteriormente. En la figura 4-13d se muestra la señal de la varianza de PV.

f. Máximos y mínimos de la varianza

Antes de analizar la señal de la varianza debe considerarse lo siguiente [64]:

• La intensidad de color de los ojos tienen un valor similar. • Existe un máximo significante entre los ojos. • La distancia entre los ojos mantiene una proporción respecto al ancho

de la cara.

Para obtener la posición x de los ojos se obtiene por cada mitad de la señal el par de valores con una mayor distancia y mayor similaridad en su varianza, los cuales corresponden a las esquinas del ojo. El punto medio entre cada par de puntos es considerado como la posición x de cada ojo. En la figura 4-15 se observan los resultados de la implementación de la varianza para localizar los ojos en estado

Page 82: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

58 Capítulo 4: Metodología de solución

abierto y cerrado. En la señal de la varianza se identifica la posición en la que se encuentra cada ojo.

(a) (b)

Figura 4-15: Localización de ojos con proyecciones laterales. (a) Estimación con ojos abiertos. (b) Estimación con ojos cerrados.

Finalmente se tiene una aproximación de la posición de los ojos y con estos datos de inicializa el parámetro dee. El siguiente paso es definir una región para extraer los puntos característicos de los ojos y aproximar más la posición x,y a la ubicación real. En las siguientes secciones se explica el procesamiento de las regiones de búsqueda de los componentes faciales.

4.4.2 Extracción de características de los ojos

Como se mencionó en el apartado anterior, con el parámetro dee se calculan dos regiones de búsqueda para extraer los puntos característicos de los ojos. La dimensión de la región es: |,}v�� ~ 0.8 = ��� 5,}v�� ~ 0.4 = ���

(4.4)

(4.5)

donde dee es la distancia inter-pupilar (ver figura 4-16).

Figura 4-16: Región de búsqueda de los ojos [65].

En la figura 4-17 se muestra el diagrama de flujo para procesar la región de búsqueda de los ojos. Se tiene como entrada la región de los ojos y como salida los puntos característicos que corresponden a las esquinas y puntos medios de los párpados. A continuación se explican las etapas de este diagrama de flujo.

a. Ajustar contraste de la imagen. b. Detectar bordes y umbralizar.

Page 83: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 59

c. Eliminar ruido. d. Aplicar combinación de operadores morfológicos. e. Analizar componentes conexas.

Figura 4-17: Diagrama de flujo para extraer puntos característicos de los ojos.

a. Ajuste de contraste

El objetivo de este proceso es resaltar la línea de los párpados con el ajuste del contraste. El procedimiento es el siguiente: se satura el valor de la intensidad de los pixeles hacia cero, aquellos que se encuentren debajo del 50% de la intensidad promedio en la imagen y, el resto de los pixeles se saturan hacia uno. En la figura 4-20b se muestra el resultado del ajuste de contraste de la región de búsqueda del ojo.

b. Detección de bordes y umbralizado

Este proceso consiste en aplicar una máscara de convolución para resaltar los bordes (p.ej. filtro pasa alto). La convolución se realiza sobre la imagen a color aprovechando que el color de los pixeles está representado por un solo valor. En la figura 4-18 se muestran la máscara de convolución utilizada en la implementación. El valor resultante de la convolución se evalúa con una función para binarizar la imagen, la cual se define como:

>�:, L� �678790, ��:, L�3H��. � 0

1, ��:, L�3H��. P 0 B (4.6)

donde >�:, L� es la imagen resultante, ��:, L� es la función de convolución en el pixel x,y, 3H��. es un coeficiente definido de forma arbitraria.

Page 84: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

60 Capítulo 4: Metodología de solución

Finalmente se obtienen las regiones que están dentro de un mismo borde, como se observa en la figura 4-20c.

Figura 4-18: Filtro pasa alto.

c. Eliminación de ruido

Es posible que después de umbralizar la imagen aparezcan pixeles etiquetados como ruido. Para este caso se considera ruido los pixeles encendidos en cuya vencidad-8 no existan pixeles encendidos. Si se aplica la erosión morfológica se afectan todos los pixeles y es probable que se dividan regiones. Por esta razón se recorre la imagen y por cada pixel encendido se verifican sus ocho vecinos y se determina su permanencia (figura 4-20d).

d. Operadores morfológicos

Durante las pruebas se presentaron casos donde después de umbralizar la imagen, las líneas de los párpados se hacen discontinuas. Con el objetivo de unir regiones separadas por una pequeña distancia, se utilizó la dilatación morfológica con distintos elementos estructurales de dimensión 3×3 en forma secuencial. Con los elementos estructurales utilizados se pretende reconstruir la forma del párpado superior.

Dado que la forma de los ojos es similar pero en dirección horizontal opuesta, los elementos estructurales utilizados se aplican en sentido opuesto para reconstruir cada uno de los párpados. Cuando se procesa la región del ojo derecho el primer elemento estructural desplaza un pixel hacia la izquierda de la imagen, después se utiliza un elemento en forma de cruz y finalmente un elemento que desplaza un pixel hacia abajo. El procesamiento de la región del ojo izquierdo es similar, solo cambia el sentido del primer elemento estructural como se muestra en la figura 4-19. En la figura 4-20e se muestra la dilatación del la figura 4-20d que corresponde a la región del ojo derecho.

(a) (b)

Figura 4-19: Elementos estructurales utilizados en la extracción de los ojos. (a) Elementos utilizados en región de ojo derecho. (b) Elementos utilizados en región de ojo izquierdo.

Page 85: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

e. Análisis de componentes conexas.

Este proceso consiste en(anchura) y los puntos más alto y bajo en la mitad de la línea que pasa por las esquinas (apertura).

Para localizar la región más grande de los pixeles se obtienen las regiones y sus características (área y límites). Desde localizar la región máalto y más bajo que están sobre la perpendicular imaginaria que pasa por la mitad de la línea trazada con

El centro del polígono formado por los cuatro puntos característicosel centro del ojo. Con este punto se actualiza el parámetro posición de los ojos obtenida posición real en la imagen. entre la primera estimación y el centro del polígono obtenido en este proceso.

(a)

(e)

Figura 4-20: Extracción de puntos característicos de los ojos.ojo. (b) Ajuste de contraste. (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes conexas. (f) Detección de después de procesar la región

4.4.3 Extracción de características de la

Con la actualización del parámetro ventana de búsqueda de las cejas como

donde dee es la distancia inter

Capítulo 4: Metodología de solución

e. Análisis de componentes conexas.

Este proceso consiste en localizar el objeto más grande, sus esquinas los puntos más alto y bajo en la mitad de la línea que pasa por las

Para localizar la región más grande se recorre la imagen y con la conexidad de los pixeles se obtienen las regiones y sus características (área y límites). Desde localizar la región más grande se obtienen sus esquinas externas, el punto más alto y más bajo que están sobre la perpendicular imaginaria que pasa por la mitad la línea trazada con las esquinas (figura 4-20f).

del polígono formado por los cuatro puntos característicosel centro del ojo. Con este punto se actualiza el parámetro dee para aproximar la

ojos obtenida con el proceso explicado en la sección 4.4.1posición real en la imagen. En la figura 4-20g se observa la diferencia que existe entre la primera estimación y el centro del polígono obtenido en este proceso.

(b) (c) (d)

(e) (f) (g)

: Extracción de puntos característicos de los ojos. (a) Región de búsqueda ojo. (b) Ajuste de contraste. (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes conexas. (f) Detección de puntos característicos. (g) Centro del ojo antes y después de procesar la región dee.

racción de características de las cejas

Con la actualización del parámetro dee en la sección anterior, se define la ventana de búsqueda de las cejas como [19]:

|,}v�4 ~ 1.25 = � ���1.20� 5,}v�4 ~ 0.40 = � ���1.20�

la distancia inter-pupilar.

Metodología de solución 61

localizar el objeto más grande, sus esquinas los puntos más alto y bajo en la mitad de la línea que pasa por las

recorre la imagen y con la conexidad de los pixeles se obtienen las regiones y sus características (área y límites). Después

, el punto más alto y más bajo que están sobre la perpendicular imaginaria que pasa por la mitad

del polígono formado por los cuatro puntos característicos indica para aproximar la 4.4.1 (p.54) a la

se observa la diferencia que existe entre la primera estimación y el centro del polígono obtenido en este proceso.

de búsqueda del ojo. (b) Ajuste de contraste. (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de

Centro del ojo antes y

en la sección anterior, se define la

(4.7)

(4.8)

Page 86: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

62 Capítulo 4: Metodología de solución

La distancia entre el centro de esta ventana y la altura de los ojos es igual a ≈0.33∗dee como se define en la tabla 2.3 (sección 2.1, p. 10). En esta región solo se encuentra este componente facial que tiene un color contrastante con la piel que lo rodea. El procesamiento de esta región tiene como finalidad segmentar la región más obscura la cual corresponde a la ceja. En la Figura 4-21 se muestra el diagrama de flujo para extraer la ceja y sus puntos característicos, el cual se explica a continuación.

a. Transformar a escala de grises. b. Detectar bordes y umbralizar. c. Eliminar ruido. d. Aplicar combinación de operadores morfológicos. e. Analizar componentes conexas.

Figura 4-21: Diagrama de flujo para extraer puntos característicos de los cejas.

a. Transformación a escala de grises

Durante la implementación de esta etapa se obtuvieron mejores resultados cuando la región se transforma a escala de gris antes de aplicar el resto de los algoritmos. La transformación se realiza aplicando la ecuación (4.9). En la figura 4-23b se muestra el resultado de esta transformación. JH�H >&�# � 0.3∗, � 0.59∗0 � 0.11∗ (4.9)

donde R, G y B son los valores de rojo, verde y azul del píxel respectivamente [66].

b. Detección de bordes y umbralizado

El objetivo de este proceso es obtener los bordes de la ceja. Se aplica una máscara de convolución de 3×3 para resaltar los bordes (p. ej. filtro pasa alto). La imagen resultante se umbraliza aplicando una función de umbralizado como se explica en la sección 4.4.2b (p.58). El resultado de esta etapa es una imagen binaria que contiene las regiones contenidas en la imagen (ver figura 4-23c).

Page 87: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 63

c. Eliminación de ruido

Después de obtener una imagen binaria se elimina el ruido que hay en la imagen de la misma manera como se explicó en la sección 4.4.2c (p.58). Se recorre la imagen y por cada pixel encendido se verifican sus ocho vecinos, si no hay pixeles encendidos se elimina el pixel central. El resultado de esta etapa se muestra en la figura 4-23d.

d. Operadores morfológicos

Con la dilatación morfológica se pretende reconstruir la forma de la ceja, la cual puede segmentarse en el proceso de convolución y umbralizado. Se seleccionó un elemento estructural de dimensión 3×3 para dilatar la imagen. Dado que las cejas tienen la misma forma pero en distinto sentido horizontal, el elemento estructural utilizado en una región de búsqueda de la ceja izquierda se utiliza en sentido horizontal inverso como se utilizó en la región de búsqueda de la otra ceja. En la figura 4-22 se muestran los elementos estructurales utilizados. El resultado de esta etapa se observa en la figura 4-23e.

(a) (c)

Figura 4-22: Elementos estructurales utilizados en la extracción de cejas. (a) Elementos utilizados en región de ceja derecha. (b) Elementos utilizados en región de ceja izquierda.

e. Análisis de componentes conexas.

Este proceso consiste en localizar el objeto más grande, sus esquinas (anchura) y su punto medio siguiendo su forma (altura).

Para localizar la región más grande se sigue el mismo proceso explicado en la sección 4.4.2b (p.58). Las esquinas se obtienen recorriendo los límites izquierdo y derecho de la región para obtener el punto medio de los pixeles colocados en esas

columnas. La altura de la ceja se define como el punto medio de la región más grande. En la figura 4-23f se muestran los puntos característicos obtenidos en esta etapa.

Page 88: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

64 Capítulo 4: Metodología

(a)

(e)

Figura 4-23: Extracción de puntos característicos de las cejas.Escala de grises. (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes conexas. (f) Detección de puntos característicos. (g) Puntos característicos en imagen original.

4.4.4 Extracción de características de la boca

La región de búsqueda de la boca de define como

5,}vdonde dee es la distancia interD4 es la distancia entre el punto medio de D5 es la distancia entre el punto medio de

La distancia entre el centro de esta ventana y la altura de los ojos es igual a ≈1.15∗dee como se define en la implementación resultó difícil de extraer en el espacio RGB debido a que en este espacio la similaridad entre los pixeles de los labios y la región de piel que los rodea es alta.trabajo de Morán [12] donde se utiliza la componente U del espaciocomponente C3 de la transformada discreta de Hartleyuna imagen donde la diferencia entre la región de los labios y la piel que los rodea es mayor que en el primer caso.para extraer la boca y sus puntos característicos, el cual se explica a continuación.

a. Transformar imagen al espacio CIEb. Aplicar transformada discreta de Hartley (C3).c. Sumar U y C3. d. Ajustar contraste de la imae. Detectar bordes y umbralizar.f. Analizar componentes conexas.

Metodología de solución

(b) (c) (d)

(f) (g)

: Extracción de puntos característicos de las cejas. (a) Región de la ceja. (b)(c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes

conexas. (f) Detección de puntos característicos. (g) Puntos característicos en imagen

Extracción de características de la boca

La región de búsqueda de la boca de define como [19]:

|,}v� ~ � ���1.20� 5,}v� ~ 0.2 = ��5 � �4�

la distancia inter-pupilar., tancia entre el punto medio de dee y la posición y de la nariz,

D5 es la distancia entre el punto medio de dee y la posición y de la boca [19].

La distancia entre el centro de esta ventana y la altura de los ojos es igual como se define en la tabla 2.3 (sección 2.1, p. 10). Durante la

resultó difícil de extraer este componente con el análisis del color RGB debido a que en este espacio la similaridad entre los pixeles de

piel que los rodea es alta. Se tomó como referencia el donde se utiliza la componente U del espacio CIE-LUV

componente C3 de la transformada discreta de Hartley (HDT) [30] para formar una imagen donde la diferencia entre la región de los labios y la piel que los rodea es mayor que en el primer caso. En la Figura 4-24 se muestra el diagrama de flujo

y sus puntos característicos, el cual se explica a continuación.

Transformar imagen al espacio CIE-LUV (U). Aplicar transformada discreta de Hartley (C3).

Ajustar contraste de la imagen resultante. Detectar bordes y umbralizar. Analizar componentes conexas.

(a) Región de la ceja. (b) (c) Imagen binaria. (d) Eliminación de ruido. (e) Unión de componentes

conexas. (f) Detección de puntos característicos. (g) Puntos característicos en imagen

(4.10)

(4.11)

La distancia entre el centro de esta ventana y la altura de los ojos es igual Durante la

este componente con el análisis del color RGB debido a que en este espacio la similaridad entre los pixeles de

como referencia el LUV y la

para formar una imagen donde la diferencia entre la región de los labios y la piel que los rodea

el diagrama de flujo y sus puntos característicos, el cual se explica a continuación.

Page 89: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 65

Figura 4-24: Diagrama de flujo para extraer puntos característicos de la boca.

a. Transformación de la imagen a CIE-LUV

Como se mencionó en la introducción de esta sección, la región de búsqueda se transforma al espacio CIE-LUV y solo se utiliza la componente U. La transformación de RGB (imagen original) a CIE-LUV se hace en forma escalonada, primero se convierte al sistema de coordenadas XYZ y después a CIE-LUV. En la tabla 4.2 se presentan las fórmulas para realizar estas transformaciones. En la figura 4-25b se muestra la imagen resultante.

Tabla 4.2: Formulas para convertir valores en el espacio RGB a CIE-LUV Tipo de

transformación Fórmula Parámetros

RGB — XYZ [67]

����� � �0.490 0.310 0.2000.177 0.813 0.0110.0 0.010 0.990� � �>�,#&>?�>�0#&>?�>�#&>?�� R, G, B = [0, 1] α = 0.055 γ = 2.2

>��� � ��� + �1 + � �γ , � P 0.04045�12.92 , H$&H �%#H B

XYZ — CIEL-LUV [68]

] �67879116 � �,����V� � 16, �/,��� P 0.008856

903.3 � �,���� , H$&H �%#H B E � 13]�E� � E� � � � 13]��� � �� �

Observer= 2°, Illuminant= D65 (Daylight):

- ,��� � 95.047 - ,��� � 100.00 - ,��� � 108.883 E� � 4�� � 15� � 3� �� � 9�� � 15� � 3� E� � 4,���,��� � 15,��� � 3,��� �� � 9,���,��� � 15,��� � 3,���

Page 90: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

66 Capítulo 4: Metodología de solución

b. Procesamiento de la imagen con Transformada Discreta de Hartley (HDT)

Esta transformación se realiza sobre la imagen de entrada (figura 4-25a) aplicando la ecuación (4.12) [30]. De esta transformación solo se utiliza la componente C3 como se mencionó en la introducción de esta sección. En la figura 4-25c se muestra la imagen resultante de este proceso.

�313233� � �0.5774 0.5774 0.57740.5774 0.2113 �0.78870.5774 �0.7887 0.2113 � �,0� (4.12)

donde R, G y B son los valores de rojo, verde y azul del píxel respectivamente.

c. Suma de U y C3

El siguiente paso es crear una imagen a partir de las dos imágenes obtenidas previamente. En la imagen resultante (U+C3) los pixeles con valor más alto corresponden a la región de los labios [12]. En la figura 4-25d se observa la imagen resultante de la suma de imágenes.

d. Ajuste de contraste

El ajuste del contraste tiene como objetivo resaltar la región de los labios del resto de la imagen. Este proceso se realiza de la misma forma como se explica en la sección 4.4.2a (p.58). El resultado del ajuste del contraste se muestra en la figura 4-25e donde se observa que la región de los labios resalta del resto de los pixeles.

e. Detección de bordes y umbralizado

En esta etapa del proceso se binariza la imagen con la detección de bordes y umbralizado. Primero se aplica un algoritmo de convolución con una máscara de dimensión 3×3 para resaltar los bordes. Los coeficientes de la máscara corresponden a filtros de detección de bordes, por ejemplo pasa alto, pasa bajo y sobel horizontal. Después de la convolución se umbraliza la imagen aplicando la función definida en la ecuación (4.6) (p.59). Finalmente se tiene como salida una imagen binaria que contiene las regiones contenidas en la imagen (figura 4-25f).

f. Análisis de componentes conexas

Este proceso consiste en localizar el objeto más grande, sus esquinas (comisuras) y los puntos más alto y bajo en la mitad de la línea que pasa por las esquinas (ápices).

Page 91: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Para localizar la región más grande se sigue el mismo processección 4.4.2b (p.58). Las comisuras se obtienen recderecho de la región para obtener el punto medio de los pixeles colocados en esas columnas. Los ápices corresponden a los pixeles más alejados de la línea que pasa por las comisuras en forma perpendicular en el punto medio figura 4-25g se observan los puntos característicos sobre la imagen de entrada.

(b)

(a) (c)

Figura 4-25: Extracción de puntos característicos de la boca. Componente U (CIE-LUV). (c) Componente C3 (HDT). (d) U+C3. (e) Ajuste de contraste. (f) Imagen binaria. (g) Puntos característicos en imagen original.

4.4.5 Vector de características

Esta es la última etapa de la extracción de características. Con el conjunto de puntos faciales obtenidode una imagen. Como se estableció en los objetivos de esta tesis, sistema FACS como referencia para reconocer las expresiones faciales. como base el trabajo de distancias geométricas parámetros necesarios que identifiquen las AU’s presentes.calcularon dos vectores de características, el primero se basa en las distanciasgeométricas entre marcas faciales y el segundo se basa en las AU’s presentes en la imagen.

4.4.5.1 Vector basado en distancias geométricas

Para calcular los parámetros que forman este vector se considera que el movimiento de componentes faciales iguales (ojos y cejas) se realiza de forma simétrica. De esta manera sólo se considera como un parámetro el movimiento de ambos componentes obteniendapertura de los ojos).

Capítulo 4: Metodología de solución

Para localizar la región más grande se sigue el mismo proceso explicado en la ). Las comisuras se obtienen recorriendo los límites izquierdo y

derecho de la región para obtener el punto medio de los pixeles colocados en esas columnas. Los ápices corresponden a los pixeles más alejados de la línea que pasa por las comisuras en forma perpendicular en el punto medio de esta línea. En la

g se observan los puntos característicos sobre la imagen de entrada.

(d) (e) (f)

: Extracción de puntos característicos de la boca. (a) Región de la boca. (b) LUV). (c) Componente C3 (HDT). (d) U+C3. (e) Ajuste de binaria. (g) Puntos característicos en imagen original.

Vector de características

Esta es la última etapa de la extracción de características. Con el conjunto de faciales obtenido se calcula un vector característico que representa el estado

Como se estableció en los objetivos de esta tesis, sistema FACS como referencia para reconocer las expresiones faciales.

ajo de Zhang [5] para definir un conjunto de medidas de distancias geométricas entre las marcas faciales con los que se obtienenparámetros necesarios que identifiquen las AU’s presentes. Con estos datos se calcularon dos vectores de características, el primero se basa en las distanciasgeométricas entre marcas faciales y el segundo se basa en las AU’s presentes en la

Vector basado en distancias geométricas

Para calcular los parámetros que forman este vector se considera que el movimiento de componentes faciales iguales (ojos y cejas) se realiza de forma simétrica. De esta manera sólo se considera como un parámetro el movimiento de ambos componentes obteniendo el promedio del movimiento de ambos (p. ej. la

Metodología de solución 67

o explicado en la orriendo los límites izquierdo y

derecho de la región para obtener el punto medio de los pixeles colocados en esas columnas. Los ápices corresponden a los pixeles más alejados de la línea que pasa

de esta línea. En la g se observan los puntos característicos sobre la imagen de entrada.

(g)

(a) Región de la boca. (b) LUV). (c) Componente C3 (HDT). (d) U+C3. (e) Ajuste de

Esta es la última etapa de la extracción de características. Con el conjunto de representa el estado

Como se estableció en los objetivos de esta tesis, se utiliza el sistema FACS como referencia para reconocer las expresiones faciales. Se tomó

njunto de medidas de con los que se obtienen los

Con estos datos se calcularon dos vectores de características, el primero se basa en las distancias geométricas entre marcas faciales y el segundo se basa en las AU’s presentes en la

Para calcular los parámetros que forman este vector se considera que el movimiento de componentes faciales iguales (ojos y cejas) se realiza de forma simétrica. De esta manera sólo se considera como un parámetro el movimiento de

o el promedio del movimiento de ambos (p. ej. la

Page 92: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

68 Capítulo 4: Metodología de solución

Los parámetros utilizados se definen en la tabla 4.3. En la columna central se describe la medida que forma cada parámetro de este vector. Las literales representan las marcas faciales definidas en la sección 4.2 (p.47). En la figura 4-26 se observa de forma gráfica los parámetros de este vector de características.

Tabla 4.3: Parámetros del vector característico basado en distancias geométricas.

Medida Componente

facial

P1 ∠ � 5 � Ceja P2 � ����� Ceja P3 � ������ Ceja

P4 F8 Ceja P5 ∠ 5 � v Ojo P6 ∠ 5 0 � Ojo P7 0 v���� Ojo P8 F6 Ojo P9 �� 3����� � �� 3�������� Boca

P10 � ����� Boca P11 3� 3����� Boca

P12 � 3����� Boca P13 �� 3������� Boca

P14 F4 Boca

Figura 4-26: Medidas geométricas entre marcas faciales. Las líneas amarillas corresponden a ángulos y las líneas anaranjadas corresponden a distancias entre puntos.

Page 93: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 69

Dado que el tamaño de la cara varía en las imágenes, las distancias obtenidas en cada una de ellas pueden no corresponder al mismo rango, por esta razón los parámetros se normalizan dividiéndolos por la distancia inter-pupilar denotada como dee. Este vector de características se define como:

v�� � O �V��� , ����� , ����� , ����� , ����� , ����� , ����� , ����� , ����� , �VY��� , �VV��� , �V���� , �V���� , �V����  (4.13)

4.4.5.2 Vector basado en AU’s

El objetivo de este vector es representar el estado de la cara mediante la

presencia de AU’s. Se utilizó un conjunto de 16 AU’s para definir las expresiones faciales utilizadas en esta tesis. La relación que existe entre las AU’s y las expresiones se define en la tabla 4.4 basada en [5].

Tabla 4.4: AU’s asociadas a las expresiones faciales utilizadas.

Expresión facial

Características primarias Características auxiliares

AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s) AU(s)

Alegría 12

25 26 16 Tristeza 1 15

4 7 25 26 Enojo 2 4 7 23 24

16 25 26 Miedo 20 1+5 5+7

4 5 7 25 26 Sorpresa 5 26 27 1+2

Para determinar la presencia de las AU’s se compara cada una de las imágenes del video con la imagen inicial, la cual supone estar en estado neutral. El vector característico definido con la ecuación (4.13) se utiliza para obtener las variaciones entre los parámetros de ambas imágenes y así determinar la presencia de las AU’s.

En la tabla 4.5 se describen las variaciones que deben ocurrir entre una imagen y la posición neutral para identificar las AU’s. Las literales corresponden a los puntos del modelo facial definido en la sección 4.2 (p.47).

Page 94: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

70 Capítulo 4: Metodología de solución

Tabla 4.5: Descripción de AU's utilizadas.

Este vector de características de define como:

v��� � O¡1, ¡2, ¡4, ¡5, ¡7, ¡10, ¡12, ¡15, ¡16, ¡17, ¡20, ¡23, ¡24, ¡25, ¡26, ¡27   (4.14)

donde el valor de los parámetros AUx es 1 si la AU está presente y 0 si no está.

Con este proceso se termina la etapa de extracción de características. Los vectores de características obtenidos con los puntos faciales definen el estado de una imagen. El siguiente paso es utilizar esta información para clasificar las imágenes en alguna expresión facial.

Page 95: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 71

4.5 Clasificación

La clasificación es la última sección de la metodología de solución propuesta

en la sección 4 (p.45). Para clasificar las imágenes en expresiones faciales, es necesario entrenar algún clasificador. El modelo obtenido con el entrenamiento recibirá un vector de características arbitrario y regresará la clase a la que pertenece.

Como se mencionó en la sección 4.4.5 los vectores obtenidos por cada imagen son de dos tipos: basado en distancias geométricas y basado en FACS. Según lo observado durante el análisis de esta fase, la tabla de relaciones entre AU’s y expresiones faciales (p.69) no se puede aplicar como un conjunto de reglas para clasificar las imágenes de acuerdo a los vectores basados en FACS por la siguiente razón:

• El sistema de visión puede generar como salida una combinación de AU’s distinta a las expuestas en la tabla 4.4(p.69), por lo que debe existir alguna solución para clasificar la imagen en la clase con la que tenga mayor compatibilidad.

Los algoritmos de aprendizaje automático proporcionan esta característica, encuentran de manera explícita o no, la forma en que un patrón es clasificado a la clase que más se parezca. Los clasificadores seleccionados para la clasificación son C5.0 y una RNA Perceptrón Multicapa (MLP).

El entrenamiento y la clasificación de las secuencias de imágenes se realizó con la aplicación Clementine [58]. A continuación se describe el proceso de entrenamiento y clasificación.

4.5.1 Entrenamiento

El objetivo de esta etapa consiste en obtener un modelo entrenado de cada

clasificador. En la figura 4-27 se muestra el diagrama de flujo de esta etapa. Se tiene como entrada un conjunto de vectores característicos que representan a las expresiones faciales, también llamados patrones. La forma de estos patrones está definida por las ecuaciones (4.13) y (4.14). El resultado del entrenamiento son dos modelos de clasificación (C5.0 y RNA MLP) por cada tipo de vector característico.

Page 96: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

72 Capítulo 4: Metodología de solución

Figura 4-27: Esquema de entrenamiento de C5.0 y RNA Perceptrón Multicapa.

4.5.2 Clasificación

Los modelos obtenidos en el entrenamiento son utilizados para clasificar las

imágenes. El proceso de reconocimiento se observa en la figura 4-27, donde la entrada son los datos del vector característico de cada imagen. Es importante resaltar que este vector puede ser de tipo FACS o distancias geométricas. El clasificador a utilizar para el reconocimiento depende del tipo de vector característico utilizado. Finalmente se tiene como salida la clase o expresión facial a la que pertenece cada imagen de la secuencia.

Figura 4-28: Esquema de clasificación se secuencias de imágenes.

En el capítulo 6 se describen los modelos obtenidos en el entrenamiento de los clasificadores con los dos tipos de vectores. También se presentan y se comparan los resultados de clasificación con los dos clasificadores seleccionados.

Page 97: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 4: Metodología de solución 73

Comentarios

Dado que los algoritmos implementados utilizan la información del color para extraer las características faciales, la uniformidad del color de la piel y de los componentes faciales juega un papel muy importante para su extracción. Durante la implementación de esta etapa se realizó otro análisis del estado del arte debido a que los algoritmos que habían sido seleccionados inicialmente no presentaban los resultados esperados. La principal causa fue que en los trabajos seleccionados las condiciones de iluminación están controladas, es decir su distribución sobre la cara se mantiene uniforme. Mediante pruebas de varias metodologías y combinaciones de algunas de ellas se generó una secuencia de pasos a seguir para obtener los resultados esperados con los videos de prueba. A continuación se describen los problemas detectados en la extracción de algunos componentes faciales.

Extracción de los ojos:

• Cuando la iluminación no es uniforme, la nariz produce sombra hacia la parte interna de los ojos. Esto provoca la unión entre la sombra y la parte interna de los ojos, lo que dificulta la localización de este punto.

• Otro caso se presenta cuando las personas tienen sombras alrededor de los párpados, en este caso se dificulta encontrar la apertura del ojo.

• En otros casos la cercanía entre el pliegue del párpado superior y el borde del ojo provocan que la extracción del borde se detecte de manera incorrecta. El punto superior y esquina externa del borde detectado corresponden al pliegue del párpado.

Localización de la boca

• El tono de la piel de los labios es similar a la región que lo rodea, por lo que es necesario emplear un modelo de color que permita encontrar una mejor distinción.

• Cuando la iluminación no es uniforme, se dificulta la extracción de la boca como un solo objeto. Esto ocurre porque la intensidad de luz elimina los bordes en algunas regiones.

• En otros casos la nariz produce sombra hacia el labio superior. Si la sombra hace contacto con el labio, se detecta como un solo objeto y el borde extraído no corresponde a la forma de la boca.

Page 98: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

74 Capítulo 4: Metodología de solución

• Otro caso similar ocurre con la sombra que produce el labio inferior hacia abajo. En este caso el límite inferior del borde extraído no corresponde a la forma de la boca.

Localización de las cejas

La localización de las cejas es un proceso menos complejo que los anteriores, debido a que tiene un tono contrastante con el fondo de la región de búsqueda. Además de que en la mayoría de los casos solo aparece este componente en la zona de búsqueda.

La mayor parte de los errores ocurre cuando aparece más de un componente facial en la región de búsqueda. Esto sucede porque las regiones se definen a partir de relaciones geométricas constantes, sin embargo la anatomía de la cara de las personas es diferente. Esto ocasiona que pueda aparecer más de un componente facial o incluso el componente en cuestión no esté completamente dentro de la región de búsqueda. Con el fin de obtener una herramienta flexible ante estas variaciones se desarrolló una interfaz gráfica que permite ajustar los parámetros necesarios para definir las regiones de búsqueda. En el siguiente capítulo se muestran las ventanas de la interfaz gráfica desarrollada.

Page 99: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

75

5555 Implementación de la soluciónImplementación de la soluciónImplementación de la soluciónImplementación de la solución

Capítulo 5

Implementación de la solución

En este capítulo se presenta la implementación de la solución propuesta en el capítulo 4. Se desarrolló un sistema formado por una aplicación y una librería dinámica que contiene los algoritmos para procesar imágenes. En las siguientes secciones se describe la arquitectura de este sistema.

La primera sección describe la arquitectura general del sistema. Después se presenta el diseño de la aplicación principal donde se implementaron las primeras tres etapas de la solución propuesta: adquisición de imágenes; localización y seguimiento de la cara; y extracción de características (ver figura 4-1, p.46). La etapa de entrenamiento y clasificación se realizó con Clementine [58]. En la última sección se muestran los diagramas realizados para el entrenamiento y clasificación con esta herramienta.

5.1 Arquitectura del sistema

Se desarrolló una aplicación y una librería dinámica para distribuir los procesos y algoritmos implementados. En la figura 5-1 se observa la relación que existe entre estos dos componentes del sistema. La herramienta de software desarrollada consta de cuatro módulos interconectados, además interactúa con la librería dinámica a través del módulo Global.

Page 100: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

76 Capítulo 5: Implementación de la solución

Figura

• Avi. Este módulo utiliza funciones de la API de imágenes de videos en formato AVlas peticiones del módulo

• Webcam. Módulo que utiliza funciones de la API de controlar las cámarasvfw (Video for Windows) se controlan las principales propiedades de las cámaras: selección de profundidad del color capturar una imagen del dGlobal.

(a)

Figura 5-2: Modificación de propiedades de dispositivos de captura. dispositivo de captura. (b) Modificación del tamaño y profundidad de la imagenSelección de compresor de video.

• Global. Es el módulo de enlace entre las peticiones del usuario, las imágenes a procesar (AVI o Webcam) y los algoritmos dinámica. Recibe las peticiones del usuarioimágenes de los módulos Webcam ó Avipara procesar las imágenes.

Capítulo 5: Implementación de la solución

Figura 5-1: Arquitectura del sistema.

Este módulo utiliza funciones de la API de Windows para extraer en formato AVI sin compresión. Su objetivo es recibir

l módulo Global y regresar la imagen requerida.

. Módulo que utiliza funciones de la API de Windowscámaras Web conectadas a la computadora. Con la librería

vfw (Video for Windows) se controlan las principales propiedades de las aras: selección de dispositivo de captura, dimensión de la imagen,

l color y compresor de video (figura 5-2). Su objetivo es a imagen del dispositivo seleccionado y enviarla al módulo

(b) (c)

: Modificación de propiedades de dispositivos de captura. (a) Selección deModificación del tamaño y profundidad de la imagen

Selección de compresor de video.

de enlace entre las peticiones del usuario, las imágenes a procesar (AVI o Webcam) y los algoritmos implementados en la librería

. Recibe las peticiones del usuario (p. ej. detectar piel), obtiene las imágenes de los módulos Webcam ó Avi e interactúa con la librería externa

imágenes.

para extraer I sin compresión. Su objetivo es recibir

Windows para a librería

vfw (Video for Windows) se controlan las principales propiedades de las dispositivo de captura, dimensión de la imagen,

. Su objetivo es al módulo

a) Selección de Modificación del tamaño y profundidad de la imagen. (c)

de enlace entre las peticiones del usuario, las imágenes la librería obtiene las

úa con la librería externa

Page 101: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 5: Implementación de la solución 77

• Interfaz de usuario. Es la capa más externa de la aplicación, es la capa que interactúa con el usuario. Proporciona al usuario todas las funcionalidades programadas, por ejemplo configuración de la aplicación, selección del origen de las imágenes, modificación de parámetros para procesar imágenes, selección de los algoritmos de PDI, entre otras. En la sección 5.2 se muestran las imágenes de la interfaz gráfica.

• dalu.dll. Es una librería dinámica que almacena los algoritmos en forma de función. Estas funciones reciben la imagen y los parámetros necesarios en cada algoritmo de procesamiento. Regresan la imagen procesada además de otra información, por ejemplo la posición y orientación de la cara. En la figura 5-3 se muestra la estructura de esta librería.

Figura 5-3: Estructura de dalu.dll.

5.2 Diseño de la aplicación

Se desarrolló una aplicación en C++ Builder [69] para automatizar las primeras tres etapas de la solución propuesta en el capítulo 4 (ver figura 4-1, p.46). De forma análoga al esquema de solución, la aplicación está conformada por módulos enlazados en forma secuencial.

Page 102: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

78 Capítulo 5: Implementación de la solución

En la figura 5-4 se muestran los módulos de la aplicación donde se incluye la adquisición de imágenes, localización y seguimiento de la cara, extracción de puntos característicos y generación del vector de características. La salida de la aplicación son archivos de texto que contienen la posición de las marcas faciales y el vector de características calculado. La clasificación de las imágenes se basa en estos archivos, dado que el vector de características representa el estado de cada imagen. Los resultados de la clasificación se detallan en el capítulo 6.

Figura 5-4: Diseño de la aplicación.

Como se comentó al final del capítulo 4, durante la etapa de implementación fue necesario modificar los parámetros de los algoritmos para obtener mejores resultados en la localización de los componentes faciales. Por esta razón cada módulo tiene opciones configurables en tiempo de ejecución.

A continuación se describe el contenido de las principales ventanas de la aplicación desarrollada.

Ventana principal

En esta ventana se visualizan los principales eventos ocurridos en los módulos implementados. En el menú principal se encuentran los accesos a las tareas implementadas:

- Archivo. Selección del origen de las imágenes (Archivo o cámara Web).

- Vista. Muestra y oculta los paneles de salida de información. Algunas opciones son: mostrar imagen procesada, tiempo de procesamiento, proyecciones laterales y vector de características.

Page 103: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 5: Implementación de la solución 79

- Procesamiento. Contiene las opciones para procesar imágenes, las cuales corresponden al proceso de extracción de características: detectar piel, localizar y normalizar la cara y extraer componentes faciales.

- Herramientas. Desde este menú se entra a la configuración general de la aplicación. También tiene el acceso a una ventana donde se pueden probar los algoritmos de PDI implementados.

Figura 5-5: Ventana principal de la aplicación.

Configuración

Esta ventana está en el menú principal/Herramientas. Desde aquí se configuran las opciones generales de la aplicación, como la selección de directorios para almacenar archivos. En la figura 5-6 se muestra la configuración de vectores característicos basados en el modelo facial utilizado.

Figura 5-6: Configuración del programa.

Page 104: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

80 Capítulo 5: Implementación de la solución

Parámetros

Desde esta ventana se ajustan los parámetros de los algoritmos en tiempo de ejecución. Los parámetros ajustables están agrupados según a la etapa del proceso donde se utilizan. Las configuraciones se pueden almacenar y recuperar. En la figura 5-7 se muestra la configuración de los parámetros utilizados en la extracción de puntos característicos de los ojos.

Figura 5-7: Configuración de parámetros.

Datos de salida

Esta ventana está en el menú principal/Vista. Desde aquí se selecciona el tipo de vector característico que se quiere obtener a partir de los puntos faciales extraídos. En la figura 5-8 se muestra el contenido de esta ventana.

Figura 5-8: Datos de salida (vector de características).

Page 105: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 5: Implementación de la solución 81

Taller de pruebas

Esta ventana está en el menú principal/Herramientas. Aquí es posible probar de forma aislada o en combinación los algoritmos de PDI implementados (figura 5-9).

Figura 5-9: Ventana de taller de pruebas.

5.3 Entrenamiento y clasificación con Clementine

Se utilizó la herramienta de software Clementine [58] para clasificar los vectores de características obtenidos con la aplicación desarrollada. El proceso de entrenamiento se explicó en la sección de Clasificación (p. 71). El diagrama de flujo implementado en esta etapa se muestra en la figura 5-10. Se requiere de un archivo que contenga los patrones de entrenamiento. Después se define el tipo de datos de las variables (entrada / salida). Por último mediante el entrenamiento se genera los modelos señalados en la imagen.

Page 106: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

82 Capítulo 5: Implementación de la solución

Figura 5-10: Proceso de entrenamiento con Clementine.

El diagrama de flujo de clasificación es similar al anterior. Se tiene como entrada el vector característico de las imágenes. Después se selecciona el modelo entrenado según el tipo de vector utilizado (FACS o distancias geométricas). Al final del diagrama se tiene como salida la clasificación en forma de tabla de datos y una gráfica que muestra la clasificación de las imágenes (figura 5-11). En la figura 5-12 se muestra un ejemplo de clasificación de una secuencia de imágenes con C5.0 en forma gráfica. El eje x representa el número de imagen y el eje y la clase a la que pertenece.

Page 107: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 5: Implementación de la solución 83

Figura 5-11: Proceso de clasificación con Clementine.

Figura 5-12: Clasificación de una secuencia de imágenes en forma gráfica con Clementine.

Page 108: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

84 Capítulo 5: Implementación de la solución

Comentarios

Hay algunos algoritmos de PDI que son computacionalmente costosos, por ejemplo: convolución y rotación de imágenes. Esto implica que el tiempo de procesamiento de las imágenes vaya en aumento cada vez que se aplica un algoritmo sobre las imágenes. Con el fin de obtener el procesamiento en tiempo real, se mejoró la codificación de algunos algoritmos a partir de su implementación tradicional, por ejemplo: el almacenamiento de la imagen en un vector de tipo INT permite ejecutar la convolución directamente sobre los valores del vector.

La aplicación desarrollada tiene opciones configurables en tiempo de ejecución, esto permite que se realicen pruebas con variación de parámetros en tiempo real. Esto permite el ajuste de parámetros para cada video, además se puede almacenar y recuperar la configuración.

Clementine es una herramienta de minería de datos que permite desarrollar modelos predictivos como los utilizados en la clasificación. Su interfaz gráfica es sencilla, lo que facilita su interacción. Por estas razones se seleccionó para realizar la clasificación de las imágenes.

Page 109: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

85

6666 Pruebas y resultadosPruebas y resultadosPruebas y resultadosPruebas y resultados

Capítulo 6

Pruebas y resultados

En este capítulo se presentan los experimentos realizados para evaluar el desempeño de los módulos del sistema desarrollado. Las pruebas incluyen desde la detección de piel en más de un espacio de color, hasta la clasificación de las imágenes con una RNA’s y C5.0.

En las siguientes secciones se describen las características del dispositivo hardware (PC) y las bases de datos utilizadas. Después se explican las pruebas y los resultados de los módulos de localización, seguimiento de la cara y extracción de marcas faciales.

Finalmente se realizaron las pruebas de clasificación de las imágenes utilizando los dos tipos de vectores característicos definidos (p. 67).

6.1 Dispositivo hardware

Los videos se procesaron en una PC con sistema operativo Windows XP Professional y las siguientes características de hardware.

• CPU: Intel Core Duo 3Ghz.

• Memoria RAM: 2Gb.

Con este equipo se logró procesar secuencias de imágenes en tiempo real. Este es un alcance no contemplado inicialmente, sin embargo dada la importancia

Page 110: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

86 Capítulo 6: Pruebas y resultados

del procesamiento de señales en tiempo real, se mejoró la codificación de algunos algoritmos de alto costo computacional para lograr este objetivo.

6.2 Bases de datos

Se utilizaron dos bases de datos de distintas fuentes. La primera es MMI desarrollada por el Grupo de Interacción Hombre-Máquina de la universidad Delft en Holanda [45]. La segunda se creó en CENIDET para esta tesis. El objetivo de crear una base de datos fue tener videos de personas con rasgos de la región de desarrollo del presente proyecto, dado que no se encontró alguna base de datos con características similares en el estado del arte.

En la base de datos MMI participaron personas de distintas razas. En los videos la iluminación del escenario está controlada y el fondo es de color contrastante respecto a la piel. La cara permanece en posición frontal respecto al dispositivo de captura y su área representa en promedio el 30% del total de la imagen. Con estas características se simplifica el trabajo de la localización de la cara.

La base de datos creada se capturó a partir de la forma natural en que los participantes generan las expresiones faciales. Los videos se capturaron en el interior de un edificio con iluminación natural de día (entre 10:00 y 13:00 hrs.). La cara permanece en posición frontal respecto al dispositivo de captura y su área representa en promedio el 18% del total de la imagen. Las personas que participaron son de nacionalidad mexicana. En estos videos el fondo del escenario no está controlado, incluso presenta movimiento.

Con estas bases de datos se tiene material diverso para probar la aplicación desarrollada, por ejemplo: distintos tonos de piel, rasgos faciales, iluminación y tamaño de la cara. En la figura 6-1 y figura 6-2 se muestran algunos ejemplos de los videos utilizados. Las características de las bases de datos se resumen en la tabla 6.1.

Page 111: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 87

Figura 6-1: Muestra de videos de la base de datos MMI [45].

Figura 6-2: Muestra de la base de datos creada (CENIDET).

Page 112: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

88 Capítulo 6: Pruebas y resultados

Tabla 6.1: Características de bases de datos para pruebas.

Características

CENIDET MMI

Dispositivo de captura

Webcam Philips SPC1005NC

?

Formato de video

AVI AVI Compresión de video

Ninguna ? Resolución de imagen

640×480 pxls. 720×576 pxls. Cuadros por segundo (fps)

30 24 Número de personas

10 (5 hombres, 5 mujeres) 19 (11 hombres, 8 mujeres) Edad de las personas

20-27 19-62 Barba, bigote, lentes

� � Oclusión

� � Videos por expresión

2 1 Total de videos

120 1280 Expresiones faciales

5+neutral 9 Descripción de los videos

Los videos comienzan en estado neutral, se genera una expresión básica y regresan al estado neutral

Los videos comienzan en estado neutral, se genera una expresión básica y regresan al estado neutral

6.3 Plan de pruebas

El objetivo de las pruebas es validar el correcto funcionamiento de los módulos del sistema, así como comprobar que se alcanzaron los objetivos planteados.

Se seleccionaron cinco videos de cada base de datos para realizar las pruebas. En los videos se incluyen las características mostradas en la tabla 6.2.

Tabla 6.2: Características de videos de pruebas.

CENIDET MMI

Número de personas

5 5 Tono de piel

Al menos tres Al menos tres Iluminación

No controlada Controlada Escenario

Complejo y con movimiento

Sencillo

Los casos de prueba se realizaron en el mismo orden que los procesos

implementados para extraer las características de las imágenes, desde la detección de piel hasta la extracción de los datos en un vector característico. El entrenamiento y la clasificación se desarrollaron con la herramienta de software Clementine [58].

Page 113: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

6.3.1 Caso 1: Detección de

Objetivo

Detectar en cubajo las condiciones de lo

Desarrollo

Se aplicó un umbralizado para binarizar imágenespiel y condiciones de iluminación. Scorrespondientes a la piel y 0 binario corresponden a las seleccionadas del estado del arte: Peer evalúan los pixeles en el espacio RGBen [11] además de otras reglas en muestran los resultados

Tabla 6.3: Caso de prueba

Base de datos

Tono de piel Imagen original

MMI Claro

Medio

Obscuro

Capítulo 6: Pruebas y resultados

etección de piel

Detectar en cuál modelo de color se realiza mejor la detección de bajo las condiciones de los videos utilizados.

Se aplicó un umbralizado para binarizar imágenes con distintos tonos de piel y condiciones de iluminación. Se asignó el valor 1 binario a los pixeles correspondientes a la piel y 0 binario al resto. Las funciones decorresponden a las seleccionadas del estado del arte: Peer [11] y Phamevalúan los pixeles en el espacio RGB; y Rahman [61] utiliza las reglas propuestas

además de otras reglas en los espacios YCbCr y HSV. En la muestran los resultados.

de prueba 1: Comparativo de funciones para detectar de piel

Imagen original RGB

Peer [11] RGB

Pham-N [60] RGB+CbCr+H

: Pruebas y resultados 89

l modelo de color se realiza mejor la detección de la piel

con distintos tonos de e asignó el valor 1 binario a los pixeles

l resto. Las funciones de umbralizado y Pham-N [60]

utiliza las reglas propuestas YCbCr y HSV. En la tabla 6.3 se

Comparativo de funciones para detectar de piel.

RGB+CbCr+H Rahman [61]

Page 114: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

90 Capítulo 6: Pruebas y resultados

CENIDET Claro

Medio

Obscuro

Observaciones

Con Peer [11] se obtuvo mejor resultado en la segmentaciónde las pruebas, esto se debe a que en las reglas se claros a obscuros. Con esto se establece que los cambios de iluminación y las sombras sobre la cara causan menor efecto en la detección reglas. Con Pham-N[58] y Rahman[59]tonos de piel de medio a obscuro.

El sistema de visión desarrollado utiliza por default el conjunto de reglas propuesto en Peer [11]. Sin embargo cualquiera de los otros detectores puede ser seleccionado como una opciónfuncione adecuadamente.

6.3.2 Caso 2: Localización de la cara

Objetivo

Extraer la cara de la imagen original y normalizar su orientación a la posición vertical.

Desarrollo

La imagen de entrada es la salida del Caso 1. A partir de la detección de piel se localiza la región más grande, se le aplican algoritmos de PDI para eliminar el ruido y llenar los huecos con e

: Pruebas y resultados

se obtuvo mejor resultado en la segmentación en la mayoría sto se debe a que en las reglas se incluyen tonos de piel desde Con esto se establece que los cambios de iluminación y las

sombras sobre la cara causan menor efecto en la detección bajo este conjunto de Rahman[59] los mejores resultados se obtuvieron

tonos de piel de medio a obscuro.

El sistema de visión desarrollado utiliza por default el conjunto de reglas in embargo cualquiera de los otros detectores puede ser opción auxiliar en caso de que el parámetro principal no

Caso 2: Localización de la cara

Extraer la cara de la imagen original y normalizar su orientación a la

La imagen de entrada es la salida del Caso 1. A partir de la detección de piel se localiza la región más grande, la cual se considera como cara. A esta región

algoritmos de PDI para eliminar el ruido y llenar los huecos con e

en la mayoría tonos de piel desde

Con esto se establece que los cambios de iluminación y las este conjunto de

ron con

El sistema de visión desarrollado utiliza por default el conjunto de reglas in embargo cualquiera de los otros detectores puede ser

auxiliar en caso de que el parámetro principal no

Extraer la cara de la imagen original y normalizar su orientación a la

La imagen de entrada es la salida del Caso 1. A partir de la detección de A esta región

algoritmos de PDI para eliminar el ruido y llenar los huecos con el fin

Page 115: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

de generar una plantilla. imagen original para formar una imagen que contiene la cara y el fondo blanco.

La imagen resultante se gira en un ángulo dirección vertical. La magnitumomentos de inercia de la plantilla.se realizará la búsqueda de los componentes faciales.proceso realizado en este caso de prueba.

Tabla 6.4: Caso Base de datos

Imagen de entrada

MMI

CENIDET

Observaciones

Este proceso implica un alto costo computacional debido a los algoritmos iterativos implementados: análisis de componentes conexas, operadores morfológicos y rotación de la imagen.

Dado que la imagen de entrada es la detección de piel, es importante utilizar un detector eficiente para que la región detectada como cara corresponda en su forma y área a los datos reales.en las etapas de extracción de características.corresponde a la cara, el resto de los procesos provocarán error en el encontrar la información que se espera obtener.

Capítulo 6: Pruebas y resultados

una plantilla. Los pixeles denotados como 1 binario son extraídos de la imagen original para formar una imagen que contiene la cara y el fondo blanco.

La imagen resultante se gira en un ángulo θ para orientar la cara hacia la La magnitud y dirección de este ángulo se obtiene a partir de los

momentos de inercia de la plantilla. Finalmente se obtiene la imagen sobre la cuál se realizará la búsqueda de los componentes faciales. En la tabla 6.4 proceso realizado en este caso de prueba.

Caso de prueba 2: Localización y normalización de la cara

Imagen de entrada Plantilla

Este proceso implica un alto costo computacional debido a los algoritmos iterativos implementados: análisis de componentes conexas, operadores

rotación de la imagen.

Dado que la imagen de entrada es la detección de piel, es importante utilizar un detector eficiente para que la región detectada como cara corresponda

los datos reales. La imagen de salida de este proceso se utilen las etapas de extracción de características. Si esta imagen de salida no corresponde a la cara, el resto de los procesos provocarán error en el encontrar la información que se espera obtener.

: Pruebas y resultados 91

os pixeles denotados como 1 binario son extraídos de la imagen original para formar una imagen que contiene la cara y el fondo blanco.

para orientar la cara hacia la ste ángulo se obtiene a partir de los

Finalmente se obtiene la imagen sobre la cuál se muestra el

Localización y normalización de la cara.

Resultado

Este proceso implica un alto costo computacional debido a los algoritmos iterativos implementados: análisis de componentes conexas, operadores

Dado que la imagen de entrada es la detección de piel, es importante utilizar un detector eficiente para que la región detectada como cara corresponda

La imagen de salida de este proceso se utiliza Si esta imagen de salida no

corresponde a la cara, el resto de los procesos provocarán error en el proceso al no

Page 116: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

92 Capítulo 6: Pruebas y resultados

6.3.3 Caso 3: Seguimiento

Objetivo

Localizar la cara durante una secuencia de imágenes utilizando su posicien el cuadro inmediato anterio

Desarrollo

Para localizar la cara en un tiempo posición en t-1. A partir de las coordenadas en t-1, se realiza el procedimiento de localización de la cara (Caso 1 y Caso 2) sobre una región 1.20 veces imagen que representa posición de la cara en un tiempo en t+1.

Tabla 6.5: Caso Posición de la cara en t-1

Observaciones

Con este proceso se reduce el área de búsqueda de la cara.objetos fuera de la región de búsqueda y (color, forma y tamaño), no son considerados en cara. En la figura 6-3 se muestra el fragmento de una securegiones de piel con características similares a la cara que la localización de la misma.

Figura 6-3: Caso de prueba 3: Secu

: Pruebas y resultados

Seguimiento de la cara

Localizar la cara durante una secuencia de imágenes utilizando su posicien el cuadro inmediato anterior.

Para localizar la cara en un tiempo t de la secuencia, se considera su A partir de las coordenadas del bounding box que incluye a la cara

se realiza el procedimiento de localización de la cara (Caso 1 y Caso 2) sobre una región 1.20 veces este bounding box. En la tabla 6.5 se muestra una imagen que representa posición de la cara en un tiempo t y la región de búsqueda

Caso de prueba 3: Seguimiento de la cara. Imagen t Región de búsqueda en

Con este proceso se reduce el área de búsqueda de la cara. La presencia de fuera de la región de búsqueda y con características similares a la cara

no son considerados en el proceso de localización de se muestra el fragmento de una secuencia donde aparecen erísticas similares a la cara que no son evaluadas durante

Caso de prueba 3: Secuencia de imágenes de seguimiento de la cara

Localizar la cara durante una secuencia de imágenes utilizando su posición

de la secuencia, se considera su a la cara

se realiza el procedimiento de localización de la cara (Caso 1 y Caso 2) se muestra una

y la región de búsqueda

Región de búsqueda en t

La presencia de con características similares a la cara

el proceso de localización de la aparecen

no son evaluadas durante

la cara.

Page 117: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

6.3.4 Caso 4. Estimación de posición de los ojos con proyecciones laterales

Objetivo

Obtener una primera aproximación a la posición real de los ojos mediante el análisis de las proyecciones laterales

Desarrollo

La imagen de entrada a este procedimiento es la salida del Caso 2.mencionó en la sección las proyecciones horizontales se obtuvieron mejores resultados en la estimación de la posición x,y de los ojos cuando estos están abiertos o cerrados. ambos casos se presentan en los videos, en esta prueba se muestran los resultados obtenidos en ambos casos, donde el proceso de estimación es el mismo.

Para obtener la posición deproyecciones horizontalesmínimo de ellos se considera la mejor posición.

En el caso de la posición verticales calculadas a lo ancho de de la señal, se obtiene el par de posiciones con mayor distancia y en su varianza. En el caso óptimo, estos puntos corresponden exactamente a las esquinas externas del ojo.la posición x. En la tabla “proyecciones horizontales” se visualiza el cruce de

Tabla 6.6: Caso de prueba 4: Estimación de posición de los ojos con proyecciones laterales.

Base de datos

Estado de los ojos

MMI Abiertos

Capítulo 6: Pruebas y resultados

Caso 4. Estimación de posición de los ojos con proyecciones

Obtener una primera aproximación a la posición real de los ojos mediante s proyecciones laterales en situaciones de ojos abiertos y cerrados.

La imagen de entrada a este procedimiento es la salida del Caso 2.mencionó en la sección 4.4.2 (p.58), con la varianza de las proyecciones verticales y las proyecciones horizontales se obtuvieron mejores resultados en la estimación de

de los ojos cuando estos están abiertos o cerrados. ambos casos se presentan en los videos, en esta prueba se muestran los resultados obtenidos en ambos casos, donde el proceso de estimación es el mismo.

Para obtener la posición de y se analizan los valores mínimos de las proyecciones horizontales calculadas a lo alto de la mitad superior de la cara. El mínimo de ellos se considera la mejor posición.

En el caso de la posición x, se analiza la varianza de las proyecciones a lo ancho de la mitad superior de la imagen. Por cada mitad

se obtiene el par de posiciones con mayor distancia y mayor en su varianza. En el caso óptimo, estos puntos corresponden exactamente a las esquinas externas del ojo. Finalmente se calcula el punto medio y se etiqueta

tabla 6.6 se muestra el proceso de esta prueba. En la columna “proyecciones horizontales” se visualiza el cruce de las posiciones x,y obtenidas.

: Caso de prueba 4: Estimación de posición de los ojos con proyecciones laterales.

Entrada Resultados

Proyecciones horizontales

Proyecciones verticales

: Pruebas y resultados 93

Caso 4. Estimación de posición de los ojos con proyecciones

Obtener una primera aproximación a la posición real de los ojos mediante situaciones de ojos abiertos y cerrados.

La imagen de entrada a este procedimiento es la salida del Caso 2. Como se con la varianza de las proyecciones verticales y

las proyecciones horizontales se obtuvieron mejores resultados en la estimación de de los ojos cuando estos están abiertos o cerrados. Debido a que

ambos casos se presentan en los videos, en esta prueba se muestran los resultados obtenidos en ambos casos, donde el proceso de estimación es el mismo.

se analizan los valores mínimos de las calculadas a lo alto de la mitad superior de la cara. El

, se analiza la varianza de las proyecciones Por cada mitad mayor similitud

en su varianza. En el caso óptimo, estos puntos corresponden exactamente a las Finalmente se calcula el punto medio y se etiqueta como

En la columna obtenidas.

: Caso de prueba 4: Estimación de posición de los ojos con proyecciones laterales.

Proyecciones verticales

Page 118: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

94 Capítulo 6: Pruebas y resultados

Cerrados

CENIDET Abiertos

Cerrados

Observaciones

Con la varianza de las proyecciones verticales se obtuvo un mejor modelado en las situaciones de ojos cerrados respecto a la señal de las proyecciones verticales. Esto ocurre debido a que las proyecciones verticales identifican el punto más obscuro en la señal, el cual corresponde el centro del ojo cuando están abiertos, sin embargo en situaciones de ojos cerrados no siempre existe un punto en esta señal que corresponda al centro del ojo. Con la varianza se pueden obtener los límites del ojo y de esta manera tener una mejor aproximación a la posición real del centro del mismo. De forma general se logró tener una aproximación aceptable en ambos estados que puede presentar los ojos.

A partir de esta primera aproximación se calculan regiones de búsqueda para extraer los puntos característicos del ojo.

: Pruebas y resultados

Con la varianza de las proyecciones verticales se obtuvo un mejor modelado en las situaciones de ojos cerrados respecto a la señal de las proyecciones verticales. Esto ocurre debido a que las proyecciones verticales identifican el punto más

eñal, el cual corresponde el centro del ojo cuando están abiertos, sin embargo en situaciones de ojos cerrados no siempre existe un punto en esta señal que corresponda al centro del ojo. Con la varianza se pueden obtener los límites del

a tener una mejor aproximación a la posición real del centro del mismo. De forma general se logró tener una aproximación aceptable en ambos estados que puede presentar los ojos.

A partir de esta primera aproximación se calculan regiones de búsqueda xtraer los puntos característicos del ojo.

Con la varianza de las proyecciones verticales se obtuvo un mejor modelado en las situaciones de ojos cerrados respecto a la señal de las proyecciones verticales. Esto ocurre debido a que las proyecciones verticales identifican el punto más

eñal, el cual corresponde el centro del ojo cuando están abiertos, sin embargo en situaciones de ojos cerrados no siempre existe un punto en esta señal que corresponda al centro del ojo. Con la varianza se pueden obtener los límites del

a tener una mejor aproximación a la posición real del centro del mismo. De forma general se logró tener una aproximación aceptable en ambos

A partir de esta primera aproximación se calculan regiones de búsqueda

Page 119: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 95

6.3.5 Caso 5. Extracción de puntos característicos de los ojos

Objetivo

Extraer la posición de los puntos característicos y realizar una segunda aproximación a la posición real de los ojos.

Desarrollo

Se tiene como entrada dos imágenes que corresponden a las regiones de búsqueda obtenidas en el Caso 4. A cada imagen se le aplican los algoritmos definidos en la sección “Extracción de características” (p.58) para obtener las esquinas y el punto más alto y más bajo del objeto más grande. Estos puntos corresponden las esquinas del ojo y puntos medio de los párpados. El ajuste del contraste en la región de búsqueda es un proceso fundamental para resaltar el borde de este componente. El rango de valores utilizado en este algoritmo es: [0.9, 1.2], donde los límites se aplicaron en los videos que presentan mayor y menor iluminación respectivamente.

En la tabla 6.7 se muestran tres etapas de este proceso: regiones de búsqueda; resultado del procesamiento de las imágenes; colocación de las marcas faciales y centro del ojo en la imagen original.

Tabla 6.7: Caso de prueba 5: Extracción de puntos característicos de los ojos. Base de datos

Entrada

Resultados

Algoritmos de PDI Marcas faciales

MMI

CENIDET

Observaciones

Como se observa en la tabla anterior, la región de búsqueda de los ojos se genera durante la secuencia, es decir no siempre corresponde a la misma región. En caso de no encontrarse alguno o ambos componentes, el resto del proceso de extracción de características se aborta.

Page 120: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

96 Capítulo 6: Pruebas y resultados

En esta prueba se observa que la posición del ojo se ajustó con el centro del polígono formado por las marcas extraídas. Con esta nueva aproximación se determinan las regiones de búsqueda del resto de los componentes.

6.3.6 Caso 6. Extracción de puntos característicos de las cejas

Objetivo

Extraer la posición de los puntos característicos de las cejas.

Desarrollo

Se tiene como entrada dos imágenes correspondientes a las regiones de búsqueda. A cada imagen se le aplican los algoritmos definidos en la sección “Extracción de características” (p.61) para obtener las esquinas y el punto medio del objeto más grande, los cuales corresponden a las mismas características de las cejas.

En la tabla 6.8 tabla 6.7se muestran tres etapas de este proceso: regiones de búsqueda, resultado del procesamiento de las imágenes y colocación de marcas faciales.

Tabla 6.8: Caso de prueba 6: Extracción de puntos característicos de las cejas. Base de datos

Entrada

Resultados

Algoritmos de PDI Marcas faciales

MMI

CENIDET

Observaciones

Se obtuvo de manera correcta la posición de los puntos característicos de este componente. Las variaciones entre la posición de las marcas obtenidas y las posiciones reales son ocasionadas por el ruido existente en la región de búsqueda, el cual puede deformar la forma real del objeto en cuestión durante el procesamiento de la imagen.

De la misma manera que los procesos anteriores a este, si no se localiza alguno o ambos componentes, el resto del proceso se aborta.

Page 121: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 97

6.3.7 Caso 7. Extracción de puntos característicos de la boca

Objetivo

Extraer la posición de los puntos característicos de la boca.

Desarrollo

Se tiene como entrada la imagen correspondiente a la región de búsqueda de este componente. Esta imagen se procesa con la secuencia de algoritmos definida en la sección “Extracción de características” (p.64) para obtener las esquinas y el punto más alto y más bajo del objeto más grande. Estos puntos corresponden a las comisuras y ápices.

Dado que el tono de la región que se pretende extraer es muy similar a la región que la rodea, el primer algoritmo que se aplica sobre la región es el ajuste del contraste con el objetivo de resaltar el borde del objeto de interés. El rango de valores utilizado en este algoritmo es: [0.9, 1.3], donde los límites se aplicaron en los videos que presentan mayor y menor iluminación respectivamente.

En la tabla 6.9 se muestra el proceso de extracción de las marcas faciales, se tiene como entrada la región de búsqueda y como salida las marcas faciales sobre al imagen original.

Tabla 6.9: Caso de prueba 7: Extracción de puntos característicos de la boca. Base de datos

Entrada

Resultados

Algoritmos de PDI Marcas faciales

MMI

CENIDET

Observaciones

La imprecisión en la detección de los puntos característicos se debe principalmente a la similaridad entre el color de los labios y el fondo de la imagen. En esta prueba también se observa una diferencia entre la forma del componente obtenido (columna central) y la forma real de los labios. Este error se presenta por la iluminación que reciben los labios, lo que hace indistinguible el borde en algunas zonas o genera sombras. Éstas últimas pueden deformar el componente en cuestión durante el procesamiento de la imagen.

Page 122: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

98 Capítulo 6: Pruebas y resultados

6.3.8 Caso 8. Generación

Objetivo

Calcular un vector caracterdistancias geométricas a partir de la posición de los puntos obtenidos.

Desarrollo

Se tiene como entrada la posición componentes faciales, los cuales se calcularon con los casos anterioresse calculan de acuerdo a la descripción de cada uno de en la sección “Extracción de características” (p.

En la tabla 6.10 se muestra el resultado de esta prueba. En la columna “resultados” se observan las ventanas del sistema desarrollado donde se visualizan los vectores calculados. Finalmente texto con formato sencillo, el cual se observa en la

Tabla 6.10: Caso de prueba

Base de datos

Entrada

MMI

CENIDET

: Pruebas y resultados

Generación de vectores característicos

característico basado en FACS y otro basado en distancias geométricas a partir de la posición de los puntos característicos

Se tiene como entrada la posición x,y de los puntos característicos de los , los cuales se calcularon con los casos anteriores. Los vectores

se calculan de acuerdo a la descripción de cada uno de ellos, los cuales se describen en la sección “Extracción de características” (p.67).

se muestra el resultado de esta prueba. En la columna “resultados” se observan las ventanas del sistema desarrollado donde se visualizan los vectores calculados. Finalmente esta información se almacena en un archivo de

con formato sencillo, el cual se observa en la figura 6-4.

Caso de prueba 8: Generación de vectores de características.

Resultados

Basado en el sistema FACS

Basado en distancias geométricas

otro basado en característicos

de los puntos característicos de los Los vectores

ellos, los cuales se describen

se muestra el resultado de esta prueba. En la columna “resultados” se observan las ventanas del sistema desarrollado donde se visualizan

en un archivo de

Page 123: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 99

(a) (b)

Figura 6-4: Formato de salida de los vectores de características. (a) Variables del vector basado en distancias geométricas. (b) Variables del vector basado en FACS.

Observaciones

La secuencia de imágenes se almacenó en un archivo con formato sencillo, el cual se puede visualizar con un editor de textos como NotePad. Como se observa en la figura 6-4, el primer renglón corresponde al nombre de las variables y el resto contienen los vectores obtenidos de cada imagen, donde los valores están separados por comas. Esta información es la que se clasifica con los modelos entrenados para reconocer las expresiones generadas durante la secuencia.

6.3.9 Caso 9: Desempeño del procesamiento de videos

Objetivo

Medir el desempeño del sistema desarrollado respecto al tiempo de procesamiento de los videos.

Desarrollo

Se procesaron los primeros 150 fotogramas de diez videos de la base de datos propia, los cuales tienen una resolución de 640×480 pixeles y una velocidad de 30fps. Se consideraron todas las etapas del sistema para medir el tiempo de procesamiento. Finalmente se obtuvo el tiempo promedio por cada imagen.

En la figura 6-5 se muestra de forma gráfica el desempeño del sistema desarrollado.

Page 124: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

100 Capítulo 6: Pruebas y resultados

Figura 6-5: Desempeño del procesamiento de imágenes.

Observaciones

Se logró procesar en promedio al menos 15fps. Esto permite visualizar los resultados en tiempo real, dado que se propuso un límite de al menos ocho imágenes por segundo (125ms/imagen). Como se observa en la gráfica anterior, el tiempo que se tiene de holgura se puede utilizar para automatizar el proceso de clasificación, dado que por el momento se realiza de manera independiente al sistema.

Esta es el último caso de prueba relacionado con el sistema de visión desarrollado. Los siguientes dos casos de prueba corresponden al entrenamiento de C5.0 y una RNA además de la clasificación de imágenes y videos con estos clasificadores.

6.3.10 Caso 10: Entrenamiento de C5.0 y RNA perceptrón multicapa

Objetivo

Obtener un modelo entrenado de cada clasificador de los dos tipos de vectores característicos.

Desarrollo

Como se mencionó en la sección de “Entrenamiento” (p.71), se utilizó C5.0 y una RNA Perceptrón Multicapa para clasificar los dos tipos de vectores característicos con la herramienta de software Clementine [58]. El desarrollo se

0

20

40

60

80

100

120

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151

Tiem

po (m

s)Desempeño del procesamiento de imágenes para la extracción de catacterísticas

No. de imagen

Page 125: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 101

dividió en dos partes: el entrenamiento con vectores basados es FACS y el entrenamiento con vectores basados en distancias geométricas. En la tabla 6.11 se resume la adquisición de los patrones de entrenamiento.

Tabla 6.11: Patrones de entrenamiento. Tipo de vector

característico

Clasificador

C5.0 RNA

FACS Combinaciones de AU’s que caracterizan a las expresiones faciales, las cuales están definidas en el sistema FACS. En la sección 4.4.5.2 (p.69) se muestra el conjunto de AU’s utilizadas.

Distancias geométricas

Vectores característicos obtenidos a partir de imágenes representativas de cada expresión facial. Las imágenes corresponden a las bases de datos utilizadas y la extracción de estos patrones se realizó con el sistema desarrollado.

Observaciones

Se obtuvieron cuatro modelos entrenados: C5.0 y RNA por cada tipo de vector característico. En la tabla 6.12 y tabla 6.13 se resumen las características del entrenamiento con C5.0 y RNA respectivamente.

Tabla 6.12: Modelos obtenidos del entrenamiento con C5.0. Tipo de vector

característico

Profundidad máxima de los árboles

No. de entradas

Variables seleccionadas

Salida

FACS 2 6/13 AU12 AU15 AU20 AU26 AU23 AU2

34 reglas (agrupadas en 7 conjuntos)

Distancias geométricas

2 13/14 P13 (CC) P17 l4 (GC) P12 (DB) P6 (HGF) P15 (FC) P9 (l6 GI) P4 (l8 GK) P2 (FJ) P5 (HFI) P14 (FC) P10 (|FC -FC|) P3 (JJ) P1 (FHJ)

302 reglas (agrupadas en 15 conjuntos)

Page 126: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

102 Capítulo 6: Pruebas y resultados

Tabla 6.13: Modelos obtenidos del entrenamiento con RNA Perceptrón Multicapa. Tipo de vector

característico

Neuronas de capa de entrada

No. de capas ocultas Importancia relativa de las

entradas Neuronas de capa

de salida

FACS 13 1 (11 neuronas) AU20 0.132256 AU2 0.120073

AU12 0.113869

AU27 0.111311

AU26 0.111311 AU15 0.109565

AU24 0.0884922

AU23 0.0884922

AU1 0.0881739 AU7 0.088037

AU5 0.0873363

AU16 0.0770383

AU4 0.0657837

6 (expresiones)

Distancias geométricas

14 1 (20 neuronas) P12 (DB) 0.406237 P13 (CC) 0.330478 P5 (HFI) 0.327572 P4 (l8GK) 0.322442 P17 l4(GC) 0.321026 P15 (FC) 0.254683 P6 (HGF) 0.246959 P10(|FC-FC|) 0.244896 P2 (FJ) 0.241129 P9 (l6GI) 0.225375 P8 (GI) 0.219566 P3 (JJ) 0.197114 P1 (FHJ) 0.176963 P14 (FC) 0.130783

6 (expresiones)

Con el análisis de la información mostrada en las tablas anteriores se hicieron las siguientes observaciones.

Del entrenamiento con C5.0:

• En el caso de vectores basados en FACS, la mayoría de las variables no fueron consideradas para la generación del modelo.

• En el caso de vectores basados en distancias geométricas, se consideró casi el total de las variables.

• El modelo obtenido con las distancias geométricas aparenta mayor efectividad en el reconocimiento de nuevos casos dado el conjunto de reglas generadas, respecto a las obtenidas con FACS.

Page 127: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 103

Del entrenamiento con RNA:

• En el modelo obtenido se muestra la importancia relativa de las variables de entrada durante el entrenamiento. El rango de valores está entre 0 (variable que no tiene efecto en la predicción) y 1 (variable que determina completamente la predicción).

• En el caso de FACS la importancia de las variables se centra en 6 de las 13 entradas.

• En el caso de distancias geométricas la distribución se mantiene más uniforme entre las 14 variables de entrada.

6.3.11 Caso 11: Clasificación de secuencias de imágenes

Objetivo

Identificar la expresión representativa en los videos analizados.

Desarrollo

Para esta prueba se utilizaron 50 videos, los cuales están distribuidos uniformemente en las cinco expresiones a reconocer dadas sus características visuales. De estos videos se procesó un rango que incluye el estado neutral y la expresión a reconocer. Dadas las características de velocidad que tienen los videos (25fps y 30 fps), solo se procesaron 40 imágenes de la base de datos MMI y 100 imágenes de los videos de la base de datos propia para comparar los resultados. Con el sistema implementado se obtuvo el vector característico de las imágenes incluidas en estos rangos, los cuales se clasificaron con los modelos obtenidos en la etapa de entrenamiento.

En la figura 6-6 se muestra un ejemplo de la señal que se obtiene con los clasificadores, donde el eje x representa el número de imagen y el eje y su clase correspondiente. En la misma figura se observa que las primeras dos terceras partes de la señal corresponden a la transición hacia la expresión real. De esta manera se contabilizaron las ocurrencias de cada expresión en el último tercio para clasificar el video. Finalmente la expresión con mayor frecuencia se compara con la expresión real de video para determinar su acierto.

Page 128: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

104 Capítulo 6: Pruebas y resultados

No. frame

Sorpresa

Alegría

Enojo

Miedo

Tristeza

Neutral

Figura 6-6: Señal de salida del clasificador.

A continuación se presenta la matriz de confusión y los comentarios de los resultados obtenidos con cada clasificador.

Tabla 6.14: Matriz de confusión de FACS con C5.0.

Alegría Enojo Miedo Sorpresa Tristeza Neutral % Total

Alegría

1 0 0 0 0 9 10% Enojo

0 3 0 0 6 30% Miedo

1 1 0 1 0 7 0% Sorpresa

1 0 0 0 0 9 0% Tristeza

1 1 0 0 0 8 0%

8%

En la tabla 6.14 se muestra la distribución de la clasificación de vectores basados en el sistema FACS con C5.0. La efectividad total del reconocimiento es del 8%, esto es atribuido a las siguientes conclusiones:

• Como se observa en la tabla 4.5 (p.70) para definir la presencia de AU’s existen criterios de igualdad en el valor de parámetros entre distintas imágenes, es decir un parámetro debe tener el mismo valor en el estado neutral y cualquier otra imagen del video. Esto no siempre es posible de conseguir durante la secuencia de imágenes debido a las condiciones que afectan la detección del mismo, por ejemplo: la iluminación y el movimiento. Finalmente se tiene un alto índice de ausencia de AU’s por este tipo de condiciones.

• C5.0 seleccionó menos de la mitad de las variables para realizar el reconocimiento, esto se puede observar en la tabla 6.12 (p.101).

• Con dos los puntos anteriores se determina que la falta de información de este modelo origina la clasificación incorrecta de las imágenes. Como se observa en la tabla 6.14 los videos no se clasificaron en otras expresiones,

Page 129: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 105

sino que simplemente no hubo suficiente información para clasificarlas en alguna de ellas y se etiquetaron como posición neutral.

• En el Anexo B se presenta el conjunto de reglas generadas por C5.0, donde se observa que son mínimas las reglas que se evalúan para clasificar una imagen como estado neutral.

En la tabla 6.15 se presenta la matriz de confusión de la clasificación de FACS con la RNA. Con este clasificador se obtuvo el 60% de aciertos.

Tabla 6.15: Matriz de confusión de FACS con RNA.

Alegría Enojo Miedo Sorpresa Tristeza Neutral % Total

Alegría

10 0 0 0 0 0 100% Enojo

5 5 0 0 0 0 50% Miedo

5 1 4 0 0 0 40% Sorpresa

2 0 1 7 0 0 70% Tristeza

6 0 0 0 4 0 40%

60%

Las observaciones en la clasificación de este modelo son las siguientes:

• El movimiento de la boca se presenta en la mayoría de las expresiones con una intensidad discreta. El mínimo movimiento de este componente genera la presencia de algunas AU’s que están ampliamente relacionadas con la expresión alegría.

• En los videos se presentan casos donde hay una alta confusión visual entre las expresiones de miedo y alegría, dado que en ambos casos se abre la boca y las cejas se elevan.

• Los videos se clasificaron en alguna de las expresiones, dado que este modelo considera la mayoría de las variables para realizar la predicción (ver tabla 6.13, p. 102).

• Con este modelo se obtuvo un mejor desempeño comparado con C5.0, considerando que en ambos casos se utilizó la misma información para clasificar.

La tabla 6.16 y tabla 6.17 muestran los resultados obtenidos en la clasificación de vectores basados en distancias geométricas con C5.0 y RNA respectivamente. La efectividad alcanzada con C5.0 fue del 90% y 88% con la RNA.

Page 130: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

106 Capítulo 6: Pruebas y resultados

Tabla 6.16: Matriz de confusión de distancias geométricas con C5.0.

Alegría Enojo Miedo Sorpresa Tristeza Neutral % Total

Alegría

10 0 0 0 0 0 100% Enojo

0 9 0 0 0 1 90% Miedo

0 0 7 0 1 2 70% Sorpresa

0 0 0 9 0 1 90% Tristeza

0 0 0 0 10 0 100%

90%

Tabla 6.17: Matriz de confusión de distancias geométricas con RNA.

Alegría Enojo Miedo Sorpresa Tristeza Neutral % Total

Alegría

9 0 0 0 0 1 90% Enojo

0 9 0 0 1 0 90% Miedo

0 0 8 0 1 1 80% Sorpresa

0 0 0 10 0 0 100% Tristeza

0 1 0 1 8 0 80%

88%

El desempeño de ambos clasificadores fue similar. El alto porcentaje de aciertos con este tipo de vector característico se debió principalmente a que los patrones utilizados en el entrenamiento corresponden a imágenes de las mismas bases datos, no exactamente de las mismas personas, pero sí bajo condiciones similares. Además, el valor de los parámetros del vector se obtiene directamente de la posición de las marcas faciales sin ser evaluados con alguna función, como ocurre con FACS. Los errores presentados en ambos casos se refieren a la intensidad con que las personas generan sus emociones.

6.3.12 Caso 12: Variación de características faciales por expresión

Objetivo

Analizar las variaciones de las características faciales obtenidas con el sistema de visión artificial desarrollado para cada expresión.

Desarrollo

Se analizó el conjunto de patrones utilizado durante el entrenamiento calculando la media y la desviación estándar de cada parámetro que forma el vector característico, el cual está basado en un conjunto de distancias geométricas entre marcas faciales. Ambos datos estadísticos permiten visualizar la dispersión de las características faciales obtenidas a partir de la generación de las expresiones de los participantes.

Page 131: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 107

Como se mencionó en la sección 4.4.5.1 (p.67) el vector utilizado está formado por 14 parámetros, de los cuales cuatro corresponden a la caracterización de las cejas, cuatro a los ojos y seis a la boca. En la figura 4-26 (p.68) se muestra de forma gráfica el vector de características utilizado. Es necesario recordar que cada parámetro es dividido por la distancia inter-pupilar para normalizar los valores, dado que escala de la cara no siempre es igual en las imágenes.

En la figura 6-7 se muestran los resultados obtenidos de esta prueba, la cual consta de seis gráficas correspondientes a las expresiones faciales. En cada gráfica el eje x representa a los parámetros del vector de características y el eje y a la media y desviación estándar en unidades respecto a la distancia inter-pupilar.

Observaciones

Como se observa en las gráficas de la figura 6-7, los parámetros que tienen una pequeña desviación estándar indican que la característica facial a la cual representan, se generó de forma muy similar por todos los participantes. En este mismo sentido, los parámetros que muestran una amplia desviación estándar indican que las características faciales se generaron de forma muy variada entre los participantes.

La desviación estándar de las características faciales indica que los participantes tienen diferentes formas de expresar sus emociones. Por ejemplo para algunas personas la expresión de enojo está principalmente representada por el movimiento de la boca, mientras que para otras lo está por el movimiento de las cejas.

Page 132: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

108 Capítulo 6: Pruebas y resultados

Figura 6-7: Media y desviación estándar de los parámetros característicos respecto a la distancia inter-pupilar, por expresión facial.

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Unidades

No. de característica

Neutral

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Unidades

No. de característica

Alegría

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Unidades

No. de característica

Enojo

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Unidades

No. de característica

Miedo

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Unidades

No. de característica

Sorpresa

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

1 2 3 4 5 6 7 8 9 10 11 12 13 14

Unidades

No. de característica

Tristeza

Page 133: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 6: Pruebas y resultados 109

6.4 Comentarios

En este capítulo se han descrito los casos de prueba a los cuales se sometió el sistema de visión desarrollado, así como las etapas de entrenamiento y clasificación tanto de imágenes como videos con la herramienta de software Clementine.

Se presentaron casos positivos en la localización de los componentes faciales dado que al ser un proceso secuencial y automático, cuando falla alguno de los módulos el resto del proceso se aborta.

Durante las pruebas experimentales no se logró obtener un valor general en el ajuste del contraste para resaltar el borde de los componentes faciales, principalmente por el amplio rango de iluminación que se presenta en los videos. Para probar la solución propuesta en estos videos se modificó el sistema desarrollado, de tal manera que permita ajustar este parámetro en tiempo de ejecución.

A pesar de que inicialmente no se pretendía lograr el procesamiento en tiempo real, se le dio gran importancia a este suceso para extender el actual sistema de visión en trabajos futuros. Finalmente se alcanzó un buen desempeño en el procesamiento de videos cuya resolución fue de 640 ×480 pixeles.

Los métodos utilizados para clasificar las imágenes basándose en el sistema FACS presentaron resultados deficientes. Con el análisis del entrenamiento y de la clasificación misma se concluyó que lo anterior se debió principalmente por la forma en que se determinó la presencia de AU’s.

Se alcanzó un efectividad del 90% en el reconocimiento de las expresiones faciales utilizando C5.0. Este índice se logró al caracterizar las imágenes con un conjunto de distancias geométricas entre las marcas faciales utilizadas.

Page 134: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 135: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

111

7777 ConclusionesConclusionesConclusionesConclusiones

Capítulo 7

Conclusiones

En este capítulo se presentan los objetivos alcanzados, aportaciones, trabajos futuros y las conclusiones finales del presente trabajo.

7.1 Objetivos alcanzados

A continuación se presenta el objetivo general de esta tesis, el cual se presentó al inicio de la investigación y su cumplimiento se mostró en las secciones de desarrollo de la metodología propuesta y de pruebas y resultados:

“Analizar, diseñar e implementar un sistema de visión por computadora que realice el seguimiento y caracterización de al menos tres componentes del rostro (ojos, cejas y boca en conjunto) para el reconocimiento de las principales expresiones faciales existentes (alegría, tristeza, enojo, miedo, sorpresa y neutral) en secuencias de imágenes.”

El objetivo general se cumplió en su totalidad al presentar pruebas de reconocimiento de las expresiones faciales antes mencionadas con base en un conjunto de características de los componentes faciales bajo estudio. Estas características se basan en distancias geométricas entre algunos puntos o marcas de los componentes faciales.

Page 136: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

112 Capítulo 7: Conclusiones

El sistema de visión artificial desarrollado tiene como entrada una secuencia de imágenes que contienen un solo rostro, sobre el cual se realiza la localización automática de los componentes faciales mediante algoritmos de procesamiento digital de imágenes. La salida de este sistema es un archivo de texto en formato sencillo que contiene la caracterización de las imágenes de acuerdo al diseño de algún vector característico y a las unidades de acción facial (AU’s) presentes en cada imagen. La información contenida en este archivo se procesa por los clasificadores entrenados con el software Clementine, el cual clasifica cada imagen en alguna de las clases correspondientes a las expresiones faciales del dominio de trabajo.

Los detalles de los objetivos específicos alcanzados se explican en la tabla 7.1.

Tabla 7.1: Resultados de los objetivos específicos Objetivo Comentarios

Localizar de manera automática el rostro y la posición de los componentes de trabajo (ojos, cejas y boca).

El sistema de visión desarrollado procesa los videos de forma automática.

El operador de la aplicación puede ajustar parámetros para obtener mejores resultados en la localización. Estos movimientos se realizan desde la interfaz gráfica en tiempo de ejecución (ver capítulo 5, p.75).

Realizar el seguimiento de los elementos de trabajo frente a cambios de traslación y rotación de la cabeza y cambios de iluminación en el escenario

Para probar el funcionamiento del sistema desarrollado ante estos cambios, se procesaron videos de la base de datos MMI [45] y de un banco de videos creado, en los cuales se incluyen distintas condiciones del escenario (fondo e iluminación) y movimientos naturales de la cabeza durante la generación de expresiones. Además se incluyeron distintas razas de personas y tonos de piel (ver capítulo de pruebas y resultados, p.85).

Analizar las variaciones de los componentes faciales bajo estudio en forma y tamaño.

En el caso de prueba #12 (p.106) se presenta un análisis de la variación de las características faciales utilizadas. Este análisis se realizó de los patrones utilizados durante el entrenamiento, dado que son las imágenes representativas de cada expresión facial.

Las distintas formas de expresar las emociones por parte de los participantes se refleja en este caso de prueba.

Estudio del sistema de codificación de acciones faciales (FACS) propuesto por Paul Ekman [1], para el reconocimiento de expresiones faciales.

Se estudió este sistema como una forma de reconocer expresiones faciales. En la sección 4.4.5 (p.67) se describe la forma en que se calcula un vector característico basado en el sistema FACS.

Los resultados obtenidos con este tipo de caracterización se muestran en el caso de prueba #11 (p.103).

Page 137: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Capítulo 7: Conclusiones 113

7.2 Aportaciones

La principal aportación de esta tesis es el desarrollo de un sistema de visión artificial capaz de localizar automáticamente un conjunto de puntos característicos enfocado al reconocimiento de las expresiones faciales básicas: alegría, enojo, miedo, sorpresa y tristeza.

Esta aplicación tiene la característica de poder ser configurada en tiempo de ejecución, lo cual permite realizar pruebas durante la reproducción de videos o señal de una cámara web.

Con la metodología implementada se logró procesar videos cuyo contenido incluye distintas condiciones en el escenario (p.ej. fondo contrastante con y sin movimiento), razas de personas y tonos de piel.

A continuación se mencionan otras aportaciones de acuerdo al desarrollo de esta tesis:

• Se estudiaron las técnicas utilizadas en el estado del arte para el reconocimiento automático de expresiones faciales.

• Se creó un banco de videos para el reconocimiento de las expresiones faciales básicas.

• Se desarrollo de un sistema de visión artificial capaz de localizar automáticamente un conjunto de puntos característicos enfocado al reconocimiento de las expresiones faciales básicas: alegría, enojo, miedo, sorpresa y tristeza.

• La interfaz gráfica del sistema de visión desarrollado es configurable en tiempo de ejecución con las siguientes características:

o Puede procesar la señal de una cámara Web. o El procesamiento de videos y cámara Web se realiza en tiempo real

(al menos 15 cuadros por segundo) en una PC convencional. o Permite diseñar vectores característicos. o Permite configurar parámetros de los principales algoritmos de PDI.

7.3 Trabajos futuros

Durante el desarrollo de este proyecto se detectaron algunos puntos de interés que son parte de los trabajos futuros para extender y mejorar el actual sistema desarrollado.

Page 138: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

114 Capítulo 7: Conclusiones

• Realizar el seguimiento de la cara ante la presencia de más de un rostro en la imagen.

• Localizar los componentes faciales sin necesidad de normalizar la orientación de la cara.

• Implementar metodologías robustas ante los movimientos repentinos de la cara y altos cambios de iluminación para extraer la forma exacta de los componentes faciales.

• Automatizar el ajuste de parámetros de los algoritmos de PDI según las condiciones que presente la señal en proceso.

• Implementar o proponer otra técnica que determine la presencia de AU’s para la caracterización de expresiones faciales con el sistema FACS.

• Automatizar el proceso de clasificación de imágenes y videos.

• Reconocer las expresiones basándose en la predicción con base en el comportamiento de los participantes.

7.4 Conclusiones

Se diseñó y desarrolló una metodología para el reconocimiento automático de expresiones faciales en video. En esta metodología se incluyen procesos desde la adquisición de imágenes de algún dispositivo (archivo o señal de cámara web) hasta su clasificación en alguna expresión.

En el desarrollo de la metodología propuesta se incluyeron los objetivos y alcances planteados. Además se alcanzaron otros objetivos no propuestos inicialmente (p. ej. procesar videos en tiempo real), sin embargo se le dedicó tiempo para lograrlos debido a su importancia en este tema.

Con los resultados mostrados en el capítulo de pruebas y resultados (p.85) se demuestra la efectividad del sistema desarrollado respecto al desempeño en el procesamiento de videos y la extracción de características con las bases de datos utilizadas, de las cuales una ha sido ampliamente utilizada en el estado del arte. La efectividad en el reconocimiento de las expresiones faciales con la herramienta de software Clementine permite ver que al menos dos de los métodos de clasificación utilizados fueron eficientes.

Page 139: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

115

Referencias

[1] P. Ekman and W. Friesen, Facial Action Coding System.: Consulting Psychologists Press, 1978.

[2] B. Fasel and J. Luettin, "Automatic Facial Expression Analysis: A Survey," Pattern Recognition, vol. 36, no. 1, pp. 259-275, 2003.

[3] M. Pantic and L. Rothkrantz, "Automatic Analysis of Facial Expressions: the State of the Art," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 22, no. 12, pp. 1424-1445, December 2000.

[4] A. Kapoor and R. Picard, "A Real-time Head Nod and Shake Detector," in Proceedings from the Workshop on Perspective User Interfaces, Orlando, USA, 2001, pp. 1-5.

[5] Y. Zhang and J. Qiang, "Facial Expression Understanding in Image Sequences Using Dynamic and Active Visual Information Fusion," in International Conference on Computer Vision (ICCV-03), Nice, France, 2003, pp. 1297-1304.

[6] Open Computer Vision Library. [Online]. http://sourceforge.net/projects/opencvlibrary/

[7] P. Viola and M. Jones, "Rapid Object Detection using a Boosted Cascade of Simple Features," in IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'01), vol. 1, 2001, pp. 511-518.

[8] G. Bradski and A. Kaehler, Learning OpenCV, First Edition ed., Mike Loukides, Ed. USA: O’Reilly Media, 2008.

[9] M. Pantic and L. J. M. Rothkrantz, "Facial gesture recognition in face image sequences: A study on facial gestures typical for speech articulation," in IEEE International Conference on Systems, Man and Cybernetics, (SMC '02), vol. 6, Tunisia, 2002.

[10] R-L Hsu, M. Abdel-Mottaleb, and A.K. Jain, "Face detection in color images," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24, no. 5, pp. 696-706, May 2002.

[11] J. Kovac, P. Peer, and F. Solina, "Human skin color clustering for face detection," EUROCON 2003. Computer as a Tool, vol. 2, pp. 144-148, Sept. 2003.

Page 140: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

116 Referencias

[12] L. Morán and Pinto R., "Automatic Extraction Of The Lips Shape Via Statistical Lips Modelling and Chromatic Feature," in Electronics, Robotics and Automotive Mechanics Conference (CERMA 2007), Cuernavaca, México, 2007, pp. 241-246.

[13] G. García, A. Ruiz, and E. Lopez-de-Teruel, "Face Detection Using Integral Projection Models," in Joint IAPR International Workshops On S+SSPR'2002, Windsor, Canada, 2002, pp. 644-653.

[14] X. Weimin, "Facial Expression Recognition Base on Gabor Filter and SVM," Chinese Journal of Electronics, vol. 15, no. 4A, pp. 809-812, 2006.

[15] M.S. Escudero et al., Detecting faces and recognizing facial features using color segmentation and 2DPCA in the normalized RG space. Dubrovnik, Croatia, 2005, vol. 2.

[16] J. Whitehill and C.W. Omlin, "Haar Features for FACS AU Recognition," in 7th International Conference on Automatic Face and Gesture Recognition, FGR 2006, Southampton, UK, 2006, pp. 97-101.

[17] A. Saxena, A. Anand, and A. Mukherjee, "Robust Facial Expression Recognition Using Spatially Localized Geometric Model," in International Conference on Systemics, Cybernetics and Informatics, vol. 1, Hyderabad, India, 2004, pp. 124-129.

[18] A. S. Sohail and P. Bhattacharya, "Detection of Facial Feature Points Using Anthropometric Face Model," in IEEE International Conference on Signal-Image Technology and Internet-Based Systems, Hammamet, Tunisia, 2006.

[19] J. P. Batista, "Locating Facial Features Using an Anthropometric Face Model for Determining the Gaze of Faces in Image Sequences," in International Conference on Image Analysis and Recognition, ICIAR07, Montreal, Canada, 2007.

[20] Y. Saatci and C. Town, "Cascaded Classification of Gender and Facial Expression using Active," in Proceedings of the 7th International Conference on Automatic Face and Gesture Recognition, Southampton, UK, 2006, pp. 393-400.

[21] C. Martin, U. Werner, and M. Gross, "A Real-time Facial Expression Recognition System based on Active Appearance Models using Gray Images and Edge Images," in 8th IEEE International Conference on Automatic Face & Gesture Recognition, 2008. FG '08, Amsterdam, 2008, pp. 1-6.

[22] J. Luettin, N. A. Thacker, and S. W. Beet, "Visual Speech Recognition Using Active Shape Model and Hidden Markov Models," in IEEE International Conference on Acoustics, Speech, and Signal Processing, 1996. ICASSP-96, vol. 2, Atlanta, USA, 1996, pp. 817-820.

[23] Y-L. Tian, T. Kanade, and J. F. Cohn, "Recognizing Action Units for Facial Expression Analysis," vol. 23, no. 2, pp. 97-115, Feb. 2001.

[24] J.-Y. Bouguet, "Pyramidal Implementation of the Lucas Kanade Feature Tracker —. Description of the algorithm," Intel Corporation — Microprocessor Research Labs, 1999.

Page 141: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Referencias 117

[25] F. Bourel, C. Chibelushi, and A. Low, "Robust facial feature tracking," in Proc. 11th British Machine Vision Conference, vol. 1, Bristol, UK, 2000, pp. 232-241.

[26] K. Sobottka and I. Pitas, "Looking for Faces and Facial Features in Color Images," in Pattern Recognition and Image Analysis: Advances in Mathematical Theory and Applications, Valday, Russia, 1997, pp. 124-137.

[27] I.-O. Stathopoulou and G.A. Tsihrintzis, "An Accurate Method for Eye Detection and Feature Extraction in Face Color Images, Systems, and Image Processing," in 13th International Conference on Signals, Budapest, Hungary, 2006, pp. 21-23.

[28] M. M., Forsyth, D. A. Fleck and C. Bregler, "Finding Naked People," in European Conference on Computer Vision, vol. 2, 1996, pp. 592-602.

[29] N. Otsu, "A Threshold Selection Method from Gray-Level Histograms," IEEE Transactions on Systems, Man and Cybernetics, vol. 9, no. 1, pp. 62-66, Jan 1979.

[30] Ye-Peng Guan, "Automatic extraction of lip based on wavelet edge detection," in Eighth International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC'06), 2006, pp. 125-132.

[31] I. Arsic, R. Vilagut, and J.-P. Thiran, "Automatic Extraction of Geometric Lip Features with Application to Multi-Modal," in Proc. of the IEEE International Conference on Multimedia and Expo (ICME) 2006, Toronto, Canada, 2006, pp. 161-164.

[32] Y. Wang, H. Ai, B. Wu, and C. Huang, "Real Time Facial Expression Recognition with Adaboost," in 17th International Conference on Pattern Recognition (ICPR'04), vol. 3, Cambridge, UK, Aug. 2004, pp. 926-929.

[33] I. Kotsia and I. Pitas, "Real Time Facial Expression Recognition from Image Sequences using Support Vector Machines," in IEEE International Conference on Image Processing, (ICIP 2005), Genova, Italy, 2005, pp. 966-969.

[34] N. Sebe et al., "Authentic Facial Expression Analysis," in 6th IEEE International Conference on Automatic Face and Gesture Recognition, Seoul, Korea, 2004, pp. 517-522.

[35] T. Kanade, J.F. Cohn, and Y. Tian, "Comprehensive database for facial expression analysis," in Fourth IEEE International Conference on Automatic Face and Gesture Recognition, Grenoble, France, 2000, pp. 46-53.

[36] G. Donato, M. Stewart, J. C. Hager, P. Ekman, and T. Sejnowski, "Classifying Facial Actions," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 21, no. 10, pp. 974-989, Oct 1999.

[37] M. Pantic and L. J. M. Rothkrantz, "Expert System for Automatic Analysis of Facial Expressions," Image and Vision Computing, vol. 18, pp. 881-905, 2000.

[38] S. Z. Li and A. K. Jain, Handbook of Face Recognition.: Springer Science+Business Media, Inc., 2005.

[39] M. Pantic, M. Valstar, R. Rademaker, and L. Maat, "Web-Based Database for

Page 142: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

118 Referencias

Facial Expression Recognition," in IEEE International Conference on Multimedia and Expo, 2005.

[40] T. Kanade, J. F. Cohn, and Y. Tian, "Comprehensive database for facial expression analysis," in Proc. IEEE FGR, 2000, pp. 46-53.

[41] Psychological Image Collection at Stirling, (PICS). [Online]. http://pics.psych.stir.ac.uk

[42] The Japanese Female Facial Expression (JAFFE) Database. [Online]. www.mic.atr.co.jp/~mlyons/jaffe.html

[43] AR. [Online]. http://rvl1.ecn.purdue.edu/~aleix/aleix_face_DB.html

[44] CMU Pose, Illumination, and Expression (PIE) Database. [Online]. http://www.ri.cmu.edu/projects/project_418.html

[45] The MMI Facial Expression Database. [Online]. www.mmifacedb.com

[46] F. Wallhoff. (2006) FG-NET: Facial Expressions and Emotion Database. [Online]. http://www.mmk.ei.tum.de/~waf/fgnet/feedtum.html

[47] G. Pajares and de la Cruz J.M., Imágenes Digitales, Procesamiento práctico con Java. México: Alfaomega, 2004.

[48] Salvador Pozo. (2002) Programación en Windows. Estructura BITMAP. [Online]. http://winapi.conclase.net/curso/index.php?est=BITMAP

[49] G. Pajares and J.M. de la Cruz, Visión por computador. México: Alfaomega, 2002.

[50] P. Kakumanu, S. Makrogiannis, and N. Bourbakis, "A survey of skin-color modeling and detection methods," Pattern Recognition, vol. 40, no. 3, pp. 1103-1122, 2007.

[51] A. De la Escalera, Visión por Computador, Fundamentos y Métodos. Madrid, España: Prentice Hall, 2001.

[52] Gregory Baxes, Digital Image Processing, Principles and Applications. Littleton, USA: Image Ware Systems Group, 1994.

[53] D.T. Pham and R. J. Alcock, Smart Inspection Systems. Techniques and Applications of Intelligent Vision. UK: Academic Press, 2003.

[54] L. Schapiro and G. Stockman, Computer Vision., 2000.

[55] Ginés García, "Procesamiento de Caras Humanas Mediante Integrales Proyectivas," Universidad de Murcia, Murcia, España, Tesis doctoral 2007.

[56] P. Ekman, W. Friesen, and J. Hager, Facial Action Coding System, The Manual. USA: Research Nexus division of Network Information Research Corporation, 2002.

[57] RuleQuest Research. (2009, Jan) RuleQuest Research Data Mining Tools. [Online]. http://www.rulequest.com/

[58] SPSS Inc. (2009) Clementine Modeler. [Online]. http://www.spss.com/clementine/

[59] C. E. Russell and R. W. Dobbins, Neural Network PC Tools: A practical Guide. San Diego, USA: Academic Press Inc., 1990.

Page 143: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Referencias 119

[60] P.-T. Pham-Ngoc, T. Kim, and K.-H. Jo, "Robust Human Face Detection for Moving Pictures Based on Cascade-Typed Hybrid Classifier," in 3rd. International Conference on Intelligent Computing, ICIC, Qingdao, China, 2007, pp. 1110-1119.

[61] N. A. Rahman, K. C. Wei, and J. See, "RGB-H-CbCr Skin Colour Model for Human Face Detection," in Proceedings of The MMU International Symposium on Information & Communications Technologies, M2USIC, Kuala Lumpur, Malasya, 2006.

[62] R.C. González and R.E. Woods, Digital Image Processing, 2nd ed.: Prentice Hall, 2002.

[63] G.C. Feng and P. C. Yuen, "Variance projection function and its application to eye detection for human face recognition.," in Pattern Recognition Letters, Amsterdam, PAYS-BAS, 1998, pp. 899-906.

[64] K. Sobottka and I. Pitas, "A Fully Automatic Approach to Facial Feature Detection and Tracking," in Audio Visual Biometric Person Authentication AVBPA 07, Crans-Montana, Switzerland, 1997, pp. 77-84.

[65] Z.-H. Zhou and X. Geng, "Projection functions for eye detection," in Pattern Recognition 2004, 2004, pp. 1049-1056.

[66] Mathworks. (2009) MATLAB and Simulink for Technical Computing. [Online]. http://www.mathworks.com/support/solutions/en/data/1-1ASCU/?solution=1-1ASCU

[67] Codeproject. (2009) Manipulating colors in.NET. [Online]. http://www.codeproject.com/KB/recipes/colorspace1.aspx#xyz

[68] H.J. Trussell, E. Saber, and M. Vrhel, "Color Image Processing [Basics and Special Issue Overview]," IEEE Signal Processing Magazine, vol. 22, no. 1, pp. 14-22, January 2005.

[69] Embarcadero Technologies. (2009, January) Rapid Application Development | C++ Builder from Embarcadero. [Online]. http://www.embarcadero.com/products/cbuilder

[70] C. Tomasi and T. Kanade, "Detection and Tracking of Point Features," Carnegie Mellon University, Technical Report 1991.

Page 144: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para
Page 145: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

121

Anexos

A. Detección de piel.

B. Entrenamiento con C5.0

Page 146: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

122 Anexos

A. Detección de piel

A1. Estrategias de detección de piel utilizadas en el estado del arte [

etección de piel

A1. Estrategias de detección de piel utilizadas en el [50].

A1. Estrategias de detección de piel utilizadas en el

Page 147: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

Anexos 123

B. Entrenamiento con C5.0

B1. Reglas generadas por C5.0 para el reconocimiento de expresiones con base en FACS

Ruleset 1: 5 rule(s), estimated accuracy 95.2% [boost 100%] Rules for Alegría - contains 1 rule(s) Rules for Enojo - contains 1 rule(s) Rules for Miedo - contains 1 rule(s) Rules for Sorpresa - contains 1 rule(s) Rules for Tristeza - contains 1 rule(s) Default: Miedo Ruleset 2: 4 rule(s), estimated accuracy 81% [boost 100%] Rules for Miedo - contains 1 rule(s) Rules for Neutral - contains 1 rule(s) Rule 1 for Neutral if AU15 <= 0 and AU20 <= 0 then Neutral

Rules for Sorpresa - contains 1 rule(s) Rules for Tristeza - contains 1 rule(s) Default: Miedo Ruleset 3: 5 rule(s), estimated accuracy 85.7% [boost 100%] Rules for Alegría - contains 1 rule(s) Rules for Enojo - contains 1 rule(s) Rules for Miedo - contains 1 rule(s) Rules for Neutral - contains 1 rule(s) Rule 1 for Neutral if AU12 <= 0 and AU15 <= 0 and AU20 <= 0 and AU23 <= 0 then Neutral

Rules for Tristeza - contains 1 rule(s) Default: Miedo Ruleset 4: 5 rule(s), estimated accuracy 95.2% [boost 100%] Rules for Alegría - contains 1 rule(s) Rules for Enojo - contains 1 rule(s) Rules for Miedo - contains 1 rule(s) Rules for Sorpresa - contains 1 rule(s) Rules for Tristeza - contains 1 rule(s) Default: Miedo

Page 148: Tesis Daniel A Paredes Soto [11 dic 2009]x - CENIDET · 2020. 7. 7. · Daniel Alonso Paredes Soto Ing. en Sistemas Computacionales por el I. T. de Chihuahua II como requisito para

124 Anexos

Ruleset 5: 5 rule(s), estimated accuracy 81% [boost 100%] Rules for Alegría - contains 1 rule(s) Rules for Enojo - contains 1 rule(s) Rules for Miedo - contains 1 rule(s) Rules for Neutral - contains 1 rule(s) Rule 1 for Neutral if AU20 <= 0 and AU26 <= 0 then Neutral

Rules for Sorpresa - contains 1 rule(s) Default: Miedo Ruleset 6: 4 rule(s), estimated accuracy 81% [boost 100%] Rules for Miedo - contains 1 rule(s) Rules for Neutral - contains 1 rule(s) Rule 1 for Neutral if AU15 <= 0 and AU20 <= 0 and AU26 <= 0 then Neutral Rules for Sorpresa - contains 1 rule(s) Rules for Tristeza - contains 1 rule(s) Default: Miedo Ruleset 7: 6 rule(s), estimated accuracy 100% [boost 100%] Rules for Alegría - contains 1 rule(s) Rules for Enojo - contains 1 rule(s) Rules for Miedo - contains 1 rule(s) Rules for Neutral - contains 1 rule(s) Rule 1 for Neutral if AU12 <= 0 and AU15 <= 0 and AU20 <= 0 and AU23 <= 0 and AU26 <= 0 then Neutral

Rules for Sorpresa - contains 1 rule(s) Rules for Tristeza - contains 1 rule(s) Default: Miedo