AI 绘画 | Stable Diffusion 高清修复、细节优化

news2024/11/26 10:42:07

前言

在 Stable Diffusion 想要生成高清分辨率的图片。在文生图的功能里,需要设置更大的宽度和高度。在图生图的功能里,需要设置更大的重绘尺寸或者重绘尺寸。但是设置完更大的图像分辨率,需要更大显存,1024*1024的至少要电脑的空余显存在8G以上。如显存不够,就会爆显存生图失败。即使显卡的显存够用,更大的分辨率的生成的时间也会越久。这里我们就需要高清修复的功能了,这个功能能大大降低生成高清图对显存的要求。

  • 目前主要有三种方式,分别是高清修复(Hi-Res.Fix)、SD放大(SD Upscale)、附加功能放大。
    在这里插入图片描述

高清修复(HiRes.Fix)

高分辨率修复 (Hires. fix)是指使用高分辨率(HiRes)修复(.Fix)的稳定扩散(Stable Diffusion)技术。只在文生图的功能有这个选项,位置在采样算法下方,点击展开后,有6个参数设置。分别是方法算法,高分迭代步数,重绘幅度,放大倍数,修复后的宽度和高度设置。
在这里插入图片描述
下图中的从512512到10241024是指我们文生图的设置的宽高是512512,要重新修复生成的图片的宽高是10241024。
在这里插入图片描述
这里我们先简单讲解下这些参数的作用

放大算法

简单来说就是我们要把一张512512的图片变成10241024的高清图片的放大算法。算法选择框里包含的放大算法有16种。
在这里插入图片描述

  • Latent
    Latent 放大算法是一种基于 VAE 模型的图像增强算法,通过将原始图像编码成潜在向量,并对其进行随机采样和重构,从而增强图像的质量、对比度和清晰度。这种方法通常能得到不错的效果,但与4x-UltraSharp、R-ESRGAN等相比,显存消耗比较小,但效果不是最优。
  • Latent (antialiased)
    结合了抗锯齿(antialiasing)技术的图像Latent放大算法。抗锯齿是一种用于消除图像中锯齿状边缘的技术,常用于提高图像的视觉质量。
  • Latent (bicubic)
    Latent 放大算法是一种图像超分辨率技术,可以通过插值算法来放大图像的尺寸,从而提高图像的分辨率。其中,双立方插值算法(Bicubic Interpolation)是一种常见的插值算法,它基于双线性插值算法,通过扩展影响范围至邻近的16个像素点,依据对未知像素点P的远近影响进行插值计算,从而得到更细致的影像。
  • Latent (bicubic antialiased)
    结合了双立方插值算法(Bicubic Interpolation)和抗锯齿(Antialiasing)技术的图像超分辨率技术的Latent放大算法。该算法通过插值算法来放大图像的尺寸,同时消除锯齿状边缘,从而提高图像的分辨率和质量。
  • Latent (nearest)
    结合了最近邻插值算法(Nearest Neighbor Interpolation)的图像超分辨率技术的Latent放大算法。该算法通过插值算法来放大图像的尺寸,同时保持图像的原始像素值,从而提高图像的分辨率和质量。
  • Latent (nearest-exact)
    结合了最近邻插值算法和双线性插值算法的特点的Latent放大算法,以达到更精确的放大效果。
  • None(无)
    没有使用放大算法。如何重绘幅度设置为0的画,单纯改变图像的宽高。图片放大程度越高,图像越模糊。不建议选择这个,选择None 生成图片速度和其他算法比不经没有提升,清晰度也比不上使用算法放大的。
  • Lanczos
    Lanczos算法是一种将对称矩阵通过正交相似变换变成对称三对角矩阵的算法,以20世纪匈牙利数学家Cornelius Lanczos命名。Lanczos算法是一种注重质量的放大算法,在缩小画面时能保持较好锐度。
  • Nearest
    最临近点插值算法(Nearest Neighbor)是一种最简单也是速度最快的一种算法。其做法是将放大后未知的像素点,将其位置换算到原始影像上,与原始的邻近的4周像素点A,B,C,D做比较,令P点的像素值等于最靠近的邻近点像素值即可。
  • BSRGAN
    BSRGAN是一种第三类放大算法,其核心是通过建立一个对抗网络,让这个网络去判断图像放大的好坏,最终得出成功放大的图像。
  • ESRGAN_4x
    ESRGAN_4x是使用生成对抗网络(GAN)技术进行图像放大的算法,其工作原理是将图像分割成小块,然后以生成式对抗网络算法来进行局部演算,最后再统一拟合。该算法比系统自带的其它放大演算法更加高效,能够增加细节纹理,图像质量更高。
  • LDSR
    LDSR算法是一种深度卷积神经网络(DCNN)实现的图像超分辨率技术。它具有高精度、高效率、易于实现等优点,在图像超分辨率等领域得到了广泛应用。不建议选择这个,出图时间是其他算法的好几倍,太慢了!!!
  • R-ESRGAN 4x+
    ESRGAN_4x的增强版,使用它将原图放大四倍之后,仍能充分保留原图细节的连贯性。它工作原理是通过将图片分割成小块,然后再以生成式对抗网络算法来进行局部演算,最后再统一拟合。所以,它比系统自带的其它放大演算法更加高效,并且能够增加细节纹理,图像质量更高。
  • R-ESRGAN 4x+ Anime6B
    R-ESRGAN 4x+ Anime6B 是一种结合了 R-ESRGAN 4x+ 和 Anime6B 两种算法的图像放大技术。
    R-ESRGAN 4x+ 是一种基于生成对抗网络(GAN)的图像超分辨率算法,可以将低分辨率的图像通过神经网络模型增强到4倍的分辨率。该算法通过生成器网络(Generator)和判别器网络(Discriminator)相互对抗,以提高生成器的超分辨率效果。
    Anime6B 是一种插画模式,可以应用于图像的放大过程,旨在补充细节并增强色彩。
    将这两种算法结合使用,可以在保证图像质量的同时,增加更多的细节和色彩,从而得到更加丰富和生动的图像效果。这种技术在动漫、游戏、插画等领域中得到了广泛的应用。
  • ScuNET
    ScuNET是一种真实感图像超分辨率增强方法。
  • ScuNET PSNR
    ScuNET的PSNR值(峰值信噪比)是评价图像质量的一种指标,PSNR值越高,说明图像的质量越好。ScuNET是一种真实感图像超分辨率增强方法,通过自注意力机制和残差学习,能够有效地提高图像的分辨率和视觉效果。
  • SwinIR_4x
    SwinIR_4x是一种基于Swin Transformer的图像超分辨率算法,使用4倍放大倍数进行超分辨率计算。该算法使用小尺寸卷积核来模拟感受野更大的卷积,将小尺寸的卷积核通过窗口分割和跳跃连接,将小尺寸的感受野扩大到大尺寸的感受野。通过这种方式,SwinIR_4x能够有效地提高图像的分辨率和视觉效果。

