前言:

ComfyUI layer style 是一组专为图片设计制作且集成了Photoshop功能的强大节点。该节点几乎将PhotoShop的全部功能迁移到ComfyUI,诸如__提供仿照Adobe Photoshop的图层样式、提供调整颜色功能(亮度、饱和度、对比度等)、提供Mask辅助工具、提供图层合成工具和工作流相关的辅助节点、提供图像效果滤镜__等。旨在集中工作平台,使我们可以在ComfyUI中实现PhotoShop的一些基础功能

__Comfy layer style插件(一): __https://articles.zsxq.com/layer_style/1.html

__Comfy layer style插件(二): __https://articles.zsxq.com/layer_style/2.html

__Comfy layer style插件(三): __https://articles.zsxq.com/layer_style/3.html

目录:

先行:安装方式

一、LayerMask:PersonMaskUltra节点

二、LayerMask:PersonMaskUltraV2节点

三、LayerMask:MaskGrow / MaskEdgeShrink节点

四、LayerMask:PixelSpread节点

五、LayerMask:MaskByDifferent节点

六、LayerMask:MaskEdgeUltraDetail节点

七、LayerMask:MaskEdgeUltraDetailV2节点

示例工作流

安装方法:

方法一:通过ComfyUI Manager安装(推荐)

打开Manager界面

image

image

方法二:使用git clone命令安装

在ComfyUI/custom_nodes目录下输入cmd按回车进入电脑终端

image

__在终端输入下面这行代码开始下载 git clone __https://github.com/chflame163/ComfyUI_LayerStyle.git

image

一、LayerMask:PersonMaskUltra节点

__节点功能:为人物生成脸、头发、身体皮肤、衣服或配饰的遮罩。与之前的A Person Mask Generator节点相比,这个节点具有超高的边缘细节。 __

image

输入:

images -> 输入图像

参数:

face -> 脸部识别开关 **enabled为开,disabled为关**

hair -> 头发识别开关 **enabled为开,disabled为关**

body -> 身体识别开关 **enabled为开,disabled为关**

clothes -> 衣服识别开关 **enabled为开,disabled为关**

accessories -> 配饰(例如背包)识别开关 **enabled为开,disabled为关**

background -> 背景识别开关 **enabled为开,disabled为关**

confidence -> 识别阈值 **更低的值将输出更多的遮罩范围**

detail_range -> 边缘细节范围

black_point -> 边缘黑色采样阈值

white_point -> 边缘黑色采样阈值

process_detail -> 此处设为False将跳过边缘处理以节省运行时间

输出:

images -> 输出图像

mask -> 输出遮罩

image

image

注意:身体识别只识别除衣服外的部分(漏在衣服外的部分)

二、LayerMask:PersonMaskUltraV2节点

节点功能:PersonMaskUltra的V2升级版,增加了VITMatte边缘处理方法。(注意:超过2K尺寸的图片使用此方法将占用大量内存)。

image

输入:

images -> 输入图像

参数:

face -> 脸部识别开关 **enabled为开,disabled为关**

hair -> 头发识别开关 **enabled为开,disabled为关**

body -> 身体识别开关 **enabled为开,disabled为关**

clothes -> 衣服识别开关 **enabled为开,disabled为关**

accessories -> 配饰(例如背包)识别开关 **enabled为开,disabled为关**

background -> 背景识别开关 **enabled为开,disabled为关**

confidence -> 识别阈值 **更低的值将输出更多的遮罩范围**

detail_method -> 边缘处理方法 **提供了VITMatte, VITMatte(local), PyMatting, GuidedFilter。如果首次使用VITMatte后模型已经下载,之后可以使用VITMatte(local)**

detail_erode -> 遮罩边缘向内侵蚀范围 **数值越大,向内修复的范围越大**

detail_dilate -> 遮罩边缘向外扩张范围 **数值越大,向外修复的范围越大**

black_point -> 边缘黑色采样阈值

white_point -> 边缘黑色采样阈值

process_detail -> 此处设为False将跳过边缘处理以节省运行时间

输出:

images -> 输出图像

mask -> 输出遮罩

image

三、LayerMask:MaskGrow / MaskEdgeShrink节点

