Stable Diffusion新手快速入门教程,从0到1,AI绘画最基础教程!

news2024/10/5 23:58:13

关于Ai绘画,很多人在体验了Midjourney(以下简称MJ)之后,发现它创意能力很强,但可控性比较弱,不便应用,于是转向Stable Diffussion(以下简称SD),但又发现SD貌似很复杂。我在后台收得比较多的留言,都是一些很基础的问题咨询,这是这篇文章的写作背景。


AI绘画介绍

Ai绘画的算法工具,如果要做一个不一定准确的类比,可以说MJ是类似Ai美图秀秀般的存在,简单易上手,SD则类似PhotoShop,同样是图片处理,但学习起来要复杂一些,精通相对更难。

这篇文章的目标是作一个简单介绍,帮助新手认识SD,老鸟照样可以略过。

Stable Diffussion的直译是“稳定的扩散”,很多教程一开始就讲“扩散”原理,讲一大堆运行逻辑,令人望而生畏。实际上,我们只需知道母鸡可以产蛋,但并不需要研究母鸡的生殖构造和产蛋原理。同理,普通用户只需知道SD是一个Ai画图算法工具即可。

一、使用环境

SD目前需要在电脑中工作,在使用SD之前,首先要了解它的使用环境。SD和MJ一样可在线使用,不同的是SD是开源的,如果条件允许的话可考虑在本地部署,完全免费,可以非常灵活地配置各种模型等,但对本地硬件要求比较高,比如独立显卡,要求显存一般在8G或以上,普通的办公电脑无法达到要求,需要更高配的台式机或电竞本才可满足。

另外对软件环境也有要求,例如配置Python等。听起来好像很麻烦,实际不然,目前已有各种一键安装包,小白都可轻松安装(一键安装包请看文末扫描即可获取哦)。

而在线部署的,服务商也会提供具体教程,目前阿里云的SD部署还是比较简单,这里不做多讲。


二、使用基础:文本指令

ChatGPT也好,Ai绘画也好,都属于生成式Ai,这类Ai目前有一个特点,需要人工输入指令去引导它工作。我们使用ChatGPT时,需要输入你的问题,它才会回复你。你提出的“问题”,就是使它工作的指令。

Ai绘画和ChatGPT不同的是,不需要提问,但需要你告诉它,你要画什么东西。用过MJ的朋友应该非常理解这个动作,例如,MJ用户需要它画一个女孩,只需要输入对应的英文“A girl”即可。

在SD中,这种方式可行吗?当然可以。但和MJ这种一句话搞定的方式不同,SD的绘画指令和参数明确由多个部分组成,看似繁多但不复杂,也比较容易理解。

这些指令主要属于文本指令,是“文生图”方式。SD还支持同时使用文本+样图,去生成图片或对图片进行修改,这种是“图生图”方式


三、文本指令构成

SD的所有绘画指令,在一个的操作界面(Webui)中完成,界面主体由几个部分组成。

1.具体的“文字”指令

包含2个部分:你想画什么(正面描述)、你不希望画面出现什么(负面/发面描述),下图是SD的Webui文字指令输入界面:

这种指令,和MJ是大体相同的,只不过在MJ中需要用一句话讲完,而在SD中,要在不同的输入框中分开填写,更加直观。比如说,你希望画“一个漂亮的18岁的女孩”,这是一个正面描述;你希望这个女孩不要出现“多余的手指”,这是一个反面描述。只需要在对应的输入框中填入即可。

文本指令是非常重要的部分,描述得清晰不清晰,出来的画面大相径庭。

2.参数指令

无需一听“参数”二字就觉得麻烦,就是一个简单的设置。在SD中,基础参数设置主要包括几个地方,如下图:

(1)采样方法(Sampler)。这个名词的原本含义解释起来比较拗口,但你可以将它理解为不同的图像渲染方式。不同的采样方法有不同的特长。

有两种用得比较多,第一种是Euler a,生成速度比较快,适合于二次元、小场景和图标等画面生成。第二种是DPM++2S a Karras,适合写实人像,复杂场景等画面生成。其它的采样方法,自己可以探索,实践生成一下可看到它们之间的差异。

