首页 > 其他分享 >ComfyUI 完全入门:ControlNet 使用教程

ComfyUI 完全入门:ControlNet 使用教程

时间:2024-06-03 15:24:07浏览次数:21  
标签:ControlNet ComfyUI 模型 教程 处理器 图片 加载

大家好,我是每天分享AI应用的萤火君!

今天继续给大家分享ComfyUI的入门必备技能:ControlNet。

ControlNet 提供了十几种生成图片的控制方式,有的可以控制画面的结构,有的可以控制人物的姿势,还有的可以控制图片的画风,这对于提高AI绘画的质量特别有用;基于 ControlNet 的能力,炼丹师们可以将AI绘画拓展到很多的应用场景,比如艺术二维码、光影文字、线稿上色、老照片修复、图片风格转绘、IP图片创作等等。

ComfyUI介绍

很多同学对ComfyUI可能还不太了解,我这里做一个简单的介绍。

在AI绘画领域,Stable Diffusion 因其开源特性而受到广泛的关注和支持,背后聚拢了一大批的应用开发者和艺术创作者,是AI绘画领域当之无愧的王者。

目前使用 Stable Diffusion 进行创作的工具主要有两个:Stable Diffusion WebUI 和 ComfyUI。

Stable Diffusion WebUI 开箱即用,各项功能齐全,社区也有很多的插件支持,入门比较简单,适合新手,但是可定制性稍微差点,很多作品不容易传播复现,使用API进行操作也有一定的难度。

ComfyUI 出来的晚一点,但是它的可定制性很强,可以让创作者搞出各种新奇的玩意,通过工作流的方式,也可以实现更高的自动化水平,创作方法更容易传播复现,发展势头特别迅猛。但是 ComyUI 的上手门槛有点高,对 Stable Diffusion 以及各种扩展能力的原理需要有一定的理解,动手能力要求也比较高。

为了方便大家尽快上手ComfyUI,本系列文章将会介绍一些 ComfyUI 的概念和使用方法,让大家更快的掌握 ComfyUI 的使用技巧,创作出自己独特的艺术作品。

 

ComfyUI 安装部署

本地安装部署

本地部署需要特殊网络设置、8G显存以上的Nvidia显卡、一定的电脑动手能力,如果你满足这三个条件,请看我这篇文章:ComfyUI 完全入门:安装部署

使用云端服务器

