DeepFaceLab参数详解之亮斑杀手threshold
DeepFaceLab参数详解之亮斑杀手threshold。
threshold简介
threshold直接翻译为: 门槛; 门口; 阈; 界。其实他背后的意思是“图像二值化” ,Opencv有专门的threshold函数。在DFL中最直接体现就是,这个值越大画面越亮,值越小,画面就越暗。常用来解决鼻子上有亮斑的问题。
图像的二值化,就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的只有黑和白的视觉效果。一幅图像包括目标物体、背景还有噪声,要想从多值的数字图像中直接提取出目标物体,常用的方法就是设定一个阈值T,用T将图像的数据分成两部分:大于T的像素群和小于T的像素群。这是研究灰度变换的最特殊的方法,称为图像的二值化(Binarization)。
threshold实操
改参数位于第七步convert环节。双击启动脚本后。选择(2) hist-match ,两个回车后可以看到 Hist match threshold
这个参数的默认值为255,取值范围为0~255。 大部分情况下我们都是直接回车采用默认值。 比如我们使用DeepFaceLab官方自带的视频来训练模型,训练好之后转换完图片,合成时候后就会发现一些问题。
比如上图,在鼻子旁边有很明显的黄色亮斑。
其他图片中也有类似的情况,对于完美主义者来说,这个亮斑足以让你抓狂了吧。 更抓狂的你是不知道为什么会出现这个亮斑,更加不知道如何解决这个问题。
threshold调优
其实,要解决这个问题非常简单。只要把值调低即可。下面来对比几组图片。
threshold=255 (默认值)
threshold=245 (默认值)
threshold=238 (默认值)
对比三组图片。第一组亮斑很明显,第二组亮斑减弱,第三组亮斑消失。
上图为同一张图,threshold值不断变小的效果。 从255->238->100->0的过程中,亮斑逐渐消失,然后出现半透明遮罩,到最后全部变黑。
通过这几组图片大家对这个参数应该有非常直观的认识了。
在620版本中,threshold的默认值为255,所以比较容易出现这样情况。而在907版本中作者主动调优了,把默认值设置成了238.
threshold=238在大部分情况下都可以呈现比较好的效果。当然,你也可以适当调整这个值,获取你需要的亮度。
有空尝试一下 train LIAEF128这个模式,是全脸模式,觉得是个比较全面的换脸,但感觉有点硬,不知道哪里出错了,切脸用 S3FD 这个模式,百分之95以上都能把脸切出来,
和DF相比更像么
LIAEF换的脸更接近于dst而牺牲了src的某些特征,相似度不如DF,但表情更自然,而且在同样的素材下练到30k的时候合成的脸清晰度比DF高(原因不明)。
请问DF合成图片的时候币H128效果差很多是为什么,就是H128合成图片的时候脸部会继承素材的光泽和质感,而DF合成就不会继承
请教下脸部没绿斑,但是有一层黑色阴影是什么问题?