在 Stable Diffusion 中有 3 个地方可以实现图片放大功能。

  1. 文生图中 Sampling method 下面的 Hires. fix (高分辨率修复);
  2. 图生图中 Script 选择 SD upscale;
  3. Extras (高清化)标签中,支持批量处理。

在这 3 个地方使用到的算法是一样的,只不过使用场景不一样。补充的放大算法存放路径为:stable-diffusion-webui\models\ESRGAN内

Lanczos

Lanczos重采样是一种数学上精确的方法,用于图像放大或缩小。它使用了一种称为 sinc 函数的数学公式,可以在保留图像细节的同时减少锯齿效应。

Nearest

最近邻插值是一种简单的图像放大方法,通过复制最近的像素值来填充新像素。这种方法速度快,但可能会导致图像出现锯齿状边缘。

BSRGAN

BSRGAN是一种基于深度学习的超分辨率生成对抗网络,用于增强图像的分辨率。它可以捕捉更多的图像细节,并生成更自然的高分辨率图像。但可能会引入噪声和伪影。

ESRGAN_4x

ESRGAN(增强超分辨率生成对抗网络)是一种先进的深度学习方法,用于将图像放大4倍。它可以生成更清晰、更真实的图像。但需要较高的计算资源。

4x-UltraSharp

基于ESRGAN做了优化模型,更适合常见的图片格式。真人模型最佳选择。(“8x_NMKD-Superscale_150000_G”色调相当偏冷一些,“8x_NMKD-Typescale_175k”,比4x的放大器皮肤噪点更多,“16xPSNR”,生图速度有点慢,效果相对于8x而言没有明显提升。)

LDSR

LDSR可能是一种局部细节超分辨率方法,用于在保留全局结构的同时增强图像的局部细节。

R-ESRGAN 4x+ 和 R-ESRGAN 4x+ Anime6BScuNET

这几个算法是ESRGAN的变体,针对特定类型的图像(如动漫)进行了优化,以实现更好的放大效果。

ScuNET PSNR

ScuNET PSNR可能是一种专注于提高峰值信噪比(PSNR)的超分辨率方法,用于生成高质量的图像。但可能会缺乏感知质量。

SwinIR_4x

SwinIR是一种基于Swin Transformer的图像超分辨率方法,可以将图像放大4倍。它使用了最新的Transformer架构,以实现更精确的图像放大。但需要较高的显存。

算法适用类型

放大算法 照片 绘画 动漫/动画
LDSR 非常慢,但很适合与照片 随机噪声过多 较好,但仍有噪声
BSRGAN 不错,轻微锐化,不太严重 还行,可能过于平滑 还行,不如 R-ESRGAN 更好
ESRGAN_4x 超级清晰,但可能有点失真 颗粒感太强 糟糕,比非AI算法还差
R-ESRGAN-General-4xV3 类似 BSRGAN,但有点太模糊 同上 不如 R-ESRGAN-Anime
R-ESRGAN-General-WDN-4xV3 更接近 BSRGAN 质感和清晰度都很好 不如 R-ESRGAN-Anime
R-ESRGAN-AnimeVideo 不适合 同上 动漫第二佳,Anime6B 更好
R-ESRGAN-4x+ 基本等同于 BSRGAN 比 BSRGAN 质感好点 基本等同于 BSRGAN
R-ESRGAN-4x±Anime6B 不适合 不适合 最适合
ScuNET-GAN 太模糊 太模糊 一般
ScuNET-PSNR 太模糊 太模糊 太垃圾
SwinIR_4x 不行 不如 General-WDN 太垃圾