DepthCrafter:为开放世界视频生成一致的长深度序列

通过利用视频扩散模型,我们创新了一种新颖的视频深度估算方法--DepthCrafter。 它可以为开放世界视频生成具有细粒度细节的时间一致性长深度序列,而无需摄像机姿势或光流等附加信息。

简介

动机。 尽管在静态图像的单目深度估算方面取得了重大进展,但由于开放世界视频在内容、运动、摄像机移动和长度等方面存在极大差异,因此估算开放世界视频的深度仍然具有挑战性。 我们提出了一种创新方法--DepthCrafter,用于为开放世界视频生成具有复杂细节的时间一致性长深度序列,而无需摄像机姿势或光流等任何补充信息。 DepthCrafter 通过精心设计的三阶段训练策略,利用编译好的成对视频深度数据集,从预先训练好的图像到视频扩散模型训练视频到深度模型,从而实现对开放世界视频的泛化能力。 我们的训练方法使模型能够一次性生成长度可变的深度序列,最多可达 110 帧,并从现实和合成数据集中获取精确的深度细节和丰富的内容多样性。 我们还提出了一种推理策略,通过分段估计和无缝拼接来处理超长视频。


概述 DepthCrafter 是一个条件扩散模型,它以输入视频为条件,对深度序列的分布进行建模。 我们分三个阶段对模型进行训练,其中扩散模型的空间层或时间层是在我们编译的现实数据集或长度可变的合成数据集上逐步学习的。 在推理过程中,给定一个开放世界的视频,它可以从初始化的高斯噪声中为整个视频生成具有细粒度细节的时间上一致的长深度序列,而不需要任何补充信息,如摄像机姿势或光流。


超长视频推理。 我们将视频划分为重叠的片段,并采用噪声初始化策略估算每个片段的深度序列,以锚定深度分布的尺度和偏移。 然后,这些估算出的片段通过潜在插值策略无缝拼接在一起,形成整个深度序列。

Project: https://depthcrafter.github.io/

Code: https://github.com/Tencent/DepthCrafter

arXiv: https://arxiv.org/abs/2409.02095

Paper:https://depthcrafter.github.io/pdf/DepthCrafter.pdf

Model:https://huggingface.co/tencent/DepthCrafter

使用

安装

bash 复制代码
git clone https://github.com/Tencent/DepthCrafter.git
cd DepthCrafter
pip install -r requirements.txt

推理

  1. 高分辨率推理,需要 1024x576 分辨率的约 26GB 内存的 GPU:
  • 完全推理(在 A100 上约为 0.6 fps,建议用于获得高质量结果):
bash 复制代码
python run.py  --video-path examples/example_01.mp4

通过四步去噪,在无分类器引导的情况下实现快速推理(在 A100 上约为 2.3 fps):

bash 复制代码
python run.py  --video-path examples/example_01.mp4 --num-inference-steps 4 --guidance-scale 1.0
  1. 低分辨率推理,需要约 9GB 内存的 GPU,分辨率为 512x256:
  • 完全推理(在 A100 上约为 2.3 帧/秒):
bash 复制代码
python run.py  --video-path examples/example_01.mp4 --max-res 512
  • 通过 4 步去噪和无分类器引导实现快速推理(在 A100 上约为 9.4 帧/秒):

python run.py --video-path examples/example_01.mp4 --max-res 512 --num-inference-steps 4 --guidance-scale 1.0

Gradio Demo

提供了本地的 Gradio Demo 模型,以运行:

bash 复制代码
gradio app.py
相关推荐
loongloongz17 分钟前
联合条件概率 以及在语言模型中的应用
人工智能·语言模型·自然语言处理·概率论
lijfrank19 分钟前
情感计算领域期刊与会议
人工智能·人机交互
sp_fyf_202422 分钟前
计算机人工智能前沿进展-大语言模型方向-2024-09-18
人工智能·语言模型·自然语言处理
sp_fyf_202424 分钟前
计算机人工智能前沿进展-大语言模型方向-2024-09-14
人工智能·语言模型·自然语言处理
ybdesire29 分钟前
nanoGPT用红楼梦数据从头训练babyGPT-12.32M实现任意问答
人工智能·深度学习·语言模型
AI极客菌36 分钟前
Stable Diffusion绘画 | 生成高清多细节图片的各个要素
人工智能·ai·ai作画·stable diffusion·aigc·midjourney·人工智能作画
FOUR_A37 分钟前
【机器学习导引】ch2-模型评估与选择
人工智能·机器学习
shiming88791 小时前
MATLAB图像处理
图像处理·计算机视觉·matlab
lupai2 小时前
盘点实用的几款汽车类接口?
大数据·人工智能·汽车
geekrabbit2 小时前
机器学习和深度学习的区别
运维·人工智能·深度学习·机器学习·浪浪云