【必看】DFL官方使用说明

——————–DFL2.0 官方使用手册翻译:————————
2.0主要新增功能():

  • 2个模型大类: SAEHD 和 Quick 96
  • 支持多GPU
  • 比DFL 1.0 更快的提脸、训练、合成速度
  • 提供人脸素材加强脚本
  • 训练支持GAN(一种AI技术),以还原更多细节
  • 新增TrueFace参数 – (只支持 DF 模型架构) – 让SRC和DST表情更相似,减少死鱼脸
  • 合成阶段附带输出遮罩图片, 方便后期导入其他软件编辑
  • 带交互界面的合成脚本(1.0的合成需要手动填参数,非常反人类,这个2.0做的很人性化)
  • 提脸使用s3fd算法,并支持手动模式
  • 模型分辨率可选择为任意16或32倍数
  • 多种模型架构 (两种核心框架DF, LIAE,以及 -U, -D ,-UD 三种附加后缀,这个下文详细展开)
  • 使用Xseg遮罩模型,提供自带画遮罩的工具。

2.0硬件要求:
dfl2.0最新版已经支持英伟达显卡和AMD显卡,但AMD显卡效率不行,买电脑还是推荐英伟达显卡,
需要显卡CUDA Compute Capability 3.0以上

DeepFaceLab 2.0由几个.bat文件组成,这些文件用于执行创建Deepfake的各种任务/步骤,它们与两个子文件夹一起位于主文件夹中:

  • _internal – 相关源代码
  • workspace – 放置你的模型、视频、人脸数据的地方

下面是一些术语解释

Dataset (faceset) – 是一组从图片帧(从视频中提取)或照片已提取的图像。

DFL 2.0中使用了两个数据集,分别是data_dstdata_src

– “data_dst” “ data_dst”是一个文件夹,其中包含从data_dst.mp4文件提取的帧-这是我们要换脸的目标视频。 它还包含2个文件夹,这些文件夹是在从提取的帧中提取人脸后创建的:“aligned”包含人脸图像(内嵌了人脸特征点数据,用于生成原始遮罩)
“aligned_debug”包含原始帧,这些帧画出了人脸特征点,用于标识检验人脸提取是否正确(并且不参与训练或合成过程)。清理完数据集后,可以将其删除以节省空间。

– “data_src” 是一个文件夹,用于保存从data_src.mp4文件提取的帧(可以是采访,电影,预告片等),也可以在其中放散装图片-就是您要在换到视频上的人。
“aligned”包含人脸图像(内嵌了人脸特征点数据,用于生成原始遮罩)
“aligned_debug”包含原始帧,这些帧画出了人脸特征点,用于标识检验人脸提取是否正确(并且不参与训练或合成过程)。清理完数据集后,可以将其删除以节省空间。

为方便国内朋友理解,我举个例子:我要做一个马保国替换叶问中甄子丹的换脸视频。 那么马保国就是data_src,叶问就是data_dst

但是,在提取脸部之前,必须先从以下对象中提取脸部:

-对于data_dst,您应该准备目标(目标)视频并将其命名为data_dst.mp4
-对于data_src,您应该准备源视频(如上例所示)并将其命名为data_src.mp4,或者准备jpg或png格式的图像。
从视频中提取帧的过程也称为提取,因此在本指南的其余部分中,我将这两个过程都称为“面部提取”和“帧提取”。

如开头所述,所有这些数据都存储在“ workspace”文件夹中。data_dst.mp4和data_src.mp4放在workspace文件夹目录;data_src文件夹和data_dst文件夹用于放置分解视频得到的原始画面帧或散装图片。运行面部提取后,会在其中自动生成存储人脸的“ aligned”文件夹

1. 工作区清理:

1) Clear Workspace –删除workspace下所有内容。别手贱点他。

2. 从src视频中提取画面 (data_src.mp4):

2) Extract images from video data_src – 
从data_src.mp4视频中提取帧并将其放入自动创建的“ data_src”文件夹中,可用选项:-FPS-跳过视频的默认帧速率,输入其他帧速率的数值(例如,输入5将仅以每秒5帧的速度呈现视频,这意味着将提取较少的帧)
-JPG / PNG-选择提取帧的格式,jpg较小,通常质量足够好,因此建议使用,png较大,不能提供明显更高的质量,但是可以选择。

