Stable Diffusion Controlnet V1.1 的14种基础标志用法

news2024/9/21 20:41:00

用于ControlNet和其他基于注入的SD控件的WebUI扩展。

针对 AUTOMATIC1111 的 Stable Diffusion web UI 网络用户界面的扩展,它可以让网络界面在原始的 Stable Diffusion 模型中添加 ControlNet 条件来生成图像。这种添加是实时的,不需要进行合并。

ControlNet 是一种神经网络结构,可以通过添加额外的条件来控制扩散模型。该扩展灵感来源于 kohya-ss/sd-webui-additional-networks。

这个扩展对于需要控制扩散模型的用户来说是非常有用的。添加 ControlNet 条件可以帮助用户更好地掌控模型的生成过程,从而生成更加符合用户需求的图像。同时,实时添加条件的特性也极大地提高了用户的使用体验。如果你需要控制扩散模型并且想要使用 Stable Diffusion 网络用户界面来生成图像,那么这个扩展就是你不可或缺的工具。

安装更新&模型下载

直接在你的SD下Extensions选项卡下输入网址:

https://github.com/Mikubill/sd-webui-controlnet.git

进行安装即可。

在这里插入图片描述
模型下载登录网址:

https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main

下载全部文件到你的sd目录下 extensions\sd-webui-controlnet\models 即可。

在这里插入图片描述

文件名上的字母标识:p是最终版,e是测试版,u是未完成。

在这里插入图片描述

扩展1.1的新特性

完美支持所有ControlNet 1.0/1.1和T2I适配器型号

对所有可用的型号和预处理器都提供了完美的支持,包括对T2I样式适配器和ControlNet 1.1 Shuffle的完美支持。(请确保YAML文件名和模型文件名相同,还可以在“stable-diffusion-webui\extensions\sd-webui-controlnet\models”中查看YAML文件。)

  • **A1111高分辨率修复的完美支持:**如果在A1111中开启了高分辨率修复,每个controlnet将会输出两个不同大小的控制图像:一个小的和一个大的。小的控制图像用于基本生成,大的控制图像用于高分辨率修复生成。这两个控制图像由一种称为“超高质量控制图像重采样”的智能算法计算得出。这是默认开启的,不需要更改任何设置。
  • A1111 I2I和Mask的完美支持: 对ControlNet与A1111的不同类型的遮罩进行了广泛的测试,包括“Inpaint masked”/“Inpaint not masked”、“Whole picture”/“Only masked”以及“Only masked padding”和“Mask blur”。调整大小完全匹配A1111的“Just resize”/“Crop and resize”/“Resize and fill”。这意味着可以在几乎任何A1111 UI中轻松使用ControlNet!
  • 像素完美模式: 如果打开像素完美模式,您不需要手动设置预处理器(注释器)分辨率。ControlNet将自动为您计算最佳的注释器分辨率,以便每个像素完全匹配稳定扩散。
  • 用户友好的GUI和预处理器预览: 我们重新组织了一些先前混淆的UI,例如“新画布的画布宽度/高度”,现在它在📝按钮中。现在,预览GUI由“allow preview”选项和触发按钮💥控制。预览图像的大小比以前更好,不需要上下滚动-您的a1111 GUI不会再乱了!
  • 控制模式(以前​​称为猜测模式):已经修复了先前1.0版本的猜测模式中的许多错误,现在它被称为控制模式。
    image

通过关键词控制ControlNet举例。

Input (depth+canny+hed)Control Mode: “Balanced”Control Mode: “My prompt is more important”Control Mode: “ControlNet is more important”
imageimageimageimage

默认设置

This is my setting. If you run into any problem, you can use this setting as a sanity check
在这里插入图片描述

image

官网案例适配示例

SourceInputOutput
(no preprocessor)
(no preprocessor)

T2I-Adapter 适配器支持

T2I-Adapter 是一个小型网络,可以为预训练的文本到图像模型提供额外的指导。

我测试的不是特别好用,可能方法不对。

