在这出门慌得一B,在家闲的D疼的日子,静下心来玩玩换脸黑科技也是一个不错的选择。新年新气象,DFL也迎来了2.0版本,虽然当前作者还在不断的修bug, 但是很多小伙伴肯定已经迫不及待的要去尝试新版本了。
今天我就针对2.0版本写一个详细的入门教程,争取做到只要会电脑的就能学会。话不多少直接进入正题,演示的软件版本为当天新鲜出炉的20200203版!
1. 获取软件以及安装
软件获取方法:
QQ群:672316851
或者作者GITHUB:https://github.com/iperov/DeepFaceLab
安装方法:
双击最新版的7z文件。
选择安装路径,建议放在C盘以外的磁盘,路径尽量短点不要包含特色字符。
单击Extract开始解压软件。
软件安装本质上只是解压而已,无需安装,就像很多绿色软件一样。如果QQ管家或者360报毒(都是流氓软件),添加信任放行即可。
依赖安装:依赖的意思就是使用这个软件之前必须要先安装的软件,DFL的唯一依赖就是显卡驱动。所以你只需要更新驱动即可使用此软件,CUDA和CUDNN不是必须的。
2. 目录介绍
软件解压完成后会出现一个叫DeepFaceLab_NVIDIA的文件夹,里面有一个workspace,我们需要的文件都会在这里。这个文件夹下面有三个文件,两个视频,代表的意义如上图! 需要换自己的视频,只需要把这两个MP4换成自己的就好了。
软件运行过程中,在Data_dst 和data_src 中里面还会产生一个aligned的文件,里面会放置提取到的人脸图片,比较重要!
3. 流程介绍
进入软件目录后会发现很多以.bat结尾的文件,叫批处理文件。此类文件在window系统下可以直接双击运行,和exe没有两样了。大致步骤如上。
软件使用的大概流程是:
1. 把视频转成图片
2. 从图片中提取头像
3. 用头像训练模型(模型相当于…..)
4. 用训练好的模型实现图片换脸
5 . 把换好脸的图片合成视频!
搞定。
具体的流程如下:
2) extract images from video data_src.bat (把源视频拆分成图片)
开头两个回车,等待,出现Done即表示处理成功。FPS :表示帧率,可以按回车默认,也可以输入一个数字。 Format代表图片格式,可以选JPG或者PNG,默认PNG。
处理完成后,data_src文件夹下面会出现很多图片,这些图片就来自data_src.mp4视频。
3) extract images from video data_dst FULL FPS.bat(把目标视频拆分成图片)
一个回车,等待一段时间,看到Done表示结束。
处理完成后,data_dst文件夹下面会出现很多图片,这些图片就来自data_dst.mp4视频。
4) data_src extract faces S3FD.bat(从源图片中提取人脸,也叫切脸)
两个回车,显示进度条,最后会显示发现的图片和提取到的人脸数量。 GPU index 是针对多卡用户,单卡用户直接回车。 Debug Image 一般不需要,默认回车即可。
操作成功后,data_src/aligned 文件夹下面会出现唐尼的头像。
5) data_dst extract faces S3FD.bat (从目标图片中提取人脸)
和上一步类似,只是少了一个参数Debug Image,其实是默认就启用了这个参数。
操作成功后,data_dst/aligned文件夹下会出现希亚·拉博夫的人头。在data_dst下面会出现一个aligned_debug文件夹。
打开里面的图片大概就是这个样子,作为新手看看就好了,不影响你后面的步骤。
6) train Quick96.bat (训练模型,耗时,不会自己结束)
DeepFaceLab是基于深度学习的软件,而深度学习基本都会涉及到一个叫“模型”的东西。 模型就像是提炼出来的仙丹,可以理解为易容丹。 炼丹自然不是一件简单的事情,而且特别耗时间,还需要好丹炉,好药材。这一部至关重要。
打开这个步骤后,需要先输入模型的名字。然后选择显卡,如果没有意外,就会出现③中的一行一行跳动的数字,代表已经开始炼丹。其中的Quick96表示模型的类型,除此之外还有SAEHD模型,SAEHD模型做出来的视频质量更好,但是要求的配置更高!
开始训练模型后,还会跳出一个新的窗口预览窗口,上面有使用帮助,迭代历史,迭代次数,还有五列头像。第一列和第二列是源头像,第三列和第四列是目标头像,第五列是最终头像。1,3 是参考标准,2,4,5是生成的头像,生成头像越来越接近参考标准,就证明模型越来越好。
当鼠标点击这个窗口后,在英文输入法下,可以使用快捷键。
P:刷新预览图
S:保存模型
Enter :保存模型,然后退出!
退出后再次点击train Quick96.bat 可以继续训练,进度不会丢失。 继续训练的时候需要选择模型,选择显卡,然后同样会显示一行数字,跳出预览窗口。
随着时间的推移,2,4,5列头像会越来越清晰,如果你觉得够清晰了,就可以关闭窗口,进入下一个步骤。
7) merge Quick96.bat (图片换脸)
这个步骤,有两种方式。Use interactive merger? 输入y启动交互式转换器(默认为y), 输入n为普通的命令行。我这里先输入:n,回车,继续回车选择模型,继续回车选择显卡。在此之后,还会有非常多的参数需要输入,一律按回车!
回车到不能回车之后,就会自动开始转换过程。过程中会显示百分比,当到达100% Done 就代表转换结束。
此时, 在data_dst 下面会多出一个merged文件夹,文件夹里面就是已经换脸成功的图片。
随便打开一张,大概是这个样子的。唐尼的脸已经换上去了。边缘之所以有些生硬,是因为我们全部使用的默认参数。适当调整可以改善,具体调整方法与之前版本类似,可以参见:deepfaker.xyz。
另外一种方法:Use interactive merger? 输入y 或者直接回车。此时进入交互式界面的帮助窗口,上面写着调整合成参数的快捷键,考验手速和记忆力的时候到了。通过按键盘上的Tab键可以进入预览界面。
在预览界面上,按对应的快捷键就可以调整效果。调整方法和老版本基本类似。 不过,DFL2.0有一点比较坑,交互式界面下好像没法自动合成,必须按一下合成一张…
8) merged to mp4.bat (把图片合成视频)
这一步的功能是把已经换脸成功的图片合成视频。打开后有一个参数:码率。可以直接默认,默认情况下码率很高清晰度最高但是合成文件非常大,也可以输入特定的值比如:3 。
这个步骤并不会消耗太多时间,结束后在workspace下面可以看到一个叫result.mp4的文件。
文本仅做基础介绍,一些新增的特性,新增的参数,会在后续的文章中做介绍。 对于已经用过这个软件的小伙伴来说用起来并不难,基本流程相似。对于没用过的人来说,训练模型和图片换脸的步骤可能会比较懵。口诀就是:遇到不知道的情况,一个回车即可,一个回车不够就来两个。流程跑通后,具体的参数可以去网站上看。文章中如果出现一些需要修改或者补充的内容,会添加在deepfaker.xyz上面!
=================
个人网站:www.deepfaker.xyz
公众号:托尼是塔克