#include <GridMapRosConverter.hpp>
Public Member Functions | |
| GridMapRosConverter () | |
| virtual | ~GridMapRosConverter () |
Static Public Member Functions | |
| static bool | addColorLayerFromImage (const sensor_msgs::Image &image, const std::string &layer, grid_map::GridMap &gridMap) |
| static bool | addLayerFromImage (const sensor_msgs::Image &image, const std::string &layer, grid_map::GridMap &gridMap, const float lowerValue=0.0, const float upperValue=1.0, const double alphaThreshold=0.5) |
| static bool | fromMessage (const grid_map_msgs::GridMap &message, grid_map::GridMap &gridMap, const std::vector< std::string > &layers, bool copyBasicLayers=true, bool copyAllNonBasicLayers=true) |
| static bool | fromMessage (const grid_map_msgs::GridMap &message, grid_map::GridMap &gridMap) |
| static bool | fromOccupancyGrid (const nav_msgs::OccupancyGrid &occupancyGrid, const std::string &layer, grid_map::GridMap &gridMap) |
| static bool | initializeFromImage (const sensor_msgs::Image &image, const double resolution, grid_map::GridMap &gridMap, const grid_map::Position &position=grid_map::Position::Zero()) |
| static bool | loadFromBag (const std::string &pathToBag, const std::string &topic, grid_map::GridMap &gridMap) |
| static bool | saveToBag (const grid_map::GridMap &gridMap, const std::string &pathToBag, const std::string &topic) |
| static bool | toCvImage (const grid_map::GridMap &gridMap, const std::string &layer, const std::string encoding, cv_bridge::CvImage &cvImage) |
| static bool | toCvImage (const grid_map::GridMap &gridMap, const std::string &layer, const std::string encoding, const float lowerValue, const float upperValue, cv_bridge::CvImage &cvImage) |
| static void | toGridCells (const grid_map::GridMap &gridMap, const std::string &layer, float lowerThreshold, float upperThreshold, nav_msgs::GridCells &gridCells) |
| static bool | toImage (const grid_map::GridMap &gridMap, const std::string &layer, const std::string encoding, sensor_msgs::Image &image) |
| static bool | toImage (const grid_map::GridMap &gridMap, const std::string &layer, const std::string encoding, const float lowerValue, const float upperValue, sensor_msgs::Image &image) |
| static void | toMessage (const grid_map::GridMap &gridMap, grid_map_msgs::GridMap &message) |
| static void | toMessage (const grid_map::GridMap &gridMap, const std::vector< std::string > &layers, grid_map_msgs::GridMap &message) |
| static void | toOccupancyGrid (const grid_map::GridMap &gridMap, const std::string &layer, float dataMin, float dataMax, nav_msgs::OccupancyGrid &occupancyGrid) |
| static void | toPointCloud (const grid_map::GridMap &gridMap, const std::string &pointLayer, sensor_msgs::PointCloud2 &pointCloud) |
| static void | toPointCloud (const grid_map::GridMap &gridMap, const std::vector< std::string > &layers, const std::string &pointLayer, sensor_msgs::PointCloud2 &pointCloud) |
| static void | toPointCloud (const grid_map::SignedDistanceField &signedDistanceField, sensor_msgs::PointCloud2 &pointCloud, size_t decimation=1, const std::function< bool(float)> &condition=[](float) { return true;}) |
ROS interface for the Grid Map library.
Definition at line 36 of file GridMapRosConverter.hpp.
| grid_map::GridMapRosConverter::GridMapRosConverter | ( | ) |
Default constructor.
Definition at line 30 of file GridMapRosConverter.cpp.
|
virtual |
Destructor.
Definition at line 34 of file GridMapRosConverter.cpp.
|
static |
Adds a color layer with data from an image.
| [in] | image | the image to be added. |
| [in] | layer | the layer that is filled with the image. |
| [out] | gridMap | the grid map to be populated. |
Definition at line 437 of file GridMapRosConverter.cpp.
|
static |
Adds a layer with data from image.
| [in] | image | the image to be added. If it is a color image (bgr or bgra encoding), it will be transformed in a grayscale image. |
| [in] | layer | the layer that is filled with the image data. |
| [out] | gridMap | the grid map to be populated. |
| [in] |
Definition at line 403 of file GridMapRosConverter.cpp.
|
static |
Converts a ROS grid map message to a grid map object.
| [in] | message | the grid map message. |
| [in] | layers | the layers to be copied. |
| [in] | copyBasicLayers | if true, basic layers are copied. |
| [in] | copyAllNonBasicLayers | if true, all basic layers are copied, otherwise only that one specified in layers. |
| [out] | gridMap | the grid map object to be initialized. |
Definition at line 38 of file GridMapRosConverter.cpp.
|
static |
Converts a ROS grid map message to a grid map object.
| [in] | message | the grid map message. |
| [out] | gridMap | the grid map object to be initialized. |
Definition at line 77 of file GridMapRosConverter.cpp.
|
static |
Converts an occupancy grid message to a layer of a grid map.
| [in] | occupancyGrid | the occupancy grid to be converted. |
| [in] | layer | the layer to which the occupancy grid will be converted. |
| [out] | gridMap | the grid map to be populated. |
Definition at line 283 of file GridMapRosConverter.cpp.
|
static |
Initializes the geometry of a grid map from an image messages. This changes the geometry of the map and deletes all contents of the layers!
| [in] | image | the image. |
| [in] | resolution | the desired resolution of the grid map [m/cell]. |
| [out] | gridMap | the grid map to be initialized. |
| [in] |
Definition at line 390 of file GridMapRosConverter.cpp.
|
static |
Loads a GridMap from a ROS bag.
| [in] | pathToBag | the path to the ROS bag file. |
| [in] | topic | the topic name of the grid map in the ROS bag. |
| [out] | gridMap | the grid map object to be initialized. |
Definition at line 540 of file GridMapRosConverter.cpp.
|
static |
Saves a grid map into a ROS bag. The timestamp of the grid map is used as time for storing the message in the ROS bag. The time value 0.0 is not a valid bag time and will be replaced by the current time.
| [in] | gridMap | the grid map object to be saved in the ROS bag. |
| [in] | pathToBag | the path to the ROS bag file. |
| [in] | topic | the name of the topic in the ROS bag. |
Definition at line 520 of file GridMapRosConverter.cpp.
|
static |
Creates a cv image from a grid map layer. This conversion sets the corresponding black and white pixel value to the min. and max. data of the layer data.
| [in] | grid | map to be added. |
| [in] | layer | the layer that is converted to the image. |
| [in] | encoding | the desired encoding of the image. |
| [out] | cvImage | the to be populated. |
Definition at line 484 of file GridMapRosConverter.cpp.
|
static |
Creates a cv image from a grid map layer.
| [in] | grid | map to be added. |
| [in] | layer | the layer that is converted to the image. |
| [in] | encoding | the desired encoding of the image. |
| [in] | lowerValue | the value of the layer corresponding to black image pixels. |
| [in] | upperValue | the value of the layer corresponding to white image pixels. |
| [out] | cvImage | to be populated. |
Definition at line 492 of file GridMapRosConverter.cpp.
|
static |
Converts a grid map object to a ROS GridCells message. Set the layer to be transformed as grid cells with layer, all other layers will be neglected. Values that are between the lower and upper threshold are converted to grid cells, other data is neglected.
| [in] | gridMap | the grid map object. |
| [in] | layer | the layer that is transformed as grid cells. |
| [in] | lowerThreshold | the lower threshold. |
| [in] | upperThreshold | the upper threshold. |
| [out] | gridCells | the message to be populated. |
Definition at line 367 of file GridMapRosConverter.cpp.
|
static |
Creates an image message from a grid map layer. This conversion sets the corresponding black and white pixel value to the min. and max. data of the layer data.
| [in] | grid | map to be added. |
| [in] | layer | the layer that is converted to the image. |
| [in] | encoding | the desired encoding of the image. |
| [out] | image | the message to be populated. |
Definition at line 465 of file GridMapRosConverter.cpp.
|
static |
Creates an image message from a grid map layer.
| [in] | grid | map to be added. |
| [in] | layer | the layer that is converted to the image. |
| [in] | encoding | the desired encoding of the image. |
| [in] | lowerValue | the value of the layer corresponding to black image pixels. |
| [in] | upperValue | the value of the layer corresponding to white image pixels. |
| [out] | image | the message to be populated. |
Definition at line 474 of file GridMapRosConverter.cpp.
|
static |
Converts all layers of a grid map object to a ROS grid map message.
| [in] | gridMap | the grid map object. |
| [out] | message | the grid map message to be populated. |
Definition at line 82 of file GridMapRosConverter.cpp.
|
static |
Converts requested layers of a grid map object to a ROS grid map message.
| [in] | gridMap | the grid map object. |
| [in] | layers | the layers to be added to the message. |
| [out] | message | the grid map message to be populated. |
Definition at line 87 of file GridMapRosConverter.cpp.
|
static |
Converts a grid map object to a ROS OccupancyGrid message. Set the layer to be transformed as the cell data of the occupancy grid with layer, all other layers will be neglected.
| [in] | gridMap | the grid map object. |
| [in] | layer | the layer that is transformed to the occupancy cell data. |
| [in] | dataMin | the minimum value of the grid map data (used to normalize the cell data in [min, max]). |
| [in] | dataMax | the maximum value of the grid map data (used to normalize the cell data in [min, max]). |
| [out] | occupancyGrid | the message to be populated. |
Definition at line 329 of file GridMapRosConverter.cpp.
|
static |
Converts a grid map object to a ROS PointCloud2 message. Set the layer to be transformed as the points of the point cloud with pointLayer, all other types will be added as additional fields.
| [in] | gridMap | the grid map object. |
| [in] | pointLayer | the type that is transformed to points. |
| [out] | pointCloud | the message to be populated. |
Definition at line 117 of file GridMapRosConverter.cpp.
|
static |
Converts a grid map object to a ROS PointCloud2 message. Set the layer to be transformed as the points of the point cloud with pointLayer and all other types to be added as additional layers with layers.
| [in] | gridMap | the grid map object. |
| [in] | layers | the layers that should be added as fields to the point cloud. Must include the pointLayer. |
| [in] | pointLayer | the layer that is transformed to points. |
| [out] | pointCloud | the message to be populated. |
Definition at line 124 of file GridMapRosConverter.cpp.
|
static |
Converts a grid map signed distance field object to a ROS PointCloud2 message.
| [in] | gridMap | the grid map object. |
| [out] | pointCloud | the message to be populated. |
| [in] | decimation | : specifies how many points are returned. 1: all points, 2: every second point, etc. |
| [in] | condition | : specifies the condition on the distance value to add it to the pointcloud (default = any distance is added) |
Definition at line 225 of file GridMapRosConverter.cpp.