使用 T2I-Adapter 模型方法:

  • https://huggingface.co/TencentARC/T2I-Adapter 下载文件。
  • 复制相应的配置文件并将其重命名为与模型相同的名称 - 请参见下面的列表。
  • 用草图模型生成图像时,强度(t)最好使用稍低的值,例如0.6-0.8。
AdapterConfig
t2iadapter_canny_sd14v1.pthsketch_adapter_v14.yaml
t2iadapter_sketch_sd14v1.pthsketch_adapter_v14.yaml
t2iadapter_seg_sd14v1.pthimage_adapter_v14.yaml
t2iadapter_keypose_sd14v1.pthimage_adapter_v14.yaml
t2iadapter_openpose_sd14v1.pthimage_adapter_v14.yaml
t2iadapter_color_sd14v1.ptht2iadapter_color_sd14v1.yaml
t2iadapter_style_sd14v1.ptht2iadapter_style_sd14v1.yaml

T2I-Adapter 示例

SourceInputOutput
(no preprocessor)
(no preprocessor)
(no preprocessor)
(no preprocessor)
(clip, non-image)

Examples by catboxanon, no tweaking or cherrypicking. (Color Guidance)

ImageDisabledEnabled

Multi-ControlNet / 联合调节(实验)

此选项允许在单代中使用多个 ControlNet 输入。要启用此选项,请更改Multi ControlNet: Max models amount (requires restart)设置。注意需要重新启动 WebUI 才能使更改生效。

如果启用了其中任何一个,猜测模式将应用于所有 ControlNet。

Source ASource BOutput

实际操作举例

案例中使用的通用关键词为

  • 正面:Intricately detailed Full body, Wear evening dress,professional photograph, of (seductive royal vampire female), ((clothed)),((evening dress)),standing, in luxurious fantasy castle, toned abs, small breasts, big ass, pretty face, amber red eyes, (fangs), succubus, sexy, shallow depth of field, cinematic lighting, photographed on a Sony a9 II, (highly detailed:1.2), (soft focus), Game of Thrones film still, HDR, 8k resolution
  • 负面:(monochrome:1.3), (oversaturated:1.3), bad hands, lowers, 3d render, cartoon, long body, wide hips, narrow waist, disfigured, ugly, cross eyed, squinting, grain, Deformed, blurry, bad anatomy, poorly drawn face, mutation, mutated, extra limb, ugly, poorly drawn hands, missing limb, floating limbs, disconnected limbs, malformed hands, blur, out of focus, long neck, disgusting, poorly drawn, mutilated, mangled, old, surreal, ((text)),exposed
  • Base模型:clarity_19
  • 采样方法:DPM++ SDE Karras

在这里插入图片描述

ControlNet 1.1 Depth (深度)

用深度图控制稳定扩散,该模型非常稳健,可以处理来自渲染引擎的真实深度图。

  • 模型名称:control_v11f1p_sd15_depth [cfd03158]
  • 模型文件:control_v11f1p_sd15_depth.pth
  • 配置文件:control_v11f1p_sd15_depth.yaml
  • 预处理器:depth, depth_leres, depth_zoe

在这里插入图片描述

ControlNet 1.1 Normal (正常)

使用法线贴图控制稳定扩散,使用 Bae 的法线图估计方法。只要法线贴图遵循ScanNet 的协议,该模型就可以接受来自渲染引擎的法线贴图。也就是说法线贴图的颜色应该看起来像这张图片的第二列。

  • 模型名称: control_v11p_sd15_normalbae [316696f1]
  • 模型文件:control_v11p_sd15_normalbae.pth
  • 配置文件:control_v11p_sd15_normalbae.yaml
  • 预处理器: normal_bae

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

ControlNet 1.1 Canny (边缘检测-精明)

使用 Canny Maps 控制稳定扩散,训练数据使用具有随机阈值的 Canny。

  • 模型名称:control_v11p_sd15_canny [d14c016b]
  • 模型文件:control_v11p_sd15_canny.pth
  • 配置文件:control_v11p_sd15_canny.yaml
  • 预处理器:canny

