Nodes/Tenser Tensor/TT Image Enhancer
ComfyUI Node

TT Image Enhancer

One node instead of a five-node color-grade stack

By tenser-tensor·Created 7 months ago·Updated 5 months ago· 0
TT Image Enhancer
  • image
  • IMAGE
brightness_factor0.00
contrast_factor1.00
gamma_factor1.00
gamma_gain1.00
hue_factor0.00
saturation_factor1.00
sharpness_factor0.00
posterize_bits8
solarize_thresholds1.00

TT Image Enhancer is a color-grading console squeezed into one node. Feed it an image and it gives you brightness, contrast, gamma, hue, saturation, sharpness, posterize, and solarize - nine adjustments that in stock ComfyUI mean stringing together a small forest of color nodes. If you've ever built that forest and then wanted to tweak one value, you know why people grab this instead.

It comes from TenserTensor, the pack that exists to fold common node chains into single blocks. This is the postproduction Swiss-army-knife slot.

How the controls work

The defaults are deliberately "no effect," which is the smart part of the design:

  • brightness_factor - ±1.0, 0 is neutral. Negative darkens, positive lifts.
  • contrast_factor - multiplier, 1.0 is neutral. Above 1 punches contrast, below 0.5 gets you the washed-out "filmic" look.
  • gamma_factor and gamma_gain - both default to 1.0. Gamma bends the midtones; gain is the overall multiplier.
  • hue_factor - rotation in radians (−π to π), not degrees. 0 is neutral. This is the one that trips people up: a "90 degree" hue shift is 1.57 here.
  • saturation_factor - multiplier, 1.0 neutral, 0 goes grayscale.
  • sharpness_factor - 0 to 3, default 0. A little goes a long way; past 2 you're making halos.
  • posterize_bits (default 8, no effect) and solarize_thresholds (default 1.0, no effect) - the stylized effects. Posterize at 3–4 bits gives that flat retro-band poster look; solarize at a low threshold inverts highlights.

The adjustments are applied sequentially on a cloned tensor, and the pack uses kornia under the hood for the math. Output is a single IMAGE, so you can chain it before a save node or before an upscaler.

The honest take

For plain brightness/contrast, stock ComfyUI already has nodes, and you shouldn't install a pack for that alone. This node earns its place when you want the whole adjustment set in one panel - say, tuning a LoRA's output so every render gets the same grade, or doing batch color correction. The sequential application matters: adjustments are order-dependent, and the node applies them in a fixed order, so if you want gamma after contrast, this can't do that. That's the price of the single-node convenience.

Install and gotchas

cd ComfyUI/custom_nodes
git clone https://github.com/tenser-tensor/ComfyUI-TenserTensor

Or ComfyUI Manager → "TenserTensor" → install → restart. The pack's requirements.txt lists gguf and kornia; the postproduction code also touches colour (colour-science) and spandrel, which usually ride in with ComfyUI's own dependencies. If this whole node group refuses to load with an import error, those are the first packages to check.

One more thing worth knowing: it's a legacy V1 node. The pack moved to ComfyUI's API V3 and parked V1 nodes in Deprecated/, to be removed in a future major release. The V3 successor lives under the pack's current postproduction section - if the pack ever drops V1, TT Image Enhancer as this exact node disappears with it. Fine to use today; just know the seat you're in.

CategoryTenserTensor/Postproduction

Inputs (10)

NameTypeDefaultDescription
imageIMAGE
brightness_factorFLOAT0.00-1–1
contrast_factorFLOAT1.000–5
gamma_factorFLOAT1.000–3
gamma_gainFLOAT1.000–3
hue_factorFLOAT0.00-3.14–3.14
saturation_factorFLOAT1.000–3
sharpness_factorFLOAT0.000–3
posterize_bitsINT80–8
solarize_thresholdsFLOAT1.000–1

Outputs (1)

NameTypeDescription
IMAGEIMAGE