You are on page 1of 134

dd

Centro Nacional de Investigacin y Desarrollo Tecnolgico


Departamento de Ciencias Computacionales

TESIS DE MAESTRA EN CIENCIAS


Servicios de Recomendacin Contextual para Instituciones de Educacin Superior Mediante Realidad Aumentada Utilizando Smartphones y Ontologas Organizacionales
presentada por

Rodrigo Alejandro Morn Leal


Ing. en Informtica por la Universidad Politcnica del Estado de Morelos como requisito para la obtencin del grado de: Maestra en Ciencias en Ciencias de la Computacin

Dr. Juan Gabriel Gonzlez Serna

Director de tesis:

Dra. Azucena Montes Rendn

Co-Director de tesis:

Cuernavaca, Morelos, Mxico.

17 de diciembre de 2012

Centro Nacional de Investigacin y Desarrollo Tecnolgico


Departamento de Ciencias Computacionales

TESIS DE MAESTRA EN CIENCIAS


Servicios de Recomendacin Contextual para Instituciones de Educacin Superior Mediante Realidad Aumentada Utilizando Smartphones y Ontologas Organizacionales
presentada por

Ing. en Informtica por la Universidad Politcnica del Estado de Morelos como requisito para la obtencin del grado de: Maestra en Ciencias en Ciencias de la Computacin

Rodrigo Alejandro Morn Leal

Director de tesis: Dr. Juan Gabriel Gonzlez Serna Co-Director de tesis: Dra. Azucena Montes Rendn Jurado: Dr. Hugo Estrada Esquivel Presidente M.C. Javier Ortiz Hernndez Secretario Dr. Juan Gabriel Gonzlez Serna Vocal Dra. Alicia Martnez Rebollar Vocal Suplente

Cuernavaca, Morelos, Mxico.

17 de diciembre de 2012

DEDICATORIAS
A Dios, por ayudarme en cada uno de los xitos y problemas que tuve en esta etapa de mi vida

A mi madre, por todo lo que ha hecho por m.

A mi primo y a mi familia, por haberme brindado su apoyo.

A Anayely, por haberme brindado lo que ms me faltaba para terminar este logro

A todos aquellos que me ayudaron en esta etapa de mi vida

AGRADECIMIENTOS
A mi madre Mara del Carmen Leal Murgua, por haberme dado la vida y haber credo en m todos estos aos, por haberme apoyado todo este tiempo en mis metas, por haber hecho muchos sacrificios para que yo pudiera llegar hasta donde me encuentro ahora, muchas gracias. A mi primo, Jairo Ramiro, quien ha sido mi mejor amigo desde que nac hasta ahora, muchas gracias por escucharme y apoyarme en los buenos y malos momentos. A mi hermana, Violeta, por haberme acompaado y alentado durante todo este periodo. A toda mi familia que ha estado conmigo apoyndome y dndome nimos para seguir adelante, muchas gracias. A mi princesa, Anayely Noguern Valdes, gracias por darme el ltimo empujoncito para poder terminar mi maestra, gracias por haber sido mi motivacin e inspiracin en mi ltimo ao, eres la mejor sorpresa que me pude haber encontrado en mi maestra, gracias por haberme prestado un poco de tu tiempo para estar conmigo, gracias por haberme dejado soar y haber compartido muchos momentos especiales conmigo, muchas gracias. A Viviana Anani Partida Valencia, mi amiga, muchas gracias por haberme prestado tu tiempo para escucharme, gracias por haberme enviado esa buena vibra siempre. A todos mis amigos que encontr en el CENIDET, Juan Diego, Samuel Vieyra, Luis ngel Chi, Leticia Aponte, Ilse Yari Landa, Adrian Cruz, Nimrod Gonzlez, Jess Rodrguez, Oscar, Julia, Hugo, muchas gracias por haber hecho que esta etapa de mi vida sea inolvidable. A mi director de tesis, el Dr. Juan Gabriel Gonzlez Serna, por haberme formado durante todo este periodo, ayudndome a desarrollarme como persona tanto profesional como personalmente. A mis profesores del CENIDET por haberme enseado tantas cosas y haberme ayudado a desarrollar todas las habilidades que tengo ahora conmigo, muchas gracias. Al CONACYT por haberme apoyado econmicamente mientras realizaba mis estudios, al Centro Nacional de Investigacin y Desarrollo Tecnolgico, por permitirme elaborar mis estudios y haberme brindado muchas experiencias y oportunidades durante toda mi estancia en l. A mis revisores por haberme compartido sus conocimientos, y haberme guiado a travs de todo el desarrollo de mi proyecto de tesis. A todos aquellos que formaron parte de mi vida en esta tapa tan importante de mi vida, a todos ustedes muchas gracias.

RESUMEN
Dentro del rea de la computacin del CENIDET se han desarrollado los servicios de recomendacin sensibles al contexto, los cuales le ofrecen al usuario informacin personalizada del entorno de acuerdo a sus preferencias, ubicacin, el horario en que se encuentra, los servicios disponibles de la organizacin, etc. Estos servicios de recomendacin han involucrado diferentes tecnologas, desde algoritmos que son capaces para inferir las preferencias del usuario, hasta tecnologas capaces de capturar datos del entorno como RFID, QR-Codes, sensores especializados, etc. En el laboratorio de sistemas distribuidos del CENIDET, se pretende desarrollar un sistema capaz de mostrarle recomendaciones personalizadas e informacin de alguna organizacin al usuario, a partir de las preferencias del mismo y la informacin del entorno en el que se encuentra (hora y lugar de la organizacin a donde llega). El desarrollo de este sistema comenz con el proyecto T-Gua, el cual puede proporcionarle informacin al usuario de la organizacin a partir de su ubicacin, una vez terminado este sistema, se desarrollaron otros proyectos que integraron otras funcionalidades al sistema, tales como servicios de recomendacin sensibles al contexto, mapas con informacin de la organizacin en formato SVG y servicios de localizacin mediante el uso de tecnologas Wi-Fi y RFID, de esta forma se integran nuevas funcionalidades al sistema desarrollado anteriormente. En este proyecto de tesis, se desarroll una nueva funcionalidad para el sistema T-Gua, la cual implementa una interface a travs de realidad aumentada, con la cual el usuario podr interactuar de manera ms natural con la informacin del entorno, adems de que conocer hacia donde quedan algunas ubicaciones de inters. Para ello se desarroll un modelo de identificacin de puntos de inters mediante 10 (8+2) orientaciones, 8 orientaciones que apuntan hacia los puntos cardinales y 2 para apuntar hacia arriba o abajo del dispositivo, utilizando el sensor de acelermetro de tres ejes y el magnetmetro fue posible determinar la direccin hacia donde el usuario est apuntando y conocer qu puntos de inters se puede encontrar visualizando. Finalmente, en este proyecto, pudo desarrollarse una nueva funcionalidad al sistema, con una aplicacin capaz de presentarle al usuario informacin del entorno al enfocar su dispositivo en diferentes orientaciones.

ABSTRACT
In the CENIDETs computing area have been developed context-aware recommendation services, which offer to the users personalized information of the environment according to their preferences, location, the time in which it is, the services of the organization, etc. These recommendation services have involved different technologies, from algorithms that are able to infer the user's preferences, to technologies able to capture the data environment as RFID, QR-Codes, specialized sensors, etc. In the Distributed Systems Laboratory CENIDET, aims to de velop a system able of showing personalized recommendations and information of an organization to the user, from preferences and information environment that he is (time and place where he arrives). The development of this system began with the project T-Guide, which can provide information to the user in the organization from his location, once finished this system, other projects were developed that integrated other features to the system, such as context-aware recommendation services, maps with organizational information in SVG format and location services using Wi-Fi technology and RFID, so new features are integrated into the system previously developed. In this thesis, we developed a new feature for the T-Guide system, which implements an interface using augmented reality, with which the user can interact more naturally with information of the environment, plus he will know where some locations of interest are. For that we developed a model to identify points of interest by 10 (8 +2) orientations, 8 orientations pointing to the cardinal points and 2 to point up or down of the device, using the three-axis accelerometer sensor and magnetometer was possible to determine the direction in which the user is pointing and know what points of interest can be displayed. Finally, in this project we could develop a new functionality to the system, with an application that can present to the user information of the environment focusing his device in different directions.

TABLA DE CONTENIDO
LISTA DE FIGURAS Captulo 1. Introduccin 1.1 Introduccin 1.2 1.2.1 Antecedentes Servicios de localizacin conscientes del contexto aplicando perfiles de movilidad y tecnologas 7 iii 5 6 7

