sudo apt install python3-pip -y
sudo apt install python3-venv -y
python3 -m venv .venv
source ./.venv/bin/activate# Diffusion-Planner
cd diffusion_planner
python -m pip install pip==24.1
pip install -r requirements_nuplan-devkit_fixed.txt
pip install -r requirements.txt
pip install -e .
# check torch
python3 -c "import torch; print(torch.cuda.is_available())"
# install ros-humble
./ros_scripts/download_ros-humble.sh
# prepare data_converter
./data_converter/build_data_converter.shWe assume the following directory structure:
driving_dataset$ tree . -L 2
.
βββ bag
β βββ 2024-07-18
β β βββ 10-05-28
β β βββ 10-05-51
β β βββ ...
β β βββ 16-10-07
β β βββ 16-27-15
β βββ 2024-12-11
β βββ 2025-01-24
β βββ 2025-02-04
β βββ 2025-03-25
β βββ 2025-04-16
βββ map
βββ 2024-07-18
β βββ lanelet2_map.osm
β βββ pointcloud_map_metadata.yaml
β βββ pointcloud_map.pcd
β βββ stop_points.csv
βββ 2024-12-11
βββ 2025-01-24
βββ 2025-02-04
βββ 2025-03-25
βββ 2025-04-16use parse_rosbag_for_directory.py directly.
python3 ./ros_scripts/parse_rosbag_for_directory.py <target_dir_list> --save_root <save_root> [--step <step>] [--limit <limit>]This script search *.npz files and create path_list.json.
python3 ./diffusion_planner/util_scripts/create_train_set_path.py <root_dir_list>Edit train_run.sh and run
cd ./diffusion_planner
./train_run.sh