从成对监督到统一天气编辑:Cyclone 如何把自动驾驶“加天气/去天气”做成一套扩散基础设施
作者 | Thang-Anh-Quan Nguyen、Moussab Bennehar、Luis Guillermo Roldao Jimenez、Nathan Piasco、Dzmitry Tsishkou、Laurent Caraffa、Jean-Philippe Tarel、Roland Brémond
机构 | Huawei Paris Research Center、Gustave Eiffel University、IGN-ENSG
论文 | Cyclone: Diffusion Model for Cycle-Consistent Weather Editing from Unpaired Driving Data
版本 | arXiv:2607.13927v1(2026 年 7 月 15 日)
关键词 | 自动驾驶 / 天气编辑 / latent diffusion / 无配对训练 / cycle consistency / teacher distillation / 视频一致性 / 感知增强01 这篇论文真正推进的,不是“又一个天气生成模型”,而是统一天气编辑范式
在自动驾驶数据链路里,天气合成和去天气恢复常常被分成两条路线:前者服务数据增强,后者服务感知恢复。
但这两条路线长期都有同一个硬伤:真实驾驶场景几乎不可能拿到严格对齐的跨天气成对样本,结果要么依赖合成数据,要么依赖物理先验和任务定制模型。
Cyclone 的判断更进一步:如果天气编辑始终被拆成多个小任务,模型就很难在同一套结构保持、条件跟随和泛化能力上同时做强。
因此这篇论文直接把“加天气”和“去天气”改写成一套统一的 latent diffusion 编辑框架,让模型既能前向合成天气,也能反向恢复清晰条件。
这篇论文最值得记住的立意,不是某个天气效果做得更像,而是把自动驾驶天气处理从“分裂的增强工具”推进成了“统一的数据基础设施”。
02 资源与开源状态
- 论文页面:https://arxiv.org/abs/2607.13927
- DOI:10.48550/arXiv.2607.13927
- 数据来源:训练使用 ACDC、SHIFT、BDD100K、OpenDV-YouTube 的清洗子集;评测还覆盖 nuScenes、PandaSet、Waymo 等 OOD 数据。
- 开源状态:截至 2026 年 7 月 17 日,论文超链接与公开检索结果中尚未发现作者公布的官方代码仓库或项目主页链接。
图1:Cyclone 的一体化天气编辑示例。上半部分展示去天气,下半部分展示天气合成,整个过程不依赖成对监督数据。03 为什么“无配对统一天气编辑”很难做
天气编辑最难的地方,并不只是生成一个像雨天或雾天的画面,而是要在明显改变天气条件的同时,仍然把道路几何、目标布局和场景结构保住。
如果编辑过弱,模型只是在原图上做轻微色调变化;如果编辑过强,车辆、路面、远处结构和光照关系就会漂。
论文对现有方法的梳理非常到位:
- 物理建模路线往往对特定退化有效,但很难覆盖真实天气的复杂变化;
- 通用图像编辑模型可以“加天气”,却常常不擅长去除积雪、湿滑路面或雾天造成的整体退化;
- 传统 CycleGAN 一类无配对方法又容易出现色偏、结构漂移和扩展性不足的问题。
Cyclone 的切口不是让模型学会某一种天气,而是让模型学会“在多天气域之间做双向、结构一致的迁移”。04 方法主线:同一模型做双向天气编辑,再用循环一致性把结构钉住
图2:Cyclone 训练主线。前向天气编辑与反向恢复共同组成循环约束,并由 EMA teacher 蒸馏和 CLIP 文本引导共同稳定训练。Cyclone 的训练主线非常清楚:输入一张源图像 x0,给定目标天气文本条件 cy,先做一次前向编辑得到目标域结果;
再从这个结果出发,在源域条件 cx 下反向恢复,要求模型尽量回到原始结构。

