DeepFake的安装和测试(一)

安装

DeepFake估计很多人都听过,这是一个由deep learning实现的换脸工具,技术上相当可圈可点,但是由于隐私泄露等问题也被攻击的很厉害。这个工具的源头是FaceSwap,在github上有完整的源码和可用的GUI版本。源码解析我会另开一篇博客,这里先试试这个已发布的软件。

安装教程在这里。

总体而言安装和普通的软件安装没什么区别。

具体的使用上,这个工具有三个部分:

Extraction

Training

Convert

Extraction

Extraction,也就是提取,任务是提取输入的视频/图片中的人脸部分,并记录人脸的位置和特征点,如果有偏斜的话进行适当的角度转换。具体而言,一个完整的Extraction过程要分为三步,为 detection, alignment和mask generation。

detection,即侦测,是逐帧寻找食品中的脸;alignment即对齐,即定位图中脸的位置,方法是通过寻找“地标”,也就是一些特征点,这些特征点软件会自动记录在一个文件里面,该文件会参与后面神经网络的训练和Faceswap;mask generation是为了生成一系列mask,以判定图片中哪些是脸,那些是背景。

提取有两个主要目的:

生成一组面部文件,以及可选的路线文件和mask,以训练模型;

生成路线文件和mask以转换。

所谓路线文件,一个路线文件包含了工具在每一帧中获取的所有的脸的信息,特别是脸的位置和脸上68个特征点:

回到软件中,具体的操作方法是:

  • 准备数据

    

  input dir和output dir并不难理解,输入文件和输出文件。输入文件可以是一个视频或者包含一系列照片的文件夹。输出文件就是从输入文件中获取的face的特征信息。

  • 附加选项

    

    附加选项是用来使用不同工具进行detection、alignment和mask generation。作者推荐使用S3Fd和Fan用以detection和alignment,mask生成器则可以自选,但默认生成components和Extended。注意生成的mask越多越会增加系统的运算压力。

    不同的mask生成器效果不一,具体不同不再赘述。

  • 图片处理

    

    直接使用作者给出的数值。

上述参数设置完成后可直接点击extract进行脸部抽取。

排序和清洗

如果视频中有很多人脸,工具会抽取出所有的人脸,这显然不是我们所期望的,我们只希望换掉自己关注的一部分人脸。因此可以使用作者给出的排序方法将所有人脸排序,然后删除我们不需要的人脸。

注意!可能消耗很多运算资源。

具体做法为为tools->sort。操作与前述抽取操作区别不大。

由于本文的测试部分仅进行了很少一部分数据的sample test,因此这部分暂时留白。

抽取结果

我从网上随便找了几张图片,最终给出的抽取结果如下所示:

原图

抽取后图片

原文地址:https://www.cnblogs.com/Xuang/p/13031042.html