Stable Diffusion的使用以及各种资源
Stable Diffsuion资源目录
- SD简述
- sd安装
- 模型下载
- 关键词,描述语句
- 插件管理
- controlNet
- 自己训练模型
SD简述
Stable Diffusion是2022年发布的深度学习文本到图像生成模型。它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如内补绘制、外补绘制,以及在提示词指导下产生图生图的翻译。
s用到的技术原理叫做扩散算法,具体的算法设计是很复杂的一门学科。大概的原理就是把一张图模糊化处理,然后再根据关键词一点一点儿的把内容给具体化。最后就得到了我们描述的内容。
从去年也就是2022年9月份开始,我就知道了这个技术。但是没有详细的了解过这个技术的实操方案。
今年断断续续的也看了看这个技术的阿里云操作和一些公众号的内容。还有比较火的隐藏式二维码,隐藏文字的光影街道图,也在关注。但是并没有实际操练起来。
这个周末我把我之前看到过的材料又重新找到重新看了一下,实操了一下。下面是我对这个技术的总结。
sd安装
sd 在本地操作的话,需要不错的独立显卡支持。如果达不到这个显卡要求的化可以选择阿里云服务器或者一些云桌面上进行操作。
- 本地安装环境分成三个步骤,先安装python环境,要配置到环境变量中。其次要安装先去支持的cuda支持,通过
nvidia-smi可以查看自己设备所支持的CUDA version版本。 - 可以通过cuda下载地址这个连接下载对应版本的cuda
- 然后还需要安装
git,因为需要从github上克隆webui的项目,还有一些插件也可以通过git的方式clone,github上的webui项目地址
- 除了这种全手动的方式,还可以从B站上找一些大神的启动器安装包。安装包都都是把运行环境打包好的,用起来很省心。
模型下载
项目启动后,就需要下载一些所必须的大模型了,sd需要的模型有很多中。
checkpoint这个是sd运行所需要的数据来源。大模型的文件大小都很大。一般都会在2个G以上。相当于sd作画是所需要的一个大字典。VAE这个是给画面上色的,可以理解成滤镜。让画面更加鲜艳动人,吸引眼球。Embeddingsd创作画面都是需要由文本描述也就是关键词的,这个模型就相当于把一部分关键词直接打包了。在描述的时候不需要描述很多内容,直接把模型引入到对应的文件夹。然后在关键词那里填写对应的Embedding即可。Hypernetwork这个相当于是书签,因为字典很大,有这个可以让sd做出来的画更加符合我们的要求。LoraLora相当于是Hypernetwork的升级版本。都是相当于在大模型的基础上进行更加详尽的描述,把需求描述的更加详细。对大模型的结果进行微调。LyCORISLyCORIS是对Lora的升级,在算法生更加精进,调整力度更大。
所有的模型都是为了让我们的描述内容有一个依托,让sd作画有一个范围,因为训练大模型的时候数据集很大,在实际运行的时候又需要通过其他的小一些的模型来进行精确的控制。所以就有了这些模型。
下面是一些常用的模型下载地址:
- civitai
- huggingface
- esheep(连接先对前面两个更稳定)
- liblibai(连接先对前面两个更稳定)
- openart
关键词,描述语句
提示词:正向文提示词,反向文提示词
最主要的还是要确认自己想要表现的内容是什么,即主题,因为内容都是为主题服务的
- 人物及主体特征
- 场景特征
- 环境光照
- 补充,画幅视角
除了对内容的描述,还需要一些对画质的描述关键词
- 高画质
- 特定的高分辨率
- 画风提示词(插画、二次元、写实)
提示词权重:可以通过加小括号的方式提高权重,也可以通过关键词后面添加具体倍数的方式控制
提示词网站:
- dawnmark
- atoolbox
插件管理
从github上安装sd后,即可进行出图操作了。但是为了让软件更好用,我们可以安装一些插件让sd更好用
- 中文汉化语言插件
- 图库浏览器插件(image broswer)
- 提示词插件
- Ultimate Upscale(图片放大,在文生图里以脚本的方式出现)
- Local Latent Couple(LLUl)(局部细节优化插件)
- after-detailer(帮助美化脸部或手的细节)
- controlNet
插件基本都是在github上管理的,也可以通过gitee等其他的代码平台下载安装。
- gitcode
- 码云
controlNet
controlNet是对画面进行精细化控制的插件。需要借助画面的一些元数据,例如
通道信息,通过ps可以获得这些信息。
- 对姿势进行控制
- 对画面深度进行控制
- 对画面边缘进行控制
- 对光影进行控制
- 生成艺术二维码
自己训练模型
如果以上内容还不够满足自己的要求,那我们可以自己进行模型训练
- 找到数据源,对某个对象的一些照片
- 通过sd对如片进行打标签,即标识画面上的内容。作为学习的依据
- 交给sd来学习
- 数据源最好是统一大小的
- 如果本地显卡不够可以通过aliyun来获得三个月的免费PAI的云服务
- 借助github上的项目,colab上的Lora_Trainer来进行数据训练
- 训练完成后需要通过sd的xyz脚本来选择效果最好的那个模型
相关文章:
Stable Diffusion的使用以及各种资源
Stable Diffsuion资源目录 SD简述sd安装模型下载关键词,描述语句插件管理controlNet自己训练模型 SD简述 Stable Diffusion是2022年发布的深度学习文本到图像生成模型。它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如…...
Redis 分布式锁的实现方式
一般来说,在对数据进行“加锁”时,程序首先需要通过获取(acquire)锁来得到对数据排他性访问的能力,然后才能对数据执行一系列操作,最后还要将锁释放(release)给其他程序。 对于能够…...
VMware上搭建的虚拟机突然本地无法连接服务器
长时间没有使用VMware 虚拟机了,今天突然登录上去,启动虚拟服务器后发现本地等不了了, 经过排查发现是开启了:VirtualBox Host-Only Network 关闭之后就本机就可以直连服务器了...
JDBC回顾
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 JDBC回顾 前言一、JDBC1.JDBC是什么?2.如何使用?(1)注册驱动(2)获取连接(3)操作…...
mq 消息队列 mqtt emqx ActiveMQ RabbitMQ RocketMQ
省流: 十几年前,淘宝的notify,借鉴ActiveMQ。京东的ActiveMQ集群几百台,后面改成JMQ。 Linkedin的kafka,因为是scala,国内很多人不熟。淘宝的人把kafka用java写了一遍,取名metaq,后…...
沃尔玛卖家必看!解决订单被Kan、Feng号问题的终极方案!
近期有很多沃尔玛卖家和工作室联系到我提到说在沃尔玛平台上下单,买家号出现副款义常订单被k掉,是什么原因、我们该如何去解决呢? 以下是一些可能导至你的测评订单被k单的原因: 1.技术问题:有时,网站或系…...
浅谈日常使用的 Docker 底层原理-三大底座
适合的读者,对Docker有过简单了解的朋友,想要进一步了解Docker容器的朋友。 前言 回想我这两年,一直都是在使用 Docker,看过的视频、拜读过的博客,大都是在介绍 Docker 的由来、使用、优点和发展趋势,但对…...
前端面试:【DOM】编织网页的魔法
嘿,亲爱的代码魔法师!在JavaScript的奇幻世界里,有一项强大的技能,那就是DOM操作。DOM(文档对象模型)操作允许你选择、修改和创建网页元素,就像是在编织一个魔法的网页。 1. 什么是DOMÿ…...
基于MATLAB开发AUTOSAR软件应用层Code mapping专题-part 2 Inport和Outports 标签页介绍
上篇我们介绍了Function页的内容,这篇我们介绍Inports和Outports页的内容,这里我们再次强调一个概念,code mapping是以simulink的角度去看的,就是先要在模型中建立simulink模块,在code mapping里映射他要对应的autosar的元素,之后生成代码时的c语言的名字是以Autosar的元…...
第9步---MySQL的索引和存储引擎
第9步---MySQL的索引和存储引擎 1.索引 1.1分类 索引可以快速的找出具有特定值的行。不用从头开始进行寻找了。 类别 hash和btree hash 根据字段值生生成一个hash的值 快速的进行定位到对应的行的值 可能会出现相同的值,找到对应的空间会出现对应的值 btree树…...
Numpy入门(3)—线性代数
线性代数 线性代数(如矩阵乘法、矩阵分解、行列式以及其他方阵数学等)是任何数组库的重要组成部分,NumPy中实现了线性代数中常用的各种操作,并形成了numpy.linalg线性代数相关的模块。本节主要介绍如下函数: diag&am…...
php的openssl_encrypt是不是自动做了PKCS5Padding?
在PHP中,openssl_encrypt函数默认使用的是PKCS7填充(不是PKCS5填充)。PKCS7填充实际上是PKCS5填充的扩展,用于对不同块大小的数据进行填充。 当你使用openssl_encrypt函数进行加密时,如果你没有显式指定填充模式和填充…...
在本地创建repository及上传至github
文章目录 本地管理设定git的用户名与邮箱初始化添加修改提交修改设定分支问题一:error: insufficient permission for adding an object... 数据同步创建SSH keys创建并关联远程仓库上传改动至github问题二:Failed to connect to github.com port 443: Connection timed out问题…...
情人节特别定制:多种语言编写动态爱心网页(附完整代码)
写在前面案例1:HTML Three.js库案例2:HTML CSS JavaScript案例3:Python环境 Flask框架结语 写在前面 随着七夕节的临近,许多人都在寻找独特而令人难忘的方式来表达爱意。在这个数字时代,结合创意和技术࿰…...
Docker mysql主从同步安装
1. 构建master实例 docker run -p 3307:3306 --name mysql-master \ -v /mydata/mysql-master/log:/var/log/mysql \ -v /mydata/mysql-master/data:/var/lib/mysql \ -v /mydata/mysql-master/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORDroot \ -d mysql:5.7 2. 构建master配置…...
docker update 命令
docker update 更新一个或多个容器的配置。官方文档 用法 $ docker update [OPTIONS] CONTAINER [CONTAINER...]请参阅选项部分OPTIONS,了解此命令可用的概述。 描述 该docker update命令动态更新容器配置。您可以使用此命令来防止容器消耗 Docker 主机的过多资…...
阻塞和挂起的区别和联系
阻塞和挂起是进程两种不同的状态,其描述如下: 阻塞:正在执行的进程由于发生某时间(如I/O请求、申请缓冲区失败等)暂时无法继续执行。此时引起进程调度,OS把处理机分配给另一个就绪进程,而让受阻…...
水力发电厂测量装置配置选型及厂用电管理系统
《水力发电厂测量装置配置设计规范》对水电厂的测量装置配置做了详细要求和指导。测量装置是水力发电厂运行监测的重要环节,水电厂的测量主要分为电气量测量和非电量测量。电气测量指使用电的方式对电气实时参数进行测量,包括电流、电压、频率、功率因数…...
【RabbitMQ】RabbitMQ整合SpringBoot案例
文章目录 1、前情提要【RabbitMQ】2、RabbitMQ-SpringBoot案例 -fanout模式2.1 实现架构总览2.2 具体实现2.2.1生产者2.2.1消费者 1、前情提要【RabbitMQ】 【RabbitMQ】消息队列-RabbitMQ篇章 RabbitMQ实现流程 2、RabbitMQ-SpringBoot案例 -fanout模式 2.1 实现架构总览…...
如何在window下cmd窗口执行linux指令?
1.Git:https://git-scm.com/downloads(官网地址) 2.根据自己的实际路径,添加两个环境变量 3.重启电脑...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
Android Wi-Fi 连接失败日志分析
1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
