Precaución
El depósito de Amazon AWS S3 argoai-argoverse
que contiene muchos de los archivos de demostración se ha visto comprometido. Los archivos pueden estar dañados.
Los archivos que hacen referencia a este depósito de S3 se han modificado y cualquier recuperación de este depósito está comentada. Proceda con precaución.
Papel | Diapositivas | Página del proyecto | Vídeo Oral ECCV 2020
Ming Liang, Bin Yang, Rui Hu, Yun Chen, Renjie Liao, Song Feng, Raquel Urtasun
Ocupe el primer lugar en la competencia de pronóstico de movimiento de Argoverse
Debe instalar los siguientes paquetes para ejecutar el código:
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
mpi4py
para capacitación distribuida. Horovod es más eficiente que nn.DataParallel
para el entrenamiento de múltiples gpu y más fácil de usar que nn.DistributedDataParallel
. Antes de instalar horovod, asegúrese de tener instalado openmpi ( sudo apt-get install -y openmpi-bin
). 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
Si tiene algún problema con respecto a horovod, consulte horovod github
Puede consultar los scripts y descargar los datos procesados en lugar de ejecutarlos durante horas.
bash get_data.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
Se necesitan 8 horas para entrenar el modelo en 4 GPUS (RTX 5000) con horovod.
También proporcionamos un registro de capacitación para que usted pueda depurarlo.
python train.py -m lanegcn
Puede descargar el modelo previamente entrenado desde aquí.
python test.py -m lanegcn --weight=/absolute/path/to/36.000.ckpt --split=test
python test.py -m lanegcn --weight=36.000.ckpt --split=val
Resultados cualitativos
Etiquetas (Rojo) Predicción (Verde) Otros agentes (Azul)
Resultados cuantitativos
consultar LICENCIA
Si utiliza nuestro código fuente, considere citar lo siguiente:
@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 }
}
Si tiene alguna pregunta sobre el código, abra un problema y @chenyuntc.