10分钟跑通 Deep-Live-Cam:免费单照片实时AI换脸从入门到实战
2026/9/10 22:17:53 网站建设 项目流程

10分钟跑通 Deep-Live-Cam:免费单照片实时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 生成"。

Deep-Live-Cam 实时换脸效果演示:选一张照片,画面中的脸随即被替换

🎯 先确认你的机器够不够用

项目最低要求推荐配置
操作系统Windows 10/11、macOS 12+ 或 Ubuntu 18.04+Windows 11 / 较新 macOS
Python3.113.14(项目支持 3.11–3.14)
内存8 GB16 GB
存储5 GB 可用空间10 GB SSD
GPU无(纯 CPU 可运行)NVIDIA 显卡(CUDA 加速)

不达标也没关系:纯 CPU 能跑,只是帧率会低于 GPU 方案。先把流程跑通,再按第三幕的加速表提速。

⚙️ 四步装好环境,跑出第一帧效果

第 1 步:克隆项目代码

先确认本机有 git 和 Python 3.11 以上版本。macOS 建议用 Homebrew 装 3.14;Windows 还需装好 ffmpeg 与 Visual Studio 2022 运行时(README 里有对应安装说明)。克隆仓库并进入目录:

git clone --depth 1 https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam cd Deep-Live-Cam

第 2 步:用虚拟环境隔离依赖

隔离能避免和系统里其他 Python 包打架,出问题时删掉重建即可。

Windows:

python -m venv venv venv\Scripts\activate

macOS / Linux:

# Apple Silicon 需先装好 Python 3.14 与 tkinter # brew install python@3.14 python-tk@3.14 python3 -m venv venv source venv/bin/activate

第 3 步:安装 Python 依赖

终端提示符前出现(venv)后执行:

pip install -r requirements.txt

这一步会装 OpenCV、insightface、onnxruntime 等十几个包,耗时几分钟,等它跑完即可。

第 4 步:把两个模型文件放进 models 目录

仓库已带models/目录,把两个 ONNX 模型平放进去(下载地址写在 models/instructions.txt):

  • inswapper_128_fp16.onnx:负责换脸
  • GFPGANv1.4.onnx:负责面部增强

首次运行时,缺失的模型会自动下载补齐,总量约 300MB,留意网络稳定。

把界面拆成三块认识:输入区、控制区、输出区

启动程序:

python run.py

几秒后界面弹出,全部控件落在三块区域里,看懂这三块就够用了。

Deep-Live-Cam 操作界面:上方选源脸与目标,中部是功能开关与滑杆,底部是操作按钮

输入区——告诉软件"换谁的"和"换到哪":

控件作用适用场景
Select a face选源脸照片(jpg/png/bmp/gif)所有任务的第一步
随机脸按钮拉一张 AI 生成的假脸快速测试手头没素材时验证流程
Select a target选目标图片或视频(mp4/mkv)离线处理成片
交换按钮(↔)对调源脸与目标的位置选反了不用重新选

控制区——决定"怎么换":

控件作用适用场景
Many faces替换画面里所有检测到的人脸团体照、多人视频
Map faces手动指定每张源脸对应哪张目标脸多人场景需要一一对应
Mouth Mask 滑杆0 用换后的嘴,100 保留原嘴到下巴口型同步的对话画面
Face Enhancer 下拉None / GFPGAN / GPEN-256 / GPEN-512目标视频偏糊时提升清晰度
Transparency 滑杆原脸与换后脸的混合比例想要"半换"的自然过渡
Poisson Blend边缘平滑融合换脸轮廓生硬时
Keep audio / Keep fps保留原音轨 / 原帧率输出要求与原片一致

输出区——三个按钮管完整个流程:

控件作用适用场景
Start处理目标图片/视频,结果存到以目标命名的目录离线处理
Live打开摄像头做实时换脸,10–30 秒出预览直播、视频通话
Preview显示或隐藏实时预览窗Live 模式下
Destroy停止处理并退出程序中断或收尾

Camera 卡片里有摄像头下拉框,Live按钮就在旁边。

五分钟内看到第一帧效果

最短路径只有三个动作:

  1. Select a face,挑一张清晰、正面的照片
  2. Select a target,挑一段 10 秒左右的小视频,别一上来就处理整部电影
  3. Start

进度走完,在项目根目录找到和目标同名的文件夹,里面的视频就是成品。想试实时模式,按上面的方式再选一次源脸,在 Camera 下拉框里挑好摄像头,点Live,等 10–30 秒预览窗口弹出即算成功。

