跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

AI 绘画 Stable Diffusion 高清放大方法与工作流详解

详细解析了 Stable Diffusion 中多种高清放大技术,包括文生图高清修复、后期处理缩放、图生图放大、Ultimate SD upscale、Tiled Diffusion 以及 StableSR 等方法。文章对比了各方案的优缺点,提供了具体的参数设置建议和推荐工作流,并补充了显存溢出、接缝处理等常见问题的解决方案,旨在帮助用户根据硬件条件选择合适的放大策略以获得高质量的高分辨率图像。

路由之心发布于 2025/2/6更新于 2026/7/2036 浏览
AI 绘画 Stable Diffusion 高清放大方法与工作流详解

AI 绘画 Stable Diffusion 高清放大方法与工作流详解

本章概述

在 Stable Diffusion 中,当我们想要得到一张高分辨率且具有细节特征的图片时,需要使用图片放大算法来帮助我们实现。本文主要概述在 SD WebUI 中常用的高清修复方法以及不同方法的区别和应用场景,并给出推荐的工作流,用户可以根据自己的硬件情况和需求选择适合的方法。

几种不同高清修复方法

下面几种方法的测试统一是在 SD WebUI 界面,512*512 基础分辨率,20 步迭代步数,Restart 采样方法下进行。提示词如下(适用于真人图片的起手式):

正面提示词:

best quality, masterpiece, (photorealistic:1),ultra high res,highres, illustration. media, delicate,8k wallpaper,soft light,official art, (realistic:1.2),1girl,

负面提示词:

EasyNegative, paintings, sketches, ugly, 3d, (worst quality:2), (low quality:2), (normal quality:2), lowres, normal quality, ((monochrome)), ((grayscale)), skin spots, acnes, skin blemishes, age spot, manboobs, backlight,(ugly:1.3), (duplicate:1.3), (morbid:1.2), (mutilated:1.2), (tranny:1.3), mutated hands, (poorly drawn hands:1.3), blurry, (bad anatomy:1.2), (bad proportions:1.3), extra limbs, (disfigured:1.3), (more than 2 nipples:1.3), (more than 1 navel:1.3), (missing arms:1.3), (extra legs:1.3), (fused fingers:1.6), (too many fingers:1.6), (unclear eyes:1.3), bad hands, missing fingers, extra digit, (futa:1.1), bad body, double navel, mutad arms, hused arms, (puffy nipples, dark areolae, dark nipples, rei no himo, inverted nipples, long nipples), NG_DeepNegative_V1_75t, pubic hair, fat rolls, obese, bad-picture-chill-75v,(without clothes)

一、文生图高清修复

在文生图的界面里,我们可以在一开始就指定将图片进行放大。打开高清修复后,会看到以下参数设置。

高清修复参数界面

关于这里的放大算法,比较推荐使用以下几种(其中 Anime6B 一般用于二次元风格):

  • 4x-ultrasharp: 需要额外下载,建议放在 sd/models/ESRGAN 目录下。
  • R-ESRGAN 4x+: 通用性较好。
  • UltraSharp: 细节增强明显。

以下是这几种放大算法跑出来的效果图对比,可以看出其实差距都很小,对于不同风格的结果会有所区别。对于细节把握要求较高的用户,可以尝试使用 XYZ 脚本跑出最适合的参数。

放大算法效果对比

二、后期处理缩放倍数

这个功能经过测试,对于图片细节的处理不是太理想。不过可以通过其他方法先将图片修复到一定程度后再使用该功能,因为后期处理速度很快,且可以无限制扩大尺寸。

比如下图,未经过处理和经过处理后的结果对比:

处理后效果对比

那后期处理这块是不是没有用了呢?也不尽然,这里一般可以用来处理照片的裁剪或老照片修复。

三、图生图放大倍数和几个 Upscale 脚本

方法一:放大倍数

来到图生图界面,缩放模式选择仅调整大小,这里我们可以修改重绘尺寸或者直接指定重绘尺寸倍数。需要注意的是,因为是基于原图进行处理,所以这里固定好 seed 值以及降低重绘幅度。

图生图放大设置

刚刚那张照片的处理结果如下:

图生图放大结果

方法二:使用 Sd upscale