de localizacin heterogneas [Arjona 2009] 1.2.2 2012] 1.2.3 API para servicios de localizacin basada en tecnologa RFID, QRCode, WIFI y Bluetooth [Yris 7 Generacin y explotacin de mapas semnticos para instalaciones organizacionales mediante el

uso de ontologas [Estrada 2012] 1.2.4

11

Servicio de recomendacin contextual mediante ontologas multidimensionales para dispositivos 12 13 14 15 15 15 16 17 18 19 21 22 23 24 25 26 26 29 30 30 32 33 35

Smartphone [Gonzlez 2012] 1.3 1.3.1 1.4 1.4.1 1.4.2 1.5 Descripcin del problema Complejidad del problema Objetivos del proyecto Objetivo general Objetivos especficos Justificacin

Captulo 2. Marco Terico 2.1 Realidad aumentada

2.1.1 Reconocimiento de objetos mediante el uso de marcadores 2.1.2 2.1.3 2.2 2.3 2.4 2.5 2.6 Tcnicas de reconocimiento visual sin marcadores Tcnicas de reconocimiento sensorial Computacin ubicua Servicios de recomendacin contextual Modelado organizacional orientado al entorno Android Tecnologa sensorial en Smartphones

Captulo 3. Estado del Arte 3.1 3.1.1 3.1.2 3.1.3 3.1.4 Sistemas A Tracking Framework for Augmented Reality Tours on Cultural Heritage Sites [Park 2010] An Augmented Reality Presentation System for Remote Cultural Heritage Sites [Zllner 2009] Location-based augmented reality on mobile phones [Turk 2010] An Augmented Reality Interface to Contextual Information [Ajanki 2011]

3.1.5

Personalized In-store E-Commerce with the PromoPad: an Augmented Reality Shopping Assistant 36 37 37

[Zhu 2008] 3.2 Herramientas

3.2.1 Look!: Framework para Aplicaciones de Realidad Aumentada en Android [Belln 2011]

3.2.2 CAMAR Tag Framework: Context-Aware Mobile Augmented Reality Tag Framework for Dual-reality Linkage [Woo 2009] 37

3.2.3 Unified Context-aware Augmented Reality Application Framework for User-Driven Tour Guides [Woo 2010] 38 39 42 43 44 49 57 60 61 65 67 68 70 72 74 75 75 75 76 76 77 77 77 77 80 115 117 118 118 119 120

3.3 Anlisis del estado del arte Captulo 4. Diseo de la aplicacin 4.1 4.2 4.3 Arquitectura general del sistema Modelo de orientacin en el entorno Diagrama de casos de uso

4.4 Diagramas de clases Captulo 5. Implementacin 5.1 Modificaciones a la red de ontologas 5.2 Servicio de localizacin 5.3 Desarrollo de la aplicacin 5.3.1 Lectura de la informacin de la Ontologa 5.3.2 Implementacin de los objetos virtuales 5.3.3 Funcionalidad de filtrado de informacin Captulo 6. Pruebas 6.1 Plan de pruebas

6.1.1 Enfoque 6.1.2 Caractersticas a probar 6.1.3 Caractersticas excluidas 6.1.4 Elementos de prueba 6.1.5 Requerimientos para realizar las pruebas 6.1.6 Criterio xito/fracaso de los casos de prueba 6.1.7 Responsabilidades 6.1.8 Diseo de las pruebas 6.2 Reporte de pruebas 6.3 Resultados Captulo 7. Conclusiones y trabajos futuros 7.1 Conclusiones 7.2 Aportaciones 7.3 Trabajos futuros Referencias

ii

LISTA DE FIGURAS
Figura 1.1 algoritmo de localizacin por redes inalmbricas implementado [Yris 2012] 8 Figura 1.2 segmentacin del entorno de acuerdo a la potencia de seal inalmbrica recibida [Yris 2012] 9 Figura 1.3 diagrama del funcionamiento de los portales RFID [Yris 2012] Figura 1.4 diagrama para la implementacin de portales RFID [Yris 2012] Figura 1.5 Ejemplo de un mapa generado en el proyecto [Estrada 2012] Figura 2.1 marcadores de plantilla y matrices de datos [Schmalstieg 2007] Figura 2.2 ejemplo de un QRCode [Woo 2011] Figura 2.3 proceso de umbralizacin [Schmalstieg 2007] Figura 2.4 modelo de rotaciones en un reconocimiento sensorial por orientacin Figura 2.5 Principales componentes de los sensores [Akyildiz 2002] Figura 2.6 diagrama de un giroscopio digital [Jones 2010] Figura 3.1 algoritmo de estimacin de poses [Park 2010] 10 10 11 19 20 20 23 26 27 30

Figura 3.2. Tcnicas de realidad aumentada implementadas en el palacio de Gyeongbokgung [Park 2010] 32 Figura 3.3 dispositivo esttico para la visualizacin de informacin contextual en murales [Zllner 2009] 33 Figura 3.4 insercin de objetos virtuales en los dispositivos mviles [Zllner 2009] 33

Figura 3.5 Modelo de reconocimiento mediante localizacin y orientacin propuesto en el proyecto [Turk 2010] 34

Figura 3.6 aumentacin mediante el reconocimiento por orientacin y ajuste mediante tcnicas de reconocimiento visual Figura 3.7 algoritmo para la retribucin de informacin en el sistema [Ajanki 2011] Figura 3.8 reconocimiento de objetos e insercin de informacin en el entorno [Ajanki 2011] Figura 3.9 acercamiento a un producto de posible inters para el cliente Figura 3.10 generacin del mundo virtual a partir del entorno real en el proyecto [Woo 2009] Figura 4.1 arquitectura general del nuevo sistema T-Gua Figura 4.2 Funcionamiento de la aplicacin YLEYANA en el sistema Figura 4.3 segmentacin del entorno para la construccin de un MOM [Pombinho 2011] Figura 4.4 modelo de navegacin de 8 orientaciones [Worboys 2011] Figura 4.5 modelo de ocho orientaciones para indicar los POIs del entorno Figura 4.6 ejemplo de la aplicacin del modelo de ocho grados de libertad Figura 4.7 definicin de las zonas de localizacin para los estados en el MOM Figura 4.8 autmata del modelo de orientacin propuesto para la visualizacin de POIs Figura 4.9 manejo de los objetos fuera del campo de visin en el modelo de orientacin Figura 4.10 Diagrama de casos de uso del sistema 34 35 36 36 38 43 44 45 46 46 47 47 48 49 49

iii

Figura 4.11 Diagrama de clases del sistema Figura 5.1 Unin de la ontologa de infraestructura y ONALIN Figura 5.2 Proceso de instanciacin de la informacin del sistema Figura 5.3 Modelo de representacin de las distintas zonas del entorno [Estrada 2012] Figura 5.4 Representacin de los segmentos de navegacin en el entorno Figura 5.5 integracin de los puntos de inters al entorno Figura 5.6 integracin de las orientaciones en el entorno Figura 5.7 Botn para la seleccin de la localizacin del usuario Figura 5.8 Pantalla para la seleccin de la localizacin del usuario Figura 5.9 Visualizacin de puntos de inters en el entorno Figura 5.10 representacin de las clases de la ontologa en un entorno real Figura 5.11 Ejemplo de instanciacin de las ontologas del sistema Figura 5.12 Estructura principal de un archivo JSON Figura 5.13 Estructura de un objeto del tipo nodo Figura 5.14 Estructura de un objeto de orientacin Figura 5.15 Estructura de un POI Figura 5.16 Insercin de imgenes con la librera Look! Figura 5.17 Insercin de texto en el objeto virtual Figura 5.18 Insercin de objetos virtuales en el entorno Figura 5.19 Pantalla de informacin extra de los puntos de inters del entorno Figura 5.20 variables que controlan la visibilidad de los objetos Figura 5.21 Mtodo para el filtrado de informacin Figura 5.22 Implementacin de opciones de filtrado de informacin en la aplicacin Figura 6.1 Representacin de la plata baja del edificio de computacin Figura 6.2 representacin de la planta alta del edificio de computacin Figura 6.3 Error en los archivos XML por la etiqueta Extensin Figura 6.4 Recomendaciones nulas en los archivos XML

57 62 62 63 64 64 65 66 66 67 67 68 68 69 69 69 70 70 71 71 72 72 73 78 79 116 116

iv

Captulo 1. Introduccin

Captulo 1. Introduccin
En este captulo se describen los antecedentes del proyecto y el contexto en el que se desarroll, as como tambin los objetivos, el problema a resolver y los alcances del proyecto.

Captulo 1. Introduccin

1.1 Introduccin
La computacin ubicua es un rea de la computacin que permite a una computadora o dispositivo mvil estar conscientes de su entorno, esto es posible mediante tcnicas de reconocimiento contextual y censado de seales emitidas por distintos tipos de dispositivos que permiten que un sistema pueda estar consciente (de manera artificial) de las actividades o cambios que suceden en el entorno. La computacin ubicua nos permite disear varias aplicaciones capaces de interactuar con el entorno, las cuales pueden involucrar la localizacin de objetos en interiores o exteriores, sistemas de navegacin, sistemas de informacin contextual, entre otros. Algunas de las tcnicas de identificacin usadas en el cmputo ubicuo utilizan tecnologas que permiten a los dispositivos conocer la informacin de los objetos, lugares y personas de su entorno, ya sea mediante seales de radio frecuencia o marcadores visuales. El desarrollo de estos sistemas ha ido evolucionando de tal manera que podemos encontrar aplicaciones de navegacin para celulares, diseadas con una interfaz de usuario que permite la navegacin con mapas o aplicaciones que implementan interfaces con realidad aumentada. Actualmente en el Laboratorio de Sistemas Distribuidos del Centro Nacional de Investigacin y Desarrollo Tecnolgico (CENIDET) se est desarrollando un sistema de recomendacin contextual para Instituciones de Educacin Superior (IES), en este proyecto se estn modelando, diseando e implementando servicios que permiten averiguar las condiciones del entorno fsico de una organizacin (IES), con estos servicios los usuarios que visitan una IES reciben recomendaciones contextuales, en un cliente instalado en su dispositivo mvil, que contienen informacin de personas, de objetos de conocimiento y de lugares, se espera que estas recomendaciones satisfagan sus necesidades explicitas e implcitas. La interfaz con la que se le muestran los datos del entorno al usuario utiliza mapas diseados en segunda dimensin, sin embargo, en los sistemas implementados con este tipo interfaz existe un problema de interpretacin de la informacin de los objetos y la localizacin del usuario en el entorno, los sistemas que utilizan tcnicas de realidad aumentada pueden mostrar la informacin contextual de los objetos al enfocarlos con el dispositivo, lo que facilitara la interpretacin de esta informacin y, debido a que el usuario interacta directamente con el entorno, no existiran problemas para interpretar su localizacin. La implementacin de sistemas de realidad aumentada elabora la insercin de objetos virtuales en el entorno real, lo que implica que cada objeto virtual debe estar asociado a uno real para poder interpretar de manera correcta la informacin, para ello deben disearse tcnicas para identificar los elementos del entorno, dependiendo de las condiciones en las que se vaya a implementar la aplicacin. Adems del reconocimiento de objetos en la realidad aumentada, deben integrarse servicios que proporcionen la informacin de los objetos que se encuentran en el entorno, y adems de ello, deben implementarse servicios de localizacin para determinar la ubicacin del usuario con el entorno, conocer que objetos se encuentran a su alrededor y finalmente conocer el perfil del usuario para poder elaborar recomendaciones de objetos, lugares o personas
6

Captulo 1. Introduccin

de inters, por lo tanto, la aplicacin que se pretende desarrollar debe integrar funciones de reconocimiento, localizacin y recomendaciones en el entorno. En resumen, en este proyecto de tesis se disearon e implementaron de servicios que presentan la informacin contextual de recomendaciones de personas, objetos y lugares utilizando tecnologas de realidad aumentada, por ejemplo, descripcin de objetos cmo libros, instalaciones, ubicacin de personas e incluso la identificacin de personas por medio de tecnologas de auto-identificacin. Como resultado de este proyecto de tesis se desarroll un prototipo para telfonos inteligentes (o Smartphones) que explota todos los sensores contextuales de estos dispositivos mostrando al usuario informacin contextual de la IES sobre video en tiempo real capturado por la cmara del dispositivo.

1.2

Antecedentes

En esta seccin se detallarn las tesis y trabajos que se han elaborado dentro del rea de sistemas distribuidos del CENIDET con respecto al trabajo que se est desarrollando.

1.2.1 Servicios de localizacin conscientes del contexto aplicando perfiles de movilidad y tecnologas de localizacin heterogneas [Arjona 2009]
Este trabajo se considera antecedente ya que desarroll servicios de localizacin en interiores que pudieran estar conscientes del contexto, adems se implementaron servicios para la localizacin de los usuarios utilizando dispositivos celulares, de esta manera se cuenta con un sistema de localizacin en interiores que puede identificar los objetos que se encuentren en el entorno real. Este proyecto logr introducir una aplicacin conocida como T -Gua, la cual cuenta con una arquitectura cliente servidor, el servidor es capaz de gestionar la ubicacin de los objetos mediante tarjetas RFID y las direcciones MAC de los dispositivos, mientras que la aplicacin de cliente fue elaborada para dispositivos mviles con sistema operativo Android, y es capaz de recibir la informacin de las localizaciones mediante RFID y QRCodes, gracias a las tecnologas implementadas en este proyecto se logr una localizacin en interiores con una precisin de posicionamiento de los dispositivos menor a 2 metros.

1.2.2 API para servicios de localizacin basada en tecnologa RFID, QRCode, WIFI y Bluetooth [Yris 2012]
Este proyecto dio como resultado una API que permita al programador implementar mtodos de localizacin de dispositivos mviles en interiores de edificios en base a las lecturas obtenidas por dispositivos con interfaz IEEE 802.11 (Wi-Fi) y RFID. Los mtodos que conforman la API tambin permitirn la trazabilidad en tiempo real de personas y objetos que se encuentren identificados por etiquetas RFID pasivas.
7

Captulo 1. Introduccin

El algoritmo de localizacin por redes inalmbricas, mediante Wi-Fi o Bluetooth, consiste en definir distintas reas de localizacin dependiendo la potencia de la seal con la que esta se reciba, en la figura 1.1 puede apreciarse un ejemplo de sta definicin de zonas tipo de algoritmo, los distintos puntos de acceso emiten seales con distinto nivel de frecuencia, dependiendo la potencia recibida por cada uno de los puntos de acceso es posible dividir el entorno en celdas de localizacin, ya que se ha dividido el entorno en estas celdas, es posible identificar la ubicacin del usuario en el entorno al registrar la potencia de la seal recibida, este mtodo es conocido como el algoritmo de localizacin fingerprint.

Figura 1.1 algoritmo de localizacin por redes inalmbricas implementado [Yris 2012]

Una vez establecido este algoritmo para la localizacin en interiores, se procedi a medir la potencia de las seales de los puntos de acceso en el entorno, registrando el incremento y decremento de cada seal recibida, esto permiti dividir el entorno en celdas de localizacin con una superficie de 2 metros cuadrados, generando una divisin como se muestra en la figura 1.2.

Captulo 1. Introduccin

Figura 1.2 segmentacin del entorno de acuerdo a la potencia de seal inalmbrica recibida [Yris 2012]

Para definir la localizacin dentro de las distintas reas funcionales del entorno, se agruparon las celdas que se encontraban dentro de una de las reas, de sta forma, podr definirse si el usuario se encuentra en un rea funcional del entrono dependiendo en qu conjunto de celdas se encuentra, la siguiente tabla define la correspondencia de las zonas funcionales del entorno con las celdas definidas en la figura anterior.
Nombre de la zona de localizacin CENIDET.Cerritus.DCC.Aula_1 CENIDET.Cerritus.DCC.Aula_2 CENIDET.Cerritus.DCC.Aula_3 CENIDET.Cerritus.DCC.Laboratorio_Sistemas_Distribuidos CENIDET.Cerritus.DCC.Laboratorio_Ingenieria_de_software CENIDET.Cerritus.DCC.Laboratirio_Inteligencia_Artificial CENIDET.Cerritus.DCC.Soporte_tecnico CENIDET.Cerritus.DCC.Sanitarios CENIDET.Cerritus.DCC.Escaleras_planta_baja CENIDET.Cerritus.DCC.Entrada_al_edificio CENIDET.Cerritus.DCC.TragaLuz Smbolo / color

Adems de implementar un servicio de localizacin por tecnologas inalmbricas, tambin se implement un algoritmo de reconocimiento mediante RFID. Esta tecnologa permite capturar e identificar de manera automtica informacin contenida en etiquetas (tags) a travs de un lector de ondas de radio frecuencia, stas etiquetas RFID se adhieren a algn objeto, cuando el objeto se encuentre en el campo de recepcin del lector RFID, la etiqueta se energiza y enva como respuesta un nmero de 96 bits (cdigo EPC) al lector,
9

Captulo 1. Introduccin

este cdigo se utiliza para identificar y extraer informacin del objeto [Portillo 2008]. Para sta identificacin, se disearon portales RFID que contaban con dos antenas lectoras, las cuales podan registrar el movimiento de entrada y salida de alguna entidad que contenga un tag, en la figura 1.3 se presenta el modelo de los portales RFID, estos portales podran ser instalados en los accesos de las distintas reas del entorno como se muestra en la figura 1.4, de esta forma el sistema podra registrar cuando un usuario, con una etiqueta RFID asignada, entraba o sala de determinada rea, y de esta forma inferir su localizacin.

Figura 1.3 diagrama del funcionam iento de los portales RFID [Yris 2012]

Figura 1.4 diagrama para la implementacin de portales RFID [Yris 2012]

10

Captulo 1. Introduccin

1.2.3 Generacin y explotacin de mapas semnticos para instalaciones organizacionales mediante el uso de ontologas [Estrada 2012]
En este proyecto se desarrollaron herramientas que permitieron crear mapas virtuales con anotaciones semnticas de manera automtica, de esta forma los mapas contienen informacin acerca de la estructura de la informacin, adems de contener la informacin de los elementos que se encuentran en cada uno de los lugares. Para poder elaborar esto, los mapas se desarrollaron en el lenguaje de diseo de grficos en segunda dimensin Scalable Vector Graphics (SVG), de esta manera se lograron desarrollar mapas que contienen informacin de las instalaciones sin depender de algn servicio web para obtener esta informacin, adems que este formato permite elaborar acercamientos a las imgenes sin obtener alguna distorsin. En la figura 1.5, se muestra un ejemplo de un mapa construido en este formato de la planta baja del edificio de computacin.

Figura 1.5 Ejemplo de un mapa generado en el proyecto [Estrada 2012]

Para obtener la informacin contenida en estos mapas, se utilizaron ontologas organizacionales, en las cuales contenan informacin acerca de los objetos, personas, eventos, recursos, etc. Con estas ontologas se poda extraer la informacin de la organizacin y asignarle esta informacin a los mapas SVG, de esta forma el mapa contendr informacin sobre los objetos y las personas que estn asignadas a ese lugar. Adems de ello, se desarroll una ontologa capaz de modelar la infraestructura de una organizacin, con la cual era posible definir reas funcionales, entradas, edificios, escaleras, etc.

11

Captulo 1. Introduccin

1.2.4 Servicio de recomendacin contextual mediante ontologas multidimensionales para dispositivos Smartphone [Gonzlez 2012]
El objetivo de esta tesis fue desarrollar servicios de recomendacin contextuales para usuarios mviles de una IES, mediante la explotacin de ontologas organizacionales y ontologas de perfil de usuario, para inferir recomendaciones de servicios, personas, lugares y objetos asociados a una organizacin. Las recomendaciones se explotarn en el dispositivo mvil de un usuario, aplicando tcnicas avanzadas de interaccin basadas en texto para visualizar las recomendaciones, utilizando el potencial de los dispositivos mviles de ltima generacin. Este proyecto busca modelar la informacin contextual de una organizacin (IES) mediante una red de ontologas, basndose en los conceptos definidos en [Bouzeghoub 2009] sobre contexto multidimensional, de tal forma, que se contemplan cinco dimensiones, correspondientes a las siguientes ontologas: Ontologa organizacional: en esta ontologa, basada en las ontologas de organizaciones desarrolladas previamente en el CENIDET, se describen diversos aspectos de la institucin, tales como los datos generales y financieros de una organizacin, sus competencias, recursos de infraestructura, recursos humanos, estructura organizacional, objetos de conocimiento y servicios, entre otros. Ontologa de localizacin: esta ontologa se forma de ontologas de espacios y de localizacin, desarrollndose actualmente en CENIDET [Estrada 2010] [Yris 2012], considera espacios interiores y exteriores de las organizaciones. Ontologa de Actividades: se propone esta ontologa para describir las actividades de las personas pertenecientes a una organizacin, considerando el tipo de actividad, el rol de la persona en ella y los recursos organizacionales asociados a dicha actividad. Ontologa de tiempo: se toma como base la ontologa OWL-Time y se propone extenderla para satisfacer los requerimientos del sistema de recomendacin propuesto en esta tesis, tal como el modelado de horarios, periodos de trabajo, fechas de eventos, etc. Ontologa de perfil de usuario: en esta ontologa, basada en las ontologas de perfil de usuarios desarrolladas previamente en el CENIDET, se describen los intereses y preferencias de los usuarios, adems de las competencias de los mismos.
12

Captulo 1. Introduccin

Con este conjunto de ontologas, a las cuales se le aadirn las relaciones correspondientes para conformar la red, se busca modelar aspectos relacionados con competencias organizacionales e individuales, objetos de conocimientos, localizacin, infraestructura, eventos espacio/temporales, agendas de actividades, ocupaciones, roles e intereses de los usuarios.

1.3

Descripcin del problema

Actualmente, los sistemas de informacin contextual en entornos inteligentes que utilizan realidad aumentada, necesitan establecer mtodos para identificar objetos, personas o lugares que estn contextualizados en el sistema. Sin embargo deben aplicar diferentes tecnologas para el reconocimiento de objetos dependiendo el entorno en el que se encuentre la aplicacin, ya que algunas de ellas, como el reconocimiento de objetos a travs de marcadores, pueden ser ms eficientes en ciertos entornos, incluso dependiendo del origen del entorno, algunas tecnologas no pueden implementarse, por ejemplo el uso de marcadores en museos de patrimonio cultural. Una vez conocidas las tecnologas que pueden implementarse en el entorno, debe tenerse en cuenta que utilizar una sola tcnica para el reconocimiento de objetos en este tipo de aplicaciones no garantiza una buena precisin al relacionar los objetos reales con sus anotaciones virtuales [Park 2010], adems es muy difcil realizar todas las funciones del sistema mediante el uso de una sola tecnologa, por ejemplo, si se utilizaran marcadores nicamente, para la localizacin del usuario en el entorno deberan implementarse muchos marcadores, de tal manera que se asegure que el usuario visualice, adems cada marcador necesitara contener la informacin de la zona del entorno en la que se localiza el usuario, tal como se hizo en [Thomas 2002], en caso de las tecnologas sensoriales, podra detectarse los objetos que se encuentran cerca del dispositivo, sin embargo algunas de ellas emiten seales de corto alcance, tal es el caso de RFID, y en cuanto a la realidad aumentada sera imposible asociar los objetos virtuales con los reales de manera precisa, por ejemplo en caso de encontrarse mltiples objetos en el entorno, el dispositivo podra detectar las seales emitidas por estos, sin embargo no podra asignar los objetos virtuales con precisin a los objetos, debido a que no sabra en qu direccin se recibe la seal. Debido a lo anterior, deben implementarse tcnicas que permitan combinar las distintas tecnologas de localizacin de usuarios y reconocimiento de objetos en el entorno para obtener una mayor precisin en la insercin de los objetos reales. Cada una de las tcnicas utilizadas para la auto-identificacin de objetos implica diferentes procesos para el reconocimiento de los mismos, por ejemplo, la identificacin sensorial necesita conocer la localizacin del usuario para determinar que objetos se encuentran en su alrededor, despus, con ayuda de los sensores del dispositivo, puede obtener la orientacin del usuario y
13

Captulo 1. Introduccin

mostrarle los objetos que est viendo a travs de la cmara del dispositivo mvil. Para elaborar tcnicas de auto-identificacin hibridas es necesario tomar en cuenta cmo se van a reconocer los distintos objetos del entorno utilizando diversas tcnicas?, ya que el entorno puede contar con diferentes objetos, en el campo de visin podran encontrarse objetos que se reconozcan mediante su forma, algn marcador o tecnologas sensoriales, de tal manera que debemos considerar que en el entorno existen mltiples objetos que pueden autoidentificarse de distintas maneras en tiempo real. Una vez que se implementan las tcnicas de auto-identificacin para reconocer personas, objetos y lugares, se debe extraer la informacin descriptiva de cada uno de estos elementos de una fuente de informacin contextual, para este proyecto de tesis se utilizar el servicio de recomendacin T-Gua, este sistema modela semnticamente una organizacin y recomienda al usuario cada uno de los elementos que define el modelo semntico desarrollado en los proyectos de tesis descritos en la seccin 3, como caso de estudio, en este proyecto de tesis se considera como escenario de prueba una institucin de Educacin Superior (IES), debido a que estas contienen informacin sobre personal, eventos, horarios, objetos, etc. de esta manera existe mucha informacin contextual en una IES para elaborar recomendaciones de los elementos anteriores, adems que los proyectos anteriores, incluyendo el sistema de recomendacin [Gonzles 2010], el servicio de localizacin [Yris 2012] y el modelado de la infraestructura [Estrada 2010], estn basados en la IES CENIDET, y debido a esto, la aplicacin que se pretende desarrollar podra auxiliarse de stas herramientas al integrar su funcionamiento para el entorno en que fueron diseadas. Con el escenario descrito para esta tesis, se debe relacionar la informacin contextual de los de las personas, lugares y objetos de la IES con las tcnicas de realidad aumentada que estn en el campo de visin del dispositivo, solucionando los problemas relacionados con objetos sobrepuestos, identificacin de lugares desde diferentes puntos de visin, de acuerdo a la ubicacin del usuario en las instalaciones de la IES, considerando que la infraestructura de la organizacin se conforma de varios edificios multinivel en un rea extensa y de muchos objetos de conocimiento y equipos de laboratorio.

1.3.1 Complejidad del problema


Como se ha mencionado anteriormente, en este proyecto deben implementarse tcnicas que sean capaces de localizar a los usuarios en entornos inteligentes, los cuales mediante tecnologas para el censado de dispositivos mviles pueden detectar e inferir actividades del usuario, adems de que debe mostrrsele al usuario informacin contextual del ambiente que lo rodea, lo cual implica que debe considerarse lo siguiente para poder implementar esta aplicacin:
14

Captulo 1. Introduccin

Debe implementarse una tcnica adecuada de auto-identificacin para los objetos, lugares y personas, que permita la identificacin de mltiples objetos en el campo de visin del dispositivo. Deben implementarse tcnicas de reconocimiento de mltiples objetos tanto para la identificacin en interiores y exteriores dentro del entorno inteligente. Deben establecerse tcnicas que permitan la auto-identificacin de personas, que puedan reconocer a una persona y mostrar la informacin de sta mediante informacin contextual del sistema de recomendacin. Cada tcnica utilizada comprende propias dificultades de reconocimiento, los marcadores deben disearse de determinado tamao, dependiendo de la resolucin de la cmara del dispositivo, para que puedan identificarse de manera correcta. La aplicacin necesita un repositorio donde pueda asociar los patrones para la identificacin de los objetos y la informacin de los mismos.

1.4

Objetivos del proyecto

1.4.1 Objetivo general


El objetivo de esta tesis es el anlisis, diseo e implementacin de servicios de recomendacin contextual para instituciones de educacin superior, que utilicen tecnologas de realidad aumentada para mostrar informacin de personas, lugares y objetos en dispositivos Smartphone.

1.4.2 Objetivos especficos


Implementar servicios de localizacin en interiores capaces de determinar la localizacin en tiempo real de un dispositivo mvil. Desarrollar un servicio que sea capaz de determinar la orientacin del dispositivo Smartphone mediante los sensores contextuales como el acelermetro, magnetmetro y giroscopio. Desarrollar servicios que permita identificar los objetos, lugares, personas y edificios que se estn visualizando en el dispositivo, extrayendo la informacin contextual del modelo semntico organizacional. Desarrollar servicios para la extraccin de informacin contextual de una red de ontologas organizacionales, que contendrn la informacin del entorno en el que se desarrollar la aplicacin.
15

Captulo 1. Introduccin

Desarrollar servicios que muestren informacin contextual en tiempo real de personas, lugares y objetos mediante tcnicas de realidad aumentada.

1.5

Justificacin

Adems de la realidad aumentada como una opcin de interfaz para los sistemas de cmputo ubicuo, tambin pueden desarrollarse sistemas que muestren la informacin contextual del entorno mediante mapas en segunda o tercera dimensin, sin embargo este tipo de interfaz carece de naturalidad en la interaccin del usuario con la informacin del entorno, lo que conlleva a problemas como la interpretacin de la informacin del entorno, la localizacin de lugares, objetos o personas que se encuentren en un piso distinto al del usuario, y al orientar al usuario en cuanto a su localizacin del edificio [Kurata 2007]. Las tecnologas de realidad aumentada han evolucionado la interaccin con el entorno en los sistemas de computacin ubicua, ya que el usuario es capaz de visualizar el entorno real con informacin mediante objetos virtuales, lo que permite una interaccin ms intuitiva, de tal manera que el usuario puede obtener la informacin y recomendaciones de objetos, lugares y personas nicamente al enfocarlas con el dispositivo [Matysczo 2003]. Actualmente se est desarrollando una nueva versin del sistema de recomendacin contextual de [Arjona 2009], de esta manera este proyecto integrara nuevas funciones que permitieran ampliar su funcionalidad. Como parte de las mejoras del sistema T-Gua, se pretende mejorar la aplicacin cliente del sistema, de esta manera se implementaran nuevos mtodos de localizacin y se aprovecharan tecnologas de los dispositivos mviles que no se consideraron al desarrollar la primera versin del sistema T-Gua. Por otro lado, las tecnologas de realidad aumentada le permiten interactuar al usuario con el entorno real de manera ms natural con la informacin de entornos inteligentes. Adems, los dispositivos Smartphone integran tecnologas sensoriales que podran gestionar muchos de los requerimientos de la implementacin de aplicaciones de realidad aumentada. Por lo que al desarrollar una nueva aplicacin de informacin contextual utilizando tecnologas de realidad aumentada, se innovara la interaccin del cliente con el sistema.

16

Captulo 2. Marco Terico

Captulo 2. Marco Terico


En esta seccin se describen algunas herramientas, conceptos y aspectos tcnicos que estn considerados para el desarrollo del proyecto descrito en este documento.

17

Captulo 2. Marco Terico

2.1

Realidad aumentada

La realidad aumentada (Augmented Reality, AR) es un rea de investigacin que se procura mejorar la interaccin con el entorno real mediante la superposicin de informacin virtual [Schmalstieg 2011], esto quiere decir que gracias a las tecnologas desarrolladas mediante realidad aumentada podemos elaborar tareas en el entorno real permitindonos obtener informacin de ste mediante la insercin de objetos virtuales en el entorno, la realidad aumentada abarca tres principales caractersticas; La insercin de imgenes virtuales en los entornos reales. Como ya se mencion anteriormente, la realidad aumentada integra informacin en el entorno real mediante objetos virtuales, ya sea mediante animaciones u objetos estticos sobre el video grabado del entorno mediante la cmara del dispositivo. Reconocimiento de objetos en tercera dimensin. Debido a que la realidad aumentada necesita sobreponer informacin de los objetos en el entorno, es necesario colocarla de manera precisa sobre cada uno de ellos, de esta forma se asegurara una correspondencia del objeto con la informacin virtual, para ello se aplican distintas tcnicas de reconocimiento de los elementos en el entorno. Interactividad en tiempo real. Una de las caractersticas que integra la realidad aumentada es, que mientras el usuario interacta con el entorno real puede interactuar con los objetos virtuales en el mismo instante.

Inicialmente las aplicaciones de realidad aumentada se desarrollaban en computadoras fijas o se construan dispositivos que se montaban sobre el usuario (Head Mounted Display, HMD) para permitir la movilidad de estas aplicaciones en el entorno [Azuma 1997], sin embargo, el costo de estos sistemas y los conocimientos tcnicos necesarios para su uso impidieron generalizar la construccin de sistemas de realidad aumentada en estos dispositivos. Actualmente, varios investigadores han desarrollado sistemas de realidad aumentada aprovechando las tecnologas que ofrecen los dispositivos de cmputo mvil, como los PDAs, Smartphones, Tablets PC, etc. Estos dispositivos contienen tecnologas sensoriales que nos permiten conocer el posicionamiento del usuario en el entorno y adems la orientacin del usuario para conocer que objetos se encuentran en su campo de visin [Thalmann 2008]. Los sistemas de realidad aumentada requieren de un reconocimiento preciso de la orientacin y el posicionamiento del usuario para poder ajustar la informacin virtual en los objetos reales, para ello pueden utilizarse distintas tcnicas con las cuales puede identificarse a los objetos del entorno, estas pueden clasificarse dependiendo a la estrategia y a las tecnologas utilizadas para la identificacin de objetos del entorno, comnmente puede elaborarse la identificacin de objetos mediante el uso de marcadores visuales, sin marcadores o mediante tecnologas sensoriales, a continuacin se describe en qu consiste cada una de estas tecnologas.

18

Captulo 2. Marco Terico

2.1.1 Reconocimiento de objetos mediante el uso de marcadores


Un marcador visual es una imagen que contiene algn cdigo preestablecido, el cual puede ser decodificado por algn dispositivo para el reconocimiento de objetos, transferencia de informacin, etc. En la realidad aumentada, los marcadores se utilizan para facilitar y controlar las imgenes que se van a visualizar, adems de implementar otras funciones en el sistema, por ejemplo, en [Thomas 2002] se implement un juego de realidad aumentada en primera persona en el que, adems de utilizar marcadores para insertar los objetos virtuales, se implement un sistema de localizacin de bajo costo utilizando los marcadores, en donde se estableca la ubicacin del usuario en el entorno dependiendo el tipo de marcador. Adems de funcionar como un sistema de localizacin los marcadores permiten obtener la orientacin del dispositivo sin necesidad de utilizar sensores de orientacin en el dispositivo, en trabajos como [Schmalstieg 2003] y [Schmalstieg 2006] los marcadores ayudan a obtener la orientacin del dispositivo de acuerdo a la inclinacin de la imagen del marcador capturada. En la figura 2.1 puede apreciarse un ejemplo de los marcadores que se utilizan comnmente; de plantilla y matrices de datos. Los marcadores de tipo plantilla son aquellos que se disean con alguna figura en particular, especialmente diseada para reconocer objetos en el entorno, pueden facilitar la interpretacin de estos por los usuarios. Las matrices de datos son capaces de almacenar cdigos binarios de manera bidimensional, comnmente se emplean matrices de 6x6 capaces de generar 4096 marcadores distintos, tambin se han llegado a implementar matrices de datos de 144x144 capaces de almacenar hasta 1558 bytes.

Figura 2.1 marcadores de planti lla y matrices de datos [Schmalstieg 2007]

Adems de las matrices de datos, tambin existen los cdigos de respuesta rpida (Quick Responce Code, QRCode), los cuales representan un cdigo bidimensional con el cual se puede codificar texto alfanumrico, cdigos numricos e imgenes, la especificacin permite codificar tres clases de informacin: QRCodes con 7,089 caracteres numricos, con 4,296 caracteres alfanumricos y con 2,953 cdigos binarios (imgenes) [ISO 2006], En la figura 2.2 puede apreciarse un ejemplo de un QRCode.

19

Captulo 2. Marco Terico

Figura 2.2 ejemplo de un QRCode [Woo 2011]

Como puede observarse, los marcadores son capaces de almacenar datos de distintas formas, adems que pueden ser tiles para indicarle al usuario zonas de inters. Para poder reconocer la informacin que se encuentra dentro del marcador podemos utilizar el algoritmo propuesto en [Schmalstieg 2007], el cual consta de cinco fases descritas de la siguiente forma: Umbralizacin. En este proceso se eliminan las sombras y los otros colores capturados del entorno, conservando nicamente aquellos colores que permitan identificar al marcador, por ejemplo, en la figura 2.3 puede apreciarse que cuando el marcador se encuentra en blanco y negro, el proceso de umbralizacin eliminar los otros tonos de la imagen, conservando nicamente aquellos que le permitan identificar el marcador.

Figura 2.3 proceso de umbralizacin [Schmalstieg 2007]

Deteccin de marcadores. Una vez que se ha obtenido una imagen con la umbralizacin, debern detectarse todas las figuras que puedan formar un marcador, en este proceso se obtendrn diversas formas sin importar que no formen un rectngulo o la forma establecida del marcador. Definicin de la forma. Una vez obtenidas las figuras candidatas, se someten a una verificacin que comprueba que cumplen con la forma de los marcadores, en caso de que los marcadores sean cuadrados, se descartarn todas las figuras que no tengan las propiedades de la forma del marcador. Verificacin de patrones. Una vez obtenidas las figuras de los marcadores, puede identificarse el patrn que este contiene, este proceso permitir reconocer el marcador y aadir los objetos virtuales correspondientes Estimacin de la orientacin. Finalmente puede obtenerse una orientacin del dispositivo con respecto al marcador, esto puede hacerse al detectar alguna inclinacin en la imagen capturada del marcador
20

Captulo 2. Marco Terico

Los marcadores visuales permiten controlar la identificacin visual en el entorno, incluso pueden disearse para facilitar su reconocimiento, por ejemplo al integrar marcadores de colores ms visibles en el entorno, adems de poder aprovechar otras funcionalidades de estos, como la obtencin de la orientacin y ubicacin del dispositivo.

2.1.2 Tcnicas de reconocimiento visual sin marcadores


En algunos de los entornos, como es en el caso de los museos de patrimonio cultural [Park 2010] y [Papagiannakis 2005], no pueden agregarse marcadores para la identificacin de objetos en el entorno, por lo tanto debe optarse por otras estrategias que le permitan a la aplicacin identificar que objetos se encuentran a su alrededor. Las tcnicas de reconocimiento visual se utilizan en los sistemas inteligentes para facilitar la recoleccin de los datos y la toma de decisiones, este tipo de tcnicas se encarga de clasificar objetos, capturados en alguna escena o imagen capturada, en cierto nmero de categoras o clases [Pajares 2008]. Muchos sistemas de este tipo se basan en la identificacin de formas, bordes, o puntos clave de los objetos en el entorno, para ello es necesario aplicar algn algoritmo de tratamiento de imgenes por visin artificial. Para comprender de manera general como puede llevarse a cabo un reconocimiento visual, se expondr el algoritmo propuesto por [Matysczok 2003], en el cual se extraen los bordes de una imagen para el reconocimiento de objetos y, posteriormente, para la insercin de informacin virtual de ese objeto. Extraccin de la estructura del objeto. Es necesario que primero se obtenga una imagen de algn objeto mediante la cmara del dispositivo, en este paso tambin se identificarn los bodes y puntos clave que puedan formar alguna figura que pueda ayudar a reconocer el objeto. Acceso a los datos 3D-CAD. Una vez obtenidas los bordes, puntos o figuras candidatas a formar un objeto, se accede a los modelos creados en programas de diseo asistido mediante computadora (CAD), estos modelos almacenan las formas de los objetos del entorno que pueden ser identificados, de esta forma ayudarn a comparar las figuras obtenidas en el primer paso para determinar si se trata de algn objeto contextualizado. Deteccin de figuras auxiliares. Una vez obtenido el modelo 3D-CAD, se compara este modelo con las figuras obtenidas en la captura de la imagen, de esta forma se obtendrn todas las coincidencias con el modelo, obteniendo una primera forma del objeto. Reduccin de polgonos. Ya que se han obtenido los bordes, puntos clave y figuras que coinciden con el modelo 3D-CAD, aquellos que no hayan coincidido con el modelo sern descartados, reduciendo las figuras capturadas para simplificar la forma del objeto y su reconocimiento. Extraccin de bordes dominantes. Ya que se cuenta nicamente con las figuras que coinciden con el modelo, se definen los bordes y superficies que formarn al objeto.

21

Captulo 2. Marco Terico

Definicin de relaciones. Una vez definidos los bordes y las superficies capturadas, se procede a formar relaciones entre estos para definir el objeto, esto permite reconocer finalmente al objeto Conversin de datos. Finalmente, este objeto puede pasarse a un formato de reconocimiento, en donde pueda devolverse una clave de identificacin, que le pueda indicar al sistema cmo reaccionar una vez que se ha reconocido el objeto, en algunos casos este objeto puede llegar a almacenarse para enriquecer los modelos 3D-CAD.

Como puede verse, el proceso de reconocimiento de objetos requiere un tratamiento avanzado de imgenes, debido a que estos objetos deben ser identificados sin importar de qu ngulo haya sido capturada la imagen, es por ello que los modelos 3D-CAD deben capturarse de manera robusta, de tal forma que el objeto pueda identificarse de diferentes perspectivas.

2.1.3 Tcnicas de reconocimiento sensorial


Las tcnicas de reconocimiento sensorial pueden dividirse en dos tipos de acuerdo al tipo de reconocimiento que utilizan, por un lado se encuentran aquellas tcnicas que se encargan de reconocer los objetos al recibir una seal mediante algn tipo de sensor, y por otro lado se encuentran aquellas que utilizan sensores de orientacin para definir que objetos se encuentra visualizando el usuario de acuerdo a la posicin en la que se encuentra el dispositivo. Algunos trabajos han utilizado tecnologas como la identificacin por luces infrarrojas, tecnologas por identificacin de radiofrecuencia (RFID) u otro tipo de sensores. En trabajos como [Olwal 2006] se utilizan sensores infrarrojos en los dispositivos para poder detectar una seal capaz de identificar objetos del entorno y proyectar informacin contextual del mismo. El trabajo [Rashid 2006] utiliza la tecnologa RFID para integrar etiquetas en los puntos de inters (points of interest, POI) capaces de contener informacin de estos, para la lectura de estas etiquetas, se integr un lector de RFID en el dispositivo, de esta forma el sistema era capaz de reaccionar ante los POIs del entorno detectados por el dispositivo. Como puede apreciarse, este tipo de tecnologas se utiliza de manera similar a los marcadores visuales, aadindole a algn objeto del entorno un mecanismo capaz de emitir una seal que pueda ser recibida por el dispositivo y de esta forma poder identificarse. Sin embargo, existen otros trabajos que aprovechan los sensores de orientacin como el acelermetro, giroscopio y magnetmetro para identificar los POIs del entorno. Trabajos como [Paucher 2010] implementan un reconocimiento a base de los sensores de orientacin, el cual despus se complementa con un reconocimiento visual para lograr una mayor precisin para la correspondencia de la informacin virtual con los objetos reales. En [Mulloni 2010] se propuso un mtodo con el cual puede saberse si el dispositivo se encuentra viendo un POI a partir de su orientacin, en la figura 2.4 puede apreciarse el modelo de orientacin de un dispositivo con respecto a un POI, como puede verse, existen tres rotaciones R definidas por los
22

Captulo 2. Marco Terico

acelermetros de los ejes X, Y y Z. Una rotacin del dispositivo con respecto al norte (RDN), la rotacin del POI con respecto al norte ( RPN) y finalmente una rotacin del dispositivo con respecto al POI ( RDP), el norte se define con las mediciones del magnetmetro del dispositivo.

Figura 2.4 modelo de rotaciones en un reconocimiento sensorial por ori entacin

Para que este modelo funcione es necesario establecer una localizacin del usuario con el entorno, ya que la orientacin de los POIs puede variar de acuerdo a la ubicacin del usuario en el entorno, una vez establecida la localizacin del usuario, se toman los datos de las rotaciones RPN, donde se encontrarn referenciados los POIs. Cada vez que el usuario se encuentre en la localizacin definida se obtiene la rotacin del dispositivo RDN, esta rotacin obtenida puede compararse con la rotacin de los POIs RPN y obtener la rotacin RDP, esta ltima rotacin definir la rotacin que existe entre el punto de inters y el campo de visin del dispositivo, cuando la orientacin del campo de visin del dispositivo este cerca de un POI, podr visualizarse la informacin contextual de este. Como puede apreciarse, las tcnicas sensoriales son capaces de identificar objetos al capturar seales en el entorno, o bien, al identificar la orientacin del dispositivo, sin embargo ninguna de estas tcnicas utiliza la cmara del dispositivo para elaborar algn tipo de reconocimiento, por lo que la precisin de estas tcnicas se basa nicamente en las seales capturadas o en las orientaciones medidas, lo que hace que este tipo de tcnicas tenga una menor precisin en la correspondencia de las anotaciones virtuales con los objetos reales.

2.2

Computacin ubicua

La computacin ubicua mejora el uso de las computadoras haciendo que estas estn conscientes de un entorno fsico, procurando que stas no sean perceptibles para el usuario, por lo tanto podemos definir a la computacin ubicua como el diseo de ambientes inteligentes que integran computadoras o dispositivos que sean capaces de registrar los cambios o actividades que se efectan en el entorno, de esta manera se pueden implementar sistemas que pueden cambiar su comportamiento de acuerdo a los eventos que se presenten en su entorno. [Weiser 1993]
23

Captulo 2. Marco Terico

La computacin ubicua surge con el objetivo de integrar a las computadoras en las actividades de la vida cotidiana, de esta manera las computadoras podran gestionar la informacin del entorno sin necesidad de que el usuario tuviera conciencia de los dispositivos encargados de construir el ambiente inteligente, para ello, se han diseado dispositivos de cmputo mvil cada vez ms discretos, como los Smartphones o PDAs, capaces de obtener informacin del posicionamiento y la orientacin del usuario a base de sensores integrados en los dispositivos, adems, tambin se han diseado tecnologas capaces de integrar tcnicas de auto-identificacin de los objetos en el entorno, como los marcadores, cdigos QR o etiquetas RFID.

2.3

Servicios de recomendacin contextual

El modelado y administracin de contexto es crtico para la implementacin de servicios inteligentes (Smart Services), trmino que incluye dos reas especficas de investigacin: a) tcnicas de interaccin inteligentes, que tratan aspectos relacionados con el descubrimiento, agregacin y entrega de recursos, b) servicios inteligentes, enfocados en proporcionar la infraestructura adecuada para dar soporte a las interacciones inteligentes; es decir, proporcionar la funcionalidad requerida que permita a un sistema adaptarse a su entorno y a las preferencias y necesidades del usuario. Esto significa que adems de conocer el contexto del usuario, tambin se requiere conocer el contexto que le rodea, pas, ciudad, poca del ao, horario, etc. El contexto se puede representar con informacin espacial, se utilizan bases de datos espaciales (SIG) que procesan informacin georeferencial (longitud, latitud) para ubicar puntos o superficies de terrenos o instalaciones en cualquier lugar del planeta, esta informacin es til para establecer lmites, siempre que sea necesario restringir el razonamiento espacial, de acuerdo a los elementos que se encuentren cercanos a una persona, como por ejemplo personas, instalaciones negocios, lugares, etc. Con esto se reconoce la importancia de la heterogeneidad de la informacin contextual, as como tambin de las relaciones inherentes a sta. Lo anterior se puede resumir con la siguiente definicin de contexto: Cualquier informacin til para caracterizar el estado de entidades individuales y las relaciones entre ellos. Una entidad es cualquier objeto o persona que puede afectar el comportamiento de un sistema y/o su interaccin con el usuario . En la ltima dcada se han buscado distintos enfoques para representar y administrar la informacin contextual. Entre estos acercamientos se encuentran: listas de atributos con sus respectivos valores, modelos XML con una estructura de datos jerarquizada de atributos y valores, modelos orientados a objetos y modelos basados en ontologas, estos ltimos permiten definir especificaciones formales de entidades contextuales y sus relaciones dentro de un dominio. Utilizando modelos semnticos basados en ontologas es posible caracterizar dimensiones espacio-tiempo, en donde se modela tanto a las personas como a los lugares. Las personas se modelan mediante su perfil, el cual describe los detalles del usuario en forma de una jerarqua conceptual, representando informacin como: el nombre, la edad, el ao de nacimiento, el nivel
24