🚀 提速、排错、拓展玩法

按硬件选一条加速路线

硬件额外安装命令启动命令备注
纯 CPUpython run.py最稳,先验证流程用
NVIDIApip uninstall onnxruntime onnxruntime-gpu && pip install onnxruntime-gpu==1.21.0python run.py --execution-provider cuda需先装 CUDA 12.8.0 与 cuDNN v8.9.7,提速最明显
AMD / Intel(Windows)pip uninstall onnxruntime onnxruntime-directml && pip install onnxruntime-directml==1.21.0python run.py --execution-provider directml核显独显通用
Apple Silicon装过 onnxruntime-silicon 的先pip uninstall onnxruntime-siliconpython3.14 run.py --execution-provider coremlrequirements.txt 自带的 onnxruntime 已含 CoreML
Intel OpenVINOpip install openvino==2025.4.1 onnxruntime-openvino==1.24.1python run.py --execution-provider openvino两个包版本必须一一对应

命令都在激活的虚拟环境里执行。装好对应提供程序后,用它替换默认的启动命令,同一流程帧率就能上来。

卡住时,对照这四类现象找原因

终端报 ModuleNotFoundError最可能是没在虚拟环境里运行,或依赖没装全。

  1. 看终端提示符前有没有(venv),没有就先激活环境
  2. 在环境内重跑pip install -r requirements.txt
  3. macOS 若报_tkinter缺失:brew reinstall python-tk@3.14

点 Start 后提示模型未加载,画面不变多半是models/目录里缺文件。

  1. 打开 models/instructions.txt,按里面地址下载两个 ONNX 文件
  2. 确认文件平放在models/下,没有多套一层文件夹
  3. 首次运行会自动补下缺失模型,网络差就手动下载

Live 预览卡顿、帧率很低通常是跑在 CPU 上,或开了高成本选项。

  1. 按上面的加速表换一条硬件路线
  2. Face Enhancer 先设 None,Many faces 关掉
  3. 降低摄像头分辨率,关掉后台吃 GPU 的程序

换出来的脸边缘生硬、口型对不上

  1. 打开 Poisson Blend 做边缘融合
  2. 把 Mouth Mask 滑杆拉到 50 以上保留原嘴
  3. 换一张更清晰、更正面的源脸照片

上手四个立即可用的场景

直播演出:Live 模式配合 OBS 屏幕采集,把换脸后的画面推到直播间,能做整场演出或节日特别节目。

用 Live 模式做直播演出:摄像头画面实时替换,观众看到的是换脸后的表演

影视二创:目标视频随便挑,边播边换,每一帧都被重绘,输出即成片,适合做"经典角色脸换成自己"的趣味剪辑。

视频模式实时换脸:播放电影时逐帧替换,成品与原片同帧率

多人团体:打开 Many faces 再开 Map faces,把每张源脸手动对到画面里对应的人,团体视频里的每张脸各归其位。

多人同时替换:Many faces + Map faces 让团体视频批量换脸

口型同步:把 Mouth Mask 拉满,嘴部保留原画面、只换其余五官,对话镜头的口型就不会穿帮。

Mouth Mask 保留原嘴:五官换掉、口型不动,对话场景更自然

用五步看懂它在做什么

  1. 检测:insightface 找出每帧里的人脸与五官位置,逻辑在 modules/face_analyser.py
  2. 对齐:把脸裁出并校正到模型需要的标准姿态
  3. 交换:inswapper_128 ONNX 模型用源脸特征重绘目标位置的脸,核心在 modules/processors/frame/face_swapper.py
  4. 增强:GFPGAN / GPEN 把面部细节补回来(可选)
  5. 贴回与编码:软边缘遮罩把新脸融合回原帧,ffmpeg 逐帧合成最终视频

整条管线每帧独立跑一遍,所以实时帧率取决于你机器单帧处理要多久。

按清单查资源与源码

  • 模型文件清单:models/instructions.txt
  • 帧处理管线源码:modules/processors/frame/
  • 界面与全部选项定义:modules/ui.py
  • 搭配工具:OBS Studio(直播推流)、FFmpeg(视频处理,依赖装好后自带)

打开终端,把第 2 步的两条 venv 命令粘进去回车,看到(venv)前缀后执行python run.py,30 秒后界面就会弹出来——这就是你离第一帧换脸效果的全部距离。

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

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

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

立即咨询