This repository contains the code for the paper Where are you heading? Dynamic Trajectory Prediction with Expert Goal Examples. Accepted to ICCV 2021
Abstract: Goal-conditioned approaches recently have been found very useful to human trajectory prediction, when adequate goal estimates are provided. Yet, goal inference is difficult in itself and often incurs extra learning effort. We propose to predict pedestrian trajectories via the guidance of goal expertise, which can be obtained with modest expense through a novel goal-search mechanism on already seen training examples. There are three key contributions in our study. First, we devise a framework that exploits nearest examples for high-quality goal position inquiry. This approach naturally considers multi-modality, physical constraints, compatibility with existing methods and is nonparametric; it therefore does not require additional learning effort typical in goal inference. Second, we present an end-to-end trajectory predictor that can efficiently associate goal retrievals to past motion information and dynamically infer possible future trajectories. Third, with these two novel techniques in hand, we conduct a series of experiments on two broadly explored datasets (SDD and ETH/UCY) and show that our approach surpasses previous state-of-the-art performance by notable margins and reduces the need for additional parameters
SDD | ADE | FDE |
---|---|---|
Eval-Opt1 (Reported in Paper) | 7.69 | 14.38 |
Eval-Opt2 | 7.51 | 13.21 |
As pointed out by others that our reported results might not be directly comparable with parallel works. We provide a modified version of our results for all datasets using the mean value of predicted GMM2d (i.e. gmm2d.mus) as follow
Change:
Line 350 in 8b15a2e
V_pred = gmm2d.mus.squeeze()
Dataset | ADE | FDE |
---|---|---|
SDD | 10.49 | 13.21 |
ETH | 0.3662 | 0.6516 |
HOTEL | 0.1076 | 0.1474 |
ZARA1 | 0.1511 | 0.3106 |
ZARA2 | 0.1160 | 0.2554 |
UNIV | 0.2017 | 0.4365 |
In this way, our model only retreieve 20 destinations (w/o sampling anything from learned models), select the best one and fill-in the midway trajectories deterministically (This is not our point but more comparable).
You can run the command for SDD:
python test_sdd.py
You can run the command for ETH/UCY:
python test_ethucy.py
To switch subsets among the ETH/UCY, change the dataset_name variable in test_ethucy.py file (e.g., eth/zara1/zara2/hotel/univ)
If you find this code useful in your work then please cite
@inproceedings{he2021where,
title={Where are you heading? Dynamic Trajectory Prediction with Expert Goal Examples},
author={He, Zhao and Richard P. Wildes},
booktitle = {Proceedings of the International Conference on Computer Vision (ICCV)},
month = {Oct.},
year={2021}
}
The dataset processing is largely from PECNET and Social-STGCNN. Many thanks to them.
Please contact He Zhao @ zhufl@eecs.yorku.ca if any issue.