草庐IT

Stable Diffusion 关键词tag语法教程

IT教程精选 2023-04-10 原文

Stable Diffusion 关键词tag语法教程

AI绘图在线体验

二次元绘图

在线体验地址:Stable Diffusion
模型包括:

  • NovelAI,NovelAI的模型训练使用了数千个网站的数十亿张图片,包括 Pixiv、Twitter、DeviantArt、Tumblr等网站的作品。

  • Waifu,waifu的模型可用于生成二次元的卡通形象,可以生成独有的二次元动漫小姐姐和主人公

  • Stable diffusion-v1.5,以英文为输入的通用图像生成模型

中文输入绘图

在线体验地址:Stable Diffusion

  • 太乙模型,首个开源的中文Stable Diffusion模型,基于0.2亿筛选过的中文图文对训练。

提示词 Prompt

Prompt 是输入到文生图模型的文字,不同的 Prompt 对于生成的图像质量有较大的影响

支持的语言

Stable Diffusion, NovelAI等模型支持的输入语言为英语,SD支持用自然语言描述,不过还是推荐使用用逗号分隔的一个个的关键词来写,当然表情符号,emoji,甚至一些日语都是可以用的。

tag语法

  1. 分隔:不同的关键词tag之间,需要使用英文逗号,分隔,逗号前后有空格或者换行是不碍事的
    ex:1girl,loli,long hair,low twintails(1个女孩,loli,长发,低双马尾)

  2. 混合:WebUi 使用 | 分隔多个关键词,实现混合多个要素,注意混合是同等比例混合,同时混。
    ex: 1girl,red|blue hair, long hair(1个女孩,红色与蓝色头发混合,长发)

  3. 增强/减弱:有两种写法

  • 第一种 (提示词:权重数值):数值从0.1~100,默认状态是1,低于1就是减弱,大于1就是加强
    ex: ,(loli:1.21),(one girl:1.21),(cat ears:1.1),(flower hairpin:0.9)

  • 第二种 (((提示词))),每套一层()括号增强1.1倍,每套一层[]减弱1.1倍。也就是套两层是1.1*1.1=1.21倍,套三层是1.331倍,套4层是1.4641倍。

    ex: ((loli)),((one girl)),(cat ears),[flower hairpin]和第一种写法等价

  • 所以还是建议使用第一种方式,因为清晰而准确

  1. 渐变:比较简单的理解时,先按某种关键词生成,然后再此基础上向某个方向变化。
    [关键词1:关键词2:数字],数字大于1理解为第X步前为关键词1,第X步后变成关键词2,数字小于1理解为总步数的百分之X前为关键词1,之后变成关键词2

  • ex:a girl with very long [white:yellow:16] hair 等价为

    开始 a girl with very long white hair

    16步之后a girl with very long yellow hair

  • ex:a girl with very long [white:yellow:0.5] hair 等价为

    开始 a girl with very long white hair

    50%步之后a girl with very long yellow hair

  1. 交替:轮流使用关键词

    ex:[cow|horse] in a field比如这就是个牛马的混合物,如果你写的更长比如[cow|horse|cat|dog] in a field就是先朝着像牛努力,再朝着像马努力,再向着猫努力,再向着狗努力,再向着马努力

tag书写示例

建议按类似这样的格式书写提示词

画质词>>这个一般比较固定,无非是,杰作,最高画质,分辨率超级大之类的
风格词艺术风格词>>比如是照片还是插画还是动画
图片的主题>>比如这个画的主体是一个女孩,还是一只猫,是儿童还是萝莉还是少女,是猫娘还是犬娘还是福瑞,是白领还是学生
他们的外表>>注意整体和细节都是从上到下描述,比如发型(呆毛,耳后有头发,盖住眼睛的刘海,低双马尾,大波浪卷发),发色(顶发金色,末端挑染彩色),衣服(长裙,蕾丝边,低胸,半透明,内穿蓝色胸罩,蓝色内裤,半长袖,过膝袜,室内鞋),头部(猫耳,红色眼睛),颈部(项链),手臂(露肩),胸部(贫乳),腹部(可看到肚脐),屁股(骆驼耻),腿部(长腿),脚步(裸足)
他们的情绪>>表述表情
他们的姿势>>基础动作(站,坐,跑,走,蹲,趴,跪),头动作(歪头,仰头,低头),手动作(手在拢头发,放在胸前 ,举手),腰动作(弯腰,跨坐,鸭子坐,鞠躬),腿动作(交叉站,二郎腿,M形开腿,盘腿,跪坐),复合动作(战斗姿态,JOJO立,背对背站,脱衣服)
图片的背景>>室内,室外,树林,沙滩,星空下,太阳下,天气如何
杂项>>比如NSFW,眼睛描绘详细

将不同的分类的词,通过换行区分开,方便自己随时调整

(masterpiece:1.331), best quality,illustration,(1girl),(deep pink hair:1.331), (wavy hair:1.21),(disheveled hair:1.331), messy hair, long bangs, hairs between eyes,(white hair:1.331), multicolored hair,(white bloomers:1.46),(open clothes),beautiful detailed eyes,purple|red eyes),expressionless,sitting,dark background, moonlight, ,flower_petals,city,full_moon,

于是我们得到这样一张图

 

tag书写要点

  1. 虽然大家都管这个叫释放魔法,但真不是越长的魔咒(提示词)生成的图片越厉害,请尽量将关键词控制在75个(100个)以内。

  2. 越关键的词,越往前放。

  3. 相似的同类,放在一起。

  4. 只写必要的关键词。

