Research Project
Controllable Surround-View Driving Generation
A controllable multi-view world model for driving: 3D layout + map + multi-granularity control signals injected into a diffusion process to generate geometrically-consistent 4V / 7V / 11V images and video — for data augmentation and open-loop simulation.
Overview
What is this project about?
Training data for surround perception is fixed once it is recorded — you cannot re-shoot the same intersection at night, in rain, with a cyclist added. Generated data can, but only if the generator is controllable and the views agree with each other geometrically.
A conditional surround generator: 3D boxes and map elements are projected per view into spatial conditions, while text, reference frames, lane structure and camera calibration are encoded into condition tokens and injected into a UNet diffusion backbone. The model evolved from OpenSora 1.0 plus SD 3.5 into an in-house model fused with MagicDrive.
Conditioning every camera on the same projected 3D structure is what keeps 4, 7 or 11 views mutually consistent, so the output is usable both as perception training data and as open-loop simulation rather than as decorative video.
My role. Built the generator: the condition design, the encoders and injection path, and the training and evolution of the in-house model.
View as tablesame content, no interaction needed
| Stage | Input | Logic | Output | Why / role |
|---|---|---|---|---|
| Gaussian Noise Start | Pure random latents | Seed every camera view | Noisy surround latents | Enables diffusion generation |
| 3D Boxes + Map Layout | Boxes and HD map | Project into camera planes | View-space scene structure | Anchors object-road geometry |
| Layout / Map Encoders Encode | Projected boxes and map | E_Layout + E_Map compress | Spatial condition features | Keeps cameras aligned |
| Condition Tokens Control | Text, refs, lanes, calibration | Encode multi-granularity controls | Condition token set | Steers appearance and rig |
| UNet Diffusion Backbone | Noise + all conditions | Inject conditions each step | Refined surround latents | Unifies structure and style |
| Iterative Guidance Denoise | Conditioned UNet updates | Repeated denoising rounds | Aligned multi-view latents | Holds cross-camera consistency |
| Surround RGB Decode | Geometry-aligned latents | Decoder restores pixels | Multi-view images / video | Generates controllable worlds |
| Data Augmentation Use | Generated surround scenes | Vary style, hold layout | Long-tail training data | Cuts collection burden |
| Open-Loop Simulation Use | Generated videos | Replay requested conditions | Synthetic driving clips | Tests controlled scenarios |
| OpenSora → MagicDrive Evolve | OpenSora 1.0 + SD 3.5 | Fuse with MagicDrive ideas | Specialized in-house model | Improves driving fidelity |
| Depth + Pose Control V2 | In-house model line | Add depth and ego control | RGB, depth, pose rollouts | Boosts trajectory controllability |
Conditioned diffusion pipeline
Scene replacement for augmentation