当前位置: 首页 > article >正文

Stable Diffusion WebUI 生成参数:高清修复/高分辨率修复(Hires.fix)

在这里插入图片描述

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。

大家好,我是水滴~~

在本篇文章中,我们将深入探讨 Stable Diffusion WebUI 的一个引人注目的生成参数——高分辨率修复(Hires.fix)。我们将逐一解析这一功能的要点,包括推荐的绘图分辨率、高分辨率修复的参数设置,以及通过生动的案例演示来展现其实际效果。

希望能对你有所帮助!

文章目录

  • 推荐分辨率
    • SD1.5 模型
    • SDXL 模型
  • 高分辨率修复
    • 放大算法
    • 重设迭代步数
    • 重绘幅度
    • 放大倍率、将宽度调整到、将高度调整到
  • 案例演示
    • 生成参数
    • 生成原图(抽卡)
    • 高清修复(1K)
    • 高清修复(2K)


推荐分辨率

在 Stable Diffusion 的模型中,最常用的是 SD1.5 和 SDXL 两个版本。我们知道,SD1.5 模型是在 512px768px 下进行训练,而 SDXL 是在 1024px 下训练的。所以我们出图时的尺寸尽量不要超过这个分辨率,否则可能会让整体画面失去控制。

比如,下图出现了两个头:

在这里插入图片描述

下面是推荐的一些分辨率,可以根据你需要的宽高比例来选择:

SD1.5 模型

  • 1:1(方形):512×512、768×768
  • 3:2(横向):768×512
  • 2:3(纵向):512×768
  • 4:3(横向):768×576
  • 3:4(纵向):576×768
  • 16:9(宽屏):912×512
  • 9:16(高的):512×912
  • 9:20(高的):346×768

SDXL 模型

  • 1:1(方形):1024×1024、768×768
  • 3:2(横向):1152×768
  • 2:3(纵向):768×1152
  • 4:3(横向):1152×864
  • 3:4(纵向):864×1152
  • 16:9(宽屏):1360×768
  • 9:16(高的):768×1360
  • 9:20(高的):512×1138

高分辨率修复

那么我们如何生成更高尺寸的图片呢,这里我们使用的是“高分辨率修复(Hires.fix)”:

在这里插入图片描述

点击“三角号”可以展开面板:

在这里插入图片描述

放大算法

放大算法(Upscaler)是一种用于增强图像分辨率或尺寸的技术。在 Stable Diffusion 中,放大算法旨在将低分辨率的图像无损或尽可能少地损失细节地放大到更高的分辨率。这通常涉及到复杂的数学和机器学习技术,以确保放大后的图像在视觉效果上尽可能接近原始高清图像。

下面列出了18种放大算法:

Latent
Latent (antialiased)
Latent (bicubic)
Latent (bicubic antialiased)
Latent (nearest)
Latent (nearest-exact)
Lanczos
Nearest
DAT x2
DAT x3
DAT x4
ESRGAN_4x
LDSR
R-ESRGAN 4x+
R-ESRGAN 4x+ Anime6B
ScuNET GAN
ScuNET PSNR
SwinIR 4x

这些放大算法各有优缺点,我们不过多介绍,对于新手而言,这里只使用两个即可:

  • R-ESRGAN 4x+ Anime6B:绘制二次元漫画风格时使用。
  • R-ESRGAN 4x+:绘制其它风格时使用。

重设迭代步数

重设迭代步数(Hires steps)为我们进行高清修复时使用的迭代步数,设置为零时则使用默认步数。这个参数一般不需要调整,保持零即可。如果调整也需要配合重绘幅度进行.

重绘幅度

重绘幅度(Denoising strength)在 Stable Diffusion WebUI 中是一个 0~1 的值,值越高重绘幅度越大,也就是与原图的差距就越大。当设为0时,重绘后的图片没有任何变化;当设为1时,重绘后的图片几乎是另一张图。那么我们该如何选择呢?

我们在即保持原图不要有太大变化,又要增强图片的细节,通常这里选择 3~5 之间即可。

放大倍率、将宽度调整到、将高度调整到

放大倍率(Upscale by)指我们希望将原图的尺寸放大多少倍,默认为2。通常我们放大两倍即可,更高的倍数也更吃显存。

将宽度调整到(Resize width to)、将高度调整到(Resize height to)可以让我们自定义宽度和高度,它们不可以与放大倍率同时使用。

案例演示

下面将演示生成手机壁纸的过程:先使用低分辨率生成多张原图,然后选择满意的图片进行高清修复。

