• Stars
    star
    132
  • Rank 265,623 (Top 6 %)
  • Language
    Python
  • License
    MIT License
  • Created over 2 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Trajectory Prediction with Graph-based Dual-scale Context Fusion

Trajectory Prediction with Graph-based Dual-scale Context Fusion

Introduction

(Update Aug 4 2022)

  • Add (DDP-based) multi-card training/evaluation/submission code.
  • Fix some parameters, update links to the pretrained model.

(NEW) This paper is accepted for publication in the Proceedings of the 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2022).

This is the project page of the paper

Lu Zhang, Peiliang Li, Jing Chen and Shaojie Shen, "Trajectory Prediction with Graph-based Dual-scale Context Fusion", 2021.

Preprint: Link

Quantitative Results:

Video: link

video

Supplementary Video (Argoverse Tracking dataset): link

video

Demo

  • Color scheme: green - predicted trajectories; red - observation & GT trajectories; orange - other agents.


Have a try!

Install dependencies

  • Create a new conda env
conda create --name dsp python=3.8
conda activate dsp
  • Install PyTorch according to your CUDA version. For RTX 30 series, we recommend CUDA >= 11.1, PyTorch >= 1.8.0.
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.3 -c pytorch -c conda-forge
  • Install Argoverse API, please follow this page.

  • Install other dependencies

pip install scikit-image IPython tqdm ipdb tensorboard
  • Install PyTorch Scatter, please refer to this page.

Play with pretrained models

Generate a subset of the dataset for testing using the script (it will generate 1k samples):

bash scripts/argo_preproc_small.sh

Download the pretrained model (Google) (Baidu, code: cemi). Move the pretrained model to ./saved_models/, then use the scripts below to get prediction results:

bash scripts/argo_dsp_vis.sh

Since we store each sequence as a single file, the system may raise error OSError: [Erron 24] Too many open files during evaluation and training. You may use the command below to solve this issue:

ulimit -SHn 51200
ulimit -s unlimited

Train from scratch

  • Preprocess Argoverse motion forecasting dataset using the script:
bash scripts/argo_preproc_all.sh

Note that the preprocessed dataset is pretty large (~ 90 GB), please reserve enough space for preprocessing.

  • Launch (single-card) training using the script:
bash scripts/argo_dsp_train.sh

Citation

If you find this paper useful for your research, please consider citing the following:

@article{zhang2021trajectory,
  title={Trajectory Prediction with Graph-based Dual-scale Context Fusion},
  author={Zhang, Lu and Li, Peiliang and Chen, Jing and Shen, Shaojie},
  journal={arXiv preprint arXiv:2111.01592},
  year={2021}
}

Acknowledgement

We would like to express sincere thanks to the authors of the following tools and packages:

More Repositories

1

VINS-Mono

A Robust and Versatile Monocular Visual-Inertial State Estimator
C++
4,733
star
2

VINS-Fusion

An optimization-based multi-sensor state estimator
C++
3,181
star
3

Fast-Planner

A Robust and Efficient Trajectory Planner for Quadrotors
C++
2,194
star
4

A-LOAM

Advanced implementation of LOAM
C++
1,957
star
5

VINS-Mobile

Monocular Visual-Inertial State Estimator on Mobile Phones
C++
1,242
star
6

Teach-Repeat-Replan

Teach-Repeat-Replan: A Complete and Robust System for Aggressive Flight in Complex Environments
C++
875
star
7

GVINS

Tightly coupled GNSS-Visual-Inertial system for locally smooth and globally consistent state estimation in complex environment.
C++
792
star
8

FUEL

An Efficient Framework for Fast UAV Exploration
C++
744
star
9

Stereo-RCNN

Code for 'Stereo R-CNN based 3D Object Detection for Autonomous Driving' (CVPR 2019)
Python
681
star
10

DenseSurfelMapping

This is the open-source version of ICRA 2019 submission "Real-time Scalable Dense Surfel Mapping"
C++
661
star
11

FIESTA

Fast Incremental Euclidean Distance Fields for Online Motion Planning of Aerial Robots
C++
552
star
12

EPSILON

C++
493
star
13

ESVO

This repository maintains the implementation of "Event-based Stereo Visual Odometry".
C++
408
star
14

Btraj

Bezier Trajectory Generation for Autonomous Quadrotor, ICRA 2018
C++
388
star
15

grad_traj_optimization

Gradient-Based Online Safe Trajectory Generator
C++
349
star
16

open_quadtree_mapping

This is a monocular dense mapping system corresponding to IROS 2018 "Quadtree-accelerated Real-time Monocular Dense Mapping"
Cuda
347
star
17

MVDepthNet

