ComfyUI插件:ComfyUI layer style 节点(三)

前言:

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

目录

一、安装方式

二、LayerMask:MaskBoxDetect节点

三、LayerMask:SegmentAnythingUltra节点

四、LayerMask:SegmentAnythingUltraV2节点

五、LayerMask:RemBgUltra节点

六、LayerMask:RemBgUltraV2节点

七、LayerMask:BiRefNetUltra节点

八、LayerMask:Shadow & Highlight Mask节点

一、安装方式

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

打开Manager界面

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

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

在终端输入下面这行代码开始下载

git clone https://github.com/chflame163/ComfyUI_LayerStyle.git

二、LayerMask:MaskBoxDetect节点

这个节点的设计目的是通过自动检测图像中的目标对象,并为每个对象生成一个掩码框,以便在后续处理中使用。

输入:

mask → 输入遮罩

参数:

detect → 探测方法 **min_bounding_rect是大块形状最小外接矩形, max_inscribed_rect是大块形状最大内接矩形, mask_area是遮罩像素有效区域**

x_adjust → 修正探测之后的水平偏移

y_adjust → 修正探测之后的垂直偏移

scale_adjust → 修正探测之后的缩放偏移

输出:

box_preview → 探测结果预览图。红色表示探测到的结果,绿色表示加上修正后的输出结果

x_percent → 水平位置以百分比输出

y_percent → 垂直位置以百分比输出

width → 宽度输出

height → 高度输出

x → 左上角位置x坐标输出

y → 左上角位置y坐标输出

示例:

注意事项

· 检测模型选择:根据具体需求选择适合的检测模型,以获得最佳的检测效果。

· 检测阈值配置:根据具体需求设置检测阈值,确保检测结果准确且符合预期。较高的阈值可能导致漏检,较低的阈值可能导致误检。

· 输入图像质量:输入图像的质量会影响对象检测的效果,确保图像清晰且包含明确的目标对象。

· 处理性能:对象检测处理可能需要较高的计算资源,确保系统性能足够支持处理需求。

· 结果检查:检测完成后,检查生成的掩码框数据,确保每个掩码框准确对应检测到的对象,并且没有遗漏或误检。

通过使用LayerMask: MaskBoxDetect节点,可以在图像处理工作流程中实现高效的对象检测和掩码框生成,提升图像处理的自动化程度和准确性。

三、LayerMask:SegmentAnythingUltra节点

这个节点的设计目的是通过先进的图像分割算法,对图像中的对象进行精确分割,并生成相应的掩码,以便在后续处理中使用。

输入:

image → 输入图片

参数:

sam_model → 选择SAM模型

ground_dino_model → 选择Grounding DINO模型

threshold → SAM模型的阈值

detail_range → 边缘细节范围

black_point → 边缘黑色采样阈值

white_point → 边缘黑色采样阈值

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

prompt → SAM的prompt输入

输出:

image → 输出图片

mask → 分割目标的遮罩

注意:该节点需参照ComfyUI Segment Anything的安装方法安装模型。如果已经正确安装了ComfyUI Segment Anything,可跳过此步骤。

这里下载 config.json,model.safetensors,tokenizer_config.json,tokenizer.json 和 vocab.txt 5个文件到 ComfyUI/models/bert-base-uncased文件夹。

下载 GroundingDINO_SwinT_OGC config file, GroundingDINO_SwinT_OGC model, GroundingDINO_SwinB config file, GroundingDINO_SwinB model 到 ComfyUI/models/grounding-dino文件夹。

下载 sam_vit_h,sam_vit_l, sam_vit_b, sam_hq_vit_h, sam_hq_vit_l, sam_hq_vit_b, mobile_sam 这几个文件到ComfyUI/models/sams文件夹。

示例:

注意事项

· 分割模型选择:根据具体需求选择适合的分割模型,以获得最佳的分割效果。

· 细节级别配置:根据具体需求设置分割的细节级别,确保分割结果精细且符合预期。较高的细节级别可能需要更多的计算资源。

· 输入图像质量:输入图像的质量会影响分割效果,确保图像清晰且包含明确的目标对象。

· 处理性能:高级分割处理可能需要较高的计算资源,确保系统性能足够支持处理需求。

· 结果检查:分割完成后,检查生成的分割掩码数据,确保每个掩码区域准确对应分割出的对象,并且没有遗漏或误分。

通过使用LayerMask: SegmentAnythingUltra节点,可以在图像处理工作流程中实现高效的高级对象分割,提升图像处理的自动化程度和准确性,满足各种复杂图像处理需求

四、LayerMask:SegmentAnythingUltraV2节点

这个节点的设计目的是通过更高效、更精确的图像分割技术,对图像中的对象进行精确分割,并生成相应的掩码,以便在后续处理中使用。

输入:

image → 输入图片

参数:

sam_model → 选择SAM模型

ground_dino_model → 选择Grounding DINO模型

threshold → SAM模型的阈值

detail_method → 边缘处理方法

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

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

black_point → 边缘黑色采样阈值

white_point → 边缘黑色采样阈值

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

prompt → SAM的prompt输入

输出:

image → 输出图片

mask → 分割目标的遮罩

示例:

注意事项

