Nodes/SimpleSyrup/Detail SEGS by Scale Factor w/ Tiled Diffusion
ComfyUI Node

Detail SEGS by Scale Factor w/ Tiled Diffusion

Detail Giant Crops Without Blowing Up Your VRAM

By Artificial-Sweetener·Created 3 months ago·Updated 12 days ago· 2
Detail SEGS by Scale Factor w/ Tiled Diffusion
  • image
  • segs
  • model
  • vae
  • positive
  • negative
  • image
scale_factor1.5
upscale_methodlanczos
clamp_size0
seed0
steps20
cfg8.0
sampler_name
scheduler
denoise0.50
feather5
noise_masktrue
noise_mask_feather20
tiled_encodefalse
tiled_decodefalse
diffusion_modemultidiffusion
latent_tile_width128
latent_tile_height128
latent_tile_overlap16
latent_tile_batch_size4

Here's the gap in the plain scale-factor detailer: it resamples each crop at full size, which is exactly what you want for a small face - and exactly the wrong thing when a detected region is huge. Detail a region that occupies half a 4K frame and the crop alone can exceed your VRAM. Detail SEGS by Scale Factor w/ Tiled Diffusion exists for that case: it's the same crop-refine-paste loop, but the resampling step uses tiled diffusion, so each crop is evaluated in overlapping tiles instead of as one giant latent.

How it works

Everything from Detail SEGS by Scale Factor is here - image, segs, model, vae, a conditioning batch matched one-to-one against SEGS order, scale_factor (1.5), upscale_method (lanczos), clamp_size, sampler controls, feather, noise_mask, tiled_encode/tiled_decode. What's added is the tiled sampling stack:

  • diffusion_mode: multidiffusion (default, averages overlapping predictions - steady) or Mixture of Diffusers (weights tile centers more strongly - softer blend).
  • latent_tile_width / latent_tile_height (128×128): tile size in latent pixels. Bigger tiles see more context, cost more memory.
  • latent_tile_overlap (16): overlap between tiles; more overlap kills seams, costs compute.
  • latent_tile_batch_size (4): tiles sampled per batch; higher is faster, thirstier.

Output is one image with the detailed regions blended back.

When to reach for it

Use this over the plain version when the region is large enough that a full-res crop would be a problem - big background objects, wide full-body regions, anything where the crop approaches or exceeds the sampler's comfortable resolution. The tradeoff is honest: tiled sampling fixes the memory problem but not the comprehension problem. Tiles each see a piece of the crop, and on very large canvases the pieces can lose track of the whole - that's precisely the failure mode SimpleSyrup's Contextual Diffusion was invented to fix, and the README notes this node shares the tiled sampling path with the tiled samplers rather than adding whole-image correction. If you're detailing a crop where composition within the crop matters, keep the tile size generous and the overlap up.

Also worth remembering for any detail pass: do it before upscaling, don't stack passes, and watch for the grey-box seam if the composite edges look off (raise feather).

Install

Ships in the SimpleSyrup pack. ComfyUI Manager → search SimpleSyrup → Install → restart, or:

Set-Location ComfyUI\custom_nodes
git clone https://github.com/Artificial-Sweetener/SimpleSyrup.git
Set-Location SimpleSyrup
..\..\venv\Scripts\python.exe -m pip install -r requirements.txt

Restart ComfyUI; needs a current build (v3 extension API).

Common issues

  • Still out of VRAM - lower tile size or latent_tile_batch_size; those are the two VRAM levers.
  • Seams inside the detailed crop - raise latent_tile_overlap, or switch to Mixture of Diffusers.
  • Region looks locally coherent but composition drifts - that's the tiling comprehension limit; bigger tiles help, and for scene-critical regions consider Detail SEGS as Regions or Contextual Diffusion.
  • Node missing - update ComfyUI first.

It's the detailer for the big-canvas end of the scale-factor family: same loop, tiled guts, one more option when the crop is the problem.

CategorySimpleSyrup/Detailing

Inputs (25)

NameTypeDefaultDescription
imageIMAGESource image containing the regions to improve. Detailed crops are blended back into this image.
segsSEGSSEGS regions that choose which parts of the image are detailed.
modelMODELDiffusion model used to resample each detailed crop.
vaeVAEVAE used to encode crops to latents and decode the edited crops.
positiveCONDITIONING,CONDITIONING_BATCHPositive conditioning for detailing. A conditioning batch is matched to SEGS order.
negativeCONDITIONING,CONDITIONING_BATCHNegative conditioning for detailing. A conditioning batch is matched to SEGS order.
scale_factorFLOAT1.51–5Crop enlargement multiplier. Larger values give the sampler more detail room but use more memory.
upscale_methodCOMBOlanczosResize method for scaled crops. Sharper methods preserve detail but can show more ringing.
clamp_sizeINT00–16384Maximum crop size in pixels after scaling. Use 0 to leave crop size unclamped.
seedINT00–18446744073709550000Seed used to create sampling noise. Reusing it with matching settings makes results repeatable.
stepsINT201–10000Number of denoising steps. More steps can add refinement but take longer.
cfgFLOAT8.00–100Prompt guidance strength. Higher values follow the positive prompt more strongly but can look overcooked.
sampler_nameCOMBOSampling algorithm. It affects the image's look, speed, and stability.
schedulerCOMBONoise schedule used during sampling. It changes how quickly structure and detail form.
denoiseFLOAT0.500–1Sampling strength. Lower values preserve the input more; higher values allow larger changes.
featherINT50–512Mask edge softness in pixels. Higher values blend edits more gently into the image.
noise_maskBOOLEANtrueLimit sampling noise to the selected mask area so unchanged pixels stay more stable.
noise_mask_featherINT200–512Noise mask edge softness in pixels. Higher values make the sampled area fade out more gradually.
tiled_encodeBOOLEANfalseEncode large crops in tiles. This lowers memory use but is usually slower.
tiled_decodeBOOLEANfalseDecode large crops in tiles. This lowers memory use but is usually slower.
diffusion_modeCOMBOmultidiffusionTiled sampling blend method. MultiDiffusion is steady; Mixture of Diffusers can blend tile predictions more softly.
latent_tile_widthINT12816–512Width of each latent tile. Larger tiles see more context but use more memory.
latent_tile_heightINT12816–512Height of each latent tile. Larger tiles see more context but use more memory.
latent_tile_overlapINT160–256Overlap between latent tiles. Larger overlaps reduce seams but increase sampling work.
latent_tile_batch_sizeINT41–8Number of latent tiles sampled together. Higher values can be faster but use more memory.

Outputs (1)

NameTypeDescription
imageIMAGEImage with the detailed regions blended back into place.