Sie sind auf Seite 1von 38

AO DEL BUEN SERVICIO AL CIUDADANO

SISTEMAS DE CONTROL DE ASISTENCIA MEDIANTE


RECONOCIMIENTO FACIAL - UNHEVAL

CURSO :

GESTIN DE PROYECTOS

PROFESOR :

ING. LUIS MEZA ORDOES

ALUMNOS :
o CARRILLO HUANCA, Luis Miguel.
o LIBERATO HILARIO, Cecibel.
o SANTIAGO ASTO, Marisela
CICLO : IX Ciclo

HUANUCO PER

2017
NDICE
1. IDEA.....................................................................................................................................4

2. PROBLEMA..........................................................................................................................4

3. ANALISIS ALTERNATIVA......................................................................................................4

4. VISTA GENERAL DEL PROYECTO........................................................................................5

4.2. Propsito.................................................................................................................5

4.3. Alcance.....................................................................................................................5

4.4. Objetivos..................................................................................................................5

4.4.1. Objetivo General......................................................................................................5

4.4.2. Objetivos Especficos...............................................................................................5

4.5. Justificacin.............................................................................................................5

4.6.1. SCRUM.....................................................................................................................6

4.6.1.1 Daily Scrum..............................................................................................................6

4.6.1.2. Reunin de Planificacin del Sprint........................................................................6

4.6.1.3. Reunin de Revisin del Sprint...............................................................................7

4.6.1.4. Retrospectiva del Sprint..........................................................................................7

4.6.1.5. Evolucin del Plan de Desarrollo del Software.......................................................7

5. ORGANIZACIN DEL PROYECTO........................................................................................7

5.1. Participantes en el Proyecto:..................................................................................7

5.2. Interfaces Externas.................................................................................................7

5.3. Roles y Responsabilidades......................................................................................8

6. GESTIN del proceso:.........................................................................................................8

6.1. Plan del Proyecto.....................................................................................................8

6.1.1. Plan de las Fases......................................................................................................8

7. Calendario de proyecto....................................................................................................10

8. DESGLOSE DE TAREA........................................................................................................12
INTRODUCCIN

Este Plan de Desarrollo del SISTEMAS DE CONTROL DE ASISTENCIA


MEDIANTE RECONOCIMIENTO FACIAL UNHEVAL es una versin preliminar
preparada para ser incluida en la propuesta elaborada como respuesta al
proyecto de trabajo de la asignatura GESTION DE PROYECTOS de la
Universidad Nacional Hermilio Valdizn. Este documento provee una visin
global del enfoque de desarrollo propuesto.
El proyecto est basado en una metodologa gil SCRUM es una metodologa
gil y flexible para gestionar el desarrollo de software, cuyo principal
objetivo es maximizar el retorno de la inversin para su empresa (ROI). Se
basa en construir primero la funcionalidad de mayor valor para el cliente y en
los principios de inspeccin continua, adaptacin, auto-gestin e innovacin.
Esta metdica de trabajo promueve la innovacin, motivacin y compromiso
del equipo que forma parte del proyecto, por lo que los profesionales
encuentran un mbito propicio para desarrollar sus capacidades.
Este proyecto se desarrolla al ver la necesidad de implementar el rea de
asistencia de la facultad de ingeniera industrial y sistemas, si bien es cierto
un software es una produccin inmaterial del cerebro humano y tal vez una
de las estructuras ms complicadas que la humanidad que en la actualidad se
conoce.
Bsicamente, el software asistencial es un plan de funcionamiento para un
tipo especial de mquina, una mquina virtual o abstracta. Una vez
escrito mediante algn lenguaje de programacin, el software asistencial se
hace funcionar en ordenadores. El software permite poner en relacin al ser
humano y a la mquina y tambin a las mquinas entre s.
Finalmente este proyecto de investigacin mejorar este rea de asistencia
para los docentes de la facultad y en su totalidad la responsabilidad y
puntualidad del docente, alumnado.

1. IDEA
En la actualidad se observa que para el registro de asistencia de alumnos y
docentes de la facultad de ingeniera industrial y de sistemas hacen uso de
ciertos recursos materiales (formatos de asistencia, lapiceros) por tanto; para la
verificacin y control de asistencia de una persona no se realiza de manera
eficiente. Viendo este caso, el grupo de trabajo ha desarrollado una idea la cual
solucionara esa falta de eficiencia en este proceso a su vez nos permitir
optimizar recursos en cuanto materiales y tiempo.

Esta idea est basada en la implementacin de la toma de asistencia mediante


reconocimiento facial, tomando en cuenta la base de datos donde se encuentra
la informacin del alumnado y docentes en general (Fotografa, nombres,
apellidos, cdigo).

2. PROBLEMA

Este proyecto se desarrolla al ver la necesidad de implementar el rea de


asistencia de la facultad de ingeniera industrial y sistemas, si bien es cierto un
software es una produccin inmaterial del cerebro humano y tal vez una de
las estructuras ms complicadas que la humanidad que en la actualidad se
conoce. De hecho, los expertos en computacin an no entienden del todo
cmo funciona, su comportamiento, sus paradojas y sus lmites.
Bsicamente, el software asistencial es un plan de funcionamiento para un tipo
especial de mquina, una mquina virtual o abstracta. Una vez escrito
mediante algn lenguaje de programacin, el software asistencial se hace
funcionar en ordenadores. El software permite poner en relacin al ser humano
y a la mquina y tambin a las mquinas entre s.
Finalmente este proyecto de investigacin mejorar este rea de asistencia para
los docentes de la facultad y en su totalidad la responsabilidad y puntualidad del
docente, alumnado.

3. ANALISIS ALTERNATIVA

La alternativa por el que hemos optado nos brinda un aplicativo basado en el


manejo de imgenes en el rea de la programacin el cual se encuentra
desarrollado de acuerdo a la necesidad de la persona viendo su funcionamiento
y enfocndonos en la programacin de esta, para realizar diferentes funciones,
en este caso estamos determinando un aplicativo que necesariamente se
necesitara de una cmara web y/o cmaras ms eficientes, con mayor
resolucin.

Conformado por tres fases :Uno (parte inicial) se realiza deteccin del rostro,
otro (parte intermedia) el reconocimiento que realizara el aplicativo y como
(Parte final) al reconocer los rostros este aplicativo realizara un proceso de
almacenamiento de informacin; en este caso si la persona detectada por su
rostro asisti o no a su clase correspondiente.

Con este programa se intentara innovar el modo que una persona quiera darle
un debido uso de acuerdo a sus expectativas de tal manera que puede tener
este software a su disposicin.

4. VISTA GENERAL DEL PROYECTO


4.1. Nombre
Sistema de Control de asistencia mediante reconocimiento facial.

4.2. Propsito
El propsito del Plan de Desarrollo de Software que permite optimizar procesos en
la toma de asistencia del alumnado de la facultad de ingeniera industrial y
sistemas.

4.3. Alcance
El Plan del proyecto describe el desarrollo del SISTEMAS DE CONTROL DE
ASISTENCIA MEDIANTE RECONOCIMIENTO FACIAL EN LA FACULTAD DE
INGENIERIA INDUSTRIAL Y SISTEMAS - UNHEVAL.

