|
|
8d58d5e34c
|
feat: Terrain classification for speed adaptation (Issue #469)
Implement multi-sensor terrain classification using RealSense D435i depth and RPLIDAR A1M8:
- saltybot_terrain_classification: New ROS2 package for terrain classification
- TerrainClassifier: Rule-based classifier matching depth variance + reflectance to terrain type
(smooth/carpet/grass/gravel) with hysteresis + confidence scoring
- DepthExtractor: Extracts roughness from depth discontinuities and surface gradients
- LidarExtractor: Extracts reflectance from RPLIDAR scan intensities
- terrain_classification_node: 10Hz node fusing both sensors, publishes:
- /saltybot/terrain_type (JSON with type, confidence, speed_scale)
- /saltybot/terrain_type_string (human-readable type)
- /saltybot/terrain_speed_scale (0.0-1.0 speed multiplier for smooth/carpet/grass/gravel)
Speed scales: smooth=1.0, carpet=0.9, grass=0.75, gravel=0.6
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
2026-03-06 16:43:21 -05:00 |
|