Positioning and Mapping for Aerial Robots using on-board Perception for Autonomous Missions

Los robots aereos autonomos han ganado una gran visibilidad debido a su capacidad de lograr misiones mas rapida, asi como para alcanzar altitudes mas altas sin requerir estructuras adicionales. Aunque, limitaciones en los ambientes interiores, como la falta de posicionamiento preciso y errores en la percepcion del entorno debido a sus condiciones dinamicos puede provocar una finalizacion incompleta de la mision. Para abordar algunos de estos inconvenientes, esta tesis se enfoca en resolver el posicionamiento en interiores y el mapeo de robots aereos, asi como probar y validar sus misiones autonomas en varios escenarios complejos de la vida real. La primera parte de la tesis consta de cuatro modulos desarrollados para lograr una localization rapida y robusta a bordo los robots aereos. El primer modulo presenta un estimador de altura basado en EKF de codigo abierto, capaz de fusionar de forma modular numerosos sensores individuales de estimacion de altura junto con su sesgo, para estimar la altura real del robot aereo, asi como estimar la altura de los objetos terrestres en presencia de superficies irregulares. En el segundo modulo, se presenta un algoritmo de odometria semantica visual de codigo abierto basado en un filtro de particulas, que es capaz de estimar la pose del robot aereo, combinando informacion semantica y de odometria visual, para superar los inconvenientes de la acumulacion de errores de los algoritmos de odometria visual en presencia de caracteristicas insuficientes o patrones repetitivos en los entornos interiores. El tercer modulo de esta tesis se centra en un algoritmo de codigo abierto, rapido y robusto de SLAM geometrico, segmentando y mapeando superficies planas horizontales usando sensores de nubes de puntos y estimando la altura del robot aereo en presencia de obstaculos estaticos y dinamicos, superando varias limitaciones que se enfrentan al usar sensores de estimacion de altura convencionales. El cuarto modulo de esta tesis se centra en un algoritmo de SLAM semantico visual basado en methodo de grafos para robots aereos, que crea un mapa semantico escaso del entorno utilizando las superficies planas extraidas de los objetos semanticos y pueden realizar cierres de bucle robustos utilizando esta informacion semantica de alto nivel, superando errores de cierre de bucle debido a caracteristicas de bajo nivel o requisito de altos recursos computacionales. La segunda parte de la tesis presenta la extension de nuestro marco de software de codigo abierto Aerostack para robots aereos, integrando y validando los componentes presentados en la primera parte junto con los otros componentes desarrollados para lograr vuelos autonomos de robots aereos en varios escenarios de la vida real. El modulo uno presenta la investigacion sobre la inspeccion autonoma de una caldera termica usando el Aerostack, asi como los resultados de la mision de inspeccion de vuelo real dentro de la caldera. El modulo dos presenta la investigacion y los resultados obtenidos usando el Aerostack, para inspecciones visuales autonomas de un avion dentro de un hangar de aviones. El modulo tres presenta la investigacion y los resultados obtenidos utilizando el Aerostack a bordo de una plataforma robotica aerea personalizada, para la ejecucion autonoma de la mision de la competicion internacional de vehiculos micro-aereos. ----------ABSTRACT---------- Autonomous aerial robots have gained high visibility due to their ability to achieve faster mission completion as well as reaching higher altitudes without requiring additional structures. Although, limitations in the indoor environments such as the lack of accurate positioning and errors in the perception of the environment due to its dynamically changing conditions can result in mission failures or incomplete mission completion. In order to address some these drawbacks, this thesis focuses towards solving indoor positioning and mapping for aerial robots as well as testing and validating their complete autonomous missions in several real-life challenging scenarios. The first part of this thesis consists of four modules developed for achieving fast and robust localization on-board the aerial robots. The first module presents an open-source, fast and robust EKF based flight altitude estimator for the aerial robots, able to modularly fuse numerous individual altitude estimation sensors along with their bias, for estimating the true flight altitude of the aerial robot as well as estimating the altitude of the ground objects in presence of uneven ground surfaces. In the second module, an open-source, robust particle filter based visual semantic odometry algorithm is presented, which is capable of estimating the drift free pose of the aerial robot combining semantic and visual odometry information in loosely coupled fashion, in order to overcome the drawbacks of error accumulation of the visual odometry algorithms in presence of insufficient characteristic features or repetitive patterns. The third module of this thesis focuses on an open-source, fast and robust geometric SLAM, segmenting and mapping horizontal planar surfaces using point cloud sensors and estimating the true flight altitude of the aerial robot in presence of static as well as dynamic obstacles, overcoming several limitations faced when using conventional altitude estimation sensors. The fourth module of this thesis focuses on an open-source, robust and lightweight graph based visual semantic SLAM framework for aerial robots, which creates a sparse semantic map of the environment using the planar surfaces extracted from the semantic objects and is able to perform robust loop closures using this high-level semantic information, overcoming loop closure errors due to low-level features or requirement of high computational resources. Second part of the thesis presents the extension of our open-source Aerostack software framework for aerial robots, integrating and validating the components presented in part one along with the other developed components in order to achieve complete autonomous flights of heterogeneous aerial robots in several real-life scenarios. Module one presents the research for the autonomous inspection of a thermal power plant using the Aerostack framework as well as the real flight inspection mission inside the power plant. Module two presents the research and obtained results using the Aerostack framework, for autonomous visual inspections of an airplane inside a real airplane hanger. Module three presents the research and obtained results using the Aerostack framework on-board a custom aerial robotic platform, for the accomplishment the challenging autonomous mission of the International Micro-Aerial Vehicles (IMAV) competition.