什么是stable diffusion?

news/2024/7/10 18:52:56 标签: stable diffusion

🌟 Stable Diffusion:一种深度学习文本到图像生成模型 🌟

Stable Diffusion是2022年发布的深度学习文本到图像生成模型,主要用于根据文本的描述产生详细图像。它还可以应用于其他任务,如内补绘制、外补绘制,以及在提示词指导下产生图生图的转变。

💻 Stable Diffusion的开发和支持 💻

Stable Diffusion是一种潜在扩散模型,由慕尼黑大学的CompVis研究团体开发的各种生成性人工神经网络之一。它是由初创公司StabilityAI、CompVis与Runway合作开发,并得到EleutherAI和LAION的支持。 截至2022年10月,StabilityAI筹集了1.01亿美元的资金。

📥 Stable Diffusion的源代码和模型权重 📥

Stable Diffusion的源代码和模型权重已分别公开发布在GitHub和Hugging Face,可以在大多数配备有适度GPU的电脑硬件上运行。而以前的专有文生图模型(如DALL-E和Midjourney)只能通过云计算服务访问。

🔍 Stable Diffusion的工作原理 🔍

Stable Diffusion是一种扩散模型的变体,叫做“潜在扩散模型”(latent diffusion model; LDM)。扩散模型是在2015年推出的,其目的是消除对训练图像的连续应用高斯噪声。Stable Diffusion由3个部分组成:变分自编码器(VAE)、U-Net和一个文本编码器。与其学习去噪图像数据(在“像素空间”中),而是训练VAE将图像转换为低维潜在空间。添加和去除高斯噪声的过程被应用于这个潜在表示,然后将最终的去噪输出解码到像素空间中。在前向扩散过程中,高斯噪声被迭代地应用于压缩的潜在表征。每个去噪步骤都由一个包含ResNet骨干的U-Net架构完成,通过从前向扩散往反方向去噪而获得潜在表征。最后,VAE解码器通过将表征转换回像素空间来生成输出图像。研究人员指出,降低训练和生成的计算要求是LDM的一个优势。

📝 调节数据的编码 📝

去噪步骤可以以文本串、图像或一些其他数据为条件。调节数据的编码通过交叉注意机制(cross-attention mechanism)暴露给去噪U-Net的架构。为了对文本进行调节,一个预训练的固定CLIP ViT-L/14文本编码器被用来将提示词​转化为嵌入空间。

📝stable diffusion使用方法📝

Stable Diffusion模型支持通过使用提示词来产生新的图像,描述要包含或省略的元素,以及重新绘制现有的图像,其中包含提示词中描述的新元素(该过程通常被称为“指导性图像合成”(guided image synthesis)[11])通过使用模型的扩散去噪机制(diffusion-denoising mechanism)。 此外,该模型还允许通过提示词在现有的图中进内联补绘制和外补绘制来部分更改,当与支持这种功能的用户界面使用时,其中存在许多不同的开源软件。

Stable Diffusion建议在10GB以上的显存(GDDR或HBM)下运行, 但是显存较少的用户可以选择以float16的精度加载权重,而不是默认的float32,以降低显存使用率。

📝stable diffusion①文生图📊

Stable Diffusion中的文生成图采样脚本被称为"txt2img",它接受一个提示词以及各种选项参数,包括采样器类型、图像尺寸和随机种子。根据模型对提示的解释,txt2img会生成一个带有不可见数字水印标签的图像文件。这个水印标签允许用户识别由Stable Diffusion生成的图像,尽管调整大小或旋转图像会使水印失去有效性。Stable Diffusion模型是在由512×512分辨率图像组成的数据集上训练的,因此txt2img生成图像的最佳配置也是以512×512的分辨率生成的。后来的Stable Diffusion 2.0版本引入了生成768×768分辨率图像的能力。

每次txt2img的生成过程都会使用一个影响生成图像的随机种子。用户可以选择随机化种子以探索不同的生成结果,或者使用相同的种子以获得与之前生成的图像相同的结果。用户还可以调整采样迭代步数。较高的值需要更长的运行时间,但较小的值可能会导致视觉缺陷。另一个可配置的选项是无分类指导比例值,允许用户调整提示词的相关性。对于更具实验性或创造性的用例,用户可以选择较低的值,而对于旨在获得更具体输出的用例,用户可以使用较高的值。

反向提示词是Stable Diffusion一些用户界面软件中的一个功能,例如StabilityAI自己的“Dreamstudio”云端软件即服务模式订阅制服务。它允许用户指定模型在图像生成过程中应该避免的提示。这对于由于用户提供的提示词或模型初始训练而导致图像输出中出现不良特征(例如畸形手脚)的情况非常适用。与使用强调符相比,使用反向提示词在降低生成不良图像的频率方面具有高度统计显著的效果。强调符是另一种方法,用于为提示的某些部分增加权重,在关键词中使用括号以增加或减少强调。