4.4. OBJETIVOS

4.4.1. Objetivo General


Desarrollar un sistema de control de asistencia con Reconocimiento
Facial para la optimizacin de los procesos teniendo como resultado
una gestin rpida y eficiente.

4.4.2. Objetivos Especficos


Estudiar y Analizar el procedimiento que seguir nuestro aplicativo.
Disear el prototipo del sistema de control automtico del
identificador facial.
Construccin de prototipo y pruebas de funcionamiento
Realizar actividades que nos ayudara a manejar muy bien el
software.

4.5. JUSTIFICACIN
Este proyecto ayudara a disminuir la cantidad de inasistencias por parte
de los alumnos y docentes, con ello tambin fomentara la puntualidad y
responsabilidad en los alumnos e ingenieros encargados de cada curso.

4.6. Documentacinvdelvproyecto
En esta seccin se indicara y se describir los artefactos que sern
generados y utilizados por el proyecto y que constituyen los entregables.
4.6.1. SCRUM
Para la documentacin del proyecto se utiliz la metodologa SCRUM,
incluye una forma de trabajo colaborativo, una forma de organizacin en un
entorno de cambio permanente basado en un trabajo con la formacin de
equipos multidisciplinarios.

4.6.1.1 Daily Scrum


La reunin comienza puntualmente a su hora.

Todos los asistentes deben mantenerse de pie.

La reunin debe ocurrir en la misma ubicacin y a la misma hora todos los das.

Durante la reunin, cada miembro del equipo contesta a tres preguntas:


1. Qu has hecho desde ayer?

2. Qu es lo que ests planeando hacer hoy?

3. Has tenido algn problema que te haya impedido alcanzar tu objetivo?

4.6.1.2. Reunin de Planificacin del Sprint


Al inicio del ciclo Sprint (cada 15 o 30 das), una Reunin de
Planificacin del Sprint se lleva a cabo.

Seleccionar qu trabajo se har

Ocho horas como lmite

Al final del ciclo Sprint, dos reuniones se llevarn a cabo: la


Reunin de Revisin del Sprint y la Retrospectiva del
Sprint

4.6.1.3. Reunin de Revisin del Sprint


Revisar el trabajo que fue completado y no completado.

Presentar el trabajo a los interesados.

El trabajo incompleto no puede ser demostrado.

Cuatro horas como lmite

4.6.1.4. Retrospectiva del Sprint


Despus de cada sprint, se lleva a cabo una retrospectiva del sprint, en la cual
todos los miembros del equipo dejan sus impresiones sobre el sprint recin
superado. El propsito de la retrospectiva es realizar una mejora continua del
proceso. Esta reunin tiene un tiempo fijo de cuatro horas.

Ventaja Desventaja
Se trabaja en iteraciones cortas Es una metodologa que difiere del
resto

4.6.1.5. Evolucin del Plan de Desarrollo del Software


El Plan de Desarrollo del Software se revisar semanalmente y se refinar antes del
comienzo de cada iteracin.

1. ORGANIZACIN DEL PROYECTO

5.1. Participantes en el Proyecto:


De momento no se incluye el personal que designar Red y Server, Comit
de Control y Seguimiento, otros participantes que se estimen convenientes
para proporcionar los requisitos y validar el sistema. El resto del personal del
proyecto (por la parte de la empresa adjudicataria), slo considerando las
fases de Inicio y Elaboracin, estar formado por los siguientes puestos de
trabajo y personal asociado
Jefe de proyecto
Analistas
Tester
Programadores

5.2. Interfaces Externas


Se definir los participantes del proyecto que proporcionarn los requisitos
del sistema, y entre ellos quines sern los encargados de evaluar los
artefactos de acuerdo a cada subsistema y segn el plan establecido.
El equipo de desarrollo interactuar activamente con los participantes de
CRN-ASOCIADOS para especificacin y validacin de los artefactos
generados.

5.3. Roles y Responsabilidades


A continuacin, se describen las principales responsabilidades de cada uno de los puestos
en el equipo de desarrollo durante las fases de Inicio y Elaboracin, de acuerdo con los roles
que desempean en SCRUM.

PUESTO RESPONSABILIDAD
Jefe de Proyecto Scrum master: Persona que lidera al equipo
guindolo para que cumpla las reglas y procesos
de la metodologa. Gestiona la reduccin de
impedimentos del proyecto y trabaja con el
Product Owner para maximizar el ROI.
Analistas de Sistemas Team: Grupo de profesionales con los
conocimientos tcnicos necesarios y que
desarrollan el proyecto de manera conjunta
llevando a cabo las historias a las que se
comprometen al inicio de cada sprint.
Programadores Team: Grupo de profesionales con los
conocimientos tcnicos necesarios y que
desarrollan el proyecto de manera conjunta
llevando a cabo las historias a las que se
comprometen al inicio de cada sprint.
Testers Team: Grupo de profesionales con los
conocimientos tcnicos necesarios y que
desarrollan el proyecto de manera conjunta
llevando a cabo las historias a las que se
comprometen al inicio de cada sprint..
2. GESTIN DEL PROCESO:

5.4. Plan del Proyecto


En esta seccin se presenta la organizacin en fases e iteraciones y el calendario del
proyecto.

5.4.1. Plan de las Fases


El desarrollo se llevar a cabo en base a fases con una o ms iteraciones en
cada una de ellas. La siguiente tabla muestra una la distribucin de tiempos y
el nmero de iteraciones de cada fase (para las fases de Construccin y
Transicin es slo una aproximacin muy preliminar)

Fase Nro. Duracin

Iteraciones

Fase de Inicio 1 2 semanas


Fase de 1 3 semanas
Elaboracin
Fase de 2 5 semanas
Construccin
Fase de Transicin - -

Descripcin Hito

Fase de Inicio En esta fase desarrollar los requisitos del producto desde la
perspectiva del usuario, los cuales sern establecidos en el artefacto
Visin. Los principales casos de uso sern identificados y se har un
refinamiento del Plan de Desarrollo del Proyecto. La aceptacin del
cliente / usuario del artefacto Visin y el Plan de Desarrollo marcan el
final de esta fase.
Fase de Planificacin En esta fase se analizan los requisitos y se desarrolla un prototipo de
arquitectura (incluyendo las partes ms relevantes y / o crticas del
sistema). Al final de esta fase, todos los casos de uso correspondientes
a requisitos que sern implementados en la primera release de la fase
de Construccin deben estar analizados y diseados (en el Modelo de
Anlisis / Diseo). La revisin y aceptacin del prototipo de la
arquitectura del sistema marca el final de esta fase. En nuestro caso
particular, por no incluirse las fases siguientes, la revisin y entrega de
todos los artefactos hasta este punto de desarrollo tambin se incluye
como hito. La primera iteracin tendr como objetivo la identificacin y
especificacin de los principales casos de uso, as como su realizacin
preliminar en el Modelo de Anlisis / Diseo, tambin permitir hacer
una revisin general del estado de los artefactos hasta este punto y
ajustar si es necesario la planificacin para asegurar el cumplimiento de
los objetivos. Ambas iteraciones tendrn una duracin de una semana.

