PersonaLive 扩散框架
PersonaLive 是用于生成肖像动画的扩散框架。
核验日期
核心信息
以下信息由程序从官方接口读取,不经模型改写。
- 许可证
- Apache-2.0
- 语言
- Python
- 维护方
- GVCLab
- 核验日期
它是什么
作者将 PersonaLive 呈现为实时、可流式的扩散框架,能够生成无限长度的肖像动画。该代码主要基于 Moore-AnimateAnyone、X-NeMo、StreamDiffusion、RAIN 和 LivePortrait 构建。EditaLive 是 PersonaLive 的更新版本,同时具备全身动画和编辑能力。PersonaLive 已被 CVPR2026 接收。
主要能力
离线推理支持流式策略,可在 12GB 显存上生成长视频。
WebUI 支持参考图像替换。
项目支持 ComfyUI-PersonaLive。
项目称,将模型转换为 TensorRT 可显著加快推理,约 2x。
TensorRT 优化可能带来轻微差异,或使输出质量小幅下降。
离线推理中的流式生成策略选项默认启用。
怎么上手
可以下载基础模型和其他组件的预训练权重,包括 sd-image-variations-diffusers 和 sd-vae-ft-mse。
离线推理可以使用默认配置运行。
构建 TensorRT 引擎可能需要约 20 分钟,具体取决于设备。
项目提供的 TensorRT 模型来自 H100。
对于 RTX 50 系列(Blackwell)用户,xformers 尚未完全兼容新架构;为避免崩溃,请在离线推理时关闭它,关闭用的官方命令见本节代码示例。
WebUI 的使用流程为 Upload Image、Fuse Reference、Start Animation、Enjoy。
# clone this repo
git clone https://github.com/GVCLab/PersonaLive
cd PersonaLive
# Create conda environment
conda create -n personalive python=3.10
conda activate personalive
# Install packages with pip
pip install -r requirements_base.txtpython tools/download_weights.pypretrained_weights
├── onnx
│ ├── unet_opt
│ │ ├── unet_opt.onnx
│ │ └── unet_opt.onnx.data
│ └── unet
├── personalive
│ ├── denoising_unet.pth
│ ├── motion_encoder.pth
│ ├── motion_extractor.pth
│ ├── pose_guider.pth
│ ├── reference_unet.pth
│ └── temporal_module.pth
├── sd-vae-ft-mse
│ ├── diffusion_pytorch_model.bin
│ └── config.json
├── sd-image-variations-diffusers
│ ├── image_encoder
│ │ ├── pytorch_model.bin
│ │ └── config.json
│ ├── unet
│ │ ├── diffusion_pytorch_model.bin
│ │ └── config.json
│ └── model_index.json
└── tensorrt
└── unet_work.enginepython inference_offline.pypython inference_offline.py --use_xformers False# install Node.js 18+
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
nvm install 18
source web_start.sh适合谁
该项目仅为学术研究而发布。用户不得使用本仓库生成有害、诽谤或非法内容。可以调低 WebUI 中的 Driving FPS 设置,以减少计算负载。
离线推理的 xFormers 内存高效注意力选项默认启用;RTX 50 系列用户需要把它关闭。离线推理的最大生成帧数选项默认值为 100。参考图像路径选项用于指定具体的参考图像,并覆盖配置中的设置。
驱动视频路径选项用于指定具体的驱动视频,并覆盖配置中的设置。PersonaLive 训练分为三个阶段。训练数据集应包含 videos 目录和与之匹配的 boxes 目录。
第一阶段是图像级预热。第二阶段是图像级对抗精调。第三阶段是面向流式的时序模块微调。
使用多 GPU 或多节点训练时,需在启动训练前配置一次 Accelerate。项目发布了训练代码。项目发布了推理代码、配置和预训练权重。
来源
本页内容整理自以下官方来源,点击可核对原文。
- GitHub READMEhttps://github.com/GVCLab/PersonaLive抓取于
核验日期 ·
本页由 AI 依据上述官方来源整理,并经自动核对,未经本站实测。 发现错误?告诉我们。