INSTITUTO POLITÉCNICO NACIONAL
CENTRO DE INNOVACIÓN Y DESARROLLO TECNOLÓGICO EN CÓMPUTO
“DISEÑO E INTEGRACIÓN DE UNA INTERFAZ GRÁFICA UTILIZANDO REALIDAD AUMENTADA PARA EL RECONOCIMIENTO DE OBJETOS
POR RFID E INFORMACIÓN VISUAL”
T E S I S
QUE PARA OBTENER EL GRADO DE MAESTRO EN TECNOLOGÍA DE CÓMPUTO
P R E S E N T A:
ING. DIANA NAIM RIVERA AGUILAR
DIRECTORES DE TESIS:
DR. GABRIEL SEPÚLVEDA CERVANTES DR. ROBERTO LINARES Y MIRANDA
MÉXICO D.F. DICIEMBRE 2012
Resumen
En esta tesis se describe el desarrollo de una Interfaz de Realidad Aumentada en la que el usuario puede interactuar en un ambiente virtual con objetos reales, sin utilizar marcadores que alteren su estructura física. La interfaz está integrada con dos tecnologías: visión artificial e identificación por radiofrecuencia (RFID) que es la aportación principal de este trabajo de investigación.
Para la tecnología de visión artificial, se utilizaron las bibliotecas OpenCV y OpenNI y se capturan imágenes con un dispositivo kinect de 640 x 480 píxeles de resolución a una frecuencia de muestreo de 30 fotogramas por segundo. Las imágenes se analizaron usando el proceso de segmentación considerando la profundidad. Para el estudio se utilizaron seis objetos, a los cuales se les detectó diez rasgos descriptivos invariantes a factores de escala, desplazamiento e iluminación para formar la base de entrenamiento.
La tecnología de RFID se utilizó para localizar la posición de los objetos bajo estudio.
El sistema RFID es pasivo y está formado por una lectora, dos antenas y etiquetas genéricas que se colocan en los objetos por identificar. La posición de los objetos se obtiene por medio del algoritmo Landmarc, que procesa el nivel de potencia que emiten las etiquetas al ser detectadas por las dos antenas dentro de un área específica.
El sistema RFID que se utilizó es de la marca Alien modelo ALR9900.
La interfaz se probó en un área de trabajo de 70 cm de ancho, 120 cm de largo y de 120cm de alto, donde se colocaron seis objetos, de los cuales dos de ellos son iguales.
El usuario puede interactuar con la computadora mediante el movimiento de su mano y a su vez puede utilizar elementos reales dentro de un ambiente virtual. La eficiencia para la visión artificial es de 90 % y para la parte de RFID es del 80 %, lo que implica que es una integración adecuada, ya que en conjunto se tiene un sistema de realidad aumentada con una eficiencia mayor del 76.5 %.
Abstract
This thesis describes the development of an augmented reality interface in which the user can interact in a virtual environment with real objects, without using markers that alter its physical structure. The interface consists of two technologies: computer vision and radio frequency identification (RFID), this is main contribution of this research.
For computer vision technology is used OpenCV and OpenNI libraries and capturing images with a Kinect device, using a 640 x 480 pixel resolution at a sampling rate of 30 frames per second. Images were analyzed using the process of considering the depth segmentation. For the study used six objects, which were detected ten traits descriptive scale invariant factors, displacement and illumination to form the training base.
RFID technology was used to locate the position of the objects under study. The passive RFID system consists of a reader, two antennas and generic tag that are placed on objects to be identified. The position of the object is obtained by means of Landmarc algorithm that processes the power emitted by the tags to be detected by the two antennas within a specific area. This application was developed using the RFID kit Alien ALR9900.
The interface was tested in a working area of 0.70 m x 1.2 m and 1.2 m, which were placed six objects, of which two of them are equal. The user can interact with the virtual environment by moving his hand and in turn can use real elements. The artificial vision efficiency is 90% and for the RFID portion is 80%, which implies that proper integration, and which together have an augmented reality system with an efficiency greater than 76.5%.
Agradecimientos
A Dios
Por haberme guiar mis pasos y concederme la oportunidad de llegar hasta este punto y haberme dado salud para lograr mis objetivos.
A Mary
Por todo el apoyo brindado y por haber sido un ángel maravilloso que guió mi vida, y sobre todo, por el amor y tiempo que me brindaste, gracias por todo abuelita.
A mis familiares
Por ser el pilar fundamental en todo lo que soy, en toda mi educación, tanto académica, como de la vida y por su incondicional apoyo. Agradezco especialmente a mis padres y a mi tía, por todo su amor y sus cuidados.
A Jorge
Gracias por compartir conmigo nuevas aventuras, por tu gran apoyo y por todo tu amor.
A mis amigos
Por acompañarme en los buenos y malos momentos, han sido un gran apoyo y fortaleza para mi.
A mis profesores
Admiro su dedicación y compromiso por transmitir su conocimiento. En especial, agra- dezco a mis directores de Tesis por su trabajo y apoyo para la realización de esta trabajo.
Índice general
Resumen I
Agradecimientos V
1. Introducción 1
1.1. Conceptos básicos . . . 1
1.1.1. Interfaz Gráfica de Usuario . . . 1
1.1.2. Realidad Aumentada . . . 3
1.1.3. Visión Artificial . . . 9
1.1.4. Identificación por Radiofrecuencia . . . 12
1.2. Estado del Arte . . . 18
1.3. Planteamiento del Problema . . . 21
1.4. Objetivos . . . 21
1.4.1. Objetivo General . . . 21
1.4.2. Objetivos Particulares . . . 22
1.5. Alcance . . . 22
1.6. Organización de la Tesis . . . 23
2. Marco Teórico 25 2.1. Visión Artificial . . . 25
2.1.1. Componentes de un Sistema de Visión Artificial . . . 25
2.1.2. Técnicas de seguimiento . . . 29
2.1.3. Sistema de Reconocimiento Automático de Objetos . . . 32
2.2. Localización de objetos por RFID en la banda UHF . . . 55
2.2.1. Principios de Operación . . . 55
2.3. Realidad Virtual . . . 60
2.3.1. Conceptos Básicos . . . 61
2.3.2. Realidad Mixta . . . 62
2.3.3. Arquitectura de un Sistema de Realidad Virtual . . . 63
2.3.4. Áreas de aplicación . . . 66
3. Desarrollo de la Interfaz 71 3.1. Implementación del SRAO . . . 72
3.1.1. Adquisición de Imágenes . . . 73
Índice general Índice general
3.1.2. Preprocesado de Imágenes y Segmentación . . . 75
3.1.3. Representación y Descripción . . . 76
3.2. Implementación del Módulo de Identificación por Radiofrecuencia . . . 86
3.2.1. Arquitectura del Proyecto . . . 87
3.2.2. Algoritmo Landmarc . . . 88
3.3. Implementación del Sistema de Realidad Virtual . . . 91
3.3.1. Arquitectura del Proyecto . . . 91
3.3.2. Funcionamiento del Sistema . . . 93
3.4. Integración de la Interfaz . . . 97
3.4.1. Espacio de trabajo . . . 99
3.4.2. Proceso de Integración . . . 99
4. Resultados 105 4.1. Registro de Objetos . . . 105
4.2. Reconocimiento de Objetos . . . 106
4.2.1. Módulo de Visión . . . 106
4.2.2. Módulo de Identificación por Radiofrecuencia . . . 116
4.3. Procesamiento y almacenamiento de la información . . . 124
5. Conclusiones y Trabajos Futuros 127 5.1. Conclusiones . . . 127
5.2. Perspectivas a Futuro . . . 129
Bibliografía 131
Nomenclatura 137
viii
Índice de figuras
1.1. Ejemplos de Interfaces WIMPS. . . 2
1.2. Ejemplo de una Interfaz Natural de Usuario. . . 3
1.3. Ejemplos de Aplicaciones de Realidad Aumentada . . . 3
1.4. Milgram-Virtuality Continuum . . . 4
1.5. Realidad Aumentada Tangible una convergencia de RA, ITU e IPU. . . 5
1.6. Ejemplo de marcadores utilizados para identificar objetos virtuales. . . 6
1.7. Ejemplos de una Interfaz basada en el Movimiento Corporal. . . 6
1.8. Kinect: Proceso de reconocimiento[1]. . . 7
1.9. Ejemplo de dispositivos de bajo costo. . . 8
1.10. Sistema Multimodal[2]. . . 9
1.11. Casos de estudio de aplicaciones de RFID [3] . . . 13
1.12. Componentes de un sistema RFID. . . 15
1.13. Principios de Propagación[4]. . . 17
1.14. Esquema de un sistema RFID. . . 18
1.15. SurfaceFusion. . . 19
1.16. BlueTable. . . 19
1.17. Tangible Design Support System Using RFID Technology . . . 20
1.18. Desplazamiento de la Antena RF usando el robot NXT. . . 20
2.1. Componentes de un Sistema de Visión Artificial . . . 26
2.2. Técnicas de Iluminación [5] . . . 27
2.3. Ejemplo de seguimiento de Objetos utilizando marcadores . . . 29
2.4. Flujo óptico[6]. . . 31
2.5. Ejemplo de identificación por coincidencia [7]. . . 31
2.6. El ojo humano y el Sistema de Visión. . . 33
2.7. Espectro Electromagnético[8]. . . 34
2.8. Sistemas de Color. . . 35
2.9. Formación de una imagen [9]. . . 35
2.10. Sistemas de iluminación [10]. . . 37
2.11. Partes de la Cámara[11]. . . 37
2.12. Cámaras Digitales[12] . . . 38
2.13. Digitalización de una señal analógica. . . 39
2.14. Niveles de cuantización[13] . . . 41
2.15. Píxeles adyacentes. . . 42
Índice de figuras Índice de figuras
2.16. Conectividad, (a) 4 vecinos, (b) 8 vecinos. . . 43
2.17. Conectividad mixta. . . 43
2.18. Ejemplos de operaciones aritméticas-lógicas. . . 44
2.19. Histograma de una imagen en color. . . 46
2.20. Brillo. . . 46
2.21. Análisis y ecualización de un histograma. . . 47
2.22. Tipos de Ruidos. . . 48
2.23. Ejemplos de elementos estructura. . . 50
2.24. Dilatación[14]. . . 50
2.25. Erosión[14]. . . 51
2.26. Modelo energético de un sistema de radiocomunicación . . . 56
2.27. Ejemplos de Sistemas de realidad virtual[15] . . . 61
2.28. Dispositivos utilizados en los sistemas de RV[16]. . . 64
2.29. Modelo del desarrollo de un Sistema de RV . . . 66
2.30. RV en los negocios y procesos de manufactura . . . 67
2.31. Cirugía Virtual [17]. . . 68
2.32. RV en la educación [18]. . . 68
2.33. Aplicaciones Militares. . . 69
2.34. Aplicaciones de RV utilizadas para el Entretenimiento. . . 70
3.1. Diagrama general de la Interfaz de Realidad Aumentada. . . 71
3.2. Diagrama del Módulo de visión por computadora. . . 72
3.3. Diseño virtual del prototipo . . . 73
3.4. Objetos utilizados . . . 73
3.5. Arquitectura del dispositivo Kinect [1]. . . 74
3.6. Tipos de Imágenes utilizadas . . . 75
3.7. Ejemplo de imágenes preprocesadas y segmentadas . . . 76
3.8. Objetos etiquetados . . . 76
3.9. Proceso de entrenamiento. . . 79
3.10. Creación de la base de conocimiento . . . 80
3.11. Etapa de Prueba . . . 81
3.12. Notación del algoritmo K-NN . . . 82
3.13. Regla de los K vecinos más cercanos [19]. . . 83
3.14. Diagrama del Módulo de RFID. . . 86
3.15. Equipo de radiofrecuencia Alien-9900. . . 87
3.16. Modelo virtual del espacio de trabajo. . . 88
3.17. Valores RSSI . . . 88
3.18. Diseño virtual del prototipo . . . 91
3.19. Proyector Epson 455Wi[20]. . . 92
3.20. Diagrama del funcionamiento del Módulo de Realidad Aumentada . . . 93
3.21. Tablas Utilizadas . . . 94 3.22. Procedimiento para la proyección de información virtual sobre objetos. 94
x
Índice de figuras
3.23. Ciclo del seguimiento de Mano. . . 95
3.24. Sistema de Coordenadas de la posición de la Mano[21]. . . 96
3.25. Interacción con el Ambiente virtual. . . 96
3.26. Imágenes del funcionamiento de la interfaz de RA. . . 97
3.27. Diagrama de los módulos de la Interfaz de RA. . . 98
3.28. Espacio de trabajo. . . 99
3.29. Diagrama de los procesos utilizados para la integración de la Interfaz. . 100
3.30. Programa diseñado para registrar objetos. . . 101
3.31. Diagrama del Reconocimiento de Objetos. . . 101
3.32. Coordenas principales del objeto. . . 102
3.33. Proyección de Información virtual. . . 104
3.34. Interacción del usuario con la interfaz. . . 104
4.1. Registro de Información de los Objetos. . . 105
4.2. Imágenes utilizadas para obtener el conjunto de patrones de un objeto. 109 4.3. Imagen utilizada para validar el proceso de clasificación . . . 115
4.4. Prueba de clasificación simultanea . . . 116
4.5. Cobertura de la señal prueba 1. . . 117
4.6. Cobertura de la señal prueba 2. . . 118
4.7. Cobertura de la señal prueba 3. . . 119
4.8. Intefaz del Algoritmo Landmarc. . . 120
4.9. Distribución de las etiquetas . . . 121
4.10. Coordenadas obtenidas con base al valor ithvecinos . . . 123
4.11. Imagen prueba. . . 124
4.12. Proyección de Información virtual. . . 126
Índice de cuadros
1.1. Frecuencias de Operación: Rangos y principales aplicaciones. . . 16
3.1. Herramientas utilizadas en la adquisición de imágenes.[22] [23] . . . 74
4.1. Adquisición de Imágenes. . . 107
4.2. Resultados de la etapa de representación y descripción. . . 108
4.3. Base de Conocimiento (Patrones Clase 1). . . 110
4.4. Base de Conocimiento (Patrones Clase 2). . . 111
4.5. Base de Conocimiento (Patrones Clase 3). . . 112
4.6. Base de Conocimiento (Patrones Clase 4). . . 113
4.7. Base de Conocimiento (Patrones Clase 5). . . 114
4.8. Eficiencia y error del proceso de clasificación. . . 115
4.9. Rssi EM (S) . . . 121
4.10. Rssi ER (θ) . . . 122
4.11. Distancia Euclidiana (E) . . . 122
4.12. Coordenadas Actuales (x, y, z) vs. Estimadas (x0, y0, z0) . . . 123
4.13. Datos del SRAO. . . 124
4.14. Datos del sistema de radiolocalización. . . 125
4.15. Integración de la Información. . . 125
1 Introducción
Es tan común hoy en día sentarse frente a una computadora para realizar tareas espe- cíficas que cada vez se realizan en menor tiempo y con mayor facilidad. Conforme van surgiendo adelantos tecnológicos se logra una mejor interacción con éstos dispositivos, el diseño de los sistemas es indudablemente más amigable y robusto. Sin embargo, sin la creación de una Interfaz entre el usuario y la computadora ésta no sería más que una simple máquina, de ahí la importancia de como lograr una comunicación entre el hombre y una computadora. Hasta hoy en día, la mayor parte de los diseños de una interfaz gráfica se basan en la creación de ambientes totalmente virtuales. Tecnologías como la Realidad Aumentada, proporcionan una novedosa forma de comunicación que combina herramientas virtuales con el uso de objetos cotidianos.
El presente trabajo de investigación muestra el diseño de una Interfaz Gráfica de Usua- rio utilizando Realidad Aumentada y la integración de dos tecnologías: la Identificación por Radiofrecuencia y técnicas de visión artificial. Para proporcionar al lector una me- jor comprensión del trabajo realizado en esta tesis se describen a continuación los conceptos claves.
1.1. Conceptos básicos
1.1.1. Interfaz Gráfica de Usuario
Las Interfaces gráficas de usuario, ofrecen un lenguaje visual (imágenes) consistente pa- ra representar la información almacenada en un dispositivo electrónico. Esto hace que sea más fácil para los usuarios trabajar y utilizar programas. Utiliza una combinación de tecnologías y dispositivos para proporcionar una plataforma en la que el usuario pueda interactuar con el sistema para realizar tareas y producir información[24]. En la actualidad se considera que existen dos categorías de interfaces: WIMPS y Post- WIMPS. A continuación se describe brevemente en que consiste cada una.
1.1.1.1. WIMPS (Windows, Icon, Menus, Pointers)
Este tipo de interfaces tiene sus inicios en los años ochentas, su invención se debe a Douglas Englebar quien desarrolló un proyecto denominado Human Augmentation
Capítulo 1 Introducción
Project en los años sesentas. WIMPS es uno de los más exitosos diseños de interfaz de usuario, incluso aunque el mouse, fue mostrado por primera vez hace casi 40 años, la invención de Englebart todavía continua siendo la herramienta dominante para la interacción con computadoras (ver Figura 1.1).
Figura 1.1: Ejemplos de Interfaces WIMPS.
1.1.1.2. Post-WIMPS(Windows, Icon, Menus, Pointers)
Son interfaces transparentes que su funcionamiento no depende de ventanas, iconos, menús ni de punteros, ya que permiten que el usuario manipule directamente los objetos de manera similar a como lo realiza en el mundo real. Es una forma más realista en la cual el usuario puede interactuar con un sistema [25].
1.1.1.3. Interfaz Natural de Usuario
La Interfaz Natural de Usuario (NUI, Natural User Interface) , es un tipo de interfaz en la que el usuario interactua con la computadora de la misma forma en como lo hace con el mundo físico, utilizando su voz, manos y otras partes del cuerpo (ver Figura 1.2). Otra característica importante es que una interfaz natural le permite al usuario realizar acciones a través de los gestos, movimientos o por sus reacciones, sin necesidad de utilizar dispositivos de entrada como el teclado o el mouse[26]. Existen interesantes desarrollos en esta área realizados por investigadores de Microsoft, que a partir del desarrollo de tecnologías utilizando el dispositivo kinect pretenden innovar en la manera en como nos comunicamos con los sistemas.
2
1.1 Conceptos básicos
Figura 1.2: Ejemplo de una Interfaz Natural de Usuario.
En la siguiente sección de este capítulo se define con más detalle la Tecnología de Realidad Aumentada, así como sus características principales y los diversos tipos de Interfaces que existen actualmente utilizando está técnica.
1.1.2. Realidad Aumentada
La Realidad Aumentada es una técnica que brinda a los usuarios un percepción directa o indirecta de un ambiente real añadiendo a los objetos reales información virtual, como pueden ser, imágenes, video, texto, modelos virtuales en 3D, entre otros (ver Figura 1.3).
Figura 1.3: Ejemplos de Aplicaciones de Realidad Aumentada
Capítulo 1 Introducción
En 1994 Paul Milgram y Fumio Kishino [27] definen el concepto de realidad de Milgram- Virtuality Continuum o Realidad Mixta. Este principio considera cuatro realidades tal como se muestra en la Figura 1.4. Con base en la imagen se puede observar que la Realidad Aumentada esta más relacionada con los ambientes reales a diferencia de la Realidad Virtual que tiene sus principios en la creación de ambientes ficticios.
Figura 1.4: Milgram-Virtuality Continuum
Otra definición relevante es la del investigador Azuma[28] creada en el año de 1997.
Él cual define a la RA como una variación de los Entornos Virtuales. Sin embargo a diferencia de éstos, la RA no mantiene inmerso al usuario en una interfaz totalmente virtual, sino que permite superponer información virtual a objetos del mundo real con el propósito de enriquecer no solo la información de los mismos sino también del entorno.
La RA fue desarrollada en los años 90’s con fines de investigación debido a que los componentes necesarios para su funcionamiento no estaban al alcance de todos. Sin embargo, en la actualidad debido al aumento de las capacidades de los dispositivos electrónicos ya es posible desarrollar una gran variedad de aplicaciones.
La Realidad Aumentada (RA) es una tecnología muy utilizada en el diseño de interfaces naturales de usuario, en la que el usuario puede usar los objetos reales para manipular contenido virtual. Aunque existe una variación conocida como Realidad Aumentada Tangible (ver Figura 1.5), que mezcla elementos de RA, de Interfaces Perceptuales de Usuario (IPU) e Interfaces Tangibles de Usuario (ITU).
4
1.1 Conceptos básicos
Figura 1.5: Realidad Aumentada Tangible una convergencia de RA, ITU e IPU.
1.1.2.1. Características
Para el diseño de un sistema de RA es necesario cubrir con las siguientes características[29]:
Combinar elementos de un entorno real con elementos virtuales para la creación de una realidad mixta en tiempo real1.
El reconocimiento de las señales y su reconstrucción se ejecutan en tiempo real Las aplicaciones son interactivas.
Existe una alineación geométrica entre objetos virtuales y los reales en conjunto con el espacio, con el propósito de darles una coherencia espacial.
1.1.2.2. Técnicas de Interacción
En el año 2006, Haller[25] realizó un análisis de los principales métodos de interacción en aplicaciones de realidad aumentada. Dichas técnicas de interacción se describen a continuación.
- Interfaces Tangibles basadas en el uso de Marcadores
Este tipo de interfaces aumentan el mundo físico real emparejando información digital con entornos y objetos físicos. En ellas, el usuario puede manipular un elemento real al que se le ha colocado un marcador (ver Figura 1.6), y los resultados son reflejados en los movimientos del objeto virtual asociado[30].
1Cuando se menciona que una aplicación se ejecuta en tiempo real se refiere a que responde a estímulos dentro de un límite de tiempo por debajo del umbral de percepción del usuario.
Capítulo 1 Introducción
Figura 1.6: Ejemplo de marcadores utilizados para identificar objetos virtuales.
Existen varias técnicas de interacción basadas en el uso de marcadores. Una técnica consiste en utilizar marcadores de dos tipos, uno de datos y el otro de funciones con los que el usuario interactúa para lograr distintos efectos. Otra técnica es usar marca- dores en los dedos. En[25] se presenta un sistema de interacción en el cual el usuario toca objetos virtuales renderizados frente de una televisión, con ayuda del marcador situado en su dedo. Una variación de ésta consiste en dotar al usuario de guantes con marcadores.
- Interfaz basada en movimiento corporal
Es posible interactuar con los sistemas de realidad aumentada de forma natural, es decir, mediante la detección y seguimiento del movimiento de alguna parte del cuerpo (ver Figura 1.7). Por lo cual es posible clasificarlas en: seguimiento de la posición de manos y de los dedos, de la dirección de la cabeza, y de los ojos.
(a) Interacción de un usuario con una In- terfaz virtual mediante el movimiento de manos.
(b) Videojuego controlado por el movi- miento corporal de los usuarios
Figura 1.7: Ejemplos de una Interfaz basada en el Movimiento Corporal.
6
1.1 Conceptos básicos
Las técnicas para realizar el seguimiento son distintas, unas funcionan detectando la posición y orientación de las manos, seguimiento magnético, seguimiento inercial, sistemas de reconocimiento basados en visión, entre otros[31].
El dispositivo Kinect es un ejemplo de una interfaz que basa su funcionamiento en el reconocimiento de los rasgos corporales de los usuarios y sus movimientos (ver Figura 1.8). Actualmente es utilizado principalmente como sensor para la consola xbox 360, Sin embargo, ha sido el dispositivo más vendido en el año 2011 y a partir de ese momento ha sido utilizado en el desarrollo de múltiples aplicaciones científicas y co- merciales [32].
Figura 1.8: Kinect: Proceso de reconocimiento[1].
- Interacción utilizando dispositivos de bajo costo
Muchos de los sistemas de RA hacen uso de dispositivos accesibles en el mercado, a los que incorporan sistemas de seguimiento, y los utilizan como dispositivos para interacción.
Entre los dispositivos más utilizados actualmente como herramientas en este tipo de interacción son: infrarrojos, cámaras web, teléfonos celulares. Por ejemplo, en [33] se presenta un sistema de interacción que utiliza como métodos de entrada y de salida una pizarra y un PDA (Asistente Digital Personal) diseñados de tal forma, que el sistema
Capítulo 1 Introducción
de seguimiento es capaz de detectar la posición y orientación sobre un mapa usando visión por computadora.
Otro de los dispositivos más aprovechados en entornos de realidad aumentada es el Wiimote de la videoconsola Nintendo Wii (ver Figura 1.9), el cual implementa tres técnicas de selección: Direct-touch (tocar un objeto virtual directamente), Ray-casting (lanzar un rayo desde el dispositivo hasta el objeto), y Lens (técnica de utilización de un dispositivo a modo de lupa virtual). Los teléfonos celulares también han sido ampliamente utilizados como sistemas de interacción. Dichas técnicas se basan en la utilización de la cámara trasera del móvil para detectar marcadores.
(a) Dispositivo Wiimote de Nintendo (b) AR en dispositivos móviles
Figura 1.9: Ejemplo de dispositivos de bajo costo.
- Interfaces con Interacción multimodal
Los sistemas multimodales son aquellos que procesan métodos de entrada naturales combinados (voz, lápiz, táctil, gestos de mano, guiños, y movimientos corporales) de forma coordinada con la salida multimedia del sistema[34] (ver Figura 1.10).
Es posible hacer diversas combinaciones en estos tipos de sistemas, una de ellas es la que integra gestos, reconocimiento de voz, y detección del movimiento o dirección de la cabeza. Un claro ejemplo de un sistema multimodal se describe en[35], el cual realiza una integración de reconocimiento de gestos, seguimiento del movimiento de ojos, y análisis de la dirección de la cabeza, para un sistema de videoconferencia con interac- ción multimodal basado en RA. En esta aplicación el usuario es capaz de interactuar con el sistema usando gestos de las manos con marcadores y movimiento de ojos y cabeza.
8
1.1 Conceptos básicos
Figura 1.10: Sistema Multimodal[2].
1.1.3. Visión Artificial
La visión es uno de los sentidos más importantes que tiene el ser humano, la empleamos para percibir el medio que esta a nuestro alrededor y detectar objetos que son de interés por medio de sus rasgos descriptivos. La visión humana es capaz de describir automáticamente una textura, un color, bordes, una representación bidimensional de una tridimensional, etc.
Actualmente uno de los mayores retos consiste en dotar a las máquinas de capacidad para captar y procesar su entorno de forma similar a los seres humanos. Debido a ello, surge un subcampo de estudio dentro de la inteligencia artificial, la visión por computadora o visión artificial. Dicha área le brinda a las máquinas la capacidad de observar a partir de imágenes bidimensionales y deducir la estructura y las propieda- des del mundo tridimensional. El utilizar sistemas dotados de una capacidad visual artificial no solo permite a los usuarios liberarse de ciertas tareas que podrían resultar tediosas y en ocasiones peligrosas sino también de realizar otras labores imposibles para el ser humano[36]. Es preciso reconocer que en ocasiones la visión artificial no es la mejor solución a un problema, por lo que la solución humana resulta ser la más con- veniente. A pesar de eso, las soluciones humanas tienden a ser inexactas y en algunas situaciones, lentas. No obstante, la solución humana es menos estructurada que una solución artificial y muchos de los problemas de la visión artificial requieren un nivel
Capítulo 1 Introducción
de inteligencia superior al que puede tener la máquina. Sin embargo, a pesar de las limitaciones antes mencionadas, cada día es mayor el número de aplicaciones de visión artificial.
Entre las aplicaciones se diferencian aquellas que son una herramienta por si sola y otras que son parte de un sistema multisensorial. El primer caso engloba aplicaciones en las que el único sensor utilizado es el de visión. El segundo caso se refiere a aquellos sistemas donde la visión constituye una capacidad sensorial adicional. A continuación se describe de forma general algunos ejemplos de campos de aplicación.
Robótica. En este campo, la información proporcionada por la visión es valida- da, comparada e integrada con el resto de información proporcionada por otro tipo de sensores. Como resultado es posible reconstruir una escena 3-D, que per- mite que el robot tenga movimientos autónomos[37]. Algunos sistemas añaden módulos de reconocimiento 3-D con el fin de identificar la presencia de deter- minados objetos y tomar decisiones hacia cual debe dirigirse o cual debe evitar.
Esta aportación no solo puede utilizarse a la robótica, sino que puede utilizarse para dotar a diversas máquinas de un movimiento automático. También se puede estimar el movimiento de vehículos, entre otras aplicaciones.
Biología, Geología y Meteorología. En el campo de la biología es posible analizar imágenes microscópicas para identificar organismos por sus propiedades o para contar el número de microorganismos o células presentes en una imagen.
En imágenes macroscópicas es posible identificar texturas en vegetales o carac- terísticas de diferentes áreas naturales por su color u observar el crecimiento de especies por medio de una diferencia de imágenes. En[38] se describe un siste- ma capaz de detectar y separar naranjas podridas y asegurar la calidad de la producción.
En geología se utilizan técnicas de visión artificial para detectar movimientos de terremotos o realizar reconstrucción de áreas en 3-D mediante visión estereoscó- pica. Otra aplicación es la identificación del grado de floración de un determinado cultivo.
En Meteorología se utilizan técnicas de detección y predicción del movimiento, la evolución de algunas masas nubosas, u otros fenómenos meteorológicos mediante el análisis de imágenes recibidas vía satélite.
Medicina. Las aplicaciones en las que se utiliza el procesamiento de imágenes dentro de la comunidad médica en su mayoría son orientadas hacia el diagnostico de dolencias o enfermedades. La visión artificial también es utilizada en la de- tección de lesiones vasculares o diferenciar tejidos sanos de tejidos cancerígenos o infectados mediante técnicas de color. Por citar otra aplicación, en[39] se des- cribe un sistema utilizado para medir parámetros de movimiento cardíaco sobre imágenes de resonancia magnética.
10
1.1 Conceptos básicos
Reconocimiento y Clasificación. Otra aplicación es la clasificación de objetos y el recuento de los mismos. Por ejemplo, en procesos industriales es posible verificar la calidad de los productos evitando que los defectuosos se mezclen con los productos finales. También existen métodos para el reconocimiento de huellas dactilares que es ampliamente utilizado en el control de acceso y de asistencia.
Otras de las áreas de aplicaciones es el reconocimiento óptico de caracteres, ya que se puede aplicar en la lectura de placas vehiculares, reconocer caracteres de documentos impresos, entre otras[40].
1.1.3.1. Áreas afines
El propósito de un sistema de visión artificial es crear un modelo del mundo real a partir de imágenes. Para cumplir con tales expectativas se utilizan técnicas desarrolladas por diversas áreas, como son[41]:
Procesamiento de Imágenes. El procesamiento de imágenes tiene como ob- jetivo mejorar el aspecto de las imágenes y resaltar detalles de interés. Emplea algoritmos en las primeras etapas de un sistema de visión para mejorar alguna información en particular y/o suprimir el ruido[42].
Computación Gráfica. Es un campo de la informática, donde se utilizan computadoras tanto para generar imágenes gráficas a partir de formas geomé- tricas simples como lineas o círculos, así como integrar o cambiar información visual y espacial probada del mundo real. Sin embargo la visión artificial realiza el proceso inverso ya que estima la geometría y características de las imágenes por lo cual utiliza las técnicas de la computación gráfica para representar las superficies, curvas y otros rasgos geométricos[43].
Reconocimiento de patrones. Es la ciencia que se ocupa de los procesos sobre ingeniería, computación y matemáticas relacionados con objetos físicos o abstractos, con el fin de extraer información numérica y simbólica que permita establecer propiedades entre conjuntos de dichos objetos[44].
Inteligencia Artificial. En ciencias de la computación se conoce a la Inteligen- cia Artificial como la capacidad de razonar que tiene un agente no vivo. Esta área es utilizada para analizar el contenido las imágenes que se requieren procesar y obtiene una representación simbólica de su contenido. Este proceso se realiza en tres etapas: percepción, cognición y acción. La percepción convierte señales del mundo en símbolos, la etapa cognitiva manipula estos símbolos para que la etapa de acción los convierta en señales que sean representativas para un cambio en el medio analizado[45].
Psicofísica. Es una rama de la Psicología que se dedica a estudiar la relación entre la magnitud de un estimulo físico y la intensidad con la que este es percibido
Capítulo 1 Introducción
por el observador. Estudia la visión humana, por lo cual sus investigaciones son utilizadas como base para el funcionamiento de los sistemas de visión artificial.
Las técnicas más utilizadas son la obtención de características de las imágenes así como mediciones de la geometría de objetos que se detectan y la interpretación de esa información geométrica[46].
1.1.4. Identificación por Radiofrecuencia
La Identificación por Radiofrecuencia (RFID por sus siglas en inglés: Radio Frequency IDentification) es una tecnología utilizada para almacenar y recuperar de forma segura información remota contenida dentro del chip de una etiqueta. El principal objetivo de esta tecnología es transmitir la identidad de un objeto mediante ondas de radio.
Sin embargo, también brinda la posibilidad de guardar dentro del chip información que para el usuario podría ser de gran importancia, el tamaño de ésta puede ir desde un bit hasta KBytes, dependiendo principalmente del sistema de almacenamiento que posea la etiqueta[47].
1.1.4.1. Aplicaciones
Una de las principales características de la tecnología de RFID es su capacidad de identificar, localizar, monitoreo o seguimiento de objetos, personas e incluso animales, sin que exista una linea directa de visión entre las etiquetas y el lector, salvo algu- nas aplicaciones muy particulares. Debido a estas funciones surge un gran número de aplicaciones que se adaptan a diversos sectores.
Hoy en día, la tecnología RFID tiene potencial para prácticamente cualquier área de la industria, el comercio y los servicios, donde los artículos que se manipulan son asociados a cierta información para posteriormente procesarlos. Algunos ámbitos son:
Transporte y distribución.
• Seguimiento y trazabilidad.
• Etiquetado de cargamento.
Empaque de artículos.
• Logística en la cadena de suministro.
• Seguimiento de cajas.
Industria y fabricación.
• Autentificación del producto.
• Identificación del tiempo de vida de los productos.
12
1.1 Conceptos básicos
Seguridad y control de acceso.
• Gestión de pasaportes y visas.
• Seguimiento de niños.
• Seguimiento de equipaje.
• Prevención de falsificaciones.
• Identificación de empleados.
• Control de Tiempo y asistencia.
• Pagos automáticos.
Monitorización y sensado.
• Presión, temperatura, volumen y peso.
Identificación de animales.
En la figura Figura 1.11 se muestran algunos casos de estudios proporcionados por la empresa IDTechEx2, la cual recopila diversos casos a nivel mundial, así como otra información relevante relacionada con la identificación con radiofrecuencia.
Figura 1.11: Casos de estudio de aplicaciones de RFID [3]
2http://www.idtechex.com
Capítulo 1 Introducción
Las aplicaciones anteriores se presentan desde un punto de vista general. Sin embargo, el enfoque de este trabajo es integrar la tecnología de RFID con el área de realidad virtual. Recientemente ésta tecnología a tenido un gran auge en el desarrollo de nuevas interfaces de usuario cuyo objetivo es lograr la interacción de objetos reales en ambien- tes virtuales. Tal es el caso de Takuma[48], el cual describe el desarrollo de un sistema multiusuarios que permite mejorar el trabajo en equipo, en la cual los usuarios pueden añadir información virtual a sus herramientas de trabajo. Más adelante se mostrará un breve estado del arte sobre otros trabajo y aplicaciones en esta área.
1.1.4.2. Componentes
Todo sistema de RFID está conformado por tres elementos principales (ver Figura 1.12)[49]:
Una etiqueta RFID (ver fig. 1.12a) con capacidad de almacenamiento de da- tos. También es conocido como transponder de las palabras en inglés TRANS- mitter/resPONDER, términos que hacen referencia al funcionamiento de la tec- nología. La etiqueta se adhiere o se inserta al objeto a localizar para que porte información sobre él mismo.
La etiqueta se compone de una unidad de RF y una memoria digital que contie- ne un código único de identificación electrónica con una longitud aproximada de 12 bits. Cuando una etiqueta RFID pasa por el lector, se detecta una señal de activación y transmite los datos al lector[50].
Un lector. Es el encargado de enviar una señal de radiofrecuencia para detec- tar dentro de un rango determinado a las posibles etiquetas. Éstos dispositivos tienen una interfaz de comunicación que permite enviar los datos recibidos a una computadora para su procesamiento. Sin embargo, alguno de ellos llevan integrados un programador para escribir información en las etiquetas.
Después de que el lector recibe toda la información de las etiquetas, puede utilizar algoritmos para evitar ambigüedades en la transmisión entre una etiqueta actual y otra nueva. Estos algoritmos le indican a la etiqueta que deje de transmitir, es decir, validan las lecturas de las etiquetas en un espacio corto de tiempo. También existen otros tipos de algoritmos, los cuales se enfocan en leer a las etiquetas por su ID y les indican el tiempo en el cual debe de transmitir. Estos mecanismos se utilizan principalmente para impedir la colisión de información.
Los lectores pueden ser más complejos dependiendo de la etiqueta, es decir, deben ser capaces de acondicionar la señal, detectar y corregir errores. Ademas pueden trabajar a más de una frecuencia.
Computadora, su propósito es gestionar el sistema de RFID con el que se desea trabajar, y en muchas de las aplicaciones de administrar la información recibida en una base de datos.
14
1.1 Conceptos básicos
(a) Etiqueta de Radiofrecuencia
(b) Lector RF
Figura 1.12: Componentes de un sistema RFID.
1.1.4.3. Clasificación de los sistemas de RFID
Debido a la diversidad de áreas de aplicación de esta tecnología existen a su vez dife- rentes requisitos técnicos que se adecuan a cada una. Por lo que resulta difícil mantener una visión general de los criterios necesarios para cada sistema.
Con base en las características técnicas y operacionales de los componentes antes men- cionados, es posible clasificar a los Sistemas de RFID de la siguiente manera[49]:
Según a su capacidad de programación de etiquetas:
• Sólo Lectura
• Una escritura y múltiples lecturas
• Lectura/Escritura
De acuerdo al modo de alimentación de las etiquetas
Capítulo 1 Introducción
• Activos: Cuando las etiquetas requieren de una batería para transmitir in- formación.
• Pasivos: Las etiquetas no requieren de una batería.
Según el rango de frecuencia de operación. Ésta se refiere a la frecuencia electromagnética que las etiquetas utilizan para comunicarse u obtener energía (ver Tabla 1.1)[4].
• Baja Frecuencia (BF)
• Alta Frecuencia (AF)
• Ultra Alta Frecuencia (UHF )
• Frecuencias de Microondas
Cuadro 1.1: Frecuencias de Operación: Rangos y principales aplicaciones.
Con base en el protocolo de comunicación:
• Dúplex: La etiqueta transmite su información en cuanto recibe la señal del lector y solo mientras dura ésta. Ésta comunicación a su vez se divide en:
◦ Half dúplex, cuando la etiqueta y lector transmiten en turnos alterna- tivos.
◦ Full dúplex, cuando la comunicación es simultánea. Es estos casos la transmisión de la etiqueta se realiza a una frecuencia distinta que la del lector.
• Secuencial: En este tipo de comunicación el campo del lector se apaga a intervalos regulares, momento en el que la etiqueta aprovecha para enviar
16
1.1 Conceptos básicos
su información. Funciona con etiquetas activas, debido a que ésta no puede aprovechar toda la potencia que le envía el lector y requiere una batería adi- cional para transmitir, Sin embargo, esto incrementaría el costo de sistema RFID.
Según el principio de propagación (ver Figura 1.13):
• Inductivos: utilizan el campo magnético creado por la antena del lector para alimentar el tag. Opera en el campo cercano y a frecuencias bajas (BF y AF).
• Propagación de ondas electromagnéticas: utilizan la propagación de la onda electromagnética para alimentar la etiqueta. Opera en el campo lejano y a muy altas frecuencias (UHF y microondas).
(a) Inductiva (b) Magnética
Figura 1.13: Principios de Propagación[4].
1.1.4.4. Principio del Funcionamiento
El la Figura 1.14 se muestra el funcionamiento de un sistema de RFID. El lector envía ondas de radiofrecuencia a la etiqueta, las cuales son captadas por la micro antena de ésta. Las ondas activan el microchip, el cual, a través de la micro antena y las ondas de radiofrecuencia, transmite al lector información almacenada en su memo- ria. Posteriormente, el lector recibe la información que tiene la etiqueta para después procesarla[51].
Capítulo 1 Introducción
Figura 1.14: Esquema de un sistema RFID.
La comunicación que existe entre el lector y la etiqueta se realiza mediante señales de radiofrecuencia con una determinada frecuencia que generan las antenas del lector y las etiquetas, cabe mencionar que estas frecuencias pueden ser iguales o armónicas.
Debido a esto, se deben considerar determinadas características para configurar una aplicación, tales como el alcance, la velocidad, la seguridad con base en el rango de frecuencia, el tipo de antenas, el tipo de etiquetas y algunos otros parámetros que se pueden configurar para una determinada aplicación.
1.2. Estado del Arte
En este apartado se mencionarán algunos de los trabajos más importantes en el desa- rrollo de Interfaces Gráficas de usuario y sus aportaciones a este ámbito.
SurfaceFusion
También existen aplicaciones que sirven de apoyo al trabajo en equipo, como la interfaz SurfaceFusion (ver Figura 1.15)[52] desarrollada por un grupo de investigadores de Microsoft. Dicha interfaz consiste en un escritorio interactivo que identifica objetos al ser colocados sobre una superficie de acrílico. En la parte inferior de la mesa se colocaron dos antenas de radiofrecuencia encargadas de leer la información contenida en los chips de las etiquetas. Las funciones básicas que este sistema permite son: agregar, modificar y eliminar información virtual a cada uno de los objetos. Para la elaboración de este proyecto se utilizó UHF como frecuencia de transmisión y el lector de RFID XR400.
18
1.2 Estado del Arte
Figura 1.15: SurfaceFusion.
BlueTable
BlueTable[53] es un proyecto con la capacidad de detectar la presencia de dispositivos móviles (ver Figura 1.16). Su funcionamiento consiste en colocar sobre la mesa los dispositivos a detectar por medio de una cámara y a su vez pueda iniciar una conexión vía bluetooth para el intercambio de información. La principal ventaja de esta técnica es que cada dispositivo móvil posee un ID único y que es posible conocer la ubicación exacta del dispositivo gracias a la comunicación bluetooth.
La interfaz contiene sensores que determinan la presencia de los objetos al ser colocados sobre la tabla, y una cámara infrarroja con la cual detecta o identifican el celular empleando técnicas de visión ya sea con la luz infrarroja del puerto IRDA o por la detección de un led e incluso por la luz de la pantalla del dispositivo.
Figura 1.16: BlueTable.
Capítulo 1 Introducción
Tangible Design Support System Using RFID Technology
En [48] se explica el diseño de una interfaz creada para ayudar en el diseño de interiores (ver Figura 1.17), en la cual, el usuario coloca sobre un escritorio los muebles en tamaño miniatura, estos objetos contiene una etiqueta de radiofrecuencia necesaria para que un lector lo identifique y se integre dentro de un ambiente virtual, de esta manera se tiene una vista previa del trabajo realizado.
Figura 1.17: Tangible Design Support System Using RFID Technology
Hinske y Langheinrich[54] crean una interfaz multiusuarios de realidad aumentada para un juego de guerra. Igualmente que las aplicaciones antes mencionadas, su arquitectura esta conformada por un escritorio donde se colocan las piezas de juego. Cada elemento tiene añadido un identificador de RF y adicionalmente se utilizó el kit de robótica LEGO MindStorms NXT, este robot unido con la antena se desplazan sobre dos vías ortogonales a lo largo del tablero con el fin de obtener una lectura de las etiquetas con una velocidad de 4 ciclos por segundo. Su movimiento a lo largo del eje-x es en zig-zag y avanza sobre el eje-y a razón de 1 cm (ver Figura 1.18).
Figura 1.18: Desplazamiento de la Antena RF usando el robot NXT.
20
1.3 Planteamiento del Problema
Los trabajos anteriormente expuestos son ejemplos de interfaces de RA. La mayoría mejora la forma en cómo el usuario interactúa con el entorno porque brinda la posibili- dad de tomar del mundo real aquellos objetos necesarios para manipularlos agregando información virtual. Sin embargo, a pesar de la tecnología que emplearon, ninguno aporta un método que identifique simultáneamente objetos físicamente iguales. De to- do esto surge la necesidad de eliminar estas posibles ambigüedades en el proceso de identificación.
1.3. Planteamiento del Problema
Actualmente las Interfaces de usuario de los sistemas de Realidad Virtual necesitan hacer sentir al mismo, una sensación de mayor inmersión al unir los entornos virtuales con los objetos de uso cotidiano. Por lo cual, la capacidad de identificar a dichos objetos debe ser eficiente y confiable. Así mismo, una consideración importante es que los objetos no son siempre diferentes, es decir; se pueden encontrar objetos idénticos lo cual podría ocasionar problemas de ambigüedad en el proceso de reconocimiento.
En el presente trabajo, se propone eliminar la ambigüedad del proceso de reconoci- miento de objetos en los sistemas de visión integrando la tecnología de radiofrecuencia.
Es decir, utilizando la visión artificial la cual extrae características de los objetos reales (la cual se compara con una base de conocimiento) y la identificación por radiofrecuen- cia, se pretende lograr una localización e identificación única en el espacio de trabajo con respecto a los demás objetos, aun cuando existan objetos físicamente semejantes.
1.4. Objetivos
En esta sección se presenta los objetivos, general y particulares, que se propusieron como trabajo de investigación.
1.4.1. Objetivo General
Desarrollar una interfaz de Realidad Aumentada para interactuar en un ambiente vir- tual con objetos reales y eliminar ambigüedades en la localización e identificación de objetos semejantes sin que estos contengan información ajena a su naturaleza (marca- dores visuales).
Capítulo 1 Introducción
1.4.2. Objetivos Particulares
Para alcanzar el objetivo general propuesto se tienen los siguientes objetivos particu- lares:
Estudiar y seleccionar una de las tecnologías alternas para la localización de objetos en sistemas de visión.
Estudiar e implementar un sistema de reconocimiento de objetos utilizando téc- nicas de visión artificial.
Localizar la posición de objetos dentro de un espacio de trabajo con la tecnología de RFID y algoritmos de radiolocalización.
Integrar ambas tecnologías para el proceso de identificación de objetos.
Agregar información virtual a los objetos y almacenar esa información en una base de datos.
1.5. Alcance
Este trabajo de tesis se centra en el desarrollo e implementación de un prototipo de una Interfaz de Realidad aumentada que estará limitada a un espacio de trabajo de 70 cm de ancho, 120 cm de largo y de 120cm de alto. Esto incluye:
Creación de un sistema de reconocimiento automático de objetos utilizando algo- ritmos y técnicas de visión artificial. Este sistema será capaz de discriminar seis objetos entrenados previamente, de los cuales dos de ellos son iguales, con el fin de verificar la precisión del proceso de reconocimiento y localización de objetos idénticos. Adicionalmente, el sistema de visión estará limitado solo a identificar objetos dentro del área de trabajo establecida, es decir, es un sistema de visión que funciona en interiores, con condiciones de iluminación variables, ya que se escogieron rasgos descriptivos invariantes a la iluminación, rotación y factor de escala.
Implementación de un algoritmo de localización de objetos exclusivamente dentro del área de trabajo establecida. Para lo cual, se utilizó la tecnología de Identifi- cación por Radiofrecuencia en la banda UHF.
Integración de los módulos de localización con RFID y el sistema de reconoci- miento de objetos con el propósito de mejorar la precisión en el reconocimiento de objetos con características similares.
Incorporación de información virtual a los objetos utilizados en la Interfaz Grá- fica. La información que se mostrará solo será la almacenada previamente en el sistema de registro de objetos.
22
1.6 Organización de la Tesis
1.6. Organización de la Tesis
La distribución de la tesis esta organizada de la siguiente forma:
Capítulo 1. En este capítulo se presentan los conceptos básicos de las tecnologías in- volucradas en el desarrollo de esta tesis. Así mismo, un breve estudio de trabajos relacionados, la justificación de este trabajo, los objetivos generales y particulares.
Capítulo 2.Se proporciona un marco teórico con información de las técnicas utilizadas en cada uno de los módulos que conforman la Interfaz de Realidad Aumentada. esto incluye:
El proceso de Identificación Visual, una introducción de los conceptos básicos y un resumen de los componentes involucrados en el desarrollo de un sistema automático de reconocimiento de objetos (SRAO), así como cada una de sus etapas.
La tecnología de Identificación por radiofrecuencia en la banda UHF, por lo cual se presenta una introducción del funcionamiento de esta tecnología así como conceptos claves para su implementación.
Los conceptos y los componentes elementales de la tecnología de Realidad Virtual (RV). Particularmente se enfoca al uso de Realidad Aumentada (RA) para el desarrollo de una interfaz de usuario.
Capítulo 3.Describe la implementación de las etapas involucradas en la creación de la Interfaz, las cuales son:
Identificación de objetos mediante técnicas de visión artificial.
Implementación de un algoritmo de radio-localización utilizando la tecnología de radiofrecuencia.
Implementación del sistema de Realidad Virtual.
Una etapa de integración de las tres etapas descritas anteriormente.
Capítulo 4.Este capítulo se muestran los resultados obtenidos en el desarrollo de este trabajo. Dichos resultados se organizarón con base en cada una de las etapas que conforman a la Interfaz de Realidad Aumentada.
Capítulo 5.Finalmente, se mencionan las conclusiones de este trabajo de tesis así como el trabajo a futuro.
2 Marco Teórico
En el presente capítulo se proporciona una base teórica de las principales técnicas utilizadas en el desarrollo de este trabajo, con el propósito de que se logré una mejor comprensión de los módulos desarrollados para la creación de la Interfaz de Realidad Aumentada.
2.1. Visión Artificial
Una de las ciencias que permite identificar objetos del entorno mediante sus rasgos vi- suales es la visión artificial. Sus principales labores son el desarrollo de la base teórica y algorítmica para extraer y analizar información útil sobre el mundo de forma auto- mática a partir de una imagen, un conjunto de imágenes, o una secuencia de imágenes.
Tal información puede estar relacionada con el reconocimiento de un objeto genérico, la descripción tridimensional de un objeto desconocido, la posición y orientación del objeto observado o la medición de cualquier característica espacial de un objeto[55].
2.1.1. Componentes de un Sistema de Visión Artificial
Un sistema de visión artificial de propósito general esta conformado por dos módulos uno para la formación de imágenes y el otro dedicado a su procesamiento. A su vez, el primer apartado se compone de subsistemas de iluminación, de captura de la imagen y de adquisición de la señal en la computadora. Posteriormente, esta señal es procesada mediante algoritmos que la convierten en información que pueda ser utilizada para la representación visual de los objetos captados.
Capítulo 2 Marco Teórico
Figura 2.1: Componentes de un Sistema de Visión Artificial
Dependiendo de la aplicación del sistema de visión se determinan los elementos que lo integrarán, por lo que en aplicaciones más robustas, el sistema puede vincularse con múltiples receptores para lograr un mejor resultado. Debido a las peculiaridades de cada módulo se describirá a continuación cada uno de los subsistemas ( Figura 2.1).
2.1.1.1. Iluminación
La iluminación del objeto y de la escena tiene un papel muy importante en lo sistemas de visión. Si se tienen condiciones de iluminación inestables o variables se tendrá como resultado un preprocesamiento complejo de la imagen que ocupará mayor tiempo de analizar a la computadora [56].
Debido a que la imagen es una representación de la información de la escena estará en función de las fuentes de luz, las características de la superficie (reflexión, rugosidad) y las relaciones espaciales entre los sensores, superficies y fuentes. Por lo cual un buen sistema debe reducir la complejidad de la imagen a analizar y debe resaltar o suprimir características de la escena u objeto. A continuación se mencionan las técnicas de iluminación más utilizadas en los sistemas de visión (Figura 2.2)[57].
Iluminación Posterior.Permite delínear el contorno de los objetos proporcionan- do un alto contraste entre el fondo y la silueta del objeto. Existen dos tipos de iluminación posterior, la difusa y la direccional. La primera transmite los rayos en diversos ángulos mientras que la direccional los rayos se propagan paralelamente (Fig. 2.2a).
26
2.1 Visión Artificial
Iluminación Frontal Oblicua y Direccional. El ángulo formado por el plano de la superficie y el rayo incidente se conoce como ángulo de incidencia y determina la dirección de la iluminación. Si los haces de luz forman un ángulo de 20 grados con la superficie existe un mayor contraste en objetos con relieves. En la iluminación frontal direccional, el ángulo entre la superficie y los rayos es de 30 grados, por lo cual en contraste reduce, sin embargo, incrementa la cantidad de información que se obtiene de superficies planas.
Iluminación Difusa. Permite iluminar desde el eje de la cámara con luz uniforme, incluyendo el centro de la imagen. Como resultado de ello se crea un contraste entre superficies especulares y difusas, realza detalles grabados e ilumina unifor- memente superficies reflectivas (Fig. 2.2b).
Iluminación de campo Oscuro. Este tipo de iluminación realza el contraste de los grabados, marcas y defectos de los objetos detectados. Para lograr este objetivo, se coloca una luz de alta densidad que incide sobre el objeto con un ángulo pequeño con respecto a la superficie. De esta forma genera zonas brillantes en hendiduras o elevaciones (Fig. 2.2c).
Iluminación de campo Claro. La fuente de luz es uniforme y difusa. Incide sobre la superficie reflectante del objeto con un ángulo pequeño. Utilizada para detección de rayas, fisuras y deformación (Fig. 2.2d).
Iluminación de Día Nublado. La iluminación difusa es suministrada en la misma dirección que el eje de la cámara. Es utilizada para aplicaciones complejas y difíciles que utilizan superficies especulares irregulares y que requieren de una iluminación uniforme, debido a que cualquier reflexión se puede confundir con un defecto (Fig. 2.2e).
(a) Posterior (b) Difusa (c) Campo Oscuro (d) Campo Claro (e) Día Nublado
Figura 2.2: Técnicas de Iluminación [5]
2.1.1.2. Sensores de Imagen
La manera de captar del entorno una imagen requiere de dos elementos básicos: pri- meramente, se necesita un dispositivo físico que sea sensible a una determinada banda
Capítulo 2 Marco Teórico
del espectro electromagnético, el siguiente elemento se conoce como digitalizador, su función es transformar una señal recibida del dispositivo físico y convertirlo en un con- junto de valores discretos del plano de la imagen, es decir, se tendrá una matriz de números enteros donde cada valor representa la intensidad de los objetos dentro de una escena en un tiempo y punto discreto del plano de la imagen[58].
Capturar una imagen se realiza utilizando sensores sensibles a la luz, los cuales mo- difican su señal eléctrica en función de la intensidad luminosa que perciben. Los más utilizados son las cámaras de televisión y los dispositivos de acoplamiento de carga (Charge Coupled Devices-CCD). Los primeros producen una señal continua de video para la creación de una imagen digital con base en el muestreo y cuantización espacial.
El sensor de imagen CCD es un circuito integrado con una matriz de fotodiodos que convierten la energía luminosa.
La capacidad de resolución o detalle de la imagen depende del número de células fotoeléctricas del CCD. Dicho número se expresa en píxeles, por lo tanto a mayor número de píxeles se tendrá una mayor resolución.
2.1.1.3. Tarjeta de adquisición de Imágenes
Permite disponer a la computadora de la información capturada por el sensor de ima- gen, por lo cual se considera como una interfaz entre el sensor y el módulo de proceso.
Algunos aspectos importantes a considerar en las tarjetas son principalmente la velo- cidad de transmisión, el formato de los datos, la profundidad de píxel, la capacidad de captura por disparo y de preprocesado de la imagen, así como la velocidad con la que transfiere de la imagen de la memoria de la tarjeta a la memoria de la computadora, y la capacidad de controlar parámetros de la cámara.
Actualmente existen tarjetas que tienen integrado un Procesador Digital de Señal (DSP) con el fin de realizar algoritmos de análisis de imágenes en la memoria de la tarjeta, acelerando la implementación de los algoritmos de visión[59].
2.1.1.4. Algoritmos de análisis de Imágenes
La principal función de los algoritmos consiste en aplicar las transformaciones y extrac- ciones de información de las imágenes capturadas, con el fin de obtener los resultados para los que haya sido diseñado[59].
2.1.1.5. Sistema de Procesamiento
Son equipos de cómputo que reciben las señales de sincronización para realizar co- rrectamente la captura de las imágenes, tienen la capacidad de procesar los datos
28
2.1 Visión Artificial
proporcionados por las cámaras hasta alcanzar otro tipo de información de más alto nivel. Este nivel dependerá en gran medida de la complejidad de los algoritmos de visión implementados. Dependiendo de las necesidades del Sistema de visión puede utilizarse desde una computadora hasta un cluster de computadoras[59].
2.1.2. Técnicas de seguimiento
Son muchas las técnicas utilizadas para lograr el seguimiento de objetos, entre las más representativas están; los seguidores mecánicos, como por ejemplo los exoesqueletos, los cuales son muy precisos pero limitan el espacio de trabajo. Los seguidores magnéticos, que resultan ser vulnerables a las distorsiones generadas por estructuras metálicas en el medio ambiente. Los posicionadores ultrasónicos, que son sensibles al ruido y tienden a ser inexactos en las gamas altas de frecuencia debido a variaciones en la temperatura del ambiente. La visión por computadora, tiene la capacidad de producir soluciones no invasivas, precisas y de bajo costo, por lo cual es posible utilizar diversos métodos con base en la aplicación para obtener un sistema de seguimiento preciso y robusto[60].
Una clasificación de las técnicas más importantes de seguimiento por visión por compu- tadora se describe a continuación:
2.1.2.1. Seguimiento basado en marcadores
Un método muy popular en la RA es el de poner marcadores especiales o pequeños focos a los objetos para facilitar la tarea de registro. Esto asegura que una o más marcas de alíneación serán visibles en todo momento, en caso contrario el registro no puede realizarse correctamente. Sin embargo, su principal inconveniente es que no siempre es posible utilizarlos ya que son visible durante la escena y no siempre es posible modificar el medio ambiente antes de ejecutar la aplicación (ver Figura 2.3).
(a) Sistema básico de RA [61] (b) Aplicación de RA [62]
Figura 2.3: Ejemplo de seguimiento de Objetos utilizando marcadores
Capítulo 2 Marco Teórico
Incorporar marcadores a la escena ayuda enormemente a lograr dos tareas principales:
la extracción de información de la imagen y la estimación de la posición del objeto rastreado. Muchos de los marcadores constituyen características de la imagen que son fáciles de extraer.
Hay dos tipos de marcadores: marcadores de punto, que proporcionar un punto de correspondencia entre la escena y la imagen obtenido. Los marcadores planares que se utilizan para obtener más información de cada punto, es posible convertirla en una forma plana con esquinas identificables. Un solo marcador planar proporciona las seis restricciones espaciales necesarias para definir un sistema de coordenadas (posición y orientación).
2.1.2.2. Seguimiento sin marcadores
En algunas aplicaciones resulta complicado o indeseable el uso de marcadores en una escena, sobre todo en entornos exteriores o desconocidos. En tales casos, es necesario basarse en rasgos descriptivos del objeto, como son sus bordes, esquinas o textura. Sin embargo, esto incrementa la complejidad del algoritmo de seguimiento.
Encontrar y hacer el seguimiento de puntos o bordes del objeto puede ser complicado debido a que son difíciles de identificar, y en muchos casos no hay suficientes de ellos en la mayoría de los objetos. La oclusión total o parcial de esos puntos da como resultados que el seguimiento tenga errores. Incluso si el movimiento de los objetos es demasiado rápido genera imágenes borrosas. También la iluminación puede cambiar drásticamen- te por el desplazamiento dando lugar a reflexiones y ruido que puede confundir al sistema de seguimiento. Otro aspecto importante a considerar es que un objeto puede cambiar drásticamente su aspecto debido al desplazamiento, por ejemplo, los cambios en perspectiva o apariencia de las partes ocultas cuando se cambia el punto de vista.
Dos tipos de enfoques pueden ser distinguidos dependiendo de la naturaleza de las características de la imagen utilizada: los métodos basados en bordes y los métodos basados en la información proporcionada por los píxeles del interior del objeto de interés (flujo óptico, coincidencia del objeto, correspondencia de los puntos de interés).
Seguimiento de Bordes. Se basa en obtener los bordes del objeto de interés y detectar la zona con un gradiente alto. La mayoría de los enfoques de segui- miento de bordes son computacionalmente eficientes y relativamente fáciles de implementar. Son estables a cambios de iluminación.
Flujo Óptico. Es el movimiento aparente de la proyección de un punto físico del objeto en una secuencia de imágenes, donde se calcula la velocidad de la ubicación de cada píxel suponiendo que la intensidad de proyección permanece constante (ver Figura 2.4).
30
2.1 Visión Artificial
Figura 2.4: Flujo óptico[6].
Coincidencia de objetos. Es un método que no necesariamente se basa en encon- trar características locales de los objetos, como son los bordes o los puntos de interés, sino de todo el objeto a rastrear. Tal método puede ser útil para tratar objetos complejos que son difíciles de representar. Aunque puede ser compu- tacionalmente costoso, se ha demostrado que bajo ciertas condiciones, puede ser efectiva (ver Figura 2.5).
Figura 2.5: Ejemplo de identificación por coincidencia [7].
Métodos basados en puntos de interés. Se basa en localizar rasgos descriptivos de los objetos, lo cual tiene muchas ventajas, ya que se basa en la coincidencia de las características individuales a través de imágenes y son capaces de hacer
Capítulo 2 Marco Teórico
frente a oclusiones parciales o errores coincidentes, incluso con ciertos algoritmos pueden ser invariantes a la iluminación. A diferencia de los métodos basados en los bordes, explotan más la información de la imagen por lo que tienden a ser más robustos. Son similares en algunos aspectos a los métodos de flujo óptico, pero permiten movimientos mas rápidos ya que ninguna suposición se hace entre con base en la diferencia de tramas.
2.1.3. Sistema de Reconocimiento Automático de Objetos
La función de un Sistema para el Reconocimiento Automatizado de Objetos (SRAO) es identificar entidades del mundo real a través de la captura de imágenes de ese entorno, para lo cual se utilizan modelos de objetos conocidos a priori. Esta función es realizada cotidianamente por los seres humanos sin realizar mucho esfuerzo. Sin embargo, esta tarea no es una procedimiento sencillo de realizar para las computadoras ya que requieren de tareas complejas para la obtención de rasgos descriptivos de los objetos.
El principal problema en el reconocimiento de objetos radica en el proceso del etique- tado de elementos basado en modelos conocidos. Formalmente, dada una imagen que contiene uno o más objetos de interés y un conjunto de etiquetas que corresponden a un conjunto de modelos conocidos previamente, el sistema debe asignar correcta- mente etiquetas a las regiones, o a un conjunto de regiones dentro de la imagen. Este problema está relacionado con la etapa de segmentación: sin al menos un reconoci- miento parcial de los objetos, la segmentación no se puede hacer, y sin segmentación, el reconocimiento de objetos no es posible[41].
2.1.3.1. Etapas del Sistema de Reconocimiento de Objetos
A continuación se describen las etapas necesarias para que un SRAO realice correcta- mente el proceso de identificación de objetos[36]:
A) Banco de modelos
Contiene la información que describe las características de los objetos a identificar dentro del sistema. La información contenida en el banco de modelos depende de los criterios aplicados para el reconocimiento. En muchos casos, los modelos de objetos son vectores de características abstractas. Una característica es un atributo del objeto que se considera importante en la descripción y el reconocimiento del objeto en re- lación con otros. Tamaño, color y forma son algunas de las funciones más utilizadas.
Estos modelos son obtenidos en la etapa de entrenamiento y posteriormente son uti- lizados para comprobar la identidad de los objetos en la etapa de reconocimiento e interpretación[41].
32
2.1 Visión Artificial
B) Adquisición de Imágenes
Durante esta etapa se construye un sistema de formación de imágenes. Cuyo objetivo es realzar las características visuales de los objetos aplicando diversas técnicas fotográ- ficas. Es considerada una de las etapas de gran importancia porque de ella depende el éxito o el fracaso de un sistema de reconocimiento. Al adquirir una imagen de calidad se logrará utilizar menos algoritmos para su mejoramiento y a su vez menos tiempo de preprocesado[63].
Elementos de percepción visual
El ojo humano es el sentido que permite captar la realidad en imágenes ya que recibe la luz a través de su sistema óptico de enfoque (pupila, iris, córnea, lente). Internamente, el ojo es sensible a la intensidad de la luz y a los colores debido a sus células sensoriales, que se encuentran en la retina del ojo (ver Figura 2.6). Éstas células se conocen como conos y bastones. Los conos son sensibles a los diferentes tipos de luz por lo que tienen la capacidad de detectar los colores azul, verde y rojo; y los bastones son sensibles a la intensidad de la luz. Cada ojo esta conformado por aproximadamente 6 millones de conos y 100 millones de bastones debido a la gran cantidad de información que el ojo recibe. La información detectada por los conos y bastones es transformada en impulsos eléctricos y enviada al cerebro por medio del nervio óptico. Este sistema de percepción de luz es similar al que utilizan las cámaras, su sistema óptico enfoca la luz en una superficie sensible, la cual es capaz de detectar la intensidad de luz y convertirla en impulsos eléctricos que pueden ser almacenados y procesados[64].
Figura 2.6: El ojo humano y el Sistema de Visión.