


原贴:https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features
②、https://github.com/jquesnelle/txt2imghd
图片来自于上述帖中
原贴描述的大部分功能都是在旧版本基础上
本文在原贴基础进行修改以适应目前新版本
大部分都是依靠作者的理解,有错误的地方欢迎指出!
简单命名一下最基础的三个选项卡
1、 txt2img (text to image) 文本绘画
2、 img2img (image to image) 以画生画
3、 Extras 图像放大
以上三种具体功能应该都知晓了吧。
本文主要讲解的是以上各个选项卡底部的脚本(Script)功能和一些其他功能的扩展
功能
在原画的基础上扩展原画绘图
食用方法
位于 以画生画(image to image) 的脚本中
有两个,一个叫Poor man’s outpainting,另一个叫Outpainting mk2,具体差别在下面补充中提出
食用建议(recipe)
步数(Sampling steps)选择在50~100,抽样方法(Sampling method)使用Euler或者DPM2,噪点强度(Denoising strength)和CFG比例(CFG scale)拉到最大最佳。


图可能看不准,展示的效果为第81步的效果远好于10、30甚至80
补充
选项栏翻译
Pixels to expand:扩展大小(像素为单位)
Mask blur:mask模糊,与原图边界的渐变模糊程度,实现图像衔接更自然
Outpainting direction:扩展的方向
上面为两个共有,下面为Outpainting mk2专属:
Fall-off exponent (lower = higher detail):衰减指数,越小细节越多
Color variation:颜色变化
介绍
对图像进行涂色(mask),并依据涂色的位置以及用户选择进行各种调整
Mask blu:同上述
mask的两种功能:
Draw mask:涂色的地方进行重新绘画
Upload mask:上传mask图片,涂色的地方与上传的图片衔接
(目前版本好像Upload mask有点问题)
涂色模式(masking mode)
Inpaint masked(默认):只重新绘画涂色的位置
Inpaint not masked:除了涂色的位置都重新绘画
涂色样式(Masked Content):
被涂色的位置在图片进行重新绘画前被输入的样子(如果去掉多余的胳膊可以尝试使用fill或者其他,如果使用original则会在原来的基础上重新绘画出新的胳膊)
具体如下图:

不改变原分辨率上图像修复(Inpaint at full resolution):
通常情况下,图像修复输出的整个图片会以你指定的(在UI输入)分辨率输出,勾选此选项后则只改变涂色位置的大小,修复后指定区域后直接粘贴到原图中。顾名思义,就是不会再改变你原图的分辨率。
Inpaint at full resolution padding, pixels填充像素,暂时不知道是干什么的,猜测是粘贴到原图后进行扩展的像素?
Alpha mask:好像现在版本已经删除了?
介绍
在不同的tag(prompt提示词,目前国内普遍使用tag来称呼,为了方便理解下文都使用tag称呼)之间用”|”分割,每个”|”后面跟一个tag,保留或删除每一个”|”后面的tag进行排列组合、使用同一个种子(seed)生成多张图。数量为n^2,n为”|”的数量。
例如 a busy city street in a modern city | illustration | cinematic lighting
“|”后面的tag有illustration和cinematic lighting,因此会生成2^2=4张图,分别是 删除illustration和删除cinematic lighting、保留illustration和删除cinematic lighting、删除illustration和保留cinematic lighting,保留illustration和保留cinematic lighting。具体如下图
食用方法
在文本绘画(txt2img)、以画生画(img2img)的选项卡里下方的脚本中选择 “prompt matrix”

原贴中给出的图二介绍是5个tag,其实是4个tag,因此才有16种可能
介绍
(机翻,感觉好像没啥用??)
可以在以画生画中提取颜色
具体如下图
食用方法
命令行参数添加 --gradio-img2img-tool color sketch
注意事项
只能用在以画生画,用以文绘画会导致浏览器严重卡顿

介绍
此处参考链接②(txt2imghd)
程序运行后的步骤基本如下:
① 先使用如图像放大(Extras)的方式放大两倍图像。(固定两倍,暂时不可修改)
② 以web中指定的宽度和高度(Width和Height)为基准将放大图像分为n个片段 (tiles)。
③ 将每个片段放入以画生画(img2img)中改进。
④ 最后将所有片段拼回合成输出图像,达到优化放大的功能。
由于每个片段之间会有重叠,所以片段的大小会非常重要。
官方给的样例:(大概是默认Tile overlap = 64的情况下)放大前512*512的图像(放大后为1024*1024)会有9个512*512个片段,但只会有4个640*640片段。
食用方法
在以画生画(img2img)的选项卡里下方的脚本中选择”SD upscale”。
调整栏
Tile overlap:片段重叠的大小,越大重叠越多
Upscaler:图像放大所使用的方法,同Extras
食用建议
① 采样方法(Sampling method)使用Euler a
② 噪点强度(Denoising strength)使用0.2,如果你够勇可以上0.4
不同扩大图片的对比图:

