【Stable Diffusion】入门:AI绘画提示词+参数设置攻略
目录
- 1 提示词
- 1.1 分类和书写方式
- 1.1.1 内容型提示词
- 1.1.2 标准化提示词
- 1.1.3 通用模板
- 1.2 权重
- 1.2.1 套括号
- 1.2.2 数字权重
- 1.2.3 进阶语法
- 1.3 负面提示词
- 2 参数详解
- 2.1 Sampling steps
- 2.2 Sampling method
- 2.3 Width, Height
- 2.4 CFG Scale
- 2.5 Seed
- 2.6 Batch count, Batch size
- 3 新手技巧
- 3.1 翻译大法
- 3.2 借助工具
- 3.3 抄作业
感谢前辈种树:哔哩哔哩
1 提示词
Prompts:提示词,告诉AI我们要画什么,多多益善,需要英文书写。提示词以词组为单位,不需要像完整的句子那样需要有完整的语法结构。
词组之间需要插入英文半角逗号作为分隔符,可以分行,每一行的末尾最好也加上分隔符。
1.1 分类和书写方式
1.1.1 内容型提示词
-
人物及主体特征
服饰穿搭:white dress
发型发色:blonde hair, long hair
五官特点:small eyes, big mouth
面部表情:smilling
肢体动作:stretching arms -
场景特征
室内室外:indoor / outdoor
大场景:forest, city, street
小细节:tree, bush, white flower -
环境光照
白天黑夜:day / night
特定时段:morning, sunset
光环境:sunlight, bright, dark
天空:blue sky, starry sky -
画幅视角
距离:close-up, distant
人物比例:full body, upper body
观察角度:from above, view of back
镜头类型:wide angle, Sony A7 III
1.1.2 标准化提示词
-
画质提示词
通用高画质:best quality, ultra-detailed, masterpiece, hires, 8k
特定高分辨率类型:extremely detailed CG unity 8k wallpaper, unreal engine rendered -
画风提示词
插画风:illustration, painting, paintbrush
二次元:anime, comic, game CG
写实系:photorealistic, realistic, photograph
1.1.3 通用模板
描述人物、描述场景、描述环境(时间、光照)、描述画幅视角、其他画面要素;高品质标准化、画幅标准化、其他特殊要求。
1.2 权重
调整词组优先级的方法:套括号和数字权重
1.2.1 套括号
注意格式是英文半角符号。
-
圆括号 ()
每套一层,权重×1.1倍。例如(((white flower))),此处调节white flower的权重变为原来的1.11.11.1=1.331倍,增强了该词组的作用。 -
大括号 {}
每套一层,权重×1.05倍。例如{{{white flower}}},此处调节white flower的权重变为原来的1.051.051.05=1.16倍,增强了该词组的作用。 -
方括号 []
每套一层,权重×0.9倍。例如[[[white flower]]],此处调节white flower的权重变为原来的0.90.90.9=0.729倍,减弱了该词组的作用。
1.2.2 数字权重
圆括号+数字,例如(white flower:1.5),调节white flower的权重为原来的1.5倍;(white flower:0.8),调节white flower的权重为原来的0.8倍。
调节权重的时候需要注意避免个别词条的权重太高,体验的安全范围是1±0.5左右。如果需要增强某个词条的作用,可以通过增加更多的同类型词条来协同增强它的效应。
1.2.3 进阶语法
-
混合:混合两个描述同一对象的提示词要素
white | yellow flower,生成黄色和白色混合的花。 -
迁移:连续生成具有多个不同特征的对象,不断迁移
[white | red | blue] flower,先生成白花,再生成红花,再生成蓝花。 -
迭代:与采样进程关联,一定阶段以后再生成特定对象
(white flower:bush:0.8),进程到达80%之前生成白花,80%之后再生成灌木。
1.3 负面提示词
不希望画面出现什么,就增加对应的反向提示词。例如:
low quality, worst 表示低质量的图片;
monochrome, grayscale 杜绝单色、灰度的图片,保持画面的色彩鲜艳;
bad proportions, 代表畸形的身体比例;
missing hands, extra fingers, 避免画的时候多只手多条腿或者少根手指之类。
2 参数详解
2.1 Sampling steps
迭代步数,越大最终效果越清晰。当步数大于20以后,后面的提升不大,就像从80分到90分100分一样。增加步数意味着更长的计算时间,算力充足时可以设置为30~40,最好不低于10。
2.2 Sampling method
采样方法,生成图像时使用的特定算法。
Euler a和Euler适合插画风格,出图朴素;DPM 2M和2M Karras速度较快;SDE Karras细节较为丰富;推荐使用带有+的,是改进过了的算法。大部分模型也有推荐使用的算法,可能是模型制作者自己测试过的。
2.3 Width, Height
宽和高,代表最终出图时的分辨率,设备支持的情况下越高越好;太高会显存爆掉,也很容易出现多人、多手、多脚的情况,原因是在训练模型的时候,用的图片分辨率一般都比较小,如果分辨率设置太大,模型会认为是多张图片拼接而成,所以会出现多人。
为了避免出现多人或者多手多脚,通常会设置成低分辨率,再通过高清修复(Hires Fix)来放大,本质上是进行了一次额外的图生图。
2.4 CFG Scale
提示词相关性,数值越高,模型反映提示词的程度越高。一般设置成7~12,太高容易变形。
2.5 Seed
随机种子,控制画面内容一致性的重要参数。
2.6 Batch count, Batch size
批次和数量,因为模型绘画的不确定性,同一组提示词也需要反复试验,期待在某一瞬间给到一个完美符合预期的画面,试验过程会很漫长。如果想要模型一直按照同一组提示词和参数去出图,把批次数调高,会不断进行,最后生成多张图片,方便筛选。
批次数量batch size不建议调,增大可以使每批次绘制的图像数量增多,理论上效率会更高,但是同一批绘制的方法是把它们拼在一起看作一张更大的图片一次去画,如果设备不好,非常容易爆显存,不如单批次画少一点,用更多的次数去画更多的图。
3 新手技巧
3.1 翻译大法
不知道该如何表达时,用自然的语言去描述想要画的东西,用翻译平台转成英文。先用一句话描述一个确切的场景,再把新的词组翻译成英文加到后面。
3.2 借助工具
辅助书写提示词的网站
3.3 抄作业
有些网站提供了大量的提示词,可以对已有提示词进行筛选。
https://openart.ai/
https://civitai.com/
相关文章:
【Stable Diffusion】入门:AI绘画提示词+参数设置攻略
目录 1 提示词1.1 分类和书写方式1.1.1 内容型提示词1.1.2 标准化提示词1.1.3 通用模板 1.2 权重1.2.1 套括号1.2.2 数字权重1.2.3 进阶语法 1.3 负面提示词 2 参数详解2.1 Sampling steps2.2 Sampling method2.3 Width, Height2.4 CFG Scale2.5 Seed2.6 Batch count, Batch si…...
Qt使用Q_DECLARE_INTERFACE Q_INTERFACES宏实现接口类使用qobject_cast进行类型转换
在写抽象类或者接口的时候,肯定是不能继承QObject的 但是又想使用qobject_cast进行类型转换,使用以下办法就能实现 #ifndef FACTORYINTERFACE_H__ #define FACTORYINTERFACE_H__ #include <QObject> class FactoryInterface{ public:FactoryInterf…...
docker离线搭建仓库
要在Docker中搭建本地仓库,可以按照以下步骤进行操作: 首先安装 Docker。根据不同的操作系统选择合适的版本并完成安装过程。打开命令行工具(如Terminal或PowerShell),运行以下命令来创建一个新的容器并将其设置为本地…...
ABC344 A-E题解
文章目录 A题目AC Code: B题目AC Code: C题目AC Code: D题目AC Code: E题目AC Code: 不易不难,写到5题很简单,但是要有足够的思维能力。 A 题目 我们用一个 flag 变量记录我们是不是在两个竖…...
Jeecg-boot 初次启动项目失败
1.将IDEA的字符编码全部改成utf-8 2. 更改database的密码 3.换个jdk重新启动...
封装的echarts子组件使用watch监听option失效的问题
项目场景: 我在项目里面封装了一个echarts组件,组件接收一个来自外部的option,然后我用了一个watch函数去监听这个option的变化,option变化之后,销毁,然后再新建一个charts表 碎碎念 问题如标题所示,这篇…...
爬虫入门到精通_框架篇14(PySpider架构概述及用法详解)
官方文档 Sample Code: from pyspider.libs.base_handler import *class Handler(BaseHandler):crawl_config {}# minutes24 * 60:每隔一天重新爬取every(minutes24 * 60)def on_start(self):self.crawl(http://scrapy.org/, callbackself.index_page)…...
WPF DataGrid常用属性
AlternationCount属性:表示有几行不同的颜色来回替换,如果设置2则表示有两个颜色交替循环 AutoGenerateColumns属性:是否生成列 CanUserAddRows属性:用户是否可以添加行 CanUserDeleteRows属性:用户是否可以删除行 …...
鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Stepper)
步骤导航器组件,适用于引导用户按照步骤完成任务的导航场景。 说明: 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 仅能包含子组件StepperItem。 接口 Stepper(value?: { index?…...
Python基础语法:基本数据类型(列表)
现实世界中总是存在一组一组的事物。"组"的概念作为基本数据类型的一种,它也是来源于我们去解决现实生活中的一些问题而产生的。它需要有“组”这样的一个数据类型来丰富我们的基本数据类型。 那么在Python中如何来表示“组”的概念呢? 在Py…...
神经网络线性量化方法简介
可点此跳转看全篇 目录 神经网络量化量化的必要性量化方法简介线性对称量化线性非对称量化方法神经网络量化 量化的必要性 NetworkModel size (MB)GFLOPSAlexNet2330.7VGG-1652815.5VGG-1954819.6ResNet-50983.9ResNet-1011707.6ResNet-15223011.3GoogleNet271.6InceptionV38…...
阿里云k8s内OSS报错UnKnownHost。
这个问题就是链接不上oss属于网络问题: 1.排查服务器 在服务器(ecs)上直接ping oss地址看是否能够通。 不通就要修改dns和hosts(这个不说,自己网上查) 2.排查容器 进去ping一下你的容器是否能访问到oss…...
nginx的使用,homebrew安装及使用nginx。
Nginx 是一个高性能的 HTTP 和反向代理服务器,它提供了诸如 IMAP、POP3 和 SMTP 等邮件代理服务。以下是 Nginx 的主要作用:12345 作为 Web 服务器。Nginx 能够以较少的系统资源提供高效率的服务,尤其在高并发连接下表现出色。1…...
计算机等级考试:信息安全技术 知识点六
1、P2DR模型是美国ISS公司提出的动态网络安全体系的代表模型,可用数学公式表达为Pt>DtRt,其中Pt表示:系统防护时间。 2、美国联邦政府颁布数字签名标准(Digital Signature Standard,DSS)的年份是1994 3、密码分析者(攻击者)已…...
vue provide 与 inject使用
在vue项目中,如果遇到跨组件多层次传值的话,一般会用到vuex,或者其他第三方共享状态管理模式,如pinia等,但是对于父组件与多层次孙子组件时,建议使用provide 与 inject,与之其他方式相比&#x…...
Vue3.0 所采用的 Composition Api 与 Vue2.x 使用的 Options Api 有什么不同?
开始之前 Composition API 可以说是Vue3的最大特点,那么为什么要推出Composition Api,解决了什么问题? 通常使用Vue2开发的项目,普遍会存在以下问题: 代码的可读性随着组件变大而变差每一种代码复用的方式ÿ…...
php集成修改数据库的字段
1.界面效果 2.代码 <?phpecho <form action"" method"post"><label for"table">表名:</label><input type"text" id"table" name"table"><br><div id"fieldsContaine…...
爬虫技术之正则提取静态页面数据
第一天 简单示例 在爬虫过程中,我们获取到了页面之后,通常需要做的就是解析数据,将数据持久化到数据库为我所用。如何又快又准确得提取有效数据?这是一门技术,看了我的博客之前可能略有难度,但各位大师看…...
字符串匹配算法:暴力匹配、KMP 算法、Boyer-Moore 算法、Rabin-Karp 算法
字符串匹配算法 字符串匹配算法是在一个字符串(称为文本)中查找另一个字符串(称为模式)出现的位置或者是否存在的算法。常见的字符串匹配算法包括暴力匹配、KMP算法、Boyer-Moore算法和Rabin-Karp算法。下面是对这些算法的简要介…...
微信小程序接入百度地图(微信小程序插件)使用文档
第一步配置域名 :在微信公众平台登录后配置服务域名称:https://apis.map.qq.com 第二步申请密钥 申请开发者密钥申请地址 第三步使用插件 选择添加插件 搜索腾讯位置服务地图选点 选择要授权的小程序 授权完毕会在这里显示插件信息 第四步查看使用文档 跳转至文…...
循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...
【 java 虚拟机知识 第一篇 】
目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...
HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
第三周 Day 3 🎯 今日目标 理解类(class)和对象(object)的关系学会定义类的属性、方法和构造函数(init)掌握对象的创建与使用初识封装、继承和多态的基本概念(预告) &a…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...
