AI 绘画Stable Diffusion 研究(九)sd图生图功能详解-老照片高清修复放大
大家好,我是风雨无阻。
通过前面几篇文章的介绍,相信各位小伙伴,对 Stable Diffusion 这款强大的AI 绘图系统有了全新的认知。我们见识到了借助 Stable Diffusion的文生图功能,利用简单的几个单词,就可以生成完美的图片。本期我们一起来研究 Stable Diffusion图生图功能这个宝藏。
对于新朋友,想详细了解Stable Diffusion 的话,请查看往期文章:
AI 绘画Stable Diffusion 研究(一)sd整合包v4.2 版本安装说明
AI 绘画Stable Diffusion 研究(二)sd模型ControlNet1.1 介绍与安装
AI 绘画Stable Diffusion 研究(三)sd模型种类介绍及安装使用详解
AI 绘画Stable Diffusion 研究(四)sd文生图功能详解(上)
AI 绘画Stable Diffusion 研究(五)sd文生图功能详解(下)
AI 绘画Stable Diffusion 研究(六)sd提示词插件
AI 绘画Stable Diffusion 研究(七) 一文读懂 Stable Diffusion 工作原理
AI 绘画Stable Diffusion 研究(八)sd采样方法详解
为了让大家更直观的了解图生图功能,这里以几个实用价值比较高的案例来介绍图生图功能到底是干嘛的,能做什么事情?
-
第一个案例 老照片高清修复放大
-
第二个案例 精美二维码的制作
-
第三个案例 美女换装
这里以案例穿插知识点说明的方式进行讲解。
各位朋友,可以根据我的步骤一边进行实操,一边进行理论知识的学习,这样能提高学习效率。
老照片高清修复放大案例
第一步,我们在修复照片之前,需要先进行设置
设置->面部修复
- 勾选FGPGAN 选项
- codeFromer 权重设置为1
- 勾选处理完成后,将面部修复模型从显存卸载到内存
- 保存设置
- 重载前端
第二步,切换到图生图界面
第三步,选择需要修复的照片
-
切换到局部重绘标签页面
-
将需要修复的图片拖入图片上传区域
第四步,选择缩放模式
在选择缩放模式前,我们现来看看缩放模式的知识点,四个缩放模式有什么区别:
-
仅调整大小
图片会直接缩放拉伸,例如,尺寸从512x512 调整为768x512 , 如图
-
裁剪后缩放
例如,尺寸从512x512 调整为400x512 , 选择此模式后,图片宽度内容会被裁剪掉,如图:
-
缩放后填充空白
例如,尺寸从512x512 调整为768x512 , 选择此模式后,图片宽度方向会以相近的内容自动填充,如图:
- 调整大小(潜空间放大)
这种模式和第一种模式比较相似,但是也有区别。
第一种模式,是在图片生成后被缩放。
而这种模式,是图片生成前,在潜空间内先进行缩放,这种缩放,每次出图的效果不太一样,有微小的差别。
例如,尺寸从512x512 调整为768x512:
所以,可根据自己的需求进行缩放模式的选择。
这里,我们之间选择第一种缩放模式。
第五步,选择采样方法和迭代步数
采样方法,在前面也有详细介绍,感兴趣的朋友可以前往查看:
AI 绘画Stable Diffusion 研究(八)sd采样方法详解
这里贴一下我的选择建议:
- 如果想快速生成质量不错的图片,建议选择 DPM++ 2M Karras (20 -30步) 、UNIPC (15-25步)
- 如果想要高质量的图,不关心重现性,建议选择 DPM++ SDE Karras (10-15步 较慢) ,DDIM(10-15步 较快)
- 如果想要简单的图,建议选择 Euler,Heun(可以减少步骤以节省时间)
- 如果想要稳定可重现的图像,请避免选择任何祖先采样器(名字里面带a或SDE)
- 相反,如果想要每次生成不一样的图像,可以选择不收敛的祖先采样器(名字里面带a或SDE)
这里我们选择 DPM++ 2M Karras (28步)
第六步、面部修复选择
在选择面部修复相关设置之前,我们先来介绍一下面部修复相关的知识点。
面部修复有两种方式,一种重绘尺寸倍数,一种是重绘尺寸。
- 重绘尺寸
我们可以点击“三角形”按钮 , 将自动获取到原图的尺寸
- 重绘尺寸倍数
按照倍数来,可根据自己的需求,进行选择,例如: 1倍、2倍 、3倍
在这个案例中,我们直接选择按原图的重绘尺寸,倍数选择1。
-
重绘幅度
假如把重绘幅度设置为0,则表示AI 什么都不会做,保持原图。
假如把重绘幅度设置为1,则表示AI 完全自由发挥,产生的图片跟原图关联性就很小。
因为这里我们要做照片的高清修复,所以这里不需要AI 去重绘 ,设置为0 。
第七步、点击生成
效果如下:
可以看到效果并不明显,并没有达到预期。这是因为在上述步骤中,只处理了面部细节,对其他部分并未进行处理,那么此时我们还需要进行后期处理。
第八步、后期处理
我们将生成好的图像,点击“发送到后期处理”按钮,切换到后期处理页面。
缩放比例,选择:1
放大算法选择:SwinIR_4x
生成效果如下:
根据对比图,我们可以看到,面部细节以及发色、背景都做了高清处理。
如果你对生成的图像还不满意,那么我再告诉你一个图像高清终极大法,相信高清修复后的图像你绝对没话说。
请继续往下看。
第九步、图像高清终极大法
图像高清终极大法究竟是什么呢?那就是使用ConctrolNet title 进行控制图像效果。
相信阅读过 AI 绘画Stable Diffusion 研究(二)sd模型ControlNet1.1 介绍与安装 这篇文章的朋友应该有印象。
这里在介绍 ConctrolNet 新增的 Tile 模型时,曾经说到过:Tile 模型对于图片高清修复、提升细节、根据画面自动推断内容有着很好效果,大家还记得吗?
好,废话不多说,直接上操作步骤:
(1)、首先切换到图生图界面,并上传需要修复的图片
(2)、选择缩放模式、采样方法 、开启面部修复
(3)、启用ControlNet ,并选择需要控制的图片
(4)、重点来了
- 控制类型: 选择title 分块
- 预处理器选择:title_resample
- 模型选择:control_v11fle_sd15_title
(5)、点击生成
对比效果如下:
对这个高清和细节修复效果,你是否还满意?
当然做老照片高清修复的方法网络上也有很多,这里还是着重介绍图生图的功能。
好了,我们的第一个图生图的功能案例就到此结束。
相关文章:

