Post on 06-Aug-2015
transcript
Diseño de un observatorio Diseño de un observatorio celeste basado en celeste basado en
Realidad AumentadaRealidad Aumentada
Autor: Daniel Berrocal RuizAutor: Daniel Berrocal RuizTutora: Cristina Urdiales GarcíaTutora: Cristina Urdiales García
Proyecto Fin de Proyecto Fin de CarreraCarreraESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN
UNIVERSIDAD DE MALAGAUNIVERSIDAD DE MALAGA
DEPARTAMENTO DE TECNOLOGÍA ELECTRÓNICADEPARTAMENTO DE TECNOLOGÍA ELECTRÓNICA
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
1.1.- Planetarios vs 1.1.- Planetarios vs planisferiosplanisferios
1.- 1.- IntroducIntroducciónción
1.2.- Realidad 1.2.- Realidad Aumentada Aumentada
•Realidad Virtual: Modelo artificial de
un entorno 3D •Realidad Aumentada: Entorno real al que se le añaden elementos virtuales.
1.- 1.- IntroducIntroducciónción
1.2.- Objetivos de un 1.2.- Objetivos de un sistema de Realidad sistema de Realidad
AumentadaAumentada Mezclar lo real con lo virtual en un entorno Mezclar lo real con lo virtual en un entorno
realreal
Posicionamiento en 3DPosicionamiento en 3D TrackingTracking Técnicas de visión Técnicas de visión Búsqueda de marcas Búsqueda de marcas
Interacción en tiempo realInteracción en tiempo real
1.- 1.- IntroduccIntroducciónión
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
2.- Posicionamiento2.- Posicionamiento ObjetivoObjetivo: Calcular la posición y la : Calcular la posición y la
orientación de la vista del usuario.orientación de la vista del usuario.
Reconocimiento de marcas reales Reconocimiento de marcas reales
colocadas artificialmente en el entorno.colocadas artificialmente en el entorno.
ARToolKitARToolKit: Librería software empleada: Librería software empleada Libre distribuciónLibre distribución
Velocidad Velocidad
2.- 2.- PosicionamiePosicionamientonto
2.1.- ARToolKit (1)2.1.- ARToolKit (1) FuncionamieFuncionamie
ntonto Binarización de la Binarización de la
imagenimagen Búsqueda de posibles Búsqueda de posibles
marcasmarcas Cálculo transformación Cálculo transformación
cámara-marcacámara-marca Identificación de Identificación de
marcasmarcas Representación objeto Representación objeto
virtual alineado con el virtual alineado con el entorno realentorno real
2.- 2.- PosicionamiePosicionamientonto
2.1.- ARToolKit. (2)2.1.- ARToolKit. (2) Sistemas de Sistemas de
coordenadascoordenadas
2.- 2.- PosicionamiePosicionamientonto
2.2.- Ubicación de un objeto 2.2.- Ubicación de un objeto virtual sobre una marcavirtual sobre una marca
NecesidadesNecesidades CalibraciónCalibración
Entrenamiento de patronesEntrenamiento de patrones
Parámetros de configuraciónParámetros de configuración Umbral de luminosidad ( tresh)Umbral de luminosidad ( tresh)
Tamaño de la marcaTamaño de la marca
Origen de coordenadas de la marca.Origen de coordenadas de la marca.
2.- 2.- PosicionamiePosicionamientonto
2.3.- Ubicación de varios 2.3.- Ubicación de varios objetos usando marcas (1)objetos usando marcas (1)
ConfiguraciónConfiguración
2.- 2.- PosicionamiePosicionamientonto
2.3.- Ubicación de varios 2.3.- Ubicación de varios objetos usando marcas (2)objetos usando marcas (2)
ConclusionesConclusiones Se identifican todas las marcas Se identifican todas las marcas
presentes en la escena y se presentes en la escena y se dibuja sobre cada una el objeto dibuja sobre cada una el objeto virtual correspondiente.virtual correspondiente.
Cada objeto se referencia Cada objeto se referencia localmente a la marca localmente a la marca correspondiente.correspondiente.
Para que un objeto se dibuje su Para que un objeto se dibuje su marca debe estar visible.marca debe estar visible.
2.- 2.- PosicionamiePosicionamientonto
2.4.- Posicionamiento 2.4.- Posicionamiento global (1)global (1)
Objetivo: Colocar los objetos respecto a Objetivo: Colocar los objetos respecto a un sistema de coordenadas global para un sistema de coordenadas global para todos y no respecto a cada marca.todos y no respecto a cada marca.
Solución: Marcas fijas cuya posición Solución: Marcas fijas cuya posición será conocida en el sistema de será conocida en el sistema de coordenadas globalcoordenadas global
2.- 2.- PosicionamiePosicionamientonto
2.4.- Posicionamiento 2.4.- Posicionamiento global (2)global (2)
ConfiguraciónConfiguración
2.- 2.- PosicionamiePosicionamientonto
2.4.- Posicionamiento 2.4.- Posicionamiento global (3)global (3) ComportamientoComportamiento
2.- 2.- PosicionamiePosicionamientonto
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
AlternativasAlternativas
Programarlo todo.Programarlo todo.
Librerías gráficas (OpenGL, Direct·3D)Librerías gráficas (OpenGL, Direct·3D)
Motores gráficos (Genesis3D, GeoMod)Motores gráficos (Genesis3D, GeoMod)
Herramientas de diseño y modelado Herramientas de diseño y modelado
(3DStudio, WorldToolKit,...)(3DStudio, WorldToolKit,...)
3.-Diseño del mundo 3.-Diseño del mundo virtualvirtual
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual
3.1.- OpenGL. 3.1.- OpenGL. IntroducciónIntroducción
““Open Graphics Library”Open Graphics Library” Multiplataforma. Multiplataforma. Bajo nivel. Bajo nivel. Máquina de estadosMáquina de estados Librería auxiliar: GLUTLibrería auxiliar: GLUT
Gestión de eventos. Funciones Gestión de eventos. Funciones ‘callback’‘callback’
Gestión de ventanasGestión de ventanas Escritura de textoEscritura de texto
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual
3.1.- OpenGL. 3.1.- OpenGL. FuncionamientoFuncionamiento
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual
3.2.- Diseño de las 3.2.- Diseño de las estrellas (1)estrellas (1)
Para que no se resienta la velocidad Para que no se resienta la velocidad de la aplicación, deben ser de la aplicación, deben ser elementos no demasiado complejos: elementos no demasiado complejos: uso de texturasuso de texturas..
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual
Mezcla de la textura con la imagen de vídeo : BlendingMezcla de la textura con la imagen de vídeo : Blending
Sin BlendingSin Blending Con BlendingCon Blending
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual3.2.- Diseño de las 3.2.- Diseño de las
estrellas (2)estrellas (2)
3.3.- Dibujo de la bóveda 3.3.- Dibujo de la bóveda celesteceleste
Coordenadas del cieloCoordenadas del cielo
Ascensión Ascensión RectaRecta
DeclinaciónDeclinación
Independientes de Independientes de la posición y del la posición y del momentomomentoCoordenadas ecuatorialesCoordenadas ecuatoriales
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual
3.2.- Dibujo de la bóveda 3.2.- Dibujo de la bóveda celesteceleste
Cambio de Cambio de coordenadascoordenadas
Esféricas-Esféricas-cartesianascartesianas
x = cos DEC cos ARx = cos DEC cos AR
y = cos DEC sen ARy = cos DEC sen AR
z = sen DECz = sen DEC
3.- Diseño del mundo 3.- Diseño del mundo virtualvirtual
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
4. 4. Interacción con el Interacción con el entorno aumentadoentorno aumentado
Objetivo Objetivo : : selección de una selección de una
estrella cualquiera, presentando estrella cualquiera, presentando información sobre la mismainformación sobre la misma
NecesidadesNecesidades Interfaz ergonómicoInterfaz ergonómico VelocidadVelocidad PrecisiónPrecisión
4.- Interacción con el entorno 4.- Interacción con el entorno aumentadoaumentado
4.1.- Diseño del 4.1.- Diseño del interfazinterfaz
Usar la mano del usuarioUsar la mano del usuario
Segmentación imagenSegmentación imagen
Usar un puntero artificial Usar un puntero artificial Uso de una Uso de una
marcamarca
4.- Interacción con el entorno 4.- Interacción con el entorno aumentadoaumentado
4.2.- Presentación de la 4.2.- Presentación de la informacióninformación
4.- Interacción con el entorno 4.- Interacción con el entorno aumentadoaumentado
4.3.- Selección de 4.3.- Selección de objetos usando objetos usando
OpenGLOpenGL Dos modos de operaciónDos modos de operación Modo RENDERModo RENDER Modo SELECTModo SELECT
Datos y operaciones de dibujoDatos y operaciones de dibujoDatos y operaciones de dibujoDatos y operaciones de dibujo Datos y operaciones de dibujoDatos y operaciones de dibujoDatos y operaciones de dibujoDatos y operaciones de dibujo
Buffer de tramasBuffer de tramasBuffer de tramasBuffer de tramas Buffer de selecciónBuffer de selecciónBuffer de selecciónBuffer de selección
Imagen en Imagen en pantallapantalla
Imagen en Imagen en pantallapantalla
SELECTSELECTRENDERRENDERRENDERRENDER
4.- Interacción con el entorno 4.- Interacción con el entorno aumentadoaumentado
Modo SELECTModo SELECT Área de selección Área de selección Cambio de Cambio de
proyecciónproyección
Primitivas de dibujo Primitivas de dibujo Quitar detallesQuitar detalles Identificar los objetosIdentificar los objetos
4.- Interacción con el entorno 4.- Interacción con el entorno aumentadoaumentado
4.3.- Selección de objetos 4.3.- Selección de objetos usando OpenGLusando OpenGL
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
5.- Resultados y 5.- Resultados y conclusionesconclusiones
Parámetros de Parámetros de inicializacióninicialización
CalibraciónCalibración
PatronesPatrones
Tamaño de la Tamaño de la
imagenimagen
TreshTresh
5.- Resultados y 5.- Resultados y conclusionesconclusiones
ResultadosResultados VelocidadVelocidad MovilidadMovilidad Errores de Errores de
posicionamientoposicionamiento ConclusionesConclusiones
Posicionamiento 3DPosicionamiento 3D Mezcla mundo real-Mezcla mundo real-
mundo virtualmundo virtual Interacción tiempo Interacción tiempo
realreal
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración
6.- Líneas futuras6.- Líneas futuras
Ampliación del entorno virtual y desarrollo de contenidos
Automatización del proceso de calibración
Aumentar la interactividad
Reducción del error en la representación de objetos alejados de las marcas
ÍndiceÍndice
1. Introducción2. Posicionamiento3. Diseño del mundo virtual4. Interacción con el entorno
aumentado5. Resultados y conclusiones6. Líneas futuras7. Demostración