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
相关推荐
qq_310658515 分钟前
mediasoup源码走读(十二)——router
服务器·c++·音视频
十铭忘7 分钟前
SAM2跟踪的理解6——mask decoder
人工智能·计算机视觉
不会计算机的g_c__b14 分钟前
AI Agent 三大核心组件解析:规划、记忆与工具使用,构建真正智能体
人工智能
听风吹等浪起16 分钟前
机器学习算法:随机梯度下降算法
人工智能·深度学习·算法·机器学习
Yuner200017 分钟前
Python机器学习:从零基础到深度实战
人工智能·python·机器学习
落羽的落羽18 分钟前
【C++】哈希扩展——位图和布隆过滤器的介绍与实现
linux·服务器·开发语言·c++·人工智能·算法·机器学习
拉姆哥的小屋19 分钟前
【深度学习实战】基于CyclePatch框架的电池寿命预测:从NASA数据集到Transformer模型的完整实现
人工智能·深度学习·transformer
speop21 分钟前
【datawhale组队学习】TASK01|课程导论:站在认知范式的临界点
人工智能·学习
普密斯科技24 分钟前
从点测量到解决方案:光谱共焦技术如何集成于运动平台,实现3D轮廓扫描与透明物体测厚?
人工智能·算法·计算机视觉·3d·集成测试·测量