Project 2: Images Created Using the ComfyGUI Interface

glegrady
Posts: 232
Joined: Wed Sep 22, 2010 12:26 pm

Project 2: Images Created Using the ComfyGUI Interface

Post by glegrady » Sun Jan 04, 2026 6:40 pm

Project 2: Images Created Using the ComfyGUI Interface

Due dates:
Project 1: January 29,
Project 2: February 5,
Project 3: February 12, 2026

Project Details: Create a series of images that demonstrate an understanding of the options available in the ComfyUI interface. As part of the work, discuss how you arrived at your results. We will do new images each week. For future works, just add a new reply.

Tips:
Organize Your Models: Keep your models, VAEs, and other resources well-organized in the models directory. This makes it easier to find and load them into your workflows.

Save Your Workflows: Save your node setups as JSON files. This allows you to reuse and share complex workflows without having to recreate them each time.

Experiment with Settings: Don’t hesitate to try different configurations in your nodes. Adjust parameters like strength, guidance scale, and others to see how they affect your results.
George Legrady
legrady@mat.ucsb.edu

zixuan241
Posts: 14
Joined: Wed Oct 01, 2025 2:41 pm

Re: Project 2: Images Created Using the ComfyGUI Interface

Post by zixuan241 » Thu Jan 29, 2026 11:12 am

Practice 1
This image explores the transformation of familiar food objects into soft felt-like materials, blurring the boundary between edible textures and handcrafted textiles.
By combining realistic lighting with woolen surfaces, the work invites viewers to reconsider material perception and tactile expectation.

ComfyUI_02499_.png
ComfyUI_02496_.png
ComfyUI_02495_.png
截屏2026-01-29 11.08.53.png

zixuan241
Posts: 14
Joined: Wed Oct 01, 2025 2:41 pm

Re: Project 2: Images Created Using the ComfyGUI Interface

Post by zixuan241 » Tue Feb 03, 2026 10:53 am

These images were achieved through iterative refinement of model selection, prompt structure, and ControlNet parameters. A realistic checkpoint was chosen to support cinematic lighting and material continuity, while overly illustrative models were excluded to avoid narrative or painterly effects. Prompt language was progressively simplified to emphasize atmosphere, silence, and a single human presence rather than explicit storytelling.

ControlNet was used selectively to stabilize spatial composition without over-constraining the scene. Edge-based guidance was applied at moderate strength and limited to the early stages of generation, allowing structural coherence while preserving organic lighting and texture. Sampling parameters were kept intentionally conservative to maintain visual continuity and avoid stylization. Through repeated testing and small parameter adjustments, the workflow converged toward quiet, film-like scenes where the environment carries the primary emotional weight and the human figure remains understated.

Workflow Parameter Summary
Model
Checkpoint: SD1.5 / DreamShaper
Chosen for its balance between realism and cinematic stylization.
Avoids pixel-art or illustrative bias while maintaining soft lighting transitions

Prompt Structure
Positive Prompt Focus:
1. Atmospheric environment
2. Single, solitary human figure
3. Cinematic lighting and silence
4. Film still realism (explicitly excluding illustration)

Negative Prompt Constraints:
1. Illustration, watercolor, painting
2. Narrative or storytelling scenes
3. Groups or crowds
4. Anime, cartoon, stylized aesthetics
5. Text and watermark artifacts

Sampling Parameters (KSampler)
Sampler: DPM++ 2M
Scheduler: Normal
Steps: 32
CFG Scale: 4.5
Denoise: 1.0

Resolution
Latent Size: 768 × 512

ControlNet Configuration
Preprocessor: PyraCanny
Used to extract structural edges while suppressing fine texture noise.
ControlNet Model: control_v11p_sd15_canny
Strength: 0.6
Start Percent: 0.0
End Percent: 0.6
截屏2026-02-03 10.40.44.png
Screenshot of Workflow
ComfyUI_02523_.png
ComfyUI_02527_.png
ComfyUI_02526_.png

glegrady
Posts: 232
Joined: Wed Sep 22, 2010 12:26 pm

Re: Project 2: Image Blend function Example

Post by glegrady » Tue Feb 03, 2026 5:51 pm

MOTIVATION: This ComfyUI workflow takes two images to influence the outcome of a new image. I chose two unrelated images, one of a truck and one of a beach scene to test how the two unrelated images will work together.

METHODOLOGY: Both images are at high resolution. They are unrelated and the idea was to test to see how they would interact. As it turns out IMAGE BLEND is a basic blend function rather then a sophisticated integrator of the two images. I will need to try and see if there are any other ways to integrate multiple images.
IMG_1884.JPG
IMG_1887.JPG
two_inputs_influence_output_00016_.png
I also tried with two related previously generated images with the text prompt of "Tree on a truck in a lab"

EVALUATION / ANALYSIS: The results are not interesting enough. I am aiming for either
1) Style Transfer, an artificial neural network where the style of one image influences the content of the other image (see https://github.com/Westlake-AGI-Lab/Awe ... ion-Models and Wikipedia: https://en.wikipedia.org/wiki/Neural_style_transfer)

2) or where the two images would combine their influence to generate a new one.
Attachments
Screenshot 2026-02-03 at 5.19.14 PM.png
Screenshot 2026-02-03 at 5.47.41 PM.png
George Legrady
legrady@mat.ucsb.edu

glegrady
Posts: 232
Joined: Wed Sep 22, 2010 12:26 pm

Re: Project 2: XYPLOT - Example

Post by glegrady » Wed Feb 04, 2026 4:00 pm

MOTIVATION: I am doing tests with XYPlots. Here are a few versions:

METHODOLOGY DETAILS:
. One uses controlnet and image input
. One uses an image input but no control net
. One uses no image input and no control net (I may have lost this one).

EVALUATION / ANALYSIS
. Outcome is what I expected but need to do additional testing. I also included a function to not only save the XY grid, but also to save each image individually, but the workflow is incorrect. I had to reduce the image size as the system was freezing up. I am getting used to the comfyui environment - how this works and enjoy the opportunities it offers for detailed testing.
At the moment, I am not sure how to upload .json files as it refuses them. Will figure this out for the next upload.
ComfyUI_Grid_00001_.png
Screenshot 2026-02-04 at 4.00.40 PM.png
Screenshot 2026-02-04 at 3.42.17 PM.png
Screenshot 2026-02-04 at 10.43.43 PM.png
grid_noInputImg_00001_.png
George Legrady
legrady@mat.ucsb.edu

