
video-diffusion-pytorch
用 PyTorch 实现扩散模型,从文本生成连贯视频
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1392
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- 已安装 Python 与 pip 环境
- 已安装 PyTorch(示例代码中 import torch)
- 如需复现论文实验,需要较大算力(README 说明实验资源由 Stability.ai 提供)
安装与启动步骤
-
1安装依赖包
README 只给出一条安装命令,直接在终端执行即可,无需克隆仓库。
pip install video-diffusion-pytorch -
2验证包可导入
确认 Unet3D 与 GaussianDiffusion 能正常导入,避免装到了错误的 Python 环境。
python -c "from video_diffusion_pytorch import Unet3D, GaussianDiffusion; print('ok')" -
3编写示例脚本
按 README 的 Usage 片段写入 demo.py:建 3D UNet 与扩散对象,随机生成一段视频张量。
cat > demo.py <<'EOF' import torch from video_diffusion_pytorch import Unet3D, GaussianDiffusion model = Unet3D( dim = 64, dim_mults = (1, 2, 4, 8) ) diffusion = GaussianDiffusion( model, image_size = 32, num_frames = 5, timesteps = 1000, # number of steps loss_type = 'l1' # L1 or L2 ) videos = torch.randn(1, 3, 5, 32, 32) # (batch, channels, frames, height, width),取值归一化到 -1 到 +1 loss = diffusion(videos) print(loss) loss.backward() EOF -
4运行示例
执行脚本,首次运行会下载/初始化依赖并做一次前向与反向传播,CPU 上会较慢。
python demo.py
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
dim | 否 | UNet 基础通道维度,越大模型越大 | 64 |
dim_mults | 否 | 各层通道倍数,控制 UNet 深度与容量 | (1, 2, 4, 8) |
image_size | 否 | 视频帧的空间分辨率 | 32 |
num_frames | 否 | 生成的视频帧数 | 5 |
timesteps | 否 | 扩散过程的步数 | 1000 |
loss_type | 否 | 损失函数类型,可选 L1 或 L2 | l1 |
如何确认成功
运行 python demo.py 不报错并能打印出 loss 数值,说明前向与反向传播均正常。
常见问题
Q:安装成功后 import 报 ModuleNotFoundError 怎么办?
A:通常是装到了其他 Python 环境,可用 pip show video-diffusion-pytorch 确认安装位置,并用同一解释器重新执行安装命令。
Q:怎么实现文本到视频?
A:README 中本项目未给出文本条件的具体调用示例,并说明文本到视频的新进展集中到 lucidrains/imagen-pytorch 仓库,建议查阅该项目。
Q:显存不足怎么办?
A:可减小示例中的 image_size、num_frames,或降低 dim 与 dim_mults 的规模。
Q:loss_type 该选哪个?
A:README 注释说明可选 L1 或 L2,示例默认使用 'l1'。
注意事项
- README 未提供训练/推理命令行脚本,使用方式以 Python API 为主。
- 项目状态标注为 WIP(进行中),完整复现需要较大算力。
- 文本到视频的后续研究已迁移到 imagen-pytorch 仓库,README 建议前往查看。
核心亮点
- 忠实复现论文核心架构,时空注意力机制有效捕捉视频动态
- 代码模块化清晰,易于修改和扩展训练配置
- 支持文本条件生成,可直接用于 text-to-video 任务
不足之处
- 训练视频数据需求大,普通 GPU 难以跑通完整流程
- 文档偏少,示例和调参指南不够详细
适用场景
- 学术研究:复现视频扩散模型基线,对比新方法
- 原型开发:快速搭建文本到视频生成的最小可行产品
- 教学演示:理解扩散模型在视频领域的应用
替代项目
Video Diffusion Models (Official)、Imagen Video、Make-A-Video
同类项目推荐
kandinsky-6
开源
一句话生成带声音的视频,口型音效自动对上
Kandinsky 6.0 Video: Foundation Models for Synchronized Video and Audio Generation
novelvids
开源
从故事到分镜成片,一站式 AI 短剧创作台
从故事创作、角色资产管理、分镜设计,到 AI 图片与视频生成,打造完整的开源 AI 漫剧与短···
tgan2
开源
低显存训练高分辨率视频生成模型,稀疏训练密集生成
The official implementation of "Train Sparsely, Generate Densely: Memory-efficient U···
LTX-Video
开源
一句话或一张图,高清视频马上来
Official repository for LTX-Video
splicr
开源
导入素材,7步自动出解说成片
Dramaxis (剧枢) — 电影级多智能体影视叙事与智能解说平台 (Tauri 2 + Rust + React 19)。···
WACV23_TSNet
开源
一键把视频动作迁移到任何人身上,生成逼真换脸视频
The pytorch implementation of our WACV23 paper "Cross-identity Video Motion Retarget···
deforum-kandinsky
开源
用 Kandinsky 模型快速生成 Deforum 风格短视频动画
Kandinsky x Deforum — generating short animations
lingbot-world
开源
给个开头画面,AI 自动接续成片
Advancing Open-source World Models
seedance-2.0-api
开源
按秒算钱的视频生成 API,文生图生示例直接抄
Seedance 2.0 API (seedance-2.0 / seedance-2.0-mini / seedance-2.0-fast): per-second ···