AI 绘画Stable Diffusion 研究(九)sd图生图功能详解-老照片高清修复放大
大家好,我是风雨无阻。 通过前面几篇文章的介绍,相信各位小伙伴,对 Stable Diffusion 这款强大的AI 绘图系统有了全新的认知。我们见识到了借助 Stable Diffusion的文生图功能,利用简单的几个单词,就可以生成完美的图片…...

Linux系统安装Google Chrome
1.进入谷歌浏览器官网 Google Chrome - Download the Fast, Secure Browser from GoogleGet more done with the new Google Chrome. A more simple, secure, and faster web browser than ever, with Google’s smarts built-in. Download now.http://www.google.cn/intl/en_…...

带你了解SpringBoot支持的复杂参数--自定义对象参数-自动封装
😀前言 本篇博文是关于SpringBoot 在响应客户端请求时支持的复杂参数和自定义对象参数,希望您能够喜欢😊 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章…...

Raspberry Pi Pico RP2040制作低成本FPGA JTAG工具
目录 1 准备工作和前提条件 1.1 Raspberry Pi Pico RP2040板子一个 1.2 xvcPico.uf2固件 1.3 Vivado USB驱动 2 操作指南 2.1 按住Raspberry Pi Pico开发板的BOOTSEL按键,再接上USB接口到电脑 2.2 刷入固件 2.3 Vivado USB 驱动 2.3.1 打开Zadig驱动工具 2.3…...
【工具】Python从临时邮箱获取验证码
安装好依赖库之后代码可直接运行, captcha re.search(r您的验证码为: \*(\w)\*, response.json()[body][html])正则表达式部分改成自己的。 import random import requests import re from faker import Fakerdomain "https://api.mail.cx/api/v1" # 临…...

时序预测 | MATLAB实现基于GRU门控循环单元的时间序列预测-递归预测未来(多指标评价)
时序预测 | MATLAB实现基于GRU门控循环单元的时间序列预测-递归预测未来(多指标评价) 目录 时序预测 | MATLAB实现基于GRU门控循环单元的时间序列预测-递归预测未来(多指标评价)预测结果基本介绍程序设计参考资料 预测结果 基本介绍 1.Matlab实现GRU门控循环单元时间序列预测未…...

在本地搭建WAMP服务器并通过端口实现局域网访问(无需公网IP)
文章目录 前言1.Wamp服务器搭建1.1 Wamp下载和安装1.2 Wamp网页测试 2. Cpolar内网穿透的安装和注册2.1 本地网页发布2.2 Cpolar云端设置2.3 Cpolar本地设置 3. 公网访问测试4. 结语 前言 软件技术的发展日新月异,各种能方便我们生活、工作和娱乐的新软件层出不穷&a…...

