LivePortrait
快手可灵开源AI肖像动画,一键让静态照片开口说话、表情生动
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
快手可灵开源AI肖像动画,一键让静态照片开口说话、表情生动
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有过这样的遗憾——翻出一张泛黄的老人照片,想让他们"动起来"看看?或者把偶像的写真变成视频,让他"亲口"说一段祝福?过去这类需求要么需要好莱坞级别的特效团队,要么只能靠昂贵的商业软件。而快手科技(Kuaishou Technology)开源的 LivePortrait 项目,正试图让这个愿望触手可及——只需要一张照片 + 一段驱动视频,几秒钟内,静态人像就能模仿驱动视频中人物的动作和表情。
这不是概念演示。2024 年 7 月,LivePortrait 的论文和代码同步发布,迅速在 GitHub 斩获近 2 万颗星,成为当年 CVPR 收录的人像驱动领域最受关注开源项目之一。
快手作为国内头部短视频平台,每日产生海量 UGC 视频内容。人像驱动(Portrait Animation)技术是视频特效、虚拟主播、数字人等领域的基础能力。传统的方案(如 FaceSwap、FOMM 等)在生成质量和速度上都有明显瓶颈——要么动作不够自然,要么推理耗时太长,无法满足短视频场景下的实时需求。
快手 VGI(Vision & Graphics Intelligence)实验室联合中科大、复旦大学的学者,提出了 LivePortrait,核心目标是:在消费级 GPU 上实现高质量、实时可控的人像驱动。
论文一作郭建柱(GitHub @cleardusk)是快手图形团队的资深研究员,在人脸关键点检测和三维重建方向有深厚积累。
LivePortrait 的技术方案分为两大模块:缝合(Stitching) 和 重定向(Retargeting)。
不同于扩散模型直接生成像素,LivePortrait 基于隐式关键点(Implicit Keypoints)进行动作迁移。系统先通过 InsightFace 检测输入人脸,提取 68 个面部关键点;再通过 XPose(快手自研的姿态估计模型,基于 Swin Transformer)获取头部和身体的姿态参数。这些关键点构成了驱动信号的"骨架"。
人像动画中有个老大难问题——当模型同时处理多个人脸区域时,区域边界处容易出现明显的拼接痕迹。LivePortrait 引入了 Stitching 模块,采用 SPADE(Spatially-Adaptive Denormalization)风格的归一化来确保不同区域之间的纹理一致性,让最终输出看不出"接缝"。
除了人类,LivePortrait 还支持猫、狗等常见宠物的驱动。动物版模型使用了不同的 Landmark Runner,专门针对动物面部特征点进行了优化。这意味着用户可以把自家猫咪的照片变成"会动的表情包"。
这是 LivePortrait 的核心竞争力之一。项目提供了 speed.py 脚本用于基准测试,官方数据在 RTX 3090 上可达约 26 FPS,接近实时水平。相比之下,同类开源方案(如 Wav2Lip+FaceSwap 组合)往往只能达到 0.5-2 FPS。

pip install -r requirements.txt
python app.py
浏览器打开 http://localhost:7860,上传一张源照片和一段驱动视频,点击生成即可。界面支持调节重定向强度、批量处理等功能。
python inference.py -s assets/examples/source/s0.jpg -d assets/examples/driving/d0.mp4 -o animations/
HuggingFace 上提供了 Windows 绿色安装包,下载解压即用,无需配置 Python 环境,非常适合非技术人员。

LivePortrait 的代码库结构清晰,以模块化为设计原则:
| 模块 | 职责 | 关键依赖 |
|---|---|---|
appearance_feature_extractor | 人像外观特征提取 | ConvNextV2 backbone |
motion_extractor | 驱动动作提取与编码 | InsightFace、XPose |
dense_motion | 密集运动场生成 | 可变形注意力(Deformable Attention) |
stitching_retargeting_network | 拼接与重定向控制 | SPADE 归一化 |
warping_network | 最终人像形变渲染 | PyTorch |
gradio_pipeline | Web UI 封装 | Gradio 5.x |
核心推理依赖:
模型权重存储在 pretrained_weights/ 目录,总大小约 400-600MB,首次运行时会从 HuggingFace 自动下载。
项目主仓库使用 NOASSERTION License,但预训练权重来源于第三方模型(InsightFace 生态等),实际商用时需仔细梳理各部分权限。快手官方也未明确声明模型权重的商业授权条款。
当源照片中的人脸角度超过 ±45°、或存在大面积遮挡时,InsightFace 检测器容易失效,导致后续流程崩溃。这类边界情况在产品化时需要额外处理。
LivePortrait 本质是"动作迁移"而非"内容生成"——它需要一张真实照片作为外观来源,无法像 Sora/Gen-3 那样凭空生成逼真人物。
人像驱动技术天然存在被滥用于伪造身份的风险。LivePortrait 在 README 中明确提到了这一点,并建议用户遵守当地法律法规。

根据项目 2025 年 6 月的更新日志,LivePortrait 已被快手、抖音、剪映、微信视频号等主流平台采纳用于视频特效功能,也有大量创业公司和创作者基于此开发了直播换脸、虚拟主播、数字员工等应用。
第三方社区也涌现了多个衍生项目:

LivePortrait 是一款定位清晰、工程质量高的人像驱动开源工具。它专注于"让照片动起来"这一件事,并把推理速度和可用性做到了极致。对于 AI 视频创作、数字人、直播特效等场景,它是一个值得优先考虑的底层组件——尤其是当你需要不需要商业 API key、不依赖云端、本地即可运行的方案时。
当然,它的局限也很明显:不是生成式模型、对异常情况的鲁棒性有限、商业授权待明确。如果你有一张照片想让其"活过来",它几乎是目前开源世界里最好的选择之一。