glegrady
Posts: 232
Joined: Wed Sep 22, 2010 12:26 pm

Re: Project 2: ComfyUI JSON WORKFLOW

Post by glegrady » Thu Feb 05, 2026 9:28 am

ComfyUI JSON WORKFLOW

MOTIVATION: to have a reliable way to design a comfyui workflow I do the following:

Code: Select all

this is a space for code
METHODOLOGY:
. Come up with an image concept
. Describe it in ChatGPT which produces a JSON file
. I paste the JSON file into the comfyUI space

EVALUATION:
. With the JSON, I can also see what the settings are like on the screen
. Cannot upload the JSON file, so I am pasting the JSON as code in the </> code window below the image. Copy the code into a txt file and save it as a ".json" file and then paste into the ComfyUI work space.

REFERENCE:
. Comfy
ComfyUI_02540_.png
UI Workflow: https://docs.comfy.org/development/core ... s/workflow

Code: Select all

{
  "last_node_id": 7,
  "last_link_id": 9,
  "nodes": [
    {
      "id": 1,
      "type": "CheckpointLoaderSimple",
      "pos": [
        0,
        0
      ],
      "size": {
        "0": 315,
        "1": 98
      },
      "flags": {},
      "order": 0,
      "mode": 0,
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            1
          ],
          "slot_index": 0
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            2,
            3
          ],
          "slot_index": 1
        },
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            4
          ],
          "slot_index": 2
        }
      ],
      "properties": {
        "Node name for S&R": "CheckpointLoaderSimple"
      },
      "widgets_values": [
        "v1-5-pruned-emaonly.safetensors"
      ]
    },
    {
      "id": 2,
      "type": "CLIPTextEncode",
      "pos": [
        350,
        0
      ],
      "size": {
        "0": 400,
        "1": 200
      },
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            5
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "photograph of a tree in a truck in an enclosed sterle lab"
      ]
    },
    {
      "id": 3,
      "type": "CLIPTextEncode",
      "pos": [
        350,
        250
      ],
      "size": {
        "0": 400,
        "1": 200
      },
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 3
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            6
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        ""
      ]
    },
    {
      "id": 4,
      "type": "EmptyLatentImage",
      "pos": [
        0,
        150
      ],
      "size": {
        "0": 315,
        "1": 106
      },
      "flags": {},
      "order": 3,
      "mode": 0,
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            7
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "EmptyLatentImage"
      },
      "widgets_values": [
        512,
        512,
        1
      ]
    },
    {
      "id": 5,
      "type": "KSampler",
      "pos": [
        800,
        0
      ],
      "size": {
        "0": 315,
        "1": 262
      },
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 1
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 5
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 6
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 7
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            8
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "KSampler"
      },
      "widgets_values": [
        0,
        "fixed",
        20,
        7,
        "euler",
        "normal",
        1
      ]
    },
    {
      "id": 6,
      "type": "VAEDecode",
      "pos": [
        1150,
        0
      ],
      "size": {
        "0": 210,
        "1": 46
      },
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 8
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 4
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            9
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "VAEDecode"
      }
    },
    {
      "id": 7,
      "type": "SaveImage",
      "pos": [
        1400,
        0
      ],
      "size": {
        "0": 315,
        "1": 270
      },
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 9
        }
      ],
      "properties": {},
      "widgets_values": [
        "ComfyUI"
      ]
    }
  ],
  "links": [
    [
      1,
      1,
      0,
      5,
      0,
      "MODEL"
    ],
    [
      2,
      1,
      1,
      2,
      0,
      "CLIP"
    ],
    [
      3,
      1,
      1,
      3,
      0,
      "CLIP"
    ],
    [
      4,
      1,
      2,
      6,
      1,
      "VAE"
    ],
    [
      5,
      2,
      0,
      5,
      1,
      "CONDITIONING"
    ],
    [
      6,
      3,
      0,
      5,
      2,
      "CONDITIONING"
    ],
    [
      7,
      4,
      0,
      5,
      3,
      "LATENT"
    ],
    [
      8,
      5,
      0,
      6,
      0,
      "LATENT"
    ],
    [
      9,
      6,
      0,
      7,
      0,
      "IMAGE"
    ]
  ],
  "groups": [],
  "config": {},
  "extra": {},
  "version": 0.4
}
George Legrady
legrady@mat.ucsb.edu

chongyang
Posts: 3
Joined: Wed Jan 14, 2026 10:37 am

Re: Project 2: pure pixel-based blurring

Post by chongyang » Thu Feb 05, 2026 1:08 pm

ComfyUI Workflow:
截屏2026-02-05 02.10.03.png

Original image:
DSC4093-Edit2-Edit.jpg
Focus on Subject/Background:
截屏2026-02-05 13.10.22.png

MOTIVATION
I aim to simulate the effect of lens depth of field in a beach landscape photograph: maintaining sharpness in the foreground (rocks with shells) while smoothly blurring the mid-to-background. This involves comparing the visual outcomes and controllability between pure pixel-based blurring (manual masking + blur) and AI-driven local repainting (img2img/KSampler).

METHODOLOGY
Automatically generate a preliminary mask using Canny → morphology, manually refine it, and apply edge feathering with FeatherMask for a smooth foreground transition.
截屏2026-02-05 13.09.44.png

Method A (Manual): Apply ImageBlur to the entire image, then use the mask to preserve the foreground and composite the blurred background back in.
Method B (AI): Encode the original image into latent space, then use KSampler to locally repaint the mask region with the prompt “creamy bokeh / large circular highlights”; compare effects with different denoise values (0.2/0.5/0.8) and feathering values (4/16/40).

I use Preview to inspect intermediate outputs (mask, feathering, blurred image, composite result) and save sample images.

EVALUATION / ANALYSIS
Manual compositing delivers highest fidelity and detail preservation, rock textures and lighting remain virtually unchanged, serving as an ideal retouching baseline.
For foreground preservation: Feathering and morphological operations (erode/dilate) are crucial for preventing foreground intrusion; a common strategy is to first erode (shrink white areas), then feather, before compositing or generating.

