什么是FaceSwap?
FaceSwap是目前GitHub上开源的使用比较多的AI换脸工具,要求NVIDIA显卡CUDA计算能力在3.5以上;目前手里的RTX3080计算能力是8.6。Swapface AI工具是一个轻量级、超现实且实时的视频换脸的黑科技工具。
FaceSwap官网:https://faceswap.dev/
安装包下载地址:
下载安装包
$ wget https://github.com/deepfakes/faceswap/releases/download/v2.0.0/faceswap_setup_x64.exe
这个安装程序可以包办一切,如果安装失败则多尝试几次,可能是网络不顺畅导致的。
但也可以手动分步骤安装:
安装Git
安装Miniconda3
创建Python3.10.6虚拟环境
安装faceswap源码并安装
$ git clone https://github.com/deepfakes/faceswap.git
$ cd faceswap/
$ conda activate faceswap
$ pip3 install -r requirements/requirements_cpu.txt
$ pip3 install -r requirements/requirements_amd.txt
$ pip3 install -r requirements/requirements_nvidia.txt
$ python faceswap.py -h
$ python faceswap.py gui # GUI方式
使用方法
它工作大致分为四个步骤:
收集素材:包括图片和视频
提取(Extraction):对素材进行人脸提取作为训练集
训练(Training):根据提取的人脸进行训练
转换(Convert):根据训练模型结果完成替换
可以通过命令行操作,也可以通过GUI操作,建议使用GUI。
提取(Extract)
准备几个目录:
src/video1.mp4: 用于被换脸的原始视频
src-extract/: 提取的原始人脸图片文件
dst/video2.mp4:用于换脸的替换视频
dst-extract/:用于替换人脸的替换图片文件
model/: 训练模型保存目录
result/: 转换结果保存目录
<pre class="md-fences md-end-block ty-contain-cm modeLoaded"lang=""style="box-sizing: border-box; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-ring-offset-width: 0px; --tw-ring-offset-co