Fase de Construccin Durante la fase de construccin se terminan de analizar y disear


todos los casos de uso, refinando el Modelo de Anlisis / Diseo. El
producto se construye en base a 2 iteraciones, cada una produciendo
una release a la cual se le aplican las pruebas y se valida con el cliente /
usuario. Se comienza la elaboracin de material de apoyo al usuario. El
hito que marca el fin de esta fase es la versin de la release 3.0, con la
capacidad operacional parcial del producto que se haya considerado
como crtica, lista para ser entregada a los usuarios para pruebas beta.

Fase de Transicin En esta fase se prepararn dos raleases para distribucin, asegurando
una implantacin y cambio del sistema previo de manera adecuada,
incluyendo el entrenamiento de los usuarios. El hito que marca el fin
de esta fase incluye, la entrega de toda la documentacin del proyecto
con los manuales de instalacin y todo el material de apoyo al usuario,
la finalizacin del entrenamiento de los usuarios y el
empaquetamiento del producto.
6. Calendario de proyecto
Diagrama gannt

Por faces:

Por Actividades:
7. DESGLOSE DE TAREA
(WBS)

WBS1 WBS2 WBS3 JEFE DE ANALISTA DESARROLLADOR TESTER TESTER


PROYECTO (ANA LISIS) (DISEN O)

DIRECCIO N DEL Planificaci n Desarrll de 10 18 26 18 15


PROYECTO crngrama
15 20 14 10 17

Reunines Asignaci n de tareas 9 11 15 15 30

Verificaci n de 15 20 16 25 25
avances
Administraci n Cntrl del pryect 20 12 17 15 15

10 23 19 17 25

Sftware Desarrll del c dig 20 26 20 30 25


REQUERIMIENTO Desarrll de 30 14 15 25 38
DEL PROYECTO interfaces
Dcumentaci n Manual de usuari 15 15 18 18 15

Manual de despliegue 20 16 10 10 13

DISEN O Sftware Desarrll del c dig 15 17 15 15 18


DETALLADO
Desarrll de 25 19 25 9 10
interfaces
Dcumentaci n Manual de usuari 15 20 15 15 15

Manual de despliegue 17 15 17 20 25

CONSTRUCCIO N Sftware Desarrll del c dig 30 18 30 10 15

Desarrll de 25 10 25 20 17
interfaces
Dcumentaci n Manual de usuari 15 28 15 30 30

Manual de despliegue 25 23 25 15 25

INTEGRACIO N Y Sftware Desarrll del c dig 25 22 20 20 15


PRUEBAS
Desarrll de 38 25 15 15 25
interfaces
Dcumentaci n Manual de usuari 15 13 12 15 20

Manual de despliegue 13 12 14 18 15

TOTAL (HORAS) 397 398 385 448 397 2050

PORCENTAJE DE HORAS (%)


CAPTULO I
1. MARCO TERICO

1.1. Bases Conceptuales:

En este captulo se introducen los conceptos bsicos de modelado de


sistemas. Primero se hace un recuento de algunas definiciones
bsicas. Luego, se resumen las principales leyes que gobiernan a los
sistemas mecnicos, elctricos y electrnicos. Por ltimo, se
resumen los conceptos bsicos relacionados con los sistemas de
control.
1.1.1. Tecnolgico:
La identificacin de caractersticas faciales ha recibido un fuerte impulso
gracias al avance en la tecnologa de vdeo multimedia propicindose as
un aumento de cmaras en los lugares de trabajo, hogar y dispositivos
mviles con un reducido coste.
1.1.2. Social:
El reconocimiento facial se puede aplicar en el control de accesos a
edificios pblicos y privados, cajeros automticos,
laboratorios de investigacin, como clave secreta de acceso para el
uso de ordenadores personales o terminales mviles de ltima
generacin as como para servir de tarjeta de visita de una persona.
1.1.3. Ambiental:
Los materiales utilizados son ya existentes por la cual no se hiso la
utilizacin de otros productos que perjudican al medio ambiente.
1.1.4. Econmico:
Este programa no requiere de mucha utilizacin de recursos econmicos.

PHAYTON Y SU FUNCIONAMIENTO:
Python es un lenguaje de programacin interpretado cuya filosofa hace
hincapi en una sintaxis que favorezca un cdigo legible.
Un lenguaje interpretado es un lenguaje de programacin que est
diseado para ser ejecutado por medio de un intrprete, en contraste con
los lenguajes compilados. Tericamente, cualquier lenguaje puede
ser compilado o ser interpretado, as que esta designacin es aplicada
puramente debido a la prctica de implementacin comn y no a alguna
caracterstica subyacente de un lenguaje en particular. Sin embargo, hay
lenguajes que son diseados para ser intrnsecamente interpretativos, por
lo tanto un compilador causar una carencia de la eficacia. Muchos
autores rechazan la clasificacin de lenguajes de programacin entre
interpretados y compilados, considerando que el modo de ejecucin (por
medio de intrprete o de compilador) del programa escrito en el lenguaje
es independiente del propio lenguaje. A ciertos lenguajes interpretados
tambin se les conoce como lenguajes de script.
Muchos lenguajes han sido implementados usando tanto compiladores
como intrpretes, incluyendo Lisp, Pascal, C, BASIC y Python. Mientras
que Java es traducido a una forma que se destina a ser interpretada,
la compilacin justo a tiempo es frecuentemente usada para generar
el cdigo de mquina. Los lenguajes de Microsoft .NET compilan a una
forma intermedia (CIL) la cual es entonces a menudo compilada en cdigo
de mquina nativo; sin embargo hay una mquina virtual capaz de
interpretar el CIL. Muchas implementaciones Lisp pueden mezclar
libremente cdigo interpretado y compilado. Estas implementaciones
tambin usan un compilador que puede traducir arbitrariamente cdigo
fuente en tiempo de ejecucin a cdigo de mquina.
Se trata de un lenguaje de programacin multiparadigma, ya que
soporta orientacin a objetos, programacin imperativa y, en menor
medida, programacin funcional. Es un lenguaje interpretado, usa tipado
dinmico y es multiplataforma.
ARDUINO Y SU FUNCIONAMIENTO:
Arduino es una plataforma de hardware libre, basada en
una placa con un microcontrolador y un entorno de desarrollo, diseada
para facilitar el uso de la electrnica en proyectos multidisciplinares.
El hardware consiste en una placa con un microcontrolador Atmel AVR y
puertos de entrada/salida. Los microcontroladores ms usados son
el Atmega168, Atmega328, Atmega1280, y Atmega8 por su sencillez y
bajo coste que permiten el desarrollo de mltiples diseos. Por otro lado el
software consiste en un entorno de desarrollo que implementa el lenguaje
de programacinProcessing/Wiring y el cargador de arranque que es
ejecutado en la placa. Se programa en el ordenador para que la placa
controle los componentes electrnicos.
Desde octubre de 2012, Arduino se utiliza tambin con microcontroladoras
CortexM3 de ARM de 32 bits, que coexistirn con las ms limitadas, pero
tambin econmicas AVR de 8 bits. ARM y AVR no son plataformas
compatibles a nivel binario, pero se pueden programar con el mismo IDE
de Arduino y hacerse programas que compilen sin cambios en las dos
plataformas. Eso s, las microcontroladoras CortexM3 usan 3,3V, a
diferencia de la mayora de las placas con AVR, que generalmente usan
5V. Sin embargo, ya anteriormente se lanzaron placas Arduino con Atmel
AVR a 3,3V como la Arduino Fio y existen compatibles de Arduino Nano y
Pro como Meduino en que se puede conmutar el voltaje.
Arduino puede tomar informacin del entorno a travs de sus entradas
analgicas y digitales, puede controlar luces, motores y otros actuadores.
El microcontrolador en la placa Arduino se programa mediante el lenguaje
de programacin Arduino (basado en Wiring) y el entorno de desarrollo
Arduino (basado en Processing). Los proyectos hechos con Arduino pueden
ejecutarse sin necesidad de conectar a un ordenador.
Tambin cuenta con su propio software que se puede descargar de su
pgina oficial que ya incluye los drivers de todas las tarjetas disponibles lo
que hace ms fcil la carga de cdigos desde el computador.
Arduino se puede utilizar para desarrollar objetos interactivos autnomos
o puede ser conectado a software tal como Adobe
Flash, Processing, Max/MSP, Pure Data. Una tendencia tecnolgica es
utilizar Arduino como tarjeta de adquisicin de datos desarrollando
interfaces en software como JAVA, Visual Basic y LabVIEW 6 . Las placas se
pueden montar a mano o adquirirse. El entorno de desarrollo
integrado libre se puede descargar gratuitamente.
El proyecto Arduino recibi una mencin honorfica en la categora de
Comunidades Digital en el Prix Ars Electrnica de 2006.

