前言:
学习 ComfyUI 是一场持久战,而 ComfyUI layer style 是一组专为图片设计制作且集成了 photoshop 功能的强大节点。该节点几乎将 PhotoShop 的全部功能迁移到 ComfyUI,诸如提供仿照 Adobe Photoshop 的图层样式、提供调整颜色功能(亮度、饱和度、对比度等)、提供 Mask 辅助工具、提供图层合成工具和工作流相关的辅助节点、提供图像效果滤镜等。旨在集中工作平台,使我们可以在 ComfyUI 中实现 PhotoShop 的一些基础功能。
相关阅读:
集成Photoshop功能的强大节点!ComfyUI layer style节点保姆级教程01
集成Photoshop功能的强大节点!ComfyUI layer style节点保姆级教程02
方法一:通过 ComfyUI Manager 安装(推荐)
打开 Manager 界面
在 ComfyUI/custom_nodes 目录下输入 cmd 按回车进入电脑终端
在终端输入下面这行代码开始下载
git clone https://github.com/chflame163/ComfyUI_LayerStyle.git
这个节点的设计目的是通过自动检测图像中的目标对象,并为每个对象生成一个掩码框,以便在后续处理中使用。
输入:
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 节点,可以在图像处理工作流程中实现高效的对象检测和掩码框生成,提升图像处理的自动化程度和准确性。
这个节点的设计目的是通过先进的图像分割算法,对图像中的对象进行精确分割,并生成相应的掩码,以便在后续处理中使用。
输入:
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 节点,可以在图像处理工作流程中实现高效的高级对象分割,提升图像处理的自动化程度和准确性,满足各种复杂图像处理需求
这个节点的设计目的是通过更高效、更精确的图像分割技术,对图像中的对象进行精确分割,并生成相应的掩码,以便在后续处理中使用。
输入:
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 节点,可以在图像处理工作流程中实现高效的高级对象分割,提升图像处理的自动化程度和准确性,满足各种复杂图像处理需求。
这个节点的设计目的是通过高效的图像处理算法,自动移除图像中的背景,只保留前景对象,从而使图像处理更加灵活和专业。
输入:
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: RemBgUltra 节点的升级版。其设计目的是通过改进的图像处理算法,更加准确和高效地移除图像中的背景,只保留前景对象,从而使图像处理更加精确和专业。
输入:
image → 输入图片
参数:
detail_method → 边缘处理方法
detail_erode → 遮罩边缘向内侵蚀范围 **数值越大,向内修复的范围越大**
detail_dilate → 遮罩边缘向外扩张范围 **数值越大,向外修复的范围越大**
black_point → 边缘黑色采样阈值
white_point → 边缘黑色采样阈值
process_detail → 此处设为False将跳过边缘处理以节省运行时间
输出:
image → 输出图片
mask → 分割目标的遮罩
示例:
这个节点是一个高级图像处理节点,专门用于通过双参考网络(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 节点,可以在图像处理工作流程中实现高效且高精度的图像分割和背景移除。
这个节点的设计目的是通过识别图像中的亮部和暗部,生成相应的掩码,以便在后续处理中使用这些掩码进行特定区域的处理或增强。
输入:
image → 输入图片
mask → 输入遮罩
参数:
shadow_level_offset → 暗部取值的偏移量 **更大的数值使更多靠近明亮的区域纳入暗部**
shadow_range → 暗部的过渡范围
highlight_level_offset → 亮部取值的偏移量 **更小的数值使更多靠近阴暗的区域纳入亮部**
highlight_range → 亮部的过渡范围
输出:
shadow_mask → 暗部遮罩
highlight_mask → 亮部遮罩
示例:
注意事项
- 阈值配置:根据具体需求设置阴影和高光的阈值,确保识别结果准确且符合预期。较低的阈值可能导致阴影区域过大,较高的阈值可能导致高光区域过小。
- 输入图像质量:输入图像的质量会影响阴影和高光识别的效果,确保图像清晰且亮度分布均匀。
- 处理性能:阴影和高光识别处理可能需要一定的计算资源,确保系统性能足够支持处理需求。
- 结果检查:识别和掩码生成完成后,检查生成的阴影掩码和高光掩码,确保每个掩码区域准确对应识别出的阴影和高光区域,并且没有遗漏或误识别部分。
通过使用 LayerMask: Shadow & Highlight Mask 节点,可以在图像处理工作流程中实现高效的阴影和高光区域识别,生成用于后续处理的精确掩码。
本文作者:
You’re so awesome! I don’t believe I have read a single thing like that before. So great to find someone with some original thoughts on this topic. Really.. thank you for starting this up. This website is something that is needed on the internet, someone with a little originality!
已经修复好了
无法下载,是不是资源链接出错?麻烦修正一下
Great information shared.. really enjoyed reading this post thank you author for sharing this post .. appreciated
8个设计师必备素材库: 1、 https://www.lummi.ai/ 2、 https://endlesstools.io/ 3、 https://items.design/?aff=Z2vd4 4、 https://www.durves.com/ 5、 https://icons8.com/ 6、 https://www.illustration.center/ 7、 https://creativemarket.com/ 8、 https://thenounproject.com/