3. 视频切割 (可选环节):

3) cut video (drop video on me) – 通过将视频拖放到该.bat文件中,可以快速将视频剪切为所需的长度。 如果您没有视频编辑软件并且想快速剪切视频,则很有用,可以选择以下选项:
从时间开始-视频开始
结束时间-视频结束
音轨-保留默认设置
比特率-让我们更改视频的比特率(质量)-最好保留默认设置

3. 从目标视频中提取画面(data_dst.mp4):

3) extract images from video data_dst FULL FPS – 
从data_dst.mp4视频文件中提取帧并将其放入自动创建的“ data_dst”文件夹中,可用选项:
– JPG/PNG – 同2)
4. 提取Data_src中的人脸:

准备源数据集的第一步是对齐人脸(把人脸都摆正了),并从位于“ data_src”文件夹中的提取帧中生成512×512面部图像。

有2个选项:
4) data_src faceset extract MANUAL – 手动提取器,用法请参见5.1。
4) data_src faceset extract – 使用S3FD算法的自动提取

S3FD和MANUAL提取器的可用选项包括:
-根据要训练的模型的面部类型选择提取的覆盖区域:
a) full face (简称F脸,额头部分有些许被裁到)
b) whole face (简称WF脸,范围更大,整个额头都取了,兼容WF和F脸模型)
c) head (不常用,给高玩做avatar用,萌新用不到)
-选择用于面部提取/对齐过程的GPU(或cpu)
-选择是否生成“ aligned_debug”文件夹
4. Data_src 整理:

完成此操作后,下一步是清理错误faceset /数据集/不正确对齐的faces,有关详细信息,请检查以下帖子: https://mrdeepfakes.com/forums/thread-gu…y-facesets

4.1) data_src view aligned result – 不常用

4.2) data_src sort – 给图片排序,方便你筛选错误图片

[0] blur 模糊程度
[1] face yaw direction 俯仰角度
[2] face pitch direction 左右角度
[3] face rect size in source image 人脸在原图中的大小
[4] histogram similarity 颜色直方图相似度
[5] histogram dissimilarity 颜色直方图不相似度
[6] brightness 亮度
[7] hue 颜色色相
[8] amount of black pixels 黑色像素的数量(常用于筛选异常人脸提取结果)
[9] original filename 源文件名字
[10] one face in image 是否是画面中唯一人脸
[11] absolute pixel difference 绝对的像素差异
[12] best faces 筛选最佳的人脸
[13] best faces faster 更快的筛选最佳的人脸

4.2) data_src util add landmarks debug images -重新生成debug文件夹

4.2) data_src util faceset enhance – 用AI算法提升素材清晰度

另一个可选的提升SRC的素材的方法,可用DFDNET ,谷歌colab连接如下:
https://colab.research.google.com/github…7-E-vRSYar

4.2) data_src util faceset metadata restore and 4.2) data_src util faceset metadata save – 让我们从源面集/数据集中保存和还原嵌入的对齐数据,以便在提取某些面部图像(例如将它们锐化,编辑眼镜,皮肤瑕疵,颜色校正)后可以对其进行编辑,而不会丢失对齐数据。如果不按此步骤编辑“已对齐”文件夹中的任何图像,则将不会再使用对齐数据和这些图片进行训练,因此,在保持名称相同的情况下,不允许翻转/旋转,仅是简单的编辑,例如彩色 。

4.2) data_src util faceset pack and 4.2) data_src util faceset unpack – 将“ aligned”文件夹中的所有面孔打包/解压缩到一个文件中。 主要用于准备自定义的预训练数据集或更易于共享为一个文件。

4.2.other) data_src util recover original filename – 将面部图像的名称恢复为原始顺序/文件名(排序后)。 可选,无论SRC face文件名如何,训练和合成都能正确运行。
5. Data_dst 数据准备:
这里的步骤与源数据集几乎相同,除了少数例外,让我们从面部提取/对齐过程开始。
我们仍然有Manual和S3FD提取方法,但是还有一种结合了这两种方法和一种特殊的手动提取模式,始终会生成“ aligned_debug”文件夹。

5) data_dst faceset extract MANUAL RE-EXTRACT DELETED ALIGNED_DEBUG – 从“ aligned_debug”文件夹中删除的帧进行手动重新提取。 有关更多信息,请参见5. Data_dst清理。 以下步骤5.1中的用法。
5) data_dst faceset extract MANUAL – 纯手动模式
5) data_dst faceset extract manual fix – 半自动,机器识别不了的会切手动
5) data_dst faceset extract – 纯自动提取

选项和src的一样,不重复说了

5.1 手动人脸提取的操作说明:

启动手动提取器或重新提取器后,将打开一个窗口,您可以在其中手动找到要提取/重新提取的脸部:
-使用鼠标定位脸部
-使用鼠标滚轮更改搜索区域的大小
-确保所有或至少是大多数地标(在某些情况下,取决于角度,照明或当前障碍物,可能无法精确对齐所有地标,因此,请尝试找到一个最能覆盖所有可见位并且是“ t太不对准)落在重要的部位,例如眼睛,嘴巴,鼻子,眉毛上,并正确遵循面部形状,向上箭头指示您面部的“向上”或“顶部”在哪里
-使用键A更改精度模式,现在地标不会对检测到的面部“粘”太多,但您可能能够更正确地定位地标
-用户<和>键(或,和。)来回移动,以确认检测到鼠标左键单击并移至下一个或按Enter
-鼠标右键,用于检测无法检测到的正面或非人脸(需要应用xseg进行正确的遮罩)
-q跳过剩余的面孔并退出提取器(到达最后一张面孔并确认时也会关闭)

5.2 Data_dst 数据整理:

对齐data_dst面后,我们必须清理它们,类似于我们使用源faceset / dataset进行处理时,我们将选择一些排序方法,由于它们的工作方式与src完全相同,因此我将不作解释。
但是清理目标数据集与源数据集有所不同,因为我们要使所有存在的帧的所有面对齐(包括可以在XSeg编辑器中标记的受遮挡的面),然后训练XSeg模型以将其遮盖 -有效地使障碍物在学到的面孔上清晰可见,更多的是在下面的XSeg阶段。

这块做法和data_src类似,区别在于,最后合成时是根据dst中aligned文件数量来合成。删掉的dst人脸数据对应的画面就不会换脸

5.3: XSeg model 的训练和使用(画遮罩).

这章比较复杂,晚点翻译。萌新先不要使用遮罩。不用遮罩正常也能训练

6. 训练:

有两种模式可以选择:

SAEHD (6GB ): 高质量模型,至少6GB显存

特点/设置
– 最高640×640分辨率,
– 可支持half face, mid-half face, full face, whole face and head face 5中人脸尺寸类型
– 8种模型结构: DF, LIAE, 每种4 个变种 – regular, -U, -D and -UD
– 可调节的批大小(batchsize)
– 可调节的模型各层维度大小
– Auto Backup feature 自动备份
– Preview History预览图存档
– Adjustable Target Iteration 目标迭代次数
– Random Flip (yaw) 随机水平翻转
– Uniform Yaw 按角度顺序来训练
– Eye Priority 眼神训练优先
– Masked Training 带遮罩训练
– GPU Optimizer 优化器放GPU上
– Learning Dropout 学习率自动下降
– Random Warp 随机扭曲
– GAN Training Power 使用GAN
– True Face Training Power 提高人脸相似度
– Face and Background Style Power 提高颜色相似度
– Color Transfer modes 变对素材变色
– Gradient Clipping 梯度裁剪
– Pretrain Mode 使用预训练模式

Quick96 (2-4GB): 低配电脑可用

特点:
– 96×96 分辨率
– 只支持Full Face
– Batch size 4
– 默认DF-UD结构


6) train SAEHD
6) train Quick96

由于Quick96不可调节,因此您将看到命令窗口弹出并仅询问一个问题-CPU或GPU(如果您有更多问题,它将选择其中之一或同时进行训练)。
但是,SAEHD将为您提供更多调整选项。

