ChromaMatch: Palette-Driven Color Grading and Transfer

Trying to get consistent colors in photos whether it be for a collection, branding or artwork can take you hours of painstaking editing. Whether it be from fiddling around with curves, applying pre-made lut’s or using layers on top of one another with certain blend modes. ChromaMatch takes all this out of the equation and provides a algorithm based way to apply these colors. As a UXP plugin for Adobe Photoshop we can pull the main color scheme from any source and apply those tones to your image.

The Creative Problem: Why Color Matching is Broken

Common problems that Photographers/ Compositors/ Graphic Artists run into when trying to grade colors:

  • LUTs don’t know what your image looks like: Using a generic 3D LUT will give you predetermined colors. It does not know what kind of light your final piece of art may have.
  • Coloring over top your image: Using a global color change will usually result in people being tinted orange/green/magenta. And then having to use elaborate mask techniques to get natural skin tones and white’s back.
  • Destructive Match Colors: You can’t make match colors from Photoshop as a Adjustment layer. It doesn’t allow for precise swatching and it is destructive.
  • Not able to match brand colors from other Adobe programs: When working with a client that has established brand colors. You’re not able to use those colors to create a grading LUT.

That’s where ChromaMatch comes into play. Using color picking that can be trusted. Color Transfer using the Reinhard algorithm in the LAB Color Space and Non Destructive output.

Core Features & Workflow

Flexible Palette Ingestion

Chromamatch allows you to separate your mood from the source. You can now grab colors from many types of files.

  • Images (JPG/PNG) can be used to generate between 2-12 swatches (default 6) based on weighted K-Means. We extract these colors in the CIE Lab color space. By knowing the % each swatch occupies we can create repeatable results.
  • Adobe .ase files can also be used to input brand swatches. This works with any palette generated in Adobe products. Illustrator/Indesign/Photoshop/Color. (RGB/Lab/Gray/CMYK max 24 colors).
  • Session data will remember the previous 8 sessions. Allowing you to jump back to previous swatches. It will also store your slider settings.
  • Re-edit your layers within the document. When selecting one of your Chromamatch created layers it will load the xmp data and set your palette and sliders.

Palette Editing & Customization

Where most scripts just transfer color over and give you nothing else to play with chromaMatch gives you these options.

  • Change weight of each swatch or turn them off. You can lower the amount of a color and keep the ratio of all swatches the same or turn them off completely.
  • Add custom swatches. Either enter the color as a #rrggbb or #rgb code or you can select your current color in photoshop.
  • More or less swatches from the image using the – and + buttons.
  • Export .ase files with custom swatches. The weight of each swatch will be stored in the name.

Intelligent Transfer & Protection Controls

ChromaMatch calculates shifts in CIE Lab (D65) space, separating luminance from color to avoid washing out your images:

  • Color (Default: 80) : Sets the overall distance a*/b* chromatic channels move toward the extracted palette.
  • Contrast (Default: 80) : Adjusts luminance (L*) transfer. Setting this to 0 retains the target’s original contrast and tone.
  • Split Tone (Default: 60) : Independently targets shadow, midtone, and highlight color shifts using smooth tonal ramps (below L* 20, midtones at L* 50, highlights above L* 80) to eliminate LUT banding.
  • Protect Skin (Default: 70) : Automatically identifies skin hue angles (35\circ–61\circ) and chroma ranges, feathering the color shift so portrait subjects retain natural tones while the environment takes the grade.
  • Protect Neutrals (Default: 50) : Shields low-chroma whites, grays, and deep blacks from unwanted color contamination.
  • Saturation & Stretch Limits : Advanced controls to manipulate chromatic spread and clamp standard deviation ratios, preventing flat files from degrading into noise.

Non-Destructive, Multi-App Output

  • Native Color Lookup Layers: When you click Apply, ChromaMatch compiles a custom (33)3 3D LUT paired with an ICC device-link profile, creating an editable Color Lookup adjustment layer clipped directly to your target.

  • Direct .cube Export: Export the exact grade as an industry-standard .cube LUT for Premiere Pro, DaVinci Resolve, Lightroom / Adobe Camera Raw profiles, or OBS.

  • Photoshop Swatches Integration: Add your generated color harmony straight to Photoshop’s Swatches panel with a single click.

Architectural Highlights

Under the hood, ChromaMatch is engineered for reliability, accuracy, and modularity:

  • Host-Independent Core Engine: The mathematical engine (core/) operates independently of the Photoshop UI/UXP framework, built to allow future expansion into desktop software like Adobe InDesign.

  • Mathematical Precision: Features a matched preview pipeline where real-time UI previews and final baked LUTs align within an average error of 0.1 / 255.

  • Smart Clipping & Layer Targeting: ChromaMatch automatically identifies pixel bases beneath adjustment layers, rejects incompatible color spaces (such as 32-bit HDR or CMYK documents), and samples pixel proxies via Photoshop’s Imaging API.

How ChromaMatch Compares

Workflow Feature ChromaMatch Photoshop “Match Color” Static 3D LUTs Manual Curve Grading
Layer Architecture

Non-destructive adjustment layer

Destructive raster edit Non-destructive layer Non-destructive layers
Re-editability

Full (stores state in layer XMP)

None None (fixed LUT) Full
Skin / Neutral Protection

Built-in Lab hue/chroma isolation

None None (requires masking) Manual masking required
Palette Sourcing

Images, .ase files, foreground color

Open image only N/A (hardcoded) Manual eyedropper
Cross-App LUT Export

Direct .cube generation

None N/A Multi-step export
Split-Toning Engine

Smooth multi-band Lab isolation

None None Complex curve splits