上面两项里,L_recon 强调“模型能否从噪声态恢复输入结构”,L_cycle 强调“跨域编辑再拉回时,场景内容是否仍然一致”。
这和 CycleGAN 的思路相通,但 Cyclone 不再为每个域对单独训练生成器和判别器,而是用同一个 diffusion backbone 覆盖多天气域。
论文还补了两层关键稳定器:
- EMA teacher distillation:teacher 由 student 参数指数滑动平均得到,用来抑制训练塌缩和 identity mapping;
- CLIP 文本方向约束:不是让模型死记某张目标图,而是让编辑结果沿着“源天气 -> 目标天气”的语义方向移动。
这套设计很重要,因为 cycle 约束本身并不足以解决“模型偷懒复制输入”的问题;teacher 和文本引导补的是泛化与条件跟随。
图3:与多种天气编辑方法的定性对比。Cyclone 在结构保持、天气显著性和整体真实感之间更均衡。
表1:主要结果对比。Cyclone 在天气合成与去天气两侧都取得了更平衡的指标表现。05 主结果怎么看:不是只拼某个单项,而是在双任务上同时可用
表 1 给出的信号很明确。Cyclone 参数规模只有 0.9B,但在天气合成和去天气两侧都做到了很强的平衡:
- 天气合成:
DINO = 2.197,CLIP = 25.92,Acc_cls = 93.79,FID = 62.58; - 天气去除:
DINO = 2.574,CLIP = 22.30,Acc_cls = 92.80,FID = 65.96。
这组结果的意义在于,Cyclone 不是靠牺牲结构来换取更强风格,也不是靠“几乎不改图”来刷结构指标。
论文中的对比现象也很有代表性:
- InstructPix2Pix 和 Qwen-Image-Edit 在某些单项上很强,但对真实道路天气去除并不稳定;
- Histoformer、AWRaCLe 在去天气任务上往往改动太小;
- CycleGAN、CycleNet 更容易出现颜色偏移或整体欠拟合。
这张表最值得记住的,不是 Cyclone 在所有单项都绝对第一,而是它在“天气合成 + 去天气”两侧同时保持了可用性,这才更接近自动驾驶实际需要的统一工具。06 消融实验说明了什么:单看某一项指标会被误导,真正难的是平衡
图4:消融实验可视化。移除 cycle、recon、distill 或 CLIP 约束后,场景结构或天气保真度会明显退化。Table 3 的消融结果很有意思,也很容易被误读。
- 去掉
L_recon 和 L_cycle 后,DINO 从 3.244 恶化到 9.476,说明场景结构保持能力明显崩掉; - 去掉
L_recon 或 L_cycle 任意一项,Acc_cls 都会跌到 78 左右,而 FID 飙到 106+ 或 121+; - 去掉
L_distill 和 L_clip 后,DINO 看起来变成了 0.577,但 Acc_cls 直接掉到 2.52,FID 恶化到 110.30,这说明模型几乎失去目标条件跟随能力; - 全模型虽然不是每个数字都最极端,但在结构保持、条件服从和视觉质量之间给出了最稳的折中。
这组消融最大的启发是,天气编辑不是“某个 loss 一加就赢”,而是必须同时解决结构一致性、天气控制和训练稳定性三件事。
图5:多天气与昼夜编辑。Cyclone 不只支持单向“加天气/去天气”,还支持不同天气与时间条件之间的切换。07 应用价值一:它不止会“加天气”或“去天气”,还支持多天气、多时段切换
图 5 展示的是 Cyclone 比较像产品能力的一面。输入不是只能从 clear 变 rain,或者从 rainy 变 clear,
而是可以在 clear / foggy / rainy / snowy 与 daytime / nighttime 的组合里做更灵活的迁移。
这件事的价值不只是好看,而是意味着它可以直接服务自动驾驶数据建设里的多种场景:
- 希望覆盖昼夜与天气交叉组合时,不必分别训练一堆小模型。
从工程角度看,Cyclone 更像一个“统一天气编辑底座”,而不是单点天气特效器。08 应用价值二:它还能反过来当视频模型的蒸馏老师
图10:将 Cyclone 蒸馏到视频扩散模型后,跨帧时序一致性进一步提升。单帧天气编辑做得再像,也不代表视频里能稳。逐帧独立编辑很容易出现闪烁、天气强度跳变和局部时序不一致。
Cyclone 的一个很实用的延展,是先用图像编辑模型生成 pseudo-paired 数据,再去微调视频扩散模型。
Table 2 给出的提升非常直接:
- 天气合成:
FVD 1225 -> 1000,TF 94.32 -> 96.88,MS 95.65 -> 98.53,OC 20.42 -> 19.52; - 天气去除:
FVD 1557 -> 1161,TF 93.94 -> 97.04,MS 95.18 -> 98.06,OC 15.91 -> 14.90。
这意味着 Cyclone 不是只给出静态编辑结果,它还能给视频一致性编辑提供一套高质量蒸馏入口。
09 应用价值三:去天气之后,下游感知任务是实打实变好的
图6:去天气后对下游感知任务的提升。左到右依次为输入图像、深度估计、分割结果和检测结果。论文把目标 prompt 固定成 clear daytime,然后比较天气去除前后的零样本感知表现。
结果不是只在某个任务上有小修小补,而是深度、分割、检测三类任务一起受益。
- SHIFT:
δ1 51.70 -> 58.61,AbsRel 0.298 -> 0.260,RMSE 7.288 -> 6.613,mIoU 35.61 -> 37.47,mAP 24.93 -> 28.86; - ACDC:
mIoU 44.67 -> 47.83,mAP 26.36 -> 32.35,AP50 34.86 -> 41.07。
这组结果非常关键,因为它证明 Cyclone 的价值不只停留在“看起来更像”,而是真能改善感知模型在恶劣天气下的输入质量。
如果把它放回自动驾驶数据管线里看,Cyclone 的意义就在于它同时覆盖了数据增强和输入恢复这两条路径,而且两条路径都对最终感知效果有贡献。10 这篇论文的边界也要看清楚
- 训练成本更高:cycle 训练需要多次前向传播,计算开销天然高于普通单向编辑;
- 细节仍会损失:VAE 压缩与 diffusion artifact 会伤害文本、细杆、远处结构等细粒度信息;
- 多天气强度混合还不够自由
- 极端低光失败案例仍存在:补充材料显示,极暗雨夜等场景在恢复结构细节时仍有明显难度。
11 结论
Cyclone 最值得记住的判断,有四点:
- 自动驾驶天气编辑不该再被拆成“天气合成”和“去天气恢复”两条彼此割裂的路线。
- 无配对数据不是只能退回到弱监督或物理先验,统一 diffusion 框架同样可以把双向天气编辑做起来。
- cycle consistency 负责保结构,但真正让训练变稳、条件变准的,是 teacher distillation 和文本语义约束。
- 这套框架真正落地的价值,不只是论文可视化,而是它同时服务数据增强、视频编辑和感知鲁棒性提升。
如果把这篇论文压成一句话,它真正推进的是:自动驾驶天气处理终于开始从“各做各的特效模块”,走向“一套统一编辑底座”了。