DeepFaceLab相关文章
一:《简单介绍DeepFaceLab(DeepFake)的使用以及容易被忽略的事项》
二:《继续聊聊DeepFaceLab(DeepFake)不断演进的2.0版本》
三:《如何翻译DeepFaceLab(DeepFake)的交互式合成器》
四:《想要提高DeepFaceLab(DeepFake)质量的注意事项和技巧(一)》
五:《想要提高DeepFaceLab(DeepFake)质量的注意事项和技巧(二)》
六:《友情提示DeepFaceLab(DeepFake)目前与RTX3080和3090的兼容问题》
七:《高效使用DeepFaceLab(DeepFake)提高速度和质量的一些方法》
八:《支持DX12的DeepFaceLab(DeepFake)新版本除了CUDA也可以用A卡啦》
九:《简单尝试DeepFaceLab(DeepFake)的新AMP模型》
十:《非常规的DeepFaceLab(DeepFake)小花招和注意事项》
土:《可以提高DeepFaceLab(DeepFake)合成最终视频速度的方法》
王:《偶然看到DeepFaceLab(DeepFake)在2023年的新动向》—《测试通用遮罩》
伊佩罗夫的原版DFL(GIthub仓库)发布包最后停留在2021年11月20日,之后代码少有更新。
看来作者的精力都用在了DeepFaceLive上了……
后来发现有大神在延续这个项目!
根据DFL的 GPL-3.0 授权协议,并且ICE版本也说明是开源的,但我没发现项目代码仓库地址。
我也没加入作者留下的QQ群,所以……
幸好在热心网站有站长的介绍和发布页面《DF_ICE最新稳定版及常见问题FAQ》。
在这个时间点上最新版本是1.31c
。具体改动很多,都请看原页面吧。
当然,原版DFL官网的中文网站链接里面,也有这部分的内容,各种帖子很多可以自行了解。
据说以后的版本还会包含逆天的功能。
我感觉相对原版,还是有不少重要的改动的,用个例子列举一下吧(参数例):
____________________ 模型摘要 _____________________
模型名称:: XXXXX_SAEHD
当前迭代: 654321
____________________ 模型参数 _____________________
模型架构: liae-ud
人脸类型: f
模型分辨率: 256
自动编码器维度 ae_dims: 256
编码器维度 e_dims: 64
解码器维度 d_dims: 64
解码器掩码维度 d_mask_dims: 22
BS大小: 8
学习率lr: 5e-05
瘦化神经网络 lr_dropout: 开启
loss平滑: 开启
loss平滑强度: 2
遮罩约束训练范围: 开启
均衡侧脸训练权重: 开启
眼睛和嘴部优先: 开启
素材增强-翻转dst: 开启
素材增强-随机色调、饱和度、亮度: 0.05
素材增强-颜色转换器: rct
RG优化器: 开启
模型优化器放置于GPU: 开启
梯度剪裁: 开启
版本: V3
_____________________________________________________
设备序号: 0
设备名称: NVIDIA GeForce GTX 1060 6GB
显存大小: 4.50GB
_____________________________________________________
ICE 1.31 version by kingboy! QQ group:366893641
这个选项开启后,可以开启更大Batch Size或者模型训练参数。
我稍微试了下,在参数不变的情况下,Batch Size 可以开到原版的4倍这么大。
比如上例中的分辨率是256x256,在1060-6GB显卡上,BS居然可以开到8(原版记得只能开2)。
如果是128的分辨率,在12GB显存的显卡上,BS可以开到28,学习速度飞快。
直观感觉效率提高确实很大,不知道是不是仅这个优化器的功劳,因为作者也提到全新的训练器效率更高。
可以打开 Loss 优化器,可以使src与dst的loss总体下降曲线更平滑。
作者表示可以多训练侧脸,死亡角度,不用人工干预。
其实Loss本身并不需要太在意,训练得好不好,主要是需要人主观看成果。
参数没那么长了。
不知道能不能避免明明是开源,却衍生出来卖钱的产业链,不同人在模型参数中加入的奇怪文字。
能理解。每个人都不希望自己做出来,甚至是免费分享的东西,被别人收费卖吧……
不仅命令行加强了显示,训练预览界面也能选择更多的预览类型了。
这不用截图吧,自己用时自然看到了。
原版DFL只支持256,扩展后更加精细。
如果你不是只想玩玩而是想替换出电影级的真实,那么就得像各位大佬一样,仔细的画遮罩,足够的学习。
这部分似乎以前完全没有写,但我记得自己试过画XSeg,训练,看结果等等。
也许是我忘了,也许是确实没时间所以没咋关注。
所以遮罩是干啥用的,虽然很多文章都写了,我还是极简写一下免得自己忘了。
遮罩,蒙版,Mask,实际上就是一个区域。
通过遮罩,避开脸部的遮挡物,比如眼镜,比如麦克风,比如发型。
PS:脸部没有遮挡的,根本不需要遮罩。
画遮罩这部分网上可以查到详细的教程,不是每帧都得画,但尽量多画,特别是差异大的,画更精细,效果更好。
训练后的Xseg遮罩是有泛化性的,也就是说如果你懒得画,可以用别人的通用遮罩。
比如这位大神在这贴的分享。
当然,自己针对目标(dst)画精细的遮罩,效果会更好。
还有,遮罩文件扔进model目录就行了,既然是用别人的,合成的时候记得按x
选遮罩类型xseg-dst
啥的。
原创的,通过insightface来做识别的,我试了下仅用CPU比DFL原版快了大概5倍
以上。
PS:Roop也是用的insightface噢。
具体信息请看作者的这贴,和这贴。
我实测似乎识别率没有DFL高,好在识别几乎没错误。
不能识别的可以通过检查功能单独提出来,给DFL再识别一次就OK了。
啥是切脸,我一开始也没明白,然后才知道是识别脸部并保存成数据集的意思。
对应DFL里面就是data_dst/data_src faceset extract
功能。
更好玩的是汉语环境下都把训练叫炼丹,有意思,《地狱乐》么……
可以快速查看切脸后的角度分布情况(越亮照片越多)。
可以激活右键预览,查看每个角度段的照片情况,删除照片等。
方便我们了解数据集(主要指src)的角度分布情况,便于补充和完善,均匀数据集。
工具需要解压放置到DFL的文件夹中,才能使用。
Machine Video Editor 是一个图形编辑器,用于简化从数据收集到合成的DFL创建过程。
参考:GitHub仓库。不过官方发布包比如Windows下载在谷歌Drive。加上也需要环境,正常安装都不会成功。
所以可以参考这贴下载整合包使用。
最主要的功能是对脸部数据集的特征点,遮罩进行查看和处理。