推荐大家使用京东云智算服务平台( https://www.jdcloud.com/cn/products/gcs ),618搞活动,一个小时不到1块钱,随用随停,如果想锁定这个优惠的,还可以包月,包月价格才680块钱。还有充多少送多少的活动,想炼丹的兄弟姐妹们,赶紧收着。

我在京东云智算服务平台发布了ComfyUI的镜像,内置了常用的工作流,大家可以一键启动,直接使用,不用费劲吧啦的各种安装调测。

 


 

使用ControlNet

安装插件

首先说明,如果你使用了上面云端服务器我制作的镜像,就无需安装插件,直接使用即可。如果你是本地安装部署,那么请耐心按照下面的方式安装插件。

ComfyUI自带了一些简单的 ControlNet 节点,不过这还远远不够,我们需要安装一些插件来增强 ControlNet 方面的处理能力。

这里推荐两个插件:

ControlNet 预处理器插件:包含各种常用的ControlNet预处理器。

https://github.com/Fannovel16/comfyui_controlnet_aux

高级ControlNet:支持 ControlNet 调度和遮罩等高级特性。

https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet

在 ComfyUI 管理器中点击“通过 Git URL 安装”,输入上边的链接,即可开始安装。

 


 

安装成功后,不要忘了重启ComfyUI,刷新浏览器页面。

ControlNet预处理器依赖的模型也比较多,大家可以在这里下载到大部分模型。

https://huggingface.co/lllyasviel/Annotators/tree/main

考虑到有些同学访问 huggingface 不方便的同学,我在云平台已经实现把这些模型都下载好了,大家可以在直接使用。

 


 

 

不带预处理器的ControlNet

ControlNet 主要由3个节点组成:ControlNet加载器、ControlNet应用和参考图片,下边一一分解介绍。

 


 

ControlNet加载器:这是用来加载ControlNet模型的。ComfyUI内置了两个ControlNet模型加载器,一个是“ControlNet加载器”,另一个就是这里使用的“DiffControlNet加载器”。“DiffControlNet加载器”不仅支持加载普通的ControlNet模型,还支持加载 diffusers 格式的ControlNet模型,更为通用一些。这里我们用它来加载一个普通的深度ControlNet模型,注意ControlNet模型区分SD1.5和SDXL,选择SD基础模型时一定要搭配起来,不能混用。 •参考图片:ControlNet要实施推理控制,就需要一定的参考,比如姿势、深度、线稿、配色、人物形象等。在上图的工作流中我们直接提供了一张深度图,另外我们也可以提供正常图片,让ControlNET预处理器从中提取,下文会给出一个预处理器的使用示例。 •ControlNet应用:封装ControlNet,汇集模型、参考图片和一些参数,共同计算得出新的提示词条件。ControlNET应用默认有3个可以手动控制的参数: ◦强度:ControlNET模型对生成图片的影响力。太高可能会让参考特征过于明显,太低又丢失了ControlNet的控制力,需要根据实际情况调整。 ◦开始时间:在生成图片的第几步引入ControlNET,取值范围0-1。一般前几步会确定图片中的主体内容,如果使用的是线稿类模型,这个时间不能设置的太晚。 ◦结束时间:在生成图片的第几步退出ControlNET,取值范围0-1。如果想在细节上自由发挥的更多,可以将这个值改小一点试试。

我们再看一下这几个节点是如何连接到一起的。

我们可以认为“DiffControlNet加载器”和“加载图像”都是为“ControlNet应用”提供必需参数的,上图中的“连接线1”和“连接线2”就起到提供参数的作用。

最后我们再看一下ControlNet节点的输入和输出,这里的输入主要有两块:

SD基础模型:上面已经提过,ControlNet模型不能独立工作,所以上图中的“ControlNet加载器”需要以模型作为输入,图中的“模型”接入点要连接到名为“Checkpoint加载器”的节点,以获取SD基础模型。

 


 

提示词编码条件:这里分为“正面条件”和“负面条件”,ControlNet应用会对这些条件进行加工处理,在其中加入当前ControlNet提取到的控制信息。需要把它们连接到“CLIP文本编码器”节点,“CLIP文本编码器”就是编码提示词,生成初始条件的;如果使用多个ControlNet,我们也可以把它们连接到串联ControlNet应用输出的“正面条件”和“负面条件”。在一些简单的“ControlNet应用”节点上,你可能只能看到一个“条件”,这时候的“条件”对应的是“正面条件”。

ControlNet应用的输出就是“正面条件”和“负面条件”,需要将它们连接到采样器,采样器会使用这些条件进行采样,最终生成出符合条件的图片。注意如果“ControlNet应用”的输入只有一个“条件”,那么我们就无需通过“ControlNet”处理负面条件。

下图是“ControlNet应用(高级)”有两个条件参数的连接线示例:

 


 

下图是“ControlNet应用”只有一个条件的连接线示例:

 


 

 

带预处理器的ControNet

我们再看一个使用预处理器来提取参考信息的例子:

 


 

在这个例子中,我们增加了三个新的节点:

1.Openpose姿态预处理器:用于从加载的原始参考图像中提取人物姿态信息,包括身体、面部和手部信息。它接收图像和分辨率,输出一个新的图像。输入的图像就是原始要参考的图片,输出的图像是一个姿态图片(见上图中的预览图片);分辨率则用来控制输出的姿态图片的最短边的长度。

不同的预处理器会有不同的参数组合,如果你不知道应该怎么设置,可以参考我之前写的 ControlNet 系列文章:

2. 完美像素:用来计算预处理器生成的姿态图片的分辨率,也就是姿态图片的最短边的长度,这个节点中的参数都是用来计算这个最短边的。所谓完美就是通过匹配姿态图片和生成图片的尺寸,生成出最优分辨率的姿态图片,供ControlNet使用。

◦图像:ControlNet使用的原始参考图片,完美像素会从中获取图片的宽度和高度信息。 ◦宽度和高度:要生成图片的宽度和高度。 ◦拉伸模式:“仅拉伸”和“裁剪并拉伸”都会先选择“宽度”和“高度”参数中的最大值,然后按照原始参考图片的宽高比例计算出姿态图片的另一条边的长度;“拉伸并填充”则会先选择“宽度”和“高度”参数中的最小值,然后按照原始参考图片的宽高比例计算出姿态图片的另一条边长度。

举个例子,假设原始参考图片的尺寸是 512×768(比例是1:1.5),输入的“宽度”和“高度”分别是1024、640,使用“裁剪并拉伸”模式时,会先选择宽度(因为1024大于640),那么完美像素计算出来的姿态图片尺寸就是 1024 * 1536(1024*1.5),输出的分辨率是最短边的长度 1024;如果选择“拉伸并填充”模式,会先选择高度(因为640<1024),那么完美像素计算出来的姿态图片尺寸就是 427(640/1.5)*640,输出的分辨率还是最短边的长度 427。

3. 预览图像:预览ControlNet预处理器生成的参考图片,这个节点不是必需的,只是想看看预处理器提取的特征效果如何。这个图像将被送到“ControlNet应用”中进行编码处理。如果我们已经有了这个参考图片,前边的预处理器、完美像素都是可以不要的。

使用多个ControlNet

文章编写不易,多ControlNet的使用方法和工作流目前仅发布在我的AI绘画专栏,有兴趣的可以去看看。

工作流配置文件

如果您觉得上面的流程还是太复杂,可以加企业微信获取精心制作的工作流配置文件,一键导入生图。

 


 

 

欢迎大家试用京东云智算服务,一键开启AIGC之旅。

没有套路,不设门槛。京东云GPU算力服务618大促,从即日5月31日起到6月20日,GPU 立享5折,折后价格每小时只要9毛钱,就能享受24G显存,83TFLOPS单精度浮点算力,性能强劲,即开即用!满足AIGC、大模型推理、图像渲染等多种场景。 加企业微信,新用户再送5元免费体验GPU云算力代金券,还能享受充多少送多少专属活动!限时秒杀,数量有限,先到先得哈!赶紧打开页面 https://www.jdcloud.com/cn/products/gcs,点击立即购买。

标签:ControlNet,ComfyUI,模型,教程,处理器,图片,加载
From: https://www.cnblogs.com/Jcloud/p/18228969

相关文章

  • 用docfx生成c#项目API的简洁教程
    1.下载docfx https://github.com/dotnet/docfx2.在环境变量的Path下面添加下载解压后docfx.exe的目录3.创建文档项目文件夹(名称如doc),位置最好是在解决方案文件夹,这样目录好配置,其它也方便。4.在doc文件夹运行cmd,或打开cmd,进入到doc文件夹5.运行docfxinit,然后根据提示......
  • 淘宝店铺全自动采集私信筛选脚本【采集脚本+使用教程】
    项目原理:利用智能脚本,我们可以高效地筛选出可能不活跃的店铺,并尝试通过与其互动来判断其真实状态。通过购买并监控这些店铺的商品,我们可以有效地识别出那些未能按照平台规定及时发货的店铺,并据此向平台申请补偿。设备与资源需求:一台运行Windows10系统的电脑。完整的软......
  • UDE使用教程
    1、UDE简介        PLSUDE是一款强大的软件调试工具,适用多种架构芯片,包括主流的英飞凌,恩智浦,瑞萨,ARM等,国内有紫光,云途等。实用起来感觉功能略逊于劳特巴赫,但是还是很强大。界面做的比劳特巴赫好,价格比劳特巴赫便宜。2、新建工程2.1新建workspace2.2选择Target......
  • 史上最全Docker教程,从容器发展史到实操(一)
    前言:今天我们所说的容器是一种IT技术。容器其实是一种沙盒技术。顾名思义,沙盒就是能够像一个集装箱一样,把你的应用装起来。这样,应用与应用之间就有了边界而不会相互干扰;同时装在沙盒里面的应用,也可以很方便的被搬来搬去,这也是PaaS想要的最理想的状态(可移植性,标准化,隔离性)......
  • iPhone网络抓包教程:运行tcpdump并在Wireshark进行网络抓包
    热烈欢迎,请直接点击!!!进入博主AppStore主页,下载使用各个作品!!!注:博主将坚持每月上线一个新app!! 1、安装Xcode,创建项目并连接至iPhone。2、iPhone连接至iMac,通过访达,获取iPhone的UDID。3、检查是否已安装rvictl。通常其随Xcode一起安装的:$whichrvictl/Library/Apple/usr/......
  • MySQL 使用方法以及教程
    一、引言MySQL是一个流行的开源关系型数据库管理系统(RDBMS),广泛应用于Web开发、数据分析等领域。它提供了高效、稳定的数据存储和查询功能。同时,Python作为一种强大的编程语言,也提供了多种与MySQL交互的库,其中pymysql就是其中之一。本文将介绍MySQL数据库的基础使用,并通过Pytho......
  • Eclipse 下 Activiti Designer 插件安装教程
    Activiti开源工作流引擎简介:什么是工作流?工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。个人理解:工......
  • Studio One6.5最新版本软件功能介绍及用户使用步骤教程S及安装激活使用方法
     StudioOne做为新生代音乐工作站,凭借更低的价格和完备的功能,获得了音乐人和直播行业工作者的青睐,尤其是对硬件声卡的适配支持更好,特别适合用来配合线上教学和电商带货。最近网上出现不少关于StudioOne不能用或者StudioOne掉激活的问题讨论,其原因是使用了非正版软件,下面让我......
  • 【YOLOv10改进实战】**【3】YOLOv10“启动”——数据集的搭建:保姆级教程
    【YOLOv10改进实战】**【3】YOLOv10“启动”......
  • python系列&AI系列:Gradio库的安装和使用教程
    Gradio库的安装和使用教程Gradio库的安装和使用教程一、Gradio库的安装二、Gradio的使用1、导入Gradio库2、创建Gradio接口3、添加接口到Gradio应用4、处理用户输入和模型输出5、关闭Gradio应用界面三、Gradio的高级用法1、多语言支持2、自定义输入和输出格式3、模型版......