DeepFaceLab :100万迭代的整脸和全脸模型效果对比!
前几天作者连续更新,加入了整脸模型后又加入了换头模型。新的功能不断的加入,有时候反而让人无所适从。据说换头模型很强,是不是我直接跑换头模型就好了?据说整脸很强大,是不是我直接跑整脸就好了?第一个问题我还在研究,第二个问题我花了一周多时间整理素材,练模型,做对比,算是有一些结论。
下面我就来给大家对比一下整脸和全脸的效果,以及简单说一下这两者的适用场景。首先要说的是“道听途说” 最不可取,实践出真知。
下面先来看两张图片:
SAEHD 全脸(FUll_FACE)模型,迭代Iter:100万
SAEHD 整脸(Whole_FACE)模型,迭代Iter:100万。
再看两张张图:
SAEHD256 全脸(FUll_FACE) 36万
SAEHD256 整脸(FUll_FACE) 36万
上面两组实例,用的素材几乎一模一样,合成参数一模一样。唯一不一样的就是脸型(FaceType)。从这两组对比中可以获取几个信息。
1. 256像素的模型确实比128强。
2. 同样迭代的同样参数的整脸效果不如全脸。
3. 有些场景还必须整脸。
第一点,没啥好说的,我之前也做过对比。针对大头像的场景(特效镜头,高清视频的中景),256绝对比192强,192绝对比128强。针对小头像的 场景,其实他们之前的差异不大。
第二点,不知道是什么原因,无论是我从happy哥那里拿到的高质量模型,还是我自己练的模型,都是全脸的效果比较好。同样迭代的情况下,全脸在清晰度,颜色,逼真度的方面都要好些。至于为啥会这样,我也不确定,可能是素材需要调整,也肯能是参数需要调整,也可能是需要更多迭代。
更新一下:后来我又拿到了一个SAEHD192 整脸(Whole_FACE)300万,然后调整了一下合成参数。突然感觉真香,真香。这清晰度,这肤色,棒棒滴。从这个可以简单的推导出一个结论,可能整脸模型需要更高的像素,更多的迭代。同时不同脸型(FaceType)的模型,合成参数会有一些不一样。
第三点,从我用的315版本来说,整脸有一些特性是全脸所无法取代的。比如上面的图片,虽然全脸可以很清晰,也可以做很好的融合。但是如果你想要比较全面的覆盖额头和胡子,那么必须用整脸模型。全脸和整脸的本质区别是他们换脸的时候替换的区域大小不一样。整脸替换面积更大,全脸一般只替换到眉毛上方一点点。
总的来说,如果全脸能满足的场景优先推荐全脸,国内的影视剧,各种抖音快手的小视频,全脸基本能搞定。当然,不能满足的当然得用整脸了,欧美的超清影视基本需要用这个。跑整脸的时候可能需要像素高点,推荐192起步,模型迭代也相应的多跑一些,同时记得尝试调整各种合成参数。
模型哪里求?
自己跑或者找happy哥:851296674
训练的参数能不能发一下
最近尝试出一种方法,可以最大限度的提升五官清晰度,尤其在低配置的电脑上无法训练解析度太高的模型,主要方法就是训练两个模型,一个是wf(整脸),另一个是h(半脸),训练好后先用wf合成,此时五官模糊,但脸型已有大致轮廓,合成完毕将merged资料夹内的图档拷贝到上一层(data_dst)资料夹,覆盖掉原始视频图片档,然后再使用h进行第二次合成即可。
这是什么神仙操作。 wf拼命练也是可以练清楚的。
其实就像您这篇文章的实验结果,相同的跌代次数下,全脸硬是比整脸更清晰一些,拼命练也是不会改变这个结果的,原因其实就是尺寸问题,同样都是256像素的图,放得越大当然越模糊,或者反过来说,在相同大小的画布上,画一张脸跟画一整个人,肯定是画一张脸能画个更精细些。
这个操作有点意思啊,逻辑说得通,半脸管五官,整脸管轮廓。
做好的整脸dataset,可以用来训练全脸吗?还是得重做一个全脸的dataset
可以的!