This is a C++ ROS package for extracting convex polygons from elevation maps. In a first step, the terrain is segmented into planes, and their non-convex contour is extracted. In a second step, a local convex approximation can be obtained. fork from: https://github.com/leggedrobotics/elevation_mapping_cupy/tree/main/plane_segmentation
// only tested on ros2 iron
colcon build --packages-select build convex_plane_decomposition_ros
ros2 launch convex_plane_decomposition_ros convex_plane_decomposition.launch.py
ros2 launch convex_plane_decomposition_ros demo.launch.py
A simple 2D demo the convex inner approximation is available:
ros2 run convex_plane_decomposition_ros convex_plane_decomposition_ros_TestShapeGrowing
You can select input map topics, pipeline parameters etc. in the respective yaml file in
convex_plane_decomposition_ros/config/
Some other parameters are set through the launch files.