这个功能很多人都搬运过了,这里就简单说一下
所有默认tag权值(也可以称为注意力,attention)为1,越大tag效果越强。
注意,webui中并不能使用{ }来强调语句,并且是1.1倍而不是1.05
小括号
两个功能:
① 修改权值:(tag:n),使tag的权值修改为n,如(cute:1.5),强调该tag为原来的1.5倍。
② 强调tag:(tag),使tag的权值扩大1.1倍,(tag) = (tag:1.1),可以叠加,效果相乘,如((tag)) = (tag:1.21) (1.1*1.1=1.21)
中括号
[tag]权值缩小至1/1.05≈0.952,[tag]=(tag:0.952),可以叠加,效果相乘,如 [[tag]]=(tag:0.907) (1/1.1/1.1≈0.826) 。
其他
如果你是单纯使用括号而不影响它的权值,可以使用’\’转移字符,如\(word\)。
但是一般国内都是直接用逗号隔开的单词来叠加tag,而国外会有人使用语句来生成图像,所以一般用不到。
功能介绍
用以图生图(img2img)的输出的图片为以图生图新的输入。也就是以图生图生成的图片保存后,用该图片替换输入图片。
食用方法
在以画生画(img2img)的选项卡里下方的脚本中选择 “Loopback”
调整栏
Loops:循环次数
Denoising strength change factor:噪点强度变化系数,即每次循环的噪点强度为上一次的倍数,如设置为1.1,噪点为0.5,则第二次的输出噪点为0.5*1.1=0.55,第三次为0.55*1.1=0.605,以此类推。
介绍
筛选合适参数必会脚本!出精图必会脚本!
通过设置X、Y(列和行)对应的参数、值的变化来生成不同参数的图像矩阵。
在参数不使用种子(Seed)的情况下一般默认出的图为同一个种子
Batch count对应生成多少张不同种子的矩阵
Batch size则是每一个坐标有多少张图
参数类型
大括号内为对应的参数数值(Values)类型
· Nothing:无,这一坐标轴不出图
· Seed:种子 (一般使用此参数来达到一张图显示出多个种子下,某单个参数不同值的情况下对比,使得对比图比较美观,此时将Seed放在y轴中) {整型}
· Var. seed与Var.strength:变化(Variations)种子与强度,具体使用方法将在下面介绍。{整型、浮点型}
Var.seed {整型}
Var.strength {浮点型,范围0-1}
· Steps:取样步数 {整型}
· CFG Scale:关键词拟合度 {整型、浮点型}
· Prompt S/R:关键词tag,与提示词矩阵不同的是,它是使用输入的tag中的一个来生成矩阵(而提示词矩阵是根据使用、不使用该提示词进行排列组合){字符串}
· Prompt order:关键词顺序,暂时不知道怎么用的,待补充
· Sampler:采样器 {特定字符串,具体见webui中Sampler method}
· Checkpoint name:大炉模型 {字符串}
· Hypernetwork:超网 {字符串}
· Hypernetwork str.:超网强度,同settings里的Hypernetwork strength {浮点型,范围0-1}
· Clip skip:Clip停止点,位于settings里,一般默认2是最好选择,如果你想测试也可以试试。
· Denoising:噪点强度,在以图生图(img2img)中使用 {浮点型,范围0-1}
Eta、Sigma Churn、Sigma min、 Sigma max、 Sigma noise,为settings最右下角的地方,暂时不知道有什么用,待补充。
参数数值(Values)使用方法
字符串
直接写名字,不同字符串之间用 分隔逗号”,” 隔开,如:
KFC, Thu, V wo, 50,共4个字符串
如果你想让一个字符串中包含”,”逗号,则应该把该逗号用双引号中,并且保证双引号与分隔逗号之间以及双引号内部没有空格,如:
V wo,“KFC,Thu”,50,共3个字符串,其中KFC, Thu属于同一个字符串内。
若有空格,则会把”KFC 与 Thu”视为两个不同的字符串。
整型与浮点型
四种规则,除了和字符串一样的格式以外,还有以下三种额外的规则:
(以下运行几次的意思就是该坐标会出多少张图)
① n-m
从n到m,步数为1,共运行(m-n+1)次,如:
1-5,则为1 2 3 4 5,共运行5次。
② n-m(+/-i)
从n到m,步数为+/- i,共运行j = [|(m-n)|/i+1]次,如:
1-5(+2),则为1 3 5,共运行3次。
3-1(-0.5),则为 3 2.5 2 1.5 1共运行5次。
③ n-m[j]
从n到m,运行j次,则步数i = |(m-n)|/(j-1),如
1-3[5],则为1 1.5 2 2.5 5,运行五次,步数为(3-1)/(5-1)=0.5
设Batch size = NumBs,则一次坐标轴出图的总图数则为 j_x * j_y * NumBs

