Curvilinear (Frenet) Coordinate System for motion planning.
Project description
CommonRoad Curvilinear Coordinate System (CLCS)
Curvilinear coordinate frames (also Frenet frames) are a widely used representation in motion planning for automated vehicles. Curvilinear frames are aligned with a reference path and Cartesian points (x, y) are described by coordinates (s, d), where s is the arc length and d the lateral deviation to the reference path. The coordinate transformation is performed via a projection on the reference path for which different methods can be used [1] [2].
This project software for constructing and using curvilinear coordinate frames for reference paths given as polylines. We offer:
- C++ backend for efficient coordinate transformations
- Python frontend for usage with CommonRoad scenarios
- various utility methods for processing reference path (e.g., smoothing, curvature reduction, resampling etc ...)
:wrench: Installation
We provide two installation options for CommonRoad-CLCS: Installation as a Python package (recommended) or building from source.
- Python Package: Install the python package via
pipin your Conda environment:pip install commonroad-clcs
- Build from source: To build the project from source and install it in your Conda environment, please refer to the README_FOR_DEVS. This option is only recommended for advanced users who would like to use or modify the C++ backend directly.
:link: System Requirements
The software is written in Python 3.10 and C++17, and was tested on Ubuntu 20.04 and 22.04. It should be compatible with later versions. For building the code, the following minimum versions are required:
- GCC and G++: version 10 or above
- CMake: version 3.28 or above.
- Pip: version 24.2 or above
We recommend using Anaconda as a package manager for Python.
:rocket: Getting Started
To get started, please see the minimal example in ./tutorials/clcs_minimal_example.py.
For more details, please refer to the Jupyter notebook tutorials provided in ./tutorials/.
:books: Documentation
A documentation including APIs is available on our website at: https://cps.pages.gitlab.lrz.de/commonroad/commonroad-clcs/.
To build the documentation locally, please install the optional docs listed in pyproject.toml first.
The documentation can then be built using mkdocs via:
mkdocs build
You can browse the doc by launching ./docs/site/index.html
:busts_in_silhouette: Authors
Contributors (alphabetic order by last name): Peter Kocsis, Edmond Irani Liu, Stefanie Manzinger, Tobias Markus, Evald Nexhipi, Vitaliy Rusinov, Daniel Tar, Gerald Würsching
:speech_balloon: References
If you use our software for research, please cite:
@inproceedings{wursching2024robust,
author={W{\"u}rsching, Gerald and Althoff, Matthias},
title={Robust and Efficient Curvilinear Coordinate Transformation with Guaranteed Map Coverage for Motion Planning},
booktitle={Proc. of the IEEE Intelligent Vehicles Symposium},
year={2024}
}
Additional references:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file commonroad_clcs-2025.2.0.tar.gz.
File metadata
- Download URL: commonroad_clcs-2025.2.0.tar.gz
- Upload date:
- Size: 3.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f62d05fea6a2558a8f7fde2e717ef4ec8326ae34485fc7a2e5cdb63876559779
|
|
| MD5 |
cd8565e93ffc8934198dfc663930881d
|
|
| BLAKE2b-256 |
d5282b189ca41cb50e6103f582e5cecf93ffc53f311422b36798c7a820483c9c
|
File details
Details for the file commonroad_clcs-2025.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: commonroad_clcs-2025.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 809.5 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b4bdae23f3230cda55829ef9edf0b52f44f72f7c8dd2fba4cc1f948b6162a7ff
|
|
| MD5 |
078fa579c5b31ee9b93a106c08c5c06c
|
|
| BLAKE2b-256 |
35fe104344a6088d2159b2585b9ad6b1fcaf9fa033e6f973482fade207c5260e
|
File details
Details for the file commonroad_clcs-2025.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: commonroad_clcs-2025.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 809.5 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de4b876ba4941afbcc709312581929e19674f4dc071041d247d74baf06b0eba9
|
|
| MD5 |
2bf21904aa67a6a8e7fbf88a9c5f1d4c
|
|
| BLAKE2b-256 |
9349baa6ff40e6cc1f6d8765b0d720735270cf5ecb2fe073c51ef12f655d719f
|
File details
Details for the file commonroad_clcs-2025.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: commonroad_clcs-2025.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 810.8 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74462bbd55519950c3f22b43511740eeb94b82bab9480b8e6f4065a290d207a5
|
|
| MD5 |
8185df4e554a5737f74d0f896016970c
|
|
| BLAKE2b-256 |
9020be3cbcb496b1931efdd34008646be58835e54f8a164dd7c63fb79ed7177b
|
File details
Details for the file commonroad_clcs-2025.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: commonroad_clcs-2025.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 811.0 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f791cf9c70fe681cc177e80420298a3999d3a6ec6588f787c1f6c4a23e2f545e
|
|
| MD5 |
388701cbbc143e4c75f82d55552a5466
|
|
| BLAKE2b-256 |
bb04390b272b8a250a805feae72d74bca3f156766bcc9a7c90aa878e9f513220
|