Redis之删除策略
文章目录 前言一、过期数据二、数据删除策略2.1定时删除2.2惰性删除2.3 定期删除2.4 删除策略比对 三、逐出算法3.1影响数据逐出的相关配置 总结 前言 Redis的常用删除策略 一、过期数据 Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可…...

SpringBoot的配置文件以及日志设置
在使用SpringBoot开发的过程中我们通常会用到配置文件来设置配置信息 以及使用日志来进行记录我们的操作,方便我们对错误的定位 配置文件的作用在于:设置端口,设置数据库连接信息,设置日志等等 在SpringBoot中,配置…...

【Java集合框架面试题(30道)】
文章目录 Java集合框架面试题(30道)引言1.说说有哪些常见集合? List2.ArrayList和LinkedList有什么区别?3.ArrayList的扩容机制了解吗?4.ArrayList怎么序列化的知道吗?为什么用transient修饰数组?5.快速失败࿰…...

Android 组件
TextView 文本框 用于显示文本的一个控件。文本的字体尺寸单位为 sp 。sp: scaled pixels(放大像素). 主要用于字体显示。 文本常用属性 属性名说明id为TextView设置一个组件id,根据id,我们可以在Java代码中通过 findViewById()的方法获取到该对象&…...
kotlin的数据类型和类型转换
在 Kotlin 中,数据类型是变量或表达式的属性,确定了存储的数据类型以及可以在该数据上执行的操作。Kotlin 支持与 Java 类似的基本数据类型,但还引入了一些增强的数据类型和类型安全的特性。 一,基本数据类型 Byte:8…...

常见架构类型
目录 1.单机架构 2.应用数据分离架构 3.读写分离架构 4.冷热分离架构 5.垂直分库架构 6.微服务架构 7.容器编排架构 1.单机架构 单机架构是简单的将应用服务和数据库服务部署到同一台机器上。 缺点:存在很大的性能限制。 2.应用数据分离架构 引入负载均衡&a…...

搭建Web服务器并用cpolar发布至公网访问
本地电脑搭建Web服务器并用cpolar发布至公网访问 文章目录 本地电脑搭建Web服务器并用cpolar发布至公网访问前言1. 首先在电脑安装PHPStudy、WordPress、cpolar2. 安装cpolar,进入Web-UI界面3. 安装wordpress4. 进入wordpress网页安装程序5. 利用cpolar建立的内网穿…...

NanoPi NEO移植LVGL8.3.5到1.69寸ST7789V屏幕
移植前准备 移植好fbtft屏幕驱动 参考链接:友善之臂NanoPi NEO利用fbtft驱动点亮1.69寸ST7789V2屏幕 获取源码 名称地址描述lvglhttps://github.com/lvgl/lvgl.gitlvgl-8.3.5lv_drivershttps://github.com/lvgl/lv_drivers.gitlv_drivers-6.1.1 创建工程目录 创…...

阿里云服务区ECS,申请免费的服务器之后,如何使用xshell 登陆,找不到匹配的host key 算法
目录 1 问题2 解决 1 问题 当在阿里云免费领取服务器之后,使用xshell 登陆不上,提示 找不到匹配的host key 算法 或者 找不到匹配的keyexchange算法 咋解决 2 解决 在在服务器端配置文件:/etc/ssh/sshd_config # 在行尾增加",ecdh…...

【CTF-web】备份是个好习惯(查找备份文件、双写绕过、md5加密绕过)
题目链接:https://ctf.bugku.com/challenges/detail/id/83.html 经过扫描可以找到index.php.bak备份文件,下载下来后打开发现是index.php的原代码,如下图所示。 由代码可知我们要绕过md5加密,两数如果满足科学计数法的形式的话&a…...

C#和Java的大端位和小端位的问题
C#代码里就是小端序,Java代码里就是大端序, 大端位:big endian,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,也叫高尾端 小端位:little endian,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存…...

如何在 iOS 上安装并使用 ONLYOFFICE 文档
借助 iOS 版文档应用,您可在移动端设备上访问存储于 ONLYOFFICE 账户中的文件,查看和编辑现有文本文档、电子表格和演示文稿,创建新文档并对其进行整理,以及连接第三方云存储服务。您可与其他门户网站用户协作编辑文档,…...

【AI】如何用AI生成XMind思维导图
哈喽,大家好,我是木头左,物联网搬砖工一名,致力于为大家淘出更多好用的AI工具! 背景 随着人工智能技术的不断发展,越来越多的应用场景开始涉及到AI技术。在办公软件领域,XMind是一款非常受欢迎…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...