【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 第二步申请密钥 申请开发者密钥申请地址 第三步使用插件 选择添加插件 搜索腾讯位置服务地图选点 选择要授权的小程序 授权完毕会在这里显示插件信息 第四步查看使用文档 跳转至文…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
