Skip to content

GigaAI-research/ReconDreamer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

24 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ReconDreamer: Crafting World Models for Driving Scene Reconstruction via Online Restoration

News

  • [2024/12/04] πŸš€ We have released the weights for some scenarios based on Street Gaussians, as well as the NTA-IoU calculation script.
  • [2024/11/29] πŸš€ Repository Initialization.

Abstract

Closed-loop simulation is crucial for end-to-end autonomous driving. Existing sensor simulation methods (e.g., NeRF and 3DGS) reconstruct driving scenes based on conditions that closely mirror training data distributions. However, these methods struggle with rendering novel trajectories, such as lane changes. Recent works have demonstrated that integrating world model knowledge alleviates these issues. Despite their efficiency, these approaches still encounter difficulties in the accurate representation of more complex maneuvers, with multi-lane shifts being a notable example.Therefore, we introduce ReconDreamer, which enhances driving scene reconstruction through incremental integration of world model knowledge. Specifically, DriveRestorer is proposed to mitigate artifacts via online restoration. This is complemented by a progressive data update strategy designed to ensure high-quality rendering for more complex maneuvers. To the best of our knowledge, ReconDreamer is the first method to effectively render in large maneuvers. Experimental results demonstrate that ReconDreamer outperforms Street Gaussians in the NTA-IoU, NTL-IoU, and FID, with relative improvements by 24.87%, 6.72%, and 29.97%. Furthermore, ReconDreamer surpasses DriveDreamer4D with PVG during large maneuver rendering, as verified by a relative improvement of 195.87% in the NTA-IoU metric and a comprehensive user study.

ReconDreamer Framework

method

Scenario Selection

All selected scenes are sourced from the validation set of the Waymo dataset. The official file names of these scenes, are listed along with their respective starting and ending frames.

Scene Start Frame End Frame
segment-10359308928573410754_720_000_740_000_with_camera_labels.tfrecord 120 159
segment-11450298750351730790_1431_750_1451_750_with_camera_labels.tfrecord 0 39
segment-12496433400137459534_120_000_140_000_with_camera_labels.tfrecord 110 149
segment-15021599536622641101_556_150_576_150_with_camera_labels.tfrecord 0 39
segment-16767575238225610271_5185_000_5205_000_with_camera_labels.tfrecord 0 39
segment-17860546506509760757_6040_000_6060_000_with_camera_labels.tfrecord 90 129
segment-3015436519694987712_1300_000_1320_000_with_camera_labels.tfrecord 40 79
segment-6637600600814023975_2235_000_2255_000_with_camera_labels.tfrecord 70 109

Install

conda create -n recondreamer python=3.8
conda activate recondreamer
pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116
pip install -r requirments.txt
pip install ./submodules/diff-gaussian-rasterization
pip install ./submodules/simple-knn
pip install ./submodules/simple-waymo-open-dataset-reader
python script/test_gaussian_rasterization.py

Demo

Scene Weight Data
segment-10359308928573410754_720_000_740_000_with_camera_labels.tfrecord Link to Weight Link to Data
Recondreamer/
β”œβ”€β”€ config/
β”‚   β”œβ”€β”€ street_gaussians.yaml
β”‚   └── recondreamer.yaml
|── data
β”œβ”€β”€ .....
β”œβ”€β”€ output/
β”‚    └── waymo_full_exp/005
β”‚        β”œβ”€β”€ recondreamer
β”‚        └── street_gaussians
│── render.py

After downloading the data and weights, place the Data contents into the data/ folder, and move the Weight files into the output/ directory.

Rendering

python render.py --config configs/recondreamer.yaml
python render.py --config configs/street_gaussians.yaml

Calculate the NTA-IoU metric

Model Weight
Yolo11x.pt Link to Weight
python script/NTAIou/script/GT.py
python script/NTAIou/script/detect.py
python script/NTAIou/script/calculate.py

The detailed metrics will be saved in the file: script/NTAIou/average_iou_results_005.txt.

Rendering Results in Lane Shift @ 3m Novel Trajectory

combined_164_3.mp4
combined_27_3.mp4
combined_18_3.mp4
combined_05_3.mp4

Rendering Results in Lane Shift @ 6m Novel Trajectory

combined_164_6.mp4
combined_27_6.mp4
combined_18_6.mp4
combined_05_6.mp4

Acknowledgements

We would like to thank the following works and projects, for their open research and exploration: Street Gaussians, DriveStudio, DriveDreamer, and DriveDreamer4D.

Citation

If you find this code useful for your research, please use the following BibTeX entry.

@inproceedings{Ni2024ReconDreamerCW,
    title={ReconDreamer: Crafting World Models for Driving Scene Reconstruction via Online Restoration},
    author={Chaojun Ni and Guosheng Zhao and Xiaofeng Wang and Zheng Zhu and Wenkang Qin and Guan Huang and Chen Liu and Yuyin Chen and Yida Wang and Xueyang Zhang and Yifei Zhan and Kun Zhan and Peng Jia and Xianpeng Lang and Xingang Wang and Wenjun Mei},
    year={2024},
    url={https://arxiv.org/abs/2411.19548}
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published