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-0.1.2.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-0.1.2-py3-none-any.whl (63.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: urbaning-0.1.2.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-0.1.2.tar.gz
Algorithm Hash digest
SHA256 9ba64a9d1bb536a8411b5ed6a56ed39109aa1bf91e9d3643c41dc39a95a07368
MD5 92d5cad1569d9fc6419b6a5764f364a0
BLAKE2b-256 70f13fa273fcf9eca8ab0024941c1c613418ce7fa9bb8ea10b654c6695a6a622

See more details on using hashes here.

File details

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

File metadata

  • Download URL: urbaning-0.1.2-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-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fdece920daaafee5a1b3873e8f2ab922f3af090da9b4c992308ddf002d4ee559
MD5 6693edac81d93ff6c26b83132676213b
BLAKE2b-256 bbc816ba557ae77ff1e6e426046a46395346903d5757fc7b012f0b330ae27366

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