Awesome
Learning Structured Representations of Trajectory Prediction
Author: Todor Davchev, The University of Edinburgh.
This repository relies on python 3.6 and Tensorflow 1.*. It is the associated code to Learning Structured Representations of Spatial and Interactive Dynamics for Trajectory Prediction in Crowded Scenes.
@article{davchev2020learning,
title={Learning Structured Representations of Spatial and Interactive Dynamics for Trajectory Prediction in Crowded Scenes},
author={Davchev, Todor Bozhinov and Burke, Michael and Ramamoorthy, Subramanian},
journal={IEEE Robotics and Automation Letters},
year={2020},
publisher={IEEE}
}
Installation
Set up and activate an Anaconda environment, then run the following commands:
git clone git@github.com:yadrimz/structured-trajectory-prediction.git
cd structured-trajectory-prediction
conda create -n traj python=3.6
conda activate traj
pip install -r requirements.txt
python setup.py install
python setup.py develop # for developer mode
Training and Inference
Trainign can be done using relatively small CPU power. The example below training is done using MacBook Pro 13 base model. At train time the output is similar to this:
0/2700 (epoch 0), train_loss = 0.111, time/batch = 0.001
99/2700 (epoch 3), train_loss = 8.332, time/batch = 0.018
198/2700 (epoch 7), train_loss = 0.538, time/batch = 0.015
Inference is then done over all trajectories from the test dataset that fit the chosen criteria.
Processed trajectory number : 50 out of 352 trajectories
Processed trajectory number : 100 out of 352 trajectories
Processed trajectory number : 150 out of 352 trajectories
Processed trajectory number : 200 out of 352 trajectories
Processed trajectory number : 250 out of 352 trajectories
Processed trajectory number : 300 out of 352 trajectories
Processed trajectory number : 350 out of 352 trajectories
Total mean error of the model is 0.10521254192652005
Beginner's Guide
New to crowded scene trajectory prediction? Check this beginner's Guide tutorial.