NL Image Info Debug
See what the color pipeline thinks your image is
- source_path
- detected_color_space
- working_color_space
- is_data
- pretty_json
Here's a debugging truth about the NOLABEL color pipeline: the interesting information is not in the image tensor, it's in the image_info_json string riding along beside it. That string is where NL Read records what colorspace the source was, what the working space is, whether it's color or data - everything the managed nodes use to decide how to treat your pixels. And it's a JSON blob, so it's effectively invisible until you make it readable. NL Image Info Debug exists to make it readable.
It takes the image_info_json from an upstream NL node and pretty-prints it, breaking out the fields that actually matter into named outputs. If colors look wrong anywhere in your graph, this is the first node to insert - it tells you whether the metadata even survived the trip, and what it claims your image is.
The outputs
source_path- where the source came from.detected_color_space- what the pipeline thinks the source was.working_color_space- what it's being treated as in the graph.is_data- whether it's flagged as data (bypassing color management) rather than color.pretty_json- the full formatted blob, for when you want every field.
Plus print_to_console (default false) to dump the JSON to the ComfyUI log. The classic debugging move: feed it image_info_json and immediately see whether detected_color_space matches the file you actually loaded. If it doesn't, you've found your color bug - the pipeline interpreted the source as the wrong space and every downstream node is compounding the mistake.
When it's overkill
If everything looks right, this node is pointless. It's a diagnostic, and the honest advice is to wire it in only when you're hunting a problem: a washed-out read, a grade that overshoots, a write that doesn't match the preview. It's also worth a run after you update the pack - the color-managed IO foundation has been evolving (the README tracks a v1 spec), and this node is the fastest way to confirm your new install is behaving.
Install
Standard pack route:
cd ComfyUI/custom_nodes
git clone https://github.com/NOLABEL-VFX/ComfyUI-NL_Nodes
or ComfyUI Manager → "ComfyUI-NL_Nodes", restart. Lightweight - no deps beyond base requirements, since it just formats a string. It's an output node, so it terminates the branch; wire it after the NL node whose metadata you're suspicious of, read the outputs, then delete it when you're done. Debug nodes should be tourists in your graph, not residents.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image_info_json | STRING | — | |
| print_to_consoleopt | BOOLEAN | false | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| source_path | STRING | — |
| detected_color_space | STRING | — |
| working_color_space | STRING | — |
| is_data | STRING | — |
| pretty_json | STRING | — |