反向提示词 Negative prompt

用文字描述你不想在图像中出现的东西
AI大致做法就是
1. 对图片进行去噪处理,使其看起来更像你的提示词。
2. 对图片进行去噪处理,使其看起来更像你的反向提示词(无条件条件)。
3. 观察这两者之间的差异,并利用它来产生一组对噪声图片的改变
4. 尝试将最终结果移向前者而远离后者
5. 一个相对比较通用的负面提示词设置

lowres,bad anatomy,bad hands,text,error,missing fingers,extra digit,fewer digits,cropped,worst quality,low quality,normal quality,jpeg artifacts,signature,watermark,username,blurry,missing arms,long neck,Humpbacked,missing limb,too many fingers,mutated,poorly drawn,out of frame,bad hands,owres,unclear eyes,poorly drawn,cloned face,bad face

引用

https://www.tjsky.net/tutorial/488

 

有关Stable Diffusion 关键词tag语法教程的更多相关文章

  1. ruby - 树顶语法无限循环 - 2

    我脑子里浮现出一些关于一种新编程语言的想法,所以我想我会尝试实现它。一位friend建议我尝试使用Treetop(Rubygem)来创建一个解析器。Treetop的文档很少,我以前从未做过这种事情。我的解析器表现得好像有一个无限循环,但没有堆栈跟踪;事实证明很难追踪到。有人可以指出入门级解析/AST指南的方向吗?我真的需要一些列出规则、常见用法等的东西来使用像Treetop这样的工具。我的语法分析器在GitHub上,以防有人希望帮助我改进它。class{initialize=lambda(name){receiver.name=name}greet=lambda{IO.puts("He

  2. ruby-on-rails - 使用 Sublime Text 3 突出显示 HTML 背景语法中的 ERB? - 2

    所以我在关注Railscast,我注意到在html.erb文件中,ruby代码有一个微弱的背景高亮效果,以区别于其他代码HTML文档。我知道Ryan使用TextMate。我正在使用SublimeText3。我怎样才能达到同样的效果?谢谢! 最佳答案 为SublimeText安装ERB包。假设您安装了SublimeText包管理器*,只需点击cmd+shift+P即可获得命令菜单,然后键入installpackage并选择PackageControl:InstallPackage获取包管理器菜单。在该菜单中,键入ERB并在看到包时选择

  3. ruby-on-rails - date_field_tag,如何设置默认日期? [ rails 上的 ruby ] - 2

    我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问

  4. ruby - 覆盖相似的方法,更短的语法 - 2

    在Ruby类中,我重写了三个方法,并且在每个方法中,我基本上做同样的事情:classExampleClassdefconfirmation_required?is_allowed&&superenddefpostpone_email_change?is_allowed&&superenddefreconfirmation_required?is_allowed&&superendend有更简洁的语法吗?如何缩短代码? 最佳答案 如何使用别名?classExampleClassdefconfirmation_required?is_a

  5. ruby 语法糖 : dealing with nils - 2

    可能已经问过了,但我找不到它。这里有2个常见的情况(对我来说,在编程Rails时......)用ruby​​编写是令人沮丧的:"astring".match(/abc(.+)abc/)[1]在这种情况下,我得到一个错误,因为字符串不匹配,因此在nil上调用[]运算符。我想找到的是比以下内容更好的替代方法:temp="astring".match(/abc(.+)abc/);temp.nil??nil:temp[1]简而言之,如果不匹配,则简单地返回nil而不会出错第二种情况是这样的:var=something.very.long.and.tedious.to.writevar=some

  6. ruby - Ruby 语法糖有 "rules"吗? - 2

    我正在学习Ruby的基础知识(刚刚开始),我遇到了Hash.[]method.它被引入a=["foo",1,"bar",2]=>["foo",1,"bar",2]Hash[*a]=>{"foo"=>1,"bar"=>2}稍加思索,我发现Hash[*a]等同于Hash.[](*a)或Hash.[]*一个。我的问题是为什么会这样。是什么让您将*a放在方括号内,是否有某种规则可以在何时何地使用“it”?编辑:我的措辞似乎造成了一些困惑。我不是在问数组扩展。我明白了。我的问题基本上是:如果[]是方法名称,为什么可以将参数放在括号内?这看起来几乎——但不完全是——就像说如果你有一个方法Foo.d

  7. postman接口测试工具-基础使用教程 - 2

    1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,

  8. 在VMware16虚拟机安装Ubuntu详细教程 - 2

    在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主

  9. hadoop安装之保姆级教程(二)之YARN的配置 - 2

    1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模

  10. ruby - 如何让Ruby捕获线程中的语法错误 - 2

    我正在尝试使用ruby​​编写一个双线程客户端,一个线程从套接字读取数据并将其打印出来,另一个线程读取本地数据并将其发送到远程服务器。我发现的问题是Ruby似乎无法捕获线程内的错误,这是一个示例:#!/usr/bin/rubyThread.new{loop{$stdout.puts"hi"abc.putsefsleep1}}loop{sleep1}显然,如果我在线程外键入abc.putsef,代码将永远不会运行,因为Ruby将报告“undefinedvariableabc”。但是,如果它在一个线程内,则没有错误报告。我的问题是,如何让Ruby捕获这样的错误?或者至少,报告线程中的错误?

随机推荐