其他调整栏
Draw legend:显示注释,类似于上图的”CFG Scale:5.0”等。
Include Separate Images:在web中,除了矩阵图以外还会单独显示每一张图。上图是没有勾选该选项,只显示了矩阵图。(如果在settings里勾选过默认保存图片的话,即使没有勾选这个选项也会将每一张图都保存)
Keep -1 for seeds:每一张图都是随机种子(不勾选所有图都是同一个种子,除非你x、y中参数类型选择了seed)
介绍
图片种子(seed)改变的是图像的整体外观,变化种子(Var. seed)则是支持对图像的微变。用户可以通过改变微变种子(Var.seed)以及微变强度(Var.strength)来达到不同效果。
其中,如果Var.strength (范围为0~1)为0的话,则获得与原种子相同的图;如果处于最大值1的话,会获得与原图完全不同的效果。因此如果只是微调,建议设置在0-0.2之间
食用方法
在“seed”旁边的Extra”里

介绍
在以图生图和放大中很常见的选项,这个内容比较简单,就只有以下三个:
Just resize:只调整图片大小,图片所有内容进行保留,如果输入与输出的长宽比例不同会采取拉伸
Crop and resize:裁剪与调整大小,如果输入与输出的长款比例不同,以图片中心向四周将比例外的部分进行裁剪
Resize and fill:调整大小与填充,如果输入与输出分辨率不同,则以图片中心向四周比例内多余的部分进行填充生成图片(类似于Outpainting)
介绍
该功能可以让你在特定采样步数(Sampling steps)中取代、删除、添加tag。
改变越晚则使得取代前的tag对图片影响越大、取代后的tag对图片影响越小。(相当于间接改变权值)
食用方法
from和to是tag,表示取代前和取代后
when是数字,可以是0-1的浮点型或者大于0的整型
如果是0-1的浮点型,设总取样步数为n,则表示在第n*when步的时候from被取代为to。(即占总步数的比例)
如果是大于0的整型,则表示在第when步的时候from被取代为to。(即具体步数)
When越大,from的影响越大,to的影响越小。
在prompt中使用如以下的语法:
① [from:to:when]
在when的时候使from被取代为to(to取代from)。
② [from : : when]
在when的时候删除from
③ [to:when]
在when的时候添加to
例如,a [fantasy:cyberpunk:16] landscape,一个(科幻:赛博朋克:16)的风景画。在前16步,会先生成科幻风景画,在16步后,开始生成赛博朋克风景画。
下方x/y矩阵图为 “一位微笑的二战将军肖像,[男:女:x]” (x为x轴显示的比例)
(其中x=0.0的时候,表示从一开始就从女性生成)

额外内容:交替编辑(Alternating Words)
介绍
每一步的tag都进行轮回改变
食用方法
使用中括号”[ ]”写多个tag,并且tag之间用’|’隔开,从第一个取样步数开始每一步从左向右进行tag替换,直到最后一个tag结束后再从第一个重新开始。
例如:[cow|cow|horse|man|siberian tiger|ox|man] in a field (中括号内有7个tag)
第一步使用cow in a filed,第二步使用cow in a filed,第三步使用 horse in a filed,以此类推,第七步到最后一个tag使用 man in a field,到第八步返回到第一个tag使用cow in a filed,依此类推、循环。
也许可以用来生成一些奇奇怪怪的古神图片
介绍
默认情况下,文本绘图(txt2img)使用高分辨率生成图片时可能会出现可怕的图像(尤其会出现多个相同的人脸情况),使用该功能会以较低分辨率部分渲染图像,然后将其放大,再以较高分辨率添加细节。
食用方法
在调整栏中勾选”Highres.fix”
目前这个补充就是该功能一般用来修复真人脸,二次元不适合。
介绍
该功能可以显示使用SD生成的图片的信息,例如tag、CFG scale、种子等。非常方便!!!白嫖党福音!以后再也不用跟别人直接要tag了!
另外如果你想保密的tag建议用其他软件转化一下图片。
食用方法
与img2img同等的选项卡中选择Png Info
介绍
该功能使用Euler扩散器分解输入的图像来创造输入tag的噪点图案(noise pattern)。
简单说的话,就是会尝试更改你输入的tag中的一个来微调图片(改变内容随机)
食用方法:
在以图生图(img2img)下方脚本中选择。
食用建议:(请勾选脚本调整栏的所有以override开头的选项)
1. 采样方法(Sampling method)必须使用Euler(因为该功能是基于Euler的)(在调整栏中选择”Override “Sampling method” to Euler”)
2. 输入你想改变的tag的类型在”Original prompt”
3. 解码步数(Decode steps)在50-60之间(这与脚本的解码步数相匹配)
4. CFG scale低于或等于2(你可以在ui-config.json 中改变CFG Scale/step的.5为.1)
5. Decode CFG scale低于1
6. Denoising strength:很重要,请设置为1(如果已经勾选override,那么强制为1)
7. 长宽使用输入图像的长宽
可以尝试改变Original prompt来调整改变的详细特征。
图像样例中,Original prompt是” A smiling woman with blue hair.”,解码步数为50,CFG scale为1.8,Decode CFG scale为1。

图片删除了red hair以及改变woman的内容