在这两种情况下,首先都会出现一个命令行窗口,您可以在其中输入模型设置。 初次使用时,您将可以访问以下说明的所有设置,在使用已经受过训练的模型进行训练并在“模型”文件夹中显示该模型时,您还将收到提示,您可以在其中选择要训练的模型( (如果您的“模型”文件夹中存在多个模型文件)。
您还将始终提示您选择要在其上运行培训器的GPU或CPU。

启动后将看到的第二件事是预览窗口,如下所示:
【必看】DFL官方使用说明【已汉化】
这是所有功能的更详细说明,以便在开始训练新模型时将其呈现给用户:

请注意,由于这些模型的工作方式,其中一些已锁定,一旦开始训练就无法更改,例如,稍后无法更改的示例如下:

– model resolution 模型分辨率
– model architecture 模型结构
– models dimensions (dims settings) 模型维度参数
– face type 人脸类型

Autobackup every N hour ( 0..24 ?:help ) : 自动备份频率,0不备份

Target iteration : 将在达到一定的迭代次数后停止训练,例如,如果要将模型训练为仅进行100.000次迭代,则应输入值100000。将其保留为0将使其运行,直到您手动将其停止为止。 默认值为0(禁用)。

Flip faces randomly ( y/n ?:help ) : 基本不开。在您没有要交换到目标的人脸(源数据集)的所有必要角度的情况下的有用选项。 例如,如果您有一个目标/目标视频,人物直视向右,而您的源只具有直视向左的脸,则应启用此功能,但请记住,由于没有人脸对称,结果看起来可能不太像 src以及来源面部的特征(例如美容标记,疤痕,痣等)都会被镜像。 默认值为n(禁用)。

Batch_size ( ?:help ) : 批处理大小设置会影响每次迭代中相互比较的面孔数。 最低值是2,您可以提高到GPU允许的最大值,受GPU影响。 模型分辨率,尺寸越高,启用的功能越多,将需要更多的显存,因此可能需要较小的批处理大小。 建议不要使用低于4的值。批量越大,质量越好,但训练时间越长(迭代时间越长)。 对于初始阶段,可以将其设置为较低的值以加快初始训练的速度,然后将其升高。 最佳值为6-12。 如何猜测要使用的批量大小? 您可以使用试错法,也可以通过查看DFL 2.0电子表格来了解其他人在他们的GPU上可以实现什么,以帮助自己:[url = https://mrdeepfakes.com/forums/thread-dfl-2- 0-user-model-settings-spreadsheet] https://mrdeepfakes.com/forums/t … ettings-spreadsheet

Resolution ( 64-640 ?:help ) : 在这里,您可以设置模型的分辨率,请记住,在训练过程中不能更改此选项。 它会影响交换的面部的分辨率,模型的分辨率越高-学习的面部越详细,但训练的负担也将越来越长。 分辨率可以从64×64增至640×640,其增量为:
16(对于常规和-U体系结构变体)
32(用于-D和-UD体系结构变体)
更高的分辨率可能需要增加模型尺寸(尺寸)。

Face type ( h/mf/f/wf/head ?:help ) :此选项使您可以设置要训练的脸部区域,共有5个选项-半脸,半脸,全脸,全脸和头部:
a)H半脸-仅从嘴巴到眉毛训练,但在某些情况下可以割破脸部的顶部或底部(眉毛,下巴,嘴巴)。
b)MF中半脸-旨在解决此问题,方法是遮盖脸部比半脸大30%,这应该可以防止大多数不希望的割伤的发生,但仍然可以发生。
c)F全脸-覆盖除额头以外的大部分脸部区域,有时会割掉一点下巴,但是这种情况很少发生-当SRC和/或DST的额头覆盖头发时,最推荐使用此方法。
d)WF整脸-扩大该区域以覆盖几乎整个脸部,包括额头,甚至一点点头发,但是当我们要交换整个脸部(不包括头发)时,应使用此模式。该脸部类型的另一个选项是masked_training,它使您可以优先确定学习脸部的整个脸部的优先级,然后(禁用之后)让模型学习像额头一样的脸部其余部分。
e)头-用于交换整个头,不适合长发的对象,如果源面组/数据集来自单个源并且SRC和DST都短发或不变,则效果最好形状取决于角度。此脸型的最低建议分辨率为224。
【必看】DFL官方使用说明【已汉化】

whole face案例
【必看】DFL官方使用说明【已汉化】
AE architecture (df/liae/df-u/liae-u/df-d/liae-d/df-ud/liae-ud ?:help ) : 此选项使您可以在2种主要的体系结构DF和LIAE及其-U,-D和-UD变体之间进行选择。

DF和LIAE体系结构是基础体系结构,两者均提供高质量和良好的性能。
DF-U,DF-UD,LIAE-U和LIAE-UD是其他体系结构变体。