1.2. ANTECEDENTE

1.2.1. LA DETECCIN FACIAL:


La deteccin facial es el proceso de encontrar una cara en
imgenes. El algoritmo de la deteccin de caras est basado en una
funcin que busca regiones rectangulares dentro de una imagen,
regiones que contengan objetos que con una alta probabilidad se
parezcan a otros de un conjunto de entrenamiento, devolviendo la
rectangular de la imagen donde se ha encontrado se han
encontrado. La funcin escanea varias veces la imagen y con
diferentes escalas para encontrar objetos parecidos pero de
diferentes tamaos. Por tanto, para detectar caras, nicamente hay
que pasarle a la funcin e caractersticas deseadas para que las
caras detectadas sean parecidas a estas.

1.2.2. DETECCIN DE CARAS


Ahora pasamos a ver la implementacin de este detector de Viola &
Jones en el sistema que se presenta.
No se ha generado un conjunto de entrenamiento puesto que en
Open CV ya vienen dado los parmetros de distintos detectores ya
entrenados, para caras frontales, laterales, para cuerpo entero, etc.
El resultado de aplicar el algoritmo de deteccin a las imgenes de
entrada lo mostramos en pantalla.
El reconocimiento facial automatizado es relativamente un concepto
nuevo. Desarrollado en los aos 60, el primer sistema semiautomtico
para reconocimiento facial requera del administrador para localizar
rasgos (como ojos, orejas, nariz y boca) en las fotografas antes de que
este calculara distancias a puntos de referencia en comn, los cuales
eran comparados luego con datos de referencia.
En los aos 70 Goldstein, Harmon, & Lesk, (1971) usaron 21
marcadores subjetivos especficos tales como el color del cabello y
grosor de labios para automatizar el reconocimiento facial. (pp. 748
760) El problema con estas soluciones previas era que se computaban
manualmente. En 1988 Kirby & Sirobich aplicaron anlisis de
componentes principales, una tcnica estndar del lgebra lineal, al
problema del reconocimiento facial. Esto fue considerado algo as como
un hito al mostrar que eran requeridos menos de 100 valores para
cifrar acertadamente la imagen de una cara convenientemente
alineada y normalizada. (Sirovich; Kirby, 1987, pp. 519 524).
En 1991 Turk & Pentland utilizando las tcnicas Eigenfaces, el error
residual poda ser utilizado para detectar caras en las imgenes (Turk;
Pentland, 1991, pp. 586 591) -un descubrimiento que permiti
sistemas automatizados de reconocimiento facial en tiempo real
fidedignos. Si bien la aproximacin era un tanto forzada por factores
ambientales, cre sin embargo un inters significativo en posteriores
desarrollos de stos sistemas.
El 4 de abril del 2011. Los investigadores Juan Bekios-Calfa, Jos M.
Buena Posada y Luis Baumela, del ComputationalIntelligenceGroup de
la Facultad de Informtica de la Universidad Politcnica de Madrid, han
desarrollado Un dispositivo identifica si el usuario de un ordenador es
hombre o mujer. (Sybil, 2009)
Desarrollado en la Facultad de Informtica de la UPM, ha sido objeto de
una patente y tiene numerosas aplicaciones industriales. Un nuevo
dispositivo, consistente en una cmara de adquisicin de imgenes
digitales conectada a un sistema de procesamiento de imgenes,
permite a un ordenador identificar si el usuario es un hombre o una
mujer. El dispositivo, que ha sido objeto de concesin de una patente,
permite construir dispositivos de medicin de audiencia de televisin o
videos publicitarios, entre otras aplicaciones industriales.

1.3. DEFINICIONES CONCEPTUALES.

PYTHON.
Python es un lenguaje de programacin interpretado cuya filosofa
hace hincapi en una sintaxis que favorezca un cdigo legible. Se
trata de un lenguaje de programacin multiparadigma, ya que
soporta orientacin a objetos, programacin imperativa y, en menor
medida, programacin funcional. Es un lenguaje interpretado,
usa tipado dinmico y es multiplataforma.
Es administrado por la Python Software Foundation. Posee una
licencia de cdigo abierto, denominada Python Software Foundation
License,1 que es compatible con la Licencia pblica general de
GNU a partir de la versin 2.1.1, e incompatible en ciertas versiones
anteriores.
Caracteristicas:
Python es un lenguaje de programacin multiparadigma.
Esto significa que ms que forzar a los programadores a
adoptar un estilo particular de programacin, permite
varios estilos: programacin orientada a
objetos, programacin imperativa y programacin
funcional. Otros paradigmas estn soportados mediante
el uso de extensiones.
Python usa tipado dinmico y conteo de referencias para
la administracin de memoria.
Una caracterstica importante de Python es la resolucin
dinmica de nombres; es decir, lo que enlaza un mtodo
y un nombre de variable durante la ejecucin del
programa (tambin llamado enlace dinmico de
mtodos).
Otro objetivo del diseo del lenguaje es la facilidad de
extensin. Se pueden escribir nuevos mdulos
fcilmente en C o C++. Python puede incluirse en
aplicaciones que necesitan una interfaz programable.
Aunque la programacin en Python podra considerarse
en algunas situaciones hostil a la programacin
funcional tradicional del Lisp, existen bastantes
analogas entre Python y los lenguajes minimalistas de la
familia Lisp como puede ser Scheme.

