Tutorial 3: OctoMap and RTAB Map - eYSIP-2017/eYSIP-2017_Indoor-Environments-Mapping-using-UAV GitHub Wiki

Indoor Environment Mapping Tutorials

OctoMap and RTAB-Map

  • Octree
    • An octree is a tree data structure in which each internal node has exactly eight children.
    • Octrees are most often used to partition a three-dimensional space by recursively subdividing it into eight octants

images/octree.png

Left: Recursive subdivision of a cube into octants. Right: The corresponding octree.

  • OctoMap

    • The OctoMap library implements a 3D occupancy grid mapping approach, providing data structures and mapping algorithms in C++ particularly suited for robotics
    • The map implementation is based on an Octree and is designed to meet the following requirements:
      1. Full 3D model - The map is able to model arbitrary environments without prior assumptions about it
      2. Updatable - It is possible to add new information or sensor readings at any time.
      3. Flexible - The extent of the map does not have to be known in advance.
      4. Compact - The map is stored efficiently, both in memory and on disk
  • RTAB-Map

    • Simultaneous Localisation And Mapping (SLAM) is the computational problem of constructing or updating a map of an unknown environment while simultaneously keeping track of an agent's location within it
    • RTAB-Map (Real-Time Appearance-Based Mapping) is a RGB-D Graph-Based SLAM approach based on an incremental appearance-based loop closure detector
    • RTAB-Map can be used alone with a hand-held Kinect or stereo camera for 6DoF RGB-D mapping
  • Localisation and Loop closure detection

    • Loop closure is the problem of recognising a previously-visited location and updating the map accordingly.
    • The loop closure detector in RTAB-Map uses a bag-of-words approach to determinate how likely a new image comes from a previous location or a new location
    • The visual features used by RTAB-Map can be computed using a number of popular techniques from computer vision including SIFT, SURF, BRIEF, FAST, etc

images/RTAB-Map-features.png