Proyecto Fin De Grado Ingeniería Electrónica, Robótica Y .

Transcription

Proyecto Fin de GradoIngeniería Electrónica, Robótica y MecatrónicaRealidad Aumentada mediante SLAM en tiempo realcon cámara monocularAutor: Almudena Maceda GarcíaTutor: Begoña C. Arrue UllésEquation Chapter 1 Section 1Dpto. Control y AutomáticaEscuela Técnica Superior de IngenieríaUniversidad de SevillaSevilla, 20191

Proyecto Fin de GradoIngeniería Electrónica, Robótica y MecatrónicaRealidad Aumentada mediante SLAM entiempo real con cámara monocularAutor:Almudena Maceda GarcíaTutor:Begoña C. Arrue UllésProfesor titularDpto. de Control y AutomáticaEscuela Técnica Superior de IngenieríaUniversidad de SevillaSevilla, 2019

Proyecto Fin de Grado: Realidad Aumentada mediante SLAM en tiempo real con cámaramonocularAutor:Almudena Maceda GarcíaTutor:Begoña C. Arrue UllésEl tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los cuerdan otorgarle la calificación de:Sevilla, 2019El Secretario del Tribunal

A mi familiaA mis abuelosA mis amigos

AgradecimientosLos agradecimientos que puedo ofrecer en esta pequeña sección de mi trabajo van a sersobre todo a mis padres y hermanos, que han estado ahí con su apoyo incondicional entodo momento y en especial en aquellos en los que estuve sometida a gran presión.A mi madre, por su paciencia y dedicación absoluta, como es conocida “una heroína entrelas sombras” o un ángel de la guarda. A mi padre por haberme dado las dotes necesarias para apreciarla ingeniería y ver todo aquello que puedo desarrollar con una simple idea. A mi hermana, que meha ofrecido su ayuda para que mi trabajo de fin de carrera, recordándome siempre lo que era capazde lograr y que debo priorizar mis intereses a los de otros. A mi hermano pequeño por recordarmediariamente con humor que terminaría la carrera antes que yo.A mi abuelo Manolo, por haberme regalado una educación maravillosa y el sonreírle a lavida incluso cuando no haya más chistes, que todo esfuerzo tiene su recompensa y que un libro puedemarcar la diferencia entre el resto y tú. A mi abuela Carmen, la matriarca de la casa, por estar siempreatenta de la salud y la formación de cada uno de tus nietos que aunque a veces te vayas sé que estáscon nosotros. A mi abuela Matilde, por haber luchado duramente estos últimos meses en los que noshas dejado disfrutar más de ti y esperamos poder hacerlo por mucho más tiempo.A mis profesores de la escuela que me han enseñado a querer y valorar la ingeniería comoun bien en el que todos colaboramos para hacer un mundo mejor. A mi tutora Begoña, por habermedado la oportunidad de desarrollarme como persona y como futura ingeniera en este trabajo, haberconfiado en mí en todo momento. A Pablo Ramón, por haberme dado la ingeniosa idea de desarrollarel trabajo en realidad aumenta y haberme ayudado a reestructurar el trabajo aún incluso sin tiempo.A Manu por esas charlas infinitas con un café a medias. A relaciones exteriores de la escuela, perosobre todo a Enma, por motivar y ayudar a todos los alumnos día tras día para que descubran de loimportante que es realizar una Erasmus, a mí me dio la vida y el hecho de haber estado en laUniversità di Bologna me ha hecho descubrirme en nuevas ramas de la ingeniería.A mis amigos, que siempre han estado conmigo incluso en estos duros meses en los que noshemos necesitado. Ellas han hecho que multiplique las sonrisas y reduzca las tristezas. A miscompañeros a los que muchos de ellos puedo llamar amigos que han estado asesorándome durantela ejecución de este trabajo y siempre se esforzaron por resolverme aquellas dudas que me iban

planteando a lo largo del mismo. Y, como les prometí en su momento, aquí escribo mi frase deagradecimiento “Por mí primero y por todos mis compañeros, pero por mí primero”.A todos los que me han acompañado en este gran reto, gracias y espero que les guste.Almudena Maceda GarcíaTrabajo de fin de grado de Ingeniería Electrónica, Robótica y MecatrónicaSevilla, 2019

ResumenEste trabajo consigue simular un Bob Esponja1 con la técnica de realidad aumentada en un entornodesconocido mediante el uso de una cámara monocular y una computadora. A lo largo del mismo,se han realizado diversas investigaciones de las diversas metodologías existentes y aquellas que vana ser utilizadas, como es el caso de SLAM (Visual Simultaneous Localization and Mapping).En este proyecto se ha realizado: una pequeña introducción al software, a la plataforma con la quese ha trabajado, a las librerías más relevantes que utiliza y, por último, a los proyectos que recurrena una metodología similar a la que se utiliza en este trabajo.1Bob Esponja, es un carácter de dibujos animados conocido por un su gran popularidad entre niños y adultos.

