Please use this identifier to cite or link to this item:
https://hdl.handle.net/10316/86498
Title: | Parallelization of Direct Sparse Odometry SLAM Algorithm for Real-time Performance | Other Titles: | Paralelização de um Algoritmo SLAM de Odometria Direta Esparsa com Desempenho em tempo-real | Authors: | Pereira, César Augusto Andrade | Orientador: | Fernandes, Gabriel Falcão Paiva Alexandre, Luís Filipe Barbosa de Almeida |
Keywords: | Simultaneous Localization And Mapping (SLAM); Open Multi-Processing (OpenMP); Multiprocessamento; Computação paralela; Simultaneous Localization And Mapping (SLAM); Open Multi-Processing (OpenMP); Multiprocessing; Parallel Computing | Issue Date: | 24-Sep-2018 | metadata.degois.publication.title: | Parallelization of Direct Sparse Odometry SLAM Algorithm for Real-time Performance | metadata.degois.publication.location: | DEEC | Abstract: | Reconstrução 3D monocular é uma tarefa desafiadora em Visão por Computador, ainda mais quando o objetivo é executar em tempo real. Uma forma de obter mapas de reconstrução 3D é através de SLAM (Simultaneous Localization And Mapping), um problema de engenharia cada vez mais recorrente, principalmente na área de robótica. Consiste em construir, ou atualizar, computacionalmente, um mapa consistente de um ambiente desconhecido ao mesmo tempo que é guardada informação da posição do robô, ou da câmara. Variados algoritmos já foram implementados para solucionar este problema por outros autores, como LSD-SLAM [1], ORB-SLAM [2], DSO [3] ou PTAM [4], entre muitos outros. No entanto, apesar de todos estes algoritmos apresentarem bons resultados no que toca ao principal problema, estes são computacionalmente muito pesados. Assim, nesta dissertação é proposto uma versão modificada do algoritmo DSO SLAM, implementando técnicas de paralelização de código usando OpenMP, uma Interface de Programação de Aplicações (API) para paralelismo em programas C, C++ ou Fortran, que suporta programação de multiprocessamento de memória partilhada multiplataforma. Mais acerca do OpenMP irá ser discutido no capítulo 3. Com esta abordagem propomos múltiplas modificações ao código, de forma a tornar o tempo de execução do algoritmo de SLAM consideravelmente mais baixo. A solução implementada apresenta uma melhoria significativa na performance do algoritmo, em termos de tempo de execução, quando comparada com o código original. Foi também avaliada a performance da solução proposta nos datasets padrão Monocular 3D reconstruction is a challenging Computer Vision task, even more when we aim at real-time performance. One way to obtain 3D reconstruction maps is through SLAM (Simultaneous Localization And Mapping), a recurrent engineering problem, mainly in the area of robotics. It consists in computationally build, or update, a consistent map of the unknown environment and to, simultaneously, save the pose of the robot, or the camera, at every given time. Numerous algorithms have already been implemented to solve this problem by other authors, for instance LSD-SLAM [1], ORB-SLAM [2], DSO [3] or PTAM[4], among many others. However, despite the fact that all these algorithms presents good results to the main problem, they are extremely computationally heavy. Hence, in this dissertation, we propose a modified version of DSO SLAM, which implements code parallelization techniques using Open Multi-Processing (OpenMP), an Application Program Interface (API) for parallelism in C, C++ and Fortran programs, that supports multi-plataform shared memory multiprocessing programming. More about OpenMP will be discussed on chapter 3. With this approach we propose multiple code modifications, in order to make the SLAM algorithm’s execution time considerably smaller. The implemented solution shows a significant improvement on the algorithm’s performance, in terms of execution time, when compared with the original code. The performance of the proposed solution was evaluated on the standard datasets. |
Description: | Dissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e Tecnologia | URI: | https://hdl.handle.net/10316/86498 | Rights: | embargoedAccess |
Appears in Collections: | UC - Dissertações de Mestrado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
dissertacao.pdf | 10.6 MB | Adobe PDF | View/Open |
Page view(s)
373
checked on Nov 6, 2024
Download(s) 50
254
checked on Nov 6, 2024
Google ScholarTM
Check
This item is licensed under a Creative Commons License