Download - Sistema de Detección de Mentiras
-
8/17/2019 Sistema de Detección de Mentiras
1/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
INSTITUTO TECNOLÓGICO DE IZTAPALAPA
ING.MECATRONICA
INFORME TÉCNICO DE RESIDENCIAPROFESIONAL
TEMA:
SISTEMA DE DETECCION DE MENTIRAS
LUGAR DE REALIZACIÓN:CENTRO DE CIENCIAS APLICADAS Y DESARROLLO TECNOLOGICO
(CCADET), UNAM
ASESOR INTERNO:AGUEDA LUNA TORRES
ASESOR EXTERNO:DRA. FABIOLA MIROSLABA VILLALOBOS CASTALDI
PRESENTA:GUSTAVO LOPEZ BERNAL
No DE CONTROL:111080239
MEXICO, D.F. ABRIL / 2016
http://www.ccadet.unam.mx/secciones/depar/sub4/sinte/semb/FMVC.htmlhttp://www.ccadet.unam.mx/secciones/depar/sub4/sinte/semb/FMVC.html
-
8/17/2019 Sistema de Detección de Mentiras
2/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
RESUMEN
El presente documento detalla la metodología y las actividades para el desarrollo de un
sistema experto en la detección de emociones a través de puntos específicos en el rostro.
Dicho sistema se desarrolló con el lenguaje CHEHRA, MATLAB y C++, para generas los
recursos del sistema.
El problema se centra en la mayoría de Expresión de Análisis y Reconocimiento Facial, la
literatura da muchos sistemas propuestos con un enfoque sobre la aparición binaria de
expresiones, a menudo, ya sea emociones básicas o unidades de actuación FACS (UA). En
realidad, las expresiones pueden variar mucho, principalmente en la intensidad con la que se
da la interpretación del significado de las expresiones. Además, a pesar de los esfuerzos hacia
las normas de evaluaciones (por ejemplo FERA 2011), todavía existe mucha necesidad de
procedimientos de evaluación para emociones. Por lo tanto, es muy poca su comparabilidad.
Esto nos lleva al contraste con los problemas más establecidos en el análisis de la conducta
humana en un vídeo, tales como detección de rostros y el reconocimiento de rostros.
-
8/17/2019 Sistema de Detección de Mentiras
3/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
INDICE
RESUMEN ......................................................................................................................... 2
INDICE .............................................................................................................................. 3
1.1 Introducción ................................................................................................................. 4
1.2 Justificación ................................................................................................................. 5
1.3 Objetivo general ........................................................................................................... 6
1.4 Objetivo particular ........................................................................................................ 6
1.5 Generalidades De La Empresa .................................................................................... 7
1.6 Problemas a resolver, priorizándolos ........................................................................... 9
1.7 Fundamento teórico ................................................................................................... 10
1.8 Investigación del Rostro Humano .............................................................................. 12
1.8.2 Puntos Básicos Del Rostro ..................................................................................... 13
1.8.3 Partes Del Rostro Humano ..................................................................................... 14
1.9 Emociones ................................................................................................................. 15
1.9.1 Detección y Reconocimiento de Emociones ........................................................... 15
1.9.2 Escalas de la Imagen para su Estudio .................................................................... 16
2.1 Programas Para Desarrollo de Código. ...................................................................... 18
3.1 Desarrollo del software .............................................................................................. 21
4.1 Pruebas Del Sistema ................................................................................................. 44
5.1 Resultados ................................................................................................................. 48
5.2 Conclusiones ............................................................................................................. 52
ANEXO ............................................................................................................................ 53
6.1 Bibliografía ................................................................................................................. 69
-
8/17/2019 Sistema de Detección de Mentiras
4/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.1 Introducción
El reconocimiento es un atributo básico de los humanos. La localización de los puntos faciales
es el paso inicial para determinar la expresión y apariencia del rostro. Esto lleva a que podemos
determinar con una mayor claridad las expresiones en tiempo real. Para determinar las
expresiones faciales debemos tener en cuenta varias partes del rostro tales como las esquinas
de los ojos, las esquinas de las cejas, las esquinas y los puntos medios exteriores de los labios,
esquinas de las ventanas de la nariz, la punta de la nariz, y la punta de la barbilla. Dicha
detección de puntos faciales es a menudo el primer paso en aplicaciones de visión por
ordenador, tales como la detección e identificación del rostro, el reconocimiento de
expresiones faciales, el seguimiento en tiempo real del rostro y la lectura de labios.
El Modelo de Algoritmos, son ampliamente utilizados hoy en día para la alineación de la cara
y el seguimiento. Actualmente, sin embargo, esta etapa se lleva a cabo usualmente mediante
el etiquetado manualmente el requerido cambio de agujas. La localización de los puntos
faciales estables, tales como las esquinas interiores de los ojos y las esquinas interiores de
las fosas nasales también se utiliza generalmente para registrar cada marco de una secuencia
de imágenes de entrada con el primer fotograma de la misma. A su vez, la robustez del
algoritmo de detección de punto de característica facial altamente afecta al rendimiento global
del sistema.
Los métodos anteriores para la detección de puntos de características faciales podrían
clasificarse en dos categorías: a base de textura y métodos basados en la forma. Los métodos
basados en la textura modelo local textura alrededor de un punto determinada característica,
por ejemplo el píxel valores en una pequeña región alrededor de una esquina de la
boca. Forma- métodos basados consideran todos los puntos de características faciales como
la forma, el cual se aprende a partir de un conjunto de caras marcadas, y tratar de encontrar.
-
8/17/2019 Sistema de Detección de Mentiras
5/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.2 Justificación
Las emociones o sentimientos son parte de nuestra vida y nos proporcionan la energía para
resolver un problema o realizar una actividad nueva. En definitiva, actúan como resortes que
nos impulsan a actuar para conseguir nuestros deseos y satisfacer nuestras necesidades.
Algunas de las reacciones fisiológicas y comportamentales que desencadenan las emociones
son innatas, mientras que otras pueden adquirirse. Unas se aprenden por experiencia directa,
como el miedo o la ira, pero la mayoría de las veces se aprende por observación de las
personas de nuestro entorno.
Si podemos contar con un sistema que pueda detectar las emociones a través de programas
basados en un lenguaje de programación, podríamos obtener un porcentaje más alto en
cuanto a la expresión facial que da el ser humano esto podría beneficiar en gran medida, ya
que tendríamos una precisión en nuestros resultados.
Justificando el desarrollo del sistema tenemos los siguientes puntos:
1. El proyecto dará una mayor eficacia en la detección de mentiras.
2. Tendrá una aplicación en cualquiera ámbito del procesamiento del rostro, ya sea en
reconocimiento facial, seguimiento del rostro y análisis de expresiones.
3. Podrá ser utilizado en cualquier proyecto que requiera y utilice una investigación en el
ámbito de visión por computadora y expresión facial del ser humano.
-
8/17/2019 Sistema de Detección de Mentiras
6/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.3 Objetivo general
Realizar un sistema en la detección de mentiras en la que se pueda detectar a
través de emociones si está mintiendo o diciendo la verdad, basada en la
plataforma de programación MATLAB.
1.4 Objetivo particular
Identificar en una base de datos los patrones para el reconocimiento facial a
través de regiones específicas del rostro.
Enfocar el desarrollo del programa para la detección de mentiras.
Desarrollar el algoritmo en base a la programación Chehra.
Implementar el algoritmo en una interfaz gráfica que nos permita ver resultados.
Aplicar el sistema en la detección de emociones.
-
8/17/2019 Sistema de Detección de Mentiras
7/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.5 Generalidades De La Empresa
CCADET (Centro de Ciencias Aplicadas y Desarrollo Tecnológico)
Universidad Nacional Autónoma de México, CCADET
Dirección:
Circuito exterior s/n
C.P. 04510
CD. Universitaria
México, D.F.
Apdo. Postal 70-186
Teléfono: 56228602, extensión: 1108
Fax: 56228620
Correo: [email protected]
Giro: Investigación y Educación
mailto:[email protected]:[email protected]:[email protected]:[email protected]
-
8/17/2019 Sistema de Detección de Mentiras
8/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.5.1 Descri pció n del d epartamento o área de trabajo
Nombre del departamento:
Sistemas Inteligentes
Estructura departamental:
Misión:
La misión del CCADET es realizar investigación, desarrollo tecnológico, formación de recursos
humanos y difusión en los campos de la instrumentación, micro y nanotecnologías, tecnologíasde la información y educación en ciencia y tecnología, con un enfoque multidisciplinario,
integrando las actividades de investigación y desarrollo tecnológico y buscando aplicar el
conocimiento generado a la solución de problemas relevantes de nuestro entorno.
Visión:
Transformarse en una entidad académica con reconocimiento nacional e internacional por la
calidad de sus investigaciones; su capacidad para generar, asimilar, y transferir tecnología; su
papel sobresaliente en la promoción de la investigación aplicada y el desarrollo tecnológico através de programas y proyectos multidisciplinarios e integradores de ciencia y tecnología, con
impacto en la solución de problemas nacionales y globales; y su compromiso con la formación
de recursos humanos de alta calidad en sus áreas de especialidad.
Objetivos:
Difundir sus logros científicos a través de las publicaciones y los congresos
internacionales y nacionales de mayor impacto.
Transferir sus desarrollos tecnológicos al sector externo tanto nacional como
internacional.
Proporcionar consultoría (educativa, técnica, científica) y servicios técnicos.
Ayudar a promover el desarrollo tecnológico, científico y educacional del país.
-
8/17/2019 Sistema de Detección de Mentiras
9/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.6 Problemas a resolver, priorizándolos
La detección de emociones es un campo de investigación muy activo, aún es muy difícil poder
tener un patrón de reconocimiento muy estable en cuanto a las emociones, ya que la
apariencia del rostro y en las emociones es muy variable.
El rostro puede ser rígido y dinámico con una gran diversidad en su forma, color, textura y
tamaño, pero no solo de eso lleva un gran problema sino también de otros muchos factores
tales como la iluminación (contraste, sombras), cabeza, expresión facial y otras características
faciales(el maquillaje, la barba).
Otro problema muy frecuente es la obtención de la imagen ya que son muy pocos datos los
que pueden arrojar la imagen en tiempo real y tenga una resolución buena en cuanto a la
utilización de los pixeles.
El encontrar una solución a este problema es difícil, lo que se tratara en este trabajo es
encontrar la forma de tener una mayor precisión en cuanto a la imagen y la detección de puntos
especifico en el rostro, el sistema pretende dar un resultado satisfactorio en condiciones que
estén mejor definidas y tenga una mayor precisión en cuanto a la lectura del rostro en especial
a la de emociones.
-
8/17/2019 Sistema de Detección de Mentiras
10/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.7 Fundamento teórico
El psicólogo Paul Ekman estudió a fondo las emociones, y la manera que tenemos para
expresar en nuestro rostro lo que estamos sintiendo. Las seis emociones básicas de Paul
Ekman son rabia, asco, miedo, alegría, tristeza y sorpresa. Estas seis eran para él las
emociones primarias, que son muy diferentes de las secundarias. Estas seis emociones son
adaptativas. Lo que sentimos tendrá una respuesta fisiológica pues expresaremos nuestros
sentimientos a través de nuestro rostro. Las emociones básicas de Paul Ekman son
plenamente biológicas. No aprendemos a expresar asco o miedo a causa de una transmisión
cultural, sino que todos hemos nacido sabiendo de qué manera expresar estas emociones.
También son universales y están prefijadas genéticamente, pues hemos nacido sabiendo de
qué manera expresar estas emociones cuando las sentimos. La expresión de estas emociones
básicas nos permite comprender qué siente otra persona, pudiendo identificar la alegría con
una sonrisa verdadera y sabiendo que la persona no siente alegría si su sonrisa no es
verdadera sino fingida.
Las emociones son muy importantes precisamente porque lo que sentimos determinará
nuestra motivación, nuestra habilidad para aprender información novedosa y nuestra manerapara comunicarnos con los demás.
Una manera muy eficiente de poder detectar emociones es a través de imágenes y videos, ya
que estos nos permiten tener una captura del rostro en tiempo real. Las imágenes son
ampliamente utilizadas como fuentes importantes de información en el uso de aplicaciones
de Face-Tracking (Seguimiento de la Cara). Su aplicación son centradas en el ser humano
principalmente en el rostro y llevada a: vigilancia de seguridad, desarrollo de sistemas
biométricos, juegos multimedia de interacción hombre-máquina, robótica y realidad virtual.
Gracias al gran avance tecnológico en crear ciertos programas para la captura y estudio de
imágenes referente al rostro se ha podido crear nuevas y mejores aplicaciones dándole un
nuevo enfoque y haciendo una mayor precisión en el estudio de las expresiones faciales.
http://tallerescognitiva.com/siete-formas-de-hacer-feliz-una-persona-mayor/http://tallerescognitiva.com/siete-formas-de-hacer-feliz-una-persona-mayor/
-
8/17/2019 Sistema de Detección de Mentiras
11/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Los sistemas de obtención de imágenes y video por reconocimiento de patrones en tiempo
real, han obtenido buenos resultados en el estudio del rostro ya que permiten hacer cálculosmás precisos.
Un sistema de reconocimiento facial se puede realizar de dos maneras:
Verificación
Autentificación e Identificación.
Cuando hablamos de verificación involucramos una confirmación o negación de la identidad
reclamada por una persona (uno-a-uno).
Y con la identificación se procura más en establecer la identidad de la persona ya que estapodría encontrarse en un grupo de personas (uno-a-N personas).
Aunque los dos sistemas llevan algoritmos similares, sus aplicaciones son distintas en el
ámbito de reconocimiento facial.
En verificación, sus principales aplicaciones van más en el control de acceso, por ejemplo:
accesos a una computadora, entrada de un dispositivo móvil, control de puertas, acceso a
banco de datos, etc.
En identificación, su aplicación va más ligada a video vigilancia (lugares públicos zonas
restringidas, etc.), la recuperación de información (base de datos, datos multimedia, etc.) o
interacción hombre-máquina (video juegos, etc.).
-
8/17/2019 Sistema de Detección de Mentiras
12/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.8 Investigación del Rostro Humano
1.8.1 El Rostr o Humano
El rostro puede ser diferente en cada persona ya sea en su tamaño, en sus facciones e incluso
en algunas lesiones que pueda tener. En el mundo existen personas con un rostro perfecto,
tal es el caso de una joven británica.
Su armónico óvalo facial, su boca perfecta y sus grandes ojos azules encajan en el canon de
belleza natural, pero lo más relevante ha resultado ser que la fisonomía de su rostro es
matemáticamente perfecta, con una simetría y dimensiones óptimas, y la distancia entre sus
ojos, nariz, boca, frente y barbilla es la perfecta. (Figura 1.1), de ahí se desprende el estudiollamado fisiognomía.
La fisiognomía es el arte de estudiar las cabezas y las caras (forma de la nariz, cejas, etc.) y
su origen es muy antiguo. Existen otras ramas que se dedican al estudio del rostro pero no
entraremos en ellas ya que solo nos dedicaremos al estudio de emociones.
Figura 1.1 Florence Colgate es, según la ciencia, lamujer con el rostro perfecto. Esta chica de 18 añosha nacido con el sueño de la mayoría de mujeres delplaneta: una simetría facial perfecta.
-
8/17/2019 Sistema de Detección de Mentiras
13/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.8.2 Puntos Básicos Del Rostro
Antes de desarrollar el sistema de reconocimiento de emociones, primero se debe saber la
región a estudiar en este caso sería el rostro humano, por lo tanto se hará un pequeño estudio
de sus partes y sobretodo las regiones de interés.
Para comenzar el estudio debemos entender que es el rostro humano y en cuantas partes se
componen. He aquí una pequeña descripción:
La cara (también rostro y faz) es la parte frontal de la cabeza, en los humanos la parte
anteroinferior, desde las cejas a la barbilla.
Una vez comprendido las partes del rostro conoceremos sus partes básicas, dichas partes
serán las que nos lleven en todo el proyecto para su comprensión y utilización en la detección
de emociones.
https://es.wikipedia.org/wiki/Cabezahttps://es.wikipedia.org/wiki/Humanohttps://es.wikipedia.org/wiki/Cejahttps://es.wikipedia.org/wiki/Barbillahttps://es.wikipedia.org/wiki/Barbillahttps://es.wikipedia.org/wiki/Cejahttps://es.wikipedia.org/wiki/Humanohttps://es.wikipedia.org/wiki/Cabeza
-
8/17/2019 Sistema de Detección de Mentiras
14/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.8.3 Partes Del Rostro Humano
El rostro puede ser diferente en cada persona ya sea en su tamaño, en sus facciones e incluso
en algunas lesiones que pueda tener.
Sabiendo que es el rostro nos dedicaremos a ciertas partes que nos llevaran al resultado final
que es la detección de emociones. Para ello necesitamos saber cuáles son esas partes.
(Figura 1.2)
El rostro se compone de:
Cejas
Ojos
Nariz
Boca
Labios
Barbilla.
Boca
Nariz
Ojos
Cejas
Barbilla
Labios
Figura 1.2. Partesbásicas del rostro
-
8/17/2019 Sistema de Detección de Mentiras
15/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.9 Emociones
1.9.1 Detección y Reconocimiento de Emociones
El primer paso para iniciar este sistema es el reconocimiento del rostro ya sea que podamos
obtenerlo en imagen o en video independientemente de cómo lo queramos utilizar, en este
caso nos basaremos a la toma de una imagen con una serie de patrones en regiones
específicas del rostro, aunque algunas veces es una complicación la toma de una imagen
debido a muchos factores ya sea la iluminación, la posición, la escala del rostro, edad de la
persona y la orientación de la misma.
El reconocimiento de emociones se lleva a cabo en la vida diaria, el estudio de Paul Ekmanrevela que nosotros los humanos podemos tener y crear más de 7,000 expresiones y cambios
en el rostro lo que hace más difícil la detección de ellos ya que son en micro- segundos.
Pero en este estudio y para crear el sistema se pretender reconocer solo los más básicos que
son la ira, la felicidad, sorpresa, asco, enfado, desprecio, tristeza y miedo. (Figura 1.3)
Figura 1.3. Emociones básicas según Paul Ekman
-
8/17/2019 Sistema de Detección de Mentiras
16/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.9.2 Escalas de la Imagen para su Estudio
Uno de los aspectos más importantes, para definir la calidad de las imágenes digitales, es la
resolución física o superficial de los píxeles. Siendo el píxel, el elemento más pequeño en que
puede dividirse una imagen digital, la superficie real que representa cada uno de ellos define
los objetos o detalles más pequeños que pueden observarse en una imagen.
La resolución se utiliza también para clasificar casi todos los dispositivos relacionados con las
imagen digital, ya sean pantallas de ordenador o televisión, impresoras, escáneres, cámaras
digitales, etc.
La resolución total expresa el número de píxeles que forman una imagen de mapa de bits. La
calidad de una imagen también depende de la resolución que tenga el dispositivo que la capta.
En el caso de las cámaras, el número de píxeles que contenga una fotografía depende de la
configuración y, como máximo, de cuántos píxeles utilice el sensor CCD (Charge- Coupled-
Device) de la cámara para captar la imagen.
Es importante no confundir la resolución de una imagen con su escala de representación. La
escala de representación de una imagen es la relación que existe entre el tamaño real de los
objetos y el tamaño que tienen en la representación gráfica. La imagen digital en sí misma es
adimensional y puede representarse a cualquier tamaño.
Figura 1.4.La imagen de la izquierda es de 256 x 256 pixeles cada pixel ocupa unpunto en el moni tor. Mientras que la imagen de la derecha es de 32 x 32 pixeles(cada pixel ocupa 64 puntos en el monito r).
-
8/17/2019 Sistema de Detección de Mentiras
17/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.9.3 Procesamiento de la i magen
El principal objetivo de las técnicas de mejoramiento de imagen es procesar una imagen con
el fin de hacerla más adecuada para una determinada aplicación o procesamiento posterior.
Depende por tanto del problema específico a resolver el que se emplee una u otra técnica. Los
métodos de mejora de imagen se pueden dividir en dos campos diferentes: métodos en el
dominio frecuencia y métodos en el dominio espacial. Los primeros se basan en modificar la
transformada de Fourier de la imagen, mientras que los segundos se basan en manipulaciones
directas sobre los píxeles de la imagen.
-
8/17/2019 Sistema de Detección de Mentiras
18/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
2.1 Programas Para Desarrol lo de Código.
El uso de herramientas en programación de software es muy útil ya que se necesitan ciertas
plataformas para la creación del mismo.
En este capítulo se mostrara el desarrollo del software en la plataforma MATLAB, pero para
eso se necesita saber cómo funciona esta plataforma, a continuación se dará una pequeña
explicación de que es MATLAB, Chehra y C++.
2.1.1 MATLAB
MATLAB es un entorno de cálculo técnico de altas prestaciones para cálculo numérico yvisualización. Integra:
Análisis numérico
Cálculo matricial
Procesamiento de señales
Gráficos
En un entorno fácil de usar, donde los problemas y las soluciones son expresados como se
escriben matemáticamente, sin la programación tradicional. El nombre MATLAB proviene de
``MATrix LABoratory'' (Laboratorio de Matrices). MATLAB fue escrito originalmente para
proporcionar un acceso sencillo al software matricial desarrollado por los
proyectos LINPACK y EISPACK, que juntos representan lo más avanzado en programas de
cálculo matricial. MATLAB es un sistema interactivo cuyo elemento básico de datos es una
matriz que no requiere dimensionamiento.
Esto permite resolver muchos problemas numéricos en una fracción del tiempo que llevaría
hacerlo en lenguajes como C, BASIC o FORTRAN. MATLAB ha evolucionado en los últimos
años a partir de la colaboración de muchos usuarios. En entornos universitarios se ha
convertido en la herramienta de enseñanza estándar para cursos de introducción en álgebra
lineal aplicada, así como cursos avanzados en otras áreas. En la industria, MATLAB se utiliza
para investigación y para resolver problemas prácticos de ingeniería y matemáticas, con un
gran énfasis en aplicaciones de control y procesamiento de señales. MATLAB también
proporciona una serie de soluciones específicas denominadas TOOLBOXES.
-
8/17/2019 Sistema de Detección de Mentiras
19/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Estas son muy importantes para la mayoría de los usuarios de MATLAB y son conjuntos de
funciones MATLAB que extienden el entorno MATLAB para resolver clases particulares deproblemas como:
Procesamiento de señales
Diseño de sistemas de control
Simulación de sistemas dinámicos
Identificación de sistemas
Redes neuronales y otros.
Probablemente la característica más importante de MATLAB es su capacidad de crecimiento.
Esto permite convertir al usuario en un autor contribuyente, creando sus propias aplicaciones.
En resumen, las prestaciones más importantes de MATLAB son:
Escritura del programa en lenguaje matemático.
Implementación de las matrices como elemento básico del lenguaje, lo que permite una
gran reducción del código, al no necesitar implementar el cálculo matricial.
Implementación de aritmética compleja.
Un gran contenido de órdenes específicas, agrupadas en TOOLBOXES.
Posibilidad de ampliar y adaptar el lenguaje, mediantes ficheros de script y
funciones .m.
Fig.1.5 MATLAB
-
8/17/2019 Sistema de Detección de Mentiras
20/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
2.1.2 Chehr a
Chehra (que significa "cara" en Hindi) es un completamente automático cara en tiempo real
y detección de ojos punto de referencia y software de seguimiento capaz de manejar las caras
bajo entorno natural incontrolada.
Ha sido desarrollado por Akshay Asthana y Stefanos Zafeiriou en el Imperial College de
Londres.
2.1.3 Leng uaje C++
C++ es un lenguaje de programación orientado a objetos que toma la base del lenguaje C y le
agrega la capacidad de abstraer tipos como en Smalltalk.
La intención de su creación fue el extender al exitoso lenguaje de programación C conmecanismos que permitieran la manipulación de objetos. En ese sentido, desde el punto de
vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.
Posteriormente se añadieron facilidades de programación genérica, que se sumó a los otros
dos paradigmas que ya estaban admitidos (programación estructurada y la programación
orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación multi-
paradigma.
Dentro del programa se utilizara para dar sintaxis de coordenadas a las imágenes.
Fig. 1.6 Lenguaje Chehra
Fig.1.7 Lenguaje C++
https://sites.google.com/site/akshayasthana/https://wp.doc.ic.ac.uk/szafeiri/https://wp.doc.ic.ac.uk/szafeiri/https://sites.google.com/site/akshayasthana/
-
8/17/2019 Sistema de Detección de Mentiras
21/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
3.1 Desarrollo del software
Primeramente para desarrollar el software necesitamos crear una interfaz gráfica de usuario
donde se lleve a cabo estas funciones, para ello crearemos dentro de Matlab un GUI en sus
siglas en inglés Graphical User Interface (Interfaz Gráfica de Usuario).
Para comenzar nuestro proyecto, lo podemos hacer en dos formas:
Ejecutando la siguiente instrucción en la ventana de comando:
>> guide
Haciendo también un click en New > Graphical User Interface.
Fig.1.8 Graphical User Interface
-
8/17/2019 Sistema de Detección de Mentiras
22/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Al momento de dar click se presentara un cuadro de dialogo como el siguiente:
a) Blank GUI(Default )
Esta opción grafica de usuario en blanco (viene predeterminada), nos presenta un
formulario nuevo, con el cual empezaremos a diseñar nuestro programa.
b) GUI with Uicontrols
Esta opción presenta un ejemplo en el cual la masa, dada la densidad y el volumen, en
alguno de los dos sistemas de unidades. Podemos ejecutar este ejemplo y obtener
resultados.
c) GUI with Axes and Menu
Esta opción es otro ejemplo el cual contiene el menú File con las opciones Open, Print
y Close. En el formulario tiene un Pop menú, un push button y un objeto Axes, podemos
ejecutar el programa eligiendo alguna de las seis opciones que se encuentran en el
menú desplegable y haciendo click en el botón de comando.
d) Modal Question Dialog
Con esta opción se muestra en la pantalla un cuadro de dialogo común, el cual consta
de una pequeña imagen, una etiqueta y dos botones Yes y No, dependiendo del botón
que se presione, el GUI retorna el texto seleccionado (la cadena de caracteres ‘Yes’ o
‘No’).
Fig.1.9 Inic io de GUI
-
8/17/2019 Sistema de Detección de Mentiras
23/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Para nuestro proyecto utilizaremos la primera opción ya que se iniciara desde cero y se le dará
diseño a nuestro programa.
Para ello daremos click en la opción Blank GUI (Default) con lo cual nos aparecerá nuestro
entorno de diseño en GUI como el siguiente:
Una vez iniciada nuestra interfaz utilizaremos las herramientas que están del lado derecho de
la pantalla como se muestra a continuación:
Fig.1.10 Blank GUI (Default)
Fig.1.11 Barra de Herramientas
-
8/17/2019 Sistema de Detección de Mentiras
24/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Cada uno tiene función diferente, nosotros solo nos basaremos a 4 de estas funciones para
poder llevar a cabo nuestro sistema.En la siguiente tabla se da una explicación de todas las funciones y posteriormente
mostraremos cómo se utilizan con nuestro código.
Ya conociendo la función de nuestras herramientas pasaremos a iniciar nuestro diseño de
interfaz.
Control Valor de estilo DescripciónCheck box checkbox Indica el estado de una opción o atributo.Editable Text Edit Caja para editar textoPop-up menú popupmenu Provee una lista de opcionesList Box Listbox Muestra una lista deslizablePush Button Pushbutton Invoca un evento inmediatamenteRadio Button Radio Indica una opción que puede ser seleccionadaToggle Button Togglebutton Solo dos estados, “on” o “off” Slider Slider Usado para representar un rango de valoresStatic Text text Muestra un string de texto en una cajaPanel Button Agrupa botones como un grupoButton Group Permite exclusividad de selección con los radio
button
1.1Tabla de funciones
-
8/17/2019 Sistema de Detección de Mentiras
25/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
3.1.1 Diseño de in terfaz
Iniciaremos seleccionando un pushbutton lo colocamos en nuestra interfaz (figura 1.12).
Daremos doble click y nos mostrara las propiedades (figura 1.13) Nos iremos a la opción Tag
y borramos su contenido y escribiremos video que será nuestro nombre de inicio en la interfaz.
Dentro del mismo asignaremos el nombre en la opción String, borramos el contenido y
daremos el nombre de seleccionar_video.
Fig.1.12 Pushbutton
Fig.1.13 Propiedades / video
-
8/17/2019 Sistema de Detección de Mentiras
26/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Para aislar el botón se utilizara la opción Panel, y de la misma forma dimos doble click nos
dirigimos a la opción String y cambiamos el nombre a PROCESAR VIDEO (FRAMES) de talforma que nos quede de esta manera (Figura 1.14).
Esto nos ayudara a dar un título a cada botón que se utilizara en la interfaz.
Una vez terminada esta opción procedemos a introducir otro pushbutton que será para abrir
la imagen a estudiar.
Iniciamos dando click en pushbutton, lo colocamos en nuestra interfaz y se realiza el mismo
paso como el botón anterior, solo que esta vez el nombre cambia a Seleccionar_Imagen. Y
agregaremos otro Panel con el nombre de IMAGEN DE ESTUDIO. (Figura 1.14).
Ahora asignaremos donde se verá la imagen ya con el estudio de puntos en el rostro. Para
eso nos dirigimos a las herramientas y utilizamos la opción Axes, daremos click y la colocamos
en nuestra interfaz, después daremos doble click y al abrir propiedades nos vamos a Tag y
colocamos el nombre de axImage. Agregamos otro Panel con el nombre de IMAGEN
PROCESADA. (Figura 1.15).
Fig.1.14 Procesar Video
Fig.1.14 Seleccionar Imagen
-
8/17/2019 Sistema de Detección de Mentiras
27/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Enseguida colocaremos dos Text, el primer Text contendrá las 7 emociones que se utilizaran
para cada imagen a estudiar y el segundo Text contendrá el porcentaje de cada emoción.
Nos vamos a la opción Text la pones en nuestra interfaz, le damos doble click, nos vamos a
la opción String y colocamos las opciones que son Sorpresa, Alegría, Asco, Ira, Tristeza y
Miedo. Y en el segundo Text le asignaremos el nombre en el String de 0% que será para
obtener el resultado. Aquí utilizamos otro Panel con el nombre de RESULTADOS DE
EXPRESION (Figura 1.16).
Una vez terminado esto pasaremos a colocar un Popupmenu que nos ayudara a saber ladistancia entre puntos que queremos saber dependiendo cada imagen y que nos dará tres
enfoques en el rostro con diferente patrón en el porcentaje.
Para ello nos dirigimos a la opción Popupmenu damos click y la colocamos en nuestra
interfaz, ahora daremos doble click en el mismo y nos dirigimos a String, y asignaremos el
Fig.1.15 Axes
Fig.1.16 Resultado de Expresión
-
8/17/2019 Sistema de Detección de Mentiras
28/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
nombre de Enfoque 1, Enfoque 2, Enfoque 3, mientras que en el Tag se le dejara el nombre
por default. Aquí también se asignara un Panel, que asignaremos con el nombre de PUNTOS(Figura 1.17).
Una vez generada completamente la interfaz a utilizar nos quedara de la siguiente manera
(Figura 1.18).
Procedemos a guardarla con el nombre de DETECTOR.fig esto nos permitirá llamarla cuando
nos encontremos en el editor y demos correr a nuestro código.
Fig.1.17 Puntos
Fig.1.18 Interfaz Terminada
-
8/17/2019 Sistema de Detección de Mentiras
29/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
3.1.2 Desarrol lo Del Código
Una vez guardada la interfaz automáticamente nos arrojara al editor con el siguiente código.
Inicio del código en la interfaz.
Function varargout = GUI (varargin)%código MATLAB GUI para GUI.fig%Interfaz gráfica de usuario, por sí mismo, crea una nueva interfaz gráfica de %usuario oaumenta el singleton existente.%%H = interfaz gráfica de usuario devuelve el identificador de una nueva interfaz %gráfica deusuario o la palanca para el singleton existentes *.%%Interfaz gráfica de usuario (‘RETROLLAMADA ‘, hObject, EVENTDATA, %manijas) llama allocal de función llamada RETROLLAMADA en GUI.M con los %argumentos de entrada dados%Interfaz gráfica de usuario (‘propiedad ‘, ' Valor ' ) crea una nueva interfaz %gráfica deusuario o aumenta el singleton existentes *. A partir de la izquierda, %los pares de valores depropiedades se aplican a la interfaz gráfica de usuario %antes de GUI_OpeningFcn se llama.Un nombre de propiedad no reconocido o %valor no válido hace parada solicitud depropiedades. Todas las entradas se %pasan a través de GUI_OpeningFcn varargin.%%Ver Opciones de interfaz gráfica de usuario en el menú Herramientas de GUIDE. %Elige"GUI permite sólo una instancia para funcionar (Singleton)”. %% Ver también: GUÍA, guidata, GUIHANDLES.%Editar el texto anterior para modificar la respuesta para ayudar GUI%Modificado por última GUÍA v2.5 14 -Abr -2016 13:50:54%Comience el código de inicialización - NO EDITEgui_Singleton = 1;gui_State = struct ('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn' , @GUI_OpeningFcn, ... 'gui_OutputFcn', @GUI_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback' , []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});end
if nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else gui_mainfcn(gui_State, varargin{:});
end
-
8/17/2019 Sistema de Detección de Mentiras
30/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
% Código de inicialización final - NO EDITE% Se realiza justo antes de la GUI donde se hace visible. Function GUI_OpeningFcn (hObject, eventdata, handles, varargin)% Esta función no tiene argumentos de salida, consulte OutputFcn. HObject manejar con lafigura event data reservados.Que se definirán en una futura versión de MATLAB se ocupa de la estructura con asas y losdatos de usuario (véase guidata) varargin argumentos de línea de comando para interfazgráfica de usuario (ver VARARGIN)
Elija salida de línea de comandos para la interfaz gráfica de usuario por defecto.
handles.output = hObject; Actualización se encarga de la estructura
guidata(hObject, handles);
UIWAIT hace que espera la respuesta del usuario GUI (ver UIRESUME) uiwait(handles.figure1);
Las salidas de esta función se devuelven a la línea de comandos.
function varargout = GUI_OutputFcn(hObject, eventdata, handles)
Arreglo de celdas varargout para el retorno de argumentos de salida (ver VARARGOUT);HObject manejar con la figura eventdata reservados – que se definirán en una futura versiónde MATLAB se ocupa de la estructura con asas y los datos de usuario.
%Obtener predeterminado la salida de línea de comandos de la estructura de asasvarargout{1} = handles. Output;
%Ejecuta el botón a presionar btnSelectImage.
function btnSelectImage_Callback(hObject, eventdata, handles)
% HObject maneja a btnSelectImage (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Se ocupa de la estructura con asas y los datos de usuario (véase guidata )
%Ejecuta durante la creación del objeto, después de ajustar todas las propiedades. function uipanel1_CreateFcn(hObject, eventdata, handles)% HObject maneja a uipanel1 (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Maneja vacío - mangos no se crea hasta que todos llaman CreateFcns
-
8/17/2019 Sistema de Detección de Mentiras
31/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
% --- Ejecuta al cambiar la selección en popupmenu
function popupmenu_Callback(hObject, eventdata, handles)% HObject manejar a PopUpMenu (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Se ocupa de la estructura con asas y los datos de usuario (véase guidata )
% Indicaciones: contenido = cellstr (get (hObject, ' Cadena ‘)) vuelve PopUpMenu contenidoscomo matriz celular% Contenido {get (hObject, ' Valor ‘)} devuelve el elemento seleccionado a partir popupmenu
% --- Ejecuta durante la creación del objeto, después de ajustar todas las propiedades.function popupmenu_CreateFcn(hObject, eventdata, handles)
% HObject manejar a PopUpMenu (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Maneja vacío - mangos no se crea hasta que todos llaman CreateFcns% Indirecta: controles PopUpMenu por lo general tienen un fondo blanco en Windows. VerISPC% y el ordenador.
% --- Ejecuta el botón de prensa en vídeo.
function Video_Callback(hObject, eventdata, handles)
%HObject a manejar vídeo (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Se ocupa de la estructura con asas y los datos de usuario (véase guidata)
Dentro del editor aparece este código que se representa cada herramienta que pusimos dentro
de la interfaz y que nos ayudara a colocar en cada opción el código que se desarrolló y el
código establecido Chehra, para la detección de mentiras y emociones.
Ahora se mostrara donde se colocara cada código y al final del mismo se mostrara su función.
La primera parte de nuestro programa será introducirá el código del programa Chehra conalgunas modificaciones para el completo uso del mismo. El código se colocara en la opción:
function varargout = GUI_OutputFcn(hObject, eventdata, handles)
%Arreglo de celdas varargout para el retorno de argumentos de salida ( ver VARARGOUT ) ;% HObject manejar con la figura% Eventdata reservados - que se definirán en una futura versión de MATLAB
-
8/17/2019 Sistema de Detección de Mentiras
32/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
% Se ocupa de la estructura con asas y los datos de usuario (véase guidata )
%Obtener predeterminado de salida de línea de comandos de la estructura de asasvarargout{1} = handles.output;
function[all_landmarks]= classifyImage(image_path,image_name,handles)value = get(handles.popupmenu, 'Value');
if value==1vari=findobj(gcbf, 'Tag','txtDescripcion');set(vari,'String','Éste enfoque usa 40 distancias');main_features={'5.4' '1.1';'5.4' '1.2';'5.4' '1.3';'5.4' '1.4';'5.4' '1.5';'5.4' '2.1';'5.4' '2.2';'5.4'
'2.3';'5.4' '2.4';'5.4' '2.5';'5.4' '3U.1';'5.4' '3U.2';'5.4' '3U.3';'5.4' '3U.4';'5.4' '3L.1';'5.4' '3L.2';'5.4' '4U.1';'5.4' '4U.2';'5.4' '4U.3';'5.4' '4U.4';'5.4' '4L.1';'5.4' '4L.2';'6U.1' '5.4';'6U.2' '5.4' ;'6U.3' '5.4';'6U.4' '5.4';'6U.5' '5.4' ;'6U.6' '5.4' ;'6U.7' '5.4' ;'6L.4' '5.4' ;'6L.5' '5.4' ;'6L.6'
'5.4' ;'6L.7' '5.4' ;'6L.8' '5.4' ;'6U.10' '5.4' ;'6U.9' '5.4' ;'6U.8' '5.4' ;'6L.3' '5.4' ;'6L.2' '5.4' ;'6L.1' '5.4' };nna_name='nettr_w40distancesRafdCk6ClassSuHaDiAnSaFe_83ts_94all';[testOut, emotion_result, fdistances,
all_landmarks]=f_nna_distances(image_path,image_name,nna_name,main_features);elseif value==2
vari=findobj(gcbf, 'Tag','txtDescripcion');set(vari,'String','Éste enfoque usa 20 distancias principales');main_features={'3L.1' '3U.3';'3L.2' '3U.2';'4U.1' '2.1';'4L.2' '2.2';'4L.2' '4U.2';'5.1'
'2.1';'6U.3' '5.6';'6U.4' '5.7';'6U.7' '6U.1';'6L.4' '6U.6'; '6L.4' '6U.7';'6L.8' '6U.1';'6U.9' '6L.6';'6L.3' '6U.5';'6L.3' '6U.7';'6L.3' '6U.8';'6L.2' '6U.4';'6L.2' '6U.9';'6L.1' '6U.2';'6L.1' '6U.10'};
nna_name='nettr_w20distancesRafdCk6ClassSuHaDiAnSaFe_87ts_93all';[testOut, emotion_result, fdistances,
all_landmarks]=f_nna_distances(image_path,image_name,nna_name,main_features);
elseif value==3vari=findobj(gcbf, 'Tag','txtDescripcion');set(vari,'String','Éste enfoque usa distancias y ángulos del rostro (65
características)' );
imgPath=strcat(image_path,image_name);[emotion, testOut, testIndices,I,landmarks]=f_annClassifyAnImage(imgPath);
%imshow(I);hold on;
puntos=landmarks{1,2};%image landmarksc1=puntos{1}; c2=puntos{2}; o1=puntos{3}; o2=puntos{4}; n=puntos{5}; b=puntos{6};all_landmarks=[c1;c2;o1;o2;n;b]; % puntos all-n(4,:)testOut
end
-
8/17/2019 Sistema de Detección de Mentiras
33/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
list_emotion={'surprise','happiness','disgust','anger','sadness','fear'};
testOut=round(testOut*10000)/100;textoPerformance={strcat(': ',num2str(testOut(1)),'%');strcat(': ',num2str(testOut(2)),'%');strcat(': ',num2str(testOut(3)),'%');strcat(': ',num2str(testOut(4)),'%');strcat(': ',num2str(testOut(5)),'%');strcat(': ',num2str(testOut(6)),'%')};
vari=findobj(gcbf, 'Tag','txtPerformance');set(vari,'String',textoPerformance);
El código Chehra contiene funciones establecidas por el mismo.
Nosotros solo adaptamos algunos cambios para nuestra interfaz y que al momento de leer la
imagen se genere los puntos correctamente y nos muestre el resultado en los Texts queasignamos anteriormente.
Primera evaluación:
Dentro de este código se lee la imagen atravez de los enfoques, y se utiliza condiciones para
poder cambiar la evaluación de la imagen, esto nos mostrara diferente puntos en el rostro
como se puede ver en la línea de código.
Cuando se lee se evalúa y el resultado se envía al Text que asignamos con el nombre de 0%
ya que en el se mostrara el número del resultado en porcentaje.
function[all_landmarks]= classifyImage(image_path,image_name,handles)value = get(handles.popupmenu, 'Value');
if value==1vari=findobj(gcbf, 'Tag','txtDescripcion');set(vari,'String','Éste enfoque usa 40 distancias');main_features={'5.4' '1.1';'5.4' '1.2';'5.4' '1.3';'5.4' '1.4';'5.4' '1.5';'5.4' '2.1';'5.4' '2.2';'5.4'
'2.3';'5.4' '2.4';'5.4' '2.5';'5.4' '3U.1';'5.4' '3U.2';'5.4' '3U.3';'5.4' '3U.4';'5.4' '3L.1';'5.4' '3L.2';'5.4' '4U.1';'5.4' '4U.2';'5.4' '4U.3';'5.4' '4U.4';'5.4' '4L.1';'5.4' '4L.2';'6U.1' '5.4';'6U.2' '5.4' ;'6U.3' '5.4';'6U.4' '5.4';'6U.5' '5.4' ;'6U.6' '5.4' ;'6U.7' '5.4' ;'6L.4' '5.4' ;'6L.5' '5.4' ;'6L.6' '5.4' ;'6L.7' '5.4' ;'6L.8' '5.4' ;'6U.10' '5.4' ;'6U.9' '5.4' ;'6U.8' '5.4' ;'6L.3' '5.4' ;'6L.2' '5.4' ;'6L.1' '5.4' };
nna_name='nettr_w40distancesRafdCk6ClassSuHaDiAnSaFe_83ts_94all';[testOut, emotion_result, fdistances,
all_landmarks]=f_nna_distances(image_path,image_name,nna_name,main_features);
-
8/17/2019 Sistema de Detección de Mentiras
34/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Segunda evaluacion:
elseif value==2vari=findobj(gcbf, 'Tag','txtDescripcion');set(vari,'String','Éste enfoque usa 20 distancias principales');main_features={'3L.1' '3U.3';'3L.2' '3U.2';'4U.1' '2.1';'4L.2' '2.2';'4L.2' '4U.2';'5.1'
'2.1';'6U.3' '5.6';'6U.4' '5.7';'6U.7' '6U.1';'6L.4' '6U.6'; '6L.4' '6U.7';'6L.8' '6U.1';'6U.9' '6L.6';'6L.3' '6U.5';'6L.3' '6U.7';'6L.3' '6U.8';'6L.2' '6U.4';'6L.2' '6U.9';'6L.1' '6U.2';'6L.1' '6U.10'};
nna_name='nettr_w20distancesRafdCk6ClassSuHaDiAnSaFe_87ts_93all';[testOut, emotion_result, fdistances,
all_landmarks]=f_nna_distances(image_path,image_name,nna_name,main_features);
Tercera evaluacion:
elseif value==3vari=findobj(gcbf, 'Tag','txtDescripcion');set(vari,'String','Éste enfoque usa distancias y ángulos del rostro (65
características)' );imgPath=strcat(image_path,image_name);[emotion, testOut, testIndices,I,landmarks]=f_annClassifyAnImage(imgPath);%imshow(I);hold on;
puntos=landmarks{1,2};%image landmarksc1=puntos{1}; c2=puntos{2}; o1=puntos{3}; o2=puntos{4}; n=puntos{5}; b=puntos{6};all_landmarks=[c1;c2;o1;o2;n;b]; % puntos all-n(4,:)testOut
end
Y por último la asignación al segundo Text que evaluara las emociones y nos dará el resultado
en el Command Windows, así como el número de la imagen de estudio.
list_emotion={'surprise','happiness','disgust','anger','sadness','fear'};testOut=round(testOut*10000)/100;
textoPerformance={strcat(': ',num2str(testOut(1)),'%');strcat(': ',num2str(testOut(2)),'%');strcat(': ',num2str(testOut(3)),'%');strcat(': ',num2str(testOut(4)),'%');strcat(': ',num2str(testOut(5)),'%');strcat(': ',num2str(testOut(6)),'%')};vari=findobj(gcbf, 'Tag','txtPerformance');set(vari,'String',textoPerformance);
-
8/17/2019 Sistema de Detección de Mentiras
35/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Una vez terminado el inicio de nuestro código con el programa Chehra, procedemos a seguir
con las herramientas que utilizamos en nuestra interfaz para que se pueda leer la imagen yestudiarla. A continuación se iniciara con los pushbutton del video y la imagen.
El primer Pushbutton será el del video, en él se hará la función de cortar cuadro por cuadro
del video seleccionado ya que para el estudio de las emociones se requiere una imagen en
tiempo real (segundo a segundo), para mayor precisión.
El código que se desarrolla se colocara dentro de la función de video como se muestra a
continuación:
%Ejecuta el botón de prensa en vídeo .
function Video_Callback(hObject, eventdata, handles)
%hObject manejar de vídeo (ver GCBO)% Eventdata reservados - que se definirán en una futura versión de MATLAB% Se ocupa de la estructura con asas y los datos de usuario (véase guidata)
captura = tempname('C:/Users/cr7/Desktop/escuela/captura/');mkdir(captura,'capturas')mkdir(captura,'images')
[nombre,ruta]=uigetfile('*.mp4','ABRIR VIDEO');shuttleVideo = VideoReader([ruta nombre]);
i=1;
while hasFrame(shut tleVideo)img = readFrame(shutt leVideo);filename = [sprint f('%03d',i) '.jpg'];fullname = ful lfile(captura,'images',filename);imwrite(img,fullname) % Write out to a JPEG file (img1.jpg, img2.jpg, etc.) i= i+10;
end
imageNames = dir(fullfile(captura,'images','*.jpg'));imageNames = {imageNames.name}';
outputVideo = VideoWriter(fullfile(captura,'shuttle_out.avi'));outputVideo.FrameRate = shuttleVideo.FrameRate;open(outputVideo)
-
8/17/2019 Sistema de Detección de Mentiras
36/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
for ii = 1:length(imageNames)img = imread(fullfile(captura,'images',imageNames{ii}));writeVideo(outputVideo,img)
end
close(outputVideo)
shuttleAvi = VideoReader(fullfi le(workingDir,'shuttle_out.avi'));ii = 1;while hasFrame(shuttleAvi)
mov(ii) = im2frame(readFrame(shuttleAvi));ii = ii+1;end
msgbox('Video Cargado Correctamente','DETECTOR DE MENTIRAS')
En estas líneas se crea un directorio en el que se guardaran las imágenes a cortar (frames), y
los nombres de las carpetas.
captura = tempname('C:/Users/cr7/Desktop/escuela/captura/');mkdir(captura,'capturas')mkdir(captura,'images')
En las siguientes líneas se llamara el video que se cortara de un directorio específico.
[nombre,ruta]=uigetfile('*.mp4','ABRIR VIDEO');shuttleVideo = VideoReader([ruta nombre]);
Aquí si inicia el proceso de cortar cuadro por cuadro. Primero lee el video e inicia con la función
i=1 es decir que comenzara del segundo 1, dentro habrá una condicional que será un bucle
para leer segundo a segundo el video e ir asignando nombre y numero a cada imagen asi
como el formato en el que se desea guardar.
i=1;while hasFrame(shut tleVideo)
img = readFrame(shutt leVideo);filename = [sprint f('%03d',i) '.jpg'];fullname = ful lfile(captura,'images',filename);imwrite(img,fullname) % Write out to a JPEG file (img1.jpg, img2.jpg, etc.)
-
8/17/2019 Sistema de Detección de Mentiras
37/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
i= i+10;
end La siguiente línea de código guardara la imagen en la carpeta del directorio que asignamos al
principio, asi como un video que es el residuo de las imágenes y que nos mostrara que el video
se va leyendo cuadro a cuadro.
imageNames = dir(fullfile(captura,'images','*.jpg'));imageNames = {imageNames.name}';
outputVideo = VideoWriter(fullfile(captura,'shuttle_out.avi'));outputVideo.FrameRate = shuttleVideo.FrameRate;
open(outputVideo)
for ii = 1:length(imageNames)img = imread(fullfil e(captura,'images',imageNames{ii}));writeVideo(outputVideo,img)
end
close(outputVideo)
Al final el video que se genera con las imágenes cortadas se guarda en el directorio asignado,
y se arroja un aviso de que el video y los frames son cargados correctamente.
shuttleAvi = VideoReader(fullfi le(workingDir,'shuttle_out.avi'));ii = 1;while hasFrame(shuttleAvi)
mov(ii) = im2frame(readFrame(shuttleAvi));ii = ii+1;
end msgbox('Video Cargado Correctamente','DETECTOR DE MENTIRAS')
-
8/17/2019 Sistema de Detección de Mentiras
38/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Procederemos a checar que el código funciona y que las imágenes son cortadas
correctamente como se muestra a continuación:
Fig.1.19 Seleccionamos el video
-
8/17/2019 Sistema de Detección de Mentiras
39/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Al seleccionar el video le damos abrir y esperamos a que el video sea cortado (frames).para
ver que el video está siendo cortado nos vamos al destino donde se guardaran las imágenes
(Figura1.20).
Como se observa en la imagen anterior el código esta correcto ya que corta segundo a
segundo y esta asignando un nombre a cada imagen.
Fig.1.20 Proceso del Video
-
8/17/2019 Sistema de Detección de Mentiras
40/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Una vez terminado con el video procederemos a pasar con la selección de la imagen para ello
utilizaremos el siguiente Pushbutton al cual le asignamos el nombre de btnSelectImage,
dentro del código indicaremos el llamado de la imagen y se la asignaremos al Axes.
% --- Ejecuta el botón de prensa en btnSelectImage.function btnSelectImage_Callback (hObject, eventdata, handles)% HObject manejar a btnSelectImage (ver GCBO)% Eventdata reservados - que se definirán en una futura versión de MATLAB% Se ocupa de la estructura con asas y los datos de usuario (véase guidata)
hold off ;addpath(genpath('./'));
global image_name;global image_path;[image_name,image_path] = uigetfile({'*.jpg';'*.png';'*.tiff';'*.gif'},'Selecciona la imagen');if (~isempty(image_name)&&~isempty(image_path))
imgPath=strcat(image_path,image_name);imshow(imgPath); hold on;[all_landmarks]=classifyImage(image_path,image_name,handles);plot(all_landmarks(:,1), all_landmarks(:,2),'gx','MarkerSize',2.5);vari=findobj(gcbf, 'Tag','axImage');set(vari,'units','normalized','outerposition' ,[0 1 1 1]);
end
El código que se utiliza se interpreta de la siguiente manera:-Las primeras 4 líneas de código son el inicio, esto indica que son las que utilizaremos como
variables constantes que darán un valor entero dentro del código.
hold off ;addpath(genpath('./'));global image_name;global image_path;
La siguiente línea es el comando de llamado de la imagen a un directorio de la computadora
o ya sea a la carpeta donde se encuentre, también se genera el tipo de formato en el quebuscara la imagen.
uigetfile({'*.jpg';'*.png';'*.tiff';'*.gif'},'Selecciona la imagen');
Enseguida viene una condición la cual funcionara para generar la imagen y al darle click en
abrir la guardara y mostrara dentro del axes que será nuestra salida (nombre que se le asigno
en el axes anterior axImage).
-
8/17/2019 Sistema de Detección de Mentiras
41/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
if (~isempty(image_name)&&~isempty(image_path))imgPath=strcat(image_path,image_name);imshow(imgPath); hold on;[all_landmarks]=classifyImage(image_path,image_name,handles);plot(all_landmarks(:,1), all_landmarks(:,2),'gx','MarkerSize',2.5);vari=findobj(gcbf, 'Tag','axImage');set(vari,'units','normalized','outerposition' ,[0 1 1 1]);
end
Terminada la condición corremos la interfaz para ver que no exista error, de tal manera que al
presionar el botón Seleccionar_Imagen nos mande directo al buscador para la imagen
(figura1.21).
Esto indica que nuestro código funciona correctamente. Ahora procederemos a la asignación
del Popupmenu que nos ayudara a que la imagen sea leída 3 veces ya que en el inicio del
código se le asigna nombre para poder tener varias instancias en los puntos a estudiar del
rostro y sin este no podrá reconocer el código Chehra, ni la imagen.
Fig.1.21 Selección de Imagen
-
8/17/2019 Sistema de Detección de Mentiras
42/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
function popupmenu_Callback(hObject, eventdata, handles)
% HObject manejar a PopUpMenu (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Se ocupa de la estructura con asas y los datos de usuario (véase guidata )
% Indicaciones : contenido = cellstr (get ( hObject , ' Cadena ' ) ) vuelve PopUpMenu contenidoscomo matriz celular% Contenido { get ( hObject , ' Valor ' ) } devuelve el elemento seleccionado a partir
popupmenu
global image_name;global image_path;if (~isempty(image_name)&&~isempty(image_path))
[all_landmarks]=classifyImage(image_path,image_name,handles);plot(all_landmarks(:,1), all_landmarks(:,2),'gx','MarkerSize',2.5);end
% --- Ejecuta durante la creación del objeto, después de ajustar todas las propiedades.function popupmenu_CreateFcn(hObject, eventdata, handles)% HObject manejar a PopUpMenu (ver GCBO )% Eventdata reservados - que se definirán en una futura versión de MATLAB% Maneja vacío - mangos no se crea hasta que todos llaman CreateFcns
% Indirecta: controles PopUpMenu por lo general tienen un fondo blanco en Windows .Ver ISPC y el ordenador.
if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor' ))
set(hObject,'BackgroundColor' ,'white');end
En el primer Popupmenu leeremos la imagen con una condición que indica que si no se
encuentra una imagen no podrá asignar los puntos y nos retornara a un error.
global image_name;global image_path;if (~isempty(image_name)&&~isempty(image_path))
[all_landmarks]=classifyImage(image_path,image_name,handles);plot(all_landmarks(:,1), all_landmarks(:,2),'gx','MarkerSize',2.5);
end
-
8/17/2019 Sistema de Detección de Mentiras
43/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
El segundo Popupmenu solos nos dará una advertencia que es un retorno lógico del primer
if que utilizamos en el primero, no nos confundamos es la misma línea de código solo que seles asigna diferente posición debido a las opciones que se dan.
if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor' ))
set(hObject,'BackgroundColor' ,'white');end
-
8/17/2019 Sistema de Detección de Mentiras
44/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
4.1 Pruebas Del Sistema
Terminada nuestra interfaz con el código funcionando nos procedemos a hacer pruebas con
imágenes de personas y/o sujetos que sean monitoreados a través de una cámara web o bien
en cámaras de vigilancia. Dentro de la pruebas utilizamos un soporte oftalmológico que fue
diseñado y desarrollado en Solidword (las piezas son mostradas en los anexos).
4.1.1 Pruebas Con Vid eos
Las pruebas se realizaran con videos diferentes, para ver la expresión de las personas que se
encuentran en ese momento cantando y saber su emoción, procederemos a realizarlas.
El primer paso es llamar a nuestra interfaz (figura1.22), una vez ejecutada abriremos un video
en específico (Figura 1.23) como se muestra a continuación:
Fig.1.22 Interfaz Sistema de Detección de Mentiras
-
8/17/2019 Sistema de Detección de Mentiras
45/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Una vez seleccionado el video lo abrimos y esperamos un tiempo para que el video sea
procesado y cortado (frames).Pasado el tiempo de espera vamos a la carpeta donde se
guardaron las imágenes del video ya procesado:
Fig.1.23 Inicio del video
Fig.1.24 Video Procesado
-
8/17/2019 Sistema de Detección de Mentiras
46/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
En el momento en el que video termine de ser cortado no dirigimos a nuestra interfaz y
seleccionaremos una imagen para su estudio:
Una vez seleccionada la imagen esperaremos el proceso de la misma y cuando este cargada
se mostrara en pantalla con un mensaje de “imagen cargada correctamente” tal como se
muestra a continuación:
1.25 Selección de imagen
Fig.1.26 Imagen Procesada
-
8/17/2019 Sistema de Detección de Mentiras
47/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Como se puede observar en la imagen anterior la detección es correcta y muestra en el lado
derecho el porcentaje de la emoción. Con lo que podemos decir que el programa funcionaperfectamente.
Pero para saber si funciona correctamente se hicieron diferentes pruebas en varios sujetos
para ver el resultado de la emoción con los que se muestran a continuación:
Fig.1.27 Sujeto 1
Fig.1.28 Sujeto 2
-
8/17/2019 Sistema de Detección de Mentiras
48/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
5.1 Resultados
Durante las pruebas de nuestro sistema se propuso utilizar un producto comestible en este
caso el producto era mango deshidratado con ello tendremos pruebas de gusto olor sabor y
textura a 100 personas. Con ellos podremos hacer una gráfica de los datos que valla arrojando
nuestro sistema e ir comparándolo con las respuestas de nuestros candidatos esto es con el
fin de saber que tan factible resulta y que porcentaje tiene en cuanto a la efectividad del
sistema.
Primeramente debemos saber las opciones que se plasmaban en nuestra encuesta para así
saber que contestaron nuestros candidatos:
1 .MALO
2 .REGULAR
3 .BUENO
4 .MUY BUENO
5 .EXCELENTEPero para hacer más factible el resultado en nuestro sistema, fueron monitoreados sin su
permiso, es decir, fueron grabados en todo momento para que así la expresión no fuera
afectada o simularan otra cosa.
Una vez terminada la prueba nos dirigimos a verificar los videos y las encuestas, se verifico a
las 100 personas que probaron el alimento.
Se realizó el proceso con el sistema con cada sujeto y al final comparamos su respuesta con
la expresión. Para dar un balance de las 100 personas sometidas al sistema se propusorealizar gráficas para tener una estadística de respuestas con expresión. Pasemos a verificar
las gráficas y dar los resultados de nuestra prueba.
-
8/17/2019 Sistema de Detección de Mentiras
49/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
En la siguiente grafica (Figura 1.1) nos muestra el 100% como las personas que hicieron laprueba del producto y las opciones que la persona puso, lo que representa que sin aplicar el
sistema:
El 5% de las personas respondió porque que era malo
El 5% de las personas respondió que era regular
El 50% de las personas respondió que era bueno
El 20% de las personas respondió que era muy bueno
El 20% de las personas respondió que era excelente
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
A.MALO 2.REGULAR 3.BUENO 4.MUY BUENO 4.EXCELENTE
5% 5%
50%
20% 20%
RESULTADO DE ENCUESTA
Fig.1.1 Grafica de resultados
-
8/17/2019 Sistema de Detección de Mentiras
50/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Las 100 personas sin ser sometidas al sistema respondieron de acuerdo a lo que sentían en
el momento ahora les mostraremos la gráfica cuando fue aplicado el sistema y veremos silas cifras cambian. (Se analizaron las respuestas con la expresión pero debido al número de
personas solo se pondrá la gráfica).
En la siguiente grafica (Figura1.2) nos muestra que hubo cambios en el porcentaje ya con la
aplicación del sistema con lo cual quedaría de la siguiente manera:
Del 5% de las personas que respondieron que era malo subió a 23% lo que quiere
decir que el 18% mintió en cuanto a su respuesta original
Del 5% de las personas respondieron que era regular subió a 25% lo cual quiere decir
que el 20% mintió en cuanto a su respuesta original.
Del 50% de las personas que respondieron que era bueno bajo a 35% lo que quiere
decir que el 15 % mintió en cuanto a su respuesta original.
Del 20% de las personas respondieron que era muy bueno bajo a 9% con lo que
quiere decir que 11% mintió en cuanto a su respuesta original.
El 20% de las personas respondieron que era excelente bajo a 8% con lo que quiere
decir que 12% mintió en cuanto a su respuesta original.
0%
20%
40%
60%
80%
100%
23% 25%
35%
9% 8%
RESULTADO DE APLICACIÓN DEL
SISTEMA
Fig.1.1 Grafica de resultados con el sistema
-
8/17/2019 Sistema de Detección de Mentiras
51/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Lo que nos da como resultado que el 76% de las personas mintió en cuanto a la respuesta
que originalmente dio en la encuesta. Por lo que podemos decir que el sistema funcionacorrectamente y que nos es factible en un 80 % de probabilidad de ser exacto.
-
8/17/2019 Sistema de Detección de Mentiras
52/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
5.2 Conclusiones
En nuestro desarrollo del proyecto se analizó cada uno de los procesos de la interfaz gráfica
con su respectivo código. Nuestro proceso fue probado mediante entrevistas y encuestas de
productos en vías de salir al mercado, con lo cual haría más exacto saber si el comprador o
en este caso el sujeto a probar el producto contesta de acuerdo a una seria de preguntas
hechas en ese momento. Durante la implantación del sistema nos encontramos con varias
inquietudes en parte de la aplicación, los cuestionamientos eran que tan efectiva era la
herramienta y que tan exacta seria. Para responder a dicho cuestionamiento se realizaron
pruebas con varios individuos que se sometieron a una encuesta previa. Con lo cual nos dioun 90% de probabilidad de que el sistema daba el resultado correcto, y así fue llevado a campo
para ser probado en áreas de productos.
En cuanto al funcionamiento del sistema podemos decir que es una herramienta capaz de
detectar emociones y mentiras en tiempo real, ya que podemos ver que las emociones son
difíciles de percibir a simple vista, nuestro sistema da la emoción en un porcentaje de 1 a 100
con lo cual podemos tener un diagnóstico más preciso y dar un buen resultado. Le podemos
dar muchas aplicaciones ya sea en una entrevista de trabajo o en alguna investigación con
respecto al área de investigación de un criminal, entre otros.
Con ello podemos decir que el sistema funciona correctamente y es una muy buena
herramienta para saber de una manera más precisa si la persona a la que apliquemos el
estudio nos está diciendo la verdad o una mentira o ya sea para conocer su estado de ánimo.
-
8/17/2019 Sistema de Detección de Mentiras
53/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
ANEXO
Herramientas Físic as
Piezas del Sopor te Oftalmológi co (Sol idWords)
1.1 Diseño de la base de la donde se colocara la cara del sujeto.
Sólidos
Nombre de documentoy referencia
Tratado
como
Propiedadesvolumétricas
Ruta al documento/Fecha demodificación
Saliente-Extruir4
Sólido
Masa:7.55856 kg Volumen:0.00096164
8 m^3 Densidad:7860
kg/m^3 Peso:74.0739 N
C:\Users\cr7\Desktop\SOPORTE OFTAL\base boca
2.SLDPRT Oct 13 22:08:16 2015
-
8/17/2019 Sistema de Detección de Mentiras
54/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Referencia de modelo Propiedades Componentes
Nombre: 201 Aceroinoxidablerecocido (SS)
Tipo de modelo: Isotrópicoelástico lineal
Criterio de errorpredeterminado:
Tensiónmáxima de vonMises
Límite elástico: 2.92e+008
N/m^2 Límite detracción:
6.85e+008N/m^2
Sólido 1(Saliente-Extruir4)(base boca
2)
Nombre Tipo Mín. Máx.Displacement URES: Desplazamiento resultante 0 mm
Nodo: 353.38633e-006 mm
Nodo: 148
Nombre Tipo Mín. Máx.Stress VON: Tensión de von Mises 0.983779 N/m^2
Nodo: 171686.6 N/m^2
Nodo: 62
base boca 2-SimulationXpress Study-Tensiones-Stress
-
8/17/2019 Sistema de Detección de Mentiras
55/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Nombre Tipo Mín. Máx.
base boca 2-SimulationXpress Study-Desplazamientos-Displacement
Nombre Tipo Mín. Máx.Factor of Safety Tensión de von Mises
máx.173130Nodo: 62
2.96815e+008Nodo: 17
base boca 2-SimulationXpress Study-Factor de seguridad-Factor of Safety
-
8/17/2019 Sistema de Detección de Mentiras
56/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
1.2 base de movilidad para ajustar la cara del sujeto.
Sólidos
Nombre de documento yreferencia
Tratado como Propiedades volumétricas
Ruta aldocumento/Fec
ha demodificación
Redondeo1
Sólido
Masa:0.925927 kg Volumen:0.000342936 m^3
Densidad:2700 kg/m^3 Peso:9.07408 N
C:\Users\cr7\Desktop\SOPORTE OFTAL\baseboca.SLDPRT
Oct 13 21:59:432015
-
8/17/2019 Sistema de Detección de Mentiras
57/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Referencia de modelo Propiedades Componentes Nombre: Aleación 1060 Tipo de modelo: Isotrópico
elástico lineal Criterio de errorpredeterminado:
Tensión máximade von Mises
Límite elástico: 2.75742e+007N/m^2
Límite detracción:
6.89356e+007N/m^2
Sólido1(Redondeo1)(baseboca)
Nombre Tipo Mín. Máx.Displacement URES: Desplazamiento resultante 0 mm
Nodo: 330.00019813 mmNodo: 799
base boca-SimulationXpress Study-Desplazamientos-Displacement
Nombre Tipo Mín. Máx.Factor of Safety Tensión de von Mises máx. 716.635
Nodo: 951.03151e+006Nodo: 12783
-
8/17/2019 Sistema de Detección de Mentiras
58/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
base boca-SimulationXpress Study-Factor de seguridad-Factor of Safety
Nombre Tipo Mín. Máx.Stress VON: Tensión de von Mises 26.7318 N/m^2
Nodo: 1278338477.3 N/m^2Nodo: 95
base boca-SimulationXpress Study-Tensiones-Stress
1.3 Diseño de un tubo para el soporte de la base de la boca y la barra móvil del mismo.
-
8/17/2019 Sistema de Detección de Mentiras
59/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Sólidos
Nombre de documentoy referencia
Tratado
como
Propiedadesvolumétricas
Ruta al documento/Fecha demodificación
Cortar-Extruir1
Sólido
Masa:0.18555 kg Volumen:6.87223
e-005 m^3
Densidad:2700kg/m^3 Peso:1.81839 N
C:\Users\cr7\Desktop\SOPOR
TE OFTAL\base tubo.SLDPRT Oct 16 09:25:21 2015
-
8/17/2019 Sistema de Detección de Mentiras
60/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
Referencia de modelo Propiedades Componentes
Nombre: Aleación 1060 Tipo de modelo: Isotrópico
elástico lineal Criterio de error
predeterminado: Tensiónmáxima devon Mises
Límite elástico: 2.75742e+007N/m^2
Límite de
tracción:
6.89356e+007
N/m^2
Sólido1(Cortar-Extruir1)(basetubo)
Nombre Tipo Mín. Máx.Stress VON: Tensión de von Mises 31.9447 N/m^2
Nodo: 5227122.468 N/m^2Nodo: 601
base tubo-SimulationXpress Study-Tensiones-Stress
Nombre Tipo Mín. Máx.Displacement URES: Desplazamiento resultante 0 mm
Nodo: 1533.64213e-007 mmNodo: 9419
-
8/17/2019 Sistema de Detección de Mentiras
61/69
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico de Iztapalapa
Av. Telecomunicaciones S/N, Col. Chinampac de Juárez, C.P. 09208Iztapalapa, D.F., Tel. 5773-8210, e-mail:
www.itiztapalapa.edu.mx
base tubo-SimulationXpress Study-Desplazamientos-Displacement
Nombre Tipo Mín. Máx.Factor of Safety Tensión de von Mises máx. 225155
Nodo: 601863186Nodo: 5227
base tubo-SimulationXpress Study-Factor de seguridad-Factor of Safety
1.4 Diseño de Sostenedor de Plástico, Tornillo de Mariposa, Anillo de Presión y Tuerca deMovimiento Libre.
-
8/17/2