在这里插入图片描述

ControlNet 1.1 MLSD(线条检测)

用 M-LSD 直线控制稳定扩散,该模型从 ControlNet 1.0 恢复并使用 A100 80G 的 GPU 200 小时进行训练。

  • 模型名称:control_v11p_sd15_mlsd [aca30ff0]
  • 模型文件:control_v11p_sd15_mlsd.pth
  • 配置文件:control_v11p_sd15_mlsd.yaml
  • 预处理器:mlsd

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

ControlNet 1.1 Scribble(涂鸦)

用涂鸦控制稳定扩散,合成的涂鸦,该模型从 ControlNet 1.0 恢复并使用 A100 80G 的 GPU 200 小时进行训练。

  • 模型名称:control_v11p_sd15_scribble [d4ba51ff]
  • 模型文件:control_v11p_sd15_scribble.pth
  • 配置文件:control_v11p_sd15_scribble.yaml
  • 预处理器:pidinet_scribble, scribble_xdog, scribble_hed,手绘涂鸦
    -在这里插入图片描述

在这里插入图片描述

ControlNet 1.1 Soft Edge(软边缘)

使用软边控制稳定扩散,与以前的模型相比,该模型有了显着改进。添加了一种名为“SoftEdge_safe”的新型软边缘。这是因为 HED 或 PIDI 倾向于在软估计中隐藏原始图像的损坏灰度版本,而这种隐藏模式会分散 ControlNet 的注意力,从而导致不良结果。解决方案是使用预处理将边缘图量化为多个级别,以便完全删除隐藏的模式。

  • 模型名称:control_v11p_sd15_softedge [a8575a2a]
  • 模型文件:control_v11p_sd15_softedge.pth
  • 配置文件:control_v11p_sd15_softedge.yaml
  • 预处理器:hed, hed_safe,pidinet, pidinet_safe, pidinet_sketch, pidinet_scribble

在这里插入图片描述

ControlNet 1.1 Segmentation(分段)

用语义分割控制稳定扩散,该模型可以接收 ADE20K 或 COCO 两种类型的注释。识别分段协议对于 ControlNet 编码器来说是微不足道的,并且训练多个分段协议的模型可以带来更好的性能。

  • 模型名称:control_v11p_sd15_seg [e1f51eb9]
  • 模型文件:control_v11p_sd15_seg.pth
  • 配置文件:control_v11p_sd15_seg.yaml
  • 预处理器:segmentation,oneformer_coco, oneformer_ade20k可接受的预处理器:Seg_OFADE20K (Oneformer ADE20K)、Seg_OFCOCO (Oneformer COCO)、Seg_UFADE20K (Uniformer ADE20K) 或手动创建的掩码。

ControlNet 1.1 Openpose (姿态检测)

使用 Openpose 控制稳定扩散,该模型经过训练。

  • 模型名称:control_v11p_sd15_openpose [cab727d4]
  • 模型文件:control_v11p_sd15_openpose.pth
  • 配置文件:control_v11p_sd15_openpose.yaml
  • 预处理器:openpose, openpose_hand, openpose_face, openpose_faceonly, openpose_full

可以接受以下组合:

  • Openpose= Openpose 身
  • Openpose Full = Openpose 身体 + Openpose 手 + Openpose 脸

在这里插入图片描述

ControlNet 1.1 Lineart(线稿)

用线稿控制稳定扩散,该模型是在 awacke1/Image-to-Line-Drawings 上训练的。预处理器可以从图像(Lineart 和 Lineart_Coarse)生成详细或粗略的线稿。该模型经过足够的数据增强训练,可以接收手动绘制的线稿。

  • 模型名称:control_v11p_sd15_lineart [43d4be0d]
  • 模型文件:control_v11p_sd15_lineart.pth
  • 配置文件:control_v11p_sd15_lineart.yaml
  • 预处理器:lineart, lineart_coarse, lineart_anime, lineart_standard, lineart_anime_denoise
    在这里插入图片描述

