This package provides an implementation of a 2D costmap that takes in sensor data from the world, builds a 2D or 3D occupancy grid of the data (depending on whether a voxel based implementation is used), and inflates costs in a 2D costmap based on the occupancy grid and a user specified inflation radius. This package also provides support for map_server based initialization of a costmap, rolling window based costmaps, and parameter based subscription to and configuration of sensor topics.
This pakage provides a 2D costmap that can be used for a wide range of planning and navigation tasks.
There are two main ways to use this package. The first is to create a costmap_2d::Costmap2D object and manage updating it yourself. The second, and encouraged method, is to use a ROS wrapper (costmap_2d::Costmap2DROS) for the costmap that manages the map for you, but allows you to get a copy of the underlying costmap_2d::Costmap2D object at any time.