dynamicrafter_pytorch AIGC算法模型

技术瘾君子1573 2024-07-20 17:01:03 阅读 95

DynamiCrafter

论文

DynamiCrafter: Animating Open-domain Images with Video Diffusion Priors

https://arxiv.org/abs/2310.12190

模型结构

该模型对Stable Diffusion进行了扩展,使其可以生成视频。在训练时采用双流图像注入(<code>Dual-stream image injection)机制,该机制以一种上下文感知的方式继承视觉细节并提取输入图像特征。模型的整体流程是这样的,输入分别是x以及𝑥𝑚(x中随机帧),视频x逐帧通过VAE的编码器部分获取 𝑧0,图像x_m通过编码器并Repeat后与z_t(𝑧0扩散后得到)拼接进入Denoising U-Net,同时,由𝑥𝑚经过CLIP image encoder以及Query transformer后得到的条件与FPSText特征一同进入U-Net进行训练。

算法原理

该算法在文本生成视频的基础上,增加了视觉信息,使得在视频生成的过程中可以保留视觉的细节信息。

环境配置

Docker(方法一)

<code>docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.1.0-centos7.6-dtk23.10.1-py38

docker run --shm-size 10g --network=host --name=dynamicrafter --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v 项目地址(绝对路径):/home/ -v /opt/hyhal:/opt/hyhal:ro -it <your IMAGE ID> bash

pip install -r requirements.txt

pip install flash_attn-2.0.4_torch2.1_dtk2310-cp38-cp38-linux_x86_64.whl (whl.zip文件中)

cd xformers && pip install xformers==0.0.23 --no-deps && bash patch_xformers.rocm.sh (whl.zip文件中)

Docker(方法二)

# 需要在对应的目录下

docker build -t <IMAGE_NAME>:<TAG> .

docker run --shm-size 10g --network=host --name=dynamicrafter --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v 项目地址(绝对路径):/home/ -v /opt/hyhal:/opt/hyhal:ro -it <your IMAGE ID> bash

pip install -r requirements.txt

pip install flash_attn-2.0.4_torch2.1_dtk2310-cp38-cp38-linux_x86_64.whl (whl.zip文件中)

cd xformers && pip install xformers==0.0.23 --no-deps && bash patch_xformers.rocm.sh (whl.zip文件中)

Anaconda (方法三)

1、关于本项目DCU显卡所需的特殊深度学习库可从光合开发者社区下载安装: https://developer.hpccube.com/tool/

DTK驱动:dtk23.10.1

python:python3.8

torch:2.1.0

torchvision:0.16.0

triton:2.1.0

Tips:以上dtk驱动、python、torch等DCU相关工具版本需要严格一一对应

2、其它非特殊库参照requirements.txt安装

pip install -r requirements.txt

pip install flash_attn-2.0.4_torch2.1_dtk2310-cp38-cp38-linux_x86_64.whl (whl.zip文件中)

cd xformers && pip install xformers==0.0.23 --no-deps && bash patch_xformers.rocm.sh (whl.zip文件中)

数据集

推理

模型下载

Model Resolution GPU Mem Checkpoint
DynamiCrafter1024 576x1024 18.3GB https://huggingface.co/Doubiiu/DynamiCrafter_1024/blob/main/model.ckpt
DynamiCrafter512 320x512 12.8GB https://huggingface.co/Doubiiu/DynamiCrafter_512/blob/main/model.ckpt
DynamiCrafter256 256x256 11.9GB https://huggingface.co/Doubiiu/DynamiCrafter/blob/main/model.ckpt
DynamiCrafter512_interp 320x512 12.8G https://huggingface.co/Doubiiu/DynamiCrafter_512_Interp/blob/main/model.ckpt

注意:若无法访问huggingface,可使用镜像hf-mirror(替换huggingface.co)。若无法访问huggingface,需要执行export HF_ENDPOINT=https://hf-mirror.com设置环境变量,用以自动下载其他必要模型。

模型文件结构如下:

checkpoints/

|── dynamicrafter_512_v1

└── model.ckpt

|── dynamicrafter_1024_v1

└── model.ckpt

|── dynamicrafter_256_v1

└── model.ckpt

└── ...

命令行

# Select the model based on required resolutions: i.e., 1024|512|320:

sh scripts/run.sh 512

sh scripts/run_application.sh interp # Generate frame interpolation

sh scripts/run_application.sh loop # Looping video generation

gradio页面

python gradio_app.py --res 512

python gradio_app_interp_and_loop.py

result

normal

输入 输出
image

prompt time-lapse of a blooming flower with leaves and a stem

interp

输入1 输入2 结果
image

prompt a smiling girl

loop

输入 结果
image

prompt a beach with waves and clouds at sunset

精度

应用场景

算法类别

<code>AIGC

热点应用行业

媒体,科研,教育

源码仓库及问题反馈

ModelZoo / DynamiCrafter_pytorch · GitLab

参考资料

GitHub - Doubiiu/DynamiCrafter: DynamiCrafter: Animating Open-domain Images with Video Diffusion Priors



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。