关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

探索 StableDiffusion:生成高质量图片学习及应用(上)

发布时间:2023-06-30 13:00:36




本文主要介绍了 StableDiffusion在图片生成上的内容,然后详细说明了StableDiffusion 的主要术语和参数,并探讨了如何使用 prompt 和高级技巧(如图像修复、训练自定义模型和图像编辑)来生成高质量的图片。



介绍StableDiffusion


  StableDiffusion是什么


Stable Diffusion是一种潜在的文本到图像扩散模型,能够生成逼真的图像,只需任何文本输入,就可以自主自由创造漂亮的图像,使众多不会拍照的人在几秒钟内创造出惊人的图片。StableDiffusion可以生成不同的图片风格,比如:Anime  动画,realistic  写实,Landscape   风景,Fantasy  奇幻,Artistic  艺术。 还有很多其他的风格,都可以在网上看到。


  StableDiffusion主要术语


有一些图示来直观理解StableDiffusion,比较深奥,不过多解释:

https://zhuanlan.zhihu.com/p/599887666


  • 模型


https://stable-diffusion-art.com/models/

网上可以下载到的StableDiffusion模型非常多。只需要记得这些都是SD模型的微调版本即可,这些不同版本的StableDiffusion模型都是基于相同的算法和原理,并且都可以用于生成高质量的图像、音频、视频等数据。具体选择哪个版本取决于应用场景和具体需求。


以下是常见模型,以及说明:

也可以自己做模型的合并,在StableDiffusion的GUI界面如下操作即可:

  1. 使用 AUTOMATIC1111 GUI 合并两个模型,转到 Checkpoint Merger 选项卡,在 Primary model (A) 和 Secondary model (B) 中选择要合并的两个模型。
  2. 调整乘数 (M) 来调整两个模型的相对权重。将其设置为 0.5 将以相等重要性合并两个模型。
  3. 按下运行按钮后,新合并的模型就可以用了。


  • 微调模型:Embedding && Lora && Hypernetwork


  1. 1 CheckPoint:这些是真正稳定的扩散模型。它们包含生成图像所需的所有内容,不需要额外的文件。它们通常很大,大小为2-7 GB。本文的主题是它们。
  2. 2 Embedding:也称为Textual inversions。它们是定义新关键词以生成新对象或样式的小文件。通常为10-100 KB。您必须与CheckPoint模型一起使用。  
  3. 3 LoRA:它们是用于修改样式的检查点模型的小补丁文件。它们通常为10-200 MB。您必须与CheckPoint模型一起使用。也是用于给先有模型做一些微小的改变;可以对原有模型做补丁,然后通过关键词触发风格,人物。
  4. 4 Hypernetwork:它们是添加到CheckPoint模型的附加网络模块。它们通常为5-300 MB。您必须与CheckPoint模型一起使用。  


  • ControlNet 控制姿势


ControlNet是一种稳定的扩散模型,可以复制作品和人体姿势。想要使用的话再扩展中安装sd-webui-controlnet扩展即可。


正常情况下我们想要控制人物的姿势是十分困难的,并且姿势随机,而ControlNet解决了这个问题。它强大而多功能,可以与任何扩散模型一起使用。


主要作用:

  1. 1 边缘检测,家具摆放等
  2. 2 人体姿势复制


可用的模型以及说明:

  • 抽样算法


不同抽样算法的生成时间对比:


使用不同的抽样算法生成的图片:

a busy city street in a modern city 


  • Stable Diffusion 主要参数列表



https://stable-diffusion-art.com/know-these-important-parameters-for-stunning-ai-images/#Sampling_methods


如何生成高质量的图片


  什么是prompt?


在StableDiffusion中,"prompt"是指为GPT模型提供输入的文本段落或句子。它是用来引导模型生成有意义、准确的响应的关键因素之一。


  • 好的Prompt结构


  1. 1 Subject (required)  主体
  2. 2 Medium   艺术类别
  3. 3 Style   艺术风格
  4. 4 Artist   艺术家
  5. 5 Website   艺术流派
  6. 6 Resolution   清晰度
  7. 7 Additional details   额外的细节  
  8. 8 Color   色彩


同时可以考虑满足以下的条件:

  1. 在描述主题时要详细和具体。
  2. 使用多个括号()来增强其强度,使用[]来降低。
  3. 艺术家的名字是一个非常强的风格修饰符,使用的时候要知道这个是什么风格。


  • Prompt风格参考


如果不确定要用什么风格,可以去下面的两个地址搜一下对应的风格

  1. 1 关键词检索(laion-aesthetic-6pls):https://laion-aesthetic.datasette.io/laion-aesthetic-6pls/images
  2. 2 艺术风格汇总list of artists for SD:https://rentry.org/artists_sd-v1-4
  3. prompt查询参考:https://stablediffusionweb.com/prompts
  4. 3 查找Tag:https://aitag.top/
  5. 4 摄影大师:https://docs.google.com/spreadsheets/d/16KKh1FQmd-r98K9aWPBux5m9lc9PCV_T1AWgU54qXm8/htmlview


  • Prompt调整权重


使用()增加权重,使用[]降低权重;



a (word) - 将对单词的权重增加1.1倍

a ((word)) - 将对单词的权重增加1.21倍(= 1.1 * 1.1)

a [word] - 将对单词的权重减少1.1倍

a (word:1.5) - 将对单词的权重增加1.5倍

a (word:0.25) - 将对单词的权重减少4倍(= 1 / 0.25)

a \(word\) - 在提示中使用字面上的()字符,转义,不使用权重


prompt也可以从某个点位开始考虑生成指定的内容:

[from:to:when]


示例:a [fantasy:cyberpunk:16] landscape

  1. 开始时,模型将绘制一幅fantasy景观。
  2. 在第16步之后,它将切换到绘制一幅cyberpunk:景观,继续从fantasy停止的地方绘制。

另外一种语法:[cow|horse] in a field

第1步,提示是“cow”。第2步是“horse”。第3步是“cow”,以此类推。



更多精彩内容,欢迎观看:

探索 StableDiffusion:生成高质量图片学习及应用(中):

https://developer.leiyu.cn/article/1263238?groupCode=taobaotech


/template/Home/leiyu/PC/Static