安装完OpenFaceswap之后,是不是就迫不及待的想要“见证奇迹”了呢? 都说磨刀不误砍柴工。开始之前请先做一个准备。然后大致了解一下换脸的过程

换脸基本步骤是:

  1. 把视频切成很多图片
  2. 把图片中的人脸提取出来
  3. 通过人脸来训练模型
  4. 通过模型对图片换脸
  5. 把换脸后的图片合成视频

具体的操作过程如下:

1.创建素材目录workspace

创建一个叫workspace的目录用来放你的视频图片等素材。 所谓换脸,就是把张三的脸放到李四头上,或者反过来。所以你需要在workspace下面在创建两个目录A和B。用来放两个人的素材。

最后的目录结构大致如下:

A 里面放的是被换脸的人,A目录下应该有一个被换脸人的视频 FBB.mp4

B 放的是将要去替换别人的人。B目录下应该有一个换人的视频FMT.mp4

Face 目录是从视频里提取的人脸。

Model 为训练的模型目录

Result 为结果目录,替换完的图片和视频都会在这里。

这个目录结构完全可以自己来命名,为了方便讲解和验证请大家也创建一个这样的目录结构。

其实,FBB.mp4和FTM.mp4为换脸的视频素材,必须事先准备好。你可以自己准备,也可以用我从网上收集的两个视频。

网盘地址:

2.  A的人脸截取

点击 VIDEO A 跳出一个串口,选择自己的workspace目录,选中A文件夹中的FBB.mp4

点击 IMAGES A 后面的黄色文件夹图标。选中FBB,然后点击 IMAGES A 。跳出黑色窗口,片刻之后窗口底部出现 press any key to continue…  证明这一部操作成功,在FBB目录下会出现好多图片。

点击 FACES A 后面黄色文件夹,选中Face目录,然后点击FACES A 开始从图片中提取人脸。

点击完后会出现黑色窗口,稍等片刻之后出现进度条。没出现进去条就证明你的电脑环境没有设置好,需要去查看软件安装的章节。

进度条结束之后,会显示Image Found xxx 。 告诉你发现多少张图片,提取了多少个人脸。

此时打开 Face目录,可以看到很多人脸图片,证明人脸提取已经成功。

3. B的人脸截取

B的操作和A是一毛一样,只是选择的视频和目录不同。这里选得是FTM.mp4。目录是B,FTM,Face等。

4. 训练模型

训练模型是一个比较耗时的过程,少则一两天,多则半个月,配置不同,耗时不同。 如果你之前没有穿件Model目录,可以点击黄色文件夹之后选着Create Folder 。如果已经有了就直接选中后Open。

然后点击MODEL开始训练。点击后跳出一个黑色窗口,底部会有一个动态的显示。同时出现一个叫training的预览窗口。

随着时间的推移,预览窗口会发生变化,出现很多人头,训练的过程,就是人脸从模糊变清晰的国产。

上面红色框中的数字是一个训练指标,Loss_A,Loss_B后面的数字越小越好,一般来说当数值小到0.02 或者0.0.1就差不多了,当然你也可以直接看预览图的效果,如果人脸非常清晰了,这个环节就结束了。

为了演示整个过程,我这里只是训练了几分钟,就开始进入下一个环节了。

5. 人脸替换

人脸替换的结果我们保存在Result,所以先通过点击文件夹选中Result ,然后点击Open。

点击 SWAPS开始换脸。跳出黑色窗口,出现进度条。最后出现Done! 就证明转换已经全部完成。

这一个步骤做的事情,就是把B的脸放到A的头上,最终产生的一堆换了脸的图片。

Result目录随便打开一张看一下,脸已经换过去了。我这里由于训练时间超短,所以脸是模糊的。训练久了脸就会变得清晰,看起来就不会这么假了。

6. 导出视频

我们训练的最终目的肯定不是图片换脸,而是视频换脸。所以最后一步,是将图标合成视频。

点击文件夹,选中Result,Save 。

点击 MOVIE ,弹出黑色窗口,片刻之后,出现Press any key to …. 证明合成已经结束。

此时,Result下面出现了一个FBB的视频。

到这里,整个换脸软件的使用就结束了。

刚开始,大家换出来的连肯能都是这一个样子的。 随着 MODEL环节时间的增长,效果会越来越好。除了模型的训练时长之外。最终换脸的效果很大程度取决于A 和B下面的视频素材。

更多关于 AI换脸DeepfakesOpenFaceSwap的问题可以去 Deepfakes中文网。