PHP.
Php es un programacin interpretado (Lenguaje de alto
rendimiento), diseado originalmente para la creacin de web
dinmicas pero actual mente puede ser utilizado en la creacin de
otros tipos de programas, las siglas PHP significan (Hypertext Pre-
processor). Fue creado por original mente por RasmusLerdor en
1994 avenido evolucionando en el trascurso de los aos ahora con
su nueva versin PHP 5 la cual esta enfocada en la orientacin a
objetos o programacin poo.
Caractersticas de PHP
PHP posee varias caractersticas que lo hacen indicado para el
software que se desarrollara de las cuales se pueden
mencionar las siguientes:

Orientado al desarrollo de aplicaciones web dinmicas


con acceso a informacin almacenada en una base de
datos.
El cdigo fuente escrito en PHP es invisible al navegador
web y al cliente ya que es el servidor el que se encarga
de ejecutar el cdigo y enviar su resultado HTML al
navegador. Esto hace que la programacin en PHP sea
segura y confiable.
Capacidad de conexin con la mayora de los motores
de base de datos que se utilizan en la actualidad,
destaca su conectividad con MySQL y PostgreSQL.
Es libre, por lo que se presenta como una alternativa de
fcil acceso para todos y reduce los costos para la
empresa que desee una herramienta informtica para
sus procesos.
Permite aplicar tcnicas de programacin orientada a
objetos ideales para el software a desarrollar.
Tiene manejo de excepcin.

Ventajas de usar PHP5


Algunas de las ventajas de usar PHP como lenguaje de
programacin son las siguientes:
PHP corre en (casi) cualquier plataforma utilizando el
mismo cdigo fuente, pudiendo ser compilado y
ejecutado en algo as como 25 plataformas,
incluyendo diferentes versiones de Unix, Windows
95,98,NT,ME,2000,XP, 7 y Macs. Como en todos los
sistemas se utiliza el mismo cdigo base, los scripts
pueden ser ejecutados de manera independiente al OS.
PHP es completamente expandible. Est compuesto de
un sistema principal (escrito por Zend), un conjunto de
mdulos y una variedad de extensiones de cdigo.
Puede interactuar con muchos motores de bases de
datos tales como MySQL, MS SQL, Oracle, Informix,
PostgreSQL, y otros muchos. Siempre podrs disponer
de ODBC para situaciones que lo requieran.
Rapidez. PHP generalmente es utilizado como modulo de
Apache, lo que lo hace extremadamente veloz. Esta
completamente escrito en C, as que se ejecuta
rpidamente utilizando poca memoria.
Desventajas de usar PHP5

El manejo de errores no es tan sofisticado como


ColdFusion o ASP.
Como es un lenguaje que se interpreta en ejecucin,
para ciertos usos puede resultar un inconveniente
que el cdigo fuente no pueda ser ocultado. La
ofuscacin es una tcnica que puede dificultar la lectura
del cdigo pero no necesariamente impide que el cdigo
sea examinado.
Debido a que es un lenguaje interpretado, un script en
PHP suele funcionar considerablemente ms lento que
su equivalente en un lenguaje de bajo nivel, sin
embargo este inconveniente se puede minimizar con
tcnicas de cache tanto de en archivos y memoria.
Las variables al no ser tipadas dificulta a los diferentes
IDES para ofrecer asistencias para el tipeado del cdigo,
aunque esto no es realmente un inconveniente del
lenguaje en s. Esto es solventado por Zend Studio
aadiendo un comentario con el tipo a la declaracin de
la variable.

MYSQL
MYSQL es un servidor de base de datos relacionales con el cual
se administra la misma, desarrollado y proporcionado por MYSQL
AB. MYSQL Ab es una empresa cuyo negocio consiste en
proporcionar servicios en torno al servidor de base de datos
MYSQL.

Caractersticas de MYSQL.
Algunas de las caractersticas ms importantes que posee
MYSQL son las siguientes:

Los clientes se conectan al servidor MySQL usando


sockets TCP/IP en cualquier plataforma. En sistemas
Windows se pueden conectar usando ame pipes y en
sistemas Unix usando ficheros socket Unix.
Seguridad: ofrece un sistema de contraseas y
privilegios seguro mediante verificacin basada en el
host y el trfico de contraseas est cifrado al
conectarse a un servidor.
Soporta gran cantidad de datos. MySQL Server tiene
bases de datos de hasta 50 millones de registros.
Se permiten hasta 64 ndices por tabla (32 antes de
MySQL 4.1.2). Cada ndice puede consistir desde 1 hasta
16 columnas o partes de columnas. El mximo ancho de
lmite son 1000 bytes (500 antes de MySQL 4.1.2).

Para que sirve MYSQL.


Con MYSQL podemos realizar bsquedas en nuestras tablas a
travs de lenguaje SQL, basta con realizar una consulta de las
mismas y la informacin requerida se ubica con gran precisin
permitiendo reducir el tiempo de bsqueda de datos para un
mejor control de la informacin.

HTML
Siglas de HyperTextMarkupLanguage (lenguaje de marcado de
hipertexto) es el lenguaje de marcado predominante para la
elaboracin de pginas web. Es usado para describir la
estructura y el contenido en forma de texto, as como para
complementar el texto con objetos tales como imgenes

XAMPP
Es un servidor independiente de plataforma, software libre, que
consiste principalmente en la base de datos MySQL, el servidor
web Apache y los intrpretes para lenguajes de script: PHP y Perl,
El programa est liberado bajo la licencia GNU y acta como un
servidor web libre, fcil de usar y capaz de interpretar pginas
dinmicas. Actualmente XAMPP est disponible para Microsoft
Windows, GNU/Linux, Solaris y MacOS X.

Caractersticas:

XAMPP solamente requiere descargar y ejecutar un archivo


Zip, tar o exe, con unas pequeas configuraciones en alguno
de sus componentes que el servidor Web necesitar. XAMPP
se actualiza regularmente para incorporar las ltimas
versiones de Apache/MySQL/PHP y Perl. Tambin incluye otros
mdulos como OpenSSL y phpMyAdmin. Para instalar XAMPP
se requiere solamente una pequea fraccin del tiempo
necesario para descargar y configurar los programas por
separado.

ARDUINO UNO.
Arduino es una plataforma de electrnica abierta para la creacin
de prototipos basada en software y hardware, libre, flexibles y
fciles de usar. Se cre para artistas, diseadores, aficionados y
cualquier interesado en crear entornos u objetos interactivos.
Arduino puede tomar informacin del entorno a travs de sus
pines de entrada, para esto toda una gama de sensores puede
ser usada y puede afectar aquello que le rodea controlando luces,
motores y otros actuadores. El microcontrolador en la placa
Arduino se programa mediante el lenguaje de programacin
Arduino (basado en Wiring) y el entorno de desarrollo Arduino
(basado en Processing). Los proyectos hechos con Arduino
pueden ejecutarse sin necesidad de conectarlo a un ordenador, si
bien tienen la posibilidad de hacerlo y comunicar con diferentes
tipos de software (p.ej. Flash, Processing, MaxMSP). Las placas
pueden ser hechas a mano o comprarse montadas de fbrica; el
software puede ser descargado de forma gratuita. Los ficheros de
diseo de referencia (CAD) estn disponibles bajo una licencia
abierta, as pues eres libre de adaptarlos a tus necesidades.

