1.1. Download DAIR-V2X-I dataset from official website.
ln -s [single-infrastructure-side root] ./data/dair-v2x
python scripts/data_converter/dair2kitti.py --source-root data/dair-v2x-i --target-root data/dair-v2x-i-kitti
The directory will be as follows.
BEVHeight_Plus
├── data
│ ├── dair-v2x-i
│ │ ├── velodyne
│ │ ├── image
│ │ ├── calib
│ │ ├── label
| | └── data_info.json
| ├── dair-v2x-i-kitti
| | ├── training
| | | ├── calib
| | | ├── label_2
| | | └── images_2
| | └── ImageSets
| | ├── train.txt
| | └── val.txt
| |...
|...
python scripts/gen_info_dair.py
2.1. Download Rope3D dataset from official website.
ln -s [rope3d root] ./data/rope3d
python scripts/data_converter/rope2kitti.py --source-root data/rope3d --target-root data/rope3d-kitti
The directory will be as follows.
BEVHeight_Plus
├── data
| ├── rope3d
| | ├── training
| | ├── validation
| | ├── training-image_2a
| | ├── training-image_2b
| | ├── training-image_2c
| | ├── training-image_2d
| | └── validation-image_2
| ├── rope3d-kitti
| | ├── training
| | | ├── calib
| | | ├── denorm
| | | ├── label_2
| | | └── images_2
| | └── map_token2id.json
| |...
├── ...
python scripts/gen_info_rope3d.py
3.1. Download KITTI dataset from official website.
python scripts/gen_info_kitti.py --data_root data/kitti
4.1. Download KITTI-360 dataset from official website.
4.2. Download the processed KITTI-360 train_val
and dummy testing
labels. Extract them.
- Thanks for the KITTI-360 labels from SeaBird repository.
python data/kitti-360/calib_converter.py
python data/kitti-360/bbox_converter.py
# creat soft link
ln -s data/kitti-360/train_val data/kitti-360/training
ln -s data/kitti-360/training/label_2_converted data/kitti-360/training/label_2
The directory will be as follows.
BEVHeight_Plus
├── data
│ └── kitti-360
│ ├── ImageSets
│ ├── KITTI-360
│ │ ├── calibration
│ │ ├── data_2d_raw
│ │ ├── data_2d_semantics
│ │ ├── data_3d_boxes
│ │ └── data_poses
│ ├── train_val
│ │ ├── calib
│ │ ├── label
│ │ └── images_2
│ ├── training
│ │ ├── calib
│ │ ├── label
│ │ └── images_2
│ └── testing
│ ├── calib
│ ├── label
│ └── images_2
│ ...
python scripts/gen_info_kitti.py --data_root data/kitti-360
5.1. Download Waymo dataset from official website.
Set up environment
# Decompress the Waymo zip files into their corresponding directories
ls *.tar | xargs -i tar xvf {} -C your_target_dir
# Set up environment
conda create -n py36_waymo_tf python=3.7
conda activate py36_waymo_tf
conda install cudatoolkit=11.3 -c pytorch
# Newer versions of tf are not in conda. tf>=2.4.0 is compatible with conda.
pip install tensorflow-gpu==2.4
conda install pandas
pip3 install waymo-open-dataset-tf-2-4-0 --user
Parse Waymo dataset
ln -s [waymo root] ./data/waymo/raw_data
conda activate py36_waymo_tf
python scripts/data_converter/converter.py --load_dir data/waymo --save_dir data/waymo/parse_data --split training --num_proc 10
python scripts/data_converter/converter.py --load_dir data/waymo --save_dir data/waymo/parse_data --split validation --num_proc 10
Convert Waymo dataset parsed to KITTI format
python scripts/data_converter/waymo2kitti.py --source-root data/waymo/parse_data --target-root data/waymo-kitti
BEVHeight_Plus
├── data
│ ├── waymo
│ │ ├── ImageSets
│ │ │ ├── train_tfrecord.txt
│ │ │ ├── val_tfrecord.txt
│ │ ├── raw_data
│ │ │ ├── training
│ │ │ │ ├── segment-10017090168044687777_6380_000_6400_000_with_camera_labels.tfrecord
│ │ │ ├── validation
│ │ │ │ ├── segment-10203656353524179475_7625_000_7645_000_with_camera_labels.tfrecord
│ │ ├── parse_data
│ │ │ ├── training_org
│ │ │ │ ├── segment-id
│ │ │ ├── validation_org
│ │ │ │ ├── segment-id
│ │ ├── waymo_train_org.txt
│ │ ├── waymo_val_org.txt
│ ├── waymo-kitti
│ │ ├── ImageSets
│ │ ├── training
│ │ ├── validation
python scripts/gen_info_kitti.py --data_root data/waymo-kitti
python scripts/data_converter/visual_tools.py --data_root data/waymo-kitti --demo_dir ./demo