ComfyUI-LatentDetailer
A node for ComfyUI that adjusts a latent image before the VAE decoding step in order to improve your image quality. (Formerly ComfyUI-SpectralVAEDetailer)
It performs a fast latent-space “detail pass”: runs one (or more) extra UNet evaluation(s) at configurable sigma positions, then reinjects controlled high-frequency structure + optional CFG delta, with lightweight post-ops (micrograin, bloom/halation, color drift, chroma controls).
Also published on the Comfy Registry (search for “LatentDetailer”).
View the related thread on Reddit for demo images.
Tip
If the effect is too strong, please check the
example_workflowsfolder for recommended presets!
What it does (high level)
- Computes a denoised estimate from the current latent using UNet at one or more sigma positions (
sigmas). - Extracts / boosts high-frequency structure and reinjects it into the latent (with optional “protect lows” logic).
- Optionally injects a guidance-delta term (CFG delta) to ensure guidance has a visible impact in this stage.
- Optional finishing:
- micrograin injection
- bloom / halation approximation (luma-only)
- color drift
- chromatic aberration (spatial chroma misregistration)
Key inputs
sigmas (STRING)
Comma-delimited list of normalized sigma positions in [0..1].
Each entry triggers one UNet eval; results are averaged.
0.0= early/noisy (largest sigma)1.0= late/clean (smallest sigma)
Examples:
0.40(default)0.25,0.55
Hi-res fix
hires_scale(FLOAT, 1.0–4.0): fractional allowed (e.g. 1.5)hires_strength: how much of the hi-res residual is applied back at 1xhires_use_importance_mask+hires_mask_strength: focuses work where the base latent has more structure
Detail / structure
detail_strength,hf_radius,protect_lows: primary detail reinjection controlsmid_strength: optional mid-frequency shaping
Chroma controls
detail_chroma: scales how strongly detail + CFG injections affect chroma latent channels (1..3).chromatic_aberration: lens-like spatial misregistration applied to chroma channels (1..3) after all other adjustments. Keep subtle (typically ~0.02–0.10).
Bloom / halation
bloom_strength: spreads bright luma highlights (channel 0) into a soft glowbloom_threshold: highlight thresholdbloom_radius: blur radius (bigger = softer, slower)
Grain
noise_scale,noise_radius,noise_flat_suppress: micrograin injection controlsgrain_luma: modulates grain by luma (more in shadows, less in highlights)
Notes
This node is intentionally speed-oriented: by default, it adds only one extra UNet pass plus lightweight tensor ops.
It’s primarily tuned for SDXL photoreal workflows, but can be experimented with on other latent diffusion models.