扩散模型的Prompt指南:如何编写一个明确提示

news2024/11/26 8:47:30

Prompt(提示)是扩散模型生成图像的内容来源,构建好的提示是每一个Stable Diffusion用户需要解决的第一步。本文总结所有关于提示的内容,这样可以让你生成更准确,更好的图像

一个好的提示

首先我们看看什么是好的提示,好的提示必须是详细和具体的。最好的办法是查看关键字类别和列表,关键字类别包括(因为提示都是英文的,所以这里我们也直接写英文的)

  1. Subject
  2. Medium
  3. Style
  4. Artist
  5. Website
  6. Resolution
  7. Additional details
  8. Color
  9. Lighting

你不需要所有类别的关键字,但是你需要从里面找到最需要的。

本文将使用v1.5基本模型。在本文的最后还有最新的2.0的模型结果的展示。所有图像都是用30步dpm++ 2M Karas采样器生成的,图像大小为512×704。

1、Subject

你想在图像中看到的东西。一个常见的错误是写得不够多。比如你想生成一个女巫:

A sorceress

这种词虽然简单,但是这给想象留下了太多的空间。你想让女巫长什么样?她穿什么?她在施什么魔法?她是站着,跑着,还是漂浮在空中?背景场景是什么?

一个最常见技巧是使用名人的名字。它们有很强的效果,是控制主题外观的绝佳方法。但是些名字不仅会改变脸,还会改变姿势和其他东西,所以后面我们会来解决这个问题。

作为一个演示,让我们让女巫看起来像Emma Watson,我们假设她很强大,很神秘还会使用闪电魔法。我们希望她的服装非常细致,这样她看起来会很有趣,那么提示词变为了:

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing

名字对这个模特产生了很大的影响。我认为她在稳定扩散的用户中很受欢迎,因为她看起来体面,年轻,在各种场景中都很稳定。

2、Medium

Medium是可以理解为材料或类别。例如插图、油画、3D渲染和摄影。Medium有很强的影响力,因为一个关键字就能改变风格图像的风格。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting

这些图像从照片变成了digital painting。

3、Style

Style是指形象的艺术风格。例如印象派、超现实主义、波普艺术等。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body

风格的确是修改了,但是对于我的审美,不太喜欢这个风格

4、Artist

艺术家的名字是强修饰符。它们可以使用特定的艺术家作为参考来模仿风格。使用多个艺术家的名字来混合他也是可以的。现在让我们再加上超级英雄漫画艺术家Stanley Artgerm Lau和19世纪的肖像画家Alphonse Mucha。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body, by Stanley Artgerm Lau and Alphonse Mucha

可以看到两位艺术家的风格融合在一起,效果很好。

5、Website

像Artstation和Deviant Art这样的小众网站聚集了许多不同类型的图像。在提示中使用它们可以引导图像向这些风格靠拢。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body, by Stanley Artgerm Lau and Alphonse Mucha, artstation

这虽然不是一个巨大的变化,但图像确实看起来像在Artstation上找到的。

6、Resolution

分辨率表示图像的清晰度和细节。让我们添加关键字

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body, by Stanley Artgerm Lau and Alphonse Mucha, artstation, highly detailed, sharp focus

因为前面的图像已经非常清晰和详细了。所以可能影响不是很大,但作为补充也没什么大问题。

7、Additional details

附加细节是用来修饰图像,可以为图像添加一些氛围。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body, by Stanley Artgerm Lau and Alphonse Mucha, artstation, highly detailed, sharp focus, sci-fi, stunningly beautiful, dystopian

手画的并不好,这是因为1.5的模型就这样,这是一个已知的问题。

8、Color

可以通过添加颜色关键字来控制图像的整体颜色。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body, by Stanley Artgerm Lau and Alphonse Mucha, artstation, highly detailed, sharp focus, sci-fi, stunningly beautiful, dystopian, iridescent gold

就是这种黄金AK的效果😏

9、Lighting

任何摄影师都会告诉你,灯光是创造成功图像的关键因素。灯光关键字可以对图像的外观产生巨大的影响。让我们为提示符添加电影般的灯光和黑暗。

Emma Watson as a powerful mysterious sorceress, casting lightning magic, detailed clothing, digital painting, hyperrealistic, fantasy, Surrealist, full body, by Stanley Artgerm Lau and Alphonse Mucha, artstation, highly detailed, sharp focus, sci-fi, stunningly beautiful, dystopian, iridescent gold, cinematic lighting, dark

基本上一个好的提示包含的部分我们就介绍完了,在主题中添加了一些关键字的图像已经很好了。对于Stable Diffusion通常不需要有很多关键词就可以获得好的图像。但是Midjourney还是需要的。

否定提示 Negative prompt

使用否定提示是另一种很好的控制图像的方法,这里的提示内容是不想要的东西。可以是名称,可以是样式,不需要的属性,等等

使用负提示符对于v2模型是必须的。如果没有它,图像将远远不如v1。而对于我们现在介绍的v1.5,它们是可选的,但建议使用它们,因为它们就算没用,也不会有坏处。

下面是作为Negative prompt输入的词语

ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, extra limbs, disfigured, deformed, body out of frame, bad anatomy, watermark, signature, cut off, low contrast, underexposed, overexposed, bad art, beginner, amateur, distorted face, blurry, draft, grainy

看看这张,就非常的霸气。

提示的语法

如果你使用Midjourney,那么可以跳过这节,但是如果你使用稳定扩散的话,那么一定要看完。

本文以 Stable Diffusion web为例

1、关键词权重

权重语法是(keyword: factor)。Factor是一个值:小于1表示不重要,大于1表示更重要。

例如,我们可以在下面的提示中调整关键字dog的权重,这样会生成多个狗

(dog:1.5), autumn in paris, ornate, beautiful, atmosphere, vibe, mist, smoke, fire, chimney, rain, wet, pristine, puddles, melting, dripping, snow, creek, lush, ice, bridge, forest, roses, flowers, by stanley artgerm lau, greg rutkowski, thomas kindkade, alphonse mucha, loish, norman rockwell.

2、() 和 []

调整关键字强度的等效方法是使用()和[]。(keyword)将关键字强度提高1.1倍,与(keyword:1.1)相同。[keyword]将关键字强度降低为0.9倍, 与(keyword:0.9)。

也可以进行嵌套:

(keyword): 1.1
((keyword)): 1.21
(((keyword))): 1.33

都是乘法的关系:

[keyword]: 0.9
[[keyword]]: 0.81
[[[keyword]]]: 0.73

3、混合关键字

也可以混合使用两个关键字。

[keyword1 : keyword2: factor]

Factor控制keyword1切换到keyword2的步骤。它是一个0到1之间的数字。

Oil painting portrait of [Joe Biden: Donald Trump: 0.5]

如果是30步采样,那么步骤1到15中的提示为

Oil painting portrait of Joe Biden

16到30步就变为了:

Oil painting portrait of Donald Trump

可以看到中间的步骤“懂王”穿了一套白色西装,更像是拜登装。这是一个非常重要的关键字混合规则的完美示例:第一个关键字决定全局组合。早期的扩散步骤决定了整体的组成。后面的步骤细化细节。

4、脸的混合

一个常见的用例是借用演员的形象创建一个具有特定外观的新面孔,比如,[Emma Watson: Amber heard: 0.85],看看40步的结果:

如果能够仔细选择两个名称并调整因子,我们就可以精确地得到想要的外观。

以上就是一些基本的语法除此以外在Stable Diffusion web中还可以使用来指定使用的lora,这个我们在后面做演示

提示符可以有多长?

一半情况下的限制是75个令牌。这也跟据你使用的Stable Diffusion服务有所不同

这里的令牌与单词会有所不同。Stable Diffusion使用CLIP模型自动将提示转换为令牌标记,这是它所知道的单词的数字表示。如果你输入一个它以前没见过的词,它会被分解成2个或更多的子词,直到它知道它是什么,所以会被转换为更多的令牌。例如,dream是一个,beach是一个。但是如果没有空格dreambeach,因为模型不认识这个词,所以模型把这个词分解成它知道的dream和beach算作2个。

