stable diffusion实践操作-SD原理

这篇具有很好参考价值的文章主要介绍了stable diffusion实践操作-SD原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

系列文章目录

本文专门开一节写SD原理相关的内容,在看之前,可以同步关注:
stable diffusion实践操作



前言

(后期补充)


一、原理说明

1.1、出图原理

<img src+“” width=600>

1.1.1 AI画画不是和人一样,从0开始,而是一个去噪点的过程:

stable diffusion实践操作-SD原理,SD,stable diffusion
<img src+“” width=600>

1.1.2 逆向去噪

所有的人图片都是从一张噪点图开始的。根据目标生成一张猫的图片,将噪点一步步转化为猫stable diffusion实践操作-SD原理,SD,stable diffusion
<img src+“” width=600>

1.1.3 AI如何学会去噪点的

AI首先将图片一步步加入噪点。
stable diffusion实践操作-SD原理,SD,stable diffusion
<img src+“” width=600>
所以任何一张图都可以逆向这个过程
stable diffusion实践操作-SD原理,SD,stable diffusion
<img src+“” width=600>
<img src+“” width=600>
stable diffusion实践操作-SD原理,SD,stable diffusion
<img src+“” width=600>

1.2、文生出图机制

生成图片,我们需要两个主要输入,提示词prompt和随机种子

  1. 将输入的文字进行编码传入潜空间。
  2. 在潜空间根据文字的描述,进行图片的绘制
  3. 将图片从潜空间的压缩态进行放大,补充细节,提升分辨率
    stable diffusion实践操作-SD原理,SD,stable diffusion

    stable diffusion实践操作-SD原理,SD,stable diffusion

本文知乎链接:
入口
clip模型
在 Stable Diffusion 模型中,prompt 是通过引导向量(guidance vector)来控制 U-Net 的。具体来说,prompt 会被编码成一个文本嵌入向量(text embeddings),然后与其他输入一起传递给 U-Net。这个过程可以分为以下几个步骤:

  1. 首先,将 prompt 输入到一个预训练的语言模型(例如 GPT)中,以获得对应的文本嵌入向量(text_embeddings)。
  2. 接下来,将 text_embeddings 与其他输入(如隐变量 latent_model_input 和时间戳 timestamp)拼接在一起,形成 U-Net 的输入。
  3. 将这个输入传递给 U-Net,并计算出有条件的噪声预测(noise_pred_text)。同时,也会计算出无条件的噪声预测(noise_pred_uncond)。
  4. 使用一个指导比例因子(guidance_scale)来调整有条件和无条件噪声预测之间的权重。这个因子可以根据实际需求进行调整,以控制 prompt 对生成结果的影响程度。
  5. 最后,将加权后的噪声预测传递给扩散调度器(scheduler),并更新隐变量(latents)。
    通过这种方式,prompt 能够影响 U-Net 的输出,从而在生成过程中引导模型产生符合预期的结果,即通过 prompt 产生我们想要的图。

解开Clip Skip值的秘密
stable diffusion实践操作-SD原理,SD,stable diffusion

1.2.1 文字编码 CLIP

计算机不能直接理解文本和图片
stable diffusion实践操作-SD原理,SD,stable diffusion
而是通过特征向量来标记
stable diffusion实践操作-SD原理,SD,stable diffusion
而这一项工作是通过CLIP模型来完成的
stable diffusion实践操作-SD原理,SD,stable diffusion
stable diffusion实践操作-SD原理,SD,stable diffusion

clip模型包括文字编码器和图片编码器,将文字和图片都编码成向量
stable diffusion实践操作-SD原理,SD,stable diffusion
所以CLIP设置的层数越高,图片和文字相关度越低,一般设置为2就可以了。

1.2.2 图片绘制

SD绘制图片内容的时候,并不是直接绘制512512的图片,而是绘制核心内容,6464,然后再将图片放大还原。
stable diffusion实践操作-SD原理,SD,stable diffusion
所以绘图的实际过程就是去噪
stable diffusion实践操作-SD原理,SD,stable diffusion

1.2.2.1 随机种子和采样器

SD会根据随机种子生成一张正态分布的噪点图,然后根据传入的文字,加入是狗,去向量数据库中搜索,生成狗的去噪方式。去噪方式又是采样器进行调用的
stable diffusion实践操作-SD原理,SD,stable diffusion
采样器会调用Unet模型,对图片中的噪点预测,生成噪点预测图
stable diffusion实践操作-SD原理,SD,stable diffusion
让噪点图减去预测出的全部噪点,生成最终的模型图片
stable diffusion实践操作-SD原理,SD,stable diffusion

1.2.2.2 迭代步数

Unet模型在噪点多的时候,预测并不理想,所以我们并不一次性全部采纳其预测的噪点,而是每次只采用一部分噪点,循环多次

stable diffusion实践操作-SD原理,SD,stable diffusion
这个过程就是下面的迭代步数
stable diffusion实践操作-SD原理,SD,stable diffusion
设置过小,图片与文本匹配度较低,过大,则会画蛇添足,一般我们设置为20-40步即可
stable diffusion实践操作-SD原理,SD,stable diffusion

1.2.2.3 采样方法