Captulo 2. Marco Terico

acadmico, sus dominios de conocimiento, sus competencias individuales1, sus preferencias, gustos, su agenda, y ms. Con relacin al modelado de lugares, se pueden modelar organizaciones describiendo aspectos tales como su infraestructura tecnolgica e instalaciones (activo fijo), sus recursos humanos (capital intelectual), sus objetos de conocimiento 2 (capital estructural), sus servicios y sus competencias organizacionales 3 , adicionalmente se pueden modelar atributos relacionados con espacio-tiempo tales como: horarios, actividades, servicios, ubicacin, etc. Con estos modelos se puede integrar una red de ontologas que represente un modelo semntico multidimensional. Como resultado de este modelado semntico multidimensional, los servicios de recomendacin contextual han emergido como un rea de investigacin que ofrece varios nichos de oportunidad, reas como la sobrecarga de informacin y soporte para la toma de decisiones [Middleton 2009]. El enfoque semntico derivado de las ontologas se puede explotar de manera efectiva en servicios de recomendacin contextual, ya que confiere una capacidad de inferencia sobre la informacin, haciendo uso de lenguajes basados en lgica de primer orden y clusulas de Horn [Breitman 2007].

2.4

Modelado organizacional orientado al entorno

El modelado organizacional es una disciplina que se encarga de externalizar y formalizar conocimiento estructural y de comportamiento sobre cmo se organiza, trabaja y cules son las funciones de una organizacin [Cheung 2006], lo cual permite describir de manera ms sencilla las competencias, recursos tcnicos, tecnolgicos, objetos de conocimiento, etc. Para poder describir los elementos de la organizacin mencionados anteriormente, se utilizan herramientas como la Web Semntica, memorias corporativas, modelos de competencia y ontologas de la organizacin. Los modelos organizacionales nos permiten contener un repositorio con el cual podemos almacenar y administrar informacin sobre los recursos, la infraestructura, datos del personal, eventos, actividades y dems acerca de una organizacin, con lo que este repositorio nos suele ser de gran utilidad para elaborar aplicaciones como servicios de recomendacin de la organizacin, modelos de representacin del entono organizacional, e incluso sistemas de cmputo ubicuo que puedan informar a un usuario acerca de la localizacin de recursos, lugares o eventos que se efecten en el entorno. De esta forma, las herramientas que permiten modelar la informacin de las organizaciones nos sirven para extraer informacin relevante para el tipo de aplicaciones que se pretendan disear, en el caso del cmputo ubicuo, pueden disearse sistemas que permitan obtener informacin acerca de los eventos, lugares, personas u objetos que se encuentran en el entorno basndose en un repositorio con la informacin de la organizacional, por ejemplo ontologas organizacionales.
1 Conjunto de caractersticas personales (conocimiento, habilidades, destrezas, intereses, educacin y entrenamiento) que un individuo aplica en un rango de situaciones de un dominio de conocimiento. 2 Representacin fsica de conocimiento, de tal manera que dicho conocimiento quede plasmado en un medio fsico, en forma de texto, audio, video o imagen. 3 Se define como las capacidades colectivas que permitirn a una organizacin sacar provecho a sus servicios o productos, de sus objetos de conocimiento, de su infraestructura, prestigio y capital intelectual.

25

Captulo 2. Marco Terico

2.5

Android

Es un sistema operativo desarrollado por Google, el cual contiene un conjunto de aplicaciones para dispositivos mviles. Android est diseado para que los desarrolladores puedan crear aplicaciones en las que se aproveche al mximo los recursos y las funciones de los dispositivos mviles. Android est desarrollado sobre el ncleo del sistema operativo Linux, adems utiliza una mquina virtual que ha sido diseada para optimizar los recursos de memoria y hardware en un entorno mvil. Actualmente, los desarrolladores de Android han liberado un SDK (Software Development Kit) con el cual se pueden construir aplicaciones en el lenguaje de programacin Java, adems este SDK puede actuar como un complemento para el entorno de desarrollo Eclipse. Esto se ha hecho con el fin de permitirles a los desarrolladores disear aplicaciones tomando ventaja de todas las caractersticas que los dispositivos pueden ofrecer [Kumar 2008].

