Nodes/ComfyUI_StarNodes/⭐ Star HDR Effects
ComfyUI Node

⭐ Star HDR Effects

Fake HDR that doesn't look like a cheap Instagram filter

By Starnodes2024·Created 2 years ago·Updated 2 days ago· 106
⭐ Star HDR Effects
  • image
  • image
presetNatural HDR
strength0.70
radius8
local_contrast1.00
global_contrast1.00
saturation1.00
highlight_protection0.50

Let's get the honesty out of the way: this node does not shoot bracketed exposures and merge them. Star HDR Effects is a tone-mapping-style local-contrast boost that imitates HDR's punchy look - the "detail in the shadows, glowing highlights" vibe - in one pass on whatever image you feed it. That's not a knock. The AI images you're fixing already have the dynamic range; what they lack is the local contrast pop that makes a render feel lit. This is the quick way to add it.

How it works

The core is local contrast enhancement built on a radius blur. The math is simple to feel: the node compares each pixel to a blurred version of the neighborhood around it and amplifies the difference. A small radius (1–8) sharpens fine texture; a big one (32–64) produces the broad, moody "halo" that reads as HDR. The author's own comment in the code spells out the tradeoff: bigger radius = more HDR halo. Keep that in mind before you crank it.

The five presets - Natural HDR, Strong HDR, Soft HDR Matte, Detail Boost, and Sky Protect Highlights - just bundle sane settings for each knob. You can then fine-tune on top:

  • strength (0–2, default 0.7) - overall intensity of the effect. This is the master volume.
  • local_contrast / global_contrast (0–3, default 1) - the detail bump vs. the overall image contrast. 1.0 means "no change."
  • saturation (0–3, default 1) - color pop. HDR looks bad when the saturation goes greasy; nudge, don't drown.
  • highlight_protection (0–1, default 0.5) - pulls blown highlights back instead of letting them clip. The "Sky Protect" preset leans on this hard.

One image in, one image out, so it slots anywhere in a post-processing chain - typically right before Save Image, or after an upscale pass to put the snap back in.

Where it fits

In a normal workflow this sits after VAE decode and any upscaler, doing the "final grade" job. It's especially good on soft, washed-out renders from high-CFG runs. Don't put it before a resize - apply it at the size you'll keep, or the local-contrast radius behaves differently and you'll redo it.

Installing

Part of the StarNodes pack - install Starnodes via ComfyUI Manager, or:

cd ComfyUI/custom_nodes
git clone https://github.com/Starnodes2024/ComfyUI_StarNodes
cd ComfyUI_StarNodes
pip install -r requirements.txt

Restart, then search star on the canvas. It's pure Python/Pillow under the hood - no models, no downloads, no GPU requirement beyond what ComfyUI itself needs.

Common issues

The number-one complaint with any fake HDR is the halo, and it's a settings problem: back off radius or lower strength until the glow sits inside edges instead of ringing around them. Second is over-saturation - if the image starts to look like a meme of HDR, drop saturation below 1. And remember global_contrast and saturation both default to 1.0 meaning "identity"; only strength moves the whole effect, so if you're turning the dial and seeing nothing, check you didn't zero the wrong one.

Category⭐StarNodes/Image And Latent

Inputs (8)

NameTypeDefaultDescription
imageIMAGE
presetCOMBONatural HDR5 options: Natural HDR, Strong HDR, Soft HDR Matte, Detail Boost, Sky Protect Highlights
strengthFLOAT0.700–2
radiusINT81–64
local_contrastFLOAT1.000–3
global_contrastFLOAT1.000–3
saturationFLOAT1.000–3
highlight_protectionFLOAT0.500–1

Outputs (1)

NameTypeDescription
imageIMAGE