欢迎您光临巅峰下载,海量设计资源供您办公娱乐日常所需

Stable diffusion如何用控制变量法给AI绘画测试调参?

一.
经常有同学问我:
老师,那么多采样器(sampling method)应该选哪个啊?
老师,那个高清修复的重绘幅度(denoising)应该设置多少啊?
老师,那个CFG Scale应该设置多少比较好呢?

但是这种问题,其实没有标准答案。你要一个一个去测试,找到最合适你的场景,选择适合你图像的参数,才能出最好的效果。(好像是正确的废话)
可是,一个一个去测试真的是好麻烦。老师你能不能告诉我一个标准答案?阿这…(捂脸)
好吧,谁叫我宠你们呢。
虽然不能告诉你一个标准答案,因为每个人的使用场景,模型,图像类型都是不一样的。
但我能告诉你们一个方法,让机器自己去跑,跑出来标准答案。然后双手把答案递到你面前。
这样的话,你一看,应该用哪种设置,哪个参数不就显而易见了?
没错,今天就来教大家,一个xyz plot工具的使用方法,类似于我们做实验用的控制变量法。
可以自己设置要测试的参数,然后交给机器自动测试,生成对比图。
查看对比图后,看效果,选哪个参数,设置哪个数值,不就一目了然了?
二.
下面是操作步骤:
1.打开stable-diffusion-webui,如果没有安装好的请看这里。

2.在txt2img(文生图)最下面找到script下拉框,然后选择xyz plot,然后你会发现,选中之后,下面会出现一堆的东西。

3.在prompt区域输入你要画的东西。比如
Postive prompt 正面提示词:
best quality, masterpiece, ultra detailed,
1girl, portrait, upper body,
Negative prompt 负面提示词:
nsfw, lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry长宽(width height)设置为512,768
底层模型用的是chilledReGenericV2_v11
其他是默认参数。(当然,我只是举例子,你自己随便设置都可以,反正xyz能用就行。)
4.在最下面xyz plot里面设置参数
(1)x type选择sampler(采样器),右侧点击黄色小本本图标,他就自动拉取相关所有参数。

(2)其他暂时不用动。
5.点击右上角的generate生成图片,等待生成。
(1)生成好之后,点击生成的图片

(2)查看大图,可以拖动下面的进度条查看不同的图片

(3)也可以在stable-diffusion-webui -> outputs ->txt2img-grids-日期里面找到生成的对比图,打开放大来查看。

(4)从对比图里面,我们发现,DPM fast,PLMS采样器出的图崩了,其他的表现都还行。
因此,可以推断:采样器效果其实差别不大。不要选崩了的这两个就都好。
(另外补充一下:euler a生成速度最快。一般我们生成图片建议使用dpm++SDE Karras 但是生成速度会慢一些)

三.
再来一个单因子测试,这次我们不测试东西,而是测试数值。
比如,图生图,很多人不知道dinoising的参数怎么设置。
设置太小,让画面的变化不明显,但是如果设置太大,又容易让画面变得不是自己想要的。
这时,如果用xyz单因子测试,就能知道,重绘幅度究竟是多少比较合你了。
1.就拿刚刚生成的一张图来测试。
你看这个美女微微一笑很倾城,但是如果想让她换一种悲伤的表情(我好坏),那么,denoising重绘指数应该设置多少呢?

2.把他上传到图生图img2img,然后提示词我只写了一个字:sad

2.拉到最下面,在script选择xyz plot并设置xyz参数。
X type设置为denoising,x values设置为0.1-1.0,中间用英文逗号隔开。然后点击右上角的generate生成图片。

3.查看结果图片
在图片生成区域,找到生成的对比图,我稍微排版一下给大家看。

大家可以看到,重绘幅度在0.1的时候,眉眼微微挑起,咬着嘴唇。
而0.2-0.6是悲伤的程度越来越深,眼睛闭得越来越多,嘴角向下越来越明显。(0.5以上衣服都变了)
所以,你想要她多悲伤,就设置这区间里面多大的重绘幅度。
也还可以用更细的区间去测试更小的区间,比如0.4-0.5之间从0.41-0.49这样测试。
就可以选择最好效果且最符合你需求的参数再去生成几张图,这样效率和效果就都能快速提升了。
至于0.7以后,就换了个人, 0.9和1.0的时候,和原图完全没有关系了。那么,0.7-1.0就不建议使用了。
所以,这样就很好地能测出我们要让画面改变,需要设置多大的参数了。
现在举例还只是换表情,而如果你要换脸,换衣服,换背景,这重绘幅度又是不一样的设置范围了。
大家有需要的就可以自己去测,我就不单独举例子了。
四.
xyz的用法,除了举例的单因子测试(只使用x),还能用双因子测试(x,y),当然,还有三因子测试(xyz)。
玩法很多,但是用的因子越多,组合越多,操控变得复杂,测试时间也会变长。
所以,大家如果初学,建议从单因子开始玩起,等后面需要的时候,再尝试多个因子一起测试。
就可以让你的参数设置,参数调整越来越熟练,越来越科学,效果也越来越好了。

<End>

发表评论