Nodes/LF Nodes/LUT Application (filter)
ComfyUI Node

LUT Application (filter)

Applying a color-grade LUT with a live before/after slider

By lucafoscili·Created 2 years ago·Updated about a year ago· 50
LUT Application (filter)
  • image
  • lut_dataset
  • ui_widget
  • image
  • image_list
strength0.50

A LUT (look-up table) is how photo and video color grading gets applied consistently across a batch - think of it as a preset filter that remaps colors according to a fixed formula, the same idea behind an Instagram filter, just typically more deliberate about the color science. LF_LUTApplication is the node that applies one of these to an image inside ComfyUI, with an adjustable strength dial so you're not stuck choosing between full effect and none.

One thing to be upfront about: this node applies a LUT, it doesn't generate one. The lut_dataset input explicitly expects data "generated by LUT Generation Node," per its own tooltip - meaning you need that sibling node from elsewhere in this pack (it's not among the twenty covered in this batch) to actually build the LUT dataset first. If you're only installing based on this article, know you'll need to find and use that generation node too before LF_LUTApplication has anything to work with.

Once you have a lut_dataset, the rest is straightforward: image is your target, strength (0 to 1, default 0.5) controls how much of the effect applies - 0 is no visible change, 1 is the full grade. The node's KUL_COMPARE widget renders the same drag-slider comparison interface used in LF_CompareImages, letting you preview the before and after directly on the node before committing to a strength value. Outputs are image and image_list, the graded result in single and list form. It's flagged as an output node, so results show in the UI without a separate save step, though you'll still want a real save node if you want the file to persist.

Installing it. ComfyUI Manager: search "LF Nodes," install, restart. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/lucafoscili/lf-nodes, then restart. Use that repo - comfyui-lf, comfy.icu's link, is the pack's original, archived home; current development is at lf-nodes. No models to download for this node itself, no heavy dependencies - the LUT data is something you generate or supply, not something the node downloads for you.

Where people get tripped up. By far the most common issue will be reaching for this node expecting it to work standalone, then discovering lut_dataset has no default and nothing valid to plug in without the LUT Generation node upstream - that's not a bug, it's the two-node design: one builds the LUT, this one applies it. Second, strength interacts with how subtle or aggressive your LUT itself is - a strong, high-contrast LUT at strength 1.0 can look drastically different from the same LUT at 0.3, so if a grade looks too intense, turn the dial down before assuming the LUT itself is wrong.

Category✨ LF Nodes/Image

Inputs (4)

NameTypeDefaultDescription
imageIMAGETarget image to which the LUT will be applied.
lut_datasetJSONLUT dataset generated by LUT Generation Node.
strengthFLOAT0.500–1The strength of the filter (from 0 - no effect, to 1 - full effect).
ui_widgetoptKUL_COMPARE[object Object]

Outputs (2)

NameTypeDescription
imageIMAGE
image_listIMAGE