Deep-Live-Cam:3步跑通实时AI换脸
【免费下载链接】Deep-Live-Camreal time face swap and one-click video deepfake with only a single image项目地址: https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam
Deep-Live-Cam 是一个开源的实时 AI 换脸工具:用一张静态照片作为源人脸,即可在摄像头画面或视频文件上逐帧替换人脸,全部在本机完成推理,素材不出机器。它基于 ONNX Runtime 做推理(ONNX 是一种跨平台的模型运行格式),支持 CPU、NVIDIA、Apple Silicon、AMD、Intel 等多种硬件,首次启动会自动下载约 300MB 的模型文件。
实时换脸的三种玩法:直播、视频与多人脸
工具启动后是一个图形界面(GUI),所有功能围绕三种模式组织,全部是逐帧实时处理:
- 摄像头模式(Live):选一张源脸照片,点 Live,摄像头画面里的人脸会被实时替换。配合 OBS 等录屏工具就能用于直播或视频会议。首次出现预览需要 10~30 秒加载模型。
- 视频/图片模式:指定一张源脸照片加一个目标视频文件,输出换脸后的新视频,保存到一个与目标视频同名的目录里。
- 多人脸与人脸映射:
--many-faces处理画面中所有人脸;--map-faces则手动指定"哪张源脸对应画面里的哪个人",适合给群像镜头逐人换脸。
还有一个实用的开关是--mouth-mask(嘴部保留):换脸时保留目标画面里原来的嘴部区域,口型动作与原始视频一致,避免换过的嘴部出现"对不上话"的违和感。代价是嘴部表情不再来自源脸,这是一个明确的效果取舍。
从 0 到 1 跑通:安装、模型与启动
安装依赖
前置条件:Python(3.11~3.14,推荐 3.14)、pip、git,系统里要有 ffmpeg。手动安装有一定技术门槛,官方也提供预编译的 Quickstart 包,嫌麻烦可以跳过本节的 venv 流程。
git clone https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam cd Deep-Live-Cam python -m venv venv # Windows: venv\Scripts\activate Linux/macOS: source venv/bin/activate pip install -r requirements.txtmacOS Apple Silicon 用户需要额外装 GUI 依赖:brew install python-tk,并用python3.14而不是python来运行。
放入模型文件
需要两个模型,放进 models 目录:
inswapper_128_fp16.onnx—— 换脸核心模型GFPGANv1.4.onnx—— 人脸细节增强模型(可选,不用可省略)
不手动下载也可以:首次运行python run.py时程序会自动拉取模型(约 300MB),有网即可。
首次运行与关键启动参数
# GUI 模式:选照片 → 选摄像头/视频 → 点 Live 或 Start python run.py # CLI 模式:带 -s/--source 参数时自动进入命令行处理 python run.py -s source.jpg -t target.mp4 -o output.mp4常用参数:
| 参数 | 作用 |
|---|---|
--mouth-mask | 保留目标画面原始嘴部,口型更自然 |
--many-faces/--map-faces | 处理全部人脸 / 手动指定人脸对应关系 |
--frame-processor face_enhancer | 换脸后追加 GFPGAN 增强,提升面部细节 |
--video-encoder/--video-quality | 输出编码器(默认 libx264)与质量(0~51,默认 18,数值越小质量越高) |
--max-memory | 限制内存占用(GB) |
按硬件选择执行后端(execution provider),决定推理跑在哪个芯片上:
| 硬件 | 额外安装 | 启动参数 |
|---|---|---|
| CPU(默认可用) | 无 | python run.py |
| NVIDIA | onnxruntime-gpu==1.26.0+ CUDA 12.8 | --execution-provider cuda |
| Apple Silicon | 无(官方 onnxruntime 自带) | --execution-provider coreml |
| Windows 通用 GPU | onnxruntime-directml==1.21.0 | --execution-provider directml |
| Intel | onnxruntime-openvino==1.21.0 | --execution-provider openvino |
CPU 模式在典型场景下帧率有限,能跑但谈不上流畅;追求实时体验建议优先配置 GPU 后端。
效果来源与适用边界:什么时候好用、什么时候别用
效果的来源:128 像素换脸加可选增强
换脸的核心模型inswapper_128把检测到的脸裁剪、对齐成 128×128 再换回来,所以正脸、光线均匀的中近景效果最好。如果画面里的人侧脸角度大、被遮挡或分辨率很低,检测本身就可能不稳定。面部细节不足时,追加--frame-processor face_enhancer(GFPGAN)或用 GPEN-256/GPEN-512 可以补细节,但每多一级处理,单帧耗时就增加。注意一个常见误解:这个工具没有基于音频的口型驱动,嘴部要么完整替换成源脸的嘴,要么用--mouth-mask保留目标原本的嘴,二者选一。
适用与不适用的场景
- 适合:直播/视频会议换脸、短片快速换脸预演、影视角色适配性测试、群像镜头批量换脸。
- 不适合:需要逐帧精确控制的专业后期(它没有时间线编辑)、对嘴型与语音严格对齐的场景、素材含敏感内容(内置 NSFW 检测会直接拒绝处理)。
- 性能预期:CPU 模式以"能出片"为目标;GPU 模式下 720p 实时预览是典型目标,具体帧率与显卡、模型组合相关,以实际运行为准。
⚠️ 合规提醒:README 明确要求——使用真实人物的脸须获得本人同意,发布内容时标注"AI 生成/deepfake"。工具内置 NSFW 过滤(--nsfw-filter)拦截不当素材,但法律与道德责任在使用者。
下一步动作
- 用
python run.py进 GUI,选一张正脸照片,点 Live 确认摄像头模式出预览的耗时 - 跑一遍
python run.py -s 照片.jpg -t 视频.mp4 --mouth-mask,对比开与不开嘴部保留的差别 - 把
--frame-processor从默认换成face_enhancer,观察面部细节与帧率的变化 - 找一段两个以上人的视频,加上
--many-faces验证多人脸检测的稳定性 - 若在用 CPU 跑,装好对应 GPU 后端后用
--execution-provider cuda(或 coreml/directml)重跑同一素材,对比帧率
【免费下载链接】Deep-Live-Camreal time face swap and one-click video deepfake with only a single image项目地址: https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考