(一)关于DeepFaceLab
DeepFaceLab 是一个应用机器学习进行视频中人物换脸的工具
曾经在Reddit上一个很火的开源项目Deepfake。
随着大家的惊呼,神奇女侠的换脸视频出现,然后这个项目就被各大网站给禁了。沉寂了一段时间后来国内朱茵换杨幂,加上徐锦江的海王雷神视频一出,
国内社会新闻进行了报道,个人感觉一下子在国内就火了。除了DeepFaceLab,相关的项目还有FaceSwap,OpenFaceSwap等其它作者的工具软件。
(二)必要的信息
DeepFaceLab下载网站:deepfacelab.top
(三)下载安装
具体的下载安装各方面的文章请参考上面的网站,下面主要介绍几个问题。
(四)训练时间
从零开始,一个视频要迭代上百万次才有好效果,如果不想电脑长时间挂机,可以复用别人训练过的模型,在那基础上,一两小时就能快速呈现,效果也与模型相关。
放置素材文件
需要对图片进行人工筛选。
去掉模糊的源脸部,去掉被遮挡的源脸部,等等。具体可参考英文文档或中文网站。作者写道:
99.995% 的成功或失败率都是因为糟糕的目标/源的脸部数据
所以你99.995%的时间都应该用在保证你的脸部数据是精心的准备好的。
你不能把素材一股脑全扔进去,否者结果保证令你失望,进去的是垃圾,出来的也是垃圾。src是脸部素材,dst是被换脸视频
开始训练吧
当你准备好的素材,去掉了糟糕或者识别失败的脸部,就可以训练了。
同时会显示一个训练的预览窗口,可以看到图像的偏离度越来越低。
可以在上面按回车键停止训练。
合成训练结果(到图片)
选择怎么训练的,就选择对应的合成方式。
合成的目标帧图片放在这个目录:
生成视频
生成好的目标视频在这里:
(五)不同的模型与参数(补充)
训练模型
H64 (2GB +):分辨率为64的半脸模型,适合2-3GB显存,当然质量也较低。H128 (3GB +):分辨率为128的半脸模型,适合3-4GB显存,半脸模型某些光线条件下会很糟糕。DF (5GB +):分辨率为128的全脸模型,适合5GB以上显存,有条件就可以用这个。LIAEF128 (5GB +):和DF一样,只从源到目标变形,有些时候会很怪,那么还是选DF吧。SAE (512MB +):最新最好最弹性的模型,包括其它所有模型,512MB-24GB显存都可用,参数多。训练参数
H64,H128 模型的参数:
Use lightweight autoencoder? (Y / n,:? Help skip: n):
选择一个简版的模型,如果你的显存小于4GB,这个选项就很必要。H64, H128, DF, LIAEF128 模型的参数:
Use pixel loss? (Y / n,:? Help skip: n / default):
更容易提升细节质量和去除图像颤动,请在训练至少20000次以后再打开这个选项(有模型崩溃风险)。SAE 模型的参数:
Resolution (64-256:? Help skip: 128):分辨率从64到256,16的倍数,愈大越清晰,训练也需要越长。
Half or Full face? (H / f,:? Help skip: f):半脸还是全脸。
Learn mask? (Y / n,:? Help skip: y):学习的遮罩,呃,懒得翻译了,用它就对了。
Optimizer mode? (1,2,3:? Help skip:% d):N卡的神经网络优化模式,越大需要内存越多,也会更慢。
AE architecture (df, liae, vg:? Help skip: df):神经网络结构,缺省df。
AutoEncoder dims (128-1024:? Help skip:% d):网络维度,越多越好(但是内存得够啊)。
Encoder dims per channel (21-85:? Help skip:% d):也是越多越好(但是内存得够啊)根据显卡配置吧。
Decoder dims per channel (11-85:? Help skip:% d):同上(decoder的维度)。
Remove gray border? (Y / n,:? Help skip: n):去掉灰边,我记得已经没有这个选项了啊???
Use CA weights? (Y / n,:? Help skip:% s):是否使用卷积感知权重,提高模型精度,初始化要点时间。
Use multiscale decoder? (Y / n,:? Help skip: n):是否使用多路转换decoder,获得更高精度。
Use pixel loss? (Y / n,:? Help skip: n / default):更容易提升细节质量和去除图像颤动,请在训练难以提升质量以后再打开这个选项(有模型崩溃风险)。
Face style power (0.0 … 100.0:? Help skip:% 1f.):脸部特征影响值,加速转换学习的脸部特征(有模型崩溃风险)。搞不懂先别开哦。
Background style power (0.0 … 100.0:? Help skip:% 1f.):背景特征影响值,加速转换学习的脸部特征(有模型崩溃风险)。搞不懂先别开哦。
Apply random color transfer to src faceset? (Y / n,:? Help skip:% s):源脸随机颜色转换,比上面两个更加精确。需要学习更多的源脸。
Pretrain the model? (Y / n,:? Help skip: n):预先训练模型(已经包含了的许多不同的人脸模型)转换参数
通常不变的参数:
Choose mode: (4) seamless
Seamless hist match? : y
Hist match threshold: 255
Mask mode: (1) learned,下面的参数就值得调整了:
Choose erode mask modifier [-200…200] (skip:0) :决定缩小多少目标遮罩(值<0则是扩展遮罩)
Choose blur mask modifier [-200…200] (skip:0) :决定平滑目标遮罩的值。
Choose output face scale modifier [-50…50] (skip:0) : 源脸放大还是缩小(先试试0,再根据实际情况)
Apply color transfer to predicted face? Choose mode ( rct/lct skip:None ) : 两种都试试吧。
Degrade color power of final image [0…100] (skip:0) : 降低源脸的色彩值,根据实际情况设置。如果你觉得文字枯燥无味,难以理解,也提供免费详细视频教程,一小时从小白到大神。——程序和教程由deepfacelab.top提供
暂无评论内容