Bóveda celeste usando Realidad Aumentada (D. Berrocal)

Post on 06-Aug-2015

109 views 5 download

Transcript of Bóveda celeste usando Realidad Aumentada (D. Berrocal)

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