From 0e3e6a193a68748b5e68cfd19fb6c7d92b2fac57 Mon Sep 17 00:00:00 2001 From: "Dr.Lt.Data" Date: Tue, 4 Mar 2025 22:44:31 +0900 Subject: [PATCH] improved: SAM Loader - don't add 'ESAM' if 'ComfyUI-YoloWorld-EfficientSAM' is not installed --- modules/impact/config.py | 2 +- modules/impact/impact_pack.py | 6 +++++- pyproject.toml | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/modules/impact/config.py b/modules/impact/config.py index e366a86..7a4c005 100644 --- a/modules/impact/config.py +++ b/modules/impact/config.py @@ -1,7 +1,7 @@ import configparser import os -version_code = [8, 8, 3] +version_code = [8, 8, 4] version = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '') dependency_version = 24 diff --git a/modules/impact/impact_pack.py b/modules/impact/impact_pack.py index b9759b4..fac03f1 100644 --- a/modules/impact/impact_pack.py +++ b/modules/impact/impact_pack.py @@ -96,9 +96,13 @@ class SAMLoader: @classmethod def INPUT_TYPES(cls): models = [x for x in folder_paths.get_filename_list("sams") if 'hq' not in x] + + if 'ESAM_ModelLoader_Zho' in nodes.NODE_CLASS_MAPPINGS: + models.append('ESAM') + return { "required": { - "model_name": (models + ['ESAM'], {"tooltip": "The detection accuracy varies depending on the SAM model. ESAM can only be used if ComfyUI-YoloWorld-EfficientSAM is installed."}), + "model_name": (models, {"tooltip": "The detection accuracy varies depending on the SAM model. ESAM can only be used if ComfyUI-YoloWorld-EfficientSAM is installed."}), "device_mode": (["AUTO", "Prefer GPU", "CPU"], {"tooltip": "AUTO: Only applicable when a GPU is available. It temporarily loads the SAM_MODEL into VRAM only when the detection function is used.\n" "Prefer GPU: Tries to keep the SAM_MODEL on the GPU whenever possible. This can be used when there is sufficient VRAM available.\n" "CPU: Always loads only on the CPU."}), diff --git a/pyproject.toml b/pyproject.toml index c0121c4..02fc13b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "comfyui-impact-pack" description = "This node pack offers various detector nodes and detailer nodes that allow you to configure a workflow that automatically enhances facial details. And provide iterative upscaler." -version = "8.8.3" +version = "8.8.4" license = { file = "LICENSE.txt" } dependencies = ["segment-anything", "scikit-image", "piexif", "transformers", "opencv-python-headless", "GitPython", "scipy>=1.11.4"]