(2)采样迭代步数(Steps),这个步数值影响图像的细节,一般来说,建议20起步,越大代表图像越精细,但并不是越大越好,需要在实践中结合不同的模型去观察。区间在20-40比较常见。

(3)修复。这里常用的是“面部修复”和“高清修复”两个选项。

在画“真人”的时候,勾选前者会显著影响人脸细节,可以生成更好的人脸。后者主要是用来高清放大。因为硬件条件有限,很多电脑更适合生成小尺寸图像,勾选这个选项时,可以对生成的小图进行高清放大。

但需要指出的是,放大的尺寸并非无限,普通配置的电脑,长宽放大到1500*1500几乎已是极限,而且,放大的图片和小图风格一致但细节有差别,这个可以在实践中对照。

(4)图片的长宽设置。最容易理解的一个选项。

(5)生成批次及每批数量设置。这2个数值很考验显卡计算能力,以8g显存为例,建议批次设置为3(一次生成3批),每批数量为1,总共3张图片。每批数量的值越大,对显卡的压力越大,一般建议保留默认数值1。

(6)提示词相关性(CFG Scale)、随机种子(seed)

相关性值可以设置为1-30,值越小,生成的图片和你输入的文本指令的吻合度越低,越大则越高。但并不是越大/越小越好。一般情况下,画人物时这个值在7-10之间是比较平衡的,画建筑一般是4-8之间,需要在实践结合不同的模型去观察。以下是一些参考:

当CFG处于2-6时,Ai发挥想象力空间大,不可控性提高。

当CFG处于10-15时,你的作品受到你的提示的良性影响。

当CFG处于16-20时,你得确定你的提示词真的是你想要的,否则效果不会太好。当CFG高于20时,可能会产生一些奇怪的现象。

另一个是种子值,这是一个可以锁定生成图像的初始状态的值,一般设置为-1,意味着随机生成。当你使用了一个固定的seed值(非-1),并使用了其它相同的参数和指令时,会得到一张几乎完全一样的图片。

需要指出的是,即使所有的设置一样,在不同的显卡下,生成图片的细节差别可能会比较大。


四、模型选择

模型选择实际上也属于“指令”的组成部分,这里单列出来说。模型是Ai绘画中一个基础设施,决定生成画面的元素、风格、画风等。有些像PPT一样,你采用不同的模板,呈现的就是不同的画面风格。

从上图操作界面中可以看到,常用模型主要有3种。

(1)大模型:指SD绘图的基础模型,也叫大模型/底模。SD必须搭配大模型才能使用。大模型决定画面的主要风格,不同的大模型擅长的领域会有侧重,比如,有些擅长画漫画,有些是真人、建筑、国风等。

(2)小模型:常用的主要指Lora模型,属于微调模型,必须结合大模型使用,通过不同的权重影响画面特征。有人说,大模型相当于素颜,小模型相当于化妆,在某种程度上的确可以这么理解。

Lora模型由于训练简单效果显著,得到广泛应用,但这种小模型并不是必须的,很多大模型本身就带有很好的“化妆”效果。所不同的是,小模型和大模型同时使用的时候,可以调整出大模型无法达到的叠加优化效果。

(3)VAE模型。可以理解为滤镜,用于调节和美化。同样的,它也不是必须的,依据个人绘画需要决定是否采用。也有例外,个别大模型由于训练效果等问题,会明确提示要结合VAE使用。VAE图片结果例:

(4)其它模型:Embeddings、Hypernetworks、LyCORIS、DreamBooth(微调大模型)模型,这些对初学者来说,很少有机会用到,以后再讲。

(5)模型从哪里来

要达到比较好的画面效果,必须通过训练得到绘画模型。初学者更多的是使用别人训练好的。在C站上,有大量免费共享模型,需要“科学上网”才可下载。熟练使用之后,也可以自己训练私有模型。模型训练需要较好的硬件支撑,以及一些高质量的训练素材等,另文讨论。


五、绘画插件

在一些时候,单纯依靠文本指令,并不能画出我们想要的画面,这个时候就需要使用SD插件。插件是SD绘画可以进入应用层面的、非常重要的一个部分。

