Download node_wrappers/segment_anything.py from windy123321/comfyui_controlnet_aux: direct link, hf CLI and curl.
- Browser
- Download file 841 Bytes
-
https://huggingface.co/windy123321/comfyui_controlnet_aux/resolve/main/node_wrappers/segment_anything.py
- Command line
-
hf download hf://windy123321/comfyui_controlnet_aux/node_wrappers/segment_anything.py
-
curl -L -o segment_anything.py https://huggingface.co/windy123321/comfyui_controlnet_aux/resolve/main/node_wrappers/segment_anything.py
841 Bytes
| from ..utils import common_annotator_call, define_preprocessor_inputs, INPUT | |
| import comfy.model_management as model_management | |
| class SAM_Preprocessor: | |
| def INPUT_TYPES(s): | |
| return define_preprocessor_inputs(resolution=INPUT.RESOLUTION()) | |
| RETURN_TYPES = ("IMAGE",) | |
| FUNCTION = "execute" | |
| CATEGORY = "ControlNet Preprocessors/others" | |
| def execute(self, image, resolution=512, **kwargs): | |
| from custom_controlnet_aux.sam import SamDetector | |
| mobile_sam = SamDetector.from_pretrained().to(model_management.get_torch_device()) | |
| out = common_annotator_call(mobile_sam, image, resolution=resolution) | |
| del mobile_sam | |
| return (out, ) | |
| NODE_CLASS_MAPPINGS = { | |
| "SAMPreprocessor": SAM_Preprocessor | |
| } | |
| NODE_DISPLAY_NAME_MAPPINGS = { | |
| "SAMPreprocessor": "SAM Segmentor" | |
| } |