新智元报道
编辑:LRST
GenXD 模型结合 CamVid-30K 数据集突破了 3D 和 4D 场景生成的挑战,能从单张图片生成逼真的动态 3D 和 4D 场景。这一进展为虚拟世界构建带来新的可能性,让动态场景的生成更加快速和真实。
在我们熟知的 2D 图像和视频生成技术蓬勃发展之际,3D 和 4D 的世界依然是前沿科技的「无人区」。
面对真实场景中复杂的物体运动和视角变化,3D、4D 生成一直面临数据和模型设计的双重瓶颈。然而,一项令人振奋的突破即将改变这一现状!
近日,新加坡国立大学(NUS)的研究人员提出了一种全新的生成框架——GenXD,不但能生成极具真实感的 3D 场景,还实现了从相机视角和物体图片中「生长」出逼真的 4D 动态场景。
项目主页: https://gen-x-d.github.io/
论文链接: https://arxiv.org/abs/2411.02319
代码链接: https://github.com/HeliosZhao/GenXD
GenXD 能够实现单图片静态虚拟物体和场景的生成,实现高质量的 3D 内容创作:
GenXD 也能够实现稀疏图片场景的重建,作为先验完善 3D 重建任务:
GenXD 可以实现单图 4D 生成,生成任意时刻以及任意视角:
GenXD 也能够助力视频插帧和可控视频生成,使用多图和相机路径作为控制信号:
CamVid-30K 4D 数据构建
图 1 数据标注
在动态 3D 任务的发展中,缺乏大规模 4D 场景数据一直是一个关键瓶颈。这不仅影响到 4D 生成、动态相机姿态估计等任务,也限制了可控视频生成等应用的进展。
为了解决这一难题,研究团队推出了一个高质量 4D 数据集——CamVid-30K,为未来的动态 3D 任务奠定了坚实基础。
CamVid-30K 数据集的创建过程包括了一系列精细的步骤。首先,研究人员使用基于运动恢复结构(SfM)的方法来估计相机姿态。
SfM 通过从多张图像的投影中重建 3D 结构,其中包括特征检测与提取、特征匹配、3D 重建与相机姿态估计等关键步骤。
为了确保准确性,特征匹配仅限于静态场景部分,以避免动态物体误导相机的运动估计。
与之前方法不同的是,CamVid-30K 使用了一种实例分割模型,将所有可能移动的像素进行分割。
相比早期的运动分割模块,该实例分割方法具备更强的泛化能力,特别是在复杂场景下更为适用。随后,利用改进的 Particle-SfM 对静态背景进行处理,最终生成精准的相机姿态和稀疏点云信息。
为进一步筛选出真正的动态场景,CamVid-30K 还引入了运动强度指标来识别物体的真实运动。通过对齐深度投影,将动态物体在 3D 空间中进行重投影,以便检测位移,确保所包含的场景具有丰富的动态细节。这一过程确保了 CamVid-30K 不仅包含相机的运动信息,还捕捉到了物体本身的运动,使其成为高质量的 4D 数据资源。
模型架构
图 2 整体框架
为了实现更自然的 3D 和 4D 场景生成,GenXD 使用隐变量扩散模型(LDM),生成出符合相机视角和时间序列的场景图像。此外,GenXD 提出多视角-时间层,将 3D 和时间信息有效解耦和融合。
对于相机视角信息,GenXD 使用每个视角下的 Plucker Ray 作为控制信号。而对于单张或多张图像信息,GenXD 使用掩码隐变量条件(mask latent conditioning)方式利用图像信息。
该方法在图像条件输入时具有三大优势:首先,无需对模型参数进行修改,便可以支持任意视角输入;其次,在多视图生成或视频生成过程中,无需固定条件帧的位置,确保了更大的灵活性;最后,省去了额外的条件嵌入,从而减少了模型参数量。这种设计不仅使得 GenXD 更高效,还可以处理复杂的多视角输入场景。
为了实现 3D 和 4D 的生成,GenXD 引入了多视角-时间模块,分别对多视角信息和时间信息进行建模。通过设计多视角层与时间层,GenXD 可以在 3D 生成时忽略时间信息,而在 4D 生成时引入多视角与时间信息的融合。
此外,模型采用了 alpha 融合策略,利用一个可学习的融合权重来控制 4D 生成的多视角和时间信息融合效果,从而实现更精准的动态场景生成。
此外,为了解决运动控制的问题,GenXD 将 CamVid-30K 数据集中提供的运动强度引入多视角-时间 ResBlock 中。这样,模型可以准确地表达物体运动,从而在生成的场景中体现更自然的动态效果。
实验结果
GenXD 在单视角 4D 生成,相机控制的视频生成,单视角 3D 生成以及少视角 3D 重建任务上均可用,并取得了很好的效果。
单视角 4D 生成
表 1 单视角 4D 生成
对于单视角 4D 生成,GenXD 首先生成 4D 视频,然后使用生成的视频优化 4D 高斯泼溅网络因此,与过去基于 SDS 的方法相比,GenXD 有更快的优化速度,也有更好的效果。
相机控制的视频生成
表 2 相机控制的视频生成
GenXD 也与过去相机控制的运动生成方法进行了比较,过去的方法只能使用单张图片作为条件,无法实现视频插帧的功能。但单图条件下,GenXD 超越过去的方法, 若使用多图作为条件,GenXD 的效果可以得到更大的提升。
单视角 3D 生成
表 3 单视角 3D 生成
图 3 单视角 3D 生成
GenXD 也在 3D 合成物体生成任务上进行了评估。在此任务上,GenXD 首先生成 360 度视频,并利用此视频优化 3D 高斯泼溅网络。过去的方法在合成物体 3D 数据集上单独训练,而 GenXD 使用了不同分布的真实数据和 4D 数据。即使如此,GenXD 也与过去的方法有相近的效果。此外,从可视化结果来看,GenXD 没有过去方法常见的过度平滑和过度饱和问题。
少视角 3D 重建
表 4 少视角 3D 重建
图 4 少视角 3D 重建
GenXD 可以使用多张图片作为条件,生成尺度一致的 3D 内容。因此,GenXD 可以将生成的图片作为补充,提升少视角 3D 重建的效果。在此项目中,GenXD 与两个重建网络(ZipNeRF 和 3DGS)相结合,极大地提升重建的效果。
运动控制
图 5 运动控制
数据标注管线中提出了运动强度的概念,并且被引入到多视角-时间 ResBlock 里进行运动控制。图 5 可视化了运动控制的效果。使用同样的图片和相机条件,增大运动强度可以提高物体运动的速度,从而实现可控生成。
总结
GenXD 模型和 CamVid-30K 数据集为 3D 和 4D 生成领域带来了全新突破。通过设计多视角-时间模块并引入掩码隐变量条件,GenXD 不仅能够解耦相机和物体的运动,还可以支持任意数量的条件视图输入。
GenXD 展示了在各类应用中的强大适应性,且在多项任务中达到了与现有方法相当或更优的表现。这一成果为未来的 3D 和 4D 生成任务奠定了坚实的基础,预示着虚拟世界构建与动态场景生成的无限可能。
参考资料: