Skip to content

Implement NDTMapRepresentation

Description

Necessary classes and functionality for an NDT map representation is implemented. The map converts a map pointcloud into a grid where each cell corresponds a normal distribution of points. The map object wraps the existing voxel_grid and spatial_hash structures for fast lookup.

Notes for Reviewer

  • MR includes few fixups for correctly compiling code in the other newly introduced localization related packages. Though for this MR the actually relevant files are ndt_map and ndt_representations

  • NDTVoxelMap inherits a voxel_grid that wraps a spatial_hash to avoid copying data, voxel_grid iterators are contained in the spatial hash.

  • Covariance computation for each cell is done after the pointcloud is added to the voxel grid and it finalizes the map creation. Incremental covariance update isn't implemented, hence adding new points after a voxel covariance computation is done, resets the covariance state of the voxel.

Checklist

  • Documentation was updated

Closes #138 (closed)

Edited by Yunus Emre Çalışkan

Merge request reports