286
INTERFACES GESTUALES Y REALIDAD AUMENTADA Autores: Díaz, Gastón; Leschevich, Germán Director de tesina: Mg. Biaggio, Alejandro Tesina presentada a la Facultad de Ingeniería de la Universidad Nacional de la Patagonia San Juan Bosco como parte de los requisitos para la obtención del título de Licenciado en Informática Trelew, Diciembre de 2014 Facultad de Ingeniería Sede Trelew Universidad Nacional de la Patagonia San Juan Bosco

INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

INTERFACES GESTUALES Y

REALIDAD AUMENTADA

Autores: Díaz, Gastón; Leschevich, Germán

Director de tesina: Mg. Biaggio, Alejandro

Tesina presentada a la Facultad de Ingeniería de la Universidad Nacional de la

Patagonia San Juan Bosco como parte de los requisitos para la obtención del título

de Licenciado en Informática

Trelew, Diciembre de 2014

Facultad de Ingeniería – Sede Trelew

Universidad Nacional de la Patagonia San Juan Bosco

Page 2: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán I

AGRADECIMIENTOS

Queremos dedicar esta tesina a nuestras familias, amigos y amigas que nos apoyaron y

acompañaron a lo largo de la carrera, y sobre todo nos motivaron incansablemente durante la

realización del presente documento. Por otra parte, queremos agradecer a todos los profesores por

ayudarnos a crecer como futuros profesionales, y en especial a nuestro tutor Alejandro y al

jurado, que dedicaron su tiempo y esfuerzo para ayudarnos a concluir este trabajo de la mejor

manera.

Page 3: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán II

RESUMEN

El objetivo de la presente tesina, es estudiar los conceptos de Interfaces Gestuales y de

Realidad Aumentada, como por ejemplo su evolución e historia, definiciones, componentes,

fundamentos y casos de aplicación de cada uno de ellos.

En cuanto a las Interfaces Gestuales se definirán los conceptos de interacción entre

persona – computadora, y los conceptos y disciplinas a tener en cuenta a la hora de diseñarlas.

Además se analizará el concepto de gesto, diseño, atributos y clasificación de los mismos.

Con relación a la Realidad Aumentada se estudiará su definición, sus fundamentos y sus

casos de aplicación, como también las técnicas para aplicarla y sus diferencias con la Realidad

Virtual.

Además, se estudiarán las distintas técnicas y dispositivos que permiten la detección y el

reconocimiento de gestos, y algunas de las herramientas más populares que permiten la

programación de aplicaciones para dichos dispositivos, realizando finalmente, una comparación

entre los mismos.

Por último, se propone desarrollar una aplicación utilizando las características del

dispositivo de detección de gestos Kinect (las cuales serán investigadas y explayadas en el

presente documento), que permita detectar y reconocer gestos, e incorporar conceptos de la

Realidad Aumentada, y cuyo objetivo es ayudar a la rehabilitación de las personas que han

sufrido ACV (Accidentes Cerebro Vasculares) mediante la grabación de gestos personalizados

para dicha persona, por parte de su médico.

Page 4: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán III

ABSTRACT

The aim of this dissertation is to study the concepts of Gestural Interfaces and

Augmented Reality, including for example their history, definitions, components, foundations

and application cases of each of them.

As regards Gestural Interfaces, the concepts of person – computer interaction, and the

concepts and disciplines to consider when designing them will be defined. Moreover, the

concepts of gesture, design, attributes and their classification will be analyzed.

As regards Augmented Reality, not only its definition, foundations and application

cases, but also the techniques to implement it and the differences with Virtual Reality will be

studied.

Moreover, different techniques and devices which allow the detection and recognition of

gestures will be studied. Furthermore, some of the most popular tools which allow the

programming of applications for such devices will be studied too, making at the end a

comparison between them.

Finally, it is intended to develop an application using the characteristics of the gesture

detector device Kinetic (such characteristics will be investigated and enlarged in the present

document), which enables to detect and recognize gestures and incorporate concepts of

Augmented Reality, and whose objective is to help the rehabilitation of people who have suffered

a CVA (cerebrovascular accident) by means of the recording of gestures customized by doctors

for patients.

Page 5: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán IV

ORGANIZACIÓN DE LOS CONTENIDOS

Capítulo 1. Introducción

En este capítulo se describen los objetivos, motivación, el marco teórico, y el desarrollo

propuesto para la presente tesina.

Capítulo 2. Interfaces Gestuales

Se describen los conceptos introductorios de las interfaces, tales como la definición del

concepto de interacción persona – computadora, su diseño y modos de implementación. También

se describe el concepto de gesto, sus atributos, clasificación e implementación de interfaces

basadas en gestos.

Capítulo 3. Realidad Aumentada

Este capítulo tiene como objetivo definir el concepto de Realidad Aumentada, analizar

los distintos campos de aplicación, sus características, sus fundamentos teóricos y sus diferencias

con respecto a la Realidad Virtual.

Capítulo 4. Dispositivos y técnicas de detección y reconocimiento de gestos

En este capítulo se describen las técnicas de detección y reconocimiento de gestos, su

evolución y modo de implementación, y por último, se describen algunos dispositivos modernos

de detección de gestos y sus características principales.

Capítulo 5. Kinect

Aquí se describen las características del dispositivo Kinect detalladas, tanto sus

componentes hardware, como software y las distintas maneras de programar aplicaciones que

utilizan dicho sensor. Por último se justifica la elección del mismo para el desarrollo propuesto.

Capítulo 6. Introducción al desarrollo

Page 6: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán V

En este capítulo se realiza una introducción de la manera en que se comunica el

dispositivo con la aplicación y se analizan las herramientas investigadas para el caso de

aplicación que se propone, con sus ventajas, desventajas para luego justificar la elección de cada

una de ellas.

Capítulo 7. Caso de aplicación

Este capítulo tiene como finalidad explicar el desarrollo que se propone, el campo de

aplicación del mismo, funcionalidades, arquitectura, requerimientos, sus objetivos, y la lógica

utilizada para lograrlo. Por último se detallará la manera en que se debe utilizar dicha aplicación

y sus diferentes funcionalidades.

Capítulo 8. Conclusiones y líneas futuras

En este capítulo se definen las conclusiones de la investigación que se realizó en la

presente tesina y se explica el futuro de los temas que fueron tratados en la misma.

Page 7: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán VI

ÍNDICE GENERAL

1 INTRODUCCIÓN ................................................................................................................................... 1

1.1 OBJETIVOS ............................................................................................................................................. 1

1.2 MOTIVACIÓN .......................................................................................................................................... 1

1.3 MARCO TEÓRICO ..................................................................................................................................... 2

1.4 DESARROLLOS PROPUESTOS ....................................................................................................................... 4

1.5 RESULTADOS ESPERADOS........................................................................................................................... 4

1.6 CRONOGRAMA DE ACTIVIDADES .................................................................................................................. 4

2 INTERFACES GESTUALES ...................................................................................................................... 6

2.1 LA INTERACCIÓN PERSONA-COMPUTADORA .................................................................................................. 7

2.1.1 Historia ....................................................................................................................................... 8

2.1.2 Estructura de la Interacción Persona - Computadora ................................................................. 9

2.1.3 Disciplinas que comprende la Interacción Persona - Computadora (HCI) ................................. 11

2.1.4 El diseño de un sistema interactivo centrado en el usuario ...................................................... 18

2.1.5 Usabilidad ................................................................................................................................. 22

2.2 GESTOS ............................................................................................................................................... 28

2.2.1 Grados de libertad .................................................................................................................... 29

2.2.2 Gestos en la vida cotidiana ....................................................................................................... 31

2.2.3 Otra clasificación de gestos ...................................................................................................... 35

2.2.4 Clasificación de los gestos según el dispositivo de entrada ...................................................... 39

2.2.5 Diseño de los gestos .................................................................................................................. 40

2.2.6 Atributos de los gestos .............................................................................................................. 43

2.2.7 Determinar el gesto apropiado ................................................................................................. 45

2.2.8 Asignar el gesto a un comportamiento ..................................................................................... 46

2.3 INTERFACES BASADAS EN GESTOS .............................................................................................................. 47

2.3.1 Interfaces basadas en gestos naturales (NUI) .......................................................................... 47

2.3.2 Pautas para el diseño de Interfaces Naturales ......................................................................... 49

2.3.3 Características de una buena interfaz natural .......................................................................... 50

2.3.4 El contexto en una Interfaz Natural de Usuario ........................................................................ 53

3 REALIDAD AUMENTADA .................................................................................................................... 56

Page 8: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán VII

3.1 INTRODUCCIÓN ..................................................................................................................................... 57

3.1.1 ¿Qué es Realidad Virtual? ......................................................................................................... 57

3.1.2 Qué es Realidad Aumentada .................................................................................................... 62

3.2 REALIDAD AUMENTADA Y REALIDAD VIRTUAL ............................................................................................. 74

3.2.1 Realidad Mixta .......................................................................................................................... 74

3.2.2 Diferencia entre RA y RV ........................................................................................................... 76

3.3 CARACTERÍSTICAS Y DISPOSITIVOS ............................................................................................................. 76

3.3.1 Características Generales ......................................................................................................... 76

3.3.2 Componentes de un sistema de Realidad Aumentada ............................................................. 78

3.4 FUNDAMENTOS TEÓRICOS ....................................................................................................................... 97

3.4.1 Diagrama de una aplicación de RA ........................................................................................... 98

3.4.2 Generación de la imagen aumentada..................................................................................... 101

3.4.3 Tracking .................................................................................................................................. 104

3.5 REALIDAD AUMENTADA EN DISPOSITIVOS MÓVILES ..................................................................................... 114

3.5.1 Características de hardware y software ................................................................................. 114

3.6 APLICACIONES ..................................................................................................................................... 114

3.6.1 Campos de aplicación ............................................................................................................. 115

3.7 ALTERNATIVAS TECNOLÓGICAS ............................................................................................................... 116

4 DISPOSITIVOS Y TÉCNICAS DE DETECCIÓN Y RECONOCIMIENTO DE GESTOS ....................................117

4.1 PRIMEROS DISPOSITIVOS Y TÉCNICAS DE DETECCIÓN DE GESTOS ..................................................................... 118

4.1.1 El lápiz ..................................................................................................................................... 118

4.1.2 Pantallas táctiles ..................................................................................................................... 120

4.1.3 Sistemas multitáctiles ............................................................................................................. 121

4.1.4 Sensores electrónicos - En el cuerpo o ropa ............................................................................ 139

4.1.5 Sensores electrónicos - Objetos con sensores e interfaces tangibles ...................................... 142

4.1.6 Sensores electrónicos – Dispositivos infrarrojos ..................................................................... 143

4.1.7 Visión por computadora o visión artificial .............................................................................. 143

4.1.8 Sensores remotos .................................................................................................................... 146

4.2 DISPOSITIVOS DE DETECCIÓN DE GESTOS MODERNOS .................................................................................. 147

4.2.1 Wii Remote – Wii Motion Plus ................................................................................................ 147

4.2.2 PlayStation Move .................................................................................................................... 152

4.2.3 Microsoft Kinect ...................................................................................................................... 157

4.2.4 Leap Motion ............................................................................................................................ 160

Page 9: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán VIII

4.2.5 Comparación entre los dispositivos ........................................................................................ 164

4.3 ELECCIÓN DEL DISPOSITIVO .................................................................................................................... 169

5 KINECT .............................................................................................................................................170

5.1 HISTORIA ........................................................................................................................................... 171

5.2 HARDWARE ........................................................................................................................................ 171

5.2.1 Emisor infrarrojo y cámara de profundidad ........................................................................... 171

5.2.2 Cámara RGB ............................................................................................................................ 174

5.2.3 Motor de inclinación y acelerómetro de tres direcciones ....................................................... 176

5.2.4 Arreglo de micrófonos ............................................................................................................ 176

5.2.5 Reconocimiento de usuarios con Kinect .................................................................................. 178

5.3 HERRAMIENTAS PARA DESARROLLO CON KINECT ........................................................................................ 179

5.3.1 SDK Kinect para sistema operativo Windows ......................................................................... 180

5.3.2 Comunidad Open Kinect ......................................................................................................... 192

5.4 PROYECTOS CON KINECT ....................................................................................................................... 193

5.4.1 TedCas – Ayuda en el quirófano ............................................................................................. 193

5.4.2 Topshop – Ar Door .................................................................................................................. 195

5.4.3 Kinect en la educación ............................................................................................................ 196

5.5 KINECT V2 – EL NUEVO KINECT .............................................................................................................. 197

5.5.1 SDK 2.0 – Características y beneficios ..................................................................................... 197

6 INTRODUCCIÓN AL DESARROLLO .....................................................................................................200

6.1 INTRODUCCIÓN ................................................................................................................................... 201

6.2 LIBRERÍAS GRÁFICAS Y TOOLKITS .............................................................................................................. 202

6.3 APLICACIÓN BASADA EN GESTOS CON RA ................................................................................................. 203

6.4 WRAPPERS ......................................................................................................................................... 203

6.4.1 SimpleOpenNI ......................................................................................................................... 203

6.4.2 PiKynect .................................................................................................................................. 204

6.4.3 Kinect Toolbox......................................................................................................................... 205

6.5 FRAMEWORK ...................................................................................................................................... 206

6.5.1 OpenNI y NITE ......................................................................................................................... 206

6.5.2 Microsoft Kinect SDK ............................................................................................................... 209

6.6 DRIVERS ............................................................................................................................................ 231

6.7 ELECCIÓN DE LAS HERRAMIENTAS ............................................................................................................ 231

Page 10: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán IX

7 CASO DE APLICACIÓN .......................................................................................................................234

7.1 PROBLEMA A RESOLVER ........................................................................................................................ 235

7.1.1 Objetivo .................................................................................................................................. 235

7.1.2 Resumen ................................................................................................................................. 235

7.1.3 Campo de aplicación ............................................................................................................... 236

7.2 ANÁLISIS DE REQUERIMIENTOS ............................................................................................................... 238

7.2.1 Requerimientos funcionales .................................................................................................... 238

7.2.2 Requerimientos no funcionales ............................................................................................... 239

7.3 DISEÑO .............................................................................................................................................. 240

7.3.1 Arquitectura ............................................................................................................................ 240

7.3.2 Lógica y estructura de la aplicación ........................................................................................ 243

7.4 DETECCIÓN Y GRABACIÓN DE GESTOS ....................................................................................................... 250

7.4.1 Definir un gesto simple con un algoritmo ............................................................................... 250

7.4.2 Detectar gestos complejos por coincidencia de patrones (pattern matching) ....................... 251

7.5 GRABACIÓN Y REPRODUCCIÓN DE SESIONES .............................................................................................. 254

7.6 PRODUCTO FINAL ................................................................................................................................. 257

7.6.1 Menú principal ........................................................................................................................ 257

7.6.2 Configuración .......................................................................................................................... 258

7.6.3 Médico .................................................................................................................................... 259

7.6.4 Paciente .................................................................................................................................. 263

8 CONCLUSIONES Y LÍNEAS FUTURAS ..................................................................................................267

8.1 CONCLUSIONES ................................................................................................................................... 268

8.2 LÍNEAS FUTURAS ................................................................................................................................. 269

BIBLIOGRAFÍA .....................................................................................................................................271

Page 11: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 1

Capítulo 1

1 INTRODUCCIÓN

1.1 OBJETIVOS

El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la

Realidad Aumentada, exponer sus conceptos generales y analizar los casos en donde las mismas

se pueden utilizar de forma conjunta aumentando sus campos de aplicación. Por último,

desarrollar una aplicación utilizando un dispositivo de detección de gestos que englobe todos los

conceptos antes nombrados.

Investigar sobre las Interfaces Gestuales, los distintos contextos donde se utilizan

y los aspectos a tener en cuenta a la hora de diseñarlas.

Adquirir mayor conocimiento y definir conceptos sobre Realidad Aumentada.

Desarrollar una aplicación utilizando un dispositivo de detección y

reconocimiento de gestos, analizando las distintas características que posee,

como así también las distintas funcionalidades que se pueden explotar del mismo

y su integración con la Realidad Aumentada.

1.2 MOTIVACIÓN

Si a la computadora se le otorga el sentido de la vista, por ejemplo a través de una

cámara, esta podrá utilizar este medio como entrada de información de interacción. Esta nueva

tecnología, permitirá implementar soluciones en distintos contextos de uso, como por ejemplo, en

Page 12: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 2

ambientes industriales, ampliando la integración de personas con capacidades diferentes, creando

nuevas formas de interacciones hombre-máquina, y así brindar la posibilidad de desarrollar una

amplia gama de nuevos productos y aplicaciones.

Actualmente, las cámaras con suficiente resolución, se encuentran en casi todos los

dispositivos informáticos, dado su bajo costo y reducido tamaño. Además, el uso de estas

cámaras como entrada de información hacia los sistemas, está presente en las TUI (Tangible User

Interface - Interfaces de Usuario Tangibles), realidad virtual y aumentada.

Para las personas, la información visual forma parte de la comunicación y de la

interacción entre las mismas. Dentro de un contexto, señalar un objeto con el dedo, puede

significar tanto o más que describirlo. Al ver una persona, sin que la misma diga nada oralmente,

se puede intuir por medio de su expresión facial, su estado anímico. Por ejemplo si vemos una

persona con el ceño fruncido, probablemente se encuentra fastidiada.

La información que reciben los dispositivos informáticos por medio de las interfaces de

visión, tacto o sonido, se conoce como gesto. Un gesto, en términos de la informática, es

cualquier movimiento físico que el sistema de un dispositivo puede detectar y responder al

mismo, sin la ayuda de un mecanismo externo de señalización tradicional como un mouse.

La principal motivación de este trabajo radica en el interés por investigar las interfaces

gestuales, el cual es un tema innovador dentro del ámbito académico. Las mismas se encuentran

aún en desarrollo, por lo tanto todavía no se han fijado sus fronteras ni sus conceptos de manera

estandarizada, y existen pocos estudios académicos sobre sus características, y su diseño.

1.3 MARCO TEÓRICO

Diariamente, y de forma continua, se trabaja e interactúa con sistemas informáticos, ya

sean dispositivos móviles, computadoras, tablets, etc. La manera de interactuar con ellos ha ido

evolucionando a lo largo del tiempo.

Page 13: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 3

Desde la aparición de las primeras computadoras, la comunicación entre éstas y las

personas ha sido un tema de investigación que fomentó la evolución de los dispositivos, desde las

tarjetas perforadas hasta las intuitivas Interfaces de Usuario Naturales (NUI). Las primeras

comunicaciones persona-computadora eran poco amigables, poco intuitivas y difíciles de utilizar.

En los 70, aparecieron los sistemas basados en línea de comandos, primero a través de

terminales y luego con teclados electrónicos y monitores basados en texto. La computadora

recibía órdenes de forma directa a través de teclas de función, caracteres, abreviaturas o palabras.

Fue el primer estilo de interacción que se masificó y que aún hoy en día se sigue utilizando.

En los 80, surgieron las interfaces gráficas de usuario (GUI – Graphical User Interface)

junto con las WIMP (Ventanas, Menús y Dispositivos de puntero). Las GUI se basan en “la

manipulación directa del objeto de interés”. Se tiene una representación del objeto y el usuario lo

manipula en forma directa, causando un efecto visible sobre el mismo.

A pesar de que hoy en día las GUI más utilizadas se basan en WIMP, siendo este el

paradigma de escritorio más popular y extendido, existen otros paradigmas de interacción que

comienzan a utilizarse en la vida diaria como la realidad virtual y la realidad aumentada.

Las tecnologías desarrolladas en base a los gestos, son actualmente accesibles y

convergieron con tecnologías populares tales como la televisión, las computadoras, los celulares

inteligentes y los videojuegos. El uso de estas tecnologías, además, abrió nuevas puertas y

oportunidades para la gente discapacitada y de edad avanzada.

Actualmente, las interfaces gestuales se encuentran en pleno apogeo, y se han convertido

en algo habitual en la sociedad, algo que hace unos años era impensado e inaccesible para el

hombre común. El desarrollo de esta tecnología está aún en curso, y las limitaciones de

aplicación de la misma todavía no se pueden establecer.

Page 14: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 4

1.4 DESARROLLOS PROPUESTOS

Se propone desarrollar una aplicación que demuestre el funcionamiento y las

características de un dispositivo de reconocimiento de gestos. Integrando en la misma la

tecnología de Realidad Aumentada y definiendo los gestos que el dispositivo deberá reconocer

para cumplir con una determinada funcionalidad.

Para poder cumplir con el desarrollo anteriormente descripto se utilizará un framework

(Move Framework, OpenCV, Simple Nintendo WiiMote, Kinesis, OpenNi, Microsoft SDK

Kinect, etc.) que será el nexo entre el dispositivo de reconocimiento de gestos y las librerías

(Kinect Toolkit, WiiMoteLib, Nite, 3D Hand Tracking, LibMove, etc.), las cuales harán las

veces de conectores para que la aplicación pueda utilizar las distintas funcionalidades que posee

tal dispositivo. Además, en base a todo lo nombrado con antelación, se deberá definir el lenguaje

de programación adecuado para desarrollar la aplicación (C#, C++, Java, Python, Processing,

etc.).

1.5 RESULTADOS ESPERADOS

El resultado esperado para la presente tesina, es mostrar el potencial de las interfaces

gestuales y su integración con la realidad aumentada utilizando para ello un dispositivo de

reconocimiento de gestos.

1.6 CRONOGRAMA DE ACTIVIDADES

1. Investigación

a. Interfaces Gestuales (definición, conceptos, diseño e implementación).

b. Dispositivos de reconocimiento de gestos (características, funcionalidades,

comparación entre los mismos)

c. Realidad Aumentada (definición, conceptos, utilidad, implementación y

complemento con dispositivos de reconocimiento de gestos).

Page 15: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 5

2. Desarrollo de la solución o aplicación propuesta

a. Definición de la aplicación a desarrollar y de tecnologías a utilizar para la

implementación de la misma (dispositivo, frameworks, lenguaje, entorno de

desarrollo, etc.)

b. Definición y diseño de los gestos a reconocer e implementación del

reconocimiento de los mismos.

c. Aplicación de la Realidad Aumentada en la implementación.

d. Pruebas e implementación final.

3. Análisis de los resultados obtenidos y conclusiones.

Page 16: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 6

Capítulo 2

2 INTERFACES GESTUALES

Este capítulo tiene como fin introducir los conceptos básicos referentes a las Interfaces

Gestuales, su evolución e historia, qué son, cómo se miden y ejemplos de las mismas, definir el

concepto de interacción persona – computadora, a qué se considera gesto, qué es una interfaz

natural de usuario, tecnologías y técnicas de reconocimiento de gestos.

Page 17: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 7

2.1 LA INTERACCIÓN PERSONA-COMPUTADORA

Las personas diariamente en su vida cotidiana, interactúan con un sinfín de objetos, los

cuales poseen características muy evidentes a los sentidos humanos (visión, sonido, tacto, etc.)

para su manipulación y utilización. Uno de los objetos utilizados masivamente por los seres

humanos hoy en día, son las computadoras. Las mismas, son manipuladas por un amplio abanico

de personas para todo tipo de objetivos. Algunos sistemas informáticos funcionan con poca

intervención humana, pero la mayor parte son interactivos, y necesitan de la interacción con

personas o usuarios que están involucrados en la resolución de tareas. En estos casos la interfaz

persona-computadora, conocida como HCI (Human-Computer Interaction), que también es

denominada interfaz de usuario, es normalmente un factor muy importante del éxito o del fracaso

de un sistema interactivo. En la siguiente figura se visualiza este concepto.

Figura 2-1 - HCI

Hablando estrictamente, la interfaz la componen los dispositivos de entrada y salida y

los programas que la hacen funcionar, pero desde un punto de vista más general, comprende todo

lo que tiene que ver con la experiencia de un usuario y la computadora, como el entorno de

trabajo, la organización en la que trabaja, el entrenamiento que ha tenido, la ayuda que recibe,

etc.

Page 18: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 8

¿Por qué es tan importante estudiar la interfaz de usuario? Porque tal como hemos dicho

antes es una parte importante del éxito de una aplicación interactiva. Estudios realizados

informan que alrededor de un 48% del código de una aplicación está dedicado a la interfaz. A

pesar de su importancia la interacción persona-computadora es una de las disciplinas con menos

dedicación en los estudios de informática y, muchas veces, poco pensadas al momento de hacer la

documentación de un proyecto, dejándose a menudo para el final.

2.1.1 HISTORIA

Toda la Interacción Persona-Computadora sucede dentro de un contexto organizacional

y social. Se requieren distintos tipos de aplicaciones para diferentes propósitos.

A finales de los años 1970 y principios de los 80, los psicólogos empiezan a interesarse

en los aspectos de procesamiento de la información del diseño de sistemas de información.

Comienzan a aparecer áreas de estudio y conceptos como el de diseño de menús, que utilizan

tópicos, por ejemplo, los nombres de menús o profundidad versus anchura. A mediados de los 80,

la usabilidad de los sistemas monousuario empieza a hacerse un hueco, como respuesta a la

explosión de la PC. Hacia finales de los 80 y en los 90, la tendencia se centra en las potentes

estaciones de trabajo (workstations) multiusuario y en las PC más potentes. Se hace hincapié en

las comunicaciones más avanzadas, en las aplicaciones multimedia, en las computadoras

multitarea y en la realidad virtual. Asimismo, la comunidad HCI siempre se ha mostrado de

acuerdo en que, aunque es importante entender la interacción de un usuario con una máquina

mediante una interfaz, también es necesario que se consideren otros tópicos para aprovechar al

máximo las nuevas tecnologías. Estos tópicos que se deben estudiar son: trabajo en grupo,

integración e interacción de medios y el impacto de estas tecnologías en el lugar de trabajo, en la

casa y en la sociedad en general.

Page 19: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 9

Figura 2-2 - A la izquierda la primera computadora de Apple y a la derecha la primera computadora, la Xerox Alto.

La HCI surgió como un campo entrecruzado de disciplinas: gráficos por computadora,

sistemas operativos, factores humanos, factores ergonómicos, ingeniería industrial, psicología

cognitiva, y por supuesto la ingeniería informática.

2.1.2 ESTRUCTURA DE LA INTERACCIÓN PERSONA - COMPUTADORA

El concepto de Interacción Persona–Computadora (HCI), nació como una ciencia que

estudia el diseño, la evaluación e implementación de los sistemas computacionales para el uso

humano. La HCI está compuesta por tres elementos: la persona o usuario, la computadora y la

interacción. El primero de ellos (la persona) es el o los usuarios que interactúan con el sistema, de

ellas se deben conocer las capacidades físicas, habilidades perceptuales y cognitivas, edad,

diferencias culturales y de personalidad, así como también las tareas que tienen que realizar y su

contexto de uso. La computadora es cualquier sistema o dispositivo que cumple con determinadas

características, tales como su movilidad, plataforma, capacidades de entrada y salida, o su sistema

operativo. En tercer y último lugar se encuentra la interacción, que se puede definir como el

intercambio que realizan entre sí la/s persona/s (o usuario/s) y la computadora.

Page 20: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 10

Uno de los objetivos de este tipo de interacciones es mejorar la utilidad, eficiencia y

usabilidad de la comunicación entre las personas, los sistemas y dispositivos que incluyan una

computadora.

Como ya se mencionó anteriormente, estas interacciones dependen de estudios que se

realizan tanto en lo referente a las personas como a nivel informático, por lo tanto las mismas

deben estar reguladas por profesionales de distintos campos (informática, psicología, sociología,

etc.). Es importante entender que las personas no cambian radicalmente su manera de ser, sino

que los sistemas son lo que tienen que ser diseñados para satisfacer los requisitos del usuario.

En la siguiente imagen se visualizan los distintos componentes de una HCI, y cómo

interactúan entre sí. Se ve como la interacción nace del pensamiento humano, luego es trasmitido

mediante algún lenguaje y dispositivo definido, interpretado y procesado del lado de la

computadora, para luego dar un resultado al usuario.

Figura 2-3 - Estructura de una HCI

Page 21: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 11

2.1.3 DISCIPLINAS QUE COMPRENDE LA INTERACCIÓN PERSONA -

COMPUTADORA (HCI)

Como ya se mencionó anteriormente, para diseñar una interfaz de usuario se tienen en

cuenta muchos factores y disciplinas que trascienden la informática, como es la psicología del

usuario, la ergonomía del equipo, los aspectos sociales y culturales, etc. Todo esto hace suponer

que a la hora de desarrollar un sistema interactivo complejo, se debe contar con un equipo

interdisciplinario. No obstante, cuando el equipo de trabajo sea reducido, las mismas personas

deben tratar de cubrir estos papeles por sí mismos.

Figura 2-4 - Disciplinas que implica la HCI

En la figura anterior, se presentan los diferentes aspectos y disciplinas que pueden

contribuir al diseño de interfaces. Seguidamente se describirá brevemente cada una. Para más

información se puede consultar la bibliografía de referencia (Abascal, Aedo, Cañas, & otros,

2001).

2.1.3.1 Psicología

Es la ciencia que estudia el comportamiento y los estados de las personas. Se pueden

distinguir entre 2 tipos:

IPOIPO

SociologíaSociología

Inteligencia Inteligencia

ArtificialArtificial

ErgonomíaErgonomía

ProgramaciónProgramación

DiseñoDiseño

PsicologíaPsicologíaIngenieríaIngeniería

del Softwaredel Software

IPOIPO

SociologíaSociología

Inteligencia Inteligencia

ArtificialArtificial

ErgonomíaErgonomía

ProgramaciónProgramación

DiseñoDiseño

PsicologíaPsicologíaIngenieríaIngeniería

del Softwaredel Software

Page 22: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 12

Psicología Cognitiva. Trata de comprender el comportamiento humano.

Psicología Social. Trata de estudiar el origen y las causas del comportamiento

humano en un contexto social.

El modo de contribuir al diseño de interfaces de la psicología es (como su definición lo

indica) mediante conocimientos y teorías sobre el comportamiento de las personas, cómo

procesan la información, cómo actúan en grupos y organizaciones. Además, otorga metodologías

y herramientas para evaluar la satisfacción del usuario con el diseño de la interfaz, permitiendo

comprobar así si las interfaces que se diseñaron son efectivas.

2.1.3.2 Etnografía – Sociología

Es la ciencia que estudia las costumbres y tradiciones de los pueblos. Las grandes

empresas contratan antropólogos para comprender mejor a sus clientes y trabajadores. Además, la

utilizan para diseñar productos que reflejen correctamente las tendencias culturales del momento.

Estas empresas están convencidas que las técnicas que utiliza la sociología, pueden responder a

cuestiones sobre organizaciones y mercados que otros métodos no pueden.

Un ejemplo de ello, es la empresa IGNEOMA (IGNEOMA, 2011), dedicada al análisis,

diseño y desarrollo de este tipo de interfaces, la cual posee especialistas y técnicas especiales para

conocer a los usuarios y sus comportamientos, y aplica los objetivos de negocio de sus clientes y

las necesidades de los usuarios para realizar el diseño de la interacción. Con ello, logra objetivos

como la creación de interfaces intuitivas y fáciles de usar, logrando que los usuarios tengan una

experiencia positiva y disminuye los costos de desarrollo.

2.1.3.3 Ergonomía o factores humanos

Su propósito es definir y diseñar herramientas y técnicas para diferentes tipos de

ambientes. Su objetivo es incrementar la seguridad, la eficiencia y la fiabilidad para simplificar

las tareas e incrementar la sensación de confort y satisfacción.

Page 23: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 13

La ergonomía se focaliza en el estudio de las características físicas de la interacción, por

ejemplo el entorno físico donde se produce y la forma y características físicas de la pantalla.

A continuación se ejemplifican algunos aspectos que se podrían considerar:

Organización de los controles y pantallas. Como ya se refirió anteriormente,

los aspectos físicos de cómo están organizados los controles y las pantallas son

significativos, ya que el usuario tiene que poder acceder de manera sencilla a

todos los controles y ver la información que se le presenta sin mover

excesivamente el cuerpo.

La información más importante ha de estar situada a la altura de los ojos.

Los controles se tienen que colocar espaciados, para que el usuario se pueda

acomodar perfectamente, además es importante que se prevengan los reflejos de

luz.

Aspectos de Salud. Si bien el uso de computadoras no es una actividad

arriesgada, se deben tener en cuenta algunos aspectos de salud que afectan

directamente la interacción y las prestaciones del usuario, la posición física, la

temperatura, la luz, el ruido, el tiempo que permanece delante de la computadora,

etc.

Uso de los colores. Los colores utilizados para visualizar deben ser diferentes y

distinguirse bien ante los cambios de contraste.

2.1.3.4 Diseño

Es la actividad destinada a conseguir la producción en serie de objetos útiles.

Actualmente pretende actuar sobre el entorno físico del hombre para mejorarlo en su conjunto.

En el caso de las HCI, está disciplina es vital para conseguir programas usables.

Algunos principios definidos y fundamentales para el diseño de las interfaces son:

Page 24: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 14

Simplicidad. El programa debe ser de manejo fácil (buena usabilidad). Esto no

debe implicar la pérdida de funcionalidad.

Apoyo. El control del programa recae sobre el usuario. El sistema debe ofrecerle

ayuda para facilitarle la labor.

Familiaridad. Se debe diseñar la interfaz teniendo en cuenta los conocimientos

previos del usuario.

Evidencia. Se deben diseñar los controles y otros objetos visibles e intuitivos,

por ejemplo, usando representaciones del mundo real.

Estímulo. Las acciones de los usuarios deben producir los resultados que ellos

esperan, es decir, ser previsibles. También se deberían poder deshacer, ser

reversibles.

Satisfacción. El usuario debería sentir que está progresando y haciendo avances,

debe haber retroalimentación de parte de la interfaz.

Disponibilidad. Hacer que todos los objetos estén disponibles para que el

usuario los use en cualquier momento.

Seguridad en el uso. Se refiere a evitar errores del usuario. Para ello la interfaz

puede ofrecerle ayuda de forma automática o si el usuario la solicita.

Versatilidad. El sistema debe soportar diferentes formas de interacción para que

el usuario pueda elegir el método más adecuado a su situación.

Personalización. La interfaz debe ser personalizable para que el usuario la

adapte según sus necesidades.

Afinidad. Permitir que a través de un buen diseño visual los objetos sean afines a

otros de la realidad cotidiana, esto contribuye a la familiarización del usuario con

la interfaz.

Page 25: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 15

2.1.3.5 Programación

Una computadora por sí misma no es capaz de hacer nada, solo puede hacer lo que se le

ha ordenado, o en términos más específicos, programado. Esta herramienta permite decirle a la

computadora qué debe hacer.

Todo lo que una computadora realiza cuando un usuario interactúa con ella son órdenes

programadas. El programador, es el encargado de diseñar soluciones a determinados problemas y

escribirlos como programas para la computadora.

Un programa debe cumplir determinados parámetros fundamentales, como por ejemplo,

debe funcionar correctamente, no debe tener dificultades, ni errores, es decir, tiene que ser

robusto. Además debe estar bien documentado para la corrección de futuros errores o la

implementación de mejoras, y ser eficiente, de rápida respuesta.

Dentro de la programación se pueden englobar tanto los propios lenguajes de

programación (Java, C, C ++, C#, Ruby, Python, etc.) como las herramientas de diseño y

programación que permiten el desarrollo de interfaces. Algunos ejemplos de este tipo de

herramientas son Qt, una herramienta de código abierto para el desarrollo de interfaces disponible

para múltiples lenguajes, Blender para el lenguaje C#, la librería Swing para Java, etc.

2.1.3.6 Inteligencia Artificial

La Inteligencia Artificial (IA) trata de diseñar programas inteligentes que puedan

simular los distintos aspectos del comportamiento humano.

La IA ha sido utilizada en el diseño de patrones y sistemas expertos en interfaces

inteligentes y en el diseño de interfaces utilizando la voz. Actualmente se están desarrollando

agentes inteligentes para la ayuda de los usuarios en la navegación y reducir las tareas más

normales.

En resumen, el uso de la IA dentro de las interfaces humano-computadora ha dado lugar

a que se defina el concepto de interfaz de usuario inteligente.

Page 26: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 16

En la educación, por ejemplo, se implementó un sistema de Agente Pedagógico

Inteligente. Un Agente Pedagógico es un agente que toma decisiones acerca de cómo maximizar

el aprendizaje de un alumno, y el "entorno" que observa es un estudiante en su proceso de

aprendizaje; para cumplir con sus metas, un Agente Pedagógico puede actuar como un tutor

virtual, como un estudiante virtual, o como un compañero de aprendizaje que ayuda al estudiante

en su proceso de aprendizaje.

Un área de aplicación especialmente relevante de los Agentes Pedagógicos Virtuales

Inteligentes, es el entrenamiento de equipos de trabajo. Esta aplicación plantea retos interesantes,

como son el hecho de tener que tutelar simultáneamente a más de un estudiante, o el hecho de

tener que manejar simultáneamente conocimiento "espacial" acerca del entorno y conocimiento

"procedimental" acerca de las operaciones que pueden ser realizadas en el mismo.

Figura 2-5 – Agente Pedagógico Virtual Inteligente

2.1.3.7 Ingeniería de Software

Esta disciplina estudia técnicas de diseño y desarrollo de software. Para realizar

diferentes aplicaciones se tienen que utilizar procedimientos propios de ingeniería. Sólo

Page 27: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 17

utilizando estas herramientas y técnicas que provee la Ingeniería de Software se obtiene un

software de calidad.

Algunos conceptos de calidad que afectan al usuario y que son definidas por normas ISO

(Usability) son:

Funcionalidad.

Usabilidad (será descripta más adelante).

Eficiencia.

Mantenibilidad.

Portabilidad.

Por otro lado, dichas normas describen más específicamente los atributos de una

interfaz:

Presentación de la información. La forma de representar la información en

pantalla.

Ayuda al usuario. Se refiere a la retroalimentación, manejo de errores, ayuda

on-line, etc.

Diseño de los Menús. Navegación de menú, estructuras de los mismos,

presentación (incluyendo botones, paneles, campos, etc.)

2.1.3.8 Resistencia del usuario a implementación de sistemas

A la hora de involucrar al usuario en la implementación de un sistema, se encuentra la

dificultad de que el usuario o los usuarios de una empresa se nieguen a colaborar. Según estudios,

esta posición negativa de algunos usuarios es porque el ser humano es poco adaptable a los

cambios drásticos. Esto quiere decir, de alguna manera, que el usuario final de la aplicación, le

teme al nuevo sistema, así como también a los cambios organizacionales que la empresa puede

Page 28: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 18

llegar a realizar, a qué tanto reduce el sistema el trabajo que debe realizar el empleado y como

consecuencia de ello se anticipen las jubilaciones o se despida personal, etc.

Toda esta serie de puntos negativos que se han enumerado son algunos de los que se

pueden encontrar. Por lo tanto, es necesario tenerlos presentes siempre en el diseño de una

interfaz.

2.1.4 EL DISEÑO DE UN SISTEMA INTERACTIVO CENTRADO EN EL USUARIO

Como ya se ha apuntado y, asimismo, lo destacan varios autores, el diseño de un sistema

interactivo implica pensar en el usuario, centrar el sistema de desarrollo en él e involucrarlo en la

medida en que se pueda. Incluso se puede pensar en incluir a los usuarios en el equipo que se

encargará del diseño del sistema. Hoy en día esta práctica es muy común, es decir, es fácil

encontrar sistemas en cuyos equipos de diseño hay involucrados usuarios. Un ejemplo de ello,

son los sistemas ERP (Enterprise Resource Planning – Sistemas de Planificación de Recursos

Empresariales), en los cuales, cuando se deben adaptar a una empresa, se necesita la interacción

con los usuarios que utilizarán esa aplicación.

Ya realizada la especificación, teniendo la propuesta del diseño y un código ya

implantado, es dificultoso cambiar las características de la interacción y la forma en que se

presenta la información. Por consiguiente, se deberá contar desde un principio con la idea clara

de cómo se quiere la interfaz y las interacciones con el usuario para luego ampliar las

especificaciones funcionales que guiarán el diseño posterior.

Durante el desarrollo de un sistema interactivo se deben tener en cuenta todos los actores

intervinientes en él: el primero de ellos es el usuario, que es quien tiene la capacidad de elección

y actuación, luego aparece la computadora, que ofrece un programa y mecanismos para el acceso

al sistema y por último el diseñador, que es quien se encarga de predecir las posibles acciones

que realice el usuario y plasmarlas en un programa.

Page 29: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 19

Figura 2-6 - Relación Usuario - Computadora - Diseñador

La tendencia de hacer interfaces de usuarios fáciles de usar hace que su diseño sea cada

vez más difícil. La Interfaz de Usuario (IU) es el medio de comunicación entre la persona y la

computadora, sus características son su apariencia (presentación) y la capacidad de gestionar ese

diálogo que se produce entre ambos. Existen muchas herramientas y productos que permiten

generar automáticamente la apariencia de una aplicación utilizando botones, menús, herramientas

visuales, toolkits, etc. Pero el uso de estas, no brinda la ayuda suficiente para analizar el

comportamiento dinámico de la interfaz y tampoco aseguran que la misma sea correcta. Existen

normas ISO para diseñar un sistema interactivo y evaluar su calidad, algunas las cuales fueron

descriptas en la sección “ingeniería de software”.

2.1.4.1 Análisis centrado en el usuario

El diseño del sistema interactivo debe dejar satisfechas las demandas de los usuarios.

Para obtener buen diseño se debe partir de analizar el contexto donde se desarrolla el trabajo o la

actividad que realizará la computadora. Para lograr esto, se analizan las características de los

usuarios, sus actividades y el escenario donde éste realiza su actividad. Los factores nombrados

permiten recopilar los requisitos que el diseño del sistema debe satisfacer.

Usuarios

Al momento de diseñar cualquier sistema, se deben tener en cuenta las características de

los que serán usuarios del mismo. La razón de incorporar al usuario como factor humano en el

diseño, se da por el reconocimiento de un mal diseño que se ha hecho en muchas aplicaciones, y

Diseñador

Usuario Computadora

I U

Page 30: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 20

además, por la búsqueda de que se cumpla el objetivo de que el producto ayude al usuario.

Asimismo, los factores humanos pueden llegar a limitar el tiempo de aprendizaje, rendimiento, la

frecuencia de errores, etc.

El diseño de una aplicación puede estar orientado a un encargo directo (un cliente

específico) o dirigido a un grupo de potenciales usuarios (como pueden ser adolescentes, niños,

estudiantes, etc.).

Para realizar este análisis centrado en el usuario, se deben conocer varios aspectos:

Habilidades físicas. Estas determinan fundamentalmente, cómo se adaptará el

entorno de trabajo a las características del usuario (tamaños de botones, tipos de

dispositivos, etc.). Hay casos donde el diseño debe ser ergonómico por tener el

usuario limitaciones de movimiento (discapacidad, daltonismo, etc.).

Habilidades cognitivas. En estas habilidades influye el nivel de experiencia que

tiene el usuario de su trabajo y además, del uso de la computadora. Se pueden

encontrar una variada gama de usuarios, desde expertos hasta novatos, usuarios

motivados o no motivados, etc.

Diferencias de personalidad. Las diferencias de personalidad pueden incitar a

que haya alteraciones en la comunicación. De esta manera, las personas que son

tímidas tendrán un comportamiento cauteloso y prudente ante la computadora,

mucho más que alguien que es extrovertido o nervioso.

Diferencias culturales. Estas diferencias se encuentran motivadas por el ámbito

socio-cultural donde se encuentra el usuario, esto afecta el lenguaje, las

expresiones, la terminología, los gestos, etc.

Este conjunto de particularidades de los usuarios serán de gran ayuda luego del diseño.

Para recopilar las mismas, se puede partir de una tabla donde figuren los distintos tipos de

usuarios que se tendrán y sus características (nivel de experiencia, grado de utilización del

sistema, etc.)

Page 31: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 21

Tareas

Otro de los puntos importantes que se deben tener en cuenta a la hora de diseñar un

sistema interactivo, son las tareas que realizan los usuarios. La forma de actuar de las personas

está dirigida por objetivos, para lograr esos objetivos, se deben desarrollar una serie de tareas

sobre objetos. Por ejemplo, si el objetivo es comer, se debe llevar a cabo la tarea de encender

(actividad/tarea) el microondas (objeto). Cuando estas tareas se realizan mediante un sistema

interactivo se debe tener en presente que sean familiares para el usuario, esto es, la forma en que

el usuario las llevará a cabo, la secuencia de acciones y su representación debe ser símil a la que

ejecuta en el entorno real. De lo contrario, el usuario deberá hacer un esfuerzo extra para

comprender las tareas que realiza cotidianamente.

Escenario

Los humanos no trabajan en forma aislada, siempre existe el condicionamiento del

escenario donde desempeña dicho trabajo. Los puntos más relevantes que se deben tener

presentes son:

Entorno físico. Se debe prestar atención a las características físicas del entorno

como pueden ser el tipo de ubicación, la iluminación, el espacio, etc. así como

también otros factores del mismo como el ruido, la polución, la temperatura, etc.

Entorno social. Este entorno implica trabajar en un grupo que rige bajo normas

de comportamiento. Hay determinadas situaciones donde puede haber

cooperación para el trabajo, se comparten recursos y datos, etc.

Estas características pueden condicionar el diseño del sistema, porque un trabajo en

equipo con mucha cooperación y compartición de datos necesitará una aplicación que facilite el

trabajo en grupo.

Page 32: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 22

2.1.5 USABILIDAD

Un sistema interactivo que cumpla con sus objetivos, tiene que lograr ser usable y

accesible por la mayor parte de la población.

La usabilidad se puede definir como la medida en la que un producto se puede usar por

determinados usuarios con efectividad, eficiencia y satisfacción para cumplir objetivos

específicos en un contexto dado.

Se han establecido algunos principios de diseño en ingeniería basados en la usabilidad,

con los cuales se ha comprobado una reducción en los costos de producción, mantenimiento,

apoyo, uso y una mejor calidad del producto.

Existen normas ISO (ISO 9241-11) (Usability) que explican cómo identificar la

información necesaria para tomar en cuenta a la hora de especificar o evaluar la usabilidad

midiendo la performance y la satisfacción del usuario. También da una guía con respecto a

describir el contexto de uso del producto y las medidas de usabilidad en un sentido explícito.

Incluye también una explicación de cómo la usabilidad de un producto puede ser especificada y

evaluada como una parte de un sistema de calidad. Además, brinda explicaciones de cómo las

medidas de performance y satisfacción de usuario pueden ser usadas para medir cómo cualquier

componente de un sistema puede afectar la calidad de todo el sistema.

.Entonces, ¿por qué las cosas son difíciles de usar?: El problema está en el desarrollo del

producto, se hace énfasis en la tecnología en vez de focalizarse en el usuario que, en definitiva, es

el que utilizará el dispositivo.

Por usabilidad se puede entender como la característica que hace que el software sea

fácil de utilizar y fácil de aprender. Pero la pregunta es, ¿Cuándo un software es fácil de utilizar y

fácil de aprender?, ¿Cómo se miden estos factores? Un software es fácil de usar si realiza la tarea

para la que se lo utiliza de manera fácil, eficiente e intuitiva. Por otro lado, su facilidad de

aprendizaje se mide por la rapidez en que el usuario realiza una tarea, cuantos errores se cometen

y la satisfacción de la persona que lo utiliza.

Page 33: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 23

Otro aspecto a tener en cuenta es que sea seguro (protección de datos personales), y que

tenga un costo adecuado. Por otra parte un software es usable si permite que el usuario se

concentre en su tarea y no en la aplicación.

2.1.5.1 Principios generales de usabilidad

A continuación se mencionarán algunos principios que se pueden aplicar a un sistema

interactivo con el fin de mejorar su usabilidad:

Facilidad de aprendizaje

Minimizar el tiempo necesario que se necesita desde el desconocimiento de la

aplicación hasta su uso productivo.

Reducir el tiempo que se necesita para ayudar en las sesiones de aprendizaje de

la aplicación.

Ayudar a los usuarios de nivel intermedio para que aprendan a utilizar

inicialmente el sistema interactivo, y a partir de esto, puedan llegar a un máximo

nivel de comprensión y uso del sistema.

Dos pautas que debe cumplir un sistema para que sea fácil de aprender es que el mismo

sea sintetizable, es decir que el usuario tiene que poder evaluar el efecto de las operaciones

anteriormente efectuadas, en el estado actual. Por lo tanto, cuando se realiza una operación que

cambia el estado anterior, este cambio debe ser captado por el usuario.

La otra pauta que se debe cumplir tiene que ver con la familiaridad del sistema, esto se

refiere a la correlación que existe entre los conocimientos que tienen los nuevos usuarios (dada

una vasta experiencia interactiva con otros sistemas) y los conocimientos que se requieren para la

interacción con el nuevo sistema.

Consistencia

Un sistema es consistente si todos los mecanismos que se utilizan son usados de la

misma manera siempre, sin importar el momento en el que sea utilizado.

Page 34: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 24

El gran problema es que, cuando se termina una aplicación, el mercado obliga a hacer

una nueva, con nuevos comportamientos y objetos. Esto dificulta la consistencia entre versiones,

pero se debe tratar de mantener la máxima consistencia posible y que el usuario pueda usar las

nuevas características, sin perder las que ya conocía.

Pautas para diseñar sistemas consistentes:

Seguir patrones de estilo (en la medida de lo posible).

Aplicar un diseño en común.

No modificar nada si no es necesario.

Sumar técnicas nuevas al conjunto existente previamente, en vez de cambiar las

que ya se conocen.

Flexibilidad

Esta característica, esta avocada a las múltiples maneras en que el usuario y el sistema

pueden intercambiar información.

Hay algunos parámetros que se tienen en cuenta para medir la flexibilidad que serán

detallados brevemente a continuación:

Control del usuario

Permite a los usuarios controlar la interacción.

Permite no forzar a los usuarios a trabajar para la aplicación.

Potencia la inteligencia de los usuarios, para que sea obvio el proceder.

Para lograr que el control esté en poder del usuario, se les debe dar a los mismos la

posibilidad de deshacer. Además del control para empezar y terminar las operaciones siempre

que esto sea posible. Cuando este proceso no se pueda interrumpir, hay que advertirle a los

usuarios y permitir ver mensajes apropiados durante el proceso.

Page 35: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 25

Migración de tareas

Este parámetro está relacionado con la transferencia del control usuario - sistema.

Ambos tienen que tener el poder de pasar de una tarea a la otra, de manera que esta pueda ser

interna o compartida entre los dos. Un ejemplo de ello, podría ser el corrector ortográfico que

puede ser utilizado por el usuario, por el sistema, o ambos.

Capacidad de substitución

Esta capacidad, es la que posibilita que valores equivalentes puedan ser reemplazados

unos por otros. Por ejemplo, para determinar el margen de una carta, se puede especificar en

centímetros o pulgadas explícitamente, calcularlo según los valores que se especificaron (anchura

de carta, por ejemplo) o decidirlo visualmente.

De esta manera, sin dejar cálculos en manos del usuario, se minimizan los errores.

Adaptabilidad

Esta pauta es la adecuación automática de la interfaz al sistema. Las decisiones para

poder realizar esta adecuación automática, se pueden basar tanto en la experiencia del propio

usuario como en observar la repetición de ciertas secuencias de tareas.

Un ejemplo de ello puede ser preparar un sistema que reconozca cómo se comporta un

usuario experto o uno novato para, de esta manera, ajustar de forma automática el control del

diálogo o el sistema de ayuda, y de esta manera adaptar los mismos al nivel de usuario que

actualmente esté usando el sistema.

Robustez

Esta característica se refiere al nivel de apoyo al usuario para que el mismo pueda

cumplir con los objetivos y está relacionada con la capacidad de observación del usuario, de

recuperación de información y de ajuste de la tarea del mismo, es decir, que pueda aprender de

sus errores.

Page 36: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 26

Posibilidad de recuperación

La posibilidad de recuperación de un sistema, es el nivel de facilidad que una aplicación

le permite al usuario para corregir una acción una vez reconocido un error.

Tiempo de respuesta

Es el tiempo que necesita el sistema para formular los cambios de estado del usuario.

Por supuesto que estos tiempos de respuesta deben ser llevaderos para el usuario.

Adecuación de las tareas

Es el nivel en que los servicios del sistema permiten al usuario realizar todas las tareas

que el usuario pretende hacer y de la forma en que las quiere hacer. Esto se relaciona

directamente con el nivel de satisfacción que tendrá el usuario al usar el sistema.

2.1.5.2 ¿Cómo se mide la usabilidad?

A menudo se mide la usabilidad a fin de entender mejor las necesidades y

requerimientos de los usuarios, como así también para mejorar su experiencia. Para calificar un

producto como aceptable, se debe recabar información acerca de los atributos anteriormente

mencionados. Se los debe medir y decidir si los resultados son lo suficientemente buenos o no.

Para obtener dicha información, los usuarios finales deben usar el sistema y realizar una lista de

tareas. Luego, se analizan y registran todos los problemas que se observen: por ejemplo, qué les

resultó fácil o difícil a los usuarios cuando utilizaron el sistema, cómo lo usaron, que tan rápido

lo usaron, que tan rápido lo aprendieron a usar y demás aspectos relacionados con el uso del

sistema.

Lo ideal es contar con un equipo experto en diferentes áreas como la informática,

diseñadores de usabilidad o interfaces, para poder recolectar toda la información posible y

aplicarla a fin de desarrollar un producto o sistema más eficiente.

Es importante fijar objetivos cuantitativos y cualitativos para el sistema a través de todo

el proceso para evaluar la usabilidad y para ayudar en el proceso de la toma de decisiones de

Page 37: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 27

diseño. La usabilidad no puede ser medida directamente, pero se pueden encontrar aspectos de la

usabilidad que sí pueden medirse. Dos tipos de métricas de usabilidad pueden ser recolectados en

la prueba de usabilidad que se realice. Estas métricas son las informaciones objetivas y

subjetivas:

Información de performance. información objetiva que puede ser capturada en

la fase de prueba de usabilidad y esta puede representar qué ha pasado. Esta

información es cuantitativa, por ejemplo: tiempo en que se finalizó una tarea,

tiempo en que tardó en recuperarse de errores, promedio de tareas realizadas

correctamente o promedio de errores

Información Subjetiva. datos subjetivos sobre qué fue lo qué pensó el usuario y

cómo se sintió mientras utilizaba la aplicación y su interfaz. La información

subjetiva puede ser cualitativa o cuantitativa, como por ejemplo podemos

presentar una escala definida y se le pregunta al usuario que califique que tan

fácil o difícil fue utilizar el sistema de acuerdo a dicha escala, así se obtendrá un

veredicto subjetivo en una respuesta cuantitativa. Para medir esta información se

pueden controlar los promedios de qué tan fácil fue instalar el producto, qué tan

fácil fue aprender a usar el sistema, preferencias del sistema o comentarios que

surgen de manera espontánea

2.1.5.3 Críticas a la usabilidad

Los usuarios no necesitan mejores interfaces, sino un mejor entrenamiento.

La usabilidad no se pude medir.

El diseño de la IU está implícito en el diseño del software. No se tiene que

planificar expresamente y valorar su costo.

Si el diseñador está familiarizado con patrones y principios de diseño, hará

buenas interfaces.

El diseño de la interfaz de usuario no es necesario hasta el diseño detallado.

Page 38: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 28

La usabilidad aumenta los costos y el tamaño del ciclo de desarrollo.

2.2 GESTOS

Gestos y reconocimiento de gestos son términos que se usan a menudo en las

discusiones sobre la interacción humano-computadora. Para la mayoría de las personas, el

término incorpora reconocimiento de caracteres, reconocimiento de los correctores de símbolos, y

varios tipos de interacción. De hecho, toda acción física involucra un gesto para que esta sea

llevada a cabo. Asimismo, la naturaleza de ese gesto es un importante componente que establece

la sensación que le queremos dar a la acción.

Antes de dar una definición formal de qué es un gesto, se debe hablar de la

comunicación no verbal, que es, básicamente, comunicar sin palabras a través de múltiples

canales de comunicación. Las expresiones no verbales son las acciones diferentes al habla que se

realizan durante una comunicación, esto se puede interpretar como una aproximación a la

definición de gesto.

Si involucramos en la definición de gesto a un sistema interactivo, podemos decir que un

gesto es cualquier movimiento físico que un sistema interactivo detecta y el cual genera una

respuesta del mismo, como se muestra en la siguiente imagen.

Figura 2-7 - Ejemplo de un gesto en un sistema interactivo

En (Gord Kurtenbach, 1990) dan una interesante definición de gesto “un gesto es un

movimiento del cuerpo que contiene información. Sacudir la mano para despedirse es un gesto.

Page 39: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 29

Presionar una tecla en un teclado no es un gesto porque el movimiento de un dedo para tocar una

tecla no es significante. Todo lo que importa es qué tecla se presiona”.

Por supuesto que, si analizamos esta definición, no es difícil de darse cuenta que para el

uso de gestos se requiera de dispositivos de entrada. Los gestos involucran un gran número de

grados de libertad (se explica en 2.2.1 “Grados de libertad”) y restricciones para con el usuario.

Por ejemplo, si hacemos un reconocimiento de gestos utilizando un mouse, o un láser, o algún

otro dispositivo puntero, restringe al usuario en los gestos que puede realizar. Es decir, la

comunicación con la aplicación será posible, pero el conjunto de gestos que el mismo podrá

realizar será muy reducido.

Lo primero que se debe hacer si se quiere construir una interacción basada en gestos con

computadoras, es entender el rol que cumple el gesto en la comunicación entre personas. Para eso

se debe analizar desde la psicología y la antropología los tipos de gestos que comúnmente usan

las personas, y especificar los atributos de cada uno.

2.2.1 GRADOS DE LIBERTAD

Los grados de libertad en el cuerpo humano, están determinados por los ejes de

movimiento que posee una articulación y a su vez estos estarán condicionados por la forma

anatómica de dicha articulación. Al realizar un mismo movimiento que involucra una articulación

determinada, por ejemplo el hombro, existen ejercicios que darán un grado de libertad porque

utiliza solo uno de los ejes de movimiento del hombro y los demás son anulados, esto sucedería,

por ejemplo, con una máquina.

Page 40: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 30

Figura 2-8 - Rotaciones y trasladaciones en los tres ejes posibles.

Seis grados de libertad (6DOF) se refiere al movimiento en un espacio tridimensional,

es decir, la capacidad de moverse hacia delante/atrás, arriba/abajo, izquierda/derecha (traslación

en tres ejes perpendiculares), combinados con la rotación sobre tres ejes perpendiculares. El

movimiento a lo largo de cada uno de los ejes es independiente de los otros, y cada uno es

independiente de la rotación sobre cualquiera de los ejes, el movimiento de hecho tiene seis

grados de libertad.

Figura 2-9 - 6DOF

Page 41: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 31

Tres grados de libertad (3DOF) significa solo el movimiento en tres dimensiones, pero

no incluye la rotación.

Tanto los términos 3DOF como 6DOF serán muy utilizados en el presente documento.

2.2.2 GESTOS EN LA VIDA COTIDIANA

Si se analizan los gestos fuera del mundo de la informática y sólo se considera los que

se hacen día a día en las “conversaciones” entre otras personas, se verá que se usa una enorme

cantidad de gestos en la comunicación. Los gestos que se utilizan varían dependiendo del

contexto y la cultura, dos cuestiones que se encuentran íntimamente relacionadas con la

comunicación. Esto se puede comprobar simplemente observando una persona conversando por

celular, seguramente realizará gestos como si estuviera hablando con alguien cara a cara.

Los gestos existen de forma aislada o involucran objetos externos. Si no se involucra

ningún objeto, se puede saludar, acercar, alejar, y en mayor o menor grado, utilizar lenguajes de

señas más formales. Si se involucran objetos externos, se tiene un largo rango de gestos que son

casi universales, incluyendo apuntar, mover o tocar objetos, etc.

2.2.2.1 Clasificación

Estos gestos se pueden clasificar dependiendo de su función:

Semióticos. comunican la información significativa y los resultados de la

experiencia cultural compartida.

Ergóticos. capacidad de manipular objetos en el mundo real.

Epistémicos. permiten aprender del entorno a través de la experiencia táctil.

Page 42: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 32

Figura 2-10 - Clasificación

Figura 2-11 - Gesto Ergótico

Figura 2-12 - Gesto Ergótico

Page 43: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 33

Figura 2-13 - Gesto Epistémico

Figura 2-14 - Gesto Semiótico

Figura 2-15 - Gestos Semiótico

Los gestos semióticos con uso de las manos, se pueden clasificar asimismo de acuerdo a

su funcionalidad.

Simbólicos. Son gestos que dentro de cada cultura tienen un único significado.

Por ejemplo, el gesto de OK con el dedo pulgar levantado

Icónico. Gestos que representan el tamaño, forma u orientación de un objeto

concreto o un evento, y tienen una relación formal cercana al contenido

semántico de la palabra. Acompañan al habla. Por ejemplo “El avión volaba así”.

Tiempo. Gestos que reflejan la estructura de lo que se está diciendo, marcan

palabras que tienen un significado relevante en el discurso. Por ejemplo,

“¡Hacelo ahora!”.

Page 44: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 34

Deíctico. Son gestos apuntadores es decir que apuntan a algo o alguien ya sea

concreto o abstracto o atraen la atención hacia cierto punto. Por ejemplo, “Ese

señor” o “Poné eso ahí”.

Pantomímico. Son gestos que se utilizan para mostrar el uso de una herramienta

u objetos invisibles en la mano del interlocutor. Por ejemplo, “Gire el volante a

la izquierda”.

Metafórico. Son gestos similares a los icónicos, pero describen entidades

abstractas y no físicas. Por ejemplo, “Formaban un grupo”.

A esta clasificación (McNeill, 2006) le adicionó los tipos de gestos que se relacionan

con el proceso de comunicación, los gestos de batido y los gestos cohesivos. Los gestos de batido

son llamados así porque la mano se mueve hacia arriba y hacia abajo al ritmo de la conversación.

Los cohesivos en cambio, son una variación de los icónicos, pantomímicos o deícticos que se

utilizan para unir porciones de la conversación temporalmente separadas pero temáticamente

relacionadas.

Como ya se mencionó, los gestos están fuertemente relacionados al discurso que se está

diciendo, tanto para la relevancia de lo que se está hablando como para su interpretación. Sólo los

gestos simbólicos se pueden interpretar sin la información del contexto del discurso. Sin

embargo, este contexto tiene que ser acompañado secuencialmente por otro gesto o acción. Estos

tipos de gestos que se mencionaron anteriormente, se pueden clasificar de acuerdo a su relación

con el discurso:

Representan la expresión verbal. Simbólico, Icónico.

Acompañan el proceso conversacional. Tiempo.

Evocan la expresión verbal. Deíctico, pantomímico, metafórico.

Existe otra clasificación dependiente de la necesidad del habla para la interpretación del

gesto, esta es: Gesticulación (Batido y Cohesivo), Dependientes del lenguaje (Icónicos),

Pantomímicos (pantomímicos), Emblemas (Deíctico), lenguaje de signos (Simbólico). Estos van

Page 45: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 35

desde el que más necesita del habla (Gesticulación) al que menos lo necesita (Simbólico). Por

ejemplo, el lenguaje de signos ya tiene características semánticas y sintácticas parecidas al habla,

que no requieren del habla para su interpretación. Por otra parte, el lenguaje de gestos icónico no

puede ser entendido sin el discurso que los acompaña.

Figura 2-16 - Clasificación

A pesar de tener estas diferentes clasificaciones y variedades de gesticulaciones, hoy en

día la interacción con computadoras está casi libre de gestos. En contraste, para los demás

dispositivos, el paradigma de vanguardia, en este caso, es la manipulación directa, que se define

como la capacidad de manipular objetos digitales sobre una pantalla sin el uso de la línea de

comandos. Sin embargo, las interfaces gestuales cambian un poco el significado de esta, ya que el

usuario toca el objeto para manipularlo o bien utiliza directamente el cuerpo para controlar el

espacio digital. Pero, qué tan directas son estas manipulaciones cuando las mismas restringen

considerablemente los gestos cotidianos. Esta deficiencia está visiblemente marcada si tenemos

en cuenta qué tan eficientes son las personas usando gestos cotidianamente y luego consideramos

cómo algunos de esos gestos se pueden utilizar en la interacción con la computadora, y cuánto

Page 46: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 36

tiempo les tomará aprender los gestos que las computadoras pueden entender. Incluso las

interfaces gestuales más avanzadas comúnmente implementan sólo reconocimiento de gestos

deícticos o simbólicos, pero esto no tiene por qué ser siempre así.

2.2.3 OTRA CLASIFICACIÓN DE GESTOS

Uno de los principales problemas en la investigación de gestos es la carencia de

terminología en común para describir las interacciones. Por ejemplo, las gesticulaciones

generalmente se refieren a los gestos verbales, pantomímicos y naturales, mientras el término de

gestos naturales también se refiere a los gestos donde se utilizan las manos. Además, los gestos

simbólicos también son descriptos como icónicos o táctiles. En definitiva, existen varias

clasificaciones de gestos incluyendo las de (Wexelblat, 1998), (Brereton, 2003),

En la siguiente sección se describirá la clasificación de (Quek, y otros, 2002) quien,

además de repetir algunos de los tipos de gestos mencionados anteriormente (como los deícticos),

definió una clasificación de gestos a más alto nivel.

2.2.3.1 Gestos de manipulación

Son los gestos cuyo objetivo es controlar una entidad donde existe una estrecha relación

entre los movimientos de una parte del cuerpo humano y la entidad que se quiere manipular.

Quek, los define como: “aplicar una fuerte relación entre los movimientos actuales del

gesto realizado con la mano/brazo y la entidad que está siendo manipulada.” (Quek, y otros,

2002)

Mientras una manipulación puede incluir, por ejemplo, arrastrar y soltar utilizando un

mouse, un gesto de manipulación puede involucrar interacciones más complicadas requiriendo

que se interprete por un sistema de computadora, como las manipulaciones utilizando un lápiz

táctil para realizar los movimientos en un objeto en pantalla. Las manipulaciones pueden incluir

movimientos en dos dimensiones (2D), a través de un eje x, y (como el mouse), o movimientos

multidimensionales en el espacio, detectando movimientos más complejos.

Page 47: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 37

Manipulación 2D. Gestos que se utilizan para manipular una entidad digital en

un display.

Figura 2-17 - Manipulación 2D

Manipulación 3D. Gestos que manipulan objetos virtuales pero a su vez

involucran las variables de presión, velocidad, etc. que son recogidos a través de

otros sensores.

Figura 2-18 - Manipulación 3D

Gestos tangibles y objetos digitales. Gestos que manipulan objetos físicos para

representar objetos digitales. La manipulación se hace sobre el objeto físico, y el

resultado de esa manipulación se lo considera una salida (por ejemplo en un

monitor o T.V.).

Page 48: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 38

Figura 2-19 - Gestos tangibles y objetos digitales

Gestos y objetos físicos. Son gestos que se realizan para controlar los

movimientos de objetos reales, por ejemplo robots, sillas de rueda, T.V., etc.

Figura 2-20 - Gestos y objetos físicos

2.2.3.2 Gestos semafóricos

Son los que se utilizan en un diccionario de gestos dinámicos o estáticos de manos o

brazos.

En (Quek, y otros, 2002) se los define como: “Los semáforos son sistemas de

señalización donde se pueden utilizar banderas, luces o incluso los brazos. Por extensión, se

define un gesto semafórico a cualquier sistema de gestos que emplee un diccionario estilizado de

gestos estáticos o dinámicos con la mano o el brazo. El enfoque semafórico se puede definir

Page 49: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 39

como “comunicativo” ya que los gestos se interpretan como un “universo de símbolos” que se

utiliza para comunicarse con la máquina”.

Los gestos semafóricos están tipificados por la aplicación y se compara un gesto

generado con un conjunto de gestos predefinidos:

Gestos dinámicos vs. Estáticos. Los gestos semafóricos pueden ser estáticos y

pueden ser realizados a través del cuerpo o a través de controladores.

Gestos de pincelada. Los gestos de pincelada son aquellas marcas o pinceladas

que son hechas con un mouse para controlar comandos de una interfaz, ya sea

pasar de pantalla, mover el cursor, escribir, etc.

Figura 2-21 - Gestos de pincelada

2.2.4 CLASIFICACIÓN DE LOS GESTOS SEGÚN EL DISPOSITIVO DE ENTRADA

Entrada no perceptiva. Consiste en la utilización de dispositivos u objetos para

la entrada de gestos que requieren contacto físico para transmitir información

sobre la situación espacial o temporal a la computadora.

Entrada perceptiva. Permite el reconocimiento de gestos sin ningún objeto ni

contacto físico con dispositivos intermedios.

Entrada de audio. Consiste en detectar la posición a partir del origen del sonido

que se detecta del usuario. Los sensores de audio no son comúnmente utilizados

Page 50: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 40

como una entrada de un gesto, es considerada como una alternativa a la visión o

a la táctil.

2.2.4.1 Ejemplos de entradas no perceptivas

Mouse y lápiz óptico.

Entradas táctiles.

Sensores electrónicos - en el cuerpo o ropa.

Sensores electrónicos – Guantes.

Sensores electrónicos - Objetos con sensores e interfaces tangibles.

Sensores electrónicos – Dispositivos infrarrojos.

2.2.4.2 Ejemplos de entradas perceptivas

Visión por computadora.

Sensores remotos.

Estos dispositivos se verán con más detalle en el Capítulo 4 “Dispositivos y técnicas de

detección y reconocimiento de gestos”.

2.2.5 DISEÑO DE LOS GESTOS

Así como en el diseño de cualquier producto, el diseño de los gestos interactivos

también se debe empezar con las necesidades de quien lo va a utilizar, en este caso el usuario o

los usuarios, regulado por las restricciones del entorno, la tecnología, recursos y metas

organizacionales, así como también los objetivos de negocio. Las necesidades de los usuarios

pueden ser desde simples a muy complejas. De todas maneras, por más interesante, novedoso,

natural o innovador que sea el gesto, si las necesidades del usuario no están satisfechas, el diseño

será un fracaso.

Page 51: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 41

Antes de comenzar, quien se encuentre diseñando una interfaz gestual se debe plantear

la siguiente pregunta: ¿Es apropiado un sistema de gestos? Solo porque las interfaces gestuales

son novedosas, no significa que son apropiadas para cualquier situación. Entonces, se verá

cuándo no es apropiado utilizar gestos:

Cuando hay mucha entrada de datos. Por más que algunos usuarios se adapten a los

teclados táctiles fácilmente, un teclado físico, es muchísimo más rápido y fácil de utilizar para la

gran mayoría de la gente cuando tienen que escribir texto o números.

Cuando existe mucha dependencia sobre lo visual. Muchas interfaces gestuales usan

una respuesta o retroalimentación (feedback) visual para indicar que una acción se ha realizado

(por ejemplo, cuando se ha presionado un botón). Además, la mayoría de las interfaces táctiles y

muchos sistemas gestuales, en general, dependen íntegramente de pantallas visuales con poco o

ninguna respuesta háptica. Por otra parte, usualmente no existe una sensación física que haga

sentir que un botón ha sido presionado, en este caso, si el usuario tiene limitaciones visuales (la

mayoría de los adultos que superan una determinada edad la tienen) una interfaz gestual puede no

ser apropiada.

Cuando existe mucha dependencia sobre lo físico. Las interfaces gestuales son, por

supuesto, mucho más demandantes físicamente que una pantalla o un teclado. Mientras más

amplio y físico es el gesto (por ejemplo, una patada), menos probable será que algunas personas

lo puedan realizar, ya sea debido a su edad, enfermedades, o incluso condiciones del entorno. Por

ejemplo, presionar los botones en un teclado táctil es difícil con guantes de invierno puestos. La

inversa también es cierta, ya que mientras más acotado y pequeño sea el movimiento, menos

gente será capaz de lograrlo. El teclado en el iPhone, por ejemplo, es muy pequeño y delicado

para que sea utilizado por una persona con dedos grandes o lentos.

Cuando el contexto no es apropiado. El contexto puede ser una traba para una interfaz

gestual en muchas situaciones, o por razones de privacidad o simplemente para evitar avergonzar

los usuarios del sistema. Los diseñadores deben tener en cuenta el contexto donde será utilizado

el sistema y determinar qué tipo de gesto será apropiado para ese contexto.

Page 52: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 42

Por supuesto que hay muchas razones por las cuales sí utilizar una interfaz gestual. Para

todo lo que un gesto no interactivo puede ser usado (comunicación, manipular objetos, utilizar

una herramienta, componer música, etc.) también puede ser hecho utilizando un gesto interactivo.

Es particularmente bueno usar las interfaces gestuales para:

Interacciones más naturales. A los seres humanos, por naturaleza, les gusta

interactuar directamente con los objetos. Los gestos interactivos permiten a los

usuarios interactuar de una manera natural con objetos digitales por un medio

físico, como lo hacen con los objetos físicos en sí.

Menos hardware visible y engorroso. Con uno o varios sistemas basados en

gestos, el típico hardware de mouse y teclado no sería necesario, una pantalla

táctil u otros sensores permiten a los usuarios ejecutar acciones sin el hardware

mencionado. Estos beneficios permiten implementar sistemas basados en

interfaces gestuales en lugares donde la instalación de una computadora

tradicional no sería apropiada o quedaría fuera de lugar, tales como museos,

aeropuertos u otros espacios públicos.

Más flexibilidad. A diferencia de los tradicionales botones físicos, el teclado en

una pantalla táctil, puede cambiar a voluntad (por ejemplo girándolo),

permitiendo así, diferentes configuraciones del teclado dependiendo de los

requerimientos funcionales. Por ende, una pantalla muy pequeña también puede

cambiar sus botones dependiendo de la necesidad. Esto puede traer problemas de

usabilidad, pero la característica de poder tener muchos controles en un espacio

pequeño puede ser una gran ventaja para los diseñadores.

Más matices. Si bien los teclados, mouse, trackballs, y otros dispositivos de

entrada son excelentes para varias situaciones, no son capaces de percibir los

gestos sutiles del cuerpo humano. Una ceja levantada, un dedo doblado, o los

brazos cruzados pueden dar mucho significado además de controlar una

herramienta. Los sistemas gestuales aún no han comenzado a aprovechar

completamente la paleta emocional que los humanos brindan, aunque es probable

que con el tiempo esto se explote.

Page 53: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 43

Más diversión. Se pueden diseñar juegos donde el usuario presiona un botón y

esto hace que un avatar en la pantalla mueva una raqueta de tenis. Pero por

supuesto que es mucho más entretenido (para observadores y jugadores) hacer la

mímica de mover la raqueta físicamente con los brazos y manos y ver la acción

ejecutarse en la pantalla. Los sistemas digitales fomentan el juego y la

exploración de un sistema proveyendo una experiencia “manos a la obra”.

2.2.6 ATRIBUTOS DE LOS GESTOS

A pesar de que las interfaces gestuales pueden diferir de las interfaces no táctiles o

“libres”, la mayoría de los gestos tienen similares características que se deben tener en cuenta a la

hora del diseño. Mientras más sofisticada sea una interfaz (y más sensores o dispositivos utilice),

más varían los atributos mencionados a continuación:

Presencia. Es el atributo más básico. Algo debe estar presente para hacer que un

gesto genere una interacción o un evento. Para algunos sistemas, la presencia de

una persona es suficiente para causar una acción. Para una interfaz táctil, la

presencia de la punta del dedo crea un evento.

Duración. Todo gesto tiene una duración a lo largo del tiempo y puede ser hecho

rápidamente o lentamente. ¿El usuario se encuentra tocando un botón o

manteniéndolo apretado por un período largo? Para algunas interfaces,

especialmente aquellas que son simples, la duración no es tan importante. En

cambio, las interfaces que usan sensores de proximidad, se interesan poco por la

duración y solo si un ser humano se encuentra en el área. Pero para los

videojuegos y otros tipos de interfaces, la capacidad de determinar la duración es

crucial. La duración se mide calculando el tiempo del primer movimiento

perteneciente al gesto, hasta el tiempo en que termina el gesto.

Posición. Este atributo se refiere a la posición donde se está realizando el gesto.

Desde el punto de vista del desarrollo, la posición generalmente se determina

estableciendo un punto en un eje x, y (que ocupa la pantalla entera) y luego

Page 54: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 44

calculando los cambios de posición en dichos ejes. Algunos gestos también

implementan el eje z para la profundidad. Esto es para tener en cuenta que las

personas varían en su altura, la posición puede ser relativa (relacionada al tamaño

de la persona) o exacta (ajustando los parámetros de la sala o habitación). Por

ejemplo, un diseñador puede definir la posición de algunos gestos en algún punto

alto en el ambiente, para que los niños no puedan realizarlo.

Movimiento. El movimiento está relacionado a si el usuario se mueve de un

lugar a otro o si se encuentra realizando una pose en un lugar fijo, o bien

moviéndose de arriba abajo o de lado a lado. Para algunos sistemas, cualquier

movimiento es suficiente para disparar un evento y la posición no es necesaria de

determinar.

Tamaño. El ancho y el largo también se pueden combinar para medir el tamaño.

Por ejemplo, en un sistema táctil las pantallas pueden determinar si el usuario se

encuentra usando un lápiz o el dedo de acuerdo al tamaño (por supuesto que el

lápiz es más fino), y así el sistema se ajustará de acuerdo a ello.

Orientación. Está determinada por la dirección a la que el usuario (o el

dispositivo) se encuentra mirando cuando está realizando el gesto. Para los

videojuegos, este atributo es muy importante. La orientación tiene que estar

determinada utilizando puntos fijos (tales como el ángulo del usuario que forma

con el objeto en sí).

Incluye o no objetos. Algunas interfaces gestuales permiten a los usuarios

emplear objetos físicos para mejorarlos o incluirlos en el sistema. Los sistemas

simples tratan estos objetos como una extensión del cuerpo humano, pero los

más sofisticados los reconocen y permiten que el usuario interactúe con ellos.

Por ejemplo, un sistema puede ver un pedazo de papel que un usuario tiene en la

mano como parte de su mano, mientras que en otros sistemas (más complejos),

se verá como un pedazo de papel que puede tener textos o imágenes proyectadas

en él.

Page 55: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 45

Secuencia. Los gestos interactivos no necesariamente tienen que ser singulares.

Un gesto de una ola (ondear la mano) seguida con un puñetazo puede generar

una acción diferente que ambos gestos hechos por separado. En este caso se

estaría hablando de un sistema sofisticado que tiene la capacidad de recordar

estados. Esto también es un poco más dificultoso de aprender para los usuarios.

Número de participantes. Puede llegar a ser muy útil para algunos dispositivos

detectar múltiples usuarios. Por ejemplo, dos personas utilizando un sistema con

una mano puede ser muy distinto de una persona manipulando el sistema con

ambas manos.

En resumen, cuando se diseña un gesto interactivo, estos atributos, más el rango en que

se puede mover el usuario, deben ser considerados. Por supuesto que las interfaces gestuales más

simples, tales como las táctiles, usarán solo algunos de estos atributos, y los diseñadores y

desarrolladores seguramente no necesitarán perder tiempo en mirar estos atributos pero sí hacer

hincapié en la ergonomía y la facilidad de uso de los gestos interactivos.

2.2.7 DETERMINAR EL GESTO APROPIADO

Una vez que se ha decidido cuál es la interfaz gestual apropiada para los usuarios y el

ambiente en el que se va a implementar, se necesitan definir los gestos apropiados para las tareas

y objetivos que los usuarios deben realizar. Esto requiere una combinación de tres elementos: los

sensores o dispositivos de entrada que se utilizaran, los pasos que requiere cada tarea, y la

fisiología del cuerpo humano. Los sensores son los que determinan qué detectará el sistema y

cómo. Los pasos en cada tarea permiten definir las acciones que deben realizarse y las decisiones

que se deben tomar. La fisiología del cuerpo humano determinará las limitaciones físicas de los

gestos a realizar.

Las tareas simples, generalmente, tienen gestos simples asignados para realizarlas, en

cambio las tareas más complicadas tienen estipulados gestos más complejos.

Si se lleva esto como ejemplo a tareas cotidianas que realizan los seres humanos, se

puede tomar el caso de encender la luz. Si se quiere encender la luz en una habitación un gesto

Page 56: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 46

simple en la pared debería ser suficiente para concretar la tarea, por ejemplo, golpear la pared o

aplaudir. Sin embargo, si se quiere atenuar la luz (una acción un poco más compleja) requiere un

poco más de esfuerzo, como mantener la mano hacia arriba y bajarla lentamente. Para atenuar las

luces de toda la casa de una vez (una tarea aún más sofisticada) se necesitará un gesto combinado

o una combinación de gestos, como por ejemplo aplaudir tres veces, y luego bajar el brazo. Como

esta acción se realiza muy rara vez y es conceptualmente complicada, puede tener asociada un

movimiento complejo.

Esto no quiere decir que todos los comportamientos complejos necesitan o deben ser

asociados a gestos complejos, sino que las acciones simples no deberían depender de gestos

complejos. De hecho, los mejores gestos interactivos son aquellos que convierten lo complejo en

algo simple y elegante.

La manera de lograr esto, especialmente en los dispositivos táctiles, es hacer accesibles

todas las características con gestos simples, como por ejemplo un toque, y luego definir gestos

alternativos que son más sofisticados para los usuarios más avanzados. De esa manera, un solo

gesto puede hacer las veces de acceso directo a una determinada característica, tal cual lo hacen

los comandos del teclado en un sistema operativo de escritorio.

2.2.8 ASIGNAR EL GESTO A UN COMPORTAMIENTO

El diseñador japonés Naoto Fukasawa ha observado que los mejores diseños son

aquellos que logran “disolver el comportamiento”, lo cual significa que los productos pasan

desapercibidos sin importar lo que el usuario esté haciendo. De esta manera la utilización del

producto se toma de manera más natural por el usuario y realiza los actos para cumplir las tareas

que requiere el producto de manera casi subconsciente.

Adam Greenfield, habló sobre este tipo de interacciones naturales en una entrevista:

“Se ve esto, por ejemplo, en Hong Kong donde las mujeres dejan su RFID

(identificación por radio frecuencia, sistema que contiene datos personales) en sus carteras y

simplemente mueven las mismas a través de los lectores mientras pasan a través de los

Page 57: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 47

molinetes. Pero esto no fue diseñado. Simplemente surgió; la gente entendió como hacerlo por sí

misma, sin ningún diseñador que los tenga que instruir… Mientras más se pueda adaptar y no

imponer, más exitosos serán nuestros diseños”. (Greenfield, 2006).

Entonces, los mejores y más naturales diseños, son los que logran asociar el

comportamiento del sistema interactivo a los gestos que los humanos ya realizan para concretar

tal comportamiento o tarea. Se puede tomar el ejemplo ya dado de encender la luz o, más general

aún, presionar un botón para apagar o encender algo, girar hacia la izquierda para hacer que el

“avatar” que representa al usuario gire hacia la izquierda también, poner las manos debajo del

lavatorio para que salga el agua, etc. En dichas acciones, el diseño se disuelve en el

comportamiento.

2.3 INTERFACES BASADAS EN GESTOS

Los interfaces basadas únicamente en gestos son las equivalentes a la manipulación

directa, las mismas pueden ir desde interfaces que reconocen algunos gestos simbólicos a

aquellas que interpretan enteramente un lenguaje de signos completo. De la misma manera, las

interfaces pueden reconocer una posición de las manos estática, el movimiento de las manos

dinámicamente, o una combinación de ambos. Pero en cualquiera de estos casos cada gesto tiene

un sólo significado semántico (no ambiguo) asociado que puede ser utilizado en la interfaz.

Existen varias tecnologías que se han utilizado para capturar un gesto, las cuales se verán en el

Capítulo 4 “Dispositivos y técnicas de detección y reconocimiento de gestos”.

2.3.1 INTERFACES BASADAS EN GESTOS NATURALES (NUI)

El término natural es usualmente relacionado con el “mundo real”. Pero, expresándolo

en términos técnicos, se puede interpretar también como una filosofía de diseño y una fuente de

métricas que permiten un proceso iterativo para la creación de un producto. Estas líneas de diseño

se pueden incluso tomar como referencia para diseñar productos como el mouse, el teclado,

gestos en el aire, etc. La tecnología de hoy en día permite crear una gran variedad de interfaces

naturales para el usuario, utilizando diferentes dispositivos de entrada/salida. Por supuesto que

Page 58: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 48

esto debe estar acompañado de un buen diseño y una buena explotación de esa tecnología

empleada, para copiar de la mejor manera las capacidades humanas, aplicarlas adecuadamente al

contexto dado y satisfacer y completar las tareas que se necesitan.

Cuando se dice que una interfaz es “natural” se está refiriendo a la forma en la que

interactúa un usuario y a cómo se siente con respecto al producto, más específicamente, qué

hacen y cómo se sienten cuando lo utilizan.

¿Qué hace y cómo se siente un jugador de fútbol cuando se dispone a patear una pelota?

Pone la pelota en el piso, toma carrera y patea la pelota con naturalidad, como si esta fuera parte

de su cuerpo. Evidentemente se siente cómodo al hacerlo.

Esto es exactamente lo que buscan los productos que utilizan interfaces naturales en sus

usuarios. Se deben copiar sus capacidades, conocer sus necesidades y contentar sus tareas y

demandas del contexto.

Entonces, se entiende por Interfaz de Usuario Natural (NUI) a aquella interfaz de

usuario convencional que, cumpliendo con todos los aspectos y funcionalidades típicas de una

interfaz de usuario convencional, ofrece una interacción humano-computadora basada en

elementos y/o movimientos naturales del ser humano. (Saffer, 2009)

La palabra natural es utilizada porque la gran mayoría de las interfaces usan dispositivos

de control artificiales, como pueden ser un teclado o un ratón; dispositivos que requieren por

parte del usuario, realizar un aprendizaje previo en el funcionamiento de los mismos. Por tanto,

se define como natural al término u objetivo que se debe alcanzar con el desarrollo de la interfaz

de usuario para que éste considere el control del dispositivo como algo natural, esto es, que se

pueda aprender su funcionamiento de forma intuitiva.

Los dispositivos directos denominados multi-touch, mantienen la modalidad de utilizar

una entrada natural. Los muchos años de trabajo en el tema, han demostrado que el sistema de

direct-touch proporciona un mejor manejo de espacio en memoria, y el multi-touch tiene un

mejor y más fácil manejo del ancho de banda generado por la entrada que genera usuario.

Page 59: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 49

Todas estas nuevas interfaces deben ser diseñadas con nuevas e innovadoras formas de

interactuar, es decir, con un nuevo paradigma.

Un dispositivo que el usuario realmente pueda sentir su uso como natural significa que

aprovecha al máximo las entradas que le otorga el usuario. Como ya se apuntó más arriba

diseñando y desarrollando interfaces naturales de usuarios, tomando ventajas de la tecnología

moderna de hoy día, se abren las puertas hacia una nueva era, donde la tecnología se puede

integrar completamente en la vida de las personas.

2.3.2 PAUTAS PARA EL DISEÑO DE INTERFACES NATURALES

Si bien existen varios caminos alternativos que se pueden seguir para el diseño de una

Interfaz Natural de Usuario, lo primero que se debe entender es que el objetivo es lograr que la

experiencia para el usuario sea natural, en vez de que, de alguna manera sea intrínsecamente

natural.

La interfaz natural debe:

Crear una experiencia que, para usuarios expertos, se pueda sentir como una

extensión de su cuerpo.

Crear una experiencia que sea tan natural para el usuario novato como para el

usuario experto.

Crear una experiencia que sea autentica para el medio. No empezar tratando de

simular la mímica del mundo real o algo parecido.

Construir una interfaz de usuario que tenga en cuenta el contexto, incluyendo las

metáforas correctas, indicaciones visuales, retroalimentación, y métodos

adecuados de entrada/salida para el contexto.

Evitar copiar paradigmas ya existentes de interfaces de usuario.

Debería:

Page 60: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 50

Olvidarse de lo que se entiende por natural.

Podría:

Aprovechar los talentos innatos y aprendidos previamente. Hacer interfaces

sobre otras experiencias donde el usuario ya es un experto no es la única técnica

para lograr la naturalidad.

El desafío en sí será llevar a los usuarios de un rendimiento de novato consciente y

torpe, a un rendimiento que resulte cómodo, cumpla su cometido y sea fluido. Las interfaces

naturales logran esto empezando con acciones evidentes, como por ejemplo, definiendo las

maneras de impulsar una pelota (empujándola o tirándola) usando solo el cuerpo y formando

estas acciones rápida y continuamente en el marco de una performance calificada por personal

profesional.

Una interfaz de usuario natural no es una que responde mágicamente a cualquier acción,

de alguna manera adivinando correctamente la intención del usuario. Por el contrario, la interfaz

natural fomenta el desarrollo de una conducta hábil y genera un sentimiento de dominio mediante

la obtención de las medidas adecuadas de las acciones de los usuarios y las transforman en

acciones que son fluidas, eficaces y divertidas.

2.3.3 CARACTERÍSTICAS DE UNA BUENA INTERFAZ NATURAL

Aunque los aspectos particulares de un sistema gestual requieren más y diferentes tipos

de consideración, las características de una buena interfaz natural no difieren mucho de las

características de cualquier otro sistema interactivo bien diseñado (usualmente se dice que deben

ser usable, útil, deseable e intuitivo). Por lo tanto, las interfaces naturales además deben ser:

Descubribles. Significa que se tiene que saber que allí existe “algo” (dispositivo,

objeto, etc.) con lo que se puede interactuar. Esto puede ser un gran problema

para las interfaces naturales. ¿Cómo se puede decir si una pantalla es tocable o

tangible?, ¿Cómo se puede determinar si un entorno es interactivo? Antes de

poder interactuar con un sistema gestual, se tiene que saber que está ahí y cómo

Page 61: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 51

comenzar a interactuar con él. Aquí es donde entran en juego una o múltiples

propiedades de un objeto que dan indicaciones sobre cómo interactuar con él o

una función de ese objeto. Un botón, por su forma, tiene la característica o

función de apretarse.

Confiables. Para que los usuarios se sientan identificados con un dispositivo, la

interfaz tiene que verse confiable. La interfaz se debe ver competente y segura, y

debe respetar la privacidad del usuario (no utilizar datos ni fotos personales, etc.)

De rápida respuesta. El ser humano está acostumbrada a la reacción inmediata a

la manipulación física de los objetos. Es que no está acostumbrado a tocar cosas

que no tienen un microprocesador y/o un sensor que deben procesar y averiguar

qué está pasando. Por estas razones es que la velocidad de respuesta es

sumamente importante. Cuando los usuarios se involucran con una interfaz

natural, debe ir acompañada de una respuesta lo más rápida que se pueda. (con

un tiempo de respuesta de 100 milisegundos o menos, se logrará la sensación de

instantáneo). Lograr esto es difícil, ya que la capacidad de respuesta del sistema

estará ligada directamente a la capacidad de respuesta que posea la tecnología

que usa el sensor o dispositivo que se utilice. Incluso, los sensores demasiado

sensibles, pueden resultar aburridos, por lo tanto hay que encontrar el equilibrio

y utilizar los recursos de la manera más eficaz. Si el usuario no obtiene una

rápida respuesta, a menudo repiten la acción que acaban de realizar. Por supuesto

que esto puede causar problemas, por ejemplo, en la compra de un artículo esto

ocasionaría que el usuario compre el mismo artículo dos veces. Si la respuesta a

una acción se tomará un tiempo considerable (más de un segundo), entonces

requerirá alguna manera de retroalimentación en la que se informe al usuario

saber que se está procesando su petición y que el sistema está haciendo algo al

respecto (por ejemplo, las barras de progreso).

Apropiadas. Como todo sistema, los sistemas basados en gestos también deben

ser adecuados a la cultura, la situación y el contexto en el que serán

implementados. Ciertos gestos son ofensivos en algunas culturas. Un gesto “ok”,

Page 62: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 52

algo que es común en Norteamérica y Europa, es insultante en Grecia, Turquía y

Medio Oriente. Por otra parte, un sistema gestual que involucre gestos

complicados, por ejemplo, agitando los brazos y bailando en algún lugar público,

es poco probable que sea adecuado para cualquier ambiente, a menos que este

sea un bar, un teatro o un club nocturno.

Significativas. Los gestos interactivos, más allá de lo estético, deben tener un

significado para la persona que lo realiza, de lo contrario es vacío de contenido;

es decir, a menos que el sistema gestual satisfaga las necesidades de aquellos que

lo usen, no es un buen sistema.

Inteligentes. Los dispositivos y sistemas que se utilizan habitualmente deben

hacer por los seres humanos cosas que por lo general le cuestan a este (realizar

rápidamente un cálculo, tener una memoria infalible, detectar un patrón

complicado, etc.) Tienen que recordar y hacer el trabajo que no podemos hacer

solos. Es decir, deben ser inteligentes.

Hábiles. De la misma manera, los mejores productos predicen las necesidades de

sus usuarios y cumplen esas necesidades de manera inesperada y agradable para

el usuario. Los objetivos adaptativos son una manera de hacer esto con interfaces

naturales. Otra, es a través de gestos o acciones interactivas inteligentes que

responden adecuadamente a la acción que el usuario trata de realizar.

Jugables. Un área en donde los gestos interactivos deben sobresalir es en ser

“jugables” o divertidas. A través del juego, los usuarios no solo empezaran a

interactuar y a acoplarse con la interfaz, sino que también descubrirán nuevas

características y las variaciones en cada uno de sus gestos. Los usuarios deben

sentirse relajados y confiados cuando utilizan la interface.

Agradables. Las interfaces gestuales deben ser gustosas estéticamente y

funcionalmente hablando. Las partes del sistema (la interfaz visual, los

dispositivos de entrada, la retroalimentación) deben ser agradables a los sentidos

Page 63: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 53

de los seres humanos. Esto ocasionará una mejor sensación en el usuario cuando

lo utilice.

2.3.4 EL CONTEXTO EN UNA INTERFAZ NATURAL DE USUARIO

Ahora se verá qué papel juega el contexto y entorno creando una interfaz natural. El

equipo que está creando la interfaz se debe preguntar 3 cosas básicas:

¿Cuáles son las características de los contextos donde las interfaces naturales

táctiles probablemente resulten exitosas?

¿Qué pasa con eso que el entorno favorece la formulación de acciones que serán

al principio exitosas y luego pueden ser moldeadas y extendidas para satisfacer

las nuevas exigencias que presentan, favoreciendo la rapidez, el sentido de

dominio y la diversión del usuario?

¿Cómo se verán las acciones fluidas y entrenadas en un contexto dado?

De esto se desprende, que se le debe dar importancia al contexto y el entorno ya que

provocan que la acción del usuario sea coherente, siendo esta la clave para que esa Interfaz

Natural de Usuario tenga éxito para lograr la aceptación inicial, la promoción de un aprendizaje

rápido y un rendimiento experto.

Si se observan los contextos donde las interfaces táctiles han obtenido resultados

prometedores, todos tienen algunas características en común. En primer lugar, son contextos

sociales y entornos de ocio, donde las personas se reúnen para interactuar, entornos de venta

minorista, donde las personas se reúnen a realizar transacciones comerciales, entornos de

demostración, donde el usuario utiliza tecnología para actuar antes de una audiencia, y entornos

públicos, donde las personas son atraídas a caminar y explorar la tecnología. Estos últimos son

una especie de arte público interactivo. La interfaz aumenta esas interacciones. Es así que estas

interfaces son eficaces para tareas estrechamente unidas, donde varias personas están trabajando

en forma conjunta y acoplada hacia un objetivo en común. Jugando videojuegos, compartiendo

experiencias y realizar una compleja transacción son algunos ejemplos de lo dicho. Algunos de

Page 64: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 54

estos, son contextos sociales donde los grupos se juntan y se expresan espontáneamente. Otros

son contextos donde las personas se reúnen para completar una tarea compartida que involucra

información compleja y múltiples resultados posible (por ejemplo, comprar un producto que tiene

muchas alternativas). Normalmente estos toman espacio en lugares públicos. El uso intermitente

e indeterminado de estos sistemas necesita una introducción fácil y un rápido ascenso hacia el uso

experto.

El hecho de que sean la mayoría voluntarios significa que la interacción debe ser

entretenida y reconfortante para todos. En gran parte de los casos la tecnología ofrece mejores

capacidades que hacen que la interacción se disfrute más. Otra característica de estos entornos es

que los usuarios están concentrados en el contenido (por ejemplo, representación de las piezas de

un juego, la compartición de fotos u otro contenido, o la evaluación o configuración de

productos).

Además de estas características ya mencionadas de las áreas donde la tecnología táctil

parece marcar tendencia, hay más aspectos sutiles de los contextos donde las Interfaces Naturales

de Usuario son efectivas. Esto es, el contexto de interacción es una relación entre las partes en la

que la interfaz actúa como moderador no sólo para el resultado de la transacción, sino también

para la relación entre los actores.

Estos contextos contrastan claramente con el dominio en donde la tradicional GUI

(Graphical User Interface - Interfaz Gráfica de Usuario) ha sido exitosa. El entorno típico de una

GUI es uno donde los usuarios trabajan aislados, con sus interacciones trabajando en tiempo no

real (ni ahora, ni aquí). Por ejemplo, mandar un mail a otro o interactuar mediante mensajería

instantánea.

A esta altura se debe revisar la definición de una Interfaz Natural de Usuario en relación

a este contexto de discusión. La NUI está definida por 3 elementos:

Divertida

Se debe conducir hacia la práctica experta.

Apropiada para el contexto.

Page 65: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 55

Estos elementos deben estar relacionados o unificados. Una NUI debe tener todos estos

elementos en distintos grados. Los videojuegos son divertidos, pero para algunos no son

aplicables las NUI. Algunos sistemas de entrenamiento conducen hacia la práctica experta, pero

no son NUI.

Hasta aquí se ha considerado la relación entre el entorno contextual y una NUI basada en

gestos. Se describieron las características de los entornos donde una NUI debería ser exitosa, así

como también se ha considerado el entorno dentro de la aplicación. Si se quiere ahondar en las

interfaces basadas en gestos se puede consultar la siguiente bibliografía que se referencia

(Wigdor & Wixon, 2011); (Saffer, 2009); (Más, Yee, & Larrea, 2012)

Page 66: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 56

Capítulo 3

3 REALIDAD AUMENTADA

La Realidad Aumentada (RA) es una variación de Realidad Virtual (RV). Las

tecnologías de Realidad Virtual sumergen a la persona dentro de un entorno completamente

sintético (virtual), sin tener consciencia del mundo real que lo rodea. Por el contrario, la Realidad

Aumentada permite a la persona ver el mundo real, en el que se superponen objetos virtuales.

Así, la Realidad Aumentada no sustituye la realidad, sino que la complementa, integrando el

mundo real al virtual.

En este capítulo se pretende introducir en el mundo de la Realidad Aumentada, sus

orígenes, sus fundamentos y sus innumerables casos de aplicación. La Realidad Aumentada

ofrece diversas posibilidades de interacción que pueden ser explotadas en diferentes ámbitos de

aplicación. También se analizarán las diferencias con la Realidad Virtual y el concepto de

Realidad Mixta.

Page 67: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 57

3.1 INTRODUCCIÓN

3.1.1 ¿QUÉ ES REALIDAD VIRTUAL?

Por definición, la Realidad Virtual (RV) es el conjunto de experiencias sensoriales

sintéticas que comunican componentes físicos y abstractos a un operador.

La mayoría de las aplicaciones de realidad virtual son experiencias visuales donde el

participante se ve inmerso e interactúa en un ambiente o escena virtual (también conocido como

mundo virtual). La escena virtual se ve mediante algún dispositivo de visualización, en algunos

casos utilizando visualización estereoscópica1

la cual brinda la sensación del ambiente

tridimensional.

Una aplicación de RV tiene cuatro características:

Mundo Virtual.

Inmersión (mental y física). Introducirse en el mundo virtual.

Retroalimentación sensorial.

Interactividad.

La retroalimentación sensorial puede aludir a los diferentes sentidos, comúnmente la

vista (objetos virtuales animados), pero también al oído (sonidos) y el tacto o háptica2.

1 Técnica de grabación de la información visual tridimensional o a la creación de la ilusión de profundidad en una

imagen. La ilusión de profundidad en una fotografía, película, u otra imagen bidimensional son creados presentando

una imagen ligeramente diferente a cada ojo. 2 El término “háptico” o “háptica” es la traducción al castellano del inglés “Haptics”, que se refiere a la ciencia que

estudia todo lo relativo al tacto y sus sensaciones como medio de control e interacción con máquinas y ordenadores.

Page 68: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 58

3.1.1.1 Aplicaciones

Uno de los primeros simuladores conocidos que utilizaron realidad virtual es el

denominado “Sensorama” realizado en 1962 por Morton Heilig, un simulador de moto con

imágenes, sonidos, vibraciones e incluso olores.

Figura 3-1 - Primer sistema de RV

En el año 1965 Ivan Sutherland escribe el artículo “The ultimate display” donde

introduce por primera vez el concepto de realidad virtual y describe un dispositivo de

visualización, el cual es un casco que se coloca en la cabeza (en inglés, “Head-Mounted Display”

(HMD)).

Una de las principales aplicaciones actuales de RV son los simuladores de

entrenamiento. El uso de simuladores para entrenar operarios es una práctica que existe

anteriormente al concepto de realidad virtual (ver Figura 3-2). De hecho se puede decir que la

disciplina que primero impulsó el desarrollo de los modelos de visualización en tres dimensiones,

lo cual después dio origen a la realidad virtual, fueron los simuladores de vuelo que requerían las

Fuerzas Armadas Americanas.

En general estos simuladores son instalaciones bastante costosas, que utilizan hardware

específico y modelos de comportamiento muy precisos. Este concepto, sin embargo, ha estado

Page 69: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 59

cambiando y en la actualidad se ve la utilización de los mismos en todo tipo de áreas y con

herramientas de mucho menor costo.

Figura 3-2 - Simulador de vuelo de un avión Boeing 737

Los sistemas de RV más habituales, según los dispositivos de visualización más

utilizados en la actualidad, son:

Los cascos o HMD (ver Figura 3-3).

Las cuevas o cave (ver Figura 3-4).

Las icon, que son pantallas gigantes (ver Figura 3-5).

Los WorkBench (ver Figura 3-6).

El monitor.

Page 70: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 60

Figura 3-3 - Casco HMD

Figura 3-4 – Cave

Page 71: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 61

Figura 3-5- Icon

Figura 3-6 - WorkBeach

En todo momento se debe mostrar el mundo virtual de una manera coherente y

consistente de acuerdo al punto de vista que tenga el participante. Por esto se necesita saber en

todo momento la posición y orientación del participante en el mundo virtual. El proceso de

Page 72: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 62

conocer en cada instante la posición y orientación de un cierto objeto se denomina seguimiento,

en inglés “tracking” (ver la sección 3.4.3 más adelante).

Existen varios libros de RV, como por ejemplo (Burdea & Philippe Coiffet, 2003)

(Craig, Sherman, & Will, 2009) (Gutierrez, M.; Vexo, F.; Thalmann, D., Stepping into Virtual

Reality) (Kim, 2005) (Sherman, 2003).

3.1.2 QUÉ ES REALIDAD AUMENTADA

Según la definición que aparece en una de las primeras publicaciones relevantes sobre

realidad aumentada, la cual debe ser de las más citadas, dice que “una aplicación de realidad

aumentada es una aplicación interactiva que combina la realidad con imágenes sintéticas 3D

registradas en tiempo real” (Azuma R. , 1997).

De acuerdo a esta definición se pueden citar ejemplos de lo que no se consideraría

realidad aumentada:

Los efectos especiales en películas (ya que no se calculan en tiempo real).

Una imagen fija aumentada con imágenes sintéticas (ya que no es interactiva).

Desde un punto de vista más amplio, la realidad aumentada es una aplicación

interactiva que combina la realidad con información sintética (tales como imágenes 3D, sonidos,

videos, texto, sensaciones táctiles) en tiempo real y de acuerdo al punto de vista del usuario.

Según el tipo de aplicación, tendrá un dispositivo de visualización adecuado a la misma.

En particular las aplicaciones de realidad aumentada pueden utilizar diferentes dispositivos de

visualización según sea el tipo de aplicación: monitor, proyector, dispositivos de visualización

específicos de realidad aumentada como son las lentes de video “see-through”3 y las lentes de

óptical “see-through” (ver "Sistemas ópticos vs Sistemas de video” más adelante), o dispositivos

3 La traducción de “see-through” significa “ver a través”, ya que las lentes dejan ver la realidad a diferencia de los

dispositivos de realidad virtual.

Page 73: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 63

hand-held. Los dispositivos hand-held son los dispositivos de manos que incluyen a los actuales

smartphones, Tablet, etc.

Figura 3-7 - Lentes "see through"

Figura 3-8 - Lentes "Google Glasses"

La RA ha experimentado un creciente interés en estos últimos años. En Septiembre de

2009, The Economist aseguró que “intentar imaginar cómo se utilizará la Realidad Aumentada

es como intentar predecir el futuro de la web en 1994”. Según la consultora Juniper Research, la

RA en dispositivos móviles, generará más de 1273 millones de dólares en 2014.

Page 74: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 64

La informática gráfica es un área en continuo desarrollo motivado, entre otros factores,

por los grandes intereses comerciales que la impulsan desde el ámbito de los videojuegos, el cine

y la televisión, las aplicaciones médicas e industriales, simulación, etc... En algunos entornos

puede ser necesario integrar la representación de imagen sintética con imágenes del mundo real.

3.1.2.1 Historia

El primer sistema de Realidad Aumentada fue creado por Ivan Sutherland en 1968,

empleando un casco de visión que permitía ver sencillos objetos 3D renderizados en tiempo real.

Empleaba dos sistemas de tracking para calcular el registro de la cámara; uno mecánico y otro

basado en ultrasonidos (como se ve en la figura a continuación). El mismo se encuentra explicado

en (Sutherland, 1968).

Figura 3-9 - Primer Sistema de Realidad Aumentada de Iván Sutherland en 1968

En el año 1992, los ingenieros Tom Caudell y David Mizell crean el término Realidad

Aumentada (RA) para describir una pantalla que usarían los técnicos electricistas de Boeing que

mezclaba gráficos virtuales con la realidad física, este sistema les permitiría aumentar la

eficiencia de las tareas realizadas por operarios humanos asociadas a la fabricación de aviones

(ver figura siguiente).

Page 75: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 65

Figura 3-10 - Idea de anteojos "see through" creada por Caudell y Mizell

En 1997, investigadores de la Universidad de Columbia presentan The Touring

Machine, el primer sistema de realidad aumentada móvil (MARS, ver Figura 3-11). Utilizan un

sistema de visión de tipo “see-through” que combina directamente la imagen real con gráficos 2D

y 3D proyectados en una pantalla transparente. (Feiner, MacIntyre, Hollerer, & Anthony, 1997)

Figura 3-11 - Sistema MARS ilustrado a la izquierda, y su resultado a la derecha.

En 1998, el ingeniero de Sony Jun Rekimoto (Rekimoto, 1998) crea un método para

calcular completamente el tracking visual de la cámara (con 6 grados de libertad, este concepto se

Page 76: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 66

explica en la sección 3.3.2.2 “Dispositivos de tracking”) empleando marcas 2D matriciales

(códigos de barras cuadrados). Esta técnica sería la precursora de otros métodos de tracking

visuales en los próximos años.

Figura 3-12 - Matriz de código (izquierda: original, derecha: reconocida por la cámara)

Figura 3-13 - Método de Rekimoto

En la imagen anterior, se ve el flujo de información del sistema diseñado por Rekimoto.

“La matriz 2D utilizado como patrón, es un código de barras en forma de cuadrado que puede

identificar 216

objetos diferentes. Podemos crear y adjuntar los códigos en un gran número de

objetos del mundo real virtualmente sin costo, ya que los códigos pueden ser impresos por

impresoras láser hogareñas. El sistema de RA reconoce los códigos capturados por la cámara.

Mediante el análisis de la distorsión de la forma rectangular de la trama de código de la matriz,

el sistema calcula la posición y orientación de la cámara de vídeo. Esta información se utiliza

Page 77: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 67

para agregar nueva información en la imagen capturada por la cámara.” (Rekimoto, 1998). En

las imágenes a continuación se visualiza el resultado del método de Rekimoto.

Figura 3-14 - Patrón de marcas 2D Figura 3-15 - Patrón 2D con Realidad Aumentada

Un año más tarde en 1999, Kato y Billinghurst presentan ARToolKit (Kato &

Billinghurst, 1999), una librería de tracking visual de 6 grados de libertad que reconoce marcas

cuadradas mediante patrones de reconocimiento. Debido a su liberación bajo licencia GPL se

hace muy popular y es ampliamente utilizada en el ámbito de la Realidad Aumentada (ver figura

siguiente.

Figura 3-16 - Cubo generado con ARToolKit

En 2000, un grupo de investigadores de la University of South Australia (Close,

Donoghue, Squires, De Bondi, & Morris, 2000) presentan una extensión de Quake que permite

Page 78: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 68

jugar en primera persona en escenarios reales. El registro se realizaba empleando una brújula

digital, un receptor de GPS y métodos de visión basados en marcas. Los jugadores debían llevar

un sistema de cómputo portátil en una mochila, un casco de visión estereoscópica y un mando de

dos botones.

Figura 3-17 - AR-Quake

En 2001 se presenta Archeoguide (Vlahakis, y otros, 2001), un sistema financiado por la

Unión Europea para la creación de guías turísticas electrónicas basadas en Realidad Aumentada

(como se ve en la imagen precedente). El sistema proporciona información personalizada basada

en el contexto, y muestra reconstrucciones de edificios y objetos mediante una base de datos

multimedia adaptada al problema. La comunicación se realiza mediante Wifi, y el sistema es

altamente escalable permitiendo diferentes dispositivos de visualización (portátiles, PDA4, etc).

4PDA, del inglés personal digital assistant, asistente digital personal, es una computadora de bolsillo, organizador

personal o agenda electrónica de bolsillo que luego fueron sustituidos por los actuales dispositivos móviles

“smartphones”.

Page 79: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 69

Figura 3-18 - Archeoguide

En el 2003, Siemens lanza al mercado Mozzies, el primer juego de Realidad Aumentada

para teléfonos móviles (ver figura anterior). El juego superpone mosquitos a la visión obtenida

del mundo mediante una cámara integrada en el teléfono. Este juego fue premiado como el mejor

videojuego para teléfonos móviles en dicho año.

Figura 3-19 - Mozzies

En 2004 investigadores de la Universidad Nacional de Singapur presentan Human

Pacman (Cheok, y otros, 2004), un juego que emplea GPS y sistemas inerciales para registrar la

posición de los jugadores (ver imagen anterior). El PacMan y los fantasmas son en realidad

jugadores humanos que corren por la ciudad portando computadoras y sistemas de visión.

Page 80: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 70

Figura 3-20 - Human Pacman

También en el 2004, la Universidad Técnica de Viena presenta el proyecto “Invisible

Train” (como se ve en la figura precedente), el primer juego multiusuario para PDA. Esta

aplicación se ejecutaba totalmente en las PDA, sin necesidad de servidores adicionales para

realizar procesamiento auxiliar. Los jugadores controlan trenes virtuales y deben intentar evitar

que colisione con los trenes de otros jugadores. El proyecto utiliza la biblioteca Studierstube

desarrollada en la misma universidad.

Figura 3-21 - Invisible Train

Page 81: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 71

En 2005 A. Henrysson adapta la biblioteca ARToolKit para poder funcionar en Symbia5,

y crea un juego de Tenis (ver imagen precedente) que gana un premio internacional el mismo

año.

Figura 3-22 - Juego desarrollado por Henrysson

En 2007, Klein y Murray presentan en ISMAR (uno de los principales congresos de

Realidad Aumentada) el algoritmo PTAM (Klein & Murray, 2007); es una adaptación del

SLAM6 que separa el tracking y el mapping

7 en dos hilos independientes, consiguiendo en

tiempo real unos resultados muy robustos. Con este trabajo consiguieron el premio al mejor

artículo del congreso.

En 2008, Mobilizy crea Wikitude (la cual se ve en la figura anterior), una aplicación que

aumenta la información del mundo real con datos obtenidos de entradas de Wikipedia.

Originalmente sólo estaba disponible para teléfonos Android8

, aunque actualmente puede

descargarse para otras plataformas (como iPhone entre otras).

5 Symbian es un sistema operativo propiedad de Nokia, que estaba en los dispositivos móviles de dicha marca

6 algoritmo que “deduce la estructura del ambiente y al mismo tiempo establece una correlación de la misma con la

posición y orientación de la cámara”, (Klein & Murray, 2007). 7 El mapeado de texturas establece cómo se sitúa la textura sobre el objeto al momento de proyectarse.

8 Es un sistema operativo basado en el kernel de Linux diseñado principalmente para dispositivos móviles con

pantalla táctil, como teléfonos inteligentes o tabletas, y también para relojes inteligentes, televisores y automóviles,

Page 82: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 72

Figura 3-23 - Wikitude

En 2009, SPRXmobile lanza al mercado una variante de Wikitude llamada Layar, que

utiliza el mismo mecanismo de registro que Wikitude (GPS más Brújula electrónica). Layar

define un sistema de capas que permite representar datos de diversas fuentes globales (como

Wikipedia o Twitter) además de servicios locales (como tiendas, estaciones de transporte público

o guías turísticas). En la actualidad Layar cuenta con más de 100 capas distintas de contenido.

El mismo año se presenta ARhrrrr! (ver imagen precedente), el primer juego con

contenido de alta calidad para smartphone con cámara. El teléfono utiliza la metáfora de ventana

virtual para mostrar un mapa 3D donde disparar a zombies y facilitar la salida a los humanos que

están atrapados en él. El videojuego emplea de forma intensiva la GPU9 del teléfono delegando

en la tarjeta todos los cálculos salvo el tracking basado en características naturales, que se realiza

en la CPU.

inicialmente desarrollado por Android Inc., que Google respaldó económicamente y más tarde compró esta empresa

en 2005. 9 La unidad de procesamiento gráfico es un coprocesador dedicado al procesamiento de gráficos para aligerar la

carga de trabajo del procesador central en aplicaciones como los videojuegos o aplicaciones 3D interactivas.

Page 83: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 73

Figura 3-24 - ARhrrrr!

El videojuego de PSP10

Invizimals (el cual se muestra en la figura precedente), creado

por el estudio español Novorama en 2009, alcanza una distribución en Europa en el primer

trimestre de 2010 superior a las 350.000 copias, y más de 8 millones de copias a nivel mundial,

situándose en lo más alto del ránking de ventas. Este juego emplea marcas para registrar la

posición de la cámara empleando tracking visual.

Figura 3-25 - Invizimals

10 Es una consola de videojuegos portátil de Sony.

Page 84: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 74

A principios de 2010 Adidas lanza al mercado un juego de cinco zapatillas originales de

Realidad Aumentada. Los propietarios de estos modelos podrán enseñar la lengüeta de la

zapatilla a una cámara y aparecerá un mundo 3D de la marca, con posibilidad de jugar a

contenido exclusivo y obtener premios especiales (a modo de objetos 3D).

Actualmente hay innumerables proyectos enfocados en la Realidad Aumentada, al final

del capítulo se visualizaran algunos de ellos y cuál será su futuro.

3.2 REALIDAD AUMENTADA Y REALIDAD VIRTUAL

Los conceptos de realidad aumentada y realidad virtual se relacionan en lo que Paul

Milgram llama la realidad mixta, Milgram creó un nuevo concepto llamado Continuo

Realidad-Virtualidad, (Milgram & Kishino, 1994), explicado más adelante.

3.2.1 REALIDAD MIXTA

La Realidad Aumentada se encarga de estudiar las técnicas que permiten integrar en

tiempo real contenido digital con el mundo real. Según la taxonomía descrita por (Milgram &

Kishino, 1994), los entornos de Realidad Mixta son aquellos en los que “se presentan objetos del

mundo real y objetos virtuales de forma conjunta en una única pantalla”. Esto abre un abanico

de definiciones en la que se sitúan las aplicaciones de Realidad Aumentada.

A diferencia de la RV donde el usuario interactúa en un mundo totalmente virtual, la RA

se ocupa de generar capas de información virtual que deben ser correctamente alternadas con la

imagen del mundo real para lograr una sensación de correcta integración.

El continuo realidad-virtualidad, es una escala que va de lo completamente virtual a

lo completamente real, y que contiene en alguna parte dentro del rango, todas las variaciones

posibles de realidades virtuales, aumentadas, etc.

Page 85: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 75

La virtualidad aumentada se puede describir como el equivalente a la realidad

aumentada para un mundo virtual. Dicho de otra manera; aumentar un mundo virtual con

información real.

Figura 3-26 RA -Taxonomía de realidad mixta

Así, la RA se sitúa entre medio de los entornos reales y los virtuales, encargándose de

construir y alinear objetos virtuales que se integran en un escenario real.

El principal problema con el que deben tratar los sistemas de RA es el denominado

Tracking, que consiste en calcular la posición relativa de la cámara real respecto de la escena

para poder generar imágenes virtuales correctamente alineadas con esa imagen real. Este

registro debe ser preciso (errores de muy pocos milímetros son muy sensibles en determinadas

aplicaciones, como en medicina o en soporte a las aplicaciones industriales) y robusto (debe

funcionar correctamente en todo momento). En la sección 3.4.3 “Tracking” se explica este tema

en detalle.

Page 86: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 76

3.2.2 DIFERENCIA ENTRE RA Y RV

La diferencia principal entre Realidad Virtual y Realidad Aumentada es que por una

parte la RV implica inmersión del participante en un mundo totalmente virtual y por otra parte la

RA implica mantenerse en el mundo real con agregados virtuales.

La RV es ideal para:

Reemplazar al mundo real.

Simulación, entrenamiento, juegos, etc.

La RA es ideal para:

Mejorar al mundo real (agregando nueva información).

Interacciones sofisticadas en el mundo real.

3.3 CARACTERÍSTICAS Y DISPOSITIVOS

Hasta este punto del documento, se definió qué es la Realidad Aumentada y su relación

con la Realidad Virtual. A continuación se describirá con más detalle la Realidad Aumentada.

3.3.1 CARACTERÍSTICAS GENERALES

Como se nombró anteriormente en la definición de (Azuma R. , 1997) y (Azuma, y

otros, 2001), un sistema de RA tiene 3 requerimientos:

Combina la realidad con información sintética.

Los objetos virtuales están registrados en el mundo real.

Es interactivo en tiempo real.

Page 87: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 77

La información virtual tiene que estar vinculada espacialmente al mundo real de manera

coherente, lo que se denomina registro de imágenes. Por esto, se necesita saber en todo momento

la posición del usuario, tracking, con respecto al mundo real.

La combinación de las tres características nombradas precedentemente, hacen que la

Realidad Aumentada sea muy interesante para el usuario ya que complementa y mejora su visión

e interacción del mundo real con información que puede resultarle extremadamente útil a la hora

de realizar ciertas tareas. De hecho, la Realidad Aumentada es considerada como una forma de

“amplificación de la inteligencia” que emplea la computadora para facilitar el trabajo al usuario.

A diferencia de las aplicaciones de RV, las aplicaciones de RA generalmente necesitan

la movilidad del usuario, incluso hacia ambientes externos. En dichas aplicaciones de realidad

aumentada puede ser necesaria conocer la posición global del participante utilizando dispositivos

como GPS y brújulas digitales.

Dependiendo del dispositivo de visualización usado, las aplicaciones de realidad

aumentada pueden basarse en:

Lentes de video see-through.

Lentes de optical see-through.

Proyector.

Monitor.

Dispositivos móviles o Hand-Held11

.

3.3.1.1 Oclusión

La oclusión es una de las características más importante en los sistemas de RA, la cual

se conoce con el nombre oclusión ambiental, siendo la exposición de los objetos sintéticos

11 La traducción de “hand-held” significa “sostenido con la mano”.

Page 88: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 78

generados por la computadora a la luz ambiental. La misma se resuelve con una técnica de

renderizado que sirve para calcular cuán expuesto se encuentra cada punto de un objeto sintético

en escena dada a la iluminación ambiental.

Las caras internas de un modelo complejo suelen tener una oclusión mayor, por lo cual

se ven más oscuras que las externas (cuanto mayor es la oclusión, más oscura serán). El valor de

la oclusión ambiental se calcula de manera diferente según el tipo de escena: en los paisajes

naturales, se estima qué porcentaje del cielo puede percibir cada punto; en escenarios interiores,

sólo los objetos que se encuentren a un cierto radio se toman en cuenta, y el origen de la luz

ambiental son las paredes.

Más adelante se hablará de los dispositivos oclusivos, los cuales resuelven el problema

de la oclusión, logrando que los objetos sintéticos generados por la computadora sean lo más real

posible.

3.3.2 COMPONENTES DE UN SISTEMA DE REALIDAD AUMENTADA

Un sistema de RA pueden dividirse en las siguientes partes:

Dispositivos de entrada.

o Para tracking.

o Mecanismos de entrada de comandos y datos.

Dispositivos de salida.

o Salida visual.

o Salida auditiva.

o Salida táctil o háptica.

Aplicación en tiempo real.

o Visualización del mundo virtual (en RV) o mixto (en RA) de acuerdo a la

posición y orientación del participante.

Page 89: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 79

o Interactividad.

A continuación se detallarán los dispositivos de entrada de comandos, los dispositivos de

tracking y por último los dispositivos de salida.

3.3.2.1 Dispositivos de entrada

Con respecto a los mecanismos de entrada de comandos pueden utilizarse:

Controles físicos.

Control del habla.

Control por gestos.

Las aplicaciones de RA que requieren más movilidad utilizan otro tipo de mecanismos

de entrada. Por ejemplo, las aplicaciones de RA basadas en dispositivos móviles como PDA o

teléfonos celulares suelen utilizan la pantalla táctil o el lápiz para dar entrada a comandos.

El control del habla es un método natural de comunicar la información. No es adecuado

si se necesita una respuesta inmediata, pero resulta muy adecuado si se tienen las manos

ocupadas.

El control por gestos es un método natural de comunicar la información en el que se

basan nuevas metáforas de interacción. Requiere de dispositivos especiales para el tracking o en

su lugar de la aplicación de técnicas de visión por computadora. En la sección 3.4.3.2 “Tracking

videométrico o basado en visión” se explicará más en detalle este tema.

Las interfaces multimodales, es decir, las que combinan diferentes formas de dar entrada

a comandos, suelen ser las más utilizadas actualmente. En (Kölsch, Bane, Höllerer, & Turk,

2006) se analizan qué tipo de control o combinación de ellos (mediante dispositivos, mediante

habla y/o mediante gestos) resulta más adecuado según los parámetros que requiera el tipo de

tarea que se quiera realizar. Los mismos concluyen que en su aplicación:

Page 90: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 80

Aquellas tareas que requieren parámetros adimensionales, es decir, en las cuales

no se debe indicar nada en el espacio, pueden indicarse adecuadamente mediante

el habla.

Las tareas que requieren parámetros espaciales de una dimensión, como un

desplazamiento en un eje (por ejemplo, indicar un zoom), pueden indicarse

adecuadamente mediante un dispositivo como un trackball unidireccional12

.

Las tareas que requieren parámetros espaciales de dos dimensiones y tres

dimensiones (posicionamiento, escalado y orientación de objetos en el mundo

virtual) requieren utilizar diferentes tipos de entrada combinando gestos,

movimientos de cabeza y trackball unidireccional.

3.3.2.2 Dispositivos de tracking

En aplicaciones de RA se debe realizar el seguimiento o tracking del participante, para

determinar su posición y orientación en el mundo virtual (en aplicaciones de realidad virtual) o en

el mundo real (en el caso de aplicaciones de realidad aumentada).

El movimiento de un usuario u objeto se describe mediante 6 parámetros o grados de

libertad (Degree Of Freedom o DOF):

3 grados dan la posición (x, y, z) en un sistema de coordenadas de referencia (ver

la sección 3.4.2.1 “Sistema de coordenadas”).

3 grados dan la rotación (Rx, Ry, Rz) con respecto a los 3 ejes principales X, Y,

Z de un sistema de referencia.

En resumen, si un objeto se puede trasladar y rotar sobre cada uno de los ejes X, Y, Z

ese movimiento es denominado 6 DOF. Si un objeto solo se puede trasladar sobre los ejes X, Y, Z

12 Un trackball es un dispositivo apuntador estacionario compuesto por una bola incrustada en un receptáculo que

contiene sensores que detectan la rotación de la bola en uno o dos ejes. Se explicará más en detalle este dispositivo

en el capítulo 3.

Page 91: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 81

entonces son 3 DOF, lo mismo pasa en el caso de que el objeto solo puede rotar sobre dichos

ejes.

Para realizar el seguimiento del usuario pueden usarse dispositivos específicos o puede

analizarse una imagen capturada de la realidad para deducir la posición del usuario en base a

elementos del entorno, lo que se denomina tracking basado en visión.

Generalmente, en aplicaciones de realidad virtual y algunas aplicaciones de realidad

aumentada se realiza el tracking de la cabeza para realizar la visualización del mundo virtual o

mixto de acuerdo al punto de vista del participante.

Según la aplicación, el tracking puede realizarse de distintas partes del cuerpo, las cuales

son:

Cabeza.

Ojos.

Mano y dedos.

Un objeto.

Dependiendo del tipo de aplicación será la precisión que se necesite para determinar la

posición del usuario y, en consecuencia, el tipo de tracking que se realice. Por ejemplo, en

aplicaciones de medicina el tracking puede resultar crítico y por tanto debe ser muy preciso.

En el tracking de la cabeza puede necesitarse conocer solamente su posición o también

su orientación.

EL tracking de ojos, “eye tracking” o seguimiento del ojo permite saber dónde dirige su

mirada una persona y la altura de los ojos.

El tracking de la mano y dedos es necesario para proporcionar al usuario un

mecanismo de interacción con el mundo. DataGlove utiliza un sensor de posición. Tiene sensores

para detectar la flexión de los dedos (5 DOF de resolución).

Page 92: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 82

Figura 3-27 - DataGlove

En el tracking de objetos algunos de los mismos pueden servir como indicación de la

posición del usuario (por ejemplo, girar un volante indica la posición de las manos) y otros

objetos necesitan un tracking independiente (por ejemplo, una aplicación de RA de entrenamiento

médico que utiliza un bisturí).

En algunas aplicaciones de RA denominadas gravimétricas (Gravimetric AR, ver

imagen siguiente) es necesario conocer la posición y orientación global (latitud, longitud, altitud

y orientación con respecto al Norte).

El tracking nos provee posición y orientación relativa a un cierto sistema de

coordenadas, por ejemplo:

En una aplicación de RA con marcadores, cuál es la posición y orientación de un

cierto marcador en relación a la cámara que captura la escena.

En un video de vigilancia, cuál es la posición relativa de una cierta persona en

relación a su posición anterior.

Page 93: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 83

Figura 3-28 - Gravimetric AR

Tipos de sistemas

Considerando que existirá por una parte un cierto sensor capaz de recolectar datos (por

ejemplo una cámara) y, por otra parte, una fuente emisora de los datos (por ejemplo un patrón),

pueden distinguirse tres tipos de sistemas de tracking según dónde se localicen las fuentes y

sensores:

Inside-out. Cuando los sensores están ubicados en el objeto en movimiento y las

fuentes están en el ambiente. Un ejemplo de este tipo de sistemas sería cuando la

cámara este ubicada en la cabeza del participante y el patrón en el ambiente

visualizado.

Outside-in. Cuando los sensores están ubicados en el ambiente y las fuentes

están en el objeto en movimiento. Un ejemplo de este tipo de sistemas sería

cuando la cámara esta fija ubicada en algún lugar del ambiente, y los patrones

están pegados en el participante

Inside-in. Tanto los sensores como las fuentes están ubicados en el objeto en

movimiento.

Page 94: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 84

Ventajas y desventajas de los principales tipos de tracking

Los dispositivos de tracking posen algún tipo de sensor para realizar el seguimiento del

objeto o participante. En la siguiente tabla se visualizan los principales tipos de sensores, como

así también las ventajas y desventajas entre ellos.

Tabla 3-1 - Tipos de sensores que se encuentran en los dispositivos de tracking

Sensor Tipo de sistema Ventaja Desventajas

Electromagnético Inside-out, ya que los sensores se

localizan en el cuerpo del

participante que se mueve en un

campo electromagnético exterior,

que actúa como fuente.

Se tiene una línea de

visión directa del

participante. Si se

colocan múltiples

sensores se puede

realizar el seguimiento de

diferentes articulaciones.

Normalmente

funciona con cables.

Los metales pueden

crear interferencias.

El espacio de trabajo

es reducido.

Óptico Outside-in, ya que los sensores

externos, por ejemplo las

cámaras, se posicionan en el

ambiente exterior para recolectar

datos de fuentes localizadas en el

cuerpo (puntos reflectantes, por

ejemplo un patrón).

Utiliza cámaras de video

u otros sensores de luz.

No necesita cables. Con

varias cámaras se puede

obtener la posición 3D.

Necesita visión

directa y buena

iluminación.

Videométrico Inside-out, ya que se sitúa una

cámara sobre el participante y se

utilizan puntos de referencia en

el mundo real para determinar la

posición del mismo.

Es económico. Necesita elementos de

cálculos adicionales o

cableados.

Page 95: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 85

Ultrasónico A través de múltiples fuentes de

sonidos de alta frecuencia y

micrófonos se puede medir el

tiempo que tarda el sonido para

ir de un lugar al otro, y

determinar la posición de cada

micrófono por triangulación.

No es recomendable

en ambientes

ruidosos. Necesita

visión directa.

Inercial Utiliza instrumentos que pueden

detectar y medir cambios de

fuerzas giroscópicas (aceleración

e inclinación).

Son baratos. No precisan

punto de referencia.

Pierden precisión a lo

largo del tiempo.

Funcionan bien

combinados con otros

sistemas.

3.3.2.3 Dispositivos de salida

Los sistemas de realidad aumentada han de proporcionar información del mundo virtual

con respuestas:

Visuales.

Auditivas.

Táctiles.

Para cada una de las diferentes salidas se pueden clasificar en:

Los medios de interacción.

Sus propiedades.

Sus cualidades logísticas.

Page 96: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 86

Salidas visuales

Clasificación por medios de interacción

Según los medios de interacción de los dispositivos de visualización se clasifican en:

Estacionarios o estáticos. Son aquellos dispositivos que se encuentras estáticos

en un lugar, como por ejemplo el monitor o el proyector.

Móviles oclusivos. Son aquellos dispositivos que se pueden trasladar con el

participante y que resuelven el problema de la oclusión, como por ejemplo el

casco HMD o las lentes video “see-through” (el término oclusión se explicó en la

sección 3.3.1.1 “Oclusión”).

Móviles no oclusivos. Son del mismo tipo que los anteriores, pero no resuelven

el problema de la oclusión, como por ejemplo los dispositivos Hand-Held y las

lentes optical “see-through”.

Características

Los dispositivos de visualización se diferencian según las siguientes propiedades:

Resolución, color, contraste, brillo.

Número de canales. Los canales capturan ciertos datos del dispositivo, por

ejemplo una cámara de video a color posee tres canales, uno para cada color

primario.

Distancia focal. La distancia focal del lente en estos dispositivos, es la distancia

entre el centro óptico de la lente y el foco (o punto focal). En este caso el punto

focal pueden ser el objeto en movimiento, algún patrón, o características del

ambiente.

Campo de visión y campo de mirada. El campo de visión mide la amplitud y la

altura angular de la visión del usuario, y se mide en porcentaje o ángulos. La

visión humana es de 200 grados en total, con 130 grados de solapamiento; la

Page 97: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 87

visión túnel es de 60 grados o menos; y los cascos de RV suelen cubrir 100

grados, con 60 de solapamiento.

Opacidad. La opacidad es el nivel de aislamiento visual del mundo real.

Latencia y velocidad de refresco. Son en conjunto el tiempo de respuesta del

dispositivo para procesar cada frame.

Clasificación por cualidades

Los dispositivos de visualización también se diferencian según las siguientes cualidades

logísticas:

Movilidad del usuario.

Interfaz con el tracking.

Requisitos del entorno.

Portabilidad.

Seguridad.

Costo.

La movilidad del usuario tiene un gran efecto en la inmersión mental y en la utilidad del

sistema. Los requisitos del entorno son las condiciones necesarias para una buena experiencia de

RV. Las imágenes proyectadas requieren que haya poca luz; las grandes pantallas estáticas

necesitan mucho espacio; y los dispositivos móviles trabajan mejor en lugares pequeños.

Page 98: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 88

Tabla 3-2 - Dispositivos de visualización

Dispositivo de visualización Aplicación Descripción

Cave RV Estáticos. Costo elevado.

Campos de visión y de mirada

amplios. Inmersivos. Mayor

resolución. Mayor campo de

visión. Mayor tiempo de

inmersión. Más seguridad.

Mejor para grupos.

Monitor RA y RV Estáticos. Pocos

componentes/bajo costo. Fácil

instalación. Dispositivos de

interacción disponibles.

Campos de visión y de mirada

limitados. Poco inmersivos.

HMD Video see-through RA y RV Oclusivos. Pantallas pequeñas

y transportables. La inmersión

fundamental se basa en la

orientación de la cabeza. El

campo de mirada es del 100%.

Tiene un importante rango de

resoluciones. Normalmente, le

falta campo de visión. Fatiga

visual.

HMD Optical see-trough RA No oclusivos. Simplicidad.

Alta seguridad. El tracking

debe estar bien sincronizado.

Difícil tratamiento de las

oclusiones.

Page 99: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 89

Proyector RA y RV Estáticos. Pocos

componentes/alto costo. Difícil

instalación. Dispositivos de

interacción disponibles.

Campo de mirada limitado.

Poco inmersivos.

HandHeld RA No oclusivos. Menor costo.

Campo de mirada del 100%.

Más portabilidad. Menos

espacio. Pueden ocultar el

mundo real. No importa la

iluminación.

Monitor

Figura 3-29 - Esquema del monitor

Page 100: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 90

Hand-Held

Figura 3-30 - Esquema de Hand-Held, similar al del monitor

Lentes o Lentes “optical see-through”

Figura 3-31 – Lentes optical “see through"

Page 101: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 91

Figura 3-32 - Esquema de los lentes optical “see through"

Lentes o Lentes “video see-through”

Figura 3-33 - Lentes video “see-through”

Page 102: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 92

Figura 3-34 -Esquema de los lentes video “see-through”

Sistemas ópticos vs Sistemas de video

(Azuma R. , 1997) Resume las diferentes ventajas y desventajas entre los dispositivos

optical “see-through” (ópticos o sistemas ópticos) y video “see-through” (video o sistemas de

video). Por un lado, los dispositivos de video presentan la gran ventaja de la flexibilidad en la

composición o mezcla (blending13

) del video real con el sintético. Un problema básico de los

sistemas ópticos es que los objetos virtuales no tapan completamente los objetos reales, esto

ocurre por la forma en que funcionan los combinadores ópticos que permiten luz del mundo real

y del virtual. Hacer un sistema óptico que selectivamente apague la luz del mundo real, aumenta

la complejidad del diseño. Los objetos virtuales aparecen semitransparentes y esto puede dañar la

ilusión de realidad, si se requiere. En contrastes, el sistema de video es más flexible en cómo

mezcla el mundo real y el virtual, ya que ambos están disponibles en forma digital. Se puede

componer pixel a pixel tomando o bien el mundo real o el virtual, o mezclándolos si se quiere

sensación de transparencia.

13 Se refiere a la mezcla o composición de los stream del video real con el video sintético.

Page 103: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 93

Los sistemas ópticos ofrecen una vista instantánea del mundo real, pero una vista

retrasada del mundo virtual, y esta incoherencia temporal puede causar problemas. Otra de las

ventajas de los sistemas de video es que es posible retrasar el video del mundo real para coincidir

con el retraso del stream del mundo virtual.

En los sistemas ópticos, la única información acerca de la ubicación de la cabeza del

usuario viene del dispositivo de tracking de cabeza. Por otra parte, en los sistemas de video, se

tiene otra fuente de información: la imagen digitalizada del mundo real, con lo cual pueden

usarse técnicas de visión para el registro de imágenes, cuestión que no estaría disponible en los

sistemas ópticos,

Los sistemas de video limitan la resolución de lo que el usuario ve, tanto real como

virtual, a la resolución del dispositivo. Por otra parte, los sistemas ópticos también muestran los

gráficos con la resolución del dispositivo, pero el usuario ve la realidad sin degradarse.

Con respecto a la seguridad, los sistemas de video usados en RA son cascos HMD de

RV modificados. Si se corta la electricidad, el participante estará ciego y esta es una cuestión

concerniente a la seguridad en algunas aplicaciones. En contraste, utilizando un sistema óptico el

usuario tiene la vista del mundo real y por esto se considera más seguro.

Ambas tecnologías, óptica y video, tienen sus roles y la elección depende de los

requerimientos de la aplicación. En aplicaciones de reparación se usan generalmente los sistemas

ópticos, posiblemente por cuestiones de seguridad. Por otra parte, en aplicaciones médicas suelen

usarse los sistemas de video, probablemente por la flexibilidad en la mezcla del mundo real y

virtual y por las estrategias adicionales de registro de imágenes.

Salidas auditivas

Los dispositivos de salida auditiva se clasifican según los medios de interacción:

Estacionarios o estáticos (altavoces).

Móviles (auriculares).

Page 104: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 94

Las propiedades de los dispositivos de salida auditiva son: el número de canales, el

entorno de sonido, la localización, la oclusión y la amplificación.

Con respecto al número de canales, si se tienen diferentes sonidos en cada oído se tiene

información sobre la procedencia del sonido. Se denomina sonido monofónico si se tiene la

misma señal en cada oído, mientras que sonido estereofónico implica diferentes señales para cada

oído.

El concepto de entorno del sonido hace alusión a la fuente de donde parece originarse el

sonido. La localización es la habilidad del cerebro para determinar la procedencia del sonido. La

espacialización es la habilidad tecnológica para hacer que el sonido parezca venir de un punto

determinado del espacio.

En relación a la oclusión puede decirse que los altavoces no pueden ocultar de una

manera efectiva los sonidos del mundo real, mientras que los auriculares cerrados son el mejor

mecanismo para experiencias en las que el participante únicamente debe oír sonidos del mundo

virtual.

Las cualidades logísticas de los dispositivos de salida auditiva son: la contaminación por

ruido, la movilidad del usuario, los requisitos del entorno, la portabilidad, la seguridad y el costo.

En cuanto a los requisitos del entorno, las salas cuadradas pueden ser un problema para

los altavoces. Los campos magnéticos de los altavoces y los auriculares pueden causar

interferencias con los sensores. Los sonidos altos pueden interferir con los dispositivos de

tracking de ultrasonidos.

Entre las ventajas de los altavoces se pueden señalar las siguientes:

Trabajan bien con los visualizadores estacionarios.

No requieren el procesado del sonido para crear sonidos referenciados al mundo

(estables en el mundo virtual).

Permiten más movilidad al usuario (cables).

Page 105: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 95

Algunas de las ventajas de los auriculares son:

Trabajan bien con los visualizadores dinámicos.

La implementación de sonidos referenciados a la cabeza es más fácil de

implementar.

Es más sencillo eliminar los ruidos de la habitación.

Son más portables.

Privados.

Salidas táctiles

Según los medios de interacción de los dispositivos de salida táctil se clasifican en:

Percepción kinestética. La percepción kinestética es la capacidad de saber

dónde está ubicada cada parte del cuerpo en relación a su propio eje y al espacio

inmediato vinculado con los objetos que lo rodean, permitiendo realizar los

movimientos necesarios para una actividad.

Percepción táctil.

Las propiedades de los dispositivos de salida táctil son: pistas kinestéticas, pistas

táctiles, fidelidad, latencia, contacto, resolución, grados de libertad, refresco, forma y tamaño.

Las pistas kinestéticas se relacionan con los ángulos de las articulaciones, los músculos,

la tensión y resistencia. Las mismas ayudan a determinar la solidez, forma aproximada y fuerzas

físicas. Las pistas táctiles son receptores sensoriales en la piel: Existen mecanoreceptores (forma

y textura), termoreceptores (transferencia calor), electroreceptores (flujo de corriente) y

nociceptores (daño en los tejidos).

Con respecto al contacto, hay que indicar que los sensores de fuerza y resistencia

necesitan un punto de contacto. Pueden limitar tanto el movimiento del propio cuerpo del

participante, como el movimiento del participante respecto al mundo. Los grados de libertad

Page 106: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 96

están asociados al tipo de movimiento que permiten: 6 DOF si el movimiento no está limitado; 1

DOF si permite abrir o cerrar un dedo; 2 DOF igual que el anterior más giro permitido; 3 DOF si

nos da la posición (x, y, z) de la punta del dedo.

Las cualidades logísticas de los dispositivos de salida táctil son: la movilidad del

usuario, los requisitos del entorno, la portabilidad, la seguridad y el costo.

Figura 3-35 - Ejemplos de salidas táctiles

Como requisitos del entorno, a veces, para dispositivos hidráulicos o de aire

comprimido, es necesario usar habitaciones especiales. Los dispositivos más pequeños pueden

funcionar sobre escritorios o incluso en la mano del mismo participante.

En cuanto a la seguridad, los dispositivos de temperatura son peligrosos y suelen

incorporar interruptores de seguridad.

Si se habla del costo de los dispositivos, hay que señalar que generalmente son muy

costosos. Existen excepciones que son los dispositivos utilizados para juegos como volantes con

fuerza, joysticks y controladores de juegos, los cuales pueden adquirirse a precios razonables.

Page 107: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 97

3.4 FUNDAMENTOS TEÓRICOS

Como se mencionó anteriormente, la primer definición de realidad aumentada fue

realizada por Azuma, “Una aplicación de realidad aumentada es una aplicación interactiva que

combina la realidad con imágenes sintéticas 3D registradas en tiempo real…” (Azuma R. , 1997).

Luego, con el paso de los años, esta definición fue refinándose hasta lo que se conoce

actualmente como Realidad Aumentada.

La realidad aumentada es una aplicación interactiva que combina la realidad con

información sintética (tal como imágenes 3D, sonidos, videos, texto, sensaciones táctiles) en

tiempo real y de acuerdo al punto de vista del usuario.

La aparición de la librería de código abierto ARToolkit en el año 1999 dio lugar a un

gran crecimiento en el desarrollo de aplicaciones de realidad aumentada.

En los últimos años, aparecieron una serie de nuevas aplicaciones que brindan

información al usuario de acuerdo a su posición geográfica obtenida vía GPS. Recientemente los

servicios basados en la localización se vincularon con el campo de realidad aumentada dando

lugar a la denominada realidad aumentada gravimétrica (Gravimetric AR). Utilizan tanto el GPS

y los sensores integrados para la localización de usuario, como también algoritmos de visión para

el tracking, reconocimiento y visualización de información sobre los objetos reales.

Otro gran avance en Realidad Aumentada esta ejemplificado en la aplicación Google

Goggles14

, la cual permite capturar un objeto y, en base a la imagen capturada, se realiza una

búsqueda en la base de datos de Google para visualizar información sobre el mismo.

14 http://www.google.com/mobile/goggles.

Page 108: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 98

3.4.1 DIAGRAMA DE UNA APLICACIÓN DE RA

Una aplicación de realidad aumentada tiene tres partes principales que son:

Tracking.

Recuperación de información.

Salida de información.

En adelante se hará referencia al tipo de aplicación de realidad aumentada donde las

salidas son visuales.

La

Figura 3-36 muestra un diagrama de las diferentes partes involucradas en una aplicación de

realidad aumentada visual:

Captura de la escena real. La escena real es capturada mediante la cámara. El

video capturado puede utilizarse para tracking basado en visión, es decir basado

en el análisis de la imagen mediante algoritmos de visión. También es necesaria

la captura, si la visualización se realiza de forma indirecta en dispositivos de

video “see-trough”, monitor o dispositivos “Hand-Held”.

Tracking del participante. Puede realizarse mediante dispositivos específicos o

puede realizarse tracking basado en visión para lo cual es necesaria la captura de

la escena real.

Generador de la escena virtual. Se tiene un mundo virtual, con la información

de la posición y orientación del participante se genera una vista acorde del

mismo.

Combinación del mundo virtual y la escena real. En los casos en los que

existe una visión directa del mundo real, la combinación se realiza directamente

en el ojo del participante. En otro caso, se realiza un video resultado de la escena

capturada y la escena sintética proyectada.

Page 109: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 99

Figura 3-36- Diagrama de las partes de una aplicación de realidad aumentada

Los dispositivos de visualización influyen de cierta manera en las distintas partes de una

aplicación de realidad aumentada, lo cual se muestra a continuación:

Tabla 3-3 - Dispositivos de visualización en las aplicaciones de RA

Dispositivo Captura Tracking Generador escena Combinador

Dispositivos

ópticos “see-

through”

Visión directa Cabeza mediante

sensores

(generalmente

electromagnéticos).

Software para PC. Proyección de la

escena sintética en

las lentes

transparentes.

Combinación la

realiza el ojo.

Page 110: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 100

Dispositivos de

video “see-

through”

Cámara captura el

video real.

Cabeza o cámara

mediante sensores

o basado en visión.

Software para PC. Generación y

visualización de

video combinando

la captura y la

proyección de la

escena sintética.

Proyector Visión directa.

Captura si se usa

Tracking basado

en visión.

Opcional según la

aplicación.

Software para PC. Proyección de la

escena sintética

sobre la escena

real, Combinación

la realiza el ojo.

Monitor Cámara captura el

video real.

Tracking de la

cámara.

Generalmente

basado en visión.

Software para PC. Generación y

visualización de

video combinando

la captura y la

proyección de la

escena sintética.

Hand-held Cámara captura el

video real.

Tracking de la

cámara. Basado en

visión o mediante

sensores (GPS y

brújula digital;

sensores inerciales

como

acelerómetros 15 y

giroscopios16).

Software para

móviles.

Generación y

visualización de

video combinando

la captura y la

proyección de la

escena sintética.

15 Se denomina acelerómetro a cualquier instrumento destinado a medir aceleraciones.

Page 111: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 101

3.4.2 GENERACIÓN DE LA IMAGEN AUMENTADA

Para la formación de imágenes se distinguen los siguientes procesos:

Sistemas de referencia.

Transformaciones geométricas.

Transformación de proyección.

Proceso de formación de imágenes.

Para generar una imagen 2D a partir de un objeto 3D, convierte cada punto 3D del

objeto en un píxel de la imagen 2D. Este proceso puede expresarse matemáticamente.

Figura 3-37 - Proceso de la formación de imágenes

El mundo 3D está compuesto por objetos situados en ciertas posiciones y orientaciones.

Puede ser real o sintético.

16 El giroscopio, es un dispositivo mecánico que sirve para medir, mantener o cambiar la orientación en el espacio

de algún aparato o vehículo.

Page 112: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 102

La cámara, captura la escena desde una cierta posición y orientación. Puede ser una

cámara real en caso de estar sacando una foto o puede ser una cámara sintética en caso de estar

visualizando un modelo virtual.

La imagen formada es el resultado de una proyección que realiza la cámara. La imagen

se forma en el plano de proyección. En una cámara real, la imagen formada en el plano de

proyección está “invertida”.

En imágenes sintéticas se elige tener en cuenta la imagen que se forma en un plano

situado delante de la cámara.

3.4.2.1 Sistema de coordenadas

En el proceso de formación de imágenes, reales o sintéticas, existe:

Una escena compuesta por diversos objetos (en diferentes posiciones y

orientaciones).

Una cámara, con una cierta posición y orientación en la escena.

Una imagen resultante de proyectar la escena de acuerdo a la cámara.

Anteriormente, se dijo que el mundo 3D está compuesto por objetos situados en

diferentes posiciones y orientaciones. También la cámara está situada en cierta posición y

orientación. Cuando se habla de posiciones y orientaciones es necesario establecer en relación a

que nos referimos, para lo cual se necesita un sistema de referencia.

Cuando se habla de posición y orientación de un objeto o de una cámara, deber existir un

sistema de referencia en base al cual se expresan. En realidad aumentada, hablar de imágenes

registradas significa que tanto las imágenes sintéticas como el mundo real se encuentran en

referencia al mismo sistema de coordenadas (ver imagen siguiente).

Page 113: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 103

Figura 3-38 - Proceso del sistema de coordenadas

La posición y orientación de los objetos reales o sintéticos suele expresarse en relación a

un sistema de coordenadas 3D situado en algún lugar del mundo.

El sistema de coordenadas cámara 3D tiene el origen en el centro óptico y el eje Z

alineado con el eje de proyección.

Los puntos de la imagen se expresan en relación a un sistema de coordenadas 2D con

los ejes alineados con los bordes de la imagen y el centro en una esquina o en el centro de la

imagen.

3.4.2.2 Transformaciones geométricas y de proyección

Las imágenes se forman mediante una proyección que transforma un punto 3D del

mundo a un punto 2D de la imagen. Cada punto Pn expresado en el sistema de coordenadas, se

proyecta según el modelo de la cámara y tiene su correspondiente en la imagen proyectada 2D.

Para más información sobre las transformaciones geométricas y de proyección, consultar la

siguiente bibliografía (Haller, Billinghurst, & Thomas, 2006).

Page 114: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 104

3.4.2.3 Formación de la imagen aumentada

Conocidas las matrices, se aplica el proceso descripto para computación gráfica para

generar la imagen sintética que se combinará con la escena real.

Este proceso se realiza en cada instante ya que la posición y orientación del usuario

pueden cambiar continuamente.

3.4.3 TRACKING

Como se definió anteriormente, el tracking es el proceso de seguimiento de un objeto en

movimiento, es decir, la estimación de la posición y orientación del mismo en cada instante.

En una aplicación de realidad aumentada, se necesita el tracking del participante para

conocer la matriz de transformaciones geométricas y así realizar el registro de imágenes sintéticas

y reales.

En la mayoría de las aplicaciones de realidad aumentada se trata de realizar un tracking

de la cámara que captura la escena. Aunque también puede tratarse del tracking de la cabeza del

usuario o de algún objeto manipulado por este.

El tracking completo estima los 6 DOF, 3 DOF para las translaciones y 3 DOF para las

rotaciones sobre los ejes X, Y, Z.

Según la el tipo de aplicación, es interesante conocer:

La posición y orientación de la cámara en un sistema de coordenadas global.

La posición y orientación de la cámara en relación a un objeto de la escena real

en cuestión.

La posición y orientación de la cámara en relación a la posición y orientación del

cuadro de video anterior.

El Tracking puede clasificarse según la tecnología con la que se realice:

Page 115: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 105

Tracking basado en dispositivos.

Tracking basado en visión.

Tracking híbrido.

3.4.3.1 Tracking basado en dispositivos

Los dispositivos que tracking que existen son:

Electromagnético.

Mecánico.

Óptico.

Ultrasónico.

Neuromuscular.

Inercial.

GPS

Sistema Electromagnético

Denominado Inside-out, ya que los sensores están en el cuerpo (inside) y recolectan

datos de fuentes externas (out). Los sensores del cuerpo se mueven en un campo

electromagnético exterior. Generalmente es utilizado en algunas aplicaciones de realidad virtual

de ambiente controlado.

Posee una relación entre un gran transmisor y un pequeño receptor, además no es

necesaria una línea de visión directa. Múltiples receptores permiten el seguimiento de diferentes

articulaciones, y normalmente funciona con cables. A la hora de utilizarlos, hay que tener en

cuenta que los metales pueden crear interferencias, y que el espacio de trabajo es reducido.

Page 116: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 106

Figura 3-39 - Tracking Electromagnético

Sistema Mecánico

Denominado Inside-in, ya que tanto los sensores como las fuentes están localizados en el

cuerpo. Trajes electromecánicos: los sensores son potenciómetros y las fuentes son las

articulaciones reales del cuerpo que presionan sobre ellos. Utilizado en algunas aplicaciones de

realidad virtual de ambiente controlado.

Es muy rápido y preciso, pero a la vez incómodo para el usuario y sus movimientos son

limitados.

Figura 3-40 - Tracking Mecánico

Page 117: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 107

Sistema Óptico

Los sistemas ópticos son llamados Outside-in: sensores externos (outside) para

recolectar datos de fuentes localizadas en el cuerpo (in). Sistemas basados en cámaras: las

cámaras son los sensores que capturan los marcadores reflectivos que actúan como fuentes. Se

usan para captura de movimiento para realizar animaciones.

Utiliza cámaras de video u otros sensores de luz para determinar la posición del usuario.

No necesita cables. Con varias cámaras se puede obtener la posición 3D. Necesita visión directa y

buena iluminación (ver Figura 3-41).

Figura 3-41 - Tracking óptico

Sistema Ultrasónico

Utiliza sonidos de alta frecuencia. A través de fuentes localizadas en el sujeto en

movimiento y receptores localizados en el ambiente se puede estimar la posición del participante

midiendo el tiempo de retardo del sonido recibido en los diferentes receptores. No es efectivo

utilizarlo en ambientes ruidosos, suele implementarse en interiores.

Page 118: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 108

Sistema Inercial

Los acelerómetros y giroscopios permiten conocer aceleración y velocidad de rotación, a

partir de las cuales puede conocerse los 6 DOF de la pose. Las ventajas de este tipo de

dispositivos radican en su rapidez y su buena respuesta a cambios bruscos. Sin embargo, su

principal desventaja suele ser la acumulación de errores debido al ruido, y por esto cada cierto

tiempo deben recalibrase.

Sistema por GPS

GPS (Global Positional System), nos da la latitud y longitud en el sistema de

coordenadas global que puede usarse para consultar un Sistema de Información Geográfica

(SIG). El GPS brinda los 3 DOF de la traslación. Para mejorar la exactitud del valor que brinda

puede usarse lo que se denomina GPS diferencial, donde una estación base de la cual se conoce

su localización con exactitud, computa y transmite el error introducido el cual es utilizado por el

receptor GPS para corregir su posición. Para obtener los 6 DOF se necesita combinarlo con otro

dispositivo que brinde los 3 DOF de la rotación como una brújula.

Sistema por brújula digital

Brújula digital: al igual que una brújula convencional brinda la orientación en un sistema

global (3 DOF). Las brújulas que se encuentran en los teléfonos móviles son denominadas

brújulas de estado sólido, generalmente construidas mediante sensores de campo magnético que

envían señales a un microprocesador.

Generalmente se combina con el GPS para obtener los 6 DOF del movimiento del

dispositivo. La ventaja con respecto al uso de sensores inerciales es que brindan un resultado con

error constante, el cual puede precalibrarse durante la instalación del sistema.

3.4.3.2 Tracking videométrico o basado en visión

En lugar de utilizar dispositivos físicos específicos para tracking, la posición y

orientación de la cámara en la escena real, puede estimarse analizando el video capturado por una

Page 119: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 109

cámara utilizando técnicas de visión por computadora. Se trata de buscar en la imagen elementos

de la escena real que permitan deducir la posición y orientación de la cámara en relación a una

cierta referencia (o de forma equivalente la posición y orientación de los objetos en relación a la

cámara). Según la aplicación, puede tratarse de una cámara integrada al participante en

movimiento, o de una cámara fija en una escena con objetos en movimiento.

En resumen, la cámara captura video de la escena real, el cual es analizado cuadro a

cuadro por medio de algoritmos de visión por computadora, para localizar características

(elementos de referencia en el mundo real) que ayuden a deducir el cambio de posición y

orientación de la cámara en cada instante.

Flujo de trabajo

El flujo de trabajo de una aplicación de RA con tracking basado en visión es:

Figura 3-42 - Flujo de trabajo de una aplicación de RA con tracking basado en visión

Pre-Procesamiento

Procesamiento

Calibración de la

cámara

Modelado de la

escena virtual

Inicializaciones

Carga de la

escena virtual

Procesamiento de

cada cuadro

Captura de cuadro de

video

Estimación de la posición

y orientación de la

cámara

Visualización de la

escena aumentada

Definir matriz de

proyección

Page 120: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 110

La etapa de preprocesamiento se realiza “fuera de línea” y consiste en dos partes bien

diferenciadas e independientes: por un lado la calibración de la cámara y por otra el modelado de

la escena virtual.

El proceso de calibración permite estimar los parámetros intrínsecos de la cámara que

captura la escena.

Conocidos ciertos parámetros (como la distancia focal, la relación de aspecto del píxel,

el centro de la imagen) puede definirse la matriz de proyección a utilizar para la formación de la

imagen aumentada, de forma que la cámara virtual tenga las mismas características que la cámara

real. Además, mediante la calibración, puede conocerse la distorsión que realiza la cámara en las

imágenes y de esta forma poder realizar un procedimiento de anulación de la distorsión si así se

desea.

Dado que se quiere aumentar la escena real con objetos virtuales, se debe modelar

previamente una escena 2D o 3D utilizando algún editor gráfico 2D o 3D.

El proceso de la aplicación en tiempo real es un ciclo donde se capturan cuadros de

video, se analiza para estimar la posición y orientación de la cámara con respecto a la escena

real y se visualiza la escena aumentada.

En definitiva, el tracking basado en visión es la estimación de la posición y orientación

de la cámara, o la estimación de la posición y orientación de los objetos de la escena en relación

a la cámara. Como resultado de esta estimación, se define la matriz de transformaciones

geométricas que se aplicará a la escena virtual en la visualización.

Clasificación de los tracking basados en visión

Existen diferentes estrategias usadas para tracking basado en visión, las cuales son:

Tracking de marcadores. También denominado “Tracking basado en patrones”.

Tracking de una imagen. También conocido como “Tracking basado en

características naturales con conocimiento de la escena”.

Page 121: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 111

Tracking sin conocer la escena real. También conocido como “Tracking

basado en características naturales sin conocimiento de la escena”.

El tracking de marcadores fue la primera estrategia utilizada y consiste en introducir uno

o más marcadores conocidos en la escena real para superponer objetos virtuales o utilizarlos

como interfaz tangible. Dado que puede resultar molesto o indeseable el agregar marcadores

visibles a la escena, recientemente la investigación se derivó a encontrar otros algoritmos de

tracking basado en visión que exploren la presencia de características naturales en la misma

(puntos, líneas, bordes, texturas) evitando la introducción de marcadores.

Tracking de marcadores

Un marcador o patrón es una imagen 2D impresa con un formato específico conocido

por la aplicación de tracking.

A continuación en la imagen se pueden ver diferentes tipos de marcadores. Los

marcadores son muy conocidos dado que son los utilizados por la librería de realidad aumentada

ARToolkit, que fue la primera librería que popularizó las aplicaciones de realidad aumentada. El

formato es un cuadrado negro y dentro un cuadrado blanco que tiene dentro una imagen

asimétrica en negro. Es posible crear nuevos marcadores respetando este formato y entrenando

previamente a la aplicación para incorporar el marcador a la base de datos de marcadores

conocidos.

Figura 3-43 - Tipos de marcadores en función de la librería utilizada

Page 122: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 112

Tracking basados en características naturales con conocimiento de la escena

Con el objetivo de evitar invadir una escena con marcadores, surgieron las técnicas de

tracking basado en características naturales, las cuales se basan en la localización de

características naturales de la escena como puntos, líneas, bordes o texturas.

Tracking basados en características naturales sin conocimiento de la escena

Las técnicas descriptas anteriormente están basadas en el conocimiento de la escena.

Actualmente un problema recurrente en aplicaciones de realidad aumentada es realizar el tracking

en escenas desconocidas (total o parcialmente). En este caso, no solo debe estimarse la posición

de la cámara sino que también debe realizarse un mapa del ambiente desconocido. En la

actualidad, existen varios algoritmos que resuelven el problema mencionado, los cuales se basan

en el algoritmo de SLAM (“Simultaneous Localisation and Mapping”, “Localización y Mapeo

Simultaneo”). “Deduce la estructura del ambiente y al mismo tiempo establece una correlación

de la misma con la posición y orientación de la cámara” (Klein & Murray, 2007). Para más

información sobre dichos de algoritmos, consulte la bibliografía mencionada.

3.4.3.3 Tracking híbrido

Tanto el tracking basado en dispositivos físicos como el tracking basado en visión tienen

sus ventajas y desventajas:

El tracking basado en visión es lento y por ende falla en movimientos rápidos. Su

ventaja es su estabilidad a largo plazo.

El tracking inercial es rápido pero puede tener acumulación de errores a largo

plazo.

Para aprovechar las ventajas de ambos, algunas técnicas combinan la salida de

dispositivos físicos y el análisis de video.

Page 123: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 113

3.4.3.4 Resumen de las técnicas de tracking

A continuación, se presenta una tabla resumen con las diferentes alternativas de tracking

en aplicaciones de realidad aumentada.

Figura 3-44 - Alternativas de tracking en aplicaciones de realidad aumentada

Page 124: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 114

3.5 REALIDAD AUMENTADA EN DISPOSITIVOS MÓVILES

En la introducción del presente capítulo se nombró algunos proyectos realizados para

dispositivos móviles con realidad aumentada.

Las aplicaciones de realidad aumentada móvil siguen el modelo de dispositivo sostenido

Hand-Held. Estos dispositivos cuentan con cámara integrada y opcionalmente dispositivos para

tracking integrados como GPS, acelerómetro, giroscopio, brújula.

3.5.1 CARACTERÍSTICAS DE HARDWARE Y SOFTWARE

En los últimos años la tecnología en los dispositivos Hand-Held ha crecido

exponencialmente, en los cuales se puede encontrar equipos con CPU de 4 y 8 núcleos, Memoria

RAM de más de 2GB, GPU integrada, Memorias SD de más de 64GB, etc. Con estas

especificaciones técnicas, los problemas que presentaba el hardware de estos dispositivos para

generar aplicaciones con RA, fueron solucionados.

Este gran crecimiento tecnológico y las mejores capacidades del nuevo hardware, le

permitió a la industria idealizar similitudes de capacidad de procesamiento de dichos dispositivos

con respecto al de las computadoras, con lo cual se empezaron a ver los dispositivos hand-held

como si fueran computadoras. Con esta nueva realidad, surgieron nuevas plataformas móviles,

como es el caso de Android, Windows Phone y IOS. Debido a esto, actualmente existen muchas

empresas generando contenido para dichas plataformas, dentro de las cuales se incluyeron

aplicaciones con RA, casi sin limitaciones en cuanto al hardware.

3.6 APLICACIONES

La importancia de la Realidad Aumentada queda patente con el enorme interés que ha

generado en los últimos años. Un indicador que puede ser significativo es la tendencia de

búsqueda en la web. Desde Junio de 2009 la búsqueda por “Augmented Reality” supera el

número de búsquedas realizadas con la cadena “Virtual Reality”.

Page 125: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 115

Una de las principales causas del crecimiento del uso de la Realidad Aumentada es

debido a al avance tecnológico en el hardware de los distintos dispositivos analizados.

3.6.1 CAMPOS DE APLICACIÓN

Existen múltiples ámbitos de aplicación para la realidad aumentada. En su revisión del

estado del arte de 1997 (Azuma R. , 1997), Azuma ya identificaba diversos campos donde era

aplicable la Realidad Aumentada. A continuación se mencionarán los ámbitos más importantes

donde se puede implementar un sistema con Realidad Aumentada, aunque prácticamente en

cualquier área de trabajo puede tener sentido desarrollar aplicaciones de Realidad Aumentada:

Medicina. La medicina puede beneficiarse del uso de la Realidad Aumentada en

quirófanos y entrenamiento de doctores. Actualmente es posible obtener datos

3D en tiempo real mediante resonancias magnéticas o tomografías que pueden

superponerse en la imagen real del paciente, dando una visión de rayos X al

especialista.

Fabricación. Otro uso de la Realidad Aumentada es en el ámbito de la

fabricación, mantenimiento y reparación de maquinaria compleja. Los pasos a

seguir en la reparación son mucho más intuitivos y fáciles de seguir si aparecen

directamente superpuestos sobre la imagen real.

Entretenimiento. La industria del ocio ya ha comenzado a sacar partido del

enorme potencial de interacción que ofrece la Realidad Aumentada (como Sony,

Ubisoft o SixFlags).

Publicidad. Cada vez más empresas utilizan la Realidad Aumentada como

reclamo publicitario. Desde 2008, empresas como Adidas, Ford, BMW, Lego,

FOX, Paramount, Doritos, Ray Ban y Mac- Donalds forman parte de una

larguísima lista de entidades que han utilizado estas técnicas, definiendo una

curva creciente exponencialmente.

Page 126: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 116

3.7 ALTERNATIVAS TECNOLÓGICAS

En el ámbito de la Realidad Aumentada existen varias herramientas de software que

facilitan la construcción de aplicaciones. Sin embargo, para sacar el máximo partido a la

tecnología, es necesario dominar ciertos conceptos teóricos y de representación gráfica. La

mayoría de estos sistemas están destinados a programadores con experiencia en desarrollo

gráfico. A continuación se mencionarán algunas de las bibliotecas más populares:

ARToolKit. Es la biblioteca más popular de Realidad Aumentada. Con interfaz

en C y licencia libre permite desarrollar fácilmente aplicaciones de Realidad

Aumentada. Se basa en marcadores cuadrados de color negro.

ARTag. Es otra biblioteca con interfaz en C. Está inspirado en ARToolKit. El

proyecto se dejó de desarrollar en el 2008, aunque es posible todavía hacerse con

el código fuente. El sistema de detección de marcas es mucho más robusto que el

de ARToolKit.

OSGART. Biblioteca en C++ que permite utilizar varias librerías de tracking

(como ARToolKit, SSTT o Bazar).

FLARToolKit. Implementación para Web (basada en Flash y ActionScript) del

ARToolKit portado a Java NyARToolKit.

Otros ports de ARToolKit. Existen muchas de versiones de ARToolKit

portados en diferentes plataformas, como AndAR (para teléfonos Android),

SLARToolkit, etc.

Page 127: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 117

Capítulo 4

4 DISPOSITIVOS Y TÉCNICAS DE DETECCIÓN

Y RECONOCIMIENTO DE GESTOS

Existen actualmente múltiples técnicas y dispositivos que permiten la detección y el

reconocimiento de gestos, los cuales en un principio fueron desarrollados en su mayoría para

utilizarlos en videojuegos pero que actualmente han expandido sus áreas de aplicación a

múltiples ámbitos como la educación, la medicina, el comercio y otros. En este capítulo se hará

una descripción y una comparación de los más relevantes.

Page 128: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 118

4.1 PRIMEROS DISPOSITIVOS Y TÉCNICAS DE DETECCIÓN DE

GESTOS

4.1.1 EL LÁPIZ

Este dispositivo consiste en un objeto punzante que se conecta a la PC. Principalmente

se utiliza para seleccionar objetos en la pantalla o para realizar algún trazado. En un extremo

suele tener un botón para realizar la selección del objeto. Son más intuitivos que los ratones

(mouse), su ámbito de aplicación es también más reducido.

El lápiz tiene un fotodetector en la punta el cual que detecta la luz emitida desde el píxel

donde se posiciona sobre la pantalla. Al pulsar un botón, como está conectado al circuito de

barrido de la pantalla, se puede determinar las coordenadas de la pantalla sobre las que está

apoyado el lápiz cuando se detecta el refresco del píxel.

Figura 4-1 – Ejemplo de lápiz óptico

La primera ventaja del lápiz no es su habilidad para escribir, sino su habilidad para

apuntar, para manipular la interfaz sin necesidad de una superficie donde poner el dispositivo. El

Page 129: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 119

lápiz permite movilidad y ésta abre nuevas perspectivas a la interacción con los ordenadores.

Cualquier usuario que recoge información mientras camina, por ejemplo, es un candidato para el

uso de ordenadores con lápiz. Lápiz, ratón, teclado y voz coexistirán en la computadora sin el

predominio de ninguno. El dispositivo se seleccionará basado en aplicaciones y preferencias

personales.

Un digitalizador es una reja plana, capaz de generar coordenadas x, y cuando un lápiz se

sitúa encima o muy cerca. Un lápiz está cerca cuando el digitalizador es capaz de detectarlo.

El lápiz produce una interrupción y la tinta digital aparecerá en el caso en que una región

en que una aplicación acepta le escritura, tal como un campo de datos, los drivers del dispositivo

de vídeo hacen aparecer la tinta digital en la pantalla. Por el contrario, si el lápiz toca un control

como un botón, que no espera escritura o comandos de gestos, no se genera tinta. En este caso la

aplicación reconoce al lápiz como un dispositivo apuntador.

Uno de los primeros ejemplos surgió en 1963, cuando se presentó por parte de

Sutherland su trabajo PhD en SketchPad. El mismo consistía en un lápiz luminoso (un

predecesor del mouse) que controla los objetos en la pantalla y, tal como lo hace el mouse, los

comandos de entrada eran mediante toques. Estos toques también usaban como entrada el lápiz

para utilizar comandos de acceso rápido, siendo este uno de los estilos de gestos más antiguo y

comúnmente usado.

Figura 4-2 - SketchPad (1963)

Page 130: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 120

4.1.2 PANTALLAS TÁCTILES

Las pantallas táctiles pueden imitar interacciones similares a las del ya conocido mouse

y el lápiz mencionado anteriormente, pero sumaron algunos beneficios al permitir dichas

interacciones utilizando las manos y los dedos.

En la actualidad, los sensores táctiles se encuentran en las tablets y smartphones, y es la

principal forma de interacción que se tiene con ellos.

Los gestos típicos de este tipo de entradas, involucran movimiento de las manos o toques

para manipular objetos o ejecutar comandos.

Las pantallas táctiles permiten al usuario apuntar y seleccionar objetos en la pantalla

utilizando el dedo, y por tanto son mucho más directas que el ratón (son, a la vez, entrada y

salida).

Figura 4-3 - Interacción por medio de pantalla táctil

Las hay de diferentes tipos, con matrices de haz de luz que el dedo interrumpe, por

cambios en las capacidades de una reja superpuesta en la pantalla o por reflexiones ultrasónicas.

El usuario indica exactamente el ítem que quiere apuntando con el dedo, por esto es un

dispositivo directo que no requiere una asociación para relacionarlos.

Page 131: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 121

La pantalla táctil es especialmente interesante porque no precisa de un dispositivo

apuntador y por tanto es muy intuitiva. Una de las aplicaciones más importantes es para

terminales de uso para gran público (llamados Kiosk, los cuales se detallarán más adelante).

Las ventajas de las pantallas táctiles son, su gran facilidad de aprendizaje, el hecho de

que no requieran espacio adicional, y son durables.

Con respecto a sus desventajas, se aprecia que usar el dedo puede dejar marcas en la

pantalla, pero quizá el principal problema sea la poca precisión en determinadas tareas como el

dibujo.

Ejemplo de uso de las pantallas táctiles:

Kiosk. Denominadas terminales de autoconsulta. Son pantallas táctiles colocadas

en lugares públicos para proveer determinada información o conexión a internet

pública. Por ejemplo, en los aeropuertos dicha pantalla provee información sobre

el estado de los vuelos.

Aplicaciones donde es conveniente que el usuario no interactúe con otros

dispositivos de entrada/salida. Por ejempl,o en el control de tráfico aéreo que el

operador no tenga necesidad de apartar la mirada de la pantalla

A continuación se verá la tecnología multitáctil, la cual incluye la posibilidad de que

múltiples usuarios interactúen con el sistema.

4.1.3 SISTEMAS MULTITÁCTILES

Los sistemas multitáctiles son un conjunto de técnicas de interacción que permiten a uno

o más usuarios controlar aplicaciones gráficas con varios dedos/manos simultáneamente. Los

dispositivos multitáctiles permiten que la interacción con el usuario sea natural, intuitiva y

contextual, ya que con ellos se interactúa como se lo hace diariamente: con gestos.

Para que estos sistemas funcionen se necesita un hardware apropiado, que posea las

adecuadas características tecnológicas, físicas y de procesamiento de modo que permita la

Page 132: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 122

detección simultánea de diferentes puntos de contacto, así como también, un software adecuado

para detectar y reconocer los gestos.

Actualmente, hay diferentes tecnologías (algunas ya nombradas y otras que se

describirán a continuación) que permiten la construcción de un sistema multitáctil estable, como

por ejemplo los dispositivos capacitivos, resistivos, de ondas acústicas, laser y los dispositivos

basados en técnicas ópticas y visión artificial (las mismas se verán más adelante en el presente

capítulo).

La interacción natural con el usuario basada en técnicas multitáctiles es un mecanismo

muy adecuado para diseñar una interfaz gestual, ya que se basa en objetos y por lo tanto no

necesita la abstracción entre el mundo real y la aplicación, tal como sucede con los sistemas

WIMP (Windows, Icons, Menu and Pointer device). Un buen ejemplo son los gestos populares

para escalar, rotar y trasladar imágenes con dos dedos.

Si hablamos de hardware, hoy en día las tablets y los teléfonos inteligentes con pantalla

multitáctil son los dispositivos que han difundido enormemente la utilización de estas

tecnologías.

Figura 4-4 – Tablet multitáctil

4.1.3.1 Pantallas capacitivas

Por su tecnología, las pantallas capacitivas necesitan ser manejadas mediante el dedo o

un objeto que disponga de capacitancia. Por otro lado, pueden detectar varias pulsaciones

Page 133: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 123

simultáneas o gestos, lo que permite diversas formas de actuar con ellas, aumentando su

capacidad para ser controladas. Las pulsaciones o gestos no requieren presión, basta con deslizar

el dedo para controlar la pantalla del dispositivo. Al ser utilizadas directamente con el dedo, sin

objetos intermedios, y no ser necesario ejercer ninguna presión, la experiencia para el usuario al

manejar este tipo de pantallas es más natural. La impresión es de rapidez, de inmediatez, siempre

que el sistema operativo y el programa que estemos manejando estén bien diseñados. También

tienen sus limitaciones. Tener que usar los dedos y no detectar la presión limitan las posibilidades

del software.

En definitiva, son durables y resistentes, de respuesta rápida, poseen un buen brillo y

funcionan con los dedos (Xataka Movil, 2009).

Figura 4-5 - Estructura de pantalla capacitiva

Page 134: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 124

Figura 4-6 - Ejemplo funcionamiento del multitactil del iPod

4.1.3.2 Pantallas resistivas

Las pantallas resistivas están formadas por varias capas. Cuando presionamos sobre la

pantalla, hay dos capas que entran en contacto, se produce un cambio en la corriente eléctrica y se

detecta la pulsación. Además de su precio, la mejor resistencia al polvo o al agua ha contribuido a

su popularidad. Sin embargo, el uso de múltiples capas hace que su brillo se reduzca en,

aproximadamente, un 25 por ciento. Pueden usarse con los dedos, y los objetos afilados pueden

rayarlas.

La necesidad de ejercer presión en una pantalla resistiva implica una experiencia de

usuario diferente. Debido a ello, la respuesta del móvil parece menos intuitiva, más lenta, y por lo

tanto, menos natural. Si además el software no está creado para usarse con el dedo, tener que

utilizar un objeto intermedio nos distancia aún más del dispositivo. En realidad esto es sólo

aparente. Uno de los problemas de diseño del Nokia 5800 fue establecer el tiempo necesario para

considerar que se había pulsado sobre la pantalla resistiva. Finalmente se fijó en 0,45 segundos.

Se puede hacer un programa que establezca un tiempo menor, pero se corre el riesgo de que la

respuesta sea demasiado rápida para ser usado (Xataka Movil, 2009).

Page 135: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 125

Las pantallas resistivas son de bajo costo, se activan con cualquier objeto por presión y

son mucho menos claras (brillosas) que las capacitivas.

Figura 4-7 - Estructura de la pantalla resistiva

4.1.3.3 Dispositivos de ondas acústicas (SAW)

Los dispositivos SAW se usan en componentes electrónicos para proporcionar una serie

de funciones diferentes, incluyendo líneas de retardo, filtros, y convertidores AC a DC.

Los dispositivos electrónicos que emplean SAW, utilizan normalmente uno o más

traductores interdigitales (micrófonos y parlantes) para convertir ondas acústicas en señales

eléctricas y viceversa mediante la explotación del efecto piezoeléctrico (polarización de cargas en

la superficie del material, producida por tensiones mecánicas) de ciertos materiales. Estos

dispositivos se fabrican mediante fotolitografía, el proceso utilizado en la fabricación de circuitos

integrados de silicio.

Page 136: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 126

Los Filtros SAW son ahora utilizados en los teléfonos móviles, y ofrecen ventajas

significativas en el rendimiento, costo y tamaño sobre otras tecnologías de filtración, como

cristales de cuarzo, filtros LC, y los filtros de guía de ondas.

Muchas investigaciones se han hecho en los últimos 20 años en el área de los sensores

de ondas acústicas de superficie. La aplicación de estos sensores incluyen todas las áreas de

detección, los sensores SAW han tenido un éxito comercial relativamente modesto hasta la fecha,

pero son comúnmente disponibles en el mercado para algunas aplicaciones como las pantallas

táctiles (Centro de Artigo, 2012).

Estos dispositivos son durables, tienen una claridad óptica máxima, un alto costo y

pueden ser activadas con guantes, dedos u objetos suaves.

Figura 4-8 – Diagrama de Dispositivo de Ondas Acústicas (SAW)

Page 137: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 127

4.1.3.4 Técnicas Ópticas para sistemas multitáctiles

Como ya se ha visto precedentemente, existen muchas maneras de crear una superficie

multitáctil. En esta sección se explicarán las técnicas ópticas, las cuales son las más económicas y

fáciles de implementar.

Las técnicas ópticas siguen un circuito de dos o más sensores situados alrededor de una

pantalla (habitualmente en las esquinas). Cuando el usuario toca sobre la pantalla, la sombra que

se provoca es captada por los sensores, los cuales triangulan la posición para reconocer las

coordenadas y de esta manera el usuario interactúa con dicha pantalla.

Las mismas se valen de un sensor óptico (habitualmente una cámara), fuentes de luz

infrarroja y un feedback (retroalimentación) visual con LCD o proyectores, para lograr su

objetivo.

Los infrarrojos (IR) son una parte del espectro de luz justo por encima de las longitudes

de onda visibles para los ojos, pero menores que las microondas (entre 700 y 1000 nanómetros).

La luz infrarroja permite ver los dedos y los objetos que se sitúan encima de la pantalla

sin que afecte a la proyección de las imágenes. Se necesita una fuente de luz infrarroja para

iluminar los objetos (por ejemplo LEDs infrarrojos). Las cámaras infrarrojas son costosas, pero

pueden utilizarse webcams si se elimina el filtro que incorporan.

La resolución de la cámara puede ser de 320x240 (pixels) si la superficie es pequeña, si

no deberá ser mayor, aunque es más importante tener un valor elevado de imágenes por segundo

(fps – Trames por segundo) que permita captar movimientos rápidos. La interfaz de conexión

puede ser USB o IEEE 1394 (Freire).

El ejemplo de uso más claro de este tipo de técnicas son las mesas multitáctiles, la cuales

consisten en una mesa, con una pantalla (generalmente LCD) interactiva en su superficie y un

procesador y proyector debajo. El usuario con sus movimientos, puede interactuar con los objetos

en la pantalla y así realizar múltiples tareas, como ver y editar fotos, navegar por internet,

proyectar videos, etc.

Page 138: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 128

Figura 4-9 – Mesa multitáctil

A continuación se describirán las tecnologías que se pueden utilizar para aplicar estas

técnicas.

FTIR (Frutation Total Internal Reflection – Reflexión Interna Total Frustrada)

La reflexión interna total es un fenómeno que ocurre cuando la luz entra en un material,

procedente de otro, con un índice de refracción mayor, y a un ángulo de incidencia adecuado

(dependiendo de los índices de refracción de los dos materiales, el cual puede calcularse según la

ley de Snell). Cuando este fenómeno ocurre, no hay refracción y la luz se refleja en su totalidad.

La reflexión interna total frustrada se utiliza, además, en las fibras ópticas para conducir

la luz a través de la fibra sin pérdidas de energía. En una fibra óptica, el material interno tiene un

índice de refracción más grande que el material que lo rodea. El ángulo de la incidencia de la luz

es crítico para la base y su revestimiento, y es allí donde se produce una reflexión interna total

que preserva la energía transportada por la fibra.

Page 139: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 129

Figura 4-10 – Detección de interacción con FTIR

Figura 4-11 – Reflexión Interna Total Frustrada

DI (Diffused Illumination, Rear or Frontal – Iluminación Difusa, Trasera o

Frontal)

La iluminación difusa puede ser frontal o trasera. Ambas técnicas se basan en los

mismos principios básicos: el contraste entre la imagen y los dedos que tocan la superficie. En la

frontal, la luz procede del ambiente y se coloca un difusor sobre la superficie. Cuando un objeto

la toca se crea una sombra que la cámara puede detectar.

Page 140: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 130

En la trasera, una luz infrarroja se utiliza para iluminar la pantalla. Cuando un objeto toca la

superficie esta refleja más luz que el difusor, y la cámara detecta esa luz adicional. En este caso,

el principal problema es conseguir una iluminación homogénea en toda la superficie.

Figura 4-12 – Detección de interacción con DI Frontal

Figura 4-13 – Detección de interacción con DI Trasera

Figura 4-14 - ID – Iluminación trasera

Page 141: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 131

Figura 4-15 - ID – Iluminación frontal

LLP (Laser Light Plan – Plano de Luz Láser)

En esta técnica se ilumina la parte superior de la superficie con un láser (de 1 mm de

espesor) y cuando el dedo se acerca, se registra la iluminación del mismo y es detectado por la

cámara infrarroja debajo de la superficie. Debe tenerse en cuenta la seguridad puesto que los láser

son dañinos para la vista. Los láser visibles pueden detectarse y evitarse pero los de infrarrojos no

se ven y pueden resultar mucho más dañinos.

Page 142: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 132

Figura 4-16 - Detección de interacción con Láser LP

Figura 4-17 – Plano de luz laser

LED – LP (LED Light Plane – Plano de Luz con LED)

Esta técnica es similar a la anteriormente descripta, ya que también se crea un plano de

luz sobre la superficie, solo que en vez de lásers (como en Láser LP), se usan LEDs. Los LEDs

son posicionados sobre la superficie táctil para crear un plano de luz. Cuando el dedo toca el

plano de luz creado, se ilumina y son detectados por la cámara debajo de la superficie. Es

únicamente recomendable en caso de utilizarse con una pantalla LCD.

Page 143: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 133

Figura 4-18 - Detección de interacción con LED LP

Figura 4-19 - Plano de luz con LED

DSI (Diffused Surface Illumination – Iluminación Difusa de la Superficie)

La técnica DSI es parecida a la técnica FTIR ya que una luz infrarroja se ubica un panel

de acrílico dirigido hacia adentro. Es un acrílico especial con pequeñas partículas dentro, que

actúan como muchos espejos pequeños, y se usan para distribuir la luz infrarroja. Cuando un

dedo toca el difusor, se ilumina por la luz infrarroja, y es detectado por una cámara infrarroja

ubicada debajo de la superficie.

Page 144: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 134

Figura 4-20 - Detección de interacción con DSI

Figura 4-21 - Iluminación Difusa de la Superficie

Comparación de las técnicas ópticas

A continuación se muestra una tabla comparativa entre las distintas técnicas ópticas que

se pueden utilizar para construir superficies multitáctiles, dando a conocer las ventajas y

desventajas de cada una de ellas.

Page 145: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 135

Tabla 4-1 - Tabla donde se analizan ventajas y desventajas de cada una de las técnicas ópticas

Técnica

óptica

Ventajas Desventajas

FTIR

(Reflexión

Interna Total

Frustrada

No necesita una caja cerrada.

Se puede controlar la presión.

Con una superficie de silicona pueden

usarse punteros.

Precisa una superficie “especial” para

garantizar el contacto.

No puede reconocer objetos.

Iluminación

Difusa

Frontal

No necesita una superficie especial.

Puede utilizarse cualquier material

transparente.

No se necesita una malla de LEDs.

Sencillo de implementar.

No necesita caja.

La iluminación homogénea es difícil de

conseguir.

No puede detectar objetos ni fiduciales

(marcas que tienen las plaquetas de

circuitos eléctricos en las esquinas).

Tiene más posibilidades de detectar falsos

contactos.

Depende de la iluminación ambiental.

Iluminación

Difusa

Trasera

No necesita una superficie especial.

Puede utilizarse cualquier material

transparente.

No necesita una matriz de LED.

Puede detectar cualquier objeto.

La iluminación homogénea es difícil de

conseguir.

Los blobs tienen poco contraste.

Puede haber falsas detecciones.

Necesita una caja cerrada.

Page 146: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 136

Láser LP

(Plano de

Luz Láser)

No necesita una superficie especial.

Puede usarse cualquier material

transparente.

No se necesita una matriz de LEDs.

Fácil de implementar.

No necesita caja.

No puede detectar objetos.

No pueden detectarse cambios en la

presión.

Los dedos pueden taparse entre sí.

LED LP

(Plano de

Luz LED)

No necesita una superficie especial.

No necesita marco para los LEDs.

No necesita caja.

Barato.

Pueden detectarse objetos cuando se

acercan.

No detecta objetos en la superficie.

Necesita matriz de LEDs.

DSI

(Iluminación

Difusa de la

Superficie

No necesita una superficie especial

Puede detectar objetos

Sensitivo a la presión

iluminación homogénea

Superficies especiales más costosas y

flexibles

Menor contraste

Limitación de las dimensiones

4.1.3.5 Técnicas de visualización

Para la retroalimentación visual lo más habitual es la utilización de proyectores, aunque

cualquier dispositivo de visualización puede funcionar (OLED – diodo orgánico de emisión de

luz -, LCD, etc.). Los proyectores son los que proporcionan las imágenes más grandes a menor

costo. Hay dos grandes tipos de proyectores: LCD y DLP.

Page 147: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 137

Proyectores LCD

Los proyectores LCD (Liquid Crystal Display), son una matriz de puntos que se activan

y desactivan con la misma tecnología que una pantalla plana. Tienen tres paneles LCD separados

(RGB, a color) y la luz pasa por los paneles a través de los píxeles activados.

Ventajas

Son más eficientes (con los mismos vatios se obtienen imágenes más brillantes).

Muestran los colores más saturados (una imagen LCD es de mayor calidad).

Imágenes más enfocadas.

Inconvenientes

Imágenes más pixeladas.

Más voluminosos.

Pueden aparecer píxeles muertos.

Tienen más circuitería y por lo tanto son más propensos a fallos.

Figura 4-22 - Estructura de un proyector LCD

Page 148: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 138

Proyector DLP

Los proyectores DLP (Digital Light Processing) utilizan un semiconductor óptico o

DMD (Digital Micromirror Device - microespejos). Los microespejos pueden orientarse (+-12º)

para ajustar el nivel de gris.

Ventajas

Los píxeles están mucho más cercanos, menos pixelación e imágenes más suaves

para el video.

Se puede conseguir un mejor contraste (el mejor negro).

Menos componentes.

Mayor duración.

Inconvenientes

Menor saturación del color.

Efecto “arcoíris”, flash momentáneo con los objetos brillantes que algunas

personas pueden ver (se ha pasado de 4 segmentos a 6 en la rueda de colores para

reducir este efecto).

Efecto “halo” o banda gris alrededor de la imagen.

Figura 4-23 - Estructura de proyector DLP

Page 149: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 139

Figura 4-24 - Comparación imagen de proyectores

4.1.4 Sensores electrónicos - En el cuerpo o ropa

En este acápite se analizarán los dispositivos de detección de gestos que han hecho uso

de tecnología electrónica o electromagnética para lograr tal cometido. Dicha tecnología consiste

en sensores colocados sobre el cuerpo de la persona o sobre prendas de vestir (por ejemplo

guantes), los cuales, por las reacciones electrónicas provocadas por el movimiento de las partes

del cuerpo, logran detectar dichos movimientos e interpretarlos como gestos.

Bolt en el año 1980, utilizó por primera vez sensores electrónicos como uno de los

primeros métodos para reconocer gestos con las manos y los brazos detectando el espacio, la

posición y orientación a través de sensores electromagnéticos. Estos sensores se colocaban en la

muñeca del usuario para detectar las coordenadas x, y, z del brazo mientras este se movía por el

espacio, de esa manera se detectaba un gesto para interactuar con una pantalla.

Más recientemente, Roy en 1994 y Osawa en el 2000, utilizaron sensores para detectar

movimientos en interfaces adaptativas, y así el usuario podía navegar a través de entornos

virtuales. Estos sensores son también utilizados en dispositivos que se pueden usar en el cuerpo,

tales como cascos, guantes, etc. Sin embargo, son caros, incómodos para usar y difíciles de

implementar para el uso diario.

Page 150: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 140

4.1.4.1 Sensores electrónicos - Guantes

Las interfaces que utilizan sólo gestos con las manos, con una sintaxis amplia de ellos

(es decir, que existe una fuerte conexión entre varios gestos que afectan el sentido general de lo

que se quiere transmitir), requieren un seguimiento preciso de la posición en la que se encuentran

las manos. Una de las técnicas más comunes es utilizar un guante que cuenta con varios sensores

que detectan y brindan la información de la posición en la cual se encuentra la mano, la

orientación de la misma y la posición de los dedos.

El primer guante con estas características que se lanzó al mercado fue el DataGlove, el

cual utilizaba cables de fibra óptica detrás de cada mano, cada cable tenía una pequeña grieta.

Entonces, la luz iluminaba el cable de manera tal que cuando los dedos estaban doblados la luz

salía a través de las grietas. De esta forma, midiendo la pérdida de luz, daba una lectura acertada

de la posición de la mano. La precisión del DataGlove podía medir cada curva con precisión de 5

a 10 grados, pero no así los movimientos hacia los costados de los dedos (sólo su flexión).

El Cyberglove fue otro de los guantes con similares características, sólo que utilizaba

medidores de tensión ubicados entre cada uno de los dedos, para medir la abducción de los

mismos (movimientos hacia los costados) y su flexión con mayor precisión.

Desde la aparición de estos dos guantes, se han diseñado varios dispositivos de entrada

basados en dichos guantes los cuales no serán descriptos en la presente.

Lo que anteriormente se señaló, es la manera en que un dispositivo (en este caso el

guante) captura los datos de la posición de las manos, pero eso no significa que se ha detectado

un gesto. Una vez que dichos datos fueron capturados, los gestos pueden ser reconocidos

utilizando diferentes técnicas. Dos métodos utilizados comúnmente para estos fines son las Redes

Neuronales o el análisis de plantillas estadísticas, las cuales alcanzan una precisión de más del

95%. Las Redes Neuronales Dependientes del Tiempo también se pueden utilizar para el

reconocimiento de gestos dinámicos, aunque para esto, el enfoque más usado es el de los

modelos ocultos de Markov. Este método también se puede utilizar para segmentar de forma

interactiva los gestos que detecta el guante, en gestos individuales para el aprendizaje (lo que se

Page 151: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 141

llama entrenamiento) en línea de nuevos gestos. En estos casos los gestos son reconocidos

usando plantillas pre entrenadas, pero los guantes también pueden ser utilizados para identificar

gestos naturales o no entrenados (o sea, sin previo aprendizaje).

Si bien los guantes que se han implementado y que ya se han nombrado anteriormente

son muy precisos, son caros y molestos para el usuario cuando se utilizan por un largo período de

tiempo, por ende, en esos casos, pueden utilizarse las técnicas de visión por computadora (técnica

que se describirá más adelante) para el reconocimiento de gestos y superar dichas limitaciones.

Asimismo, los sistemas basados en visión resultan más naturales que los guantes, y son capaces

de lograr un excelente seguimiento del cuerpo y las manos, pero pierden precisión a la hora de

determinar su posición. Por supuesto que estos factores dependen del tipo de aplicación que se

pretende implementar.

A modo de ejemplo, se pueden puntualizar algunas limitaciones para el seguimiento

visual basado en imágenes con respecto al seguimiento de las manos:

Los 30 o 60 marcos por segundo de la tecnología convencional de video no son

suficientes para capturar un movimiento rápido de las manos.

Los dedos son difíciles de seguir cuando se ocultan unos a otros, o bien cuando

son ocultados por la mano.

Hay dos maneras diferentes de implementar el reconocimiento de gestos basado en

visión, una es el modelo basado en las técnicas que intentan crear un modelo de tres dimensiones

de la mano del usuario y utilizan ese modelo para el reconocimiento del gesto, y otra es la técnica

basada en imágenes, la cual utiliza una imagen de la mano y genera funciones de reconocimiento

directamente sobre ella.

Existen múltiples de estos dispositivos en el mercado, como por ejemplo los Z-Glove y

los DataGlove, y fueron uno de los primeros en implementar gestos. Estos guantes introdujeron

una detección detallada de cada dedo de manera individual y movimientos de la mano para

permitir gestos más complejos. El Z-Glove, por ejemplo, consiste en un guante de algodón el cual

Page 152: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 142

posee sensores que pueden detectar la posición y orientación de los dedos, utilizando un

mecanismo de vibración para dar al usuario una retroalimentación táctil.

Figura 4-25 - DataGlove

4.1.5 SENSORES ELECTRÓNICOS - OBJETOS CON SENSORES E INTERFACES

TANGIBLES

Los objetos son manipulables por los usuarios y tienen algún tipo de sensor que

permiten convertir su manipulación en gestos o acciones.

La manipulación de objetos mediante sensores es considerada como gestual, esto es, una

interfaz tangible donde los gestos son interpretados a través de la manipulación física de estos

objetos. Algunos investigadores consideran la manipulación de objetos como una entrada de un

gesto.

Page 153: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 143

Figura 4-26 – Reactable: Instrumento musical electrónico dotado de una interfaz tangible e inspirado en los

sintetizadores modulares de los años 60.

4.1.6 SENSORES ELECTRÓNICOS – DISPOSITIVOS INFRARROJOS

La entrada de gestos también se puede detectar utilizando dispositivos infrarrojos. Los

rayos infrarrojos son detectados por dispositivos de tracking (seguimiento) y sus movimientos

convertidos en gestos. Se necesitan emisores y receptores. El haz de luz infrarrojo permite un

seguimiento más preciso de una cámara, lo que permite un reconocimiento más confiable del

gesto. Algunas de las aplicaciones adicionales para el seguimiento de gestos a través de rayos

infrarrojos, incluyen interacciones con habitaciones inteligentes para identificar y controlar

electrodomésticos y otros dispositivos, mediante gestos que realizan funciones similares a las de

un control remoto.

4.1.7 VISIÓN POR COMPUTADORA O VISIÓN ARTIFICIAL

En la visión por computadora (o visión artificial), la interacción se basa en la obtención

de imágenes del usuario (fijas o continuas) a partir de una o varias cámaras y su posterior análisis

y reconocimiento de los gestos.

Page 154: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 144

Se puede definir la visión artificial, como un campo de la “Inteligencia Artificial” que,

mediante la utilización de las técnicas adecuadas, permite la obtención, el procesamiento y

análisis de cualquier tipo de información especial obtenida a través de imágenes digitales.

La visión artificial o visión por computadora la componen un conjunto de procesos

destinados a realizar el análisis de imágenes. Estos procesos son: captación de imágenes,

memorización de la información e interpretación de los resultados.

Figura 4-27 - Diagrama de un sistema de visión artificial

Módulo de digitalización. Convierte la señal analógica proporcionada por la

cámara a una señal digital (para su posterior procesamiento).

Memoria de imagen. Almacena la señal procedente del módulo de

digitalización.

Módulo de visualización. Convierte la señal digital residente en memoria, en

señal de vídeo analógica para poder ser visualizada en el monitor.

Page 155: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 145

Procesador de imagen. Procesa e interpreta las imágenes captadas por la

cámara.

Módulo de entradas/salidas. Gestiona la entrada de sincronismo de captación

de imagen y las salidas de control que actúan sobre dispositivos externos, en

función del resultado de la inspección.

Comunicaciones. Vía I/O, Ethernet, RS232 (la más estándar). (ETI Tudela)

Uno de los primeros ejemplos de visión artificial es el VideoPlace (1985), el cual

utilizaba un proyector para representar la imagen del usuario en una pantalla en la pared junto

con un entorno de realidad virtual, este mismo método de superponer la imagen del usuario

también la utilizó el sistema FaceSpace (2004).

Como la visión por computadora no es una técnica de entrada directa, no posee un gran

nivel de precisión cuando se quiere detectar movimientos complejos u objetos. Los objetos

pasivos se representan con un color más brilloso, y se utilizan para incrementar la visión, de todas

maneras, este problema de precisión es uno de los que se encuentran primeros en la lista de

investigación en el ámbito de la visión por computadora.

Figura 4-28 - Estructura del VideoPlace

Page 156: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 146

4.1.8 SENSORES REMOTOS

Son utilizados para la detección de presencia, movimiento y presión. Existe una amplia

variedad de dispositivos con sensores remotos que permiten la transmisión de campos eléctricos a

través de la habitación para la interpretación de los gestos. Pueden situarse en las pantallas para

captar el movimiento de los dedos.

Para más información acerca de las técnicas y dispositivos anteriormente detallados se

puede consultar: (Más, Yee, & Larrea, 2012); (Abascal, Aedo, Cañas, & otros, 2001).

Figura 4-29 - Manera en la que el campo eléctrico detecta al usuario.

La figura anterior, muestra un campo bipolar creado entre un electrodo y un campo

receptor virtual es interceptado por la mano. El desplazamiento de la corriente a tierra (IR) se

decrementa cuando la mano se acerca al campo bipolar.

Page 157: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 147

4.2 DISPOSITIVOS DE DETECCIÓN DE GESTOS MODERNOS

4.2.1 WII REMOTE – WII MOTION PLUS

En el año 2006 la compañía de videojuegos Nintendo lanzó al mercado la consola

Nintendo Wii, la cual introdujo una nueva forma de concebir los videojuegos, ya que no sólo se

juega con el control (joystick), si no con el cuerpo y realizando movimientos naturales del ser

humano.

Su principal componente es su control (Wii Remote o Wiimote), el cual será el

encargado de detectar los movimientos que el usuario realiza con su mano, para que luego estos

sean reproducidos en los videojuegos.

Dicho control es una combinación de tecnología de sensibilidad al movimiento con un

sistema para apuntar, que implementa un nivel de interacción que antes era inexistente.

El control también cuenta con un parlante y un amplificador de audio, los cuales

permiten escuchar el audio del juego desde el control. Además cuenta con una memoria de

almacenamiento de hasta 60 Kilobytes de información, posee acelerómetros que graban la

dirección y la fuerza que se aplica al Wii Remote, la señal se transforma de analógica a digital y

se envía por Bluetooth a la consola, este protocolo de comunicación inalámbrico es de corto

alcance que utiliza una banda de 2.4GHz. Tiene un ancho de banda relativamente bajo si se lo

compara con otros protocolos inalámbricos como por ejemplo, Wi-Fi.

También posee un sensor infrarrojo que se utiliza para detectar y convertir las señales

enviadas por la barra de sensores infrarrojos la cual está constituida por dos filas de 5 leds

infrarrojos que el Wii Remote usa para triangular la posición en pantalla.

Page 158: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 148

Figura 4-30 – Wiimote utiliza la triangulación infrarroja (utilizando la barra de sensores y el sensor en el Wii

Remote) para determinar la posición y la transmite via Bluetooth

Los tres acelerómetros con los que viene equipado el control pueden detectar las

aceleraciones con respecto a los ejes de referencia. Además, posee sensores adicionales que le

permiten conocer los movimientos de rotación. A partir de la información obtenida, puede

calcularse la velocidad integrando las aceleraciones y la distancia recorrida por un nuevo proceso

de integración.

Figura 4-31 – Se captura la aceleración en seis grados de libertad

Page 159: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 149

Al principio su sensibilidad al movimiento no era tan eficaz. Luego de la introducción

del Wii Motion Plus, que es un accesorio que agrega al Wii Remote un giroscopio (dispositivo

mecánico que sirve para medir, mantener o cambiar la orientación en el espacio de algún

dispositivo) para complementar al acelerómetro, la detección del movimiento mejoró en gran

medida. Finalmente, Nintendo sacó a la venta el Wii Remote Plus, que no es nada menos que el

Wii Remote con la tecnología del Remote Plus incorporada, lo que permitió no tener que adquirir

el accesorio por separado. Aun así, hoy día es el dispositivo con menor precisión de detección del

movimiento de los que se mencionan en la presente.

En resumen, el Wii Motion Plus es una expansión del Wii Remote original del Wii que

permite capturar movimientos complejos con una mayor precisión. El sensor del Wii Motion Plus

mejora las capacidades de capturar el movimiento del control Wii Remote, permitiendo que las

acciones se reflejen en la pantalla en un tiempo aproximado al real.

Figura 4-32 – Wii Remote + Wii Motion Plus. Accesorio con giroscopio agregado al Wii Remote.

4.2.1.1 Proyectos con Wii Remote

Si bien el Wii Remote se puede conectar a la PC vía Bluetooth (siempre que la PC posea

dicha tecnología), Nintendo no ha lanzado un kit de desarrollo para que los programadores

Page 160: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 150

puedan crear aplicaciones utilizando el Wii Remote. Sin embargo se han realizado proyectos

utilizando la tecnología Bluetooth e infrarrojo que posee, además de algunos frameworks no

oficiales.

Pizarras interactivas multitáctil de bajo costo

Este proyecto está desarrollado por Johnny Chung Lee, en el cual se utiliza el Wii

Remote para rastrear lapiceras que tienen un LED infrarrojo en la punta (ya que el Wii Remote

puede rastrear las fuentes de rayos infrarrojos). Apuntando un Wiimote a una pantalla de

proyección o a la pantalla LCD, se puede crear pizarras interactivas de muy bajo costo. El Wii

Remote puede rastrear hasta 4 puntos, por lo cual puede reconocer hasta 4 lapiceras.

Figura 4-33 - Ilustración de funcionamiento de la pizarra

Silla de ruedas motorizada

Investigadores de la Universidad de Málaga en España desarrollan un software que

permite utilizar el control de la Wii para desplazar una silla de ruedas motorizada, con ruedas

Page 161: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 151

omnidireccionales, es decir, que permiten el desplazamiento horizontal. Este proyecto está

diseñado para personas con movilidad reducida, el control simplifica el sistema, porque hay

usuarios que tienen reducción de movimiento en un brazo, o su postura no le permite utilizar el

joystick de la silla. El sistema se compone de una silla motorizada que lleva incorporada una

notebook pequeña. Por medio un protocolo, la notebook se encarga de pasar los comandos a la

plataforma de los motores de la silla. El control se conecta con la notebook por medio de

bluetooth. Se han captado tres movimientos porque el Wii Remote tiene tres ejes, se logró el

desplazamiento hacia delante o hacia atrás, giros a izquierda o derecha, y el movimiento

característico de esta silla, el horizontal. En cuanto al uso de los botones, uno de ellos es para

frenar la silla lo que denominan el botón del pánico, ya que al ser un mecanismo nuevo las

personas pueden asustarse. El control, normalmente, recoge los valores de desplazamiento en

todo momento, aunque en este caso esa prestación está limitada para que el movimiento no se

confunda con temblores o pequeños ataques de los pacientes. El sistema programado también

filtra estos temblores para que no se noten ya que se trata de hacer la vida más fácil. Los

pacientes lo único que deben hacer es encenderlo, conectar el control y moverlo, es muy sencillo

y cualquier persona puede usarlo, según dicen sus creadores. (Durán Rosas, 2009)

Figura 4-34 - Silla de ruedas motorizada

Page 162: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 152

4.2.1.2 Conclusión sobre Nintendo Wii

El lanzamiento de este dispositivo fue una gran revolución no sólo en el mundo de las

consolas y videojuegos, sino en la tecnología y en la forma de interacción usuario/maquina, ya

que logró impulsar el desarrollo de tecnologías que permitan al usuario interactuar naturalmente

mediante gestos con las máquinas. Hay que mencionar, al margen de ello, que es el dispositivo

que tiene la mayor cantidad de juegos soportados, ya que todos los juegos lanzados para la

consola se juegan con gestos.

Por otro lado, amplió la visión de los desarrolladores, diseñadores y empresarios al ver

que no se estaba tan lejos de lograr este tipo de interacción y ello fue clave para el lanzamiento de

dispositivos que mejoraron en gran medida lo que la Wii había logrado.

4.2.2 PLAYSTATION MOVE

Ante la salida al mercado de la Nintendo Wii y el Kinect de Microsoft, Sony, para

competir con dichos dispositivos, lanzó el Move, un sistema de control mediante sensores para su

consola PlayStation 3. Para lograr ello, se vale de un control principal con sensores de

movimiento y una esfera en su extremo que se ilumina para que la cámara (PS Eye) pueda

detectar los movimientos del usuario. Cuando varios controles Move se usan simultáneamente,

cuatro como máximo, se los distingue por el color de su esfera.

Para determinar qué movimientos realiza el usuario, el Move posee distintos tipos de

sensores inerciales. Los acelerómetros son utilizados para realizar un seguimiento de la posición,

la rotación y el cabeceo del control. A diferencia del Wiimote, el Move tiene un giroscopio para

determinar la orientación del mismo y un magnetómetro empleado para determinar el ángulo de

guiño (yaw).

Page 163: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 153

Figura 4-35 – Acelerómetro, giroscopio y magnetómetro incorporados en Move

4.2.2.1 Componentes del PlayStation Move

Los controles del PlayStation Move utilizan una conexión inalámbrica vía Bluetooth, al

igual que sus anteriores controladores convencionales, y una batería que se carga mediante un

puerto Mini – USB. Se pueden utilizar hasta cuatro joystick de PlayStation Move al mismo

tiempo, los cuales cuentan con tres componentes:

Motion controller

Es el control principal del PlayStation Move. Como ya se dijo tiene forma alargada, una

esfera que se ilumina de diferentes colores en su extremo y la cámara PlayStation Eye que detecta

la posición de la esfera en el espacio. Además de ello combina un giroscopio, un acelerómetro y

un sensor magnético (una especie de compas que usa el magnetismo para determinar la

orientación del control) para el seguimiento del control en tres dimensiones.

Figura 4-36 - Motion Controller

Page 164: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 154

Navigation controller

Es el controlador que complementa al Motion controller en algunos juegos. Tiene las

funciones principales que tienen en el lado izquierdo los controles inalámbricos de la PlayStation,

como los botones L1, L2 y L3.

Figura 4-37 - Mitad Izquierda del Joystick de PlayStation + Navigation Controller

PlayStation Eye

Es la cámara mediante la cual se reconocen los controles del PlayStation Move, se

detecta el color del joystick y lee los movimientos de este para que luego se representen en el

juego. Además de esto la cámara es la que se encarga de mostrar al jugador en pantalla. De esa

manera, entra en juego otro factor importante que está haciendo ruido en la industria de los

videojuegos y la tecnología, la realidad aumentada, un concepto que suma a la diversión y la

creatividad. A pesar de ello, la resolución de la cámara es baja (640x480 a 60 Hz o 320x240 a

120Hz) y, si bien no afecta el juego y detecta bien los controles, reduce la calidad de la realidad

aumentada y la calidad en que el jugador se ve en la pantalla.

Page 165: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 155

Figura 4-38 - PlayStation Eye

Con la combinación de estos tres elementos el PlayStation Move se transforma en un

dispositivo con una gran precisión de seguimiento del movimiento en tres dimensiones.

La esfera luminosa en la punta del control, en conjunto con la cámara permite calcular la

posición en el espacio. La cámara busca la iluminación en la punta del joystick, y así obtiene la

posición de los ejes X e Y; luego, con el tamaño de la bola luminosa, puede deducir a qué

distancia está el control de la cámara, y de esta manera se obtiene el eje Z. Por supuesto que la

cámara necesita que dicha esfera lumínica esté frente a ella siempre. Si se aleja el control de la

misma por un lapso, necesitará una re calibración.

Figura 4-39 – Detección de Move: La cámara detecta, mediante la iluminación emitida por la esfera, la posición de

los ejes X e Y, y mediante el tamaño de la esfera respecto de la cámara la posición en el eje Z (mientras más chica,

más lejos está). Todos estos datos se envían a la consola PlayStation 3 mediante bluetooth

Page 166: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 156

De esta manera, el PlayStation Move determina la posición absoluta del jugador,

además, se vale del resto de las tecnologías para calcular casi a la perfección los movimientos que

el usuario realice.

Hay que aclarar que también depende de la implementación y la manera en que esté

desarrollado el juego, en algunos la detección es menos precisa que en otros.

4.2.2.2 Proyectos con PlayStation Move

PlayStation Move no tiene un SDK oficial (Software Development Kit) para desarrollar

aplicaciones para PC. Pero existen frameworks, librerías y drivers que permiten obtener y

manipular los datos que genera la detección del Move.

PS Move API

Es una librería open source para Linux, Mac OS X y Windows para acceder al control

del Move vía Bluetooth y USB directamente desde la PC. Permite realizar aplicaciones para

utilizar el control como mouse o teclado de la computadora, apuntar la cámara hacia la pantalla y

utilizarla como un pizarrón interactivo, entre otras.

MoveFramework

Es un framework desarrollado para utilizar la información de detección en tiempo real,

además permite integrar todas las posibilidades de detección de movimiento en las aplicaciones y

juegos. Si no es utilizado por un programador, también se puede instalar la aplicación joyEmu

para utilizar el Move en los videojuegos. Está desarrollado en C++ pero existen SDK para

programadores especialistas en C#.

4.2.2.3 Conclusión sobre PlayStation Move

En resumen, el PlayStation Move, no es ninguna revolución, sino que es una mejora del

desarrollo que lanzó Nintendo con la Wii, por supuesto que el Move está mucho mejor trabajado

y diseñado por haber salido 4 años más tarde.

Page 167: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 157

Una de las contras del PlayStation Move, además de las ya mencionadas, es que no

exista un kit de desarrollo oficial para que los programadores puedan utilizar la tecnología de este

dispositivo en sus aplicaciones o proyectos que involucren interfaces gestuales.

4.2.3 MICROSOFT KINECT

En el marco del mercado inaugurado por Nintendo con la Wii, Microsoft lanzó

oficialmente el 4 de noviembre de 2010, su dispositivo de detección y reconocimiento de gestos

para los videojuegos de su consola Xbox 360 llamado Kinect.

Luego de su lanzamiento oficial, Kinect resultó ser una enorme revolución en el mundo

tecnológico, ya que, como se verá más adelante, no necesita de ningún control o joystick para el

reconocimiento. Además, es capaz de reconocer múltiples partes del cuerpo, la voz e incluso la

cara.

Figura 2.3.1: Microsoft Kinect

4.2.3.1 Componentes de Kinect

El dispositivo en sí es una barra de 23 centímetros con una pequeña base circular que

gira sobre sí misma, y fue diseñado para colocarse por encima o por debajo de la televisión o de

la pantalla donde se proyecte el video.

Kinect posee una cámara RGB (es decir, a color, con calidad VGA), un sensor de

profundidad (que consta de un proyector infrarrojo que ilumina al usuario y una cámara infrarroja

que detecta dicha iluminación), un micrófono de múltiples matrices y un procesador

personalizado que será el encargado de ejecutar el software patentado que es el que proporciona

Page 168: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 158

la captura de movimiento de todo el cuerpo en 3D (junto con el sensor de profundidad), el

reconocimiento facial y de voz. Este dispositivo permite reconocer el cuerpo completo de hasta 4

personas.

Por otro lado, Microsoft lanzó un kit de desarrollo más un toolkit con herramientas que

posee ejemplos de código abierto para los desarrolladores. Eso provocó que el ámbito de Kinect

no solo se limite a ser un dispositivo para videojuegos, sino que su potencial se utilice en

medicina, deportes, educación, etc.

Tanto la tecnología hardware como software que posee Kinect se desarrollarán con

mayor profundidad y detalle en el siguiente capítulo.

Figura 4-40 - Partes del Kinect

4.2.3.2 Algunos proyectos con Kinect

DepthJS

Es una extensión para el navegador Chrome que permite utilizar el Kinect en lugar del

mouse para navegar entre las pestañas, realizar scrolling o hacer click en enlaces.

Page 169: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 159

Kinect Vestidor Virtual

Permite a los usuarios parase frente a un probador de ropa virtual, seleccionar la ropa y

ver virtualmente cómo le queda la prenda.

Figura 2.3.3: Vestidor Virtual con Kinect

Cirugía Remota

Un robot (llamado Da Vinci) de alta precisión permite que el médico pueda controlarlo

de una manera más intuitiva, sin perder precisión y con la posibilidad de hacerlo remotamente.

Figura 4-41 - Prueba de cirugía remota. En la imagen superior derecha se muestra el médico moviendo sus manos

frente a Kinect para manipular el robot.

Page 170: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 160

4.2.3.3 Conclusiones sobre Kinect

Hay que decir que probablemente Kinect sea el dispositivo más novedoso que existe en

el mercado de la detección de movimiento, sobre todo porque es capaz de detectar múltiples

partes del cuerpo sin la ayuda de ningún control (como sí lo necesitan la Wii y el PlayStation

Move). La tecnología de que la aplicación detecte el movimiento del cuerpo y reproduzca el

mismo a la perfección, Kinect la hace realidad.

La posibilidad para los programadores de contar con un kit de desarrollo gratuito, y un

conjunto de herramientas y ejemplos de código visible oficiales, también es algo que posibilitó el

crecimiento de este dispositivo y su popularidad entre los programadores, diseñadores y otros

especialistas en distintos ámbitos.

Por supuesto que existen puntos negativos como la necesidad de un espacio

medianamente amplio para un correcto funcionamiento del sensor y la imposibilidad de detección

de los dedos individuales de la mano (aunque existen proyectos afines de esto). Otros puntos

fuertes y débiles de Kinect se ampliaran en el capítulo siguiente.

4.2.4 LEAP MOTION

Leap Motion es un sensor que permite controlar la computadora a base de gestos

realizados en el aire. Dichos gestos se pueden realizar tanto con los dedos como con las manos

completas. La tecnología de Leap Motion se comenzó a desarrollar en el año 2008. Luego, en el

año 2010 se anunció el Leap Motion bajo el nombre de “The Leap”, en octubre del 2012 se lanzó

un software de desarrollo, el cual fue distribuido a 12.000 desarrolladores interesados en crear

aplicaciones para el dispositivo (en mayo de 2014 se lanzó una segunda versión de dicho

software). Finalmente, el dispositivo salió oficialmente a la venta en marzo del año 2014.

Page 171: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 161

Figura 4-42 - Leap Motion

4.2.4.1 Componentes del Leap Motion

El Leap Motion es un dispositivo periférico con conectividad USB que está diseñado

para ser ubicado en un escritorio mirando hacia arriba. Utilizando dos cámaras infrarrojas y tres

leds, observa un amplia área a una distancia de aproximadamente un metro. Los leds generan un

patrón de puntos en 3D de luz infrarroja y las cámaras generan casi 300 frames por segundos de

datos, los cuales se transmiten a través del cable USB hacia la computadora, donde se analizan

por el software controlador de Leap Motion (el cual necesariamente debe estar instalado en la

PC) usando matemáticas complejas (no reveladas por la compañía desarrolladora) y se sintetiza la

posición en datos 3D comparando los frames en 2D que generaron las dos cámaras.

Page 172: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 162

Figura 4-43 - Estructura del Leap

Figura 4-44 - Leap por dentro

Como se dijera anteriormente, el Leap Motion necesita de una aplicación controladora

instalada en la computadora para que el mismo pueda funcionar, la misma tiene los drivers y una

plataforma llamada “Airspace” que permite adquirir las aplicaciones para utilizar con el Leap.

Esta plataforma trae, además, unas aplicaciones preinstaladas y aunque existen muchas gratuitas,

la mayoría de ellas son pagas.

Existe una variedad amplia de aplicaciones en el “Airspace” de Leap, como por ejemplo

editores de imágenes, editores de video, programas para realizar modelos en 3D, videojuegos

Page 173: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 163

(desde el famoso Fruit Ninja, hasta el poder jugar una partida de ajedrez contra un robot), una

bandeja de DJ e incluso el diario New York Times y la cadena Weather Channel tienen su

aplicación. Es decir que Leap Motion pueda abarcar y adaptarse a muchos ámbitos, por supuesto

que en algunos de ellos, y dependiendo de la aplicación, lo hará mejor que en otros.

4.2.4.2 Proyectos con Leap Motion

Leap Axlr8r

Es un programa diseñado para desarrolladores, diseñadores y empresarios interesados en

revolucionar la industria utilizando tecnologías basadas en gestos. Este programa está orientado a

brindar ayuda de diseño, acceso a la industria experta en el tema y a ingenieros expertos en el

software y hardware de LEAP, para ayudar a los diseñadores y desarrolladores a transformar e

introducir su producto o idea en un negocio popular a nivel mundial. Estará disponible la

inscripción al mismo a partir de octubre de 2014.

Lotus

Creado por Eddie Lee, Lotus consiste en un conjunto de herramientas musicales

interactivas que permiten al usuario, aprovechando el poder de Leap Motion y de las ya

nombradas herramientas, crear música utilizando gestos. Está desarrollado en C/C++, con

gráficos OpenGL.

Figura 4-45 - Lotus

Page 174: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 164

4.2.4.3 Conclusión sobre Leap Motion

Hoy en día el Leap Motion viene incorporado en varios modelos de notebooks y

netbooks, por lo tanto al ser un dispositivo lanzado al mercado hace meses, dada su alta

tecnología y el lanzamiento de una nueva versión del kit de desarrollo, su popularidad está en

alza y aún puede crecer mucho más.

Sin embargo, hay que resaltar que el dispositivo solo se limita a reconocer la totalidad

del movimiento con las manos o cada uno de los dedos, es decir que sólo detectará los

movimientos que hagamos con dichas extremidades.

Para ahondar conocimientos acerca de los dispositivos mencionados anteriormente, se

puede ver la bibliografía (Mercado Gomez, 2013); (Más, Yee, & Larrea, 2012); (LeapMotion,

2013).

4.2.5 COMPARACIÓN ENTRE LOS DISPOSITIVOS

Ya se ha hecho una descripción de las características, componentes y tecnologías que

poseen de cada uno de los dispositivos de detección de gestos más populares en el mercado. A

continuación, se realizará una comparación entre algunos de ellos, destacando sus puntos fuertes

y débiles.

4.2.5.1 Detección de gestos

En lo que respecta a la detección de gestos, la Nintendo Wii detecta el movimiento del

Wii Remote, por lo que solo detecta el movimiento de la mano, tiene como fuerte la detección de

la aceleración de la mano, no así la capacidad de reacción desde que se hace el gesto hasta que se

ejecuta en el videojuego.

Esta cuestión la mejoró notablemente el PlayStation Move, que tiene una detección del

movimiento de la mano muy precisa y de rápida respuesta, como ya se dijo, es una versión muy

mejorada de la Wii.

Page 175: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 165

Por otra parte, el Leap Motion detecta el movimiento de la mano e incluso de los dedos

de forma individual, un agregado que el resto de los dispositivos ya descriptos no posee. Además,

tiene una velocidad de respuesta a los movimientos excelente y no requiere tener en la mano

ningún control adicional (como si lo requieren la Wii y el Move).

El Kinect de Microsoft, por su lado, es el único dispositivo capaz de detectar los

movimientos de la persona de cuerpo completo, es decir si realizamos un movimiento con el pie,

mano, muñeca, rodilla, cabeza, entre otros, el Kinect lo reproducirá con un tiempo de respuesta

muy bueno. Además, no requiere que el usuario tenga nada en su mano, sólo requiere que se

tenga un amplio espacio para que pueda detectar correctamente la posición del cuerpo, lo cual se

puede considerar un punto en contra. Al igual que la Wii y el Move, no distingue los dedos de la

mano de manera individual y no permite calcular la aceleración con la que se realiza el

movimiento.

Podemos concluir que en lo que respecta a la detección de las partes del cuerpo y del

movimiento, la Wii y el Move son muy similares, por una cuestión de tiempo de lanzamiento, el

Move saca ventaja en su rendimiento. El caso del Leap Motion hay que analizarlo desde otro

plano, ya que este dispositivo no surgió específicamente para ser utilizados en videojuegos, sino

que es más versátil, puede ser utilizado en aplicaciones interactivas de distinta índole o bien en el

manejo gestual de un sistema operativo. El Kinect por su lado, es el único que detecta

movimientos del cuerpo entero, y los reproduce casi a la perfección.

4.2.5.2 Componentes tecnológicos

La tecnología que compone los dispositivos tiene mucho que ver con su precisión al

detectar el movimiento y tiempo de respuesta, es decir, con su rendimiento en general.

La Wii posee una tecnología de comunicación entre el control y la consola por

bluetooth, mientras que la detección del gesto lo realiza por infrarrojo, una tecnología casi en

desuso, pero dado el año de su lanzamiento, sus mejoras posteriores y la revolución que provocó

no se pueden juzgar hoy día su anticuada tecnología. Por otra parte, posee un acelerómetro para

detectar la aceleración del movimiento.

Page 176: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 166

El Move posee una tecnología mejorada y distinta a la Wii, ya que se vale de un

giroscopio, un acelerómetro y magnetismo para detectar el movimiento y reproducirlo de manera

más precisa. Por otra parte, incorpora una cámara para que el usuario se pueda ver en pantalla

pero esa cámara es de muy mala calidad lo cual hace que sea un punto negativo en la tecnología

incorporada al dispositivo.

Por su lado, el Kinect, posee una cámara RGB (de calidad VGA), un motor en su base

que permite a la cámara realizar movimientos verticales de acuerdo a la necesidad, y un emisor

de luz infrarrojo con su respectiva cámara, que serán el que irradie de luz infrarroja al usuario y el

que se encarga de detectarlo, respectivamente. Hay que agregar que posee un arreglo de

micrófonos que permite el reconocimiento de voz.

El Leap Motion además de poseer una tecnología más moderna (dado que es el de más

reciente lanzamiento de los dispositivos analizados) compuesta por dos cámaras infrarrojas y tres

leds, posee un potente software detrás que permite que, con esos elementos tecnológicos más

complejos y algoritmos matemáticos, se puedan detectar y reproducir los movimientos de las

manos y los dedos con gran precisión y rendimiento.

En resumen, cada dispositivo ha incorporado distintas tecnologías acordes a la época en

que fueron diseñados y de acuerdo con el objetivo de detección que se quiere cumplir con cada

uno de ellos y, seguramente, aprendiendo de los errores o aciertos de sus antecesores.

Tabla 4-2 - Tabla comparativa que menciona los componentes tecnológicos que posee cada dispositivo

Dispositivos/

Componentes

Nintendo Wii PlayStation Move Microsoft Kinect Leap Motion

Cámara IR Si No Si Si

Cámara Color No Si (640x480) Si (1280x960) No

Acelerómetro Si Si Si No

Page 177: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 167

Giroscopio No (si con Plus) Si No No

Conexión Bluetooth Bluetooth Usb Usb

4.2.5.3 Capacidad de expansión y soporte para el desarrollo de

aplicaciones

Cuando se habla de capacidad de expansión y soporte para el desarrollo de aplicaciones,

se podría decir que ambos conceptos van de la mano. Si bien varios de los dispositivos que se

analizaron anteriormente se crearon originariamente para darle mayor interacción al usuario con

los videojuegos, algunos de ellos dieron un soporte software (un kit de desarrollo) oficial para

que los diseñadores y desarrolladores puedan crear aplicaciones y librerías para expandir su

funcionalidad y su alcance, más allá del ambiente de los videojuegos.

En este aspecto, Kinect y Leap Motion sacan una luz de ventaja con respecto al

PlayStation Move y a la Wii, ya que ambos poseen un kit de desarrollo (más conocido por sus

siglas en inglés SDK) oficial, lo que permite acceder a los datos que otorgan estos dispositivos, e

incluso brindan a la comunidad de desarrolladores ejemplos de cómo utilizarlos.

A partir de estos kit de desarrollo se amplió el ámbito donde se aplicaron estos

dispositivos, sobre todo de Kinect que, originalmente, fue creado para videojuegos de la consola

Xbox 360 de Microsoft. Hoy día, como ya se dijo, se encuentran implementados y en desarrollo

múltiples proyectos que involucran a Kinect, ya sea en medicina, educación, entretenimiento,

marketing, entre otros. En cuanto a Leap Motion su kit de desarrollo permitió que se desarrollen

aplicaciones que se incluyeron en su tienda, como por ejemplo aplicaciones para diseño en 3

dimensiones, para componer música, para editar fotografías, editar videos, etc. Además, el Leap

Motion ya viene incluido en varios modelos de notebooks que hay en el mercado (sobre todo en

la marca HP), sin la necesidad de comprarlo como accesorio.

Por su parte, ni Nintendo en el caso de la Wii, ni Sony en el caso de PlayStation Move,

han lanzado kits de desarrollo oficiales, pero la comunidad de desarrolladores se las ingenió para

lanzar frameworks o librerías que obtienen los datos de dicho dispositivo para poder

Page 178: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 168

manipularlos a nivel de aplicación, aunque quizá hubiera sido mayor el crecimiento y

popularidad de estos dispositivos si alguna de las dos empresas habría lanzado un SDK de

manera oficial.

Tabla 4-3 – Tabla comparativa entre los dispositivos

Dispositivos Nintendo Wii PlayStation Move Microsoft Kinect Leap Motion

Detección de

movimiento

Si en 2

dimensiones con

sensor IR

Si – En las 3

dimensiones

Si – Por sensores

en 3D

Si – Por

sensores

Botones y

controles

Si Si No No

Cámara No Si Si No

Soporta

Realidad

Aumentada

No Si Si No

Reconocimiento

de voz

No Si Si No

Detección de

Manos

Si Si Si Si

Detección de

Dedos

No No No Si

Detección de

resto del cuerpo

No No Si No

SDK oficial No No Si Si

Page 179: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 169

Resolución

soportada

480p Blu-ray HD 1080p HD 1080p HD 1080p

4.3 ELECCIÓN DEL DISPOSITIVO

En el presente capítulo se analizaron, además de las técnicas de detección y

reconocimiento de gestos, los distintos dispositivos que cumplen esa misma función. Una vez

efectuada la investigación de cada uno de ellos, se ha llegado a la conclusión de que el

dispositivo Kinect, es el adecuado para lograr los objetivos planteados.

Una de las razones de ello, es que su la cámara RGB, permite la implementación de la

Realidad Aumentada en las aplicaciones, integrando elementos virtuales a la imagen creada a

partir de la misma. Además, es el único dispositivo que otorga una detección del esqueleto

humano y sus diferentes partes, por ende, se pueden crear interfaces gestuales de una manera

más simple.

En lo que respecta al software, de los dispositivos analizados, es uno de los pocos que

contiene una librería y un kit de desarrollo oficial bien documentado, e incluso ejemplificado.

Por ello en el siguiente capítulo se analizará en profundidad el dispositivo Kinect, con

todas sus características detalladas.

Page 180: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 170

Capítulo 5

5 KINECT

Este capítulo tiene como objetivo conocer y analizar la tecnología subyacente detrás del

dispositivo Kinect desarrollado por la empresa Microsoft y cuyos componentes permiten integrar

tanto gestos como Realidad Aumentada en sus aplicaciones. Se investigará acerca del

funcionamiento de las cámaras, tanto la infrarroja utilizada como sensor de profundidad, como la

cámara a color (RGB). También se describirá el arreglo de micrófonos para el reconocimiento de

voz que posee y se explicarán diferentes librerías disponibles a nivel de software que son

utilizadas para desarrollar aplicaciones con Kinect.

Page 181: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 171

5.1 HISTORIA

La empresa Microsoft, mediante su departamento de investigaciones llamado Microsoft

Research, afirmó que la tecnología del dispositivo Kinect costó unos veinte años de desarrollo.

Kinect se anunció por primera vez en la EEE (Electronic Entertainment Expo) en el año 2009

bajo el nombre “Project Natal” (Proyecto Natal), incluso se pudo ver un video promocional

donde se veía cómo los usuarios interactuaban con los videojuegos sin la necesidad de ningún

control, joystick o accesorio adicional.

Al año siguiente se lanzó el dispositivo Kinect. El mismo se comercializó en forma

conjunta con la versión de la consola Xbox 360 slim, la cual es más pequeña que la original. En el

desarrollo de esta tecnología también colaboró, en conjunto con Microsoft, la empresa Israelí

PrimeSense, la cual se especializaba en sensores 3D.

5.2 HARDWARE

Como ya se señaló en el capítulo anterior, Kinect permite reconocer hasta cuatro

usuarios ubicados frente al sensor de cuerpo entero y reproducir sus movimientos en un

videojuego o aplicación. Para esto utiliza sensores de profundidad y una cámara RGB. Además

posee cuatro micrófonos conectados en línea, que permiten reconocer la voz y ejecutar órdenes

que envía el usuario al hablar.

Antes de describir los componentes anteriormente mencionados, hay que agregar que el

sensor Kinect posee un conector USB para su interacción con la consola Xbox 360 o bien con la

computadora.

5.2.1 EMISOR INFRARROJO Y CÁMARA DE PROFUNDIDAD

Se comenzará analizando el sistema de sensores de profundidad de Kinect, el cual está

formado por dos elementos: un emisor láser infrarrojo y la cámara infrarroja. El emisor IR

(infrarrojo) es el dispositivo que Kinect utiliza para proyectar rayos IR los cuales se usan para

Page 182: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 172

capturar los datos de profundidad. Este proyector, es un emisor laser que proyecta un patrón

estructurado de puntos infrarrojos en una onda de alrededor de 830 nanómetros (patentado por

Prime Sense Ltd., empresa que colaboró con Microsoft en el desarrollo de Kinect). El haz de luz

es invisible al ojo humano, en el emisor sólo se puede ver una luz roja en el centro.

El emisor proyecta un patrón infrarrojo, este patrón está compuesto por subpatrones de

3x3 de 211x165 puntos (un total de 633 x 495 puntos). En cada uno de estos patrones un

cuadrado es más brilloso que el resto.

Cuando este cuadrado brilloso queda encima de un objeto, el patrón se distorsiona, esta

distorsión es analizada por la cámara de profundidad para lograr estimar la distancia entre el

sensor y dicho objeto.

Figura 5-1 - Patrón IR

La cámara de profundidad, es decir, la que detecta los patrones antes mencionados, es

una cámara monocromática que tiene un filtro infrarrojo (el cual bloquea la luz). Esta cámara de

profundidad es la que Kinect utiliza para capturar los datos de profundidad.

Los datos de profundidad que devuelve esta cámara son las coordenadas en 3D (ejes x,

y, z) de la escena en forma de stream (flujo de datos). El sensor captura la luz estructurada

Page 183: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 173

emitida por el emisor IR y la luz reflejada de los objetos en la escena. Todos estos datos son

convertidos en un flujo de datos de frames (cuadros). Cada frame es procesado por un chip que es

el que produce la salida del flujo de frames. La resolución de dicha salida es de 640 x 480 pixeles

y cada pixel, de 11 bits, puede representar 2048 niveles de profundidad.

Figura 5-2 - Imagen que genera la cámara de profundidad

En otras palabras, la forma en que Kinect logra generar un mapa de profundidad es: en

primer lugar, el proyector infrarrojo transmite un patrón de rayos IR invisibles convirtiendo todo

en pequeños puntos infrarrojos invisibles. Este patrón es percibido por la cámara infrarroja luego

de iluminar los objetos y/o personas que se encuentran en la escena. A causa de dicha

iluminación el patrón se modifica.

Dado que el mencionado patrón de rayos infrarrojos es conocido, y que, además la

cámara y el proyector están calibrados también de una manera conocida, se puede asociar cada

punto emitido con el recibido.

Page 184: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 174

A partir de las distorsiones percibidas es que Kinect calcula la distancia del sensor a los

objetos y genera la imagen de profundidad.

La técnica descripta es conocida como “luz estructurada” y se basa en estudiar la

deformación que sufre un patrón de luz al ser interceptado por cualquier objeto. Posteriormente,

mediante la cámara RGB se genera el mapa de color.

Figura 5-3 – Diagrama de la técnica “luz estructurada”

Asimismo, para un correcto funcionamiento y un mejor rendimiento del sensor de

profundidad, se debe contar con un espacio razonable ya que el usuario y/o los objetos que se

pretende que estén dentro del campo de visión del Kinect, deben colocarse a entre 80 cm y 2.4

metros de distancia.

5.2.2 CÁMARA RGB

La cámara a color (RGB) de Kinect, es similar a una cámara web a color, pero, a

diferencia de una webcam común, esta no posee un filtro que bloquea los rayos infrarrojos. Dicha

cámara admite una resolución de 1280x960 pixeles con una velocidad de 12 imágenes por

Page 185: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 175

segundo. Puede alcanzar un promedio de 30 imágenes por segundo a una resolución de 640x480.

Además, reduce el parpadeo de colores, realiza operaciones de saturación del color, y el balanceo

de blancos automático. Estos datos son utilizados para obtener los detalles de las personas y

objetos que se encuentran en la escena.

Figura 5-4 - Imagen RGB generada por Kinect

Una función primordial de esta cámara, es permitir el uso de la realidad aumentada, ya

que permite al usuario verse a sí mismo. La sensación de realidad aumentada se magnifica con

esta información donde el usuario puede verse en un contexto digital, por ejemplo, utilizando un

sable luminoso, cambiar el fondo de la imagen de video y verse en una playa del caribe, o bien

interactuar con objetos que se pueden agregar a su contexto.

De esta forma, y con la cámara de profundidad ya descripta anteriormente, todo el

entorno es almacenado en dos mapas, uno de color y otro de profundidad. Sumado a ello, Kinect

Page 186: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 176

cuenta con algoritmos para sacar el mejor provecho de la información que recibe, para así poder

renderizar en tiempo real las imágenes generadas en tres dimensiones.

5.2.3 MOTOR DE INCLINACIÓN Y ACELERÓMETRO DE TRES DIRECCIONES

Las cámaras del Kinect tienen un campo de visión horizontal de 57,5 grados y un campo

de visión vertical de 43,5 grados. Es posible incrementar el espacio de interacción ajustando la

inclinación vertical del sensor en + 27 o -27 grados. El motor puede cambiar el ángulo de la parte

superior del Kinect moviéndolo hacia arriba o hacia abajo.

Además, Kinect posee un acelerómetro de tres direcciones configurado para un rango de

2g (g, es el valor de aceleración en relación a la fuerza de gravedad) con un grado de precisión de

1 a 3. Gracias al acelerómetro y a los datos que éste brinda, es posible saber la orientación del

dispositivo con respecto a la gravedad.

Figura 5-5 - Grados de inclinación de Kinect

5.2.4 ARREGLO DE MICRÓFONOS

El arreglo de micrófonos que posee Kinect, consiste en cuatro micrófonos que están

ubicados en línea en la parte inferior del dispositivo junto con un conversor analógico digital

(ADC). El audio capturado es codificado usando modulación por impulsos codificados (MIC)

con un rango de 16 KHz y una profundidad de 16-bit. La mayor ventaja de la configuración que

Page 187: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 177

poseen los micrófonos es la supresión del ruido, una cancelación del eco acústico (AEC), y la

capacidad de determinar la localización y la dirección de la fuente del audio.

Figura 5-6 - Arreglo de micrófonos conectados en línea

El dispositivo utiliza los micrófonos para determinar de qué lado de la habitación viene

una voz en particular.

Cuando se le habla al sensor, la voz llega a cada micrófono en tiempos diferentes,

porque cada micrófono está ubicado a una distancia diferente del lugar desde donde se le habló.

Entonces, el software puede extraer la onda de la voz de la señal de sonido producida por cada

micrófono y (usando la información del tiempo) calcular dónde se encuentra la fuente de ese

sonido en la habitación. Entonces, si hay varias personas en la habitación donde se encuentra el

dispositivo, puede determinar qué persona está hablando calculando la dirección desde donde

viene su voz, y entonces puede direccionar los micrófonos hacia ese lugar, suprimiendo, además,

los sonidos no deseados para hacer más fácil la captura de lo que se habla.

Desde el punto de vista del control a nivel de aplicación, cuando se sabe de qué lugar

viene la voz (utilizando el sensor de distancia) se pueden dirigir los micrófonos hacia ese lugar, y

sobre todo crear una versión en software de los micrófonos direccionales que están físicamente

apuntando hacia los usuarios para grabar sus voces cuando, por ejemplo, se filma un video.

Si se quiere profundizar en el aprendizaje sobre el hardware detrás de Kinect se puede

consultar la siguiente bibliografía (Giorio & Fascinari, 2013) y (Jana, 2012).

Page 188: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 178

5.2.5 RECONOCIMIENTO DE USUARIOS CON KINECT

Uno de las características más llamativas de Kinect, es su capacidad de reconocer y

detectar los usuarios (seres humanos) que se encuentran frente al sensor. Dicho dispositivo en sí

no reconoce humanos, simplemente envía la imagen de profundidad al dispositivo principal (la

Xbox o una computadora). El software (drivers) que se encuentra corriendo en el dispositivo

principal (host) contiene la lógica para decodificar la información que envía el sensor y reconocer

elementos en la imagen con características del esqueleto humano. Dicho software está

“entrenado” con una variedad de siluetas humanas, y utiliza el alineamiento de varias partes del

cuerpo humano, sumado a la manera en que se mueve, para identificarlos y seguirlos.

El software también puede reconocer la altura y las proporciones de una persona en

particular. Esta característica permite, por ejemplo, a los usuarios de Xbox “entrenarla” para que

reconozca a un usuario específico cuando entra a la sala.

Como ya se mencionó anteriormente, el usuario debe colocarse a 2.4 metros para un

óptimo funcionamiento.

Figura 5-7 - Silueta que forma el software de Kinect

Page 189: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 179

En (Shotton, y otros, 2011) el equipo de Microsoft Research explica detalladamente los

algoritmos detrás del reconocimiento de personas de Kinect.

Para explicarlo resumidamente se podría decir que lo que el equipo investigativo de

Microsoft (llamado Microsoft Research) hizo fue crear una base de datos con 500.000 frames

(cuadros) de distintas poses que una persona puede llegar a realizar mientras juega. Como los

cambios entre una pose y otra, entre cuadros, son casi imperceptibles, se reducen las muestras a

100.000, tomando solo aquellos cuadros donde la distancia entre una pose y la otra sea mayor a 5

centímetros. En base a esas muestras, se generó un modelo para inferir la posición del cuerpo.

Mientras transcurre el juego, para reconocer en tiempo real la posición del cuerpo del

usuario (o los usuarios), el algoritmo identifica las partes del cuerpo con pixeles de colores (esto

es lo que le llaman etiquetar las partes del cuerpo o labels). En tiempo real, utilizando solamente

tres imágenes, se interpolan esos puntos marcados y se elabora la posible posición del cuerpo en

base al modelo generado anteriormente. Lo sorprendente es que la GPU (Unidad de

Procesamiento Gráfico) de la consola Xbox 360 puede ejecutar este algoritmo a una velocidad de

200 frames por segundo para determinar la posición del cuerpo.

Es claro que Kinect posee una tecnología a nivel de hardware muy completa y de varios

elementos útiles, pero como se ha dejado en evidencia en el punto anterior, debe tener un potente

motor de software debajo para poder controlar todas las funciones novedosas que permiten los

distintos dispositivos físicos que se han mencionado y que forman parte del hardware de Kinect.

Por eso, a continuación, se detallarán algunas de las librerías de software que existen

para programar con Kinect, incluyendo el SDK oficial que lanzó Microsoft para poder usar y

desarrollar aplicaciones para Kinect en Windows.

5.3 HERRAMIENTAS PARA DESARROLLO CON KINECT

Ya se ha analizado la tecnología física que posee Kinect, a continuación se explicará de

qué manera se relaciona la parte física del dispositivo (hardware) con la lógica (software),

Page 190: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 180

explicando algunas herramientas y kits de desarrollo que permiten programar aplicaciones para

Kinect. Algunos de ellos se explicarán con más detalle en el capítulo siguiente.

5.3.1 SDK KINECT PARA SISTEMA OPERATIVO WINDOWS

En este apartado se explicará la arquitectura del software de Kinect, definiendo su SDK

(Software Development Kit – Kit de Desarrollo Software) oficial. El SDK se compone de varias

librerías software y herramientas que ayudan al desarrollador para usar Kinect como una interfaz

natural de usuario. El dispositivo y las librerías software interactúan con la aplicación por medio

de las librerías NUI (Natural User Interface – Interfaz Natural de Usuario).

Figura 5-8 - Arquitectura y componentes del SDK de Kinect para Windows

Page 191: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 181

La arquitectura software de Kinect está formada por:

El sensor de Kinect. Los componentes físicos que se han explicado con

anterioridad en este capítulo y el conector USB a través del cual el Kinect se

conecta a la computadora.

Los drivers de Kinect. Los drivers para el sistema operativo Windows para el

dispositivo, los cuales vienen incluidos junto con el SDK.

Los componentes de audio y video. Están definidos por aplicaciones NUI para

la detección del esqueleto, audio e imágenes de profundidad y a color.

DirectX Media Object (DMO). Para las funciones del arreglo de micrófonos.

5.3.1.1 Requerimientos de Hardware

Computadora con procesador doble núcleo, 2.66 GHz o superior.

Placa de video compatible con Windows 7 que soporte Microsoft DirectX 9.0.

2 GB de RAM (recomendados 4 GB).

Sensor Kinect (para Xbox 360).

Adaptador USB de energía para Kinect.

Para programar con el SDK de Kinect para Windows se recomienda utilizar Visual

Studio 2010 Express o superior, u otras versiones de Visual Studio (no anteriores al 2010). Se

necesitará tener DirectX 9.0 (o superior) instalado, las versiones anteriores no son compatibles.

Además, por supuesto, se debe instalar el SDK de Kinect para Windows (ahora en su versión

1.8), el cual también se encargará de instalar los drivers para Kinect y el Microsoft Kinect

Toolkit, el cual, entre otras herramientas, contiene códigos de ejemplo. Las características de este

Toolkit se analizarán más adelante en este capítulo. Cabe destacar que dicho SDK permite

programar en los lenguajes C++, C# y Visual Basic (la suite de .Net).

Page 192: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 182

5.3.1.2 Requerimientos de Software

Microsoft Visual Studio 2010 Express u otra versión de Visual Studio 2010 o

superior.

Microsoft .NET Framework 4.0 o superior.

Para programar en C++ además se requiere:

Kit de desarrollo de DirectX, 2010 o superior.

Instalador Web de DirectX End – User Runtime.

Si se quieren explotar las capacidades del audio de Kinect se necesita, además, el

software de reconocimiento de voz de Microsoft: la aplicación de la plataforma para hablar, el

SDK de la plataforma, y el pack de lenguaje para Kinect. De todas formas, el SDK

automáticamente instala estos componentes. El resto de las funcionalidades de Kinect

(excluyendo el audio) se podrán utilizar por completo sin estos componentes.

5.3.1.3 Flujo de datos de video

El flujo de datos (stream) de la imagen a color es manejado por la librería

Microsoft.Kinect.ColorImageFrame. Un frame está compuesto por datos de la imagen a color.

Estos datos están disponibles en diferentes resoluciones y formatos. Solo se puede utilizar una

resolución y un formato a la vez.

Con el SDK se pueden personalizar las opciones de la cámara para optimizar y adaptar

la misma dependiendo del entorno (cuando se necesita trabajar con poca o mucha luz, adaptar el

contraste, etc). Para manejar esto se utiliza la clase Microsoft.Kinect.ColorCameraSettings.

Page 193: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 183

Figura 5-9 - Resoluciones disponibles para stream de video

Para aumentar la calibración de la cámara se puede usar el flujo de datos IR (de

profundidad), para observar el patrón observado de la cámara RGB y la IR. Esto permite tener un

mejor mapeo de las coordenadas del espacio que generan ambas cámaras.

5.3.1.4 Flujo de datos de la cámara de profundidad

Los datos proporcionados por el flujo de profundidad son útiles tanto para computar el

movimiento de la persona y la persona en sí, como también para identificar los objetos que se

deben ignorar.

El flujo de datos Microsoft.Kinect.DepthImageStream se encuentra dentro de la clase

Microsoft.DepthImageFrame y tiene dos tipos de datos:

Datos de profundidad calculados en milímetros. Están contenidos en la

estructura Microsoft.Kinect.DepthImagePixel.

Datos segmentados del jugador. Estos datos están dados por la propiedad

Microsoft.Kinect.DepthImagePixel.PlayerIndex, que identifica al jugador

detectado en la escena.

Kinect procesa en tiempo real los datos de profundidad para identificar las figuras

humanas en un mapa segmentado. El mapa segmentado es un mapa de bits de

Page 194: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 184

Microsoft.Kinect.DepthImagePixel, donde la propiedad PlayerIndex identifica la persona más

cercana dentro del campo de visión de la cámara. Para obtener los datos de segmentación del

jugador, se debe activar el stream del seguimiento del esqueleto.

5.3.1.5 Flujo de datos de audio

Gracias a su arreglo de micrófonos, Kinect genera un flujo de datos de audio que se

puede controlar y manejar a nivel de aplicación para reconocimiento de voz, capturar audio, etc.

Por defecto, Kinect detecta la entrada de audio de mayor volumen. Dicho esto, se puede

configurar el arreglo de micrófonos desde la programación (dirigirlos hacia una dirección

específica, que se direccionen hacia un esqueleto que se ha detectado, etc.)

El componente principal usado por Kinect para procesar el flujo de audio es el DirectX

Media Object (DMO).

La clase Microsoft.KinectAudioSource es el componente principal de la arquitectura del

software en lo concerniente al flujo de audio. La clase Microsoft.Kinect.INativeAudioWrapper

contiene el DMO ya mencionado, que es un componente común de Windows para un micrófono

de un canal. Esto permite que se puedan usar los micrófonos de Kinect como un micrófono para

las aplicaciones del estilo Skype o similares tal como si fuera un micrófono común, esto es, de un

solo canal.

5.3.1.6 Esqueleto

Además de los datos que proporciona el flujo de datos de profundidad, adicionalmente

se pueden usar los que proporciona el seguimiento del esqueleto para aumentar la capacidad de

computar el movimiento y el control de las aplicaciones a fin de reconocer al usuario, además de

reproducir y seguir sus movimientos y acciones.

Se define un esqueleto como un conjunto de puntos colocados estratégicamente. Un

esqueleto detallado contiene 20 de estos puntos en modo normal y unos 10 puntos en un llamado

Page 195: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 185

“modo sentado”, en el cual se utiliza solo la mitad superior del cuerpo. Cada uno de los puntos

en ambos modos representa una articulación o parte del cuerpo humano.

Gracias a la cámara IR (de profundidad), Kinect puede reconocer hasta seis personas en

su campo de visión. De todas ellas, solo cuatro pueden ser detectadas en detalle (es decir, con 20

puntos del cuerpo humano).

El flujo de datos del esqueleto es llevado a cabo por las clases

Microsoft.Kinect.SkeletonStream y Microsoft.Kinect.SkeletonFrame. La estructura

Microsoft.Kinect.SkeletonPoint brinda los datos del esqueleto dando cada punto del mismo en el

espacio en 3D. En cada frame que maneja el flujo de datos del esqueleto, se pueden manipular

hasta seis esqueletos utilizando un arreglo de la clase Microsoft.Kinect.Skeleton.

Figura 5-10 - Partes del cuerpo que Kinect puede detectar

5.3.1.7 Kinect Toolkit - Herramientas de Kinect

Esta herramienta se recomienda descargarla e instalarla junto con el SDK de Kinect para

Windows, ya que posee códigos a modo de ejemplo actualizados con la versión del SDK actual

(para esto, cuando sale una versión nueva del SDK también es lanzada una nueva del Toolkit con

nuevos ejemplos). Entre algunos códigos de ejemplo que se pueden ver, incluyen aplicaciones

que reconocen y graban la voz, retiran el fondo del usuario causando el efecto de “pantalla verde”

utilizado en el cine, generan avatares en 3D, galerías multimedia interactivas, etc.

Page 196: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 186

Además, tiene algunas aplicaciones y librerías que pueden ser de gran utilidad para el

desarrollador, en este caso, se analizarán las más relevantes tales como el Kinect Studio y el SDK

para el “Face Tracking” (detección de caras).

Requerimientos mínimos del sistema

Procesador de 32-bit (x86) o 64-bit (x64).

Procesador dual-core 2.66-GHz o mayor.

USB 2.0.

2 GB de memoria RAM.

Sensor Kinect.

Windows 7, Windows 8, Windows 8.1, Windows 7 Estándar Embebido.

SDK para Kinect para Windows (la versión que coincida con la del Toolkit).

Figura 5-11 - Ejemplo de la aplicación que retira el fondo del usuario

Page 197: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 187

Kinect Studio

Kinect Studio es una herramienta que ayuda al usuario a grabar y luego reproducir los

flujos de datos de color y de profundidad generados por Kinect. Se utiliza esta herramienta para

leer y reproducir los flujos de datos y, de esta manera, permitir al desarrollador corregir errores

de funcionalidad (debug) en una aplicación, crear escenarios repetidos para realizar pruebas y

analizar el rendimiento de la misma.

En resumen, Kinect Studio brinda la posibilidad de pararse frente a la cámara o poner

objetos enfrente de él y grabar los datos de video a color y de profundidad, para luego utilizarlos

en su aplicación a fin de, por ejemplo, realizar pruebas. A modo de ejemplo, se puede describir la

situación en donde el programador está realizando pruebas sobre su aplicación y éste, cuando

desea probarla, debe pararse frente al sensor y realizar determinada acción o gesto. Con el Kinect

Studio, el programador puede grabar dicha escena haciendo el gesto o realizando una acción una

sola vez, y reproducirla las veces que quiera. De esta manera, su aplicación interpretará esos

datos de entrada, que no son más que los flujos de video y de profundidad, y éste puede probar su

aplicación sin la necesidad de tener que realizar los movimientos repetidas veces.

Para que Kinect Studio reciba datos desde Kinect, se debe estar utilizando una

aplicación de Kinect para Windows que inicialice el sensor. Esto permite a Kinect Studio recibir

los flujos de datos de color y de profundidad. Solo una instancia de Kinect Studio puede estar

conectada a una aplicación corriendo a la vez. Cuando se ejecuta, se muestra una ventana de

conexión y se selecciona a qué aplicación de Kinect se quiere conectar.

La aplicación en sí es bastante intuitiva de utilizar como se muestra en la siguiente

imagen.

Page 198: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 188

Figura 5-12 - Kinect Studio

Face Tracking SDK – Librería para la detección de caras

El Kit de Desarrollo (SDK) para la detección de caras de Microsoft para Kinect, junto

con el SDK, permite al desarrollador crear aplicaciones que pueden detectar caras humanas en

tiempo real. Esta librería se encuentra en el Toolkit de Microsoft descripto precedentemente,

incluso en dicho Toolkit hay códigos de ejemplo para utilizar este Kit.

El motor del SDK para la detección de caras analiza la entrada de la cámara de Kinect,

deduce la posición de la cabeza y las expresiones faciales, y ambas informaciones están

disponibles para que el programador las utilice en una aplicación en tiempo real. Por ejemplo,

esta información puede ser usada para renderizar la cabeza de una persona detectada, y su

expresión facial para crear un avatar en un videojuego o en una aplicación de comunicación o

bien para controlar una interfaz natural de usuario (NUI).

Page 199: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 189

Figura 5-13 - Ejes de coordenadas del sensor y máscara computada en 3D

Imágenes de entrada: Este SDK acepta las imágenes de las cámaras RGB y de

profundidad del Kinect como entrada. La calidad de la detección puede verse afectada por la

calidad de los frames de entrada (esto es, los cuadros más oscuros o difusos se detectarán peor

que los cuadros brillosos o claros).

Salidas arrojadas por la detección de caras: A continuación se describen las salidas

del motor de detección de caras. Cada vez que se llama a determinadas funciones (incluidas en la

librería) dentro de la aplicación, se actualiza la siguiente información sobre el usuario detectado:

Estado del seguimiento.

Puntos en 2D.

Posición de la cabeza en 3D.

Unidades de animación.

Malla y puntos en 2D: El SDK para detección de caras detecta 87 puntos en 2

dimensiones, sumándole otros 13 puntos que no son mostrados en la siguiente figura.

Page 200: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 190

Figura 5-14 - Puntos en 2D detectados por el SDK

Estos puntos son retornados en un arreglo, y son definidos en el espacio de coordenadas

de la imagen RGB (en una resolución de 640x480) que devuelve el sensor Kinect.

Los 13 puntos que no son incluidos en la figura son:

El centro del ojo, las esquinas de la boca y el centro de la nariz.

Una caja (circulo) alrededor de la cabeza.

Posición de la cabeza en 3D: La posición de la cabeza del usuario en los ejes X, Y, Z

son devueltos en base al sistema de coordenadas de “mano derecha” (con el punto de origen en el

sensor, el eje Z apuntado para el usuario y el eje Y apuntando hacia arriba – es el mismo sistema

que utiliza el Kinect en el cuadro de coordenadas para el esqueleto). Las traslaciones son medidas

en metros.

La posición de la cabeza del usuario es capturada en tres ángulos: cabeceo (pitch),

balanceo (roll) y guiño (yaw).

Page 201: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 191

Figura 5-15 - Ángulos de detección de la cabeza del usuario

Figura 5-16 - Aplicación de demostración incluida en el Toolkit. Muestra modelado de la cara y las expresiones en

3D

Page 202: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 192

5.3.1.8 Comentarios y conclusiones

Ya explicados los flujos de datos más importantes que otorga Kinect al desarrollador y

las clases y propiedades del SDK que permiten manipularlos e integrarlos en aplicaciones, se

puede decir que el SDK y los drivers incluidos en él, son los que permiten utilizar Kinect en su

máximo esplendor. Por supuesto que este fue lanzado por Microsoft que es la empresa

desarrolladora de Kinect, por ende tiene coherencia que sea el que mejor aprovecha las

cualidades del mismo.

Además de este kit, junto con los drivers, se puede descargar y utilizar de manera

gratuita (algo poco común en productos o aplicaciones lanzadas por Microsoft) un Toolkit que

brinda distintas aplicaciones sencillas de utilizar para visualizar y probar todas las posibilidades y

explotar el potencial de Kinect, tales como el reconocimiento de voz, la cámara de profundidad,

el reconocimiento del esqueleto, entre otras. Pero lo mejor de estas herramientas es que, en varias

de ellas, se puede acceder a su código y ejemplos, lo que permite al desarrollador familiarizarse

de una manera más práctica y gráfica con la programación de aplicaciones para Kinect.

Para profundizar el tema se puede consultar la bibliografía (Microsoft, 2012) y (Catuhe,

2012)

5.3.2 COMUNIDAD OPEN KINECT

OpenKinect es una comunidad abierta para personas interesadas en utilizar el Kinect con

la PC u otros dispositivos. Allí se trabaja en librerías de código abierto, las cuales son

compatibles con los sistemas operativos Windows, Linux y Mac.

La comunidad OpenKinect consta con más de 2000 miembros que aportan sus

conocimientos para el proyecto. El proyecto principal en que se trabaja allí es el software

libfreenect.

Este software consiste en drivers para Kinect que sirven para Linux, Mac y Windows, y

soporta las opciones de hardware del Kinect, tanto como los datos de las cámaras RBG y de

profundidad, motores, acelerómetro, LED y audio.

Page 203: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 193

Además, posee compatibilidad para varios lenguajes mediante algunas librerías (también

llamadas wrappers), entre los más importantes se encuentran C, C++, C#, Python, Ruby, java,

etc.

5.4 PROYECTOS CON KINECT

Microsoft investigó y construyó Kinect para revolucionar la manera de jugar a los

videojuegos y la experiencia del usuario en el entretenimiento. Pero a lo largo de ese camino, los

usuarios utilizan Kinect en ámbitos inimaginables. Desde ayudar en la rehabilitación de los

chicos con autismo, hasta asistir a los médicos en la sala de operaciones, se está llevando a Kinect

más allá del ámbito de los videojuegos. A eso, Microsoft, le llama “Efecto Kinect”.

A modo ilustrativo, se describirán brevemente algunos de los proyectos más interesantes

de Kinect en distintos ámbitos fuera de los juegos.

5.4.1 TEDCAS – AYUDA EN EL QUIRÓFANO

El TedCas que tiene el objetivo de ayudar a los médicos nada más y nada menos que en

el quirófano.

Los doctores del Hospital Sunnybrook de Canadá, utilizan Kinect en la sala de cirugía

(junto con una pantalla o proyector) como controlador libre de manos para manipular radiografías

e imágenes, en lugar de tener que salir del área estéril que rodea al paciente para ponerlas

manualmente en un monitor o atril donde se puedan observar con claridad.

Aunque esto no parezca significativo, el proceso de esterilización del doctor puede durar

20 minutos antes de que éste pueda volver junto al paciente; a menudo, las cirugías pueden durar

una hora más que lo necesario por esta situación. En suma, el cirujano debe retener esos datos

que le dio la imagen cada vez que vuelve junto al paciente.

Page 204: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 194

Con esta aplicación, los doctores simplemente pueden utilizar los gestos de sus manos

para hacer zoom sobre la radiografía, tomografía o imagen similar, o pasar a través de varias de

estas imágenes (TedCas, 2013)

Figura 5-17 - Cirujano utilizando gestos para manipular la radiografía

Figura 5-18 - Cirujano navegando entre imágenes usando gestos

Page 205: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 195

Figura 5-19 - Cirujano analizando la radiografía para guiarse en la cirugía

5.4.2 TOPSHOP – AR DOOR

Este proyecto es un probador de ropa con Kinect y Realidad Aumentada, el cual ya está

implementado, y consiste en no tener que ir al probador en un local de ropa cada vez que se

quiere probar una prenda. La tienda de moda Topshop instaló un sensor Kinect con una pantalla

que simula un espejo, pero con el agregado de que posee realidad aumentada, la cual, combinada

con la tecnología y funciones de Kinect, permite al usuario probarse prendas disponibles en el

local.

Figura 5-20 - Cliente de Topshop interactuando con la aplicación.

Page 206: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 196

5.4.3 KINECT EN LA EDUCACIÓN

El aprendizaje interactivo es clave para motivar y comprometer a los estudiantes en un

mundo tecnológicamente tan avanzado. Debido a la naturaleza digital de la vida de los

estudiantes, que incluye su interés en los videojuegos, cada vez más educadores utilizan enfoques

de aprendizaje inmersivos y basados en juegos para ayudar a los estudiantes a desarrollar

habilidades críticas para el siglo 21.

En las aulas de alrededor del mundo, los docentes que incorporan Kinect en sus planes

de estudios reportan mejoras tangibles en el compromiso y aprendizaje de sus alumnos.

En las escuelas públicas del Condado de Loudon, los profesores utilizan el videojuego

“Kinect Sports” como una ayuda para enseñar conceptos matemáticos como patrones aleatorios,

probabilidad y ángulos a través de los bolos.

Los alumnos de tercer año, utilizan el gadget de “Kinect Fun Labs Kinect Googley Eyes”

para dar una presentación de la lección aprendida, y los de cuarto año utilizan “Avatar Kinect”

para producir programas de televisión y comerciales para fortalecer sus habilidades literarias.

En el Distrito Escolar de Los Ángeles, los profesores de cuarto grado en “Middleton

Elementary” utilizan “Body and Brain Connection” de NAMCO BANDAI Games America Inc.

de Kinect para Xbox 360, para enseñar lecciones matemáticas sobre ángulos, probabilidad y

matemática. Los líderes escolares son testigos de las mejoras en el comportamiento de sus

estudiantes, y el aumento en su atención y compromiso cuando utilizan Kinect.

Figura 5-21 - Videojuego Body and Brain Connection (Namco Bandai)

Page 207: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 197

5.5 KINECT V2 – EL NUEVO KINECT

Junto con el lanzamiento de su nueva consola Xbox One, Microsoft incluyó Kinect v2,

la nueva versión del Kinect, ambos fueron lanzados al mercado el 22 de noviembre de 2013. En

particular, este primer lanzamiento incluyó ambos dispositivos juntos. Pero casi un año más

tarde, el 07 de octubre de 2014, Microsoft presentó el Kinect v2 para Windows, incluyendo

también el lanzamiento de la versión 2.0 del Kit de Desarrollo (SDK).

En particular, el Kinect v2 cumplirá las mismas funciones que su predecesor, pero con

tecnología mejorada, y ya sabiendo Microsoft que su dispositivo se utiliza para “algo más” que

videojuegos como se vio en el punto anterior.

El sensor Kinect v2, posee una cámara RGB que permite una resolución full HD

(1080p), y su fidelidad en los datos de profundidad ha mejorado considerablemente respecto de

su predecesor, evidenciando avances significativos en visualizar pequeños objetos de una manera

más clara.

5.5.1 SDK 2.0 – CARACTERÍSTICAS Y BENEFICIOS

Tabla 5-1 - Tabla que detalla características, beneficios y potenciales aplicaciones de ellos, del SDK 2.0 de Kinect

Característica Beneficio Potenciales aplicaciones

Soporte para Unity Pro Para más que solo juegos,

Unity Pro ofrece prototipado

multiplataforma

Construir y publicar

aplicaciones utilizando

herramientas ya conocidas a

través de múltiples

plataformas.

Page 208: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 198

Orientación del cuerpo, la

mano y las articulaciones

mejorado

Con la habilidad de detectar

hasta seis personas y 25 partes

del cuerpo por persona, y la

mejor interpretación de la

posición del cuerpo, se

obtienen posiciones más

anatómicamente correctas para

mejores interacciones, realizar

avatares más precisos y

parecidos a la vida real.

Nuevos y mejores escenarios

en fitness, salud, educación,

entrenamiento,

entretenimiento, juegos,

películas y comunicaciones.

Soporte para Windows Store

(tienda de aplicaciones para

dispositivos Microsoft)

Ahora se pueden crear

aplicaciones para Windows

Store usando herramientas ya

conocidas, y ofrecerlas a una

mayor cantidad de

consumidores

Se pueden ver y vender las

aplicaciones realizadas para

Kinect v2 en Windows Store.

Herramientas poderosas Kinect Studio otorga una

grabación y reproducción

mejorada, y el constructor de

gestos visuales permite a los

desarrolladores construir sus

propios gestos que el sistema

reconoce y utiliza para escribir

el código utilizando la máquina

de aprendizaje, incrementando

la eficiencia de costo y

productividad.

Desarrollar sobre la marcha sin

la necesidad de tener el sensor

Kinect. Crear gestos

personalizados que

decrementan el tiempo de

prototipado y pruebas.

Page 209: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 199

Detección facial avanzada La resolución es 20 veces más

grandes, permitiendo a la

aplicación crear una malla de

más de 1000 puntos para una

representación más precisa de

la cara de una persona

Construir avatares que son más

parecidos a la vida real.

Soporte para aplicaciones

simultáneas

El mejorado soporte para

múltiples aplicaciones permite

acceder al mismo sensor de

manera simultánea

Por ejemplo, permitir que una

aplicación de venta minorista y

que una aplicación de

inteligencia de negocios

accedan al mismo tiempo al

sensor, podría lograr tener una

inteligencia de negocios en

tiempo real en el negocio

minorista.

Para más información acerca de Kinect v2, se puede consultar (Microsoft, 2014).

Page 210: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 200

Capítulo 6

6 INTRODUCCIÓN AL DESARROLLO

En este capítulo se describirán, con más detalle, las herramientas que permiten

desarrollar aplicaciones con Kinect, como así también los entornos de desarrollo que se

complementan con las mismas, y librerías que son de utilidad para la programación con el

dispositivo. Por último, se especificará la justificación de la elección de algunas de ellas para el

desarrollo del caso de aplicación.

Page 211: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 201

6.1 INTRODUCCIÓN

La computación basada en gestos, permite participar en actividades virtuales con el

movimiento y con gestos similares a los que se utilizarían en el mundo real, manipulando los

contenidos de manera intuitiva.

Las aplicaciones basadas en gestos mantienen en casi todos los casos una arquitectura en

común, la cual se muestra en el siguiente diagrama.

Figura 6-1 - Arquitectura de una aplicación basada en gestos

Las librerías gráficas y toolkits (herramientas) de programación de propósito

general, brindan a los programadores facilidades relacionadas a los aspectos gráficos de la

aplicación, como por ejemplo, menús, botones o cualquier otro componente visual que se quiera

agregar a nivel de interfaz de usuario. Adicionalmente proveen ciertas características de propósito

Frameworks y librerías gráficas

Aplicación

Wrapper

Framework

Drivers

Page 212: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 202

general, como manejo de audio y video, gestión de memoria, hilos, entre otras. También le

permiten a los desarrolladores producir gráficos 2D y 3D.

La aplicación es el código fuente generado por el programador, utilizando los toolkits y

librerías gráficas, como así también interactuando con el framework por medio del wrapper.

El wrapper en este tipo de aplicaciones sirve para facilitar el uso de las funcionalidades

que brinda el framework, simplificando su uso para el programador.

El framework es la parte indispensable y más importante, ya que se encarga de definir

las API para escribir aplicaciones que utilizan interacción natural. Su propósito principal, es

formar una API estándar que permite la comunicación con:

Sensores de audio y video. Dispositivos que “ven” y “escuchan” las figuras y

sus alrededores.

Middleware de visión y percepción de audio. Es el software que analiza el

audio y los datos visuales registrados, y los comprende.

El driver se encarga de comunicar el framework con el dispositivo de detección de

gestos.

A continuación se explicarán las librerías que fueron analizadas en cada una de las capas

de la arquitectura, para luego determinar y justificar la elección de cada una de ellas.

6.2 LIBRERÍAS GRÁFICAS Y TOOLKITS

Las alternativas a utilizar como toolkits de programación de propósito general y

frameworks gráficos son:

WPF (Windows Presentation Foundation). Es un marco de trabajo de interfaz

de usuario para crear aplicaciones interactivas. La plataforma de desarrollo de

WPF admite un amplio conjunto de características de desarrollo de aplicaciones,

que incluye un modelo de aplicaciones, recursos, controles, gráficos, diseño,

Page 213: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 203

enlace de datos y documentos. Es un subconjunto de .NET Framework. WPF

utiliza el lenguaje XAML para proporcionar un modelo declarativo para la

programación de aplicaciones.

Cinder. Es una librería en C++ que brinda manejos avanzados con los objetos de

las interfaces gráficas de usuario.

Vvvv. Es un entorno de programación grafica para desarrollo y prototipado

rápido. Está diseñado para facilitar el manejo de ambientes multimedia a gran

escala con interfaces físicas, diseño gráfico en tiempo real, y audio y video con el

que se puede interactuar simultáneamente con multitud de usuarios.

Unity. Es un motor de videojuego multiplataforma creado por Unity

Technologies. Está disponible como plataforma de desarrollo para Microsoft

Windows y OS X, y permite crear juegos para Windows, OS X, Linux, Xbox

360, PlayStation 3, Playstation Vita, Wii, Wii U, iPad, iPhone, Android y

Windows Phone. Gracias al plugin web de Unity, también se pueden desarrollar

videojuegos de navegador para Windows y Mac.

6.3 APLICACIÓN BASADA EN GESTOS CON RA

En esta capa de la arquitectura de una aplicación basada en dispositivos de detección de

gestos, se encuentra el código fuente generado por los programadores, utilizando tanto las

librerías gráficas como los wrappers y framework. El próximo capítulo, tendrá como uno de sus

objetivos, diseñar, desarrollar e implementar esta capa de la arquitectura.

6.4 WRAPPERS

6.4.1 SIMPLEOPENNI

SimpleOpenNI es un proyecto nacido en 2011 que otorga a los desarrolladores un

wrapper (envoltorio) de OpenNI y NITE para Processing (OpenNI y NITE se explicarán en la

Page 214: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 204

sección 6.5.1 “OpenNI y NITE”). De todas maneras, no todas las funciones de OpenNI son

soportadas por SimpleOpenNI, está más orientado a otorgar un acceso más simple a las

funcionalidades de esta librería.

En otras palabras, lo que proporciona SimpleOpenNI son capacidades de OpenNI en

Processing, permitiendo así escribir código que permita recoger las ventajas que proporciona

dicho framework. Por esto es que se debe tener instalado NITE y OpenNI, cuando se accede

desde el Processing al código para manejar un dispositivo, lo complicado lo hace el código de

OpenNI debajo de SimpleOpenNI. La última versión es la 1.96, la cual soporta la versión de

OpenNI 2.

Hay que indicar que soporta los sistemas operativos Windows (32 y 64 bit), OSX (32 y

64 bit) y Linux64, y que es un proyecto open source. El aspecto negativo de este proyecto, es que

no existe mucha documentación sobre el mismo, si bien se pueden encontrar las funciones

existentes, pero sin demasiadas especificaciones. (SimpleOpenNI, 2013)

Figura 6-2 – Ejemplo de imagen de profundidad con SimpleOpenNI

6.4.2 PIKYNECT

PyKinect es un wrapper para crear aplicaciones escritas en Python mediante PTVS

(Python Tool for Visual Studio, Herramientas de Python para Visual Studio). Dicha herramienta

se integra al entorno de desarrollo Visual Studio, con la cual se puede utilizar el dispositivo

Page 215: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 205

Kinect. Una de sus características más destacadas, es la de poder utilizarlo en conjunto con

PyGame (librería para desarrollar juegos en Python), para crear videojuegos o interfaces de

manera sencilla y rápida. Al integrarse con Visual Studio, se pueden explotar todas las funciones

de SDK de Kinect, logrando, en teoría, los mismos resultados que con C# y C++.

Figura 6-3 - Demo con PyKinect

6.4.3 KINECT TOOLBOX

Es una librería de código abierto que provee herramientas para el desarrollo de

aplicaciones con el SDK de Kinect para Windows. La misma incluye herramientas de ayuda para

detección de gestos, posturas, grabación/reproducción de video, entre otras. Actualmente es

soportada la versión 1.7 del SDK oficial de Kinect.

Page 216: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 206

Kinect Toolbox otorga una herramienta para el reconocimiento de gestos y posturas

predefinidas, como por ejemplo el gesto de “deslizar la mano de izquierda a derecha” o la postura

de “saludar manteniendo la mano arriba a la altura de la cabeza”. (KinectToolbox, 2011)

Figura 6-4 - Gesto de deslizar la mano de izquierda a derecha

6.5 FRAMEWORK

6.5.1 OPENNI Y NITE

La empresa PrimeSense, junto con Microsoft, fueron las desarrolladoras de Kinect.

Luego, PrimeSense junto con Willow Garage y Side Kick, lanzaron un framework de código

abierto llamado OpenNI. El mismo se encarga de implementar el motor de percepción, tomando

como entrada los datos espaciales de la escena obtenidos por el sensor Kinect y analizándolos

para brindar información de mayor nivel de abstracción, como por ejemplo, reconocimiento de

gestos, reconocimiento de personas, tracking del esqueleto, etc.

OpenNI, permite comunicarse con los sensores de video y de profundidad, mientras que

proporciona un middleware llamado NITE, que sirve de puente entre el hardware del dispositivo

y las aplicaciones e interfaces del sistema operativo de la PC. La idea de la utilización de estas

herramientas, es facilitar el desarrollo de aplicaciones que funcionen con una interfaz natural,

utilizando gestos y movimientos corporales. Además de funcionar como middleware, NITE es el

encargado de los algoritmos de la detección de movimiento.

Page 217: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 207

Con respecto a NITE, se puede decir que es el encargado de analizar y comprender los

datos obtenidos de la escena. Por ejemplo, recibe datos visuales como una imagen y retorna la

posición de la palma de la mano detectada en dicha imagen, o identifica ciertos gestos

predefinidos y alerta a la aplicación cuando los detecta.

6.5.1.1 ¿Es realmente Multiplataforma?

Actualmente OpenNI se encuentra en su versión 2.2, cabe recordar que es compatible

tanto con Windows, como con Linux y MacOS. En este punto se genera una controversia, ya que

desde la versión 2, OpenNI solo es compatible “oficialmente” con los drivers que brinda

Microsoft para comunicarse con Kinect, lo cuales, solo funcionan bajo Windows. Los

desarrolladores de las demás plataformas se ven obligados a probar con drivers “no oficiales”, los

cuales son menos estables, y no explotan por completo las funcionalidades de Kinect.

6.5.1.2 Arquitectura

Figura 6-5 - Arquitectura del Framework OpenNi.

Como se ve en la figura anterior, OpenNI junto con NITE otorga a los desarrolladores

una opción más para el desarrollo de aplicaciones con distintos dispositivos de detección de

gestos.

Page 218: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 208

6.5.1.3 Características

Las características principales que OpenNI brinda son:

Análisis completo y seguimiento del esqueleto.

Análisis de la posición.

Seguimiento de las manos o reconocimiento de gestos.

Uno de los componentes middleware comúnmente utilizados, es NITE, cuyo motor de

percepción se encarga, entre otras cosas, del seguimiento del esqueleto y de la mano, el

reconocimiento de varios gestos predefinidos o la identificación de usuarios, y la determinación

de cuál de ellos tiene el control en cada momento.

Figura 6-6 - Algunas de las funcionalidades implementadas por NITE. (Izquierda: Full Body Tracking. derecha:

Hand detection and Tracking)

Resumiendo, OpenNI permite interactuar básicamente con dos componentes. Por un

lado, con componentes hardware como por ejemplo sensores 3D y cámaras RGB que proveen

datos crudos obtenidos a partir de la escena actual, y por otro, componentes middleware como el

ya mencionado NITE, que se encargan de procesar y comprender esos datos crudos para brindar

información de mayor nivel de abstracción, los cuales son, en definitiva, el cerebro del sistema

que puede ver la escena y analizarla. Los sensores observan el entorno y el middleware hace las

veces de motor de percepción para comprender la interacción del usuario con ese entorno.

Page 219: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 209

OpenNI se puede complementar o utilizar de manera más sencilla con SimpleOpenNI

como se mencionó anteriormente. Además, SimpleOpenNI también se puede utilizar con

Processing, que es un entorno de desarrollo (programado en Java) de código abierto, creado para

realizar aplicaciones interactivas que hacen énfasis en la parte gráfica, también nombrado en la

sección anterior.

6.5.2 MICROSOFT KINECT SDK

El Kit de Desarrollo de Software (SDK) de Kinect para Windows, está formado por un

conjunto de librerías que permiten programar aplicaciones en distintas plataformas de Microsoft

utilizando como dispositivo de entrada el sensor Kinect. Gracias al SDK se pueden desarrollar

aplicaciones en C#, Visual Basic o C++, utilizando el entorno de programación Visual Studio

2010 o superior, en un sistema operativo Windows 7 o Windows 8.

El SKD es, en definitiva, una interfaz para interactuar con Kinect por medio de los

drivers del sistema, dicha librería incluye los drivers que son los que interactúan con el

dispositivo, mientras que el sistema operativo y la aplicación se comunican con el dispositivo

mediante el programa.

Como ya se mencionara en el capítulo anterior, el instalador del SDK trae consigo una

aplicación (llamada Windows Developer Toolkit) que contiene herramientas tales como el SDK

Face Tracking, que permite detectar la cara del usuario, y el Kinect Studio para grabar y

reproducir los flujos de datos de profundidad y color. Además brinda códigos de ejemplo para

ayudar de una manera más práctica al desarrollador.

6.5.2.1 Algunas características del SDK

La librería del SDK permite al desarrollador interactuar directamente con las cámaras, el

arreglo de micrófonos y el motor de Kinect. También se pueden desarrollar aplicaciones que

funcionan con reconocimiento de gestos y de voz. Algunas de las características más importantes

que permite el SDK son:

Page 220: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 210

Capturar y procesar los flujos de datos de profundidad y color.

Detección del esqueleto humano y movimientos del mismo.

Capturar el flujo de datos de audio.

Ajustar el ángulo del sensor.

6.5.2.2 Clasificación de las librerías del SDK

Para entender las funcionalidades de las diferentes librerías y saber cómo utilizarlas, se

pueden clasificar las mismas en dos categorías:

Las que controlan el acceso a los sensores de Kinect

Las que acceden a los micrófonos y controlan el audio

La primera categoría es la que se encarga de los sensores capturando datos de color,

datos de profundidad, detectando el esqueleto e inicializando el dispositivo. Un conjunto amplio

de librerías en esta categoría, interactúan directamente con el hardware del sensor, mientras que

otras librerías se encargan de aplicar los datos capturados del mismo.

Figura 6-7 – Estructura de librerías del SDK

Page 221: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 211

Por otro lado, las librerías de audio controlan el arreglo de micrófonos de Kinect y

ayudan a capturar el flujo de datos de audio, controlando la fuente del sonido, permitiendo el

reconocimiento de voz, etc.

6.5.2.3 Desarrollar aplicaciones con Kinect SDK

Luego de la instalación de los componentes y de haber conectado satisfactoriamente

Kinect a la PC, el siguiente paso es configurar el entorno de desarrollo (Visual Studio en este

caso) para poder desarrollar las aplicaciones para Kinect. Cabe aclarar que los ejemplos de

código y de configuración del entorno dados en esta sección, son para el lenguaje C# y que los

ejemplos de programación abarcarán principalmente el manejo de los flujos de datos de las

imágenes que otorga Kinect, para más información se puede consultar la bibliografía de

referencia citada al final del capítulo. (Jana, 2012)

Crear el proyecto e importar la librería de Kinect en la aplicación

Para empezar a codificar en VS, lo primero que se debe hacer es crear el proyecto y

añadir las sentencias using para poder permitir importar las librerías necesarias, en este caso, la

referencia anteriormente agregada al SDK. Entonces, se abre el archivo

MainWindow.xaml.cs desde el explorador de soluciones y se escribe la siguiente línea de

código en la parte superior del programa:

using Microsoft.Kinect;

La clase KinectSensor es parte de las librerías del SDK, y es la responsable de la

mayoría de las operaciones con el sensor Kinect. Se debe crear una instancia de esta clase y luego

utilizar dicha instancia para el control del dispositivo y para leer la información del mismo.

En una aplicación para Kinect, cada dispositivo debe estar representado como una

instancia de la clase KinectSensor, ya que esta representará la tubería de datos completa del

sensor en tiempo de ejecución.

Page 222: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 212

En el siguiente diagrama, se muestra la utilización del sensor Kinect mientras dure la

aplicación. En el mismo se observa una fase de inicialización, una fase de operación y una fase de

baja del sensor. Estas tres fases son las que generalmente se deben hacer en una aplicación para

Kinect.

Figura 6-8 – Fases de la instancia del sensor dentro de una aplicación

El objeto del sensor se define como cualquier otro objeto. Dicho objeto definido, solo

entrará en acción cuando se inicializa alguna de las operaciones específicas de Kinect, como el

flujo de datos de profundidad o color. Para definir dicho objeto, entonces, se procede de la

siguiente manera:

KinectSensor sensor;

El objeto (en este caso llamado sensor) necesita una referencia al dispositivo de Kinect

para poder utilizarse y ser instanciado, ya que este no posee un constructor público. El SDK

inicializa los objetos KinectSensor cuando detecta un dispositivo Kinect ligado al sistema.

La clase KinectSensor tiene una propiedad estática del tipo

KinectSensorCollection, cuyo nombre es KinectSensors, la cual consiste en el

conjunto de sensores que están conectados al sistema. La colección

KinectSensor.KinectSensors, entonces, retorna el conjunto de dispositivos Kinect

conectados a la PC.

Page 223: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 213

Entonces, si se tienen dos sensores conectados, el índice

KinectSensor.KinectSensor[0], representará el primer dispositivo Kinect y el índice

[1] representará al segundo.

Para obtener la referencia al sensor conectado, se debe realizar la siguiente operación:

this.sensor = KinectSensor.KinectSensors[0];

Una vez que se tiene el objeto para el Kinect, se debe invocar al método

KinectSensor.Start(), para encenderlo, en este caso sería:

this.sensor.Start();

Cuando se ha finalizado el trabajo con el sensor, se debería llamar al método Stop() para

inhabilitar la instancia del sensor. Por ejemplo:

this.sensor.Stop();

Activar los flujos de datos

La clase KinectSensor tiene eventos específicos que permiten conectarse con los

flujos de datos de imagen a color, de profundidad y del esqueleto, como así también activar los

mismos.

En el SDK, los flujos de datos de color, de profundidad y del esqueleto están

representados por los tipos ColorImageStream, DepthImageStream y

SkeletonStream, respectivamente. Cada uno con un método llamado Enable() para abrir

el flujo a través de la tubería entre el dispositivo y el SDK.

Hay que aclarar que se puede habilitar el flujo de datos sólo después de haber encendido

el sensor mediante el método Start() como se muestra a continuación:

this.sensor = KinectSensor.KinectSensors[0]; this.StartSensor(); this.sensor.ColorStream.Enable();

Page 224: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 214

this.sensor.DepthStream.Enable(); this.sensor.SkeletonStream.Enable();

El flujo de datos de imágenes de Kinect

Un flujo de datos, no es más que una sucesión de frames. Kinect puede obtener esos

frames con un promedio de entre 12 a 30 frames por segundo (fps). El fps varía según la

resolución y el tipo.

Los diferentes flujos son transferidos en diferentes tuberías, las cuales se deben activar

como se mostró anteriormente. El SDK soporta dos formatos de flujos de datos de imágenes:

flujo de datos de color (RGB) y de profundidad (Depth).

La librería ofrece una clase base llamada ImageStream que es una clase abstracta, y

la implementan tanto la clase de flujo de imagen a color, como la de profundidad.

El flujo de datos de la imagen a color (Color o RGB Stream)

Antes de especificar algunas características y las clases que se deben utilizar para

obtener los frames provenientes del flujo de datos de la imagen a color (Color o RGB Stream),

hay que señalar que Kinect permite obtener imágenes de 32 bits y 16 bits por pixel, en el flujo de

datos RGB, con los siguientes rangos de fps y resoluciones:

Imagen a color 32 bits:

640x480 (30 frames por segundo).

1280x960 (a 12 frames por segundo).

Imagen a color 16 bits:

640x480 (30 frames por segundo).

Page 225: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 215

Obtener de los frames a color

Los frames de la imagen a color son del tipo ColorImageFrame. Para obtenerlos, se

debe asociar el objeto a un manejador de eventos o solicitarle al sensor que envíe un frame, es

decir, existen dos formas de adquirir el frame de color, por eventos o por polling.

Modelo por eventos

Utilizando este modelo, el sensor envía el frame a la aplicación cada vez que un frame

nuevo es capturado por el sensor. Para hacerlo, se necesita usar un manejador de eventos en el

lugar del código donde se quieren procesar los frames que se obtienen. Antes de asociar el

evento, se debe configurar el tipo de color y la resolución de los frames de entrada, una vez hecho

esto y asociado el evento, el sensor enviará los datos continuamente hasta que se desactive dicho

envío de datos, o se detenga el dispositivo.

Figura 6-9 – Esquema ilustrativo del modelo por eventos

Modelo por polling

El modelo por polling es conocido por ser un modelo bajo demanda, donde se necesita

enviar la solicitud al sensor si se necesita obtener un frame. Para este modelo, se debe definir el

intervalo de tiempo que transcurrirá entre cada obtención de frame.

Page 226: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 216

Figura 6-10 – Esquema ilustrativo del modelo por polling

Capturar la imagen a color de la cámara de Kinect

Capturar los frames de la imagen a color y mostrarlo en la aplicación, puede implicar los

siguientes pasos:

1. Habilitar el flujo de datos de la imagen a color.

2. Asociar dicho flujo con el manejador de eventos.

3. Procesar los frames entrantes.

4. Renderizar los frames en la aplicación.

5. Iniciar el sensor antes de empezar a transmitir los frames y detenerlo después.

A continuación, se describe cómo proceder a nivel de código en algunos de estos pasos.

Habilitar el flujo de datos de las imágenes a color

La clase KinectSensor, anteriormente descripta, tiene la propiedad ColorStream

del tipo ColorImageStream, que es la encargada de manejar todo lo que se requiere para

capturar la imagen a color generada por la cámara del dispositivo.

Lo primero que se debe hacer es iniciar el sensor con el método start(), y habilitar el

flujo de datos a color con el método Enable() perteneciente a la clase ColorImageStream,

esto se logra de la siguiente manera:

this.sensor.ColorStream.Enable()

Page 227: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 217

Cuando el sensor se encuentre iniciado y el flujo de datos habilitado, Kinect generará el

stream de las imágenes de la cámara a color. El paso siguiente es “hacerle saber” al sensor, qué

hacer cuando se captura un nuevo frame de este tipo. Para lograrlo, se asocia un manejador de

evento al canal o tubería de Kinect por donde pasa el flujo de datos mencionado, lo cual se

ejemplificará más adelante.

Elegir formato de la imagen

Por defecto la función Enable() no acepta argumentos y habilita el flujo de datos con

una resolución RgbResolution640x480Fps30, la cual es una de las opciones de resolución

en el tipo ColorImageFormat.

ColorImageFormat se encuentra definido en la librería Microsoft.Kinect. Se

puede especificar mediante dicho tipo, el formato y la resolución de la imagen con las siguientes

opciones:

RgbResolution640x480Fps30.

RgbResolution1280x960Fps12.

YuvResolution640x480Fps15.

RawYuvResolution640x480Fps15.

InfraredResolution640x480Fps30.

RawBayerResolution640x480Fps30.

RawBayerResolution1280x960Fps12.

Undefined.

Asociar el manejador de eventos

La clase KinectSensor tiene un evento llamado ColorFrameReady, el cual es

invocado cuando hay un nuevo frame enviado por el sensor. Entonces, para asociar el evento a un

manejador, se debe proceder de la siguiente manera:

Page 228: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 218

this.sensor.ColorFrameReady += sensor_ColorFrameReady;

Asimismo, se define el manejador como:

void sensor_ColorFrameReady(object sender, ColorImageFrameReadyEventsArgs e)

{ }

La asociación anteriormente descripta, se debe hacer luego de la inicialización del

sensor. Una vez que se han completado estos pasos, se deben procesar los frames entrantes, esto

se realiza en el manejador de eventos que se ha definido (sensor_ColorFrameReady).

Procesar los frames entrantes

Cuando el manejador descripto en la sección anterior es llamado, significa que un nuevo

frame ha sido enviado por el sensor y que el mismo ya se puede procesar. Los argumentos del

evento, esto es, ColorImageFrameReadyEventsArgs, poseen un método llamado

OpenColorImageFrame() que retorna un frame de la imagen del tipo

ColorImageFrame. A continuación, se podrá observar un ejemplo del formato del manejador

del evento para procesar un frame:

void sensor_ColorFrameReady(object sender,ColorImageFrameReadyEventArgs e) { using (ColorImageFrame RGBframe = e.OpenColorImageFrame()) { // Si el frame es nulo se ignora if (RGBframe == null) { return; } else { // Obtener los datos de los pixeles en un arreglo de bytes this.datosPixel = new byte[RGBframe.PixelDataLength]; // Se copian los datos de los pixel en datosPixel RGBframe.CopyPixelDataTo(this.datosPixel); // Se calcula el segmento (stride)

Page 229: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 219

int stride = RGBframe.Width * RGBframe.BytesPerPixel; //Se asigna el mapa de bits (Bitmap) al control de la interfaz de la //aplicacion para mostrar la imagen this.VideoControl.Source = BitmapSource.Create( RGBframe.Width, RGBframe.Height, 96, 96,PixelFormats.Bgr32, null, pixelData, stride); } }

}

Cada vez que Kinect envía un nuevo frame, se invoca el manejador, y en el primer paso,

se lee el ColorImageFrame, que retorna el frame del tipo devuelto por el método

OpenColorImageFrame().

Acto seguido, se verifica que el frame recibido contenga información y se calcula el

tamaño del frame en el arreglo byte[]. La propiedad PixeDataLength es de solo lectura y

retorna el tamaño de los datos del pixel. Internamente es una propiedad abstracta de la clase

ImageFrame y es sobrescrita por la clase ColorImageFrame. Dicha propiedad otorga el

tamaño de los datos del pixel en formato de número entero (int).

Se copia el arreglo de los datos de los pixeles en el frame invocando al método

CopyPixelDataTo().

Por último, se crea una fuente de imagen en formato de mapa de bits (Bitmap) con la

imagen del frame y se asigna el mismo al control de la imagen.

El método BitmapSource.Create() crea un BitmapSource desde un arreglo

de pixeles. La información del pixel se encuentra almacenada en las variables RGBframe y

datosPixel. El único parámetro que se necesitará saber es el ancho (en bytes) de un segmento

de datos del pixel incluyendo el relleno (esto se encuentra asignado a la variable stride).

En la siguiente figura, se muestra que el ancho total de las filas de la imagen es el

segmento donde los datos del pixel representan el ancho actual de la imagen, y un pixel extra es

agregado para el relleno.

Page 230: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 220

Figura 6-11 – Formato del Bitmap

En esta sección se describió el procesamiento de un solo frame de la imagen, pero una

sucesión similar de operaciones sobre los demás frames, produce el flujo de datos de video

completo. Es decir, se debe proceder de la misma manera (o de manera similar) para procesar los

demás frames y poder reproducir la imagen de la cámara a color de Kinect en la aplicación.

El flujo de datos de la imagen de profundidad (depth stream)

Kinect devuelve el stream de datos de profundidad como una sucesión de frames de

profundidad. Pero en realidad, no solo es eso, por detrás Kinect utiliza una serie de algoritmos en

los datos capturados que dan al desarrollador más que una imagen, le otorga al mismo la

información de qué tan lejos está cada pixel contenido en el frame. El pixel de profundidad

contiene la información de la distancia entre el dispositivo y los objetos frente a él en milímetros.

El formato de dichos datos está basado en las coordenadas X e Y del sensor. Así, por ejemplo, si

las coordenadas de un pixel son 200x300, los datos de profundidad de ese pixel contiene la

distancia en milímetros del mismo a Kinect, como se muestra en la siguiente imagen.

Page 231: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 221

Figura 6-12 – Esquema que grafica la representación de los datos de un pixel de profundidad

Las resoluciones soportadas para el flujo de datos de profundidad a 30 frames por

segundo (fps) son:

640x480.

320x240.

80x60.

En el capítulo anterior se describió la manera en que Kinect logra capturar estos datos e

informaciones sobre la profundidad de la escena. Por lo tanto, a continuación, y al igual que

como se lo hizo en la sección anterior con el flujo de datos a color, se describirá a nivel de código

la manera de capturar y procesar el flujo de datos de profundidad.

Capturar y procesar los datos de profundidad

Los pasos a seguir para capturar y procesar los datos de profundidad, son similares a los

que se enumeraron en la obtención de los datos a color:

1. Habilitar el flujo de datos de profundidad y su formato.

2. Asociar a dicho flujo de datos, un manejador de eventos.

3. Procesar los frames de profundidad entrantes.

Page 232: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 222

4. Renderizar los frames en la aplicación.

Habilitar el flujo de datos de profundidad y elegir el formato de la imagen

Al igual que el flujo de datos de color, la clase KinectSensor también posee la

propiedad DepthStream y ésta, a su vez, tiene el método Enable() para habilitar el canal de

flujo de datos de profundidad.

this.sensor.DepthStream.Enable();

La clase ImageStream tiene un método sobrecargado para Enable(). Por defecto, el

sensor habilita el flujo de datos con una resolución Resolution640x480Fps30. Si se quiere

inicializar con otro formato de imagen, se utiliza el método Enable() con el argumento de tipo

DepthImageFormat como se muestra a continuación:

this.sensor.DepthStream.Enable(DepthImageFormat.Resolution320x24

0Fps30);

Asociar el manejador de eventos

Una vez que se ha habilitado el flujo de datos de profundidad, se debe asociar el

manejador de eventos DepthFrameReady al evento que se ejecuta cada vez que se recibe un

nuevo frame de profundidad, de la siguiente manera:

Sensor.DepthFrameReady+=newEventHandler

<DepthImageFrameReadyEventArgs> (sensor_DepthFrameReady);

Procesar los frames de profundidad

El manejador de eventos DepthFrameReady invoca con los argumentos

DepthImageFrameReadyEventArgs que poseen el método OpenDepthImageFrame() para

retornar el frame de la imagen de profundidad enviado por el sensor.

La definición del método DepthFrameReady debería ser:

Page 233: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 223

void sensor_DepthFrameReady

(object sender, DepthImageFrameReadyEventArgs e){}

Para obtener el frame de profundidad, se deben seguir pasos similares a los vistos

precedentemente en la recuperación de los frames a color. A continuación se ejemplifica cómo

debería quedar el contenido del manejador de eventos:

using (DepthImageFrame depthimageFrame = e.OpenDepthImageFrame()) { if (depthimageFrame == null) { return; } short[]datosPixel = new short[depthFrame.PixelDataLength]; int stride = depthFrame.Width * 2; depthFrame.CopyPixelDataTo(datosPixel); depthUI.Source = BitmapSource.Create(depthFrame. Width, depthFrame.Height, 96, 96, PixelFormats.Gray16, null, datosPixel, stride );

}

En primer lugar, se obtuvo el frame utilizando el método

OpenDepthImageFrame(), el cual retorna los datos de profundidad crudos desde el sensor.

datosPixel crea un buffer del tamaño del frame de profundidad entrante (es del tipo short[]

porque son datos en formato 16-bits).

Al igual que los frames a color, los frames de profundidad tienen similares propiedades

para copiar los datos de los pixeles en el buffer, por ejemplo, CopyPixelDataTo() se utiliza

para copiar desde el arreglo de datos de un pixel al nuevo buffer. Antes de copiar dichos datos, se

calcula el tamaño del buffer utilizando la propiedad DepthImageFrame. Como el frame de

profundidad es una imagen de 16 bits en escala de grises, se debe especificar el PixelFormats

como Gray16, además de crear el mapeo de bits para el control de la imagen de profundidad

(Bitmap).

Page 234: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 224

Por último, se crea el objeto BitmapSource y se asigna al control de la imagen

depthUI, el cual está definido en la interfaz de la aplicación para mostrar en pantalla el stream

de datos, esto se logra definiendo en el archivo de interfaz (XAML) la imagen de la siguiente

manera:

<Image Name= "depthUI" Strech= "Fill" />

Detectar el esqueleto

En el capítulo anterior se vieron los algoritmos y la tecnología que utiliza Kinect para

detectar el esqueleto humano.

Figura 6-13 – Los puntos del cuerpo humano que detecta Kinect

Page 235: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 225

Por lo tanto, en esta sección, se darán a conocer los conceptos básicos para manejar los

datos que genera el dispositivo y que el SDK brinda al desarrollador para crear aplicaciones

utilizando esta funcionalidad. Hay que recordar que puede detectar hasta 20 puntos o

articulaciones del cuerpo.

El SDK también soporta la detección (o tracking) de un esqueleto “sentado”. Esto

significa que se puede detectar una persona que se encuentra sentada, y su esqueleto se

representará con 10 puntos o articulaciones.

Figura 6-14 – Esqueleto en modo sentado

Detección de los puntos o articulaciones (joints) del cuerpo humano

Los datos del esqueleto son devueltos por Kinect en la clase SkeletonStream. Para

configurar si la detección es la estándar (20 puntos del cuerpo) o en modo sentado, se utiliza

SkeletonTrackingMode cuando se inicializa el flujo de datos del esqueleto. El proceso de

obtener los datos del esqueleto, sigue la misma modalidad que en los flujos de datos a color y de

profundidad. El objeto KinectSensor tiene un evento llamado SkeletonFrameReady, el

cual se lanzará cada vez que los nuevos datos del esqueleto enviados por el sensor estén

disponibles. En este caso, cada frame del SkeletonStream produce un conjunto de objetos de la

clase Skeleton. Cada uno de estos objetos contiene, a su vez, los datos de una serie de puntos

(o articulaciones) Joint los cuales son agrupados en el objeto JointCollection.

Page 236: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 226

Para una mayor simplicidad y practicidad, se ejemplificará la detección y seguimiento de

la mano derecha del esqueleto.

Asignar un lugar a la mano en la interfaz de la aplicación

Lo primero que se debería hacer es representar la mano (o cualquier punto del cuerpo)

en la interfaz de la aplicación. Para esto, en el archivo XAML de la aplicación, se debe

reemplazar la sentencia Grid, que está definida por defecto, por la sentencia Canvas, y añadir

un control llamado Ellipse, y por último ponerle un nombre al mismo, en este caso,

manoDerecha. El archivo debe quedar de la siguiente manera:

<Canvas> <Ellipse Canvas.Left="0" Canvas.Top="0" Fill="Blue" Height="15" Name="manoDerecha" Width="15" />

</Canvas>

Canvas será la vista general, donde ellipse representará el punto de la articulación,

en este caso, la mano derecha.

Instanciar y habilitar la detección del esqueleto

Por supuesto que se da por sentado que debe existir la instancia del sensor (explicada

más arriba) de la clase KinectSensor, e iniciar el mismo (método start()). Una vez que se

tiene la referencia al sensor, se debe habilitar el flujo de datos del esqueleto mediante la

propiedad SkeletonStream, con el método Enable(). Luego se debe asociar el evento para

dicho flujo de datos, el cual invocará al método sensor_SkeletonFrameReady()

automáticamente siempre que el dispositivo genere un nuevo frame del esqueleto, dichas líneas

de código se ejemplifican a continuación:

this.sensor.SkeletonStream.Enable(); this.sensor.SkeletonFrameReady += sensor_SkeletonFrameReady;

Page 237: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 227

Cabe destacar que el procesamiento de los datos del esqueleto consume muchos recursos

y por eso es una buena práctica deshabilitarlo. Esto se logra utilizando el método Disable().

Procesar los frames del esqueleto

Como se dijo anteriormente, siempre que el sensor genere un frame del esqueleto, el

método sensor_SkeletonFrameReady() se invocará con el evento registrado

SkeletonFrameReady. Cuando dicho método sea invocado, el argumento del mismo será del tipo

SkeletonFrameReadyEventArgs, el cual tiene un método llamado

OpenSkeletonFrame() que lee el objeto SkeletonFrame del sensor.

Entonces, la definición estándar del método que manejará el evento

SkeletonFrameReady será:

void sensor_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) { }

Los pasos para obtener el frame son similares a los anteriormente vistos para los otros

flujos de datos (color y profundidad). El bloque de código del método debería quedar de la

siguiente manera:

void sensor_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e) { using (SkeletonFrame esqueletoFrame = e.OpenSkeletonFrame()) { if (esqueletoFrame == null) { return; } esqueletoFrame.CopySkeletonDataTo(totalEsqueletos); Skeleton primerEsqueleto = (from trackskeleton in totalEsqueletos where trackskeleton.TrackingState == SkeletonTrackingState.Tracked select trackskeleton).FirstOrDefault();

Page 238: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 228

if (primerEsqueleto == null) { return; } if ( primerEsqueleto.Joints[JointType.HandRight].TrackingState == JointTrackingState.Tracked) { this.MapearElementoEnUI(primerEsqueleto); } }

}

El primer paso es obtener el frame utilizando el método OpenSkeletonFrame(), y

guardarlo en el objeto esqueletoFrame. Una vez que se tiene dicha información, se copia el

conjunto de datos completo al arreglo totalEsqueletos utilizando el método

CoySkeletonDataTo(). La definición del arreglo totalEsqueletos (el cual es un arreglo a

nivel de clase) debería ser:

Skeleton[] totalEsqueletos = new Skeleton [6];

Hay que aclarar que el tamaño (seis), es para poder almacenar hasta seis esqueletos, tal

cual lo permite el sensor.

Para una mayor simplicidad, se considerarán los datos de un solo esqueleto. El método

busca los esqueletos que se han detectado (Tracked) y finalmente selecciona el primero del

arreglo. La variable primerEsqueleto almacenará los puntos de tal esqueleto.

El siguiente paso es mapear los puntos del esqueleto en la interfaz de la aplicación. Esto

es así porque permitirá, utilizando la información de cada frame, obtener el movimiento de dicho

punto del cuerpo (en este caso la mano derecha). Para hacerlo, se invoca el método

MapearElementoEnUI() desde el método sensor_SkeletonFrameReady().

this.MapearElementoEnUI(primerEsqueleto);

Page 239: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 229

Mapear los puntos del esqueleto con elementos de la aplicación

Otro aspecto de la detección del esqueleto es el mapeo y escalado del mismo para

representarlo en pantalla. El método MapearElementoEnUI() recibe los detalles del

esqueleto, esto es, la posición de los puntos del mismo en el espacio. En el siguiente ejemplo, se

mapea la elipse (definida anteriormente) y los puntos del esqueleto. Como ya se aclaró, se usará

como ejemplo la mano derecha, entonces, para este caso, se utilizará el punto

JointType.Handright:

private void MapearElementoEnUI(Skeleton skeleton) { Point puntoMapeado = this.ScalePosition(skeleton.Joints[JointType. HandRight].Position); Canvas.SetLeft(righthand, puntoMapeado.X); Canvas.SetTop(righthand, puntoMapeado.Y); }

La representación del esqueleto en un espacio, se la conoce como “espacio del

esqueleto”. En definitiva, cada posición está representada con coordenadas x, y, z. El método

EscalarPosicion(), que se muestra a continuación, convierte un SkeletonPoint en un

DepthImagePoints, los cuales se usan para mapear las coordenadas para los elementos de la

interfaz de la aplicación (en este caso la elipse):

private Point EscalarPosicion (SkeletonPoint puntoEsqueleto) { DepthImagePoint puntoDepth = this.sensor.CoordinateMapper. MapSkeletonPointToDepthPoint(puntoEsqueleto,

DepthImageFormat.Resolution640x480Fps30); return new Point(puntoDepth.X, puntoDepth.Y);

}

La variable puntoDepth retorna los puntos X e Y correspondientes a los puntos del

esqueleto. La conversión para el mapeo la realiza internamente el SDK de Kinect.

Para profundizar la programación con el SDK, se recomienda la bibliografía (Giorio &

Fascinari, 2013) y (Jana, 2012).

Page 240: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 230

6.5.2.4 ¿Usar OpenNI o SDK de Kinect para Windows?

Actualmente, tanto OpenNI (junto a Processing y SimpleOpenNI) como el SDK de

Kinect para Windows, son las dos herramientas más populares para desarrollar aplicaciones para

Kinect. A continuación un se encuentra un grafico comparativo.

Figura 6-15 – Comparación SDK – OpenNI

Page 241: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 231

En función de la imagen anterior, que evidenciado que las dos son igualmente útiles y

potentes, solo que depende de las necesidades del programador el usar una o la otra:

6.6 DRIVERS

Como ya se mencionó en el presente capítulo, existen los drivers oficiales de Kinect

brindados por Microsoft, y los no oficiales generados por las distintas comunidades que

desarrollan aplicaciones con Kinect.

Entre los no oficiales, podemos destacar principalmente el desarrollado por la

comunidad OpenKinect, denominado "libfreenect", el cual brinda la posibilidad a los

programadores de comunicarse con el dispositivo tanto en Linux como en Mac, utilizando como

framework OpenNI.

6.7 ELECCIÓN DE LAS HERRAMIENTAS

Para concluir el capítulo, se puede decir que se han probado la mayoría de las

herramientas y librerías aquí nombradas, y que, si bien tienen sus diferencias entre sí, la manera

de desarrollar aplicaciones para Kinect es similar en todas. Se tienen los tres flujos de datos

(color, profundidad, esqueleto) y por cada uno existe una tubería entre Kinect y la aplicación que

pasa frame por frame, debiendo la aplicación procesar los mismos y realizar allí la lógica

necesaria para cumplir sus objetivos, siendo esa la estructura básica para programar aplicaciones

usando Kinect.

De todas maneras, se han encontrado algunos inconvenientes a la hora de la elección de

las herramientas para desarrollar la aplicación y cumplir los objetivos planteados. Uno de ellos

fue la diferencia entre el aprovechamiento de las funcionalidades de Kinect, esto es, algunas de

ellas admiten utilizar funcionalidades de Kinect que otras no lo hacen. Por ejemplo, la función de

reconocimiento de voz, si se quiere usar OpenNI, no es soportada. Pero por otro lado, OpenNI

dentro de su librería facilita el reconocimiento de los dedos, lo cual incluso agrega una nueva

funcionalidad a Kinect.

Page 242: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 232

Otro aspecto a tener en cuenta, es la documentación de cada una de las herramientas.

Algunas de ellas están muy bien documentadas y respaldadas hasta la actualidad e incluso siguen

desarrollándose nuevas versiones, como es el caso del SDK de Kinect para Windows, y otras, si

bien se han desarrollado nuevas versiones, no han sido bien documentadas como es el caso de

SimpleOpenNI.

En cuanto a los lenguajes de programación y las plataformas, se puede decir que existen

diversas opciones de lenguajes para programar en Kinect. En ese aspecto depende de la experticia

del programador en cada uno de ellos. Con respecto a las plataformas soportadas, se analizó la

viabilidad de realizar el “caso de aplicación” en Linux, descartando Mac ya que no se dispone

con el hardware necesario. Sobre Linux se probó el driver no oficial “libfreenect” en conjunto

con OpenNI, NITE y Processing. Se lograron las siguientes funcionalidades:

Comunicarse con el Kinect.

Inicializar y configurar el Kinect.

Detectar y obtener el esqueleto.

Generar gestos predefinidos mediante un algoritmo. Esto significa que el gesto es

creado mediante estructuras de código previamente programadas, lo que

comúnmente se denomina hardcode.

Detectar gestos y posturas predefinidas.

Por otro lado, no se lograron ciertas funcionalidades:

Detección de voz.

Grabación de gestos no predefinidos en un archivo.

Detección de gestos no predefinidos almacenados en un archivo.

Las principales funcionalidades que se plantearon al principio de la tesina, no se

pudieron realizar bajo la plataforma Linux. Cabe destacar, que al utilizar drivers no oficiales el

rendimiento de las aplicaciones es menor que al utilizar drivers oficiales.

Page 243: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 233

Por otro lado, el costo/beneficio de realizar la aplicación en esta plataforma es muy

elevado, ya que ciertas funcionalidades son muy complejas de realizar, y otras no se lograron con

las herramientas analizadas, para lo cual se deberían investigar y utilizar herramientas adicionales

para suplir dichas funcionalidades.

Como último detalle de las pruebas realizadas sobre Linux, la instalación, configuración

y uso de todas las herramientas analizadas, no están casi documentadas, lo cual contrasta con lo

que esta plataforma otorga a su comunidad de desarrolladores, como así también, muchas de ellas

están en versiones beta. Esto seguramente se debe a que es una tecnología bastante nueva, para lo

cual la comunidad de Linux necesita tiempo para generar dichos contenidos.

Todas las pruebas también se realizaron con el SDK de Kinect, bajo la plataforma

Windows, las cuales fueron exitosas.

En definitiva, cuando se analizaron las herramientas y relacionando cada una de ellas

con el caso de aplicación que se pretendía desarrollar, se optó por utilizar el SDK de Kinect para

Windows (en su versión 1.8), incluyendo la librería Kinect Toolbox y usando como entorno de

desarrollo Visual Studio Express 2012. El SDK mencionado, permite el reconocimiento de voz,

aspecto fundamental de una aplicación como la que se pretende desarrollar (y que se explicará en

el capítulo siguiente), y la librería Kinect Toolbox tiene funcionalidades que sirven de ayuda para

la detección de gestos, los cuales son la base de la aplicación mencionada.

Por otro lado, la documentación y las actualizaciones que poseen estas tres herramientas

(sobre todo el SDK) son de gran utilidad, permiten de un rápido aprendizaje y se dispone de un

lugar específico para evacuar dudas a la hora del desarrollo. Además, la librería Kinect Toolbox

al ser de código abierto, permite modificaciones para adaptarla a los requerimientos de la

aplicación e integrarla con nuevas versiones del SDK (por ejemplo, la 1.8).

Así pues, en el capítulo siguiente, se describirá el caso de aplicación que fue

desarrollado con las herramientas ya mencionadas y descriptas en esta sección.

Page 244: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 234

Capítulo 7

7 CASO DE APLICACIÓN

En el presente capítulo se describirá el caso de aplicación propuesto, la manera en la

cual fue desarrollado, los objetivos y la lógica del mismo. Como así también su arquitectura y la

manera en que debe ser utilizada la aplicación.

Page 245: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 235

7.1 PROBLEMA A RESOLVER

7.1.1 OBJETIVO

Como se planteó al principio de la tesina, uno de los objetivos era:

“Desarrollar una aplicación utilizando un dispositivo de detección y reconocimiento de

gestos, analizando las distintas características que posee, como así también las distintas

funcionalidades que se pueden explotar del mismo y su integración con la Realidad Aumentada”.

Dicho objetivo fue propuesto como una idea general, el cual, luego de la investigación

realizada para el desarrollo de la tesina, se puede replantear como:

“Desarrollar una aplicación interactiva que permita la detección, grabación y

almacenamiento de gestos dinámicos utilizando el dispositivo de reconocimientos de gestos

‘Kinect’, la aplicación mencionada puede ser controlada mediante comandos de voz y elementos

de Realidad Aumentada”.

7.1.2 RESUMEN

La aplicación pretende ser utilizada en el tratamiento de rehabilitación de aquellas

personas que sufrieron un ACV (Ataque Cerebro Vascular). Un médico puede generar un plan de

ejercicios de rehabilitación mediante la aplicación. Esto quiere decir que el médico puede

diagramar una serie de ejercicios y grabarlos, indicando la cantidad de repeticiones de los

mismos, para que luego el paciente realice los ejercicios mediante el uso de la aplicación. Este

plan de rehabilitación es específico para cada paciente. Además, la aplicación puede ser

controlada mediante gestos, comandos de voz y elementos de Realidad Aumentada.

El medico graba una sesión que corresponde a una serie de ejercicios que el paciente

debe realizar diariamente. Antes de iniciar la grabación del ejercicio, el médico debe selecciona

con que parte del cuerpo va a realizar el mismo, las cuales pueden ser:

Page 246: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 236

Cabeza.

Mano derecha o izquierda.

Rodilla derecha o izquierda.

Cuando se está grabando un ejercicio, se graban tanto los datos propios del gesto como

así también el video capturado por la cámara. El médico ingresa en la aplicación la cantidad de

repeticiones que el paciente debe realizar del gesto mencionado. Luego, el paciente visualiza en

la aplicación el video demostrativo de cómo tiene que hacer el ejercicio, para finalmente intentar

realizarlo. Cada vez que realice un ejercicio correctamente, la aplicación le dirá si debe repetir el

gesto (ejercicio) en el caso de que el médico así lo haya indicado, o si no la aplicación continuará

con el siguiente ejercicio. Una vez que el paciente realizó correctamente todos los ejercicios,

finaliza la sesión.

7.1.3 CAMPO DE APLICACIÓN

Se analizaron numerosos campos de aplicación, los cuales se nombraron a lo largo de la

tesina, seleccionando el de la medicina.

Se entrevistaron dos médicos clínicos para relevar información específica del campo de

aplicación y así poder plantear el problema a resolver. Considerando dichas entrevistas, junto con

la investigación realizada, se concluyó desarrollar lo siguiente:

“El presente caso de aplicación tiene como objetivo permitir a las personas que han

sufrido ACV (Accidentes Cerebro Vasculares) rehabilitarse en su casa de una manera

interactiva, pero conservando las pautas dadas por un especialista. Ello se logrará mediante una

aplicación la cual se compone de los conceptos ya vistos en la presente tesina, esto es, Interfaces

Gestuales, Realidad Aumentada y el dispositivo Kinect”.

Page 247: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 237

7.1.3.1 ¿Qué son los ACV?

El Accidente Cerebrovascular puede producir la pérdida de movimiento de una mitad

del cuerpo, completa (hemiplejia) o parcial (hemiparesia), lo cual puede ser generado por una

lesión de una parte del cerebro que se debe a:

Una hemorragia por ruptura de una arteria del cerebro.

Un coagulo sanguíneo que impide la circulación en una arteria cerebral.

7.1.3.2 Tratamiento

Para enfrentarse con esta patología, junto con el tratamiento médico, la rehabilitación ha

demostrado ser una parte importante para ayudar a la recuperación del paciente. Aunque puede

ocurrir que al finalizar el periodo de rehabilitación, los enfermos permanezcan estabilizados con

algunos déficit. Pudiendo, de esta manera, persistir una pérdida de fuerza en un miembro

superior, que puede dificultar la movilidad y manipulación con el mismo; o afectar al miembro

inferior, o incluso quedar paralizado, dificultándole o impidiéndole caminar normalmente. El

paciente y su familia deben afrontar esta situación en su domicilio para reintegrarse dentro de sus

posibilidades a una vida activa. En otras palabras, el paciente debe “volver a aprender a manejar

su cuerpo”, en especial los miembros que fueron afectados. (Cáceres, 2007)

Por otra parte, los ejercicios recomendados para lograr este objetivo, deben ser suaves y

repetitivos, en algunos pacientes se requiere de la ayuda de una persona, que generalmente, es un

especialista.

7.1.3.3 Fundamentación

Hay que destacar que dichos tratamientos y la visita que los especialistas realizan a los

hogares con el fin de rehabilitar al paciente, son pagos (y caros), y en la mayoría de los casos las

obras sociales no suelen cubrir estos gastos.

Como ya se mencionó, el objetivo es brindar una herramienta para que los pacientes

tengan una rehabilitación interactiva y que dependan en menor medida de dichos especialistas.

Page 248: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 238

Para lograrlo, se utilizará el dispositivo Kinect que reúne las características requeridas

para cumplir dicho objetivo. Además, la aplicación otorgará al médico la posibilidad de grabar

una sesión de ejercicios específicos para que un determinado paciente pueda repetirlos en su

domicilio con el seguimiento de un especialista, y mediante la combinación de la aplicación y el

sensor mencionado, se le indicará cuántas veces debe realizar un determinado ejercicio, si se ha

realizado correctamente, o bien, si todos los ejercicios de la sesión fueron realizados con éxito.

La aplicación tiene como objetivo motivar al paciente a realizar los ejercicios, mediante

su novedosa capacidad de interacción mediante gestos, movimientos del brazo, y la utilización de

palabras como comandos de voz.

Además, esta aplicación cumple con el requisito fundamental que indica el tratamiento:

“Los ejercicios recomendados en el tratamiento del ACV, deben ser suaves y repetitivos,

indicados y monitoreados por un especialista”.

El hecho de que su propio médico pueda determinar los ejercicios que debe realizar y la

cantidad de veces que debe repetir cada uno de ellos, da una mayor seguridad al paciente de que

es capaz de completar la sesión de ejercicios que éste le otorgo de manera personal. Esto es

porque el médico conoce las capacidades motrices de su paciente, y sabe el grado de afectación

que le provocó el ACV.

7.2 ANÁLISIS DE REQUERIMIENTOS

7.2.1 REQUERIMIENTOS FUNCIONALES

La aplicación a desarrollar debe cumplir con las siguientes funcionalidades:

Grabar una serie de ejercicios. La aplicación debe ser capaz de dar la

posibilidad de grabar una lista de ejercicios, e ingresar la cantidad de repeticiones

para cada uno de ellos.

Page 249: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 239

Seleccionar la parte del cuerpo con la cual se debe realizar el ejercicio. Se

debe poder seleccionar la parte del cuerpo con la cual se grabará el ejercicio y,

por ende, con la cual se deberá realizar el mismo.

Almacenar la lista de ejercicios. La lista de ejercicios grabada, junto con las

repeticiones y la parte del cuerpo con la cual realizarlo, deben ser almacenados

para que dichos datos sean transportables.

Visualizar la demostración de cada uno de los ejercicios. Se debe poder

visualizar una demostración del ejercicio cuantas veces sea necesario, y debe

saber con qué parte del cuerpo se debe realizar.

Detectar si se realizó bien el ejercicio. Se debe detectar e informar si se ha

realizado correctamente el ejercicio, además de saber cuántas repeticiones

quedan por realizar del mismo o si ya se puede pasar al siguiente ejercicio en la

lista.

Controlar la aplicación mediante comandos de voz y elementos de Realidad

Aumentada. Se debe permitir la interacción con la aplicación y lograr la

retroalimentación visual mediante elementos de la Realidad Aumentada.

Asimismo, se tiene que permitir realizar ciertas acciones mediante comandos de

voz.

7.2.2 REQUERIMIENTOS NO FUNCIONALES

Debe garantizar la persistencia de los gestos y su video demostrativo en archivos

del sistema.

Debe contar con una ayuda interactiva.

Debe tener una interfaz moderna, interactiva, sencilla e intuitiva.

Se debe emplear un controlador de versiones. En este caso, se empleó el

controlador de versiones GIT para el desarrollo de la aplicación.

Debe responder rápidamente a las interacciones realizadas por los usuarios.

Page 250: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 240

Debe ser capaz de responder adecuadamente frente a errores ocurridos en su

ejecución.

7.3 DISEÑO

7.3.1 ARQUITECTURA

Para lograr mediante un dispositivo Kinect llegar a una aplicación que detecte y grabe

gestos, sea controlada por comandos de voz y elementos de Realidad Aumentada entre otras

cosas, son necesarias muchas herramientas y componentes en el medio.

Figura 7-1 - Como llegar desde el Kinect a una aplicación

De acuerdo a la arquitectura definida en el capítulo anterior, las siguientes herramientas

fueron las seleccionadas:

Tabla 7-1 - Herramientas utilizadas

Capas Herramientas

Frameworks y librerías gráficas WPF

Aplicación Visual Studio .Net y C#

Wrapper Kinect Toolbox, Microsoft.Speech.Recognition

Page 251: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 241

Framework SDK de Microsoft versión 1.8

Drivers Drivers oficiales de Kinect

7.3.1.1 Drivers

Los drivers utilizados para comunicar Kinect con el sistema operativo y el framework

que se explicará a continuación, son los drivers oficiales lanzados por Microsoft. Ello así porque

permiten una completa compatibilidad con las herramientas seleccionadas en el resto de las capas

de la arquitectura, y una inmejorable utilización de todas las capacidades de Kinect.

Figura 7-2 – Drivers oficiales de Kinect instalados en Windows

7.3.1.2 Framework

El framework es la de las capa más importante de la arquitectura, ya que define las API

para escribir las aplicaciones. Para el desarrollo del caso de aplicación, se optó por utilizar el

SDK de Microsoft (en su versión 1.8), el cual, entre otras funciones, permite utilizar comandos de

voz para interactuar con la aplicación.

Page 252: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 242

7.3.1.3 Wrapper

Para facilitar el uso de las funcionalidades que brinda el SDK antes mencionado, se

utilizó Kinect Toolbox, el cual simplifica la utilización de varias funciones que provee dicho

framework.. Además, el hecho de que sea de código abierto, permite adecuar el mismo a los

requerimientos de la aplicación.

Para la parte de reconocimiento los comandos de voz, se utilizó la librería de Windows

“Microsoft Speech Recognition” junto con la librería de reconocimiento de comandos de Kinect

“Kinect Speech” y con el paquete de idioma para español latino.

7.3.1.4 Aplicación

La lógica de la aplicación será explicada más adelante, pero hay que destacar que, dadas

las herramientas seleccionadas en las capas precedentes, se tuvo que optar por lenguajes de

programación y entornos de desarrollo compatibles con las mismas. Entre ellos, se encuentran el

IDE Visual Studio (en su versión 2012 Express) y el lenguaje C#, este último es, de las restantes

opciones (C++ y Visual Basic) el que se encuentra mejor documentado en lo referido a la

programación de aplicaciones para Kinect.

Figura 7-3 – Realidad Aumentada e Interfaces Gestuales con Kinect

7.3.1.5 Librerías gráficas y Toolkits

Como herramienta para el aspecto visual de la aplicación se optó por Windows

Presentation Foundation (WPF), ya que es compatible con el lenguaje y con el entorno de

desarrollo elegido, y mediante su modelo de gráficos declarativo, definido por el lenguaje

XAML, permite diseñar la apariencia de la interfaz de usuario.

Page 253: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 243

7.3.2 LÓGICA Y ESTRUCTURA DE LA APLICACIÓN

En la presente sección se describirá la lógica de la aplicación, esto es, la manera en que

se resolvieron los distintos requisitos descriptos anteriormente.

7.3.2.1 Estructura del código fuente

La estructura del código de la aplicación y su modularización está definida de la

siguiente manera:

Figura 7-4 - Estructura del código de la aplicación

Como se ve en la figura anterior, la aplicación (“solución” denominada por Visual

Studio) está divida en tres proyectos, los cuales se explican brevemente a continuación:

ARGIK. Contiene la lógica de grabación y detección de gestos, del médico, del

paciente, y la gestión del Kinect y las ventanas.

Kinect.Toolbox y Kinect.Toolbox.Voice. Estas librerías brindan ciertas

funcionalidades para facilitar la comunicación entre la aplicación y el SDK de

Kinect. Por otro lado, dichas funcionalidades son en algunos casos muy limitadas

y en otros no cumplen con los requerimientos del desarrollo. En consecuencia se

incorporaron las librerías como proyectos, se analizaron y se modificaron para

satisfacer los requerimientos.

Kinect Toolbox

Como ya se mencionó, esta librería se utilizó para facilitar la comunicación de la

aplicación con el SDK de Kinect. Brinda funcionalidades que “agrupan” varias funciones del

Page 254: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 244

SDK mencionado, lo cual reduce en gran medida el esfuerzo que debe realizar el programador.

Cabe recordar, que dado los requerimientos de la aplicación, se tuvo que modificar la mayoría de

sus clases, las cuales se detallan a continuación:

LearningMachine. Esta clase se encarga de analizar el gesto actual (es decir,

el gesto realizado por el participante), compararlo con los gestos cargados

dinamicamente y determinar si son iguales. Dicha igualdad está definida por

varios parametros que determinan el nivel de precisión con el cual la

LearningMachine compara los gestos. Esta clase se modificó

completamente, ya que, como se mencionó en el capítulo anterior,

KinectToolbox solo permite “la detección de gestos predefinidos mediante

bloques de código”, y el caso de aplicación planteado, debe reconocer gestos

creados dinámicamente.

KinectRecorder. Es la clase que permite grabar la sesión de Kinect, esto se

refiere a almacenar los flujos de datos otorgados por las cámaras en un archivo

del sistema, para luego ser reproducido. Esta clase tuvo pequeñas modificaciones

para lograr la compatibilidad con la aplicación.

GestureDetector. Esta clase se encarga de la definición y detección de los

gestos realizados por el participante. Originalmente, solo ofrecía la funcionalidad

de definir gestos mediante bloques de código y detectar dichos gestos

predefinidos. Por esto, dicha clase, fue refactorizada totalmente para cumplir con

el requerimiento ya mencionado.

7.3.2.2 Lógica de la aplicación

La aplicación se divide en tres grandes módulos, como lo ilustra la siguiente figura:

Page 255: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 245

Figura 7-5 - Diagrama de ARGIK

El control de la aplicación al iniciarse lo posee el Menu Principal, el cual interactúa

tanto con el módulo Medico, como con el módulo Paciente. A continuación se explicarán

en detalle cada uno de ellos.

Menu principal

Este módulo se encarga de tomar el control de la aplicación cuando la misma inicia su

ejecución. Tiene como principal objetivo, interactuar con los módulos Medico y Paciente.

Figura 7-6 - Diagrama de flujo de ARGIK

MEDICO

MENU

PRINCIPAL

PACIENTE

Inicializar la

ventana

Inicializar

Kinect

Detectar

Gestos

Liberar los

recursos de Kinect

Pasar el control al módulo

Medico o Paciente según

Page 256: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 246

Como primer paso se inicializa la ventana, lo cual instancia la misma y configura todos

sus elementos y controles correspondientes.

A continuación se inicializa el sensor Kinect, en donde se inicializan los flujos de datos

necesarios del mismo y se configuran todas sus propiedades. Este proceso es casi idéntico en los

tres módulos, por lo cual será explicado más en detalle en la siguiente sección (Medico).

Luego de inicializar y configurar la ventana y Kinect, la aplicación ingresa en el proceso

de Detección de Gestos. Básicamente consiste en analizar cuadro a cuadro el flujo de datos

generado por Kinect, para detectar si el participante hizo click sobre alguno de los botones de la

ventana. También en este proceso, la aplicación analiza y procesa los datos brindados por el set

de micrófonos de Kinect, para identificar si el participante “le indicó alguna orden” al sistema.

Finalmente, cuando se detectó el gesto, la aplicación libera los recursos sobre Kinect y

pasa su control al módulo correspondiente.

Medico

Este módulo implementa la lógica del médico, la cual se puede visualizar en la siguiente

figura.

Figura 7-7 - Diagrama del módulo Medico

Inicializar la

ventana

Inicializar

Kinect

Procesar los

cuadros (frame)

Liberar los recursos

de Kinect

Pasar el control al módulo

MenuPrincipal

Grabar

Gestos

Page 257: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 247

Inicializar la ventana

Inicializa todos los componentes de la ventana.

Se inicializa los componentes (menús, botones, controles) de la ventana como así

también los botones de Realidad Aumentada.

Se verifica si existe algún dispositivo Kinect conectado y genera el evento

correspondiente.

Inicializar Kinect

Inicializa y configura el Kinect.

Se instancia el Kinect y configura sus flujos de datos ColorStream,

DepthStream y SkeletonStream.

Se inicia el Kinect y habilita la ayuda interactiva.

Se carga la detección de gestos y comandos de voz.

Procesar los cuadros (frame)

Analiza cuadro a cuadro la información brindada por los flujos de datos de Kinect.

Se recupera la articulación seleccionada.

Se verifica que exista al menos un esqueleto analizando el flujo de datos

SkeletonStream.

Se analiza el esqueleto y se verifica si el mismo es válido.

Se analiza la articulación seleccionada en caso de que esté activa la grabación de

gestos, de lo contrario se analiza la mano derecha para los botones de Realidad

Aumentada.

Se dibuja el esqueleto dentro de la ventana que muestra los datos de la cámara

RGB de Kinect.

Page 258: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 248

Grabación de Gestos

Gestiona la grabación de la sesión del médico, que incluye la grabación de los gestos, la

cantidad de repeticiones y el video demostrativo de los mismos. Este proceso se inicia cuando el

participante lo indica mediante el botón de Realidad Aumentada o por un comando de voz.

Se inicia la grabación de la sesión y se crea el archivo de configuración de la

misma. Este proceso se dispara por medio de un comando de voz o por el botón

de Realidad Aumentada.

Se inicia la grabación del gesto de la misma forma que el anterior.

Se realiza la grabación el gesto, con lo cual se graba el video de la cámara RGB

y los datos del gesto realizado. También se almacena la cantidad de repeticiones.

Este proceso se repite según la cantidad de ejercicios que el médico requiera.

Se finaliza la grabación de la sesión por medio de un comando de voz o por el

botón de Realidad Aumentada.

Paciente

Figura 7-8 - Diagrama del módulo Paciente

Inicializar la

ventana

Inicializar

Kinect

Procesar los

cuadros (frame)

Liberar los recursos

de Kinect

Pasar el control al módulo

MenuPrincipal

Detectar

Gestos

Page 259: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 249

El módulo Paciente es muy similar con respecto al módulo Medico y solo difieren

en el proceso de Grabación de Gestos, lo cual es su lugar se realiza un proceso de Detección de

Gestos.

Detección de Gestos

Utiliza la sesión grabada por el médico, la cual incluye los gestos grabados, la cantidad

de repeticiones y el video demostrativo. Este proceso se inicia cuando el participante lo indica

mediante el botón de Realidad Aumentada o por un comando de voz.

Se inicia la reproducción de la sesión y se crea carga la configuración desde el

archivo. Este proceso se dispara por medio de un comando de voz o por el botón

de Realidad Aumentada.

Se inicia la detección del gesto, se carga el video demostrativo en pantalla y la

cantidad de repeticiones.

Durante el proceso de detección de gestos, la LearningMachine analiza y

procesa el gesto actual realizado, dentro de un intervalo de tiempo de definido, y

lo compara por medio de un algoritmo matemático con el gesto almacenado para

determinar si son semejantes, en función de ciertos parámetros preestablecidos.

Este proceso se explicará en detalle en la siguiente sección.

Cuando un gesto es detectado, es decir, la LearningMachine determino que

son semejantes, se le avisa al usuario que realizó correctamente el gesto y la

aplicación le indica que repita el gesto o pase al siguiente según corresponda.

Se finaliza la reproducción de la sesión cuando el paciente realizó correctamente

todos los gestos, o se puede terminar en cualquier momento por medio de un

comando de voz o por el botón de Realidad Aumentada.

Page 260: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 250

7.4 DETECCIÓN Y GRABACIÓN DE GESTOS

Antes de introducirse en el análisis y el diseño de la aplicación, se debe explicar cómo se

realiza la detección y grabación gestos, como así también la grabación y reproducción de

sesiones.

Como ya se dijo en reiteradas ocasiones, los gestos pueden ser predefinidos como por

ejemplo “el deslizar una mano de izquierda a derecha” y otros pueden ser almacenados

dinámicamente en una especie de máquina de aprendizaje para luego, mediante un algoritmo, ser

detectados.

7.4.1 DEFINIR UN GESTO SIMPLE CON UN ALGORITMO

El gesto es básicamente un movimiento, entonces, detectar un gesto puede ser definido

como el proceso de detectar un movimiento dado. El principio general de capturar el gesto es

capturar las n últimas posiciones de una parte del cuerpo y aplicarles a las mismas un algoritmo

para detectar un potencial gesto.

Se define una clase llamada GestureDetector, la cual tiene propiedades y métodos

relacionados con la detección del gesto. También define un evento que será llamado cada vez que

un gesto sea detectado.

Heredando de la clase anteriormente mencionada, existe una clase que recorrerá las

posiciones gravadas para determinar si dichos puntos siguen el patrón grabado. Por ejemplo, para

detectar un deslizamiento hacia la izquierda se deberían seguir los siguientes pasos:

Verificar que todos los puntos se encuentran viajando hacia la derecha (eje X)

Verificar que todos los puntos no estén muy lejos uno del otro con respecto a los

ejes Y y Z.

Chequear que haya una buena distancia entre el primer punto y el último.

Page 261: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 251

Verificar que el primer y último punto del patrón fueran creados dentro de un

determinado período de tiempo.

La clase que realiza todas estas tareas es la clase SwipeGestureDetector, la cual

posee una serie de métodos matemáticos para llevar a cabo la detección de los gestos de deslizar

a izquierda y deslizar a derecha. Cabe aclarar que estos son gestos predefinidos, por ende los

algoritmos y cálculos utilizados en dicha clase sirven para detectar sólo ese tipo de gestos.

7.4.2 DETECTAR GESTOS COMPLEJOS POR COINCIDENCIA DE PATRONES

(PATTERN MATCHING)

El concepto de pattern matching en este caso involucra una base de datos de imágenes

grabadas producidas por gestos. Utilizando dicha base de datos, se puede comparar el patrón que

se está realizando en tiempo real, y los que se encuentran en la base de datos (llamadas

plantillas).

Se provee la posibilidad de generar estas plantillas y guardarlas en archivos que harán

las veces de base de datos de gestos. La clase learningMachine, se encarga de comparar el

patrón del gesto en ejecución con los restantes almacenados en la base de datos.

Un gesto en materia de programación se puede considerar con “una secuencia de

puntos ubicados sobre los ejes cartesianos”. Para facilitar la tarea de búsqueda y comparación, se

“normaliza” los puntos obtenidos de los gestos, antes de compararlos. Para lograr esto utiliza el

siguiente método:

Empieza desde un gesto completo. Un gesto es considerado completo cuando

contiene una determinada cantidad de puntos.

Page 262: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 252

Figura 7-9 – Crea un gesto inicial (el cual comienza en el punto violeta)

Genera un nuevo gesto con un número definido de puntos

Figura 7-10 – Normaliza el gesto para que contenga un número de puntos definido

Rotar el gesto para que el primer punto esté a 0 grados

Figura 7-11 – Se rota el patrón para que el primer punto esté a 0 grados (coincida con en el eje horizontal)

Escala el gesto a una graduación de referencia de 1 x 1

Page 263: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 253

Figura 7-12 – Re escala del gesto a una graduación de referencia de 1 x 1

Centra el gesto con el origen

Figura 7-13 – Centra el gesto con el origen

Además de normalizar el gesto, se utiliza el algoritmo de la clase LearningMachine

para realizar la comparación entre el gesto actual y todos los gestos guardados en su base de datos

de gestos. El algoritmo debe ser rápido y preciso, porque se lo debe llamar muchas veces por

segundo. Por lo tanto, se utilizó un algoritmo de búsqueda llamado “Golden Section” (Gerald &

Wheatley, 2003), el cual compara rápida y precisamente dos patrones normalizados como los que

se vieron anteriormente.

Por último, como clase importante, se menciona la clase

TemplatedGestureDetector, la cual es la encargada de llamar al método que

internamente realiza el algoritmo de búsqueda y comparación, y si el valor computado de

coincidencia es inferior que un valor dado (por ejemplo 80%) se lanzará el método

RaiseGestureDetected que indica la detección del gesto.

Page 264: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 254

Para añadir un nuevo gesto, es decir, un nuevo patrón a la máquina de aprendizaje se

debe llamar primero al método StartRecordTemplate(), el cual se encuentra en la clase

TemplatedGestureDetector, y para finalizar, empaquetar e integrar el gesto grabado a la

máquina de aprendizaje se debe llamar al método EndRecordTemplate(), también definido

en la clase antes mencionada.

En resumen, con estas clases se puede guardar los gestos normalizados como un patrón

conformado por varios puntos, almacenarlos en archivos en el disco para luego poder cargarlos y

poder reconocerlos.

7.5 GRABACIÓN Y REPRODUCCIÓN DE SESIONES

Se definieron clases que permiten grabar y reproducir dicha grabación de lo que se llama

una sesión de Kinect. Es decir un video de lo que se hizo frente al sensor, pero la particularidad

es que además de guardar el video a color, graba también los datos de la cámara de profundidad y

del esqueleto. Seguidamente se describirá la manera en la que se realiza esta tarea, como así

también las clases más importantes para llevarla a cabo.

7.5.1.1 Grabación de sesiones de Kinect

Para grabar los datos de Kinect, se define una clase llamada KinectRecorder que

maneja los tres tipos de datos (color, de profundidad y del esqueleto). Esta clase es la encargada

de grabar las estructuras de datos de Kinect y luego reproducirlos de manera precisa. Genera un

solo archivo de salida que contiene todos los datos para reproducirse.

KinectRecorder posee tres clases, una para cada tipo de datos:

ColorRecorder.

DepthRecorder.

SkeletonRecorder.

Page 265: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 255

Cada una de ellas, agrega sus propios datos en el stream principal (flujo de datos),

agregando solo una cabecera con un número fijo para identificación de los datos, es decir, para

saber a qué clase pertenecen los datos que siguen para leer en el stream.

Para grabar los datos del flujo de datos de color, forma un stream de datos a escribir,

añadiéndole cierta información como la resolución (el ancho y el largo del frame), tamaño de la

información de los pixels, etc.

La clase DepthRecorder que es la encargada de grabar los datos del flujo de

profundidad, es similar a la de los datos de color, la única diferencia es que utiliza tipos de datos

en 16-bits en vez de 32-bits como el flujo de datos de color, por lo que solo difieren en el tipo de

dato que se guarda.

Almacenar los datos del esqueleto para su posterior reproducción es más complejo

porque los datos estructurados se deben serializar. De hecho, en un rango específico

(generalmente 30 veces por segundo), Kinect produce un frame del esqueleto que está compuesto

por:

Un número de frame.

Un plano del piso que define las coordenadas x, y, z, w, del vector que es usado

internamente para definir donde está parado el esqueleto.

Un arreglo de objetos de tipo Skeleton.

La clase Skeleton es serializable, entonces la clase SkeletonRecorder añade

información extra para dicha serialización, tal como la diferencia entre la hora actual y la hora en

que se tomó el frame procesado.

Como ya se mencionó, la clase KinectRecorder, agrega las tres clases para proveer

al programador un único punto de entrada. Contiene una referencia a cada una de las clases de

grabación como un stream. Dependiendo del identificador de flujo que detecte (esto fue

explicado más arriba) creará un objeto de la clase ColorRecorder, DepthRecorder o

Page 266: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 256

SkeletonRecorder. Además otorga un método para grabar los frames (cuadros) específicos,

ya sea el frame del esqueleto, de color o de profundidad.

7.5.1.2 Reproducción sesiones de Kinect

Para reproducir lo guardado anteriormente se tiene una clase llamada KinectReplay,

que es la responsable de manejar el sistema de replay para proveer a la aplicación de una sesión

grabada. Reproducir los frames de color, profundidad o del esqueleto es muy similar a la

grabación.

El sistema de repetición está basado en tareas para manejar el tiempo entre los frames.

Esta tarea causa que el sistema quede en esperando por un tiempo dado, luego del cual la tarea

lanza un evento a la clase KinectReader para avisarle que hay un nuevo frame disponible.

Posee un método interno llamado AddFrame para permitir a la clase llenarlo con los frames

grabados.

La clase para repetir la parte de la sesión de los datos de color, se llama

ReplayColorImageFrame.

Como en el caso de la grabación, la clase de reproducción de la sesión de los datos de

profundidad es ReplayDepthImageFrame, la cual es similar a la de color con la salvedad del

tamaño de los datos (16 bits).

La clase ReplaySkeletonFrame, es la encargada de repetir los datos del esqueleto,

su definición es similar a las anteriores, incluso más simple ya que se debe deserealizar el

esqueleto que por defecto Kinect serializa.

Por último, la clase que junta las tres anteriormente mencionadas es la clase

KinectReplay. Esta clase hace las veces de la mencionada precedentemente

KinectRecorder solo que en la parte de reproducción. Provee métodos para iniciar la

reproducción, detenerla, sincronizarla, liberar recursos, etc. Con esta clase se puede, entonces,

repetir una sesión previamente grabada de Kinect.

Page 267: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 257

7.6 PRODUCTO FINAL

En esta sección se explicará el uso de la aplicación desarrollada, explorando cada una de

sus funcionalidades y la manera en que éstas se deben llevar a cabo tanto por el médico, como

por el paciente.

7.6.1 MENÚ PRINCIPAL

Al ejecutar la aplicación, se presentará en pantalla el menú principal con el cual se puede

interactuar mediante gestos o el mouse. Para interactuar mediante gestos, el usuario debe estar

colocado frente a Kinect con cualquiera de sus brazos extendidos hacia el sensor, para que la

aplicación detecte una de sus manos (detectará la más cercana al sensor). De esta manera la

misma mostrará el puntero, que es el encargado de seguir la posición de la mano del usuario para

interactuar con las distintas opciones presentadas en pantalla. Para seleccionar una opción se debe

mantener dicho puntero en el botón correspondiente, hasta que se complete el círculo que rodea

dicho puntero (3 segundos aproximadamente).

Figura 7-14 – Puntero que sigue la mano más cercana al sensor del usuario

Las opciones que presenta el menú principal son:

Médico

Paciente

Configuración

Salir de la aplicación

Las opciones; médico, paciente y configuración se explicarán a continuación.

Page 268: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 258

Figura 7-15 - Menú Principal

7.6.2 CONFIGURACIÓN

En esta ventana se presentan las opciones de configuración para el uso de la aplicación

tanto para el médico, como para el paciente. En la misma se muestra la imagen a color de la

escena generada por Kinect, de modo que el usuario pueda configurar de la manera más óptima el

sensor y adaptarlo al espacio en el cual se utilizará el mismo.

Además de la ya mencionada imagen de la cámara, se presenta una barra del tipo slider

para mover el motor vertical de Kinect y adecuarlo a las necesidades del usuario y del ambiente.

También se puede modificar el modo en que se detecta el esqueleto, pudiendo hacerlo en el modo

sentado (visto en el capítulo anterior) o en el modo completo. Para regresar al menú principal, se

debe hacer click en el botón atrás situado en la parte superior izquierda de la pantalla.

Page 269: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 259

Figura 7-16 - Ventana de configuración

7.6.3 MÉDICO

Figura 7-17 - Imagen del médico antes de iniciar la grabación de la sesión

Page 270: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 260

Una vez seleccionada la opción médico del menú principal, se presenta al usuario la

ventana de la figura anterior. En la misma, se muestra la imagen a color de la cámara, además, si

el usuario se encuentra dentro del rango de visión del sensor, se mostrará el dibujo del esqueleto

del mismo (ya sea en modo sentado o completo), y, si esto último sucede, se verán también los

botones para las distintas opciones que se permiten realizar en la parte derecha de la imagen.

7.6.3.1 Botones

Como ya se mencionó, cuando el usuario se encuentre dentro del rango de detección de

Kinect, se podrán utilizar los botones en la parte derecha de la pantalla. Para hacerlo, se debe

posicionar la mano derecha en el botón que se desea activar, y mantenerla hasta que se complete

el círculo que rodea el botón (3 segundos aproximadamente).

A continuación se describe la funcionalidad de cada uno de los botones:

Inicio/Fin. Inicia/Finaliza la sesión de grabación de gestos. Cuando se inicia, se

habilita la utilización del comando de voz “grabar” (el cual se describirá más

adelante) para comenzar la grabación del gesto, y el comando de voz “detener”

para detener la grabación del mismo. Además, permitirá seleccionar la

articulación con la cual grabar el gesto.

Art. Una vez iniciada la sesión de grabación con el botón anteriormente

descripto, se puede activar este botón para seleccionar la articulación con la cual

se desea grabar el gesto. Más adelante se describirá el funcionamiento de la

ventana de selección de articulaciones, pero la misma no difiere de lo ya visto

anteriormente para el menú principal.

Ayuda. Se activa/desactiva la ayuda tanto de los botones presentes en la pantalla,

como de los comandos de voz disponibles.

7.6.3.2 Comandos de voz

Con respecto a los comandos de voz disponibles, se debe tener en cuenta que el

comando “ayuda” se puede utilizar en cualquier momento. Para el resto de los comandos, se debe

Page 271: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 261

estar en determinado estado para poder usarlos. Acto seguido, se describe cada una de las

palabras (comandos de voz) que se pueden utilizar:

Grabar. Este comando activa la grabación del gesto y sólo está disponible

cuando está iniciada la sesión de grabación (es decir, cuando el botón “inicio”

está activado).

Detener. Detiene la grabación del gesto. Por supuesto que se puede utilizar sólo

cuando el comando “grabar” fue activado, esto es, cuando se está grabando un

gesto.

Ayuda. Cumple la misma función que el botón “ayuda” descripto anteriormente.

Habilita la ayuda de los botones y los comandos de voz.

Salir. Vuelve al menú principal. Misma función que el botón atrás situado en la

esquina superior izquierda.

7.6.3.3 Selección de articulación

Tal como se mencionó precedentemente, una vez iniciada la sesión de grabación, se

puede seleccionar la articulación con la cual se grabará el gesto, por defecto se define la mano

derecha, pero si se desea cambiar, se debe activar el botón “Art.”.

Cuando se selecciona dicho botón, se muestran las articulaciones disponibles para grabar

el gesto. El manejo de la interfaz de la ventana es idéntico a la del menú principal. El usuario

dispondrá de un cursor que seguirá los movimientos de la mano que se encuentre más cercana al

sensor. Para seleccionar la articulación deseada, se debe mantener dicho cursor en el botón

correspondiente hasta que se complete el círculo (aproximadamente 3 segundos). Una vez hecho

esto, el siguiente o los siguientes gestos se grabarán con la articulación seleccionada.

Page 272: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 262

Figura 7-18 - Ventana de selección de articulación

7.6.3.4 Modo grabar

Cuando la sesión de grabación se encuentra iniciada, el comando de voz “grabar”

iniciará la grabación del gesto con la articulación por defecto (mano derecha) o con la que se ha

seleccionado en el menú anteriormente descripto.

Si el comando de voz fue detectado por Kinect, se verá el mensaje correspondiente en

pantalla indicando que la grabación de gesto ha comenzado. Además, se podrá ver el patrón que

forma el gesto que el médico está realizando para tener una mejor referencia del mismo.

Si se desea finalizar con la grabación, se utiliza la palabra “detener”. Una vez detenida la

grabación, la aplicación solicitará que se ingrese el número de repeticiones de dicho gesto que

debe realizar el paciente, esto es, la cantidad de veces que debe realizar el gesto correctamente.

Una vez hecho esto, se puede proceder a finalizar la sesión de grabación para ese paciente, o bien

grabar otro gesto con la misma articulación o seleccionar una diferente del modo antes indicado.

Page 273: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 263

Figura 7-19 - Imagen del médico grabando una sesión

7.6.4 PACIENTE

Figura

Page 274: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 264

7-20 - Imagen del paciente antes de iniciar la reproducción de la sesión

Luego de elegir la opción paciente en el menú principal, se presenta la ventana anterior.

Dicha ventana, es muy similar a la descripta anteriormente en el médico. Es decir, muestra al

paciente la imagen a color de la cámara de Kinect, y si la persona se encuentra dentro del rango

del sensor, se podrá ver el esqueleto de la misma y los botones con las opciones disponibles.

7.6.4.1 Botones

La manera de activar los botones que se encuentran en la imagen a color es idéntica a la

ya descripta en la sección “Médico”. A continuación se describe la funcionalidad de cada uno de

ellos:

Inicio/Fin. Se inicia/finaliza la sesión de reproducción de gestos para el paciente.

Cuando se activa su inicio, se reproducirá la demostración de los gestos que

fueron grabados por el médico y se mostrará la cantidad de veces que el paciente

debe realizarlo. Cuando se desea finalizar la sesión, se presiona el mismo

nuevamente.

Repetir. Repite la demostración del gesto que se debe realizar. Solo está

disponible cuando la sesión de reproducción está iniciada.

Ayuda. se activa/desactiva la ayuda para los botones y los comandos de voz.

Misma función que en la ventana “médico”.

7.6.4.2 Comandos de voz

A continuación se describen los comandos de voz disponibles para el paciente:

Reproducir. Se inicia la reproducción de la sesión de gestos que debe realizar el

paciente. Cumple la misma función que el botón “inicio”.

Detener. Si se está en medio de una sesión de gestos, se detiene la misma. Se

podrá volver a comenzar con el botón “inicio” o con el comando de voz

anteriormente descripto.

Page 275: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 265

Repetir. Si se está en medio de una sesión de gestos, este comando repite la

demostración del gesto que actualmente se debe realizar. Cumple la misma

función que el botón repetir.

Ayuda. activa/desactiva la ayuda para los botones y los comandos de voz. Se

puede utilizar en cualquier momento.

Salir. Retorna al menú principal.

7.6.4.3 Modo reproducción de sesión de gestos

Cuando se dice que se está dentro de una sesión de reproducción de gestos, se hace

referencia a que el paciente inició la reproducción de los gestos que debe realizar.

Figura 7-21 - Imagen del paciente realizando un gesto

Una vez que el mismo activa tal reproducción ya sea mediante el botón o mediante el

comando de voz, se comienza con la reproducción de la demostración del primer gesto que este

debe realizar, incluyendo el nombre de la articulación con la cual se debe concretar el mismo.

Page 276: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 266

Cuando ella termina, se muestra la cantidad de repeticiones del gesto que el paciente debe

realizar. Descontándose en uno cuando dicha persona lo realiza de manera correcta (o muy

similar), o bien no descontando las repeticiones cuando lo hace incorrectamente. Una vez que el

paciente ha completado la cantidad de repeticiones requeridas para ese gesto en particular,

automáticamente se reproducirá la demostración del segundo gesto a realizar, y se repetirá el

mismo proceso descripto hasta llegar al último de los gestos o bien hasta que el paciente decida

terminar la sesión.

Además, cuando se está en la reproducción de los gestos, específicamente cuando el

paciente debe realizar los mismos, se muestra el patrón del gesto que este está realizando a fin de

facilitar su conclusión.

Una vez que el paciente finaliza la realización de toda la sesión de gestos grabados por

el médico, se mostrará la leyenda “bien hecha” para que la persona sepa que ha finalizado. Una

vez hecho esto, se puede finalizar la sesión y salir o bien recomenzarla mediante el comando, o el

botón destinado para ello.

Page 277: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 267

Capítulo 8

8 CONCLUSIONES Y LÍNEAS FUTURAS

Este capítulo tiene como finalidad dar a conocer las conclusiones de la investigación

realizada para la elaboración del presente documento, como también para el desarrollo del caso

de aplicación. Además, se definen las posibles líneas futuras que podrían seguir los temas aquí

tratados y las posibilidades de crecimiento de la aplicación desarrollada.

Page 278: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 268

8.1 CONCLUSIONES

En la presente tesina, se ha investigado en profundidad acerca de las Interfaces

Gestuales y la Realidad Aumentada, entre otros temas. Para ello fue necesario definir y estudiar

varios conceptos, tales como las pautas a tener en cuenta para el diseño de una interfaz de

usuario, definir el concepto de gesto, sus clasificaciones, atributos, y cuándo es realmente útil

diseñar e implementar una interfaz basada en gestos. La investigación respecto de la Realidad

Aumentada permitió conocer su definición, las técnicas para aplicarla, los distintos campos donde

la misma puede ser utilizada y la brecha que la separa de la Realidad Virtual.

Por otra parte, al estudiar las distintas características del sensor Kinect, se aprendió en

detalle su funcionamiento a nivel de hardware y software, lo que permitió, a la hora de desarrollar

una aplicación destinada a manejarse con dicho sensor, una mayor facilidad para programar y

abarcar las diferentes posibilidades que el dispositivo otorga.

En cuanto al caso de aplicación propuesto y desarrollado puede señalarse que se cumplió

con el objetivo de integrar los elementos planteados en un principio, estos son, las Interfaces

Gestuales, la Realidad Aumentada, y un dispositivo de detección de gestos (en este caso, Kinect).

Además, se optó por un campo de aplicación interesante como es la medicina, y la posibilidad de

ayudar al paciente ante una afectación tan grave como lo son los Accidentes Cerebro Vasculares,

hace que resulte aún más atrayente el desarrollo de una aplicación que utilice los conceptos

previamente investigados.

Si bien dicho caso de aplicación fue desarrollado para demostrar e integrar los temas

aquí tratados, se necesitan incorporar algunas funcionalidades o detalles que sólo la ayuda de un

médico puede llegar a aportar, no obstante lo cual, consideramos que el mismo sirve como una

buena base para el desarrollo de una aplicación más detallada en un futuro no muy lejano.

Para concluir, se puede decir que los objetivos planteados en un comienzo tanto los

referidos al aprendizaje de los temas tratados, como los planteados para el desarrollo del caso de

aplicación, fueron cumplidos satisfactoriamente.

Page 279: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 269

8.2 LÍNEAS FUTURAS

Como trabajos futuros en materia de la aplicación, se podría considerar, incorporar un

médico al equipo de trabajo a efectos de pulir detalles que le competen al mismo. Ello puede

incorporar la generación de reportes, o informaciones que éste considere útiles para la

rehabilitación satisfactoria de un paciente.

En lo que respecta a las líneas futuras de los temas investigados, se puede decir que las

Interfaces Gestuales se encuentran ya instaladas en la sociedad, sobre todo cuando se trata de las

interfaces táctiles. Algo que resta saber, es si en un futuro se podrán imponer (tal como pasó con

las interfaces táctiles) las tecnologías que no requieren del tacto, sino del reconocimiento del

gesto por medio de cámaras y algoritmos. Hay que destacar que en la actualidad también faltan

definiciones de estándares a seguir en lo que respecta a las Interfaces Gestuales, y que en un

futuro no muy lejano seguramente estos van a ser definidos dado el crecimiento e

implementación de las mismas hoy en día.

La investigación de la Realidad Aumentada realizada, permitió conocer que no sólo se

posee un enorme campo de aplicación para la misma, sino que también existen muchas formas de

aplicarla, lo cual abre un variado abanico de posibilidades para su implementación.

En la actualidad, la Realidad Aumentada se encuentra en pleno crecimiento y se están

dando a conocer aplicaciones y dispositivos que la utilizan, tales como las aplicaciones de

información turística, o de recolección de estadísticas en tiempo real para deportistas, o los ya

conocidos (y mencionados) Google Glass. Como consecuencia de ello, no se puede determinar

su techo aún y, a partir de la investigación y los conceptos analizados en la presente tesina, se

pueden desarrollar múltiples investigaciones y aplicaciones en el futuro.

Cabe destacar que el campo de mayor proyección de la RA son los escenarios en donde

las aplicaciones no poseen ningún tipo de referencia, en donde las mismas deben incorporar

mecanismos para poder en primer lugar identificar características o patrones de la escena, para

luego sí poder generar elementos de Realidad Aumentada. Este será sin ninguna duda el futuro de

la RA, sin la necesidad de patrones ni escenas conocidas, en donde dicha tecnología hará un

Page 280: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 270

quiebre fundamental, que ampliará aún más sus campos de aplicación y por ende extenderá su

mercado.

Sumado al crecimiento de los temas mencionados, se puede destacar que las mejoras que

incorpora el dispositivo Kinect v2 y su kit de desarrollo SDK 2.0, permiten que la calidad y la

utilidad del caso de aplicación desarrollado se eleven en el futuro. Como también el desarrollo de

nuevas aplicaciones e investigaciones que utilicen las Interfaces Gestuales, la Realidad

Aumentada y el dispositivo Kinect v2.

Page 281: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 271

BIBLIOGRAFÍA

Abascal, J., Aedo, I., Cañas, J., & otros, y. (2001). La interacción persona-ordenador. Jesús

Lorés.

Ahlberg, J. (2012). Linköping University. Obtenido de CANDIDE:

http://www.icg.isy.liu.se/candide/

Animus. (6 de Mayo de 2012). Animus . Obtenido de Animus a Natural - Interactive Multitouch

Surface: http://animusproject.wix.com/web/apps/blog/una-interfaz-diferente-1

Azuma, R. (1997). A Survey of Augmented Reality. Presence: Teleoperators and Virtual

Environments.

Azuma, R., Baillot, Y., Behringer, R., Feiner, S., Julier, S., & MacIntyre, B. (2001). Recent

Advances in Augmented Reality. IEEE Computer Graphics and Applications.

Bimber, O., & Raskar, R. (2005). Spatial Augmented Reality. Wellesley: A. K. Peters Ltd.

Bolt, R. A. (1980). Put that there-Voice and gesture at the graphics interface. 7th annual

conference on Computer graphics and interactive techniques (págs. 262-270). New York:

ACM Press.

Brereton. (2003). Work at Hand: An Exploration of gesture in the context of work and everyday

life to inform the design of gestural input devices. South Australia: Australian Computer

Society Inc.

Burdea, G., & Philippe Coiffet, P. (2003). Virtual Reality. Hoboken, New Jersey: John Wiley &

Son.

Cáceres, A. D. (2007). Terapia Ocupacional. Obtenido de Terapia Ocupacional: Hospital

Universitario de Gran Canaria:

Page 282: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 272

http://terapiaocupacional50.files.wordpress.com/2007/12/ejercicios-para-realizar-en-casa-

despues-de-un-acv.pdf

Catuhe, D. (2012). Programming with the Kinect for Windows SDK. Washington: Microsoft

Press.

Centro de Artigo. (2012). Obtenido de e-centro: http://centrodeartigo.com/articulos-

educativos/article_17969.html

Centro de Artigo. (2012). Obtenido de e-centro: http://centrodeartigo.com/articulos-noticias-

consejos/article_138686.html

Cheok, A. D., Goh, K. H., Liu, W., Farbiz, F., Teo, S. L., Teo, H. S., . . . Yang, X. (2004).

Human pacman: a mobile wide-area entertainment system based on physical, social, and

ubiquitous computing. ACE ’04:ACM SIGCHI Interna International Conference on

Advances in computer entertainment technology.

Close, B., Donoghue, J., Squires, J., De Bondi, P., & Morris, M. (2000). Arquake: An outdoor-

indoor augmented reality first person application. 4th International Symposium on

Wearable Computers.

Craig, A., Sherman, W., & Will, J. (2009). Developing Virtual Reality Applications: Foundations

of Effective Design. Burligton: Morgan Kaufmann.

Durán Rosas, L. (18 de 11 de 2009). Universidad de Málaga. Obtenido de Universidad de

Málaga - Escuela Técnica Superior de Ingeniería de Telecomunicaciones (ETSIT):

http://www.diariosur.es/20091118/sociedad/hacia-mayor-autonomia-20091118.html

España, M. (Noviembre de 2011). Microsoft. Obtenido de Microsoft España - Prensa:

http://www.microsoft.com/spain/prensa/noticia.aspx?infoid=/2011/11/n022-Microsoft-

primer-encuentro-aplicaciones

Page 283: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 273

ETI Tudela. (s.f.). ETI Tudela - Formacion profesional de calidad. Obtenido de ETI Tudela -

Formacion profesional de calidad:

www.etitudela.com/celula/downloads/visionartificial.pdf

Feiner, S., MacIntyre, B., Hollerer, T., & Anthony. (1997). A touring machine: Prototyping 3d

mobile augmented reality systems for exploring the urban environment. IEEE

International Symposium. Wearable Computers.

Gerald, C. F., & Wheatley, P. O. (2003). MCS 471: Numerical Analisis. Obtenido de MCS 471:

Numerical Analisis: http://homepages.math.uic.edu/~jan/mcs471/Lec9/lec9.html

Giorio, C., & Fascinari, M. (2013). Kinect in Motion - Audio and Visual Tracking by Example.

Birmingham: Packt Publishing.

Gord Kurtenbach, E. H. (1990). Gestures in Human-Computer Communication. Brenda Laurel.

Greenfield, A. (2006). “Without a Trace”. Dwell.

Gutierrez, M.; Vexo, F.; Thalmann, D. (Stepping into Virtual Reality). Lausana, Francia:

Springer.

Hainich, R. (2009). The End of Hardware, 3rd Edition: Augmented. BookSourge Publishing.

Haller, M., Billinghurst, M., & Thomas, B. (2006). Emerging Technologies of Augmented

Reality. Interfaces and Design. Idea.

IGNEOMA. (2011). IGNEOMA. Obtenido de IGNEOMA - Laboratorio Tecnológico:

http://www.igneoma.com/

Jana, A. (2012). Kinect For Windows SDK Programming Guide. Birmingham: PACKT .

Karam, M. (2006). A framework for research and design of gesture-based human computer

interactions. Southampton: University of Southampton.

Page 284: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 274

Kato, H., & Billinghurst, M. (1999). Marker tracking and hmd calibration for a video-based

augmented reality conferencing system. International Workshop on.

Kim, G. (2005). Designing Virtual Reality Systems: The Structured Approach. Springer-Verlag.

Kinect, O. (2012). Open Kinect. Obtenido de Open Kinect: http://openkinect.org/wiki/Main_Page

KinectToolbox. (2011). Kinect Toolbox. Obtenido de Codeplex:

https://kinecttoolbox.codeplex.com/

Klein, G., & Murray, D. (2007). Parallel tracking and mapping for small ar workspaces. Mixed

and Augmented Reality, IEEE / ACM International Symposium.

Kölsch, M., Bane, R., Höllerer, T., & Turk, M. (2006). Multimodal Interaction with a Wearable

Augmented Reality. IEEE Computer Graphics and Applications.

LeapMotion. (2013). Leap. Obtenido de LeapMotion: https://www.leapmotion.com/

Linares i Pellicer, J. (s.f.). Escuela Politécnica Superior de Alcoi. Obtenido de Escuela

Politécnica Superior de Alcoi:

http://users.dsic.upv.es/~jlinares/grafics/processing_spa_1.pdf

Más, R., Yee, C., & Larrea, M. (2012). Interfaces Gestuales. Congreso Argentino de Ciencias de

la Computación (CACIC), (págs. 1-101). Bahia Blanca.

McNeill, D. (2006). McNeill lab for gesture and speech research. Electronic Resource. Chicago:

Website: University of Chicago.

Mercado Gomez, G. (2013). Trabajo Practico de TAI II: Wii - Microsoft Kinect - PlayStation

Move. Asuncion: Universidad Católica Nuestra Señora de la Asunción.

Microsoft. (2012). Obtenido de http://msdn.microsoft.com/en-us/library/jj130970.aspx#ID4E1

Microsoft. (2014). Obtenido de http://www.microsoft.com/en-

us/kinectforwindows/meetkinect/features.aspx

Page 285: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 275

Microsoft. (s.f.). Microsoft Visual Studio. Obtenido de Microsoft Visual Studio:

http://www.visualstudio.com/es-es/get-started/overview-of-get-started-tasks-vs

Milgram, & Kishino. (1994). A taxonomy of mixed reality visual displays. In IEICE Trans.

Information Systems.

OpenFrameworks. (2012). OpenFrameworks. Obtenido de http://www.openframeworks.cc/

Quek, F., McNeill, D., Bryll, R., Duncan, S., Ma, X.-F., Kirbas, C., . . . Ansari, R. (2002).

Multimodal human discourse: gesture and speech. Computer-Human Interact (págs. 171-

193). ACM Trans.

Rekimoto, J. (1998). Matrix: A realtime object identification and registration method for

augmented reality. Asia-Pacific Computer and.

Saffer, D. (2009). Designing Natural Interfaces. Canada: O'Reilly.

Sherman, W. a. (2003). Understanding Virtual Reality: Interface, Application, and Design. The

Morgan Kaufmann Series in Computer Graphics.

Shotton, J., Fitzgibbon, A., Cook, M., Sharp, T., Finocchio, M., Moore, R., . . . Blake, A. (Junio

de 2011). Real-Time Human Pose Recognition in Parts from a Single Depth Image.

Microsoft Research. Obtenido de Microsoft Research:

http://research.microsoft.com/apps/pubs/?id=145347

SimpleOpenNI. (2013). SimpleOpenNI. Obtenido de Google Code: SimpleOpenNI:

https://code.google.com/p/simple-openni/

Structure. (2014). Structure. Obtenido de Structure SDK:

http://com.occipital.openni.s3.amazonaws.com/OpenNI_Programmers_Guide.pdf

Sutherland, I. (1968). A head-mounted three dimensional display. AFIPS ’68. New York.

Page 286: INTERFACES GESTUALES Y REALIDAD AUMENTADA...El objetivo de la presente tesina, es estudiar el mundo de las Interfaces Gestuales y de la Realidad Aumentada, exponer sus conceptos generales

Tesina de Grado – Interfaces Gestuales y Realidad Aumentada - UNPSJB

Diaz Gastón, Leschevich Germán 276

TechNet. (8 de Marzo de 2012). TechNet. Obtenido de TN - Technet News:

http://blogs.technet.com/b/microsoftlatam/archive/2012/03/08/no-mas-clases-aburridas-

gracias-a-kinect.aspx

TedCas. (2013). TedCas: Interfaces de Interacción Natural para la Salud. Obtenido de

http://www.tedcas.com/es

Usability. (s.f.). Usability.org. Obtenido de Usability.Org - ISO:

http://www.usabilitynet.org/tools/r_international.htm#9126-1

Vertegaal, R. (25 de Abril de 2012). HML. Obtenido de HML - Human Media Lab:

http://www.hml.queensu.ca/telehuman

Vlahakis, V., Karigiannis, J., Tsotros, M., Gounaris, M., Almeida, L., Stricker, D., . . . Ioannidis,

N. (2001). Archeoguide: first results of an augmented reality, mobile computing system in

cultural heritage sites. VAST ’01: Virtual reality, archeology, and cultural heritage.

Wexelblat. (1998). Research Challenges in Gesture: Open Issues and Unsolved Problems.

Wachsmuth & Froelich.

Wigdor, D., & Wixon, D. (2011). Brave NUI World - Designing Natural User Interfaces For

Touch and Gesture. USA: Morgan-Kaufmann.

Xataka Movil. (20 de Febrero de 2009). Obtenido de

http://www.xatakamovil.com/desarrollo/pantallas-tactiles-capacitivas-vs-resistivas

Yee, C. M., Abásolo, M. J., Sansó, R. M., & Vénere, M. (2011). Realidad virtual y realidad

aumentada. Interfaces Avanzadas. Editorial de la Universidad de La Plata.