
想象你坐在一辆自动驾驶汽车里,它需要在行驶前预测前方会发生什么。这不仅需要看清楚现在的道路情况,还要能够"想象"接下来可能出现的各种场景——其他车辆会怎么移动,行人会从哪里出现,道路的形状是什么样的。这就像一个人类驾驶员不仅要看到眼前的景象,还要在脑海中预演接下来的情况。
这项由香港科技大学和商汤科技的研究团队完成的工作,就是为了让自动驾驶系统拥有这样的能力。这篇论文发表于2025年10月,论文编号为arXiv:2510.07944v2。研究团队包括张天瑞、刘一晨、郭子林、郭宇鑫、倪景城、丁晨静、徐丹、卢乐威和吴泽欢等科研人员,他们来自商汤研究院和香港科技大学计算机科学与工程学院。
现在的问题是,当前的自动驾驶世界模型虽然能生成看起来逼真的视频,但它们有一个致命的缺陷:它们不能准确地告诉我们场景中物体的真实距离和深度信息。这就好比你看一张照片能知道里面有什么东西,但不知道这些东西离你有多远。对于自动驾驶来说,这是一个严重的问题,因为准确的距离信息对于安全决策至关重要。
当前的视频生成技术面临一个有趣的矛盾。一方面,基于扩散模型的视频生成技术已经能够生成看起来非常逼真的多视角驾驶场景视频。这些模型就像一个会画画的艺术家,能够根据你的描述(比如"生成一个十字路口的场景")画出非常精细的图像。但另一方面,这些艺术家只关心画面的美观性,不关心画面中物体之间的几何关系是否真实。
举个例子,一个现有的模型可能会生成一个看起来很真实的街道场景,但如果你仔细看,会发现一辆远处的汽车和近处的汽车之间的大小比例不对,或者建筑物的深度感不真实。这对于自动驾驶系统来说是个大问题,因为它需要根据这些视频来做出真实的驾驶决策。
更糟的是,一些研究团队虽然尝试在生成视频的同时估计深度信息,但他们使用的方法有一个根本性的局限:他们生成的深度图只是"相对深度",就像在黑暗中用手电筒照亮的相对位置,而不是真实世界中的绝对距离。这就像告诉驾驶系统"这个物体比那个物体近",但不告诉它"这个物体距离你有10米",这显然不够用。
有些研究者尝试了另一个思路:先生成视频,再用3D高斯点云(一种表示3D场景的方法)来重建场景。但这种方法有个问题,就像先画一幅画,然后再试图从画中提取3D信息一样,效果往往不理想,因为生成的图像本身就不够精确。
研究团队的创新思路是这样的:与其让视频生成模型自己去理解3D结构,不如先教一个中间层的模型(叫做VAE,即变分自编码器)学会理解3D结构和深度信息,然后再用这个更聪明的中间层来帮助视频生成模型。
这就像在一个工厂里,与其让最后的组装工人自己去理解每个零件的形状,不如先让质检员学会识别零件的真实形状和尺寸,然后组装工人就能更准确地组装产品。
他们创造了一个叫做STORM-VAE的新模型。STORM是一个之前的研究成果,它能够通过观看多个视角的图像和激光雷达数据(自动驾驶汽车上的传感器),来重建动态的3D场景。研究团队的创新在于,他们把STORM的能力融合到VAE这个中间层模型中。
具体来说,他们让STORM-VAE做两件事情。第一件事是它的本职工作:把图像压缩成一个紧凑的数字表示(这叫做"潜在表示"),然后再从这个表示中恢复出原始的图像。第二件事是新增加的任务:从这个压缩的表示中直接生成3D高斯点云,这些点云能够通过渲染来重建原始场景。
这个双任务的设计非常巧妙。当STORM-VAE学习同时完成这两个任务时,它被迫学会在压缩表示中编码关于3D结构和物体运动的信息。这就像一个学生同时学习绘画和雕塑,最终他对物体的三维理解会比只学绘画的学生更深刻。
训练STORM-VAE的方式是这样的:研究团队给它展示来自自动驾驶数据集的多视角图像和激光雷达数据。模型需要学会从这些输入中提取关键信息,然后既能重建出原始的RGB图像,也能重建出3D场景。为了监督这个过程,他们使用了两种损失函数(这是机器学习中用来衡量模型错误程度的指标)。一个是图像重建损失,确保重建的图像看起来像原始图像;另一个是3D场景重建损失,确保重建的3D场景在几何上是准确的。
有了STORM-VAE之后,研究团队用它来替换之前视频生成模型中使用的标准VAE。他们的视频生成模型叫做CVD-STORM,基于一个叫做UniMLVG的现有框架,这个框架本身就能生成多视角的长视频。
CVD-STORM的架构就像一个精心设计的流水线。首先,输入的多视角视频序列被STORM-VAE压缩成紧凑的数字表示。然后,这些表示被送入一个基于扩散模型的生成器。这个生成器包含三种不同的注意力机制(这是深度学习中的一种技术,让模型能够关注输入中的重要部分)。
第一种是多模态扩散变换器块,它在单个图像的空间维度上工作,就像一个画家在一张画布上进行细节处理。第二种是时间块,它在视频序列的时间维度上工作,确保相邻的帧之间看起来连贯,就像检查电影的每一帧是否能流畅地过渡到下一帧。第三种是跨视角块,它在不同摄像头视角之间工作,确保从不同角度看同一个场景时,物体的位置和形状是一致的,就像确保一个房间从不同窗户看起来都是合理的。
这三种机制的结合,加上STORM-VAE提供的更智能的中间表示,使得生成的视频既在视觉上逼真,又在几何上准确。
研究团队采用了一个两阶段的训练策略,这反映了他们对问题的深刻理解。
第一阶段是训练STORM-VAE。在这个阶段,模型被展示来自多个自动驾驶数据集的图像和激光雷达数据。这些数据来自nuScenes、Waymo和Argoverse2等知名的自动驾驶数据集。模型学会了如何同时完成图像重建和3D场景重建这两个任务。为了处理不同数据集之间的差异(比如有些数据集有激光雷达数据,有些没有),研究团队采用了一些巧妙的技巧,比如对不同的数据源使用不同的损失函数权重。
第二阶段是训练CVD-STORM视频生成模型。在这个阶段,STORM-VAE的编码器(压缩部分)被冻结,不再改变。这意味着模型已经学会了如何提取关键信息,现在要学的是如何根据各种条件(比如文字描述、物体的边界框、高清地图)来生成新的视频。
这个两阶段的方法有点像教一个人先学会观察和分析,然后再学会创意写作。首先要学会正确地理解世界,然后才能生成新的、逼真的场景。
有趣的是,研究团队在第二阶段采用了单阶段训练,这与一些之前的方法不同。之前的方法会分多个阶段逐步提高模型的能力,但这个团队发现,由于STORM-VAE已经提供了高质量的中间表示,他们可以直接在一个阶段内同时训练空间、时间和跨视角的生成能力,这样既简化了训练过程,又降低了计算成本。
CVD-STORM不仅能生成逼真的视频,还能根据多种条件来控制生成的内容。这就像一个导演,你可以告诉他你想要什么样的场景,他就能为你创造出来。
首先是文字描述。你可以用自然语言描述你想要的场景,比如"一个晴天的十字路口,有几辆汽车和行人"。模型会理解这些描述,并生成相应的视频。
其次是物体的边界框。在自动驾驶中,我们经常用矩形框来标注物体的位置。你可以指定在视频中的某个位置应该出现一辆汽车,在另一个位置应该出现一个行人。模型会尊重这些约束条件。
再次是高清地图。自动驾驶汽车通常配备高精度的地图,显示道路的形状、车道的位置等信息。CVD-STORM可以根据这些地图来生成符合真实道路布局的视频。
最后是参考帧。如果你提供一个或多个真实的视频帧作为起点,模型可以从这些帧开始,预测接下来会发生什么。这就像给一个故事讲述者一个开头,让他继续讲下去。
研究团队用多种指标来评估他们的方法是否真的更好。
首先是图像质量指标,叫做FID(Fréchet Inception Distance)。这个指标衡量生成的图像与真实图像的相似程度。分数越低越好。CVD-STORM的FID分数是3.8,而之前最好的方法UniMLVG的分数是5.8。这意味着CVD-STORM生成的图像质量提高了大约34%。
其次是视频质量指标,叫做FVD(Fréchet Video Distance)。这个指标不仅考虑单个图像的质量,还考虑视频的时间连贯性。CVD-STORM的FVD分数是14.0,而UniMLVG是36.1。这意味着生成的视频不仅看起来更逼真,而且帧与帧之间的过渡更自然,时间连贯性提高了61%。
但评估不仅仅是看生成的视频有多漂亮。研究团队还评估了生成的视频对于自动驾驶任务的实用性。他们用两个感知任务来测试:3D物体检测和鸟瞰图分割。
3D物体检测就是让一个预训练的模型看生成的视频,然后尝试识别视频中的汽车、行人等物体,并准确地定位它们的位置。CVD-STORM在这个任务上的表现(mAP为25.21)超过了所有之前的方法。
鸟瞰图分割是指从上往下看,识别哪些区域是道路,哪些区域是其他东西。CVD-STORM在道路识别上的表现(mIoU为66.11)略低于UniMLVG的70.81,但这是可以接受的权衡,因为它在其他方面的优势更大。
也许CVD-STORM最令人印象深刻的地方是它能够生成真实的深度信息。当模型生成一个视频时,它的GS解码器(高斯点云解码器)可以同时输出每个像素的深度值。这不是通过某个额外的模型猜测出来的,而是直接从3D场景重建中得出的。
这就像一个摄影师不仅拍出了一张漂亮的照片,还同时记录了照片中每个物体的真实距离。这对于自动驾驶来说是革命性的,因为它意味着生成的视频不仅可以用来训练视觉识别模型,还可以用来训练深度估计模型。
研究团队展示了生成视频中的深度图,可以看到动态和静态物体的深度信息都被准确地捕捉了。这种能力来自于STORM-VAE在训练时学到的3D理解。
为了证明他们设计中的每个部分都是必要的,研究团队进行了一系列的消融研究,这就像在一个复杂的机器中逐个移除零件,看看哪个零件最重要。
首先,他们测试了使用不同数量参考帧的效果。当模型没有任何参考帧时(纯粹的视频生成),FID分数是8.7,FVD分数是39.0。当提供1个参考帧时,FID下降到3.6,FVD下降到17.2。当提供3个参考帧时,FID进一步下降到3.8,FVD下降到14.0。这表明参考帧确实帮助模型生成更连贯的视频。
其次,他们比较了使用STORM-VAE和使用标准VAE的效果。使用标准VAE时,FID是9.36,FVD是52.85。使用STORM-VAE时,FID下降到7.92,FVD下降到34.37。这证明了STORM-VAE确实提供了更好的中间表示,帮助视频生成模型更快地学习和生成更高质量的视频。
现在让我们回到最初的问题:为什么这项研究很重要?
对于自动驾驶行业来说,这项研究提供了一个新的方向。以前,生成逼真的驾驶场景视频和准确估计深度信息被视为两个独立的问题。这项研究表明,通过让一个中间层的模型同时学习这两个任务,可以获得比分别解决这两个问题更好的结果。
这意味着自动驾驶公司可以使用CVD-STORM来生成大量的训练数据,这些数据不仅在视觉上逼真,而且在几何上准确。这可以用来训练更好的感知模型、规划模型,甚至可以用于闭环仿真,即在虚拟环境中测试自动驾驶算法的安全性。
对于AI研究来说,这项研究展示了表示学习的力量。通过在VAE的训练中加入额外的任务(3D重建),模型学到的表示变得更加有用,这进而提高了下游任务(视频生成)的性能。这个思路可能会启发其他领域的研究者,在他们的模型中加入辅助任务来改进表示学习。
对于那些想更深入理解技术细节的读者,我们可以再进一步讨论一些实现上的细节。
STORM-VAE的训练使用了一个加权的损失函数。图像重建的损失包括三个部分:MSE损失(衡量像素级别的差异)、LPIPS损失(衡量感知级别的差异,这更接近人眼的感受)和KL散度损失(确保潜在表示遵循某种分布)。3D重建的损失主要是RGB渲染损失和深度监督损失。这两个损失函数的权重比例被设置为1:0.5,这意味着模型在学习图像重建时投入的精力是学习3D重建的两倍。
在CVD-STORM的训练中,研究团队使用了一个叫做整流流(Rectified Flow)的技术来替代传统的扩散过程。这是一个相对较新的技术,它能够更高效地进行去噪过程,从而加快生成速度。
数据处理上,研究团队为了处理不同数据集之间的差异,采用了一些标准化技术。他们将所有数据集的视角数标准化为6个,使用注意力掩码来避免对冗余数据的融合。对于只有单视角的数据集(如OpenDV-Youtube),他们在训练时跳过跨视角块。
虽然CVD-STORM取得了显著的进步,但研究团队也坦诚地指出了一些局限性。首先,虽然模型能够生成长达20秒的视频,但对于某些极端的驾驶场景(如极端天气、夜间驾驶)的泛化能力可能还需要进一步提高。其次,深度估计虽然是绝对深度,但评估方法仍然依赖于伪标签(使用Depth Anything V2生成的标签),这可能不是完全准确的。
未来的研究方向可能包括:进一步改进模型在极端条件下的表现,开发更好的深度估计评估方法,探索如何将这个框架扩展到其他类型的场景生成任务,以及研究如何在实际的自动驾驶系统中应用这些生成的视频和深度信息。
为了更好地理解CVD-STORM的优势,我们可以看看它与其他方法的具体比较。
MagicDriveV2是一个之前的强大基线,它也能生成多视角的驾驶视频。但它的FID分数是19.1,FVD分数是218.1,远不如CVD-STORM。这个差异很大程度上来自于STORM-VAE提供的更好的表示。
UniMLVG是CVD-STORM的直接前身,它的FID分数是5.8,FVD分数是36.1。虽然这已经是很好的结果,但CVD-STORM通过引入STORM-VAE,进一步将FID改进到3.8,FVD改进到14.0。这大约是30-60%的性能提升,这在深度学习领域是一个相当显著的改进。
其他方法如DreamForge、Glad、DriveScape等,虽然各有特色,但在FID和FVD指标上都不如CVD-STORM。这表明CVD-STORM确实代表了当前的最先进水平。
研究团队在论文中提供了详细的实验设置,这对于其他研究者想要复现或改进这项工作很重要。
他们使用了多个数据集的组合:OpenDV-Youtube用于单视角数据,nuScenes、Waymo和Argoverse2用于多视角数据。序列长度设置为19帧,这是一个相对较短的序列,但足以让模型学习时间连贯性。他们还使用了三种不同的图像分辨率(144×256、176×304和256×448),以增加数据的多样性和模型的泛化能力。
训练使用了H100 GPU,批大小为32。这是相当大的计算资源,反映了这个模型的复杂性。学习率使用了余弦调度器,初始学习率为6×10??,最小学习率为1×10??。优化器使用了AdamW,这是现代深度学习中的标准选择。
推理时使用了50个扩散步骤,这是一个相对较少的步骤数,表明STORM-VAE的改进使得模型能够更快地生成高质量的结果。
这项研究对自动驾驶的未来有几个重要的启示。
首先,它表明生成模型在自动驾驶中的应用远不止于生成逼真的视频。通过巧妙地设计模型架构和训练策略,我们可以让生成模型同时完成多个任务,从而获得更好的结果。
其次,它强调了表示学习的重要性。一个好的中间表示可以显著提高下游任务的性能。这对于设计自动驾驶系统的其他组件也有启发意义。
第三,它展示了多模态学习的力量。通过结合图像、激光雷达和其他传感器数据,模型能够学到更丰富、更准确的世界理解。
最后,它提示我们,在追求生成质量的同时,不应该忽视生成内容的几何准确性。对于自动驾驶这样的安全关键应用,准确性和逼真性同样重要。
Q&A
Q1:CVD-STORM是什么,它和之前的视频生成模型有什么区别?
A:CVD-STORM是由香港科技大学和商汤科技开发的一个AI视频生成模型,专门为自动驾驶场景设计。它的独特之处在于引入了STORM-VAE,一个能够同时理解图像和3D场景结构的中间层模型。这使得CVD-STORM不仅能生成逼真的多视角驾驶视频,还能同时提供准确的深度信息,而之前的模型只能做其中之一。
Q2:为什么STORM-VAE对视频生成的质量提升这么大?
A:STORM-VAE通过同时学习图像重建和3D场景重建两个任务,被迫在其压缩表示中编码关于3D结构和物体运动的信息。这个更智能的中间表示为后续的视频生成模型提供了更好的基础,使得模型能够更快地学习并生成更高质量的视频。实验表明,使用STORM-VAE相比标准VAE,FID分数提升了约15%,FVD分数提升了约35%。
Q3:CVD-STORM生成的深度信息能用来做什么?
A:CVD-STORM生成的是真实的绝对深度信息,而不是相对深度。这意味着可以用来训练深度估计模型、进行3D场景理解、验证自动驾驶算法的安全性,以及在闭环仿真中测试自动驾驶系统。这是一个重大突破,因为之前的方法生成的深度信息往往不准确或不是绝对的。
好文章,需要你的鼓励
Adobe研究院与UCLA合作开发的Sparse-LaViDa技术通过创新的"稀疏表示"方法,成功将AI图像生成速度提升一倍。该技术巧妙地让AI只处理必要的图像区域,使用特殊"寄存器令牌"管理其余部分,在文本到图像生成、图像编辑和数学推理等任务中实现显著加速,同时完全保持了输出质量。
香港科技大学团队开发出A4-Agent智能系统,无需训练即可让AI理解物品的可操作性。该系统通过"想象-思考-定位"三步法模仿人类认知过程,在多个测试中超越了需要专门训练的传统方法。这项技术为智能机器人发展提供了新思路,使其能够像人类一样举一反三地处理未见过的新物品和任务。
韩国KAIST开发的Vector Prism系统通过多视角观察和统计推理,解决了AI无法理解SVG图形语义结构的难题。该系统能将用户的自然语言描述自动转换为精美的矢量动画,生成的动画文件比传统视频小54倍,在多项评估中超越顶级竞争对手,为数字创意产业带来重大突破。
华为诺亚方舟实验室提出VersatileFFN创新架构,通过模仿人类双重思维模式,设计了宽度和深度两条并行通道,在不增加参数的情况下显著提升大语言模型性能。该方法将单一神经网络分割为虚拟专家并支持循环计算,实现了参数重用和自适应计算分配,为解决AI模型内存成本高、部署难的问题提供了全新思路。