采样所采用的算法,不同算法消耗的时间不同。
stable diffusion实践操作-SD原理,SD,stable diffusion
采样器时间对比
stable diffusion实践操作-SD原理,SD,stable diffusion
一般推荐大家 使用DPM++ SDE Karas/DPM2++ SDE Karas
对比:
stable diffusion实践操作-SD原理,SD,stable diffusion
stable diffusion实践操作-SD原理,SD,stable diffusion
stable diffusion实践操作-SD原理,SD,stable diffusion

1.2.3放大图片

在潜空间产生的图片比较小,我们需要VAE将其放大,优化细节。
stable diffusion实践操作-SD原理,SD,stable diffusion

这就是整个过程
stable diffusion实践操作-SD原理,SD,stable diffusion


总结

例如:以上就是今天要讲的内容。文章来源地址https://www.toymoban.com/news/detail-691477.html

到了这里,关于stable diffusion实践操作-SD原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • stable diffusion实践操作-批次出图

    stable diffusion实践操作 本章主要介绍SD批次出图。 想要一次产生多张图片的时候使用。 生成批次和每批数量至少一个为1, 产生了一张合图和4张单独图片。 例如:以上就是今天要讲的内容。

    2024年02月09日
    浏览(29)
  • stable diffusion实践操作-hypernetworks

    本文专门开一节写hypernetworks的内容,在看之前,可以同步关注: stable diffusion实践操作 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 `本章注意要介绍Hypernetwork,也叫做超网络,下面是一个原理概述。 中文名字叫超网络,功能和embedding,lora类似,

    2024年02月10日
    浏览(28)
  • stable diffusion实践操作-LyCORIS

    stable diffusion实践操作 LyCORIS,可以理解为lora的加强版本。 LyCORIS - Lora beYond Conventional methods, Other Rank adaptation Implementations for Stable diffusion. 超越传统Lora的方法,应用在SD上 github最新地址:https://github.com/KohakuBlueleaf/LyCORIS 本章根据B站A_Eye视频整理而来,再次感谢,如果想要看原

    2024年02月10日
    浏览(28)
  • AI 作画:Stable Diffusion 模型原理与实践

    本文首先简单介绍 Stable Diffusion 模型结构 Latent Diffusion 的论文和博客,然后介绍模型的训练和推理技术细节(不含数学推导),接着介绍几个 prompt 搜索引擎等实用工具,最后简单介绍 AI 作画(图像生成)的发展史,并测试了 Stable Diffusion 不同风格和 prompt 的生成样例。 Mod

    2024年02月10日
    浏览(41)
  • stable diffusion实践操作-大模型介绍

    本文专门开一节写大模型相关的内容,在看之前,可以同步关注: stable diffusion实践操作 模型下载网站 国内的是:https://www.liblibai.com 国外的是:https://civitai.com(科学上网) 大模型从无到有训练大模型花费时间非常久,花费非常高,上百万美元: 在官方大模型的基础上再次

    2024年02月09日
    浏览(24)
  • stable diffusion实践操作-提示词-整体环境

    stable diffusion实践操作-提示词 本文主要收纳总结了提示词-整体环境。 画质 背景 场景 画风 镜头 [最高质量] [透明背景] [山] [轮廓加深] [正面视角] 英文=best quality 英文=transparent background 英文=mountain 英文=contour deepening 英文=pov [原创] [渐变的背景] [山上] [纯色块] [正面视角全身

    2024年02月10日
    浏览(31)
  • stable diffusion实践操作-提示词-人物属性

    stable diffusion实践操作-提示词 本文主要收纳总结了提示词-人物属性。 角色类型 人物 身材 胸部 头发-发型 头发-发色 [女仆] [霊烏路空] [大腿] [乳房] [呆毛] [紫发] 英文=maid 英文=reiuji utsuho 英文=thighs 英文=breasts 英文=ahoge 英文=purple hair [女巫] [琪露诺] [粗腿] [小乳房] [刘海] [银

    2024年02月10日
    浏览(30)
  • stable diffusion实践操作-提示词-人物服饰

    stable diffusion实践操作-提示词 本文主要收纳总结了提示词-人物服饰。 耳饰 帽子 内裤 内衣 上身 饰品 手部 [月牙耳环] [头顶光环] [丁字裤] [胸罩] [披风] [太阳镜] [珠子手链] 英文=crescent earrings 英文=halo 英文=thong 英文=bra 英文=capelet 英文=sunglasses 英文=bead bracelet [心形耳环] [迷

    2024年02月10日
    浏览(30)
  • stable diffusion实践操作-提示词-图片结构

    stable diffusion实践操作-提示词 本文主要收纳总结了提示词-图片结构。 Styles Artists hudson river school 哈得逊河学派 alphonse mucha 阿尔方斯很多 surrealism 超现实主义 pablo picasso 巴勃罗·毕加索 dadaism 达达主义 piet mondrian 皮埃特·蒙德里安 cubism 立体主义 jackson pollock 杰克逊·波洛克 fa

    2024年02月10日
    浏览(38)
  • stable diffusion实践操作-随机种子seed

    stable diffusion实践操作 当使用相同的大模型、、Lora模型和其他参数时,生成的图像可能与他人不同,其中一个影响因素是随机数种子(Seed)。 随机数种子控制了图像生成的底层形状,类似于画画时最开始的线稿。它决定了图像的基础轮廓,包括人物的外形轮廓、姿势

    2024年02月10日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包