前言:

学习ComfyUI是一场持久战,而ComfyUI-BrushNet是最近的局部重绘节点,其包含BrushNet和Powerpaint两个主要节点,其中BrushNet有SD1.5和SDXL两个版本,PowerPaint只有1.5的模型可以使用,学会该插件,你可以完成对图片的局部重绘以及产品换背景等多个工作流。祝大家学习顺利,早日成为ComfyUI的高手!

目录

一、BrushNet Loader节点

二、BrushNet节点

三、Blend Inpaint节点

四、Cut For Inpaint节点

五、PowerPaint节点

一、BrushNet Loader节点

这一节点专注于加载BrushNet模型,以便在后续的图像处理工作流中使用。通过加载BrushNet模型,可以利用其强大的图像处理能力来执行各种细致的编辑和增强任务。

重要参数:

dtype → 这个参数设置模型的运行数据类型

注意:建议设置dtype为float32进行运行,假如这是为float16,那么当CUDA显存不足时会将一部分的数据放入CPU执行模型计算,但是CPU不支持float16精度的数据,会产生报错信息。

该节点目前有三种模型提供加载

第一种是PowerPaint模型:如图所示,使用PowerPaint模型时必须搭配1.5版的SD大模型,并加载PowerPaint所需的Clip模型。该模型的功能是去除图像中被蒙版覆盖的区域。

第二种是BrushNet模型,它使用了random_mask模型。在实验中,我使用的是SDXL大模型。下图展示了使用random_mask模型进行局部修复的效果。可以看出,最终修复后的图像并未严格按照蒙版的内容进行填充,例如,瓶子的尺寸明显小于蒙版。因此,该模型主要用于随机选择蒙版进行修复。

第三种是BrushNet使用的segmentation模型。从图中可以看出,最终生成的图像严格按照蒙版的区域进行绘制,瓶子的大小完全与蒙版相符。然而,在BrushNet的原论文中提到,segmentation模型在插值操作方面可能会引入潜在的不准确性,因为将蒙版调整大小以匹配潜在空间的操作可能会导致潜在的不准确性"。也就是说,当蒙版信息通过VAE编误差。

使用场景:

· 图像编辑:利用BrushNet模型进行细致的图像编辑任务,如去噪、修复、增强等。

· 图像增强:通过BrushNet模型增强图像的细节和质量,改善视觉效果。

· 自动化处理:在自动化图像处理流程中,使用BrushNet模型实现高效、准确的图像处理。

通过使用BrushNet Loader节点,可以在图像处理工作流程中实现高效的BrushNet模型加载和应用,提升图像处理的精度和效果。

二、BrushNet节点

这一节点专注于使用BrushNet模型对图像进行各种处理,包括去噪、修复、增强等。通过配置和使用BrushNet模型,可以实现高质量的图像处理效果。

重要参数:

mask → 表示你要上传的蒙版 **如果蒙版和图像不对齐,结果可能会很差**

scale → 直译是尺度的意思,也就是控制大小的阈值,模型把原始数据编码后加入unet之前与scale相乘, 去控制模型的作用强度。

示例:下图所示为BrushNet批量重绘方式

示例:下图为BrushNet的基础重绘方式

使用场景:

· 图像去噪:使用BrushNet模型去除图像中的噪点,提高图像质量。

· 图像修复:通过BrushNet模型修复图像中的瑕疵和损坏区域。

· 图像增强:增强图像的细节和视觉效果,使图像更加清晰和吸引人。

· 自动化处理:在自动化图像处理流程中,使用BrushNet模型实现高效、准确的图像处理。

通过使用BrushNet节点,可以在图像处理工作流程中实现高效的BrushNet模型应用,提升图像处理的精度和效果。

三、Blend Inpaint节点

这一节点专注于图像的修复和填充。通过使用高级的图像修复算法,可以将缺失的图像部分进行填充,或将新的图像内容无缝地融合到现有图像中。

重要参数:

inpaint → 重绘后的局部图像

original → 原始图像

origin → 原图中裁剪后的数据

kernel → 设置粘贴图像的边缘融合度

sigma → 设置图像的透明度

使用场景:

图像修复:在图像处理中,修复损坏或缺失的图像部分。

图像填充:在需要将新的图像内容无缝融合到现有图像中的场景中使用。

自动化处理:在自动化图像处理流程中,通过图像修复和填充算法,实现高效的图像处理。

通过使用Blend Inpaint节点,可以在图像处理工作流程中实现高效的图像修复和填充,提升图像处理的精度和效果。

四、Cut For Inpaint节点

这一节点专注于准备图像数据,以便在后续的修复和填充任务中使用。通过切割和处理图像中的特定区域,可以生成需要修复或填充的图像部分及其相应的掩码。

重要参数:

image → 输入原始图像

mask → 输入重绘的蒙版区域

width → 设置裁剪宽度

height → 设置裁剪高度

示例:下图为Cut For Inpaint节点和Blend Inpaint节点的组合使用,主要是用在我们的原始图像很大,而我们要重绘的区域却又很小的情况,这种时候我们将对应的区域进行放大修复能够让模型更好的理解上下文,从而进行融合度更高的重绘。

使用场景:

· 图像修复准备:在图像处理中,准备需要修复或填充的图像部分,为后续处理节点提供合适的数据。

· 图像填充准备:在需要将新的图像内容无缝融合到现有图像中的场景中,准备需要填充的图像区域。

· 自动化处理:在自动化图像处理流程中,通过切割和处理图像区域,实现高效的区域准备和优化。

通过使用Cut For Inpaint节点,可以在图像处理工作流程中实现高效的图像区域准备,为后续的修复和填充任务提供合适的输入数据,从而提升图像处理的精度和效果,满足各种复杂图像处理需求。

五、PowerPaint节点

这一节点专注于复杂的图像修复和增强任务,通过使用先进的图像处理算法,实现高质量的图像编辑。

重要参数:

clip → PowerPaint有对应的CLIP模型

fitting → PowerPaint贴合度

function → PowerPaint功能

在function的功能中一共有五个选项,分别是text guided,shape guided,object removal,context aware和image outpainting,分别对应的功能为“使用文本作为引导”,“使用形状作为引导”,“物体移除”,“上下文感知”和“图像的扩充”。

示例:下图所示工作流为对原始图像进行扩充,选择image outpainting选项,在扩充前需要对图像进行pad操作。

使用场景:

· 图像修复:在图像处理中,修复损坏或缺失的图像部分。

· 图像增强:通过增强图像的细节和视觉效果,使图像更加清晰和吸引人。

· 图像填充:在需要将新的图像内容无缝融合到现有图像中的场景中使用。

· 自动化处理:在自动化图像处理流程中,通过图像修复和增强算法,实现高效的图像处理。

PowerPaint 节点是一个强大的图像编辑工具,专门用于复杂的图像修复和增强任务。这个节点的设计目的是通过提供高级的图像处理算法和灵活的配置选项,进行高精度的图像编辑。

**孜孜以求,方能超越自我。坚持不懈,乃是成功关键。**

