INTERFAZ COMPUTACIONAL POR MEDIO DE LAS MANOS

Documentos relacionados
Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Luis Esteban Peñaherrera Sandoval Ing. de Software

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE

Diplomado en Tecnologías Móviles y Procesamiento de datos

EPE INGENIERÍA DE REDES Y COMUNICACIONES

PROGRAMA DE ESTÍMULOS A LA INNOVACIÓN

DWB-1502 SATCA 1 : (1-4-5) Carrera:

UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES

Developing ASP.NET MVC 4 Web Applications

OBJETIVOS: CONTENIDO:

Ahora tú también puedes crear aplicaciones

PROCESAMIENTO DIGITAL DE SEÑALES TRABAJO FINAL PROFESOR: CRISTIAN FILTRO PASA BAJAS PARA SEÑAL DE SENSOR DE TEMPERATURA LM35

UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES

4.1 CONGRUENCIA ENTRE LOS OBJETIVOS DEL PLAN DE ESTUDIOS Y EL PERFIL DE EGRESO CON LAS LGAC:

DISEÑO DE UNA METODOLOGÍA DOCENTE

Ingeniería de Software y Sistemas Computacionales

LICENCIADO EN SISTEMAS COMPUTACIONALES. Este programa educativo se ofrece en las siguientes sedes académicas de la UABC:

TÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN EN COMPETENCIAS PROFESIONALES ASIGNATURA DE LENGUAJE DE PROGRAMACIÓN

Programa de estudios por competencias. Seminario de Sistemas operativos en red

Luis Magallanes Almeida

Nombre de la asignatura: Arquitectura de Computadoras. Créditos: Aportación al perfil

Programa de estudios por competencias Redes de computadoras y protocolos de comunicación

Programación con Visual C#

SILABO DEL CURSO SEMINARIO DE TESIS

CAPITULO 1 INTRODUCCION AL PROYECTO

HERRAMIENTAS DE OFIMATICA PORTAFOLIO DE EVIDENCIAS

Introducción a la Ingeniería Básicas de Ingeniería

Laboratorio. Instalación de Visual Studio Community. Back To Basics Instalando Visual Studio Community. Versión: 1.0.

DISEÑO E IMPLEMENTACIÓN DE UN MÓDULO DIDÁCTICO PARA LA MEDICIÓN DEL RITMO CARDÍACO MEDIANTE LA TÉCNICA DE PULSIOMETRÍA

DISEÑO DE AMBIENTES EDUCATIVOS VIRTUALES PARA EL FORTALECIMIENTO DEL PLAN LECTOR EN ESTUDIANTES DEL GRADO 9º EBS DEL COLEGIO INEM FELIPE PEREZ

Universidad Autónoma del Estado de México Licenciatura en Ingeniería en Sistemas Energéticos Sustentables

RDD-1305 SATCA 1 : Carrera:

FICHA PÚBLICA DEL PROYECTO. ASPEL DE MÉXICO, S.A. DE C.V. ASPEL-TECH Arquitectura de aplicaciones ubicua NUMERO DE PROYECTO EMPRESA BENEFICIADA

GeneXus: Filosofía. Preparado por Breogán Gonda y Nicolás Jodal

ESTÁNDAR DE COMPETENCIA

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

Tema II:Evaluación de los entornos virtuales CÓMO EVALUAR EL E-LEARNING?

Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET

DIPLOMADO. Evaluación de la Calidad de la práctica docente para la implementación del Nuevo Modelo Educativo en Escuelas de Ingeniería del I.P.N.

ESET Secure Authentication

Maestría en Ingeniería Énfasis en Sistemas y Computación

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA PROYECTO CURRICULAR DE INGENIERÍA INDUSTRIAL

FACULTAD DE INGENIERÍAS INGENIERIA DE SISTEMAS ARQUITECTURA DEL COMPUTADOR TECNICO

Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET 2010

Programación I. Carrera: ECM Participantes Participantes de las academias de ingeniería electrónica de los Institutos Tecnológicos.

20483 Programación en C#

INGENIERÍA PROFESIONAL EN INOCUIDAD ALIMENTARIA EN COMPETENCIAS PROFESIONALES ASIGNATURA DE ROBÓTICA

Sitios web y programas relacionados

Manual de instalación AutoFirma 1.4.3

L/O/G/O Tema: Integrantes:

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIOS DE LICENCIATURA

ARQUITECTURA DE COMPUTADORAS II. Propósito del curso : Ingeniería Ingeniería en Sistemas. Hardware. Clave de la materia: 413

APLICACIONES MÓVILES NATIVAS

Herramientas Tecnológicas de Productividad. Sesión 1. Introducción a la informática

TÉCNICO SUPERIOR UNIVERSITARIO EN DESARROLLO DE NEGOCIOS ÁREA SERVICIOS POSVENTA AUTOMOTRIZ

Currículum Vítae. Mario Antonio Regín Gutiérrez 1 de 7

Universidad Central Del Este U.C.E. Facultad de Ciencias Administrativas y de Sistemas Escuela de Contabilidad

Manual de instalación AutoFirma 1.4.2

FICHA PÚBLICA DEL PROYECTO

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA MULTIMEDIA Y COMERCIO ELECTRÓNICO.

Procedimiento de Préstamo y Recepción de equipos tecnológicos y computacionales

Fundamentos de Ingeniería de Software [Etapas II]

Uso de un motor de restricciones bajo dispositivos Android

BLIPAPP: PIZARRA VIRTUAL BASADA EN DISPOSITIVO MÓVIL (SISTEMA DE PROCESAMIENTO Y PRESENTACIÓN DE DATOS)

PROGRAMA DE DESARROLLO PROFESIONAL Y PERSONAL

Capítulo 7. Introducción a las Interfaces Gráficas de usuario. Continuar

Universidad Central del Este U.C.E. Facultad de Ciencias Administrativas y de Sistemas Escuela de Ingeniería de Sistemas

1.-DATOS DE LA ASIGNATURA

INFORMÁTICA Y COMUNICACIONES

UNIVERSIDAD TECNOLÓGICA DE PEREIRA FACULTAD DE CIENCIAS BÁSICAS DEPARTAMENTO DE MATEMÁTICAS PROGRAMACIÓN DE COMPUTADORES

Asignaturas antecedentes y subsecuentes

Lo anterior es en tres modalidades: presencial, semipresencial y en línea.

Programa de estudios por competencias Seminario de solución de problemas de Ingeniería de Software I

PROPUESTA DE INFORME TECNICO PREVIO DE EVALUACION DE SOFTWARE

Tutor: Ing. Eddie Galarza. Autores: Edison Xavier Sánchez Quevedo Edison Saúl Gallardo Calvopiña

Dirección General de Educación Superior Tecnológica

Story Desarrollar módulo de segmentación génerico para objetos. Product Backlog. Story Realizar pruebas del módulo de segmentación.

IT Essentials I: PC Hardware and Software

Facultad de Ingeniería Mecánica y Eléctrica SEGURIDAD EN REDES EVOLUCION DE LA SEGURIDAD EN REDES TCP/IP

INTERFACES INTELIGENTES. ING. MA. MARGARITA LABASTIDA ROLDÁN E mail:

DIPLOMADO EN PRODUCCIÓN MULTIMEDIA DE CURSOS E-LEARNING

PLANIFICACIÓN ESTRATÉGICA

Curso Implementing and Managing Microsoft Desktop Virtualization (10324)

Guía Práctica Ingresa al nuevo mundo de Windows 8

Tema: Repaso sobre el uso del IDE de Microsoft Visual C#.

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

USO DE SMARTPHONE CON ANDROID COMO MEDIDOR DE COBERTURA CELULAR PARA USO DE UNA HERRAMIENTA DE OPTIMIZACIÓN EN REDES MÓVILES

Ana Pascual Nobajas Jefe de Servicio de Desarrollo Junta de Comunidades de Castilla-La Mancha

CARRERA TÉCNICA. 100% VIRTUAL Plataforma e-learning COMPUTACIÓN E INFORMÁTICA PERÚ. Ministerio de Educación. Con el respaldo

Nueva aplicación para acceder a casilla electrónica en Internet

Desarrollador de Aplicaciones Web con Java

Mainframe. Qué son los datos?

