Nodes/ComfyUI Color Profile Reader/LittleCMS Color Profile Converter
ComfyUI Node

LittleCMS Color Profile Converter

Real ICC profile conversion, rendering intents included

By APZmedia·Created 11 months ago·Updated 5 months ago· 7
LittleCMS Color Profile Converter
  • image
  • converted_image
  • conversion_info
  • profile_info
input_modetensor
source_profileauto_detect
target_profilesRGB
rendering_intentRelative Colorimetric
black_point_compensationtrue
image_path
custom_source_profile
custom_target_profile

This is the pack's heavyweight: actual ICC-profile-to-ICC-profile conversion using LittleCMS (via Pillow's ImageCms), with rendering intents and black point compensation - the vocabulary color-managed print and photo workflows are built on. Where ColorConverterAdvanced does matrix math between a handful of named spaces, this node converts through real ICC profiles, including your own custom ones. If you care about what a color actually is when it leaves your pipeline - not just what it looks like on your monitor - this is the node.

How it works

It builds a LittleCMS transform between a source and target profile and applies it to the image. The profile list covers the standards you'll actually meet - sRGB, Adobe RGB, ProPhoto RGB, Rec. 709, Rec. 2020, Linear sRGB, and custom for profiles you supply. source_profile defaults to auto_detect, which reads the embedded ICC profile from the file when input_mode is file - the nicest touch in the node, because it means "just tell me what space this file is in" instead of guessing. The rendering intent dropdown gives you the classic four: Perceptual, Relative Colorimetric (the default), Saturation, and Absolute Colorimetric. Black point compensation defaults on, which is the right default for most real-world conversions.

Where a standard profile isn't available, the node falls back to matrix-based transforms (with gamma-aware encode/decode per profile), so conversions between sRGB/Adobe/ProPhoto/linear still work even without perfect profile data. And custom_source_profile / custom_target_profile accept your own ICC data, which is what makes this genuinely useful for print work - drop in the printer's profile, convert, export.

The inputs that matter

  • source_profile / target_profile - pick from the seven; auto_detect + sRGB is the classic "rescue a mis-tagged file" combination.
  • rendering_intent - Relative Colorimetric for "keep the in-gamut colors exact, clip the rest" (the print standard); Perceptual if you want the whole image compressed to fit the target gamut smoothly.
  • black_point_compensation - leave on; turning it off darkens shadows on most conversions.

Outputs: converted_image, conversion_info (what transform ran, with which intent), and profile_info - details about the profiles involved, handy for logging which space a file actually landed in.

Install

Same pack, same install:

cd ComfyUI/custom_nodes
git clone https://github.com/APZmedia/ComfyUI-color-tools

Or ComfyUI Manager → search "ComfyUI Color Profile Reader" → restart after. The README's manual clone command has a placeholder URL (yourusername/... - use APZmedia/ComfyUI-color-tools). Dependencies are Pillow (for ImageCms/littleCMS) and numpy, plus OpenCV for file-mode loading - all covered by the pack's startup install.py, which can make the first launch slow for a couple minutes.

A last honest note: real ICC conversion is a corner of ComfyUI almost nobody visits - the subreddits barely mention ICC profiles, and the only serious neighbor in this space is the Darkroom pack (LittleCMS CMYK/print work). That scarcity is why this node matters if you need it: it's one of the few places in ComfyUI where profile-accurate color conversion exists at all. For print, for archival work, for "this blue must be the same blue on paper" - this is the node.

CategoryColor Tools/LittleCMS

Inputs (9)

NameTypeDefaultDescription
input_modeCOMBOtensor2 options: file, tensor
source_profileCOMBOauto_detect7 options: auto_detect, sRGB, Adobe RGB, ProPhoto RGB, Rec. 709, Rec. 2020, +1
target_profileCOMBOsRGB7 options: sRGB, Adobe RGB, ProPhoto RGB, Rec. 709, Rec. 2020, Linear sRGB, +1
rendering_intentCOMBORelative Colorimetric4 options: Perceptual, Relative Colorimetric, Saturation, Absolute Colorimetric
black_point_compensationBOOLEANtrue
imageoptIMAGE
image_pathoptSTRING
custom_source_profileoptSTRING
custom_target_profileoptSTRING

Outputs (3)

NameTypeDescription
converted_imageIMAGE
conversion_infoSTRING
profile_infoSTRING