PROTOBOARD.

Una placa de pruebas (en ingls: protoboard o breadboard) es


un tablero con orificios que se encuentran conectados
elctricamente entre s de manera interna, habitualmente
siguiendo patrones de lneas, en el cual se pueden
insertar componentes electrnicos y cables para el armado y
prototipado de circuitos electrnicos y sistemas similares. Est
hecho de dos materiales, un aislante, generalmente un plstico, y
un conductor que conecta los diversos orificios entre s. Uno de
sus usos principales es la creacin y comprobacin de prototipos
de circuitos electrnicos antes de llegar a la impresin mecnica
del circuito en sistemas de produccin comercial.

CAPTULO III
2. DESARROLLO DEL TRABAJO

2.1. Anlisis del sistema


Sistema de reconocimiento facial

Es un Aplicativo desarrollado en Plataforma de python , para


realizar el Reconocimiento Facial.
Que esta Plataforma python usa la librera OPENCV es una
biblioteca Open Source para python y la librera NUMPY para
procesamiento de imgenes y el reconocimiento de las
caractersticas del rostro.
Tiene funciones de generar y reconocer los rostros.

El sistema funcionar de la siguiente manera y/o:

1. Al realizar el primer paso (generador) se generara las imgenes


que queremos reconocer y estas imgenes se almacenara en una
carpeta llamada att_faces.
2. Una vez guardado las imgenes en la carpeta ya mencionada
vamos al segundo paso que es el reconocimiento.
3. Finalmente comprobamos si el reconocimiento facial que
comprueba con las imgenes almacenadas.

3.1.1. Diagrama AFN, tabla, expresin por comprensin y


extensin.

0 1 2 3 4 5

3.1.2. Diagrama de bloques del sistema y la funcin de


transferencia.

S e R L
0 1 ----- ---- ----- ---- -----
1 ----- 2 ----- ----- ---- -----
2 ------ ------ 3 4 ---- -----
-
3 ------ ------ ----- ----- 4 -----
-
4 ----- ------ ----- ----- ---- 5
- -
5 ------ ------- ----- 1 ---- ------
- -

Diagrama de bloques de lazo cerrado (siete pasos)

Establecer objetivos de control (Proceso):

Disear un programa para el reconocimiento facial de las personas


teniendo en cuenta principalmente los rasgos fsicos del rostro de la
persona.

Identificar variables a controlar:

Reconocer los rostros generados.

Escribir las especificaciones e identificar el sensor

El cdigo del programa impide a que se vuelva a registrar la misma


persona con el mismo nombre ya almacenado.

Identificar actuador:

Historial(att_faces) y la Cmara.

Modelo del proceso, actuador y el sensor

Cmara Filmadora programa de reconocimiento Cdigo de


Restriccin del programa.

Seleccionar un controlador:
Programa de reconocimiento facial .
Ajustar Parmetros:
COMPARA
CION
Verificar que todos las libreras estn instaladas correctamente con el
fin de reconocer los rostro ya almacenados en la carpeta att_faces
de cada una de las personas.
ROSTRO DE
CAMARA PROGRAMA HISTORIAL
LA PERSONA
RECONOCI
MIENTO

Planteamiento de ecuaciones y parmetros del diagrama


de bloques.

Conversin a transformadas y calcular la funcin de transferencia


3.1.3. Funciones de transferencia:

Retroalimentacin:

Funcin de transferencia Global:

3.1.4. Conversin a la funcin original utilizando transformada


inversa.

3.1.5. Algoritmo del sistema de control.


Diseo del sistema de control: modelamiento
Descripcin de los pasos o las actividades que se realizara para llevar a
cabo el proceso
Convierte la
imagen de colores Sistema
a grises

Crea la imagen
con una
extensin

Crea la carpeta
Usuario de imagen

Carga las libreras

Imprime en la
pantalla la
Reconocimiento Sistema
imagen en gris
de patrones

Convierte la
imagen en bits

Comparacin de
imagen (imagen gris)

Busca la imagen
en la carpeta
att_faces y la
extensin
Numero de
Rostro
rostros
reconocido
Usuario reconocidos Sistema
CAPITULO VI
DESCRIPCIN DE LAS CARACTERSTICAS BSICAS DEL
SOFTWARE Y HARDWARE ELECTRNICO A USAR.

3.2. Descripcin del Hardware

Descripcion del Arduino UNO :


El arduino dispone de 14 pines que pueden configurarse como
entrada o salida y a los que puede conectarse cualquier
dispositivo que sea capaz de transmitir o recibir seales digitales
de 0 y 5 V. Tambin dispone de entradas y salidas analgicas.
Mediante las entradas analgicas podemos obtener datos de
sensores en forma de variaciones continuas de un voltaje. Las
salidas analgicas suelen utilizarse para enviar seales de control
en forma de seales PWM.
Cada uno de los 14 pines digitales se puede usar como entrada o
como salida. Funcionan a 5V, cada pin puede suministrar hasta
40 mA. La intensidad mxima de entrada tambin es de 40 mA.
Cada uno de los pines digitales dispone de una resistencia de
pull-up interna de entre 20K y 50 K que est desconectada,
salvo que nosotros indiquemos lo contrario. Arduino tambin
dispone de 6 pines de entrada analgicos que trasladan las
seales a un conversor analgico/digital de 10 bits.

Caracteristicas:
3.3. Descripcin del Software de programacin.

Descripcin del Python:


Es un lenguaje de programacin interpretado cuya filosofa hace
hincapi en una sintaxis que favorezca un cdigo legible.
Un lenguaje interpretado es un lenguaje de programacin que
est diseado para ser ejecutado por medio de un intrprete, en
contraste con los lenguajes compilados. Tericamente,
cualquier lenguaje puede ser compilado o ser interpretado, as
que esta designacin es aplicada puramente debido a la prctica
de implementacin comn y no a alguna caracterstica
subyacente de un lenguaje en particular. Sin embargo, hay
lenguajes que son diseados para ser intrnsecamente
interpretativos, por lo tanto un compilador causar una carencia
de la eficacia. Muchos autores rechazan la clasificacin de
lenguajes de programacin entre interpretados y compilados,
considerando que el modo de ejecucin (por medio de intrprete
o de compilador) del programa escrito en el lenguaje es
independiente del propio lenguaje. A ciertos lenguajes
interpretados tambin se les conoce como lenguajes de script.
Muchos lenguajes han sido implementados usando tanto
compiladores como intrpretes,
incluyendo Lisp, Pascal, C, BASIC y Python. Mientras que Java es
traducido a una forma que se destina a ser interpretada,
la compilacin justo a tiempo es frecuentemente usada para
generar el cdigo de mquina. Los lenguajes de Microsoft
.NET compilan a una forma intermedia (CIL) la cual es entonces a
menudo compilada en cdigo de mquina nativo; sin embargo
hay una mquina virtual capaz de interpretar el CIL. Muchas
implementaciones Lisp pueden mezclar libremente cdigo
interpretado y compilado. Estas implementaciones tambin usan
un compilador que puede traducir arbitrariamente cdigo fuente
en tiempo de ejecucin a cdigo de mquina.
Se trata de un lenguaje de programacin multiparadigma, ya que
soporta orientacin a objetos, programacin imperativa y, en
menor medida, programacin funcional. Es un lenguaje
interpretado, usa tipado dinmico y es multiplataforma.

