【AI绘画教程】Stable Diffusion 1.5 vs 2

在本文中,我们将总结稳定扩散 1 与稳定扩散 2 辩论中的所有要点。我们将在第一部分中查看这些差异存在的实际原因,但如果您想直接了解实际差异,您可以跳下否定提示部分。让我们开始吧!

在这里插入图片描述

Stable Diffusion 2.1 发布与1.5相比,2.1旨在解决2.0的许多相对缺点。本文的内容与理解 Stable Diffusion 1 与 2 仍然相关,但读者应确保额外阅读附加的 Stable Diffusion 2.1 部分以了解全貌。

OpenCLIP

Stable Diffusion 2 所做的最重要的转变是替换了文本编码器。Stable Diffusion 1 使用 OpenAI 的 CLIP,这是一个开源模型,可以学习标题描述图像的程度。虽然模型本身是开源的,但训练 CLIP 的数据集很重要,它不是公开的

Stable Diffusion 2 改用 OpenCLIP,这是 CLIP 的开源版本,它是使用已知数据集训练的——LAION-5B 的一个美学子集,可以过滤掉 NSFW 图像。Stability AI表示,OpenCLIP“大大提高了生成图像的质量”,事实上,在指标上优于未发布的CLIP版本。

为什么这很重要

撇开这些模型的相对性能不谈,从 CLIP 到 OpenCLIP 的转变是 Stable Diffusion 1 和 Stable Diffusion 2 之间许多差异的根源

特别是,许多 Stable Diffusion 2 的用户声称它不能像 Stable Diffusion 1 那样代表名人或艺术风格,尽管 Stable Diffusion 2 的训练数据没有被故意过滤以删除艺术家。这种差异源于这样一个事实,即CLIP的训练数据比LAION数据集有更多的名人和艺术家。由于CLIP的数据集不向公众开放,因此无法仅使用LAION数据集恢复相同的功能。换言之,Stable Diffusion 1 的许多规范提示方法对于 Stable Diffusion 2 来说几乎已经过时了。

这意味着什么

这种向完全开源、开放数据模型的改变标志着 Stable Diffusion 故事的重要转变。对 Stable Diffusion 2 进行微调并构建人们希望看到的功能将落在开源社区的肩上,但这实际上是 Stable Diffusion ab initio 的意图——一个由社区驱动的、完全开放的项目。虽然一些用户目前可能对 Stable Diffusion 2 的相对性能感到失望,但 StabilityAI 团队已经花费了超过 100 万 A100 小时来构建一个坚实的基础。

此外,虽然创建者没有明确提及,但这种从使用 CLIP 的转变可能会为项目贡献者提供一些保护,防止潜在的责任问题,考虑到即将到来的知识产权诉讼浪潮,这很重要。

考虑到这个背景,现在是时候讨论 Stable Diffusion 1 和 2 之间的实际区别了。

Negative Prompts

我们首先检查负面提示,与 SD 1 相比,它似乎对 Stable Diffusion(SD) 2 的强劲性能更重要,如下所示:

在这里插入图片描述
现在让我们更详细地看一下负面提示。

Simple Prompt

首先,我们将提示“无边池”提供给 Stable Diffusion 1.5 和 Stable Diffusion 2,没有负面提示。显示了每个模型的三张图像,其中每列对应于不同的随机种子。

在这里插入图片描述

prompt: "infinity pool"
size: 512x512
guidance scale: 12
steps: 50
sampler: DDIM

正如我们所看到的,Stable Diffusion 1.5 总体上似乎比 Stable Diffusion 2 表现更好。在SD 2中,最左边的图像有一个贴片,与图像不匹配,而最右边的图像几乎是不连贯的。

现在,我们以相同的方式从相同的起始噪声生成图像,这次使用负提示。我们添加了否定提示“丑陋、平铺、画得不好的手、画得不好的脚、画得不好的脸、出框、突变、突变、额外的四肢、额外的腿、额外的手臂、毁容、变形、斗鸡眼、身体出框、模糊、糟糕的艺术、糟糕的解剖学、模糊、文本、水印、颗粒状”(ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy),这是 Emad Mostaque 使用的否定提示。

