📣 更新
- [2024.07.31] 🔥 发布
OpenXLab
,感谢keyhsw的开发! - [2024.07.21] 🔥 发布
Colab
,感谢daswer123! - [2024.07.18] 🔥 发布
推理代码
、配置
和检查点
! - [2024.06.07] 🔥 发布论文和项目页面!
🤪 展示
我们提出了Follow-Your-Emoji,这是一个基于扩散的人像动画框架,可以用目标关键点序列来为参考人像生成动画。
🤪 开始使用
1. 克隆代码并准备环境
pip install -r requirements.txt
2. 下载预训练权重
[FollowYourEmoji] 我们还在Huggingface上提供了预训练的检查点。你可以下载它们并将它们放入checkpoints文件夹以推理我们的模型。
- 基础模型:lambdalabs/sd-image-variations-diffusers
- VAE:sd-vae-ft-mse
- AnimateDiff:AnimateDiff
最后,这些预训练模型应该按以下方式组织:
pretrained_models
├── AnimateDiff
│ └── mm_sd_v15_v2.ckpt
├── follow-your-emoji
│ ├── lmk_guider.pth
│ ├── referencenet.pth
│ └── unet.pth
├── sd-image-variations-diffusers
│ ├── alias-montage.jpg
│ ├── default-montage.jpg
│ ├── earring.jpg
│ ├── feature_extractor
│ │ └── preprocessor_config.json
│ ├── image_encoder
│ │ ├── config.json
│ │ └── pytorch_model.bin
│ ├── inputs.jpg
│ ├── model_index.json
│ ├── README.md
│ ├── safety_checker
│ │ ├── config.json
│ │ └── pytorch_model.bin
│ ├── scheduler
│ │ └── scheduler_config.json
│ ├── unet
│ │ ├── config.json
│ │ └── diffusion_pytorch_model.bin
│ ├── v1-montage.jpg
│ ├── v2-montage.jpg
│ └── vae
│ ├── config.json
│ └── diffusion_pytorch_model.bin
└── sd-vae-ft-mse
├── config.json
├── diffusion_pytorch_model.bin
├── diffusion_pytorch_model.safetensors
└── README.md
3. 推理 🚀
bash infer.sh
CUDA_VISIBLE_DEVICES=0 python3 -m torch.distributed.run \
--nnodes 1 \
--master_addr $LOCAL_IP \
--master_port 12345 \
--node_rank 0 \
--nproc_per_node 1 \
infer.py \
--config ./configs/infer.yaml \
--model_path /path/to/model \
--input_path your_own_images_path \
--lmk_path ./inference_temple/test_temple.npy \
--output_path your_own_output_path
🤪 制作你自己的表情
你可以用我们的模型制作自己的表情。首先,你需要使用MediaPipe制作表情模板。我们在make_temple.ipynb
中提供了脚本。你可以将视频路径替换为你自己的表情视频,并生成.npy
文件。
CUDA_VISIBLE_DEVICES=0 python3 -m torch.distributed.run \
--nnodes 1 \
--master_addr $LOCAL_IP \
--master_port 12345 \
--node_rank 0 \
--nproc_per_node 1 \
infer.py \
--config ./configs/infer.yaml \
--model_path /path/to/model \
--input_path your_own_images_path \
--lmk_path your_own_temple_path \
--output_path your_own_output_path
👨👩👧👦 Follow系列
Follow-Your-Pose:基于姿势引导的文本到视频生成。
Follow-Your-Click:通过简短提示实现开放域区域图像动画。
Follow-Your-Handle:通过控制手柄变换实现可控视频编辑。 Follow-Your-Emoji:精细可控且富有表现力的自由风格肖像动画。
引用 💖
如果您发现Follow-Your-Emoji对您的研究有用,欢迎为这个仓库点亮🌟,并使用以下BibTeX格式引用我们的工作:
@article{ma2024follow,
title={Follow-Your-Emoji: Fine-Controllable and Expressive Freestyle Portrait Animation},
author={Ma, Yue and Liu, Hongyu and Wang, Hongfa and Pan, Heng and He, Yingqing and Yuan, Junkun and Zeng, Ailing and Cai, Chengfei and Shum, Heung-Yeung and Liu, Wei and others},
journal={arXiv preprint arXiv:2406.01900},
year={2024}
}