AI绘画Stable diffusion的SDXL模型超详细讲解,针不错!(含实操教程)

大家好,我是画画的小强

朋友们好,今天分享的是Stable diffusion的SDXL模型以及相关实操。

与之前的SD1.5大模型不同,这次的SDXL在架构上采用了“两步走”的生图方式:

以往SD1.5大模型,生成步骤为 Prompt → Base → Image,比较简单直接;而这次的SDXL大模型则是在中间加了一步 Refiner。Refiner的作用是什么呢?简单来说就是能够自动对图像进行优化,提高图像质量和清晰度,减少人工干预的需要。

简单来说,SDXL这种设计就是先用基础模型(Base)生成一张看起来差不多的图片,然后再使用一个图像精修模型(Refiner)进行打磨,从而让图片生成的质量更高。而在没有这个之前,我们往往需要通过其他手段,如高清修复或面部修复来进行调优。

除了有出图质量更高这个优势,SDXL还有以下优点:

  • 支持更高像素的图片(1024 x 1024)

  • 对提示词的理解能力更好,比较简短的提示词也能达到不错的效果

  • 相比SD1.5模型,在断肢断手多指的情况上有所改善

  • 风格更为多样化

当然,每件事物不可能是完美的,所以SDXL也有一些局限性:

1、低像素出图质量不高

由于SDXL都是用1024x1024的图片训练的,这既导致它在这个像素级别上生成的质量比较高。但同时也导致了它在低像素级别(如512x512)生成的质量反而比较低,甚至不如SD1.5等模型。

2、与旧Lora不兼容

过去一些适用于SD1.5, 2.x 的Lora和ControlNet模型,大概率无法使用,得重新找一些带有SDXL的模型

3、 对GPU显存的要求更高(这个下面会着重讲到)

4、出图时间也变久了

好了,简单讲完了SDXL大模型以及它的优缺点,接下来就开始实战了!

一、模型的下载

这次模型的下载有点不同,因为我们需要下载三个模型,分别是:sd_xl_base_1.0.safetensors、sd_xl_refiner_1.0.safetensors 和 sdxl_vae.safetensors 。

三个模型的地址分别是:

  • https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/tree/main

  • https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0/tree/main

  • https://huggingface.co/stabilityai/sdxl-vae/tree/main

如果你没有魔法,我这里也提供了网盘的下载,请扫描获取哦

二、模型的加载

如果你的模型下载好了,就把 sd_xl_base_1.0.safetensors、sd_xl_refiner_1.0.safetensors 丢到根目录的 models\Stable-diffusion,把 sdxl_vae.safetensors 丢到 models\VAE 即可。

需要注意的是 Refiner 模型的加载,看发布日志是 SD1.6.0 的时候才支持,所以如果想使用的话得看你的版本有没有达到。另外就是这里的SD1.6.0指的是内核的版本,并不是模型的版本(不要被各种简写误导了)

内核的版本指的是这里的版本

还有一个需要注意的是貌似升级版本容易有一些不兼容的问题,而且在使用SDXL大模型时也不一定就得用Refiner,单纯使用基础模型(base)也是OK的,只不过效果会差点,所以建议升级前也做一下调研工作。

最后Refiner的位置可能没那么显眼,在生成选项卡里面

三、显存的大小

由于SDXL的模型和出图尺寸比之前的SD1.5大得多,所以也间接导致了它在出图方面所需要的显存和时间也变大了。

那到底需要多少显存呢?网上有一个说法是:跑SDXL最低显存是8G。经过我的测试,这个数据具有一定参考性,在进行一些优化的情况下,8G的显存的确能跑;但如果你什么优化都不做的话,8G的显存是不够的。

我自己的显卡是4060Ti 16G,内存32G,在这个配置的基础上我做了几个小测试(都是1024 x 1024的尺寸)

提示词:

a beatuiful real female play guitar

3.1 不开任何优化 + 不使用Refiner

第一个测试是在不开任何优化的情况下出图,结果还是出人意料的,居然爆显存了

3.2 不开任何优化 + 使用Refiner

第二个测试是在第1个的基础上,加了Refiner,但出乎意料的是,并没有爆显存,但从下方的显存使用看,也几乎达到了极限。为什么加了Refiner就没有爆显存我也不太清楚,希望有大佬留言科普下。

这里也简单说明最下方的A、R、Sys 三个指标:

A,Active:peak amount of video memory used during generation(excluding cache data),个人理解就是出图时使用的显存峰值

R,Reserved:total amount of video memory allocated by the Torch library,个人理解就是Torch 库使用的显存总量

Sys:System:peak amount of video memory allocated by all running programs, out of total capacity,个人理解就是使用显存的占比。

3.3 开启VAE模型半精度优化

这个开了之后(貌似这个不是实时生效的,所以每一次修改后我都会重启),发现其实效果不大,显存的使用率和第二个测试是差不多的。

3.4 开启 VAE + UNet模型半精度优化

加了UNet模型半精度优化,显存使用率下降了一部分(12G差不多能跑),而且出图时间也下降了很多!为什么加了UNet显存使用率会下降明显,看**网上一篇文章[4]**说SDXL用了 larger UNet backbone,猜测是这个原因导致的。

3.5 开启 VAE + UNet模型半精度优化 + 显存优化

前面四个测试都是在不开显存优化的情况下进行的,在第五个测试中,开了显存优化后,显存下降会比之前更加明显(比3.4下降了一半),但是出图时间会略长。

从这里也可以看出,显存优化的作用还是蛮明显的,不过我也试了中等显存(4GB以上)、仅SDXL中等显存(8GB以上),但是两者并没有明显区别。

通过上面的测试,我们也可以初步得到:跑SDXL最低显存是8G的说法是有一定准确性的,不过这个准确性大概率是建立在开了半精度优化和显存优化的基础上。如果你的显存达不到8G,除了上面的手段,也可以试试使用共享显存的优化方案,应该还能降一点。

四、出图测试

4.1 设置图片默认宽高

秋叶安装包默认的宽高是512x512,但是对于SDXL模型,这个尺寸是不适合的,每次刷新页面后又得调整,就想着能不能把默认值改成 1024x1024.

第一步,刷新页面,将尺寸改为 1024x1024

第二步,在设置里面找到“默认设置”

第三步,点击应用按钮即可。如果你想看改了啥,还可以点击“查看更改”按钮

上面的步骤实际改的是ui-config.json 配置的这两个参数,对了,如果要生效必须重启启动器,刷新页面是没用的

txt2img/Width/value  
txt2img/Height/value  

4.2 提示词理解能力对比

提示词: Epic anime artwork of a wizard atop a mountain at night casting a cosmic spell into the dark sky that says “Stable Diffusion 3” made out of colorful energy

可以看到SDXL的对自然语言的提示词的理解能力确定吊打之前的模型

4.3 文字拼写能力测试

看网上说SDXL的文字拼写能力比较强,简单来说就是能按要求在图片写字,提示词如下:

我用的网上的提示词,字面意思就是在头盔上写 future 英文

a cyberpunk girl is wearing a helmet,the helmet with the words"future" written on it,

总体感觉能力肯定是进步的,但比SD3还是差了不少,这也是从出的图里面选几张比较好的

感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。

在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

若有侵权,请联系删除

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux学习第52天:Linux网络驱动实验(三):一往(网)情深

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 许久没有更新,的确是最近有点懈怠了。没有任何借口,接受所有的批评。接下来无论如何也要坚持下去,不管处于什么境地、什么原因&am…

.NET C# 使用GDAL将mdb转换gdb数据

.NET C# 使用GDAL将mdb转换gdb数据 目录 .NET C# 使用GDAL将mdb转换gdb数据1 环境2 Nuget3 Code 1 环境 VisualStudio2022 .NET6 GDAL 3.8.5 2 Nuget 3 Code FeatureExtension.cs public static class FeatureExtension {[DllImport("gdal.dll", EntryPoint &…

前端-echarts tooltip展示多项自定义数据

效果如图,鼠标滑动到某一个柱子的时候,出现这一项数据的多个自定义数据,外加自己的模板样式渲染。 希望能展示每一列中的多个自定义数据 代码部分 主要是在data中,value就是实际展示的主数据,其他字段名为自定义的数…

Matlab进阶绘图第61期—滑珠散点图

滑珠散点图也是一种在《Nature》中常见的数据图。 其功能类似于柱状图,但更加简洁易读。 由于Matlab中没有现成的函数绘制滑珠散点图,因此需要大家自行解决。 本文利用自己制作的BubbleScatter工具,进行滑珠散点图的绘制,先来看…

等保测评初级简答题试题

基本要求,在应用安全层面的访问控制要求中,三级系统较二级系统增加的措施有哪些? 答:三级比二级增加的要求项有: 应提供对重要信息资源设置敏感标记的功能; 应按照安全策略严格控制用户对有敏感标记重要…

贝壳找房基于Flink+Paimon进行全量数据实时分组排序的实践

摘要:本文投稿自贝壳家装数仓团队,在结合家装业务场景下所探索出的一种基于 FlinkPaimon 的排序方案。这种方案可以在实时环境对全量数据进行准确的分组排序,同时减少对内存资源的消耗。在这一方案中,引入了“事件时间分段”的概念…

上涨至13.6分!当之无愧的顶级期刊,影响因子“狂飙”,门槛较低,2个月可录!

本期解析 1、2024年6月20日,科睿唯安正式公布2024年度《期刊引证报告》。 2、本次主要解析Elsevier旗下一本TOP顶刊,期刊表现优秀,在最新的影响因子更新中由12.8上涨至13.6,是一本妥妥评职高分宝刊!接下来看看它是否…

