Zhipeng Zhao, Bowen Li, Yi Du, Taimeng Fu, and Chen Wang*
This repository provides the official implementation of our paper, "PhysORD: A Neuro-Symbolic Approach for Physics-infused Motion Prediction in Off-road Driving" [PDF].
- Python 3.10.13
- PyTorch 2.0.1
- PyPose 0.6.7
- This project utilizes the TartanDrive dataset. Follow the instructions in its repository to create the
train
,test-easy
andtest-hard
sets. test-easy
is used for validation during training, andtest-hard
for model evaluation.- We also provide pre-processed data with 20-step and 5-step sequences for quick reproduction. You can download them into the data folder.
# 20-step
wget -P data/ https://github.com/sair-lab/PhysORD/releases/download/data/train_val_easy_507_step20.pt
# 5-step
wget -P data/ https://github.com/sair-lab/PhysORD/releases/download/data/train_val_easy_507_step5.pt
To reproduce our result in the paper, you can follow the the steps below.
- You need to set the size of the training data with
--train_data_size
(from 1 to 507), and the number of training steps with--timesteps
. - You can specify the prepared data directory by
--preprocessed_data_dir
, and the the directory for saving the model by--save_dir
.
python train.py
- Specify the path to the evaluation data with
--eval_data_fp
, and the test timesteps with--timesteps
. - You can also set the sample intervals of the data with
--test_sample_interval
. - We provide a 20-step and a 5-step pretrained models for quick evaluation - see the folder pretrained for both models.
python test.py
If you find our research helpful for your work, please consider starring this repo and citing our paper.
This project is available under the BSD 3-Clause License - see the LICENSE file for details.