DF: 此模型体系结构提供了更直接的人脸交换,不使人脸变形,但要求源和目标/目标人脸/头部具有相似的人脸形状。
该模型在正面拍摄时效果最好,并且要求您的源数据集具有所有所需的角度,在侧面轮廓上可能会产生较差的结果。

LIAE: 当涉及源和目标/目标之间的面部/头部形状相似性时,此模型体系结构没有那么严格,但是该模型确实使面部变形,因此建议使实际面部特征(眼睛,鼻子,嘴巴,整体面部结构)相似 在源和目标/目标之间。 该模型与源头镜头的源相似性较差,但可以更好地处理侧面轮廓,并且在源源面集/数据集方面更宽容,通常可以产生更精致的人脸替换,并具有更好的颜色/照明匹配度。

-U: 
此变体旨在提高训练结果面与SRC数据集的相似性/相似性。
-D: 此变体旨在提高性能,让您以两倍的分辨率训练模型,而无需额外的计算成本(VRAM使用)和类似的性能,例如以与128分辨率相同的VRAM使用和速度(迭代时间)训练256分辨率模型

-UD: 结合U和D

接下来的4个选项控制模型神经网络的尺寸,这些尺寸会影响模型的学习能力,对其进行修改可能会对所学面孔的性能和质量产生重大影响,因此应将其保留为默认值。

AutoEncoder dimensions ( 32-1024 ?:help ) : 自动编码器中间层维度大小
Encoder dimensions ( 16-256 ?:help ) : 编码器尺寸设置会影响模型学习面孔总体结构的能力。
Decoder dimensions ( 16-256 ?:help ) : 解码器尺寸设置会影响模型学习细节的能力。
Decoder mask dimensions ( 16-256 ?:help ) : 遮罩解码器的尺寸设置会影响学习到的遮罩的质量。

更改每个设置时的性能变化可能会对性能产生不同的影响,如果没有大量的培训,就无法衡量每个参数对性能和质量的影响。 每个设置为某个默认值,该默认值应提供最佳结果,并在训练速度和质量之间取得良好的折衷。

同样,在更改一个参数时,也应更改其他参数,以保持它们之间的关系相似(例如,如果将“编码器”和“解码器”的尺寸从64降低到48,则还可以将“自动编码器”的尺寸从256降低到192-240)。 随意尝试各种设置。
如果要获得最佳结果,请将其保留为默认值,或者对于高分辨率型号,将其略微提高。
Eyes priority ( y/n ?:help ) : 试图通过强制神经网络训练优先级更高的眼睛来解决眼睛训练问题。
请记住,它不能保证正确的眼睛方向,它只会影响眼睛的细节和周围区域。 示例(之前和之后):
【必看】DFL官方使用说明【已汉化】
Place models and optimizer on GPU ( y/n ?:help ) : 启用GPU优化器会将所有负载都放在GPU上,这将大大提高性能(迭代时间),但会导致更高的VRAM使用率,禁用此功能会将优化器的某些工作分担给CPU,从而减少了GPU和VRAM使用率的负载,从而使您可以实现 批处理量更大或以更高的迭代时间为代价运行更苛刻的模型。 如果您收到OOM(内存不足)错误,并且不想减小批量大小或禁用某些功能,则应禁用此功能,这样一来,一些工作将被卸载到CPU上,而某些数据将从GPU VRAM转移到系统RAM中- 您将能够以较低速度为代价运行模型而不会出现OOM错误。 默认值为y(启用)。
Use learning rate dropout ( y/n/cpu ?:help ) : LRD被用于加速面部的培训,并减少相比,如果没有启用它,使用它较少的迭代子像素抖动:
-在禁用RW之前和运行其他选项之后一次。
-禁用RW之后(也是LRD)第二次使用其他选项(均匀偏航,样式效果,真面,眼睛优先),但在启用GAN之后。
此选项会影响VRAM的使用,因此,如果遇到OOM错误,则可以在CPU上运行它,但需要花费20%的迭代时间或降低批处理大小。
有关LRD的详细说明以及在培训期间启用主要功能的顺序,请参阅FAQ问题8(此主题的第3个帖子):”When should I enable or disable random warp, GAN, True Face, Style Power, Color Transfer and Learning Rate Dropout?”.

