PIA 项目简介
项目背景
PIA,全称为个性化图像动画器(Personalized Image Animator),是一种创新的图像动画生成方法。该项目利用文本到图像模型中的插拔式模块,实现了高控制度的动画动作以及精准的文本和图像对齐能力,从而生成个性化的视频动画。
项目特色
- 强大的运动控制:PIA 可以对生成的动画进行精细的运动控制,用户可以通过设置参数来调整动画中的动作幅度。
- 文本和图像的强对齐性:通过文本描述,可以实现动画效果与图像内容的高度匹配。
- 多样的应用功能:PIA 不仅仅能生成图像动画,还支持风格迁移、循环视频的生成等多种扩展应用。
最新更新
- 2024年01月03日,支持 Replicate 演示和 API。
- 2023年12月28日,支持 1024x1024 大小图像的内存高效动画操作。
- 2023年12月25日,HuggingFace 上提供了演示。
- 持续在 OpenXLab 和 Google Drive 上发布演示和模型。
安装与配置
环境准备
用户可以通过 Conda 创建 PIA 的环境:
conda env create -f pia.yml
conda activate pia
建议使用支持 scaled_dot_product_attention
的 Pytorch 2.0.0 版本,以优化内存使用。
检查点下载
- 下载 Stable Diffusion v1-5。
- 下载 PIA 模型。
- 获取个性化模型的脚本,包括 RealisticVision、RcnzCartoon 以及 MajicMix。
使用说明
图像动画生成
用户可以通过运行命令将图像转换为视频动画,例如:
python inference.py --config=example/config/lighthouse.yaml
生成的动画结果会保存在指定文件夹中。
控制运动幅度
通过调整 magnitude
参数,用户可以轻松控制生成动画的动作幅度:
python inference.py --config=example/config/xxx.yaml --magnitude=1
风格迁移
实现风格迁移,只需在命令中添加 --style_transfer
参数:
python inference.py --config example/config/concert.yaml --style_transfer
循环视频生成
用户可以通过 --loop
参数生成循环视频:
python inference.py --config=example/config/lighthouse.yaml --loop
训练指南
PIA 提供了训练脚本,用户需要准备好数据集和配置文件,使用 torchrun 命令可实现模型训练。
联系方式
如果有任何问题,欢迎联系项目团队成员:
- Yiming Zhang: zhangyiming@pjlab.org.cn
- Zhening Xing: xingzhening@pjlab.org.cn
- Yanhong Zeng: zengyh1900@gmail.com
致谢
PIA 的开发基于多个开源项目的贡献,包括 AnimateDiff、Tune-a-Video 和 PySceneDetect。用户也可以尝试团队的其他项目,如 MMagic。