【停更】Deepfacelab 新手教程

【停更】Deepfacelab 新手教程欢迎进入本教程,本教程不定期更新本文教程内容更新时间为:2019/2,本文最后更新时间为:2019/3/8欢迎进群讨论,我不是群主,群主的各QQ群号码请看:https://deepfakes.com.cn/index.php/资助升级群这几天朱茵换脸杨幂的事件上了热门,我们群不存在该违法问题。然而因为网上的这个事件,2群排队已经可以说排到了明年。群主表示等风波结束了再考虑新群,毕竟群主不想…

大家好,又见面了,我是你们的朋友全栈君。

本文已停更,对不起,换脸玩多了就腻了……

现在本人已经没有玩换脸快3年了,还是有人私信我如何操作
其实去年的时候新版我已经不会用了……

上面一句话更新时间:2021/5
教程内容停止更新于:2019/2

1. 四款换脸软件介绍

FakeAPP Faceswap Openfaceswap Deepfacelab

1.1 四款软件的简介

名称 FakeAPP Faceswap Openfaceswap Deepfacelab
(集成环境版)
简介 可能是国内网络传播最广的换脸软件
GUI最为亲切但是2.2版本很差
开源软件 后期版本有GUI
源码玩家可以修改测试
Faceswap的GUI套壳版
目前停更且作者网站跳转到Deepfacelab
目前最好玩的换脸软件
但没有GUI
需要部署的环境 Visual Studio
Python
CUDA+CUDNN
FakeApp内核
Visual Studio
Python
CUDA+CUDNN
CUDA+CUDNN 无要求
743285272
QQ群内使用人数
★★★ ★★ ★★ ★★★★★

1.2 四款软件作者页面链接

FakeAPP 作者网站不好找,最新版还不一定好,主流版本还是1.1和2.2,链接为Baidu搜索
Faceswap GitHub上经常更新,新版不兼容旧版MODEL,使用时候请注意
Openfaceswap 作者的论坛已消失,点进去就自动跳转到Deepfacelab的GitHub页面
Deepfacelab GitHub上有介绍,介绍文末处有论坛链接可以下载集成环境版

2 Deepfacelab 新手教程

(在开始前建议使用Chrome浏览器,因为访问流畅,并且自带谷歌翻译,不管是去下载东西还是去学习教程,翻译都是有很大帮助的)

2.1 下载Deepfacelab软件包

  1. https://github.com/iperov/DeepFaceLab 拉到文末,有一个俄文论坛链接,或者直接点击进入这个俄文的论坛链接:https://rutracker.org/forum/viewtopic.php?p=75318742 文章最上面介绍内容的偏下面的部分,有个磁力链接,下载这个磁链的种子可能会很难,我们群里也会不定期更新新版的种子文件。(本人比特彗星长期挂机上传BT长效种子)
  2. 下载时候有两个包,一个是CPU版,一个是正常版,一般情况用NVIDIA显卡玩不需要下载CPU版本,如果你的显卡不能玩或者你想试试看,那你就下CPU版吧。
    一般情况下,一台台式机游戏级别配置的CPU的速度是GPU的1/10左右,这大概是个平均值,超过1/10不要回来喷我,除非你能弄出比同价位显卡更快的数据。
  3. 解压开你会发现Deepfacelab文件夹内有两个文件夹,和一堆bat批处理指令,下面请看我的介绍:
    Deepfacelab文件夹
    上图这张图是大概2018年6月的版本的列表,新版和旧版总体bat的功能不会差太多(2019/1/3作者更新了1个新算法,目前群内大神测试没太大用)。
    另外你如果玩熟练了你可以自己弄一些拿到前面来,这样会很方便:
    自定义bat
    我自己挑出来的这些像排序部分,有些是要自己修改bat内容的。
    记住,bat 批处理文件是可以修改的,文件夹里的只是送你的案例而已。

2.2 让我们开始换脸操作

近期发现本文被盗,所以在此插入一条防盗信息:原帖不定期更新地址:https://blog.csdn.net/u014575897/article/details/85272910

所有软件对应的两边素材:
A即DST 就是原版的视频素材,就是身体和背景不换,要换掉脸的视频
B即SRC 就是要使用到的脸的素材
把两边素材称为A和B的软件,一般都可以互换方向,但是总体操作都是B脸放A上,SRC脸放DST上

DST和SRC素材都可以是图片或者视频
换脸软件的操作是通过SRC脸图集,运算出MDOEL,然后放到DST序列图上,最后把DST序列图连接为视频

:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}

寻找

收集

是视频

是图片

分解视频
全部帧

识别人脸

是视频

是图片

分解视频
部分帧

识别人脸

第一步
把非人脸素材
变成人脸素材

SRC
素材

DST
素材

视频

图片

DST
人脸素材

视频

图片

SRC
人脸素材

:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}

训练

训练

第二步
人脸素材
训练MODEL

DST
人脸素材

SRC
人脸素材

MODEL

:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}

合成

合成

如果刚开始的
DST是图片

如果刚开始的
DST是视频

第三步
导出合成内容

DST
图片

几十万迭代
的MODEL

合成图

恭喜你已经完成
一次换脸操作

图片连接成视频并导出

新手操作流程:

  1. 【手动】把DST视频放到“workspace”文件夹下,并且命名为“data_dst”(后缀名和格式一般不用管)。

下面步骤的文件目录均在workspace下,如“workspace\data_src”,我将省略为“data_src”

  1. 【手动】把SRC素材(明星照片,一般需要700~1500张)放到“data_src”下。
  2. 【bat】分解DST视频为图片(需要全帧提取,即Full FPS),bat序号3.2 你会看到“data_dst”下有分解出来的图片。
  3. 【bat】识别DST素材的脸部图片,bat序号5 有DLIB和MT两种分解方式,一般情况建议DLIB,具体差别什么自己摸索,后面不要带Manual和Debug,这俩一个是手动一个是调试。
  4. 【bat】识别SRC素材的脸部图片,bat序号4 具体操作同步骤4。
  5. 【手动】第4步和第5步识别并对齐的人脸素材在“data_dst\aligned”和“data_src\aligned”内,你需要把这些人脸不正确识别的内容删除,否则影响MODEL训练结果,如果脸图特别小,或者翻转了,那么基本判定为识别错误,但是要说明的是,DST脸超出画面的半张脸需要留着不要删除,SRC脸超出画面基本没用,直接删除吧。

删除SRC错误脸图前可以使用bat序号4.2系列的排序,直方图排序和人脸朝向排序可以较为方便地找出错误人脸,这属于进阶内容,具体不给教程,有需要自己Baidu翻译一下。

  1. 【bat】现在你已经有DST的序列帧(图片)素材和SRC的脸部(图片)素材了,你需要运行MODEL训练,bat序号6 一样也是有好多种MODEL,目前建议新手直接跑H128的MODEL(除非你的显卡比较差,那就跑H64)其他MDOEL算法请看GitHub上的介绍。

跑MODEL是可以中断的,在预览界面按回车键,软件会自动保存当前进度,MDOEL文件在“model”文件夹下,不同的MODEL文件名不一样,建议定期备份MODEL,并建议SRC专人专用MODEL

  1. 【bat】上面MODEL如果是第一次跑,可能需要10+小时才有合理的效果,结束训练后请运行MODEL导出合成图,bat序号7 这里就根据你的MODEL类型来运行就好了
    这里会出现一个问题就是软件会在DOS界面给你好多好多选项,请看下文“导出合成图的选项”。
  2. 【bat】导出图片后需要把图片转成视频,那么就运行 bat序号8 就行了,根据你要的最终格式来定。

2.3 导出合成图的选项

合成图的选项
所有选项直接按回车即使用标注的默认选项(default)
第一个问答是问你要哪个合成模式,可以理解为:
1、普通
2、普通+直方图匹配
3、无缝(默认)
4、无缝+直方图匹配
可能每个视频需要的效果都不一样,一般情况我个人建议用:1普通
第一个问答结束后后面有一堆问题,具体作者给了说明:

