Omega-Prime: Data Model, Data Format and Python Library for Handling Ground Truth Traffic Data
Project description
[!IMPORTANT]
The data model and specification are not finalized and are still under discussion. See this repository as a proof of concept.
Omega-Prime: Data Model, Data Format and Python Library for Handling Ground Truth Traffic Data
Data Model, Format and Python Library for ground truth data containing information on dynamic objects, map and environmental factors optimized for representing urban traffic. The repository contains:
- Sepcification Document: to be released
- Data Model: What signals exists and how these are defined.
- Data Format Specification: How to exchange and store those signals.
- Python Library:
- Creation of omega-prime files from
- ASAM OSI GroundTruth trace (e.g., output of esmini)
- Table of moving object data (e.g., csv data)
- ASAM OpenDRIVE map
- LevelXData datasets through lxd-io
- Plotting of data
- Validation of data
- Interpolation of data
- Creation of omega-prime files from
The data model and format heavily utilze ASAM OpenDRIVE and ASAM Open-Simulation-Interface GroundTruth messages. omega-prime sets requirements on presence and quality of ASAM OSI GroundTruth messages and ASAM OpenDRIVE files and defines a file format the exchange and storage of such data.
Omega-Prime is the successor of the OMEGAFormat. It has the benefit that its definition is directly based on the established standards ASAM OSI and ASAM OpenDRIVE and carries over the data quality requirements and the data tooling from OMEGAFormat. Therefore, it should be easier to incorporate omega-prime into existing workflows and tooling.
To learn more about the example data read example_files/README.md. Example data was taken and created from esmini.
Installation
pip install omega-prime
Usage
A detailed introduction to the features and usage can be found in tutorial.ipynb
Create an omega-prime file from an OSI GroundTruth message trace and an OpenDRIVE map:
import omega_prime
r = omega_prime.Recording.from_file('example_files/pedestrian.osi', xodr_path='example_files/fabriksgatan.xodr')
r.to_mcap('example.mcap')
If you want to create an OSI trace on your own in python, check out the python library betterosi.
Read and plot an omega-prime file:
r = omega_prime.Recording.from_file('example.mcap')
ax = r.plot()
Convert Existing Datasets to omega-prime
LevelXData
You can convert data from LevelXData to omega-prime. Under the hood lxd-io is used to perform the conversion.
Install the required dependencies with pip install omega-prime[lxd] (lxd-io uses cv2 which requires libGL. This could require extra installation steps on headless systems).
from omega_prime.converters import convert_lxd
convert_lxd('./exiD-dataset-v2.0', './exiD-as-omega-prime', n_workers=4)
or with omega-prime from-lxd ./exiD-dataset-v2.0 ./exiD-as-omega-prime --n-workers=4.
Tested with exiD-v2.0 and inD-v1.1
File Format
Based on MCAP, ASAM OSI and ASAM OpenDRIVE the ASAM OSI GroundTruth messages and ASAM OpenDRIVE map are packaged as shown in the following figure.
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 Distribution
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 omega_prime-0.1.6.tar.gz.
File metadata
- Download URL: omega_prime-0.1.6.tar.gz
- Upload date:
- Size: 52.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23bc11bea344d3b9bc25c5936da5c350e5df308a5f79c8134b5bf96ab55d49da
|
|
| MD5 |
c2882d2a5e1ad118b7e4bec122d98758
|
|
| BLAKE2b-256 |
5287cf14fc666c8dcabdd18c7026e43b08af1e5f70aa12ab2794936145e5faa6
|
File details
Details for the file omega_prime-0.1.6-py3-none-any.whl.
File metadata
- Download URL: omega_prime-0.1.6-py3-none-any.whl
- Upload date:
- Size: 62.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f81d2cd40d51c547b6125c6745f498734c20a4b0197645d35955bb76a59c59f7
|
|
| MD5 |
bf123542ebd72508958095c4b68de75c
|
|
| BLAKE2b-256 |
ef51abbdc6b5d941e94acb5b1200032554136714329ac75866a3a1a5aaf19c36
|