This repository provides PyTorch implementation for 3DV 2018 paper "MVDepthNet: real-time multiview depth estimation neural network"
Python
305
star
18

MonoLaneMapping

Online Monocular Lane Mapping Using Catmull-Rom Spline (IROS 2023)
Python
277
star
19

D2SLAM

$D^2$SLAM: Decentralized and Distributed Collaborative Visual-inertial SLAM System for Aerial Swarm
Jupyter Notebook
218
star
20

Omni-swarm

A Decentralized Omnidirectional Visual-Inertial-UWB State Estimation System for Aerial Swar.
Jupyter Notebook
179
star
21

GVINS-Dataset

A dataset containing synchronized visual, inertial and GNSS raw measurements.
C++
173
star
22

spatiotemporal_semantic_corridor

Implementation of the paper "Safe Trajectory Generation For Complex Urban Environments Using Spatio-temporal Semantic Corridor".
C++
160
star
23

PredRecon

A Prediction-boosted Planner for Fast and High-quality Autonomous Aerial Reconstruction
C++
142
star
24

eudm_planner

Implementation of the paper "Efficient Uncertainty-aware Decision-making for Automated Driving Using Guided Branching".
C++
139
star
25

Nxt-FC

Mini PX4 for UAV Group
Shell
130
star
26

mockamap

a simple map generator based on ROS
C++
120
star
27

pointcloudTraj

Trajectory generation on point clouds
C++
117
star
28

Flow-Motion-Depth

This is the project page of the paper "Flow-Motion and Depth Network for Monocular Stereo and Beyond''
Python
114
star
29

Pagor

Pyramid Semantic Graph-based Global Point Cloud Registration with Low Overlap (IROS 2023)
C++
113
star
30

SIMPL

SIMPL: A Simple and Efficient Multi-agent Motion Prediction Baseline for Autonomous Driving
Python
107
star
31

VINS-kidnap

a place recognition system for VINS-fusion
105
star
32

gnss_comm

Basic definitions and utility functions for GNSS raw measurement processing
C++
97
star
33

G3Reg

G3Reg: Pyramid Graph-based Global Registration using Gaussian Ellipsoid Model
87
star
34

ublox_driver

A driver for u-blox receiver (ZED-F9P) with ros support
C++
81
star
35

TopoTraj

A robust UAV local planner based on the ICRA2020 paper: Robust Real-time UAV Replanning Using Guided Gradient-based Optimization and Topological Paths
80
star
36

TimeOptimizer

Optimal Time Allocation for Quadrotor Trajectory Generation
C++
77
star
37

Pinhole-Fisheye-Mapping

70
star
38

FC-Planner

An Efficient Planner for Fast Aerial Coverage
54
star
39

AutoTrans

AutoTrans: A Complete Planning and Control Framework for Autonomous UAV Payload Transportation.
C++
54
star
40

EMSGC

This repository maintains the implementation of the paper "Event-based Motion Segmentation withSpatio-Temporal Graph Cuts".
C++
54
star
41

LiDAR-Registration-Benchmark

LiDAR-based 3D global registration benchmark.
Python
53
star
42

VINS-Fisheye

Fisheye version of VINS-Fusion
C++
52
star
43

GeometricPretraining

This is the code base for paper ``Geometric Pretraining for Monocular Depth Estimation``, the paper is currently under review. The preprint will be available when it is ready.
49
star
44

HKUST-ELEC5660-Introduction-to-Aerial-Robotics

Repo for HKUST ELEC5660 Course Notes & Lab Tutorial & Project Docker
C++
44
star
45

OmniNxt

A Fully Open-source and Compact Aerial Robot with Omnidirectional Visual Perception
32
star
46

IMPACTOR

Impact-Aware Planning and Control for Aerial Robots with Suspended Payloads
31
star
47

plan_utils

Some useful pkgs for running planning simulation.
Makefile
28
star
48

edge_alignment

Clone of https://github.com/mpkuse/edge_alignment
C++
26
star
49

mockasimulator

C++
19
star
50

probabilistic_mapping

Probabilistic Dense Mapping
C++
19
star
51

swarm_gcs

Ground Station Software for aerial robots.
JavaScript
18
star
52

stTraj

Spatial-temporal Trajectory Planning for UAV Teach-and-Repeat
15
star
53

APACE

APACE: Agile and Perception-aware Trajectory Generation for Quadrotor Flights (ICRA2024)
10
star
54

MASSTAR

A Multi-modal Large-scale Scene Dataset and A Versatile Toolchain for Scene Prediction
8
star
55

mockacam

Camera package of mocka WFB
C++
3
star
56

RI_Mocap

Mocap device driver of RI
C++
1
star