Added support for Flux outpaint
This commit is contained in:
+40
-21
@@ -3,50 +3,70 @@ class outpaintSettings:
|
||||
def INPUT_TYPES(cls):
|
||||
return {
|
||||
"required": {
|
||||
"useTop": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include top extension in outpaint settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"Top": (
|
||||
"INT",
|
||||
{
|
||||
"tooltip": "Number of pixels to extend at the top of the image. Must be a multiple of 64.",
|
||||
"tooltip": "Number of pixels to extend at the top of the image. Must be a multiple of 64. Only used when 'Use Top' is enabled.",
|
||||
"default": 64,
|
||||
"min": 0,
|
||||
"max": 2048,
|
||||
"step": 64,
|
||||
"step": 1,
|
||||
},
|
||||
),
|
||||
"useRight": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include right extension in outpaint settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"Right": (
|
||||
"INT",
|
||||
{
|
||||
"tooltip": "Number of pixels to extend at the right of the image. Must be a multiple of 64.",
|
||||
"tooltip": "Number of pixels to extend at the right of the image. Must be a multiple of 64. Only used when 'Use Right' is enabled.",
|
||||
"default": 64,
|
||||
"min": 0,
|
||||
"max": 2048,
|
||||
"step": 64,
|
||||
"step": 1,
|
||||
},
|
||||
),
|
||||
"useBottom": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include bottom extension in outpaint settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"Bottom": (
|
||||
"INT",
|
||||
{
|
||||
"tooltip": "Number of pixels to extend at the bottom of the image. Must be a multiple of 64.",
|
||||
"tooltip": "Number of pixels to extend at the bottom of the image. Must be a multiple of 64. Only used when 'Use Bottom' is enabled.",
|
||||
"default": 64,
|
||||
"min": 0,
|
||||
"max": 2048,
|
||||
"step": 64,
|
||||
"step": 1,
|
||||
},
|
||||
),
|
||||
"useLeft": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include left extension in outpaint settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"Left": (
|
||||
"INT",
|
||||
{
|
||||
"tooltip": "Number of pixels to extend at the left of the image. Must be a multiple of 64.",
|
||||
"tooltip": "Number of pixels to extend at the left of the image. Must be a multiple of 64. Only used when 'Use Left' is enabled.",
|
||||
"default": 64,
|
||||
"min": 0,
|
||||
"max": 2048,
|
||||
"step": 64,
|
||||
"step": 1,
|
||||
},
|
||||
),
|
||||
"useBlur": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include blur in outpaint settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"Blur": (
|
||||
"INT",
|
||||
{
|
||||
"tooltip": "The amount of blur to apply at the boundaries between the original image and the extended areas, measured in pixels.",
|
||||
"tooltip": "The amount of blur to apply at the boundaries between the original image and the extended areas, measured in pixels. Only used when 'Use Blur' is enabled.",
|
||||
"default": 0,
|
||||
"min": 0,
|
||||
"max": 32,
|
||||
@@ -63,18 +83,17 @@ class outpaintSettings:
|
||||
CATEGORY = "Runware"
|
||||
|
||||
def outpaintSettings(self, **kwargs):
|
||||
top = kwargs.get("Top", 0)
|
||||
right = kwargs.get("Right", 0)
|
||||
bottom = kwargs.get("Bottom", 0)
|
||||
left = kwargs.get("Left", 0)
|
||||
blur = kwargs.get("Blur", 0)
|
||||
outpaint = {}
|
||||
|
||||
outpaint = {
|
||||
"top": top,
|
||||
"right": right,
|
||||
"bottom": bottom,
|
||||
"left": left,
|
||||
"blur": blur,
|
||||
}
|
||||
if kwargs.get("useTop", False):
|
||||
outpaint["top"] = int(kwargs.get("Top", 0))
|
||||
if kwargs.get("useRight", False):
|
||||
outpaint["right"] = int(kwargs.get("Right", 0))
|
||||
if kwargs.get("useBottom", False):
|
||||
outpaint["bottom"] = int(kwargs.get("Bottom", 0))
|
||||
if kwargs.get("useLeft", False):
|
||||
outpaint["left"] = int(kwargs.get("Left", 0))
|
||||
if kwargs.get("useBlur", False):
|
||||
outpaint["blur"] = int(kwargs.get("Blur", 0))
|
||||
|
||||
return (outpaint,)
|
||||
|
||||
+15
-2
@@ -3,7 +3,7 @@ Runware Image Inference Settings (registered as Runware Settings for workflow co
|
||||
Provides settings for image generation including temperature, systemPrompt, topP, layers,
|
||||
quality, background, style, search, promptExtend, editRegions, thinking (boolean),
|
||||
thinkingLevel (high/medium/low), sequential, renderingSpeed (TURBO/DEFAULT/QUALITY),
|
||||
magicPrompt (AUTO/ON/OFF), and colorPalette
|
||||
magicPrompt (AUTO/ON/OFF), autoCrop, and colorPalette
|
||||
(from Runware Image Inference Settings Color Palette).
|
||||
"""
|
||||
|
||||
@@ -172,6 +172,16 @@ class RunwareSettings:
|
||||
"default": "AUTO",
|
||||
"tooltip": "Determine if MagicPrompt should be used. Only used when 'Use Magic Prompt' is enabled.",
|
||||
}),
|
||||
"useAutoCrop": ("BOOLEAN", {
|
||||
"tooltip": "Enable to include autoCrop in settings.",
|
||||
"default": False,
|
||||
}),
|
||||
"autoCrop": ("BOOLEAN", {
|
||||
"tooltip": "If true, crop the reference image to the canvas bounds when it extends beyond the edges. Defaults to false. Only used when 'Use Auto Crop' is enabled.",
|
||||
"default": False,
|
||||
"label_on": "true",
|
||||
"label_off": "false",
|
||||
}),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,7 +192,7 @@ class RunwareSettings:
|
||||
DESCRIPTION = (
|
||||
"Configure general settings for image generation: temperature, system prompt, top-p, layers, quality, background, style, search, "
|
||||
"promptExtend, editRegions (JSON), thinking (boolean), thinkingLevel (high/medium/low), sequential, "
|
||||
"renderingSpeed (TURBO/DEFAULT/QUALITY), magicPrompt (AUTO/ON/OFF), and optional colorPalette from the Color Palette node."
|
||||
"renderingSpeed (TURBO/DEFAULT/QUALITY), magicPrompt (AUTO/ON/OFF), autoCrop, and optional colorPalette from the Color Palette node."
|
||||
)
|
||||
|
||||
def createSettings(self, **kwargs) -> tuple[Dict[str, Any]]:
|
||||
@@ -206,6 +216,7 @@ class RunwareSettings:
|
||||
useSequential = kwargs.get("useSequential", False)
|
||||
useRenderingSpeed = kwargs.get("useRenderingSpeed", False)
|
||||
useMagicPrompt = kwargs.get("useMagicPrompt", False)
|
||||
useAutoCrop = kwargs.get("useAutoCrop", False)
|
||||
|
||||
# Get value parameters
|
||||
temperature = kwargs.get("temperature", 1.0)
|
||||
@@ -272,6 +283,8 @@ class RunwareSettings:
|
||||
settings["renderingSpeed"] = str(renderingSpeed)
|
||||
if useMagicPrompt:
|
||||
settings["magicPrompt"] = str(magicPrompt)
|
||||
if useAutoCrop:
|
||||
settings["autoCrop"] = bool(kwargs.get("autoCrop", False))
|
||||
|
||||
# Clean up None values
|
||||
settings = {k: v for k, v in settings.items() if v is not None}
|
||||
|
||||
Reference in New Issue
Block a user