2.6

Tecnologa sensorial en Smartphones

Actualmente la tecnologa celular ha evolucionado hasta el punto en que puede incluir dispositivos que permitan reconocer actividades del entorno fsico, tal como la cmara, micrfonos, acelermetros, GPS, etc. Para poder procesar esta informacin es necesario contar con sensores que permitan captar las seales fsicas para su transformacin en datos electrnicos. Un sensor cuenta con los componentes bsicos que se muestran en la figura 2.5, una unidad de deteccin (Sensing unit), unidad de procesamiento (Processing unit), unidad transceptora (Transceiver) y una unidad de energa (Power unit), pueden tener Componentes adicionales dependientes de alguna aplicacin, tales como un sistema de localizacin (Location finding system), generador de energa (Power generator) o un movilizador (Mobilizer).

Figura 2.5 Principales componentes de los sensores [Akyildiz 2002]

Las unidades de deteccin estn compuestas de dos sub-unidades: sensor y convertidores analgicos a digitales (Analogic-to-Digital Converters, ADC), el sensor produce las seales analgicas de acuerdo a los datos recibidos del
26

Captulo 2. Marco Terico

entorno, estas seales analgicas son convertidas a digitales por el ADC y entonces se envan a la unidad de procesamiento. La unidad de procesamiento, que est generalmente asociada con una pequea unidad de almacenamiento, procesa la informacin que recibe para convertir los datos recibidos en informacin, el transceptor es aquel que se encarga de enviar y recibir informacin de otros sensores o dispositivos, para que estos puedan interactuar con el sensor, uno de los componentes ms importantes de un sensor es la unidad de energa, ya que sta provee al sensor la energa para su funcionamiento [Akyildiz 2002]. En este proyecto se utilizarn sensores que puedan determinar la orientacin del dispositivo, para ello pueden emplearse sensores del tipo magnetmetro, giroscopio y acelermetros de tres ejes. Magnetmetro. En general, un magnetmetro es el tipo de sensor que permite medir la intensidad y direccin de alguna seal magntica, en algunos celulares, este tipo de sensor nos permite detectar la direccin de la seal magntica de la tierra y determinar la orientacin del telfono celular con respecto a los puntos cardinales, lo que a veces puede funcionar como una brjula digital [Kim 1989]. Giroscopio. Un sensor de tipo giroscopio registra los movimientos entre los tres ejes (eje longitudinal, eje vertical y eje transversal de acuerdo a las tres dimensiones del entorno real), de tal manera que podemos detectar la orientacin y la inclinacin del dispositivo, en la figura 2.6 puede apreciarse un ejemplo de un giroscopio digital, se considera el punto central del dispositivo como el punto de gravedad del giroscopio, y de acuerdo a este punto el sensor tomar los valores de su eje vertical (yaw), eje longitudinal (roll) y eje transversal (pitch), dependiendo de la inclinacin en la que se encuentre el sensor [Jones 2010].

Figura 2.6 diagrama de un giroscopio digital [Jones 2010]

Acelermetro. Un sensor del tipo acelermetro se encarga de medir las aceleraciones y vibraciones, los acelermetros son direccionales, esto quiere decir que los acelermetros pueden medir la aceleracin en un solo eje, sin embargo se han podido desarrollar acelermetros capaces de leer en mltiples ejes, los cuales nos permiten medir la aceleracin en tres dimensiones. A diferencia del giroscopio que se encarga de obtener el posicionamiento del
27

Captulo 2. Marco Terico

dispositivo con respecto a sus ejes, el acelermetro permitir obtener la velocidad en la que el dispositivo se mueve o cambia de posicin en los tres ejes mencionados anteriormente [Jones 2010].

28

Captulo 3. Estado del Arte

Captulo 3. Estado del Arte


En esta seccin se analizaran los trabajos que tienen objetivos similares a los del proyecto en desarrollo, evaluando cada una de las propuestas de solucin de estos mismos.

29

Captulo 3. Estado del Arte

3.1

Sistemas

En esta seccin se describirn los trabajos que desarrollaron sistemas capaces de insertar objetos virtuales en el entorno, cada uno de ellos fue diseado para cierto tipo de entornos con necesidades muy particulares de los mismos.

3.1.1 A Tracking Framework for Augmented Reality Tours on Cultural Heritage Sites [Park 2010]
El departamento de ingeniera en electrnica y computacin de la universidad Hanyang en Corea, desarroll una aplicacin de realidad aumentada para el palacio Gyeongbokgung, el cual es un museo de patrimonio cultural ubicado en Corea. El objetivo de este proyecto era elaborar una insercin de informacin virtual en las exhibiciones del museo mediante realidad aumentada, sin embargo, una de las principales restricciones que tiene este museo de patrimonio cultural es que no se pueden agregar marcadores al entorno para facilitar el reconocimiento de objetos. En este trabajo se menciona que existen distintos tipos de mtodos para la identificacin de objetos en sistemas de realidad aumentada, tales como el reconocimiento mediante el uso de marcadores, sin marcadores (reconocimiento de formas, figuras o patrones) o bien, utilizando tecnologas sensoriales, tales como la radio frecuencia, sensores del dispositivo, etc. Debido a la naturaleza del museo, fue imposible para este proyecto emplear la identificacin de los objetos a travs de marcadores, por lo cual, propone un mtodo hibrido, entre tcnicas de identificacin visual y reconocimiento sensorial, para la asociacin de objetos virtuales con los objetos reales. Para ello se dise un algoritmo como se muestra en la figura 3.1.

Figura 3.1 algoritmo de estimacin de poses [Park 2010]

30

Captulo 3. Estado del Arte

Este algoritmo funciona con tres tipos de identificacin, la identificacin sensorial TF1, la identificacin visual (TF2 y TF3) y la identificacin mediante la combinacin de estas dos tcnicas (TF4). Para elaborar el reconocimiento sensorial TF1, se utilizan sensores de posicionamiento, tales como el GPS, acelermetro y giroscopio, los cuales permiten estimar la localizacin, orientacin y velocidad con la que se mueve un usuario en el entorno. En el reconocimiento mediante visualizacin ( TF2 y TF3) tambin estima el posicionamiento del usuario de acuerdo a las imgenes capturadas con la cmara del dispositivo, eso se hace mediante el reconocimiento de figuras, tales como bordes, esquinas o caractersticas que son detectadas en las imgenes capturadas. En TF2 el posicionamiento es estimado utilizando el reconocimiento de las figuras de manera directa, siempre que las caractersticas de la escena detectada sean conocidas, por ejemplo una serie de segmentos rectangulares que dominen la escena pudieran describir la forma especfica de un cuarto en el entorno, o bien, alguna figura especifica podra describir un objeto en particular. En TF3, la informacin referente a la escena capturada est predefinida en una base de datos, el posicionamiento es definido cuando las figuras detectadas en la escena coinciden con las que se encuentran almacenadas en la base de datos, la cual puede contener referencia de imgenes o el conjunto de ellas as como sus trasformaciones, tales como la rotacin o la escala. Finalmente se emplea un reconocimiento hibrido ( TF4) que combina las tcnicas basadas en visin y las mediciones obtenidas mediante la localizacin sensorial, de manera que la localizacin sensorial puede proveer informacin acerca de una regin de inters (Region Of Interest, ROI), una vez identificada la regin de inters en la que se encuentra el usuario, es posible ajustar los objetos virtuales al entorno real mediante una identificacin visual de aspectos clave del ambiente. Como ya se mencion anteriormente, este algoritmo se aplic al palacio Gyeongbokgung, tomando los algunos aspectos principales de acuerdo a las posibles formas de los cuartos y a la localizacin del usuario con el entorno, en la figura 3.2 pueden apreciarse algunos ejemplos de la insercin de los objetos virtuales en algunas de las salas del palacio. En algunas de las salas, como la que se muestra en la figura 3.2.a, se pudo insertar el objeto virtual debido a la forma de los objetos que se encontraban en el cuarto (cuatro pilares y un recuadro en la parte superior), mientras que en otras salas, como en la figura 3.2.b y 3.2.c, es necesario localizar primero al usuario y despus reconocer algn patrn establecido, tal como se explic en el algoritmo de reconocimiento hibrido.

31

Captulo 3. Estado del Arte

Figura 3.2. Tcnicas de realidad aumentada implementadas en el palacio de Gyeongbokgung [Park 2010]

3.1.2 An Augmented Reality Presentation System for Remote Cultural Heritage Sites [Zllner 2009]
En este proyecto se implement un sistema que mostraba informacin y objetos virtuales en las exhibiciones de un museo de arqueologa y patrimonio cultural, el usuario poda observar videos, imgenes, texto informativo y modelos en 3D de lugares histricos a partir del reconocimiento de una imagen del entorno. Para mostrar la informacin virtual se elabor un reconocimiento visual de los murales o pinturas que se encontraban en el entorno. En ciertos lugares de los museos se instalaron dispositivos como el que se muestra en la figura 3.3, los cuales nicamente tenan 180 grados de libertad, cuando el usuario enfocaba alguno de los murales era posible insertar los objetos virtuales.

32

Captulo 3. Estado del Arte


Figura 3.3 dispositivo esttico para la visualizacin de informacin contextual en murales [Zllner 2009]

Adems, el usuario tambin poda visualizar los objetos virtuales en dispositivos mviles, como se muestra en la figura 3.4, en este tipo de reconocimiento, el usuario poda acercarse a una pintura que estuviera paralela al suelo, el dispositivo mostraba un objeto virtual fsico, el cual se quedaba de manera esttica sobre la pintura, permitindole al usuario moverse alrededor de ella para visualizar este objeto en distintas perspectivas. Este sistema fue implementado en tres museos de patrimonio cultural, adaptando los objetos virtuales para las exhibiciones y utilizando las mismas tcnicas de reconocimiento de objetos.

Figura 3.4 insercin de objetos virtuales en los dispositivos mviles [Zllner 2009]

3.1.3 Location-based augmented reality on mobile phones [Turk 2010]


El laboratorio Four Eyes de la universidad de california implement un sistema de realidad aumentada capaz de elaborar un reconocimiento visual y sensorial por orientacin de los objetos del entorno. Este proyecto propone un enfoque en el que se aprovechan los servicios de localizacin y estimacin de posicionamiento para desarrollar aplicaciones de realidad aumentada, a su vez, integran tcnicas de reconocimiento visual de objetos para lograr una mayor precisin para insertar objetos virtuales. Los desarrolladores del proyecto proponen el modelo que aparece en la figura 3.5, la nube azul representa el entorno, en el cual pueden existir diversos puntos de inters y varias localizaciones en donde puede estar el usuario (representadas por los puntos verdes), cada una de estas localizaciones define dos movimientos; uno de rotacin, en donde el usuario puede girar con el dispositivo visualizando el entorno a su alrededor, y otro de traslacin, en donde el usuario cambia de una localizacin a otra. Cada una de estas localizaciones contiene un campo de visin, el cual puede variar dependiendo la rotacin del usuario, en este campo de visin pueden encontrarse distintos puntos de inters (representados por los cubos amarillos), de tal forma que cuando un usuario se encuentre en una localizacin y oriente el campo de

33

Captulo 3. Estado del Arte

visin a un punto de inters, el sistema deber mostrarle informacin de ese punto mediante realidad aumentada.

Figura 3.5 Modelo de reconocimiento mediante localizacin y orientacin propuesto en el proyecto [Turk 2010]

Para el reconocimiento mediante la orientacin, se emplearon el magnetmetro y acelermetros de tres ejes, adems de recibir las seales del norte magntico y la orientacin del dispositivo, estos sensores tambin captan seales de elctricas de objetos cercanos y las aceleraciones que se ejercen sobre el dispositivo, por ejemplo la gravedad o el movimiento del usuario, por lo que estas medidas pueden variar y afectar la precisin de los objetos virtuales. Uno de los problemas que se expone en este mtodo es que la precisin en la insercin de los objetos virtuales suele ser afectada por las mediciones de los sensores y la precisin del servicio de localizacin, es por ello que se implementaron tcnicas de visualizacin que permitieran insertar los objetos virtuales de manera precisa, en la figura 3.6 puede apreciarse que con el mtodo de reconocimiento por orientacin (figura de la izquierda) no se obtiene una gran precisin en la relacin de los objetos virtuales con los reales, al implementar las tcnicas visuales, se logr una correspondencia como se muestra en la figura de la derecha.

Figura 3.6 aumentacin mediante el reconocimiento por orientacin y a juste mediante tcnicas de reconocimiento visual

34

Captulo 3. Estado del Arte

3.1.4 An Augmented Reality Interface to Contextual Information [Ajanki 2011]


En este proyecto se implement un sistema de informacin contextual en una institucin de educacin superior, capaz de proporcionar informacin del entorno dependiendo a la forma en que el usuario interactuaba con ella. Para poder retribuirle informacin al usuario utilizo un algoritmo como el que aparece en la figura 3.7, primero el sistema infiere la relevancia de la informacin de acuerdo al contexto, como el lugar y horario, y de acuerdo al lugar en que se encuentra el usuario, sta informacin se proyecta mediante realidad aumentada en un dispositivo HDM (Head Mounted Display), finalmente se evala la interaccin que tiene el usuario con esta informacin de acuerdo con su interaccin con esta, sta interaccin le permite al sistema volver a inferir la relevancia de informacin extra del elemento del entorno que el usuario est visualizando.

Figura 3.7 algoritmo para la retribucin de informacin en el sistema [Ajanki 2011]

En este sistema se podan insertar las anotaciones virtuales como se muestra en la figura 3.8, como puede observarse, en este proyecto se elaboraba un reconocimiento facial a las personas que pudieran conocer temas de inters para el usuario, mientras que los puntos de inters, como lugares del entorno, eran reconocidos mediante marcadores visuales. Adems de utilizar estas tcnicas de identificacin, el sistema poda elaborar un reconocimiento de voz, de esta forma el usuario podra proporcionar informacin extra del contexto.

35

Captulo 3. Estado del Arte

Figura 3.8 reconocimiento de objetos e insercin de informacin en el entorno [Ajanki 2011]

3.1.5 Personalized In-store E-Commerce with the PromoPad: an Augmented Reality Shopping Assistant [Zhu 2008]
En este proyecto se implement un sistema en un centro comercial, el cual les proporcionaba recomendaciones personalizadas a los clientes del almacn. De tal forma que cuando un usuario se encontraba cerca de algn producto que pudiera ser de inters para l, se le mostraba un acercamiento del producto, como se muestra en la figura 3.9, donde adems se le mostraba informacin del producto y algunas recomendaciones de otros productos similares o complementarios.

Figura 3.9 acercamiento a un producto de posible inters para el cliente

Para poder obtener la informacin del usuario, se les reparta una tarjeta a los clientes frecuentes, de esta forma se poda comprobar que el cliente estaba utilizando el sistema, con esta tarjeta era posible identificar al usuario y tener un registro de las compras que haba elaborado anteriormente, permitiendo elaborar un perfil de l para recomendarle productos que pudieran serle de inters. En este sistema se implement un servicio de localizacin mediante marcadores visuales, de tal forma que nicamente se podra identificar la localizacin del usuario cuando ste se encontrara cerca de un producto contextualizado.

36

Captulo 3. Estado del Arte

3.2

Herramientas

En esta seccin se describirn algunas herramientas que pretenden facilitar la implementacin de aplicaciones, con tecnologas de realidad aumentada en interiores, estas aplicaciones se disearon para poder integrar sus funcionalidades a diversos entornos.

3.2.1

Look!: Framework para Aplicaciones Aumentada en Android [Belln 2011]

de

Realidad

sta herramienta fue desarrollada en la Universidad Complutense de Madrid dentro de la facultad de informtica, en este proyecto se pretenda desarrollar una herramienta capaz facilitar la implementacin de sistemas de realidad aumentada, para ello se implementaron varios algoritmos para gestionar el reconocimiento de objetos mediante los sensores de orientacin e integraron un sistema de localizacin mediante tecnologas Wi-Fi. Adems de integrar diversos mtodos para la manipulacin de los sensores de los dispositivos, para el reconocimiento por orientacin, se integraron otras funcionalidades y servicios, con el objetivo de abarcar la mayora de las necesidades que se presentan en la implementacin de sistemas de realidad aumentada, dichos aspectos son los siguientes: Localizacin en interiores: Como ya se menciono anteriormente, este proyecto integra un algoritmo de localizacin en interiores por tecnologa Wi-Fi conocido como Closest Neighbor, en el cual se establecen determinadas localizaciones en el entorno de acuerdo a la frecuencia recibida por la seal Wi-Fi, el sistema determina la localizacin del usuario mediante la cercana de los puntos de localizacin definidos anteriormente. Representacin grfica: En este punto, el Framework permite la representacin grfica de elementos tanto en dos dimensiones como tres dimensiones, nicamente proporcionndole al sistema la informacin suficiente de los objetos que sern dibujados. Interaccin con los objetos virtuales: El Framework integra un sistema de interaccin tctil con los objetos virtuales, de tal forma que el programador debe preocuparse por el efecto producido en dicha interaccin. Acceso a Servicios Remotos: Adicionalmente ste Framework pretende facilitar el acceso a servicios externos, tales como bases de datos alojadas en servidores remotos.

3.2.2

CAMAR Tag Framework: Context-Aware Mobile Augmented Reality Tag Framework for Dual-reality Linkage [Woo 2009]

En este proyecto se propuso un Framework basado en realidad aumentada para dispositivos mviles consciente del contexto (Context-Aware Mobile
37

Captulo 3. Estado del Arte

Augmented Reality, CAMAR), con el cual, el usuario podra agregar anotaciones virtuales en un entorno determinado. Para el funcionamiento de este Framework, el usuario debe capturar imgenes del entorno en distintas perspectivas, esto es debido a que sta herramienta emplea un reconocimiento visual, por ello es necesario extraer primero los puntos clave de los objetos del entorno para generar modelos que permitan su reconocimiento posteriormente, estos modelos pueden ser almacenados en un servidor de la red interna del sistema. Con los modelos capturados anteriormente, el sistema generar un entorno virtual como aparece en la figura 3.10, con ayuda del entorno virtual, el usuario podr generar anotaciones, insertar o eliminar objetos en el entorno, de esta forma, cuando el sistema reconozca un objeto, a partir de los modelos generados anteriormente, se podr insertar informacin virtual del entorno diseada por el usuario.

Figura 3.10 generacin del mundo virtual a partir del entorno real en el proyecto [Woo 2009]

3.2.3 Unified Context-aware Augmented Reality Application Framework for User-Driven Tour Guides [Woo 2010]
Este trabajo desarroll un Framework orientado a la implementacin de aplicaciones de realidad aumentada, para mostrar informacin contextual en museos, permitindole al usuario contribuir en el enriquecimiento de informacin de las exhibiciones. Este proyecto extiende las funcionalidades del proyecto CAMAR descrito en [Woo 2009], por lo que tambin genera un entorno virtual a partir de imgenes capturadas de los objetos que se desean contextualizar, sin embargo, en este Framework se implementaron funciones de localizacin y reconocimiento sensorial para facilitar el almacenamiento de modelos. El sistema utilizaba un servicio de localizacin mediante marcadores visuales, adems obtena la informacin de la rotacin del dispositivo para facilitar el reconocimiento de los objetos en tercera dimensin. Una vez obtenida la ubicacin y orientacin del dispositivo, el entorno virtual poda ser generado, de la misma forma que el Framework CAMAR. De esta forma el usuario poda agregar anotaciones virtuales en las exhibiciones, las cuales se almacenaran en el entorno virtual para su posterior proyeccin.

38

Captulo 3. Estado del Arte

3.3 Anlisis del estado del arte


Una vez presentados los trabajos similares al proyecto que se encuentra en desarrollo, se procede a comparar las caractersticas de cada uno de ellos y las del trabajo que se realiz. De acuerdo con [Swan 2010], los sistemas de realidad aumentada deben considerarse caractersticas del entorno, el registro de la informacin del entorno (captura), el diseo y precisin de la insercin de objetos virtuales (aumentacin), los aspectos del dispositivo y los requerimientos de interaccin con el usuario, al considerar estas caractersticas se solucionan muchos de los problemas que se suscitan en la implementacin de estas aplicaciones. Para evaluar los aspectos de estos sistemas, se evaluarn las caractersticas mencionadas anteriormente de la siguiente forma: Entorno: en este punto se considerar el entorno donde se implement o para el que fue diseada la aplicacin, tambin se especifica si el entorno cuenta con servicios de localizacin o si requiri de alguna infraestructura especial para la implementacin del sistema. Captura: se abordarn las tcnicas que se emplearon para el reconocimiento de los elementos del entorno. Aumentacin: se considerarn los objetos virtuales insertados por cada uno de los trabajos para representar informacin en el entorno, en este caso no se evaluar la precisin en la correspondencia de la informacin con los objetos virtuales, debido a que cada una de estas aplicaciones es precisa para sus requerimientos particulares. Dispositivo: se referir al tipo de dispositivo en el que se implement el sistema o bien la tecnologa del hardware que utiliza. Usuario: en este aspecto se describir la interaccin entre el usuario y el sistema que se dise en el sistema.

Una vez establecidos estos aspectos, se procede a evaluar cmo se comportan los sistemas ante cada uno de ellos, para ello se elabor la siguiente tabla:

39

Captulo 3. Estado del Arte


Entorno [Park 2010] Museo de patrimonio cultural, suele utilizar el GPS para la localizacin Captura Aumentacin Dispositivo Cmara GPS Acelermetro Giroscopio Magnetmetro Cmara Acelermetro Giroscopio Usuario insercin de objetos virtuales para representar informacin de las exhibiciones

Reconocimiento Insercin personas y visual y por objetos virtuales en los orientacin objetos contextualizados del entorno Reconocimiento insercin de lugares visual de virtuales, cuadros con pinturas en el mensajes de texto entorno Identificacin sensorial por orientacin y reconocimiento visual de objetos en 3D reconocimiento facial, marcadores visuales, reconocimiento de voz reconocimiento visual de los productos Remarca la figura de los objetos detectados

[Zllner 2009]

museos de arqueologa y patrimonio cultural

El usuario poda obtener informacin y visualizar lugares virtuales desde distintas perspectivas Permiti desarrollar una metodologa para insertar objetos de manera precisa

[Turk 2010]

institucin de educacin superior

Cmara Acelermetro Giroscopio Magnetmetro

[Ajanki 2011]

institucin de educacin superior

Recuadros transparentes con texto informativo

Cmara Micrfono

Proporcionaba al usuario informacin del entorno a partir su interaccin y el contexto en que se encuentre Se tiene un registro del historial del usuario para elaborar las recomendaciones de los productos

[Zhu 2008]

Centro comercial, se implement localizacin por marcadores visuales

elabora un acercamiento del producto y muestra informacin y recomendaciones de otros productos similares

Cmara

[Belln 2011]

Considera la implementacin en cualquier entorno, incluye servicios de localizacin Wi-Fi diseado para cualquier entorno en interiores

Reconocimiento capaz de insertar sensorial por objetos en 2D y 3D orientacin de los objetos

Magnetmetro Acelermetro Giroscopio

permite insertar objetos virtuales especificando la orientacin de estos

[Woo 2009]

Reconocimiento Genera un entorno visual de los virtual con anotaciones objetos de acuerdo a los modelos de reconocimiento de objetos Reconocimiento se basa en el visual de Framework de [Woo objetos 2009], integra el reconocimiento por localizacin y orientacin del dispositivo Reconocimiento Insertar iconos por orientacin representativos e informacin de los objetos

Cmara

Permite insertar objetos en 2D y 3D sobre los objetos del entorno

[Woo 2010]

Orientado para museos, implementa un servicio de localizacin por marcadores visuales

Acelermetro Giroscopio Cmara

Le permite insertar a los usuarios anotaciones sobre las exhibiciones del museo

Proyecto desarrollado

institucin de educacin superior

Magnetmetro Acelermetro Giroscopio

proporciona recomendaciones del entorno de acuerdo al contexto y al perfil del usuario

Como pudo verse, muchos de estos trabajos emplean algoritmos hbridos para la identificacin de objetos, con el objetivo de elaborar un reconocimiento ms robusto de los elementos del entorno, adems, todos los trabajos analizados implementan su aplicacin en dispositivos mviles de algn tipo, lo que indica que los sensores de este tipo de dispositivos puede gestionar mucha de la informacin del entorno.
40

Captulo 3. Estado del Arte

Sin embargo, a pesar de en muchos de los trabajos de este tipo intentan lograr una gran precisin en el entorno de investigacin, esto conlleva a ciertas desventajas, estos sistemas pueden ser implementados nicamente en el entorno donde fueron diseados, esto es debido a que los patrones de los modelos en tercera dimensin o bien los marcadores visuales nicamente estn diseados exclusivamente para el entorno de implementacin, en caso de que se quisieran migrar a otro tipo de organizacin, necesitaran redisear sus modelos de reconocimiento o posiblemente algunos de sus algoritmos implementados, en cambio, la aplicacin desarrollada, es capaz de utilizarse en distintos tipos de organizaciones, debido a que el algoritmo para la identificacin de puntos de inters es ms simple y puede adaptarse fcilmente a cualquier entorno, nicamente realizando una extraccin de las ubicaciones del usuario, los puntos de inters y la orientacin de estos mismos. Adems de ello, los patrones visuales nicamente son reconocidos cuando el dispositivo es capaz de ver todos los puntos y figuras claves para la identificacin de los objetos en el entorno, en este proyecto se utilizaron tcnicas sensoriales para la identificacin de estos objetos, de esta manera, no es necesario que el usuario est visualizando un objeto para que le pueda mostrar informacin detallada, incluso puede mostrar informacin de objetos en otras habitaciones o que estn obstruidos por otros objetos, como paredes, trnsito de personas, etc.

41

Captulo 4. Diseo de la aplicacin

Captulo 4. Diseo de la aplicacin


De acuerdo al anlisis elaborado anteriormente de las tcnicas que se utilizan en los sistemas de realidad aumentada, se disearon soluciones para que la aplicacin pudiera cubrir con los requerimientos establecidos, en este captulo se presenta el diseo de las principales caractersticas de la aplicacin, as como la solucin que se implement para poder identificar puntos de inters en el entorno.

42

Captulo 4. Diseo de la aplicacin

4.1

Arquitectura general del sistema

Como se ha hablado anteriormente, este proyecto formar parte de un sistema de recomendacin contextual, actualmente orientado a instituciones de educacin superior, con el cual se podr mostrrsele al usuario informacin personalizada del entorno en que se encuentra. Para ello se han desarrollado diferentes aplicaciones en proyectos anteriores, el sistema global abarcar la integracin de stos para presentar las recomendaciones personalizadas, en la figura 4.1 puede observarse la arquitectura general del sistema.

Figura 4.1 arquitectura general del nuevo sistema T -Gua

En la figura 4.1 puede observarse que el sistema se conforma con 4 aplicaciones, las cuales se describen a continuacin: Semantic T-Guide: esta aplicacin fue desarrollada en [Gonzlez 2012], permite generar recomendaciones a partir del perfil del usuario, la hora y el lugar a donde llega de la organizacin y la informacin almacenada en la red de ontologas, de esta forma se genera un archivo de recomendaciones que son presentadas al usuario. Ont2SVG: este proyecto se desarroll en [Estrada 2012], en el cual se generaban mapas en formato SVG a partir de la informacin de la infraestructura de la organizacin almacenada en la ontologa, de esta forma el usuario poda seleccionar una ubicacin en el mapa para obtener ms informacin de lo que se encuentra ah. Servicio de ubicacin: en [Yris 2012] se desarroll un servicio de ubicacin mediante el diseo de algoritmos con tecnologas Wi-Fi y RFID, con este servicio se puede conocer la ubicacin del usuario con respecto a la organizacin. YLEYANA: esta aplicacin se desarroll en el presente proyecto de tesis, aprovecha la ubicacin del usuario y las recomendaciones generadas para proyectar la informacin mediante realidad aumentada.

43

Captulo 4. Diseo de la aplicacin

Como puede observarse, el sistema que se desarrollar al final, implementa servicios de recomendacin contextual, servicios de ubicacin, interfaces utilizando mapas en formato SVG e interfaces utilizando realidad aumentada. La aplicacin YLEYANA funcionara como se muestra en la figura 4.2, una vez que se hayan integrado todas las funcionalidades al sistema. Como puede observarse, la aplicacin Semantic T-Guide generara un archivo de recomendaciones en formato XML que sern enviados a la aplicacin YLEYANA, estos archivos contendrn toda la informacin que ser mostrada mediante realidad aumentada, por otro lado, el servicio de ubicacin recibir el lugar en donde se encuentra el usuario con respecto a la organizacin, utilizando tecnologas Wi-Fi, esta ubicacin ser recibida por la aplicacin YLEYANA para determinar qu informacin del archivo XML se mostrar mediante realidad aumentada, de acuerdo a la ubicacin del usuario.

Figura 4.2 Funcionamiento de la aplicacin YLEYANA en el sistema

Como puede observarse, la aplicacin YLEYANA presentar la informacin de la organizacin mediante realidad aumentada, una vez que reciba la ubicacin y la informacin de las recomendaciones, para ello, la aplicacin YLEYANA se encargar de identificar los elementos de la organizacin en el entorno real, mediante alguna tcnica para la identificacin de puntos de inters, para poder asociarlos con algn objeto virtual y finalmente presentar la informacin mediante realidad aumentada.

4.2

Modelo de orientacin en el entorno

En el CENIDET pueden implementarse tcnicas de reconocimiento por orientacin y mediante el uso de marcadores visuales, sin embargo, la implementacin de marcadores visuales requiere que el marcador sea reconocido por el dispositivo, por lo que es necesario visualizarlo por completo y a una distancia ptima, adems el dispositivo nicamente muestra informacin al usuario cuando ste se encuentra visualizando un marcador. Por otro lado, el reconocimiento por orientacin no necesita identificacin visual de
44

Captulo 4. Diseo de la aplicacin

los puntos de inters (POI), por lo que tiene la ventaja de poder visualizar POIs que pueden estar ocultos visualmente por alguna pared u obstculo en el campo de visin. Para implementar un servicio de identificacin sensorial robusto, se requiere establecer primero hacia que orientaciones puede el usuario encontrar informacin de inters en cada una de las posibles ubicaciones del entorno. Muchos de los sistemas de navegacin convencionales, elaboran modelos para conocer hacia donde quedan determinadas rutas que el usuario puede seguir de acuerdo a su ubicacin, para esto algunos de estos sistemas utilizan modelos de navegacin basndose en las orientaciones de los ocho puntos cardinales (N, S, E O, NE, NO, SE y SO), es posible adaptar estos modelos a la aplicacin para que, en lugar de identificar posibles rutas de navegacin, identifique los POIs que le rodean al usuario. Los sistemas de navegacin como el que se describe en [Jrgen 2007], [Pombinho 2011] o [Worboys 2011] implementan modelos ocultos de Markov (MOM), los cuales pueden representar los estados en un sistema y las transiciones que pueden hacerse para llegar a los distintos estados. En el caso de los sistemas de navegacin, los modelos ocultos de Markov se caracterizan como se muestra en la figura 4.3, los estados representan distintas ubicaciones en el entorno y las transiciones representan la ruta que sigue un usuario para llegar a determinado estado.

Figura 4.3 segmentacin del entorno para la construccin de un MOM [Pombinho 2011]

Cada transicin contiene el valor de una orientacin, de tal forma que dependiendo la orientacin de la ruta que se tome se llegar al estado que se encuentre en esa direccin. Para simplificar la cantidad de orientaciones en un estado, el trabajo de [Worboys 2011] propone un modelo con ocho orientaciones para cada estado (ver figura 4.4), esto ayuda a representar las rutas de navegacin del usuario.

45

Captulo 4. Diseo de la aplicacin

Figura 4.4 modelo de navegacin de 8 orientaciones [Worboys 2011]

Con base en lo anterior, es posible adaptar el modelo de orientacin [Worboys 2011] para el reconocimiento de POIs, en este caso es necesario definir las orientaciones en las que puede encontrarse algn punto de inters (POI), para esto se diseo un modelo de ocho orientaciones, como se muestra en la figura 4.5, este modelo se defini con una variacin aproximada de 10 de acuerdo a los puntos cardinales, adems pueden implementarse orientaciones hacia arriba y abajo, contextualizando las plantas de los edificios, con lo que se define un modelo con 10 orientaciones.

Figura 4.5 modelo de ocho orientaciones para indicar los POIs del entorno

Una vez definido este modelo para cada uno de los estados en el MOM, es necesario definir el rea de cada uno de los estados del modelo, para esto se implement una aplicacin con ayuda del framework Look! [Belln 2011]. Esta aplicacin inserta un cubo 3D en la imagen de video en tiempo real relacionado con cada una de las orientaciones definidas en el modelo de orientacin (ver figura 4.6), esta aplicacin nos permiti ubicarnos en distintas reas del entorno y visualizar los POIs relacionados a la ubicacin actual, si uno de stos vara de acuerdo a la ubicacin en el entorno se definir una nueva rea en el entorno.

46

Captulo 4. Diseo de la aplicacin

Figura 4.6 ejemplo de la aplicacin del modelo de ocho grados de libertad

Para evaluar este modelo, se consider la planta baja del edificio de computacin en el campus Cerritus, una vez hecha la evaluacin, se segment el entorno, como se muestra en la figura 4.7, en esta segmentacin se definieron reas correspondiente a los estados del MOM.

Figura 4.7 definicin de las zonas de localizacin para los estados en el MOM

De acuerdo a lo anterior, podemos representar un autmata, como el de la figura 4.8, para representar el funcionamiento de este modelo en el entorno, en este autmata se consideran los estados E como zonas de localizacin en donde se encuentran POIs a su alrededor, el estado E puede asociar dos tipos de movimiento del usuario, de rotacin R y de traslacin T [Turk 2010]. Cuando el usuario orienta su dispositivo en una rotacin R, definida en base al modelo de ocho grados de libertad, podr visualizar informacin de un POIs; distintos estados pueden hacer referencia a un mismo POI desde diferentes rotaciones. El movimiento de traslacin T se realiza cuando un usuario cambia de
47

Captulo 4. Diseo de la aplicacin

localizacin, se considera que el sistema puede iniciar o terminar desde cualquier estado.

Figura 4.8 autmata del modelo de ori entacin propuesto para la visualizacin de POIs

Conforme a lo anterior, puede decirse que para que el usuario pueda visualizar los objetos virtuales, debe seguirse el siguiente proceso: Se identifica en cul de las ubicaciones de la organizacin se encuentra el usuario. De acuerdo a esta ubicacin, se determinan las orientaciones que pueden visualizarse. Una vez que se han identificado que orientaciones tiene disponible la ubicacin del usuario, se identifica hacia qu POIs apuntan cada una de las orientaciones. Finalmente se identifica la orientacin qu se encuentra visualizando el usuario para poder determinar de que POI ser la informacin que se le muestre.

Una de las ventajas que integra este modelo, es que le permite al sistema tener conocimiento sobre objetos que se encuentren fuera del campo de visin del dispositivo, por ejemplo, en la figura 4.9 se muestra una imagen en donde se identifican tres POIs de la clase aula, que no son visibles directamente por la perspectiva de la imagen, por lo que mediante ste modelo, podemos inferir que en esa orientacin hay tres aulas del entorno, por lo que es posible mostrar informacin de cada una de stas.

48

Captulo 4. Diseo de la aplicacin

Figura 4.9 manejo de los objetos fuera del campo de visin en el mode lo de orientacin

4.3

Diagrama de casos de uso

Para modelar las funcionalidades principales del sistema y la interaccin del usuario con el mismo, se elabor el diagrama de casos de uso que se muestra en la figura 4.10, describiendo cada uno de los casos de uso como se muestra a continuacin.

Figura 4.10 Diagrama de casos de uso del sistema

En las tablas que se muestran a continuacin se describen cada uno de los casos de uso definidos anteriormente, en donde se especifican los objetivos y la secuencia de pasos que involucra cada caso de uso, en las excepciones, se indica la secuencia normal completa y se modifican los pasos a seguir cuando pueda existir una excepcin en el sistema.
49

Captulo 4. Diseo de la aplicacin

50

Captulo 4. Diseo de la aplicacin

UC-1 Versin Autores Objetivos Asociados

Descripcin

Precondicin Secuencia normal

Post condicin Excepciones

Visualizar puntos de inters 1.0 Rodrigo Alejandro Morn Leal Desarrollar servicios que permita identificar los objetos, lugares, personas y edificios que se estn visualizando en el dispositivo, extrayendo la informacin contextual del modelo semntico organizacional. Desarrollar servicios que muestren informacin contextual en tiempo real de personas, lugares y objetos mediante tcnicas de realidad aumentada. Desarrollar un servicio que sea capaz de determinar la orientacin del dispositivo Smartphone mediante los sensores contextuales como el acelermetro, magnetmetro y giroscopio. Este caso de uso permitir que el usuario pueda visualizar la informacin de los objetos en el entorno de acuerdo a la orientacin del dispositivo La informacin de la ontologa debe ser descargada en el dispositivo, deber conocerse la ubicacin del usuario Accin P1. El sistema carga la informacin de la ontologa P2. El sistema recibe la informacin de la localizacin del usuario P3. El sistema determina la informacin que ser mostrada y la ubicacin de la misma de acuerdo a la localizacin del usuario P4. El usuario gira sobre su mismo eje para visualizar distintos puntos de inters P5. El sistema muestra los distintos puntos de inters de acuerdo a la orientacin del dispositivo El usuario podr visualizar informacin del dispositivo Accin S1.1. El sistema mostrar un mensaje de error en caso de que el archivo no pudiera leerse de manera correcta S2.1. El sistema carga la informacin de la ontologa S2.2. El sistema recibe la informacin de la localizacin del usuario

51

Captulo 4. Diseo de la aplicacin UC-2 Versin Autores Objetivos Asociados Descripcin Obtener localizacin del usuario 1.0 Rodrigo Alejandro Morn Leal Implementar servicios de localizacin en interiores capaces de determinar la localizacin en tiempo real de un dispositivo mvil. En este caso de uso se obtiene la localizacin del usuario para poder determinar que objetos se encuentran a su alrededor y la informacin que le ser mostrada Debe haberse implementado en el entorno un servicio de localizacin capaz de identificar la localizacin del usuario en el entorno. Accin P1. El sistema espera la informacin de la ubicacin del usuario P2. El servicio de localizacin por Wi-Fi proporciona la ubicacin del usuario de acuerdo a las reas funcionales registradas en la ontologa P3. El sistema identifica el rea enviada por el servicio de localizacin P4. El sistema determina la informacin que ser cargada de acuerdo al rea donde se encuentre el usuario Se contara con la informacin de la ubicacin del usuario en el entorno Accin S1.1 El sistema espera la informacin de la ubicacin del usuario S1.2 El servicio de localizacin no se encuentra disponible o tiene problemas para informar la ubicacin del usuario S1.3 El sistema indica que no se pudo obtener la ubicacin del usuario S2.1 El sistema espera la informacin de la ubicacin del usuario S2.2 El servicio de localizacin por Wi-Fi proporciona la ubicacin del usuario de acuerdo a las reas funcionales registradas en la ontologa S2.3 El sistema no reconoce la zona que proporciona el servicio de localizacin S2.4 El sistema indica que el rea donde se encuentra el usuario no se encuentra registrada o no se ha cargado dentro del dispositivo S2.5 El sistema indica que la informacin debe de actualizarse o contactar al administrador

Precondicin Secuencia normal

Post condicin Excepciones

52

Captulo 4. Diseo de la aplicacin UC-3 Versin Autores Objetivos Asociados Descripcin Precondicin Secuencia normal Obtener detalles 1.0 Rodrigo Alejandro Morn Leal Desarrollar servicios que muestren informacin contextual en tiempo real de personas, lugares y objetos mediante tcnicas de realidad aumentada En este caso de uso se mostrar la informacin detallada de alguno de los puntos de inters que haya seleccionado el usuario El usuario deber encontrarse visualizando los puntos de inters en el entorno Accin P1. El usuario selecciona un punto de inters del entorno mostrado a travs de objetos virtuales mediante realidad aumentada P2. El sistema identifica el objeto seleccionado por el usuario P3. El sistema recopila la informacin disponible del objeto y se la presenta al usuario El usuario obtendr ms informacin de un punto de inters en el entorno Accin S1.1 El usuario selecciona un punto de inters del entorno mostrado a travs de objetos virtuales mediante realidad aumentada S1.2 El sistema identifica el objeto seleccionado por el usuario S1.3 El sistema tiene problemas para proporcionar la informacin del objeto S1.4 El sistema indica al usuario que hubo un error al presentar la informacin y que es necesario que lo vuelva a intentar

