Skip to main content

UrbanIng Dataset DevKit

Project description

UrbanIng-V2X: A Large-Scale Multi-Vehicle, Multi-Infrastructure Dataset Across Multiple Intersections for Cooperative Perception

This package provides tools for dataset download, extraction, conversion, handling and visualization for the UrbanIng-V2X dataset.

Install via PyPI

pip install urbaning

Downloading the dataset

from urbaning.data import download_dataset, download_one_sequence
download_dataset(download_dir="datasets/UrbanIng-V2X") # to download the entire dataset
download_one_sequence(download_dir="datasets/UrbanIng-V2X") # to download only one sequence for quick start purposes - optionally pass a sequence_name

Unzip the dataset

Note: 7zip has to be installed.

from urbaning.data import unzip_dataset
unzip_dataset(dataset_folder="datasets/UrbanIng-V2X")
# If 7zip is not visible in the environment, pass also the sevenz_executable parameter

Dataset structure

. [DATA_ROOT] # Dataset root folder
โ”œโ”€โ”€ ๐Ÿ“‚dataset # data files
โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚20241126_0001_crossing2_00 # sequence 1's data
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_11_lidar # this and upcoming folders -> infrastructure lidars
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐ŸŒซ๏ธ1732632673950.npz # point cloud captured by crossing2_11_lidar at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_12_lidar
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_31_lidar
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_32_lidar
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_13_thermal_camera # this and upcoming folders -> infrastructure cameras
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ1732632673956.jpg # image captured by crossing2_13_thermal_camera at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_14_thermal_camera 
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_15_thermal_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_33_thermal_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚crossing2_34_thermal_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_back_left_camera # this and upcoming folders -> vehicle1 cameras
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ1732632674019.jpg # image captured by vehicle1_back_left_camera at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_back_right_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_front_left_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_front_right_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_left_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_right_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_middle_lidar # vehicle1 lidar
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐ŸŒซ๏ธ1732632673950.npz # point cloud captured by vehicle1_middle_lidar at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle1_state
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿš˜1732632670000.json # state information of vehicle1 at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_back_left_camera # this and upcoming folders -> vehicle2 cameras
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ1732632674019.jpg # image captured by vehicle2_back_left_camera at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_back_right_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_front_left_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_front_right_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_left_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_right_camera
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_middle_lidar # vehicle2 lidar
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐ŸŒซ๏ธ1732632673950.npz # point cloud captured by vehicle2_middle_lidar at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚vehicle2_state
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿš˜1732632670000.json # state information of vehicle2 at this time stamp
โ”‚   โ”‚   โ”‚   โ””   ...
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿงญcalibration.json # all intrinsic and extrinsic calibration parameters for both vehicles and infrastructures
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“Štimesync_info.csv # time synchronization information linking several sensor data together 
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„weather_data.json # weather_data during the data collection
โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚20241126_0004_crossing2_00
โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚20241126_0008_crossing1_00
โ”‚   โ””   ...
โ”œโ”€โ”€ ๐Ÿ“‚labels # label files
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„20241126_0001_crossing2_00.json # sequence 1's labels
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„20241126_0004_crossing2_00.json
โ”‚   โ”œโ”€โ”€ ๐Ÿ“„20241126_0008_crossing1_00.json
โ”‚   โ””   ...
โ”œโ”€โ”€ ๐Ÿ“‚digital_twin # carla digital twin folder
โ”œโ”€โ”€ ๐Ÿ“„av_vehicle_data.json # static details like track width, axle length for connected vehicles
โ”œโ”€โ”€ ๐Ÿ“„crossings_lanelet2map.osm # HD Lanelet map of the crossings
โ””โ”€โ”€ ๐Ÿ“„labels_av_track_ids.json # track IDs of connected vehicles in the labels

Accessing the dataset

from urbaning import Dataset
# root folder where the dataset is downloaded and unzipped
root_folder = "datasets/UrbanIng-V2X"
# load the complete dataset
dataset = Dataset(root_folder)
# number of total sequences
print(len(dataset))

Accessing a sequence

# use indexing from the dataset
index = 10
# a Sequence instance
print(type(dataset[index]))
# or simple iterate over the dataset
for sequence in dataset:
    print(sequence.sequence_name)
    break

# you can also load one sequence manually
from urbaning.data import Sequence
# sequence to load
sequence_name = "20241126_0017_crossing1_00"
# load the sequence
sequence = Sequence(root_folder, sequence_name)

Accessing a frame

# use indexing from the sequence
index = 115
# a Frame instance
print(type(sequence[index]))
# or simple iterate over the sequence
for frame in sequence:
    # this frame timestamp
    print(frame.timestamp)
    break

For more information on how to access the dataset, check out the tutorial.ipynb file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

urbaning-1.0.1.tar.gz (41.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

urbaning-1.0.1-py3-none-any.whl (63.6 kB view details)

Uploaded Python 3

File details

Details for the file urbaning-1.0.1.tar.gz.

File metadata

  • Download URL: urbaning-1.0.1.tar.gz
  • Upload date:
  • Size: 41.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for urbaning-1.0.1.tar.gz
Algorithm Hash digest
SHA256 66ce19f23b17a43724972c1799ef77f9bc8db31fe43e829364a74bcd3d879fb1
MD5 f6f588dad9960544d6b2a6a7015a3c87
BLAKE2b-256 26e4ac8c6fd288b5f53d379fb8da8d09c8ffbf669dd3bf2f31c8cf741d411e28

See more details on using hashes here.

File details

Details for the file urbaning-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: urbaning-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 63.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for urbaning-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 59d9462608289f5a178bc1a27bedba056e7a1a348d0f3a52139850084d645c87
MD5 2735584bebc3d769a49841fd49a312a5
BLAKE2b-256 a1b5232a1ca275183988d6bdf1f33f30f92551eb632deede04020e13ef8356a4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page