文章目录
关于 FollowYourPose
摘要
生成文本可编辑、姿态可控制的人物视频是创造各种数字人的迫切需求。然而,这项任务受到了限制 由于缺乏具有配对视频姿势字幕和视频生成先验模型的综合数据集。
在这项工作中,我们设计了一种新的两阶段训练方案,可以利用容易获得的数据集(即图像姿态对和无姿态视频)和预训练的数据集 文本到图像(T2I)模型,以获得姿态可控的字符视频。
具体来说,在第一阶段,关键点-图像对仅用于可控制的文本-图像生成。我们学习了一个零初始化的卷积 对姿态信息进行编码的传统编码器。
在第二阶段,我们通过添加可学习的时间自注意和改革的跨帧自注意,通过无姿态视频数据集对上述网络的运动进行微调 块。
在我们的新设计的支持下,我们的方法成功地生成连续的姿势可控的角色视频,同时保持编辑和概念组成 预训练T2I模型的能力。代码和模型将公开提供。
🍻🍻🍻设置环境
我们的方法是使用cuda11、加速器和xformer在8a100上进行训练的。
shell
conda create -n fupose python=3.8
conda activate fupose
pip install -r requirements.txt
为了节省内存和运行时间,A100 GPU推荐使用xformers
。
单击xformer安装
我们发现它的安装不稳定。你可以试试下面的轮子:
shell
wget https://github.com/ShivamShrirao/xformers-wheels/releases/download/4c06c79/xformers-0.0.15.dev0+4c06c79.d20221201-cp38-cp38-linux_x86_64.whl
pip install xformers-0.0.15.dev0+4c06c79.d20221201-cp38-cp38-linux_x86_64.whl
我们的环境类似于Tune-A-video(官方的,非官方的)。你可以查看更多的细节。
💃💃💃培训
我们在8 A100上修复了Tune-a-video和微调稳定扩散-1.4中的错误。 要微调文本到图像的扩散模型,以生成文本到视频,请执行以下命令:
shell
TORCH_DISTRIBUTED_DEBUG=DETAIL accelerate launch \
--multi_gpu --num_processes=8 --gpu_ids '0,1,2,3,4,5,6,7' \
train_followyourpose.py \
--config="configs/pose_train.yaml"
🕺🕺🕺推理
训练完成后,运行inference:
python
TORCH_DISTRIBUTED_DEBUG=DETAIL accelerate launch \
--gpu_ids '0' \
txt2video.py \
--config="configs/pose_sample.yaml" \
--skeleton_path="./pose_example/vis_ikun_pose2.mov"
你可以用mmpose来制作姿势视频,我们用HRNet来检测骨骼。你只需要运行视频演示来获得姿势视频。记得用黑色代替背景。
💃💃💃 本地 Gradio 演示
您可以在本地运行梯度演示,只需要一个 A100/3090
。
python
python app.py
那么演示在本地URL上运行: http://0.0.0.0:Port
🕺🕺🕺权重
[Stable Diffusion] Stable Diffusion 是一种潜在的文本到图像扩散模型,能够在给定任何文本输入的情况下生成逼真的图像。预训练的稳定扩散模型可以从拥抱脸下载(例如,稳定扩散v1-4)
我们还在Huggingface中提供了预训练的检查点。您可以下载它们并将它们放入 checkpoints
文件夹中来推断我们的模型。
python
FollowYourPose
├── checkpoints
│ ├── followyourpose_checkpoint-1000
│ │ ├──...
│ ├── stable-diffusion-v1-4
│ │ ├──...
│ └── pose_encoder.pth
💃💃💃结果
我们展示了关于各种姿势序列和文本提示的结果。
注意这个github页面中的mp4和gif文件是压缩的。 请查看我们的项目页面,获取原始视频结果的mp4文件。
2024-09-24 (二)