AUTOMATIC1111的Stable Diffusion web没有限制。但是如果提示符包含超过75个标记(CLIP标记器的限制),它将开始另一个75个标记的新块,新的“限制”变为150。这个过程会一直持续下去,直到你的内存耗尽。

并且每75个标记的块都是独立处理的,产生的表示在输入Stable Diffusion的U-Net之前被连接起来。

可以通过查看提示输入框右上角的小框来检查令牌的数量。

检查关键字

我们使用的关键字并不意味着它是有效的。所以需要检查关键字的有效性。例如,v1.5模型知道美国画家Henry Asencio吗?

henry asencio

看来它知道

那么wlop呢?

wlop

看来训练的时候没有这个关键词,所以我们经过测试,这个模型就别用这个关键词了。

限制想象

要想用好Stable Diffusion你需要像Stable Diffusion一样思考。它只是一个图像采样器,生成的像素值,所以你要限制他的想象,通过提示缩小它的采样空间。

看看下面的区别:

castle

castle, blue sky background

wide angle view of castle, blue sky backgroun

在提示中添加更多的描述关键字缩小了城堡的样本范围。在提示符中指定的越多,图像的变化就越少。

属性关联

有些属性是紧密相关的。稳定扩散产生最有可能产生意想不到的关联效应的图像。

a young female with blue eyes, highlights in hair, sitting outside restaurant, wearing a white outfit, side light

a young female with brown eyes, highlights in hair, sitting outside restaurant, wearing a white outfit, side light

虽然没有注明种族。但由于蓝眼睛的人主要是欧洲人,所以产生了白人。棕色眼睛在不同种族中更常见,所以你会看到更多样化的种族样本,这个看着就是亚洲人。

微调

最后就最关心的微调:使用自定义模型是最简单的方法来实现一个风格,由于大型的开源社区,数百个自定义模型是免费的。

使用DreamShaper(一种针对人像插图进行了微调的模型):

这是一种非常帅气的风格。该模型具有生成清晰而漂亮的面孔,DreamShaper是v1.5的一个很好的微调方法,但是现在已经是2.0了,我们有了更新的方法。

Stable Diffusion 2.0

我们以前介绍过Stable Diffusion 1.5的本地安装,但是现在已经更新到2.0了,借助于AUTOMATIC1111的Stable Diffusion web 我们可以很好的自定义和加载模型

上面的提示是:

<lora:koreanDollLikeness_v15:0.66>, ((Smile))),best quality, ultra high res, (photorealistic:1.4), 1girl,(green yoga pants:1), (Kpop idol), (aegyo sal:1), (Medium-sized chest), (Medium-sized breasts),(light brown short ponytail:1.2), ((puffy eyes)), looking at viewer, full body, streets, outdoors

如果你看了本文,一定只要这些内容的含义,然后需要介绍的是<lora:koreanDollLikeness_v15:0.66>我们这里使用了koreanDollLikeness_v15这个lora(新的微调模型)

否定提示是:

paintings,sketches,(worst quality:2),(lowquality:2),(normal quality:2),lowres, normalquality,((monochrome)),((grayscale)),skin spots,acnes, skin blemishes,age spot,glans

随机种子: 738359080

大图:

看着不错把,比1.5强很多了,我们在自己电脑上也可以直接使用,在明天的文章中我们将介绍:如何安装AUTOMATIC1111的Stable Diffusion web ,下载模型,找lora等操作你可以生成跟我这个一样的图片。

https://avoid.overfit.cn/post/79149f5b661c46bdaf92ae59b220d35e

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MCM箱模型建模方法及大气O3来源解析

详情点击链接&#xff1a;MCM箱模型建模方法及大气O3来源解析一、大气中O3形成、MCM和Atchem 2原理及Linux系统安装1.大气中O3形成的原理 2、MCM原理及基本流程3、Atchem 2 下载安装4、Linux系统安装5、Atchem 2 运行需要的其他工具A、Fortran&#xff1b;B、Python&#xff1…