Mysql:
Es un sistema de gestin de bases de
datos relacional, multihilo y multiusuario con ms de seis millones
de instalaciones. Por un lado se ofrece bajo la GNU GPL para
cualquier uso compatible con esta licencia, pero para aquellas
empresas que quieran incorporarlo en productos privativos deben
comprar a la empresa una licencia especfica que les permita este
uso. Est desarrollado en su mayor parte en ANSI C.
Existen varias interfaces de programacin de aplicaciones que
permiten, a aplicaciones escritas en diversos lenguajes de
programacin, acceder a las bases de datos MySQL,
incluyendo C, C++, C#, Pascal, Delphi (va
dbExpress), Eiffel, Smalltalk, Java (con una implementacin nativa
del driverde
Java), Lisp, Perl, PHP, Python, Ruby, Gambas, REALbasic (Mac y Li
nux), (x)Harbour (Eagle1), FreeBASIC, y Tcl; cada uno de estos
utiliza una interfaz de programacin de aplicaciones especfica.
Tambin existe una interfazODBC, llamado MyODBC que permite
a cualquier lenguaje de programacin que
soporte ODBC comunicarse con las bases de datos MySQL.
Tambin se puede acceder desde el sistema SAP, lenguaje ABAP.

Arduino:
El microcontrolador en la placa Arduino se programa mediante el
lenguaje de programacin Arduino (basado en Wiring) y el
entorno de desarrollo Arduino (basado en Processing). Los
proyectos hechos con Arduino pueden ejecutarse sin necesidad
de conectar a un ordenador.
Tambin cuenta con su propio software que se puede descargar
de su pgina oficial que ya incluye los drivers de todas las
tarjetas disponibles lo que hace ms fcil la carga de cdigos
desde el computador.
Arduino se puede utilizar para desarrollar objetos interactivos
autnomos o puede ser conectado a software tal como Adobe
Flash, Processing, Max/MSP, Pure Data. Una tendencia tecnolgica
es utilizar Arduino como tarjeta de adquisicin de datos
desarrollando interfaces en software como JAVA, Visual Basic y
LabVIEW 6 . Las placas se pueden montar a mano o adquirirse.
El entorno de desarrollo integrado libre se puede descargar
gratuitamente. El software cuenta con, l as estructuras de control
son : Condicionales: if, if...else, switch case, Bucles: for, while, do.
While , Bifurcaciones y saltos: break, continue, return, goto.
Con tipos de datos son void, boolean, char, unsigned char, byte, int,
unsigned int, word, long, unsigned long, float, double, string,
array.
La conversin entre tipos de e stas funciones reciben como
argumento una variable de cualquier tipo y devuelven una
variable convertida en el tipo deseado ya sea char(), byte(), int(),
word(), long(), float()Cualificadores y mbito de las variables static,
volatile, const.

3.4. Dispositivos acoplables


3.4.1. Sensores.