glegrady
Posts: 232
Joined: Wed Sep 22, 2010 12:26 pm

Re: Project 2: A comfyUI XYPlot to print out each image individually

Post by glegrady » Thu Feb 05, 2026 5:15 pm

A comfyUI XYPlot to print out each image individually

MOTIVATION: In Automatic1111 when creating a XYPlot you get the grid of images, but you also get each individual image saved. So I want to do this in comfyUI. Maybe there is a workflow solution but I have not found it yet.

METHODOLOGY: So ChatGPT gave me the attached solution where each combined setting produces its own images.

EVALUATION / ANALYSIS: The results are good but now I have to save each image individually. I will try to figure out if there is a more efficient solution.

Code: Select all

{
  "last_node_id": 85,
  "last_link_id": 255,
  "nodes": [
    {
      "id": 1,
      "type": "CheckpointLoaderSimple",
      "pos": [50, 50],
      "size": [315, 98],
      "flags": {},
      "order": 0,
      "mode": 0,
      "outputs": [
        {"name": "MODEL", "type": "MODEL", "links": [1, 10, 19, 28, 37, 46, 55, 64, 73, 82, 91, 100, 109, 118, 127, 136, 145, 154, 163, 172, 181], "slot_index": 0},
        {"name": "CLIP", "type": "CLIP", "links": [2, 3], "slot_index": 1},
        {"name": "VAE", "type": "VAE", "links": [4, 13, 22, 31, 40, 49, 58, 67, 76, 85, 94, 103, 112, 121, 130, 139, 148, 157, 166, 175, 184], "slot_index": 2}
      ],
      "properties": {"Node name for S&R": "CheckpointLoaderSimple"},
      "widgets_values": ["v1-5-pruned-emaonly.safetensors"]
    },
    {
      "id": 2,
      "type": "CLIPTextEncode",
      "pos": [400, 50],
      "size": [400, 200],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [{"name": "clip", "type": "CLIP", "link": 2}],
      "outputs": [{"name": "CONDITIONING", "type": "CONDITIONING", "links": [5, 14, 23, 32, 41, 50, 59, 68, 77, 86, 95, 104, 113, 122, 131, 140, 149, 158, 167, 176, 185], "slot_index": 0}],
      "properties": {"Node name for S&R": "CLIPTextEncode"},
      "widgets_values": ["tree out of a truck in a lab"]
    },
    {
      "id": 3,
      "type": "CLIPTextEncode",
      "pos": [400, 300],
      "size": [400, 200],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [{"name": "clip", "type": "CLIP", "link": 3}],
      "outputs": [{"name": "CONDITIONING", "type": "CONDITIONING", "links": [6, 15, 24, 33, 42, 51, 60, 69, 78, 87, 96, 105, 114, 123, 132, 141, 150, 159, 168, 177, 186], "slot_index": 0}],
      "properties": {"Node name for S&R": "CLIPTextEncode"},
      "widgets_values": ["text, watermark"]
    },
    {
      "id": 4,
      "type": "EmptyLatentImage",
      "pos": [50, 200],
      "size": [315, 106],
      "flags": {},
      "order": 3,
      "mode": 0,
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [7, 16, 25, 34, 43, 52, 61, 70, 79, 88, 97, 106, 115, 124, 133, 142, 151, 160, 169, 178, 187], "slot_index": 0}],
      "properties": {"Node name for S&R": "EmptyLatentImage"},
      "widgets_values": [832, 576, 1]
    },
    {
      "id": 5,
      "type": "KSampler",
      "pos": [850, 50],
      "size": [315, 262],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 1},
        {"name": "positive", "type": "CONDITIONING", "link": 5},
        {"name": "negative", "type": "CONDITIONING", "link": 6},
        {"name": "latent_image", "type": "LATENT", "link": 7}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [8], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 9.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 6,
      "type": "VAEDecode",
      "pos": [1200, 50],
      "size": [210, 46],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 8},
        {"name": "vae", "type": "VAE", "link": 4}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [9], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 7,
      "type": "SaveImage",
      "pos": [1450, 50],
      "size": [210, 270],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 9}],
      "properties": {},
      "widgets_values": ["01_CFG9_Seed1"]
    },
    {
      "id": 8,
      "type": "KSampler",
      "pos": [850, 400],
      "size": [315, 262],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 10},
        {"name": "positive", "type": "CONDITIONING", "link": 14},
        {"name": "negative", "type": "CONDITIONING", "link": 15},
        {"name": "latent_image", "type": "LATENT", "link": 16}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [11], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 8.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 9,
      "type": "VAEDecode",
      "pos": [1200, 400],
      "size": [210, 46],
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 11},
        {"name": "vae", "type": "VAE", "link": 13}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [12], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 10,
      "type": "SaveImage",
      "pos": [1450, 400],
      "size": [210, 270],
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 12}],
      "properties": {},
      "widgets_values": ["02_CFG8_Seed1"]
    },
    {
      "id": 11,
      "type": "KSampler",
      "pos": [850, 750],
      "size": [315, 262],
      "flags": {},
      "order": 10,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 19},
        {"name": "positive", "type": "CONDITIONING", "link": 23},
        {"name": "negative", "type": "CONDITIONING", "link": 24},
        {"name": "latent_image", "type": "LATENT", "link": 25}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [20], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 7.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 12,
      "type": "VAEDecode",
      "pos": [1200, 750],
      "size": [210, 46],
      "flags": {},
      "order": 11,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 20},
        {"name": "vae", "type": "VAE", "link": 22}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [21], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 13,
      "type": "SaveImage",
      "pos": [1450, 750],
      "size": [210, 270],
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 21}],
      "properties": {},
      "widgets_values": ["03_CFG7_Seed1"]
    },
    {
      "id": 14,
      "type": "KSampler",
      "pos": [850, 1100],
      "size": [315, 262],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 28},
        {"name": "positive", "type": "CONDITIONING", "link": 32},
        {"name": "negative", "type": "CONDITIONING", "link": 33},
        {"name": "latent_image", "type": "LATENT", "link": 34}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [29], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 6.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 15,
      "type": "VAEDecode",
      "pos": [1200, 1100],
      "size": [210, 46],
      "flags": {},
      "order": 14,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 29},
        {"name": "vae", "type": "VAE", "link": 31}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [30], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 16,
      "type": "SaveImage",
      "pos": [1450, 1100],
      "size": [210, 270],
      "flags": {},
      "order": 15,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 30}],
      "properties": {},
      "widgets_values": ["04_CFG6_Seed1"]
    },
    {
      "id": 17,
      "type": "KSampler",
      "pos": [850, 1450],
      "size": [315, 262],
      "flags": {},
      "order": 16,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 37},
        {"name": "positive", "type": "CONDITIONING", "link": 41},
        {"name": "negative", "type": "CONDITIONING", "link": 42},
        {"name": "latent_image", "type": "LATENT", "link": 43}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [38], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 5.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 18,
      "type": "VAEDecode",
      "pos": [1200, 1450],
      "size": [210, 46],
      "flags": {},
      "order": 17,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 38},
        {"name": "vae", "type": "VAE", "link": 40}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [39], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 19,
      "type": "SaveImage",
      "pos": [1450, 1450],
      "size": [210, 270],
      "flags": {},
      "order": 18,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 39}],
      "properties": {},
      "widgets_values": ["05_CFG5_Seed1"]
    },
    {
      "id": 20,
      "type": "KSampler",
      "pos": [850, 1800],
      "size": [315, 262],
      "flags": {},
      "order": 19,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 46},
        {"name": "positive", "type": "CONDITIONING", "link": 50},
        {"name": "negative", "type": "CONDITIONING", "link": 51},
        {"name": "latent_image", "type": "LATENT", "link": 52}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [47], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 4.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 21,
      "type": "VAEDecode",
      "pos": [1200, 1800],
      "size": [210, 46],
      "flags": {},
      "order": 20,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 47},
        {"name": "vae", "type": "VAE", "link": 49}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [48], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 22,
      "type": "SaveImage",
      "pos": [1450, 1800],
      "size": [210, 270],
      "flags": {},
      "order": 21,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 48}],
      "properties": {},
      "widgets_values": ["06_CFG4_Seed1"]
    },
    {
      "id": 23,
      "type": "KSampler",
      "pos": [850, 2150],
      "size": [315, 262],
      "flags": {},
      "order": 22,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 55},
        {"name": "positive", "type": "CONDITIONING", "link": 59},
        {"name": "negative", "type": "CONDITIONING", "link": 60},
        {"name": "latent_image", "type": "LATENT", "link": 61}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [56], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765839, "fixed", 30, 3.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 24,
      "type": "VAEDecode",
      "pos": [1200, 2150],
      "size": [210, 46],
      "flags": {},
      "order": 23,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 56},
        {"name": "vae", "type": "VAE", "link": 58}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [57], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 25,
      "type": "SaveImage",
      "pos": [1450, 2150],
      "size": [210, 270],
      "flags": {},
      "order": 24,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 57}],
      "properties": {},
      "widgets_values": ["07_CFG3_Seed1"]
    },
    {
      "id": 26,
      "type": "KSampler",
      "pos": [1800, 50],
      "size": [315, 262],
      "flags": {},
      "order": 25,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 64},
        {"name": "positive", "type": "CONDITIONING", "link": 68},
        {"name": "negative", "type": "CONDITIONING", "link": 69},
        {"name": "latent_image", "type": "LATENT", "link": 70}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [65], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 9.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 27,
      "type": "VAEDecode",
      "pos": [2150, 50],
      "size": [210, 46],
      "flags": {},
      "order": 26,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 65},
        {"name": "vae", "type": "VAE", "link": 67}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [66], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 28,
      "type": "SaveImage",
      "pos": [2400, 50],
      "size": [210, 270],
      "flags": {},
      "order": 27,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 66}],
      "properties": {},
      "widgets_values": ["08_CFG9_Seed2"]
    },
    {
      "id": 29,
      "type": "KSampler",
      "pos": [1800, 400],
      "size": [315, 262],
      "flags": {},
      "order": 28,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 73},
        {"name": "positive", "type": "CONDITIONING", "link": 77},
        {"name": "negative", "type": "CONDITIONING", "link": 78},
        {"name": "latent_image", "type": "LATENT", "link": 79}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [74], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 8.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 30,
      "type": "VAEDecode",
      "pos": [2150, 400],
      "size": [210, 46],
      "flags": {},
      "order": 29,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 74},
        {"name": "vae", "type": "VAE", "link": 76}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [75], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 31,
      "type": "SaveImage",
      "pos": [2400, 400],
      "size": [210, 270],
      "flags": {},
      "order": 30,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 75}],
      "properties": {},
      "widgets_values": ["09_CFG8_Seed2"]
    },
    {
      "id": 32,
      "type": "KSampler",
      "pos": [1800, 750],
      "size": [315, 262],
      "flags": {},
      "order": 31,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 82},
        {"name": "positive", "type": "CONDITIONING", "link": 86},
        {"name": "negative", "type": "CONDITIONING", "link": 87},
        {"name": "latent_image", "type": "LATENT", "link": 88}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [83], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 7.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 33,
      "type": "VAEDecode",
      "pos": [2150, 750],
      "size": [210, 46],
      "flags": {},
      "order": 32,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 83},
        {"name": "vae", "type": "VAE", "link": 85}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [84], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 34,
      "type": "SaveImage",
      "pos": [2400, 750],
      "size": [210, 270],
      "flags": {},
      "order": 33,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 84}],
      "properties": {},
      "widgets_values": ["10_CFG7_Seed2"]
    },
    {
      "id": 35,
      "type": "KSampler",
      "pos": [1800, 1100],
      "size": [315, 262],
      "flags": {},
      "order": 34,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 91},
        {"name": "positive", "type": "CONDITIONING", "link": 95},
        {"name": "negative", "type": "CONDITIONING", "link": 96},
        {"name": "latent_image", "type": "LATENT", "link": 97}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [92], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 6.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 36,
      "type": "VAEDecode",
      "pos": [2150, 1100],
      "size": [210, 46],
      "flags": {},
      "order": 35,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 92},
        {"name": "vae", "type": "VAE", "link": 94}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [93], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 37,
      "type": "SaveImage",
      "pos": [2400, 1100],
      "size": [210, 270],
      "flags": {},
      "order": 36,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 93}],
      "properties": {},
      "widgets_values": ["11_CFG6_Seed2"]
    },
    {
      "id": 38,
      "type": "KSampler",
      "pos": [1800, 1450],
      "size": [315, 262],
      "flags": {},
      "order": 37,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 100},
        {"name": "positive", "type": "CONDITIONING", "link": 104},
        {"name": "negative", "type": "CONDITIONING", "link": 105},
        {"name": "latent_image", "type": "LATENT", "link": 106}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [101], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 5.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 39,
      "type": "VAEDecode",
      "pos": [2150, 1450],
      "size": [210, 46],
      "flags": {},
      "order": 38,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 101},
        {"name": "vae", "type": "VAE", "link": 103}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [102], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 40,
      "type": "SaveImage",
      "pos": [2400, 1450],
      "size": [210, 270],
      "flags": {},
      "order": 39,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 102}],
      "properties": {},
      "widgets_values": ["12_CFG5_Seed2"]
    },
    {
      "id": 41,
      "type": "KSampler",
      "pos": [1800, 1800],
      "size": [315, 262],
      "flags": {},
      "order": 40,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 109},
        {"name": "positive", "type": "CONDITIONING", "link": 113},
        {"name": "negative", "type": "CONDITIONING", "link": 114},
        {"name": "latent_image", "type": "LATENT", "link": 115}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [110], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 4.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 42,
      "type": "VAEDecode",
      "pos": [2150, 1800],
      "size": [210, 46],
      "flags": {},
      "order": 41,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 110},
        {"name": "vae", "type": "VAE", "link": 112}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [111], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 43,
      "type": "SaveImage",
      "pos": [2400, 1800],
      "size": [210, 270],
      "flags": {},
      "order": 42,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 111}],
      "properties": {},
      "widgets_values": ["13_CFG4_Seed2"]
    },
    {
      "id": 44,
      "type": "KSampler",
      "pos": [1800, 2150],
      "size": [315, 262],
      "flags": {},
      "order": 43,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 118},
        {"name": "positive", "type": "CONDITIONING", "link": 122},
        {"name": "negative", "type": "CONDITIONING", "link": 123},
        {"name": "latent_image", "type": "LATENT", "link": 124}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [119], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765840, "fixed", 30, 3.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 45,
      "type": "VAEDecode",
      "pos": [2150, 2150],
      "size": [210, 46],
      "flags": {},
      "order": 44,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 119},
        {"name": "vae", "type": "VAE", "link": 121}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [120], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 46,
      "type": "SaveImage",
      "pos": [2400, 2150],
      "size": [210, 270],
      "flags": {},
      "order": 45,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 120}],
      "properties": {},
      "widgets_values": ["14_CFG3_Seed2"]
    },
    {
      "id": 47,
      "type": "KSampler",
      "pos": [2750, 50],
      "size": [315, 262],
      "flags": {},
      "order": 46,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 127},
        {"name": "positive", "type": "CONDITIONING", "link": 131},
        {"name": "negative", "type": "CONDITIONING", "link": 132},
        {"name": "latent_image", "type": "LATENT", "link": 133}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [128], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 9.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 48,
      "type": "VAEDecode",
      "pos": [3100, 50],
      "size": [210, 46],
      "flags": {},
      "order": 47,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 128},
        {"name": "vae", "type": "VAE", "link": 130}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [129], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 49,
      "type": "SaveImage",
      "pos": [3350, 50],
      "size": [210, 270],
      "flags": {},
      "order": 48,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 129}],
      "properties": {},
      "widgets_values": ["15_CFG9_Seed3"]
    },
    {
      "id": 50,
      "type": "KSampler",
      "pos": [2750, 400],
      "size": [315, 262],
      "flags": {},
      "order": 49,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 136},
        {"name": "positive", "type": "CONDITIONING", "link": 140},
        {"name": "negative", "type": "CONDITIONING", "link": 141},
        {"name": "latent_image", "type": "LATENT", "link": 142}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [137], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 8.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 51,
      "type": "VAEDecode",
      "pos": [3100, 400],
      "size": [210, 46],
      "flags": {},
      "order": 50,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 137},
        {"name": "vae", "type": "VAE", "link": 139}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [138], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 52,
      "type": "SaveImage",
      "pos": [3350, 400],
      "size": [210, 270],
      "flags": {},
      "order": 51,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 138}],
      "properties": {},
      "widgets_values": ["16_CFG8_Seed3"]
    },
    {
      "id": 53,
      "type": "KSampler",
      "pos": [2750, 750],
      "size": [315, 262],
      "flags": {},
      "order": 52,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 145},
        {"name": "positive", "type": "CONDITIONING", "link": 149},
        {"name": "negative", "type": "CONDITIONING", "link": 150},
        {"name": "latent_image", "type": "LATENT", "link": 151}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [146], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 7.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 54,
      "type": "VAEDecode",
      "pos": [3100, 750],
      "size": [210, 46],
      "flags": {},
      "order": 53,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 146},
        {"name": "vae", "type": "VAE", "link": 148}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [147], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 55,
      "type": "SaveImage",
      "pos": [3350, 750],
      "size": [210, 270],
      "flags": {},
      "order": 54,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 147}],
      "properties": {},
      "widgets_values": ["17_CFG7_Seed3"]
    },
    {
      "id": 56,
      "type": "KSampler",
      "pos": [2750, 1100],
      "size": [315, 262],
      "flags": {},
      "order": 55,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 154},
        {"name": "positive", "type": "CONDITIONING", "link": 158},
        {"name": "negative", "type": "CONDITIONING", "link": 159},
        {"name": "latent_image", "type": "LATENT", "link": 160}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [155], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 6.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 57,
      "type": "VAEDecode",
      "pos": [3100, 1100],
      "size": [210, 46],
      "flags": {},
      "order": 56,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 155},
        {"name": "vae", "type": "VAE", "link": 157}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [156], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 58,
      "type": "SaveImage",
      "pos": [3350, 1100],
      "size": [210, 270],
      "flags": {},
      "order": 57,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 156}],
      "properties": {},
      "widgets_values": ["18_CFG6_Seed3"]
    },
    {
      "id": 59,
      "type": "KSampler",
      "pos": [2750, 1450],
      "size": [315, 262],
      "flags": {},
      "order": 58,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 163},
        {"name": "positive", "type": "CONDITIONING", "link": 167},
        {"name": "negative", "type": "CONDITIONING", "link": 168},
        {"name": "latent_image", "type": "LATENT", "link": 169}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [164], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 5.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 60,
      "type": "VAEDecode",
      "pos": [3100, 1450],
      "size": [210, 46],
      "flags": {},
      "order": 59,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 164},
        {"name": "vae", "type": "VAE", "link": 166}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [165], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 61,
      "type": "SaveImage",
      "pos": [3350, 1450],
      "size": [210, 270],
      "flags": {},
      "order": 60,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 165}],
      "properties": {},
      "widgets_values": ["19_CFG5_Seed3"]
    },
    {
      "id": 62,
      "type": "KSampler",
      "pos": [2750, 1800],
      "size": [315, 262],
      "flags": {},
      "order": 61,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 172},
        {"name": "positive", "type": "CONDITIONING", "link": 176},
        {"name": "negative", "type": "CONDITIONING", "link": 177},
        {"name": "latent_image", "type": "LATENT", "link": 178}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [173], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 4.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 63,
      "type": "VAEDecode",
      "pos": [3100, 1800],
      "size": [210, 46],
      "flags": {},
      "order": 62,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 173},
        {"name": "vae", "type": "VAE", "link": 175}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [174], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 64,
      "type": "SaveImage",
      "pos": [3350, 1800],
      "size": [210, 270],
      "flags": {},
      "order": 63,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 174}],
      "properties": {},
      "widgets_values": ["20_CFG4_Seed3"]
    },
    {
      "id": 65,
      "type": "KSampler",
      "pos": [2750, 2150],
      "size": [315, 262],
      "flags": {},
      "order": 64,
      "mode": 0,
      "inputs": [
        {"name": "model", "type": "MODEL", "link": 181},
        {"name": "positive", "type": "CONDITIONING", "link": 185},
        {"name": "negative", "type": "CONDITIONING", "link": 186},
        {"name": "latent_image", "type": "LATENT", "link": 187}
      ],
      "outputs": [{"name": "LATENT", "type": "LATENT", "links": [182], "slot_index": 0}],
      "properties": {"Node name for S&R": "KSampler"},
      "widgets_values": [80552464765841, "fixed", 30, 3.0, "dpmpp_2m", "karras", 1]
    },
    {
      "id": 66,
      "type": "VAEDecode",
      "pos": [3100, 2150],
      "size": [210, 46],
      "flags": {},
      "order": 65,
      "mode": 0,
      "inputs": [
        {"name": "samples", "type": "LATENT", "link": 182},
        {"name": "vae", "type": "VAE", "link": 184}
      ],
      "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [183], "slot_index": 0}],
      "properties": {"Node name for S&R": "VAEDecode"}
    },
    {
      "id": 67,
      "type": "SaveImage",
      "pos": [3350, 2150],
      "size": [210, 270],
      "flags": {},
      "order": 66,
      "mode": 0,
      "inputs": [{"name": "images", "type": "IMAGE", "link": 183}],
      "properties": {},
      "widgets_values": ["21_CFG3_Seed3"]
    }
  ],
  "links": [
    [1, 1, 0, 5, 0, "MODEL"],
    [2, 1, 1, 2, 0, "CLIP"],
    [3, 1, 1, 3, 0, "CLIP"],
    [4, 1, 2, 6, 1, "VAE"],
    [5, 2, 0, 5, 1, "CONDITIONING"],
    [6, 3, 0, 5, 2, "CONDITIONING"],
    [7, 4, 0, 5, 3, "LATENT"],
    [8, 5, 0, 6, 0, "LATENT"],
    [9, 6, 0, 7, 0, "IMAGE"],
    [10, 1, 0, 8, 0, "MODEL"],
    [11, 8, 0, 9, 0, "LATENT"],
    [12, 9, 0, 10, 0, "IMAGE"],
    [13, 1, 2, 9, 1, "VAE"],
    [14, 2, 0, 8, 1, "CONDITIONING"],
    [15, 3, 0, 8, 2, "CONDITIONING"],
    [16, 4, 0, 8, 3, "LATENT"],
    [19, 1, 0, 11, 0, "MODEL"],
    [20, 11, 0, 12, 0, "LATENT"],
    [21, 12, 0, 13, 0, "IMAGE"],
    [22, 1, 2, 12, 1, "VAE"],
    [23, 2, 0, 11, 1, "CONDITIONING"],
    [24, 3, 0, 11, 2, "CONDITIONING"],
    [25, 4, 0, 11, 3, "LATENT"],
    [28, 1, 0, 14, 0, "MODEL"],
    [29, 14, 0, 15, 0, "LATENT"],
    [30, 15, 0, 16, 0, "IMAGE"],
    [31, 1, 2, 15, 1, "VAE"],
    [32, 2, 0, 14, 1, "CONDITIONING"],
    [33, 3, 0, 14, 2, "CONDITIONING"],
    [34, 4, 0, 14, 3, "LATENT"],
    [37, 1, 0, 17, 0, "MODEL"],
    [38, 17, 0, 18, 0, "LATENT"],
    [39, 18, 0, 19, 0, "IMAGE"],
    [40, 1, 2, 18, 1, "VAE"],
    [41, 2, 0, 17, 1, "CONDITIONING"],
    [42, 3, 0, 17, 2, "CONDITIONING"],
    [43, 4, 0, 17, 3, "LATENT"],
    [46, 1, 0, 20, 0, "MODEL"],
    [47, 20, 0, 21, 0, "LATENT"],
    [48, 21, 0, 22, 0, "IMAGE"],
    [49, 1, 2, 21, 1, "VAE"],
    [50, 2, 0, 20, 1, "CONDITIONING"],
    [51, 3, 0, 20, 2, "CONDITIONING"],
    [52, 4, 0, 20, 3, "LATENT"],
    [55, 1, 0, 23, 0, "MODEL"],
    [56, 23, 0, 24, 0, "LATENT"],
    [57, 24, 0, 25, 0, "IMAGE"],
    [58, 1, 2, 24, 1, "VAE"],
    [59, 2, 0, 23, 1, "CONDITIONING"],
    [60, 3, 0, 23, 2, "CONDITIONING"],
    [61, 4, 0, 23, 3, "LATENT"],
    [64, 1, 0, 26, 0, "MODEL"],
    [65, 26, 0, 27, 0, "LATENT"],
    [66, 27, 0, 28, 0, "IMAGE"],
    [67, 1, 2, 27, 1, "VAE"],
    [68, 2, 0, 26, 1, "CONDITIONING"],
    [69, 3, 0, 26, 2, "CONDITIONING"],
    [70, 4, 0, 26, 3, "LATENT"],
    [73, 1, 0, 29, 0, "MODEL"],
    [74, 29, 0, 30, 0, "LATENT"],
    [75, 30, 0, 31, 0, "IMAGE"],
    [76, 1, 2, 30, 1, "VAE"],
    [77, 2, 0, 29, 1, "CONDITIONING"],
    [78, 3, 0, 29, 2, "CONDITIONING"],
    [79, 4, 0, 29, 3, "LATENT"],
    [82, 1, 0, 32, 0, "MODEL"],
    [83, 32, 0, 33, 0, "LATENT"],
    [84, 33, 0, 34, 0, "IMAGE"],
    [85, 1, 2, 33, 1, "VAE"],
    [86, 2, 0, 32, 1, "CONDITIONING"],
    [87, 3, 0, 32, 2, "CONDITIONING"],
    [88, 4, 0, 32, 3, "LATENT"],
    [91, 1, 0, 35, 0, "MODEL"],
    [92, 35, 0, 36, 0, "LATENT"],
    [93, 36, 0, 37, 0, "IMAGE"],
    [94, 1, 2, 36, 1, "VAE"],
    [95, 2, 0, 35, 1, "CONDITIONING"],
    [96, 3, 0, 35, 2, "CONDITIONING"],
    [97, 4, 0, 35, 3, "LATENT"],
    [100, 1, 0, 38, 0, "MODEL"],
    [101, 38, 0, 39, 0, "LATENT"],
    [102, 39, 0, 40, 0, "IMAGE"],
    [103, 1, 2, 39, 1, "VAE"],
    [104, 2, 0, 38, 1, "CONDITIONING"],
    [105, 3, 0, 38, 2, "CONDITIONING"],
    [106, 4, 0, 38, 3, "LATENT"],
    [109, 1, 0, 41, 0, "MODEL"],
    [110, 41, 0, 42, 0, "LATENT"],
    [111, 42, 0, 43, 0, "IMAGE"],
    [112, 1, 2, 42, 1, "VAE"],
    [113, 2, 0, 41, 1, "CONDITIONING"],
    [114, 3, 0, 41, 2, "CONDITIONING"],
    [115, 4, 0, 41, 3, "LATENT"],
    [118, 1, 0, 44, 0, "MODEL"],
    [119, 44, 0, 45, 0, "LATENT"],
    [120, 45, 0, 46, 0, "IMAGE"],
    [121, 1, 2, 45, 1, "VAE"],
    [122, 2, 0, 44, 1, "CONDITIONING"],
    [123, 3, 0, 44, 2, "CONDITIONING"],
    [124, 4, 0, 44, 3, "LATENT"],
    [127, 1, 0, 47, 0, "MODEL"],
    [128, 47, 0, 48, 0, "LATENT"],
    [129, 48, 0, 49, 0, "IMAGE"],
    [130, 1, 2, 48, 1, "VAE"],
    [131, 2, 0, 47, 1, "CONDITIONING"],
    [132, 3, 0, 47, 2, "CONDITIONING"],
    [133, 4, 0, 47, 3, "LATENT"],
    [136, 1, 0, 50, 0, "MODEL"],
    [137, 50, 0, 51, 0, "LATENT"],
    [138, 51, 0, 52, 0, "IMAGE"],
    [139, 1, 2, 51, 1, "VAE"],
    [140, 2, 0, 50, 1, "CONDITIONING"],
    [141, 3, 0, 50, 2, "CONDITIONING"],
    [142, 4, 0, 50, 3, "LATENT"],
    [145, 1, 0, 53, 0, "MODEL"],
    [146, 53, 0, 54, 0, "LATENT"],
    [147, 54, 0, 55, 0, "IMAGE"],
    [148, 1, 2, 54, 1, "VAE"],
    [149, 2, 0, 53, 1, "CONDITIONING"],
    [150, 3, 0, 53, 2, "CONDITIONING"],
    [151, 4, 0, 53, 3, "LATENT"],
    [154, 1, 0, 56, 0, "MODEL"],
    [155, 56, 0, 57, 0, "LATENT"],
    [156, 57, 0, 58, 0, "IMAGE"],
    [157, 1, 2, 57, 1, "VAE"],
    [158, 2, 0, 56, 1, "CONDITIONING"],
    [159, 3, 0, 56, 2, "CONDITIONING"],
    [160, 4, 0, 56, 3, "LATENT"],
    [163, 1, 0, 59, 0, "MODEL"],
    [164, 59, 0, 60, 0, "LATENT"],
    [165, 60, 0, 61, 0, "IMAGE"],
    [166, 1, 2, 60, 1, "VAE"],
    [167, 2, 0, 59, 1, "CONDITIONING"],
    [168, 3, 0, 59, 2, "CONDITIONING"],
    [169, 4, 0, 59, 3, "LATENT"],
    [172, 1, 0, 62, 0, "MODEL"],
    [173, 62, 0, 63, 0, "LATENT"],
    [174, 63, 0, 64, 0, "IMAGE"],
    [175, 1, 2, 63, 1, "VAE"],
    [176, 2, 0, 62, 1, "CONDITIONING"],
    [177, 3, 0, 62, 2, "CONDITIONING"],
    [178, 4, 0, 62, 3, "LATENT"],
    [181, 1, 0, 65, 0, "MODEL"],
    [182, 65, 0, 66, 0, "LATENT"],
    [183, 66, 0, 67, 0, "IMAGE"],
    [184, 1, 2, 66, 1, "VAE"],
    [185, 2, 0, 65, 1, "CONDITIONING"],
    [186, 3, 0, 65, 2, "CONDITIONING"],
    [187, 4, 0, 65, 3, "LATENT"]
  ],
  "groups": [],
  "config": {},
  "extra": {},
  "version": 0.4
}
Screenshot 2026-02-04 at 11.20.13 PM.png
21_CFG3_Seed3_00001_.png
George Legrady
legrady@mat.ucsb.edu

