AI绘画SD入门教程:ControlNet篇-Canny边缘检测预处理器

news2024/11/15 21:52:54

大家好,我是向阳

在本篇中,我来讲讲如何使用预处理器和辅助模型,分别都有些什么作用。

💡 这里说明一下当你调用预处理器而辅助模型显示为无的几种原因:

  1. 当已载入SD1.5的模型时,CannyXL的辅助模型不会显示;

  2. 当已载入SDXL的模型时,CannySD1.5的辅助模型不会显示;

  3. \extensions\sd-webui-controlnet\models在这个路径下检查下模型是否在models文件夹下;

需要了解的一些知识:

  1. 目前最新的ControlNet模型分为ControlNet 1.1模型和ControlNet XL模型;

  2. ControlNet 1.1模型支持基于SD1.5、2.1训练的大模型上。而ControlNet XL模型支持基于SD XL训练的大模型上;

  3. 它们虽然是属于两个不同版本的模型,但是使用方法和原理都是一样的;

  4. SD1.5、2.1的模型无法使用XL的ControlNet模型,SDXL的模型无法使用SD1.5、2.1的ControlNet模型;

  5. 预处理器的作用是对提供的参考图片进行处理,提取出图内的特征,后面我们将用**“提取图”**这个词作为统一代名词;

  6. ControlNet模型,与预处理器配合使用,每种预处理器都会有好几种模型,而这些模型又会有不同作用,后面我会讲。

Canny(边缘检测预处理器)


如何使用

首先我们来看第一个预处理器Canny,在控制类型区域选中一个预处理器,预处理器和模型会自动切换,如果辅助模型显示为无,则参考上面的几种原因。

那么我们来走一遍使用流程,以Canny预处理器为例(以后讲的大多数预处理器使用流程基本是一样的)

  1. 先上传要控制图片的参考图;

  2. 选择一个预处理器控制类型;

  3. 启用该预处理器,打开允许预览,打开完美像素;

  4. 选择预处理器(有些预处理器有多种子类别),选择辅助模型(有多种子类别模型精度不同效果也不一样,FP16/FP32指的就是精度),点击预览按钮,运行后预览区域就会显示预览结果;

  5. 预处理器分辨率,在未开启完美像素,手动调整参数,参数值64-2048,默认 512,数值越高线条越精细,数值越低线条越粗糙。

  6. Canny低阈值与高阈值,数值越低线条越复杂,数值越高线条越简单,也就是提取图线段的强弱,或者说线段的粗细,这样更好理解。

执行完以上基础步骤后,就可以提取出图片了,如果满意,则结合文生图或图生图使用。

作用与效果

接下来我们先调整参数,这样更直观地了解这些参数对于控图的作用。下图是Canny提取图与原图对比。

预处理器分辨率(Preprocessor Resolution)参数效果:未开启完美像素模式的情况下,可自己调整参数以便得到最佳效果的提取图,以512像素的原图为例,数值越大,线条越细,如图:

Canny低阈值/高阈值参数效果:在一张图中,Canny预处理器会识别出各种各样的线段信息,如图L1/H1,当设置L1/H1参数时,Canny会把所有线段提取出来,其中有大部分线段对于图片是无用的,至少在视觉上是无用的,那我们就可以通过调整参数阈值来获得最佳线稿。通俗地讲就是想要图片保留的细节多一些可以降低阈值,图片保留细节少一些可以提高阈值,一般默认就行。

Canny的作用:能够很好地识别出图像内各对象的边缘轮廓,将人物边缘或物体的边缘提取出来,虽然提取后的图像是看似是线稿图,但其实与线稿完全不一样。


应用场景

图片重绘也就是线稿图上色,通过提示词与控制权重改变图片内容。

ControlNet的预处理器和模型能够很好的帮我们控制图片结构,Canny预处理器相对于其他预处理器控图自由度更高,效果更好,不过呢,这也是分应用场景的。

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

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

在这里插入图片描述

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

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

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

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

三、最新AIGC学习笔记

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

四、AIGC视频教程合集

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

在这里插入图片描述

五、实战案例

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

若有侵权,请联系删除

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

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

相关文章

ch5链路层和局域网

回顾TCP/IP参考模型,明确链路层和物理层在整个模型中的地位,简要提出链路层要解决的问题是单段链路的数据传输,物理层解决的是数字信号与电气信号之间的相互转换。 链路层概述 节点:主机和路由器(包括网桥和交换机) 链路:沿着通信路径连接相邻节点的通信信道 有线链路 无…

Redis缓存(笔记一:缓存介绍和数据库启动)

目录 1、NoSQL数据库简介 2、Redis介绍 3、Redis(win系统、linux系统中操作) 3.1 win版本Redis启动 3.2 linux版本Redis启动 1、NoSQL数据库简介 技术的分类:(发展史) 1、解决功能性的问题:Java、Jsp、RDBMS、Tomcat、HTML、…

【面试干货】什么是内连接、外连接、交叉连结、笛卡尔积?