Enable random warp of samples ( y/n ?:help ) : 随机扭曲用于概括模型,以便它可以正确学习所有基本形状,面部特征,面部结构,表情等,但是只要启用该模型,学习精细细节就可能会遇到麻烦-因为它 建议您只要您的脸部仍在改善中(通过查看减少的损耗值和预览窗口)就启用此功能,一旦对脸部进行了全面训练并想要获得更多详细信息,则应禁用它并进行数千次迭代 应该会开始看到更多详细信息,并且禁用此功能后,您将继续进行培训。 默认值为y(启用)。

Uniform_yaw ( y/n ?:help ) : 
有助于训练轮廓脸部,迫使模型根据其偏航角在所有面孔上均匀地训练,并优先考虑轮廓脸部,可能会导致正面脸部的训练速度变慢,这在预训练期间默认启用,可与随机变形类似地使用(在开始时 (训练过程)或在禁用或禁用RW后启用(当您对面部进行或多或少的训练,并且您希望轮廓脸部看起来更好且更少模糊时)。 当您的源数据集没有很多轮廓照片时很有用。 可以帮助降低损失值。 默认值为n(禁用)。

GAN power ( 0.0 .. 10.0 ?:help ) : GAN代表Generative Adversarial Network,在DFL 2.0的情况下,它是作为获得更详细/更清晰面孔的一种额外培训方式而实施的。 此选项的调整范围是0.0到10.0,只有在模型或多或少地完成训练后(禁用样本随机扭曲并启用LRD之后),才应启用该选项。 建议从低值0.1开始,该值在大多数情况下也是建议值,一旦启用,就不应禁用它,请确保对模型进行备份,以防不满意结果。
默认值为0.0(禁用)。

用GAN训练0.1的面部进行40k迭代之前/之后的示例:
【必看】DFL官方使用说明【已汉化】
‘True face’ power. ( 0.0000 .. 1.0 ?:help ) : 使用可变功率设置的真实面部训练,让您将模型鉴别器设置为更高或更低的值,这样做是为了使最终面孔看起来更像src,而对于GAN,只有在禁用了随机扭曲后,才应启用此功能 并且模型训练有素。 在启用此功能之前,请考虑进行备份。 切勿使用较高的值,典型值为0.01,但可以使用较低的值,例如0.001。 设置越高,结果面将越像源数据集中的面,这可能导致颜色匹配问题,并导致出现伪影,因此重要的是不要使用高值。 它对性能的影响很小,可能会导致OOM错误发生。 默认值为0.0(禁用)。
【必看】DFL官方使用说明【已汉化】
Face style power ( 0.0..100.0 ?:help ) and Background style power ( 0.0..100.0 ?:help ) : 此设置控制图像的面部或背景部分的样式转移,用于将目标/目标面孔(data_dst)的样式转移到最终学习的面孔,这样可以提高质量和合并后最终结果的外观,但是 高值可能导致学习的人脸看起来更像data_dst,而不是data_src。 它将从DST传输一些颜色/照明信息到结果脸部。 建议不要使用大于10的值。从0.001-0.01之类的小值开始。 此功能对性能有很大影响,使用它会增加迭代时间,并且可能需要您减小批处理大小,禁用gpu优化器或在CPU上运行LRD。 在启用此功能之前,请考虑进行备份。 默认值为0.0(禁用)。

Color transfer for src faceset ( none/rct/lct/mkl/idt/sot ?:help ) : 此功能用于将data_src的颜色与data_dst进行匹配,以使最终结果具有与data_dst相似的肤色/色调,并且训练后的最终结果不会在人脸移动时改变颜色(如果脸部不同,可能会发生这种情况 角度是从包含不同光照条件或颜色分级不同的各种光源获取的。 有以下几种选择:

– rct (reinhard color transfer)(我常用,滚石注): 基于: https://www.cs.tau.ac.il/~turkel/imagepa…ansfer.pdf
– lct (linear color transfer): 使用线性变换将目标图像的颜色分布与源图像的颜色分布匹配。
– mkl (Monge-Kantorovitch linear): 基于: http://www.mee.tcd.ie/~sigmedia/pmwiki/u…tie07b.pdf
– idt (Iterative Distribution Transfer): 基于: http://citeseerx.ist.psu.edu/viewdoc/dow…1&type=pdf
– sot (sliced optimal transfer): based on: https://dcoeurjo.github.io/OTColorTransfer/

Enable gradient clipping ( y/n ?:help ) : 梯度裁剪。实现此功能是为了防止在使用DFL 2.0的各种功能时可能发生的所谓的模型崩溃/损坏。 它对性能的影响很小,因此,如果您真的不想使用它,则必须启用自动备份,因为崩溃后的模型无法恢复,必须将其废弃,并且必须从头开始进行培训。 默认值为n(禁用),但是由于对性能的影响非常低,并且如果保持启用状态,可以防止模型崩溃而节省大量时间。 使用Style Powers时最容易发生模型崩溃,因此强烈建议您启用渐变裁剪或备份(也可以手动进行)。

Enable pretraining mode ( y/n ?:help ) : 启用预训练过程,该过程使用随机人脸数据集对模型进行初始训练,将其训练约200k-400k次迭代后,可以在开始使用要训练的实际data_src和data_dst进行训练时使用此类模型,因为您可以节省时间不必每次都从0开始全面训练(模型将“知道”面孔的外观,从而加快初始训练阶段)。可以随时启用pretrain选项,但建议在开始时仅对模型进行一次预训练。您还可以使用自己的自定义面集进行预训练,您要做的就是创建一个(可以是data_src或data_dst),然后使用4.2)data_src(或dst)util faceset pack .bat文件打包成一个文件,然后将其重命名为faceset.pak并替换(备份旧的)“ … \ _ internal \ pretrain_CelebA”文件夹中的文件。默认值为n(禁用)。但是,如果要节省一些时间,可以去论坛找别人训练好的模型。

Shared models: https://mrdeepfakes.com/forums/thread-df…d-requests

要使用共享的预训练模型,只需下载它,将所有文件直接放入模型文件夹中,开始训练,在选择要训练的模型(如果在模型文件夹中有更多内容)和用于训练的设备后2秒钟内按任意键 (GPU / CPU)来覆盖模型设置,并确保禁用预训练选项,以便您开始正确的训练;如果您启用了预训练选项,则模型将继续进行预训练。 请注意,该模型会将迭代计数恢复为0,这是预训练模型的正常行为。

7. Merging合成:

训练完模型后,该将学习的人脸合并到原始帧上以形成最终视频了(转换)。

为此,我们有2个对应于2种可用型号的转换脚本:

7) merge SAEHD
7) merge Quick96

