Image Brightness
It just adds a constant
- image
- IMAGE
Let's be blunt about what this node is: torch.clamp(image + brightness_factor, min=0, max=1). That's the entire implementation - one line of code, and I say that as a compliment. Image Brightness takes an image and shifts every pixel's value up or down by a single number, then clamps the result back into valid range. There's no perceptually-weighted curve, no gamma, no separate black point, no "exposure" cleverness. Add the factor, clamp, done.
It ships inside the PoseKeypoint Mask pack as a spare part. The author's video_to_video example workflow uses it to brighten frames before compositing them, and that's the honest use case: a quick, predictable, cheap brightness nudge in the middle of a graph. It is absolutely not worth installing the whole pack for - if this is all you want, a couple of Math nodes wired to a Brightness/Contrast node already in your setup will do the same job. But if you've got the pack anyway (because you want the keypoint-mask node), it's a fine zero-cost extra.
Inputs and outputs
Only two things matter here.
image- anyIMAGEtensor. Feed it a single frame or a whole batch; the math is elementwise, so video frames and batched images work the same.brightness_factor- a float from -1 to 1, default 0.0is a no-op (the image passes through untouched). Positive brightens, negative darkens, in normalized 0–1 pixel space.
The output is a single IMAGE of the same shape, ready to feed a PreviewImage, ImageCompositeMasked, or on to a VAE encode. Nothing fancy.
How it behaves in practice
Because it's additive in normalized space, brightness_factor of 1 means "add a full unit of white" - that's an enormous jump, nearly always blown out. You'll live in the ±0.05 to ±0.3 range for anything that looks like a normal edit. And remember it clamps: at either extreme you're hard-clipping highlights or shadows, and that information is destroyed, not recoverable. Brightening also lifts your blacks toward gray - there's no offset knob to keep shadow detail anchored while you raise the mids. If you need that level of control, reach for a proper exposure or levels node instead.
One quirk that catches people: it's linear, not perceptual. A factor of 0.1 in the middle of a bright video frame looks like a subtle glint; the same 0.1 on a dark frame looks like a flashlight. Judge by eye against your actual image, not by the number.
Installing it
Same story as its pack-mate - no dependencies, nothing to download:
# ComfyUI Manager: search "PoseKeypoint Mask"
cd ComfyUI/custom_nodes
git clone https://github.com/muzi12888/ComfyUI-PoseKeypoint-Mask
Restart ComfyUI and it appears under image/postprocessing. If you only ever wanted a brightness slider, you can probably skip this whole repo - but if the pose-mask node brought you here, it's a handy throw-in that costs nothing to have around.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| brightness_factor | FLOAT | 0.00-1–1 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |