【深度学习】Stable Diffusion中的Hires. fix是什么?Hires. fix原理

文章目录

  • **Hires. fix**
  • **Extra noise**
  • Upscalers

Hires. fix

https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features#hires-fix

提供了一个方便的选项,可以部分地以较低分辨率呈现图像,然后将其放大,最后在高分辨率下添加细节。换句话说,这相当于在txt2img中生成图像,通过自己选择的方法将其放大,然后在img2img中对现在已经放大的图像进行第二次处理,以进一步完善放大效果并创建最终结果。

默认情况下,基于SD1/2的模型在非常高的分辨率下生成的图像质量很差,因为这些模型只是在512px或768px的分辨率下进行训练的。通过在denoising过程中利用小图像的构图,这种方法可以避免这个问题。通过在txt2img页面上选中“Hires. fix”复选框来启用此功能。

在这里插入图片描述

小图的分辨率由使用宽度/高度滑块设置。大图的尺寸由三个滑块控制:“按比例缩放”乘数(高分辨率放大),“调整宽度至”和/或“调整高度至”(高分辨率调整)。

如果“调整宽度至”和“调整高度至”都为0,则使用“按比例缩放”。
如果“调整宽度至”为0,则从宽度和高度计算“调整高度至”。
如果“调整高度至”为0,则从宽度和高度计算“调整宽度至”。
如果“调整宽度至”和“调整高度至”都不为零,则图像将放大至至少这些尺寸,并裁剪部分区域。

在旧版本的webui中,最终的宽度和高度需要手动输入(上述最后一个选项)。在新版本中,默认是使用“按比例缩放”因子,这是默认和首选的设置。

要可能进一步增强hires.fix中的细节,请参阅有关Extra noise的注释。

Extra noise

通过设置中的额外噪音乘数为img2img和hires fix,默认为0,从随机种子添加额外噪音。在版本1.6.0中通过#12564实现,可在设置中找到img2img -> Extra noise multiplier for img2img和hires fix。正如在用户界面中所指出的,该参数应始终低于用于获得最佳结果的去噪强度。

这种调整的一个目的是在hires fix中添加额外的细节。对于一个非常简化的理解,你可以将其视为GAN放大和潜在放大的交叉。

下面的示例是一个应用了hires fix的512x512图像,使用GAN放大器(4x-UltraSharp),去噪强度为0.45。右侧的图像使用了这个额外噪音调整。

在这里插入图片描述
请注意,许多月前实施的先前设置(img2img的噪声乘数)在技术上实现了相同的效果,但正如名称中所指出的,它仅适用于img2img(而不是hires.fix),并且由于实施它时非常敏感,实际上只在1到1.1的范围内有用。对于几乎所有操作,建议使用新的额外噪音参数。

对于开发人员,还存在一个回调函数(on_extra_noise)。以下是一个使用示例,使添加噪音的区域可屏蔽。https://gist.github.com/catboxanon/69ce64e0389fa803d26dc59bb444af53

Upscalers

一个下拉菜单允许您选择用于调整图像大小的放大器类型。除了在附加选项卡上提供的所有放大器外,还有一种选项可以对潜在空间图像进行放大,这是稳定扩散内部使用的方式 - 对于一个3x512x512的RGB图像,其潜在空间表示将是4x64x64。要查看每个潜在空间放大器的效果,您可以将去噪强度设置为0,将Hires步骤设置为1 - 您将得到一个非常好的近似,即稳定扩散在放大图像上的工作方式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/247458.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp微信小程序解决绘制polygon结束时的问题

目录 一、前言 二、实现思路 三、结束标绘具体代码 1、在地图展示工具栏处判断工具按钮是否展示v-if"item.isshow" 2、data声明的工具按钮中新增结束标绘按钮 3、在按钮的点击事件中新增结束标绘的判断 4、判断绘制的线段个数是否大于等于三条,当满…

如何制定公司网络安全战略

网络安全可以保护公司的重要信息免受恶意软件和数据泄露等威胁。网络安全策略列出了您公司的 IT 系统当前面临的风险、您计划如何预防这些风险,以及如果发生这些风险该怎么办。 让本文成为您制定有效网络安全策略的一站式指南。我们将讨论网络安全风险评估以及策略…

驱动开发--内核添加新功能

Ubuntu下这个文件为开发板ls命令的结果 内核的内容: mm:内存管理 fs:文件系统 net:网络协议栈 drivers:驱动设备 arch与init:跟启动相关 kernel与ipc:任务,进程相关 向内核增…

java学习part34collect和map

153-集合框架-数组的特点、弊端与集合框架体系介绍_哔哩哔哩_bilibili 1.以前的数组 2.常用 3.Collection add只能加object,如果有基本类型会装箱 3.2集合和数组转换 3.3往集合添加对象的注意事项 4.迭代器 容易越界 一般不用 常用好用 5.for each 类似c的for( …

JDK8新特性——Stream流

文章目录 一、Stream流体验二、Stream流的创建三、Stream流中间方法四、Stream流终究方法 Stream流(也叫Stream API)。它是从JDK8以后才有的一个新特性,是专业用于对集合或者数组进行便捷操作的 一、Stream流体验 需求:有一个Lis…

基于Docker构建Python开发环境

1. Dockerfile dockerfile所在目录结构 FROM python:3.8 WORKDIR /leo RUN apt-get install -y wget RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai >/etc/timezone # ssh免密登录 COPY id_rsa.pub /leo RUN mkdir ~/.s…

深度学习设计基于Tensorflow卷积神经网络猫的品种识别系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 基于Tensorflow卷积神经网络的猫的品种识别系统可以用于自动识别猫的品种类型。下面我将为您介绍一下这个系统的基本…

【OpenGL】窗口的创建

从今天开始我们开始学习OpenGL&#xff0c;从0开始&#xff0c;当然是有C基础的前提 首先包含glad和GLFW的头文件 #include <glad/glad.h> #include <GLFW/glfw3.h> #include <iostream> 初始化 GLFW 在 main 函数中&#xff0c;我们首先使用 glfwInit 初…

Shopee过期的折扣活动如何删除?Shopee促销商品如何下架?——站斧浏览器

商家们可以轻松删除虾皮过期活动以及下架促销商品&#xff0c;保持店铺的整洁和顾客的购物体验。那么shopee过期的折扣活动如何删除&#xff0c;shopee促销商品如何下架。 Shopee过期的折扣活动如何删除&#xff1f; 在删除虾皮过期活动时&#xff0c;商家们需要遵循以下步骤…

探索图像生成中的生成对抗网络 (GAN) 世界

一、介绍 生成对抗网络&#xff08;GAN&#xff09;的出现标志着人工智能领域的一个重要里程碑&#xff0c;特别是在图像生成领域。GAN 由 Ian Goodfellow 和他的同事于 2014 年提出&#xff0c;代表了机器学习中的一种新颖方法&#xff0c;展示了生成高度逼真和多样化图像的能…

QT使用SQLite(打开db数据库以及对数据库进行增删改查)

QTSQLite 在QT中使用sqlite数据库&#xff0c;有多种使用方法&#xff0c;在这里我只提供几种简单&#xff0c;代码简短的方法&#xff0c;包括一些特殊字符处理。 用SQlite建立一个简单学生管理数据库 数据库中有两个表一个是class和student。 class表结构 student表结果…

python flask Jinja2模板学习

分类很好的一篇文章 Jinja2模板语法 Jinja2里常见的三种定界符&#xff1a; (1) 语句 {% ... %}(2) 表达式 {{ ... }}(3) 注释 {# ... #} {%set adazhaung%} 语句设置变量{{a}} 表达式{% if 2>1 %}控制语句以{%endif%}结尾 Jinja2支持使用“.”获取变量的属…