AI 绘画Stable Diffusion 研究(四)sd文生图功能详解(上)


大家好,我是风雨无阻。


通过前面几篇AI 绘画Stable Diffusion 研究系列的介绍,我们完成了Stable Diffusion整合包的安装、模型ControlNet1.1 安装、模型种类介绍与安装,相信看过教程的朋友们,手上已经有可以操作实践的Stable Diffusion 环境了。


那么本篇文章将给大家带来 Stable Diffusion 最重要也是使用最多的文生图功能介绍,由于内容比较多,这里会分成上、下两篇文章进行介绍。


今天为大家带来的是 AI 绘画Stable Diffusion 研究(四)sd文生图功能详解(上)。


大家进入到web ui 页面后,首先看到的是下面这个界面。


在这里插入图片描述

上图一目了然的标注了文生图界面大致的功能。
接下来,就详细讲解一下每个功能的使用方法和注意事项。


1、模型选择区域

模型对于 SD 绘图来说非常重要,不同的模型类型、质量会很大程度的决定最终的出图效果。


2、功能栏

包括了常见的 文生图、图生图、后期处理等常用功能。不同的功能页面也不同,在这里,我们先针对经常使用的文生图模块页面来进行讲解。


3、正向提示词

正向提示词prompt &tag**: 如果大家使用过 ChatGPT 就应该知道 Prompt 是什么。说的直白点就是我们想让 SD 帮忙生成什么样的图的描述,比如角色或场景等,**需要使用英文进行描述


正向Prompt &Tag 改善画质用的 Tag ,适用于二次元风格,可以考虑搭配不同的模型使用:

(masterpiece:1.2), best quality, masterpiece, highres, original, extremely detailed wallpaper.oerfect lighting,(extremely detailed CG:1.2), drawing, paintbrush

4、反向提示词

反向提示词 Prompt&Tag : 就是告诉SD 生成图里 ,不想出现的内容, 需要使用英文进行描述


通用反面 Tag,保底不出古神用的 Tag,适用于二次元风格,可以考虑搭配不同的模型使用:

NSFW, (worst quality:2), (low quality:2), (normal quality:2), lowres, normal quality,(monochrome)), ((grayscale)), skin spots, acnes, skin blemishes, age spot, (ugly:1.331),duplicate:1.331), (morbid:1.21), (mutilated:1.21), (tranny:l.331), mutated hands, (poorly drawnands:1.5), blurry, (bad anatomy:1.21), (bad proportions:1.331), extra limbs, (disfigured: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,bad hands, missing fingers.((extra arms and legs)))

5、生成按钮

调整完其他设置后,点击生成,开始生成图片,也可以不做调整。


6、采样迭代步数

AI 绘画的过程是将纯噪点图,变为高清图的一个过程,采样迭代步数,就是这个过程需要的步数,随着步数的增加,图片的细节也不断增多。


采样迭代步数不能设置太小,也不能设置太大。设置太小,图片效果就不好;设置太大, 生成图花的时间就越长,如果超过40 步以后,那么画面的变化是基本看不出来。


采样迭代步数,推荐 20-30 之间,通常28是一个不错的值。


7、采样方法

采用什么样的绘画方式算法,以及“画多少笔” 来绘图,一定程度上决定出图的质量。

以下是 每个采样方法,对应生成步数的效果。


如图:

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


综合以上参考,根据出图质量、采样步数的对比,对于新手朋友来说 推荐无脑使用:DPM adaptive 采样方法


8、出图显示区域

9、出图大小

出图大小 :默认 512**512 像素 ,因为模型训练时,都是使用这个尺寸,因此效果最好,所以一般保持默认即可,当然如果要出 3:2 的图,也可以设置为: 512* 768 , 768*512 。

根据自己的需要进行调整,也可以不用调整。出图越大,对于显卡要求越高。


10、出图数量

出图数量=总批次数x每批数量。

每批的数量越多:需要的显存越大。

总批次越多:根据实际经验,生成的图片质量要好一些,但是花的时间越长。

可根据自己的需求和电脑配置进行选择。


11、出图存储目录

可以查找历史出图


12、随机种子

模仿别人的图,需要进行调整,一般不用调整。


13、面部修复

面部修复,首先需要在设置中,按如下选项进行设置 :


在这里插入图片描述


然后依次点击:保存设置,重载前端,让其生效:

在这里插入图片描述


14、高分辨率修复

因为我们出图是512*512, 如果要放大,比如1024x1024 ,就需要勾选高分辨率修复功能。


A、放大算法选择推荐

真实风格推荐选择:R-ESRGAN 4x+

在这里插入图片描述


动漫风格推荐选择:R-ESRGAN 4x+ Anim

