菜单

GPU加速设置

相关源文件

本文档提供了 Deep-Live-Cam 中 GPU 加速的设置说明,以显著提高换脸性能。正确的 GPU 加速可以区分卡顿、延迟的处理和流畅的实时换脸。有关通用的安装说明,请参阅 安装指南手动安装

支持的执行提供商

Deep-Live-Cam 支持多种硬件加速后端(称为“执行提供商”),以利用不同类型的 GPU 和处理单元。

来源:README.md178-274

加速提供商选择

根据您的硬件选择合适的执行提供商

硬件操作系统推荐提供商预期性能
NVIDIA GPU任意CUDA最佳
AMD GPUWindowsDirectML良好
Apple M1/M2/M3macOSCoreML (Silicon)非常好
Intel MacmacOSCoreML (Legacy)中等
Intel CPU/GPU任意OpenVINO中等
任何 CPU任意CPU (默认)

来源:README.md178-274

GPU 加速架构

下图显示了 GPU 加速如何集成到 Deep-Live-Cam 处理流程中。

来源:modules/processors/frame/core.py69-84 README.md311-330

按提供商的设置说明

CUDA(NVIDIA GPU)

使用 NVIDIA 显卡时,CUDA 为 Deep-Live-Cam 提供了最佳性能。

要求

  • 计算能力为 3.5 或更高的 NVIDIA GPU
  • CUDA Toolkit 11.8.0
  • 最新的 NVIDIA 驱动程序

安装步骤

  1. 安装 CUDA Toolkit 11.8.0
  2. 安装所需的 Python 包
pip uninstall onnxruntime onnxruntime-gpu
pip install onnxruntime-gpu==1.16.3
  1. 使用 CUDA 启动 Deep-Live-Cam
    • 使用 run-cuda.bat 文件(Windows)
    • 或使用命令:python run.py --execution-provider cuda

来源:README.md180-194 run-cuda.bat1-2

DirectML (Windows AMD/Intel GPU)

在 Windows 系统上,AMD GPU 推荐使用 DirectML。

要求

  • Windows 10/11
  • 支持 DirectX 12 的 AMD GPU(具有最新驱动程序)或 Intel GPU

安装步骤

  1. 安装所需的 Python 包
pip uninstall onnxruntime onnxruntime-directml
pip install onnxruntime-directml==1.15.1
  1. 使用 DirectML 启动 Deep-Live-Cam
    • 使用 run-directml.bat 文件
    • 或使用命令:python run.py --execution-provider directml

来源:README.md246-259 run-directml.bat1-2

CoreML (Apple Silicon)

为 Apple M1/M2/M3 芯片优化。

要求

  • 配备 M1/M2/M3 芯片的 Apple 电脑
  • macOS 12 Monterey 或更高版本
  • Python 3.10(需要特定版本)

安装步骤

  1. 安装 Python 3.10 和 tkinter
brew install python@3.10
brew install python-tk@3.10
  1. 创建并激活虚拟环境
python3.10 -m venv venv
source venv/bin/activate
  1. 安装必需的包
pip uninstall onnxruntime onnxruntime-silicon
pip install onnxruntime-silicon==1.13.1
  1. 使用 CoreML 启动 Deep-Live-Cam
    python3.10 run.py --execution-provider coreml
    

重要提示:您必须专门使用 Python 3.10,而不是更新的版本。

来源:README.md196-229

CoreML (Apple Legacy)

适用于基于 Intel 的 Mac 电脑。

要求

  • 基于 Intel 的 Mac
  • macOS 10.15 或更高版本

安装步骤

  1. 安装必需的包
pip uninstall onnxruntime onnxruntime-coreml
pip install onnxruntime-coreml==1.13.1
  1. 使用 CoreML 启动 Deep-Live-Cam
    python run.py --execution-provider coreml
    

来源:README.md231-244

OpenVINO (Intel)

适用于 Intel CPU 和集成显卡。

要求

  • Intel CPU 或 GPU
  • Windows、Linux 或 macOS

安装步骤

  1. 安装必需的包
pip uninstall onnxruntime onnxruntime-openvino
pip install onnxruntime-openvino==1.15.0
  1. 使用 OpenVINO 启动 Deep-Live-Cam
    python run.py --execution-provider openvino
    

来源:README.md261-274

执行提供商加载过程

此图说明了 Deep-Live-Cam 如何加载和初始化执行提供商。

来源:modules/processors/frame/core.py19-41

高级配置选项

Deep-Live-Cam 提供了一些命令行参数来微调 GPU 加速。

参数描述示例
--execution-provider指定要使用的硬件加速后端。--execution-provider cuda
--execution-threads并行处理线程数。--execution-threads 4
--max-memory最大 RAM 使用量(GB)。--max-memory 8

使用示例

python run.py --execution-provider cuda --execution-threads 8 --max-memory 6

这些设置会根据您的特定硬件显著影响性能。

来源:README.md311-330 modules/processors/frame/core.py69-84

故障排除

常见问题与解决方案

  1. “提供商未找到”错误

    • 确保您已为所选执行提供商安装了正确的软件包。
    • 检查您是否拥有所选提供商所需的硬件。
  2. GPU 加速性能不佳

    • 将您的 GPU 驱动程序更新到最新版本。
    • 如果您遇到内存不足的错误,请减少 `--max-memory` 值。
    • 如果您的 GPU 显存有限,请尝试减少 `--execution-threads`。
  3. macOS 特定问题

    • 确保您在 Apple Silicon 上专门使用 Python 3.10。
    • 如果遇到 GUI 错误,请重新安装 tkinter:brew reinstall python-tk@3.10
  4. Windows 特定问题

    • 对于 CUDA:验证 CUDA Toolkit 11.8.0 是否已正确安装。
    • 对于 DirectML:确保您已安装更新的 GPU 驱动程序和 DirectX。

来源:README.md196-229

性能预期

GPU 加速带来的性能提升取决于您的硬件。以下是一般预期:

执行提供商FPS 提升最佳用途
CUDA (NVIDIA RTX)比 CPU 快 5-10 倍实时网络摄像头、视频处理
DirectML (AMD)比 CPU 快 3-7 倍实时网络摄像头、视频处理
CoreML (M1/M2)比 CPU 快 4-8 倍macOS 用户,实时应用
OpenVINO比 CPU 快 2-4 倍仅 Intel 系统
CPU基线测试,兼容性

请注意,实际性能会因具体硬件、分辨率和处理的人脸数量而异。

来源:README.md177-274

模型和兼容性

Deep-Live-Cam 模型已针对 GPU 加速进行了优化。必需的模型文件为:

  1. inswapper_128_fp16.onnx - 换脸模型
  2. GFPGANv1.4.pth - 人脸增强模型

在启用 GPU 加速运行应用程序之前,必须将这些模型放置在 `models` 目录中。

来源:models/instructions.txt1-5