※ 这里的图挂了,因为我原来是拉取Lab的GitHub上面的图片。最近Lab作者更新了GitHub上面的页面,这张图我找不到了,而更多的是官方给的视频教程(YouTube)
目前本文缺少这些参数的介绍(或许最近的新版已经取消掉了这些手动参数吧)
GitHub链接:https://github.com/iperov/DeepFaceLab

3 请注意保留源素材

不论哪款软件,流程结束后建议复制并分类保留:
SRC素材(脸图或原图)
MODEL(丢了就浪费10小时了)

4 FAQ

4.1 人脸素材需要多少?

DST:尽量不要少,因为它是有限的且需要被替换的素材
SRC:根据各软件的脸图筛选规则和网上大神的建议,总体来说,SRC脸图最好是大概700~3999的数量,像Deepfacelab的作者,他就认为1500张够了。对于SRC,各种角度、各种表情、各种光照下的内容越多越好,很接近的素材没有用,会增加训练负担。

4.2 手动对齐识别人脸模式如何使用?

手动对齐人脸
回车键:应用当前选择区域并跳转到下一个未识别到人脸的帧
空格键:跳转到下一个未识别到人脸的帧
鼠标滚轮:识别区域框,上滚放大下滚缩小
逗号和句号(要把输入法切换到英文):上一帧下一帧
Q:跳过该模式

老实说,这个功能极其难用,画面还放得死大……

4.3 MODEL是个什么东西?

MODEL是根据各种线条或其他奇怪的数据经过人工智能呈现的随机产生的假数据,就像PS填充里的“智能识别”
你可以从 https://affinelayer.com/pixsrv/ 这个网站里体验一下什么叫MODEL造假

4.4 MODEL使用哪种算法好?

各有千秋,一般Deepfacelab使用H128就好了,其他算法可以看官方在GitHub上写的介绍:https://github.com/iperov/DeepFaceLab

4.5 Batch Size是什么?要设置多大?

Batch Size的意思大概就是一批训练多少个图片素材,一般设置为2的倍数。数字越大越需要更多显存,但是由于处理内容更多,迭代频率会降低。一般情况在Deepfacelab中,不需要手动设置,它会默认设置显卡适配的最大值。
根据网上的内容和本人实际测试,在我们这种64和128尺寸换脸的操作中,越大越好,因为最合理的值目前远超所有民用显卡可承受的范围。
新手建议自动或从大的数值减少直到能够正常运行(比如128→64→32→16…),具体操作方法是在MODEL训练的BAT中添加一行:

@echo off
call _internal\setenv.bat

%PYTHON_EXECUTABLE% %OPENDEEPFACESWAP_ROOT%\main.py train ^
    --training-data-src-dir %WORKSPACE%\data_src\aligned ^
    --training-data-dst-dir %WORKSPACE%\data_dst\aligned ^
    --model-dir %WORKSPACE%\model ^
    --model H128

pause

上面是原版,需要加一行“–batch-size ?”并不要忘记上一行的“^”,如下:

@echo off
call _internal\setenv.bat

%PYTHON_EXECUTABLE% %OPENDEEPFACESWAP_ROOT%\main.py train ^
    --training-data-src-dir %WORKSPACE%\data_src\aligned ^
    --training-data-dst-dir %WORKSPACE%\data_dst\aligned ^
    --model-dir %WORKSPACE%\model ^
    --model H128 ^
    --batch-size 4

pause

4.6 MODEL训练过,还可以再次换素材使用吗?

换DST素材:
可以!而且非常建议重复使用。
新建的MODEL大概10小时以上会有较好的结果,之后换其他DST素材,仅需0.5~3小时就会有很好的结果了,前提是SRC素材不能换人。

换SRC素材,那么就需要考虑一下了:
第一种方案:MODEL重复用,不管换DST还是换SRC,就是所有人脸的内容都会被放进MODEL进行训练,结果是训练很快,但是越杂乱的训练后越觉得导出不太像SRC的脸。
第二种方案:新建MODEL重新来(也就是专人专MODEL)这种操作请先把MODEL剪切出去并文件夹分类,这种操作可以合成比较像SRC的情况,但是每次要重新10小时会很累。
第三种方案:结合前两种,先把MODEL练出轮廓后,再复制出来,每个MODEL每个SRC脸专用就好了。

