Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Robotic Tooling
  3. elevation_mapping

elevation_mapping

BSD-3-ClauseC++

A ROS package for robot-centric elevation mapping that handles pose uncertainty for navigation on rough terrain.

GitHubGitHub
1.8k stars508 forks0 contributors

What is elevation_mapping?

Elevation Mapping is a ROS package that creates local elevation maps for mobile robots navigating rough terrain. It uses robot-centric mapping to handle pose estimation drift by aggregating uncertainty through the robot's motion, providing a probabilistic terrain representation. The package processes distance sensor data (e.g., from LiDAR or depth cameras) to generate elevation maps that are essential for locomotion planning and local navigation.

Target Audience

Robotics researchers and engineers working on mobile robot navigation, particularly those using legged robots or ground vehicles in unstructured outdoor environments. It's designed for teams with ROS expertise who need reliable terrain perception for autonomous locomotion.

Value Proposition

Developers choose Elevation Mapping for its explicit handling of pose uncertainty, which is critical for robots operating in GPS-denied or slippery terrain. Its robot-centric approach and probabilistic fusion provide more reliable maps than traditional methods when localization drifts, and its tight ROS integration makes it easy to incorporate into existing autonomy stacks.

Overview

Robot-centric elevation mapping for rough terrain navigation

Use Cases

Best For

  • Legged robot locomotion planning over rough terrain
  • Mobile robot navigation in unstructured outdoor environments
  • Terrain mapping with uncertain robot localization
  • Real-time elevation mapping for autonomous vehicles
  • Research on probabilistic terrain perception
  • Integrating multiple depth sensors for robust terrain estimation

Not Ideal For

  • Projects requiring long-term maintenance and active support, as the package is no longer maintained
  • Applications needing global, consistent maps over large static areas, since it focuses on local robot-centric mapping
  • Teams not using ROS or with limited ROS expertise, due to tight integration and complex dependencies
  • Simple indoor navigation with precise localization, where the probabilistic overhead is unnecessary

Pros & Cons

Pros

Pose Drift Robustness

Explicitly handles localization uncertainty by maintaining a robot-centric map that aggregates drift, crucial for navigation in rough terrain as described in the cited papers.

Probabilistic Data Fusion

Uses Mahalanobis distance thresholds to fuse sensor data probabilistically, providing reliable height estimates even with noisy inputs, as detailed in the parameters section.

Multi-Sensor Flexibility

Supports various distance sensors like Kinect and LiDAR through configurable input sources, demonstrated in the parameter examples for pointcloud topics.

Dynamic Environment Adaptation

Includes visibility cleanup and continuous cleanup options to manage moving objects and outdated measurements, enhancing map accuracy in changing terrains.

Cons

Unmaintained Codebase

The README notes it is no longer actively maintained, risking compatibility issues with newer ROS versions and lack of bug fixes or support.

Complex Setup Requirements

Depends on multiple ROS packages and libraries like Grid Map, kindr, and PCL, making initial installation and integration challenging for new users.

Research Code Instability

Advertised as research code with frequent changes and no fitness guarantee, making it unreliable for production deployments without significant customization.

Frequently Asked Questions

Quick Stats

Stars1,829
Forks508
Contributors0
Open Issues91
Last commit1 year ago
CreatedSince 2014

Tags

#robotics#sensor-fusion#mobile-robots#mapping#ros#point-cloud-processing#legged-robotics#navigation#autonomous-systems

Built With

E
Eigen
C
Catkin
R
ROS
P
Point Cloud Library (PCL)
C
C++

Included in

Robotic Tooling3.8k
Auto-fetched 3 hours ago

Related Projects

GitHub repositoryGitHub repository

Open3D: A Modern Library for 3D Data Processing

Stars13,819
Forks2,597
Last commit1 day ago
DracoDraco

Draco is a library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics.

Stars7,415
Forks1,063
Last commit22 days ago
mmdetection3dmmdetection3d

OpenMMLab's next-generation platform for general 3D object detection.

Stars6,486
Forks1,784
Last commit2 years ago
OpenPCDetOpenPCDet

OpenPCDet Toolbox for LiDAR-based 3D Object Detection.

Stars5,660
Forks1,461
Last commit9 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub