◈ Color Suite (Illustrious)
Automatic color-fixing for Illustrious renders
- images
- corrected_images
- report
- cache_used
Illustrious XL has two well-known color failure modes, and the pack's own README names both by their community nicknames: oversaturation/overcooked (too much CFG, too little scheduler care) and soft/foggy (too little CFG, or not enough steps). The usual fix is going back and re-rolling with adjusted settings. IllustriousColorSuite takes the other approach - leave the generation alone and correct the output image after the fact, automatically.
What it's doing
Feed it images (standard NHWC, 0–1 range) and it hands back corrected_images, plus a report string and a cache_used boolean. With auto_analyze and auto_detect_issues on (both default true), it looks at the first image in the batch, works out what's actually wrong with it, and tunes the correction from there rather than applying a fixed recipe blind. From there you have two ways to steer it: individual toggles - fix_oversaturation, balance_colors, adjust_contrast, enhance_details, preserve_anime_aesthetic - or a custom_preset (character_portrait, detailed_scene, soft_illustration, vibrant_anime, natural_colors) that overrides the toggle-by-toggle approach with a bundled recipe. correction_strength (0.3–2, default 1) is a global multiplier over whatever gets applied, and model_version lets it tailor the fix to which Illustrious release you're actually running - the same author confirmed on Reddit that these model-version pickers aren't cosmetic, since different checkpoints in the family render noticeably different by default. Turn on show_corrections if you want the report output to actually list what it changed, which is the fastest way to learn what your renders tend to need.
Under the hood it's also a caching layer: cache_mode (auto/always_cache/never_cache) and adjustment_mode (hybrid/cached_only/force_recalculate) control whether re-running the node on the same image with the same settings skips the full recompute. force_recalculate is the manual override if you've changed something the cache doesn't know to invalidate on. cache_used on the output tells you which path it actually took.
Installing it
ComfyUI Manager is the easy way: search "EasyIllustrious," install, restart. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/regiellis/ComfyUI-EasyIllustrious, then pip install -r ComfyUI-EasyIllustrious/requirements.txt in your ComfyUI environment, then restart.
The gotcha specific to this node
This is the one node in the pack most likely to fail outright on install, and it's a real, documented failure, not a guess: the color-correction code imports OpenCV (cv2), and at least one user hit ModuleNotFoundError: No module named 'cv2' at ComfyUI startup because ComfyUI Manager's automatic dependency install silently skipped opencv-python. If EasyIllustrious's other nodes load fine but this one specifically throws that error (or the whole pack fails to import with a traceback pointing at color_suite.py or smart_cache_corrector.py), the fix is to activate your actual ComfyUI Python environment and run:
pip install opencv-python --no-deps
then restart. It's worth checking your console for that exact traceback before assuming anything else is broken - the author's own diagnosis on the same thread was that ComfyUI Manager's silent dependency skip is the usual root cause, not a bug in the node's logic. Beyond that, remember this node is one dev's beta-stage work like the rest of the suite: if auto_analyze picks a correction you don't like, turning off auto_detect_issues and dialing in the individual toggles by hand gives you more predictable, repeatable control than trusting the automatic read on every image.
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | Input images to correct (NHWC, 0..1). | |
| cache_modeopt | COMBO | auto | Use cache when safe (auto), or force cache usage/avoidance. |
| adjustment_modeopt | COMBO | hybrid | Hybrid tries fast cached tweaks; cached_only avoids full recompute. |
| force_recalculateopt | BOOLEAN | false | Ignore cache and recompute from originals. |
| enable_previewopt | BOOLEAN | true | Enable live preview (if supported by UI). |
| auto_analyzeopt | BOOLEAN | true | Analyze image to auto-tune corrections. |
| model_versionopt | COMBO | auto | Illustrious model version for tailored fixes. |
| correction_strengthopt | FLOAT | 1.000.3–2 | Overall strength multiplier for corrections. |
| auto_detect_issuesopt | BOOLEAN | true | Analyze the first image to auto-tune corrections. |
| fix_oversaturationopt | BOOLEAN | true | Reduce excessive saturation safely. |
| preserve_anime_aestheticopt | BOOLEAN | true | Favor anime-friendly look while correcting. |
| enhance_detailsopt | BOOLEAN | true | Subtle detail enhancement where safe. |
| balance_colorsopt | BOOLEAN | true | Neutralize color casts and balance channels. |
| adjust_contrastopt | BOOLEAN | true | Tweak brightness/contrast gently. |
| custom_presetopt | COMBO | none | Preset recipe (may override some toggles). |
| show_correctionsopt | BOOLEAN | false | Include a bullet list of applied fixes in the report. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| corrected_images | IMAGE | — |
| report | STRING | — |
| cache_used | BOOLEAN | — |