4.7 合成图连接成视频后发现部分画面面部颤抖怎么办?

本人想到的方法是:把DST视频通过其他软件放大些尺寸再重新进行操作。因为逻辑上分析,扩大了画面后,软件识别偏移的步长比例会小一些。

我有其它问题我该如何向你提问?

这位大哥有关于其他的问题回复:
https://www.cnblogs.com/wangpg/tag/DeepFaceLab/

由于本文已经长期停更,现在取消了打赏二维码

2019/10

  1. (因为我写了每次更新的时间)我看到网上,包括一些下载站,都抄袭了我的这篇文章(大概2018年11月到2019年2月),不过有不少的博主是主动写了来源地址的。另外,我这篇文章从10000人观看开始就没有什么打赏了,直到今天是60000+人数,这也是我直接撤掉文末广告的原因之一。
  2. 我虽然很久没玩换脸,很久没更新博文,很久没有小收入,但是群友的热度还没退去,而且Deepfacelab也是不断在更新,网上也有更多的博主在2019/2之后开始写新手教程和调试的教程(那可比我的丰富多了,我只会一条龙安装和操作,调试什么的都不会),有他们我觉得蛮开心的,至少小白们有大腿可以抱了,而不是在我这里得到我也不知道怎么修正错误的回答。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/136724.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 注册公司事宜(注册公司需要什么条件)

    本公司专主代办广州注册公司,广州公司注册,创业者可选择的注册公司主要有两类:一是在海外注册公司,二是在内地如广州注册公司,。不管在国内注册还是在海外基本的操作模式都是相同的,只不过对于成立的公司在手续、税收等政策上有点不同,但就是这点不同,会对未来的公司造成巨大的影响。一、在海外注册公司与广州注册公司的区别      创办企业者可以选择在海外注册公司,现在流行的注册海外公司的方法是注册离岸公司。

  • 26524中位数第二人生_计数原理与排列组合是选修几

    26524中位数第二人生_计数原理与排列组合是选修几洛谷P2606 [ZJOI2010]排列计数(组合数 dp)

  • 协程概述

    协程概述协程不是进程,也不是线程,它就是一个函数,一个特殊的函数——可以在某个地方挂起,并且可以重新在挂起处继续运行。所以说,协程与进程、线程相比,不是一个维度的概念。一个进程可以包含多个线程,一个线程也可以包含多个协程,也就是说,一个线程内可以有多个那样的特殊函数在运行。但是有一点,必须明确,一个线程内的多个协程的运行是串行的。如果有多核CPU的话,多个进程或一个进程内的多个线程是可以并行运行的,但是一…

  • 启用shift后门的方法_shift按五次怎么取消

    启用shift后门的方法_shift按五次怎么取消一、什么是shift后门?shift后门是黑客希望以后方便进入服务器而在没有密码的情况下为进入服务器系统而设置的一个后门。其操作就是在不知道管理员密码的情况下,连续按5次shift键来启动粘滞键,已进入服务器的系统程序管理器。二、shift后门的制作?其制作有很多种,下面介绍一种常用的,可以明白其原理自己扩展:在cmd窗口,敲打命令如下:copyc:\windows\ex

  • phpstorm激活码2021 4月(破解版激活)

    phpstorm激活码2021 4月(破解版激活),https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • 用Python分析2000款避孕套,得出这些有趣的结论

    用Python分析2000款避孕套,得出这些有趣的结论到现在为止,我们的淘宝教程已经写到了第四篇,前三篇分别是:第一篇:Python模拟登录淘宝,详细讲解如何使用requests库登录淘宝pc端。第二篇:淘宝自动登录2.0,新增Cookies序列化,教大家如何将cookies保存起来。第三篇:Python爬取淘宝商品避孕套,教大家如何爬取淘宝pc端商品信息。今天,我们来看看淘宝系列的第四篇我们在上一篇的时候已经将淘宝数据爬取下来了,…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号