StableDiffusion(四)——高清修复与放大算法

目录

一、高清修复与放大算法

1.高清修复

①文生图

②图生图

2.SD放大(SD Upscale)

3.附加功能放大

4.总结


一、高清修复与放大算法

1.高清修复

概念:分两步,第一步生成低分辨率的图画,第二步使用它指定的高清算法,生成一个高分辨率的版本,在不改变构图的情况下丰富细节

①文生图

高清修复参数:

  • 放大倍数:是指放大到原图的多少倍,也可以按照参数后面手动设置新图像的宽和高
  • 重绘幅度:是和原图的差异度,一般推荐0.5,安全放大区间0.3-0.5,具有自由度区间0.5-0.7
  • 高清采样次数:和采样迭代数一样,不用选择,保持默认0的迭代次数
  • 放大算法:概念比较复杂,几乎所有的算法出来的结果都是一致的,网上推荐无脑选择R-ESRGAN 4x+ 的,二次元的选择R-ESRGAN4x+ Anime6B,效果相较于其他算法是好一点的
②图生图
  • 在图库浏览器里,浏览已经做好的图片,选择信息栏的图生图,他会把你这个图片的所有信息同步到图生图里面,你只需要改变分辨率,控制重绘幅度就可以啦(PS:图片浏览器需要自己下载,我后面内容会有写到)
  • 在设置选项的放大功能下可以自行定义用于放大图像的算法,选择完之后记得保存,这里选择的算法还是我们文生图推荐的那两个算法

2.SD放大(SD Upscale)

概念:根据指定的放大倍数,将图生图的图像拆解成若干小块按照固定逻辑重绘,再合并成一张大图,可以实现在低显存的条件下生成大尺寸的图片

选择”脚本“选项的SD放大脚本

缩放系数:相当于放大倍数,设置为2的意思是放大为原来的两倍

放大算法:我们还是默认选择R-ESRGAN 4x+ 的,二次元的选择R-ESRGAN4x+ Anime6B

图块重叠的像素:维持默认的64像素不变,是为了避免图片分块重画拼合的割裂的感觉(如下图),64是一个缓冲带的作用,为了分块画的画,画的更好,如果你觉得图片还是拼接的生硬,你可以把重叠像素改成128

注意:这时候要手动更改图片的尺寸,本身你的尺寸是600*600这时候要加上图块重叠像素,你要改成664*664(同理,重叠像素是128的话图片尺寸就要改成728*728)

对于缺点解决方法:增加缓冲带,重绘幅度降低为0.4

3.附加功能放大

概念:利用各种放大算法啊,在图像生成后再对它进行单独处理,使之拥有更高的分辨率尺寸

可以把已经绘制好的图片上传在附加功能下,也可以在图片浏览器显示的图片信息下面直接选择”附加功能”选项

在附加功能里面,可以看到以下设置,特点是有两个放大算法选择,可以给第二个算法选择权重,当然也可以不选择第二个算法,其他参数默认不变

4.总结

文生图:高清修复

图生图:SD放大

生成后处理:附加功能

“打回重画,再来一幅”

”分几块画,拼在一起“

”简单放大,随时可用“

分两步,第一步生成低分辨率的图画,第二步使用它指定的高清算法,生成一个高分辨率的版本,在不改变构图的情况下丰富细节

根据指定的放大倍数,将图生图的图像拆解成若干小块按照固定逻辑重绘,再合并成一张大图,可以实现在低显存的条件下生成大尺寸的图片

利用各种放大算法啊,在图像生成后再对它进行单独处理,使之拥有更高的分辨率尺寸

优势:

  • 不会改变画面的构图(因为随机种子固定)
  • 稳定克服多人、多头有分辨率产生的问题
  • 操作简便、清晰、直观

优势:

  • 可以突破内存限制获得更大分辨率
  • 画面精细度更高,对于细节的丰富更加出色

优势:

  • 使用方便,操作简单,随时可以调用
  • 计算速度快,没有重绘压力
  • 完全不改变图片内容

缺点:

  • 仍然受到最大显存的影响
  • 计算速度相对较慢
  • 偶尔”加戏“,出现莫名其妙的额外元素

缺点:

  • 分割重乎的过程不可控(语义误导格分界线割裂)
  • 操作繁琐且相对不直观
  • 偶尔加戏,出现莫名的额外元素

对于缺点解决方法:增加缓冲带,重绘幅度降低为0.4

缺点:

放大功能的效果不太显著

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

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

相关文章

c++ 经典服务器开源项目Tinywebserver如何运行

第一次直接按作者的指示,运行sh ./build.sh,再运行./server,发现不起作用,localhost:9006也是拒绝访问的状态,后来摸索成功了发现,运行./server之后,应该是启动状态,就是不会退出,而…

【入门Flink】- 08Flink时间语义和窗口概念

Flink-Windows 是将无限数据切割成有限的“数据块”进行处理,这就是所谓的“窗口”(Window)。 注意:Flink 中窗口并不是静态准备好的,而是动态创建——当有落在这个窗口区间范围的数据达到时,才创建对应的窗…

【postgresql】查看数据中表的信息

切换到postgresql数据库,各种不适应吧。 有个需求需要查询数据表的各种信息。 下面我们一起学习吧。 ●PostgreSQL: Documentation PostgreSQL: Documentation ●pg_namespace 存储名字空间。名字空间是 SQL 模式下层的结构:每个名字空间有独立的关系…

thinkPHP controller_suffix 使用方法

在‘config/route.php’配置’controller_suffix’ > true 后, 在controller里面所有的类都要添加Controller为后缀的名字。 在网页使用的时候不用输入Controller的后缀 访问方法,他默认自己带上controller后缀 这样做其实就为了规范controller类

C++ Qt 学习(六):Qt http 编程

1. http 基础 HTTP 基础教程C Web 框架 drogonoatpp 2. C Qt 用户登录、注册功能实现 login_register.h #pragma once#include <QtWidgets/QDialog> #include "ui_login_register.h" #include <QNetworkReply>class login_register : public QDialog…

在 uniapp 中 一键转换单位 (px 转 rpx)

在 uniapp 中 一键转换单位 px 转 rpx Uni-app 官方转换位置利用【px2rpx】插件Ctrl S一键全部转换下载插件修改插件 Uni-app 官方转换位置 首先在App.vue中输入这个&#xff1a; uni.getSystemInfo({success(res) {console.log("屏幕宽度", res.screenWidth) //屏…

Linux 基本语句_10_进程

进程和程序的区别&#xff1a; 程序是一段静态的代码&#xff0c;是保存在非易失储存器上的制令和数据的有序集合&#xff0c;没有任何执行的概念&#xff1b;而进程是一个动态的概念&#xff0c;它是程序的一次执行过程&#xff0c;包括了动态创建、调度、执行和消亡的整个过程…

基于SPI+DMA方式的ws2812b氛围灯控制

好处&#xff1a;相比于gpio控制&#xff0c;可以大大节省CPU的时间&#xff0c;CPU只要将要传输的数据计算好放入内存中&#xff0c;然后发动DMA传输即可&#xff0c;后续整个过程并不需要CPU干预&#xff0c;CPU可以用于做其他的事情。特别是某些带蓝牙的芯片&#xff0c;需要…

k8s_base

应用程序在服务器上部署方式的演变,互联网发展到现在为止 应用程序在服务器上部署方式 历经了3个时代1. 传统部署 优点简单 缺点就是操作系统的资源是有限制的&#xff0c;比如说操作系统的磁盘&#xff0c;内存 比如说我8G&#xff0c;部署了3个应用程序&#xff0c;当有一天…

【第2章 Docker容器基础入门】 课程介绍 + docker容器介绍

一、课程介绍 1.1、容器运行时 1.2、官网 1.3、私有镜像 二、什么是 Docker &#xff1f; 2.1 Docker 的思想来自于集装箱&#xff0c;集装箱解决了什么问题&#xff1f; 2.2 、K8S 1.25版本之后可能废弃docker&#xff0c;为什么还需要学习docker&#xff1f; 一、课程介…

“具有分布式能源资源的多个智能家庭的能源管理的联邦强化学习”文章学习一

一、摘要 本文提出了一种新型的联邦强化学习&#xff08;FRL&#xff09;方法&#xff0c;用于管理带有家电、太阳能光伏系统和储能系统的多个智能家庭的能源。 所提出的FRL方法的创新点在于开发了一种由本地家庭能源管理系统(LHEMS)和全局服务器(GS)组成的分布式深度强化学习(…

飞书开发学习笔记(六)-网页应用免登

飞书开发学习笔记(六)-网页应用免登 一.上一例的问题修正 在上一例中&#xff0c;飞书登录查看网页的界面显示是有误的&#xff0c;看了代码&#xff0c;理论上登录成功之后&#xff0c;应该显示用户名等信息。 最后的res.nickName是用户名&#xff0c;res.i18nName.en_us是英…