小程序分包(普通分包、独立分包)

普通分包和独立分包的区别 当小程序从普通的分包页面启动的时候&#xff0c;首先需要下载主包独立分包是不依赖看于主包就可以运行&#xff0c;提升分包的执行速度&#xff0c;一个小程序可以有多个独立分包。 独立分包属于分包的一种。普通分包的所有限制都对独立分包有效。独…

基于LDA+SVM实现人脸识别模型

基于LDASVM实现人脸识别模型 描述 人脸识别&#xff08;图像识别&#xff09;是机器学习领域十经典的应用&#xff0c;在本质上&#xff0c;人脸识别属于监督学习中的分类问题。前面章节中我们已经学习了支持向量机&#xff08;SVM&#xff09;&#xff0c;该算法在图像分类领…

专为智能设备安全打造 | 基于ACM32 MCU的智能断路器方案

随着我国电网建设的快速发展&#xff0c;数字化变电站成为建设和研究的热点&#xff0c;数字化变电站的核心在于一次设备的智能化与二次设备的网络化&#xff0c;对于断路器这种极其重要的电力一次设备而言&#xff0c;其智能化的实现有十分重要的意义&#xff0c;断路器智能化…

耗时半月,终于把牛客网上的软件测试面试八股文整理成了PDF合集(测试基础+linux+MySQL+接口测试+自动化测试+测试框架+jmeter测试+测试开发)

大家好&#xff0c;最近有不少小伙伴在后台留言&#xff0c;近期的面试越来越难了&#xff0c;要背的八股文越来越多了&#xff0c;考察得越来越细&#xff0c;越来越底层&#xff0c;明摆着就是想让我们徒手造航母嘛&#xff01;实在是太为难我们这些程序员了。 这不&#xf…

【Git】速食Git,一文学会Git使用

1.什么是版本控制 版本控制是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史&#xff0c;方便查看更改历史记录&#xff0c;备份以便恢复以前的版本的软件工程技术。【通俗来说就跟我们所玩的游戏一样&#xff0c;不断地更新迭代游戏内容&#xff0c;比如…

微服务高级篇学习【4】之多级缓存

文章目录前言一 多级缓存二 JVM进程缓存2.1 案例导入2.1.1 使用docker安装mysql2.1.2 修改配置2.1.3 导入项目工程2.1.4 导入商品查询页面2.1.5 反向代理2.2 初识Caffeine2.3 实现JVM进程缓存三 Lua脚本入门3.1 安装Lua3.2 Lua语法学习四 实现多级缓存4.1 OpenResty简介4.2 Ope…

STK实例场景创建及TLE文件导入

学习过程主要参考杨颖、王琦老师的《STK在计算机仿真中的应用》。&#xff08;值得注意的是&#xff0c;书中的STK版本为5.X&#xff0c;我使用的版本为11.6&#xff09; 创建实例场景 在默认的工具条单击第一个按钮&#xff08;或File→New&#xff09;&#xff0c;并设置场…

【NAS群晖drive异地访问】远程连接drive挂载电脑硬盘「内网穿透」

文章目录前言1.群晖Synology Drive套件的安装1.1 安装Synology Drive套件1.2 设置Synology Drive套件1.3 局域网内电脑测试和使用2.使用cpolar远程访问内网Synology Drive2.1 Cpolar云端设置2.2 Cpolar本地设置2.3 测试和使用3. 结语转发自CSDN远程穿透的文章&#xff1a;【群晖…

魔兽世界私服架设教程—魔兽大服务器合并列表

都说魔兽世界是最经典的网游&#xff0c;可惜我沉迷于程序的世界&#xff0c; 用以下命令down源码 git clone git://github.com/mangos/mangos.git 编译的时候会出错&#xff0c;找不到以下两个文件 revision.h SystemConfig.h 其实以上文件只是简单的定义同个编译的宏而…

第一章 初识NANO板卡