节点功能:MaskGrow对mask进行扩张收缩边缘和模糊处理,MaskEdgeShrink使mask边缘平滑地过渡收缩,并保留边缘细节。

image

输入:

mask -> 输入遮罩

参数:

invert_mask -> 是否反转遮罩

grow -> 扩张幅度 **正值是向外扩张,负值是向内收缩**

blur -> 模糊程度

shrink_level -> 收缩平滑级别

soft -> 平滑幅度

edge_shrink -> 边缘收缩幅度

edge_reserve -> 保留边缘细节幅度 **100为完全保留,0为完全不保留**

输出:

mask -> 输出遮罩

image

image

image

四、LayerMask:PixelSpread节点

节点功能:对图像的遮罩边缘部分进行像素扩张预处理,可有效改善图像合成的边缘。

image

输入:

image -> 输入图像

mask -> 输入遮罩

参数:

invert_mask -> 是否反转遮罩

mask_grow -> 遮罩扩张幅度

输出:

image -> 输出图像

image

五、LayerMask:MaskByDifferent节点

节点功能:计算两张图像不同之处,并输出为遮罩。

image

输入:

image_1 -> 输入第一张图像

image_2 -> 输入第二张图像

参数:

gain -> 计算增益 **调高此值,微弱的差异将更显著的呈现**

fix_gap -> 修补遮罩内部缝隙 **更高的值将修补更大的缝隙**

fix_threshold -> 修补阈值

main_subject_detect -> 此项设为True将开启主体侦测,忽略主体之外的差异

输出:

mask -> 输出遮罩

image

image

六、LayerMask:MaskEdgeUltraDetail节点

节点功能:处理较粗糙的遮罩使其获得超精细边缘。

image

输入:

image -> 输入图像

mask -> 输入遮罩

参数:

method -> 提供PyMatting和OpenCV-GuidedFilter两种方法处理边缘 **PyMatting处理速度较慢,但是对于视频,建议使用这种方法获得更平滑的遮罩序列**

mask_grow -> 遮罩扩张幅度 **正值是向外扩张,负值是向内收缩。对于较粗糙的遮罩,通常使用负值使其边缘收缩以获得更好的效果**

fix_gap -> 修补遮罩中的空隙 **如果遮罩中有比较明显的空隙,适当调高此数值**

fix_threshold -> 修补遮罩的阈值

detail_range -> 边缘细节范围

black_point -> 边缘黑色采样阈值

white_point -> 边缘黑色采样阈值

输出:

image -> 输出图像

mask -> 输出遮罩

image

七、LayerMask:MaskEdgeUltraDetailV2节点

节点功能:MaskEdgeUltraDetail的V2升级版,增加了VITMatte边缘处理方法,此方法适合处理半透明区域。(注意:超过2K尺寸的图片使用此方法将占用大量内存)。

image

输入:

image -> 输入图像

mask -> 输入遮罩

参数:

method -> 边缘处理方法 **增加了VITMatte和VITMatte(local)方法。如果首次使用VITMatte后模型已经下载,之后可以使用VITMatte(local)**

mask_grow -> 遮罩扩张幅度 **正值是向外扩张,负值是向内收缩。对于较粗糙的遮罩,通常使用负值使其边缘收缩以获得更好的效果**

fix_gap -> 修补遮罩中的空隙 **如果遮罩中有比较明显的空隙,适当调高此数值**

fix_threshold -> 修补遮罩的阈值

edge_erode -> 遮罩边缘向内侵蚀范围 **数值越大,向内修复的范围越大**

edge_dilate -> 遮罩边缘向外扩张范围 **数值越大,向外修复的范围越大**

black_point -> 边缘黑色采样阈值

white_point -> 边缘黑色采样阈值

输出:

image -> 输出图像

mask -> 输出遮罩

image

示例工作流

由于本文基本上每个节点都给出了详细的图文讲解,加上本文所讲的节点之间的关联性没那么强,所以这里就不提供囊括所有节点的工作流了,大家把上面每个节点对应的工作流学习理解即可。

__Comfy layer style插件(一): __https://articles.zsxq.com/layer_style/1.html

__Comfy layer style插件(二): __https://articles.zsxq.com/layer_style/2.html

__Comfy layer style插件(三): __https://articles.zsxq.com/layer_style/3.html