MajidMoghadam2006 / frenet-trajectory-planning-framework

50 stars 14 forks source link

frenet-trajectory-planning-in-CARLA

This project introduces a framework for long-term short-term decision-making and planning for self-driving cars on the Frenet frame. We have utilized the Frenet frame for both the driving route definition and the trajectory generation. We have also provided a forward and inverse transformation from Cartesian to Frenet coordinates.

Installation

Client Installation

  1. git clone https://github.com/MajidMoghadam2006/frenet-trajectory-planning-framework.git
  2. cd frenet-trajectory-planning-framework/
  3. pip3 install -r requirements.txt (requires Python 3.7 or newer)

Simulation Server Installation

Use pre-compiled carla versions - (CARLA 9.9.2 Recommended)

  1. Download the pre-compiled CARLA simulator from CARLA releases page
  2. Now you can run this version using ./CarlaUE4.sh command
  3. Create a virtual Python environemnt, e.g. using conda create -n carla99, and activate the environment, i.e. conda activate carla99
  4. If easy_install is not installed already, run this: sudo apt-get install python-setuptools
  5. Navigate to PythonAPI/carla/dist
  6. Install carla as a python package into your virtual environment (get help): easy_install --user --no-deps carla-X.X.X-py3.7-linux-x86_64.egg

Now you may import carla in your python script.

Some Features

Example execution:

Terminal-2

---cfg_file: specifies the config file ---env: Gym environment ID

Important Directories

To cite this repository in publications:


  title={An Autonomous Driving Framework for Long-term Decision-making and Short-term Trajectory Planning on Frenet Space},
  author={Moghadam, Majid and Elkaim, Gabriel Hugh},
  journal={arXiv preprint arXiv:2011.13099},
  year={2020}
}