在这里插入图片描述

ControlNet 1.1 Anime Lineart(动漫线稿)

用动漫艺术线条控制稳定扩散,需要anything x.x 模型进行生成。

  • 模型名称:control_v11p_sd15s2_lineart_anime [3825e83e]
  • 模型文件:control_v11p_sd15s2_lineart_anime.pth
  • 配置文件:control_v11p_sd15s2_lineart_anime.yaml
  • 预处理器:lineart, lineart_coarse, lineart_anime, lineart_standard, lineart_anime_denoise
  • base model:anything-v-4.5

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

ControlNet 1.1 Shuffle(洗牌)

通过内容随机播放控制稳定的传播,该模型经过训练以重组图像。我们使用随机流来打乱图像并控制稳定扩散来重组图像。事实上,由于 ControlNet 被训练来重组图像,我们甚至不需要打乱输入——有时我们可以只使用原始图像作为输入。ControlNet可以通过提示或其他ControlNet的引导来改变图像风格。Shuffle 将是唯一一种图像风格化方法,与其他模型ControlNet模型合用效果会更好。

  • 模型名称:control_v11e_sd15_shuffle [526bfdae]
  • 模型文件:control_v11e_sd15_shuffle.pth
  • 配置文件:control_v11e_sd15_shuffle.yaml
  • 预处理器:shuffle

在这里插入图片描述

ControlNet 1.1 指导 Pix2Pix

使用 Instruct Pix2Pix 控制稳定扩散,这个模型是用50%的指令提示和50%的描述提示来训练的。例如,a lovely boy 是描述提示,而 turn boy lovely 是指令提示,该模型可以应用于任何基础模型。

  • 模型名称:control_v11e_sd15_ip2p [c4bb465c]
  • 模型文件:control_v11e_sd15_ip2p.pth
  • 配置文件:control_v11e_sd15_ip2p.yaml
  • 预处理器:none, canny, depth, depth_leres, hed, hed_safe, mediapipe_face, mlsd, normal_map, openpose, openpose_hand, openpose_face, openpose_faceonly, openpose_full, clip_vision, color, pidinet, pidinet_safe, pidinet_sketch, pidinet_scribble, scribble_xdog, scribble_hed, segmentation, threshold, depth_zoe, normal_bae, oneformer_coco, oneformer_ade20k, lineart, lineart_coarse, lineart_anime, lineart_standard, shuffle, tile_resample, inpaint, invert, lineart_anime_denoise

在这里插入图片描述

主要可以通过单张控制效果输出,组合使用效果更佳。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ControlNet 1.1 Inpaint(修复)

使用 Inpaint 控制稳定扩散。这个修复 ControlNet 使用 50% 的随机掩码和 50% 的随机光流遮挡掩码进行训练。这意味着该模型不仅可以支持修复应用程序,还可以处理视频光流扭曲。也许我们将来会提供一些示例(取决于我们的工作量)。

此 gradio 演示不包括后期处理。理想情况下,您需要在每次扩散迭代中对潜像进行后处理,并对 vae 解码后的图像进行后处理,使未遮罩区域保持不变。然而,这实现起来很复杂,也许更好的想法是在 a1111 中实现。在这个 gradio 示例中,输出只是扩散的原始输出,图像中未遮罩的区域可能会因为 vae 或扩散过程而改变。

  • 模型名称:control_v11p_sd15_inpaint [ebff9138]
  • 模型文件:control_v11p_sd15_inpaint.pth
  • 配置文件:control_v11p_sd15_inpaint.yaml
  • 预处理器:none, canny, depth, depth_leres, hed, hed_safe, mediapipe_face, mlsd, normal_map, openpose, openpose_hand, openpose_face, openpose_faceonly, openpose_full, clip_vision, color, pidinet, pidinet_safe, pidinet_sketch, pidinet_scribble, scribble_xdog, scribble_hed, segmentation, threshold, depth_zoe, normal_bae, oneformer_coco, oneformer_ade20k, lineart, lineart_coarse, lineart_anime, lineart_standard, shuffle, tile_resample, inpaint, invert, lineart_anime_denoise
    在这里插入图片描述
    在这里插入图片描述