在这里插入图片描述


B、放大倍数

根据电脑配置进行选择

显卡显存高 选择 2-3倍

显卡显存不高,选择1.5-2倍


15、提示词引导系数(CFD Scale):

提示词引导系数,是控制提示词与生成的图像相关性 ,可以理解为 “越小AI越自由发挥” ,一般推荐数值为5-15之间,默认为 7 。

如果数值太大,会出现锐化、线条变粗的效果;

如果太小AI就自由发挥了,不看 Tag, 同时图像的饱和度也会偏低。


参考以下对比图:

在这里插入图片描述


在这里插入图片描述


16、随机种子:

随机种子是生成过程中所有随机性的源头, 每个种子都是一幅不一样的画。

默认的 -1 是代表每次都换一个随机种子,生成的每张图就不同。由随机种子,生成了随机的噪声图,再交给AI进行画出来。

使用固定的随机种子 ,可控制生成图与之前的图更相似。


17、保存

针对部署到本地的,意义不大。

如果针对部署到服务器上的,点击保存后,就可以下载。


18、打包下载

生成多张图的时候,图片会打包到压缩包内,就可以下载,本地基本用不到。

在这里插入图片描述


19、发送到图生图、发送到重绘、发送到后期处理,这三个功能,这里就先不做介绍。后边介绍图生图功能的时候再做详细说明。


20、图标功能介绍

在这里插入图片描述


图标1: 箭头 从提示词或上次生成的图片中,读取生成参数。

图标2: 清空提示词

图标3: 快捷显示隐藏扩展模型

图标4: 预设样式,保存反向提示词。


21、Tag 加权、减权用法简单说明

大家可能会经常看到别人发的 Tag 里面会有一些符号?比如大小括号等等。这些属于进阶用法,这里仅仅简单提及一下。

这里以 Tree 这个 Tag 作为例子进行说明。

(Tree) : 加权重,这是1.1倍。

((Tree)) :括号叠加,这是 1.1*1.1=1.21倍。

[Tree] :减权重,一般用的少。减权重也一般就用下面的指定倍数。

(Tree:1.5) 指定倍数,这里是1.5倍的权重,还可以 (Tree:0.9) 达到减权重的效果。


好了,今天的内容就到这里,下一篇将给大家详细讲解提示词的规则和写作技巧,敬请期待!


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

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

相关文章

UE4查看加密PAK里边的资源Android/iOS/PC方法

我们经常会需要把1个模型进行减面然后在移动端使用,有时候会出现移动端模型和PC端模型不一致的问题,这时候就需要将移动端的模型和PC端的模型进行对比,找到问题出现的原因,检查Mesh、Normal、UV0、UV1、MaterialId、碰撞等是否一致。 如何打包Pak文件,见这篇文章:UE4打包…

C语言假期作业 DAY 15

一、选择题 1、有如下代码,则 *(p[0]1) 所代表的数组元素是( ) int a[3][2] {1, 2, 3, 4, 5, 6}, *p[3]; p[0] a[1]; A: a[0][1] B: a[1][0] C: a[1][1] D: a[1][2] 答案解析 正确答案: C p 是一个指针数组, p[0] a…

备忘录模式(C++)

定义 在不破坏封装性的前提下,捕获一-个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。 应用场景 ➢在软件构建过程中,某些对象的状态在转换过程中,可能由于某种需要,要…

【Java设计模式】建造者模式 注解@Builder

概念 将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示。它使将一个复杂的对象分解成多个简单的对象,然后一步步构建而成。 每一个具体建造者都相对独立,而与其它的具体建造者无关,因此可以很方便地替换具…

JavaWeb 手写Tomcat底层机制

目录 一、Tomcat底层整体架构 1.简介 : 2.分析图 : 3.基于Socket开发服务端的流程 : 4.打通服务器端和客户端的数据通道 : 二、多线程模型的实现 1.思路分析 : 2.处理HTTP请求 : 3.自定义Tomcat : 三、自定义Servlet规范 1. HTTP请求和响应 : 1 CyanServletRequest …

布隆过滤器,Guava实现布隆过滤器(本地内存),Redis实现布隆过滤器(分布式)

一、前言 利用布隆过滤器可以快速地解决项目中一些比较棘手的问题。如网页 URL 去重、垃圾邮件识别、大集合中重复元素的判断和缓存穿透等问题。不知道从什么时候开始,本来默默无闻的布隆过滤器一下子名声大噪,在面试中面试官问到怎么避免缓存穿透&#…

Multimodal Learning with Transformer: A Survey

