by Cyrus Anderson and Xiaoxiao Du at UM FCAV
This paper presents a method to simulate realistic synthetic pedestrian trajectories based on small amounts of real annotated data. This work was presented at IROS 2019 in Macau, China. For more details, please refer to our published paper in IEEE Xplore (https://ieeexplore.ieee.org/document/8967857) or the arxiv version (https://arxiv.org/abs/1903.01860).
If you find this paper helpful, please consider citing:
@inproceedings{anderson2019stochastic,
title={Stochastic Sampling Simulation for Pedestrian Trajectory Prediction},
author={Anderson, Cyrus and Du, Xiaoxiao and Vasudevan, Ram and Johnson-Roberson, Matthew},
booktitle={2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
pages={4236--4243},
year={2019},
organization={IEEE}
}
- First we simulate trajectories to create the synthetic data.
python sampler.py
- Next we can save these trajectories into formatted training data for training a neural network.
This will create a
trainingfolder if it doesn't already exist, and a folder with the training data.
python sim2training.py
The file structure wil look like:
datasets/
training/
|__synth_large/
|__split_1.0_0/
|__eth/
with the eth folder containing synthetic training data from all synth_large datasets except ETH.
- Train the neural network of our choice on the data (such as Social GAN).
For a model trained on the eth folder data, we can save it at:
datasets/
training/
models/
|__synth_large/
|__split_1.0_0/
|__eth.pt
so this will be the model to make predictions on ETH.
- Evaluate the trained model on each scene.
This expects a function to load the trained model so we can make predictions, one of:
- a function that returns a
Predictorobject make_pred_fcn: convenience function makingPredictorobjects for Social GAN-style models
Once one of these has been specified, we can run
python evaluate_split.py
- numpy
- PyTables
- pandas
- tqdm