Stable Diffusion 超分辨率放大

在使用 Stable Diffusion (SD) 生成图像时,默认分辨率通常较低,例如 512×512。如果直接放大,可能会导致模糊或失真。因此,我们需要使用 高清修复(超分辨率放大)来提高图像质量,这里提供了两种放大模式,推荐第二种方法中的模型放大

浅空间放大

操作步骤

  1. 放大的位置

    高清放大需要在 采样器(KSampler)之后、VAE 解码之前 进行。如果直接对最终图像进行插值放大,细节会模糊,甚至失真。

    VAE 解码最好只进行到一次解码,重复解码会导致图片会有一些质量方面的损伤

  2. 选择 Latent 放大

    SD 提供了两种 Latent 放大方式:

    Latent 缩放:手动输入目标分辨率,例如从 512×512 放大到 1024×1024。
    Latent 按系数缩放(推荐):输入放大倍数,如 2.0,系统自动计算分辨率,避免手动计算误差。

    正确做法

    • 在潜空间(latent space)进行放大,而非直接拉伸最终图像。
    • 放大后,需要再次进行 K 采样 以优化细节,避免模糊。
  3. 采样器的二次优化

    放大后,需要添加一个 额外的采样器,用于增强细节并防止失真。

    • 噪声强度(denoising strength)推荐设置为 0.5,保证清晰度的同时,不失去原图细节。
    • 采样步数建议比初始采样增加 10% 左右,以提升效果。
  4. VAE 解码

    在放大 + 采样完成后,最后使用 VAE 解码 将潜空间图像转换为高清输出。

对比效果

我们可以对比不同方法的效果:

  1. 直接放大最终图像(错误方法):细节丢失,画面变模糊。
  2. 正确的 Latent 放大 + 采样器优化:画面更加锐利,细节丰富。

像素空间放大(模型放大)

像素空间放大的核心是在像素空间中对图像进行高清化处理,通过加载放大模型来实现高质量的图像放大。以下是详细的操作步骤和注意事项:


操作步骤

  1. 新建节点

    • 在图像处理界面中,右键空白处,选择“新建节点”。
    • 在图像相关选项中,找到“图像放大”功能。
  2. 选择放大方式

    • 图像放大有三种常用方式:
      • 图像缩放:手动输入目标分辨率(如 1024×1024),但操作繁琐。
      • 按系数缩放:按倍数放大(如 1 倍、2 倍),但会导致图像拉伸和画面崩坏。
      • 通过模型放大:使用预训练的放大模型进行高清化处理,推荐使用。
  3. 加载放大模型

    • 选择“通过模型放大”后,连接一个“放大模型加载器”。
    • 在模型加载器中,选择合适的放大模型(如 4X、A4XU 等,常用的是 4XU)

      放大模型文件通常存放在ComfyUI_windows_portable\ComfyUI\models\upscale_models当中

    • 模型名称中的“4X”表示默认放大 4 倍。
  4. 连接图像和模型

    • 将原始图像连接到“图像放大”节点。
    • 将放大模型加载器连接到“图像放大”节点。
    • 确保节点连接正确,形成完整的工作流。
  5. 生成高清图像

    • 运行工作流,生成放大后的图像。
    • 生成的图像分辨率会显著提升(如从 1024×1024 放大到 4096×4096)

放大模型的作用

  • 模型功能:放大模型通过深度学习算法,对图像进行超分辨率重建,生成高质量的放大图像。
  • 常用模型
    • 4X:默认放大 4 倍,适合大多数场景。
    • A4XU:优化版本,细节处理更好。
    • 其他模型:根据需求选择,不同模型可能针对特定类型的图像优化。

效果对比

  • 浅空间放大 vs 像素空间放大
    • 浅空间放大:AI 生成效果较强,可能改变图像内容,适合创意性需求。
    • 像素空间放大:保留原图细节,直接高清化处理,适合需要高保真度的场景。
  • 结合使用:可以先将图像在浅空间放大,再通过像素空间放大,进一步提升分辨率和质量。