hacksider / Deep-Live-Cam

hacksider/Deep-Live-Cam

open_in_new前往仓库

实时换脸与一键视频深度伪造,仅需一张图片即可实现。

项目概览

项目概述

Deep-Live-Cam 是一个基于 Python 的实时人脸替换和视频深度伪造工具,只需一张图片即可实现单次点击的实时换脸和视频深度伪造。该项目由 hacksider 开发,采用 AGPL-3.0 许可证,在 GitHub 上公开托管。它利用先进的 AI 模型,能够在直播、视频通话和视频文件中实时替换人脸,并提供了丰富的功能,如嘴部遮罩、多人脸映射等。项目强调合法和道德使用,内置了内容过滤机制,以防止不当使用。

核心功能

  • 实时换脸:通过摄像头或视频文件,实时将源人脸替换到目标上。
  • 单张图片驱动:仅需一张源人脸图片即可完成换脸。
  • 嘴部遮罩:保留原始嘴部动作,使换脸效果更自然。
  • 多人脸映射:支持在同一场景中对多个目标使用不同的人脸。
  • 视频处理:支持对视频文件进行换脸,并保留音频和帧率。
  • 命令行接口:提供 CLI 模式,便于自动化处理。
  • 多种执行提供程序:支持 CPU、CUDA (NVIDIA)、CoreML (Apple Silicon)、DirectML (Windows) 和 OpenVINO (Intel)。
  • 内置内容过滤:自动阻止处理不当内容(如裸露、暴力等)。

适用与不适用场景

适用场景:

  • 艺术家和内容创作者制作创意视频、动画角色或虚拟形象。
  • 电影和视频制作中的特效预览。
  • 娱乐和社交媒体内容创作,如表情包、直播表演。
  • 研究和教育目的,用于理解深度伪造技术。

不适用场景:

  • 未经他人同意使用其面部进行换脸。
  • 制作或传播虚假信息、欺诈内容。
  • 处理裸露、暴力或敏感内容(项目内置过滤会阻止)。
  • 任何违反法律法规或道德准则的用途。

技术架构与依赖

  • 编程语言:Python (3.11-3.14 支持,推荐 3.14)。
  • 主要依赖:
    • onnxruntime 及其变体(onnxruntime-gpu、onnxruntime-coreml、onnxruntime-directml、onnxruntime-openvino)
    • torch、torchvision、torchaudio(用于 GPU 加速)
    • insightface(提供人脸检测和识别模型)
    • gfpgan 和 basicsr(用于人脸增强)
    • ffmpeg(视频处理)
    • tkinter(GUI)
  • 模型文件:需要下载 GFPGANv1.4.onnx 和 inswapper_128_fp16.onnx,放置在 models 文件夹中。
  • 架构:基于 ONNX 运行时,支持多种执行提供程序,实现跨平台硬件加速。

安装与快速开始

快速开始(预构建版本):

  • 访问 deeplivecam.net 下载适用于 Windows、Mac Silicon、CPU、NVIDIA、AMD 的优化版本,无需手动安装。

手动安装(技术用户):

  1. 安装 Python 3.14(或 3.11-3.14)、pip、git、ffmpeg 和 Visual Studio 2022 Runtimes(Windows)。
  2. 克隆仓库:
    git clone --depth 1 https://github.com/hacksider/Deep-Live-Cam.git
    cd Deep-Live-Cam
    
  3. 下载模型文件(GFPGANv1.4.onnx 和 inswapper_128_fp16.onnx)并放入 models 文件夹。
  4. 创建虚拟环境并安装依赖:
    python -m venv venv
    source venv/bin/activate  # Windows: venv\Scripts\activate
    pip install -r requirements.txt
    
  5. 运行:
    python run.py
    

GPU 加速(可选):

  • 对于 NVIDIA GPU,安装 CUDA Toolkit 12.8.0 和 cuDNN v8.9.7,然后安装 onnxruntime-gpu==1.21.0 和 PyTorch CUDA 版本。
  • 对于 Apple Silicon,使用 onnxruntime 官方版本(已包含 CoreML 支持)。
  • 对于 Windows,可安装 onnxruntime-directml。
  • 对于 Intel,可安装 onnxruntime-openvino 并匹配 OpenVINO 版本。

典型使用方法

图像/视频模式:

  1. 运行 python run.py。
  2. 选择源人脸图像和目标图像/视频。
  3. 点击“Start”。
  4. 输出保存在目标视频同名的目录中。

Webcam 模式:

  1. 运行 python run.py。
  2. 选择源人脸图像。
  3. 点击“Live”。
  4. 等待预览出现(10-30 秒)。
  5. 使用 OBS 等工具进行直播。

命令行模式:

python run.py -s source.jpg -t target.mp4 -o output.mp4 --frame-processor face_swapper face_enhancer --keep-audio

配置与部署要点

  • 模型放置:确保模型文件位于 models 文件夹中,否则会报错。
  • 虚拟环境:强烈建议使用 venv 避免依赖冲突。
  • GPU 配置:根据硬件选择正确的执行提供程序,并安装对应的 onnxruntime 变体。
  • macOS 注意事项:使用 python3.14 命令,安装 python-tk@3.14,避免 Python 版本冲突。
  • OpenVINO 版本匹配:onnxruntime-openvino 和 openvino 版本必须对应,参考官方文档。
  • 内容过滤:内置检查会阻止处理不当内容,无法关闭。
  • 许可证:项目使用 AGPL-3.0,但模型可能受限于非商业研究用途(如 insightface 模型)。

限制、风险与许可证

  • 限制:
    • 手动安装需要技术技能,不适合初学者。
    • 实时性能依赖硬件,CPU 模式较慢。
    • 命令行参数标记为“未维护”,可能不稳定。
    • 模型文件较大(约 300MB),首次运行需下载。
  • 风险:
    • 深度伪造技术可能被滥用,造成隐私侵犯、欺诈等问题。
    • 项目可能因法律要求而关闭或添加水印。
    • 用户需自行承担使用责任,确保合法合规。
  • 许可证:
    • 项目代码采用 AGPL-3.0 许可证。
    • 使用的模型(如 insightface)可能仅限非商业研究用途,需遵守相应许可。

官方链接

信息来源和分析时间

  • 信息来源:GitHub 仓库 README、CONTRIBUTING.md、最新发布信息。
  • 分析时间:2026年8月1日(基于最新发布标签日期)。