· 分割模型选择:根据具体需求选择适合的分割模型,以获得最佳的分割效果。

· 细节级别配置:根据具体需求设置分割的细节级别,确保分割结果精细且符合预期。较高的细节级别可能需要更多的计算资源。

· 输入图像质量:输入图像的质量会影响分割效果,确保图像清晰且包含明确的目标对象。

· 处理性能:高级分割处理可能需要较高的计算资源,确保系统性能足够支持处理需求。

· 结果检查:分割完成后,检查生成的分割掩码数据,确保每个掩码区域准确对应分割出的对象,并且没有遗漏或误分。

通过使用LayerMask: SegmentAnythingUltraV2节点,可以在图像处理工作流程中实现高效的高级对象分割,提升图像处理的自动化程度和准确性,满足各种复杂图像处理需求。

五、LayerMask:RemBgUltra节点

这个节点的设计目的是通过高效的图像处理算法,自动移除图像中的背景,只保留前景对象,从而使图像处理更加灵活和专业。

输入:

image → 输入图片

参数:

detail_range → 边缘细节范围

black_point → 边缘黑色采样阈值

white_point → 边缘黑色采样阈值

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

输出:

image → 输出图片

mask → 分割目标的遮罩

示例:使用该节点需将BRIA Background Removal v1.4模型文件(model.pth)下载至ComfyUI/models/rmbg/RMBG-1.4文件夹。

注意事项

· 处理模型选择:根据具体需求选择适合的背景移除模型,以获得最佳的处理效果。

· 移除强度配置:根据具体需求设置背景移除的强度,确保前景对象的边缘处理自然且不影响整体质量。

· 输入图像质量:输入图像的质量会影响背景移除的效果,确保图像清晰且前景对象与背景对比明显。

· 处理性能:高级背景移除处理可能需要较高的计算资源,确保系统性能足够支持处理需求。

· 结果检查:背景移除完成后,检查生成的无背景图像,确保前景对象完整且背景移除干净,没有残留或误移除部分。

通过使用LayerMask: RemBgUltra节点,可以在图像处理工作流程中实现高效的背景移除,提升图像处理的自动化程度和准确性,满足各种复杂图像处理需求。

六、LayerMask:RemBgUltraV2节点

这个节点用于高级背景移除任务,是LayerMask: RemBgUltra 节点的升级版。其设计目的是通过改进的图像处理算法,更加准确和高效地移除图像中的背景,只保留前景对象,从而使图像处理更加精确和专业。

输入:

image → 输入图片

参数:

detail_method → 边缘处理方法

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

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

black_point → 边缘黑色采样阈值

white_point → 边缘黑色采样阈值

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

输出:

image → 输出图片

mask → 分割目标的遮罩

示例:

七、LayerMask:BiRefNetUltra节点

这个节点是一个高级图像处理节点,专门用于通过双参考网络(Bi-Reference Network)进行高精度的图像分割和背景移除。

输入:

image → 输入图片

参数:

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

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

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

black_point → 边缘黑色采样阈值

white_point → 边缘黑色采样阈值

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

输出:

image → 输出图片

mask → 分割目标的遮罩

示例:

注意事项

· 参考图像选择:选择与目标图像相似的参考图像,以帮助提高分割和背景移除的精度。

· 处理模型选择:根据具体需求选择适合的双参考网络模型,以获得最佳的处理效果。

· 细节级别配置:根据具体需求设置分割的细节级别,确保分割结果精细且符合预期。较高的细节级别可能需要更多的计算资源。

· 输入图像质量:输入图像和参考图像的质量会影响分割效果,确保图像清晰且前景对象与背景对比明显。

通过使用LayerMask: BiRefNetUltra节点,可以在图像处理工作流程中实现高效且高精度的图像分割和背景移除。

八、LayerMask:Shadow & Highlight Mask节点

这个节点的设计目的是通过识别图像中的亮部和暗部,生成相应的掩码,以便在后续处理中使用这些掩码进行特定区域的处理或增强。

输入:

image → 输入图片

mask → 输入遮罩

参数:

shadow_level_offset → 暗部取值的偏移量 **更大的数值使更多靠近明亮的区域纳入暗部**

shadow_range → 暗部的过渡范围

highlight_level_offset → 亮部取值的偏移量 **更小的数值使更多靠近阴暗的区域纳入亮部**

highlight_range → 亮部的过渡范围

输出:

shadow_mask → 暗部遮罩

highlight_mask → 亮部遮罩

示例:

注意事项

· 阈值配置:根据具体需求设置阴影和高光的阈值,确保识别结果准确且符合预期。较低的阈值可能导致阴影区域过大,较高的阈值可能导致高光区域过小。

· 输入图像质量:输入图像的质量会影响阴影和高光识别的效果,确保图像清晰且亮度分布均匀。

· 处理性能:阴影和高光识别处理可能需要一定的计算资源,确保系统性能足够支持处理需求。

· 结果检查:识别和掩码生成完成后,检查生成的阴影掩码和高光掩码,确保每个掩码区域准确对应识别出的阴影和高光区域,并且没有遗漏或误识别部分。

通过使用LayerMask: Shadow & Highlight Mask节点,可以在图像处理工作流程中实现高效的阴影和高光区域识别,生成用于后续处理的精确掩码。

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