菜单

安装与设置

相关源文件

本文档介绍了在不同操作系统、硬件配置和后端选项下安装 Faceswap 和进行初始设置的过程。它提供了各种安装方法的说明,并帮助您为您的系统选择合适的配置。

有关安装后运行 Faceswap 的信息,请参阅 核心工作流程

系统要求

Faceswap 是一款计算密集型应用程序,它使用深度学习来进行人脸交换。其要求因您的预期用途而异。

硬件要求

  • CPU:任何现代多核 CPU 均可运行,但如果没有 GPU,训练速度会非常慢。
  • GPU:以下选项之一
    • NVIDIA GPU:计算能力 3.5 或更高版本(GTX 7xx 系列或更新型号)的显卡
    • AMD GPU:
      • Windows:兼容 DirectX 12 的显卡
      • Linux:兼容 ROCm 的显卡
    • Apple Silicon:M 系列芯片(M1、M2、M3)
  • RAM:最少 8GB,建议 16GB+ 用于大型模型或高分辨率。

操作系统要求

  • Windows 10/11:全面支持 NVIDIA 和 AMD GPU
  • Linux:基于 Ubuntu/Debian 或 CentOS 的发行版,支持 NVIDIA 和 AMD GPU
  • macOS:
    • Apple Silicon Mac:原生 GPU 加速
    • 基于 Intel 的 Mac:有限支持

来源:INSTALL.md47-81 README.md78-83

安装方法

Faceswap 提供多种安装方法,以适应不同的用户需求和技术专长。

自动安装程序

安装 Faceswap 最简单的方法是使用为每个平台提供的自动安装程序。

  1. 下载安装程序:从 官方发布页面
  2. 运行安装程序:根据您的平台运行相应的安装程序。
    • Windows:执行 .exe 文件。
    • Linux:运行 .sh 脚本。
    • macOS:运行 .sh 脚本。

安装程序将处理所有依赖项,创建 conda 环境,并使用您选择的 GPU 后端设置 Faceswap。

来源:INSTALL.md86-91 .install/windows/install.nsi1-468 .install/linux/faceswap_setup_x64.sh1-454 .install/macos/faceswap_setup_macos.sh1-458

手动安装

如果您希望获得更多控制权或在自动安装程序中遇到问题,您可以手动安装 Faceswap。

先决条件

  • Python 3.10(64位)
  • Anaconda/Miniconda(推荐用于环境管理)
  • Git(用于下载源代码)

安装步骤

  1. 克隆仓库:

  2. 创建并激活 conda 环境:

  3. 运行设置脚本:

    设置脚本将:

    • 检测您的系统配置
    • 询问要安装哪个后端(NVIDIA、AMD/DirectML、ROCm、Apple Silicon 或 CPU)
    • 安装相应的依赖项

来源:INSTALL.md94-146 setup.py79-295 setup.py296-614

Docker 安装

Faceswap 为 CPU 和 NVIDIA GPU 设置提供了 Docker 配置。

CPU Docker

NVIDIA Docker

来源:INSTALL.md260-337 Dockerfile.cpu1-19 Dockerfile.gpu1-18

后端配置

Faceswap 支持多种后端以适应不同的硬件配置。设置脚本将检测您的硬件并推荐合适的后端,但您也可以手动选择。

NVIDIA GPU 后端

NVIDIA 后端使用 CUDA 和 cuDNN 来加速 NVIDIA GPU 上的 Faceswap。

  • 要求:
    • CUDA 11.2
    • cuDNN 8.1
    • Tensorflow 2.10

安装过程中,设置脚本会:

  1. 检查现有的 CUDA/cuDNN 安装
  2. 验证与 Tensorflow 的兼容性
  3. 安装适用于您的 CUDA 设置的相应 Tensorflow 版本

来源:setup.py460-533 requirements/requirements_nvidia.txt1-6

AMD GPU 后端

AMD GPU 可以通过两种不同的后端使用:

DirectML (Windows)

  • 要求:
    • Windows 10 或更高版本
    • 兼容 DirectX 12 的 AMD GPU
    • tensorflow-directml-plugin