OpenFaceswap 入门教程(2):软件使用篇!的更多相关文章

  1. Linux Capabilities 入门教程:基础实战篇

    该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 待续... 上篇文章介绍了 Linux capabilit ...

  2. Capabilities 入门教程:基础实战篇

    该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 待续... 上篇文章介绍了 Linux capabilit ...

  3. Linux Capabilities 入门教程:进阶实战篇

    原文链接:https://fuckcloudnative.io/posts/linux-capabilities-in-practice-2/ 该系列文章总共分为三篇: Linux Capabilit ...

  4. OpenFaceswap 入门教程(1):软件安装篇

    ---恢复内容开始--- 众多换脸软件中,DeepFaceLab其实是安装和使用最方便,更新最快的,但是由于其没有可是化界面,对于很新手来说,可能入门还是有点难度.那么今天就来介绍一款操作极其直观和简 ...

  5. OpenFaceswap 入门教程(3): 软件参数篇!

    OpenFaceswap 的使用可以说是非常简单,只要稍加点拨就可以学会,厉害一点的人根本不需要教程,直接自己点几下就知道了.看了前面安装篇和使用篇.我想大多数人应该会了. 当学会了使用之后,你可能对 ...

  6. Unix/Linux环境C编程入门教程(42) 终端控制篇

    函数介绍 getopt(分析命令行参数) 相关函数 表头文件 #include<unistd.h> 定义函数 int getopt(int argc,char * const argv[ ...

  7. Docker入门教程(五)Docker安全

    Docker入门教程(五)Docker安全 [编者的话]DockOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第五篇,介绍了Docker的安全问题,依然是老话重谈,入门者可以通 ...

  8. Docker入门教程(八)Docker Remote API

    Docker入门教程(八)Docker Remote API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第八篇,重点介绍了Docker Remote ...

  9. Docker入门教程(七)Docker API

    Docker入门教程(七)Docker API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第七篇,重点介绍了Docker Registry API和 ...

随机推荐

  1. Linux Shell中的反引号,单引号,双引号

    反引号位 (`) 位于键盘的Tab键的上方.1键的左方.注意与单引号(')位于Enter键的左方的区别. 在Linux中起着命令替换的作用.命令替换是指shell能够将一个命令的标准输出插在一个命令行 ...

  2. Python3.5 调用Ansible 执行命令

    ansible.py #!/usr/bin/env python3 # -*- coding: utf-8 -*- import os import tempfile from collections ...

  3. Oracle权限管理

    一)用户Oracle中的用户分为二大类1)Oracle数据库服务器创建时,由系统自动创建的用户,叫系统用户,如sys.2)利用系统用户创建的用户,叫普通用户,如scott,hr,c##tiger,zh ...

  4. gitk更改主题设置打不开

    ➜ project git:(master) gitk Error in startup script: unknown color name "lime" (processing ...

  5. 第2章 TCP-IP的工作方式

    第2章 TCP-IP的工作方式 TCP/IP协议系统 为了实现TCP的功能,TCP/IP的创建者使用了模块化的设计.TCP/IP协议系统被分为不同的组件,每个组件分别负责通信过程的一个步骤.这种模块化 ...

  6. 【干货】Html与CSS入门学习笔记1-3

    从23号开始用了4天时间看完了<Head First Html与CSS>这本书,本书讲解方式深入浅出,便于理解,结合习题,便于记忆,是一本不错的入门书.下面是本书的学习笔记: 一.认识HT ...

  7. [转]Jetson TX1 开发教程(1)配置与刷机

    开箱 Jetson TX1是英伟达公司新出的GPU开发板,拥有世界上先进的嵌入式视觉计算系统,提供高性能.新技术和极佳的开发平台.在进行配置和刷机工作之前,先来一张全家福: 可以看到,Jetson T ...

  8. 使用CSS设置Chrome打印背景色

    以下内容适用于Chrome浏览器 打印背景色可以通过在打印预览页面勾选背景图形实现 如果需要在用户不勾选的情况下依然能够打印背景色,可以通过css实现,如,table隔行设置背景色: .data-ta ...

  9. 获取win10 Insider Preview报错0x80080300

    获取win10 Insider Preview报错0x80080300 1.msconfig2.隐藏Microsoft 服务3.disable 剩下的服务4.win + i, Update&s ...

  10. Django Form 表单

    Form 表单功能 生成HTML表单元素检查表单元素的合法性验证如果错误,重复显示表单数据类型转换 Form相关的对象 Widget 渲染成HTML元素的工具Field Form对象中的一个字段For ...