Post condicin Excepciones

53

Captulo 4. Diseo de la aplicacin UC-4 Versin Autores Objetivos Asociados Descripcin Precondicin Secuencia normal Filtrar informacin 1.0 Rodrigo Alejandro Morn Leal Desarrollar servicios que muestren informacin contextual en tiempo real de personas, lugares y objetos mediante tcnicas de realidad aumentada Este caso de uso permitir al usuario seleccionar al usuario la informacin de cierto tipo de objetos que desea que se presente El usuario debe encontrarse visualizando puntos de inters en algn lugar del entorno Accin P1. El usuario selecciona los tipos de tems que desea que se muestren en la pantalla P2. El sistema identifica los tipos de tems seleccionados P3. El sistema vuelve a presentar la informacin del entorno de acuerdo a los tipos de tems seleccionados por el usuario El sistema mostrar nicamente la informacin de los tipos de objetos que haya seleccionado el usuario Accin S1.1 El usuario selecciona los tipos de tems que desea que se muestren en la pantalla S1.2 El sistema identifica los tipos de tems seleccionados S1.3 El sistema le indica al usuario que existieron problemas para presentar la informacin del entorno

Post condicin Excepciones

54

Captulo 4. Diseo de la aplicacin UC-5 Versin Autores Objetivos Asociados Actualizar informacin 1.0 Rodrigo Alejandro Morn Leal Desarrollar servicios para la extraccin de informacin contextual de una red de ontologas organizacionales, que contendrn la informacin del entorno en el que se desarrollar la aplicacin Desarrollar servicios que muestren informacin contextual en tiempo real de personas, lugares y objetos mediante tcnicas de realidad aumentada En este caso de uso el sistema descargar la versin ms reciente del archivo que contiene la informacin para el funcionamiento del sistema El archivo con la informacin del sistema debe encontrarse almacenado en algn repositorio en donde acceder el sistema Accin P1. El usuario selecciona la opcin para actualizar la informacin del sistema P2. El sistema descarga el archivo actual con la informacin de la ontologa P3. El sistema se reinicia con la informacin del archivo descargado El sistema contar con la informacin actualizada de todos los puntos de inters, orientaciones y ubicaciones en el entorno Accin S1.1 El usuario selecciona la opcin para actualizar la informacin del sistema S1.2 El sistema no puede descargar el archivo con la informacin de la ontologa S1.3 El sistema indica al usuario que el archivo no pudo descargarse por una falla en la conexin de red

Descripcin Precondicin Secuencia normal

Post condicin Excepciones

55

Captulo 4. Diseo de la aplicacin UC-6 Versin Autores Objetivos Asociados Descripcin Generar archivo de informacin 1.0 Rodrigo Alejandro Morn Leal Desarrollar servicios para la extraccin de informacin contextual de una red de ontologas organizacionales, que contendrn la informacin del entorno en el que se desarrollar la aplicacin. Este caso de uso permite al administrador del sistema generar el archivo que contendr toda la informacin necesaria para el funcionamiento del sistema, extrayendo esta informacin de la red de ontologas de la organizacin. Debe encontrarse instanciada la informacin de los puntos de inters, las orientaciones, los objetos y las ubicaciones en la red de ontologas Accin P1. El administrador inicia la aplicacin para generar el archivo con la informacin de la red de ontologas P2. La aplicacin extrae la informacin de la red de ontologas P3. La aplicacin genera un archivo y lo almacena en el repositorio del sistema Se generar un archivo con la ltima informacin registrada en la red de ontologas para el funcionamiento del sistema Accin S1.1 El administrador inicia la aplicacin para generar el archivo con la informacin de la red de ontologas S1.2 La aplicacin no puede extraer la informacin de la ontologa S1.3 La aplicacin genera una excepcin indicando que ocurri un error en la extraccin de la informacin de la ontologa S2.1 El administrador inicia la aplicacin para generar el archivo con la informacin de la red de ontologas S2.2 La aplicacin extrae la informacin de la red de ontologas S2.3 La aplicacin no puede generar el archivo S2.4 La aplicacin genera una excepcin indicando que el archivo con la informacin de la ontologa no pudo ser generado

Precondicin Secuencia normal

Post condicin Excepciones

56

Captulo 4. Diseo de la aplicacin

4.4 Diagramas de clases


Una vez que se han definido las funciones principales del sistema, se procede a disear los objetos principales del sistema, para ello se elabor un diagrama como se muestra en la figura 4.11.

Figura 4.11 Diagrama de clases del sistema

Nombre Descripcin

Atributos

Mtodos

Main Esta ser la clase principal del sistema, con ella se podrn insertar los objetos virtuales y ser la pantalla con la que el usuario podr interactuar con la informacin del sistema Nodos: este atributo contendr una lista de varios objetos del tipo Nodo, los cuales harn referencia a las localizaciones del usuario en el entorno pois: representar una lista con los puntos de inters hacia los que apuntan las orientaciones del modelo Orientaciones: ser una lista de todas las orientaciones que contienen los nodos Referencias: en este atributo se almacenar una lista con la informacin de todos los objetos que se encuentran en el entorno crearObjetosVirtuales: este mtodo permitir que la aplicacin cree los objetos virtuales en el entorno. leerArchivo: para obtener la informacin de la red ontologas es necesario extraerla de algn archivo almacenado en el dispositivo, este mtodo permitir extraer la informacin del archivo para almacenarla en la lista de Nodos, Pois, Orientaciones y referencias. leerLocalizacion: este mtodo permitir recibir la informacin del servicio de localizacin y procesarla para determinar en qu ubicacin se encuentra el usuario en el entonrno

57

Captulo 4. Diseo de la aplicacin Nombre Descripcin Nodo Cada localizacin del usuario en el entorno ser representado por un nodo o segmento de navegacin, dependiendo a la localizacin del usuario se seleccionar un nodo en especfico, cargando cada uno de los datos del nodo correspondiente Id: este atributo define el identificador de los nodos del entorno, estos nodos estarn registrados en la ontologa del sistema y se identificarn de la misma forma como se encuentran en la ontologa Nombre: describir el nombre que se le dio al nodo, esto permitira que el sistema pueda proporcionarle al usuario informacin de su ubicacin y que ste la pueda entender. ContainedIn: este atributo contendr el identificador del rea fsica a la que hace referencia el nodo Orientacin: este atributo ser una lista de objetos del tipo Orientacin, la cual almacenar todas las referencias a las orientaciones que contenga el nodo donde est localizado el usuario obtenerOrientacion(): este mtodo fue diseado para permitirle al sistema buscar una determinada orientacin dentro del objeto Nodo, de esta forma ser posible acceder a la informacin que sta contenga Orientacin Esta clase se refiere a las orientaciones que se encuentran disponibles de acuerdo a la ubicacin del entorno Id: contiene el identificador de la orientacin POI: esta lista contendr todos los puntos de inters definidos con la clase POI, estos puntos de inters sern los que se encuentren en la determinada orientacin obtenerPOI(): este mtodo permitir obtener la informacin de algn punto de inters que se encuentre dentro de la orientacin, como resultado arrojar un objeto de la clase POI POI Se refiere a los puntos de inters que se encuentran en el entorno, esta clase se referir a las zonas en donde se pueda encontrar informacin en el entorno Id: este atributo har referencia al identificador de los puntos de inters definido en la ontologa Referencias: al igual que los objetos anteriores, este atributo contendr una lista de objetos, sin embargo contendr la informacin de los objetos del entorno a los que el punto de inters hace referencia. obtenerReferencias(): este mtodo permitir que la clase POI pueda buscar la informacin de las referencias que se encuentran en el entorno, este mtodo permitir definir los objetos de tipo Referencia para mostrar su informacin posteriormente

Atributos

Mtodos

Nombre Descripcin Atributos

Mtodos

Nombre Descripcin

Atributos

Mtodos

58

Captulo 4. Diseo de la aplicacin Nombre Descripcin Referencia Esta clase se utilizar para describir la informacin de los objetos que aparecer en el entorno, esta clase podr heredar a otros objetos, aadindole atributos especficos para los distintos tipos de objetos, personas, lugares o eventos del entorno Id: ser el identificador del objeto, este identificador ser extrado de la red de ontologas. Tipo: se referir al tipo de objeto de la ontologa que representa, por ahora se ha definido que el sistema identificar personas, objetos fijos, lugares y eventos en el entorno. getTipo(): este mtodo permitir obtener el tipo de objeto al que pertenece la referencia, esto podra ayudar a crear nuevos objetos que contengan atributos especficos para cada uno de los objetos, lugares, personas y eventos del entorno.

Atributos

Mtodos

59

Captulo 5. Implementacin

Captulo 5. Implementacin
En este captulo se describe la etapa de implementacin del prototipo que cumple con las funcionalidades descritas en el captulo anterior, se describen las adecuaciones que se hicieron a la red de ontologas para gestionar la informacin del sistema, se describe el servicio de localizacin que se utiliz en el sistema y finalmente las funcionalidades implementadas.
60

Captulo 5. Implementacin

5.1 Modificaciones a la red de ontologas


Como se mencion anteriormente, en el laboratorio de sistemas distribuidos del CENIDET se dise e implement una red de ontologas que permite modelar varios elementos y dimensiones contextuales de una organizacin, esta ontologa se utiliz para desarrollar una plataforma de servicios de recomendacin sensibles al contexto en el proyecto de [Gonzlez 2012] y mapas en formato SVG desarrollados en el proyecto de [Estrada 2012] capaces de almacenar informacin del entorno. Para el desarrollo de este proyecto, es necesario que la red de ontologas pueda modelar los elementos necesarios para cumplir con las necesidades especificadas, para ello debe contener la informacin de los puntos de inters, orientaciones y las localizaciones del usuario. Actualmente, se cuenta con una ontologa desarrollada en [Estrada 2012] capaz de gestionar la informacin de la infraestructura de la organizacin, esta ontologa le permitira al sistema controlar la informacin de la ubicacin del usuario y de los diferentes puntos de inters en el entorno, sin embargo, esta ontologa no hace referencia a los puntos de inters ni a las orientaciones en las que se encuentran los POIs, por lo que fue necesario adaptar esta ontologa agregando nuevos elementos que permitan gestionar e instanciar esta informacin. Para este caso se analizaron dos ontologas, OntoNav descrita en [Christos 2005] y ONALIN descrita en [Dudas 2009], estas ontologas permiten gestionar informacin de puntos de inters e informacin de orientacin del usuario referente a su entorno, estas ontologas se disearon para gestionar informacin de sistemas de navegacin. Si se requiere implementar funcionalidades de un sistema de navegacin, como parte de los servicios de recomendacin, estas dos ontologas proporcionan soluciones a los problemas que se relacionan con la gestin de informacin en sistemas de navegacin, por lo que utilizar una de estas ontologas para extender el modelo propuesto por [Gonzlez 2011] podra soportar nuevas funcionalidades para la implementacin de sistemas de navegacin en el futuro. La ontologa ONALIN extiende la ontologa OntoNav, ambas contienen clases y relaciones orientadas a los sistemas de navegacin, sin embargo, ONALIN implementa adicionalmente el estndar ADA, que permite una descripcin ms detallada del entorno, por ejemplo, permite describir detalles del entorno adecuados para auxiliar a personas con alguna incapacidad, con lo cual, las funcionalidades del sistema tambin incluiran a usuarios con alguna discapacidad, por lo tanto se opt por implementar la ontologa ONALIN dentro de la red de ontologas organizacionales. Una vez integradas las clases y relaciones de la ontologa de infraestructura desarrolladas en [Estrada 2012] y las de la ontologa ONALIN de [Dudas 2009] en la red de ontologas, se muestran en la figura 5.1 las clases y las relaciones que le permitirn gestionar la informacin a la aplicacin.

61

Captulo 5. Implementacin

Figura 5.1 Unin de la ontologa de infraestructura y ONALIN

Para describir el proceso de gestin de informacin del sistema de recomendacin es necesario identificar cmo se instancia la informacin de las localizaciones de los puntos de inters y de las orientaciones del dispositivo, en la figura 5.2, se muestran las fases de este proceso de instanciacin.

Figura 5.2 Proceso de instanciacin de la informacin del sistema

Instanciacin de infraestructura. De acuerdo con la ontologa de infraestructura, la clase Space puede representar todos los espacios fsicos de alguna organizacin, debido a la relacin containedIn, cada uno de estos espacios puede encontrarse dentro de algn otro espacio mayor, por ejemplo, en la figura 5.3 se muestra la definicin de los espacios en una institucin de educacin superior, como puede verse dentro del espacio ms grande denominado campus se encuentran los edificios, los cuales contienen distintos
62

Captulo 5. Implementacin

pisos y a su vez estos contienen zonas (aulas, oficinas, laboratorios, etc.), finalmente se llega al espacio que se refiere a la celda de localizacin utilizada en el algoritmo diseado en [Yris 2012]. Como puede apreciarse, la clase Space y la relacin containedIn permiten modelar todos los espacios dentro de una organizacin de manera jerrquica.

Figura 5.3 Modelo de representacin de las di stintas zonas del entorno [Estrada 2012]

Instanciacin de la informacin. En este paso, pueden instanciarse todos los objetos de la red de ontologas en paralelo con la infraestructura de la informacin, esta informacin contendr la descripcin de los objetos de conocimiento, personas, eventos, servicios, etc. Esta informacin ser la que referenciarn los puntos de inters. Instanciacin de segmentos de navegacin. Los segmentos de navegacin hacen referencia a las localizaciones en las que se puede encontrar el usuario en el entorno, estas localizaciones son modeladas por la clase NetworkSegment de la ontologa ONALIN, estos segmentos de red pueden estar contenidos en un espacio definido en la ontologa de infraestructura, como puede verse en la figura 5.4, los puntos con la letra N representarn los lugares en los que el usuario puede encontrarse para obtener informacin del entorno mediante realidad aumentada.

63

Captulo 5. Implementacin

Figura 5.4 Representacin de los segmentos de navegacin en el entorno

Para registrar cada uno de estos segmentos de navegacin se defini el identificador EN, donde E representa el identificador del edificio y N representa el identificador del nodo. Instanciacin de POIs. Para referenciar la informacin descrita anteriormente, es necesario instanciar la clase POI de la ontologa ONALIN, esta clase permite indicar la existencia de puntos de inters en el entorno y permite relacionarlos con alguna orientacin de los segmentos de navegacin. En la figura 5.5, se muestran los puntos de inters (puntos con la letra P) que representan un lugar en el entorno donde se pueda encontrar posible informacin para el usuario.

Figura 5.5 integracin de los puntos de inters al entorno

Para controlar los puntos de inters en el entorno se defini un identificador de la forma EPOI, el cual identifica el edificio E y el punto de inters POI. Instanciacin de orientaciones. Una vez instanciados los nodos y los POIs es necesario relacionarlos entre s con la clase Orientation de la ontologa ONALIN, con la clase Networksegment se relacionan los nodos con las
64

Captulo 5. Implementacin

orientaciones mediante hasOrientation y finalmente la orientacin se relaciona con los POIs mediante la relacin hasPOI de la clase Orientation, en la figura 5.6 se puede observar que cada segmento de navegacin integra una o ms relaciones con algn punto de inters.

Figura 5.6 integracin de las orientaciones en el entorno

Para cada una de las orientaciones se utiliza un identificador definido de la siguiente manera: EN(NO|SU|ES|WE|NE|NW|SE|SW|UP|DN) En donde se emplea el mismo identificador del segmento de navegacin, E para identificar el edificio y N para identificar el segmento de navegacin, este identificador se complementa con diez identificadores de orientacin posibles de acuerdo a las ocho orientaciones de los puntos cardinales ( NO norte, SU Sur, ES este, WE oeste, NE noreste, NW noroeste, SE sureste y SW suroeste) y las 2 orientaciones hacia arriba UP o hacia abajo DN. Relacin de POIs con la informacin. Una vez que se instancian los elementos necesarios en la ontologa para describir el entorno, es necesario referenciar la informacin a los puntos de inters, para esto la clase POI puede utilizarse para hacer referencia cualquier elemento de la red de ontologas mediante la relacin reffersTO a owl:Thing, de esta forma los POIs pueden contener informacin de elemento de la organizacin.

5.2 Servicio de localizacin


Actualmente, el entorno de desarrollo no cuenta con la infraestructura necesaria para implementar los servicios de localizacin diseados en [Yris 2012], estos servicios permiten identificar automticamente la ubicacin del usuario dentro de su contexto para seleccionar los POIs que se encuentran a su alrededor. El servicio de localizacin automtico desarrollado por [Yris 2012], no se utiliz en este proyecto, en su lugar, se implement una funcin que le permita al usuario seleccionar manualmente la ubicacin en la que se encuentra, en la
65

Captulo 5. Implementacin

figura 5.7 puede apreciarse el botn dentro de la interfaz en donde el usuario puede seleccionar su ubicacin en el entorno.

Figura 5.7 Botn para la seleccin de la localizacin del usua rio

Una vez que el usuario presiona ese botn, le aparece una pantalla como la que se muestra en la figura 5.8, en esta figura se muestra una lista de ubicaciones, los valores de esta lista son determinados de acuerdo al archivo del sistema que tiene la informacin registrada en la ontologa organizacional.

Figura 5.8 Pantalla para la seleccin de la localizacin del usuario

Finalmente, una vez seleccionada la ubicacin del usuario, el sistema es capaz de identificar los POIs relacionados con esa ubicacin, como puede verse en la figura 5.9, la localizacin del usuario fue determinada y el sistema es capaz de mostrar los puntos de inters en el entorno.
66

Captulo 5. Implementacin

Figura 5.9 Visualizacin de puntos de inters en el entorno

5.3 Desarrollo de la aplicacin


Una vez que se han definido los servicios de localizacin y se han establecido los mtodos para gestionar la informacin del sistema, se describirn las funcionalidades del sistema. Para la etapa de implementacin fue necesario analizar la interaccin de los elementos descritos en la red de ontologas, el dispositivo y el entorno, en la figura 5.10, se muestra la representacin de cada uno de los elementos con respecto a la ontologa, al entorno y al dispositivo.

Figura 5.10 representacin de las clases de la ontologa en un entorno real

67

Captulo 5. Implementacin

Con relacin a la ontologa, en la figura 5.11, se presenta un ejemplo de instancias descritas en el modelo organizacional.

Figura 5.11 Ejemplo de i nstanciacin de las ontologas del sistema

De acuerdo a las figuras 5.10 y 5.11, se describe que el aula 1 representa un rea funcional del entorno, mientras que DCCN3 hace referencia a la ubicacin del usuario, es decir, el usuario est dentro del Aula 1, localizado en el segmento de navegacin identificado por DCCN3. Mientras el usuario se encuentre en nodo DCCN3 puede visualizar el entorno a su alrededor con su dispositivo mvil, cuando el usuario enfoque el campo de visin del dispositivo en la orientacin noreste, determinada por el sensor magnetmetro (representada por DCCN3NE) el modelo de orientacin definido en la ontologa encuentra que la orientacin es vlida y que hace referencia al punto de inters DCCPOI5, este punto de inters contiene la informacin de el Servidor de sistemas distribuidos (SD) y del portal RFID.

5.3.1 Lectura de la informacin de la Ontologa


Para poder formar los objetos virtuales y tambin para mostrar informacin del entorno, es necesario que la aplicacin acceda de alguna forma a la informacin de la ontologa, para lograr esto se plante que la aplicacin fuera capaz de descargar un archivo en formato JSON que contiene informacin de los POIs para asignarla a los objetos virtuales. La estructura principal de los archivos JSON se describe en la figura 5.12, en los archivos JSON primero se define el nombre del objeto entre comillas, enseguida se define el valor de este objeto, en este caso, se define un objeto llamado RecomendacionesAR el cual, tiene como valor otra estructura de objeto, dentro del cual existen tres objetos ms, Nodos, Orientaciones y POIs, los cuales tienen la estructura de un arreglo, cada uno contiene informacin para la proyeccin de objetos virtuales.

Figura 5.12 Estructura principal de un archivo JSON

68

Captulo 5. Implementacin