AbstractThe purpose of this final degree thesis is to test the viability of an Augmented Reality (AR) systemin an unknown environment with a monocular camera. It is worth it to mention that the position ofthe objects loaded in the AR system is not determined by any kind of marker. Instead, the underlyingrepresentation of the environment is used to project the 3D model on the camera view. The workrepresented on the previous works ORB SLAM2 and ORB AR, to implement the SLAM and theprojection of the object 3D. Previous research on every kind of SLAM; differences betweenAugmented Reality and Virtual Reality and types of Augmented Reality; a small description ofORB SLAM2 and ORB AR is represented. Finally, the project of Augmented Reality project formonocular cameras in an unknown environments is represented.

ÍndiceAGRADECIMIENTOS . 9RESUMEN . 12ABSTRACT . 13ÍNDICE . 15ÍNDICE DE FIGURAS . 17NOTACIÓN . 201INTRODUCCIÓN . 11.11.22OBJETIVO . 4METODOLOGÍA . 6REALIDAD AUMENTADA . 72.12.22.33INTRODUCCIÓN . 7REALIDAD AUMENTADA, REALIDAD VIRTUAL Y LA COMBINACIÓN DE AMBAS . 7AR EN ENTORNO DESCONOCIDO .11SIMULTANEOUS LOCALIZATION AND MAPPING . 123.13.23.33.43.54INTRODUCCIÓN Y EL ESTADO DEL ARTE .12VISUAL SLAM.13DESVENTAJAS DE SLAM .15FUNDAMENTO TEÓRICO DE MONOSLAM .16ORB‐SLAM2.20SOFTWARE Y PLATAFORMA . 234.1 SISTEMA OPERATIVO .234.2 ROS .244.2.1Introducción.244.2.2Estructura .254.3 INSTALACIÓN ROS KINETIC .265ORB‐SLAM2 . 275.1 INTRODUCCIÓN . 275.2 REQUISITOS PREVIOS DE LA COMPILACIÓN .285.3 COMPILACIÓN Y EJECUCIÓN DE ORB SLAM2 .295.4 ORB AR Y ORB AR DEMO .325.4.1Librerías .335.4.2Funcionamiento ORB AR .345.4.3Funcionamiento ORB AR DEMO .366AR PARA CÁMARA MONOCULAR . 376.16.26.36.47INTRODUCCIÓN . 37ARCHIVOS.38FUNCIONAMIENTO .39RESULTADOS .49CONCLUSIONES Y LÍNEAS FUTURAS . 52

8ANEXOS . 548.18.28.38.48.5PÁGINA WEB DE TUTORIAL PARA ROS KINETIC UBUNTU. 54COMPILACIÓN Y EJECUCIÓN DE USB CAM A TRAVÉS DEL TERMINAL . 54DESCARGA Y COMPILACIÓN DE ORB SLAM2 A TRAVÉS DEL TERMINAL . 55EJECUTAR MONO, A TRAVÉS DEL TERMINAL. 55EJECUTAR MONOAR, A TRAVÉS DEL TERMINAL . 55REFERENCIAS . 56

Índice de figurasFigura 1. Marcadores AR . 8Figura 2. Relación humano, computadora y entorno [22]. . 10Figura 3. Espectro de la realidad mixta [22] . 10Figura 4. Diagrama de flujo de vSLAM. . 15Figura 5. Marco, vectores y características geométricas en la cámara. . 17Figura 6. Visualización del movimiento de la cámara. 18Figura 7. Modelo de Pinhole Camera Model . 19Figura 8. Perspectiva general del sistema ORB-SLAM2 [30] . 20Figura 9. Perspectiva general del sistema ORB-SLAM2 para cámara Monocular . 21Figura 10. Logo del Sistema Operativo utilizado, Ubuntu. . 24Figura 11. Organización Software en ROS. 25Figura 12. Logo de la distribución de ROS Kinetic. 26Figura 13. Modelo de cámara Monocular “Logitech-Carl Zeiss Tessar HD 1080p”. . 29Figura 14. Nube de puntos creado al ejecutar el nodo Mono. . 30Figura 15. Ejecución del nodo MonoAR. Muestra de los puntos de rastreo. . 30Figura 16. Ejecución del nodo MonoAR. Inserción de un modelo en 3D (cubo). . 31Figura 17. Ejecución del nodo MonoAR. Inserción de más de un modelo en 3D (cubos). . 31Figura 18. Resultados de la ejecución de ORB AR con plano inicial. . 35Figura 19. Resultados de la ejecución de ORB AR quitando plano inicial. . 35Figura 20. Fallos de proyección del objeto. . 36Figura 21. Conjunto de archivos para la ejecución del programa orb ar tfg.c

se ha trabajado, a las librerías más relevantes que utiliza y, por último, a los proyectos que recurren a una metodología similar a la que se utiliza en este trabajo. 1 Bob Esponja, es un carácter de dibujos animados conocido por un su gran popularidad entre niños y adultos. Abstract The purpose of this final degree thesis is to test the viability of an Augmented Reality (AR) system .