# STEB-Planner **Repository Path**: wenb11/STEB-Planner ## Basic Information - **Project Name**: STEB-Planner - **Description**: paper: A Real-time Spatio-Temporal Trajectory Planner for Autonomous Vehicles with Semantic Graph Optimization - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-18 - **Last Updated**: 2025-04-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # STEB-Planner STEB-Planner is a spatio-temporal elastic bands based trajectory planner for autonomous vehicles using semantic graph optimization. > The paper of this method is published on the IEEE Robotics and Automation Letters (RA-L) [Read the paper ](https://ieeexplore.ieee.org/document/10759749) ## 1. Performance Display ### 1.1 Static obstacle avoidance

Scenario 1: Static Obstacle Avoidance

Scenario 2: Static Obstacle Avoidance
### 1.2 Dynamic traffic Interaction GIF playback speed is 1.6 times. More scenes will be uploaded later.

Scenario 3: Overtaking a slow car ahead

Scenario 4: Unprotected Left Turn

Scenario 5: Merge Into the Traffic

Scenario 4: Unprotected Left Turn
## 2. Installation ### 2.1 Prerequisites Our software is developed and tested in Ubuntu20.04 with ROS2 galactic. Follow [this link](https://docs.ros.org/en/galactic/Installation.html) to install galactic. ### 2.2 Required Library - Eigen3 - PCL - OpenCV - G2O Instal the g2o ```bash sudo apt-get install ros-galactic-libg2o ``` ### 2.3 Download & Compile ```bash # Download cd ~/your_workspace/src git clone https://github.com/heshanchuan/STEB-Planner.git # Compile cd ../ source /opt/ros/galactic/setup.bash colcon build --symlink-install --cmake-args -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_BUILD_TYPE=Release ``` ## 3. Usage example ### 3.1 Run the STEB planner ```bash source install/setup.bash ros2 launch steb_planner steb_planner_test.launch.xml ``` ### 3.2 Play the rosbag ```bash source install/setup.bash cd src/STEB-Planner/rosbags ros2 bag play rosbag2_2025_02_25-16_47_27/ --clock #or ros2 bag play rosbag2_2024_05_03-16_34_11/ --clock ``` ### 3.3 then you will see the following pics

rosbag 1

rosbag 2
## 4. Release History Notes: 1.0.0 will be our first elegant version. * 0.1 * CHANGE: First upload readme and some multimedia files * 1.0 * CHANGE: Upload the whole project ## 5. Contributing 1. Fork it () 2. Create your feature branch (`git checkout -b feature/fooBar`) 3. Commit your changes (`git commit -am 'Add some fooBar'`) 4. Push to the branch (`git push origin feature/fooBar`) 5. Create a new Pull Request ## 6. License The source code is released under [MIT](https://opensource.org/licenses/MIT) license. ## 7. Disclaimer This is research code, it is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of merchantability or fitness for a particular purpose. ## 8. Acknowledgments In this project, certain files or functions from the following open-source codes have been utilized, and we would like to express our gratitude here: - [Autoware](https://github.com/autowarefoundation/autoware.universe) - [EPSILON](https://github.com/HKUST-Aerial-Robotics/EPSILON) - [teb_local_planner](https://github.com/rst-tu-dortmund/teb_local_planner) ## Citation ``` @ARTICLE{10759749, author={He, Shan and Ma, Yalong and Song, Tao and Jiang, Yongzhi and Wu, Xinkai}, journal={IEEE Robotics and Automation Letters}, title={A Real-Time Spatio-Temporal Trajectory Planner for Autonomous Vehicles With Semantic Graph Optimization}, year={2025}, volume={10}, number={1}, pages={72-79}, keywords={Trajectory;Semantics;Vehicle dynamics;Optimization;Planning;Trajectory planning;Real-time systems;Autonomous vehicles;Safety;Roads;Autonomous vehicle navigation;intelligent transportation systems;motion and path planning}, doi={10.1109/LRA.2024.3504239}} ```