Nodes/Krea2 Regional/Krea 2 - Regional Detailer
ComfyUI Node

Krea 2 - Regional Detailer

Krea 2 Regional Detailer finds where the subject actually landed

By januspluto·Created 2 months ago·Updated about a month ago· 9
Krea 2 - Regional Detailer
  • image
  • model
  • vae
  • regions
  • detection_masks
  • segs
  • base_conditioning
  • negative
  • image
  • applied_masks
seed0
steps8
cfg1.0
sampler_name
scheduler
denoise0.25
crop_padding0.25
detail_size1024
feather_px24
mask_grow_px8
shiftmodel default

Here's the honest truth about single-pass regional generation: it's fast, the seams stay soft, but sometimes a character's likeness still gets diluted where masks overlap, or a subject drifts halfway out of its box. Krea 2 - Regional Detailer is the pack's second-pass fix - and unlike most "detailers," it doesn't blindly re-render a box. It figures out where each subject actually landed, re-samples just that subject at high resolution with its region's prompt and LoRAs at full strength, and composites it back through the subject's own silhouette. If a neighbour's arm has wandered into your character's box, it never gets repainted with the wrong identity, because only the detected subject's pixels are touched.

It's Impact Pack's detect-crop-refine loop, but scoped to your regions and your region LoRAs instead of a generic face detector.

How it works

After your KSampler → VAE Decode, run the decoded image through any subject detector - SAM3 (prompt "person") or Impact Pack's Ultralytics person/face detectors both work. Wire the masks into detection_masks (or the SEGS into segs). The node matches detections to your regions by overlap, with a bounded nearest-centre rescue for subjects that drifted out of their box. Each subject is then cropped, resampled at detail_size with its region's conditioning and LoRAs applied plainly (no gating - full strength), and composited back through the detected silhouette. Regions with no matching subject are left untouched. A connected detector that yields no masks aborts loudly instead of silently falling back to box mode - a deliberate choice, because box mode is bleed-prone with overlapping subjects.

The inputs that matter

Required: image, model, vae, regions, plus the sampler set (steps, cfg, sampler_name, scheduler, seed). Two critical wiring rules:

  • model is the base model - NOT Apply Regional's patched output. Each region's LoRAs are applied plainly to a clone per crop.
  • regions comes from the Builder (not Apply Regional's combined conditioning), and base_conditioning should also be the Builder's own output - it's used as the conditioning-extras template and zeroed-negative fallback.

The knob most people tune first is denoise: 0.2–0.3 (0.25 default) tightens likeness while keeping pose stable; 0.35+ starts recomposing inside the silhouette. detail_size (default 1024) sets the resample resolution; crop_padding controls how much context surrounds the subject. mask_grow_px (8) grows the detected silhouette before feathering so hair and edges get repainted too, and feather_px (24) feathers the composite at image resolution.

Outputs

image is the composited result, ready for a Save Image node. The second output, applied_masks, is worth previewing once: it shows exactly which pixels each subject got repainted on, so you can tell at a glance whether the detection matched your regions or whether something fell back to box mode.

The shift trap

shift defaults to "model default," and you should keep it there. It reuses the shift the initial image was generated with, keeping the detail pass in the same schedule regime the composition was created in - which best preserves existing content at low denoise. The "auto" mode recomputes Krea 2 RAW's resolution-derived mu and is RAW-only: Krea 2 Turbo was distilled at a fixed mu of 1.15 and must inherit the first pass's schedule. Put auto on a Turbo image and you'll break the detail pass.

Install

Same pack, same story:

cd ComfyUI/custom_nodes
git clone https://github.com/januspluto/ComfyUI-Krea2-Regional.git

or ComfyUI Manager, search Krea2 Regional. No extra Python dependencies - the detector inputs are duck-typed (it uses whatever SAM3 or Impact Pack already installed). Requires ComfyUI with native Krea 2 support (v0.26+). Video VAEs (WanVAE) are supported end to end.

Common issues

With no detector connected, the node falls back to cropping by the region boxes themselves - fine for well-separated subjects, bleed-prone when they overlap, so prefer detection mode for multi-character images. And a smaller steps count (4–6) is often smoother than 8 for a partial-denoise pass; the node's own notes say fewer steps behaves better here, which is the opposite of what you'd expect from a normal detail pass.

Categoryconditioning/krea2_regional

Inputs (19)

NameTypeDefaultDescription
imageIMAGE
modelMODELThe BASE model (NOT the output of Apply Regional). Each region's LoRAs are applied plainly to a clone per crop.
vaeVAE
regionsKREA2_REGIONSFrom the Builder — carries each region's conditioning, mask, and LoRAs.
seedINT00–18446744073709550000
stepsINT81–100
cfgFLOAT1.00–30
sampler_nameCOMBO44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
denoiseFLOAT0.250–1How much to redraw per subject. With shift on auto the schedule is correctly calibrated, so values bite harder than before: 0.2-0.25 tightens likeness while keeping pose/composition stable; 0.35+ starts recomposing inside the mask.
detection_masksoptMASKOne mask per detected subject (SAM3, SEGS-to-Mask-Batch...). Connecting this switches the node to detection mode: crops follow the detected subjects and only their silhouettes are repainted.
segsoptSEGSImpact Pack detections (person/face). Used when detection_masks is not connected.
base_conditioningoptCONDITIONINGOptional: the Builder's base_conditioning, used as the conditioning-extras template and zeroed-negative fallback.
negativeoptCONDITIONING
crop_paddingoptFLOAT0.250–1Context around the subject, as a fraction of its bbox's longer side.
detail_sizeoptINT1024256–4096The crop is resampled with its longer side at this resolution.
feather_pxoptINT240–256Composite feather at image resolution.
mask_grow_pxoptINT80–128Detection mode: grow the detected silhouette before feathering so hair/edges get repainted too.
shiftoptCOMBOmodel default'model default' (recommended) reuses the shift the initial image was generated with — keeping the detail pass in the same schedule regime the composition was created in, which best preserves existing content at low denoise. 'auto' recomputes Krea 2 RAW's resolution-derived mu. Do not use auto with Turbo: Turbo was distilled at fixed mu=1.15.

Outputs (2)

NameTypeDescription
imageIMAGE
applied_masksMASK