PRODUCTO 5.1- B PERFIL DEL PROYECTO DE UN SISTEMA DE SEGUIMIENTO A LOS INDICADORES DEL CONPES 3784 PARA FUTURAS MEDICIONES. Versión 1.

FICHA PÚBLICA DEL PROYECTO MUSEO ZACATECANO NUMERO DE PROYECTO: EMPRESA BENEFICIADA:

Evaluación de la Política Sobre el uso del software libre en las Entidades Públicas y su repercusión en el nivel Productividad.

OFERTA PFC DEPARTAMENTO DTE (ÁREAS: TELEMÁTICA y ELECTRÓNICA) OTOÑO

MANUAL DE INSTALACIÓN DEL PROGRAMA DE AYUDA PARA LAS DECLARACIONES DE IMPUESTOS EDDI-7 DESDE EL DISCO COMPACTO

Departamento Administrativo Nacional de Estadística

Especialidades en GII-TI

Los sistemas operativos más conocidos son los siguientes:

Transcripción:

INTERFAZ COMPUTACIONAL POR MEDIO DE LAS MANOS Everardo Torres Villegas (1) Luis Armando García de la Rosa () 1 Instituto Tecnológico Superior de Guanajuato Dirección de correo electrónico: everardotv@outlook.com Ingeniería en Sistemas Computacionales, Instituto Tecnológico Superior de Guanajuato Dirección de correo electrónico: lgarcia@itesg.edu.mx Resumen Queremos detectar el movimiento de las manos para poder controlar la computadora. Lo que significa, saber cómo se pueden detectar las manos por medio del Kinect, así también cómo configurar nuestra computadora con sistema operativo Windows 8 para que reciba la información el dispositivo y permita el control del mouse. Después de realizar la investigación, se propone una solución de software que resuelva el problema planteado. Es importante que la aplicación permita manipular todas las funciones del mouse. También debemos de analizar la compatibilidad del dispositivo con la plataforma a emplear y asegurar su correcto funcionamiento. El código de programación se desarrolló en C#, junto a las librerías de desarrollo de Kinect y la API de Windows. La implementación de este proyecto es de relativo bajo costo y da como resultado una nueva forma (novedosa) de interacción con la computadora. Abstract We detect hand movements to control the computer. Which it means, know how hands can be detected by the Kinect, so setting up our computer with Windows 8 operating system to receive the device information and allows control of the mouse. After conducting the investigation, a software solution that solves the problem posed it is proposed. It is important that the implementation allows handle all mouse functions. We must also analyze the compatibility of the device with the platform to ensure proper use and operation. The programming code developed in C #, along with Kinect development libraries and Windows API. The implementation of this project is relatively inexpensive and results in a new (new) forms of interaction with the computer Palabras Clave Movimiento; Sensor; Kinect; Computadora; C#. Vol. 1 no. 3, Jóvenes Investigadores, 015 1

