HorizonComposer: Spatiotemporally Consistent Driving Video Editing with Enriched Traffic Semantics
Organizations: Simon Fraser University · NEC Labs America
Abstract
Instruction-guided video generative models offer a scalable solution for stress-testing autonomous driving systems by simulating diverse environmental conditions. However, driving scenes operate within a dense Operational Design Domain (ODD) governed by strict traffic semantics. When applied to global driving-condition edits, general-purpose instruction-guided video editors frequently corrupt these semantics, leading to structural hallucinations and ``temporal shock.'' This work distills and protects traffic semantics during video editing at three levels. First, we construct a hybrid dataset by combining temporally aligned real-world videos with synthetic edits, balancing foundational scene structure with unambiguous appearance signals. Second, during training, we adapt advantage conditioning from offline reinforcement learning to align the model using dense rewards. We extract dense, pixel-level rewards from the hybrid data to serve as a localized signal and actively steer generation toward structurally reliable pixels. Finally, our model mitigates temporal shock by introducing thinking frames, a transition mechanism that seamlessly reconciles static image conditioning with dynamic video context. Extensive experiments demonstrate that our method prevents the corruption of multi-actor dynamics, establishing state-of-the-art spatiotemporal consistency, yielding consistent user preference (39% relative improvement in content preservation and 12% in temporal consistency), and achieving a significant 5% gain in downstream road line segmentation and 7% gain in downstream multi-object detection.
Figures & tables
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Model | FF- | FF- | Succ. | CLIP | GPT | Subj. | Bg. | Lane | Car | Aes. | Img. |
| In-Domain (ID) Evaluation | |||||||||||
| CC-Edit | +18.16 | -78.85 | -6.97 | -4.46 | -20.82 | +5.09 | +2.94 | -65.95 | -34.39 | -2.01 | -8.08 |
| UniVideo | -54.30 | -22.84 | -13.02 | -5.51 | -21.39 | +2.82 | +0.92 | -25.40 | +2.73 | +0.82 | -12.57 |
| SyntheticPip | – | – | – | – | – | – | – | – | – | – | – |
| Ours | +14.44 | +0.58 | -1.34 | +0.16 | -0.70 | +1.70 | +0.94 | +20.15 | +7.46 | -1.49 | -4.57 |
| Model | Content Preservation | Instruction Following | Photorealism | Temporal Consistency | Overall |
|---|---|---|---|---|---|
| Ours | 46% | 36% | 43% | 38% | 40% |
| SyntheticPip | 33% | 33% | 33% | 34% | 33% |
| UniVideo | 7% | 7% | 7% | 7% | 7% |
| CCEdit | 5% | 5% | 6% | 3% | 5% |
| Tie | 8% | 20% | 11% | 19% | 15% |
| Method | mIoU | Pixel Acc | mAcc |
|---|---|---|---|
| Original | 37.48 | 98.76 | 50.04 |
| + SyntheticPip | 38.45 | 98.81 | 53.05 |
| + Ours | 40.27 | 98.88 | 55.62 |
| Training Data | mAP | mAP@50 | mAP@75 |
|---|---|---|---|
| Real-200 | 0.167 | 0.316 | 0.154 |
| Real-200 + Generated-200 | 0.175 | 0.324 | 0.165 |
| Relative improvement | +4.79% | +2.53% | +7.14% |
Appendix figures & tables14 assets
Supplementary material from the paper’s appendix.
Appendix
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
| Model | FF- | FF- | Succ. | CLIP | GPT | Subj. | Bg. | Lane | Car | Aes. | Img. |
| In-Domain Evaluation (Boreas, nuScenes, Waymo) | |||||||||||
| CC-Edit | 3.2811 [-1pt] 0.0238 | 0.9638 [-1pt] 0.0005 | 0.8685 [-1pt] 0.0128 | 0.2376 [-1pt] 0.0005 | 5.9436 [-1pt] 0.1320 | 0.9454 [-1pt] 0.0002 | 0.9710 [-1pt] 0.0000 | 0.1374 [-1pt] 0.0129 | 0.5103 [-1pt] 0.0118 | 0.4928 [-1pt] 0.0075 | 0.5667 [-1pt] 0.0030 |
| UniVideo | 6.186 [-1pt] 0.140 | 0.662 [-1pt] 0.002 | 0.812 [-1pt] 0.013 | 0.235 [-1pt] 0.001 | 5.901 [-1pt] 0.106 | 0.925 [-1pt] 0.001 | 0.952 [-1pt] 0.001 | 0.301 [-1pt] 0.003 | 0.799 [-1pt] 0.026 | 0.507 [-1pt] 0.002 | 0.539 [-1pt] 0.004 |
| SyntheticPip | 4.0092 [-1pt] 0.1992 | 0.5389 [-1pt] 0.0038 | 0.9336 [-1pt] 0.0071 | 0.2487 [-1pt] 0.0006 | 7.5063 [-1pt] 0.0380 | 0.8996 [-1pt] 0.0022 | 0.9433 [-1pt] 0.0006 | 0.4035 [-1pt] 0.0020 | 0.7778 [-1pt] 0.0070 | 0.5029 [-1pt] 0.0050 | 0.6165 [-1pt] 0.0089 |
| Ours | 3.4303 [-1pt] 0.0775 | 0.5358 [-1pt] 0.0065 | 0.9211 [-1pt] 0.0052 | 0.2491 [-1pt] 0.0001 | 7.4541 [-1pt] 0.0219 | 0.9149 [-1pt] 0.0008 | 0.9522 [-1pt] 0.0003 | 0.4848 [-1pt] 0.0030 | 0.8358 [-1pt] 0.0037 | 0.4954 [-1pt] 0.0025 | 0.5883 [-1pt] 0.0016 |
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Model Variant | FF- ↓ | FF- ↓ | Succ.↑ | CLIP↑ | GPT↑ | Subj.↑ | Bg.↑ | Lane↑ | Car↑ | Aes.↑ | Img.↑ |
| SyntheticPip | 3.4702 | 0.5285 | 0.9289 | 0.2308 | 7.4855 | 0.9018 | 0.9443 | 0.5774 | 0.7880 | 0.5465 | 0.6126 |
| Finetune RGB only | 3.3009 | 0.5505 | 0.9234 | 0.2353 | 7.4600 | 0.9038 | 0.9457 | 0.6006 | 0.8243 | 0.5456 | 0.5986 |
| + Depth Cond. | 3.1225 | 0.5442 | 0.9227 | 0.2334 | 7.4970 | 0.9013 | 0.9433 | 0.5984 | 0.8308 | 0.5461 | 0.5985 |
| + Dense Rewards | 3.3927 | 0.5225 | 0.9048 | 0.2307 | 7.4206 | 0.9011 | 0.9436 | 0.6266 | 0.8595 | 0.5482 | 0.6066 |
| + Temp. Aug. (Ours) | 3.2185 | 0.5235 | 0.8762 | 0.2299 | 7.3836 | 0.9126 | 0.9525 | 0.6281 | 0.8558 | 0.5472 | 0.6030 |
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Model Variant | FF- ↓ | FF- ↓ | Succ.↑ | CLIP↑ | GPT↑ | Subj.↑ | Bg.↑ | Lane↑ | Car↑ | Aes.↑ | Img.↑ |
| SyntheticPip | 3.8055 | 0.5427 | 0.9375 | 0.2491 | 7.4934 | 0.9004 | 0.9427 | 0.4029 | 0.7859 | 0.4981 | 0.6067 |
| Finetune RGB only | 3.6594 | 0.5716 | 0.9569 | 0.2545 | 7.5885 | 0.9073 | 0.9485 | 0.4133 | 0.7917 | 0.5027 | 0.5998 |
| + Depth Cond. | 3.4901 | 0.5585 | 0.9489 | 0.2525 | 7.5848 | 0.9019 | 0.9450 | 0.4276 | 0.8008 | 0.5018 | 0.5932 |
| + Dense Rewards | 3.6197 | 0.5411 | 0.9333 | 0.2500 | 7.4897 | 0.8987 | 0.9426 | 0.4904 | 0.8262 | 0.4975 | 0.5979 |
| + Temp. Aug. (Ours) | 3.3539 | 0.5428 | 0.9155 | 0.2492 | 7.4297 | 0.9156 | 0.9520 | 0.4845 | 0.8351 | 0.4928 | 0.5873 |
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Data | FF- ↓ | FF- ↓ | Succ.↑ | CLIP↑ | GPT↑ | Subj.↑ | Bg.↑ | Lane↑ | Col.↑ | Aes.↑ | Img.↑ |
| Ours (Pseudo-only) | 3.3004 | 0.5402 | 0.9048 | 0.2342 | 7.4230 | 0.9119 | 0.9520 | 0.5615 | 0.8296 | 0.5348 | 0.5975 |
| Ours (Real-only) | 3.4974 | 0.5215 | 0.8998 | 0.2309 | 7.3903 | 0.9137 | 0.9540 | 0.6246 | 0.8337 | 0.5536 | 0.6135 |
| Ours | 3.2185 | 0.5235 | 0.8762 | 0.2299 | 7.3836 | 0.9126 | 0.9525 | 0.6281 | 0.8558 | 0.5472 | 0.6030 |
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Data Variant | FF- ↓ | FF- ↓ | Succ.↑ | CLIP↑ | GPT↑ | Subj.↑ | Bg.↑ | Lane↑ | Car↑ | Aes.↑ | Img.↑ |
| Ours (Pseudo-only) | -2.54 | -3.20 | +3.27 | +1.85 | +0.53 | -0.07 | -0.06 | -10.61 | -3.06 | -2.27 | -0.91 |
| Ours (Real-only) | -8.67 | +0.37 | +2.69 | +0.43 | +0.09 | +0.13 | +0.16 | -0.56 | -2.59 | +1.16 | +1.74 |
| Ours | – | – | – | – | – | – | – | – | – | – | – |
| Dataset | Native unit | Native length | Paired videos | Target diversity | Supervision |
|---|---|---|---|---|---|
| Boreas [ 4 ] | Driving logs | Variable-length routes | No | Natural weather/season variation | Raw sensor data, poses |
| nuScenes [ 5 ] | 1,000 scenes | 20s per scene | No | Natural urban conditions | 3D detection/tracking annotations |
| Waymo [ 49 ] | 1,150 segments | 20s / 200 frames per segment | No | Natural driving conditions | 2D/3D perception annotations |
| nuPlan [ 28 ] | Driving logs | Large-scale variable-length logs | No | Multi-city driving scenarios | Planning annotations |
| Ours | Editing pairs | 45 frames per clip | Yes | Weather, time, season | Edited target video, reference image |
| Split | Boreas | nuScenes | Waymo | nuPlan | Total |
|---|---|---|---|---|---|
| Train | 9,406 | 9,496 | 9,446 | – | 28,348 |
| ID Test | 50 | 50 | 50 | – | 150 |
| OOD Test | – | – | – | 150 | 150 |
| Dataset | Weather | Time of Day | Season | Total Videos |
|---|---|---|---|---|
| Train-Boreas | 7510 | 7529 | 7106 | 9406 |
| Train-nuScenes | 7559 | 7643 | 7139 | 9496 |
| Train-Waymo | 7590 | 7598 | 7018 | 9446 |
| ID Test-Boreas | 42 | 42 | 40 | 50 |
| ID Test-nuScenes | 42 | 41 | 40 | 50 |
| ID Test-Waymo | 42 | 42 | 40 | 50 |
| Dataset | 1-cat. | 2-cat. | 3-cat. | Total Videos |
|---|---|---|---|---|
| Train-Boreas | 1097 | 3879 | 4430 | 9406 |
| Train-nuScenes | 1122 | 3903 | 4471 | 9496 |
| Train-Waymo | 1086 | 3960 | 4400 | 9446 |
| ID Test-Boreas | 4 | 18 | 28 | 50 |
| ID Test-nuScenes | 3 | 21 | 26 | 50 |
| ID Test-Waymo | 3 | 20 | 27 | 50 |
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Variant | FF- ↓ | FF- ↓ | Succ.↑ | CLIP↑ | GPT↑ | Subj.↑ | Bg.↑ | Lane↑ | Car↑ | Aes.↑ | Img.↑ |
| SyntheticPip (baseline) | – | – | – | – | – | – | – | – | – | – | – |
| only content | +5.55 | +0.15 | -3.39 | +0.45 | -0.20 | +1.15 | +0.89 | +7.70 | +7.85 | -0.29 | -2.01 |
| only instruction | +4.84 | +0.53 | -4.12 | +0.06 | -0.77 | +1.21 | +0.88 | +8.14 | +7.98 | +0.87 | -0.59 |
| only temporal | +5.19 | +0.13 | -3.33 | +0.06 | -1.41 | +1.23 | +0.84 | +7.79 | +8.73 | +0.35 | -1.18 |
| Ours | +7.25 | +0.94 | -5.67 | -0.37 | -1.36 | +1.19 | +0.87 | +8.78 | +8.61 | +0.14 | -1.57 |
| Temporal | Edit Align. | ODD Preservation | Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Variant | FF- ↓ | FF- ↓ | Succ.↑ | CLIP↑ | GPT↑ | Subj.↑ | Bg.↑ | Lane↑ | Col.↑ | Aes.↑ | Img.↑ |
| SyntheticPip | 3.4702 | 0.5285 | 0.9289 | 0.2308 | 7.4855 | 0.9018 | 0.9443 | 0.5774 | 0.7880 | 0.5465 | 0.6126 |
| only content | 3.2777 | 0.5277 | 0.8973 | 0.2318 | 7.4703 | 0.9122 | 0.9527 | 0.6219 | 0.8498 | 0.5449 | 0.6003 |
| only instruction | 3.3022 | 0.5257 | 0.8906 | 0.2309 | 7.4279 | 0.9127 | 0.9527 | 0.6244 | 0.8509 | 0.5512 | 0.6090 |
| only temporal | 3.2901 | 0.5278 | 0.8980 | 0.2309 | 7.3800 | 0.9129 | 0.9522 | 0.6223 | 0.8568 | 0.5483 | 0.6054 |
| Ours | 3.2185 | 0.5235 | 0.8762 | 0.2299 | 7.3836 | 0.9126 | 0.9525 | 0.6281 | 0.8558 | 0.5472 | 0.6030 |
| Method | FF- | FF- | Succ. | CLIP | Lane | Car | Subj. | Bg. | Aes. | Img. |
|---|---|---|---|---|---|---|---|---|---|---|
| Scalar reward | 3.3313 | 0.5619 | 0.9205 | 0.2494 | 0.4078 | 0.8068 | 0.9141 | 0.9528 | 0.4795 | 0.5785 |
| Dense reward (ours) | 3.3539 | 0.5428 | 0.9155 | 0.2492 | 0.4845 | 0.8351 | 0.9156 | 0.9520 | 0.4928 | 0.5873 |
| Relative change | +0.68% | -3.40% | -0.54% | -0.08% | +18.81% | +3.51% | +0.16% | -0.08% | +2.77% | +1.52% |
Temporal Consistency in Video Generation
Temporal consistency in video generation studies how models preserve coherent motion, identities, scenes, and events across frames and long sequences.
See all 375 papers