项目介绍:stable-diffusion-videos
stable-diffusion-videos 是一个创新项目,旨在利用稳定扩散模型来生成动态视频。这个项目的独特之处在于用户可以自定义输入内容,进而生成符合其描述的视频效果。在这里,稳定扩散模型被用来对图像和视频进行处理,使其能够随着时间推移产生连贯的过渡效果。
安装说明
要使用 stable-diffusion-videos,首先需要安装相应的 Python 包。用户只需在命令行中执行以下命令:
pip install stable_diffusion_videos
使用方法
制作视频
Stable-diffusion-videos 允许用户通过一系列提示词生成从一个场景到另一个场景的过渡视频。具体使用方法如下:
from stable_diffusion_videos import StableDiffusionWalkPipeline
import torch
pipeline = StableDiffusionWalkPipeline.from_pretrained(
"CompVis/stable-diffusion-v1-4",
torch_dtype=torch.float16,
).to("cuda")
video_path = pipeline.walk(
prompts=['a cat', 'a dog'],
seeds=[42, 1337],
num_interpolation_steps=3,
height=512,
width=512,
output_dir='dreams',
name='animals_test',
guidance_scale=8.5,
num_inference_steps=50,
)
在此例子中,用户可以交替使用提示词如“猫”和“狗”,并选择图像生成的种子数、图像尺寸、过渡步数等参数以生成个性化视频。
制作音乐视频
项目新增加的功能让用户可以在生成的视频中添加音乐。通过提供音乐文件的路径,用户可以根据节奏调整视频的过渡速度:
from stable_diffusion_videos import StableDiffusionWalkPipeline
import torch
pipeline = StableDiffusionWalkPipeline.from_pretrained(
"CompVis/stable-diffusion-v1-4",
torch_dtype=torch.float16,
).to("cuda")
audio_offsets = [146, 148]
fps = 30
num_interpolation_steps = [(b-a) * fps for a, b in zip(audio_offsets, audio_offsets[1:])]
video_path = pipeline.walk(
prompts=['a cat', 'a dog'],
seeds=[42, 1337],
num_interpolation_steps=num_interpolation_steps,
audio_filepath='audio.mp3',
audio_start_sec=audio_offsets[0],
fps=fps,
height=512,
width=512,
output_dir='dreams',
guidance_scale=7.5,
num_inference_steps=50,
)
使用用户界面
项目还提供了简单易用的用户界面,方便用户交互:
from stable_diffusion_videos import StableDiffusionWalkPipeline, Interface
import torch
pipeline = StableDiffusionWalkPipeline.from_pretrained(
"CompVis/stable-diffusion-v1-4",
torch_dtype=torch.float16,
).to("cuda")
interface = Interface(pipeline)
interface.launch()
致谢
该项目基于由 @karpathy 分享的脚本进行开发,并在此基础上进行修改和完善。
贡献
用户可以通过项目的 GitHub 页面提交问题或功能请求,帮助改进此工具。
通过 stable-diffusion-videos,用户可以轻松地将想象中的场景转换为流畅的视频效果,并根据个人喜好进行定制。这一工具对于需要快速生成视觉素材的个人和团队尤其具有吸引力。