INTRODUCCIÓN El presente artículo trata sobre el trabajo de residencias realizado en el área de investigación de la a ingeniería en sistemas computacionales del ITESG. Durante dichas residencias básicamente, se detectó el movimiento de las manos para controlar el mouse de la computadora. Esto se hizo por medio de un sensor Microsoft Kinect, el cual permite la detección corporal (de hasta 4 personas), por medio de imágenes RGB e infrarrojas. Este sensor cuenta con todos los implementos necesarios de hardware más aparte de componentes de software, que permiten su completo control por medio de la computadora. Toda la programación se realizó en C#, bajo el paradigma de programación orientada a eventos. Se desarrolló una aplicación Windows donde por medio de la propia API, se manipula el mouse. El proyecto nos abre las puertas para llevar a cabo otros desarrollos tecnológicos que hagan uso de la interfaz ya implementada y permita la interacción con la computadora por medio de otros mecanismos no estándar, por ejemplo la voz. Objetivos Objetivo general Implementar una interfaz computacional que permita manipular el mouse de la computadora, en base al reconocimiento de las manos por medio de un Kinect. Objetivo específico Programar una aplicación de bajo consumo computacional. Verificar que la aplicación es compatible con Windows 7/8. Reconocer diversos gestos para implementar las funciones del mouse. Marco Teórico Los sensores ópticos de dos dimensiones se utilizan como herramientas de ingeniería inversa para digitalizar la superficie de los objetos reales en tres dimensiones [1]. Visual Studio (Microsoft) es un conjunto completo de herramientas de desarrollo para la generación de aplicaciones web ASP.NET, Servicios Web XML, aplicaciones de escritorio y aplicaciones móviles. Visual Basic, Visual C# y Visual C++ utilizan todos el mismo entorno de desarrollo integrado (IDE) que habilita el uso compartido de herramientas y facilita la creación de soluciones en varios lenguajes. Asimismo, dichos lenguajes utilizan las funciones de.net Framework, las cuales ofrecen acceso a tecnologías clave para simplificar el desarrollo de aplicaciones web ASP y Servicios Web XML []. Kinect fue desarrollado por Microsoft para Xbox 360 que permite a los usuarios controlar e interactuar con la consola a través de gestos corporales y la voz. Fue lanzado en Norteamérica en 4 de noviembre de 010 y en Europa el 10 de noviembre de 010. En febrero de 01, y después de darse cuenta del gran interés que había despertado su novedoso dispositivo, Microsoft decidió ofrecer a los desarrolladores Kinect for Windows, la versión oficial de Kinect para PC. La principal diferencia entre la versión de Xbox 360 y PC es el Near Mode. El sensor de PC posee firmware que permite trabajar identificando cuerpos a partir de los 40 cms en lugar de los 80 cms de la versión de Xbox 360 [3]. Cuando nos referimos a reconocimiento de gestos, en este caso, se trata de asignar a ciertos movimientos consecutivos de partes del cuerpo una determinada acción (saltar, saludar, girar, etc.). Al igual que nos pasa con la detección de posturas el reconocimiento de gestos también tiene muchas técnicas diferentes que se pueden aplicar para lograr una mejor identificación o una implementación más sencilla. Una técnica muy utilizada para estos casos en utilizar redes neuronales las cuales se pueden entrenar para ir alcanzando cada vez más precisión y calidad de detección [4]. Justificación Debido a que interfaces no estándares, como los pintarrones inteligentes, conversores de voz a texto, etc., son relativamente caras y de gran consumo computacional, es requerido un desarrollo tecnológico que abata los costos y que además disminuya las exigencias computacionales. Es Vol. 1 no. 3, Jóvenes Investigadores, 015

también necesario que dicho desarrollo facilite el acceso a la computadora en vez de complicarlo. Las primeras pruebas de la aplicación fueron que reconociera una parte del cuerpo (ver figura 1). Es por ello que planteamos nuestro proyecto, el cual hará uso de un sensor Kinect relativamente barato y una aplicación de desarrollo propio que ayude a la disminución de costos. Además de que este correctamente diseñada para ser de fácil uso y pocos requerimientos. MATERIALES Y MÉTODOS Materiales Hardware: Computadora, MS Kinect. Software: Visual Studio 010, Kinect SDK 1.8, API de Windows 4.0. Figura 1.- Prueba de la aplicación que reconoce una parte del cuerpo por medio del Kinect (mano derecha). Metodología 1. Adquisición de materiales para el desarrollo del proyecto, además de solicitar el apoyo del Instituto Tecnológico Superior de Guanajuato para el préstamo de lugar para el desarrollo del proyecto.. Investigar sobre el entorno de programación C#, además de realizar prácticas del mismo lenguaje en el entorno de Visual Studio 010. 3. Diseñar la aplicación en base a los objetivos planteados 4. Programar el código fuente la interfaz de control computacional. 5. Montar el Kinect con la computadora, además de realizar pruebas de diseño, compatibilidad y detectar fallas en la aplicación. 6. Realizar la documentación sobre el proyecto 7. Entrega y presentación del proyecto. RESULTADOS Y DISCUSIÓN Al realizar el proyecto en C# se obtuvieron varios resultados: El primero es una aplicación Skeleton que reconoce el cuerpo humano desde la cabeza hasta los pies. Después dentro del mismo código se implementó otra función para que detecte partes del cuerpo humano, y en este caso se logró que la aplicación reconociera dos partes del cuerpo humano (ver figura ). Figura.- Reconocimiento de partes del cuerpo (mano derecha y mano izquierda) por medio del Kinect. Por último, se modificó el código para que el Kinect reconozca el movimiento de personas y que reconozca partes del cuerpo (ver figura 3). Esto Vol. 1 no. 3, Jóvenes Investigadores, 015 3

