FakeApp换脸简易教程

2018年1月,有人推出了Windows程序FakeApp,允许用户很轻松地自制换脸视频,即使没有任何AI方面的知识,这大大降低了deepfake的使用门槛。

文章内容:转载于简书 https://www.jianshu.com/p/c2afe8919a35

环境搭建

  1. 首先需要安装的便是这个能让你傻瓜式换脸的应用FakeApp了,点击链接进入官网。安装过程中并没有什么值得特殊强调的地方,咱们一笔跳过。
  2. 接下来就是和GPU相关的CUDA8了,选择相应的系统版本便可以下载安装。在安装方式这一步建议大家使用本地安装exe[local]的方式,exe[network]的安装方式…可能有点慢。默认情况下CUDA会自动帮你添加到环境变量,如果没有,请手动添加,这一步非常重要。
    FakeApp换脸简易教程_第1张图片至此,所有和环境相关的部署咱们已经大功告成了。

应用简介

先简单介绍一下FakeApp的三个模块
GET DATASET: 获取数据集,在这一步中,你的素材视频将被逐帧切割成图片,程序会自动识别并提取出图片中人物的面部数据。
TRAIN: 训练模型,根据第一步中生成的数据集,机器会自动地帮你训练模型,从而进行面部的替换。
CREATE: 生成视频,这一步便是整个实验中最为神奇的地方,他能根据你训练出的模型,将给定视频素材中人物的面部进行替换,最后生成替换后的视频。
开始实验
1. 第一步,生成数据集
先创建一个文件夹fake,将素材视频存放进去
FakeApp换脸简易教程_第2张图片
咱们姑且用A和B来区分这两个小姐姐好了,按照FakeApp的提示,将素材路径填入,点击EXTRACT,接下来无需任何操作,等程序跑完就行了。你会看到fake文件夹中多出了一个dataset-A的目录,这便是我们待会儿训练模型时需要的数据集了。A的训练集生成后,重复这一步骤,生成B的训练集。至此,咱们第一步结束了。
FakeApp换脸简易教程_第3张图片

2. 第二步,训练模型
在这一步开始前,你需要在fake文件中创建一个model目录,这里会存放模型文件。和之前一样,依次填入文件夹路径,下面的参数无需修改,使用默认配置即可。点击TRAIN,等待程序初始化后,会弹出一个预览框,这时,你几乎可以高枕无忧了。刚开始你会发现预览框最右侧的一列会非常模糊,不要紧,模型才刚开始训练。Loss ALoss B代表模型的差异值,咱们无需关注数值产生的原理,你只需要知道,两者之差越小,说明模型训练的越好。
FakeApp换脸简易教程_第4张图片
训练模型是一个很耗时间的活儿,以我为例,每个数据集各350张左右的面部图像,训练了大概13个小时,差异值稳定在了0.1%左右。如果你想要更好的效果,建议每个数据集不低于500张,至于如何确定数据集的大小,可以看上面的示例图A,图中的360代表dataset-A的数据量。
值得一提的是,训练进度会被实时保存下来,也就是说你可以随时暂停训练,在预览窗口中,输入英文小写字母q即可保存退出,下次想要继续训练的话,打开FakeApp再点击TRAIN即可。
——-———————————分割线——-———————————

13个小时过去了,最右一列已经十分清晰了,效果也令人满意,要不咱们先合成一个视频试试?

FakeApp换脸简易教程_第5张图片

——-———————————分割线——-———————————
3.在model中填入我们先前训练好的模型路径,Video则填入你想要替换的视频路径,依旧是傻瓜式,点击CREATE,稍安勿躁,让GPU飞一会儿~程序跑完后,你应该就能在fake文件中看到生成的swap.mp4文件了,让我们通过视频截图,看看效果如何。

替换前

FakeApp换脸简易教程_第6张图片

替换后
FakeApp换脸简易教程_第7张图片

你可能感兴趣的:(有趣)