📊stable diffusion②图生图📊

Stable Diffusion提供了另一个取样脚本,名为"img2img"。它接受一个提示词、现有图像的文件路径和一个从0.0到1.0之间的去噪强度参数。使用这些参数,img2img可以在基于原始图像的基础上生成一个新的图像,该图像也包含了提示词中提供的元素。去噪强度表示添加到输出图像的噪声量,值越大,图像的变化越多,但可能与提供的提示在语义上不一致。图像升频是img2img的一个潜在用例。

在2022年11月24日发布的Stable Diffusion 2.0版本中,引入了一个深度引导模型,称为"depth2img"。该模型能够推断所提供输入图像的深度,并结合提示词和深度信息生成新图像,以保持新图像中原始图像的连贯性和深度。

Stable Diffusion模型的许多不同用户界面软件提供了通过img2img进行图生成图的其他用例。其中,内补绘制(inpainting)是一个常见的用例,用户可以提供一个蒙版,描述现有图像的一部分,然后根据提示词用新生成的内容填充蒙版的空间。随着Stable Diffusion 2.0版本的发布,StabilityAI还创建了一个专门针对内补绘制用例的专用模型。另一个用例是外补绘制(outpainting),它将图像扩展到其原始尺寸之外,并使用根据提供的提示词生成的内容来填充以前的空白空间。

🌟结论🌟

Stable Diffusion是一个包含多个脚本和模型的工具集,用于生成图像并对图像进行处理。这个工具集提供了多种功能,包括从文本提示生成图像、在现有图像上应用图像处理操作、以及根据图像的深度信息生成新的图像等。Stable Diffusion的目的似乎是通过这些脚本和模型来实现图像生成、图像处理和图像增强等任务,并且可以调整噪声强度等参数来控制生成的图像质量。


http://www.niftyadmin.cn/n/5470133.html

相关文章

【设计模式】2、工厂:简单工厂、工厂方法、抽象工厂

文章目录 二、工厂2.1 简单工厂2.2 工厂方法2.2.1 目录层级2.2.2 使用方式2.2.3 产品、简单工厂的定义2.2.4 具体工厂的定义2.2.5 具体工厂的实现 2.3 抽象工厂2.3.1 目录层级2.3.2 使用工厂2.3.3 定义工厂2.3.4 定义产品2.3.5 json config 的实现2.3.6 yaml config 的具体实现…

ids工业相机与电控位移台同步控制及数据采集

通过VS2017和OpenCV,实现ids工业相机与电控位移台同步控制及数据采集 目录项目环境配置代码流程及思路项目架构项目开发运行效果开发关键ids相机配置位移台环境配置相机头文件相机参数设置保存图像函数设置电控位移台头文件电控位移台设置参数最后就是通过main函数进行调用和控…

蓝桥杯嵌入式备考笔记

keil配置 LED-KEY-LCD 留下这几个 按键 创建俩个文件写代码,记得把这两个文件加进工程 led uwTick 1ms执行一次 写错了 不是1000 是100 PD2 SET 表示打开锁存器 可以操作LED LED对应PC引脚拉高是熄灭 key 如果要在main使用需要extern LCD最多21位 …

02---webpack基础用法

01 entry打包的入口文件: 单入口entry是一个字符串:适用于单页面项目module.exports {entry:./src/index.js}多入口entry是一个对象module.exports {entry:{index:./src/index.js,app:./src/app.js}} 02 output打包的出口文件: 单入口配置module.ex…

Mysql安装(命令方式安装)

下载mysql压缩包 Mysql可以使用界面安装,也可以使用命令的方式安装,今天我们使用命令的方式安装mysql。首先下载mysql压缩包(下载地址:https://dev.mysql.com/downloads/mysql/),解压到你想要安装的目录。 …

五、企业级架构之Nginx负载均衡

一、负载均衡技术 1、介绍: 负载均衡技术(Load Balance)是一种概念,其原理就是把分发流量、请求到不同的服务器,平均分配用户请求。 2、作用: ① 流量分发,请求平均,提高系统处理…

搜索引擎-03-搜索引擎原理

拓展阅读 搜索引擎-01-概览 搜索引擎-02-分词与全文索引 搜索引擎-03-搜索引擎原理 Crawl htmlunit 模拟浏览器动态 js 爬虫入门使用简介 Crawl jsoup 爬虫使用 jsoup 无法抓取动态 js 生成的内容 Crawl WebMagic 爬虫入门使用简介 webmagic 全网搜索引擎架构与流程如何…

谈谈Python中的ORM框架,如SQLAlchemy

谈谈Python中的ORM框架,如SQLAlchemy Python中的ORM框架:以SQLAlchemy为例的深入探讨 ORM,即对象关系映射(Object-Relational Mapping),是一种程序设计技术,用于实现面向对象编程语言里不同类…