ROCm (Linux)

  • 要求:
    • Linux(Ubuntu 或类似发行版)
    • 兼容 ROCm 的 AMD GPU
    • ROCm 版本 5.2-5.4
    • tensorflow-rocm

来源:setup.py560-568 requirements/requirements_directml.txt1-5 requirements/requirements_rocm.txt1-3 lib/gpu_stats/rocm.py1-161

Apple Silicon 后端

适用于 M 系列芯片(M1、M2、M3)的 Mac

  • 要求:
    • macOS 12.0+
    • XQuartz(用于 GUI)
    • tensorflow-macos
    • tensorflow-metal

来源:INSTALL.md166-214 requirements/requirements_apple_silicon.txt1-8

仅 CPU 后端

适用于没有兼容 GPU 的系统或用于测试目的

  • 要求:
    • tensorflow-cpu

请注意,在 CPU 上训练的速度会比使用 GPU 慢很多。

来源:requirements/requirements_cpu.txt1-3

环境变量和配置文件

Faceswap 使用多种配置机制来管理其设置。

  1. 环境变量:

    • 对于使用具有 CUDA 的 NVIDIA GPU 的 Linux 系统,脚本会设置 LD_LIBRARY_PATH 以确保找到正确的 CUDA 库。
  2. 配置文件:

    • config 目录下的 .faceswap 文件存储后端配置。

来源:setup.py232-293

安装后

创建桌面快捷方式

安装脚本可以创建桌面快捷方式,以便轻松访问 Faceswap。

  • Windows:在桌面上创建 .bat 文件。
  • Linux:创建 .desktop 文件。
  • macOS:创建一个应用程序启动器。

更新 Faceswap

将 Faceswap 更新到最新版本

  1. 使用 GUI:

    • 转到“帮助”→“检查更新”。
    • 如果有可用更新,请转到“帮助”→“更新 Faceswap”。
    • 重新启动 Faceswap 以完成更新。
  2. 使用命令行:

    • 激活您的 conda 环境
    • 导航到 Faceswap 目录
    • 运行 git pull --all
    • 使用 python update_deps.py 更新依赖项。

来源:INSTALL.md147-165

常见问题排查

CUDA/cuDNN 问题

如果您在使用 NVIDIA GPU 时遇到 CUDA 或 cuDNN 错误:

  1. 验证您的 CUDA 和 cuDNN 版本与 Tensorflow 2.10 兼容。
  2. 检查您的 GPU 是否具有 CUDA 计算能力 3.5 或更高版本。
  3. 确保您的显卡驱动程序是最新的。

环境设置问题

如果您遇到环境设置问题:

  1. 确保您使用的是 Python 3.10(64位)。
  2. 验证 Conda 已正确安装并且环境已激活。
  3. 尝试删除环境并重新创建它:conda env remove -n faceswap

后端选择问题

如果选择了错误的后端或您想更改后端:

  1. 编辑 config 目录中的 .faceswap 配置文件。
  2. 或者,使用设置脚本重新安装并选择不同的后端。

来源: .github/ISSUE_TEMPLATE.md1-25

安装必需的软件包

Faceswap 在所有后端都使用几个关键软件包

目的版本
numpy数值计算>=1.26.0,<2.0.0
opencv-python图像处理>=4.9.0.0
tensorflow深度学习>=2.10.0,<2.11.0
pillow图像处理>=9.4.0,<10.0.0
scikit-learn机器学习实用程序>=1.3.0
tqdm进度条>=4.65
matplotlib绘图>=3.8.0
imageio-ffmpeg视频处理>=0.4.9

后端特定的软件包会根据您在设置过程中选择的项进行安装。

来源: requirements/_requirements_base.txt1-14 docs/sphinx_requirements.txt1-22

结论

本文档涵盖了不同操作系统和硬件配置下 Faceswap 的安装和设置过程。有关安装后如何使用 Faceswap 的信息,请参阅 核心工作流程 指南,其中涵盖了提取、训练和转换过程。

如果您遇到本指南未涵盖的任何问题,请参阅 Faceswap 论坛Discord 服务器 以获取更多帮助和支持。