# LaneGCN: Learning Lane Graph Representations for Motion Forecasting
[Paper](https://arxiv.org/pdf/2007.13732) | [Slides](http://www.cs.toronto.edu/~byang/slides/LaneGCN.pdf) | [Project Page]() | [**ECCV 2020 Oral** Video](https://yun.sfo2.digitaloceanspaces.com/public/lanegcn/video.mp4)
Ming Liang, Bin Yang, Rui Hu, Yun Chen, Renjie Liao, Song Feng, Raquel Urtasun
**Rank 1st** in [Argoverse Motion Forecasting Competition](https://evalai.cloudcv.org/web/challenges/challenge-page/454/leaderboard/1279)
![img](misc/arch.png)
Table of Contents
=================
* [Install Dependancy](#install-dependancy)
* [Prepare Data](#prepare-data-argoverse-motion-forecasting)
* [Training](#training)
* [Testing](#testing)
* [Licence](#licence)
* [Citation](#citation)
## Install Dependancy
You need to install following packages in order to run the code:
- [PyTorch>=1.3.1](https://pytorch.org/)
- [Argoverse API](https://github.com/argoai/argoverse-api#installation)
1. Following is an example of create environment **from scratch** with anaconda, you can use pip as well:
```sh
conda create --name lanegcn python=3.7
conda activate lanegcn
conda install pytorch==1.5.1 torchvision cudatoolkit=10.2 -c pytorch # pytorch=1.5.1 when the code is release
# install argoverse api
pip install git+https://github.com/argoai/argoverse-api.git
# install others dependancy
pip install scikit-image IPython tqdm ipdb
```
2. \[Optional but Recommended\] Install [Horovod](https://github.com/horovod/horovod#install) and `mpi4py` for distributed training. Horovod is more efficient than `nn.DataParallel` for mulit-gpu training and easier to use than `nn.DistributedDataParallel`. Before install horovod, make sure you have openmpi installed (`sudo apt-get install -y openmpi-bin`).
```sh
pip install mpi4py
# install horovod with GPU support, this may take a while
HOROVOD_GPU_OPERATIONS=NCCL pip install horovod==0.19.4
# if you have only SINGLE GPU, install for code-compatibility
pip install horovod
```
if you have any issues regarding horovod, please refer to [horovod github](https://github.com/horovod/horovod)
## Prepare Data: Argoverse Motion Forecasting
You could check the scripts, and download the processed data instead of running it for hours.
```sh
bash get_data.sh
```
## Training
### [Recommended] Training with Horovod-multigpus
```sh
# single node with 4 gpus
horovodrun -np 4 -H localhost:4 python /path/to/train.py -m lanegcn
# 2 nodes, each with 4 gpus
horovodrun -np 8 -H serverA:4,serverB:4 python /path/to/train.py -m lanegcn
```
It takes 8 hours to train the model in 4 GPUS (RTX 5000) with horovod.
We also supply [training log](misc/train_log.txt) for you to debug.
### [Recommended] Training/Debug with Horovod in single gpu
```sh
python train.py -m lanegcn
```
## Testing
You can download pretrained model from [here](http://yun.sfo2.digitaloceanspaces.com/public/lanegcn/36.000.ckpt)
### Inference test set for submission
```
python test.py -m lanegcn --weight=/absolute/path/to/36.000.ckpt --split=test
```
### Inference validation set for metrics
```
python test.py -m lanegcn --weight=36.000.ckpt --split=val
```
**Qualitative results**
Labels(Red) Prediction (Green) Other agents(Blue)
<p>
<img src="misc/5304.gif" width = "30.333%" align="left" />
<img src="misc/25035.gif" width = "30.333%" align="center" />
<img src="misc/19406.gif" width = "30.333%" align="right" />
</p>
------
**Quantitative results**
![img](misc/res_quan.png)
## Licence
check [LICENSE](LICENSE)
## Citation
If you use our source code, please consider citing the following:
```bibtex
@InProceedings{liang2020learning,
title={Learning lane graph representations for motion forecasting},
author={Liang, Ming and Yang, Bin and Hu, Rui and Chen, Yun and Liao, Renjie and Feng, Song and Urtasun, Raquel},
booktitle = {ECCV},
year={2020}
}
```
If you have any questions regarding the code, please open an issue and [@chenyuntc](https://github.com/chenyuntc).
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
Lane-GCN代码(轨迹预测) (144个子文件)
19406.gif 2.09MB
19482.gif 1.85MB
5304.gif 1.79MB
25035.gif 1.76MB
17232.gif 1.56MB
17865.gif 1.24MB
.gitignore 50B
LaneGCN-master.iml 568B
LICENSE 5KB
README.MD 4KB
video.mp4 14.41MB
slides.pdf 2.24MB
dict_att_all.pkl 129KB
res_quan.png 148KB
arch.png 109KB
map_api.py 48KB
lanegcn.py 28KB
argoverse_tracking_loader.py 24KB
calibration.py 22KB
cuboid_interior.py 22KB
data.py 21KB
utils.py 21KB
make_att_files.py 16KB
frustum_clipping.py 16KB
centerline_utils.py 15KB
eval_tracking.py 14KB
object_label_record.py 14KB
preprocess_data.py 12KB
layers.py 12KB
mayavi_utils.py 11KB
vector_map_loader.py 11KB
competition_util.py 10KB
utils.py 10KB
frame_label_accumulator.py 10KB
visualization_utils.py 10KB
eval.py 10KB
synchronization_database.py 10KB
pretrain.py 9KB
eval_forecasting.py 9KB
vis_mask.py 9KB
eval.py 9KB
train.py 8KB
map_viz_helper.py 7KB
interpolate.py 7KB
manhattan_search.py 7KB
cv2_plotting_utils.py 7KB
simple_track_dataloader.py 6KB
train1.py 6KB
plane_visualization_utils.py 6KB
sim2.py 6KB
mpl_plotting_utils.py 6KB
colormap.py 6KB
ground_visualization.py 5KB
argoverse_forecasting_loader.py 5KB
eval_utils.py 5KB
visualize_sequences.py 4KB
trajectory_loader.py 4KB
utils.py 4KB
test.py 4KB
stereo_dataloader.py 4KB
city_visibility_utils.py 3KB
constants.py 3KB
generate_sequence_videos.py 3KB
transform.py 3KB
se3.py 3KB
heuristic_ground_removal.py 3KB
se2.py 3KB
sensor_dataset_config.py 3KB
bfs.py 3KB
geometry.py 3KB
ffmpeg_utils.py 3KB
line_projection.py 2KB
polyline_density.py 2KB
mpl_point_cloud_vis.py 2KB
cv2_video_utils.py 2KB
ply_loader.py 2KB
make_track_label_folders.py 2KB
pose_loader.py 2KB
mayavi_wrapper.py 2KB
lane_segment.py 2KB
grid_interpolation.py 1KB
camera_stats.py 1KB
dilation_utils.py 1KB
forecasting_evaluation.py 1KB
frame_record.py 1KB
mesh_grid.py 1018B
pkl_utils.py 983B
metric_time.py 891B
json_utils.py 837B
helpers.py 800B
constants.py 640B
subprocess_utils.py 634B
object_classes.py 539B
datetime_utils.py 373B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
共 144 条
- 1
- 2
就随风而起
- 粉丝: 10
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于串口通信的光通信上位机,包括运动控制和通信协议
- 串口与以太网文件传送协议(或自定义控制协议)
- Qt开发windows系统安装教程与代码实例.txt
- QT6实现的附带文件传输协议的串口终端
- 一个串口通讯类和调用Demo 通过设置串口、设置串口自定义协议,可方便对串口发送数据与接收数据
- 华为OD模拟题及参考答案.仅供学习和模拟考试使用
- stm32f103c8t6基于modbus协议和使用串口读取温湿度
- 英雄联盟LOL金克斯4K电脑壁纸
- Microbrain道闸产品上位机,以MahApps库为基础搭建界面,集成了串口(UART)、CAN、WIFI通信,十六进制协议
- Android串口通讯, 支持发送数据回调, 支持并发处理, 自定义协议, CRC校验, 自动粘包, 自动去除冗余的干扰数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5