打开脚本我们选择 upscale。打开以后看到以下几个参数选项,upscale 是将一张图片分为多个区块然后进行分别放大,最后再组合起来。

这里的分块重叠像素宽度是用来避免最终成像会有明显的接缝,因为是分块绘制嘛,最后还需要拼接的。一般维持默认即可。不要忘了选择放大算法,否则不会生效。

Upscale 脚本设置

这个方法现在基本也被淘汰了,因为可能出现一些未知的情况。为什么会出现这种情况呢?因为它是分区块进行放大的,每个区块就可能按照 AI 自己的想法加入一些奇奇怪怪的玩意,结果就不可控了。虽然我们减少区块的大小,但最终的结果可能还是难以预料的。

Upscale 异常示例

方法三:使用 Ultimate SD upscale

该方法是 Sd upscale 的升级版,也需要额外下载,在扩展中搜索 Ultimate 就可以看到了,安装后记得重启 UI 界面。 来到图生图界面,使用的还是之前的照片参数,降低重绘幅度和固定种子。然后在脚本中找到 Ultimate SD upscale。

Ultimate SD upscale 设置

放大前与放大后的效果对比显示,效果还不错。在这个脚本里涉及一些参数,有时候需要根据图片的最终成像来进行调整,具体说明如下:

  1. Target size type: 定义最终图像的大小来源。
    • From img2img settings: 使用默认的 img2img 宽和高设置。
    • Custom size: 自定义宽高设置,最大值是 8192。
    • Scale from image size: 以初始图像大小为基础进行缩放。(大多情况下直接使用这个)
  2. Redraw: 图像重新绘制的设置。
    • Linear: 所有小块逐个、逐行逐列地处理。
    • Chess: 所有小块按棋盘模式处理,这样可以减少接缝产生的几率。(常用选项)
    • None: 禁用重新绘制。
  3. Upscaler: 在重新绘制之前放大图像。推荐使用 ESRGAN 来增强现实感的图像,对于其他的图像推荐使用 R-ESRGAN 4x+。也可以使用 4x-ultrasharp。
  4. Type: Tile width/height 要处理的小块的宽和高。对于 2k 图像,512px 通常就够了。
  5. Padding: 在处理一个小块时,会考虑多少像素的邻近小块。
  6. Mask blur: 用于小块蒙版的模糊程度。如果你看到接缝,可以适当调整这个值。
  7. Seams fix: 对于结果图像中可见的网格,通常不需要使用它,因为它只是另一种重新绘制方法。
    • Bands pass: 主要处理接缝(行和列),需要的时间比较短。
    • Half tile offset pass: 与重新绘制相似,但有一半的小块偏移。
    • Half tile offset + intersections pass: 先运行 Half tile offset pass,然后对交叉点进行额外的处理。

这个脚本也可以搭配 ControlNet 的 tiled 进行使用,细节会更丰富些。

Ultimate SD upscale 结合 ControlNet

四、Tiled Diffusion 脚本

该脚本需要另外下载,一般搭配 Tiled VAE 一起使用。如果没有下载的童鞋可直接在扩展中搜索下载。下载后可在文生图和图生图中查看到。

放大的话一般先在文生图中生成一张满意的图片,然后发送到图生图中。不要忘记降低重绘幅度和固定种子。

Tiled Diffusion 启用

我们打开脚本,然后点击启用,关于这里的参数设置先保持默认。不要忘记选择放大算法。对于显存较大的同学可以将 Tiled Diffusion Latent tile 改为 8,这样处理的速度会快很多。

Tiled Diffusion 参数优化

这里我们放大两倍,点击生成。效果如下:

Tiled Diffusion 结果

其实为了细节的更好处理,我们可以在这里再加入 ControlNet tile,效果会更好。因为 CN tile 往往会产生更多的细节,MultiDiffusion 会更多的修饰原图而缺少足够的细节。两者的适当结合会产生非常好的效果。

ControlNet Tile 结合效果

可以看出来,人物的真实感更加强烈,且增添了一些细节。