chongyang
Posts: 3
Joined: Wed Jan 14, 2026 10:37 am

Re: Project 2: AI method Blurring(KSampler/inpaint)

Post by chongyang » Thu Feb 05, 2026 5:21 pm

MOTIVATION
Generate a photographic shallow-depth-of-field (bokeh) effect on a beach photograph while strictly preserving the foreground rock detail. Compare a safe, non-generative pixel blur baseline with an AI local inpaint (KSampler/img2img) approach to understand trade-offs between fidelity, lens-like appearance, and controllability.

METHODOLOGY
Create and clean a foreground mask (Canny → morphology → erode → FeatherMask). Erode first then feather so the subject edge is protected.
截屏2026-02-05 14.56.41.png
Baseline (pixel method): Gaussian-blur the whole image and composite with the feathered mask to keep the foreground fully sharp.
AI method (KSampler/inpaint): encode the image with VAE Encode (for Inpainting), feed the feathered mask as the inpaint mask, run KSampler with a short positive prompt for bokeh and a strict negative prompt to protect the subject. Use very low denoise (≈0.15–0.22) and a depth map / ControlNet (optional) to guide blur layers; finally blend the generated background back with the blurred baseline to suppress color/texture drift.

Inspect intermediate previews (mask, feather, blurred baseline, produced image) and iterate the three parameters that matter most: erode, feather, and denoise.

