Krea 2 - Regional Detailer
Krea 2 Regional Detailer finds where the subject actually landed
- image
- model
- vae
- regions
- detection_masks
- segs
- base_conditioning
- negative
- image
- applied_masks
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:
modelis the base model - NOT Apply Regional's patched output. Each region's LoRAs are applied plainly to a clone per crop.regionscomes from the Builder (not Apply Regional's combined conditioning), andbase_conditioningshould 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.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| model | MODEL | The BASE model (NOT the output of Apply Regional). Each region's LoRAs are applied plainly to a clone per crop. | |
| vae | VAE | — | |
| regions | KREA2_REGIONS | From the Builder — carries each region's conditioning, mask, and LoRAs. | |
| seed | INT | 00–18446744073709550000 | — |
| steps | INT | 81–100 | — |
| cfg | FLOAT | 1.00–30 | — |
| sampler_name | COMBO | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 | |
| scheduler | COMBO | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 | |
| denoise | FLOAT | 0.250–1 | How 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_masksopt | MASK | One 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. | |
| segsopt | SEGS | Impact Pack detections (person/face). Used when detection_masks is not connected. | |
| base_conditioningopt | CONDITIONING | Optional: the Builder's base_conditioning, used as the conditioning-extras template and zeroed-negative fallback. | |
| negativeopt | CONDITIONING | — | |
| crop_paddingopt | FLOAT | 0.250–1 | Context around the subject, as a fraction of its bbox's longer side. |
| detail_sizeopt | INT | 1024256–4096 | The crop is resampled with its longer side at this resolution. |
| feather_pxopt | INT | 240–256 | Composite feather at image resolution. |
| mask_grow_pxopt | INT | 80–128 | Detection mode: grow the detected silhouette before feathering so hair/edges get repainted too. |
| shiftopt | COMBO | model 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)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| applied_masks | MASK | — |