Nodes/ComfyUI-NL_Nodes/⚠️ DEPRECATED NL To Model Space
ComfyUI Node

⚠️ DEPRECATED NL To Model Space

NL To Model Space is deprecated — here's what it did before you delete it

By NOLABEL-VFX·Created 9 months ago·Updated 2 months ago· 0
⚠️ DEPRECATED NL To Model Space
  • images
  • image
  • image_info_json
model_color_spaceUtility - sRGB - Texture
image_info_json

Straight answer first: this node is marked DEPRECATED, the display name literally starts with a warning triangle, and you should not build anything new on it. But if you just loaded an old workflow that still has one sitting between your image input and a KSampler, it's worth knowing what it was doing before you rip it out.

NL To Model Space was the pack's answer to a genuinely real problem: diffusion models are trained on pixels in a specific encoding, and a VFX pipeline's working space is not that encoding. If your images live in ACEScg linear and you hand them to a model that was trained on sRGB-encoded texture values, you get results that look wrong in ways that are hard to diagnose - washed-out, or contrast that's somehow both too high and too low. The node converted your working-space image into the space the model expected, right before the sampler.

How it worked

The images input came in "in NL working space," and model_color_space picked the target from three choices:

  • Utility - Linear - sRGB - true linear values
  • Utility - sRGB - Texture - sRGB encoded texture values, the default
  • Utility - Raw - bypass

Most checkpoints want the sRGB-texture interpretation, which is why it's the default. It also accepted optional image_info_json (the serialized color metadata NL Read stamps on images) and passed image plus image_info_json through on the way out, so the pipeline's metadata stayed intact.

Why it's deprecated

Because the pack's color pipeline grew up. NL Read now owns the input interpretation itself - it resolves input_colorspace from your OCIO config, normalizes into ACEScg, and carries that knowledge forward in image_info_json. Explicit transforms are handled by NL OCIO Convert (real colorspace conversion for pipeline/debug work) and NL Preview Transform (display/preview-only conversion). The "convert at the model boundary" job this node used to do is now split between those nodes and the metadata-aware IO foundation. It's not removed - the pack ships it and old workflows still load - it's just superseded.

Installing and using it

Same pack, so installation is the standard two-step. Manager → search "ComfyUI-NL_Nodes", or:

cd ComfyUI/custom_nodes
git clone https://github.com/NOLABEL-VFX/ComfyUI-NL_Nodes
# restart ComfyUI

Because it's deprecated, don't expect love in the README - the pack's docs describe the current color pipeline, not this node. If a loaded workflow complains it's missing, install the pack and it'll come back.

The one real trap: don't stack this with the newer color nodes. If you've got NL To Model Space and NL OCIO Convert or NL Preview Transform in the same path, you're converting twice and the image will come out the other side wrong. If the old workflow runs fine as-is, leave it alone. If you're touching it anyway, swap in the current nodes and delete this one. It earned its retirement.

CategoryNOLABEL/Color/Deprecated

Inputs (3)

NameTypeDefaultDescription
imagesIMAGEInput image tensor in NL working space.
model_color_spaceCOMBOUtility - sRGB - TextureTarget color space the model expects.
image_info_jsonoptSTRINGSerialized image metadata from upstream NL node.

Outputs (2)

NameTypeDescription
imageIMAGE
image_info_jsonSTRING