查看: 85|回复: 14

[Stable Diffusion 疑难杂症] CFG、采样方式、高清修复 ...

[复制链接]

4

主题

9

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2023-6-30 14:33:01 | 显示全部楼层 |阅读模式
注:本文许多数据和内容引用自 Youtube @ siliconthaumaturgy7593
"Stable Diffusion is more art than science." -- SiliconThaumaturgy
1. 如何选择提示词相关性(CFG)?





大部分情况下,CFG 在 4-15 中表现良好

  • 低 CFG:图片糊、看起来雾蒙蒙的,色彩对比弱,构图也比较差,总之,图片结构未定型
  • 高 CFG:图片对比度非常强,色彩非常饱和,甚至会过饱和,颜色和结构失调



  • 采样方式:大部分采样方式中,采样步数(Sampling Step)的增加能够对冲高 CFG 带来的坏处,甚至在特定情况下能有很好的辅助效果
  • 其他:图片质量和 CFG 没有明确关系,同时受画风和对象影响
2. 如何选择采样方式(Sampler)?



SiliconThaumaturgy 将采样算法分为三大组和一个特殊类:

  • 大部分采样方法的结果相似度高
  • 组1:

    • 组1 和 组1b 通常结果类同,但 组1b(也就是后缀为 Karras)可能会有不同的结果
    • DDIM 比较特殊,有时像 组1,有时像 组1b

  • 组2:

    • 采样方法间差异稍大
    • 组2a 和 组2b 的结果通常差别明显,但有时能有相同结果
    • Euler a 和 DPM Adaptive 与 DDIM 类似,结果飘忽不定(都可能与 2a/2b 类似,也有可能是额外情况)

  • 组3:

    • 大部分情况都结果特殊,偶尔能有和其它采样方法相似的结果

  • DPM Fast 自己玩
2a.“收敛”(Convergence,文中指采样方法在 150 步内时多采一步的结果是否差异不大)



结果大致可以分成这三类:

  • 收敛

    • 组1 和 组1b 的采样方法都收敛
    • DPM Adaptive 只有一种结果所以是收敛的
    • DPM++ SDE Karras 的结果收敛

  • 不收敛

    • 除了 DPM Adaptive 的 组2 都不收敛
    • DPM Fast 不收敛

  • DPM++ SDE 只能算“有些收敛”
2b. 处理速度(每个采样步骤需要的算力,非总步数)




reddit 社区用户最早贡献的想法

结果分为两类:快与慢

  • 慢组需要的步数是快组的两倍
  • DPM Adaptive 的快慢只取决于 CFG
2c. 采样方式与采样步数建议(SiliconThaumaturgy)




  • (开头分类的)组1 采样方式的“收敛”步数非常接近
2d. 选择建议


  • 组1 产图的平均结果质量最差,其中 Heun 处理速度很慢,PLMS 需要很多步
  • 结果来说,采样步骤要考虑许多面

    • 例如,Heun 看起来很锐利,Euler 看起来很柔和
    • 不过,最重要的差异在背景

  • 建议:组1 选一个,组1b 选一个



  • SiliconThaumaturgy 推荐:

    • 组1——DPM++ 2M
    • 组1b——DPM++ 2M Karras
    • Heun 看取舍

  • 作者推荐:

    • 人像可以额外采用 DPM++ SDE Karras,Euler a,DPM Adaptive

3. 如何选择放大算法(Upscaler)?



Non-latent(作者推荐:最邻近(整数缩放)、SwinIR 4x、Lanczos),1.5x-3x 配 0.3-0.7 差不多

  • SiliconThaumaturgy 不建议使用 Latent

    • 需要至少 0.4-0.5 重绘幅度(denoising),效果也没有多好

  • 重绘幅度太高会出现额外肢体/身体部位,放大倍率(upscaling factor)加速这个过程


4. 如何使手指、脚趾骨骼更逼真?


  • 目前比较简单的方式是通过 ControlNET 里面的 Canny(边缘检测)+ Openpose 一定程度上控制肢体的范围,后期可以定向通过 inpaint 来修改(记得下载 inpaint 专用 .ckpt 模型)
  • Twitter @ toyxyz3 用的方式是额外在 Blender 上做一个简易的手指形状,然后使用 ControlNet 的深度检测,这个门槛高一些
  • 成本更高的可以直接使用 3D 骨骼模型绘制,或者录制个人的动作捕捉
5. 疑难杂症综合帖(未完待续)


  • 如何选择模型?
  • 图片太糊怎么办?
  • Textual Inversion 还是 LoRA?
  • LoRA 效果为什么不明显?
  • 如何修改图片(比如肢体重绘)?
  • 为什么我的角色没有因提示词改变?
  • 为什么我的图长出好几个身体部位?

回复

使用道具 举报

2

主题

4

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-6-30 14:33:49 | 显示全部楼层
写得挺好,解决了我的一些疑惑,希望作者继续更新[爱]
回复

使用道具 举报

1

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2023-6-30 14:34:37 | 显示全部楼层
Nearest算法个人觉得相当糟糕,画面十分像素化。Lanczos和Nearest同属插值算法,效果没比Nearest好多少,我同样不推荐。
回复

使用道具 举报

2

主题

5

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-6-30 14:35:32 | 显示全部楼层
硬核直观,感谢作者救我于水火,等待更新[红心]
回复

使用道具 举报

2

主题

5

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-6-30 14:36:18 | 显示全部楼层
坐等更新,及时雨[大笑]
回复

使用道具 举报

3

主题

6

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-6-30 14:36:52 | 显示全部楼层
你推荐哪个?
回复

使用道具 举报

1

主题

7

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2023-6-30 14:37:04 | 显示全部楼层
真人esrgan_4x,动画anime6B,懒人就R-esrgan 4x+
回复

使用道具 举报

4

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2023-6-30 14:37:35 | 显示全部楼层
谢谢分享[赞]
回复

使用道具 举报

1

主题

8

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-6-30 14:37:45 | 显示全部楼层
谢谢
回复

使用道具 举报

1

主题

6

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-6-30 14:38:35 | 显示全部楼层
图跑出来颜色很淡,图片看着很旧怎么办?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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