【深度学习 AIGC】stable diffusion webUI 使用过程,参数设置,教程,使用方法

文章目录

  • docker快速启动
  • vae
  • .ckpt或者.safetensors
  • CFG指数/CFG Scale
  • 面部修复/Restore faces
  • Refiner
  • Tiled VAE
  • Clip Skip
  • prompt提示词怎么写
  • roop Upscaler visibility (if scale = 1)

docker快速启动

如果你想使用docker快速启动这个项目,你可以按下面这么操作(显卡支持CUDA11.8)。如果你不懂docker,请参考别的教程。

docker run -it --network=host --gpus '"device=0"' kevinchina/deeplearning:sdwebuiv1 bash
# 进入容器
su xiedong
cd ~/stable-diffusion-webui/
./webui.sh --enable-insecure-extension-access --skip-python-version-check --skip-torch-cuda-test --skip-install  --ckpt ./models/Stable-diffusion/majicmixRealistic_v7.safetensors --listen --no-download-sd-model

在这里插入图片描述
在这里插入图片描述

vae

模型文件即checkpoint已包含了与vae相关的参数。然而,稳定扩散官方和novelai泄露的文件都包含了额外的vae,用于改进面部或其他细节。因此,加载vae文件实际上替代了模型文件中原有的与vae相关的参数。这可能会导致问题,如果模型本身已经表现良好,盲目加载vae可能会适得其反。另外,如果模型文件已经包含了vae,再次加载相同的vae只会浪费时间。

.ckpt或者.safetensors

.ckpt 文件使用 pickle 序列化,可能携带恶意代码。如果你不信任模型来源,加载 .ckpt 文件可能会对安全构成风险。

.safetensors 文件则仅包含张量数据,使用 numpy 保存,没有附带代码,因此加载 .safetensors 文件更为安全且效率更高。

CFG指数/CFG Scale

“CFG指数”,即Classifier-Free Guidance(无分类器引导生成)指数的含义和作用。CFG指数用来调节文本提示对扩散过程的引导程度

  1. 扩散模型中的前向扩散和反向去噪可以用随机微分方程来描述,但反向去噪需要一个分类器来拟合数据分布的梯度,以实现条件生成。

  2. 传统的分类器引导生成方式存在问题,因为需要额外训练分类器,而分类器的质量会影响生成效果。

  3. 作者提出了"无分类器引导生成"(Classifier-Free Guidance)的概念,其中使用两个梯度预估模型,一个是无条件生成的梯度预估模型,另一个是基于条件的梯度预估模型,避免了显式分类器的缺陷。

  4. 通过使用Classifier-Free Guidance,条件生成的训练代价大大减轻,不需要额外训练分类器,同时避免了对抗攻击的方式,生成是两个梯度的差值。

  5. CFG指数用来控制文本提示对生成过程的引导程度。当CFG指数为0时,生成是无条件的,较高的数值会更加受文本提示的影响。

  6. 推荐的CFG指数范围为7-10,这是一个平衡的区间,提供创意性并遵循文本提示。较低的CFG数值会提高创意性,较高的数值会更受文本提示的影响。

  7. 当CFG指数超过20时,可能会导致一些奇怪的现象。

面部修复/Restore faces

推荐别开,开了效果不咋地。

下面的数值条可以控制CoderFormer的影响力度,为0时效果最强。
在这里插入图片描述

Refiner

Refiner在SD1.5里面是不起作用的。

SDXL完整出图流程 Base+refiner
Conditioning(Text,Image)->Latent Space(Base)->Latent Space(Refiner)->VAE Decoder->Pixel Image
在这里插入图片描述

Tiled VAE

作用就是减少显存方式进行超分。

Tiled Diffusion & Tiled VAE 搭配ControlNet-Tile 实测重绘放大
512×768重绘放大8倍(4096×6144)

Clip Skip

https://zhuanlan.zhihu.com/p/630875053
https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features#clip-skip