consiste que el dispositivo reconoce que persona está primero, detecta el esqueleto humano completo desde la cabeza hasta los pies y luego reconoce lo que se mandó reconocer, en este caso el reconocimiento de las manos. Figura 4.- Reconocimiento de ambas manos por medio del Kinect. Figura 5.- Despliegue del mensaje cuando el Kinect detectó que las manos estaban cerca una de la otra. Figura 3.- Reconocimiento de personas y de dos partes del cuerpo (mano derecha y mano izquierda). El segundo es una aplicación Click, que reconoce el movimiento de ambas manos y cuando se acercan se despliega un mensaje. Además, no sólo se realizaron pruebas en día, sino también se realizaron pruebas de noche para ver si el dispositivo reconocía el cuerpo humano en la oscuridad y como resultado obtuvimos que el dispositivo reconoce el cuerpo humano en la oscuridad. La aplicación que se uso fue la del Click (ver figura 6). Esta aplicación consiste en que detecta la mano izquierda y la mano derecha del cuerpo (ver figura 4), una vez que detectó el dispositivo las manos y reconozca que en ambas manos hay movimiento hasta que se encuentren cerca una de la otra, la aplicación desplegará un mensaje haciendo referencia que hubo en evento Click (ver figura 5). Figura 6.- Reconocimiento en la oscuridad del cuerpo humano (manos) por medio del Kinect. Por último se realizó una aplicación que reconoce el movimiento de un gesto Swipe. Esta aplicación consiste que detecta un gesto con la mano derecha, en este caso es deslizar la mano izquierda de un lado a otro. Cuando el dispositivo reconoció las manos, con la mano izquierda se puso enfrente Vol. 1 no. 3, Jóvenes Investigadores, 015 4

para comenzar a realizar el gesto (ver figura 7). Después se comenzó a recorrer la mano detectada hacia el lado derecho de la pantalla (ver figura 8). Finalmente cuando la mano llegue al lado derecho de la pantalla en la etiqueta que aprecia en la parte superior mostrará la cantidad de gestos que se realizaron (ver figura 9). Figura 9.- Reconocimiento del gesto por medio del Kinect. Cuando lo reconozca la etiqueta se incrementará cada vez que se realice el gesto. CONCLUSIONES Figura 7.- Reconocimiento de la manos y posición para comenzar a realizar el gesto por medio del Kinect. Se cumplieron completamente los objetivos del proyecto, por lo que se cuenta actualmente con una interfaz computacional óptica que permite manipular el mouse por medio de las manos. La interfaz desarrollada, es de bajo consumo de recursos y un costo relativamente bajo en comparación a otros dispositivos existentes en el mercado. Sin embargo, este proyecto abre las puertas a desarrollar otras aplicaciones que hagan uso de esta interfaz, extendiendo los alcances del mismo y los posibles beneficios que conlleva. Figura 8.- Movimiento de la mano izquierda hacia la parte derecha de la interfaz por medio del Kinect. Una vez que haya finalizado el proyecto se continuará para su implementación en alguna institución educativa para ver si los resultados son satisfactorios y poder plantear un proyecto innovador para su posible venta. REFERENCIAS [1] GÓMEZ, Emilio. Detección espacial de Objetos. Tesis (Ingeniería en electrónica y comunicaciones). Puebla, México. Universidad de las Américas Puebla, Escuela de Ingeniería, 004. 18 p. Vol. 1 no. 3, Jóvenes Investigadores, 015 5

[] FERNÁNDEZ, Estefanía. Control de software educativo mediante Kinect de Microsoft. Tesis (Ingeniería en Sistemas Computacionales). Madrid, España. Universidad Carlos III de Madrid, Escuela de Ingeniería, 01. 116 p. [3] Kinect para Windows. http://www.microsoft.com/enus/kinectforwindows/ [4] Reconocer gestos con Skeletal Tracking. http://blogs.msdn.com/b/esmsdn/archive/011/08//reto-sdk-kinectreconocer-gestos-con-skeletal-tracking.aspx Vol. 1 no. 3, Jóvenes Investigadores, 015 6