ControlNet 1.1 Tile(未完成)

用瓷砖控制稳定扩散,越来越多的人开始考虑采用不同的方法在拼贴处进行漫射,以便图像可以非常大(4k 或 8k)。

  • 模型名称:control_v11f1e_sd15_tile [a371b31b]
  • 模型文件:control_v11f1e_sd15_tile.pth
  • 配置文件:control_v11f1e_sd15_tile.yaml
  • 预处理器:none, canny, depth, depth_leres, hed, hed_safe, mediapipe_face, mlsd, normal_map, openpose, openpose_hand, openpose_face, openpose_faceonly, openpose_full, clip_vision, color, pidinet, pidinet_safe, pidinet_sketch, pidinet_scribble, scribble_xdog, scribble_hed, segmentation, threshold, depth_zoe, normal_bae, oneformer_coco, oneformer_ade20k, lineart, lineart_coarse, lineart_anime, lineart_standard, shuffle, tile_resample, inpaint, invert, lineart_anime_denoise

在这里插入图片描述
待更新。

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

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

相关文章

【openAI】Whisper如何高效语音转文字(详细教程)

文章目录 前言一、准备二、使用Whisper进行语音转文字三.Whisper转换结果分析总结 前言 语音转文字在许多不同领域都有着广泛的应用。以下是一些例子: 1.字幕制作:语音转文字可以帮助视频制作者快速制作字幕,这在影视行业和网络视频领域非常…

【软件下载】换新电脑记录下下载的软件时所需地址

1.idea https://www.jetbrains.com/zh-cn/idea/download/other.html 2.oracle官方(下载jdk时找的) https://www.oracle.com/ 3.jdk8 https://www.oracle.com/java/technologies/downloads/ 下拉找到jdk8 切换windows (需要注册个oracle账…

TabError: inconsistent use of tabs and spaces in indentation

错误原因是tab制表符和空格混用了。从其他地方复制源码容易出现此错误 解决办法:把处于同级缩进的所有缩进修改统一 比较流行的几个编辑器都能标识tab和空格,比如我用的vscode 用鼠标框选不知道是tab还是空格的部分。 若是空格则显示为上图73行所示的点…

自动化运维工具一Ansible Roles实战

目录 一、Ansible Roles概述 1.1.roles官方的目录结构 1.2.Ansible Roles依赖关系 二、Ansible Roles案例实战 2.1.Ansible Roles NFS服务 2.2 Roles Memcached 2.3 Roles-rsync服务 一、Ansible Roles概述 之前介绍了 Playbook 的使用方法,对于批量任务的部…

C++程序设计——常见C++11新特性

一、列表初始化 1.C98中{}的初始化问题 在C98中,允许使用花括号{}对数组元素进行统一的列表初始化值设定,比如: 但是对于一些自定义类型,就无法使用这样的方式进行初始化了,比如: 就无法通过编译&#xff…

HIT-CSAPP实验二gdb和edb的配置

笔者只是根据自己的电脑进行环境的配置,不一定适配所有的电脑,也不是万能的方法,如果读者使用本人的方法没有配置成功本人深表抱歉。 gdb的使用 通过网上查阅一些资料获得 gdb查看内存和寄存器以及中断设置(转)_gdb…

关于安装PicGo后启动无界面问题

关于安装PicGo后启动无界面问题 其实我遇到的这个也不算是问题,也挺无语的。 最近为了搭建图床,需要使用PicGo,第一次搭建图床也是第一次使用PicGo。在安装了PicGo后发现启动不了,查看后台发现PicGo在运行着,但是没有界…

数据结构与算法九 树进阶