上面的图像我们是在默认的参数下生成的,其实官方有给一些推荐的参数设置,具体如下:

  • Denoising Strength >= 0.75
  • Method = Mixture of Diffusers, Overlap = 8
  • Noise Inversion Steps >= 30
  • CN Tile preprocessor = tile_resample, downsampling rate = 2

具体修改后的参数如下(需要注意的是 batch size 这个参数,如果你的显存比较小,还是默认 1 吧):

推荐参数设置

设置为推荐参数后,我们再生成结果:

最终生成结果

由于篇幅原因,这里不再过多阐述,如果你对还想了解这些参数和其他参数的具体含义,可以查阅官方文档。

五、Diffusion + StableSR

高清放大算法的后起之秀,由开源社区开发。需要额外下载,可在扩展中选择从地址下载:https://github.com/pkuliyi2015/sd-webui-stablesr.git

这个脚本的使用还需要几个额外的模型:

  1. 在 HuggingFace 上下载模型文件,下载完成后放入 sd 的 Stable-diffusion 目录下。
  2. 下载 StableSR 模块的模型文件,下载地址为:https://huggingface.co/Iceclear/StableSR/blob/main/webui_768v_139.ckpt
  3. 下载配置 VAE 文件,下载下来后放在 sd 目录/models/VAE 目录下。
  4. 官方推荐该脚本和 Tiled Diffusion 一起使用,这样速度更快,不容易 OOM(内存溢出)。所以我们需要安装 Tiled Diffusion 插件。

到这里我们就安装好了,我们来使用一下它。来到图生图界面,设置好基础参数信息。需要注意的是这个基础参数的设置和我们前面的方法有所区别,这也是官方推荐的。选择我们刚刚下载的 checkpoints 模型和配套 VAE。

输入正面词(不输也行)和负面词。

配置脚本参数:官方推荐的参数配置如下:如果生成图像尺寸 > 512,我们推荐使用 Tiled Diffusion & VAE,否则,图像质量可能不理想,VRAM 使用量也会很大。

这里是官方推荐的 Tiled Diffusion 设置:

  • 方法 = Mixture of Diffusers
  • 隐空间 Tile 大小 = 64,隐空间 Tile 重叠 = 32
  • Tile 批大小尽可能大,直到差一点点就炸显存为止。
  • Upscaler 必须选择 None。

下图是 24GB 显存的推荐设置。对于 4GB 的设备,只需将 Tiled Diffusion Latent tile 批处理大小改为 1,Tiled VAE 编码器 Tile 大小改为 1024,解码器 Tile 大小改为 128。 SDP 注意力优化可能会导致 OOM(内存不足),因此推荐使用 xformers。 除非你有深入的理解,否则不要改变 Tiled Diffusion & Tiled VAE 中的其他设置。这些参数对于 StableSR 基本上是最优解。

StableSR 参数设置

最终成像如下,可以看到细节感真的不错哈,一些细节可以再做调整,如果需要更丰富就把放大倍数再调大些:

StableSR 最终效果

六、几种方式的优缺点对比

方法名优点缺点
文生图高清修复图片生成细节良好、操作简便生成速度一般,占用较大显存
后期处理生成速度很快,操作简便几乎 0 重绘,对于细节的完善不足
图生图放大倍数生成速度很快,操作简单,细节良好生成图片细节有限
图生图 Upscale 脚本生成速度中等,操作简便容易生成过多不需要的画面,目前已基本废弃
图生图 Ultimate 脚本生成速度中等,细节良好,可搭配 cn tile生成的结果具有一定的随机性,需要对参数有一定了解,进行细微调整
Diffusion+StableSR几乎完全忠实于原图,细节最佳,最大支持放大 8K操作起来很麻烦,需要下载一些额外的模型,然后速度也并不快
Diffusion+VAE+cn细节绝佳,最大支持放大 8K生成速度慢,可能会出现一些不需要的细节(可做调整)

七、推荐方案和工作流