Finales de carrera:
Sensor de contacto (tambin conocido como "interruptor de
lmite"), son
dispositivos elctricos, neumticos o mecnicos situados al final
del recorrido o de un elemento mvil, como por ejemplo una cinta
transportadora, con el objetivo de enviar seales que puedan
modificar el estado de un circuito.
Internamente pueden contener interruptores normalmente
abiertos (NA), cerrados (NC) o conmutadores dependiendo de la
operacin que cumplan al ser accionados, de ah la gran variedad
de finales de carrera que existen en mercado.
Los finales de carrera estn fabricados en diferentes materiales
tales como metal, plstico o fibra de vidrio.
Entre las ventajas encontramos la facilidad en la instalacin, la
robustez del sistema, es insensible a estados transitorios, trabaja
a tensiones altas, debido a la inexistencia de imanes es inmune a
la electricidad esttica.
Los inconvenientes de este dispositivo son la velocidad de
deteccin y la posibilidad de rebotes en el contacto, adems
depende de la fuerza de actuacin.
Estos sensores tienen dos tipos de funcionamiento: modo positivo
y modo negativo.
En el modo positivo el sensor se activa cuando el elemento a
controlar tiene una tarea que hace que el eje se eleve y se
conecte con el objeto mvil con el contacto NC (normal cerrado).
Cuando el muelle (resorte de presin) se rompe el sensor se
queda desconectado.
El modo negativo es la inversa del modo anterior, cuando el
objeto controlado tiene un saliente que empuje el eje hacia abajo,
forzando el resorte de copa y haciendo que se cierre el circuito.

3.4.2. Actuadores

Cmara de simulacin:
Utilizamos la cmara de la laptop lo cual no es conveniente ya
que no precisa muy bien los rasgos patolgicos de la persona
pero es econmica ya que contbamos con una laptop. En el caso
de poder implementarse el proyecto en oficinas centro de trabajo,
o en la misma universidad recomendamos una buena resolucin
de cmaras web que puedan tener lo necesario para los rasgos
fciles.
3.4.3. Comunicadores.

Cables UTP:
De los cables que presentan cuatro pares de trenzas suelen
usarse tan slo dos: uno que enva informacin y otro que la
recibe. Sin embargo, ambas tareas no pueden ser realizadas
simultneamente, por lo que el tipo de conexin se considera half
dplex. Cuando, en cambio, se usan los cuatro a la vez, dichos
trabajos pueden realizarse en forma paralela, y esto se conoce
como full dplex.
Por otro lado, como puntos fuertes de los cables UTP, cabe
destacar que son accesibles a nivel econmico y que su
implementacin es sencilla y eficaz para solventar muchos de los
problemas que presentan las redes bsicas de comunicacin.

Focos led:
Simboliza la sealizacin de la puerta de cada aula si permanece
abierta o est cerrado como una simulacin del sistema.

3.4.4. Servidor.

Xammp:
XAMPP es el acrnimo de Cualquier Plataforma (X), Apache (A),
MySQL (M), PHP (P) y Perl (P). Es una distribucin de Apache
sencilla y ligera que facilita enormemente a los desarrolladores
crear un servidor web local para realizar pruebas. Todo lo que
necesita para configurar un servidor web la aplicacin servidor
(Apache), la base de datos (MySQL), y un lenguaje de script
(PHP) est includo en un nico fichero extrable. XAMPP es
tambin multi-plataforma, lo que significa que funciona bien
tanto en Linux, como Mac o Windows. Dado que la mayora de
servidores web actuales usan los mismos componentes que
XAMPP, la transicin desde el servidor de prueba local al
servidor de produccin es extremadamente fcil tambin.

CAPITULO IV
4. Construccin del prototipo Fsico del Sistema.

4.1 Descripcin del Montaje.

Primer paso: Desarrollar un plano para la realizacin de a


maqueta donde simular el proyecto, en este caso el control
de asistencia mediante reconocimiento facial.
Segundo paso: luego de la construccin de la maqueta
pasamos a amoblarla con pequeas objetos como:
Sillas.
Carpetas unipersonales.
Pizarras.
Puertas.
Tercer paso: Empezamos a realizar el cableado de los
censores (Finales de carrera) ubicados en cada puerta, en
los pequeos salones de la maqueta.
Cuarto paso: realizamos el circuito, asi conectando varios
objetos para que circuito de luces funciones, tales como:
Protoboard.
Luces leds.
Resistencias de 1V.
Finales de Carreras.

Quinto paso: la conexin del circuito con el Arduino Uno,


ya programado con el cdigo para el encendido de las
luces leds.
Sexto paso: la programacin de la deteccin y
reconocimiento facial en el lenguaje de programacin
Python, y esta conectarlo tambin con el Arduino Uno.
Sptimo paso: conectar el python con el Php, haciendo
que el Php genere datos en el python sealando cul de los
salones simulados estn disponibles o no para su uso.
Octavo paso: el programa realizado en el Php realiza la
accin de obtener datos de presencia o inasistencia a las
clases, esta ser luego de realizarse el reconocimiento
facial por falte del programa realizado en el Python, y todos
estos datos son almacenados en la Data Base, echo en
MySQL.

4.2 Descripcin del Funcionamiento


Bsicamente las funciones estn basadas en las
funcionalidades de los programas realizados en los tres lenguajes de
programacin.
Estos lenguajes son:

Arduino: en este lenguaje esta realizado un programa simple, la


cual es una lgica para el encendido de luces la cual indicara si
los salones estn ocupadas o libres para el uso del dictado de
clases.

Pyton: en este lenguaje se desarrollo dos programas la cual lleva


por nombre Generador y el otro Reconocimientp, estos
archivos son de .py, el primer programa q es el Generado, es el
que almacena las fotografas a una escala de grices tomadas por
la cmara; esta almacenara segn el numero q fotografas q ud
desee. Y tambin esta almacena una carpeta con el nombre de
las persona q ud desee ponerla. El segundo programa es el
Reconocimientp la cual ejecuta ya el reconocimiento, mediante
comparaciones con las fotografas ya almacenadas por el anterior
programa realizado en python.

Php: Lenguaje basado en web, en la cal relauizamos una


programacin sencilla de almacenar y mostrar datos de las
personas ya reconocidas por la cmara mendiante el programa
en python.

CAPITULO V
5. Funcionamiento

5.1. Resultados de la estructura Fsica en


Funcionamiento.

Al comprobar el buen funcionamiento del sistema, hubo ciertos


problemas en la programacin, ya que los cdigos no marchaban
correctamente por errores internos de la propia codificacin.
Ya que el software funciona en ordenadores, que se convierten en
esa mquina para asi concluir su objetivo.
Sin ese conjunto de instrucciones programadas, los ordenadores
seran objetos inertes, como cajas de zapatos, sin capacidad siquiera
para mostrar algo en la pantalla.
Tambin al ejecutar el reconocimiento facial, hubo ciertas
descoordinaciones, pero manualmente se pudo arreglar en el
lenguaje Phyton y as conseguir que la cmara funcione
correctamente.
Solo se tuvo estas insatisfacciones al realizar el funcionamiento del
sistema; pero se pudo arreglar favorablemente.

5.2. Resultados de los datos obtenidos en


funcionamiento.

Al realizar la prueba del proyecto, en la primera instancia no se logr


el objetivo, ya que faltaba actualizar los cdigos corregidos, luego de
3 intentos funciono, ya que compilo perfectamente.
Como en la introduccin lo describimos, el funcionamiento de este
proyecto es a travs del programa en phyton, lo que mas se resalta
y se prioriza son los cdigos y su buen funcionamiento.
CAPITULO VI
6. Contrastacin de los Resultados con los Objetivos.

Luego de realizar la prueba del proyecto, se desarroll


favorablemente, por eso podemos asegurar que el proceso de
control de asistencia llegue a ser eficaz y de mucha ayuda
para la Universidad ya que esta ser puesto a travs del
Control De Asistencia Mediante Reconocimiento Facial
con presencia nica.
Con ello podemos asegurar que cada objetivo planteado
se cumplir, de manera que sea de carcter innovador
para la ciudad universitaria.

CONCLUSIONES, RECOMENDACIONES,
BIBLIOGRAFIA

Conclusiones:

El reconocimiento facial tiene una efectividad que decrece sensiblemente


en ambientes abiertos, es decir fuera de ambientes controlados.

En este proyecto se propone la identificacin de usuarios,


utilizando tcnicas de reconocimiento facial. Debido a la amplia
utilizacin de cmaras Web, la verificacin de identidad por medio
de reconocimiento facial es ahora posible realizarla sin equipos
especiales.

Se concluye, que ha mostrado ser efectivo para identificacin de grupos


reducidos, mostrndose cambios muy significativos entre las pruebas de
laboratorio realizadas y la prctica.

Recomendaciones:

Poses y expresiones del rostro

Mire siempre hacia el lente de la cmara.


Para el proceso de inscripcin use imgenes del rostro frontales y
cercanas a la cmara con una desviacin de rotacin de hasta 10
grados en cualquier direccin.
En el proceso de inscripcin utilice ms de una imagen del rostro,
para cubrir los puntos de vista ligeramente diferentes del
rostro. Cuando se logra un cubrimiento exitoso del rostro, este
puede ser reconocido hasta con 25 grados de desviacin de la
frontal.
En la etapa de inscripcin una expresin facial neutra (el rostro
despejado, ambos ojos abiertos y la boca cerrada) es la preferida.
Durante el proceso de identificacin y verificacin, ligeros cambios
en la expresin facial son recomendados para la deteccin de
rostro vital.
Si utiliza gafas debe tener varias imgenes (con y sin gafas) para la
etapa de inscripcin. As, durante la identificacin ser reconocido
en ambos casos.
Las gafas con marcos gruesos y las gafas de sol disminuirn la
precisin del reconocimiento facial.
Si cambia la apariencia del rostro por el vello facial, debe tener
varias imgenes, de la misma forma que con el uso de gafas.

Iluminacin:

Si las condiciones de iluminacin pueden ser controladas:

La iluminacin debe ser distribuida uniformemente a cada lado del


rostro y de arriba abajo, sin sombras importantes dentro de la regin
del rostro. Esto puede lograrse mediante el uso de la luz frontal
directa o iluminacin difusa.
Evite la luz solar o cualquier iluminacin adicional.
Evite la iluminacin que pueda producir reflejos en las gafas o
incluso en la piel de la cara.

Bibliografa ():

http://www.thisismyrobot.com/2010/04/face-detection-with-
opencv-20-python-26.html

https://realpython.com/blog/python/face-
recognition-with-python/

https://realpython.com/blog/python/face-detection-
in-python-using-a-webcam/

Das könnte Ihnen auch gefallen