突破次元壁!新加坡国立发布GenXD:拿捏真实感3D、4D动态场景

  新智元报道

  编辑: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 生成任务奠定了坚实的基础,预示着虚拟世界构建与动态场景生成的无限可能。

  参考资料:

  https://gen-x-d.github.io/