1张照片实时换脸:完整Deep-Live-Cam上手指南
2026/9/18 17:36:00 网站建设 项目流程

1张照片实时换脸:完整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,画面里的人脸立刻被替换——这就是实时换脸。全程不用写代码,照着下面的步骤走完就能跑起来。

环境要求预计耗时最终效果
Python 3.9+ 与 ffmpeg,内存 8GB 以上15~30 分钟摄像头实时换脸,GPU 环境可达 20~40fps

🧰 根据硬件选择执行模式并准备环境

硬件层:程序会按 cuda > coreml > dml > cpu 的优先级自动选择执行提供器,不指定参数时自动匹配你的机器。不同硬件的预期表现大致如下:

硬件推荐执行提供器预期帧率
NVIDIA 显卡(需 CUDA 12 + cuDNN)cuda20~40 fps
Apple Silicon(M1~M5)coreml15~30 fps
AMD / Intel 核显(Windows)dml10~20 fps
纯 CPUcpu5~10 fps

系统层:安装 Python 3.9 以上版本(推荐 3.11~3.14)和 ffmpeg;macOS 用户还需安装 python-tk 包,否则图形界面无法弹出。

依赖层:克隆仓库,建好虚拟环境后一条命令装完依赖:

git clone --depth 1 https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam cd Deep-Live-Cam && python -m venv venv pip install -r requirements.txt

激活虚拟环境:Windows 执行venv\Scripts\activate,Mac/Linux 执行source venv/bin/activate

🚀 核心操作流程:四步启动实时换脸

第一步:放入模型文件

两个核心模型放进项目的models/文件夹:inswapper_128_fp16.onnx(约 270MB,换脸主模型)和GFPGANv1.4.onnx(约 350MB,面部增强模型)。不手动放置也可以,首次启动时程序会自动下载到该目录,但手动放好更省心。

预期结果:models 目录下能看到这两个文件。

ls models/ # Windows 下用 dir models

第二步:启动Deep-Live-Cam

在虚拟环境中运行python run.py。首次启动还会下载约 300MB 的 buffalo_l 人脸识别模型包,存到用户目录(~/.insightface),不占项目空间。

预期结果:控制台打印平台信息,GUI 窗口弹出。

验证方式:控制台顶部无红色报错,窗口中出现 "Select a face" 按钮。有 NVIDIA 显卡的用户可显式指定执行提供器:python run.py --execution-provider cuda

第三步:选择人脸与目标

点击Select a face选一张源人脸照片(正面、光线充足、无遮挡,效果最好)。图片/视频模式下再点Select a target选目标素材;摄像头模式下在 Select Camera 下拉框里直接选摄像头即可。

预期结果:界面左侧显示人脸缩略图,右侧显示目标画面。

验证方式:源人脸照片在左侧区域正常显示,无变形。

第四步:点击Live查看实时换脸

点击Live,等待 10~30 秒模型加载后出现预览窗口,摄像头里的人脸被替换成照片中的脸。图片/视频模式则点Start,处理完成后输出保存在与目标视频同名的文件夹里。

预期结果:预览窗口中人脸已被替换,且随摄像头动作自然运动。

验证方式:对比预览画面与源照片,五官位置和表情走向一致。

🔧 常见故障按类型排查

文件缺失类

症状:控制台提示ffmpeg is not installed,程序无法继续。 原因:系统未安装 ffmpeg,被启动前检查拦截。 解法:安装 ffmpeg 并确认命令行能直接调用(Windows 用户注意把 bin 目录加入 PATH)。

症状:状态栏出现not found in models folder, downloading...。 原因:模型文件不在models/目录,程序正在自动下载。 解法:属正常流程;下载长时间卡住时,手动补齐文件并删除残留的.part临时文件。

症状:模型文件存在但加载失败。 原因:文件损坏或不完整,字节数与校验值不符。 解法:删掉该文件重新下载一次。

环境冲突类

症状:选不到 cuda,或启动后实际回落到 CPU。 原因:onnxruntime-gpu 未安装,或 CUDA / cuDNN 版本不匹配(需 CUDA 12.8 + cuDNN 8.9.x)。 解法:按 README 的 CUDA 小节装好 Toolkit 与 cuDNN,再重装onnxruntime-gpu

症状:macOS 报_tkinter缺失,窗口出不来。 原因:系统 Python 缺少 Tk 图形接口。 解法:安装对应版本的python-tk包后重试。

症状:启动即提示 Python 版本不支持。 原因:版本低于 3.9,或多版本环境下python指向了错误的解释器。 解法:用 3.11 以上版本重建虚拟环境;Mac 上建议明确写python3.11 run.py

性能不足类

症状:预览帧率长期低于 10fps。 原因:CPU 模式下还开着面部增强,单帧计算量翻倍。 解法:先关掉 Face Enhancer、降低摄像头分辨率;有显卡则指定 cuda 执行。

症状:长时间运行后整机卡顿,其他程序也变慢。 原因:内存占用逼近--max-memory上限(非 Mac 默认 16GB)。 解法:启动时加--max-memory 8收窄内存上限。

权限/路径类

症状:点了 Live 却始终没有摄像头画面。 原因:系统未授予摄像头权限,或摄像头被其他程序占用。 解法:在系统设置中授权摄像头,关闭占用它的软件后重试。

症状:处理完找不到输出视频。 原因:输出目录以目标视频命名,不在当前目录。 解法:到目标文件所在目录下找同名文件夹。

⚙️ 参数调优与延伸场景

常用参数(均可选,不确定就用默认值):

参数默认值调整建议
--execution-provider自动检测自动结果不合适时手动指定cuda/coreml/cpu
--frame-processorface_swapper追加face_enhancer提升面部细节,帧率相应下降
--max-memory16(Mac 为 4)内存紧张时降到 8

界面里还有两个常用开关:Mouth Mask保留原视频嘴部动作,换脸后口型更自然;Map Faces搭配Many Faces,可让画面中不同人物使用不同源人脸。

延伸场景:

  • 直播 / 虚拟形象:把 Live 预览窗口接入 OBS 当虚拟摄像头,直播中直接使用替换后的脸。
  • 多人素材处理:加--map-faces --many-faces,把不同脸分别映射给画面里的不同人物。
  • 纯命令行批处理:-s指定人脸照片、-t指定本地视频,程序直接进入 CLI 模式,不需要图形界面。

📋 速查汇总与下一步

命令 / 配置默认值说明
python run.py-启动图形界面
--execution-provider自动检测可选 cuda / coreml / dml / cpu
--max-memory16(Mac 4)内存上限,单位 GB
--frame-processorface_swapper可追加face_enhancer
--video-quality180~51,数值越小画质越高
models/-两个模型文件的存放目录

跑通之后,下一步是熟悉界面里的各个开关:试试打开 Mouth Mask,或换几张不同光线的源照片对比效果。模型自动下载的实现可以参考 modules/model_downloader.py,命令行参数定义在 modules/core.py。换脸工具能力很强,请克制使用:涉及真人面孔时先取得对方同意,对外发布时明确标注这是合成内容。

打开终端,跑第一条命令。

【免费下载链接】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),仅供参考

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

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

立即咨询