**Clip Skip是一个设置,用于控制CLIP神经网络在处理提示文本时跳过的层数。**以下是文章的内容总结:

  1. Clip Skip是什么
    Clip Skip是一个用于控制CLIP神经网络处理提示文本时跳过的层数的设置。CLIP是一个先进的神经网络,用于将提示文本转化为数值表示。这网络包括多个层次,以便将文本转化为数值表示。

  2. Clip Skip的作用
    Clip Skip的作用是控制CLIP神经网络在处理提示文本时停止的层数。它的值可以设置为1或更高,表示在第几层停止。不同的层数会影响处理提示文本的深度,从而影响生成图像的质量和特征。

  3. 如何使用Clip Skip
    Clip Skip的值可以通过相应的设置选项进行调整。在生成图像时,可以调整Clip Skip的值,以改变生成图像的特征和质量。**通常,建议的Clip Skip值范围为1到5,而大于5的值可能会导致图像质量下降。**Clip Skip的设置可以通过特定的用户界面进行调整,以在生成图像时产生所需的效果。

  4. Clip Skip与生成图像的影响
    Clip Skip的值会影响生成图像的质量和清晰度。当Clip Skip的值较大时,图像可能会变得模糊和不准确,因为较少的神经网络层处理了提示文本。较小的Clip Skip值通常会产生更准确和清晰的图像。

  5. Clip Skip和CFG Scale的关系
    CFG Scale是另一个影响生成图像的因素,与Clip Skip相互独立。它们的值设置不会相互影响,但它们都可以影响生成图像的特征。

  6. Clip Skip的应用
    Clip Skip可以用于不同的应用,如生成肖像或进行图像到图像的转换。具体应用取决于生成需求和预期的效果。Clip Skip的设置可以帮助调整图像的构图和特征,以满足用户的要求。

Clip Skip是一个用于控制CLIP神经网络在生成图像时处理提示文本的深度的设置,它可以影响生成图像的质量和特征。通过调整Clip Skip的值,用户可以根据需求定制生成图像的效果。
在这里插入图片描述
在这里插入图片描述

prompt提示词怎么写

看这里别人怎么写的:
https://civitai.com/models

用这个写:
https://zhuanlan.zhihu.com/p/634833836

用这个写:
https://www.kandouyin.com/

roop Upscaler visibility (if scale = 1)

Roop插件中的参数"Upscaler visibility (if scale = 1)"的含义是什么呢?

如果您打算使用超分插件,并且所选的尺寸为1倍原始尺寸,那么超分后的图像将与原始图像具有相同的尺寸。此时,该参数允许您以所提供的"Upscaler visibility"比例来混合原始图像和超分后的图像,从而生成最终的输出图像。

具体来说,如果 “Upscaler visibility” 的值为 0,那么生成的图像将完全是原始图像,没有任何超分效果。如果 “Upscaler visibility” 的值为 1,那么生成的图像将完全是超分后的图像,原始图像不会被包含在内。如果 “Upscaler visibility” 的值介于 0 和 1 之间,那么生成的图像将包含原始图像和超分后的图像的混合,其中比例由 “Upscaler visibility” 决定。

这个过程是通过像素级别的加权平均来实现的,即对每个像素的颜色值进行加权混合。混合的方式可以根据具体的图像处理算法而异,通常可以使用图像处理软件或编程来实现。

参考:

https://zhuanlan.zhihu.com/p/617026822
https://www.bilibili.com/read/cv25364364/

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

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

相关文章

(Git)git clone报错——SSL certificate problem: self signed certificate

(Git)git clone报错——SSL certificate problem: self signed certificate 克隆代码时报错 问题分析 提示信息为SSL认证失败,可以关闭SSL的认证。 公司bitbucket只支持https地址,需要client配置忽略https证书检验。 解决方法 在克隆前输入下边命令&…

Linux学习第35天:Linux LCD 驱动实验(二):星星之火可以燎原

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 三、LCD驱动程序编写 需要注意的地方: ①、 LCD 所使用的 IO 配置。 ②、 LCD 屏幕节点修改,修改相应的属性值,换成我们所使…

Spring Data Redis + RabbitMQ - 基于 string + hash 实现缓存,计数(高内聚)

目录 一、Spring Data Redis 1.1、缓存功能(分析) 1.2、案例实现 一、Spring Data Redis 1.1、缓存功能(分析) hash 类型存储缓存相比于 string 类型就有更多的更合适的使用场景. 例如,我有以下这样一个 UserInfo 信息 假设这样一个场景就是:万一只想获取其中某一个…

利用shp文件构建mask【MATLAB和ARCGIS】两种方法

1 ARCGIS (推荐!!!-速度很快) 利用Polygon to Raster 注意:由于我们想要的mask有效值是1,在进行转换的时候,注意设置转换字段【Value field】 【Value field】通过编辑shp文件属性表…

centos 7部署Mysql8.0主从

Mysql官网中关于部署主从的网址 环境准备: 搭建虚拟机和安装Mysql之前的文章中已经涉及,在此不再赘述。 主从IPMysql账号密码主192.168.213.4root/Root1234!从192.168.213.5root/Root1234! 1、主数据库设置 配置my.cnf 一般存放于/etc/。 主从配…

【git】TortoiseGit图标不显示 及 文件夹中.git文件夹不显示

(一)文件夹中.git文件夹不显示 在 文件夹选项-查看-高级设置 中, 将 隐藏文件和文件夹中的不显示,标记为“显示隐藏的文件、文件夹和驱动器” (二)TortoiseGit图标不显示 【情况一】是否有正确安装 Tort…

