How we-autopilot/mapping-and-localization works
This ROS 2 repository provides a bare-minimum mapping and localization pipeline: perception data is republished with short-term lane-boundary fallback, while optional Kitware SLAM outputs are bridged into AP1 localization and map outputs. A separate in-memory point registry serves planning/mapping clients. The README documents these capabilities; sampled source confirms the perception, SLAM bridge, map bridge, and registry behavior. The C++ package has no sampled runtime nodes, so it is not represented as a processing subsystem.
Main entry points: mapping_pipeline.launch.py Pipeline Launch · slam_map_bridge_node.py SLAM Map Bridge · slam_bridge_node.py SLAM Bridge · perception_pipeline_node.py Perception Pipeline
Components 16
Perception Pipeline
- Synthetic Publisher
mapping_localization_python/mapping_localization_python/synthetic_perception_publisher_node.py - Perception Pipeline
mapping_localization_python/mapping_localization_python/perception_pipeline_node.py
SLAM Localization
- Kitware SLAM
- SLAM Bridge
mapping_localization_python/mapping_localization_python/slam_bridge_node.py
Map Outputs
- SLAM Map Bridge
mapping_localization_python/mapping_localization_python/slam_map_bridge_node.py - Point Cloud Utilities
mapping_localization_python/mapping_localization_python/point_cloud_utils.py
Point Registry
- Stored Point Registry
mapping_localization_python/mapping_localization_python/stored_point_registry_node.py
Other components
- Perception
- Mapping / P&C
- Localization Consumers
- SLAM Keypoint Maps
- Map Consumers
- Map Save Client
- Planning / Mapping Clients
- Pipeline Launch
mapping_localization_python/launch/mapping_pipeline.launch.py - TF Transforms
Connections 18
- Perception → Perception Pipeline: publishes entities / lanes
- Synthetic Publisher → Perception Pipeline: publishes sample data
- Perception Pipeline → Mapping / P&C: publishes mapped entities / lanes
- Kitware SLAM → SLAM Bridge: publishes odometry
- SLAM Bridge → Localization Consumers: publishes pose, odometry, distance
- SLAM Bridge → TF Transforms: looks up transforms
- SLAM Keypoint Maps → SLAM Map Bridge: publishes keypoint clouds
- SLAM Map Bridge → Point Cloud Utilities: calls merge / grid helpers
- SLAM Map Bridge → Map Consumers: publishes merged map / grid
- Map Save Client → SLAM Map Bridge: calls save service
- SLAM Map Bridge → Kitware SLAM: calls upstream save service
- Planning / Mapping Clients → Stored Point Registry: calls create / delete / lookup
- Pipeline Launch → Perception Pipeline: starts
- Pipeline Launch → Stored Point Registry: starts
- Pipeline Launch → SLAM Bridge: starts
- Pipeline Launch → SLAM Map Bridge: starts optionally
- Pipeline Launch → Kitware SLAM: starts optionally
- Pipeline Launch → Synthetic Publisher: starts optionally