高分迭代步数

高分迭代步数即高质量高分辨的的迭代次数,原图和要放大倍数4倍以内, 高分迭代步数对最终的画质和细节只有很小的影响,肉眼很难看出来。越高的迭代步数步数,越要更长的出图时间,所以建议对设置为0。

重绘幅度

即在原来文生图的基础上,重新绘制的程度。SD web的默认值是0.7。同一随机种子和其他参数、提示词完全相同的情况下,重绘幅度幅度越大和原图越不像。

放大倍数

放大倍数即将文生图设置的原始宽高放大多少倍。放大倍数越大,需要的显存越大、出图时间越久。

宽高设置

除了通过设置放到倍数以外,还是可以通过设置要高清修复的宽度和高度来控制最终生成图片的大小。宽度和高度设置有一个不为0时,放大倍数设置的参数失效。
在这里插入图片描述

SD Upscale(SD 放大脚本)

SD Upscale 是Stable Diffusion web ui的第三方脚本(SD秋叶整合包内自带)。它能解决因为显存不足,而无法生成高分辨率图片的问题。原理是通过图像分块按比例放大图像。安装这个插件后,它只在图生图的功能的脚本显示,文生图的脚本选择框没有。

安装

通过国内镜像仓库 https://gitcode.net/ranting8323/multidiffusion-upscaler-for-automatic1111下载后,解压到 SD web根目录下的extensions文件夹内,或者通过web页面中的扩展》》从网址安装里填入仓库地址,安装即可。
在这里插入图片描述
这两种方式选则其一弄好后,重启下服务就安装成功了!
在这里插入图片描述

参数设置介绍

安装后在图生图面板网页最下方的脚本选择框里,选择SD Upscale 就能展开SD Upscale 参数设置。
在这里插入图片描述
在这里插入图片描述
选择SD Upscale 后,出现以下参数设置的面板。只有三个参数设置,一是分块重叠像素宽度、一个是放大倍数、一个是放大算法。放大倍数和放大算法上面已经说过,这里主要解释下什么是分块重叠像素宽度?
在这里插入图片描述

分块重叠像素宽度

“分块重叠像素宽度”可以理解为在进行图像处理或计算机视觉任务时,将图像分割成多个小块,并且每个小块之间会有一定程度的重叠。这里的“重叠像素宽度”就是指这些小块之间的重叠区域的大小。

这样做通常是为了在处理图像时能够更好地捕捉到图像的整体信息,避免出现边界效应或者信息丢失。通过调整重叠区域的大小,可以平衡图像的整体效果和计算效率。

分块重叠像素宽度的设置大小设置需要要根据具体的任务和需求来决定。

在图像处理或计算机视觉任务中,分块重叠像素宽度的设置需要考虑以下几个因素:

  • 图像分辨率和尺寸:对于高分辨率的图像,分块重叠像素宽度可以设置得相对较大,以更好地捕捉图像的细节和整体信息。而对于低分辨率的图像,则可以设置较小的重叠宽度,以避免浪费计算资源和产生过多的噪点。
  • 任务特点和需求:不同的计算机视觉任务对图像处理的要求和效果不同。例如,在图像分割或目标检测任务中,分块重叠像素宽度可以设置得相对较大,以更好地捕捉到目标物体和其周围的区域。而在图像去噪或超分辨率任务中,则可以设置较小的重叠宽度,以避免引入过多的噪点或产生过度锐化的效果。
  • 计算资源和时间限制:分块重叠像素宽度的设置也受到计算资源和时间的限制。如果处理任务需要大量的计算资源和时间,那么重叠宽度的设置应该相对较小,以减少计算量和时间成本。

综上所述,分块重叠像素宽度的设置需要根据具体的任务和需求来决定,需要权衡考虑图像分辨率和尺寸、任务特点和需求以及计算资源和时间限制等多个因素。一般情况下,我们维持默认就行。越大分块重叠像素宽度,需要耗费更多的计算资源。

后期处理(Extras)

Extras有的翻译为附加功能,我这里的中文插件翻译为了后期处理。在这里可以处理单张或者多张图片的高清方法功能。参数中的缩放比例和方法算法上面已讲,这里主要说一下。GFPGAN visibilityCodeFormer visibility
在这里插入图片描述
GFPGAN 和CodeFormer 都是用于放大图片人物的面部修复的开源的面部修复模型。多数情况,当人像图片成倍放大依托发达算法,对人脸的生成会有问题,或者原始图片就是问题的时候,我们可以选择面部修复的模型,对图片人物的面部进行高清修复。GFPGAN 和CodeFormer选择两个设置一个即可,两个的效果有一些微小的区别,看个人的喜好选择了!

  • 值得注意的是,这里必须选择方法算法后,缩放倍数和缩放尺寸才生效(缩放倍数和缩放尺寸切换到那个tab页那个生效)。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软磁直流测试系统电参量指标

软磁直流测试系统电参量指标 输出能力 电流范围 0 ~ 25 A 最大功率 1000 W 调节细度 0.005%*RG ① 最佳测量不确定度 0.2% 磁通测量 (磁通计) 磁通计量程 500 μWb、5 mWb、25 mWb 磁通计漂移 ( 0.05%*RG )/min或1 μWb…

“双11”近300万商家为消费者贴息,花呗分期免息成增长“利器”

今年双11,很多消费者发现,能用花呗分期免息的商品变多了,不光是品牌旗舰店,还有中小淘宝卖家,不少直播间里的商品,都能用花呗分期免息。这背后,是平台、商家对花呗分期免息的重视和需要。 数据…

STM32独立看门狗(IWDG)溢出时间计算

什么是IWDG? 独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。 IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。 从上图我们可以看出IWDG的时…

走进黑客漏洞赏金猎人的大门

走进黑客漏洞赏金猎人的大门,了解最新的漏洞、漏洞EXP和安全技术。 自动化SQL盲注 创建Nuclei模板:该文章首先介绍了如何创建一个Nuclei模板,以利用clusterbomb方法对我们感兴趣的功能点进行有效的暴力破解。 使用GET请求:在模板中,我们只使用GET请求。其中,{}被视为替换…

【题解 堆】 [蓝桥杯2023初赛] 整数删除

题目描述: 分析: 这道题一看就是一道堆的模板题 我们用堆记录当前的最小值以及当前值所在的下标 每次取出堆顶元素删除,而后将他的前一个以及后一个元素的值加上他的值就可以了 但是会有一个问题 你删除一个数之后,当前数左边和右…

电脑软件:推荐一款电脑多屏幕管理工具DisplayFusion

下载https://download.csdn.net/download/mo3408/88514558 一、软件简介 DisplayFusion是一款多屏幕管理工具,它可以让用户更轻松地管理连接到同一台计算机上的多个显示器。 二、软件功能 2.1 多个任务栏 通过在每个显示器上显示任务栏,让您的窗口管理更…

Leetcode—剑指OfferII LCR 044.在每个树行中找最大值【中等】

2023每日刷题(二十三) Leetcode—LCR 044.在每个树行中找最大值 DFS实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ /*** Note: The returned …

Go 面向对象,多态,基本数据类型

程序功能解读 第一行为可执行程序的包名,所有的Go源文件头部必须有一个包生命语句,Go通过包名来管理命名空间。 第三行import是引用外部包的说明 func关键字声明定义一个函数,如果是main则代表是Go程序入口函数 Go源码特征解读 源程序以.g…

【MySQL数据库】 五

本文主要介绍了如果根据表之间的关系设计表,以及mysql的聚合/分组/联合查询. 一.表的设计 实体和关系的四种关系 1.一对一 一个账号只能对应一个学生; 一个学生只能有一个账号; 比如:账号表和学生是一对一的关系 * 可以在账号表中引入学生id * 也可以在学生表中引入账号id…

能链智电,“重”症在身

文 | 智能相对论 作者 | 陈选滨 在过去的1-9月,充电基础设施增量为243.2万台,新能源汽车销量627.8万辆,充电桩与新能源汽车的增量比为1:2.6,距离工信部此前提出“2025年实现车桩比2:1,2030年实现车桩比1:…

自主SSL品牌—JoySSL

JoySSL是一家为数不多的中国自主品牌SSL证书服务厂商,是自研推出的新一代https数字证书。 它不仅有着自己品牌JoySSL,还拥有着国内外绝大数主流证书品牌,遍寻诚意伙伴,单域名证书都是不限年限、不限证书张数不限量提供。 目前了…

C语言——计算n的阶乘

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int i;int n 0;int s1;scanf("%d",&n);for(i1; i<n; i){s*i;}printf("s%d\n",s);return 0; }

HP电脑主机清除BIOS密码

HP电脑主机清除BIOS密码 重装系统肯定不能清除BIOS密码的。 拔掉电池一般也只能是将BIOS设定恢复出厂。 台式机需要清除BIOS密码&#xff0c;一般是主机板上会有对应的跳线&#xff0c; 关机&#xff0c;记住跳线的预设位置&#xff0c;拔掉跳线&#xff0c;重新开机&#x…

于道 - 前端项目启动步骤参考

1. 安装 启动过程有9个步骤&#xff1a; 1.1 安装 Node JS , V18版本的 &#xff08;安装步骤省略&#xff09; 1.2 安装 npm install -g yarn &#xff0c;node JS里边好像自带npm &#xff0c;通过npm的命令安装 yarn 1.3 切换到项目中去安装&#xff0c;npm install &a…

C++初阶 | [二] 类和对象(上)

摘要&#xff1a;class&#xff0c;成员函数&#xff0c;成员变量&#xff0c;类的大小&#xff0c;this 指针 C语言是面向过程的&#xff0c;关注的是过程&#xff0c;分析出求解问题的步骤&#xff0c;通过函数调用逐步解决问题。 C是基于面向对象的&#xff0c;关注的是对象…

吃啥大转盘

经常跟朋友出去吃饭&#xff0c;选择太困难了所以写了个简单的转盘&#xff0c;直接copy到txt文本然后把文件后缀改成html即可。 需要换食物直接在文件中找到 list 值按照格式替换一下即可。 效果&#xff1a; 代码块&#xff1a; <html><head><meta http-…

软件测试简历原来是写了这些才让面试官已读不回

前言&#xff1a; 马上就到了面试跳槽涨薪好时候了&#xff0c;最近看很多的小伙伴已经开始投简历了&#xff0c;一天投了几十次几百次&#xff0c;面试官已读不会&#xff0c;面试的机会都没有更别说后面的事情的&#xff0c;这是为什么呢&#xff1f; 很大一部分的原因是的…

内网穿透工具之花生壳(二)

目录 开始教程 第一步&#xff1a;进入管理官网&#xff0c;注册并登录账号 第二步&#xff1a;进入 管理页面 第三步&#xff1a;添加映射表&#xff0c;然后填写一下基本内容 总结&#xff1a;emmm,反正都很快上手&#xff0c;但是这个就免费1G流量,这个免费的还是https…

开发知识点-NodeJs-npm/Pnpm/Vite/Yarn包管理器

包管理器 vue-cli-service 不是内部或外部命令&#xff0c;也不是可运行的程序npm 全局变量pnpmPnpm介绍ViteYarn ‘vue-cli-service’ 不是内部或外部命令&#xff0c;也不是可运行的程序 yarn yarn add vue-amap yarn add vue-amap ant-design-vue npm 全局变量 换主机 新…

掌动智能:云可观测性的主要特点及应用场景

云全景可观测性安全平台是一个跨架构、跨平台的可观测性方案&#xff0c;实现对云环境下的细粒度数据可视化&#xff0c;满足安全部门对云内部安全领域的多场景诉求&#xff0c;包括敏感数据动态监管、云网攻击回溯分析、攻击横移风险监控、云异常流量分析。本文将介绍掌动智能…