Cada arreglo contiene informacin de la estructura de los objetos, en el caso de los nodos, cada uno de sus elementos tiene una estructura como la que se muestra en la figura 5.13, esta estructura contiene el Id del nodo, su nombre y donde se encuentra contenido este nodo en el entorno, tambin contiene un arreglo que contiene la lista de todas las orientaciones que define este nodo.

Figura 5.13 Estructura de un objeto del tipo nodo

La estructura de cada una de las orientaciones se describe en la figura 5.14, como puede observarse, cada orientacin define un identificador y un arreglo que contiene los identificadores de todas las orientaciones que se encuentran en determinado nodo.

Figura 5.14 Estructura de un objeto de ori entacin

Finalmente, se encuentran los objetos del tipo POI (puntos de inters), los cuales, contienen un identificador y un arreglo que contiene informacin de cada uno de los objetos que se mostrarn mediante realidad aumentada, los cuales se definen como se muestra en la figura 5.15.

Figura 5.15 Estructura de un POI

Con estas estructuras la aplicacin puede obtener la informacin necesaria para formar los objetos virtuales, extrayendo todos los datos contenidos en los objetos del archivo JSON.
69

Captulo 5. Implementacin

5.3.2 Implementacin de los objetos virtuales


Como se describi en la seccin anterior, la ontologa es capaz modelar los aspectos del entorno organizacional y los dispositivos que utiliza el usuario, se describi el proceso de localizacin, sin embargo, no se ha explicado cmo se identifican las orientaciones. Para gestionar las orientaciones se emplea el Framework Look! Descrito en [Belln 2011], el cual, permite gestionar gran parte de las funcionalidades de los sensores de orientacin de un dispositivo. Para insertar los objetos virtuales en imgenes de video, capturadas en tiempo real, mediante un dispositivo tablet o Smartphone, se utiliza una variable denominada entorno de tipo World, esta variable controla todos los objetos que se insertan mediante las tcnicas de realidad aumentada. Los objetos virtuales que se van a crear para mostrar informacin de los POIs se generan a partir de una imagen del icono representativo del POI, asocindole una cadena de texto, para insertar la imagen se emplea el cdigo de la figura 5.16, en este cdigo se define una entidad mediante la clase EntityData, estas entidades hacen referencia a los datos de cada uno de los objetos virtuales y se agregan al entorno, estos datos se almacenan en una variable nueva del tipo WorldEntity en la cual se puede indicar que se insert un objeto imagen en segunda dimensin, la cual se agrega a la variable entorno.

Figura 5.16 Insercin de imgenes con la librer a Look!

Una vez que se han insertado las imgenes se procede a insertar el texto descriptivo, para ello se implement un proceso similar al anterior, como se muestra en la figura 5.17, primero se definen los datos de la entidad, esta vez se especifica que se inserta un texto en el objeto, para esto se obtiene el nombre que viene desde la ontologa y se coloca en el objeto.

Figura 5.17 Insercin de texto en el objeto virtual

70

Captulo 5. Implementacin

Una vez hechos estos ajustes, la informacin se despliega en la pantalla del dispositivo como se muestra en la figura 5.18.

Figura 5.18 Insercin de objetos virtuales en el entorno

Una vez que se integran los objetos virtuales en el entorno, el Framework Look! Permite interactar con estos objetos, de tal forma que cuando el usuario selecciona alguno de estos POIs directamente en la pantalla, se muestra informacin descriptiva de este objeto, en la figura 5.19 se muestra la pantalla que presenta informacin de un punto de inters del entorno.

Figura 5.19 Pantalla de informacin extra de los puntos de inters del entorno

71

Captulo 5. Implementacin

5.3.3 Funcionalidad de filtrado de informacin


En la pantalla del dispositivo pueden aparecer distintos objetos en una misma direccin, en esta pantalla el usuario puede seleccionar la informacin que quiere que se despliegue, en esta pantalla se integr una funcionalidad para el filtrado de informacin, de esta forma el usuario puede mostrar y ocultar ciertos tipos de objetos en la pantalla. Para integrar esta funcionalidad primero se declaran variables que controlan la visibilidad de los objetos, en la figura 5.20 pueden apreciarse estas variables, en este caso el sistema controla cuatro tipos de objetos (Personas, lugares, inventario y eventos), el valor de estas variables es true al inicio para mostrar todos los objetos y conforme elija el usuario estos objetos se irn ocultando.

Figura 5.20 variables que controlan la visibilidad de los objetos

Para ocultar o mostrar los objetos se utiliza el mtodo que se muestra en la figura 5.21, este mtodo recibe en un entero el nmero del elemento del arreglo anterior donde contiene el valor de visibilidad del objeto, tambin recibe el tipo de objetos que ser ocultado, con estas variables se puede buscar entre los objetos que se encuentran insertados en el entorno y cambiar la visibilidad de cada uno de los que correspondan con el tipo de objetos que ser ocultado.

Figura 5.21 Mtodo para el filtrado de informacin

La funcin anterior se implementa en los diferentes botones del men para que cada uno sea capaz de ocultar y mostrar distintos tipos de objetos, en la figura 5.22 puede apreciarse que el usuario apunta su dispositivo mvil a una misma direccin y en esta se muestran distintos tipos de objetos gracias a las opciones de filtrado implementadas.
72

Captulo 5. Implementacin

Figura 5.22 Implementacin de opciones de filtra do de informacin en la aplicacin

73

Captulo 6. Pruebas

Captulo 6. Pruebas
Una vez diseadas e implementadas los diferentes elementos de la aplicacin, es necesario comprobar el funcionamiento de stos en el entorno de implementacin. En este captulo se especifica el diseo de las pruebas que se le hicieron a la aplicacin y los resultados obtenidos.

74

Captulo 6. Pruebas

6.1

Plan de pruebas

Para documentar la especificacin de las pruebas de esta aplicacin, se utilizar el estndar IEEE 829-1998 [IEEE 1998], el cual est diseado para documentar las pruebas que se elaboran a los sistemas de software, para comprobar la funcionalidad de los mismos. Para las pruebas de este sistema, se ejecutarn las funcionalidades desarrolladas en la aplicacin, para comprobar su comportamiento en el entorno de implementacin, de esta forma se observarn las diversas situaciones que puedan presentarse, detectando y corrigiendo los diversos errores que puedan surgir.

6.1.1 Enfoque
En estas pruebas se verificara que las funcionalidades de la aplicacin puedan ser capaces de presentar la informacin de los puntos de inters (POI) en el entorno a travs de tecnologas de realidad aumentada, adems de ello, se comprobar que la aplicacin pueda acceder a la informacin de la ontologa que representa el entorno y a las recomendaciones diseadas en el proyecto de tesis de [Gonzlez 2012].

6.1.2 Caractersticas a probar


Las caractersticas a probar de esta aplicacin sern aquellas que permitan cumplir con los requerimientos funcionales del proyecto, las cuales se definen a continuacin: Insercin de los objetos virtuales en el entorno. La aplicacin debe ser capaz de insertar objetos virtuales en el entorno que muestren informacin de ste, los objetos virtuales deben permitirle al usuario acceder a ms informacin cuando interacta con ellos, adems de ello, los objetos virtuales deben cambiar dependiendo de la ubicacin que seleccione el usuario, adems de comprobar las funciones de filtrado de informacin de los objetos en la pantalla Lectura de la informacin de la ontologa. Deber evaluarse que la aplicacin pueda extraer de manera correcta la informacin necesaria de la ontologa, verificando que sea posible representar la ubicacin del usuario, las orientaciones del dispositivo, los puntos de inters y la informacin de los objetos que sern representados en el sistema. Acceso a las recomendaciones. En la tesis desarrollada por [Gonzlez 2012] se desarrollaron diversos tipos de archivos que contenan distintas recomendaciones de ciertos tems del entorno organizacional, estos tems les eran recomendados a los usuarios de acuerdo a tres tipos de perfil; estudiante, profesor investigador y empresario, adems de ello se tomaban en cuenta aspectos del horario en el que llegaba el usuario (tiempo) y al campus o lugar en el que llegaba (espacio), en este proyecto se comprobar que el sistema sea capaz de acceder a esos

75

Captulo 6. Pruebas

archivos para leer la informacin de las recomendaciones y plasmarla mediante realidad aumentada.

6.1.3 Caractersticas excluidas


Las caractersticas que no sern consideradas al evaluar esta aplicacin son las siguientes: Precisin del sistema. Las pruebas que se realizarn a esta aplicacin no evaluar la precisin con la que corresponden los objetos virtuales insertados mediante realidad aumentada con los elementos del entorno, esto se debe a que la precisin, del mtodo de identificacin de los elementos del entorno, depende mucho del servicio de ubicacin del usuario. Adems, de acuerdo con el Framework Look!, el algoritmo de identificacin de objetos utiliza el magnetmetro y los acelermetros de tres ejes del dispositivo, los cuales cual pueden captar la energa de diversos campos magnticos, con lo cual, su precisin puede tambin afectarse con la interferencia de objetos con demasiado metal o si se encuentra en cercana con algn otro dispositivo, igualmente en el trabajo desarrollado en [Belln 2011], se establece que la precisin de este tipo de sensores puede variar de 1 a 11 grados de acuerdo a diversos factores, como el tipo de sensor y los eventos que se susciten en el entorno. Informacin recibida en las recomendaciones. En estas pruebas no se evaluarn las recomendaciones de los elementos que se encuentran en los archivos que se utilizarn en las pruebas, esto se debe a que anteriormente ya se evalu la efectividad de estas recomendaciones en la tesis de [Gonzlez 2012], las cuales comprobaban que se le proporcionara informacin al usuario de distintos tipos de objetos en el entorno de acuerdo al horario, la informacin de su perfil y el lugar donde se encuentra.

6.1.4 Elementos de prueba


La red de ontologas debe contener informacin sobre todos los objetos que sern representados mediante realidad aumentada del entorno en donde ser implementado. Debe instanciarse la infraestructura, nodos, orientaciones y puntos de inters del entorno que sean capaces de indicarle a la aplicacin cmo sern insertados los objetos virtuales. Deber contarse con los archivos de recomendaciones generados con el proyecto de tesis de [Gonzlez 2012] y haberse generado un archivo JSON para todos estos archivos para proyectar la informacin mediante realidad aumentada.

76

Captulo 6. Pruebas

6.1.5 Requerimientos para realizar las pruebas


Un Smartphone con sistema operativo Android 2.2, sensor de magnetmetro, acelermetro de tres ejes y/o giroscopio y una tarjeta SD Una red Wi-Fi en el entorno para las pruebas de actualizacin de la informacin Un servicio http al que se pueda acceder para descargar la informacin de la ontologa

6.1.6 Criterio xito/fracaso de los casos de prueba


Se considerar que la aplicacin funciona de manera correcta si sus funcionalidades pueden cumplir con lo siguiente: La aplicacin es capaz de insertar objetos virtuales en el entorno compuestos por una imagen y un nombre. Las opciones de filtrado son capaces de mostrar y ocultar informacin de manera correcta. La aplicacin es capaz de descargar el archivo JSON que contiene la informacin de la ontologa. Los objetos virtuales deben proporcionar informacin detallada cuando el usuario interacta con ellos. Los objetos virtuales de esta aplicacin deben cambiar cuando el usuario selecciona una ubicacin diferente.

Si alguno de los aspectos anteriores no se cumple se marcar que una de las funcionalidades ha fracasado y se revisarn los aspectos tcnicos de est para corregir los posibles errores.

6.1.7 Responsabilidades
El tesista Rodrigo Alejandro Morn Leal ser el responsable de elaborar cada una de las pruebas diseadas para esta aplicacin, as como las correcciones a la aplicacin a partir de los fracasos que puedan surgir en las pruebas.

6.1.8 Diseo de las pruebas


Como se ha mencionado anteriormente, las pruebas se ejecutarn con ayuda de los archivos de recomendaciones generados en [Gonzlez 2012], en estos archivos se elaboraron recomendaciones para tres tipos de usuarios, Profesores, Empresarios y Alumnos, para el proyecto de [Gonzlez 2012] se gener un total de 100 archivos XML con recomendaciones. Para poder conocer la ubicacin de los objetos contenidos en las recomendaciones, es necesario construir los archivos JSON que representarn el entorno de implementacin, es por ello que se construyeron dos archivos JSON base que modelan la planta baja y alta del edificio de computacin, en la figura 6.1 puede apreciarse que en la planta baja del edificio de computacin, como puede observarse, este piso contiene 9 diferentes ubicaciones
77

Captulo 6. Pruebas

(representadas por los puntos verdes) y 7 puntos de inters (representados por los puntos amarillos).

Figura 6.1 Representacin de la plata baja del edificio de computacin

Por otro lado, la planta alta del edificio de computacin se representa como aparece en la figura 6.2, en este plano puede apreciarse que se contina con los puntos de inters y las ubicaciones en el entorno, se puede apreciar que esta vez son 8 ubicaciones y 24 puntos de inters, para estas pruebas no se consider que el usuario se metiera a los cubculos debido a que estos podran estar cerrados u ocupados durante las pruebas.

78

Captulo 6. Pruebas

Figura 6.2 representacin de la planta alta del edificio de computacin

Una vez modelado el entorno de implementacin, es posible construir dos archivos JSON base (uno para la planta alta y otro para la planta baja), capaces de contener toda la informacin que permita representar las recomendaciones obtenidas por los archivos XML. Los archivos JSON construidos, debern adecuarse para cada uno de los archivos con recomendaciones, por lo que existirn dos archivos JSON (uno de la planta baja y otro de la planta alta) para cada uno de los archivos XML considerados en las pruebas. Para elaborar las pruebas en esta aplicacin, se tomarn 9 archivos para los tres tipos de usuarios generados en las recomendaciones. Para cada uno de los archivos se considerar elaborar diferentes pruebas en cada piso del edificio de computacin, considerando aleatoriamente 4 ubicaciones para cada uno de los pisos, en resumen, se elaboraran 108 pruebas para cada nivel del edificio, generando un total de 216 casos en los que se comprobar la funcionalidad de la aplicacin. Para cada uno de los 216 casos de prueba debern realizarse las siguientes acciones para comprobar el funcionamiento de la aplicacin: Se seleccionar una ubicacin aleatoria de acuerdo al piso en que se encuentre El usuario deber poder visualizar algn objeto virtual que represente un punto de inters en el entorno El usuario interacta con los objetos virtuales y estos le muestran ms informacin de las recomendaciones
79

Captulo 6. Pruebas

Si alguna de estas actividades no se puede completarse exitosamente, la prueba se considerar como errnea y se corregirn los posibles errores para volverla a realizar.

6.2 Reporte de pruebas


En esta seccin se presentan algunas pruebas realizadas a la aplicacin, mostrando los resultados obtenidos y las observaciones que se hicieron.
Caso de prueba: Alumno120101 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del alumno uno, la ubicacin de las pruebas fue la entrada Resultado:

Observaciones: en esta prueba se descarg el archivo JSON con los datos de la planta baja, existieron problemas de conexin de red sin embargo pudo descargarse el archivo de manera correcta, el usuario interactu con los objetos virtuales y la prueba fue exitosa Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

80

Captulo 6. Pruebas

Caso de prueba: Alumno130102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del alumno uno, la ubicacin de las pruebas fue el laboratorio de inteligencia artificial Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

81

Captulo 6. Pruebas

Caso de prueba: Empresario130202 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del empresario uno, la ubicacin de las pruebas fue el pasillo 13 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

82

Captulo 6. Pruebas

Caso de prueba: Alumno130203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del alumno uno, la ubicacin de las pruebas fue el pasillo 14 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

83

Captulo 6. Pruebas

Caso de prueba: Alumno220103 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del alumno dos, la ubicacin de las pruebas fue el aula 3 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

84

Captulo 6. Pruebas

Caso de prueba: Alumno220104 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del alumno dos, la ubicacin de las pruebas fue el laboratorio de sistemas distribuidos Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

85

Captulo 6. Pruebas

Caso de prueba: Alumno220202 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del alumno dos, la ubicacin de las pruebas fue el pasillo 15 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

86

Captulo 6. Pruebas

Caso de prueba: Alumno220204 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del alumno dos, la ubicacin de las pruebas fue el pasillo 17 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

87

Captulo 6. Pruebas

Caso de prueba: Alumno310102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del alumno tres, la ubicacin de las pruebas fue el aula 2 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

88

Captulo 6. Pruebas

Caso de prueba: Alumno310104 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del alumno tres, la ubicacin de las pruebas fue el aula 3 Resultado:

Observaciones: en esta prueba, el archivo de recomendaciones contena la informacin del laboratorio de inteligencia artificial como un lugar y tambin registrada como inventario Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

89

Captulo 6. Pruebas

Caso de prueba: Alumno310203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del alumno tres, la ubicacin de las pruebas fue el pasillo 13 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

90

Captulo 6. Pruebas

Caso de prueba: Alumno320203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del alumno tres, la ubicacin de las pruebas fue el pasillo 14 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

91

Captulo 6. Pruebas Caso de prueba: Empresario130104 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del empresario uno, la ubicacin de las pruebas fue la entrada Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

92

Captulo 6. Pruebas

Caso de prueba: Empresario110104 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del empresario uno, la ubicacin de las pruebas fue la entrada Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

93

Captulo 6. Pruebas

Caso de prueba: Empresario130203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del empresario uno, la ubicacin de las pruebas fue el pasillo 13 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

94

Captulo 6. Pruebas

Caso de prueba: Empresario130204 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del empresario uno, la ubicacin de las pruebas fue el pasillo 12 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

95

Captulo 6. Pruebas Caso de prueba: Empresario230102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del empresario dos, la ubicacin de las pruebas fue el laboratorio de sistemas distribuidos Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

96

Captulo 6. Pruebas

Caso de prueba: Empresario230103 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del empresario dos, la ubicacin de las pruebas fue el aula 2 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

97

Captulo 6. Pruebas

Caso de prueba: Empresario210201 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del empresario uno, la ubicacin de las pruebas fue el pasillo 12 Resultado:

Observaciones: en esta prueba se descarg el archivo JSON para modelar la planta alta, el usuario pudo interactuar con los objetos virtuales en estas pruebas por lo que resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

98

Captulo 6. Pruebas

Caso de prueba: Empresario210204 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del empresario tres, la ubicacin de las pruebas fue el pasillo 15 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

99

Captulo 6. Pruebas

Caso de prueba: Empresario310102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del empresario tres, la ubicacin de las pruebas fue el vestbulo Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

100

Captulo 6. Pruebas

Caso de prueba: Empresario320102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del empresario tres, la ubicacin de las pruebas fue el laboratorio de inteligencia artificial Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

101

Captulo 6. Pruebas

Caso de prueba: Empresario310203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del empresario tres, la ubicacin de las pruebas fue el pasillo 10 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

102

Captulo 6. Pruebas

Caso de prueba: Empresario320203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del empresario tres, la ubicacin de las pruebas fue el pasillo 10 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

103

Captulo 6. Pruebas Caso de prueba: Profesor130102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del profesor uno, la ubicacin de las pruebas fue el laboratorio de sistemas distribuidos Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

104

Captulo 6. Pruebas

Caso de prueba: Profesor130103 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del profesor uno, la ubicacin de las pruebas fue la entrada Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

105

Captulo 6. Pruebas

Caso de prueba: Profesor110202 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del profesor uno, la ubicacin de las pruebas fue el pasillo 11 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

106

Captulo 6. Pruebas

Caso de prueba: Profesor110204 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo uno del profesor uno, la ubicacin de las pruebas fue el pasillo 14 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

107

Captulo 6. Pruebas

Caso de prueba: Profesor220102 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del profesor dos, la ubicacin de las pruebas fue el laboratorio de inteligencia artificial Resultado:

Observaciones: en estas pruebas se incluy la orientacin hacia arriba, en la cual se encontraba el cubculo del Dr. Ren Santaolaya Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

108

Captulo 6. Pruebas Caso de prueba: Profesor220104 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del profesor dos, la ubicacin de las pruebas fue el aula 3 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

109

Captulo 6. Pruebas

Caso de prueba: Profesor220203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del profesor dos, la ubicacin de las pruebas fue el pasillo 11 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

110

Captulo 6. Pruebas

Caso de prueba: Profesor230203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del profesor dos, la ubicacin de las pruebas fue el vestbulo Resultado:

Observaciones: en estas pruebas se incluy la orientacin hacia abajo, en la cual se encontraba el laboratorio de sistemas distribuidos Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