选择其中任何一个后,命令行窗口将出现,并带有多个提示。
第一个将询问您是否要使用带交互界面的转化器,默认值为y(启用),除非你受虐狂,不然就好好开着吧,边调参数边预览
Use interactive merger? ( y/n ) :

第二个将询问您要使用哪种模型:
Choose one of saved models, or enter a name to create a new model.
[r] : rename
[d] : delete
[0] : df192 – latest
:

第3个会问您要在合并(转换)过程中使用哪个GPU / GPU:
Choose one or several GPU idxs (separated by comma).
[CPU] : CPU
[0] : GeForce GTX 1070 8GB
[0] Which GPU indexes to choose? :
按Enter将使用默认值(0)。

完成之后,您将看到一个带有当前设置的命令行窗口以及一个预览窗口,其中显示了操作交互式转换器/合并程序所需的所有控件。

这是命令行窗口和转换器预览窗口的快速浏览:
【必看】DFL官方使用说明【已汉化】
Converter具有许多选项,可用于更改遮罩类型,大小,羽化/模糊,还可以添加其他颜色转移并进一步锐化/增强最终训练的脸部。

这是解释的所有合并/转换器功能的列表:

1. Main overlay modes:
– original: 显示原始画面而没有换脸
– overlay: 简单地将学习到的脸覆盖在框架上 (推荐用这个,滚石注)
– hist-match: 根据直方图叠加学习的面部和试图以使其匹配(具有2种模式:正常模式和可通过Z切换的蒙版)
– seamless: 使用opencv泊松无缝克隆功能在原始帧的头部上方融合新学习的面部
– seamless hist match: 结合了直方图匹配和无缝匹配。
– raw-rgb: 覆盖原始学习过的脸部而没有任何遮罩

注意:无缝模式可能导致闪烁。