下面案例中,先生成了一张1K的图,然后生成了一张2K的图,可以对比看下效果。

生成参数

模型:DreamShaper(梦想塑造者)

分辨率:346×768

提示词:

masterpiece, best quality, 1girl, (colorful),(delicate eyes and face), volumatic light, ray tracing, bust shot ,extremely detailed CG unity 8k wallpaper,solo,smile,intricate skirt,((flying petal)),(Flowery meadow) sky, cloudy_sky, moonlight, moon, night, (dark theme:1.3), light, fantasy, windy, magic sparks, dark castle,white hair

负面提示词:

paintings, sketches, fingers, (worst quality:2), (low quality:2), (normal quality:2), lowres, normal quality, ((monochrome)), ((grayscale)), skin spots, acnes, skin blemishes, age spot, (outdoor:1.6), backlight,(ugly:1.331), (duplicate:1.331), (morbid:1.21), (mutilated:1.21), (tranny:1.331), mutated hands, (poorly drawn hands:1.5), blurry, (bad anatomy:1.21), (bad proportions:1.331), extra limbs, (disfigured:1.331), (more than 2 nipples:1.331), (missing arms:1.331), (extra legs:1.331), (fused fingers:1.61051), (too many fingers:1.61051), (unclear eyes:1.331), lowers, bad hands, missing fingers, extra digit, (futa:1.1),bad hands, missing fingers, bad-hands-5

生成批次:9

其它参数:默认

生成原图(抽卡)

先用低分辨率(346×768)生成 9 张图片,将这些图片做为原图。这个过程很多人叫做“抽卡”。

在这里插入图片描述

我们可以从这 9 张图片中选择一个满意的图片,然后进行高清修复。

高清修复(1K)

首先在图片预览区选中要高清修复的原图,点击“绿色循环”图标来获取随机种子,这时【随机种子】框中内容会变成该图的随机种子。

在这里插入图片描述

选中的原图:

在这里插入图片描述

然后选中【高分辨率修复】,放大算法选择【R-ESRGAN 4x+】,【重绘幅度】设为 0.4,【放大倍数】设为 2,表示放大两倍。(注意:生成批次别忘了改回 1)

设置好后点击【生成】按钮:

在这里插入图片描述

生成的图片像素为 692×1536,约为1K:

在这里插入图片描述

高清修复(2K)

效果还可以,我们再增加些尺寸,这次直接将宽度设为 1024,然后点击【生成】按钮:

在这里插入图片描述

生成的图片像素为 1024×2272,约为2K:

在这里插入图片描述

可以看出,生成的图片越来越清晰、细腻。


http://www.kler.cn/a/274551.html

相关文章:

  • 【NLP 16、实践 ③ 找出特定字符在字符串中的位置】
  • tslib(触摸屏输入设备的轻量级库)的学习、编译及测试记录
  • malloc 分配大堆块(128KB)的一次探索
  • 【IoTDB 线上小课 10】为什么选择 IoTDB 管理时序数据?
  • 如何使用 WebAssembly 扩展后端应用
  • linux zip unzip 命令的使用
  • web前端之不一样的下拉菜单、不选中第一个元素的样式效果、伪类排除第一个元素、符号选择器、hover、not、first、child
  • 【AIGC调研系列】MetaGpt与AutoGpt相比有哪些优势和劣势
  • 微信小程序项目实战遇到的问题
  • 使用ES检索PDF等文档的全栈方案之前端demo(end)
  • Kafka整理-Kafka与传统消息队列系统(如RabbitMQ, ActiveMQ)的区别是什么?
  • Rust 中的 Vec<u8> 类型
  • 【2024.3.19练习】统计子矩阵
  • FFmpeg-- c++实现:音频流aac和视频流h264封装
  • 机器人离散化阻抗控制
  • 【源码&教程】基于GAN的动漫头像生成系统
  • Word为图表设置图注并在图表清单中自动生成
  • 解决由于历史原因解析tflite失败的问题
  • 一款非常流行的数字音乐工作站软件FL Studio for Mac 21.2.3.3586中文版新功能特色
  • uniapp rich-text组件在苹果手机上最多显示两行样式失效
  • 课时69:流程控制_for循环_for (())案例
  • 10 Internet基本服务(3)
  • VMware的安装和Ubuntu的配置安装
  • 奥特曼剧透GPT-5,将在高级推理功能上实现重大进步
  • Java-Java基础学习(2)-网络编程-TCP-UDP
  • Spring Boot 自动化单元测试类的编写过程