Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Curso:
INTELIGENCIA ARTIFICIAL
Docente:
ING. LUIS B. PALMA TTITO
Integrante: Cdigo:
ACHAHUI VILCA, CESAR ERNESTO 130341
ZAPATA TTITO, ABEL GABRIEL 130350
Cusco- Per
2015
NDICE
1 PRESENTACIN........................................................................................................................... 3
I. INTRODUCCIN
A. DESCRIPCIN DEL PROBLEMA .............................................................................................. 4
B. OBJETIVOS ............................................................................................................................. 4
C. ALCANCES, METAS Y LIMITACIONES ..................................................................................... 4
D. JUSTIFICACIN ...................................................................................................................... 5
F. CARACTERSTICAS DE LA SOLUCIN ...................................................................................... 5
II. MARCO TEORICO
A. CONCEPTOS Y DEFINICIONES ................................................................................................ 6
III. DESARROLLO DE LA SOLUCIN ................................................................................................ 9
IV. CONCLUSIONES ...................................................................................................................... 12
V. BIBLIOGRAFA .......................................................................................................................... 13
PRESENTACIN
El siguiente proyecto nos muestra toda la investigacin hecha para conocer los mtodos
y algoritmos para poder detectar rostros y reconocer a quien pertenece dicho rostro,
adems se da conocimiento ciertas libreras que ayudan a agilizar este proceso.
Por ltimo, se muestra el proceso de desarrollo del uso de redes neuronales artificiales
para el reconocimiento de rostros.
Este proyecto es basado en varias consultas sobre desarrolladores que plantearon una
solucin para el problema de reconocimiento de rostros.
I. INTRODUCCIN
a) DESCRIPCIN DEL PROBLEMA
El reconocimiento automtico de rostros humanos es uno de los problemas que ha
supuesto un desafo en informtica. Los seres humanos estamos acostumbrados a
reconocernos entre nosotros usando los rasgos faciales. Adems las medidas faciales
han sido usadas en medicina legal y forense durante aos para identificar individuos, y
por lo tanto han dado origen a una gran cantidad de estudios.
Una de las ventajas de un sistema de reconocimiento de rostros basados en inteligencia
artificial es que evitara la necesidad de llevar la documentacin tales como la del
Documento Nacional de Identidad, pasaporte y otros, ya que sera suficiente acercarse
a una cmara fotogrfica. Adems permite eliminar la memorizacin de cdigos y los
riesgos de prdida, olvido o suplantacin. De esta forma se puede conocer a quien
pertenece cada rostro detectado.
b) OBJETIVOS
Objetivo General
El objetivo general es el desarrollo de una aplicacin que sea capaz de reconocer rostros
usando la tcnica de redes neuronales artificiales mediante una cmara web.
Objetivos Especficos
- Estudiar varios modelos de redes neuronales y escoger el ms apropiado para la
aplicacin.
- Estudiar formas de representacin y procesamiento de imgenes.
- Desarrollar una interfaz amigable y atractiva.
- Realizar el reconocimiento de rostros mediante la cmara web de una computadora.
c) ALCANCES, METAS Y LIMITACIONES
Alcances
- Aprender varios modelos de redes neuronales artificiales.
- Desarrollar una aplicacin para el reconocimiento de rostros.
- Aprender algoritmos de procesamiento de imgenes.
Metas
- Entregar las partes del proyecto en el tiempo dado por el docente de la asignatura.
- Entregar la aplicacin de reconocimiento de rostros.
Limitaciones
2. Neurona Artificial
Es una red neuronal artificial formada por mltiples capas, esto le permite resolver
problemas que no son linealmente separables, lo cual es la principal limitacin del
perceptrn (llamado tambin perceptrn simple) por ello es ms utilizada para resolver
problemas reales.
Este modelo se compone de:
Capa de entrada: recibe las seales de entrada propagarla a la siguiente capa.
Capa de salida: proporciona la respuesta de la red para cada patrn de entrada.
Capas Ocultas: realizan el procesamiento no lineal de los datos de entrada.
4. Pixel
5. Imagen digital
Una imagen digital se compone de una agrupacin de pxeles, cada uno con un valor de
intensidad o brillo asociado. Una imagen digital se representa mediante una matriz
bidimensional, de forma que cada elemento de la matriz se corresponde con cada pxel
en la imagen.
6. OpenCV
OpenCV (Open source Computer Vision library) es una librera abierta desarrollado por
Intel. Esta librera proporciona un alto nivel funciones para el procesado de imgenes.
Estas libreras permiten a los programadores para crear aplicaciones poderosas en el
dominio de la visin digital. OpenCV ofrece muchos tipos de datos de alto-nivel como
juegos, rboles, grficos, matrices, etc.
OpenCV est escrito en C++, tiene interfaces en C++, C, Python, Java y MATLAB
interfaces y funciona en Windows, Linux, Android y Mac OS.
7. Java
Con Java se pueden realizar aplicaciones como un procesador de palabras, una hoja que
sirva para calculos, una aplicacin grfica, etc. en resumen cualquier tipo de aplicacin
se puede realizar con ella. Java permite la modularidad por lo que se pueden hacer
rutinas individuales que sean usadas por ms de una aplicacin. Tambin permite el
desarrollo de aplicaciones bajo el esquema de Cliente Servidor, como de aplicaciones
distribuidas, lo que lo hace capaz de conectar dos o ms computadoras u ordenadores,
ejecutando tareas simultneamente, y de esta forma logra distribuir el trabajo a realizar.
III. DESARROLLO DE LA SOLUCIN
Deteccin de un Rostro
Para la deteccin del rostro utilizaremos uno de los clasificadores que tiene OpenCV que es una
librera para visin artificial. Se tiene los siguientes clasificadores para el reconocimiento de
rostros: haarcascade_frontalcatface, haarcascade_frontalface_alt y lbpcascade_frontalface.
El algoritmo es el siguiente:
X1 = 1 1 1 -1 ..
Para estos casos se utilizan los siguientes algoritmos:
Inicio
Detectar rostro
Escalarlo a 50x50 pixeles
Binarizar la imagen
Convertir la imagen en binario a un vector de caractersticas
Fin
1 1 1 1 -1
1 x 1 1 1 -1 = 1 1 1 -1
1 1 1 1 -1
-1 -1 -1 -1 1
Para este caso se utiliza los algoritmos de multiplicacin de matrices y matriz
transpuesta.
Multiplicacin (M, N)
Para cada i desde 0 hasta filasM
Inicio
Para cada j desde 0 hasta columnasM
Inicio
Para cada k= 0 hasta columnasN
Inicio
Resultado[i][j] += M[i][k]*N[k][j]
Fin
Fin
Fin
Sumar los productos
Se usa el algoritmo para sumar matrices, se suma todos los resultados del
entrenamiento.
Convertir la diagonal principal a cero, y estos valores a los pesos de la RNA Hopfield
entrenada.
0 8 8 -8
8 0 4 -8
7 8 0 -8
-8 -6 -8 0
Para este caso guardamos el resultado de la red Hopfield entrenada en un archivo de
texto, junto con un identificador el cual es el nombre del que le pertenece los rostros.
Reconocimiento de Rostros
Reconocer patrn
1 1 1 -1
Para obtener el vector de caractersticas, se utilizan los siguientes algoritmos:
0 2 2 -2
1 1 1 -1 x 2 0 2 -2 = 6 6 6 -6
2 2 0 -2
-2 -2 -2 0
Aplicar la funcin de activacin
Se da la siguiente funcin:
Positivo: 1
Negativo: -1
F( 6 6 6 -6 )= 1 1 1 -1
Verificar si hay convergencia del patrn de entrada con el resultado del
procesamiento.
IV. CONCLUSIONES
Al finalizar el proyecto se concluy que las redes neuronales artificiales son un excelente mtodo
en el reconocimiento de rostros, caracteres y otras caractersticas de una persona. Las redes
neuronales artificiales tienen la capacidad de aprender, en comparacin a otros mtodos.
Adems si son bien entrenadas los errores tienden a disminuir en cuanto a falsos positivos o
falsos negativos.
Tambin se evidenci la capacidad de una RNA Hopfield de ser tan eficiente para determinar a
que persona le pertenece un rostro, mediante las caractersticas binarias de una imagen con un
rostro. Aun as, se tiene que saber que si se toma una imagen muy grande el costo de hacer las
operaciones de matrices son muy costosas, pero la capacidad de aprender es su aspecto ms
destacado.