Taller TopTamaulipas 2017
Gu´ıa de usuario de la interfaz gr´
afica para el reconocimiento de rostros
Desarrollado por: Dr. Wilfrido G´omez Flores CINVESTAV Unidad Tamaulipas
1
Preliminares
El sistema de reconocimiento de rostros est´a implementado en el lenguaje MATLAB versi´on 2014a, aunque puede funcionar con versiones posteriores. Este sistema fue probado en los sistemas operativos Windows 7 y Mac OS X. Los c´odigos fuente de MATLAB y la base de datos de fotograf´ıas de rostros (ORL database) se deben descargar de http://www. tamps.cinvestav.mx/˜wgomez/toptamps2017.html.
2
Descripci´
on de archivos
El archivo programa.zip contiene los c´odigos fuente de MATLAB para el funcionamiento del sistema de reconocimiento de rostros. Al descomprimir el archivo zip, se extraer´an las siguientes carpetas y archivos:
• Carpetas:
– funciones: contiene siete funciones de MATLAB, las cuales implementan los algoritmos para el reconocimiento de rostros:
1. extract data.p, genera un espacio de caracter´ısticas a partir de las im´agenes de rostros de entrenamiento.
2. reduce dim.p, implementa la reducci´on de dimensionalidad usando los m´etodos PCA y LDA.
3. face models.p, genera los modelos de referencia de rostros de entrenamiento. 4. image2vector.p, convierte una imagen de tama˜no M × N p´ıxeles en un
vector de atributos de tama˜no 1 × M N .
5. knn.p, implementaci´on del algoritmo de los k-vecinos m´as cercanos. 6. train faces.m, implementa el m´etodo para la generaci´on de modelos de
referencia de rostros.
7. recogn faces.m, implementa el m´etodo de reconocimiento de rostros. Cabe se˜nalar que las funciones train faces y recogn faces estar´an en blanco, ya que el objetivo del taller es programar los m´etodos vistos para el reconocimiento de rostros.
– img: im´agenes de los logotipos del Cinvestav y TopTamaulipas utilizados en la interfaz gr´afica.
• Archivos: los archivos interface.p e interface.fig contienen el c´odigo pro-tegido y los objetos, respectivamente, para el funcionamiento de la interfaz gr´afica. El archivo faces dataset.zip contiene las fotograf´ıas de rostros de varias personas, las cuales ser´an utilizadas para el desarrollo y prueba del sistema de reconocimiento de rostros. Al descomprimir el archivo zip, se extraer´an las siguientes carpetas:
• Entrenamiento, contiene 35 carpetas correspondientes a cada una de las personas que el sistema podr´a reconocer. Cada carpeta est´a identificada con el nombre gen´erico Subjectseguido de un identificador num´erico, por ejemplo, Subject01. Dentro de cada carpeta Subject hay nueve fotograf´as del rostro de una persona, las cuales se usar´an para entrenar el sistema de reconocimiento de rostros.
• Reconocimiento, contiene 35 fotograf´ıas de prueba de las personas que el sistema es capaz de reconocer.
• Desconocido, contiene cinco fotograf´ıas de prueba de personas que el sistema de-sconoce, ya que no formaron parte del entrenamiento del sistema.
3
Ejecuci´
on de la interfaz gr´
afica
Una vez que se inicia MATLAB, se debe direccionar a la carpeta programa y en la ventana de comandos invocar a la funci´on interface, como se muestra en la Figura 1. Al oprimir Enter se abrir´a la interfaz gr´afica mostrada en la Figura 2. Al abrirse la interfaz gr´afica, el bot´on Reconocer sujeto se encontrar´a inhabilitado; esto es debido a que el sistema detecta que a´un no existen los modelos de referencia de los rostros. Este bot´on se habilitar´a una vez que se haya ejecutado el proceso de entrenamiento del sistema.
4
Fase de entrenamiento
La fase de entrenamiento consta de los siguientes pasos:
1. Oprimir el bot´on Entrenar sistema. Se abrir´a una ventana de di´alogo para selec-cionar el directorio en donde se encuentran las im´agenes de entrenamiento.
2. Seleccionar la carpeta Entrenamiento, la cual se encuentra dentro de la carpeta faces dataset, como se muestra en la Figura 3.
3. Oprimir el bot´on Seleccionar carpeta. Comenzar´a el entrenamiento de sistema y se deshabilitar´an todos los botones de la interfaz gr´afica durante unos segundos. Al finalizar el entrenamiento, se habilitar´an todos los botones del sistema y se desplegar´a un mensaje de terminaci´on exitosa del proceso.
Figura 1: (A) Ruta del directorio programa. (B) Invocaci´on la funci´on interface para ejecutar la interfaz gr´afica.
5
Fase de reconocimiento
La fase de reconocimiento consta de los siguientes pasos:
1. Oprimir el bot´on Reconocer sujeto, se abrir´a una ventana de di´alogo para selec-cionar la imagen que se desea reconocer.
2. Seleccionar una fotograf´ıa de la carpeta Reconocimiento, la cual se encuentra den-tro de la carpeta faces dataset, como se muestra en la Figura 4.
3. Oprimir el bot´on Abrir. El sistema buscar´a en los modelos de referencia entrenados a la persona seleccionada y desplegar´an los resultados. Como se muestra en la Figura 5, en el lado izquierdo se muestra la fotograf´ıa de la persona que se desea reconocer y en el lado derecho se muestra la fotograf´ıa de la misma persona encontrada en la base de datos. Adem´as, se desplegar´a un mensaje con el identificador de la persona encontrada.
En el segundo paso se puede seleccionar una fotograf´ıa de la carpeta Desconocido, de modo que el sistema no encontrar´a a la persona en los modelos de referencia entrenados,
Figura 2: Interfaz gr´afica para el reconocimiento de rostros.
Figura 3: Ventana para seleccionar la carpeta donde se encuentran las im´agenes de entre-namiento.
como se muestra en la Figura 6. Adem´as, se desplegar´a un mensaje indicando que se desconoce a la persona.
Figura 4: Ventana para seleccionar una imagen que ser´a reconocida.
Figura 5: Resultado del proceso de reconocimiento de rostros de una persona conocida por el sistema.
Figura 6: Resultado del proceso de reconocimiento de rostros de una persona desconocida por el sistema.