ROS package that converts 2D occupancy grid maps into 3D Gazebo simulation environments with obstacle meshes.
map2gazebo is a ROS package that converts 2D occupancy grid maps into 3D simulation environments for Gazebo. It automatically generates mesh files representing obstacles as tall boxes, allowing robotics developers to quickly create Gazebo worlds from existing mapping data. This eliminates the need for manual 3D environment modeling when transitioning from mapping to simulation.
Robotics developers and researchers using ROS and Gazebo who need to create simulation environments from 2D occupancy maps, particularly those working with SLAM, navigation, or autonomous systems.
It provides an automated pipeline between mapping and simulation, saving significant time compared to manual Gazebo world creation. The package integrates seamlessly with ROS ecosystems and offers configurable parameters for flexible obstacle representation.
map2gazebo is a ROS package that automatically transforms 2D occupancy grid maps into 3D simulation environments for Gazebo. It subscribes to map topics and generates mesh files representing obstacles as tall boxes, enabling rapid prototyping of robotic simulation worlds from existing mapping data.
map_server) to capture occupancy grid data.gazebo_world.launch to automatically launch Gazebo with the generated map mesh pre-populated.The project prioritizes simplicity and automation in bridging the gap between 2D mapping and 3D simulation, reducing manual environment creation for robotics developers.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Subscribes to ROS map topics and automatically exports STL or DAE mesh files, eliminating manual 3D modeling work for Gazebo environments.
Uses standard ROS topics and launchfiles, such as compatibility with map_server, making it easy to slot into existing ROS-based robotics workflows.
Allows adjustment of box height and occupancy thresholds via YAML parameters, providing flexibility in how obstacles are represented in simulation.
Includes gazebo_world.launch to automatically launch Gazebo with the generated mesh pre-populated, speeding up simulation testing and prototyping.
YAML parameter files have limitations, such as not supporting substitution args for export directory, and launchfile param tags can override YAML values, leading to configuration complexity.
Installing soft dependencies for Collada export can be tricky, as the README notes that 'pip install trimesh[soft]' failed, requiring manual installation of packages like pycollada.
Only generates tall boxes for obstacles, which may not suit simulations requiring varied or complex 3D geometries beyond simple shapes.