添加否定提示后,SD 1.5 通常表现更好,尽管中间图像的标题对齐方式可能较差。对于 SD 2,改进更为剧烈,尽管整体性能仍然不如 SD 1.5

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

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

相关文章

网络和安全操作

一、编辑文件 文本编辑器有很多,比如图形模式的gedit、OpenOffice 等,文本模式下的编辑器有vi、vim(vi的增强版本)等。vi和vim是我们在Linux中最常用的编辑器。 gedit:类似于windows下的记事本,很方便的去…

IO多路复用技术、select、poll、epoll联系与区别

目录 IO多路复用技术select:poll:epoll(Linux特有): epoll select poll的区别epoll是同步还是异步epoll详解 IO多路复用技术 通信双方都有一个socket,以一个文件描述符的形式存在,那这个fd也对…

AI 大事件:超级明星 Andrej Karpathy 创立AI教育公司 Eureka Labs

🧠 AI 大事件:超级明星 Andrej Karpathy 创立AI教育公司 Eureka Labs 摘要 Andrej Karpathy 作为前 OpenAI 联合创始人、Tesla AI 团队负责人,他的专业性和实力备受瞩目。Karpathy 对 AI 的普及和教育充满热情,从 YouTube 教程到…

CBSD bhyve Ubuntu 配置vnc登录管理

CBSD介绍 CBSD是为FreeBSD jail子系统、bhyve、QEMU/NVMM和Xen编写的管理层。该项目定位为一个综合解决方案的单一集成工具,用于使用预定义的软件集以最少的配置快速构建和部署计算机虚拟环境。 虽然CBSD没有提供额外的操作系统级功能,但它极大地简化了…

两年经验前端带你重学前端框架必会的ajax+node.js+webpack+git等技术 Day1

黑马程序员前端AJAX入门到实战全套教程,包含学前端框架必会的(ajaxnode.jswebpackgit),一套全覆盖 Day1 你好,我是Qiuner. 为帮助别人少走弯路和记录自己编程学习过程而写博客 这是我的 github https://github.com/Qiuner ⭐️ ​…

【算法/天梯赛训练】天梯赛模拟题集

L1-009 N个数求和 #include <iostream> #include <algorithm>using namespace std;typedef long long ll; const int N 105;typedef struct node {ll x, y; }node; node a[N];ll gcd(ll a, ll b) {return b ? gcd(b, a % b) : a; }int main() {int n;cin >>…

《昇思25天学习打卡营第25天|第9天》

今天是打卡的第九天&#xff0c;今天学习的是使用静态图加速这门课程&#xff0c;从他的背景学起&#xff1a;AI编译框架分为两种运行模式&#xff0c;分别是动态图模式和静态图模式&#xff0c;动态图模式特点&#xff1a;计算图的构建和计算同时发生&#xff0c;缺点&#xf…

Qt Style Sheets-样式表语法

样式表语法 Qt 样式表术语和语法规则几乎与 HTML CSS 的相同。如果您已经了解 CSS&#xff0c;您可能可以快速浏览此部分。 样式规则 样式表由一系列样式规则组成。样式规则由选择器和声明组成。选择器指定哪些小部件受该规则影响&#xff1b;声明指定应在小部件上设置哪些属性…

ThinkPHP6事件系统使用指南

本文由 ChatMoney团队出品 在ThinkPHP 6中&#xff0c;事件系统提供了一种优雅的方式来实现解耦和动态响应。你可以通过注册事件和对应的监听者来处理各种应用逻辑。 事件注册 闭包注册 闭包是最简单的事件监听者&#xff0c;可以直接在注册时定义。 Event::listen("C…

Linux操作系统之多文件管理

makefile: makefile文件用于管理和组织代码工程的编译和链接,被make工具解析并完成相关动作 make: 工程管理工具 语法: 要生成的文件:依赖的所有文件 时间戳: 编译文件时,时间戳更新的文件需要重新加入编译,时间戳没有改变的不需要重新编译 app:main.c add.c sub.c …

如何追查一个packet在linux 系统哪里丢失

要想追一个包在系统哪里丢失了&#xff0c; 就要了解 一个应用层的包在送出时 要经历那些 检查点 和被丢掉的点。 1. 在传输层&#xff0c;如果是 tcp 包 会有contrack 的 buf 的限制 可能会导致 packets 的丢失。 > 检查办法&#xff1a;查看dmesg日志有报错&#xff1a;k…

MySQL数据库慢查询日志、SQL分析、数据库诊断

1 数据库调优维度 业务需求&#xff1a;勇敢地对不合理的需求说不系统架构&#xff1a;做架构设计的时候&#xff0c;应充分考虑业务的实际情况&#xff0c;考虑好数据库的各种选择(读写分离?高可用?实例个数?分库分表?用什么数据库?)SQL及索引&#xff1a;根据需求编写良…

C# 实体更新记录:如何捕获和记录字段变化到日志

方案一&#xff1a;粗糙但可用 var changes new List<string>();void CompareAndAddChange<T>(string propertyName, T oldValue, T newValue, Func<T, string> descriptionFunc null) {if (!EqualityComparer<T>.Default.Equals(oldValue, newVa…

分支定界法(Branch and Bound, 简称BB)是一种求解整数规划问题的有效算法。

分支定界法&#xff08;Branch and Bound&#xff09;详解与Python代码示例 分支定界法概述 分支定界法&#xff08;Branch and Bound, 简称B&B&#xff09;是一种求解整数规划问题的有效算法。它结合了搜索与迭代的思想&#xff0c;通过系统地枚举候选解来寻找最优解。在…

Java Web常见框架寻找路由技巧

在Java Web代码审计中&#xff0c;寻找和识别路由是很关键的部分。通过注册的路由可以找到当前应用对应的Controller&#xff0c;其作为MVC架构中的一个组件&#xff0c;可以说是每个用户交互的入口点。简单介绍下Java Web中常见框架&#xff08;Spring Web、Jersey&#xff09…

【SASS/SCSS(二)】模块化语法

目录 一、use 1、命名空间 2、私有变量 3、用with改变模块中的默认值 二、forward 1、给forward模块起别名&#xff0c;让成员加前缀 2、利用hide or show手动控制成员的可访问性 三、import 1、不存在命名空间&#xff0c;成员变量在import之后直接公开 2、可以在嵌…

springboot防止重复提交的方案有哪些

在Spring Boot中&#xff0c;防止接口或表单重复提交有多种策略&#xff0c;以下是几种常见且有效的方案&#xff1a; 前端控制&#xff1a; 禁用提交按钮&#xff1a;在表单提交后&#xff0c;使用JavaScript立即禁用提交按钮&#xff0c;防止用户再次点击。响应式提示&#x…

十、Java集合 ★ ✔(模块18-20)【泛型、通配符、List、Set、TreeSet、自然排序和比较器排序、Collections、可变参数、Map】

day05 泛型,数据结构,List,Set 今日目标 泛型使用 数据结构 List Set 1 泛型 1.1 泛型的介绍 ★ 泛型是一种类型参数&#xff0c;专门用来保存类型用的 最早接触泛型是在ArrayList&#xff0c;这个E就是所谓的泛型了。使用ArrayList时&#xff0c;只要给E指定某一个类型…

讲真,现在留给2024年下半年软考的时间还够吗?

常识是个好东西&#xff0c;但是有时候却容易蒙蔽咱们的双眼&#xff0c;就拿下半年软考而言&#xff0c;看起来现在才7月份&#xff0c;刚刚入伏&#xff0c;考试要到11月份&#xff0c;是冬天呢&#xff0c;中间还隔了一个完整的秋季&#xff0c;常识感觉还很遥远&#xff0c…

【Vue3】4个比较重要的设计模式!!

大家好,我是CodeQi! 一位热衷于技术分享的码仔。 在我投身于前端开发的职业生涯期间,曾有一次承接了一个大型项目的维护工作。此项目运用的是 Vue 框架,然而其代码结构紊乱不堪,可维护性极度糟糕😫。 这使我深刻领会到,理解并运用 Vue 中的重要设计模式是何等关键! …