EVALUATION / ANALYSIS
ComfyUI_temp_hzirs_00010_.png
• The pixel-blur baseline preserves photographic detail and color perfectly and is the safest option when fidelity is required.
• The AI inpaint/KSampler approach produces a stronger cinematic, lens-like bokeh and richer specular highlights, visually more “photographic” — but it can also alter background structure and occasionally break fine details (bleed or odd artifacts).
• My finding: KSampler gives more cinematic realism in atmosphere and highlights but still sometimes destroys local detail. Next steps: constrain the generator so it only adds bokeh/highlight behavior (low denoise, erode+feather to protect subject, ControlNet depth guidance, and post-blend with the blurred baseline) so generated details are tightly controlled and the foreground remains untouched.

glegrady
Posts: 232
Joined: Wed Sep 22, 2010 12:26 pm

Re: Project 2: Exploring Style Transfer

Post by glegrady » Fri Feb 06, 2026 11:23 am

Exploring Style Transfer

MOTIVATION: Style Transfer uses the style of one image which is transposed onto the content of the other.

METHODOLOGY:
There is a custom plug-in downloaded from here: https://github.com/zeroxoxo/ComfyUI-Fast-Style-Transfer
This is the discussion about the engineering publications: https://github.com/rrmina/fast-neural-style-pytorch