【面试干货】什么是内连接、外连接、交叉连结、笛卡尔积? 1、内连接(Inner Join)2、左外连接(Left Outer Join)3、右外连接(Right Outer Join)4、全外连接(Full Outer Join&#xff…

被斯坦福抄作业了?在线体验下:国产大模型确实越来越棒啦!

抄袭? 这里不做评价了: 官方仓库 地址:miniCPM-Llama3-V-2_5 免费在线体验地址 链接:Llama3-V-2_5 模型能力: 模型实际体验 问他什么模型:(可能用了它的数据集吧) 图片分析…

CrossPrefetch: Accelerating I/O Prefetching for Modern Storage——论文泛读

ASPLOS 2024 Paper 论文阅读笔记整理 问题 目前计算设备和存储设备之间的性能差距仍然很大。因此,主内存缓存和缓冲区被广泛用于操作系统、用户级文件系统[32]和I/O运行时,在隐藏性能差距和减少I/O瓶颈方面发挥关键作用[23,26,3…

1. lvs负载均衡

lvs负载均衡 一、集群技术概述1、集群技术类型2、负载均衡技术3、高可用技术 二、负载均衡 LVS1、LVS介绍2、负载均衡策略/算法3、LVS设计模式3.1 NAT模式的注意事项 三、LVS nat模式的实现1、确认后端服务器网关正确2、安装ipvsadm软件3、开启路由转发4、创建虚拟服务5、添加后…

EasyV开发人员的使用说明书

在可视化大屏项目时,开发人员通常需要承担以下任务: 技术实现:根据设计师提供的设计稿,利用前端技术(如HTML、CSS、JavaScript等)和后端技术(根据具体项目需求,可能是Java、Python、…

冯喜运:6.5今日黄金原油行情怎么看及日内操作策略

【黄金消息面分析】:周三(6月5日)亚市早盘,现货黄金窄幅震荡,目前交投于2328.13美元/盎司附近。黄金价格周二下跌超过1%,原因是美元在本周晚些时候美国就业数据公布前趋于稳定,该数据可能为美联…

【数据结构】图论中求最短路径——迪杰斯特拉算法(Dijkstra)、弗洛伊德算法(Floyd)

目录 最短路径 (*)迪杰斯特拉算法(Dijkstra)迪杰斯特拉算法(Dijkstra)的算法原理: 弗洛伊德算法(Floyd)弗洛伊德算法(Floyd)的算法原理:弗洛伊德算法的&#…

Ubuntu server 24 (Linux) 普通用户不能sudo 也不能使用root登录 忘记root密码 修复解决方案

一 普通用户无法sudo,同时也没有其他用户可用 #test用户使用sudo报错,没有权限 testtest:~$ sudo vi /etc/sudoers [sudo] password for test: test is not in the sudoers file. 二 关闭ubuntu 服务器,重新开机 按下ESC 键 1 出现GRUB…

LLM推理加速原理(一)

1.大语言模型的基本结构 transfomer block: 输入--->正则化-->qkv三个矩阵层(映射到三个不同空间中)---->q,k,v之后self attention进行三0合一---->线性映射,正则化。 2.大语言模型的推理 目前主流的语言大模型都采用decoder-only的结构,其推理过程由两部分…

线性代数|机器学习-P2 A的列向量空间

文章目录 1. Ax矩阵的形式2. ACR 矩阵分解2.1 rank1 矩阵分解2.2 rank2 矩阵分解2.3 ACMR,求M 3. Ax 向量 1. Ax矩阵的形式 假设我们有如下矩阵A: A x [ 2 1 3 3 1 4 5 7 12 ] [ x 1 x 2 x 3 ] \begin{equation} Ax\begin{bmatrix} 2&1&3\\\\ 3&1&am…

【Redis数据库百万字详解】数据持久化

文章目录 一、持久化1.1、什么是持久化1.2、持久化方式1.3、RDB优缺点1.4、AOF优缺点 二、RDB持久化触发机制2.1、手动触发2.2、自动触发 三、RDB持久化配置3.1、配置文件3.2、配置查询/设置3.3、禁用持久化3.4、RDB文件恢复 四、RDB持久化案例4.1、手动持久化4.2、自动持久化案…

【计算机网络】对应用层HTTP协议的重点知识的总结

˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好,我是xiaoxie.希望你看完之后,有不足之处请多多谅解,让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如…

超越传统AI 新型多智能体系统MESA,探索效率大幅提升

探索多智能体强化学习的协同元探索 —— MESA 算法深度解读在多智能体强化学习(MARL)的征途中,如何高效探索以发现最优策略一直是研究者们面临的挑战。特别是在稀疏奖励的环境中,这一问题变得更加棘手。《MESA: Cooperative Meta-…

【Vue】v-model在其他表单元素的使用

讲解内容: 常见的表单元素都可以用 v-model 绑定关联 → 快速 获取 或 设置 表单元素的值 它会根据 控件类型 自动选取 正确的方法 来更新元素 输入框 input:text ——> value 文本域 textarea ——> value 复选框 input:checkbox ——> checked…

Java 垃圾回收

文章目录 1 Java 垃圾回收1.1 JVM1.2 Java 对象生命周期 2 如何判断一个对象可被回收2.1 引用计数算法2.2 可达性分析算法 3 垃圾回收过程3.1 总体过程3.2 为什么要进行世代垃圾回收?3.3 分代垃圾回收过程 在 C 和 C 中,许多对象要求程序员声明他们后为其…

SpringMVC:拦截器(Interceptor)

1. 简介 拦截器(Interceptor)类似于过滤器(Filter) Spring MVC的拦截器作用是在请求到达控制器之前或之后进行拦截,可以对请求和响应进行一些特定的处理。拦截器可以用于很多场景下: 1. 登录验证&#xf…

Facebook开户|如何科学高效投放Facebook Ads

中午好家人们~今天Zoey来聊聊如何科学高效投放Facebook Ads~ 一、定义目标受众 在开始广告投放之前,需要明确定义你的目标受众。你可以根据受众的年龄、性别、兴趣、行为以及他们所在的地理位置等信息来确定目标受众。这样有助于创建精准的广告,并确保广…

PieCloudDB Database Flink Connector:让数据流动起来

面对客户环境中长期运行的各种类型的传统数据库,如何优雅地设计数据迁移的方案,既能灵活地应对各种数据导入场景和多源异构数据库,又能满足客户对数据导入结果的准确性、一致性、实时性的要求,让客户平滑地迁移到 PieCloudDB 数据…