人脸交换工具

deepfakes/faceswap 访问 GitHub ↗
🔤 Python ★ 57306 ⑂ 0 weekly #11 (+618) 抓取 2026-08-07

一句话简介

一款基于深度学习的Python开源工具,用于检测和替换图片及视频中的人脸,常用于深度伪造内容创作与研究。

标签

  • 深度学习
  • 人脸交换
  • Python
  • 计算机视觉
  • Deepfake

适用应用场景

  • 影视后期人脸替换
  • 人脸数据增强与研究
  • 深度伪造检测与防御
  • 趣味视频与社交媒体创作

README 中文摘要

deepfakes_faceswap 项目说明

项目宣言

FaceSwap 的初衷在于推动 AI 技术的学习与实验。该项目最早由社区开发者整合成一套完整、可运行的代码库,使普通用户也能下载并动手实践深度学习算法,而无需具备数学、计算机理论等专业背景。

开发者强调以下几点原则:

  • 不用于制作不当内容;
  • 不用于在未经同意或刻意隐瞒的情况下替换人脸;
  • 不用于任何违法、不道德或有争议的用途;
  • 仅用于 AI 技术实验、社会或政治评论、影视制作以及其他合理合规的场景。

项目以零容忍态度对待任何滥用行为,并致力于在教学与合法换脸场景中发挥最大价值。

安装与运行环境

FaceSwap 是基于 Python 的跨平台程序,支持 Windows、Linux 和 macOS。运行前需要准备一块支持 CUDA 的现代 GPU 以获得最佳性能;Linux 下许多 AMD GPU 可通过 ROCm 获得支持。完整的安装步骤请参考 INSTALL.md

工作流程概览

完整流程分为四步:先收集素材照片或视频,然后依次执行提取(Extract)、训练(Train)、转换(Convert),也可使用图形界面。

Extract(提取人脸)

在项目目录下运行:

python faceswap.py extract

该命令会从 src 目录读取原始照片,并将检测到的人脸输出到 extract 目录。

Train(训练模型)

python faceswap.py train

此命令从两个分别包含目标人脸照片的目录中读取数据,训练后的模型会保存到 models 目录。

Convert(合成换脸)

python faceswap.py convert

该命令会从 original 目录读取素材,并将换脸后的结果输出到 modified 目录。

GUI(图形界面)

如需图形化操作,可执行:

python faceswap.py gui

通用说明

所有脚本均支持 -h--help 参数查看可用选项。视频与图片的相互转换可使用项目内置工具:

python tools.py effmpeg -h

也可直接调用外部 ffmpeg 完成抽帧、合成等操作。

训练小贴士:

  • 在已有模型基础上继续训练,速度远快于从头开始;
  • 若训练数据不足,可先选取面部特征相似的样本预训练,再切换到目标数据微调。

支持与求助

最佳途径是加入 FaceSwap 的 Discord 服务器,社群中有大量用户愿意协助解答(请注意该服务器为 SFW 性质)。也可前往 FaceSwap 官方论坛发帖求助,一般性支持类问题不应直接提交到代码仓库。

参与贡献

项目欢迎不同身份的用户参与:

  • 对生成模型感兴趣者:可在 faceswap-model 板块讨论、建议或提交新算法;
  • 开发者:阅读完整 README 后 Fork 仓库,关注带有 dev 标签的 Issue;若专注计算机视觉与 OpenCV,可关注 opencv 标签;
  • 非开发者的进阶用户:Clone 仓库试用,关注 advuser 标签的 Issue,并在论坛帮助其他用户;
  • 终端用户:下载代码自行尝试,到论坛获取帮助或协助他人,并保持耐心——这是一项仍在快速演进的新技术。

关于机器学习

关于计算机如何识别人脸、机器学习与神经网络的基本原理,开发者推荐观看两部循序渐进的视频:从直观讲解入手,再深入理解神经网络的运行机制。一句话总结核心思想:训练数据 + 反复试错

摘要更新于 2026-07-30 00:31:03 · 原文 12068 字符 · md5 fff3ad0f977a…