Transformer多模态学习 Abstract1 INTRODUCTION2 BACKGROUND2.1 Multimodal Learning (MML)2.2 Transformers: a Brief History and Milestones2.3 Multimodal Big Data 3 TRANSFORMERS: A GEOMETRICALLY TOPOLOGICAL PERSPECTIVE3.1 Vanilla Transformer3.1.1 Input Tokenizat…

如何免费申请SSL证书

如何免费申请SSL证书 文章目录 如何免费申请SSL证书前言1. 向域名平台申请SSL证书1.1 购买“免费证书” 2. 进一步进行创建证书设置2.1 对证书的关联域名进行补充 3. 云解析DNS3.1 进行验证信息 前言 我们可以成功地将自己购买的域名,绑定到连接本地群晖NAS的数据隧…

【LeetCode每日一题】——85.最大矩形

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 矩阵 二【题目难度】 困难 三【题目编号】 85.最大矩形 四【题目描述】 给定一个仅包含 0 …

Yolov8-pose关键点检测:模型轻量化设计 | 引入Ghostnet、G_ghost、Ghostnetv2、repghost,进行性能对比

💡💡💡本文解决什么问题:Yolov8-pose关键点评估不同轻量级网络的性能,引入Ghostnet、G_ghost、Ghostnetv2、repghost等网络进行可行性分析 Yolov8-Pose关键点检测专栏介绍:https://blog.csdn.net/m0_63774211/category_12398833.html ✨✨✨手把手教你从数据标记到生…

Python(Web时代)——请求钩子

简介 有时在处理请求之前或之后需要执行一部分代码,比如:创建数据库链接或进行登陆权限认证等,在请求结束时指定数据的交互格式等。 为了避免在每个视图函数中编写重复的代码,flask提供了注册通用函数的功能(请求钩子…

windows永久暂停更新

目录 1.winr,输入regedit打开注册表 2.打开注册表的这个路径: 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 右键空白地方新建QWORD值命名为:FlightSettingsMaxPauseDays 3.双击FlightSettingsMaxPauseDays,修改里面的值为100000,右边基数设置…

17款奔驰S400升级原厂前排座椅通风系统,夏天必备的功能

通风座椅的主动通风功能可以迅速将座椅表面温度降至适宜程度,从而确保最佳座椅舒适性。该功能启用后,车内空气透过打孔皮饰座套被吸入座椅内部,持续时间为 8 分钟。然后,风扇会自动改变旋转方向,将更凉爽的环境空气从座…

Total Variation loss

Total Variation loss 适合任务 图像复原、去噪等 处理的问题 图像上的一点点噪声可能就会对复原的结果产生非常大的影响,很多复原算法都会放大噪声。因此需要在最优化问题的模型中添加一些正则项来保持图像的光滑性,图片中相邻像素值的差异可以通过…

python编写ocr识别图片汉字

当你需要构建一个简单的图形用户界面(GUI)应用程序,并在其中实现光学字符识别(OCR)功能时,wxPython是一个强大而灵活的选择。wxPython是一个基于Python的跨平台GUI开发框架,结合了wxWidgets C库…

微信提示操作太频繁怎么办?

微信使用过程中,遇到“操作太频繁”的提示该怎么办? 而提示频繁最常见的两种情况:加好友频繁和发消息频繁。 微信为什么提示频繁?频繁是因为微信故意这样设置的,压根就不想你群发!!&#xff0…

黑马程序员SpringMVC练手项目

目录 1、需求 2、项目准备 pom.xml SQL jdbc.properties log4j.properties applicationContext.xml spring-mvc.xml web.xml 3、工作流程 4、难点 项目已经上传到gitee:https://gitee.com/xzl-it/my-projects 1、需求 SpringMVC项目练习:数…

bagging集成与boosting集成的区别是什么?

bagging集成与boosting集成的区别 区别一:数据方面 Bagging:对数据进行采样训练; Boosting:根据前一轮学习结果调整数据的重要性。 区别二:投票方面 Bagging:所有学习器平权投票; Boosting:对学习器进行加权投票。 区别三:…

全志D1-H (MQ-Pro)驱动 OV5640 摄像头

内核配置 运行 m kernel_menuconfig 勾选下列驱动 Device Drivers ---><*> Multimedia support --->[*] V4L platform devices ---><*> Video Multiplexer[*] SUNXI platform devices ---><*> sunxi video input (camera csi/mipi…

Android:自己写一个简单记事本

一、前言&#xff1a;我的app是点击加号跳转到另一个界面 那么我遇到的问题的是点击加号是一个从一个Fragment跳转到另一个Fragment跳转失败。 二、解决方案&#xff1a; //相应控件的监听里面实现跳转FragmentManager fragmentManagergetFragmentManager();fragmentManager.b…