SD目前最常用、最强大的插件,一般认为是Controlnet插件。它可以控制人物表情、姿势、手势等,可以识别景深、线条,并生成文本指令无法实现的要素,诸如此类。这个插件也需要另开一篇专门的文章才可讲清楚。

这种的插件,意味着SD绘画拥有较高的“可控性”能力。这是其它Ai绘画工具目前无法比拟的,也意味着其更加接近商业层面的应用。

了解了上述主要界面元素和指令之后,对SD生成图片基本就算是有了一个基础认识,大家也可以看到,它虽然指令和参数比较多,但理解起来并不困难。

最后小结一下,SD的文生图绘画指令从整理开看,主要包含了以下内容:

写在最后

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

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

在这里插入图片描述

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

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

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

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

三、最新AIGC学习笔记

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

四、AIGC视频教程合集

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

在这里插入图片描述

五、实战案例

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

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

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

相关文章

秒懂设计模式--学习笔记(7)【结构型-门面模式】

目录 6、门面模式6.1 介绍6.2 一键操作6.3 亲自下厨的烦扰6.4 化繁为简6.5 整合共享6.6 门面模式的各角色定义 6、门面模式 6.1 介绍 门面模式(Facade)可能是最简单的结构型设计模式它能将多个不同的子系统接口封装起来,并对外提供统一的高…

2024年用scrapy爬取BOSS直聘的操作

