[feat] Add GetImageSize node to return image dimensions
Added a simple GetImageSize node in comfy_extras/nodes_images.py that returns width and height of input images. The node displays dimensions on the UI via PromptServer and provides width/height as outputs for further processing.
This commit is contained in:
@@ -16,7 +16,8 @@ from inspect import cleandoc
|
|||||||
import torch
|
import torch
|
||||||
import comfy.utils
|
import comfy.utils
|
||||||
|
|
||||||
from comfy.comfy_types import FileLocator
|
from comfy.comfy_types import FileLocator, IO
|
||||||
|
from server import PromptServer
|
||||||
|
|
||||||
MAX_RESOLUTION = nodes.MAX_RESOLUTION
|
MAX_RESOLUTION = nodes.MAX_RESOLUTION
|
||||||
|
|
||||||
@@ -491,6 +492,36 @@ class SaveSVGNode:
|
|||||||
counter += 1
|
counter += 1
|
||||||
return { "ui": { "images": results } }
|
return { "ui": { "images": results } }
|
||||||
|
|
||||||
|
class GetImageSize:
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def INPUT_TYPES(s):
|
||||||
|
return {
|
||||||
|
"required": {
|
||||||
|
"image": (IO.IMAGE,),
|
||||||
|
},
|
||||||
|
"hidden": {
|
||||||
|
"unique_id": "UNIQUE_ID",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
RETURN_TYPES = (IO.INT, IO.INT)
|
||||||
|
RETURN_NAMES = ("width", "height")
|
||||||
|
FUNCTION = "get_size"
|
||||||
|
|
||||||
|
CATEGORY = "image"
|
||||||
|
DESCRIPTION = """Returns width and height of the image, and passes it through unchanged."""
|
||||||
|
|
||||||
|
def get_size(self, image, unique_id=None) -> tuple[int, int]:
|
||||||
|
height = image.shape[1]
|
||||||
|
width = image.shape[2]
|
||||||
|
|
||||||
|
# Send progress text to display size on the node
|
||||||
|
if unique_id:
|
||||||
|
PromptServer.instance.send_progress_text(f"width: {width}, height: {height}", unique_id)
|
||||||
|
|
||||||
|
return width, height
|
||||||
|
|
||||||
NODE_CLASS_MAPPINGS = {
|
NODE_CLASS_MAPPINGS = {
|
||||||
"ImageCrop": ImageCrop,
|
"ImageCrop": ImageCrop,
|
||||||
"RepeatImageBatch": RepeatImageBatch,
|
"RepeatImageBatch": RepeatImageBatch,
|
||||||
@@ -500,4 +531,5 @@ NODE_CLASS_MAPPINGS = {
|
|||||||
"SaveAnimatedPNG": SaveAnimatedPNG,
|
"SaveAnimatedPNG": SaveAnimatedPNG,
|
||||||
"SaveSVGNode": SaveSVGNode,
|
"SaveSVGNode": SaveSVGNode,
|
||||||
"ImageStitch": ImageStitch,
|
"ImageStitch": ImageStitch,
|
||||||
|
"GetImageSize": GetImageSize,
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user