Stable Diffusion 3 文本生成图像 在线体验 原理分析

前言

本文分享使用Stable Diffusion 3实现文本生成图像,可以通过在线网页中免费使用的,也有API等方式访问。

同时结合论文和开源代码进行分析,理解其原理。

Stable Diffusion 3是Stability AI开发的最新、最先进的文本生成图像模型,在图像保真度、多主体处理和文本匹配面取得了显著进步。

利用新的多模态扩散变换器(MMDiT)架构,它具有单独的图像和语言表示的Stable Diffusion 3权重。

目录

前言

1、在线体验Stable Diffusion 3

2、Stable Diffusion 3生成图像

3、Stable Diffusion 3原理分析


1、在线体验Stable Diffusion 3

官网地址:https://stablediffusion3.net/zh-CN

如下图所示,生成的图片还挺清晰的,不错不错 :

点击图片,能看到“提示器”,图像比例,还能下载原图:

当然用中文作为提示词,也是可以的,效果也很不错

不同的画风和场景: 

感觉生成图像很接近真实:

 

“提示词”描述得更详细,会生成更多细节:

2、Stable Diffusion 3生成图像

 思路流程:

  1. 输入提示词,可以中文或英文
  2. 选择模型,包括:Realistic 写实、Tamarin 插画风格、Super Anime 超级动漫、visiCanvas 可视画布、Realistic 写实、Anime 动漫、3D Animation 3D动画
  3. 选择生成图像的数量,默认是1张,可以选择2张或4张
  4. 选择图像的比例,包括1:1、3:4、4:3

比如,如下图所示,选择了Super Anime模型,同时生成两张图像,图像比例是1:1

3、Stable Diffusion 3原理分析

Stable Diffusion3利用扩散变压器(DiT)架构,结合噪声预测和采样技术,生成高质量图像。

  • 该模型使用不同的Stable Diffusion3权重进行图像和语言表示,确保图像内文本生成的精确和连贯。
  • Stable Diffusion3提供从800M到8B参数的模型,以满足各种硬件能力和性能需求。
  • 利用Stable Diffusion3 API,用户可以输入文本提示,模型将其转换为详细准确的图像,严格遵循提供的描述。

开源地址:https://huggingface.co/stabilityai/stable-diffusion-3-medium

论文地址:Scaling Rectified Flow Transformers for High-Resolution Image Synthesis 

模型的关键结构,如下图所示:

主要包括(a)多模态数据的扩散模型框架的组件、(b)MM-DiT块的细节,

 (a)多模态数据的扩散模型框架的组件

  • 1、Caption 输入

    • “Caption”是输入的文本描述,用来指导生成的图像内容。
  • 2、特征提取模型

    • CLIP-G/14 和 CLIP-L/14:这是两种处理文本和图像的模型,它们将文本和图像转化为向量表示。
    • T5 XXL:一个处理文本的模型,把输入的文字转换成向量。
  • 3、合并特征

    • 从这些模型中提取的特征被合并在一起,形成一个大的向量,包含了输入信息的多个方面。
  • 4、噪声潜在变量(Noised Latent)

    • 这是模型生成图像的起点,是一个初始的噪声图像。
  • 5、位置编码(Positional Embedding)

    • 给输入数据添加位置信息,以便模型知道每个数据的位置。
  • 6、MM-DiT 块

    • 这些是模型的核心部分,通过多层处理将噪声图像一步步转换成目标图像。
  • 7、输出处理

    • 最后,将处理后的特征向量转换回图像,输出最终的生成图像。

(b)MM-DiT块(Multimodal Diffusion Transformer)

  • 1、输入

    • 输入为 y 和 x 两个特征向量。
  • 2、SiLU 激活函数和线性层

    • 使用 SiLU(Sigmoid Linear Unit)激活函数和线性层对输入特征进行变换。
  • 3、Layernorm 和调制(Modulation)

    • 使用 Layernorm 进行层归一化。
    • 调制(Modulation)部分通过 α 和 β 参数进行特征调整。
  • 4、Attention 机制

    • 采用 Q(Query)、K(Key)、V(Value)三个矩阵进行注意力计算。
  • 5、MLP(多层感知器)

    • 通过多层感知器对特征进行非线性变换。
  • 6、残差连接(Residual Connections)

    • 使用残差连接来保持信息的流动,避免梯度消失问题。

这个框架通过融合文本和图像特征,使用扩散模型逐步生成高质量的图像。

关键在于多模态 Transformer 块(MM-DiT block),通过注意力机制和非线性变换对特征进行处理,从而在生成过程中保持了数据的复杂性和一致性。

分享完成~

### Stable Diffusion 模型详解 #### 一、模型概述 Stable Diffusion 是一种基于扩散过程的生成模型,其核心思想源自于去噪扩散概率模型 (Denoising Diffusion Probabilistic Models, DDPM)[^1]。该类模型通过逐步向数据中加入噪声来破坏训练样本,再学习逆转这一破坏过程以实现从随机噪声到清晰图像的转换。 #### 二、工作流程解析 整个算法分为前向传播(Forward Process)与反向传播(Reverse Process)。前者定义了一个简单的马尔可夫链,在每一步都按照一定方差往输入里注入高斯白噪音;后者则是要构建一个能够逆向前者效果的概率分布估计器,即给定任意时刻t下的含噪图片x_t,预测出上一刻更纯净的状态x_{t−1}[^2]。 ```python import torch.nn as nn class UNet(nn.Module): """UNet架构用于建模q(x_t|x_0)""" def __init__(self, ...): super().__init__() # 定义U形编码解码结构 def forward(self, x, timesteps=None): ... ``` #### 三、理论基础探讨 为了更好地理解上述机制背后的工作原理,有必要提及变分自编码器(VAEs),特别是其中涉及到证据下界(ELBO)的概念。DDPM本质上是在最大化类似于ELBO的目标函数,只不过这里的潜在变量被设计成了一系列连续的时间步上的隐状态序列{z₁,... , z_T},而不仅仅是单个z。 #### 四、实际应用案例分析 除了文本描述外,还可以观察具体的实验结果对比图,比如不同迭代次数后的重建质量变化趋势图表等可视化材料,这有助于直观感受模型性能随时间演化的特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一颗小树x

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值