2. Hist match threshold:在直方图匹配和无缝直方图覆盖模式下控制直方图匹配的强度。
Q – 增加值
A – 减小值

3. Erode mask: 控制遮罩的大小。
W – 增加遮罩腐蚀(较小的遮罩)
S – 减少遮罩腐蚀(较大的遮罩)

4. Blur mask: 使遮罩边缘模糊/羽化,以实现更平滑的过渡
E – 增加值
D – 减小值

5. Motion blur: 动态模糊。输入初始参数(转换器模式,模型,GPU / CPU)后,合并将加载所有帧和data_dst对齐的数据,同时,它会计算用于创建此设置控制的运动模糊效果的运动矢量,让您 将其添加到人脸移动的地方,但是即使移动很小,高值也可能使人脸模糊。 该选项仅在“ data_dst / aligned”文件夹中存在一组面孔时才有效-如果在清理过程中某些面孔带有_1前缀(即使只有一个人的面孔),效果将不起作用,同样 如果有一个可以反射目标人员面部的镜子,在这种情况下,您将无法使用运动模糊,并且添加该模糊的唯一方法是分别训练每组面部。
R – 增加motion blur
F – 减少motion blur

6. Super resolution: 超分辨率使用与data_src数据集/面部设置增强器类似的算法,它可以为牙齿,眼睛等区域添加更多定义,并增强所学面部的细节/纹理。
T – 增加细节 the enhancement effect
G – 减少细节
7. Blur/sharpen: 使用方块或高斯方法模糊或锐化所学的面部。
Y – sharpens the face
H – blurs the face
N – box/gaussian mode switch

8. Face scale: 缩放人脸
U – scales learned face down
J – scales learned face up

9. Mask modes: 6种遮罩计算方式,效果自己试一遍就知道了

dst: uses masks derived from the shape of the landmarks generated during data_dst faceset/dataset extraction.
learned-prd: uses masks learned during training. Keep shape of SRC faces.
learned-dst: uses masks learned during training. Keep shape of DST faces.
learned-prd*dst: combines both masks, smaller size of both.
learned-prd dst: combines both masks, bigger size of both.
XSeg-prd: uses XSeg model to mask using data from source faces.
XSeg-dst: uses XSeg model to mask using data from destination faces.
XSeg-prd*dst: combines both masks, smaller size of both.
learned-prd*dst*XSeg-dst*prd: combines all 4 mask modes, smaller size of all.

10. Color transfer modes: 与训练过程中的颜色转移类似,您可以使用此功能将学习到的脸部的肤色与原始帧更好地匹配,以实现更加无缝和逼真的脸部交换。 有8种不同的模式:
RCT
LCT
MKL
MKL-M
IDT
IDT-M
SOT – M
MIX-M

11. Image degrade modes: 
您可以使用3种设置来影响原始帧的外观(不影响换面):
Denoise – denoises image making it slightly blurry (I – increases effect, K – decrease effect)
Bicubic – blurs the image using bicubic method (O – increases effect, L – decrease effect)
Color – decreases color bit depth (P – increases effect, ; – decrease effect)

附加控件::

TAB button – 在主预览窗口和帮助屏幕之间切换。
请记住,您只能在主预览窗口中更改参数,按帮助屏幕上的任何其他按钮都不会更改它们。
-/_ and =/ buttons are used to scale the preview window.
Use caps lock to change the increment from 1 to 10 (affects all numerical values).

要保存/覆盖当前一帧中所有下一帧的设置 shift /
要保存/覆盖当前一帧中所有先前帧的设置 shift M
要开始合并所有帧,请按 shift >
要返回第一帧,请按  shift <
要仅转换下一帧,请按 >
要返回上一帧,请按 <

8. 把转化好的帧合成为视频
合并/转换所有面部之后,“ data_dst”文件夹中将有一个名为“ merged”的文件夹,其中包含构成视频的所有帧。
最后一步是将它们转换回视频,并与data_dst.mp4文件中的原始音轨合并。

为此,您将使用提供的4个.bat文件之一,这些文件将使用FFMPEG将所有帧组合成以下格式之一的视频-avi,mp4,lessless mp4或lossless mov:
– 8) merged to avi
– 8) merged to mov lossless 无损mov
– 8) merged to mp4 lossless 无损MP4
– 8) merged to mp4

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容