├── README.md ├── model.json ├── Dockerfile ├── worker_runpod.py ├── schema.json └── comfyui-ultralytics-upscale-tost.json /README.md: -------------------------------------------------------------------------------- 1 | 🐣 Please follow me for new updates https://twitter.com/camenduru
2 | 🔥 Please join our discord server https://discord.gg/k5BwmmvJJU
3 | 🥳 Please join my patreon community https://patreon.com/camenduru
4 | 5 | ### 🥪 Tost 6 | https://tost.ai 7 | 8 | ### 🧬 Code 9 | https://github.com/comfyanonymous/ComfyUI
10 | https://github.com/Extraltodeus/ComfyUI-AutomaticCFG
11 | https://github.com/pythongosssss/ComfyUI-Custom-Scripts
12 | https://github.com/Derfuu/Derfuu_ComfyUI_ModdedNodes
13 | https://github.com/ltdrdata/ComfyUI-Impact-Pack
14 | https://github.com/ltdrdata/ComfyUI-Inspire-Pack
15 | https://github.com/kijai/ComfyUI-KJNodes
16 | https://github.com/Fannovel16/comfyui_controlnet_aux
17 | https://github.com/shiimizu/ComfyUI-TiledDiffusion
18 | https://github.com/WASasquatch/was-node-suite-comfyui
19 | 20 | ### 🌐 Page 21 | https://www.reddit.com/r/StableDiffusion/comments/1e3v6jy/tile_controlnet_tiled_diffusion_very_realistic/ 22 | 23 | ### 📦 Model 24 | https://civitai.com/models/334668/eye-detailersegmentation-adetailer
25 | https://huggingface.co/xinsir/controlnet-tile-sdxl-1.0
26 | 27 | ### 🖼 Output 28 | 29 | https://github.com/user-attachments/assets/dea63e09-67cc-495c-b5f9-dc4369b1cae6 30 | 31 | ### 🏢 Sponsor 32 | [https://runpod.io](https://runpod.io?ref=iqi9iy8y) 33 | -------------------------------------------------------------------------------- /model.json: -------------------------------------------------------------------------------- 1 | { 2 | "input_image_check": "https://files.catbox.moe/frdc2j.jpg", 3 | "positive_prompt": "detailed, realistic, masterpiece, uhd, 8k", 4 | "negative_prompt": "blurry", 5 | "inspire_seed": 9, 6 | "inspire_steps": 4, 7 | "inspire_cfg": 1, 8 | "inspire_sampler_name": "dpmpp_sde", 9 | "inspire_scheduler": "karras", 10 | "inspire_denoise": 0.6, 11 | "inspire_noise_mode": "GPU(=A1111)", 12 | "inspire_batch_seed_mode": "incremental", 13 | "inspire_variation_seed": 0, 14 | "inspire_variation_strength": 0, 15 | "inspire_variation_method": "linear", 16 | "scale_factor": 4, 17 | "blur_strength": 1, 18 | "strength": 0.6, 19 | "start_percent": 0, 20 | "end_percent": 1, 21 | "tile_method": "Mixture of Diffusers", 22 | "tile_overlap": 128, 23 | "tile_size": 768, 24 | "threshold": 0.2, 25 | "dilation": 5, 26 | "crop_factor": 2, 27 | "drop_size": 10, 28 | "labels": "all", 29 | "detailer_guide_size": 1024, 30 | "detailer_guide_size_for_bbox": true, 31 | "detailer_max_size": 1280, 32 | "detailer_seed": 4, 33 | "detailer_steps": 4, 34 | "detailer_cfg": 1.5, 35 | "detailer_sampler_name": "dpmpp_sde", 36 | "detailer_scheduler": "karras", 37 | "detailer_denoise": 0.42, 38 | "detailer_feather": 5, 39 | "detailer_noise_mask": true, 40 | "detailer_force_inpaint": true, 41 | "detailer_cycle": 1, 42 | "detailer_inpaint_model": false, 43 | "detailer_noise_mask_feather": 20, 44 | "color_method": "hm-mvgd-hm", 45 | "blend_factor": 0.5, 46 | "blend_mode": "normal", 47 | "blending_mode": "color", 48 | "blending_blend_percentage": 1, 49 | "vram": 48, 50 | "upscale_mp": 4, 51 | "w_tiles": 4, 52 | "h_tiles": 4, 53 | "downscale_by": 1 54 | } -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM runpod/pytorch:2.2.1-py3.10-cuda12.1.1-devel-ubuntu22.04 2 | WORKDIR /content 3 | ENV PATH="/home/camenduru/.local/bin:${PATH}" 4 | RUN adduser --disabled-password --gecos '' camenduru && \ 5 | adduser camenduru sudo && \ 6 | echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers && \ 7 | chown -R camenduru:camenduru /content && \ 8 | chmod -R 777 /content && \ 9 | chown -R camenduru:camenduru /home && \ 10 | chmod -R 777 /home 11 | 12 | RUN apt update -y && add-apt-repository -y ppa:git-core/ppa && apt update -y && apt install -y aria2 git git-lfs unzip ffmpeg 13 | 14 | USER camenduru 15 | 16 | RUN pip install opencv-python imageio imageio-ffmpeg ffmpeg-python av runpod \ 17 | xformers==0.0.25 torchsde==0.2.6 einops==0.8.0 diffusers==0.28.0 transformers==4.41.2 accelerate==0.30.1 insightface==0.7.3 onnxruntime==1.20.1 onnxruntime-gpu==1.20.1 color-matcher==0.5.0 pilgram==1.2.1 \ 18 | ultralytics==8.3.49 segment-anything==1.0 piexif==1.1.3 qrcode==7.4.2 requirements-parser==0.9.0 rembg==2.0.57 rich==13.7.1 rich-argparse==1.5.1 matplotlib==3.8.4 pillow spandrel==0.3.4 \ 19 | scikit-image==0.24.0 opencv-python-headless==4.10.0.84 GitPython==3.1.43 scipy==1.14.0 numpy==1.26.4 cachetools==5.4.0 librosa==0.10.2.post1 importlib-metadata==8.0.0 PyYAML==6.0.1 filelock==3.15.4 \ 20 | mediapipe==0.10.14 svglib==1.5.1 fvcore==0.1.5.post20221221 yapf==0.40.2 omegaconf==2.3.0 ftfy==6.2.0 addict==2.4.0 yacs==0.1.8 albumentations==1.4.11 scikit-learn==1.5.1 fairscale==0.4.13 \ 21 | git+https://github.com/WASasquatch/img2texture git+https://github.com/WASasquatch/cstr git+https://github.com/WASasquatch/ffmpy joblib==1.4.2 numba==0.60.0 timm==1.0.7 tqdm==4.66.4 kornia==0.7.4 && \ 22 | git clone https://github.com/comfyanonymous/ComfyUI /content/ComfyUI && \ 23 | git clone https://github.com/ltdrdata/ComfyUI-Manager /content/ComfyUI/custom_nodes/ComfyUI-Manager && \ 24 | git clone https://github.com/ltdrdata/ComfyUI-Impact-Subpack /content/ComfyUI/custom_nodes/ComfyUI-Impact-Subpack && \ 25 | git clone https://github.com/Extraltodeus/ComfyUI-AutomaticCFG /content/ComfyUI/custom_nodes/ComfyUI-AutomaticCFG && \ 26 | git clone https://github.com/pythongosssss/ComfyUI-Custom-Scripts /content/ComfyUI/custom_nodes/ComfyUI-Custom-Scripts && \ 27 | git clone https://github.com/Derfuu/Derfuu_ComfyUI_ModdedNodes /content/ComfyUI/custom_nodes/Derfuu_ComfyUI_ModdedNodes && \ 28 | git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack /content/ComfyUI/custom_nodes/ComfyUI-Impact-Pack && \ 29 | git clone https://github.com/ltdrdata/ComfyUI-Inspire-Pack /content/ComfyUI/custom_nodes/ComfyUI-Inspire-Pack && \ 30 | git clone https://github.com/kijai/ComfyUI-KJNodes /content/ComfyUI/custom_nodes/ComfyUI-KJNodes && \ 31 | git clone https://github.com/Fannovel16/comfyui_controlnet_aux /content/ComfyUI/custom_nodes/comfyui_controlnet_aux && \ 32 | git clone https://github.com/shiimizu/ComfyUI-TiledDiffusion /content/ComfyUI/custom_nodes/ComfyUI-TiledDiffusion && \ 33 | git clone https://github.com/WASasquatch/was-node-suite-comfyui /content/ComfyUI/custom_nodes/was-node-suite-comfyui && \ 34 | aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/camenduru/ultralytics/resolve/main/PitEyeDetailer-v2-seg.pt -d /content/ComfyUI/models/ultralytics/segm -o PitEyeDetailer-v2-seg.pt && \ 35 | aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/camenduru/ultralytics/resolve/main/4xRealWebPhoto_v4_dat2.safetensors -d /content/ComfyUI/models/upscale_models -o 4xRealWebPhoto_v4_dat2.safetensors && \ 36 | aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/camenduru/ultralytics/resolve/main/dreamshaperXL_lightningDPMSDE.safetensors -d /content/ComfyUI/models/checkpoints -o dreamshaperXL_lightningDPMSDE.safetensors && \ 37 | aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/camenduru/ultralytics/resolve/main/xinsir-controlnet-tile-sdxl-1.0.safetensors -d /content/ComfyUI/models/controlnet -o xinsir-controlnet-tile-sdxl-1.0.safetensors 38 | 39 | COPY ./worker_runpod.py /content/ComfyUI/worker_runpod.py 40 | WORKDIR /content/ComfyUI 41 | CMD python worker_runpod.py -------------------------------------------------------------------------------- /worker_runpod.py: -------------------------------------------------------------------------------- 1 | import os, json, requests, runpod 2 | 3 | import torch 4 | import random 5 | import comfy 6 | from comfy.sd import load_checkpoint_guess_config 7 | import nodes 8 | from nodes import NODE_CLASS_MAPPINGS 9 | from comfy_extras import nodes_post_processing, nodes_differential_diffusion, nodes_upscale_model 10 | import numpy as np 11 | from PIL import Image 12 | import asyncio 13 | import execution 14 | import server 15 | from nodes import load_custom_node 16 | from math import ceil, floor 17 | 18 | def download_file(url, save_dir='/content/ComfyUI/input'): 19 | os.makedirs(save_dir, exist_ok=True) 20 | file_name = url.split('/')[-1] 21 | file_path = os.path.join(save_dir, file_name) 22 | response = requests.get(url) 23 | response.raise_for_status() 24 | with open(file_path, 'wb') as file: 25 | file.write(response.content) 26 | return file_path 27 | 28 | loop = asyncio.new_event_loop() 29 | asyncio.set_event_loop(loop) 30 | server_instance = server.PromptServer(loop) 31 | execution.PromptQueue(server_instance) 32 | 33 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-AutomaticCFG") 34 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-Custom-Scripts") 35 | load_custom_node("/content/ComfyUI/custom_nodes/Derfuu_ComfyUI_ModdedNodes") 36 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-Impact-Pack") 37 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-Impact-Subpack") 38 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-Inspire-Pack") 39 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-KJNodes") 40 | load_custom_node("/content/ComfyUI/custom_nodes/comfyui_controlnet_aux") 41 | load_custom_node("/content/ComfyUI/custom_nodes/ComfyUI-TiledDiffusion") 42 | load_custom_node("/content/ComfyUI/custom_nodes/was-node-suite-comfyui") 43 | 44 | Automatic_CFG = NODE_CLASS_MAPPINGS["Automatic CFG"]() 45 | ImageScaleToTotalPixels = nodes_post_processing.NODE_CLASS_MAPPINGS["ImageScaleToTotalPixels"]() 46 | GetImageSizeAndCount = NODE_CLASS_MAPPINGS["GetImageSizeAndCount"]() 47 | TTPlanet_TileSimple = NODE_CLASS_MAPPINGS["TTPlanet_TileSimple_Preprocessor"]() 48 | TiledDiffusion = NODE_CLASS_MAPPINGS["TiledDiffusion"]() 49 | KSampler_inspire = NODE_CLASS_MAPPINGS["KSampler //Inspire"]() 50 | ControlNetApplyAdvanced = NODE_CLASS_MAPPINGS["ControlNetApplyAdvanced"]() 51 | UltralyticsDetectorProvider = NODE_CLASS_MAPPINGS["UltralyticsDetectorProvider"]() 52 | SegmDetectorSEGS = NODE_CLASS_MAPPINGS["SegmDetectorSEGS"]() 53 | DifferentialDiffusion = nodes_differential_diffusion.NODE_CLASS_MAPPINGS["DifferentialDiffusion"]() 54 | DetailerForEach = NODE_CLASS_MAPPINGS["DetailerForEach"]() 55 | VAEDecodeTiled = NODE_CLASS_MAPPINGS["VAEDecodeTiled"]() 56 | ColorMatch = NODE_CLASS_MAPPINGS["ColorMatch"]() 57 | ImageBlend = nodes_post_processing.NODE_CLASS_MAPPINGS["ImageBlend"]() 58 | WAS_Image_Blending_Mode = NODE_CLASS_MAPPINGS["Image Blending Mode"]() 59 | ImageScale = NODE_CLASS_MAPPINGS["ImageScale"]() 60 | ImageScaleBy = NODE_CLASS_MAPPINGS["ImageScaleBy"]() 61 | UpscaleModelLoader = nodes_upscale_model.NODE_CLASS_MAPPINGS["UpscaleModelLoader"]() 62 | ImageUpscaleWithModel = nodes_upscale_model.NODE_CLASS_MAPPINGS["ImageUpscaleWithModel"]() 63 | 64 | with torch.inference_mode(): 65 | model_patcher, clip, vae, clipvision = load_checkpoint_guess_config("/content/ComfyUI/models/checkpoints/dreamshaperXL_lightningDPMSDE.safetensors", output_vae=True, output_clip=True, embedding_directory=None) 66 | tile_control_net = comfy.controlnet.load_controlnet("/content/ComfyUI/models/controlnet/xinsir-controlnet-tile-sdxl-1.0.safetensors") 67 | segm_detector = UltralyticsDetectorProvider.doit(model_name="segm/PitEyeDetailer-v2-seg.pt") 68 | upscale_model = UpscaleModelLoader.load_model(model_name="4xRealWebPhoto_v4_dat2.safetensors")[0] 69 | model_patcher = Automatic_CFG.patch(model=model_patcher, hard_mode=True, boost=True)[0] 70 | 71 | @torch.inference_mode() 72 | def generate(input): 73 | values = input["input"] 74 | 75 | input_image = values['input_image_check'] 76 | input_image = download_file(input_image) 77 | positive_prompt = values['positive_prompt'] 78 | negative_prompt = values['negative_prompt'] 79 | inspire_seed = values['inspire_seed'] 80 | inspire_steps = values['inspire_steps'] 81 | inspire_cfg = values['inspire_cfg'] 82 | inspire_sampler_name = values['inspire_sampler_name'] 83 | inspire_scheduler = values['inspire_scheduler'] 84 | inspire_denoise = values['inspire_denoise'] 85 | inspire_noise_mode = values['inspire_noise_mode'] 86 | inspire_batch_seed_mode = values['inspire_batch_seed_mode'] 87 | inspire_variation_seed = values['inspire_variation_seed'] 88 | inspire_variation_strength = values['inspire_variation_strength'] 89 | inspire_variation_method = values['inspire_variation_method'] 90 | scale_factor = values['scale_factor'] 91 | blur_strength = values['blur_strength'] 92 | strength = values['strength'] 93 | start_percent = values['start_percent'] 94 | end_percent = values['end_percent'] 95 | tile_method = values['tile_method'] 96 | tile_overlap = values['tile_overlap'] 97 | tile_size = values['tile_size'] 98 | threshold = values['threshold'] 99 | dilation = values['dilation'] 100 | crop_factor = values['crop_factor'] 101 | drop_size = values['drop_size'] 102 | labels = values['labels'] 103 | detailer_guide_size = values['detailer_guide_size'] 104 | detailer_guide_size_for_bbox = values['detailer_guide_size_for_bbox'] 105 | detailer_max_size = values['detailer_max_size'] 106 | detailer_seed = values['detailer_seed'] 107 | detailer_steps = values['detailer_steps'] 108 | detailer_cfg = values['detailer_cfg'] 109 | detailer_sampler_name = values['detailer_sampler_name'] 110 | detailer_scheduler = values['detailer_scheduler'] 111 | detailer_denoise = values['detailer_denoise'] 112 | detailer_feather = values['detailer_feather'] 113 | detailer_noise_mask = values['detailer_noise_mask'] 114 | detailer_force_inpaint = values['detailer_force_inpaint'] 115 | detailer_cycle = values['detailer_cycle'] 116 | detailer_inpaint_model = values['detailer_inpaint_model'] 117 | detailer_noise_mask_feather = values['detailer_noise_mask_feather'] 118 | color_method = values['color_method'] 119 | blend_factor = values['blend_factor'] 120 | blend_mode = values['blend_mode'] 121 | blending_mode = values['blending_mode'] 122 | blending_blend_percentage = values['blending_blend_percentage'] 123 | vram = values['vram'] 124 | upscale_mp = values['upscale_mp'] 125 | w_tiles = values['w_tiles'] 126 | h_tiles = values['h_tiles'] 127 | downscale_by = values['downscale_by'] 128 | 129 | output_image, output_mask = nodes.LoadImage().load_image(input_image) 130 | output_image_s = ImageScaleToTotalPixels.upscale(image=output_image, upscale_method="nearest-exact", megapixels=1.0)[0] 131 | image_width = GetImageSizeAndCount.getsize(output_image_s)["result"][1] 132 | image_height = GetImageSizeAndCount.getsize(output_image_s)["result"][2] 133 | w_math = ceil((image_width * upscale_mp) / 8) * 8 134 | h_math = ceil((image_height * upscale_mp) / 8) * 8 135 | tile_width = ceil((w_math / w_tiles) / 8) * 8 136 | tile_height = ceil((h_math / h_tiles) / 8) * 8 137 | tile_batch_size = floor((vram-3) / ((tile_width*tile_height) / 1000000)) 138 | upscale_image = ImageScaleBy.upscale(image=output_image, upscale_method="bilinear", scale_by=downscale_by)[0] 139 | upscaled_image = ImageUpscaleWithModel.upscale(upscale_model=upscale_model, image=upscale_image)[0] 140 | output_image = ImageScale.upscale(image=upscaled_image, upscale_method="bilinear", width=w_math, height=h_math, crop="disabled")[0] 141 | 142 | cond, pooled = clip.encode_from_tokens(clip.tokenize(positive_prompt), return_pooled=True) 143 | cond = [[cond, {"pooled_output": pooled}]] 144 | n_cond, n_pooled = clip.encode_from_tokens(clip.tokenize(negative_prompt), return_pooled=True) 145 | n_cond = [[n_cond, {"pooled_output": n_pooled}]] 146 | output_image_t = TTPlanet_TileSimple.execute(output_image, scale_factor=scale_factor, blur_strength=blur_strength)[0] 147 | positive, negative = ControlNetApplyAdvanced.apply_controlnet(positive=cond, negative=n_cond, control_net=tile_control_net, image=output_image_t, strength=strength, start_percent=start_percent, end_percent=end_percent) 148 | tile_model = TiledDiffusion.apply(model=model_patcher, method=tile_method, tile_width=tile_width, tile_height=tile_height, tile_overlap=tile_overlap, tile_batch_size=tile_batch_size)[0] 149 | latent_image = nodes.VAEEncode().encode(vae, output_image)[0] 150 | inspire_sample = KSampler_inspire.doit(model=tile_model, 151 | seed=inspire_seed, 152 | steps=inspire_steps, 153 | cfg=inspire_cfg, 154 | sampler_name=inspire_sampler_name, 155 | scheduler=inspire_scheduler, 156 | positive=positive, 157 | negative=negative, 158 | latent_image=latent_image, 159 | denoise=inspire_denoise, 160 | noise_mode=inspire_noise_mode, 161 | batch_seed_mode=inspire_batch_seed_mode, 162 | variation_seed=inspire_variation_seed, 163 | variation_strength=inspire_variation_strength, 164 | variation_method=inspire_variation_method)[0] 165 | tiled_decoded = VAEDecodeTiled.decode(vae=vae, samples=inspire_sample, tile_size=tile_size)[0] 166 | segs = SegmDetectorSEGS.doit(segm_detector=segm_detector[1], image=output_image, threshold=threshold, dilation=dilation, crop_factor=crop_factor, drop_size=drop_size, labels=labels)[0] 167 | dd_model_patcher = DifferentialDiffusion.apply(model_patcher)[0] 168 | detailer_image = DetailerForEach.do_detail(image=tiled_decoded, 169 | segs=segs, 170 | model=dd_model_patcher, 171 | clip=clip, 172 | vae=vae, 173 | guide_size=detailer_guide_size, 174 | guide_size_for_bbox=detailer_guide_size_for_bbox, 175 | max_size=detailer_max_size, 176 | seed=detailer_seed, 177 | steps=detailer_steps, 178 | cfg=detailer_cfg, 179 | sampler_name=detailer_sampler_name, 180 | scheduler=detailer_scheduler, 181 | positive=cond, 182 | negative=n_cond, 183 | denoise=detailer_denoise, 184 | feather=detailer_feather, 185 | noise_mask=detailer_noise_mask, 186 | force_inpaint=detailer_force_inpaint, 187 | cycle=detailer_cycle, 188 | inpaint_model=detailer_inpaint_model, 189 | noise_mask_feather=detailer_noise_mask_feather)[0] 190 | color_image = ColorMatch.colormatch(image_ref=output_image, image_target=detailer_image, method=color_method)[0] 191 | blend_image = ImageBlend.blend_images(image1=color_image, image2=detailer_image, blend_factor=blend_factor, blend_mode=blend_mode)[0] 192 | blending_image = WAS_Image_Blending_Mode.image_blending_mode(image_a=blend_image, image_b=output_image, mode=blending_mode, blend_percentage=blending_blend_percentage)[0] 193 | Image.fromarray(np.array(blending_image*255, dtype=np.uint8)[0]).save("/content/ultralytics.png") 194 | 195 | result = "/content/ultralytics.png" 196 | try: 197 | notify_uri = values['notify_uri'] 198 | del values['notify_uri'] 199 | notify_token = values['notify_token'] 200 | del values['notify_token'] 201 | discord_id = values['discord_id'] 202 | del values['discord_id'] 203 | if(discord_id == "discord_id"): 204 | discord_id = os.getenv('com_camenduru_discord_id') 205 | discord_channel = values['discord_channel'] 206 | del values['discord_channel'] 207 | if(discord_channel == "discord_channel"): 208 | discord_channel = os.getenv('com_camenduru_discord_channel') 209 | discord_token = values['discord_token'] 210 | del values['discord_token'] 211 | if(discord_token == "discord_token"): 212 | discord_token = os.getenv('com_camenduru_discord_token') 213 | job_id = values['job_id'] 214 | del values['job_id'] 215 | default_filename = os.path.basename(result) 216 | with open(result, "rb") as file: 217 | files = {default_filename: file.read()} 218 | payload = {"content": f"{json.dumps(values)} <@{discord_id}>"} 219 | response = requests.post( 220 | f"https://discord.com/api/v9/channels/{discord_channel}/messages", 221 | data=payload, 222 | headers={"Authorization": f"Bot {discord_token}"}, 223 | files=files 224 | ) 225 | response.raise_for_status() 226 | result_url = response.json()['attachments'][0]['url'] 227 | notify_payload = {"jobId": job_id, "result": result_url, "status": "DONE"} 228 | web_notify_uri = os.getenv('com_camenduru_web_notify_uri') 229 | web_notify_token = os.getenv('com_camenduru_web_notify_token') 230 | if(notify_uri == "notify_uri"): 231 | requests.post(web_notify_uri, data=json.dumps(notify_payload), headers={'Content-Type': 'application/json', "Authorization": web_notify_token}) 232 | else: 233 | requests.post(web_notify_uri, data=json.dumps(notify_payload), headers={'Content-Type': 'application/json', "Authorization": web_notify_token}) 234 | requests.post(notify_uri, data=json.dumps(notify_payload), headers={'Content-Type': 'application/json', "Authorization": notify_token}) 235 | return {"jobId": job_id, "result": result_url, "status": "DONE"} 236 | except Exception as e: 237 | error_payload = {"jobId": job_id, "status": "FAILED"} 238 | try: 239 | if(notify_uri == "notify_uri"): 240 | requests.post(web_notify_uri, data=json.dumps(error_payload), headers={'Content-Type': 'application/json', "Authorization": web_notify_token}) 241 | else: 242 | requests.post(web_notify_uri, data=json.dumps(error_payload), headers={'Content-Type': 'application/json', "Authorization": web_notify_token}) 243 | requests.post(notify_uri, data=json.dumps(error_payload), headers={'Content-Type': 'application/json', "Authorization": notify_token}) 244 | except: 245 | pass 246 | return {"jobId": job_id, "result": f"FAILED: {str(e)}", "status": "FAILED"} 247 | finally: 248 | if os.path.exists(result): 249 | os.remove(result) 250 | 251 | runpod.serverless.start({"handler": generate}) -------------------------------------------------------------------------------- /schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/draft-04/hyper-schema#", 3 | "type": "object", 4 | "properties": { 5 | "readme": { 6 | "type": "string", 7 | "title": "Ultralytics Upscaler", 8 | "code": "https://github.com/camenduru/comfyui-ultralytics-upscaler-tost", 9 | "page": "https://www.reddit.com/r/StableDiffusion/comments/1e3v6jy/tile_controlnet_tiled_diffusion_very_realistic/", 10 | "api": "https://github.com/camenduru/tost-api-examples/blob/main/v1/comfyui-ultralytics-upscaler.ipynb", 11 | "tags": [ 12 | "Image to Image" 13 | ], 14 | "widget": "readme" 15 | }, 16 | "upload": { 17 | "type": "string", 18 | "widget": "upload", 19 | "upload_url": "https://litterbox.catbox.moe/resources/internals/api.php", 20 | "property": "input_image_check" 21 | }, 22 | "input_image_check": { 23 | "type": "string", 24 | "description": "Input Image URL", 25 | "widget": "textarea" 26 | }, 27 | "positive_prompt": { 28 | "type": "string", 29 | "description": "Positive Prompt", 30 | "widget": "textarea" 31 | }, 32 | "negative_prompt": { 33 | "type": "string", 34 | "description": "Negative Prompt", 35 | "widget": "textarea" 36 | }, 37 | "inspire_seed": { 38 | "type": "integer", 39 | "description": "inspire_seed" 40 | }, 41 | "inspire_steps": { 42 | "type": "integer", 43 | "description": "inspire_steps" 44 | }, 45 | "inspire_cfg": { 46 | "type": "number", 47 | "description": "inspire_cfg" 48 | }, 49 | "inspire_sampler_name": { 50 | "type": "string", 51 | "widget": "select", 52 | "description": "inspire_sampler_name", 53 | "oneOf": [ 54 | { 55 | "description": "euler", 56 | "enum": [ 57 | "euler" 58 | ] 59 | }, 60 | { 61 | "description": "euler_ancestral", 62 | "enum": [ 63 | "euler_ancestral" 64 | ] 65 | }, 66 | { 67 | "description": "heun", 68 | "enum": [ 69 | "heun" 70 | ] 71 | }, 72 | { 73 | "description": "heunpp2", 74 | "enum": [ 75 | "heunpp2" 76 | ] 77 | }, 78 | { 79 | "description": "dpm_2", 80 | "enum": [ 81 | "dpm_2" 82 | ] 83 | }, 84 | { 85 | "description": "dpm_2_ancestral", 86 | "enum": [ 87 | "dpm_2_ancestral" 88 | ] 89 | }, 90 | { 91 | "description": "lms", 92 | "enum": [ 93 | "lms" 94 | ] 95 | }, 96 | { 97 | "description": "dpm_fast", 98 | "enum": [ 99 | "dpm_fast" 100 | ] 101 | }, 102 | { 103 | "description": "dpm_adaptive", 104 | "enum": [ 105 | "dpm_adaptive" 106 | ] 107 | }, 108 | { 109 | "description": "dpmpp_2s_ancestral", 110 | "enum": [ 111 | "dpmpp_2s_ancestral" 112 | ] 113 | }, 114 | { 115 | "description": "dpmpp_sde", 116 | "enum": [ 117 | "dpmpp_sde" 118 | ] 119 | }, 120 | { 121 | "description": "dpmpp_sde_gpu", 122 | "enum": [ 123 | "dpmpp_sde_gpu" 124 | ] 125 | }, 126 | { 127 | "description": "dpmpp_2m", 128 | "enum": [ 129 | "dpmpp_2m" 130 | ] 131 | }, 132 | { 133 | "description": "dpmpp_2m_sde", 134 | "enum": [ 135 | "dpmpp_2m_sde" 136 | ] 137 | }, 138 | { 139 | "description": "dpmpp_2m_sde_gpu", 140 | "enum": [ 141 | "dpmpp_2m_sde_gpu" 142 | ] 143 | }, 144 | { 145 | "description": "dpmpp_3m_sde", 146 | "enum": [ 147 | "dpmpp_3m_sde" 148 | ] 149 | }, 150 | { 151 | "description": "dpmpp_3m_sde_gpu", 152 | "enum": [ 153 | "dpmpp_3m_sde_gpu" 154 | ] 155 | }, 156 | { 157 | "description": "ddpm", 158 | "enum": [ 159 | "ddpm" 160 | ] 161 | }, 162 | { 163 | "description": "lcm", 164 | "enum": [ 165 | "lcm" 166 | ] 167 | }, 168 | { 169 | "description": "ddim", 170 | "enum": [ 171 | "ddim" 172 | ] 173 | }, 174 | { 175 | "description": "uni_pc", 176 | "enum": [ 177 | "uni_pc" 178 | ] 179 | }, 180 | { 181 | "description": "uni_pc_bh2", 182 | "enum": [ 183 | "uni_pc_bh2" 184 | ] 185 | } 186 | ], 187 | "default": "dpmpp_2m" 188 | }, 189 | "inspire_scheduler": { 190 | "type": "string", 191 | "widget": "select", 192 | "description": "inspire_scheduler", 193 | "oneOf": [ 194 | { 195 | "description": "karras", 196 | "enum": [ 197 | "karras" 198 | ] 199 | }, 200 | { 201 | "description": "exponential", 202 | "enum": [ 203 | "exponential" 204 | ] 205 | }, 206 | { 207 | "description": "heunpp2", 208 | "enum": [ 209 | "heunpp2" 210 | ] 211 | }, 212 | { 213 | "description": "sgm_uniform", 214 | "enum": [ 215 | "sgm_uniform" 216 | ] 217 | }, 218 | { 219 | "description": "simple", 220 | "enum": [ 221 | "simple" 222 | ] 223 | }, 224 | { 225 | "description": "ddim_uniform", 226 | "enum": [ 227 | "ddim_uniform" 228 | ] 229 | } 230 | ], 231 | "default": "karras" 232 | }, 233 | "inspire_denoise": { 234 | "type": "number", 235 | "description": "inspire_denoise" 236 | }, 237 | "inspire_noise_mode": { 238 | "type": "string", 239 | "description": "inspire_noise_mode" 240 | }, 241 | "inspire_batch_seed_mode": { 242 | "type": "string", 243 | "description": "inspire_batch_seed_mode" 244 | }, 245 | "inspire_variation_seed": { 246 | "type": "number", 247 | "description": "inspire_variation_seed" 248 | }, 249 | "inspire_variation_strength": { 250 | "type": "integer", 251 | "description": "inspire_variation_strength" 252 | }, 253 | "inspire_variation_method": { 254 | "type": "string", 255 | "description": "inspire_variation_method" 256 | }, 257 | "scale_factor": { 258 | "type": "number", 259 | "description": "scale_factor" 260 | }, 261 | "blur_strength": { 262 | "type": "number", 263 | "description": "blur_strength" 264 | }, 265 | "strength": { 266 | "type": "number", 267 | "description": "strength" 268 | }, 269 | "start_percent": { 270 | "type": "number", 271 | "description": "start_percent" 272 | }, 273 | "end_percent": { 274 | "type": "number", 275 | "description": "end_percent" 276 | }, 277 | "tile_method": { 278 | "type": "string", 279 | "description": "tile_method" 280 | }, 281 | "tile_overlap": { 282 | "type": "integer", 283 | "description": "tile_overlap" 284 | }, 285 | "tile_size": { 286 | "type": "integer", 287 | "description": "tile_size" 288 | }, 289 | "threshold": { 290 | "type": "number", 291 | "description": "threshold" 292 | }, 293 | "dilation": { 294 | "type": "integer", 295 | "description": "dilation" 296 | }, 297 | "crop_factor": { 298 | "type": "number", 299 | "description": "crop_factor" 300 | }, 301 | "drop_size": { 302 | "type": "integer", 303 | "description": "drop_size" 304 | }, 305 | "labels": { 306 | "type": "string", 307 | "description": "labels" 308 | }, 309 | "detailer_guide_size": { 310 | "type": "integer", 311 | "description": "detailer_guide_size" 312 | }, 313 | "detailer_guide_size_for_bbox": { 314 | "type": "boolean", 315 | "description": "detailer_guide_size_for_bbox" 316 | }, 317 | "detailer_max_size": { 318 | "type": "integer", 319 | "description": "detailer_max_size" 320 | }, 321 | "detailer_seed": { 322 | "type": "integer", 323 | "description": "detailer_seed" 324 | }, 325 | "detailer_steps": { 326 | "type": "integer", 327 | "description": "detailer_steps" 328 | }, 329 | "detailer_cfg": { 330 | "type": "number", 331 | "description": "detailer_cfg" 332 | }, 333 | "detailer_sampler_name": { 334 | "type": "string", 335 | "widget": "select", 336 | "description": "detailer_sampler_name", 337 | "oneOf": [ 338 | { 339 | "description": "euler", 340 | "enum": [ 341 | "euler" 342 | ] 343 | }, 344 | { 345 | "description": "euler_ancestral", 346 | "enum": [ 347 | "euler_ancestral" 348 | ] 349 | }, 350 | { 351 | "description": "heun", 352 | "enum": [ 353 | "heun" 354 | ] 355 | }, 356 | { 357 | "description": "heunpp2", 358 | "enum": [ 359 | "heunpp2" 360 | ] 361 | }, 362 | { 363 | "description": "dpm_2", 364 | "enum": [ 365 | "dpm_2" 366 | ] 367 | }, 368 | { 369 | "description": "dpm_2_ancestral", 370 | "enum": [ 371 | "dpm_2_ancestral" 372 | ] 373 | }, 374 | { 375 | "description": "lms", 376 | "enum": [ 377 | "lms" 378 | ] 379 | }, 380 | { 381 | "description": "dpm_fast", 382 | "enum": [ 383 | "dpm_fast" 384 | ] 385 | }, 386 | { 387 | "description": "dpm_adaptive", 388 | "enum": [ 389 | "dpm_adaptive" 390 | ] 391 | }, 392 | { 393 | "description": "dpmpp_2s_ancestral", 394 | "enum": [ 395 | "dpmpp_2s_ancestral" 396 | ] 397 | }, 398 | { 399 | "description": "dpmpp_sde", 400 | "enum": [ 401 | "dpmpp_sde" 402 | ] 403 | }, 404 | { 405 | "description": "dpmpp_sde_gpu", 406 | "enum": [ 407 | "dpmpp_sde_gpu" 408 | ] 409 | }, 410 | { 411 | "description": "dpmpp_2m", 412 | "enum": [ 413 | "dpmpp_2m" 414 | ] 415 | }, 416 | { 417 | "description": "dpmpp_2m_sde", 418 | "enum": [ 419 | "dpmpp_2m_sde" 420 | ] 421 | }, 422 | { 423 | "description": "dpmpp_2m_sde_gpu", 424 | "enum": [ 425 | "dpmpp_2m_sde_gpu" 426 | ] 427 | }, 428 | { 429 | "description": "dpmpp_3m_sde", 430 | "enum": [ 431 | "dpmpp_3m_sde" 432 | ] 433 | }, 434 | { 435 | "description": "dpmpp_3m_sde_gpu", 436 | "enum": [ 437 | "dpmpp_3m_sde_gpu" 438 | ] 439 | }, 440 | { 441 | "description": "ddpm", 442 | "enum": [ 443 | "ddpm" 444 | ] 445 | }, 446 | { 447 | "description": "lcm", 448 | "enum": [ 449 | "lcm" 450 | ] 451 | }, 452 | { 453 | "description": "ddim", 454 | "enum": [ 455 | "ddim" 456 | ] 457 | }, 458 | { 459 | "description": "uni_pc", 460 | "enum": [ 461 | "uni_pc" 462 | ] 463 | }, 464 | { 465 | "description": "uni_pc_bh2", 466 | "enum": [ 467 | "uni_pc_bh2" 468 | ] 469 | } 470 | ], 471 | "default": "dpmpp_2m" 472 | }, 473 | "detailer_scheduler": { 474 | "type": "string", 475 | "widget": "select", 476 | "description": "detailer_scheduler", 477 | "oneOf": [ 478 | { 479 | "description": "karras", 480 | "enum": [ 481 | "karras" 482 | ] 483 | }, 484 | { 485 | "description": "exponential", 486 | "enum": [ 487 | "exponential" 488 | ] 489 | }, 490 | { 491 | "description": "heunpp2", 492 | "enum": [ 493 | "heunpp2" 494 | ] 495 | }, 496 | { 497 | "description": "sgm_uniform", 498 | "enum": [ 499 | "sgm_uniform" 500 | ] 501 | }, 502 | { 503 | "description": "simple", 504 | "enum": [ 505 | "simple" 506 | ] 507 | }, 508 | { 509 | "description": "ddim_uniform", 510 | "enum": [ 511 | "ddim_uniform" 512 | ] 513 | } 514 | ], 515 | "default": "karras" 516 | }, 517 | "detailer_denoise": { 518 | "type": "number", 519 | "description": "detailer_denoise" 520 | }, 521 | "detailer_feather": { 522 | "type": "integer", 523 | "description": "detailer_feather" 524 | }, 525 | "detailer_noise_mask": { 526 | "type": "boolean", 527 | "description": "detailer_noise_mask" 528 | }, 529 | "detailer_force_inpaint": { 530 | "type": "boolean", 531 | "description": "detailer_force_inpaint" 532 | }, 533 | "detailer_cycle": { 534 | "type": "integer", 535 | "description": "detailer_cycle" 536 | }, 537 | "detailer_inpaint_model": { 538 | "type": "boolean", 539 | "description": "detailer_inpaint_model" 540 | }, 541 | "detailer_noise_mask_feather": { 542 | "type": "integer", 543 | "description": "detailer_noise_mask_feather" 544 | }, 545 | "color_method": { 546 | "type": "string", 547 | "description": "color_method" 548 | }, 549 | "blend_factor": { 550 | "type": "number", 551 | "description": "blend_factor" 552 | }, 553 | "blend_mode": { 554 | "type": "string", 555 | "description": "blend_mode" 556 | }, 557 | "blending_mode": { 558 | "type": "string", 559 | "description": "blending_mode" 560 | }, 561 | "blending_blend_percentage": { 562 | "type": "number", 563 | "description": "blending_blend_percentage" 564 | }, 565 | "vram": { 566 | "type": "integer", 567 | "description": "vram" 568 | }, 569 | "upscale_mp": { 570 | "type": "integer", 571 | "description": "upscale_mp" 572 | }, 573 | "w_tiles": { 574 | "type": "integer", 575 | "description": "w_tiles" 576 | }, 577 | "h_tiles": { 578 | "type": "integer", 579 | "description": "h_tiles" 580 | }, 581 | "downscale_by": { 582 | "type": "number", 583 | "description": "downscale_by" 584 | }, 585 | "example": { 586 | "type": "string", 587 | "image1": "https://fakeimg.pl/1024x1024/282828/eae0d0/?text=input#.png", 588 | "image2": "https://files.catbox.moe/frdc2j.jpg", 589 | "image3": "https://fakeimg.pl/1024x1024/282828/eae0d0/?text=output#.png", 590 | "image4": "https://files.catbox.moe/n7qml5.png", 591 | "widget": "example" 592 | } 593 | }, 594 | "buttons": [ 595 | { 596 | "id": "enter", 597 | "label": "🥪 Enter" 598 | } 599 | ] 600 | } -------------------------------------------------------------------------------- /comfyui-ultralytics-upscale-tost.json: -------------------------------------------------------------------------------- 1 | { 2 | "last_node_id": 283, 3 | "last_link_id": 626, 4 | "nodes": [ 5 | { 6 | "id": 97, 7 | "type": "UltralyticsDetectorProvider", 8 | "pos": [ 9 | 900.4813746582458, 10 | -978.2786281589362 11 | ], 12 | "size": { 13 | "0": 351.8947448730469, 14 | "1": 78 15 | }, 16 | "flags": {}, 17 | "order": 0, 18 | "mode": 0, 19 | "outputs": [ 20 | { 21 | "name": "BBOX_DETECTOR", 22 | "type": "BBOX_DETECTOR", 23 | "links": null, 24 | "shape": 3 25 | }, 26 | { 27 | "name": "SEGM_DETECTOR", 28 | "type": "SEGM_DETECTOR", 29 | "links": [ 30 | 258 31 | ], 32 | "shape": 3 33 | } 34 | ], 35 | "properties": { 36 | "Node name for S&R": "UltralyticsDetectorProvider" 37 | }, 38 | "widgets_values": [ 39 | "segm/PitEyeDetailer-v2-seg.pt" 40 | ] 41 | }, 42 | { 43 | "id": 245, 44 | "type": "ColorMatch", 45 | "pos": [ 46 | 2163.4813746582454, 47 | -929.2786281589363 48 | ], 49 | "size": { 50 | "0": 300, 51 | "1": 80 52 | }, 53 | "flags": {}, 54 | "order": 36, 55 | "mode": 0, 56 | "inputs": [ 57 | { 58 | "name": "image_ref", 59 | "type": "IMAGE", 60 | "link": 615, 61 | "label": "img_model" 62 | }, 63 | { 64 | "name": "image_target", 65 | "type": "IMAGE", 66 | "link": 499, 67 | "label": "img_upscaled" 68 | } 69 | ], 70 | "outputs": [ 71 | { 72 | "name": "image", 73 | "type": "IMAGE", 74 | "links": [ 75 | 494 76 | ], 77 | "shape": 3, 78 | "slot_index": 0 79 | } 80 | ], 81 | "properties": { 82 | "Node name for S&R": "ColorMatch" 83 | }, 84 | "widgets_values": [ 85 | "hm-mvgd-hm" 86 | ] 87 | }, 88 | { 89 | "id": 246, 90 | "type": "ImageBlend", 91 | "pos": [ 92 | 2535.481374658245, 93 | -540.2786281589363 94 | ], 95 | "size": { 96 | "0": 300, 97 | "1": 102 98 | }, 99 | "flags": {}, 100 | "order": 37, 101 | "mode": 0, 102 | "inputs": [ 103 | { 104 | "name": "image1", 105 | "type": "IMAGE", 106 | "link": 494 107 | }, 108 | { 109 | "name": "image2", 110 | "type": "IMAGE", 111 | "link": 501, 112 | "label": "img_upscaled" 113 | } 114 | ], 115 | "outputs": [ 116 | { 117 | "name": "IMAGE", 118 | "type": "IMAGE", 119 | "links": [ 120 | 495 121 | ], 122 | "shape": 3, 123 | "slot_index": 0 124 | } 125 | ], 126 | "properties": { 127 | "Node name for S&R": "ImageBlend" 128 | }, 129 | "widgets_values": [ 130 | 0.5, 131 | "normal" 132 | ] 133 | }, 134 | { 135 | "id": 136, 136 | "type": "DifferentialDiffusion", 137 | "pos": [ 138 | 1449.4813746582445, 139 | -282.2786281589364 140 | ], 141 | "size": { 142 | "0": 230, 143 | "1": 30 144 | }, 145 | "flags": {}, 146 | "order": 17, 147 | "mode": 0, 148 | "inputs": [ 149 | { 150 | "name": "model", 151 | "type": "MODEL", 152 | "link": 599, 153 | "slot_index": 0 154 | } 155 | ], 156 | "outputs": [ 157 | { 158 | "name": "MODEL", 159 | "type": "MODEL", 160 | "links": [ 161 | 336 162 | ], 163 | "shape": 3, 164 | "slot_index": 0 165 | } 166 | ], 167 | "properties": { 168 | "Node name for S&R": "DifferentialDiffusion" 169 | } 170 | }, 171 | { 172 | "id": 96, 173 | "type": "SegmDetectorSEGS", 174 | "pos": [ 175 | 1384.4813746582442, 176 | -923.2786281589363 177 | ], 178 | "size": { 179 | "0": 230, 180 | "1": 212.00001525878906 181 | }, 182 | "flags": {}, 183 | "order": 28, 184 | "mode": 0, 185 | "inputs": [ 186 | { 187 | "name": "segm_detector", 188 | "type": "SEGM_DETECTOR", 189 | "link": 258, 190 | "slot_index": 0 191 | }, 192 | { 193 | "name": "image", 194 | "type": "IMAGE", 195 | "link": 619, 196 | "label": "img_saved" 197 | }, 198 | { 199 | "name": "detailer_hook", 200 | "type": "DETAILER_HOOK", 201 | "link": null, 202 | "slot_index": 2 203 | } 204 | ], 205 | "outputs": [ 206 | { 207 | "name": "SEGS", 208 | "type": "SEGS", 209 | "links": [ 210 | 257, 211 | 613 212 | ], 213 | "shape": 3, 214 | "slot_index": 0 215 | } 216 | ], 217 | "properties": { 218 | "Node name for S&R": "SegmDetectorSEGS" 219 | }, 220 | "widgets_values": [ 221 | 0.2, 222 | 5, 223 | 2, 224 | 10, 225 | "all" 226 | ] 227 | }, 228 | { 229 | "id": 275, 230 | "type": "CheckpointLoaderSimple", 231 | "pos": [ 232 | -2310, 233 | 470 234 | ], 235 | "size": { 236 | "0": 460, 237 | "1": 100 238 | }, 239 | "flags": {}, 240 | "order": 1, 241 | "mode": 0, 242 | "outputs": [ 243 | { 244 | "name": "MODEL", 245 | "type": "MODEL", 246 | "links": [ 247 | 597 248 | ], 249 | "shape": 3, 250 | "slot_index": 0 251 | }, 252 | { 253 | "name": "CLIP", 254 | "type": "CLIP", 255 | "links": [ 256 | 601, 257 | 602, 258 | 603 259 | ], 260 | "shape": 3, 261 | "slot_index": 1 262 | }, 263 | { 264 | "name": "VAE", 265 | "type": "VAE", 266 | "links": [ 267 | 605, 268 | 606, 269 | 607 270 | ], 271 | "shape": 3, 272 | "slot_index": 2 273 | } 274 | ], 275 | "properties": { 276 | "Node name for S&R": "CheckpointLoaderSimple" 277 | }, 278 | "widgets_values": [ 279 | "dreamshaperXL_lightningDPMSDE.safetensors" 280 | ] 281 | }, 282 | { 283 | "id": 99, 284 | "type": "SEGSPreview", 285 | "pos": [ 286 | 1841.0934771368134, 287 | -995.6694192146961 288 | ], 289 | "size": { 290 | "0": 210.03114318847656, 291 | "1": 314.0000305175781 292 | }, 293 | "flags": {}, 294 | "order": 32, 295 | "mode": 0, 296 | "inputs": [ 297 | { 298 | "name": "segs", 299 | "type": "SEGS", 300 | "link": 613 301 | }, 302 | { 303 | "name": "fallback_image_opt", 304 | "type": "IMAGE", 305 | "link": null 306 | } 307 | ], 308 | "outputs": [ 309 | { 310 | "name": "IMAGE", 311 | "type": "IMAGE", 312 | "links": null, 313 | "shape": 6 314 | } 315 | ], 316 | "properties": { 317 | "Node name for S&R": "SEGSPreview" 318 | }, 319 | "widgets_values": [ 320 | true, 321 | 0.2 322 | ] 323 | }, 324 | { 325 | "id": 95, 326 | "type": "DetailerForEach", 327 | "pos": [ 328 | 1810.0934771368134, 329 | -624.6694192146961 330 | ], 331 | "size": { 332 | "0": 270, 333 | "1": 840 334 | }, 335 | "flags": {}, 336 | "order": 35, 337 | "mode": 0, 338 | "inputs": [ 339 | { 340 | "name": "image", 341 | "type": "IMAGE", 342 | "link": 614, 343 | "label": "img_saved" 344 | }, 345 | { 346 | "name": "segs", 347 | "type": "SEGS", 348 | "link": 257, 349 | "slot_index": 1 350 | }, 351 | { 352 | "name": "model", 353 | "type": "MODEL", 354 | "link": 336 355 | }, 356 | { 357 | "name": "clip", 358 | "type": "CLIP", 359 | "link": 601 360 | }, 361 | { 362 | "name": "vae", 363 | "type": "VAE", 364 | "link": 607 365 | }, 366 | { 367 | "name": "positive", 368 | "type": "CONDITIONING", 369 | "link": 560 370 | }, 371 | { 372 | "name": "negative", 373 | "type": "CONDITIONING", 374 | "link": 561 375 | }, 376 | { 377 | "name": "detailer_hook", 378 | "type": "DETAILER_HOOK", 379 | "link": null, 380 | "slot_index": 7 381 | }, 382 | { 383 | "name": "scheduler_func_opt", 384 | "type": "SCHEDULER_FUNC", 385 | "link": null 386 | } 387 | ], 388 | "outputs": [ 389 | { 390 | "name": "IMAGE", 391 | "type": "IMAGE", 392 | "links": [ 393 | 499, 394 | 501 395 | ], 396 | "shape": 3, 397 | "slot_index": 0 398 | } 399 | ], 400 | "properties": { 401 | "Node name for S&R": "DetailerForEach" 402 | }, 403 | "widgets_values": [ 404 | 1024, 405 | true, 406 | 1280, 407 | 4, 408 | "fixed", 409 | 4, 410 | 1.5, 411 | "dpmpp_sde", 412 | "karras", 413 | 0.42, 414 | 5, 415 | true, 416 | true, 417 | "", 418 | 1, 419 | false, 420 | 20 421 | ] 422 | }, 423 | { 424 | "id": 49, 425 | "type": "VAEDecodeTiled", 426 | "pos": [ 427 | 511.6697961763975, 428 | 231.63776686058986 429 | ], 430 | "size": { 431 | "0": 210, 432 | "1": 80 433 | }, 434 | "flags": {}, 435 | "order": 34, 436 | "mode": 0, 437 | "inputs": [ 438 | { 439 | "name": "samples", 440 | "type": "LATENT", 441 | "link": 80 442 | }, 443 | { 444 | "name": "vae", 445 | "type": "VAE", 446 | "link": 606 447 | } 448 | ], 449 | "outputs": [ 450 | { 451 | "name": "IMAGE", 452 | "type": "IMAGE", 453 | "links": [ 454 | 614 455 | ], 456 | "shape": 3, 457 | "slot_index": 0 458 | } 459 | ], 460 | "properties": { 461 | "Node name for S&R": "VAEDecodeTiled" 462 | }, 463 | "widgets_values": [ 464 | 768 465 | ] 466 | }, 467 | { 468 | "id": 8, 469 | "type": "KSampler //Inspire", 470 | "pos": [ 471 | 75.669796176397, 472 | 365.6377668605898 473 | ], 474 | "size": { 475 | "0": 320, 476 | "1": 610 477 | }, 478 | "flags": {}, 479 | "order": 33, 480 | "mode": 0, 481 | "inputs": [ 482 | { 483 | "name": "model", 484 | "type": "MODEL", 485 | "link": 4 486 | }, 487 | { 488 | "name": "positive", 489 | "type": "CONDITIONING", 490 | "link": 262 491 | }, 492 | { 493 | "name": "negative", 494 | "type": "CONDITIONING", 495 | "link": 263 496 | }, 497 | { 498 | "name": "latent_image", 499 | "type": "LATENT", 500 | "link": 68 501 | }, 502 | { 503 | "name": "scheduler_func_opt", 504 | "type": "SCHEDULER_FUNC", 505 | "link": null, 506 | "slot_index": 4 507 | }, 508 | { 509 | "name": "denoise", 510 | "type": "FLOAT", 511 | "link": 594, 512 | "widget": { 513 | "name": "denoise" 514 | } 515 | } 516 | ], 517 | "outputs": [ 518 | { 519 | "name": "LATENT", 520 | "type": "LATENT", 521 | "links": [ 522 | 80 523 | ], 524 | "shape": 3, 525 | "slot_index": 0 526 | } 527 | ], 528 | "properties": { 529 | "Node name for S&R": "KSampler //Inspire" 530 | }, 531 | "widgets_values": [ 532 | 9, 533 | "fixed", 534 | 4, 535 | 1, 536 | "dpmpp_sde", 537 | "karras", 538 | 0.7000000000000001, 539 | "GPU(=A1111)", 540 | "incremental", 541 | 0, 542 | 0, 543 | "linear" 544 | ] 545 | }, 546 | { 547 | "id": 271, 548 | "type": "DF_Float", 549 | "pos": [ 550 | -265.3302038236031, 551 | 948.6377668605896 552 | ], 553 | "size": { 554 | "0": 230, 555 | "1": 60 556 | }, 557 | "flags": {}, 558 | "order": 2, 559 | "mode": 0, 560 | "outputs": [ 561 | { 562 | "name": "FLOAT", 563 | "type": "FLOAT", 564 | "links": [ 565 | 594 566 | ], 567 | "shape": 3, 568 | "slot_index": 0, 569 | "label": "denoise" 570 | } 571 | ], 572 | "title": "Denoise", 573 | "properties": { 574 | "Node name for S&R": "DF_Float" 575 | }, 576 | "widgets_values": [ 577 | 0.6 578 | ] 579 | }, 580 | { 581 | "id": 22, 582 | "type": "VAEEncode", 583 | "pos": [ 584 | -254.33020382360309, 585 | 827.6377668605894 586 | ], 587 | "size": { 588 | "0": 200, 589 | "1": 50 590 | }, 591 | "flags": {}, 592 | "order": 27, 593 | "mode": 0, 594 | "inputs": [ 595 | { 596 | "name": "pixels", 597 | "type": "IMAGE", 598 | "link": 617, 599 | "label": "img_model" 600 | }, 601 | { 602 | "name": "vae", 603 | "type": "VAE", 604 | "link": 605 605 | } 606 | ], 607 | "outputs": [ 608 | { 609 | "name": "LATENT", 610 | "type": "LATENT", 611 | "links": [ 612 | 68 613 | ], 614 | "shape": 3, 615 | "slot_index": 0 616 | } 617 | ], 618 | "properties": { 619 | "Node name for S&R": "VAEEncode" 620 | } 621 | }, 622 | { 623 | "id": 254, 624 | "type": "DF_Int_to_Float", 625 | "pos": [ 626 | -1179.3302038236034, 627 | 673.6377668605895 628 | ], 629 | "size": { 630 | "0": 210, 631 | "1": 34 632 | }, 633 | "flags": {}, 634 | "order": 14, 635 | "mode": 0, 636 | "inputs": [ 637 | { 638 | "name": "Value", 639 | "type": "INT", 640 | "link": 590, 641 | "widget": { 642 | "name": "Value" 643 | }, 644 | "label": "up_factor" 645 | } 646 | ], 647 | "outputs": [ 648 | { 649 | "name": "FLOAT", 650 | "type": "FLOAT", 651 | "links": [ 652 | 504 653 | ], 654 | "shape": 3, 655 | "slot_index": 0 656 | } 657 | ], 658 | "properties": { 659 | "Node name for S&R": "DF_Int_to_Float" 660 | }, 661 | "widgets_values": [ 662 | 1 663 | ] 664 | }, 665 | { 666 | "id": 222, 667 | "type": "TTPlanet_TileSimple_Preprocessor", 668 | "pos": [ 669 | -869.3302038236028, 670 | 653.6377668605895 671 | ], 672 | "size": { 673 | "0": 300, 674 | "1": 80 675 | }, 676 | "flags": {}, 677 | "order": 26, 678 | "mode": 0, 679 | "inputs": [ 680 | { 681 | "name": "image", 682 | "type": "IMAGE", 683 | "link": 616, 684 | "label": "img_model" 685 | }, 686 | { 687 | "name": "scale_factor", 688 | "type": "FLOAT", 689 | "link": 504, 690 | "widget": { 691 | "name": "scale_factor" 692 | }, 693 | "label": "up_factor" 694 | } 695 | ], 696 | "outputs": [ 697 | { 698 | "name": "IMAGE", 699 | "type": "IMAGE", 700 | "links": [ 701 | 478 702 | ], 703 | "shape": 3, 704 | "slot_index": 0 705 | } 706 | ], 707 | "properties": { 708 | "Node name for S&R": "TTPlanet_TileSimple_Preprocessor" 709 | }, 710 | "widgets_values": [ 711 | 3, 712 | 1 713 | ] 714 | }, 715 | { 716 | "id": 101, 717 | "type": "workflow/ControlNet", 718 | "pos": [ 719 | -464.33020382360263, 720 | 485.63776686058986 721 | ], 722 | "size": { 723 | "0": 419.89990234375, 724 | "1": 166 725 | }, 726 | "flags": {}, 727 | "order": 31, 728 | "mode": 0, 729 | "inputs": [ 730 | { 731 | "name": "positive", 732 | "type": "CONDITIONING", 733 | "link": 562 734 | }, 735 | { 736 | "name": "negative", 737 | "type": "CONDITIONING", 738 | "link": 563 739 | }, 740 | { 741 | "name": "img_model", 742 | "type": "IMAGE", 743 | "link": 478 744 | }, 745 | { 746 | "name": "cn_strength", 747 | "type": "FLOAT", 748 | "link": null, 749 | "widget": { 750 | "name": "cn_strength" 751 | } 752 | } 753 | ], 754 | "outputs": [ 755 | { 756 | "name": "positive", 757 | "type": "CONDITIONING", 758 | "links": [ 759 | 262 760 | ], 761 | "shape": 3 762 | }, 763 | { 764 | "name": "negative", 765 | "type": "CONDITIONING", 766 | "links": [ 767 | 263 768 | ], 769 | "shape": 3 770 | } 771 | ], 772 | "properties": { 773 | "Node name for S&R": "workflow/ControlNet" 774 | }, 775 | "widgets_values": [ 776 | "xinsir-controlnet-tile-sdxl-1.0.safetensors", 777 | 0, 778 | 1, 779 | 0.6 780 | ] 781 | }, 782 | { 783 | "id": 257, 784 | "type": "ImageScaleToTotalPixels", 785 | "pos": [ 786 | -1225.2474351343794, 787 | -844.0828727463611 788 | ], 789 | "size": { 790 | "0": 266.7886657714844, 791 | "1": 82 792 | }, 793 | "flags": { 794 | "collapsed": false 795 | }, 796 | "order": 15, 797 | "mode": 0, 798 | "inputs": [ 799 | { 800 | "name": "image", 801 | "type": "IMAGE", 802 | "link": 533, 803 | "label": "img_original" 804 | } 805 | ], 806 | "outputs": [ 807 | { 808 | "name": "IMAGE", 809 | "type": "IMAGE", 810 | "links": [ 811 | 610 812 | ], 813 | "shape": 3, 814 | "slot_index": 0 815 | } 816 | ], 817 | "properties": { 818 | "Node name for S&R": "ImageScaleToTotalPixels" 819 | }, 820 | "widgets_values": [ 821 | "nearest-exact", 822 | 1 823 | ] 824 | }, 825 | { 826 | "id": 279, 827 | "type": "GetImageSizeAndCount", 828 | "pos": [ 829 | -915, 830 | -937 831 | ], 832 | "size": { 833 | "0": 210, 834 | "1": 86 835 | }, 836 | "flags": {}, 837 | "order": 18, 838 | "mode": 0, 839 | "inputs": [ 840 | { 841 | "name": "image", 842 | "type": "IMAGE", 843 | "link": 610 844 | } 845 | ], 846 | "outputs": [ 847 | { 848 | "name": "image", 849 | "type": "IMAGE", 850 | "links": null, 851 | "shape": 3 852 | }, 853 | { 854 | "name": "1024 width", 855 | "type": "INT", 856 | "links": [ 857 | 611 858 | ], 859 | "shape": 3, 860 | "slot_index": 1 861 | }, 862 | { 863 | "name": "1024 height", 864 | "type": "INT", 865 | "links": [ 866 | 612 867 | ], 868 | "shape": 3, 869 | "slot_index": 2 870 | }, 871 | { 872 | "name": "1 count", 873 | "type": "INT", 874 | "links": null, 875 | "shape": 3 876 | } 877 | ], 878 | "properties": { 879 | "Node name for S&R": "GetImageSizeAndCount" 880 | } 881 | }, 882 | { 883 | "id": 34, 884 | "type": "MathExpression|pysssss", 885 | "pos": [ 886 | -661, 887 | -748 888 | ], 889 | "size": { 890 | "0": 210, 891 | "1": 120 892 | }, 893 | "flags": {}, 894 | "order": 21, 895 | "mode": 0, 896 | "inputs": [ 897 | { 898 | "name": "a", 899 | "type": "INT,FLOAT,IMAGE,LATENT", 900 | "link": 612, 901 | "label": "height" 902 | }, 903 | { 904 | "name": "b", 905 | "type": "INT,FLOAT,IMAGE,LATENT", 906 | "link": 589, 907 | "label": "up_factor" 908 | }, 909 | { 910 | "name": "c", 911 | "type": "INT,FLOAT,IMAGE,LATENT", 912 | "link": null 913 | } 914 | ], 915 | "outputs": [ 916 | { 917 | "name": "INT", 918 | "type": "INT", 919 | "links": [ 920 | 101, 921 | 580 922 | ], 923 | "shape": 3, 924 | "slot_index": 0 925 | }, 926 | { 927 | "name": "FLOAT", 928 | "type": "FLOAT", 929 | "links": null, 930 | "shape": 3 931 | } 932 | ], 933 | "title": "H math", 934 | "properties": { 935 | "Node name for S&R": "MathExpression|pysssss" 936 | }, 937 | "widgets_values": [ 938 | "ceil((a * b) / 8) * 8" 939 | ] 940 | }, 941 | { 942 | "id": 266, 943 | "type": "DF_Integer", 944 | "pos": [ 945 | -959, 946 | -746 947 | ], 948 | "size": { 949 | "0": 230, 950 | "1": 60 951 | }, 952 | "flags": {}, 953 | "order": 3, 954 | "mode": 0, 955 | "outputs": [ 956 | { 957 | "name": "INT", 958 | "type": "INT", 959 | "links": [ 960 | 588, 961 | 589, 962 | 590 963 | ], 964 | "shape": 3, 965 | "slot_index": 0, 966 | "label": "up_factor" 967 | } 968 | ], 969 | "title": "Upscale MP", 970 | "properties": { 971 | "Node name for S&R": "DF_Integer" 972 | }, 973 | "widgets_values": [ 974 | 4 975 | ] 976 | }, 977 | { 978 | "id": 32, 979 | "type": "MathExpression|pysssss", 980 | "pos": [ 981 | -639, 982 | -944 983 | ], 984 | "size": { 985 | "0": 214.6790771484375, 986 | "1": 116.00001525878906 987 | }, 988 | "flags": { 989 | "collapsed": false 990 | }, 991 | "order": 20, 992 | "mode": 0, 993 | "inputs": [ 994 | { 995 | "name": "a", 996 | "type": "INT,FLOAT,IMAGE,LATENT", 997 | "link": 611, 998 | "label": "width" 999 | }, 1000 | { 1001 | "name": "b", 1002 | "type": "INT,FLOAT,IMAGE,LATENT", 1003 | "link": 588, 1004 | "label": "up_factor" 1005 | }, 1006 | { 1007 | "name": "c", 1008 | "type": "INT,FLOAT,IMAGE,LATENT", 1009 | "link": null 1010 | } 1011 | ], 1012 | "outputs": [ 1013 | { 1014 | "name": "INT", 1015 | "type": "INT", 1016 | "links": [ 1017 | 100, 1018 | 579 1019 | ], 1020 | "shape": 3, 1021 | "slot_index": 0 1022 | }, 1023 | { 1024 | "name": "FLOAT", 1025 | "type": "FLOAT", 1026 | "links": null, 1027 | "shape": 3 1028 | } 1029 | ], 1030 | "title": "W math", 1031 | "properties": { 1032 | "Node name for S&R": "MathExpression|pysssss" 1033 | }, 1034 | "widgets_values": [ 1035 | "ceil((a * b) / 8) * 8" 1036 | ] 1037 | }, 1038 | { 1039 | "id": 267, 1040 | "type": "DF_Integer", 1041 | "pos": [ 1042 | -348, 1043 | -829 1044 | ], 1045 | "size": { 1046 | "0": 230, 1047 | "1": 60 1048 | }, 1049 | "flags": {}, 1050 | "order": 4, 1051 | "mode": 0, 1052 | "outputs": [ 1053 | { 1054 | "name": "INT", 1055 | "type": "INT", 1056 | "links": [ 1057 | 591 1058 | ], 1059 | "shape": 3, 1060 | "slot_index": 0, 1061 | "label": "tiles_w" 1062 | } 1063 | ], 1064 | "title": "W Tiles", 1065 | "properties": { 1066 | "Node name for S&R": "DF_Integer" 1067 | }, 1068 | "widgets_values": [ 1069 | 4 1070 | ] 1071 | }, 1072 | { 1073 | "id": 268, 1074 | "type": "DF_Integer", 1075 | "pos": [ 1076 | -372, 1077 | -672 1078 | ], 1079 | "size": { 1080 | "0": 230, 1081 | "1": 60 1082 | }, 1083 | "flags": {}, 1084 | "order": 5, 1085 | "mode": 0, 1086 | "outputs": [ 1087 | { 1088 | "name": "INT", 1089 | "type": "INT", 1090 | "links": [ 1091 | 592 1092 | ], 1093 | "shape": 3, 1094 | "slot_index": 0, 1095 | "label": "tiles_h" 1096 | } 1097 | ], 1098 | "title": "H Tiles", 1099 | "properties": { 1100 | "Node name for S&R": "DF_Integer" 1101 | }, 1102 | "widgets_values": [ 1103 | 4 1104 | ] 1105 | }, 1106 | { 1107 | "id": 273, 1108 | "type": "DF_Integer", 1109 | "pos": [ 1110 | -86, 1111 | -579 1112 | ], 1113 | "size": { 1114 | "0": 230, 1115 | "1": 60 1116 | }, 1117 | "flags": {}, 1118 | "order": 6, 1119 | "mode": 0, 1120 | "outputs": [ 1121 | { 1122 | "name": "INT", 1123 | "type": "INT", 1124 | "links": [ 1125 | 596 1126 | ], 1127 | "shape": 3, 1128 | "slot_index": 0, 1129 | "label": "vram" 1130 | } 1131 | ], 1132 | "title": "VRAM", 1133 | "properties": { 1134 | "Node name for S&R": "DF_Integer" 1135 | }, 1136 | "widgets_values": [ 1137 | 8 1138 | ] 1139 | }, 1140 | { 1141 | "id": 132, 1142 | "type": "ImageScaleBy", 1143 | "pos": [ 1144 | -860, 1145 | -429 1146 | ], 1147 | "size": { 1148 | "0": 240, 1149 | "1": 80 1150 | }, 1151 | "flags": {}, 1152 | "order": 16, 1153 | "mode": 0, 1154 | "inputs": [ 1155 | { 1156 | "name": "image", 1157 | "type": "IMAGE", 1158 | "link": 570, 1159 | "label": "img_original" 1160 | }, 1161 | { 1162 | "name": "scale_by", 1163 | "type": "FLOAT", 1164 | "link": 595, 1165 | "widget": { 1166 | "name": "scale_by" 1167 | } 1168 | } 1169 | ], 1170 | "outputs": [ 1171 | { 1172 | "name": "IMAGE", 1173 | "type": "IMAGE", 1174 | "links": [ 1175 | 426 1176 | ], 1177 | "shape": 3, 1178 | "slot_index": 0 1179 | } 1180 | ], 1181 | "title": "Downscale", 1182 | "properties": { 1183 | "Node name for S&R": "ImageScaleBy" 1184 | }, 1185 | "widgets_values": [ 1186 | "bilinear", 1187 | 1 1188 | ] 1189 | }, 1190 | { 1191 | "id": 272, 1192 | "type": "DF_Float", 1193 | "pos": [ 1194 | -1240, 1195 | -330 1196 | ], 1197 | "size": [ 1198 | 242.57735379639735, 1199 | 58 1200 | ], 1201 | "flags": {}, 1202 | "order": 7, 1203 | "mode": 0, 1204 | "outputs": [ 1205 | { 1206 | "name": "FLOAT", 1207 | "type": "FLOAT", 1208 | "links": [ 1209 | 595 1210 | ], 1211 | "shape": 3, 1212 | "slot_index": 0, 1213 | "label": "downscale_by" 1214 | } 1215 | ], 1216 | "title": "Downscale", 1217 | "properties": { 1218 | "Node name for S&R": "DF_Float" 1219 | }, 1220 | "widgets_values": [ 1221 | 1 1222 | ] 1223 | }, 1224 | { 1225 | "id": 276, 1226 | "type": "UpscaleModelLoader", 1227 | "pos": [ 1228 | -1065, 1229 | -183 1230 | ], 1231 | "size": { 1232 | "0": 460, 1233 | "1": 60 1234 | }, 1235 | "flags": {}, 1236 | "order": 8, 1237 | "mode": 0, 1238 | "outputs": [ 1239 | { 1240 | "name": "UPSCALE_MODEL", 1241 | "type": "UPSCALE_MODEL", 1242 | "links": [ 1243 | 609 1244 | ], 1245 | "shape": 3, 1246 | "slot_index": 0 1247 | } 1248 | ], 1249 | "properties": { 1250 | "Node name for S&R": "UpscaleModelLoader" 1251 | }, 1252 | "widgets_values": [ 1253 | "4xRealWebPhoto_v4_dat2.safetensors" 1254 | ] 1255 | }, 1256 | { 1257 | "id": 133, 1258 | "type": "ImageUpscaleWithModel", 1259 | "pos": [ 1260 | -476, 1261 | -310 1262 | ], 1263 | "size": { 1264 | "0": 240, 1265 | "1": 50 1266 | }, 1267 | "flags": {}, 1268 | "order": 19, 1269 | "mode": 0, 1270 | "inputs": [ 1271 | { 1272 | "name": "upscale_model", 1273 | "type": "UPSCALE_MODEL", 1274 | "link": 609, 1275 | "slot_index": 0 1276 | }, 1277 | { 1278 | "name": "image", 1279 | "type": "IMAGE", 1280 | "link": 426 1281 | } 1282 | ], 1283 | "outputs": [ 1284 | { 1285 | "name": "IMAGE", 1286 | "type": "IMAGE", 1287 | "links": [ 1288 | 332 1289 | ], 1290 | "shape": 3, 1291 | "slot_index": 0 1292 | } 1293 | ], 1294 | "title": "Model Upscale", 1295 | "properties": { 1296 | "Node name for S&R": "ImageUpscaleWithModel" 1297 | } 1298 | }, 1299 | { 1300 | "id": 19, 1301 | "type": "MathExpression|pysssss", 1302 | "pos": [ 1303 | -57, 1304 | -942 1305 | ], 1306 | "size": { 1307 | "0": 210, 1308 | "1": 120 1309 | }, 1310 | "flags": {}, 1311 | "order": 22, 1312 | "mode": 0, 1313 | "inputs": [ 1314 | { 1315 | "name": "a", 1316 | "type": "INT,FLOAT,IMAGE,LATENT", 1317 | "link": 100, 1318 | "label": "upscaled_width" 1319 | }, 1320 | { 1321 | "name": "b", 1322 | "type": "INT,FLOAT,IMAGE,LATENT", 1323 | "link": 591, 1324 | "label": "tiles w" 1325 | }, 1326 | { 1327 | "name": "c", 1328 | "type": "INT,FLOAT,IMAGE,LATENT", 1329 | "link": null 1330 | } 1331 | ], 1332 | "outputs": [ 1333 | { 1334 | "name": "INT", 1335 | "type": "INT", 1336 | "links": [ 1337 | 268, 1338 | 577 1339 | ], 1340 | "shape": 3, 1341 | "slot_index": 0 1342 | }, 1343 | { 1344 | "name": "FLOAT", 1345 | "type": "FLOAT", 1346 | "links": null, 1347 | "shape": 3 1348 | } 1349 | ], 1350 | "title": "Tile W math", 1351 | "properties": { 1352 | "Node name for S&R": "MathExpression|pysssss" 1353 | }, 1354 | "widgets_values": [ 1355 | "ceil((a / b) / 8) * 8" 1356 | ] 1357 | }, 1358 | { 1359 | "id": 20, 1360 | "type": "MathExpression|pysssss", 1361 | "pos": [ 1362 | -80, 1363 | -779 1364 | ], 1365 | "size": { 1366 | "0": 214.1021270751953, 1367 | "1": 116 1368 | }, 1369 | "flags": {}, 1370 | "order": 23, 1371 | "mode": 0, 1372 | "inputs": [ 1373 | { 1374 | "name": "a", 1375 | "type": "INT,FLOAT,IMAGE,LATENT", 1376 | "link": 101, 1377 | "label": "upscaled_height" 1378 | }, 1379 | { 1380 | "name": "b", 1381 | "type": "INT,FLOAT,IMAGE,LATENT", 1382 | "link": 592, 1383 | "label": "tiles h" 1384 | }, 1385 | { 1386 | "name": "c", 1387 | "type": "INT,FLOAT,IMAGE,LATENT", 1388 | "link": null 1389 | } 1390 | ], 1391 | "outputs": [ 1392 | { 1393 | "name": "INT", 1394 | "type": "INT", 1395 | "links": [ 1396 | 269, 1397 | 576 1398 | ], 1399 | "shape": 3, 1400 | "slot_index": 0 1401 | }, 1402 | { 1403 | "name": "FLOAT", 1404 | "type": "FLOAT", 1405 | "links": null, 1406 | "shape": 3 1407 | } 1408 | ], 1409 | "title": "Tile H math", 1410 | "properties": { 1411 | "Node name for S&R": "MathExpression|pysssss" 1412 | }, 1413 | "widgets_values": [ 1414 | "ceil((a / b) / 8) * 8" 1415 | ] 1416 | }, 1417 | { 1418 | "id": 1, 1419 | "type": "TiledDiffusion", 1420 | "pos": [ 1421 | -472.33020382360263, 1422 | 236.63776686058986 1423 | ], 1424 | "size": { 1425 | "0": 319.364501953125, 1426 | "1": 138 1427 | }, 1428 | "flags": {}, 1429 | "order": 30, 1430 | "mode": 0, 1431 | "inputs": [ 1432 | { 1433 | "name": "model", 1434 | "type": "MODEL", 1435 | "link": 598, 1436 | "slot_index": 0 1437 | }, 1438 | { 1439 | "name": "tile_width", 1440 | "type": "INT", 1441 | "link": 577, 1442 | "widget": { 1443 | "name": "tile_width" 1444 | } 1445 | }, 1446 | { 1447 | "name": "tile_height", 1448 | "type": "INT", 1449 | "link": 576, 1450 | "widget": { 1451 | "name": "tile_height" 1452 | } 1453 | }, 1454 | { 1455 | "name": "tile_overlap", 1456 | "type": "INT", 1457 | "link": 593, 1458 | "widget": { 1459 | "name": "tile_overlap" 1460 | } 1461 | }, 1462 | { 1463 | "name": "tile_batch_size", 1464 | "type": "INT", 1465 | "link": 575, 1466 | "widget": { 1467 | "name": "tile_batch_size" 1468 | } 1469 | } 1470 | ], 1471 | "outputs": [ 1472 | { 1473 | "name": "MODEL", 1474 | "type": "MODEL", 1475 | "links": [ 1476 | 4 1477 | ], 1478 | "shape": 3, 1479 | "slot_index": 0 1480 | } 1481 | ], 1482 | "properties": { 1483 | "Node name for S&R": "TiledDiffusion" 1484 | }, 1485 | "widgets_values": [ 1486 | "Mixture of Diffusers", 1487 | 1024, 1488 | 1024, 1489 | 128, 1490 | 5 1491 | ] 1492 | }, 1493 | { 1494 | "id": 134, 1495 | "type": "ImageScale", 1496 | "pos": [ 1497 | 164, 1498 | -317 1499 | ], 1500 | "size": { 1501 | "0": 240, 1502 | "1": 122 1503 | }, 1504 | "flags": {}, 1505 | "order": 24, 1506 | "mode": 0, 1507 | "inputs": [ 1508 | { 1509 | "name": "image", 1510 | "type": "IMAGE", 1511 | "link": 332 1512 | }, 1513 | { 1514 | "name": "width", 1515 | "type": "INT", 1516 | "link": 579, 1517 | "widget": { 1518 | "name": "width" 1519 | }, 1520 | "label": "upscaled_width" 1521 | }, 1522 | { 1523 | "name": "height", 1524 | "type": "INT", 1525 | "link": 580, 1526 | "widget": { 1527 | "name": "height" 1528 | }, 1529 | "label": "upscaled_height" 1530 | } 1531 | ], 1532 | "outputs": [ 1533 | { 1534 | "name": "IMAGE", 1535 | "type": "IMAGE", 1536 | "links": [ 1537 | 615, 1538 | 616, 1539 | 617, 1540 | 618, 1541 | 619, 1542 | 621, 1543 | 623 1544 | ], 1545 | "shape": 3, 1546 | "slot_index": 0 1547 | } 1548 | ], 1549 | "title": "Final Size", 1550 | "properties": { 1551 | "Node name for S&R": "ImageScale" 1552 | }, 1553 | "widgets_values": [ 1554 | "bilinear", 1555 | 4096, 1556 | 4096, 1557 | "disabled" 1558 | ] 1559 | }, 1560 | { 1561 | "id": 108, 1562 | "type": "MathExpression|pysssss", 1563 | "pos": [ 1564 | 224, 1565 | -576 1566 | ], 1567 | "size": { 1568 | "0": 210, 1569 | "1": 120 1570 | }, 1571 | "flags": {}, 1572 | "order": 25, 1573 | "mode": 0, 1574 | "inputs": [ 1575 | { 1576 | "name": "a", 1577 | "type": "INT,FLOAT,IMAGE,LATENT", 1578 | "link": 268 1579 | }, 1580 | { 1581 | "name": "b", 1582 | "type": "INT,FLOAT,IMAGE,LATENT", 1583 | "link": 269 1584 | }, 1585 | { 1586 | "name": "c", 1587 | "type": "INT,FLOAT,IMAGE,LATENT", 1588 | "link": 596 1589 | } 1590 | ], 1591 | "outputs": [ 1592 | { 1593 | "name": "INT", 1594 | "type": "INT", 1595 | "links": [ 1596 | 575 1597 | ], 1598 | "shape": 3, 1599 | "slot_index": 0 1600 | }, 1601 | { 1602 | "name": "FLOAT", 1603 | "type": "FLOAT", 1604 | "links": null, 1605 | "shape": 3 1606 | } 1607 | ], 1608 | "title": "Tile Batch Size Math", 1609 | "properties": { 1610 | "Node name for S&R": "MathExpression|pysssss" 1611 | }, 1612 | "widgets_values": [ 1613 | "floor((c-3) / ((a*b) / 1000000))" 1614 | ] 1615 | }, 1616 | { 1617 | "id": 269, 1618 | "type": "DF_Integer", 1619 | "pos": [ 1620 | -837.3302038236028, 1621 | 403.63776686059 1622 | ], 1623 | "size": { 1624 | "0": 230, 1625 | "1": 60 1626 | }, 1627 | "flags": {}, 1628 | "order": 9, 1629 | "mode": 0, 1630 | "outputs": [ 1631 | { 1632 | "name": "INT", 1633 | "type": "INT", 1634 | "links": [ 1635 | 593 1636 | ], 1637 | "shape": 3, 1638 | "slot_index": 0, 1639 | "label": "tile_overlap" 1640 | } 1641 | ], 1642 | "title": "Overlap", 1643 | "properties": { 1644 | "Node name for S&R": "DF_Integer" 1645 | }, 1646 | "widgets_values": [ 1647 | 128 1648 | ] 1649 | }, 1650 | { 1651 | "id": 249, 1652 | "type": "Image Blending Mode", 1653 | "pos": [ 1654 | 2857.481374658245, 1655 | -855.2786281589363 1656 | ], 1657 | "size": { 1658 | "0": 300, 1659 | "1": 102 1660 | }, 1661 | "flags": {}, 1662 | "order": 38, 1663 | "mode": 0, 1664 | "inputs": [ 1665 | { 1666 | "name": "image_a", 1667 | "type": "IMAGE", 1668 | "link": 495, 1669 | "label": "img_upscaled" 1670 | }, 1671 | { 1672 | "name": "image_b", 1673 | "type": "IMAGE", 1674 | "link": 618, 1675 | "label": "img_model" 1676 | } 1677 | ], 1678 | "outputs": [ 1679 | { 1680 | "name": "image", 1681 | "type": "IMAGE", 1682 | "links": [ 1683 | 496, 1684 | 548, 1685 | 625 1686 | ], 1687 | "shape": 3, 1688 | "slot_index": 0 1689 | } 1690 | ], 1691 | "properties": { 1692 | "Node name for S&R": "Image Blending Mode" 1693 | }, 1694 | "widgets_values": [ 1695 | "color", 1696 | 1 1697 | ] 1698 | }, 1699 | { 1700 | "id": 256, 1701 | "type": "LoadImage", 1702 | "pos": [ 1703 | -1705, 1704 | -627 1705 | ], 1706 | "size": { 1707 | "0": 326.4007263183594, 1708 | "1": 425.1844177246094 1709 | }, 1710 | "flags": {}, 1711 | "order": 10, 1712 | "mode": 0, 1713 | "outputs": [ 1714 | { 1715 | "name": "IMAGE", 1716 | "type": "IMAGE", 1717 | "links": [ 1718 | 533, 1719 | 570, 1720 | 622, 1721 | 626 1722 | ], 1723 | "shape": 3, 1724 | "slot_index": 0 1725 | }, 1726 | { 1727 | "name": "MASK", 1728 | "type": "MASK", 1729 | "links": null, 1730 | "shape": 3 1731 | } 1732 | ], 1733 | "properties": { 1734 | "Node name for S&R": "LoadImage" 1735 | }, 1736 | "widgets_values": [ 1737 | "kolor22s.jpg", 1738 | "image" 1739 | ] 1740 | }, 1741 | { 1742 | "id": 6, 1743 | "type": "CLIPTextEncode", 1744 | "pos": [ 1745 | -1780, 1746 | 380 1747 | ], 1748 | "size": { 1749 | "0": 460, 1750 | "1": 100 1751 | }, 1752 | "flags": {}, 1753 | "order": 12, 1754 | "mode": 0, 1755 | "inputs": [ 1756 | { 1757 | "name": "clip", 1758 | "type": "CLIP", 1759 | "link": 602 1760 | } 1761 | ], 1762 | "outputs": [ 1763 | { 1764 | "name": "CONDITIONING", 1765 | "type": "CONDITIONING", 1766 | "links": [ 1767 | 560, 1768 | 562 1769 | ], 1770 | "shape": 3, 1771 | "slot_index": 0 1772 | } 1773 | ], 1774 | "properties": { 1775 | "Node name for S&R": "CLIPTextEncode" 1776 | }, 1777 | "widgets_values": [ 1778 | "detailed, realistic, masterpiece, uhd, 8k" 1779 | ], 1780 | "color": "#232", 1781 | "bgcolor": "#353" 1782 | }, 1783 | { 1784 | "id": 7, 1785 | "type": "CLIPTextEncode", 1786 | "pos": [ 1787 | -1770, 1788 | 560 1789 | ], 1790 | "size": { 1791 | "0": 460, 1792 | "1": 76 1793 | }, 1794 | "flags": {}, 1795 | "order": 13, 1796 | "mode": 0, 1797 | "inputs": [ 1798 | { 1799 | "name": "clip", 1800 | "type": "CLIP", 1801 | "link": 603 1802 | } 1803 | ], 1804 | "outputs": [ 1805 | { 1806 | "name": "CONDITIONING", 1807 | "type": "CONDITIONING", 1808 | "links": [ 1809 | 561, 1810 | 563 1811 | ], 1812 | "shape": 3, 1813 | "slot_index": 0 1814 | } 1815 | ], 1816 | "properties": { 1817 | "Node name for S&R": "CLIPTextEncode" 1818 | }, 1819 | "widgets_values": [ 1820 | "" 1821 | ], 1822 | "color": "#322", 1823 | "bgcolor": "#533" 1824 | }, 1825 | { 1826 | "id": 274, 1827 | "type": "Automatic CFG", 1828 | "pos": [ 1829 | -1780, 1830 | 250 1831 | ], 1832 | "size": { 1833 | "0": 380.19805908203125, 1834 | "1": 82 1835 | }, 1836 | "flags": { 1837 | "collapsed": false 1838 | }, 1839 | "order": 11, 1840 | "mode": 0, 1841 | "inputs": [ 1842 | { 1843 | "name": "model", 1844 | "type": "MODEL", 1845 | "link": 597 1846 | } 1847 | ], 1848 | "outputs": [ 1849 | { 1850 | "name": "MODEL", 1851 | "type": "MODEL", 1852 | "links": [ 1853 | 598, 1854 | 599 1855 | ], 1856 | "shape": 3, 1857 | "slot_index": 0 1858 | } 1859 | ], 1860 | "properties": { 1861 | "Node name for S&R": "Automatic CFG" 1862 | }, 1863 | "widgets_values": [ 1864 | true, 1865 | true 1866 | ] 1867 | }, 1868 | { 1869 | "id": 281, 1870 | "type": "Image Comparer (rgthree)", 1871 | "pos": { 1872 | "0": -1226, 1873 | "1": -1972, 1874 | "2": 0, 1875 | "3": 0, 1876 | "4": 0, 1877 | "5": 0, 1878 | "6": 0, 1879 | "7": 0, 1880 | "8": 0, 1881 | "9": 0 1882 | }, 1883 | "size": [ 1884 | 825.6331993852082, 1885 | 871.9630778093588 1886 | ], 1887 | "flags": {}, 1888 | "order": 29, 1889 | "mode": 0, 1890 | "inputs": [ 1891 | { 1892 | "name": "image_a", 1893 | "type": "IMAGE", 1894 | "link": 622, 1895 | "dir": 3 1896 | }, 1897 | { 1898 | "name": "image_b", 1899 | "type": "IMAGE", 1900 | "link": 621, 1901 | "dir": 3 1902 | } 1903 | ], 1904 | "outputs": [], 1905 | "properties": { 1906 | "comparer_mode": "Slide" 1907 | }, 1908 | "widgets_values": [ 1909 | [ 1910 | { 1911 | "name": "A", 1912 | "selected": true, 1913 | "url": "/view?filename=rgthree.compare._temp_rkpqg_00007_.png&type=temp&subfolder=&rand=0.30811465068706556" 1914 | }, 1915 | { 1916 | "name": "B", 1917 | "selected": true, 1918 | "url": "/view?filename=rgthree.compare._temp_rkpqg_00008_.png&type=temp&subfolder=&rand=0.6264569659227974" 1919 | } 1920 | ] 1921 | ] 1922 | }, 1923 | { 1924 | "id": 262, 1925 | "type": "Image Comparer (rgthree)", 1926 | "pos": { 1927 | "0": -355, 1928 | "1": -1990, 1929 | "2": 0, 1930 | "3": 0, 1931 | "4": 0, 1932 | "5": 0, 1933 | "6": 0, 1934 | "7": 0, 1935 | "8": 0, 1936 | "9": 0 1937 | }, 1938 | "size": { 1939 | "0": 841.5398559570312, 1940 | "1": 880.6443481445312 1941 | }, 1942 | "flags": {}, 1943 | "order": 40, 1944 | "mode": 0, 1945 | "inputs": [ 1946 | { 1947 | "name": "image_a", 1948 | "type": "IMAGE", 1949 | "link": 623, 1950 | "dir": 3 1951 | }, 1952 | { 1953 | "name": "image_b", 1954 | "type": "IMAGE", 1955 | "link": 548, 1956 | "dir": 3 1957 | } 1958 | ], 1959 | "outputs": [], 1960 | "properties": { 1961 | "comparer_mode": "Slide" 1962 | }, 1963 | "widgets_values": [ 1964 | [ 1965 | { 1966 | "name": "A", 1967 | "selected": true, 1968 | "url": "/view?filename=rgthree.compare._temp_sdcdn_00007_.png&type=temp&subfolder=&rand=0.29758475344301605" 1969 | }, 1970 | { 1971 | "name": "B", 1972 | "selected": true, 1973 | "url": "/view?filename=rgthree.compare._temp_sdcdn_00008_.png&type=temp&subfolder=&rand=0.018576923315166693" 1974 | } 1975 | ] 1976 | ] 1977 | }, 1978 | { 1979 | "id": 283, 1980 | "type": "Image Comparer (rgthree)", 1981 | "pos": { 1982 | "0": 525, 1983 | "1": -1993, 1984 | "2": 0, 1985 | "3": 0, 1986 | "4": 0, 1987 | "5": 0, 1988 | "6": 0, 1989 | "7": 0, 1990 | "8": 0, 1991 | "9": 0 1992 | }, 1993 | "size": { 1994 | "0": 841.5398559570312, 1995 | "1": 880.6443481445312 1996 | }, 1997 | "flags": {}, 1998 | "order": 41, 1999 | "mode": 0, 2000 | "inputs": [ 2001 | { 2002 | "name": "image_a", 2003 | "type": "IMAGE", 2004 | "link": 626, 2005 | "dir": 3 2006 | }, 2007 | { 2008 | "name": "image_b", 2009 | "type": "IMAGE", 2010 | "link": 625, 2011 | "dir": 3 2012 | } 2013 | ], 2014 | "outputs": [], 2015 | "properties": { 2016 | "comparer_mode": "Slide" 2017 | }, 2018 | "widgets_values": [ 2019 | [ 2020 | { 2021 | "name": "A", 2022 | "selected": true, 2023 | "url": "/view?filename=rgthree.compare._temp_bsisi_00001_.png&type=temp&subfolder=&rand=0.3938853193144334" 2024 | }, 2025 | { 2026 | "name": "B", 2027 | "selected": true, 2028 | "url": "/view?filename=rgthree.compare._temp_bsisi_00002_.png&type=temp&subfolder=&rand=0.5171611611406071" 2029 | } 2030 | ] 2031 | ] 2032 | }, 2033 | { 2034 | "id": 100, 2035 | "type": "SaveImage", 2036 | "pos": [ 2037 | 2949, 2038 | -505 2039 | ], 2040 | "size": { 2041 | "0": 310.2304382324219, 2042 | "1": 358.6418762207031 2043 | }, 2044 | "flags": {}, 2045 | "order": 39, 2046 | "mode": 0, 2047 | "inputs": [ 2048 | { 2049 | "name": "images", 2050 | "type": "IMAGE", 2051 | "link": 496, 2052 | "label": "img_upscaled" 2053 | } 2054 | ], 2055 | "properties": { 2056 | "Node name for S&R": "SaveImage" 2057 | }, 2058 | "widgets_values": [ 2059 | "final_upscaled2" 2060 | ] 2061 | } 2062 | ], 2063 | "links": [ 2064 | [ 2065 | 4, 2066 | 1, 2067 | 0, 2068 | 8, 2069 | 0, 2070 | "MODEL" 2071 | ], 2072 | [ 2073 | 68, 2074 | 22, 2075 | 0, 2076 | 8, 2077 | 3, 2078 | "LATENT" 2079 | ], 2080 | [ 2081 | 80, 2082 | 8, 2083 | 0, 2084 | 49, 2085 | 0, 2086 | "LATENT" 2087 | ], 2088 | [ 2089 | 100, 2090 | 32, 2091 | 0, 2092 | 19, 2093 | 0, 2094 | "INT,FLOAT,IMAGE,LATENT" 2095 | ], 2096 | [ 2097 | 101, 2098 | 34, 2099 | 0, 2100 | 20, 2101 | 0, 2102 | "INT,FLOAT,IMAGE,LATENT" 2103 | ], 2104 | [ 2105 | 257, 2106 | 96, 2107 | 0, 2108 | 95, 2109 | 1, 2110 | "SEGS" 2111 | ], 2112 | [ 2113 | 258, 2114 | 97, 2115 | 1, 2116 | 96, 2117 | 0, 2118 | "SEGM_DETECTOR" 2119 | ], 2120 | [ 2121 | 262, 2122 | 101, 2123 | 0, 2124 | 8, 2125 | 1, 2126 | "CONDITIONING" 2127 | ], 2128 | [ 2129 | 263, 2130 | 101, 2131 | 1, 2132 | 8, 2133 | 2, 2134 | "CONDITIONING" 2135 | ], 2136 | [ 2137 | 268, 2138 | 19, 2139 | 0, 2140 | 108, 2141 | 0, 2142 | "INT,FLOAT,IMAGE,LATENT" 2143 | ], 2144 | [ 2145 | 269, 2146 | 20, 2147 | 0, 2148 | 108, 2149 | 1, 2150 | "INT,FLOAT,IMAGE,LATENT" 2151 | ], 2152 | [ 2153 | 332, 2154 | 133, 2155 | 0, 2156 | 134, 2157 | 0, 2158 | "IMAGE" 2159 | ], 2160 | [ 2161 | 336, 2162 | 136, 2163 | 0, 2164 | 95, 2165 | 2, 2166 | "MODEL" 2167 | ], 2168 | [ 2169 | 426, 2170 | 132, 2171 | 0, 2172 | 133, 2173 | 1, 2174 | "IMAGE" 2175 | ], 2176 | [ 2177 | 478, 2178 | 222, 2179 | 0, 2180 | 101, 2181 | 2, 2182 | "IMAGE" 2183 | ], 2184 | [ 2185 | 494, 2186 | 245, 2187 | 0, 2188 | 246, 2189 | 0, 2190 | "IMAGE" 2191 | ], 2192 | [ 2193 | 495, 2194 | 246, 2195 | 0, 2196 | 249, 2197 | 0, 2198 | "IMAGE" 2199 | ], 2200 | [ 2201 | 496, 2202 | 249, 2203 | 0, 2204 | 100, 2205 | 0, 2206 | "IMAGE" 2207 | ], 2208 | [ 2209 | 499, 2210 | 95, 2211 | 0, 2212 | 245, 2213 | 1, 2214 | "IMAGE" 2215 | ], 2216 | [ 2217 | 501, 2218 | 95, 2219 | 0, 2220 | 246, 2221 | 1, 2222 | "IMAGE" 2223 | ], 2224 | [ 2225 | 504, 2226 | 254, 2227 | 0, 2228 | 222, 2229 | 1, 2230 | "FLOAT" 2231 | ], 2232 | [ 2233 | 506, 2234 | 66, 2235 | 0, 2236 | 1, 2237 | 0, 2238 | "MODEL" 2239 | ], 2240 | [ 2241 | 507, 2242 | 19, 2243 | 0, 2244 | 1, 2245 | 1, 2246 | "INT" 2247 | ], 2248 | [ 2249 | 508, 2250 | 20, 2251 | 0, 2252 | 1, 2253 | 2, 2254 | "INT" 2255 | ], 2256 | [ 2257 | 509, 2258 | 115, 2259 | 0, 2260 | 1, 2261 | 3, 2262 | "INT" 2263 | ], 2264 | [ 2265 | 510, 2266 | 108, 2267 | 0, 2268 | 1, 2269 | 4, 2270 | "INT" 2271 | ], 2272 | [ 2273 | 511, 2274 | 66, 2275 | 1, 2276 | 7, 2277 | 0, 2278 | "CLIP" 2279 | ], 2280 | [ 2281 | 512, 2282 | 66, 2283 | 0, 2284 | 136, 2285 | 0, 2286 | "MODEL" 2287 | ], 2288 | [ 2289 | 513, 2290 | 66, 2291 | 1, 2292 | 6, 2293 | 0, 2294 | "CLIP" 2295 | ], 2296 | [ 2297 | 514, 2298 | 66, 2299 | 0, 2300 | 133, 2301 | 0, 2302 | "UPSCALE_MODEL" 2303 | ], 2304 | [ 2305 | 515, 2306 | 66, 2307 | 2, 2308 | 49, 2309 | 1, 2310 | "VAE" 2311 | ], 2312 | [ 2313 | 516, 2314 | 134, 2315 | 0, 2316 | 249, 2317 | 1, 2318 | "IMAGE" 2319 | ], 2320 | [ 2321 | 517, 2322 | 134, 2323 | 0, 2324 | 245, 2325 | 0, 2326 | "IMAGE" 2327 | ], 2328 | [ 2329 | 518, 2330 | 66, 2331 | 1, 2332 | 95, 2333 | 3, 2334 | "CLIP" 2335 | ], 2336 | [ 2337 | 519, 2338 | 66, 2339 | 2, 2340 | 95, 2341 | 4, 2342 | "VAE" 2343 | ], 2344 | [ 2345 | 520, 2346 | 6, 2347 | 0, 2348 | 95, 2349 | 5, 2350 | "CONDITIONING" 2351 | ], 2352 | [ 2353 | 521, 2354 | 7, 2355 | 0, 2356 | 95, 2357 | 6, 2358 | "CONDITIONING" 2359 | ], 2360 | [ 2361 | 522, 2362 | 115, 2363 | 0, 2364 | 8, 2365 | 5, 2366 | "FLOAT" 2367 | ], 2368 | [ 2369 | 523, 2370 | 134, 2371 | 0, 2372 | 22, 2373 | 0, 2374 | "IMAGE" 2375 | ], 2376 | [ 2377 | 524, 2378 | 66, 2379 | 2, 2380 | 22, 2381 | 1, 2382 | "VAE" 2383 | ], 2384 | [ 2385 | 525, 2386 | 6, 2387 | 0, 2388 | "101:1", 2389 | "0", 2390 | "CONDITIONING" 2391 | ], 2392 | [ 2393 | 526, 2394 | 7, 2395 | 0, 2396 | "101:1", 2397 | "1", 2398 | "CONDITIONING" 2399 | ], 2400 | [ 2401 | 527, 2402 | 115, 2403 | 0, 2404 | "101:1", 2405 | "4", 2406 | "FLOAT" 2407 | ], 2408 | [ 2409 | 528, 2410 | 115, 2411 | 0, 2412 | 254, 2413 | 0, 2414 | "INT" 2415 | ], 2416 | [ 2417 | 529, 2418 | 134, 2419 | 0, 2420 | 222, 2421 | 0, 2422 | "IMAGE" 2423 | ], 2424 | [ 2425 | 530, 2426 | 72, 2427 | 0, 2428 | 132, 2429 | 0, 2430 | "IMAGE" 2431 | ], 2432 | [ 2433 | 531, 2434 | 32, 2435 | 0, 2436 | 134, 2437 | 1, 2438 | "INT" 2439 | ], 2440 | [ 2441 | 532, 2442 | 34, 2443 | 0, 2444 | 134, 2445 | 2, 2446 | "INT" 2447 | ], 2448 | [ 2449 | 533, 2450 | 256, 2451 | 0, 2452 | 257, 2453 | 0, 2454 | "IMAGE" 2455 | ], 2456 | [ 2457 | 548, 2458 | 249, 2459 | 0, 2460 | 262, 2461 | 1, 2462 | "IMAGE" 2463 | ], 2464 | [ 2465 | 560, 2466 | 6, 2467 | 0, 2468 | 95, 2469 | 5, 2470 | "CONDITIONING" 2471 | ], 2472 | [ 2473 | 561, 2474 | 7, 2475 | 0, 2476 | 95, 2477 | 6, 2478 | "CONDITIONING" 2479 | ], 2480 | [ 2481 | 562, 2482 | 6, 2483 | 0, 2484 | 101, 2485 | 0, 2486 | "CONDITIONING" 2487 | ], 2488 | [ 2489 | 563, 2490 | 7, 2491 | 0, 2492 | 101, 2493 | 1, 2494 | "CONDITIONING" 2495 | ], 2496 | [ 2497 | 570, 2498 | 256, 2499 | 0, 2500 | 132, 2501 | 0, 2502 | "IMAGE" 2503 | ], 2504 | [ 2505 | 575, 2506 | 108, 2507 | 0, 2508 | 1, 2509 | 4, 2510 | "INT" 2511 | ], 2512 | [ 2513 | 576, 2514 | 20, 2515 | 0, 2516 | 1, 2517 | 2, 2518 | "INT" 2519 | ], 2520 | [ 2521 | 577, 2522 | 19, 2523 | 0, 2524 | 1, 2525 | 1, 2526 | "INT" 2527 | ], 2528 | [ 2529 | 579, 2530 | 32, 2531 | 0, 2532 | 134, 2533 | 1, 2534 | "INT" 2535 | ], 2536 | [ 2537 | 580, 2538 | 34, 2539 | 0, 2540 | 134, 2541 | 2, 2542 | "INT" 2543 | ], 2544 | [ 2545 | 588, 2546 | 266, 2547 | 0, 2548 | 32, 2549 | 1, 2550 | "INT,FLOAT,IMAGE,LATENT" 2551 | ], 2552 | [ 2553 | 589, 2554 | 266, 2555 | 0, 2556 | 34, 2557 | 1, 2558 | "INT,FLOAT,IMAGE,LATENT" 2559 | ], 2560 | [ 2561 | 590, 2562 | 266, 2563 | 0, 2564 | 254, 2565 | 0, 2566 | "INT" 2567 | ], 2568 | [ 2569 | 591, 2570 | 267, 2571 | 0, 2572 | 19, 2573 | 1, 2574 | "INT,FLOAT,IMAGE,LATENT" 2575 | ], 2576 | [ 2577 | 592, 2578 | 268, 2579 | 0, 2580 | 20, 2581 | 1, 2582 | "INT,FLOAT,IMAGE,LATENT" 2583 | ], 2584 | [ 2585 | 593, 2586 | 269, 2587 | 0, 2588 | 1, 2589 | 3, 2590 | "INT" 2591 | ], 2592 | [ 2593 | 594, 2594 | 271, 2595 | 0, 2596 | 8, 2597 | 5, 2598 | "FLOAT" 2599 | ], 2600 | [ 2601 | 595, 2602 | 272, 2603 | 0, 2604 | 132, 2605 | 1, 2606 | "FLOAT" 2607 | ], 2608 | [ 2609 | 596, 2610 | 273, 2611 | 0, 2612 | 108, 2613 | 2, 2614 | "INT,FLOAT,IMAGE,LATENT" 2615 | ], 2616 | [ 2617 | 597, 2618 | 275, 2619 | 0, 2620 | 274, 2621 | 0, 2622 | "MODEL" 2623 | ], 2624 | [ 2625 | 598, 2626 | 274, 2627 | 0, 2628 | 1, 2629 | 0, 2630 | "MODEL" 2631 | ], 2632 | [ 2633 | 599, 2634 | 274, 2635 | 0, 2636 | 136, 2637 | 0, 2638 | "MODEL" 2639 | ], 2640 | [ 2641 | 601, 2642 | 275, 2643 | 1, 2644 | 95, 2645 | 3, 2646 | "CLIP" 2647 | ], 2648 | [ 2649 | 602, 2650 | 275, 2651 | 1, 2652 | 6, 2653 | 0, 2654 | "CLIP" 2655 | ], 2656 | [ 2657 | 603, 2658 | 275, 2659 | 1, 2660 | 7, 2661 | 0, 2662 | "CLIP" 2663 | ], 2664 | [ 2665 | 605, 2666 | 275, 2667 | 2, 2668 | 22, 2669 | 1, 2670 | "VAE" 2671 | ], 2672 | [ 2673 | 606, 2674 | 275, 2675 | 2, 2676 | 49, 2677 | 1, 2678 | "VAE" 2679 | ], 2680 | [ 2681 | 607, 2682 | 275, 2683 | 2, 2684 | 95, 2685 | 4, 2686 | "VAE" 2687 | ], 2688 | [ 2689 | 609, 2690 | 276, 2691 | 0, 2692 | 133, 2693 | 0, 2694 | "UPSCALE_MODEL" 2695 | ], 2696 | [ 2697 | 610, 2698 | 257, 2699 | 0, 2700 | 279, 2701 | 0, 2702 | "IMAGE" 2703 | ], 2704 | [ 2705 | 611, 2706 | 279, 2707 | 1, 2708 | 32, 2709 | 0, 2710 | "INT,FLOAT,IMAGE,LATENT" 2711 | ], 2712 | [ 2713 | 612, 2714 | 279, 2715 | 2, 2716 | 34, 2717 | 0, 2718 | "INT,FLOAT,IMAGE,LATENT" 2719 | ], 2720 | [ 2721 | 613, 2722 | 96, 2723 | 0, 2724 | 99, 2725 | 0, 2726 | "SEGS" 2727 | ], 2728 | [ 2729 | 614, 2730 | 49, 2731 | 0, 2732 | 95, 2733 | 0, 2734 | "IMAGE" 2735 | ], 2736 | [ 2737 | 615, 2738 | 134, 2739 | 0, 2740 | 245, 2741 | 0, 2742 | "IMAGE" 2743 | ], 2744 | [ 2745 | 616, 2746 | 134, 2747 | 0, 2748 | 222, 2749 | 0, 2750 | "IMAGE" 2751 | ], 2752 | [ 2753 | 617, 2754 | 134, 2755 | 0, 2756 | 22, 2757 | 0, 2758 | "IMAGE" 2759 | ], 2760 | [ 2761 | 618, 2762 | 134, 2763 | 0, 2764 | 249, 2765 | 1, 2766 | "IMAGE" 2767 | ], 2768 | [ 2769 | 619, 2770 | 134, 2771 | 0, 2772 | 96, 2773 | 1, 2774 | "IMAGE" 2775 | ], 2776 | [ 2777 | 621, 2778 | 134, 2779 | 0, 2780 | 281, 2781 | 1, 2782 | "IMAGE" 2783 | ], 2784 | [ 2785 | 622, 2786 | 256, 2787 | 0, 2788 | 281, 2789 | 0, 2790 | "IMAGE" 2791 | ], 2792 | [ 2793 | 623, 2794 | 134, 2795 | 0, 2796 | 262, 2797 | 0, 2798 | "IMAGE" 2799 | ], 2800 | [ 2801 | 625, 2802 | 249, 2803 | 0, 2804 | 283, 2805 | 1, 2806 | "IMAGE" 2807 | ], 2808 | [ 2809 | 626, 2810 | 256, 2811 | 0, 2812 | 283, 2813 | 0, 2814 | "IMAGE" 2815 | ] 2816 | ], 2817 | "groups": [ 2818 | { 2819 | "title": "Detailer", 2820 | "bounding": [ 2821 | 885, 2822 | -1073, 2823 | 2525, 2824 | 1346 2825 | ], 2826 | "color": "#88A", 2827 | "font_size": 24, 2828 | "locked": false 2829 | }, 2830 | { 2831 | "title": "Sampling", 2832 | "bounding": [ 2833 | -1273, 2834 | 115, 2835 | 2099, 2836 | 1013 2837 | ], 2838 | "color": "#b06634", 2839 | "font_size": 24, 2840 | "locked": false 2841 | }, 2842 | { 2843 | "title": "Group", 2844 | "bounding": [ 2845 | -1267, 2846 | -1010, 2847 | 1799, 2848 | 917 2849 | ], 2850 | "color": "#3f789e", 2851 | "font_size": 24, 2852 | "locked": false 2853 | } 2854 | ], 2855 | "config": {}, 2856 | "extra": { 2857 | "ds": { 2858 | "scale": 0.29408349370551956, 2859 | "offset": [ 2860 | 3428.4133819274393, 2861 | 2502.1558165473352 2862 | ] 2863 | }, 2864 | "groupNodes": { 2865 | "ControlNet": { 2866 | "nodes": [ 2867 | { 2868 | "type": "ControlNetLoader", 2869 | "pos": [ 2870 | -440, 2871 | 400 2872 | ], 2873 | "size": { 2874 | "0": 315, 2875 | "1": 58 2876 | }, 2877 | "flags": {}, 2878 | "order": 11, 2879 | "mode": 0, 2880 | "outputs": [ 2881 | { 2882 | "name": "CONTROL_NET", 2883 | "type": "CONTROL_NET", 2884 | "links": [], 2885 | "shape": 3 2886 | } 2887 | ], 2888 | "properties": { 2889 | "Node name for S&R": "ControlNetLoader" 2890 | }, 2891 | "widgets_values": [ 2892 | "tile\\xinsir-tile-sdxl-10.safetensors" 2893 | ], 2894 | "index": 0 2895 | }, 2896 | { 2897 | "type": "ControlNetApplyAdvanced", 2898 | "pos": [ 2899 | -110, 2900 | 400 2901 | ], 2902 | "size": { 2903 | "0": 320, 2904 | "1": 170 2905 | }, 2906 | "flags": {}, 2907 | "order": 23, 2908 | "mode": 0, 2909 | "inputs": [ 2910 | { 2911 | "name": "positive", 2912 | "type": "CONDITIONING", 2913 | "link": null 2914 | }, 2915 | { 2916 | "name": "negative", 2917 | "type": "CONDITIONING", 2918 | "link": null 2919 | }, 2920 | { 2921 | "name": "control_net", 2922 | "type": "CONTROL_NET", 2923 | "link": null, 2924 | "slot_index": 2 2925 | }, 2926 | { 2927 | "name": "image", 2928 | "type": "IMAGE", 2929 | "link": null, 2930 | "label": "img_model" 2931 | }, 2932 | { 2933 | "name": "strength", 2934 | "type": "FLOAT", 2935 | "link": null, 2936 | "widget": { 2937 | "name": "strength" 2938 | }, 2939 | "label": "cn_strength" 2940 | } 2941 | ], 2942 | "outputs": [ 2943 | { 2944 | "name": "positive", 2945 | "type": "CONDITIONING", 2946 | "links": [], 2947 | "shape": 3, 2948 | "slot_index": 0 2949 | }, 2950 | { 2951 | "name": "negative", 2952 | "type": "CONDITIONING", 2953 | "links": [], 2954 | "shape": 3, 2955 | "slot_index": 1 2956 | } 2957 | ], 2958 | "properties": { 2959 | "Node name for S&R": "ControlNetApplyAdvanced" 2960 | }, 2961 | "widgets_values": [ 2962 | 0.6, 2963 | 0, 2964 | 1 2965 | ], 2966 | "index": 1 2967 | } 2968 | ], 2969 | "links": [ 2970 | [ 2971 | 0, 2972 | 0, 2973 | 1, 2974 | 2, 2975 | 15, 2976 | "CONTROL_NET" 2977 | ] 2978 | ], 2979 | "external": [ 2980 | [ 2981 | 1, 2982 | 0, 2983 | "CONDITIONING" 2984 | ], 2985 | [ 2986 | 1, 2987 | 1, 2988 | "CONDITIONING" 2989 | ] 2990 | ] 2991 | } 2992 | } 2993 | }, 2994 | "version": 0.4 2995 | } --------------------------------------------------------------------------------