对比了这些高清放大算法后,一般我们可以选择下面几个。其他方法其实经过一些参数的调整也可以生成不错的效果,不过为了稳定和节省时间,我们可以直接选择下述列出的方法。

  1. 直接在文生图中开启高清修复(显存大的直接开启也无所谓啦) -> 图生图继续利用 2、3 方法放大(可选) -> 后期处理继续放大(可选)
  2. 在文生图中抽到好卡 -> 发送到图生图 -> 固定种子和降低重绘幅度 -> 打开 Tiled Diffision、Tiled Vae -> 打开 controlnet,选择 tile -> 生成结果 -> 后期处理继续放大(可选)
  3. 在文生图中抽到好卡 -> 发送到图生图 -> 修改模型和 vae -> 重新填写正反面提示词 -> 配置 Tiled Diffision、Tiled Vae、StableSR -> 生成结果 -> 后期处理继续放大(可选)

几种方法针对不同图片的表现会有所区别,可以都尝试一下,没有最好的方式,只有最适合的方式。

八、注意事项与常见问题

在进行高清放大时,可能会遇到以下问题:

  1. 显存溢出 (OOM): 这是最常见的问题。解决方法包括减小 Tile 大小、降低 Batch Size、使用 xformers 优化、或者升级显卡驱动。如果显存较小,优先使用 Tiled Diffusion 配合较小的 Tile 设置。
  2. 接缝问题: 在使用分块放大时,图片边缘可能出现明显的线条。解决方法是增加 Padding 值,或者使用 Seams Fix 功能中的 Bands pass 模式。
  3. 细节丢失: 如果放大后人物面部崩坏,可能是重绘幅度 (Denoising) 过高。建议将重绘幅度控制在 0.3-0.5 之间,或者使用 StableSR 等专门针对超分辨率优化的模型。
  4. 生成速度慢: 高清放大计算量大。建议使用 CUDA 加速,并确保安装了正确的 PyTorch 版本。如果速度过慢,可以尝试降低输出分辨率或使用更快的放大算法如 4x-UltraSharp。

总结

本文详细介绍了 Stable Diffusion 中常用的高清放大方式和常用工作流,涵盖了从基础的 Hires Fix 到高级的 Tiled Diffusion 及 StableSR 等多种技术路径。通过合理选择放大算法和参数配置,可以有效提升生成图片的分辨率和细节表现。希望这些内容能帮助你更高效地进行 AI 绘画创作。

目录

  1. AI 绘画 Stable Diffusion 高清放大方法与工作流详解
  2. 本章概述
  3. 几种不同高清修复方法
  4. 一、文生图高清修复
  5. 二、后期处理缩放倍数
  6. 三、图生图放大倍数和几个 Upscale 脚本
  7. 方法一:放大倍数
  8. 方法二:使用 Sd upscale
  9. 方法三:使用 Ultimate SD upscale
  10. 四、Tiled Diffusion 脚本
  11. 五、Diffusion + StableSR
  12. 六、几种方式的优缺点对比
  13. 七、推荐方案和工作流
  14. 八、注意事项与常见问题
  15. 总结
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Spring Boot 自动配置原理与实战详解
  • PostgreSQL 18 本地安装与配置指南
  • Linux 网络基础:协议分层与传输流程
  • 前端使用 GraphQL 客户端的实战选择
  • Claude Code 与 ChatGPT、Copilot 的本质区别
  • HarmonyOS 开发核心知识点总结(一)
  • SpringBoot 整合 Neo4j 图数据库实战指南
  • DeepSeek-R1 大模型基于 MS-Swift 框架的部署、推理与微调实践
  • 前端 Vibe Coding:从原型到生产的全流程实践
  • Linux 系统安装 MinIO 详细教程
  • Cookie 与 Session:Web 用户状态管理详解
  • 基于 SpringBoot+Vue 的网上摄影工作室管理系统设计与实现
  • Qwen2.5-7B-Instruct LoRA 微调实战:基于 LLaMA-Factory 单机单卡 V100
  • 柔性电子中的 Python 智能控制:基于微控制器的可穿戴设备开发实战
  • C++ STL 容器详解:map 与 set 原理及实战
  • 数据结构:二叉树基础概念与链式存储实现
  • 鸿蒙金融理财全栈项目:生态合作、用户运营与数据变现优化
  • 滑动窗口算法实战:水果成篮与最小覆盖子串
  • Qwen-Image-Edit-2511-Multiple-Angles LoRA 多角度 AI 图像生成指南
  • SpringAI Agent 开发实战:基于 Skills 的代码评审实践

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online