前言

在 SD 中有几种可以放大图片提高画面分辨率的方法,文生图界面中的 Hires.fix 高清修复功能是我们最常用的一种。可以对比一下以下两张图片,相同参数下只改变高清修复是否开启,可以看到经过高清修复后画面效果有显著的改善,细节更多更完善。

未经过高清修复

经过两倍高清修复

文生图 Hires.fix 高清修复

在采样器下面有三个开关,面部修复,无缝贴图和高分辨率修复。这里的高分辨率修复就是我们常用的 Hires.fix 功能,因为底模通常使用 512 512 或者 768768 的图片进行训练,所以一般我们生成图片的时候通常采用这个数值,此时高清修复可以显著提高成图质量,推荐在显存足够的情况下尽可能开启。

:::info Hires.fix 的原理是先生成一张低分辨率图像,在此画面基础上结合文本提示词进一步添加画面细节,从而提高分辨率,达到放大图像的目的。

:::

勾选高清修复后下面会有六个参数

放大算法推荐

SD 默认提供多种高清化算法,GAN 就是生成对抗网络,这里有空再做详细的比对,可以根据自己的喜好进行尝试,当前提供一些推荐算法:

:::info

  • 一般照片生成使用推荐:ESRGAN_4x, R-ESRGAN 4x+, SwinIR_4x 算法。
  • 针对二次元相关图片推荐: R-ESRGAN 4x+ Anime6B 是针对动漫风格图片优化过的算法,效果较好。

:::

🌟 文生图: Hires.fix 高分辨率修复 - 图4

采样步数

:::info 一般设置 20 步足够,如果设置为 0 表示和图像原始生成时采用相同的步数

:::

🌟 文生图: Hires.fix 高分辨率修复 - 图5

重绘强度

:::info 重绘强度用来调整原始低分辨率图片对重新生成图片的影响程度:

  • 当设置为 0 时,则生成的图片和原始图片时一样的。
  • 当设置为 1 时,则生成的图片和原始图片完全不同。

如果只是为了放大安全区间在 0.3 ~ 0.5,如果想要赋予 AI 更多的发挥空间可以设置为 0.5 ~ 0.7

:::

🌟 文生图: Hires.fix 高分辨率修复 - 图6

🌟 文生图: Hires.fix 高分辨率修复 - 图7

放大倍数

:::info 放大倍率有两种设置方式:

  • 一种是将原图等比例放大到一定倍率,比如 2 倍,就是长宽都放大 2 倍。
  • 一种是将原图放大到指定数值,比如 1024 * 1024。

通常放大 2 倍即可获得不错的效果,更大的倍率需要更高的显存,最多放大 4 倍。

:::

🌟 文生图: Hires.fix 高分辨率修复 - 图8

对于低于 24 G 显存的显卡而言,开高倍率意味着爆显存:

🌟 文生图: Hires.fix 高分辨率修复 - 图9

操作小技巧

当然高清修复还是不能突破显存限制,显卡能画到多大还是只能是多大尺寸,一个比较聪明的做法是:

:::info 先在低分辨率下反复抽卡,当确定一个合适的画面之后,再固定随机种子,打开高清修复进行高分辨生成。

:::

参考视频

bilibili html5 player