Paper: https://arxiv.org/abs/2205.05509 (Old version)
Demo: (Use only one camera view for training)
This is the code release for our AAAI2023 paper, PyTorch implementation of Large-Scale Neural Scene Rendering for Autonomous Driving(READ), a large-scale neural rendering method is proposed to synthesize the autonomous driving scene~(READ), which makes it possible to synthesize large-scale driving scenarios on a PC. Our model can not only synthesize realistic driving scenes but also stitch and edit driving scenes.
The following instructions describe installation of conda environment. Please refer to requirement If you want to set it to headless mode(without X server enabled), see the MyRender in the src folder.
Run this command to install python environment:
cd src/MyRender
pip install -v -e .
You can render one of the fitted scenes we provide right away in the real-time viewer or fit your own scene.
Download fitted scenes and universal rendering network weights from here and unpack in the Data directory.
We suppose that you have at least one GeForce GTX 1080 Ti for fitting and inference.
Here we show an example how to run fitted scenes in the viewer.
python viewer.py --config downloads/kitti6.yaml
- Move forward: w
- Move backward: s
- Move left: a
- Move right: d
- Rise: q
- Fall: e
- Turn to the left: 1
- Turn to the right: 2
- Turn to the up: 3
- Turn to the down: 4
- Rotation: press left mouse button and drag
- Move: press rigth mouse button and drug / scroll middle mouse botton
- Pan: press middle mouse button and drug
python train.py --config configs/train_example.yaml --pipeline READ.pipelines.ogl.TexturePipeline --crop_size 256x256
The size of crop_size depends on your GPU memory, and the parameter train_dataset_args can be adjusted in the configs folder
READ can move and remove the cars in different views. A panorama with larger view can be synthesized by changing the camera parameters.
READ is able to synthesize the larger driving scenes and update local areas with obvious changes in road conditions.
In this code we refer to the following implementations: npbg and MIMO. Great thanks to them!
If our work or code helps you, please consider to cite our paper. Thank you!
@inproceedings{li2022read,
author = {Li, Zhuopeng and Li, Lu and Zhu, Jianke*},
title = {READ: Large-Scale Neural Scene Rendering for Autonomous Driving},
booktitle = {AAAI},
year = {2023}
}