AIGC宇宙 AIGC宇宙

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

大家好,我是三石。 今天给大家带来的是 ComfyUI 的局部重绘的工作流,跟之前一样,我会通过一些理论知识来帮助大家对 ComfyUI 的工作流和节点有更深的认知,还是那句话,知其然,还要知其所以然。 相关教程:为什么要写局部重绘,是因为我发现虽然市面上有很多 ComfyUI 的基础局部重绘的教程,我也看了很多,但老有一种隔靴搔痒的感觉,让我似懂非懂。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

大家好,我是三石。

今天给大家带来的是 ComfyUI 的局部重绘的工作流,跟之前一样,我会通过一些理论知识来帮助大家对 ComfyUI 的工作流和节点有更深的认知,还是那句话,知其然,还要知其所以然。

相关教程:

为什么要写局部重绘,是因为我发现虽然市面上有很多 ComfyUI 的基础局部重绘的教程,我也看了很多,但老有一种隔靴搔痒的感觉,让我似懂非懂。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

抱着“假设-验证-结果-总结”的探索精神,我看了大量相关的视频,教程和官方文档,终于把ComfyUI 的局部重绘的基础工作流给整明白的七七八八了,现在就开始吧。

本期是 ComfyUI 的入门级局部重新绘制的讲解,如果大家喜欢,我后面会再写一些高级的局部重绘的教程,但是,我们先从简单的讲起,简单的原理搞明白了,复杂的东西也就一通百通了,本质都差不多。

我总结了基础局部重绘的三种方法,分别是:VAE 内补编码器、设置 Latent 噪波遮罩和使用 ControlNet(重点讲解)

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

首先声明,这三种方法,没有优劣之分,用哪种要看具体的需求,我先简单列出这三种方法各自的使用场景,后面我们再用例子来补充说明。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

一、理解局部重绘的基础概念

现在正式进入主题,要想理解局部重绘,我们需要首先理解“局部是怎么重绘的”?,如果大家之前学过 photoshop,就能很好地理解了,其实就是“蒙版”。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

只不过是现在把这个手动的过程换到 ComfyUI 变成一个自动的过程了,我通过笔刷把需要改图的区域画出来,其余的地方(背景和周边的地面)保持不变,然后在蒙版区域画只猫,看下图:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

二、局部重绘的蒙版处理方式

理解了局部重绘的基础概念,我们还需要理解下蒙版的处理方式,简单说就是蒙版里面的图是怎么生成的,官方用语是:通过采样重绘蒙版区域。

蒙版的采样不仅受蒙版区域内原图的影响(遮罩处理方式),也受蒙版区域外原图的影响(重绘区域)。结合 webui 大家看图:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

在上图的基础上,我罗列了常见的 2 种搭配方式,分别是:

  1. 重绘区域参考(全图)+蒙版蒙住内容(空白潜空间)
  2. 重绘区域参考(全图)+蒙版蒙住内容(原图)

这两种方案分别对应了两种组最简单的局部重绘的方法:

  1. VAE 内补编码器
  2. 设置 Latent 噪波遮罩
  3. 这两种修改办法我简称为“大补和小补”

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

另外一种局部绘制的方法是 ControlNet,跟上面两种不一样,ControlNet 是严格控制蒙版内容的"框架",然后基于框架生成类似的画面,我们可以对比下面三张图:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

三、三种局部重绘的工作流和案例

理解了上面的概念,我们就可以来有的放矢地搭建我们的工作流了,这里我还是想通过一些简单的例子和对比来帮助大家更好地区别。

1. 理解降噪和重绘幅度

图生图工作流如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

原理是先将本地上传的图片解码成计算机能识别的语言(添加噪点),然后结合 Prompt,综合得到一张新的图片,简单地说就是生成的新图片是“图+字”的综合体。这里有个关键就是“降噪(denoise)”,简单理解就是“重绘幅度”,数值在 0-1 之间,数值越大,重绘幅度越高,直至完全偏离原图,数值越低,越接近原图,至于为什么是这个原理,为了方便大家理解,我画了张图,如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

理解了这个之后,我们就可以开始搭建我们的重绘工作流了。

2. VAE 内补编码器局部重绘

本次实验的底模和 clip 文本编码器如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

在这之前,先上传一张需要重绘的照片,然后画上蒙版,最后点击“save to node”,如下图:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

然后我们需要对蒙版进行编码,将蒙版和图像一起上传到“VAE 内补编码器”中,这种重绘方式的原理是蒙版区域为空白潜空间,生成的图像跟之前蒙版的内容没有任何关系,只是参考了原图的风格和感受,所以适合重绘一个完全不想干的东西,工作流如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

其中“VAE 内补编码器”中的遮罩延展,我们可以理解为 photoshop 中的“羽化”,一般设置为 6 即可,太小或者太大都不太合适,我做了实验如下,可以很明显的发现,羽化=0 时,猫咪的边缘很生硬,无法和画面如为一体,就像是“重新粘贴上去的”。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

并且我们发现,VAE 内补编码器的重绘方式确实适合做一些比较大的调整,我们做个人像试试:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

哈哈,确实蒙版区域的内容跟原来毫不相干,大概率有抽卡的成分,所以大家在用这种局部重绘时,最好是用在那种不是微调的,效果还是不错的。

备注:不建议降低降噪值,否则就会出现下图这种情况,原因:数值越低,越接近原图,现在蒙版区域又是空白潜空间,所以就没了参考了,所以就这样了。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

小结:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

3. Latent 噪波遮罩局部重绘

那如果我不想大调整,我只想微调局部,怎么办?

这时候 Latent 噪波遮罩的方法就非常管用,这种重绘方式的原理是蒙版区域参考了原蒙版内容,重绘区域还参考了原图,所以适合微调,能更好地理解需要重新生成的内容,工作流如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

这里可以发现,因为这里的遮罩参考了原图,所以设置降噪幅度是有用的,

这是降噪=0.69 跟原图差的有点大,但还是跟原图保持了一个差不多的特征效果,不会很离谱。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

换成降噪=0.55

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

再换成降噪=0.4

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

是不是很明显,降噪数值越低,跟原图越像,但提示词 “1 smiling girl”依然会表现出来,而上面的“VAE 内补编码器”则有点不尽如人意了,就像是直接搞了张“膏药”,哈哈。

所以,我们可以试着让这个女孩带上眼镜,其余保持不变,这就是典型的局部微调,我们看下效果:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

再来一个,给鸟换个金色羽毛,是不是还不错。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

小结:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

4. ControlNet 局部重绘

到这,相信大家已经理解了最基本的两种重绘方式,现在有个新问题,当画面需要进行重大更改,但是又尽量不改变整体角色形象,比如人物外轮廓不变,在这个基础上进行重绘,又该如何呢?这里就需要用到 ControlNet 来传递原始图像的整体姿势。

如果我想把之前的女孩变成老奶奶,属于重大修改,但不能改变画面形象,姿势,综合来看,controlnet 的效果是最完美的,手部动作也还原了。三种处理方式的结果如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

再比如换上另一个女孩,控制效果依然不错。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

工作流如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

这里我自己理解 ControlNet 重绘适合整体的大修改,但是还能保留原图像特性,我们看官方文档的示例就比较清楚了:

  1. ControlNet 官方介绍:https://github.com/lllyasviel/ControlNet-v1-1-nightly?tab=readme-ov-file
  2. ControlNet 1.1 模型下载:https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

到这里,我把我理解的都告诉大家了,其实这三种办法简单讲就是在重绘时对画面的控制程度越来越高,越来越精细,如果我只想简单来个替换,第一种就很好,但是我想造型还是那个造型,但得换个人,咱就得用 ControlNet 来精准控制。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

