什么是 Stable Video Diffusion?
Stable Video Diffusion (SVD) 是由 Stability AI 开发的一款强大的开源生成模型。它旨在将静态图像转换为简短的动态视频剪辑。SVD 建立在著名的 Stable Diffusion 图像模型的基础上,代表了开放、可访问的视频生成技术向前迈出的重要一步。该模型发布了两个主要变体:SVD,生成14帧;以及SVD-XT,将生成扩展到25帧,从而实现更细致的运动。
主要特点
- 图像到视频生成: 核心功能是为静态图像制作动画,创建一个流畅的视频序列。
- 高质量输出: 能够以576x1024的分辨率生成视频,具有令人印象深刻的一致性和真实感。
- 开源: 模型权重和研究代码是公开的,促进了社区的创新和发展。
- 可自定义帧率: 用户可以以不同的帧率生成视频,通常在每秒3到30帧之间。
- 微调潜力: 该模型可以在特定的数据集上进行微调,以创建专门的视频生成风格或用于特定应用。
使用案例
- 动画艺术作品: 数字艺术家和设计师可以让他们静态的创作生动起来。
- 动态社交媒体内容: 营销人员可以从产品图片或宣传图中快速生成引人注目的视频剪辑。
- 原型设计和故事板: 创作者可以可视化场景和运动概念,而无需复杂的动画软件。
- 研究与开发: 作为研究人员探索视频合成技术进步的基础模型。
入门指南
这是一个简单的“Hello World”风格的示例,使用Python中的diffusers库来运行Stable Video Diffusion。首先,请确保您已安装必要的库:pip install torch diffusers transformers accelerate。
```python import torch from diffusers import StableVideoDiffusionPipeline from diffusers.utils import load_image, export_to_video
从Hugging Face加载管道
使用 “stabilityai/stable-video-diffusion-img2vid” 获取14帧模型
pipe = StableVideoDiffusionPipeline.from_pretrained( “stabilityai/stable-video-diffusion-img2vid-xt”, torch_dtype=torch.float16, variant=”fp16” ) pipe.to(“cuda”) # 如果没有支持CUDA的GPU,请使用 “cpu”
加载初始图像
image = load_image(“https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/svd-doc-example.png”) image = image.resize((1024, 576))
设置生成参数
generator = torch.manual_seed(42) frames = pipe(image, num_frames=25, decode_chunk_size=8, generator=generator).frames[0]
将帧导出为视频文件
export_to_video(frames, “generated_video.mp4”, fps=7)
print(“视频 ‘generated_video.mp4’ 已成功创建!”)
定价
Stable Video Diffusion 在 Stability AI 非商业研究社区许可证下发布。这意味着它可以免费用于研究和非商业项目。对于商业用途,需要从 Stability AI 获得单独的许可证。