EVALUATION / ANALYSIS
At the moment I have an error: Parent directory /home/expvislab/ComfyUI/custom_nodes/ComfyUI-Fast-Style-Transfer/temp does not exist. It cannot find the "temp" directory where to store the images, but this directory is in place if I look on the hard drive.
Screenshot 2026-02-06 at 11.57.44 AM.png
Screenshot 2026-02-06 at 12.01.55 PM.png

Code: Select all

{
  "id": "0a91639e-57ba-4df3-977e-cd91d6d7856e",
  "revision": 0,
  "last_node_id": 5,
  "last_link_id": 4,
  "nodes": [
    {
      "id": 1,
      "type": "LoadImage",
      "pos": [
        295.14398193359375,
        201.6693572998047
      ],
      "size": [
        315,
        314
      ],
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            2
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.29",
        "Node name for S&R": "LoadImage"
      },
      "widgets_values": [
        "BWtwigs.jpg",
        "image"
      ]
    },
    {
      "id": 2,
      "type": "LoadImage",
      "pos": [
        297.478271484375,
        -166.6992950439453
      ],
      "size": [
        315,
        314
      ],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            1
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.29",
        "Node name for S&R": "LoadImage"
      },
      "widgets_values": [
        "redFlower.jpg",
        "image"
      ]
    },
    {
      "id": 4,
      "type": "PreviewImage",
      "pos": [
        1181.51611328125,
        445.41058349609375
      ],
      "size": [
        210,
        26
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 3
        }
      ],
      "outputs": [],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.29",
        "Node name for S&R": "PreviewImage"
      }
    },
    {
      "id": 3,
      "type": "NeuralStyleTransfer",
      "pos": [
        698.1970825195312,
        101.5912857055664
      ],
      "size": [
        315,
        174
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
        {
          "name": "content_img",
          "type": "IMAGE",
          "link": 1
        },
        {
          "name": "style_img",
          "type": "IMAGE",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            3,
            4
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfyui-fast-style-transfer",
        "ver": "1.0.2",
        "Node name for S&R": "NeuralStyleTransfer"
      },
      "widgets_values": [
        100000,
        30000,
        1,
        100,
        1
      ]
    },
    {
      "id": 5,
      "type": "SaveImage",
      "pos": [
        1333.6533203125,
        141.4588165283203
      ],
      "size": [
        315,
        58
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 4
        }
      ],
      "outputs": [],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.3.29"
      },
      "widgets_values": [
        "StyleTransfer"
      ]
    }
  ],
  "links": [
    [
      1,
      2,
      0,
      3,
      0,
      "IMAGE"
    ],
    [
      2,
      1,
      0,
      3,
      1,
      "IMAGE"
    ],
    [
      3,
      3,
      0,
      4,
      0,
      "IMAGE"
    ],
    [
      4,
      3,
      0,
      5,
      0,
      "IMAGE"
    ]
  ],
  "groups": [],
  "config": {},
  "extra": {
    "ds": {
      "scale": 1.1167815779425023,
      "offset": [
        64.44383697656644,
        303.09344655996887
      ]
    },
    "frontendVersion": "1.16.9"
  },
  "version": 0.4
}
George Legrady
legrady@mat.ucsb.edu

Post Reply