inne所属公司抢注“童年时光”商标仍被冻结

根据中国商标网查询,国家知识产权局已于2023年3月10日裁定,被告inne所属的南京童年时光生物技术有限公司注册的“童年时光”商标无效。随着这起保健品行业品牌资产争夺事件的发酵,更多的细节得到披露,至此,一个从“代理…

【软件STM32cubeIDE下H73xx配置串口uart1+中断接收/DMA收发+HAL库+简单数据解析-基础样例】

#【软件STM32cubeIDE下H73xx配置串口uart1中断接收/DMA收发HAL库简单数据解析-基础样例】 1、前言2、实验器件3-1、普通收发中断接收实验第一步:代码调试-基本配置(1)基本配置(3)时钟配置(4)保存…

shiro 框架使用学习

简介 Shiro安全框架是Apache提供的一个强大灵活的安全框架Shiro安全框架提供了认证、授权、企业会话管理、加密、缓存管理相关的功能,使用Shiro可以非常方便的完成项目的权限管理模块开发 Shiro的整体架构 1、Subject ​ Subject即主体(可以把当前用户…

微信小程序将后端返回的图片文件流解析显示导页面

说明 由于请求接口后端返回的图片格式不是一个完整的url,也不是其他直接能显示的图片格式,是一张图片 后端根据模板与二维码生成图片,返回二进制数据 返回为文件流的格式,用wx.request请求的时候,就自动解码成为了下面这样的数据数据格式,这样的数据没…

idea文件比对

idea文件比对 1.项目内的文件比对2.项目间的文件比对3. 剪切板对比4. 版本历史(不同分支和不同commit)对比 1.项目内的文件比对 在项目中选择好需要比对的文件(类),然后选择Compare Files Mac下的快捷键是Commandd, 这样的比对像是git冲突解决一样 …

STM32 GPIO 描述

一、GPIO功能描述 每个GPIO端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH) ,两个32位数据寄存器 (GPIOx_IDR和GPIOx_ODR) ,一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR…

Flutter:安装依赖报错doesn‘t support null safety

项目中需要引用http依赖,在pubspec.yaml文件中添加如下信息: 当同步时,报错信息如下: [myflutter] flutter pub upgrade Resolving dependencies... The current Dart SDK version is 3.1.3. Because myflutter depends on http &…

【leetcode】19.删除链表的倒数第 N 个结点

题目 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5] 示例 2: 输入:head [1], n 1 输出:[] 示例 3&a…

校园安防监控系统升级改造方案:如何实现设备利旧上云与AI视频识别感知?

一、背景与需求分析 随着现代安防监控科技的兴起和在各行各业的广泛应用,监控摄像头成为众所周知的产品,也为人类的工作生活提供了很大的便利。由于科技的发达,监控摄像头的升级换代也日益频繁。每年都有不计其数的摄像头被拆掉闲置&#xf…

R语言爬虫代码模版:技术原理与实践应用

目录 一、爬虫技术原理 二、R语言爬虫代码模板 三、实践应用与拓展 四、注意事项 总结 随着互联网的发展,网络爬虫已经成为获取网络数据的重要手段。R语言作为一门强大的数据分析工具,结合爬虫技术,可以让我们轻松地获取并分析网络数据。…

【网络】五中IO模型介绍 + 多路转接中select和poll服务器的简单编写

高级IO 前言正式开始前面的IO函数简单过一遍什么叫做低效的IO钓鱼的例子同步IO和异步IO五种IO模型阻塞IO非阻塞IO信号驱动多路转接异步IO 小结 代码演示非阻塞IO多路转接select介绍简易select服务器timeout 为 nullptrtimeout 为 {0, 0}timeout 为 {5, 0}调用accept select编写…

ACmix:卷积和self-attention的结合,YOLOv5改进之ACmix

目录 一、ACmix理论部分 二、代码 三、YOLOv5改进 ACC3 一、ACmix理论部分 论文地址:2111.14556.pdf (arxi

【Database System Concept 7th】Chapter 24 Advanced Indexing Techniques 读书笔记

Chapter 24 Advanced Indexing Techniques 24.5 Hash Indices24.5.1 Static Hashing24.5.2 Dynamic Hashing24.5.2.1 Data Structure24.5.2.2 Queries and Updates 24.5 Hash Indices 24.5.1 Static Hashing 这一部分就不介绍了,在14.5中已经介绍过了。 24.5.2 D…

javascript中的new原理及实现

在js中,我们通过new运算符来创建一个对象,它是一个高频的操作。我们一般只是去用它,而很少关注它是如何实现的,它的工作机制是什么。 1 简介 本文介绍new的功能,用法,补充介绍了不加new也同样创建对象的方…