SCrapy框架实现对BOSS直聘的爬取 文章目录 SCrapy框架实现对BOSS直聘的爬取对SCrapy框架的一个简单认识Scrapy 组件的作用Scrapy 数据流 1. 测试反爬2. 定义一个下载中间件类,截取spiders的请求(中间件直接截取请求,并且返回给Spider进行数据解析&#x…

文件扫描pdf怎么弄?5个简易高效的文件扫描方法

在繁忙的工作中,我们常常需要将纸质文件快速转换为电子文档,以便于编辑、存储或分享。 无论是合同、报告还是笔记,将这些纸质文件转换为Word格式,不仅能提高工作效率,还能确保信息的安全备份。然而,面对市…

【LLM大模型】中国人工智能大模型技术白皮书,从0入门大模型,附文档+LLM实战教程

近期,中国人工智能学会发布了《中国人工智能大模型技术白皮书》,系统梳理了大模型技术演进,深入探讨关键技术要素,并剖析当前挑战及未来展望。 我为大家做了简要总结,并附上文档分享给大家。 PDF: 完整版本…

Git 操作总结

1. 安装、Git 环境配置 1.1 安装 Git 官方版本可以在 Git 官方网站下载:打开 https://git-scm.com/download/win,选择相应版本即可。 Git 安装完成后,可以在开始菜单中看到 Git 的三个启动图标(Git Bash、Git CMD、Git GUI&…

最新mysql打开远程访问和修改最大连接数

这里写目录标题 1.使用navicat进入命令控制板,进入use mysql;2.查询用户表3.更新user表中root用户域属性,%表示允许外部访问4.执行以上语句之后再执行,FLUSH PRIVILEGES;5. 执行授权语句修改最大连接数 1.使用navicat进入命令控制板,进入use mysql; use…

成都百洲文化传媒有限公司电商服务的佼佼者

在当今这个数字化时代,电商已成为商业发展的核心动力之一。成都百洲文化传媒有限公司,作为一家专注于电商服务的领先企业,正以其卓越的服务质量和前瞻性的战略眼光,引领着电商行业的新潮流。 一、公司简介 成都百洲文化传媒有限公…

SF-HCI-SAP问题收集17:值映射布尔型EC数据

Complacency is the enemy of study 学习的敌人是自己的满足。 SAP SuccessFactors Employee Central 到 SAP ERP 的员工主数据复制 successfactor employee center主数据同步,一直以来排错比较难,难的地方是这个提示消息比较隐晦,而且同步的…

解决 Layout Inspector无法查看Component Tree 布局层级信息 | Android Studio Koala

问题描述 Tool -> Layout Inspector 显示下图,无法生成.li文件查看Component Tree,变成实时的Preview并功能点击操作,跟模拟器一样。 原因:默认勾选了"Enable embedded Layout Inspector",启用了嵌入式…

Qualcomm QCS6490 开发板运行高通AI HUB图像分类程序

相关代码可以在如下链接下载: ai-hub-models/apps/android/ImageClassification at main quic/ai-hub-models GitHub 所用硬件有: 1. UBUNTU20.04 2. 高通QCS6490 开发板 对下载下来的代码进行编译 1.ubuntu环境配置 1.python环境配置 如果你的…

昇思25天学习打卡营第8天|模型权重与 MindIR 的保存加载

目录 导入Python 库和模块 创建神经网络模型 保存和加载模型权重 保存和加载MindIR 导入Python 库和模块 上一章节着重阐述了怎样对超参数予以调整,以及如何开展网络模型的训练工作。在网络模型训练的整个进程当中,事实上我们满怀期望能够留存中间阶段…

python基础语法 004-3流程控制- while

1 while while 主要用的场景没有 for 循环多。 while循环&#xff1a;主要运行场景 我不知道什么时候结束。。。不知道运行多少次 1.1 基本用法 # while 4 > 3: #一直执行 # print("hell0")while 4 < 3: #不会打印&#xff0c;什么都没有print("…

go开源webssh终端源码main.go分析

1.地址: https://github.com/Jrohy/webssh.git 2.添加中文注释地址: https://github.com/tonyimax/webssh_cn.git main.go分析 主包名&#xff1a;main package main //主包名 依赖包加载 //导入依赖包 import ("embed" //可执行文件…

【Qwen2部署实战】探索Qwen2-7B:通过FastApi框架实现API的部署与调用

系列篇章&#x1f4a5; No.文章1【Qwen部署实战】探索Qwen-7B-Chat&#xff1a;阿里云大型语言模型的对话实践2【Qwen2部署实战】Qwen2初体验&#xff1a;用Transformers打造智能聊天机器人3【Qwen2部署实战】探索Qwen2-7B&#xff1a;通过FastApi框架实现API的部署与调用4【Q…

springboot双学位招生管理系统-计算机毕业设计源码93054

摘 要 科技进步的飞速发展引起人们日常生活的巨大变化&#xff0c;电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流&#xff0c;人类发展的历史正进入一个新时代。在现实运用中&#xff0c;应用软件的工作…

松下Panasonic机器人维修故障原因

松下机器人伺服电机是许多工业自动化设备的关键组成部分。了解如何进行Panasonic工业机械臂电机维修&#xff0c;对于确保设备正常运行至关重要。 【松下焊接机器人维修案例】【松下机器人维修故障排查】 一、常见松下工业机械手伺服电机故障及原因 1. 过热&#xff1a;过热可…

Webpack: 并行构建

概述 受限于 Node.js 的单线程架构&#xff0c;原生 Webpack 对所有资源文件做的所有解析、转译、合并操作本质上都是在同一个线程内串行执行&#xff0c;CPU 利用率极低&#xff0c;因此&#xff0c;理所当然地&#xff0c;社区出现了一些以多进程方式运行 Webpack&#xff0…

铜排载流量计算

母线载流量的理论计算 有些设计规范给出了根据电流密度确定母线大小的标准&#xff0c;一般铜母线的要求是每平方毫米载流量1.55A&#xff0c;但只可以作为设计“自由空气中的单导体母线”的参考&#xff0c;不可以作为实际设备中选择母线截面积的方法。也有些设计手册里给出了…

无线领夹麦克风选什么价位,揭秘无线领夹麦克风哪个品牌音质最好

在自媒体的快速发展之下&#xff0c;越来越多人加入到短视频拍摄行业。当我们踏出户外&#xff0c;想要用声音记录美好生活时&#xff0c;一个优质的麦克风便成了不可或缺的装备。户外环境的喧嚣与手机麦克风的局限性常常让我们的声音淹没在背景噪音之中&#xff0c;使得同期录…

小白也能看懂的Python基础教程(8)

Python面向对象 目录 Python面向对象 一、面向对象的概念 1、常见的编程思想 2、面向过程是什么&#xff1f; 3、什么是面向对象&#xff1f; 4、封装 5、继承 6、多态 二、面向对象的概念 1、两个重要概念 2、类 3、对象 4、self关键字 三、对象属性 1、什么…