Abstract This article presents an overview of artificial vision, which explains how to implement a system to facial recognition, this system allows the recognition of any face that is in the database of images, if the face not found in the database must be trained with new images. Palabras Clave Facial, Visin, Reconocimiento, Artificial, Eigenfaces. INTRODUCCIN La visin artificial es una rama de la inteligencia artificial, mediante la visin artificial se puede aplicar el reconocimiento facial, esto puede ser aplicado en diversos sistemas.
El reconocimiento facial es una tcnica que ha tenido un uso muy extendido, algunos usos de reconocimiento a partir de la cara son el control de aduanas de los aeropuertos, tambin las entradas de zonas restringidas de ciertas empresas o para identificar sospechosos en la polica [1].
El reconocimiento facial se ha convertido en una tcnica bastante confiable, ya que se han conseguido excelentes resultados al aplicarla. Usar sistemas de reconocimiento facial en tiempo real permite reducir la intrusividad de la obtencin de imgenes de individuos. Esta tcnica puede ser aplicada en aeropuertos al integrarlos en las cmaras de vigilancia permitiendo obtener informacin sobre posibles sospechosos. Tambin puede ser usado en dispositivos mviles, haciendo posible que el dispositivo reconozca al usuario, de tal forma que permita o niegue el acceso al mismo [1].
Por otro parte, las aplicaciones basadas en el reconocimiento facial presentan algunas limitaciones o inconvenientes como la orientacin del rostro, el ruido, la iluminacin, a expresin facial, vello facial, el envejecimiento, etc. Sin embargo la mayora de estas limitaciones pueden ser superadas eficazmente alimentando la base de datos con varias imgenes de un mismo individuo en las que se presente con la mayora de cambios faciales posibles. En el caso del envejecimiento bastara con ir alimentando la base de datos cada cierto tiempo [2].
Es importante tener en cuenta diferentes etapas, una de ellas es la deteccin facial, la cual en varias ocasiones se trata de manera conjunta con el reconocimiento. En este proyecto se aplic por separado estas tcnicas, en primera instancia se hizo una deteccin facial, posteriormente se aplic el reconocimiento facial. [2].
ETAPAS DE UN SISTEMA DE RECONOCIMIENTO FACIAL. Los sistemas de reconocimiento facial se dividen en cinco etapas. La primera es la adquisicin de los datos. La segunda etapa es la deteccin y localizacin de la cara, la tercera etapa es la de preprocesado que se lleva a cabo para preparar los datos mediante la normalizacin, alineacin y escalado de imagen. Como cuarta etapa esta la extraccin de caractersticas para obtener la informacin relevante de la imagen. Finalmente esta la etapa de reconocimiento, aqu se aplican los algoritmos de reconocimiento y se extrae una decisin respecto a la base de datos y la imagen de entrada [1].
IMAG 1. ETAPAS DE RECONOCIMIENTO FACIAL
HERRAMIENTAS PARA LA DETECCIN FACIAL. 1. OpenCV. Es una herramienta que provee algoritmos para el tratamiento de imgenes, es una biblioteca de visin por computadora iniciado por Intel en 1999. Entre los algoritmos de opencv existen algunos que trabajan en el campo de la deteccin y/o reconocimiento facial [4].
2. Algoritmos de reconocimiento Facial. El reconocimiento facial basado en las caractersticas geomtricas de una cara es probablemente el mtodo ms intuitivo de reconocimiento facial. Los algoritmos existentes para el reconocimiento facial son: Eigenfaces, Fisherfaces, Patrones binarios locales histogramas.
El mtodo Eigenfaces Obtiene los componentes principales de la matriz de covarianza formada por las imgenes de la base de datos y la imagen de entrada, se comparan las distancias entre el vector de la imagen original con el resto. Si el resultado es menor que un umbral previamente fijado, se habr reconocido la cara positivamente.
El mtodo Fisherfaces suaviza el problema de cambios de postura, deformaciones de la cara o la luz. Utiliza Anlisis Discriminante Lineal, cuya finalidad es describir las diferencias entre g grupos de objetos sobre los que se observan p variables [3].
DESARROLLO. 1. Fase 1: Adquisicin de imgenes. Las imgenes fueron adquiridas al capturar varias fotos de una misma persona, en una habitacin con diferentes niveles de luz y diferentes ngulos de captura, de esta forma la aplicacin puede reconocer a una persona con mayor precisin y una taza de error mnima, siempre y cuando el ambiente en el que se encuentre al momento de realizar las pruebas este dentro de la base de datos de imgenes. De no ser as es probable que la aplicacin no detecte el rostro de una persona.
Por ejemplo si en la base de datos existen imgenes con un nivel medio de luz o un nivel alto de luz la aplicacin pude reconocer a la persona, pero si en la base de datos no existe alguna imagen con un gesto de una persona, entonces en el momento en que el usuario que est siendo reconocido realice algn gesto dejara de ser reconocido.
2. Fase 2: Deteccin. Para la deteccin facial se utiliz el algoritmo de deteccin Viola-Jones que trae implementado OpenCv, con esto se consigue tiempos de deteccin de apenas 20ms gracias a que es posible ajustar el nmero de rostros a encontrar, tambin se puede medir el tamao de las caras a buscar, de esta forma se puede descartar los rostros pequeos ya que estarn alejadas.
3. Fase 3: Preprocesado de las imgenes. En esta fase se trata de normalizar el tamao de las imgenes, tanto de las de la base de datos como las imgenes entrantes. Adems se debe ecualizar el contraste, esto es para obtener un histograma ms uniforme, logrando as resaltar detalles que antes no se podan ver.
4. Fase 4: Extraccin y comparacin de caractersticas. Para esta fase es posible utilizar dos tcnicas diferentes mencionadas anteriormente, estas son Eigenfaces y Fisherfaces, ambas tcnicas estn implementadas en OpenCV, estas tcnicas comparan las imgenes entrantes contra el conjunto de resultantes de una previa clasificacin o configuracin.
Para la comparacin de las imgenes entrantes con las imgenes que se encuentran en la base de datos, es necesario definir un archivo con la ruta donde se encuentran las imgenes de la base de datos, el orden que debe tener este archivo es el siguiente:
/path de la imagen/nombre.ext; Numero
Path de la imagen: es la ruta completa hasta llegar a la carpeta donde se encuentran almacenadas las imgenes.
Nombre.ext: hace referencia al nombre de la imagen ms la extensin que tenga asignada.
Numero: Es el nmero que se le asigna al rostro de una persona, por ejemplo si una persona tiene treinta imgenes diferentes todas estas imgenes tendrn un solo nmero asignado. En el siguiente ejemplo se puede observar la ruta de cuatro imgenes divididas en dos pares que pertenecen a dos personas.
5. Fase 5: Reconocimiento. Una vez terminada la comparacin de las imgenes entrantes con las imgenes de la base de datos, se devuelve el nombre de la persona en caso de estar en la base, caso contrario la persona aparecer como no reconocida.
REFERENCIAS. [1] Javier Eslava Ros, Reconocimiento Facial en tiempo real. Julio 2013, Universidad Autnoma de Madrid Escuela Politcnica Superior. [2] Roger Gimeno Hernndez, Josep Ramn Morros i Rubi, Estudio de tcnicas de reconocimiento facial. Barcelona Mayo 2010, Departamento de Procesado de seal y comunicaciones - Universidad Politcnica de Catalunya. [3] Peter N. Belhumeur, Joao P. Hespanha, David J. Kriegman, Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Liner Projection. Dept. of Electrical Engineering, Yale Univerity, New Haven. [4] Ana Beln Moreno Daz, Reconocimiento Facial Automtico mediante Tcnicas de Visin Tridimensional. 2004, Universidad Politcnica de Madrid.