color-correction

Diagnose and fix washed-out video and image color using measured luminance statistics in ComfyUI.

715|111|Updated Feb 15, 2026
One-click install
npx skills add https://github.com/artokun/comfyui-mcp --skill color-correction
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: color-correction
Source: https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/color-correction
Command: npx skills add https://github.com/artokun/comfyui-mcp --skill color-correction

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires opencv-python.

What problem does it solve?

AI-generated video and images often look washed out, flat, or color-cast, and judging color by eye on a contact sheet is unreliable. This Skill replaces guesswork with objective measurement: it reads black/white points, contrast, saturation, and clipping statistics, then prescribes the correct fix (contrast stretch vs. reference color-match) and verifies the result by re-measuring.

Core Features & Use Cases

  • Objective color analysis: Uses the get_image (action:"analyze_color") MCP tool to read scopes-like stats (blackPoint, whitePoint, contrast, saturation, cast, clipping) and heuristic flags such as washedOut and lowContrast.
  • Measure-fix-remeasure loop: Diagnoses the washed-out signature, applies core ComfyUI nodes like AdjustContrast or CurveEditor, tunes the factor against measured targets, and confirms with a second measurement.
  • Side-by-side sandbox testing: Builds a small comparison workflow that renders multiple candidate corrections (contrast factors, ColorMatchV2, ImageColorMatchAdobe+) in one run for numeric comparison.
  • Use Case: A WAN-Animate render looks milky and dull. Extract a middle frame with cv2, measure it (blackPoint 45, whitePoint 191, contrast 43), apply AdjustContrast at ~1.4 after WanVideoDecode, and re-measure to confirm whitePoint near 250 with under 2% clipped highlights.

Quick Start

Ask the agent to analyze the color of my latest ComfyUI render with get_image analyze_color and fix it if it looks washed out.

Frequently Asked Questions about color-correction

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix washed out video from ComfyUI?

Measure a frame with get_image action analyze_color to confirm the washed-out signature: lifted blackPoint, whitePoint below 235, and contrast under 45. Then add an AdjustContrast node after decode with factor around 1.4 and re-measure until whitePoint reaches roughly 248-255 with clipped highlights under 2%.

How do I analyze image color objectively in ComfyUI?

Call the get_image MCP tool with action analyze_color on a filename, path, or asset_id. It returns black and white points, contrast, saturation, RGB channel means, clipping percentages, heuristic flags, and an optional RGB/luma histogram overlay.

ColorMatch vs contrast stretch: which fixes flat renders?

A contrast or levels stretch fixes compressed tonal range, which is the usual cause of washout. Reference color-match nodes like ColorMatchV2 only transfer the reference's tone, so they cannot add contrast a flat reference lacks; use them for shot-matching to an already well-graded frame.

Can analyze_color measure video files directly?

No, the tool is image-only with no ffmpeg dependency. Extract a frame first using the ComfyUI venv's cv2 VideoCapture, typically the middle frame, then run analyze_color on the extracted PNG.

Why does my WAN video lose saturation across windows?

Long WAN-Animate clips render in temporal windows that can drift in saturation or brightness. Measure a frame from the first and a late window; if they differ, use the between-window colormatch in the embeds rather than a final global stretch.

When should I not apply a contrast stretch?

Skip it when blackPoint and whitePoint already sit near 0 and 255 with healthy saturation, since the color is fine. Also avoid over-stretching: watch clippedHighPct, because blown highlights above roughly 2% are unrecoverable.