111

Captulo 6. Pruebas Caso de prueba: Profesor330101 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo tres del profesor tres, la ubicacin de las pruebas fue el laboratorio de ingeniera de software Resultado:

Observaciones: en esta prueba se descarg el archivo JSON para modelar la planta baja, el usuario pudo interactuar con los objetos virtuales en estas pruebas por lo que resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

112

Captulo 6. Pruebas

Caso de prueba: Profesor320104 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del profesor tres, la ubicacin de las pruebas fue el laboratorio de inteligencia artificial Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

113

Captulo 6. Pruebas

Caso de prueba: Profesor320204 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del profesor tres, la ubicacin de las pruebas fue el pasillo 10 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

114

Captulo 6. Pruebas

Caso de prueba: Profesor320203 Descripcin: se elaborarn pruebas de funcionalidad de la aplicacin en el archivo dos del profesor tres, la ubicacin de las pruebas fue el pasillo 12 Resultado:

Observaciones: el usuario pudo interactuar con los objetos virtuales presentados mediante realidad aumentada, estas pruebas resultaron exitosas Responsable de la prueba: Rodrigo Alejandro Morn Leal Cargo: Autor de la prueba

6.3 Resultados
Una vez elaboradas las pruebas descritas anteriormente se proceder a evaluar los resultados obtenidos. En un principio, la aplicacin marcaba un error en varios de los archivos XML al tratar de extraer la informacin de los objetos en las recomendaciones, esto fue debido a que en los archivos XML existe un error en la etiqueta Extensin en las recomendaciones de personas, como puede apreciarse en la figura 6.3, en esta figura puede apreciarse que algunas etiquetas utilizan la letra s mientras que otras la letra c.

115

Captulo 6. Pruebas

Figura 6.3 Error en los archivos XML por la etiqueta Extensin

Este error se ocasiono debido a que en un principio se generaban las recomendaciones utilizando una c en la etiqueta, despus se corrigi y se utilizo la letra s, por tal motivo algunos archivos quedaron con la letra c, para solucionar este problema se corrigieron todos los archivos encontrados en las pruebas que utilizaban la letra c en la etiqueta extensin. Adems de este problema en los archivos XML, algunos de ellos generaban recomendaciones nulas, como puede verse en la figura 6.4, que tambin pueden causar conflicto, estas recomendaciones no fueron consideradas para las pruebas.

Figura 6.4 Recomendaciones nulas en los archivos XML

Una vez corregidos los archivos XML para adaptarlos a las pruebas, stas procedieron a ejecutarse, nicamente se descarg una vez el archivo JSON para realizar todas las pruebas correspondientes en cada piso. En una primera ejecucin de las pruebas, nicamente tuvieron error 4 pruebas de las 216 que se planearon, dando porcentaje de xito del 98.14%, las pruebas que marcaron error fue debido a que exista un error de sintaxis en el archivo JSON en el que se ejecutaron las pruebas, una vez corregido este error, se volvieron a ejecutar estas pruebas y resultaron exitosas, obteniendo finalmente un 100% de xito en la ejecucin de las pruebas.

116

Captulo 7. Conclusiones y trabajos futuros

Captulo 7. Conclusiones y trabajos futuros


En este captulo se abordarn las conclusiones obtenidas en el desarrollo de este proyecto de investigacin, as como tambin las aportaciones hechas en este proyecto y los posibles trabajos futuros.

117

Captulo 7. Conclusiones y trabajos futuros

7.1 Conclusiones
Como pudo observarse, en este proyecto se desarroll una aplicacin capaz de presentar las recomendaciones e informacin del entorno, a travs de tecnologas de realidad aumentada en dispositivos Smarthphone, con esta aplicacin es posible identificar diferentes objetos en el entorno a travs del modelo de reconocimiento por orientacin desarrollado en esta tesis, con el cual, el dispositivo es capaz de mostrar informacin de puntos de inters al usuario mediante tcnicas de realidad aumentada. Adems, al implementar la aplicacin, se desarroll la estructura de mensajes basados en JSON, estos mensajes contienen informacin extrada del modelo semntico de la organizacin, la aplicacin es capaz de leer los datos necesarios para formar los puntos de inters, las orientaciones y las ubicaciones del usuario, tambin se implementaron ajustes a la red de ontologas organizacional, con estas modificaciones se puede modelar la informacin necesaria para que el modelo de orientacin funcione con un sistema de orientacin basado en sensorizacin. Para probar el modelo de orientacin resultado de este proyecto de tesis, se desarroll una aplicacin capaz de presentar las recomendaciones de una organizacin a travs de realidad aumentada, aprovechando los sensores del dispositivo para determinar su orientacin, adems, se implementaron nuevas clases y relaciones a la red de ontologas organizacionales que ayudarn a complementar la gestin de la informacin del entorno.

7.2 Aportaciones
Adems de haber desarrollado una aplicacin capaz de insertar informacin de recomendaciones en el entorno, a travs de realidad aumentada, tambin se dise un modelo de reconocimiento de distintos puntos de inters mediante el uso de los sensores del dispositivo, con este modelo de reconocimiento por orientacin, es posible que el dispositivo reconozca diferentes puntos de inters en el entorno sin que estos se encuentren en el campo de visin del dispositivo. Adems, se implementaron algunas modificaciones a las recomendaciones y a la aplicacin desarrollada en este proyecto de tesis, con este modelo se puede reconocer cualquier punto de inters fijo, (tales como oficinas, salas, lugares, rutas de evacuacin, etc.) as como objetos que se encuentren temporalmente en algn espacio determinado (expendedores de alimentos, extintores, botiquines de primeros auxilios, etc.). Otra de las aportaciones en este proyecto de tesis, fue ampliar el conocimiento que se tena sobre el desarrollo de aplicaciones que utilizan realidad aumentada dentro del rea de sistemas distribuidos, a travs de la investigacin de las diversas tcnicas utilizadas en estos sistemas, y tambin con la evaluacin de los trabajos abordados en el estado del arte. De esta forma se asimilaron tecnologas y tcnicas se utilizan actualmente para el desarrollo de aplicaciones con realidad aumentada. Por ltimo, en este proyecto de tesis tambin se modific la ontologa ONALIN, con estas modificaciones complementaron la ontologa implementada en [Estrada 2010] para modelar la infraestructura de la organizacin. La ontologa
118

Captulo 7. Conclusiones y trabajos futuros

ONALIN se dise para el desarrollo de sistemas de navegacin, considera estndares que son capaces de elaborar especificaciones para usuarios con discapacidades motrices, por lo que permitira desarrollar algn sistema de navegacin que fuera capaz de escoger la ruta ms conveniente para el usuario, de acuerdo a sus capacidades motrices.

7.3 Trabajos futuros


Una vez que se ha desarrollado una aplicacin que presenta informacin al usuario mediante realidad aumentada, un trabajo futuro sera la integracin del servicio de recomendaciones con mapas contextuales en formato SVG y el servicio de localizacin implementado en el trabajo de [Yris 2012], integrando de esta forma una aplicacin muy completa para modelar los elementos de diversos tipos de organizaciones (museos, empresas de gobierno, centros comerciales, instituciones de educacin superior, etc.), ofreciendo en las organizaciones recomendaciones personalizadas a sus visitantes, servicio de ubicacin de los usuarios dentro de las instalaciones y consultar la informacin de la organizacin a travs de una interfaz tradicional, mapas SVG o bien realidad aumentada. Adems de implementar los otros trabajos realizados anteriormente, tambin podran adecuarse los archivos XML de las recomendaciones al formato JSON, de esta forma la aplicacin sera mucho ms ligera y su lectura sera ms simple. Tambin, sera posible adecuar algunos aspectos de esta aplicacin para que pudiera funcionar en dispositivos mviles tipo Tablet, con las cuales se podran integrar ms opciones en la interfaz, debido a que sus pantallas son ms grandes. Finalmente, otro proyecto que contemplara este trabajo de investigacin, es la implementacin de una herramienta que permita la generacin semiautomtica de mapas contextuales en formato SVG y los modelos ocultos de Markov (MOM), a partir de la descripcin de infraestructura de la red de ontologas organizacional, para este caso se podra generar de manera semiautomtica la definicin de las ubicaciones y de los POIs y algo interesante es que se pueden generar las rutas por donde se puede transitar dentro y fuera de los edificios, tomando en cuenta las especificaciones de accesibilidad para personas con diversas discapacidades, estas especificaciones estn consideradas en la ontologa ONALIN.

119

Referencias

Referencias
[Ajanki 2011] An Augmented Reality Interface to Contextual Information, Antti Ajanki, Mark Billinghurst, Hannes Gamper, Toni Jrvenp, Melih Kandemir, Samuel Kaski, Markus Koskela, Mikko Kurimo, Jorma Laaksonen, Kai Puolamki, Teemu Ruokolainen, Timo Tossavainen, Special Issue on Augmented Reality, Volumen 15, 2011 [Jones 2010] STMicroelectronics Makes 3-Axis Digital Gyroscope With One Sensor, Willie D. Jones, IEEE Spectrum, 2010 [Akyildiz 2002] A survey on sensor networks, Ian F. Akyildiz, Weilian Su, Yogesh Sankarasubramaniam, and Erdal Cayirci, IEEE communications magazine, Agosto del 2002 [Arjona 2009] Servicios de localizacin consientes de contextos aplicados a perfiles de movilidad y tecnologas de localizacin heterogneas, Israel Arjona Vizcano, CENIDET, Mxico 2009 [Azuma 1997] A survey of Augmented Reality, Ronald T. Azuma, Teleoperators and Virtual Environments, Agosto 1997 [Belln 2011] Look!: Framework para Aplicaciones de Realidad Aumentada en Android, Sergio Belln Alcarazo, Jorge Creixell Rojo, Angel Serrano Laguna, Jorge J. Gmez Sanz, Universidad Complutense de Madrid, Facultad de Informtica, 2011 [Bouzeghoub 2009] Situation-Aware Adaptive Recommendation to Assist Mobile Users in a Campus Environment, Amel Bouzeghoub, Kien Ngoc Do, Leandro Krug Wives, International Conference on Advanced Information Networking and Applications, Reino Unido 2009 [Cheung 2006] A Personal Knowledge Management Tool that Supports Organizational Knowledge Management, Cheung Larry Y.C., Chung Paul Wai Hing, Stone R.G., Dai Wei, 3rd Asia-Pacific International Conference on Knowledge Management (KMAP), Hong Kong 2006 [Choonsung 2010] Unified Context-aware Augmented Reality Application Framework for User-Driven Tour Guides, Choonsung Shin, Hyejin Kim, Changgu Kang, Youngkyoon Jang, Ahyoung Choi, Woontack Woo, International Symposium on Ubiquitous Virtual Reality, 2010
120

Referencias

[Christos 2005] OntoNav: A Semantic Indoor Navigation System, Christos Anagnostopoulos, Vassileios Tsetsos, Panayotis Kikiras, Stathes P., 1st Workshop on Semantics in Mobile Environments (SME'05), 2005 [Coulton 2008] Using a Camera Phone as aMixed-Reality Laser Cannon, Fadi Chehimi, Paul Coulton, Reuben Edwards, International Journal of Computer Games Technology, Reino Unido 2008 [Dudas 2009] ONALIN: Ontology and Algorithm for Indoor Routing, Patrick M. Dudas, Mahsa Ghafourian, Tenth International Conference on Mobile Data Management: Systems, Services and Middleware, 2009 [Ehrig 2007] Ontology Alignment Bridging the Semantic Gap, Marc Ehrig, Springer, Estados Unidos 2007 [Estrada 2010] Generacin y explotacin de mapas semnticos de instalaciones organizacionales mediante el uso de ontologas, Ricardo Estrada Pelez, CENIDET, Mxico 2010 [Estrada 2012] Generacin y explotacin de mapas semnticos de instalaciones organizacionales mediante el uso de ontologas, Ricardo Estrada Pelez, CENIDET, Mxico 2010 [Gediminas 2010] Context-Aware Recommender Adomavicius, Alexander Tuzhilin, New York, 2010 Systems, Gediminas

[Gonzlez 2012] Servicio de recomendacin contextual mediante ontologas multidimensionales para dispositivos Smartphone, Nimrod Gonzlez Franco, CENIDET, Mxico 2012 [IEEE 1998] 829 Standard for Software and System Test Documentation, Institute of Electrical and Electronic Engineers, Estados Unidos, 1998 [ISO 2006] ISO/IEC18004, Information technology - Automatic identification and data capture techniques - QR Code 2005 bar code symbology specification, segunda Edicin, Editorial ISO/EC, Suiza 2006 [Jrgen 2007] Towards a Semantic Spatial Model for Pedestrian Indoor Navigation, Edgar-Philipp Stoel, Bernhard Lorenz, Hans Jrgen Ohlbach, conference on Advances in conceptual modeling: foundations and applications, 2007

121

Referencias

[Kim 1989] Digital Compass and Magnetometer having a sensor coil wound on a high permaneablility isotropic core, Nam H. Kim, Timothy Hawks, United States Patent, Estados Unidos 1989 [Kumar 2008] A Developers First Look at Android, Amit Kumar Saha, Overview developers Linux for you, Enero del 2008 [Kurata 2007] A Pilot User Study on 3-D Museum Guide with Route Recommendation Using a Sustainable Positioning System, Takashi Okuma, Masakatsu Kourogi, Nobuchika Sakata, Takeshi Kurata, International Conference on Control, Automation and Systems, Corea 2007 [Matysczok 2003] Development of a Real Time Image Based Object Recognition Method for Mobile AR-Devices, Juergen Gausemeier, Juergen Fruend, Carsten Matysczok, Beat Bruederlin, David Beier, Afrigraph 2003 [Mulloni 2010] North-centred Orientation Tracking on Mobile Phones, Gerhard Schall, Alessandro Mulloni, Gerhard Reitmayr, 9th IEEE International Symposium on Mixed and Augmented Reality (ISMAR), 2010 [Olwal 2006] LightSense: Enabling Spatially Aware Handheld Interaction Devices, Alex Olwal, IEEE and ACM International Symposium on Mixed and Augmented Reality [Pajares 2008] Visin por computador Imgenes digitales y aplicaciones, Gonzalo Pajares Martinsanz, Jess M. de la Cruz Garca, segunda Edicin, Editorial RA-MA, Mxico 2008. [Papagiannakis 2005] Mixing Virtual and Real scenes in the site of ancient Pompeii, George Papagiannakis, Sebastien Schertenleib, Brian OKennedy, Marlene Arevalo-Poizat, Nadia Magnenat-Thalmann, Andrew Stoddart, Daniel Thalmann, Journal of Visualization and Computer Animation 16, 2005 [Park 2010] A Tracking Framework for Augmented Reality Tours on Cultural Heritage Sites, Byung-Kuk Seo, Kangsoo Kim, Jungsik Park, Jong-II Park, Proceedings of the 9th ACM SIGGRAPH Conference on Virtual-Reality Continuum and its Applications in Industry, Estados unidos 2010 [Paucher 2010] Location-based augmented reality on mobile phones, Rmi Paucher, Matthew Turk, IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 2010

122

Referencias

[Pombinho 2011] Point of interest awareness using indoor positioning with a mobile phone, Paulo Pombinho, Ana Paula Afonso, Maria Beatriz Carmo, International Conference on Pervasive and Embedded Computing and Communication Systems, 2011 [Portillo 2008] Tecnologa de identificacin por radio frecuencia (RFID): Aplicaciones en el mbito de la salud, Javier I. Portillo, Ana Beln Bermejo, Ana M. Bernardos, Informe de Vigilancia Tecnolgica Madrid, 2008 [Pressman 2002] Ingeniera del software: un enfoque prctico, Roger Pressman, 5 edicin, McGraw-Hill, 2002. [QDevNet 2011] Augmented Reality Qualcomm developer Network, QDevNet, 2011, https://developer.qualcomm.com/develop/mobiletechnologies/augmented-reality [Rashid 2006] PAC-LAN: Mixed-Reality Gaming with RFID Enabled Mobile Phones, Omer Rashid, Will Bamford, Paul Coulton, Reuben Edwards, ACM Computers in Entertainment, Vol. 4, No. 4, October 2006. [Rhrig 2009] Indoor Location Tracking in Non-line-of-Sight Environments Using a IEEE 802.15.4a Wireless Network, Christof Rhrig, Marcel Mller, International Conference on Intelligent Robots and Systems, 2009 [Schmalstieg 2003] Location based Applications for Mobile Augmented Reality, Gerhard Reitmayr, Dieter Schmalstieg, Australasian User Interface Conference, Australia 2003 [Schmalstieg 2006] Handheld augmented reality displays, IEEE Conference on Virtual Reality, Dieter Schmalstieg, Daniel Wagner, Washington, 2006 [Schmalstieg 2007] Experiences with Handheld Augmented Reality, Dieter Schmalstieg, Daniel Wagner, International Symposium on Mixed and Augmented Reality (ISMAR), Japn 2007 [Schmalstieg 2011] Augmented Reality 2.0, Dieter Schmalstieg, Tobias Langlotz, Mark Billinghurst, Virtual Realities, p. 13-38, Springer, Alemania 2011 [Shann 2007] Face detection and smile detection, Yu-Hao Huang, ChiouShann Fuh, Images & Recognition, Vol. 13 - No. 1, p. 4 9, China 2007

123

Referencias

[Sukhatme 2009] Coarse In-building Localization with Smartphones, Avinash Parnandi, Ken Le, Pradeep Vaghela, Aalaya Kolli, Karthik Dantu, Sameera Poduri, Gaurav S. Sukhatme, Estados Unidos 2009 [Swan 2010] Perceptual Issues in Augmented Reality Revisited, Ernst Kruijff, J. Edward Swan, Steven Feiner, IEEE International Symposium on Mixed and Augmented Reality, Corea 2010 [Thalmann 2008] A survey of mobile and wireless technologies for augmented reality systems, George Papagiannakis, Gurminder Singh, Nadia MagnenatThalmann, Journal of Visualization and Computer Animation, Estados Unidos 2008 [Thomas 2002] First Person Indoor/Outdoor Augmented Reality Application: ARQuake, Bruce Thomas, Ben Close, John Donoghue, John Squires, Phillip De Bondi, Wayne Piekarski, Springer - Personal and Ubiquitous Computing, Londres 2002. [Turk 2010] Location-based augmented reality on mobile phones, Rmi Paucher, Matthew Turk, IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 2010 [Vargas 2009] Modelo colaborativo para la integracin de sistemas, Roco Vargas Arrollo, CENIDET, Mxico 2009 [Weiser 1993] Some computer science issues in ubiquitous computing, Mark Weiser, communications of the ACM, Julio 1993, Vol 36, No. 7 [Woo 2009] CAMAR Tag Framework: Context-Aware Mobile Augmented Reality Tag Framework for Dual-reality Linkage, Hyejin Kim, Wonwoo Lee, Woontack Woo, International Symposium on Ubiquitous Virtual Reality, 2009. [Woo 2010] Unified Context-aware Augmented Reality Application Framework for User-Driven Tour Guides, Choonsung Shin, Hyejin Kim, Changgu Kang, Youngkyoon Jang, Ahyoung Choi, Woontack Woo, International Symposium on Ubiquitous Virtual Reality, 2010. [Woo 2011] QR Code Data Representation for Mobile Augmented Reality, Hyoseok Yoon, Nohyoung Park, Wonwoo Lee, Youngkyoon Jang, Woontack Woo, International AR Standards Meeting-February, 2011 [Worboys 2011] Modeling indoor space, Michael Worboys, Conference On Spatial Information, 2011
124

Referencias

[Yris 2012] API Para servicios de localizacin basada en tecnologa RFID, QRCode, WIFI y Bluetooth, Miguel ngel Yris Pastor, CENIDET, Mxico 2010 [Zhu 2008] Personalized In-store E-Commerce with the PromoPad: an Augmented Reality Shopping Assistant, Wei Zhu, Charles B. Owen, Hairong Li, Joo-Hyun Lee, Electronic Journal for E-commerce Tools, 2008 [Zllner 2009] An Augmented Reality Presentation System for Remote Cultural Heritage Sites, M. Zllner, J. Keil, H. Wst, D. Pletinckx, The 10th International Symposium on Virtual Reality, Archaeology and Cultural Heritage VAST, 2009

125

You might also like