ComfyUI插件:ComfyUI-BrushNet节点的更多相关文章

  1. Ztree插件,定位节点时(focus)不能进入可视区域BUG解决方案

    相关插件版本: jquery.ztree.exedit-3.4.js jquery.ztree.all-3.4.js jquery-1.8.0.js function onAsyncSuccess(e ...

  2. Jstree 使用CheckBox插件 选中父节点时被禁用的子节点也会选中问题

    问题描述: 最近用jstree遇到一个问题,使用CheckBox插件时,当父节点选中时,被禁用的子节点也会选中如下 解决方案: 1.  将jstree升级到最新的版本,v3.3.4及以上就可以 2. ...

  3. Elasticsearch-2.4.3的3节点安装(多种方式图文详解)(含 head、kopf、marvel、shield和watcher插件安装和使用)

    前提: Elasticsearch-2.4.3的下载(图文详解) Elasticsearch-2.4.3的单节点安装(多种方式图文详解) 我这里,以192.168.80.10(HadoopMaster ...

  4. 分布式搜索引擎ElasticSearch+Kibana (Marvel插件安装详解)

    在安装插件的过程中,尤其是安装Marvel插件遇到了很多问题,要下载license.Marvel-agent,又要下载安装Kibana 版本需求 Java 7 or later Elasticsear ...

  5. elasticsearch插件大全

    Elasticsearch扩展性非常好,有很多官方和第三方开发的插件,下面以分词.同步.数据传输.脚本支持.站点.其它这几个类别进行划分. 分词插件 Combo Analysis Plugin (作者 ...

  6. Elasticsearch 5.0 安装 Search Guard 5 插件 (五)

    一.Search Guard 简介 Search Guard  是 Elasticsearch 的安全插件.它为后端系统(如LDAP或Kerberos)提供身份验证和授权,并向Elasticsearc ...

  7. 你的专属定制——JQuery自定义插件

        前  言 絮叨絮叨 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗 ...

  8. JQuery自定义插件详解之Banner图滚动插件

      前  言 JRedu JQuery是什么相信已经不需要详细介绍了.作为时下最火的JS库之一,JQuery将其"Write Less,Do More!"的口号发挥的极致.而帮助J ...

  9. 雷林鹏分享:jQuery EasyUI 树形菜单 - 树形菜单添加节点

    jQuery EasyUI 树形菜单 - 树形菜单添加节点 本教程向您展示如何附加节点到树形菜单(Tree).我们将创建一个包含水果和蔬菜节点的食品树,然后添加一些其他水果到已存在的水果节点. 创建食 ...

  10. elasticsearch 口水篇(1) 安装、插件

    一)安装elasticsearch 1)下载elasticsearch-0.90.10,解压,运行\bin\elasticsearch.bat (windwos) 2)进入http://localho ...

随机推荐

  1. spring项目中读取resources下的文件

    spring项目中读取resources下的文件 我们都知道,spring项目经过maven打包后,可以打成jar包或可解压的war包 a. war包是需要外置的web容器去运行的,是需要先解压的 b ...

  2. 【大道至简】NetCore3.1快速开发框架一:介绍

    新的一年开始,祝大家2020新年快乐! 去年开源了一个基于NetCore2.2的框架,好多好基友还是比较喜欢的 github地址:https://github.com/feiyit/FytSoaCms ...

  3. linux下安装oracle 11g(静默安装)

    关闭selinux 关闭防火墙 检查安装依赖包 yum -y install binutils compat-libcap1 vsftpd gcc gcc-c++ glibc-devel glibc ...

  4. 阿里云ECS主机自建SNAT,实现没有公网的主机通过有公网的主机访问外网

    目的: SNAT:实现没有公网IP的ECS实例借助有公网的ECS访问外网 实现前提: 有公网的主机与没有公网的主机必须处在同一个VPC安全组(确保两个主机互通才可以) 全程都在有公网的主机上操作 开启 ...

  5. golang如何使用指针灵活操作内存?unsafe包原理解析

    Hi 你好,我是k哥.一个大厂工作6年,还在继续搬砖的后端程序员. 我们都知道,C/C++提供了强大的万能指针void*,任何类型的指针都可以和万能指针相互转换.并且指针还可以进行加减等算数操作.那么 ...

  6. 防止unordered_map 被卡方法

    codeforces 上看到的,mark 一下代码.原作者:neal,原链接:https://codeforces.com/blog/entry/62393 struct custom_hash { ...

  7. 详解Web应用安全系列(3)失效的身份认证

    大多数身份和访问管理系统的设计和实现,普遍存在身份认证失效的问题.会话管理是身份验证和访问控制的基础,并且存在于所有有状态的应用程序中.攻击者可以使用指南手册来检测失效的身份认证,但通常会关注密码转储 ...

  8. 如何在不能求逆的时候做子集卷积 exp(即便能求逆也比常见方法优雅)

    为什么要求逆?正常做子集卷积 exp 的时候递推求 \(G=\exp(F)\) 的系数时要用. 什么情况下不能求逆?模 \(2^{64}\),或者压根不取模. 我们可能会想,算出来肯定除得尽啊,因为组 ...

  9. MyBatis学习篇

    什么是MyBatis (1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动.创建连接.创建statement等繁杂 ...

  10. VUEX - 手稿