Deep-Live-Cam:一张照片搞定实时换脸,从摄像头到整段视频
2026/9/18 17:17:36 网站建设 项目流程

Deep-Live-Cam:一张照片搞定实时换脸,从摄像头到整段视频

【免费下载链接】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 就是干这件事的开源实时换脸工具:全程本地运行,摄像头与视频文件都支持,视频输出保留原音轨。这篇实时换脸教程面向零基础,读完你就能让预览窗口出现在自己屏幕上。

🔍 它能干什么

  • 换脸直播:点 Live 后,摄像头里的人实时变成照片里的人,配合 OBS 等工具截取预览窗即可推流,加--live-mirror可得到镜像预览。
  • 整段视频换脸:给一个 mp4,输出一整段换脸后的版本,音轨和帧率都保留。
  • 多人按人映射:群像场景里每张脸可以绑定不同的源脸,而不是全换成同一张。

本地视频整体换脸命令:

python run.py -s face.jpg -t clip.mp4 --keep-audio --keep-fps

输出保存在以目标视频命名的目录里,--keep-audio保留原音轨,--keep-fps保留原帧率。

⚙️ 装好并跑起来

先对照环境要求,免得中途卡住:

  • 系统:Windows / macOS / Linux
  • Python 3.11–3.14,推荐 3.14
  • 必备三件套:git、pip、ffmpeg(负责读写视频)
  • 纯 CPU 就能跑,NVIDIA 独显或 Apple 芯片更快
  • Windows 需装 Visual Studio 2022 运行库

环境过关后,完整安装就是下面一段命令。先克隆仓库,再用 venv 建隔离环境,避免依赖污染系统 Python:

git clone --depth 1 https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam cd Deep-Live-Cam python -m venv venv # Windows: venv\Scripts\activate ;macOS/Linux: source venv/bin/activate pip install -r requirements.txt # 模型:inswapper_128_fp16.onnx 与 GFPGANv1.4.onnx 放入 models/ # (下载地址见 models/instructions.txt;不手动放,首跑自动下载约 300MB)

然后直接启动:

python run.py

窗口里分三区:左边选源人脸照片,中间选目标(摄像头或视频文件),右边是 Live 和 Start 两个按钮。摄像头模式按 Live,等 10–30 秒加载完成后预览出现,换脸就开始;视频模式按 Start,成片写入以目标命名的目录。

🎚️ 让换脸更自然的开关

口型对不上?这是换脸口型不一致的典型症状:源脸和你的嘴型不同,整脸替换会让嘴巴跟不上原画面。对应开关是 Mouth Mask——GUI 里拖动滑块,或命令行加--mouth-mask。它把下半张脸的嘴部区域留给你自己,说话时口型自然一致。

画面里有好几个人?默认只处理一张脸,加--many-faces会让画面里每张脸都被处理。若希望不同人换成不同的脸,再加--map-faces:程序用特征向量聚类,把目标视频里的人自动分组,逐人绑定源脸。

python run.py -s face.jpg -t group.mp4 --many-faces --map-faces

源照片质量决定上限,记住三条:正脸、光线均匀;脸上无遮挡(口罩、手、浓重贴纸);人脸在照片里占比大一些,检测更稳。

🖥️ 按硬件选跑法

--execution-provider决定推理跑在哪块芯片上。不指定时程序会自动挑当前环境里最优的后端,所以python run.py就能起步。有独显的话手动指定,帧率更稳:

  • NVIDIA 中端独显:先装 CUDA Toolkit 12.8.0 和 cuDNN v8.9.7,再pip install onnxruntime-gpu==1.26.0,然后:
python run.py --execution-provider cuda
  • NVIDIA 高端独显:FP16 模型与 CUDA Graph 自动生效,还能开面部增强:
python run.py --execution-provider cuda --execution-threads 2
  • Apple M1–M5:先brew install python@3.14 python-tk@3.14(requirements 已带 CoreML 支持),然后:
python3.14 run.py --execution-provider coreml
  • Intel 平台:装onnxruntime-openvino==1.21.0后加--execution-provider openvino
  • Windows 上的 AMD 核显:装onnxruntime-directml==1.21.0后加--execution-provider directml

帧率预期(按 720p 直播预览的量级):

硬件推荐跑法体感建议分辨率
集显 / 纯 CPU默认python run.py勉强实时,够用480p–720p
Apple M 系列--execution-provider coreml流畅(检测与换脸并行调度)720p
NVIDIA 中端独显--execution-provider cuda流畅720p
NVIDIA 高端独显cuda + 开启 face_enhancer接近摄像头原生帧率1080p

换脸掉帧排查,基本逃不出五种情况:

  • 窗口打不开、报_tkinter:macOS 缺 tkinter,执行brew reinstall python-tk@3.14
  • 提示ffmpeg is not installed:装上 ffmpeg,再用ffprobe -version验证。
  • 状态栏报找不到 inswapper 模型:等首次自动下载完成,或手动把模型放进 models/。
  • 有 GPU 却退回 CPU:检查 cuDNN 是否在 PATH、onnxruntime-gpu是否为 1.26.0。
  • 直播预览掉帧明显:调低--max-memory,或关掉 face_enhancer。

幕后:一帧画面经历了什么

每一帧都走同一条流水线:InsightFace 的 buffalo_l 模型包先检测人脸,提取身份特征与关键点;inswapper 以 128×128 的人脸尺寸把源脸身份合成进目标脸——可以理解为身份向量像一枚印章,目标脸像一张纸,印章落下去就盖出新脸;随后用椭圆羽化软掩膜加 alpha 混合把新脸贴回原帧,方形边界不露馅;最后可选 GFPGAN(face_enhancer)把糊掉的五官细节补回来。

查源码时直接定位这几个文件:

  • 人脸检测与分析:modules/face_analyser.py
  • 换脸执行:modules/processors/frame/face_swapper.py
  • 人脸增强:modules/processors/frame/face_enhancer.py
  • 命令行与入口:modules/core.py
  • 视频捕获与帧处理:modules/video_capture.py

安全红线

  • 只换你自己、或已明确取得同意的脸
  • 公开发布时标注"AI 合成 / deepfake"
  • 不用于诈骗、冒充、诽谤等目的
  • 不处理战争画面、隐私场景等敏感素材

程序内置了一层内容检查:用 opennsfw2 模型过滤不当素材,GUI 勾选 NSFW Filter 或加--nsfw-filter即可启用。

继续深入

参与贡献三步走:

  1. 拉出功能分支:git checkout -b feature/your-change
  2. 按 CONTRIBUTING.md 清单自测:实时换脸开/关增强、Map Faces 开/关、FPS 不降、GPU 压测至少 15 分钟
  3. 推分支提 PR——变更先进premain分支,跑过稳定性验证后才合并进main

关键资源:

  • 完整参数列表:README.md
  • 模型放置说明:models/instructions.txt
  • 贡献规范与测试清单:CONTRIBUTING.md
  • 多语言文案:locales/

新特性与问题的讨论在仓库 Issues 页跟进。

挑一张正脸照片,把python run.py跑起来,十几分钟后你的第一段实时换脸预览就会出现在屏幕上。跑起来之前,先确认你对画面里的每张脸都有权限;公开发布时,记得标注 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

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询