Show-1
首个融合像素与潜在扩散的文生视频开源模型,IJCV 收录
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
首个融合像素与潜在扩散的文生视频开源模型,IJCV 收录
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
2023年,大语言模型已经能写出流畅的文章、生成逼真的图片,但视频生成依然是AI领域最硬的骨头之一。视频不仅要有空间一致性(每一帧的画面要合理),更要有时间一致性——第1帧和第100帧的人物、场景、光照要连贯,不能跳脱。要同时解决这两个问题,传统方法要么计算成本爆炸,要么生成质量惨不忍睹。
新加坡国立大学(NUS)的 Show Lab 团队正是在这个节点交出了一份令人眼前一亮的答卷:2023年9月发布论文,2024年10月被计算机视觉顶刊 IJCV(International Journal of Computer Vision) 接收,代码和权重完全开源——这在文生视频领域极为罕见,因为多数同类工作仅发布论文,闭源模型。
图1:Show-1 项目 Logo
Show-1 的核心创新在于将像素级扩散模型(Pixel Diffusion)和潜在扩散模型(Latent Diffusion)混合使用,而非单纯依赖某一类。
为什么这样做?
传统文生图/视频的扩散模型通常在潜在空间(Latent Space)中运行——先把图像压缩到低维隐向量,用少量维度表示空间信息,再在隐空间做去噪。这种方式效率高,但低分辨率的空间细节容易被压缩丢失,对于需要精准空间一致性的视频来说是个隐患。
Show-1 的解决思路是让不同阶段使用最适合的工具:
| 阶段 | 模型 | 分辨率 | 核心任务 |
|---|---|---|---|
| Base | showlab/show-1-base | 64×40, 8帧 | 文本→关键帧序列(像素扩散) |
| Interpolation | showlab/show-1-interpolation | 64×40, 29帧 | 帧间插值填充(像素扩散) |
| SR1 | showlab/show-1-sr1 + DeepFloyd/IF-II-L | 256×160, 29帧 | 超分辨率(条件超分) |
| SR2 | showlab/show-1-sr2 | 576×320, 29帧 | 最终上采样(Video-to-Video SD) |
可以看到,Base 和 Interpolation 阶段直接操作像素级扩散(而非潜在空间),保留了原始的空间精度;SR1 和 SR2 阶段则利用条件超分辨率管道,逐步将低分辨率视频放大到可用分辨率。这种"像素基座 + 潜在增强"的组合,是 Show-1 在同等参数量下质量领先的关键。
图2:Show-1 仓库封面图
项目代码组织在两个主要目录中:
showone/
├── models/ # 模型核心组件
│ ├── unet_3d_condition.py # 3D UNet 条件去噪网络(~48KB)
│ ├── unet_3d_blocks.py # 3D UNet 残差块(~63KB)
│ └── transformer_temporal.py # 时序注意力变换器
└── pipelines/ # 推理管道(封装了完整的 Base→SR2 流程)
├── pipeline_t2v_base_pixel.py # Base 模型管道
├── pipeline_t2v_interp_pixel.py # 插值管道
├── pipeline_t2v_sr_pixel.py # SR1 管道
└── pipeline_t2v_sr_pixel_cond.py # 带首帧条件的 SR1 管道
推理入口为 run_inference.py:完整的4阶段管道依次执行:
TextToVideoIFPipeline 生成 8 帧关键帧(64×40,2fps)TextToVideoIFInterpPipeline 插值到 29 帧(64×40,7.5fps)TextToVideoIFSuperResolutionPipeline_Cond 第一阶段超分(256×160)VideoToVideoSDPipeline 第二阶段超分(576×320)Web UI 入口为 app.py:基于 Gradio 的交互界面,用户输入文本提示词即可生成视频。
Show-1 的技术栈体现了2023年前后视频生成领域的最佳实践组合:
所有模型权重均托管在 HuggingFace Hub:showlab/show-1-base、showlab/show-1-interpolation、showlab/show-1-sr1、showlab/show-1-sr2。
Gradio Web UI(python app.py):
优点是即开即用,输入提示词即可,适合快速体验。缺点是首次运行需要下载所有权重(约 10-20GB),在国内网络环境下可能需要较长时间。
纯推理脚本(python run_inference.py):
提供了完整的参数控制(步数、guidance scale、种子等),适合研究者深度定制。
显存门槛:推理全程使用 fp16 + enable_model_cpu_offload() 优化,理论上 24GB 显存可运行,但推荐 40GB 以上(A100 最佳)。完整生成一段 29 帧 576×320 视频需要约 30-60 分钟(取决于 GPU)。
坦诚地说,Show-1 并非完美解决方案:
Show-1 发布于 2023 年 9 月,是最早一批将扩散模型成功应用于中文文本生成视频的开源项目之一(支持任意语言的文本提示)。其"像素 + 潜在双轨制"架构创新,后来被多个后续工作(如 I2VGen-XL、LaVie)继承和发展。
更重要的是,Show Lab 团队选择了完全开源而非仅发布论文——这在当时的视频生成领域是少数派。随着 2024 年被 IJCV 接收,Show-1 的技术路线得到了学术界的正式认可,成为视频生成领域的重要参考文献。
对于 AI 爱好者而言,Show-1 展示了"模块化组合"的力量——不是从头训练一个超大模型,而是巧妙组合现有组件,达成 1+1>2 的效果。对于开发者而言,HuggingFace Diffusers 的标准化封装让复现门槛大幅降低,Gradio UI 让普通用户也能体验文生视频的乐趣。
图3:Show-1 官方项目页面 Demo 视频
| 维度 | 评估 |
|---|---|
| 创新性 | ⭐⭐⭐⭐⭐ 像素+潜在混合架构,首创性高 |
| 代码质量 | ⭐⭐⭐⭐ 基于 Diffusers 标准封装,模块清晰 |
| 文档完整性 | ⭐⭐⭐⭐ README 详细,含多篇引用 |
| 部署难度 | ⭐⭐ 困难,需高配 GPU + 多阶段配置 |
| 社区活跃度 | ⭐⭐⭐ 1149 stars,学术界认可度高 |
| 实用价值 | ⭐⭐⭐⭐ 视频生成效果领先,适合研究场景 |