Stable Diffusion【真人模型】:人像光影摄影极限写实真实感大模型

大家好,我是极客菌 今天和大家分享一个基于SD1.5的真人大模型:人像光影摄影极限写实真实感大模型。 该模型具有以下特点: 真实肤感(在面部肌理和皮肤肌理上均有加强学习,拒绝ai出图假的问题) 永不脱妆&a…

经典老动画电影大全,老动画片大全集全部百度网盘,资源下载百度云

当今社会越来越重视学前教育了,今儿童启蒙的教育也越来越受人们的关注和重视。为了满足社会对未来人才的需要,学前教育成为当今教育领域重要角色的一环。当今动画篇是主流,内容精彩纷呈,越来越受到儿童的喜爱。 儿童的语言敏感期&…

ee trade:黄金投资是选择短线交易还是长线投资

黄金投资既可以通过短线交易获取快速收益,也可以采取长线投资策略获得稳健回报。本文将详细比较这两种策略的特点和适用性,为新手投资者提供参考。 短线交易 短线交易指在较短的时间内多次买卖以获取利润,通常交易周期为数日到数周。以下是…

PointCloudLib-KDtree-如何使用 KdTree 进行搜索

在本教程中,我们将介绍如何使用 KdTree 查找特定点或位置的 K 个最近邻,然后我们还将介绍如何查找用户指定的某个半径内的所有邻居(在本例中为随机)。 理论入门 k-d 树或 k 维树是计算机科学中使用的一种数据结构,用于在具有 k 维的空间中组织一定数量的点。它是一个二叉…

用热传感器提高散热片的效率

每天一篇行业发展资讯,让大家更及时了解外面的世界。 更多资讯,请关注B站/公众号【莱歌数字】,有视频教程~~ 散热器的尺寸通常是根据功率、气流、设备热约束和物理几何形状的要求进行冷却应用的。 更大的功耗需要更高性能的散热器或更大、…

记录一个Xshell使用中Xmanager...X11转发的提示问题

希望文章能给到你启发和灵感~ 如果觉得有帮助的话,点赞关注收藏支持一下博主哦~ 阅读指南 一、环境说明1.1 硬件环境1.2 软件环境 二、问题和错误三、解决四、理解和延伸一下 一、环境说明 考虑环境因素,大家适当的对比自己的软硬…

DBdoctor功能介绍

绍DBdoctor的主要功能,按照事件先后涵盖了事前、事中、事后三个阶段。事前的主动问题发现、SQL性能评估、自动巡检与报表、空间预测与诊断;事中的性能洞察、根因诊断、锁分析、优化建议;事后的审计分析、根因推导、问题快照。按照使用者包含了…

手持小风扇品牌有哪些?分享口碑最好的五款手持小风扇

手持小风扇在炎热的夏季成为了许多人解暑的好帮手。它们不仅轻便便携,随时随地都能为我们带来清凉和舒适。然而,市场上手持小风扇的品牌繁多,让人眼花缭乱。为了帮助大家做出更明智的选择,接下来我们将分享口碑最好的五款手持小风…

RAG | (ACL24规划-检索增强)PlanRAG:一种用于生成大型语言模型作为决策者的规划检索增强生成方法

原文:PlanRAG: A Plan-then-Retrieval Augmented Generation for Generative Large Language Models as Decision Makers 地址:https://arxiv.org/abs/2406.12430 代码:https://github.com/myeon9h/PlanRAG 出版:ACL 24 机构: 韩国…

MQTT自动回复消息工具

点击下载《MQTT自动回复消息工具V1.0.0》 1. 前言 在进行IoT系统开发时,各个小组成员通常是同步进行项目开发,经常会遇到设备端和前后端开发人员开发进度不协调的情况,此时接口还没开发完,也没有可以调试的环境,只能…

Vue - HTML基础学习

一、元素及属性 1.元素 <p>我是一级标题</p>2.嵌套元素 把元素放到其他元素之中——这被称作嵌套。 <p>我是<strong>一级</strong>标题</p>3.块级元素 块级元素在页面中以块的形式展现&#xff0c;会换行&#xff0c;可嵌套内联元素。 …

RAID详解及配置实战

目录 一、RAID磁盘阵列及详解 1.1 了解RAID 1.1.1 简单理解 1.1.2 对比了解 1.2 RAID磁盘阵列介绍 1.3 RAID功能实现 1.4 RAID实现的方式 1.5 RAID级别详解 1.5.1 RAID -0 1.5.2 RAID -1 1.5.3 RAID -5 1.5.4 RAID -10&#xff08;RAID 10&#xff09; 1.6 阵列卡…

基于Java微信小程序校园自助打印系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f;感兴趣的可以先收藏起来&#xff0c;还…