TOP-Nav: Legged Navigation Integrating Terrain, Obstacle and Proprioception Estimation
<|reference_start|>TOP-Nav: Legged Navigation Integrating Terrain, Obstacle and Proprioception Estimation: Legged navigation is typically examined within open-world, off-road, and challenging environments. In these scenarios, estimating external disturbances requires a complex synthesis of multi-modal information. This underlines a major limitation in existing works that primarily focus on avoiding obstacles. In this work, we propose TOP-Nav, a novel legged navigation framework that integrates a comprehensive path planner with Terrain awareness, Obstacle avoidance and close-loop Proprioception. TOP-Nav underscores the synergies between vision and proprioception in both path and motion planning. Within the path planner, we present and integrate a terrain estimator that enables the robot to select waypoints on terrains with higher traversability while effectively avoiding obstacles. In the motion planning level, we not only implement a locomotion controller to track the navigation commands, but also construct a proprioception advisor to provide motion evaluations for the path planner. Based on the close-loop motion feedback, we make online corrections for the vision-based terrain and obstacle estimations. Consequently, TOP-Nav achieves open-world navigation that the robot can handle terrains or disturbances beyond the distribution of prior knowledge and overcomes constraints imposed by visual conditions. Building upon extensive experiments conducted in both simulation and real-world environments, TOP-Nav demonstrates superior performance in open-world navigation compared to existing methods.<|reference_end|>
@article{ren2024top-nav:,
    title={TOP-Nav: Legged Navigation Integrating Terrain, Obstacle and
  Proprioception Estimation},
    author={Junli Ren, Yikai Liu, Yingru Dai, Junfeng Long, Guijin Wang},
    journal={arXiv preprint arXiv:2404.15256},
    year={2024},
    archivePrefix={arXiv},
    eprint={2404.15256},
    primaryClass={cs.RO cs.AI cs.CV cs.SY eess.SY}
}