四、初步了解 ControlNet

上面的第三种局部重绘的方法,用到的是 ControlNet,那 ControlNet 的基本内容和原理又是什么呢?这里我先帮助大家做个简单的介绍,后面我会单独出一期文章详细讲解 ControlNet(现在本人还不理解地很到位),大家喜欢的可以先关注下。

ControlNet 说简单点就是在原图框架上出类似的图,官网上大概有以下几种模型:深度、曲线、直线、姿势等,不太明白的话,我给大家换个看法,来个“映射”,大家学设计的大学高中都学过素描和水粉吧,比如画水粉的时候,每个人的起稿方式都不一样,有打线稿的,也有平涂的,说白了,ControlNet 就是干这个事情的。

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

这些模型的具体用法和选择我也会在后面的文章做详细的介绍,这里我们了解个大概就差不多了。我自己总结了 COntrolNet 的出图原理如下:

深度教程!ComfyUI 局部重绘的3种工作流搭建方法和原理讲解

简单来说,ControlNet 解决的一个最大的问题是:单纯的关键词控制方式无法满足对细节精确控制的需要。

总结

今天的分享就到这里了,本章内容主要讲解了在 ComfyUI 中基础的 3 种局部重绘的方法,以及每种方法的优缺点,其实这一块最难的是了解每种局部重绘的原理,知道原理之后,我们后面就可以随心所欲地进行自我创作了,还有就是每种方法没有优劣之分,重要的是摆在合适的位置,找到合适的场景,所以建议大家自己要多尝试几遍。

希望对大家有帮助,祝大家出图愉快!

谢谢

相关资讯

ComfyUI V1 桌面客户端终于来啦!支持 Mac/Win 一键安装(附安装包和使用指南)

大家好,我是花生~. 10 月底的时候 ComfyUI 官方宣布将发布一款桌面客户端 ,它最大的特点是同时兼容 Mac 和 Windows 系统,也就是说苹果用户也可以实现一键安装 ComfyUI 了,很多小伙伴最担心的安装问题迎刃而解。 当时我也申请了内测名额,并在半个月前就收到了官方发送的内测邮件,但那时只有 windows 安装包一项,而且初始版本并不稳定,所以没有第一时间为大家介绍。
11/28/2024 5:34:43 AM
夏花生

ComfyUI神级插件!在PS中轻松实现 AI 图像生成、放大和重绘

大家好,这里是和你们一起探索 AI 的花生~ 今天为大家推荐一款我最近发现的非常厉害的 ComfyUI 插件 comfyui-photoshop,它由程序员 Nami 独立开发,将 ComfyUI 做为后端接入 Ps 中,借助其强大的 AI 生成能力,实现文生图、图生图、高清放大、局部重绘、外绘拓展等多种功能。 我也安装了这款插件,这个过程并不复杂,AI 出图非常稳定,软件之间的交互也非常顺畅;因为使用了 LCM lora,所以出图速度也非常快,可以做为 Ps 原生 AI 功能的平替,而且功能更多样。今天就为大家详
7/31/2024 6:44:29 AM
夏花生

ComfyUI 插件教程:帮你完全掌握ComfyUI Impact 节点(一)

前言: 学习 ComfyUI 是一场持久战,而 ComfyUI Impact 是一个庞大的模块节点库,内置许多非常实用且强大的功能节点 ,例如检测器、细节强化器、预览桥、通配符、Hook、图片发送器、图片接收器等等。通过这些节点的组合运用,我们可以实现的工作有很多,例如自动人脸检测和优化修复、区域增强、局部重绘、控制人群、发型设计、更换模特服饰等。在 ComfyUI 的进阶之路上,ComfyUI Impact 是每个人不可绕过的一条大河,所以本篇文章将带领大家理解并学会使用这些节点。祝大家学习顺利,早日成为 Com
8/8/2024 12:44:28 AM
AI实战
  • 1