A unified framework for autonomous driving dataset management for end-to-end model development
Project description
StandardE2E provides a consistent interface for preprocessing, loading, and training with multimodal data from various end-to-end autonomous driving datasets. It standardizes the complex process of working with different dataset formats, allowing researchers to focus on model development rather than data engineering.
โ ๏ธ Early Beta
This project is in early beta. Read the Docs and the PyPI package are not yet available, but will be available soon.
๐ Documentation
- Latest docs: https://standarde2e.readthedocs.io/en/latest/
๐ฆ Installation
Option 1: From PyPI (Recommended for Users)
pip install standard-e2e
Option 2: Manual Development Setup
# Create a new conda environment
conda create -n standard_e2e python=3.12
conda activate standard_e2e
# Install the package in development mode
pip install -e .
Plan for E2E Autonomous Driving Datasets Support
| Dataset | Cameras | Lidar | HD Map | Detections | Driving Command | Preference Trajectories |
|---|---|---|---|---|---|---|
| Waymo End-to-end |
โ | โ | โ | โ | โ | |
| Waymo Perception |
โ | โ | โ | โ | โ | |
| Navsim |
โ | โ | โ | โ | โ | |
| WayveScenes101 |
โ | โ | โ | โ | โ | |
| Argoverse 2 Sensor |
โ | โ | โ | โ | โ | |
| Argoverse 2 Lidar |
โ | โ | โ | โ | โ | โ |
| Argoverse 2 Map Change |
โ | โ | โ | โ | โ | โ |
| KITTI |
โ | โ | โ | โ | โ | |
| KITTI-360 |
โ | โ | โ | โ | โ | |
| Waymo Motion Prediction |
โ | โ | โ | โ | โ | โ |
| Argoverse 2 Motion Forecasting [?] |
โ | โ | โ | โ | โ | โ |
๐ Key Features
- Unified Dataset Interface: Work with multiple datasets through a single API
- Multimodal Support: Cameras, LiDAR
, HD maps
, trajectories, detections and more
- Flexible Preprocessing: Configurable pipelines with standardization and augmentation
- Trajectory Management: Advanced handling of time-series vehicle data
- PyTorch Integration: Ready-to-use datasets and dataloaders
๐ Quick Start & Examples
Notebooks
- intro_tutorial.ipynb - Introduction to StandardE2E framework
- containers.ipynb - Working with data containers
- multi_dataset_training_and_filtering.ipynb - Multi-dataset training and filtering
- creating_custom_adapter.ipynb - Creating custom dataset adapters
Code Examples
-
Preprocess Waymo End-to-end dataset - Convert raw dataset to standardized format (
dataset_preprocessing.py)python examples/dataset_preprocessing.py \ --e2e_dataset_path E2E_DATASET_PATH \ --split {training,val,test} \ --processed_data_path PROCESSED_DATA_PATH -
Train your model - End-to-end training with multimodal data (
very_simple_training.py). This example illustrates iteration over the preprocessed dataset. Also, in this example for validation we use 2 DataLoaders - full validation split and filtered validation split that only contains samples with preferred trajectories.python examples/very_simple_training.py --processed_data_path PROCESSED_DATA_PATH -
Create a unified DataLoader: This example shows how to process 2 different datasets within same DataLoader. First, please do preprocessing for
Waymo E2EandWaymo Perceptiondatasets in order to utilize them in the DataLoader with the script (prepare_datasets_waymo_e2e_perception.sh).The script
creating_unified_dataloader.pycreated a unified dataloader that iterates over bothWaymo E2EandWaymo Perceptionin one epoch providing consistent data structure.python examples/creating_unified_dataloader.py --processed_data_path PROCESSED_DATA_PATH -
Add a new dataset adapter - Guide for adding support for new datasets (
adding_new_dataset.md)
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Citation
If you find this project useful, you can support it by giving it a โญ, or by contributing with your PRs / issues / feature requests. Also, if you use this project, you can greatly support it by citing
@software{standarde2e,
title={StandardE2E: A Unified Framework for Autonomous Driving Dataset Management},
author={stepankonev},
year={2025},
url={https://github.com/stepankonev/StandardE2E}
}
Markdown
[](https://github.com/stepankonev/StandardE2E)
HTML
<a href="https://github.com/stepankonev/StandardE2E">
<img src="https://raw.githubusercontent.com/stepankonev/StandardE2E/refs/heads/main/assets/StandardE2E_gh_badge_dark.svg" alt="StandardE2E"/>
</a>
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 standard_e2e-0.0.2.tar.gz.
File metadata
- Download URL: standard_e2e-0.0.2.tar.gz
- Upload date:
- Size: 83.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4536f5009e40a42f3a572a7eb36de189d617245e9911ef143e2a09275ff45ea7
|
|
| MD5 |
93590b905ac959d6e2bf6cdbfaaf71ba
|
|
| BLAKE2b-256 |
bf343e2628ea9476cdc00b1db5ab3f7239e15aae0a1ca43c113a85e2a82d0bb7
|
File details
Details for the file standard_e2e-0.0.2-py3-none-any.whl.
File metadata
- Download URL: standard_e2e-0.0.2-py3-none-any.whl
- Upload date:
- Size: 102.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d46177657c434b3ad4a673d6de3baf3350895e4d959f8a5eb6367e8b6138a593
|
|
| MD5 |
26f97f54431293ae3b3405b5c51ed77a
|
|
| BLAKE2b-256 |
bc24c93a12fe24fdb874697c6aa511c888941aea93974130954a118045bec725
|