Fakeapp软件的使用主要分成了三个步骤, 使用之前请确保你的电脑配置还可以,推荐配置是:一张显存大于4G的N卡。Fakeapp是有支持CPU选项,但是用CPU跑非常慢。
获取脸部图片
训练模型
生成视频
在开始之前你需要先准备两个视频,一个是A视频,一个是B视频,换脸软件可以把B的脸换到A上面。这里加上A视频是FBB(范冰冰),B视频是FTM(冯莫提)。这两个视频放在一个叫workspace的目录里面。下面的路径都为相对G:\FakeApp\workspace\的路径,路径并没有特殊要求,你可以更具自己的情况来选择。
下面就配合图片详细解说下如何操作。
1.获取脸部图片
选中GET DATESET 出现如下界面。
这一步的目的是讲视频分割成图片,然后从图片中提取脸部。
这个环节只需要填写两个地方,一个是Vidoe视频路径,一个是帧率FPS,默认为30.
因为我们有两个视频,所以需要分两次次来。.
先在Video中输入G:\FakeApp\workspace\FBB.mp4 ,这个路径不一定是这个样子要更具你的实际情况来。 帧率可以通过视频文件右键属性进行查看,一般是30,24之类。
输入完成后点击EXTRACT(提取) 开始提取。
提取分两个阶段,一个是把视频分割成图片,如上图。 一个是把图片中的人脸提取出来保存成新的图片,如下图。
等待进度条结束后跳出Traning dataset successfully 这个提示窗口就证明成功了。点击OK关闭提示窗口。
用同样的方式操作FTM.mp4
Video中输入G:\FakeApp\workspace\FTM.mp4 ,这个路径不一定是这个样子要更具你的实际情况来。同样需要输入帧率。
这两个过程完全是一样的,截图如下,就不多解释了。
2.训练模型
模型是很重要的一个东西,也是一个极其消耗时间的东西。训练模型对配置的要求也是比较高。
训练界面主要是上个输入框
Model : 模型的保存路径 (….\workspace\Model)
Data A: 被换的人脸(….\workspace\dataset_FBB\extracted)
Date B: 拿去换的人脸(…..workspace\dataset_FTM\extracted)
….代表你自己的路径。
输入路径之后,点击TRAIN开始训练。稍等片刻下面就会显示Loss A:xxxx ,LossB:xxxx 。 同时Model 目录下除了四个文件。同时还会跳出一个有很多脸的预览窗口。
这一个环节是非常耗时间的,一般需要几天时间。软件不会自动停止,你不想训练模型的时候可以手动关闭。下次开启会继续训练。 手动关闭的方法为,鼠标移动到预览窗口,然后按Q结束。
判断这个阶段是否完成了,可以通过两个指标去看。
Loss A,Loss B 数字越来越像,小到了0.02左右,就差不多了
人脸预览图越来越清晰,第二列第三列和第一列一样清晰,就证明差不多了。
训练结束后,即可开始生成视频。
生成视频的过程也是细分了好几个步骤。
首先,你需要输入Model 路径(…\workspace\Model )。Video路径(…\workspace\FTM.mp4) FPS(30)
然后,点击Create。
然后程序自动开始,处理过程可分成4个阶段。
生成图片
截取脸部
合成图片
合成视频
上面四个步骤是软件自动运行,运行结束之后就可以看到一个叫swap-FTM的视频了。这就是换脸后的视频。
因为我训练时间非常短,所以这个脸是非常模糊的,几乎看不起是谁。如果你训练的时间够长,这里就会非常清晰了。
更多关于 AI换脸,Deepfakes, Fakeapp的问题可以去 Deepfakes中文网。
Fakeapp 入门教程(2):使用篇!的更多相关文章
Systemd 入门教程:实战篇
Systemd 入门教程:实战篇 上一篇文章,介绍了 Systemd 的主要命令,这篇文章主要介绍如何使用 Systemd 来管理我们的服务,以及各项的含义: 一.开机启动 对于那些支持 System ...
【转帖】Systemd 入门教程:命令篇
Systemd 入门教程:命令篇 Copy From http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html 感觉 ...
Linux 命令详解(八)Systemd 入门教程:实战篇
Systemd 入门教程:实战篇 http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html
Linux 命令详解(七)Systemd 入门教程:命令篇
Systemd 入门教程:命令篇http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html
(转)Systemd 入门教程:命令篇
Systemd 入门教程:命令篇 原文:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html Systemd 入门 ...
DataVeryLite入门教程(二) Entity篇
DataVeryLite 是基于.net 4.0的数据库持久化ORM框架. 目前支持的数据库有Sqlserver,Mysql,Oracle,Db2,PostgreSql,Sqlite和Access. ...
Linux Capabilities 入门教程:概念篇
原文链接:Linux Capabilities 入门教程:概念篇 Linux 是一种安全的操作系统,它把所有的系统权限都赋予了一个单一的 root 用户,只给普通用户保留有限的权限.root 用户拥有 ...
Fakeapp 入门教程(1):安装篇!
在众多AI换脸软件中Fakeapp是流传最广,操作最简单的一款,当然他同样也是源于Deepfakes. 这款软件在设计上确实是花了一些心事,只要稍加点拨,哪怕是再小白的人也能学会.下面我就做一个入门教 ...
Fakeapp 入门教程(3):参数篇
参数可以让软件自由度更高.Fakeapp的参数并不算多,但是也非常使用.本文就讲解下几个重要的参数.参数设置界面可以通过点击SETTINGS打开. 参数修改无需点击保存,一旦修改直接生效. Proce ...
随机推荐
Python3.5 控制台日志输出,区分标准输出与错误输出
import logging import sys class ConsoleHandler(logging.Handler): terminator = '\n' def __init__(self ...
关于PCA降维中遇到的python问题小结
由于论文需要,开始逐渐的学习CNN关于文本抽取的问题,由于语言功底不好,所以在学习中难免会有很多函数不会用的情况..... ̄へ ̄ 主要是我自己的原因,但是我更多的把语言当成是一个工具,需要的时候查找就 ...
net core 的Generic Host 之Generic Host Builder
前言 通用Host(Generic Host) 与 web Host 不同的地方就是通用Host解耦了Http请求管道,使得通用Host拥有更广的应用场景.比如:消息收发.后台任务以及其他非http的 ...
下载2个软件包: extmail-1.1.0.tar.gz extman-1.1.tar.gz 下载地址:http://www.cpan.org/ 创建extsuite目录 mkdir /va ...
cucumber的hooks
引用链接:https://github.com/cucumber/cucumber/wiki/Hooks Hooks Cucumber provides a number of hooks which ...
MS Chart 折线图——去除时间中的时、分、秒,按天统计【转】
MS Chart 折线图——去除时间中的时.分.秒,按天统计 private void Form2_Load(object sender, EventArgs e){ str ...
为什么要使用Vuex?
为什么要使用Vuex? 1. 假如不使用 1.1 父子组件依赖同一个state 1.2 兄弟组件依赖同一个state 2. 用了Vuex之后 3. 方便记忆和理解
SpringBoot的特性
SpringBoot的理念“习惯优于配置” 习惯优于配置(项目中存在大量的配置,此外还内置了一个习惯性的配置,无须手动进行配置) 使用SpringBoot可以方便地创建独立运行.准生产级别的基于Spr ...
jq动态增加的button标签click回调失效的问题,即动态增加的button标签绑定事件$("button.class").click(function)无效
对于新增加的页面元素,改变了页面结构,如果是使用老办法$("button.class").click(function)去监听新的button标签事件,会失效. 笔者的应用是文字的 ...
详细讲解:tp3.2.3生成验证码并进行验证(ajax校验返回及自定义返回)
TP3.2.3的验证码也是比较经典的小功能,框架对这个小功能的封装还是比较完美的,废话不多说,开始记录 1.总体效果: (1)初始界面 (2)自定义的返回校验效果: (3)ajax的校验返回: 2.代 ...