有人说&#xff1a;一个人从1岁活到80岁很平凡&#xff0c;但如果从80岁倒着活&#xff0c;那么一半以上的人都可能不凡。 生活没有捷径&#xff0c;我们踩过的坑都成为了生活的经验&#xff0c;这些经验越早知道&#xff0c;你要走的弯路就会越少。 本文链接:第一章 初识NANO…

事实胜于雄辩,苹果MacOs能不能玩儿机器/深度(ml/dl)学习(Python3.10/Tensorflow2)

坊间有传MacOs系统不适合机器(ml)学习和深度(dl)学习&#xff0c;这是板上钉钉的刻板印象&#xff0c;就好像有人说女生不适合编程一样的离谱。现而今&#xff0c;无论是Pytorch框架的MPS模式&#xff0c;还是最新的Tensorflow2框架&#xff0c;都已经可以在M1/M2芯片的Mac系统…

Transformer中的注意力机制及代码

文章目录1、简介2、原理2.1 什么是注意力机制2.2 注意力机制在NLP中解决了什么问题2.3 注意力机制公式解读2.4 注意力机制计算过程3、单头注意力机制与多头注意力机制4、代码4.1 代码14.2 代码21、简介 最近在学习transformer&#xff0c;首先学习了多头注意力机制&#xff0c…

Spring MVC(2)-跨域、CORS、XSS、 CSFR

同源和跨域 同源 什么是同源&#xff1f;请求的“协议ip(域名)端口”被称之为“源”。 如果当前页面的url和在当前页面中要访问的url具有相同的源&#xff0c;那么我们称这两个请求“同源”&#xff0c;即它们来自或者去往同一个服务器。 跨域 什么是跨域&#xff1f;如果…

基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域应用

【自选】 时间地点&#xff1a;2023年7月22日-28日【乌鲁木齐】时间地点&#xff1a;2023年8月12日-18日【福建泉州】 【六天实践教学、提供全部资料】 专题一、空间数据获取与制图 1.1 软件安装与应用讲解 1.2 空间数据介绍 1.3海量空间数据下载 1.4 ArcGIS软件快速入门…

Android有官方的GPS定位API,为什么还要使用百度/高德定位SDK ?

1. 背景 小组在一个Demo项目中&#xff0c;图省事准备使用官方的GPS定位API。 但在我的印象中&#xff0c;官方的定位API是不好用的&#xff0c;一般都是用 高德地图/百度地图 的定位SDK的。 使用官方的定位API获取定位的话&#xff0c;在办公室调试的时候&#xff0c;可能室内…

技术人的管理学-业务管理

主要内容前言制定计划遇到的问题&#xff1f;过程监控遇到的问题&#xff1f;复盘改进遇到的问题&#xff1f;通过PDCA循环解决业务管理问题总结前言 没有人天生就会管理&#xff0c;优秀的管理者都是在知行合一的过程中成长起来的&#xff0c;他们既需要系统的管理知识&#…

数据结构_第十三关(2):快速排序

目录 1.快速排序 原理&#xff1a; 代码如下&#xff08;递归实现&#xff09;&#xff1a; 性能比较 快速排序的特性总结 2.快速排序的优化 1&#xff09;三数取中优化&#xff1a; 2&#xff09;小区间优化&#xff1a; 3. 挖坑法&#xff08;快排的另一种思路&#…

Android Jetpack 从使用到源码深耕【调度任务组件WorkManager 从实践到原理 】(三)

本文,是Jetpack 调度任务组件WorkManager 从实践到原理系列文章的最后一篇,本文我们将对WorkManager 任务的具体执行源码,进行深入的解读。 大家坐好,我们要开始飙车了。 1.任务的具体执行 书接上文,我们既然知道了WorkManager,既然把worker包装为了workrequset,然后…

本地生活为什么会迎来爆发?点赋科技带你了解这些关键点

随着全球疫情的结束和加速数字化转型进程&#xff0c;本地生活市场已经成为了经济发展的亮点。本地生活指的是人们在生活中所需的一切服务和消费&#xff0c;例如美食、购物、医疗保健、教育培训等各种类别。点赋科技就和大家来聊聊其中的一些关键点。 以下是本地生活迎来爆发的…