一 平衡树 之前我们学习过二叉查找树,发现它的查询效率比单纯的链表和数组的查询效率要高很多,大部分情况下,确实是这样的,但不幸的是,在最坏情况下,二叉查找树的性能还是很糟糕。 例如我们依次往二叉查找…

User Experience Design and Information Architecture

💥(1) What is IA (Information Architecture)? Definition of four sentences I. Information Architecture is "The structure design of shared informaiton environments-共享信息环境的结构设计" II. Information Architecture is "The sy…

ChatGPT提示词工程(三):Summarizing概括总结

目录 一、说明二、安装环境三、概括总结(Summarizing)1. 简单地概括总结,只有字数限制2. 概括总结需要关注的某些点 四、用“提取”代替“总结”(Try "extract" instead of "summarize")五、概括总…

Mysql第二章 多表查询的操作

这里写自定义目录标题 一 外连接与内连接的概念sql99语法实现 默认是内连接sql99语法实现左外连接,把没有部门的员工也查出来sql99语法实现右外连接,把没有人的部门查出来sql99语法实现满外连接,mysql不支持这样写mysql中如果要实现满外连接的…

生成对抗网络原理

GAN的原理 GAN是在2014年由Ian Goodfellow等人提出的,发表在论文“Generative Adversarial Networks”中。 GAN的主要灵感来源于博弈论中零和博弈的思想,应用到深度学习神经网络上来说,就是通过生成网络G(Generator)和…

系统架构设计

高性能 客户端内部缓存客户端到服务器之间缓存:CDN,网络专线数据库前加缓存Sessioin等信息共享NoSQL数据库分片,读写分离web层无关态集群负载均衡GeoDNS 就近原则,边缘计算存储异步,解耦,削峰:消息队列离线…

MySQL学习笔记第五天

第06章多表查询 多表查询概述: 多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段&#xff0…

第二十章 渲染管线

渲染管线是计算机图形中最基础最核心的部分,它是将3D场景显示到2D平面的技术过程。在DirectX课程中,我们就介绍了渲染管线,分为固定渲染管线和可编程渲染管线(Shader)。但是在DirectX 10版本之后统一了渲染架构&#x…

【Java】面试常问知识点(Java基础)

JVM java 栈:线程私有,生命周期和线程,每个方法在执行的同时都会创建一个 栈帧用于存储局部变量表,操作数栈,动态链接,方法出口等信息。方法的执行就对应着栈帧在虚拟机栈中入栈和出栈的过程;栈…

Photoshop如何使用蒙版之实例演示?

文章目录 0.引言1.给单调的天空添加蓝天白云2.清除头发边缘的杂色3.制作景深效果4.制作枯荣共存的树5.制作双重曝光肖像 0.引言 因科研等多场景需要进行绘图处理,笔者对PS进行了学习,本文通过《Photoshop2021入门教程》及其配套素材结合网上相关资料进行…

【Linux内核解析-linux-5.14.10-内核源码注释】内核启动kernel_init解释

源码 解释1 static int __ref kernel_init(void *unused): 声明一个静态整型函数kernel_init(),该函数不会被其他文件访问,使用__ref标记表示该函数是可重定位的,并且该函数不需要任何参数。 wait_for_completion(&kthreadd_done);: 等待…

FL Studio 2023中文高级版水果编曲软件下载

FL Studio 2023中文版是一款非常经典的音乐制作软件,这款软件除了可以为用户提供全面的音乐制作功能之外,还有丰富的主题和皮肤供用户选择,让用户不但做出的音乐具有自己的风格,连制作的音乐的过程也个性十足,非常适合…

荔枝派Zero(全志V3S)驱动开发之串口

系列文章目录 文章目录 系列文章目录前言一、修改及编译设备树1、修改设备树文件2、编译 kernel 二、移植 minicom1、配置buildroot2、编译 buildroot 三、拷贝到 SD 卡四、测试验证1、确认 minicom 是否正常2、确认串口3、发送测试4、接收测试 前言 修改设备树打开 uart1 和 …