deepfacelab中文网

 找回密码
 立即注册(仅限QQ邮箱)
查看: 375|回复: 6

炼丹分享:dst和src素材的分辨率是否要和模型一直问题

[复制链接]

39

主题

202

帖子

2911

积分

初级丹圣

Rank: 8Rank: 8

积分
2911
 楼主| 发表于 2024-8-23 14:01:09 | 显示全部楼层 |阅读模式
星级打分
  • 1
  • 2
  • 3
  • 4
  • 5
平均分:NAN  参与人数:0  我的评分:未评



模型分辨率320 要不要把脸切到320?是512好还是320好呢?

下面我讲下我遇到的经历。

我目前有个320和224的分辨率模型在跑,分别dst和src都是512用的1套,想看下最后训练的效果,琢磨下224迭代高的话在同样的时间下会不会比320迭代次数少的情况下更清晰等。也就是同样的时间下  320和224看看同样的素材,不同的分辨率下效果哪个更好。

然后分配了显卡后发现BS大了,迭代一次的时间要好几秒,于是论坛求助后发现CPU不行,原因是因为BS设置的太高,导致素材图片进行训练的时候,要缩小到模型分辨率大小导致太吃力。跟不上显卡的速度。所以迭代时间也加长了。


于是我灵机一动,为了避免CPU压缩图片时候 我把512的素材 src和dst  又在切脸的基础上再次切脸到了模型分辨率上。
320的模型   以前512的src和dst 又再次的基础上切到了 320
224的模型   以前512的src和dst 又再次的基础上切到了 224

训练的时候确实迭代时间加快了很多,快了25%左右。  

但是问题也来了。出现了SRC和DST磨皮,DST磨皮尤为严重,如下图,且dst损失值都在1.5范围。
image.png

于是抓紧论坛求职后来经过 坛内pasanonic和8888,2位的提醒,我也幡然醒悟,素材经过2次切脸后,面部细节都被磨的少之又少,特别是dst都噪点啥的了。导致了以上问题。

所以如果你碰到到此类问题或者看到此贴有一下几点注意:

1.素材可以和分辨率一直,但是要保证图片清晰啊,不能和我一样,就这么稀里糊涂的训练了。
2.dst素材很重要,在论坛下的dst中能花点时间,删除一些错误图片,遮罩错误图片可以大大的优化训练的时间,可能花了1个小时找错误,但是训练时间能节省10天,我目前就如此啊,训练7天了,如果当初花点时间研究下也不至于浪费了如此多训练。
3.素材缩放可以用PS的缩放,可以在网上找教程,找无损缩放,甚至你切1024无损缩放到你模型大小更好,所以512不是一个标注,花时间搞得越好约完美。

当然了,还有就是想收点遮罩图,听说训练遮罩图对以后模型更有帮助,我想以后我得主播可能都带着口罩多,想问下这个有什么方法会更好么?


回复

使用道具 举报

13

主题

1049

帖子

1万

积分

高级丹圣

Rank: 13Rank: 13Rank: 13Rank: 13

积分
12735
发表于 2024-8-24 04:22:51 | 显示全部楼层
本帖最后由 seancai110 于 2024-8-24 04:27 编辑

ps缩放默认用的是cubic算法,但是dfl里面一些地方用的是lanczos算法。lanczos算法一个特点是放大效果好,但是缩小效果奇差。应该是一些历史遗留问题,或者是当年的疏忽,造成训练的时候用的都是lanczos算法,又慢效果又不好。现在切脸图一般都比模型分辨率大,所以lanczos算法就不适合了。

建议直接在代码里把dfl所有cv2用lanczos的替换成cubic。

另外,一般建议大家切图往大了切,一方面是为了以后大模型更方便;另一方面也是为了在训练的时候,缩放效果更好。512的缩放到250,肯定比320缩放到250效果好。
回复 支持 1 反对 0

使用道具 举报

40

主题

862

帖子

4717

积分

高级丹圣

Rank: 13Rank: 13Rank: 13Rank: 13

积分
4717

万事如意节日勋章

发表于 2024-8-25 10:18:26 | 显示全部楼层
seancai110 发表于 2024-8-24 04:22
ps缩放默认用的是cubic算法,但是dfl里面一些地方用的是lanczos算法。lanczos算法一个特点是放大效果好,但 ...

改哪几个文件
回复 支持 反对

使用道具 举报

13

主题

1049

帖子

1万

积分

高级丹圣

Rank: 13Rank: 13Rank: 13Rank: 13

积分
12735
发表于 2024-8-25 13:49:30 | 显示全部楼层

直接把整个dfl文件夹导入到ide里,全部查找就行。
回复 支持 反对

使用道具 举报

40

主题

862

帖子

4717

积分

高级丹圣

Rank: 13Rank: 13Rank: 13Rank: 13

积分
4717

万事如意节日勋章

发表于 2024-8-25 22:18:26 | 显示全部楼层
本帖最后由 pasanonic 于 2024-8-25 22:44 编辑
seancai110 发表于 2024-8-25 13:49
直接把整个dfl文件夹导入到ide里,全部查找就行。

拖 _internal 可以吗   傻眼了  不光 lanczos这一个命名  还有后面带 2 3 4 5的
cv2用lanczos都集中在  test.py里面

cv2.INTER_NEAREST:最近邻插值,速度最快,但质量最差。
cv2.INTER_LINEAR:双线性插值,速度较快,质量较好。
cv2.INTER_CUBIC:双三次插值,速度较慢,质量最好。
cv2.INTER_AREA:区域插值,适用于图像缩小。-版本   
cv2.INTER_LANCZOS4:Lanczos插值,速度较慢,质量最好。
cv2.INTER_LINEAR_EXACT:精确的双线性插值,速度较慢,质量最好。
cv2.INTER_MAX:最大的插值方法编号。
cv2.WARP_FILL_OUTLIERS:在变换过程中填充异常值。
cv2.WARP_INVERSE_MAP:使用逆映射进行变换。






image.png
回复 支持 反对

使用道具 举报

13

主题

1049

帖子

1万

积分

高级丹圣

Rank: 13Rank: 13Rank: 13Rank: 13

积分
12735
发表于 2024-8-25 23:49:44 | 显示全部楼层
我记得不光test有吧。反正我是直接替换了。
回复 支持 反对

使用道具 举报

0

主题

40

帖子

319

积分

初级丹师

Rank: 3Rank: 3

积分
319
发表于 2024-9-4 20:07:41 | 显示全部楼层
SRC素材缩小了会不会影响效果?
回复 支持 反对

使用道具 举报

QQ|Archiver|手机版|deepfacelab中文网 |网站地图

GMT+8, 2024-11-24 13:14 , Processed in 0.148170 second(s), 38 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表