零代码制作数字人:SadTalker从照片到会说话的视频全流程
> 官方文档:[README.md](https://link.gitcode.com/i/dccee0ef61f76740343ed29957f8e46f)> 最佳实践:[docs/best_practice.md](https://link.gitcode.com/i/58aae8bce38196f807b1cf7889cb9aca)## 准备工作:环境搭建### 系统要求- ...
零代码制作数字人:SadTalker从照片到会说话的视频全流程
你是否曾想过让静态照片中的人物开口说话?无论是制作虚拟主播、生成个性化视频贺卡,还是开发互动式教学内容,SadTalker都能帮你实现。本文将带你从零开始,用最简单的方式完成从单张照片到动态数字人的全流程制作,无需编程基础,10分钟即可上手。
什么是SadTalker
SadTalker是一个基于深度学习的开源项目,能够将单张肖像照片与音频结合,生成逼真的会说话的人脸动画。它采用3D运动系数学习技术,使生成的面部表情和头部姿态更加自然,支持全身图像动画、表情增强、自由视角控制等高级功能。
项目地址:GitHub_Trending/sa/SadTalker
官方文档:README.md
最佳实践:docs/best_practice.md
准备工作:环境搭建
系统要求
- 操作系统:Windows 10/11、Linux或macOS
- 硬件:推荐带NVIDIA显卡的电脑(至少4GB显存),也支持CPU运行(速度较慢)
- 软件:已安装Python 3.8及以上版本、Git和ffmpeg
快速安装步骤
Windows用户
- 下载并安装Python 3.8,勾选"Add Python to PATH"
- 安装Git和ffmpeg,确保已添加到系统PATH
- 克隆项目仓库:
git clone https://gitcode.com/GitHub_Trending/sa/SadTalker cd SadTalker - 双击运行
webui.bat,程序将自动安装所需依赖并启动Web界面
Linux/macOS用户
git clone https://gitcode.com/GitHub_Trending/sa/SadTalker
cd SadTalker
conda create -n sadtalker python=3.8
conda activate sadtalker
pip install torch torchvision torchaudio
conda install ffmpeg
pip install -r requirements.txt
bash scripts/download_models.sh # 下载模型文件
bash webui.sh # 启动Web界面
安装问题排查:docs/FAQ.md
macOS特殊配置:docs/install.md
制作流程:3步生成数字人视频
第1步:准备素材
图片要求
- 格式:JPG或PNG
- 内容:清晰的正面人脸,光线充足
- 示例图片:examples/source_image/happy.png
音频要求
- 格式:WAV或MP3
- 时长:建议不超过5分钟
- 示例音频:examples/driven_audio/chinese_news.wav
第2步:配置参数
启动Web界面后,你会看到如下参数设置区域:
-
基础设置
- 上传图片和音频文件
- 选择输出目录
-
高级选项
- 增强模式(Enhancer):选择gfpgan提升面部质量
- 预处理模式(Preprocess):
crop:仅处理面部区域(默认)full:处理全身图像,需配合still模式使用
- 表情强度(Expression Scale):建议值1.0-1.5
参数详细说明:docs/best_practice.md
第3步:生成视频
点击"Generate"按钮开始生成,进度条会显示当前状态。生成完成后,视频文件将保存在results目录下,文件名为时间戳+原始图片名。
命令行方式(高级用户)
python inference.py --driven_audio examples/driven_audio/chinese_news.wav \
--source_image examples/source_image/happy.png \
--enhancer gfpgan \
--preprocess full \
--still
高级技巧:提升视频质量
表情增强
使用--expression_scale参数调整表情强度,值越大表情越夸张:
--expression_scale 1.2 # 增强表情
参考视频驱动
通过参考视频控制眨眼和头部姿态:
--ref_eyeblink reference.mp4 # 借用参考视频的眨眼动作
--ref_pose reference.mp4 # 借用参考视频的头部姿态
自由视角控制
通过以下参数可以让数字人转头:
--input_yaw -20 30 10 # 左右转动角度
--input_pitch 5 -5 5 # 上下转动角度
常见问题解决
生成速度慢
- 确保已安装CUDA并使用GPU加速
- 降低输入图片分辨率
- 关闭增强模式
面部扭曲或不自然
- 检查输入图片是否符合要求(正面、清晰)
- 尝试使用
--still参数减少头部运动 - 调整
--expression_scale为0.8-1.0
CUDA内存不足
# Linux
export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128
# Windows
set PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128
更多问题解决:docs/FAQ.md
应用场景与案例
适用场景
- 虚拟主播制作
- 教育内容生成
- 营销视频制作
- 个性化贺卡
效果对比
| 模式 | 效果 |
|---|---|
| 普通模式 | ![]() |
| 全身模式 | ![]() |
| 增强模式 | ![]() |
总结与进阶
通过SadTalker,你已经可以轻松将静态图片转换为会说话的数字人视频。如需进一步提升效果,可以:
- 学习高级参数配置:docs/best_practice.md
- 尝试3D面部可视化:docs/face3d.md
- 探索WebUI扩展:docs/webui_extension.md
如果你制作了有趣的作品,欢迎在社区分享!关注项目更新,获取更多高级功能。
项目更新日志:docs/changlelog.md
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐






所有评论(0)